Sponsored Link:   Color - Revolutionizing the Dapp Ecosystem, Bounty & Airdrop, Get 240,000 COL NOW!
Contract Overview
Balance: 0 Ether
Ether Value: $0
Transactions: 21960 txns
Token Contract: SPINDLE (SPD)
 Latest 25 txns from a total Of 21960 transactions
(+2 PendingTxns)

TxHash Age From To Value [TxFee]
0x8586d38d4bbf1ae6afbbdcb3944884ed66017aadff1e93c2490ea3586ba0b8ae(pending)0x839fd2fb6fdd8cb0dbcfb44777d091e8595ab498  IN  0x1dea979ae76f26071870f824088da78979eb91c80 Ether(pending)
0x5a2f98e7773455adfd522b052eca99a215465943141f0ea2f4da075c97b72731(pending)0x9a79eb2ffba13ae95da1000a31abcfd530bada65  IN  0x1dea979ae76f26071870f824088da78979eb91c80 Ether(pending)
0x9e1f183f19dd08d4aca8af0c868c37982520b385a9070af09048ade878b30e4643 mins ago0xc33e33a5db13ea232f6daf5c1f53337d77a645cb  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.0032147
0x2eb0b2cab951ffc4590ab1b50411952c32cc3f04e21ee1dbbb6dab5662a1877d1 hr 50 mins ago0xf35fa19c30e0c11e4d02f8eddb8ce586564a2156  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.0047179
0xc9f2228c19d0a325de95a3f70b6efd06f6131086fcbed438e96ac8daa4f128001 hr 51 mins ago0xcc2063419c80a8e2aa49e7de38ee6fe481454972  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.00277529
0xf22eeb35a577d647bb76a05a8cd3379bc8941f125f510f8fc1f116672a57e6a61 hr 53 mins ago0xcc2063419c80a8e2aa49e7de38ee6fe481454972  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.00277529
0xd68c9ac5e87a6f8460925162b2368cf031a371625453e46530e52bc8a26ebbe71 hr 57 mins ago0xcc2063419c80a8e2aa49e7de38ee6fe481454972  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.00277529
0xbcd53745c74f4e3bf665944d7e9cc944965c21e64b6273c847c2d1f0e8bc0d522 hrs 23 mins ago0x90fb053498d78a56e352f199547407fab65f016e  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.002636054
0x5255627601588a9db7dad0096e3eaef232a605fb202a7ce98b1b310ba546fc1a2 hrs 38 mins ago0x57e8b4cbfbaab5991c0d56cbe8870d77a2c24645  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.00066
0x6f9e83939a913810de3553815d574221fe1927a88c2c5481a1f4d293a3a228e22 hrs 38 mins agoHitBTC_2  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.001658448
0x01dba6b86e5854dd9fd2879f05d536347ca47405e6653dcd086564c0ce65ba1e2 hrs 43 mins ago0xd096f1fb11992c3cfbcb60bbba571e79f414b746  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.0032147
0x59a568ee12c904256da828582c17ec06cca7dcede6daf0a98340ba1e3e97b21e4 hrs 9 mins ago0x002167431edd26dfea2235fe0e77c109f96db66d  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.007612224
0x90958ae581196c13c095d26a596212953a57783b2f28bca9ddc2b3b0d83ef0444 hrs 18 mins agoHitBTC_2  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.00188332
0xd0d60b36c58dd72d7acfcc0e744d0bcccce1195d13623c2e056cac65230024ec5 hrs 15 mins agoHitBTC_2  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.0031796894
0x0d676b78bb6d21c42205329830cff9ae0935fb5a23102d88726f2fd26ba805e25 hrs 18 mins ago0x3ed9b7cbaa482a3c43148d3534420a48b65e9905  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.001384587
0x7f693af1787ec05ad07ee159486e5d8832341bf9014723359ac04cc096de90395 hrs 18 mins ago0x3ed9b7cbaa482a3c43148d3534420a48b65e9905  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.001384011
0xad1a7fc172849aa07d9a98f0e4e626809f17cb30e6faf95bb6467f699c00da2e5 hrs 19 mins ago0x3ed9b7cbaa482a3c43148d3534420a48b65e9905  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.001384011
0xac3124fd300a15f451e7c84dc1ec48b226a3c95a2c039dd3a6290ddb50e9b3e65 hrs 19 mins ago0x3ed9b7cbaa482a3c43148d3534420a48b65e9905  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.001382283
0xf4d6fb710a91ba15a98ac92f9fcfc3c1ae5d52c352bcebb54b5cb25f3e3e13575 hrs 19 mins ago0x3ed9b7cbaa482a3c43148d3534420a48b65e9905  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.001382283
0x7803c13579c151da022ab7bb0fad80857fb630012214964bac004cf67cc3345d5 hrs 19 mins ago0x3ed9b7cbaa482a3c43148d3534420a48b65e9905  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.001382859
0x22f1230e0f81ef38d66be426e66914263e6a0eec88a0c5ff82db23da1f3d14f65 hrs 19 mins ago0x3ed9b7cbaa482a3c43148d3534420a48b65e9905  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.001384587
0xc4dca3dcb4a2219e6872884cbc9e71702a6488e5bd504609a3f582795d04a1ba5 hrs 19 mins ago0x3ed9b7cbaa482a3c43148d3534420a48b65e9905  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.001384587
0xa246055e89adad8b0aa931d25141c02118a05a9ba9936fdf4d9081d996eaa8605 hrs 19 mins ago0x3ed9b7cbaa482a3c43148d3534420a48b65e9905  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.001384587
0x44839a01f85fcfc3b824a4c35e26a749ecbe867e54f3f45dfbc0b16284109ad65 hrs 19 mins ago0x3ed9b7cbaa482a3c43148d3534420a48b65e9905  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.001384587
0x3d5033206841927f195177139a751c3b66f1b5c424251078e3e5f9e6c9a4595a5 hrs 19 mins ago0x3ed9b7cbaa482a3c43148d3534420a48b65e9905  IN   0x1dea979ae76f26071870f824088da78979eb91c80 Ether0.001384587
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
View All
ParentTxHash Block Age From To Value
Contract Source Code Verified (Similar match)
Note: Displaying similar matching verified source code at contract 0xf859ad65b3c05ab93040bcb1b2136ae0c40c13ac(excluding Constructor Arguments if any)
Contract Name: SpindleToken
Compiler Version: v0.4.21+commit.dfe3193c
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.21;

