Sponsored Link:  ConnectJob App, the Uber of Service, launches its awesome ICO.
Contract Overview | DMarketToken
ETH Balance: 0 Ether
ETH USD Value: $0
No Of Transactions: 1180 txns
Token Tracker 0x2ccbff3a042c68716ed2a2cb0c544a9f1d1935e1
Misc  
   
Address Watch Add To Watch List
Contract Creator 0x784facfb21771313986ad961c960f0dc2f5ced2cat txn 0x111287826ad158a7ae11a9893f03e9e8998ed7b2bac061c83bed7b68e1958a6d
Token Tracker
  Latest 25 txns from a total Of 1180 transactions View All

TxHash Age From To Value [TxFee]
0x6890a2b1b56b193e7c22c892309a94208edfe3d3e7c23041466fde10154d84c211 mins ago0x867b8408a4bb0d76323d4f78b2915f5ab7c78ca1  IN   DMarketToken0 Ether0.000799764
0xb17e718c32b8feb3a8065815a6263ac5740baa79930d48f818ef0e5297cc66f13 hrs 43 mins ago0xdc3eac7147b2bfa3718d59eab6d42998d2ec75b1  IN   DMarketToken0 Ether0.00136065
0x3d29c653b0c6e096a1ed6386d1cf513a0ca4ccf119fe1270607620a6de2bc4873 hrs 51 mins ago0x8c77a38c5dfec301a0d67904ce1850812c42b0e7  IN   DMarketToken0 Ether0.01583621
0x2af4425d782add7dcfe6a92dcab4822cfde0f71630608e5a76de98ec0ddaa0bc3 hrs 55 mins ago0x8c77a38c5dfec301a0d67904ce1850812c42b0e7  IN   DMarketToken0 Ether0.006644335
0x31d84aa0e1c25ea67c7009688574e925dc12940901199bfb154d4eb9403654bc4 hrs 27 mins ago0x89808c49f858b86e80b892506cf11606fb25fcdc  IN   DMarketToken0 Ether0.001133875
0xd4f308d97cd83f2c74d8249df40eac258772f5a01844b873593e57779163ac6f4 hrs 31 mins ago0x8c77a38c5dfec301a0d67904ce1850812c42b0e7  IN   DMarketToken0 Ether0.001275552
0xcd8ae4cb11aa4c27e611585083b5edd1ffe25f120ae9d1e056524c3aa84c069f4 hrs 37 mins ago0x99752bac97008d6bc2a6946d62378920b47563de  IN   DMarketToken0 Ether0.000486108
0xb7d3ec13157a76b57f8210f69d4bb2b0bf236abbcfe57d3049ff8fc339f4cbc44 hrs 48 mins ago0x99752bac97008d6bc2a6946d62378920b47563de  IN   DMarketToken0 Ether0.001114764
0x7b25be12fee75dc4216cf230a679f4eecc5d0b966526f7d880f271cf949abeab4 hrs 52 mins ago0x9b0f2f91f23892cbcb01c9f04d213b0e663bccc8  IN   DMarketToken0 Ether0.001564068
0x16ada944434dc00c98b3435a0cc3d6b6e169eb2dbf634b332e61fcaa0601c6255 hrs 57 mins ago0xe0d19006bc472abbad3cdbf4587c1ab970def5cf  IN   DMarketToken0 Ether0.001564068
0x8d3898175155554fca8d9629c489c276b0ead394e2e4a22a4404859a007a8ade6 hrs 27 mins ago0x04f828022171adb067d0f237b927c5d35ee506df  IN   DMarketToken0 Ether0.00155882
0xf10e70bb9f20914c909a08d160d81fb0d645bff2c1158df306ff35b0fbcb91af8 hrs 18 mins ago0xe8459d4471b9abff09db0289ee1ac3270e3e260c  IN   DMarketToken0 Ether0.000181676
0x108ccfa59fb5ec8ecbda390d6f0058bcd6708c00f6cfef46082602ecf85659268 hrs 36 mins ago0xe2f42aad7f2abbbdd2b6317fe04a72b6eeb8c103  IN   DMarketToken0 Ether0.002517768
0xe1f9d403147cda5296bb6209a1ce30678fca2278846fb737bab1b8904fb2fd259 hrs 7 mins ago0x8f0c8cb28bd9a058cd253769418a2e11b6dd4758  IN   DMarketToken0 Ether0.001587425
0x044dac98cb615b9a6768de36df76c4539ce49cf584ee816b9d699085b3feea2b9 hrs 39 mins ago0x69390eafccb9582c3328184031afc93b38ecf31d  IN   DMarketToken0 Ether0.000181676
0xc6a6d3608f2a83f3ba731dc49a5a400d022d3636e67bfd5a2576296fac51513910 hrs 3 mins ago0x3d68d270b5935438bf4c5f7a5725b5f26c2a27c6  IN   DMarketToken0 Ether0.001564068
0xf08307aa5a6e793206e693239ac70bf2f6ebd7f0e0cf433595665ad17089ddb310 hrs 18 mins ago0x07b7ad1b3e14a0bf4accbe0d99c40f0466d50c81  IN   DMarketToken0 Ether0.00312
0x522535270a2396be634b1079b78b2ba15655feb39392fe14120fd3d3a5560d9a10 hrs 36 mins ago0x4b9e8bba5d155a5cfd8cb101f365eec482489749  IN   DMarketToken0 Ether0.00090838
0x91bc9a5d636e4cda5ea0fe02b6ac7537594347f729c0d45daff1767505e89f8f10 hrs 43 mins ago0x0091cc725ff7faaa9b719ef9f9a41a49e55a60c0  IN   DMarketToken0 Ether0.000801108
0xe885837a8699f4c1edbbf7e101919e41b015b54d1860742c33d3b0fbffeca5aa10 hrs 49 mins ago0xad89b46662cfec5c5bce6dc6fe310b116e0af777  IN   DMarketToken0 Ether0.000801108
0x8dbf3791b4e06d96c5e32369a2f1400694c4df09ed0ef52bdcf09c019815b79f10 hrs 56 mins ago0x01a3e509b3543ba29a8d6eef9583399911f303d2  IN   DMarketToken0 Ether0.00114252
0xad975871e90438d13fa332243f5f860e75aeacd961d94ffd9720595357317d6e11 hrs 56 mins ago0xaba606f8b4c1606aba97aa5343e0fa0a937ccd5d  IN   DMarketToken0 Ether0.001564068
0x2afdb7c0ca82b61bf622f3f112fefe843d01dd83a0ee853271fd2e45c88bc16212 hrs 19 mins ago0xd3d33d91e13f24f1c62b905143509bad3179d7f4  IN   DMarketToken0 Ether0.00317933
0x62f9e976efc90b401def2379c35c6f14699cf14ee29d91e6798f493c2517f84d12 hrs 21 mins ago0x94593e8ce47a1412d0d241f641b6a7a3cf51e1d7  IN   DMarketToken0 Ether0.00076168
0xa8bfabb8a5635f6de72f4d35607b817d58dda812c85d94c3e2254c0466f843ae14 hrs 33 mins ago0xb75cdf900688e5ca2922bbbdbdab106039a5120b  IN   DMarketToken0 Ether0.00172349
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
View All
ParentTxHash Block Age From To Value
Contract Source Code Verified
Contract Name: DMToken
Compiler Version: v0.4.18+commit.9cf6e910
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts
pragma solidity 0.4.18;

