Sponsored Link:   BubbleTone - Blockchain in Telecom, directly connecting mobile operators and users globally, launches its unique ICO!
  Latest 25 txns from a total Of 6574 transactions View All

TxHash Age From To Value [TxFee]
0x95520a3ef1121f656851ee58ecfec5fc4c7e5202b4ad2539a84e8ebcfa0f033346 mins ago0x0b4461af57f099805ec7e3245e3d233d79fe6ac0  IN   DMarketToken0 Ether0.000799764
0x3b058b4b6d51eb0bfd48e9e5fbe5b0b36aec7dedb72b0b34d0c5de24502031c72 hrs 42 mins ago0xf4775496624c382f74adbae79c5780f353b1f83b  IN   DMarketToken0 Ether0.000114252
0xea28f5bc92e00daf3ba0776c50f9315c2b377bdb912f55b73b6c216844a16c774 hrs 12 mins ago0xe7b4267157cc27f8dd7fd55c569201a31863f56e  IN   DMarketToken0 Ether0.002132704
0x4227262caf48b94ee230a5d106c8d63a9217691bef020fa1610a9533356ef08f7 hrs 34 mins ago0x946fcce8d4a8b8d128ebbe3311bae6a056cdb2d5  IN   DMarketToken0 Ether0.0019042
0xf2d23b13f62c495b3b0061c659fb20ecad8d5e9c10dd16ddacc2428a4a1fe8a79 hrs 19 mins ago0xcaaebe242d543d4880128332167779add5080358  IN   DMarketToken0 Ether0.001561444
0x78c4e864371c5ec1a9c37868701563cfa6a83d9cd1d93e8f52f94e33bc09b77c10 hrs 8 mins agoBittrex  IN   DMarketToken0 Ether0.0019074
0x4d91983a5bdcbe06004303f26da0564b8d13bd9c012f7117abaf9260cf650eeb10 hrs 35 mins ago0x3c48da4b5de82c36fb66b191ec38d374ae909960  IN   DMarketToken0 Ether0.0011574
0x53677d70def86191f9103dea88d577ed21a47def402c9706a5935546418cd8de12 hrs 25 mins agoBittrex  IN   DMarketToken0 Ether0.0019042
0xbe0761c662d421120bf4d827077f5105aaacc958ddf848b783a39d42a09cdf0f12 hrs 33 mins agoBittrex  IN   DMarketToken0 Ether0.0019042
0x87d582078d5c7f90230728aedad9cea7fb2e8b7ccb8de70af594074cfcfdf06512 hrs 39 mins agoBittrex  IN   DMarketToken0 Ether0.0026542
0xf42342e85861e1d79415bdb692fc9358367b318c09959a93432a977fe084bdd513 hrs 48 mins agoBittrex  IN   DMarketToken0 Ether0.0026574
0x1c0c909458ae6cb2af8e73c4af1f729d6ec7c142eea51d45b340c55075f6092416 hrs 42 mins ago0xec38670f4d36d2ac0bfba3205c193f71cf94cc70  IN   DMarketToken0 Ether0.00076296
0x1449dbfbec12910d06eb49c44756022afb2a834823427268559433c991df068917 hrs 27 mins agoBittrex  IN   DMarketToken0 Ether0.0019042
0xf889a78357f518f2fbf8840bfabceb8ec5a85c40878ae1e33b70f8e153bcfca518 hrs 31 mins ago0x5a4bafd666311754968b1ed2768d57770b7fde51  IN   DMarketToken0 Ether0.001151
0xaf9f86551c3d032b7a4a6bdba80c8644ad7acc156b5902be66f9cc16f23d7f7218 hrs 56 mins agoBittrex  IN   DMarketToken0 Ether0.0019074
0x06016ae0eff425ff904f0cc360bae946f3443b49b19c25ee4fa7929671a5ae6019 hrs 1 min agoBittrex  IN   DMarketToken0 Ether0.0026542
0x04c1c6193212b3dd0ee5d66e579196b37aa32d006999709c7c9715b7f569a47819 hrs 26 mins agoBittrex  IN   DMarketToken0 Ether0.002651
0x7fc02fad85c267b14bf245c18eb5aab5e6a59e00a3d8973183f75d8255cd058b19 hrs 35 mins ago0x108257e2a2b140c56b5dfbc0a8ed19a865ce9ba3  IN   DMarketToken0 Ether0.00155882
0xbab6ab00e3a6746cd55597117907a2d9189870704a264b02141f108bf73667dd19 hrs 58 mins ago0x6ad715af3cc2f26cb395c5f29fcb38855884cfdf  IN   DMarketToken0 Ether0.00018142
0xade9a2eb8ca0cbbcd82119da06b6f93906017015758022d64066b20ecbc1710521 hrs 29 mins ago0x3d94292e03b7f30e339a6d8cea6f0894568ea172  IN   DMarketToken0 Ether0.000048974
0xdbb741f47f1721dfd3dd3fc8ab9665ccc3babcf02169849e3b8ca9c0ae50cc7221 hrs 30 mins ago0x3d94292e03b7f30e339a6d8cea6f0894568ea172  IN   DMarketToken0 Ether0.000076168
0xfa1a9d0d71bb4788e040174e593731f74a56e1e47fdbd2070218b41696eea90721 hrs 52 mins ago0xd0fbd8970346a8f844e342ccf2fb855c3ab9073c  IN   DMarketToken0 Ether0.000038148
0x244ea6597d2c79c85467353d0bb422b6259fca386dbe4264c732091936f1dac722 hrs 40 mins ago0x77c5ece052fc962b0d2e3f7ce83d8f4cc8ec628b  IN   DMarketToken0 Ether0.000125466
0xe0b598c8e74800892eba2b4ecacf28d6434ede723e0705cb37446b6ae88e8b7422 hrs 41 mins ago0x69c9c3662a1a574b40a7fce3dfc099751b282dd1  IN   DMarketToken0 Ether0.000038148
0x9c47a561ca0dbded83f62b4f71c0e48a32f755c28376e06992558743da653b0e22 hrs 46 mins ago0x77c5ece052fc962b0d2e3f7ce83d8f4cc8ec628b  IN   DMarketToken0 Ether0.000269772888
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
View All
ParentTxHash Block Age From To Value
Contract Source Code Verified (Exact match)
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.