contract Ownable {
  address public owner;

  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev The Ownable constructor sets the original `owner` of the contract to the sender
     * account.
     */
  function Ownable() public {
    owner = msg.sender;
  }

  /**
   * @dev Throws if called by any account other than the owner.
   */
  modifier onlyOwner() {
    require(msg.sender == owner);
    _;
  }

  /**
   * @dev Allows the current owner to transfer control of the contract to a newOwner.
   * @param newOwner The address to transfer ownership to.
   */
  function transferOwnership(address newOwner) public onlyOwner {
    require(newOwner != address(0));
    emit OwnershipTransferred(owner, newOwner);
    owner = newOwner;
  }
}

/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic {
  function totalSupply() external view returns (uint256);
  function balanceOf(address who) external view returns (uint256);
  function transfer(address to, uint256 value) external returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}

/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
contract ERC20 is ERC20Basic {
  function allowance(address holder, address spender) external view returns (uint256);
  function transferFrom(address from, address to, uint256 value) external returns (bool);
  function approve(address spender, uint256 value) external returns (bool);
  event Approval(address indexed holder, address indexed spender, uint256 value);
}

/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {

  /**
  * @dev Multiplies two numbers, throws on overflow.
  */
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    require(c / a == b);
    return c;
  }

  /**
  * @dev Integer division of two numbers, truncating the quotient.
  */
  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    // require(b > 0); // Solidity automatically throws when dividing by 0
    uint256 c = a / b;
    // require(a == b * c + a % b); // There is no case in which this doesn't hold
    return c;
  }

  /**
  * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    require(b <= a);
    return a - b;
  }

  /**
  * @dev Adds two numbers, throws on overflow.
  */
  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    require(c >= a);
    return c;
  }
}