/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a * b;
        assert(a == 0 || c / a == b);
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        // assert(b > 0); // Solidity automatically throws when dividing by 0
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        assert(b <= a);
        return a - b;
    }

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        assert(c >= a);
        return c;
    }
}

/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */
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) onlyOwner public {
        require(newOwner != address(0));
        OwnershipTransferred(owner, newOwner);
        owner = newOwner;
    }
}

/**
* @title ERC20Basic
* @dev Simpler version of ERC20 interface
* @dev see https://github.com/ethereum/EIPs/issues/179
*/
contract ERC20Basic {
    uint256 public totalSupply;
    function balanceOf(address who) public constant returns (uint256);
    function transfer(address to, uint256 value) public 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 owner, address spender) public constant returns (uint256);
    function transferFrom(address from, address to, uint256 value) public returns (bool);
    function approve(address spender, uint256 value) public returns (bool);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}


contract ApprovalContract is ERC20 {
    using SafeMath for uint256;

    mapping (address => mapping (address => uint256)) public allowed;

    /**
     * @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) public returns (bool) {
        allowed[msg.sender][_spender] = _value;
        Approval(msg.sender, _spender, _value);
        return true;
    }

    /**
     * @dev Function to check the amount of tokens that an owner allowed to a spender.
     * @param _owner 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 _owner, address _spender) public constant returns (uint256 remaining) {
        return allowed[_owner][_spender];
    }

    /**
     * approve should be called when allowed[_spender] == 0. To increment
     * allowed value is better to use this function to avoid 2 calls (and wait until
     * the first transaction is mined)
     * From MonolithDAO Token.sol
     */
    function increaseApproval (address _spender, uint _addedValue) public
    returns (bool success) {
        allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
        Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }

    function decreaseApproval (address _spender, uint _subtractedValue) public
    returns (bool success) {
        uint oldValue = allowed[msg.sender][_spender];
        if (_subtractedValue > oldValue) {
            allowed[msg.sender][_spender] = 0;
        } else {
            allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
        }
        Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }
}

