Contract 0x04e0e2dd8fdbca1d584927cdbdeb7a1314dff1f4

 

TxHash Block Age From To Value [TxFee]
0x078cc70c158e7b33d98e36f52e3b4258ecfc6ea5fced56b6a4ff85f9141636146289985168 days 2 hrs ago0x812964e63adf6bfb168394e88da653504d5a84da IN  0x04e0e2dd8fdbca1d584927cdbdeb7a1314dff1f40 Ether0.000958188
0x6e64f2c8f70c133b6220b8301e8f7bbf4bfc8d4f5c8f7cb74ea0cc2e805fc3f26289985168 days 2 hrs ago0x812964e63adf6bfb168394e88da653504d5a84da IN  0x04e0e2dd8fdbca1d584927cdbdeb7a1314dff1f40 Ether0.000410652
0x6247d09565226c0a04146e9af75658a63b47fbc7d3e58eb8d206dbb54a19eaf06289976168 days 2 hrs ago0x812964e63adf6bfb168394e88da653504d5a84da IN  0x04e0e2dd8fdbca1d584927cdbdeb7a1314dff1f40 Ether0.00011046
0xd87baa41987ba49c89ab2519842c50fe0d97aec5c40165c6b96770bc302b82f66289976168 days 2 hrs ago0x812964e63adf6bfb168394e88da653504d5a84da IN  0x04e0e2dd8fdbca1d584927cdbdeb7a1314dff1f40 Ether0.000147536
0x0fe72b84ea9b3a5df85bf462968ef32469e3207dceab31d0c816d8f7c98e695d6289976168 days 2 hrs ago0x812964e63adf6bfb168394e88da653504d5a84da IN  0x04e0e2dd8fdbca1d584927cdbdeb7a1314dff1f40 Ether0.000547536
0xc53b4e3e736cbccebdab0b9d98c09b14351459650e7ffc0cd1983b93499c85f56289976168 days 2 hrs ago0x812964e63adf6bfb168394e88da653504d5a84da IN  0x04e0e2dd8fdbca1d584927cdbdeb7a1314dff1f40 Ether0.000110652
0x539c7164647752fd5d2984259ade2f2602c9ee6cf75cc6369213c45db316c5ae6289976168 days 2 hrs ago0x812964e63adf6bfb168394e88da653504d5a84da IN  0x04e0e2dd8fdbca1d584927cdbdeb7a1314dff1f40 Ether0.00015546
0xb80f795336a8d7139d14f775e0e747e116e6f5274fd85a3da14007409733b6106289097168 days 6 hrs ago0x812964e63adf6bfb168394e88da653504d5a84da IN  0x04e0e2dd8fdbca1d584927cdbdeb7a1314dff1f40 Ether0.002020678
0xa520d1278683be575b86fdb262b7762e6e2f5d3c106ba569de7c1f36901e7ace6289042168 days 6 hrs ago0x812964e63adf6bfb168394e88da653504d5a84da IN  0x04e0e2dd8fdbca1d584927cdbdeb7a1314dff1f40 Ether0.000207024
0x32201826ccf209b2f8614bf1afc4dc1b8645f266a35ebc8a7e967157a3df3c576123540196 days 4 hrs ago0x812964e63adf6bfb168394e88da653504d5a84da IN  0x04e0e2dd8fdbca1d584927cdbdeb7a1314dff1f40 Ether0.000830144
0x5d8f32f69ce2801d41f87f963a9268ca24b01918f3339fa58a0308d100d73a5e6123529196 days 4 hrs ago0x812964e63adf6bfb168394e88da653504d5a84da IN  0x04e0e2dd8fdbca1d584927cdbdeb7a1314dff1f40 Ether0.000436
0x66838e26cf8b706dc756bfd7f672636c58a1f73a07682fd03d2a10b47988e6b76123494196 days 5 hrs ago0x812964e63adf6bfb168394e88da653504d5a84da IN  Contract Creation0 Ether0.03156989202
[ Download CSV Export 

Internal Transactions as a result of Contract Execution

Parent TxHash Block Age From To Value
Warning: The compiled contract might be susceptible to ExpExponentCleanup (medium/high-severity), EventStructWrongData (very low-severity) Solidity Compiler Bugs.

Contract Source Code Verified (Exact Match)
Contract Name: Bloktrade
Compiler Version: v0.4.24+commit.e67f0147
Optimization Enabled: Yes
Runs (Optimizer):  200


Contract Source Code
pragma solidity ^0.4.12;

/**
 * @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.
   */
  constructor () 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));
    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 {
  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 Basic token
 * @dev Basic version of StandardToken, with no allowances.
 */
contract BasicToken is ERC20Basic {
  using SafeMath for uint256;

  mapping(address => uint256) balances;

  /**
  * @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) public returns (bool) {
    require(_to != address(0));

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

  /**
  * @dev Gets the balance of the specified address.
  * @param _owner The address to query the the balance of.
  * @return An uint256 representing the amount owned by the passed address.
  */
  function balanceOf(address _owner) public constant returns (uint256 balance) {
    return balances[_owner];
  }
}

/**
 * @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);
}


/**
 * @title Standard ERC20 token
 *
 * @dev Implementation of the basic standard token.
 * @dev https://github.com/ethereum/EIPs/issues/20
 * @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
 */
contract StandardToken is ERC20, BasicToken {

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


  /**
   * @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) public returns (bool) {
    require(_to != address(0));

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

    // Check is not needed because sub(_allowance, _value) will already throw if this condition is not met
    // require (_value <= _allowance);

    balances[_from] = balances[_from].sub(_value);
    balances[_to] = balances[_to].add(_value);
    allowed[_from][msg.sender] = _allowance.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) public 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 _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);
    emit 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);
    }
    emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }
}


/**
 * @title Burnable Token
 * @dev Token that can be irreversibly burned (destroyed).
 */
contract BurnableToken is StandardToken {

    event Burn(address indexed burner, uint256 value);

    /**
     * @dev Burns a specific amount of tokens.
     * @param _value The amount of token to be burned.
     */
    function burn(uint256 _value) public {
        require(_value > 0);
        require(_value <= balances[msg.sender]);
        // no need to require value <= totalSupply, since that would imply the
        // sender's balance is greater than the totalSupply, which *should* be an assertion failure

        address burner = msg.sender;
        balances[burner] = balances[burner].sub(_value);
        totalSupply = totalSupply.sub(_value);
        emit Burn(burner, _value);
        emit Transfer(burner, address(0), _value);
    }
}

contract Token is BurnableToken, Ownable {

    string public constant name = "Bloktrade";
    string public constant symbol = "BLKTT";
    uint public constant decimals = 18;
    // there is no problem in using * here instead of .mul()
    uint256 public constant initialSupply = 100000000 * (10 ** uint256(decimals));

    // Constructors
    constructor () public {
        totalSupply = initialSupply;
        balances[msg.sender] = initialSupply; // Send all tokens to owner
        emit Transfer(0x0, owner, initialSupply);
    }

}

/**
 * @title Crowdsale
 * @dev Crowdsale is a base contract for managing a token crowdsale.
 * Crowdsales have a start and end timestamps, where investors can make
 * token purchases and the crowdsale will assign them tokens based
 * on a token per ETH rate. Funds collected are forwarded 
 to a wallet
 * as they arrive.
 */
interface token { function transfer(address receiver, uint amount) external; }
contract Bloktrade is Token {
  using SafeMath for uint256;

  uint256 public price = 3000;

  token tokenReward;


  uint256 public weiRaised;

  /**
   * event for token purchase logging
   * @param purchaser who paid for the tokens
   * @param beneficiary who got the tokens
   * @param value weis paid for purchase
   * @param amount amount of tokens purchased
   */
  event TokenPurchase(address indexed purchaser, address indexed beneficiary, uint256 value, uint256 amount);


  constructor () public {

    tokenReward = token(address(this));
  }

  bool public started = true;

  function startSale() onlyOwner public {
    // if (msg.sender != wallet) throw;
    started = true;
  }

  function stopSale() onlyOwner public {
    // if(msg.sender != wallet) throw;
    started = false;
  }

  function setPrice(uint256 _price) onlyOwner public {
    // if(msg.sender != wallet) throw;
    price = _price;
  }

  // fallback function can be used to buy tokens
  function () payable public {
    buyTokens(msg.sender);
  }

  // low level token purchase function
  function buyTokens(address beneficiary) payable public {
    require(beneficiary != 0x0);
    require(validPurchase());

    uint256 weiAmount = msg.value;

    // if(weiAmount < 10**16) throw;
    // if(weiAmount > 50*10**18) throw;

    // calculate token amount to be sent
    uint256 tokens = (weiAmount) * price;//weiamount * price 
    // uint256 tokens = (weiAmount/10**(18-decimals)) * price;//weiamount * price 

    // update state
    weiRaised = weiRaised.add(weiAmount);

    tokenReward.transfer(beneficiary, tokens);
    emit TokenPurchase(msg.sender, beneficiary, weiAmount, tokens);
    forwardFunds();
  }

  // send ether to the fund collection wallet
  // override to create custom fund forwarding mechanisms
  function forwardFunds() internal {
    owner.transfer(msg.value);
  }

  // @return true if the transaction can buy tokens
  function validPurchase() internal constant returns (bool) {
    bool withinPeriod = started;
    bool nonZeroPurchase = msg.value != 0;
    return withinPeriod && nonZeroPurchase;
  }

  function withdrawTokens(uint256 _amount) onlyOwner public {
    tokenReward.transfer(owner,_amount);
  }
}

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":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"started","outputs":[{"name":"","type":"bool"}],"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":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"initialSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"weiRaised","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","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":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_price","type":"uint256"}],"name":"setPrice","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"price","outputs":[{"name":"","type":"uint256"}],"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":"startSale","outputs":[],"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":false,"inputs":[],"name":"stopSale","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"beneficiary","type":"address"}],"name":"buyTokens","outputs":[],"payable":true,"stateMutability":"payable","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"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"purchaser","type":"address"},{"indexed":true,"name":"beneficiary","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"TokenPurchase","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":"burner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","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
6080604052610bb86004556007805460ff1916600117905534801561002357600080fd5b5060038054600160a060020a0319163390811782556a52b7d2dcc80cd2e40000006000818155918252600160209081526040808420839055935484519283529351600160a060020a0394909416937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a360058054600160a060020a03191630179055610d93806100bc6000396000f3006080604052600436106101325763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461013d578063095ea7b3146101c757806318160ddd146101ff5780631f2698ab1461022657806323b872dd1461023b578063313ce56714610265578063315a095d1461027a578063378dc3dc146102925780634042b66f146102a757806342966c68146102bc57806366188463146102d457806370a08231146102f85780638da5cb5b1461031957806391b7f5ed1461034a57806395d89b4114610362578063a035b1fe14610377578063a9059cbb1461038c578063b66a0e5d146103b0578063d73dd623146103c5578063dd62ed3e146103e9578063e36b0b3714610410578063ec8ac4d814610425578063f2fde38b14610439575b61013b3361045a565b005b34801561014957600080fd5b50610152610580565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561018c578181015183820152602001610174565b50505050905090810190601f1680156101b95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101d357600080fd5b506101eb600160a060020a03600435166024356105b7565b604080519115158252519081900360200190f35b34801561020b57600080fd5b5061021461061d565b60408051918252519081900360200190f35b34801561023257600080fd5b506101eb610623565b34801561024757600080fd5b506101eb600160a060020a036004358116906024351660443561062c565b34801561027157600080fd5b5061021461074e565b34801561028657600080fd5b5061013b600435610753565b34801561029e57600080fd5b506102146107f6565b3480156102b357600080fd5b50610214610805565b3480156102c857600080fd5b5061013b60043561080b565b3480156102e057600080fd5b506101eb600160a060020a036004351660243561090a565b34801561030457600080fd5b50610214600160a060020a03600435166109fa565b34801561032557600080fd5b5061032e610a15565b60408051600160a060020a039092168252519081900360200190f35b34801561035657600080fd5b5061013b600435610a24565b34801561036e57600080fd5b50610152610a40565b34801561038357600080fd5b50610214610a77565b34801561039857600080fd5b506101eb600160a060020a0360043516602435610a7d565b3480156103bc57600080fd5b5061013b610b44565b3480156103d157600080fd5b506101eb600160a060020a0360043516602435610b6a565b3480156103f557600080fd5b50610214600160a060020a0360043581169060243516610c03565b34801561041c57600080fd5b5061013b610c2e565b61013b600160a060020a036004351661045a565b34801561044557600080fd5b5061013b600160a060020a0360043516610c51565b600080600160a060020a038316151561047257600080fd5b61047a610ce6565b151561048557600080fd5b505060045460065434918202906104a2908363ffffffff610d0316565b600655600554604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a038681166004830152602482018590529151919092169163a9059cbb91604480830192600092919082900301818387803b15801561051357600080fd5b505af1158015610527573d6000803e3d6000fd5b505060408051858152602081018590528151600160a060020a03881694503393507f623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad18929181900390910190a361057b610d19565b505050565b60408051808201909152600981527f426c6f6b74726164650000000000000000000000000000000000000000000000602082015281565b336000818152600260209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b60005481565b60075460ff1681565b600080600160a060020a038416151561064457600080fd5b50600160a060020a03841660008181526002602090815260408083203384528252808320549383526001909152902054610684908463ffffffff610d5516565b600160a060020a0380871660009081526001602052604080822093909355908616815220546106b9908463ffffffff610d0316565b600160a060020a0385166000908152600160205260409020556106e2818463ffffffff610d5516565b600160a060020a03808716600081815260026020908152604080832033845282529182902094909455805187815290519288169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a3506001949350505050565b601281565b600354600160a060020a0316331461076a57600080fd5b600554600354604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a039283166004820152602481018590529051919092169163a9059cbb91604480830192600092919082900301818387803b1580156107db57600080fd5b505af11580156107ef573d6000803e3d6000fd5b5050505050565b6a52b7d2dcc80cd2e400000081565b60065481565b600080821161081957600080fd5b3360009081526001602052604090205482111561083557600080fd5b5033600081815260016020526040902054610856908363ffffffff610d5516565b600160a060020a03821660009081526001602052604081209190915554610883908363ffffffff610d5516565b600055604080518381529051600160a060020a038316917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a2604080518381529051600091600160a060020a038416917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b336000908152600260209081526040808320600160a060020a03861684529091528120548083111561095f57336000908152600260209081526040808320600160a060020a0388168452909152812055610994565b61096f818463ffffffff610d5516565b336000908152600260209081526040808320600160a060020a03891684529091529020555b336000818152600260209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b600160a060020a031660009081526001602052604090205490565b600354600160a060020a031681565b600354600160a060020a03163314610a3b57600080fd5b600455565b60408051808201909152600581527f424c4b5454000000000000000000000000000000000000000000000000000000602082015281565b60045481565b6000600160a060020a0383161515610a9457600080fd5b33600090815260016020526040902054610ab4908363ffffffff610d5516565b3360009081526001602052604080822092909255600160a060020a03851681522054610ae6908363ffffffff610d0316565b600160a060020a0384166000818152600160209081526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b600354600160a060020a03163314610b5b57600080fd5b6007805460ff19166001179055565b336000908152600260209081526040808320600160a060020a0386168452909152812054610b9e908363ffffffff610d0316565b336000818152600260209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b600354600160a060020a03163314610c4557600080fd5b6007805460ff19169055565b600354600160a060020a03163314610c6857600080fd5b600160a060020a0381161515610c7d57600080fd5b600354604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60075460009060ff16341515818015610cfc5750805b9250505090565b600082820183811015610d1257fe5b9392505050565b600354604051600160a060020a03909116903480156108fc02916000818181858888f19350505050158015610d52573d6000803e3d6000fd5b50565b600082821115610d6157fe5b509003905600a165627a7a723058207e4570741f4c938a2f897328d3903cea962445b07292ae65a1ae3dba941f49150029


   Swarm Source:
bzzr://7e4570741f4c938a2f897328d3903cea962445b07292ae65a1ae3dba941f4915
Block Age transaction Difficulty GasUsed Reward
Block Age Uncle Number Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.