contract SpindleToken is ERC20, Ownable {

    using SafeMath for uint256;

    string public constant name = 'SPINDLE';
    string public constant symbol = 'SPD';
    uint8 public constant decimals = 18;

    uint256 constant TOTAL_SPD = 10000000000;
    uint256 constant TOTAL_SUPPLY = TOTAL_SPD * (uint256(10) ** decimals);

    uint64 constant ICO_START_TIME = 1526083200; // 2018-05-12
    uint64 constant RELEASE_B = ICO_START_TIME + 30 days;
    uint64 constant RELEASE_C = ICO_START_TIME + 60 days;
    uint64 constant RELEASE_D = ICO_START_TIME + 90 days;
    uint64 constant RELEASE_E = ICO_START_TIME + 180 days;
    uint64 constant RELEASE_F = ICO_START_TIME + 270 days;
    uint64[] RELEASE = new uint64[](6);

    mapping(address => uint256[6]) balances;
    mapping(address => mapping(address => uint256)) allowed;

    /**
     * @dev Constructor that gives msg.sender all of existing tokens.
     */
    function SpindleToken() public {
        RELEASE[0] = ICO_START_TIME;
        RELEASE[1] = RELEASE_B;
        RELEASE[2] = RELEASE_C;
        RELEASE[3] = RELEASE_D;
        RELEASE[4] = RELEASE_E;
        RELEASE[5] = RELEASE_F;

        balances[msg.sender][0] = TOTAL_SUPPLY;
        emit Transfer(0x0, msg.sender, TOTAL_SUPPLY);
    }

    /**
     * @dev total number of tokens in existence
     */
    function totalSupply() external view returns (uint256) {
        return TOTAL_SUPPLY;
    }

    /**
     * @dev transfer token for a specified address
     * @param _to The address to transfer to.
     * @param _value The amount to be transferred.
    */
    function transfer(address _to, uint256 _value) external returns (bool) {
        require(_to != address(0));
        require(_to != address(this));
        _updateLockUpAmountOf(msg.sender);

        // SafeMath.sub will revert if there is not enough balance.
        balances[msg.sender][0] = balances[msg.sender][0].sub(_value);
        balances[_to][0] = balances[_to][0].add(_value);
        emit Transfer(msg.sender, _to, _value);
        return true;
    }

    /**
     * @dev Gets the payable balance of the specified address.
     * @param _holder The address to query the the balance of.
     * @return An uint256 representing the payable amount owned by the passed address.
    */
    function balanceOf(address _holder) external view returns (uint256) {
        uint256[6] memory arr = lockUpAmountOf(_holder);
        return arr[0];
    }

    /**
     * @dev Gets the lockUpAmount tuple of the specified address.
     * @param _holder address The address to query the the balance of.
     * @return An LockUpAmount representing the amount owned by the passed address.
    */
    function lockUpAmountOf(address _holder) public view returns (
        uint256[6]
    ) {
        uint256[6] memory arr;
        arr[0] = balances[_holder][0];
        for (uint i = 1; i < RELEASE.length; i++) {
            arr[i] = balances[_holder][i];
            if(now >= RELEASE[i]){
                arr[0] = arr[0].add(balances[_holder][i]);
                arr[i] = 0;
            }
            else
            {
                arr[i] = balances[_holder][i];
            }
        }
        return arr;
    }

    /**
     * @dev update the lockUpAmount of _address.
     * @param _address address The address updated the balances of.
     */
    function _updateLockUpAmountOf(address _address) internal {
        uint256[6] memory arr = lockUpAmountOf(_address);

        for(uint8 i = 0;i < arr.length; i++){
            balances[_address][i] = arr[i];
        }
    }

    /**
     * @dev gets the strings of lockUpAmount of _address.
     * @param _address address The address gets the string of lockUpAmount of.
     */
    function lockUpAmountStrOf(address _address) external view returns (
        address Address,
        string a,
        string b,
        string c,
        string d,
        string e,
        string f
    ) {
        address __address = _address;
        if(__address == address(0)) __address = msg.sender;

        uint256[6] memory arr = lockUpAmountOf(__address);

        return (
            __address,
            _uintToSPDStr(arr[0]),
            _uintToSPDStr(arr[1]),
            _uintToSPDStr(arr[2]),
            _uintToSPDStr(arr[3]),
            _uintToSPDStr(arr[4]),
            _uintToSPDStr(arr[5])
        );
    }

    /**
     * @dev gets the SPD_strings of a token amount.
     * @param _amount The value of a token amount.
     */
    function _uintToSPDStr(uint256 _amount) internal pure returns (string) {
        uint8 __tindex;
        uint8 __sindex;
        uint8 __left;
        uint8 __right;
        bytes memory __t = new bytes(30);  // '10000000000.000000000000000000'.length is 30 (max input)

        // set all bytes
        for(__tindex = 29; ; __tindex--){  // last_index:29 to first_index:0
            if(__tindex == 11){            // dot index
                __t[__tindex] = byte(46);  // byte of '.' is 46
                continue;
            }
            __t[__tindex] = byte(48 + _amount%10);  // byte of '0' is 48
            _amount = _amount.div(10);
            if(__tindex == 0) break;
        }

        // calc the str region
        for(__left = 0; __left < 10; __left++) {     // find the first index of non-zero byte.  return at least '0.xxxxx'
            if(__t[__left]  != byte(48)) break;      // byte of '0' is 48
        }
        for(__right = 29; __right > 12; __right--){  // find the  last index of non-zero byte.  return at least 'xxxxx.0'
            if(__t[__right] != byte(48)) break;      // byte of '0' is 48
        }

        bytes memory __s = new bytes(__right - __left + 1 + 4); // allocatte __s[left..right] + ' SPD'

        // set and return
        __sindex = 0;
        for(__tindex = __left; __tindex <= __right; __tindex++){
            __s[__sindex] = __t[__tindex];
            __sindex++;
        }

        __s[__sindex++] = byte(32);  // byte of ' ' is 32
        __s[__sindex++] = byte(83);  // byte of 'S' is 83
        __s[__sindex++] = byte(80);  // byte of 'P' is 80
        __s[__sindex++] = byte(68);  // byte of 'D' is 68

        return string(__s);
    }

    /**
     * @dev Distribute tokens from owner address to another
     * @param _to address The address which you want to transfer to
     * @param _a uint256 the amount of A-type-tokens to be transferred
     * ...
     * @param _f uint256 the amount of F-type-tokens to be transferred
     */
    function distribute(address _to, uint256 _a, uint256 _b, uint256 _c, uint256 _d, uint256 _e, uint256 _f) onlyOwner external returns (bool) {
        require(_to != address(0));
        _updateLockUpAmountOf(msg.sender);

        uint256 __total = 0;
        __total = __total.add(_a);
        __total = __total.add(_b);
        __total = __total.add(_c);
        __total = __total.add(_d);
        __total = __total.add(_e);
        __total = __total.add(_f);

        balances[msg.sender][0] = balances[msg.sender][0].sub(__total);

        balances[_to][0] = balances[_to][0].add(_a);
        balances[_to][1] = balances[_to][1].add(_b);
        balances[_to][2] = balances[_to][2].add(_c);
        balances[_to][3] = balances[_to][3].add(_d);
        balances[_to][4] = balances[_to][4].add(_e);
        balances[_to][5] = balances[_to][5].add(_f);

        emit Transfer(msg.sender, _to, __total);
        return true;
    }

    /**
     * @dev Transfer tokens from one address to another
     * @param _from address The address which you want to send tokens from
     * @param _to address The address which you want to transfer to
     * @param _value uint256 the amount of tokens to be transferred
     */
    function transferFrom(address _from, address _to, uint256 _value) external returns (bool) {
        require(_to != address(0));
        require(_to != address(this));
        _updateLockUpAmountOf(_from);

        balances[_from][0] = balances[_from][0].sub(_value);
        balances[_to][0] = balances[_to][0].add(_value);
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
        emit Transfer(_from, _to, _value);
        return true;
    }

    /**
     * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
     *
     * Beware that changing an allowance with this method brings the risk that someone may use both the old
     * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
     * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     * @param _spender The address which will spend the funds.
     * @param _value The amount of tokens to be spent.
     */
    function approve(address _spender, uint256 _value) external returns (bool) {

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

    /**
     * @dev Function to check the amount of tokens that an owner allowed to a spender.
     * @param _holder address The address which owns the funds.
     * @param _spender address The address which will spend the funds.
     * @return A uint256 specifying the amount of tokens still available for the spender.
    */
    function allowance(address _holder, address _spender) external view returns (uint256) {
        return allowed[_holder][_spender];
    }
}

    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":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_a","type":"uint256"},{"name":"_b","type":"uint256"},{"name":"_c","type":"uint256"},{"name":"_d","type":"uint256"},{"name":"_e","type":"uint256"},{"name":"_f","type":"uint256"}],"name":"distribute","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_holder","type":"address"}],"name":"lockUpAmountOf","outputs":[{"name":"","type":"uint256[6]"}],"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":"","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":"_holder","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"lockUpAmountStrOf","outputs":[{"name":"Address","type":"address"},{"name":"a","type":"string"},{"name":"b","type":"string"},{"name":"c","type":"string"},{"name":"d","type":"string"},{"name":"e","type":"string"},{"name":"f","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_holder","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"holder","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":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]

  Contract Creation Code Switch To Opcodes View