/**
 * @title Mintable token
 * @dev Simple ERC20 Token example, with mintable token creation
 * @dev Issue: * https://github.com/OpenZeppelin/zeppelin-solidity/issues/120
 * Based on code by TokenMarketNet: https://github.com/TokenMarketNet/ico/blob/master/contracts/MintableToken.sol
 */
contract MintableToken is ApprovalContract, Ownable {

    uint256 public hardCap;
    mapping(address => uint256) public balances;

    event Mint(address indexed to, uint256 amount);

    modifier canMint() {
        require(totalSupply == 0);
        _;
    }

    /**
     * @dev Function to mint tokens
     * @param _to The address that will receive the minted tokens.
     * @param _amount The amount of tokens to mint.
     * @return A boolean that indicates if the operation was successful.
     */
    function mint(address _to, uint256 _amount) onlyOwner canMint public returns (bool) {
        require(_amount < hardCap);
        totalSupply = totalSupply.add(_amount);
        balances[_to] = balances[_to].add(_amount);
        Mint(_to, _amount);
        Transfer(0x0, _to, _amount);
        return true;
    }
}

/**
 * @title Vesting token
 */
contract Vesting is MintableToken {

    event VestingMemberAdded(address indexed _address, uint256 _amount, uint _start, uint _end);

    struct _Vesting {
        uint256 totalSum;     //total amount
        uint256 start;        //start block
        uint256 end;          //end block
        uint256 usedAmount;   //the amount of paid payments
    }

    mapping (address => _Vesting ) public vestingMembers;

    function addVestingMember(
        address _address,
        uint256 _amount,
        uint256 _start,
        uint256 _end
    ) onlyOwner public returns (bool) {
        require(
            _address != address(0) &&
            _amount > 0 &&
            _start < _end &&
            vestingMembers[_address].totalSum == 0 &&
            balances[msg.sender] > _amount
        );

        balances[msg.sender] = balances[msg.sender].sub(_amount);

        vestingMembers[_address].totalSum = _amount;    //total amount
        vestingMembers[_address].start = _start;        //start block
        vestingMembers[_address].end = _end;            //end block
        vestingMembers[_address].usedAmount = 0;        //the amount of paid payments

        VestingMemberAdded(_address, _amount, _start, _end);

        return true;
    }

    function currentPart(address _address) private constant returns (uint256) {
        if (vestingMembers[_address].totalSum == 0 || block.number <= vestingMembers[_address].start) {
            return 0;
        }
        if (block.number >= vestingMembers[_address].end) {
            return vestingMembers[_address].totalSum.sub(vestingMembers[_address].usedAmount);
        }

        return vestingMembers[_address].totalSum
        .mul(block.number - vestingMembers[_address].start)
        .div(vestingMembers[_address].end - vestingMembers[_address].start)
        .sub(vestingMembers[_address].usedAmount);
    }

    function subFromBalance(address _address, uint256 _amount) private returns (uint256) {
        require(_address != address(0));

        if (vestingMembers[_address].totalSum == 0) {
            balances[_address] = balances[_address].sub(_amount);
            return balances[_address];
        }
        uint256 summary = balanceOf(_address);
        require(summary >= _amount);

        if (balances[_address] > _amount) {
            balances[_address] = balances[_address].sub(_amount);
        } else {
            uint256 part = currentPart(_address);
            if (block.number >= vestingMembers[_address].end) {
                vestingMembers[_address].totalSum = 0;          //total amount
                vestingMembers[_address].start = 0;             //start block
                vestingMembers[_address].end = 0;               //end block
                vestingMembers[_address].usedAmount = 0;        //the amount of paid payments
            } else {
                vestingMembers[_address].usedAmount = vestingMembers[_address].usedAmount.add(part);
            }
            balances[_address] = balances[_address].add(part).sub(_amount);
        }

        return balances[_address];
    }

    function balanceOf(address _owner) public constant returns (uint256 balance) {
        if (vestingMembers[_owner].totalSum == 0) {
            return balances[_owner];
        } else {
            return balances[_owner].add(currentPart(_owner));
        }
    }

    function transfer(address _to, uint256 _value) public returns (bool) {
        require(_to != address(0));
        require(_value <= balanceOf(msg.sender));

        subFromBalance(msg.sender, _value);

        balances[_to] = balances[_to].add(_value);
        Transfer(msg.sender, _to, _value);
        return true;
    }

    function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
        require(_to != address(0));

        uint256 _allowance = allowed[_from][msg.sender];

        subFromBalance(_from, _value);

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


contract DMToken is Vesting {

    string public name = "DMarket Token";
    string public symbol = "DMT";
    uint256 public decimals = 8;

    function DMToken() public {
        hardCap = 15644283100000000;
    }

    function multiTransfer(address[] recipients, uint256[] amounts) public {
        require(recipients.length == amounts.length);
        for (uint i = 0; i < recipients.length; i++) {
            transfer(recipients[i], amounts[i]);
        }
    }

    function multiVesting(
        address[] _address,
        uint256[] _amount,
        uint256[] _start,
        uint256[] _end
    ) public onlyOwner {
        require(
            _address.length == _amount.length &&
            _address.length == _start.length &&
            _address.length == _end.length
        );
        for (uint i = 0; i < _address.length; i++) {
            addVestingMember(_address[i], _amount[i], _start[i], _end[i]);
        }
    }
}

    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":"_address","type":"address[]"},{"name":"_amount","type":"uint256[]"},{"name":"_start","type":"uint256[]"},{"name":"_end","type":"uint256[]"}],"name":"multiVesting","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"recipients","type":"address[]"},{"name":"amounts","type":"uint256[]"}],"name":"multiTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","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":"","type":"address"}],"name":"balances","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowed","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_start","type":"uint256"},{"name":"_end","type":"uint256"}],"name":"addVestingMember","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","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":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"vestingMembers","outputs":[{"name":"totalSum","type":"uint256"},{"name":"start","type":"uint256"},{"name":"end","type":"uint256"},{"name":"usedAmount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"hardCap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_start","type":"uint256"},{"indexed":false,"name":"_end","type":"uint256"}],"name":"VestingMemberAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"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":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]

  Contract Creation Code Switch To Opcodes View
606060405260408051908101604052600d81527f444d61726b657420546f6b656e00000000000000000000000000000000000000602082015260069080516200004d929160200190620000d4565b5060408051908101604052600381527f444d5400000000000000000000000000000000000000000000000000000000006020820152600790805162000097929160200190620000d4565b50600880553415620000a857600080fd5b60028054600160a060020a03191633600160a060020a03161790556637946480f0ef0060035562000179565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200011757805160ff191683800117855562000147565b8280016001018555821562000147579182015b82811115620001475782518255916020019190600101906200012a565b506200015592915062000159565b5090565b6200017691905b8082111562000155576000815560010162000160565b90565b61139680620001896000396000f30060606040526004361061011c5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610121578063095ea7b3146101ab5780631534e8d2146101e157806318160ddd146102f25780631e89d5451461031757806323b872dd146103a657806327e235e3146103ce578063313ce567146103ed57806340c10f19146104005780635c65816514610422578063661884631461044757806370a08231146104695780638a88c349146104885780638da5cb5b146104b057806395d89b41146104df578063a9059cbb146104f2578063d73dd62314610514578063dd62ed3e14610536578063e7377ccb1461055b578063f2fde38b146105a5578063fb86a404146105c4575b600080fd5b341561012c57600080fd5b6101346105d7565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610170578082015183820152602001610158565b50505050905090810190601f16801561019d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101b657600080fd5b6101cd600160a060020a0360043516602435610675565b604051901515815260200160405180910390f35b34156101ec57600080fd5b6102f060046024813581810190830135806020818102016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437509496506106e195505050505050565b005b34156102fd57600080fd5b6103056107a6565b60405190815260200160405180910390f35b341561032257600080fd5b6102f06004602481358181019083013580602081810201604051908101604052809392919081815260200183836020028082843782019150505050505091908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437509496506107ac95505050505050565b34156103b157600080fd5b6101cd600160a060020a036004358116906024351660443561080b565b34156103d957600080fd5b610305600160a060020a0360043516610916565b34156103f857600080fd5b610305610928565b341561040b57600080fd5b6101cd600160a060020a036004351660243561092e565b341561042d57600080fd5b610305600160a060020a0360043581169060243516610a3f565b341561045257600080fd5b6101cd600160a060020a0360043516602435610a5c565b341561047457600080fd5b610305600160a060020a0360043516610b56565b341561049357600080fd5b6101cd600160a060020a0360043516602435604435606435610bcd565b34156104bb57600080fd5b6104c3610d20565b604051600160a060020a03909116815260200160405180910390f35b34156104ea57600080fd5b610134610d2f565b34156104fd57600080fd5b6101cd600160a060020a0360043516602435610d9a565b341561051f57600080fd5b6101cd600160a060020a0360043516602435610e5b565b341561054157600080fd5b610305600160a060020a0360043581169060243516610eff565b341561056657600080fd5b61057a600160a060020a0360043516610f2a565b6040518085815260200184815260200183815260200182815260200194505050505060405180910390f35b34156105b057600080fd5b6102f0600160a060020a0360043516610f51565b34156105cf57600080fd5b610305610fec565b60068054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561066d5780601f106106425761010080835404028352916020019161066d565b820191906000526020600020905b81548152906001019060200180831161065057829003601f168201915b505050505081565b600160a060020a03338116600081815260016020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60025460009033600160a060020a039081169116146106ff57600080fd5b83518551148015610711575082518551145b801561071e575081518551145b151561072957600080fd5b5060005b845181101561079f5761079685828151811061074557fe5b9060200190602002015185838151811061075b57fe5b9060200190602002015185848151811061077157fe5b9060200190602002015185858151811061078757fe5b90602001906020020151610bcd565b5060010161072d565b5050505050565b60005481565b600081518351146107bc57600080fd5b5060005b8251811015610806576107fd8382815181106107d857fe5b906020019060200201518383815181106107ee57fe5b90602001906020020151610d9a565b506001016107c0565b505050565b600080600160a060020a038416151561082357600080fd5b50600160a060020a03808516600090815260016020908152604080832033909416835292905220546108558584610ff2565b50600160a060020a03841660009081526004602052604090205461087f908463ffffffff61121716565b600160a060020a0385166000908152600460205260409020556108a8818463ffffffff61122d16565b600160a060020a03808716600081815260016020908152604080832033861684529091529081902093909355908616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a3506001949350505050565b60046020526000908152604090205481565b60085481565b60025460009033600160a060020a0390811691161461094c57600080fd5b6000541561095957600080fd5b600354821061096757600080fd5b60005461097a908363ffffffff61121716565b6000908155600160a060020a0384168152600460205260409020546109a5908363ffffffff61121716565b600160a060020a0384166000818152600460205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a282600160a060020a031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350600192915050565b600160209081526000928352604080842090915290825290205481565b600160a060020a03338116600090815260016020908152604080832093861683529290529081205480831115610ab957600160a060020a033381166000908152600160209081526040808320938816835292905290812055610af0565b610ac9818463ffffffff61122d16565b600160a060020a033381166000908152600160209081526040808320938916835292905220555b600160a060020a0333811660008181526001602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a0381166000908152600560205260408120541515610b945750600160a060020a038116600090815260046020526040902054610bc8565b610bc5610ba08361123f565b600160a060020a0384166000908152600460205260409020549063ffffffff61121716565b90505b919050565b60025460009033600160a060020a03908116911614610beb57600080fd5b600160a060020a03851615801590610c035750600084115b8015610c0e57508183105b8015610c305750600160a060020a038516600090815260056020526040902054155b8015610c545750600160a060020a0333166000908152600460205260409020548490115b1515610c5f57600080fd5b600160a060020a033316600090815260046020526040902054610c88908563ffffffff61122d16565b600160a060020a033381166000908152600460209081526040808320949094559188168082526005909252828120878155600181018790556002810186905560030155907f9ea28b5c79c887f8af8cb7d5f9265c95099f56af698c890365d79b0ab25cf7bf908690869086905180848152602001838152602001828152602001935050505060405180910390a2506001949350505050565b600254600160a060020a031681565b60078054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561066d5780601f106106425761010080835404028352916020019161066d565b6000600160a060020a0383161515610db157600080fd5b610dba33610b56565b821115610dc657600080fd5b610dd03383610ff2565b50600160a060020a038316600090815260046020526040902054610dfa908363ffffffff61121716565b600160a060020a0380851660008181526004602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a033381166000908152600160209081526040808320938616835292905290812054610e93908363ffffffff61121716565b600160a060020a0333811660008181526001602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260016020908152604080832093909416825291909152205490565b60056020526000908152604090208054600182015460028301546003909301549192909184565b60025433600160a060020a03908116911614610f6c57600080fd5b600160a060020a0381161515610f8157600080fd5b600254600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60035481565b60008080600160a060020a038516151561100b57600080fd5b600160a060020a038516600090815260056020526040902054151561107557600160a060020a038516600090815260046020526040902054611053908563ffffffff61122d16565b600160a060020a0386166000908152600460205260409020819055925061120f565b61107e85610b56565b91508382101561108d57600080fd5b600160a060020a038516600090815260046020526040902054849011156110f557600160a060020a0385166000908152600460205260409020546110d7908563ffffffff61122d16565b600160a060020a0386166000908152600460205260409020556111f3565b6110fe8561123f565b600160a060020a038616600090815260056020526040902060020154909150431061115557600160a060020a038516600090815260056020526040812081815560018101829055600281018290556003015561119e565b600160a060020a038516600090815260056020526040902060030154611181908263ffffffff61121716565b600160a060020a0386166000908152600560205260409020600301555b600160a060020a0385166000908152600460205260409020546111d99085906111cd908463ffffffff61121716565b9063ffffffff61122d16565b600160a060020a0386166000908152600460205260409020555b600160a060020a03851660009081526004602052604090205492505b505092915050565b60008282018381101561122657fe5b9392505050565b60008282111561123957fe5b50900390565b600160a060020a038116600090815260056020526040812054158061127f5750600160a060020a0382166000908152600560205260409020600101544311155b1561128c57506000610bc8565b600160a060020a03821660009081526005602052604090206002015443106112dc57600160a060020a038216600090815260056020526040902060038101549054610bc59163ffffffff61122d16565b600160a060020a03821660009081526005602052604090206003810154600182015460028301549254610bc5936111cd92908190039161132391430363ffffffff61132f16565b9063ffffffff61135316565b600082820283158061134b575082848281151561134857fe5b04145b151561122657fe5b600080828481151561136157fe5b049493505050505600a165627a7a7230582011e4cda0b00b4de9dc7fcc28525987db198d7a5d1bc4c530aed773322926d6ec0029

   Swarm Source:
bzzr://11e4cda0b00b4de9dc7fcc28525987db198d7a5d1bc4c530aed773322926d6ec

 

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.