60606040526006604051805910620000145750595b908082528060200260200182016040525060019080516200003a929160200190620002ca565b5034156200004757600080fd5b60008054600160a060020a03191633600160a060020a031617815560018054635af62e80929081106200007657fe5b90600052602060002090600491828204019190066008026101000a8154816001604060020a0302191690836001604060020a03160217905550635af62e8062278d0001600180815481101515620000c957fe5b90600052602060002090600491828204019190066008026101000a8154816001604060020a0302191690836001604060020a03160217905550635af62e80624f1a0001600160028154811015156200011d57fe5b90600052602060002090600491828204019190066008026101000a8154816001604060020a0302191690836001604060020a03160217905550635af62e806276a70001600160038154811015156200017157fe5b90600052602060002090600491828204019190066008026101000a8154816001604060020a0302191690836001604060020a03160217905550635af62e8062ed4e000160016004815481101515620001c557fe5b90600052602060002090600491828204019190066008026101000a8154816001604060020a0302191690836001604060020a03160217905550635af62e80630163f50001600160058154811015156200021a57fe5b600091825260208083206004830401805460039093166008026101000a6001604060020a0381810219909416959093169290920293909317905533600160a060020a031681526002909152604081206b204fce5e3e25026110000000910155600160a060020a03331660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6b204fce5e3e2502611000000060405190815260200160405180910390a3620003b4565b82805482825590600052602060002090600301600490048101928215620003775791602002820160005b838211156200034057835183826101000a8154816001604060020a0302191690836001604060020a031602179055509260200192600801602081600701049283019260010302620002f4565b8015620003755782816101000a8154906001604060020a03021916905560080160208160070104928301926001030262000340565b505b506200038592915062000389565b5090565b620003b191905b808211156200038557805467ffffffffffffffff1916815560010162000390565b90565b61139180620003c46000396000f3006060604052600436106100cf5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146100d4578063095ea7b31461015e5780630e64780d1461019457806318160ddd146101c55780631f470b14146101ea57806323b872dd14610241578063313ce5671461026957806370a082311461029257806370d25a9f146102b15780638da5cb5b1461056e57806395d89b411461059d578063a9059cbb146105b0578063dd62ed3e146105d2578063f2fde38b146105f7575b600080fd5b34156100df57600080fd5b6100e7610618565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561012357808201518382015260200161010b565b50505050905090810190601f1680156101505780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561016957600080fd5b610180600160a060020a036004351660243561064f565b604051901515815260200160405180910390f35b341561019f57600080fd5b610180600160a060020a036004351660243560443560643560843560a43560c4356106bb565b34156101d057600080fd5b6101d861091b565b60405190815260200160405180910390f35b34156101f557600080fd5b610209600160a060020a036004351661092b565b604051808260c080838360005b8381101561022e578082015183820152602001610216565b5050505090500191505060405180910390f35b341561024c57600080fd5b610180600160a060020a0360043581169060243516604435610a6c565b341561027457600080fd5b61027c610bc2565b60405160ff909116815260200160405180910390f35b341561029d57600080fd5b6101d8600160a060020a0360043516610bc7565b34156102bc57600080fd5b6102d0600160a060020a0360043516610be5565b6040518088600160a060020a0316600160a060020a0316815260200180602001806020018060200180602001806020018060200187810387528d818151815260200191508051906020019080838360005b83811015610339578082015183820152602001610321565b50505050905090810190601f1680156103665780820380516001836020036101000a031916815260200191505b5087810386528c818151815260200191508051906020019080838360005b8381101561039c578082015183820152602001610384565b50505050905090810190601f1680156103c95780820380516001836020036101000a031916815260200191505b5087810385528b818151815260200191508051906020019080838360005b838110156103ff5780820151838201526020016103e7565b50505050905090810190601f16801561042c5780820380516001836020036101000a031916815260200191505b5087810384528a818151815260200191508051906020019080838360005b8381101561046257808201518382015260200161044a565b50505050905090810190601f16801561048f5780820380516001836020036101000a031916815260200191505b50878103835289818151815260200191508051906020019080838360005b838110156104c55780820151838201526020016104ad565b50505050905090810190601f1680156104f25780820380516001836020036101000a031916815260200191505b50878103825288818151815260200191508051906020019080838360005b83811015610528578082015183820152602001610510565b50505050905090810190601f1680156105555780820380516001836020036101000a031916815260200191505b509d505050505050505050505050505060405180910390f35b341561057957600080fd5b610581610ca7565b604051600160a060020a03909116815260200160405180910390f35b34156105a857600080fd5b6100e7610cb6565b34156105bb57600080fd5b610180600160a060020a0360043516602435610ced565b34156105dd57600080fd5b6101d8600160a060020a0360043581169060243516610de9565b341561060257600080fd5b610616600160a060020a0360043516610e14565b005b60408051908101604052600781527f5350494e444c4500000000000000000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260036020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60008054819033600160a060020a039081169116146106d957600080fd5b600160a060020a03891615156106ee57600080fd5b6106f733610eaf565b50600061070a818963ffffffff610f1e16565b905061071c818863ffffffff610f1e16565b905061072e818763ffffffff610f1e16565b9050610740818663ffffffff610f1e16565b9050610752818563ffffffff610f1e16565b9050610764818463ffffffff610f1e16565b600160a060020a03331660009081526002602052604081209192506107949183915b01549063ffffffff610f3716565b600160a060020a0333811660009081526002602052604080822093909355908b1681529081206107d0918a91905b01549063ffffffff610f1e16565b600160a060020a038a1660009081526002602052604090209081556107f890889060016107c2565b600160a060020a038a16600090815260026020819052604090912060018101929092556108269188916107c2565b600160a060020a038a1660009081526002602081905260409091209081019190915561085590869060036107c2565b600160a060020a038a166000908152600260205260409020600381019190915561088290859060046107c2565b600160a060020a038a16600090815260026020526040902060048101919091556108af90849060056107c2565b600160a060020a038a16600090815260026020526040902060050155600160a060020a03808a169033167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405190815260200160405180910390a350600198975050505050505050565b6b204fce5e3e2502611000000090565b61093361132c565b61093b61132c565b600160a060020a038316600090815260026020526040902054815260015b600154811015610a6557600160a060020a0384166000908152600260205260409020816006811061098657fe5b015482826006811061099457fe5b602002015260018054829081106109a757fe5b6000918252602090912060048204015460039091166008026101000a900467ffffffffffffffff164210610a2657600160a060020a0384166000908152600260205260409020610a0c9082600681106109fc57fe5b015483519063ffffffff610f1e16565b82526000828260068110610a1c57fe5b6020020152610a5d565b600160a060020a03841660009081526002602052604090208160068110610a4957fe5b0154828260068110610a5757fe5b60200201525b600101610959565b5092915050565b6000600160a060020a0383161515610a8357600080fd5b30600160a060020a031683600160a060020a031614151515610aa457600080fd5b610aad84610eaf565b600160a060020a0384166000908152600260205260408120610ad191849190610786565b600160a060020a03858116600090815260026020526040808220939093559085168152908120610b03918491906107c2565b600160a060020a0384166000908152600260205260408120900155600160a060020a0380851660009081526003602090815260408083203390941683529290522054610b55908363ffffffff610f3716565b600160a060020a03808616600081815260036020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b601281565b6000610bd161132c565b610bda8361092b565b905080519392505050565b6000610bef611353565b610bf7611353565b610bff611353565b610c07611353565b610c0f611353565b610c17611353565b6000610c2161132c565b899150600160a060020a0382161515610c38573391505b610c418261092b565b905081610c558260005b6020020151610f4c565b610c60836001610c4b565b610c6b846002610c4b565b610c76856003610c4b565b610c81866004610c4b565b610c8c876005610c4b565b98509850985098509850985098505050919395979092949650565b600054600160a060020a031681565b60408051908101604052600381527f5350440000000000000000000000000000000000000000000000000000000000602082015281565b6000600160a060020a0383161515610d0457600080fd5b30600160a060020a031683600160a060020a031614151515610d2557600080fd5b610d2e33610eaf565b600160a060020a0333166000908152600260205260408120610d5291849190610786565b600160a060020a03338116600090815260026020526040808220939093559085168152908120610d84918491906107c2565b600160a060020a0384166000908152600260205260408120900155600160a060020a038084169033167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260036020908152604080832093909416825291909152205490565b60005433600160a060020a03908116911614610e2f57600080fd5b600160a060020a0381161515610e4457600080fd5b600054600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b610eb761132c565b6000610ec28361092b565b9150600090505b60068160ff161015610f19578160ff821660068110610ee457fe5b6020020151600160a060020a038416600090815260026020526040902060ff831660068110610f0f57fe5b0155600101610ec9565b505050565b600082820183811015610f3057600080fd5b9392505050565b600082821115610f4657600080fd5b50900390565b610f54611353565b600080600080610f62611353565b610f6a611353565b601e604051805910610f795750595b818152601f19601f830116810160200160405290509150601d95505b8560ff16600b1415610fee577f2e000000000000000000000000000000000000000000000000000000000000008260ff881681518110610fd157fe5b906020010190600160f860020a031916908160001a905350611044565b600a880660300160f860020a02828760ff168151811061100a57fe5b906020010190600160f860020a031916908160001a90535061103388600a63ffffffff61131516565b975060ff8616151561104457611050565b60001990950194610f95565b600093505b600a8460ff1610156110c4577f30000000000000000000000000000000000000000000000000000000000000008260ff86168151811061109157fe5b016020015160f860020a900460f860020a02600160f860020a0319161415156110b9576110c4565b600190930192611055565b601d92505b600c8360ff161115611139577f30000000000000000000000000000000000000000000000000000000000000008260ff85168151811061110557fe5b016020015160f860020a900460f860020a02600160f860020a03191614151561112d57611139565b600019909201916110c9565b60ff6005858503011660405180591061114f5750595b818152601f19601f830116810160200160405290509050600094508395505b60ff808416908716116111d257818660ff168151811061118a57fe5b016020015160f860020a900460f860020a02818660ff16815181106111ab57fe5b906020010190600160f860020a031916908160001a9053506001958601959094019361116e565b60018501947f200000000000000000000000000000000000000000000000000000000000000090829060ff168151811061120857fe5b906020010190600160f860020a031916908160001a90535060018501947f530000000000000000000000000000000000000000000000000000000000000090829060ff168151811061125657fe5b906020010190600160f860020a031916908160001a90535060018501947f500000000000000000000000000000000000000000000000000000000000000090829060ff16815181106112a457fe5b906020010190600160f860020a031916908160001a90535060018501947f440000000000000000000000000000000000000000000000000000000000000090829060ff16815181106112f257fe5b906020010190600160f860020a031916908160001a905350979650505050505050565b600080828481151561132357fe5b04949350505050565b60c06040519081016040526006815b600081526020019060019003908161133b5790505090565b602060405190810160405260008152905600a165627a7a723058208718140c084bead5dcdfca3173be3182266b3f3582cdcafdc38b7e043b9f81030029

   Swarm Source:
bzzr://8718140c084bead5dcdfca3173be3182266b3f3582cdcafdc38b7e043b9f8103

 

View All
Block Age txn Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "downvote" button for any spammy posts, and the "upvote" for interesting conversations.