ETH Price: $1,973.83 (+0.62%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer47419202017-12-16 9:31:302989 days ago1513416690IN
Blockbid: Token Sale
11.46 ETH0.003666238
Transfer47419052017-12-16 9:28:482989 days ago1513416528IN
Blockbid: Token Sale
0.1 ETH0.0035736223.5
Transfer47414592017-12-16 7:39:192989 days ago1513409959IN
Blockbid: Token Sale
0.13 ETH0.0045620730
Transfer47386192017-12-15 19:44:102990 days ago1513367050IN
Blockbid: Token Sale
0.98026278 ETH0.0006055
Transfer47350212017-12-15 4:44:462990 days ago1513313086IN
Blockbid: Token Sale
0.35 ETH0.0031934421
Transfer47308632017-12-14 11:14:132991 days ago1513250053IN
Blockbid: Token Sale
100 ETH0.0152069100
Transfer47301742017-12-14 8:24:572991 days ago1513239897IN
Blockbid: Token Sale
15 ETH0.0039537926
Transfer47287812017-12-14 2:34:202992 days ago1513218860IN
Blockbid: Token Sale
87 ETH0.0060827640
Transfer47274412017-12-13 20:48:592992 days ago1513198139IN
Blockbid: Token Sale
5 ETH0.0031934421
Transfer47241922017-12-13 6:55:032992 days ago1513148103IN
Blockbid: Token Sale
5 ETH0.0015206910
Transfer47240382017-12-13 6:18:442992 days ago1513145924IN
Blockbid: Token Sale
99.96916 ETH0.0152069100
Transfer47218672017-12-12 21:16:322993 days ago1513113392IN
Blockbid: Token Sale
40 ETH0.0165398399
Transfer47218432017-12-12 21:10:062993 days ago1513113006IN
Blockbid: Token Sale
88.19795084 ETH0.0146845100
Transfer47171912017-12-12 1:39:242994 days ago1513042764IN
Blockbid: Token Sale
5 ETH0.0030837421
Transfer47170212017-12-12 0:53:302994 days ago1513040010IN
Blockbid: Token Sale
22.29015629 ETH0.0176214120
Transfer47162182017-12-11 21:35:382994 days ago1513028138IN
Blockbid: Token Sale
4.9918 ETH0.0060206441
Transfer47154692017-12-11 18:18:122994 days ago1513016292IN
Blockbid: Token Sale
2 ETH0.0030837421
Transfer47141612017-12-11 13:04:122994 days ago1512997452IN
Blockbid: Token Sale
5 ETH0.0073422550
Transfer47110962017-12-11 0:06:492995 days ago1512950809IN
Blockbid: Token Sale
0.25 ETH0.0014684510
Transfer47108782017-12-10 23:14:572995 days ago1512947697IN
Blockbid: Token Sale
5 ETH0.0014684510
Transfer47088292017-12-10 14:46:582995 days ago1512917218IN
Blockbid: Token Sale
1.989 ETH0.0040243444.10003
Transfer47080652017-12-10 11:45:412995 days ago1512906341IN
Blockbid: Token Sale
8.32 ETH0.0060206441
Transfer47079572017-12-10 11:17:362995 days ago1512904656IN
Blockbid: Token Sale
29.024559 ETH0.0030837421
Transfer47069302017-12-10 7:02:342995 days ago1512889354IN
Blockbid: Token Sale
0.15 ETH0.0030837421
Transfer47067622017-12-10 6:16:202995 days ago1512886580IN
Blockbid: Token Sale
0.5 ETH0.0038179726
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer47419202017-12-16 9:31:302989 days ago1513416690
Blockbid: Token Sale
11.46 ETH
Transfer47419052017-12-16 9:28:482989 days ago1513416528
Blockbid: Token Sale
0.1 ETH
Transfer47414592017-12-16 7:39:192989 days ago1513409959
Blockbid: Token Sale
0.13 ETH
Transfer47350212017-12-15 4:44:462990 days ago1513313086
Blockbid: Token Sale
0.35 ETH
Transfer47308632017-12-14 11:14:132991 days ago1513250053
Blockbid: Token Sale
100 ETH
Transfer47301742017-12-14 8:24:572991 days ago1513239897
Blockbid: Token Sale
15 ETH
Transfer47287812017-12-14 2:34:202992 days ago1513218860
Blockbid: Token Sale
87 ETH
Transfer47274412017-12-13 20:48:592992 days ago1513198139
Blockbid: Token Sale
5 ETH
Transfer47241922017-12-13 6:55:032992 days ago1513148103
Blockbid: Token Sale
5 ETH
Transfer47240382017-12-13 6:18:442992 days ago1513145924
Blockbid: Token Sale
99.96916 ETH
Transfer47218672017-12-12 21:16:322993 days ago1513113392
Blockbid: Token Sale
40 ETH
Transfer47218432017-12-12 21:10:062993 days ago1513113006
Blockbid: Token Sale
88.19795084 ETH
Transfer47171912017-12-12 1:39:242994 days ago1513042764
Blockbid: Token Sale
5 ETH
Transfer47170212017-12-12 0:53:302994 days ago1513040010
Blockbid: Token Sale
22.29015629 ETH
Transfer47162182017-12-11 21:35:382994 days ago1513028138
Blockbid: Token Sale
4.9918 ETH
Transfer47154692017-12-11 18:18:122994 days ago1513016292
Blockbid: Token Sale
2 ETH
Transfer47141612017-12-11 13:04:122994 days ago1512997452
Blockbid: Token Sale
5 ETH
Transfer47110962017-12-11 0:06:492995 days ago1512950809
Blockbid: Token Sale
0.25 ETH
Transfer47108782017-12-10 23:14:572995 days ago1512947697
Blockbid: Token Sale
5 ETH
Transfer47088292017-12-10 14:46:582995 days ago1512917218
Blockbid: Token Sale
1.989 ETH
Transfer47080652017-12-10 11:45:412995 days ago1512906341
Blockbid: Token Sale
8.32 ETH
Transfer47079572017-12-10 11:17:362995 days ago1512904656
Blockbid: Token Sale
29.024559 ETH
Transfer47069302017-12-10 7:02:342995 days ago1512889354
Blockbid: Token Sale
0.15 ETH
Transfer47067622017-12-10 6:16:202995 days ago1512886580
Blockbid: Token Sale
0.5 ETH
Transfer47067342017-12-10 6:09:372995 days ago1512886177
Blockbid: Token Sale
3.9959796 ETH
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
BlockbidCrowdsale

Compiler Version
v0.4.15+commit.bbb8e64f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2017-10-19
*/

pragma solidity 0.4.15;

library SafeMath {
  function mul(uint256 a, uint256 b) internal constant returns (uint256) {
    uint256 c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }

  function div(uint256 a, uint256 b) internal constant 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 constant returns (uint256) {
    assert(b <= a);
    return a - b;
  }

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

contract Crowdsale {
  using SafeMath for uint256;

  // The token being sold
  MintableToken public token;

  // start and end timestamps where investments are allowed (both inclusive)
  uint256 public startTime;
  uint256 public endTime;

  // address where funds are collected
  address public wallet;

  // how many token units a buyer gets per wei
  uint256 public rate;

  // amount of raised money in wei
  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);


  function Crowdsale(uint256 _startTime, uint256 _endTime, uint256 _rate, address _wallet) {
    require(_startTime >= now);
    require(_endTime >= _startTime);
    require(_rate > 0);
    require(_wallet != 0x0);

    token = createTokenContract();
    startTime = _startTime;
    endTime = _endTime;
    rate = _rate;
    wallet = _wallet;
  }

  // creates the token to be sold.
  // override this method to have crowdsale of a specific mintable token.
  function createTokenContract() internal returns (MintableToken) {
    return new MintableToken();
  }


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

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

    uint256 weiAmount = msg.value;

    // calculate token amount to be created
    uint256 tokens = weiAmount.mul(rate);

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

    token.mint(beneficiary, tokens);
    TokenPurchase(msg.sender, beneficiary, weiAmount, tokens);

    forwardFunds();
  }

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

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

  // @return true if crowdsale event has ended
  function hasEnded() public constant returns (bool) {
    return now > endTime;
  }


}

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() {
    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;
  }

}

contract BlockbidCrowdsale is Crowdsale, Ownable {

  uint public goal;
  uint public cap;
  uint public earlybonus;
  uint public standardrate;
  bool public goalReached = false;
  bool public paused = false;
  uint public constant weeklength = 604800;

  mapping(address => uint) public weiContributed;
  address[] public contributors;

  event LogClaimRefund(address _address, uint _value);

  modifier notPaused() {
    if (paused) {
      revert();
    }
    _;
  }

  function BlockbidCrowdsale(uint _goal, uint _cap, uint _startTime, uint _endTime, uint _rate, uint _earlyBonus, address _wallet)
  Crowdsale(_startTime, _endTime, _rate, _wallet) public {
    require(_cap > 0);
    require(_goal > 0);

    standardrate = _rate;
    earlybonus = _earlyBonus;
    cap = _cap;
    goal = _goal;
  }

  // @return true if the transaction can buy tokens
  /*
  Added: - Must be under Cap
         - Requires user to send atleast 1 token's worth of ether
         - Needs to call updateRate() function to validate how much ether = 1 token
         -
  */
  function validPurchase() internal constant returns (bool) {

    updateRate();

    bool withinPeriod = (now >= startTime && now <= endTime);
    bool withinPurchaseLimit = (msg.value >= 0.1 ether && msg.value <= 100 ether);
    bool withinCap = (token.totalSupply() <= cap);
    return withinPeriod && withinPurchaseLimit && withinCap;
  }

  // function that will determine how many tokens have been created
  function tokensPurchased() internal constant returns (uint) {
    return rate.mul(msg.value).mul(100000000).div(1 ether);
  }

  /*
    function will identify what period of crowdsale we are in and update
    the rate.
    Rates are lower (e.g. 1:360 instead of 1:300) early on
    to give early bird discounts
  */
  function updateRate() internal returns (bool) {

    if (now >= startTime.add(weeklength.mul(4))) {
      rate = 200;
    }
    else if (now >= startTime.add(weeklength.mul(3))) {
      rate = standardrate;
    }
    else if (now >= startTime.add(weeklength.mul(2))) {
      rate = standardrate.add(earlybonus.sub(40));
    }
    else if (now >= startTime.add(weeklength)) {
      rate = standardrate.add(earlybonus.sub(20));
    }
    else {
      rate = standardrate.add(earlybonus);
    }

    return true;
  }

  function buyTokens(address beneficiary) notPaused public payable {
    require(beneficiary != 0x0);

    // enable wallet to deposit funds post ico and goals not reached
    if (msg.sender == wallet) {
      require(hasEnded());
      require(!goalReached);
    }
    // everybody else goes through standard validation
    else {
      require(validPurchase());
    }

    // update state
    weiRaised = weiRaised.add(msg.value);

    // if user already a contributor
    if (weiContributed[beneficiary] > 0) {
      weiContributed[beneficiary] = weiContributed[beneficiary].add(msg.value);
    }
    // new contributor
    else {
      weiContributed[beneficiary] = msg.value;
      contributors.push(beneficiary);
    }

    // update tokens for each individual
    token.mint(beneficiary, tokensPurchased());
    TokenPurchase(msg.sender, beneficiary, msg.value, tokensPurchased());
    token.mint(wallet, (tokensPurchased().div(4)));

    if (token.totalSupply() > goal) {
      goalReached = true;
    }

    // don't forward funds if wallet belongs to owner
    if (msg.sender != wallet) {
      forwardFunds();
    }
  }

  function getContributorsCount() public constant returns(uint) {
    return contributors.length;
  }

  // if crowdsale is unsuccessful, investors can claim refunds here
  function claimRefund() notPaused public returns (bool) {
    require(!goalReached);
    require(hasEnded());
    uint contributedAmt = weiContributed[msg.sender];
    require(contributedAmt > 0);
    weiContributed[msg.sender] = 0;
    msg.sender.transfer(contributedAmt);
    LogClaimRefund(msg.sender, contributedAmt);
    return true;
  }

  // allow owner to pause ico in case there is something wrong
  function setPaused(bool _val) onlyOwner public returns (bool) {
    paused = _val;
    return true;
  }

  // destroy contract and send all remaining ether back to wallet
  function kill() onlyOwner public {
    require(!goalReached);
    require(hasEnded());
    selfdestruct(wallet);
  }

  // create BID token
  function createTokenContract() internal returns (MintableToken) {
    return new BlockbidMintableToken();
  }

}

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);
}

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);
    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];
  }

}

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 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);
    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;
    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)
    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)
    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;
  }

}

contract MintableToken is StandardToken, Ownable {
  event Mint(address indexed to, uint256 amount);
  event MintFinished();

  bool public mintingFinished = false;


  modifier canMint() {
    require(!mintingFinished);
    _;
  }

  /**
   * @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) {
    totalSupply = totalSupply.add(_amount);
    balances[_to] = balances[_to].add(_amount);
    Mint(_to, _amount);
    Transfer(0x0, _to, _amount);
    return true;
  }

  /**
   * @dev Function to stop minting new tokens.
   * @return True if the operation was successful.
   */
  function finishMinting() onlyOwner public returns (bool) {
    mintingFinished = true;
    MintFinished();
    return true;
  }
}

contract BlockbidMintableToken is MintableToken {

  string public constant name = "Blockbid Token";
  string public constant symbol = "BID";
  uint8 public constant decimals = 8;

}

Contract Security Audit

Contract ABI

API
[{"constant":false,"inputs":[{"name":"_val","type":"bool"}],"name":"setPaused","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"weeklength","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"rate","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"endTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"cap","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"contributors","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"goal","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"weiRaised","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"kill","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"wallet","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"startTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"goalReached","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"standardrate","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"claimRefund","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"weiContributed","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"beneficiary","type":"address"}],"name":"buyTokens","outputs":[],"payable":true,"type":"function"},{"constant":true,"inputs":[],"name":"hasEnded","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"earlybonus","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"getContributorsCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"inputs":[{"name":"_goal","type":"uint256"},{"name":"_cap","type":"uint256"},{"name":"_startTime","type":"uint256"},{"name":"_endTime","type":"uint256"},{"name":"_rate","type":"uint256"},{"name":"_earlyBonus","type":"uint256"},{"name":"_wallet","type":"address"}],"payable":false,"type":"constructor"},{"payable":true,"type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"LogClaimRefund","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":"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"}]

6060604052600b805461ffff19169055341561001a57600080fd5b60405160e0806200292d833981016040528080519190602001805191906020018051919060200180519190602001805191906020018051919060200180519150505b5b848484835b4284101561006f57600080fd5b8383101561007c57600080fd5b6000821161008957600080fd5b600160a060020a038116151561009e57600080fd5b6100b3640100000000610e3561014d82021704565b60008054600160a060020a0319908116600160a060020a0393841617909155600186905560028590556004849055600380549091169183169190911790555b505060068054600160a060020a03191633600160a060020a031617905550505b6000861161011f57600080fd5b6000871161012c57600080fd5b600a8390556009829055600886905560078790555b50505050505050610184565b6000610157610173565b604051809103906000f080151561016d57600080fd5b90505b90565b604051610c818062001cac83390190565b611b1880620001946000396000f300606060405236156101175763ffffffff60e060020a60003504166316c38b3c811461012457806328e5617e146101505780632c4e722e146101755780633197cbb61461019a578063355274ea146101bf5780633cb5d100146101e457806340193883146102165780634042b66f1461023b57806341c0e1b514610260578063521eb273146102755780635c975abb146102a457806378e97925146102cb5780637d3d6522146102f05780638da5cb5b146103175780639bc1336014610346578063b5545a3c1461036b578063d5307b0c14610392578063ec8ac4d8146103c3578063ecb70fb7146103d9578063ef0dddba14610400578063f2fde38b14610425578063fc0c546a14610446578063feed556114610475575b5b6101213361049a565b5b005b341561012f57600080fd5b61013c60043515156107fd565b604051901515815260200160405180910390f35b341561015b57600080fd5b610163610838565b60405190815260200160405180910390f35b341561018057600080fd5b61016361083f565b60405190815260200160405180910390f35b34156101a557600080fd5b610163610845565b60405190815260200160405180910390f35b34156101ca57600080fd5b61016361084b565b60405190815260200160405180910390f35b34156101ef57600080fd5b6101fa600435610851565b604051600160a060020a03909116815260200160405180910390f35b341561022157600080fd5b610163610883565b60405190815260200160405180910390f35b341561024657600080fd5b610163610889565b60405190815260200160405180910390f35b341561026b57600080fd5b61012161088f565b005b341561028057600080fd5b6101fa6108de565b604051600160a060020a03909116815260200160405180910390f35b34156102af57600080fd5b61013c6108ed565b604051901515815260200160405180910390f35b34156102d657600080fd5b6101636108fb565b60405190815260200160405180910390f35b34156102fb57600080fd5b61013c610901565b604051901515815260200160405180910390f35b341561032257600080fd5b6101fa61090a565b604051600160a060020a03909116815260200160405180910390f35b341561035157600080fd5b610163610919565b60405190815260200160405180910390f35b341561037657600080fd5b61013c61091f565b604051901515815260200160405180910390f35b341561039d57600080fd5b610163600160a060020a0360043516610a14565b60405190815260200160405180910390f35b610121600160a060020a036004351661049a565b005b34156103e457600080fd5b61013c610a26565b604051901515815260200160405180910390f35b341561040b57600080fd5b610163610a2f565b60405190815260200160405180910390f35b341561043057600080fd5b610121600160a060020a0360043516610a35565b005b341561045157600080fd5b6101fa610ace565b604051600160a060020a03909116815260200160405180910390f35b341561048057600080fd5b610163610add565b60405190815260200160405180910390f35b600b54610100900460ff16156104af57600080fd5b600160a060020a03811615156104c457600080fd5b60035433600160a060020a0390811691161415610503576104e3610a26565b15156104ee57600080fd5b600b5460ff16156104fe57600080fd5b610516565b61050b610ae4565b151561051657600080fd5b5b60055461052a903463ffffffff610bb616565b600555600160a060020a0381166000908152600c6020526040812054111561059357600160a060020a0381166000908152600c6020526040902054610575903463ffffffff610bb616565b600160a060020a0382166000908152600c60205260409020556105ee565b600160a060020a0381166000908152600c60205260409020349055600d8054600181016105c08382610dea565b916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b600054600160a060020a03166340c10f1982610608610bd0565b60006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561065457600080fd5b6102c65a03f1151561066557600080fd5b505050604051805190505080600160a060020a031633600160a060020a03167f623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad18346106ae610bd0565b60405191825260208201526040908101905180910390a3600054600354600160a060020a03918216916340c10f1991166106f760046106eb610bd0565b9063ffffffff610c1916565b60006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561074357600080fd5b6102c65a03f1151561075457600080fd5b5050506040518051505060075460008054600160a060020a0316906318160ddd90604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156107aa57600080fd5b6102c65a03f115156107bb57600080fd5b5050506040518051905011156107d957600b805460ff191660011790555b60035433600160a060020a039081169116146107f7576107f7610c35565b5b5b5b50565b60065460009033600160a060020a0390811691161461081b57600080fd5b50600b805461ff0019166101008315150217905560015b5b919050565b62093a8081565b60045481565b60025481565b60085481565b600d80548290811061085f57fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b60075481565b60055481565b60065433600160a060020a039081169116146108aa57600080fd5b600b5460ff16156108ba57600080fd5b6108c2610a26565b15156108cd57600080fd5b600354600160a060020a0316ff5b5b565b600354600160a060020a031681565b600b54610100900460ff1681565b60015481565b600b5460ff1681565b600654600160a060020a031681565b600a5481565b600b546000908190610100900460ff161561093957600080fd5b600b5460ff161561094957600080fd5b610951610a26565b151561095c57600080fd5b50600160a060020a0333166000908152600c602052604081205490811161098257600080fd5b600160a060020a0333166000818152600c60205260408082209190915582156108fc0290839051600060405180830381858888f1935050505015156109c657600080fd5b7f401c3ba1a7b64a3878c927666da96333786781e51b75130bc091c750a61158783382604051600160a060020a03909216825260208201526040908101905180910390a1600191505b5b5090565b600c6020526000908152604090205481565b60025442115b90565b60095481565b60065433600160a060020a03908116911614610a5057600080fd5b600160a060020a0381161515610a6557600080fd5b600654600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b600054600160a060020a031681565b600d545b90565b600080600080610af2610c6c565b506001544210158015610b0757506002544211155b925067016345785d8a00003410158015610b2a575068056bc75e2d631000003411155b600854600080549294509091600160a060020a0316906318160ddd90604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610b7b57600080fd5b6102c65a03f11515610b8c57600080fd5b5050506040518051905011159050828015610ba45750815b8015610bad5750805b93505b50505090565b600082820183811015610bc557fe5b8091505b5092915050565b6000610c13670de0b6b3a76400006106eb6305f5e100610bfb34600454610da490919063ffffffff16565b9063ffffffff610da416565b9063ffffffff610c1916565b90505b90565b6000808284811515610c2757fe5b0490508091505b5092915050565b600354600160a060020a03163480156108fc0290604051600060405180830381858888f1935050505015156108db57600080fd5b5b565b6000610c94610c8562093a80600463ffffffff610da416565b6001549063ffffffff610bb616565b4210610ca45760c8600455610d9a565b610cca610c8562093a80600363ffffffff610da416565b6001549063ffffffff610bb616565b4210610cdb57600a54600455610d9a565b610d01610c8562093a80600263ffffffff610da416565b6001549063ffffffff610bb616565b4210610d3657600954610d2e90610d1f90602863ffffffff610dd316565b600a549063ffffffff610bb616565b600455610d9a565b600154610d4c9062093a8063ffffffff610bb616565b4210610d8157600954610d2e90610d1f90601463ffffffff610dd316565b600a549063ffffffff610bb616565b600455610d9a565b600954600a54610d969163ffffffff610bb616565b6004555b5b5b5b5060015b90565b6000828202831580610dc05750828482811515610dbd57fe5b04145b1515610bc557fe5b8091505b5092915050565b600082821115610ddf57fe5b508082035b92915050565b815481835581811511610e0e57600083815260209020610e0e918101908301610e14565b5b505050565b610a2c91905b80821115610a0f5760008155600101610e1a565b5090565b90565b6000610e3f610e5b565b604051809103906000f0801515610c1357600080fd5b90505b90565b604051610c8180610e6c83390190560060606040526003805460a060020a60ff02191690555b60038054600160a060020a03191633600160a060020a03161790555b5b610c40806100416000396000f300606060405236156100e35763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b81146100e857806306fdde031461010f578063095ea7b31461019a57806318160ddd146101d057806323b872dd146101f5578063313ce5671461023157806340c10f191461025a578063661884631461029057806370a08231146102c65780637d64bcb4146102f75780638da5cb5b1461031e57806395d89b411461034d578063a9059cbb146103d8578063d73dd6231461040e578063dd62ed3e14610444578063f2fde38b1461047b575b600080fd5b34156100f357600080fd5b6100fb61049c565b604051901515815260200160405180910390f35b341561011a57600080fd5b6101226104bd565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561015f5780820151818401525b602001610146565b50505050905090810190601f16801561018c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101a557600080fd5b6100fb600160a060020a03600435166024356104f4565b604051901515815260200160405180910390f35b34156101db57600080fd5b6101e3610561565b60405190815260200160405180910390f35b341561020057600080fd5b6100fb600160a060020a0360043581169060243516604435610567565b604051901515815260200160405180910390f35b341561023c57600080fd5b610244610693565b60405160ff909116815260200160405180910390f35b341561026557600080fd5b6100fb600160a060020a0360043516602435610698565b604051901515815260200160405180910390f35b341561029b57600080fd5b6100fb600160a060020a03600435166024356107b9565b604051901515815260200160405180910390f35b34156102d157600080fd5b6101e3600160a060020a03600435166108b5565b60405190815260200160405180910390f35b341561030257600080fd5b6100fb6108d4565b604051901515815260200160405180910390f35b341561032957600080fd5b61033161095b565b604051600160a060020a03909116815260200160405180910390f35b341561035857600080fd5b61012261096a565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561015f5780820151818401525b602001610146565b50505050905090810190601f16801561018c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103e357600080fd5b6100fb600160a060020a03600435166024356109a1565b604051901515815260200160405180910390f35b341561041957600080fd5b6100fb600160a060020a0360043516602435610a78565b604051901515815260200160405180910390f35b341561044f57600080fd5b6101e3600160a060020a0360043581169060243516610b1d565b60405190815260200160405180910390f35b341561048657600080fd5b61049a600160a060020a0360043516610b4a565b005b60035474010000000000000000000000000000000000000000900460ff1681565b60408051908101604052600e81527f426c6f636b62696420546f6b656e000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60005481565b600080600160a060020a038416151561057f57600080fd5b50600160a060020a038085166000818152600260209081526040808320339095168352938152838220549282526001905291909120546105c5908463ffffffff610be316565b600160a060020a0380871660009081526001602052604080822093909355908616815220546105fa908463ffffffff610bfa16565b600160a060020a038516600090815260016020526040902055610623818463ffffffff610be316565b600160a060020a03808716600081815260026020908152604080832033861684529091529081902093909355908616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a3600191505b509392505050565b600881565b60035460009033600160a060020a039081169116146106b657600080fd5b60035474010000000000000000000000000000000000000000900460ff16156106de57600080fd5b6000546106f1908363ffffffff610bfa16565b6000908155600160a060020a03841681526001602052604090205461071c908363ffffffff610bfa16565b600160a060020a0384166000818152600160205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a282600160a060020a031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a35060015b5b5b92915050565b600160a060020a0333811660009081526002602090815260408083209386168352929052908120548083111561081657600160a060020a03338116600090815260026020908152604080832093881683529290529081205561084d565b610826818463ffffffff610be316565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a3600191505b5092915050565b600160a060020a0381166000908152600160205260409020545b919050565b60035460009033600160a060020a039081169116146108f257600080fd5b6003805474ff00000000000000000000000000000000000000001916740100000000000000000000000000000000000000001790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a15060015b5b90565b600354600160a060020a031681565b60408051908101604052600381527f4249440000000000000000000000000000000000000000000000000000000000602082015281565b6000600160a060020a03831615156109b857600080fd5b600160a060020a0333166000908152600160205260409020546109e1908363ffffffff610be316565b600160a060020a033381166000908152600160205260408082209390935590851681522054610a16908363ffffffff610bfa16565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b92915050565b600160a060020a033381166000908152600260209081526040808320938616835292905290812054610ab0908363ffffffff610bfa16565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a35060015b92915050565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b60035433600160a060020a03908116911614610b6557600080fd5b600160a060020a0381161515610b7a57600080fd5b600354600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b600082821115610bef57fe5b508082035b92915050565b600082820183811015610c0957fe5b8091505b50929150505600a165627a7a723058202a14ae7e094fca3fd08d2658d4765ba4cb0e87c10964373a1b599ed9f726a5950029a165627a7a7230582008175b9b82d3d5b7f64f3a1ae24f232b04b9f9c585a856b114270cc7bf2d7211002960606040526003805460a060020a60ff02191690555b60038054600160a060020a03191633600160a060020a03161790555b5b610c40806100416000396000f300606060405236156100e35763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b81146100e857806306fdde031461010f578063095ea7b31461019a57806318160ddd146101d057806323b872dd146101f5578063313ce5671461023157806340c10f191461025a578063661884631461029057806370a08231146102c65780637d64bcb4146102f75780638da5cb5b1461031e57806395d89b411461034d578063a9059cbb146103d8578063d73dd6231461040e578063dd62ed3e14610444578063f2fde38b1461047b575b600080fd5b34156100f357600080fd5b6100fb61049c565b604051901515815260200160405180910390f35b341561011a57600080fd5b6101226104bd565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561015f5780820151818401525b602001610146565b50505050905090810190601f16801561018c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101a557600080fd5b6100fb600160a060020a03600435166024356104f4565b604051901515815260200160405180910390f35b34156101db57600080fd5b6101e3610561565b60405190815260200160405180910390f35b341561020057600080fd5b6100fb600160a060020a0360043581169060243516604435610567565b604051901515815260200160405180910390f35b341561023c57600080fd5b610244610693565b60405160ff909116815260200160405180910390f35b341561026557600080fd5b6100fb600160a060020a0360043516602435610698565b604051901515815260200160405180910390f35b341561029b57600080fd5b6100fb600160a060020a03600435166024356107b9565b604051901515815260200160405180910390f35b34156102d157600080fd5b6101e3600160a060020a03600435166108b5565b60405190815260200160405180910390f35b341561030257600080fd5b6100fb6108d4565b604051901515815260200160405180910390f35b341561032957600080fd5b61033161095b565b604051600160a060020a03909116815260200160405180910390f35b341561035857600080fd5b61012261096a565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561015f5780820151818401525b602001610146565b50505050905090810190601f16801561018c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103e357600080fd5b6100fb600160a060020a03600435166024356109a1565b604051901515815260200160405180910390f35b341561041957600080fd5b6100fb600160a060020a0360043516602435610a78565b604051901515815260200160405180910390f35b341561044f57600080fd5b6101e3600160a060020a0360043581169060243516610b1d565b60405190815260200160405180910390f35b341561048657600080fd5b61049a600160a060020a0360043516610b4a565b005b60035474010000000000000000000000000000000000000000900460ff1681565b60408051908101604052600e81527f426c6f636b62696420546f6b656e000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60005481565b600080600160a060020a038416151561057f57600080fd5b50600160a060020a038085166000818152600260209081526040808320339095168352938152838220549282526001905291909120546105c5908463ffffffff610be316565b600160a060020a0380871660009081526001602052604080822093909355908616815220546105fa908463ffffffff610bfa16565b600160a060020a038516600090815260016020526040902055610623818463ffffffff610be316565b600160a060020a03808716600081815260026020908152604080832033861684529091529081902093909355908616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a3600191505b509392505050565b600881565b60035460009033600160a060020a039081169116146106b657600080fd5b60035474010000000000000000000000000000000000000000900460ff16156106de57600080fd5b6000546106f1908363ffffffff610bfa16565b6000908155600160a060020a03841681526001602052604090205461071c908363ffffffff610bfa16565b600160a060020a0384166000818152600160205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a282600160a060020a031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a35060015b5b5b92915050565b600160a060020a0333811660009081526002602090815260408083209386168352929052908120548083111561081657600160a060020a03338116600090815260026020908152604080832093881683529290529081205561084d565b610826818463ffffffff610be316565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a3600191505b5092915050565b600160a060020a0381166000908152600160205260409020545b919050565b60035460009033600160a060020a039081169116146108f257600080fd5b6003805474ff00000000000000000000000000000000000000001916740100000000000000000000000000000000000000001790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a15060015b5b90565b600354600160a060020a031681565b60408051908101604052600381527f4249440000000000000000000000000000000000000000000000000000000000602082015281565b6000600160a060020a03831615156109b857600080fd5b600160a060020a0333166000908152600160205260409020546109e1908363ffffffff610be316565b600160a060020a033381166000908152600160205260408082209390935590851681522054610a16908363ffffffff610bfa16565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b92915050565b600160a060020a033381166000908152600260209081526040808320938616835292905290812054610ab0908363ffffffff610bfa16565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a35060015b92915050565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b60035433600160a060020a03908116911614610b6557600080fd5b600160a060020a0381161515610b7a57600080fd5b600354600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b600082821115610bef57fe5b508082035b92915050565b600082820183811015610c0957fe5b8091505b50929150505600a165627a7a723058202a14ae7e094fca3fd08d2658d4765ba4cb0e87c10964373a1b599ed9f726a595002900000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000aa87bee5380000000000000000000000000000000000000000000000000000000000059eb44d0000000000000000000000000000000000000000000000000000000005a3518d0000000000000000000000000000000000000000000000000000000000000012c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000fc33a201bb96457f14d19b6752f0bebaebde6e1d

Deployed Bytecode

0x606060405236156101175763ffffffff60e060020a60003504166316c38b3c811461012457806328e5617e146101505780632c4e722e146101755780633197cbb61461019a578063355274ea146101bf5780633cb5d100146101e457806340193883146102165780634042b66f1461023b57806341c0e1b514610260578063521eb273146102755780635c975abb146102a457806378e97925146102cb5780637d3d6522146102f05780638da5cb5b146103175780639bc1336014610346578063b5545a3c1461036b578063d5307b0c14610392578063ec8ac4d8146103c3578063ecb70fb7146103d9578063ef0dddba14610400578063f2fde38b14610425578063fc0c546a14610446578063feed556114610475575b5b6101213361049a565b5b005b341561012f57600080fd5b61013c60043515156107fd565b604051901515815260200160405180910390f35b341561015b57600080fd5b610163610838565b60405190815260200160405180910390f35b341561018057600080fd5b61016361083f565b60405190815260200160405180910390f35b34156101a557600080fd5b610163610845565b60405190815260200160405180910390f35b34156101ca57600080fd5b61016361084b565b60405190815260200160405180910390f35b34156101ef57600080fd5b6101fa600435610851565b604051600160a060020a03909116815260200160405180910390f35b341561022157600080fd5b610163610883565b60405190815260200160405180910390f35b341561024657600080fd5b610163610889565b60405190815260200160405180910390f35b341561026b57600080fd5b61012161088f565b005b341561028057600080fd5b6101fa6108de565b604051600160a060020a03909116815260200160405180910390f35b34156102af57600080fd5b61013c6108ed565b604051901515815260200160405180910390f35b34156102d657600080fd5b6101636108fb565b60405190815260200160405180910390f35b34156102fb57600080fd5b61013c610901565b604051901515815260200160405180910390f35b341561032257600080fd5b6101fa61090a565b604051600160a060020a03909116815260200160405180910390f35b341561035157600080fd5b610163610919565b60405190815260200160405180910390f35b341561037657600080fd5b61013c61091f565b604051901515815260200160405180910390f35b341561039d57600080fd5b610163600160a060020a0360043516610a14565b60405190815260200160405180910390f35b610121600160a060020a036004351661049a565b005b34156103e457600080fd5b61013c610a26565b604051901515815260200160405180910390f35b341561040b57600080fd5b610163610a2f565b60405190815260200160405180910390f35b341561043057600080fd5b610121600160a060020a0360043516610a35565b005b341561045157600080fd5b6101fa610ace565b604051600160a060020a03909116815260200160405180910390f35b341561048057600080fd5b610163610add565b60405190815260200160405180910390f35b600b54610100900460ff16156104af57600080fd5b600160a060020a03811615156104c457600080fd5b60035433600160a060020a0390811691161415610503576104e3610a26565b15156104ee57600080fd5b600b5460ff16156104fe57600080fd5b610516565b61050b610ae4565b151561051657600080fd5b5b60055461052a903463ffffffff610bb616565b600555600160a060020a0381166000908152600c6020526040812054111561059357600160a060020a0381166000908152600c6020526040902054610575903463ffffffff610bb616565b600160a060020a0382166000908152600c60205260409020556105ee565b600160a060020a0381166000908152600c60205260409020349055600d8054600181016105c08382610dea565b916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b600054600160a060020a03166340c10f1982610608610bd0565b60006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561065457600080fd5b6102c65a03f1151561066557600080fd5b505050604051805190505080600160a060020a031633600160a060020a03167f623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad18346106ae610bd0565b60405191825260208201526040908101905180910390a3600054600354600160a060020a03918216916340c10f1991166106f760046106eb610bd0565b9063ffffffff610c1916565b60006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561074357600080fd5b6102c65a03f1151561075457600080fd5b5050506040518051505060075460008054600160a060020a0316906318160ddd90604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156107aa57600080fd5b6102c65a03f115156107bb57600080fd5b5050506040518051905011156107d957600b805460ff191660011790555b60035433600160a060020a039081169116146107f7576107f7610c35565b5b5b5b50565b60065460009033600160a060020a0390811691161461081b57600080fd5b50600b805461ff0019166101008315150217905560015b5b919050565b62093a8081565b60045481565b60025481565b60085481565b600d80548290811061085f57fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b60075481565b60055481565b60065433600160a060020a039081169116146108aa57600080fd5b600b5460ff16156108ba57600080fd5b6108c2610a26565b15156108cd57600080fd5b600354600160a060020a0316ff5b5b565b600354600160a060020a031681565b600b54610100900460ff1681565b60015481565b600b5460ff1681565b600654600160a060020a031681565b600a5481565b600b546000908190610100900460ff161561093957600080fd5b600b5460ff161561094957600080fd5b610951610a26565b151561095c57600080fd5b50600160a060020a0333166000908152600c602052604081205490811161098257600080fd5b600160a060020a0333166000818152600c60205260408082209190915582156108fc0290839051600060405180830381858888f1935050505015156109c657600080fd5b7f401c3ba1a7b64a3878c927666da96333786781e51b75130bc091c750a61158783382604051600160a060020a03909216825260208201526040908101905180910390a1600191505b5b5090565b600c6020526000908152604090205481565b60025442115b90565b60095481565b60065433600160a060020a03908116911614610a5057600080fd5b600160a060020a0381161515610a6557600080fd5b600654600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b600054600160a060020a031681565b600d545b90565b600080600080610af2610c6c565b506001544210158015610b0757506002544211155b925067016345785d8a00003410158015610b2a575068056bc75e2d631000003411155b600854600080549294509091600160a060020a0316906318160ddd90604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610b7b57600080fd5b6102c65a03f11515610b8c57600080fd5b5050506040518051905011159050828015610ba45750815b8015610bad5750805b93505b50505090565b600082820183811015610bc557fe5b8091505b5092915050565b6000610c13670de0b6b3a76400006106eb6305f5e100610bfb34600454610da490919063ffffffff16565b9063ffffffff610da416565b9063ffffffff610c1916565b90505b90565b6000808284811515610c2757fe5b0490508091505b5092915050565b600354600160a060020a03163480156108fc0290604051600060405180830381858888f1935050505015156108db57600080fd5b5b565b6000610c94610c8562093a80600463ffffffff610da416565b6001549063ffffffff610bb616565b4210610ca45760c8600455610d9a565b610cca610c8562093a80600363ffffffff610da416565b6001549063ffffffff610bb616565b4210610cdb57600a54600455610d9a565b610d01610c8562093a80600263ffffffff610da416565b6001549063ffffffff610bb616565b4210610d3657600954610d2e90610d1f90602863ffffffff610dd316565b600a549063ffffffff610bb616565b600455610d9a565b600154610d4c9062093a8063ffffffff610bb616565b4210610d8157600954610d2e90610d1f90601463ffffffff610dd316565b600a549063ffffffff610bb616565b600455610d9a565b600954600a54610d969163ffffffff610bb616565b6004555b5b5b5b5060015b90565b6000828202831580610dc05750828482811515610dbd57fe5b04145b1515610bc557fe5b8091505b5092915050565b600082821115610ddf57fe5b508082035b92915050565b815481835581811511610e0e57600083815260209020610e0e918101908301610e14565b5b505050565b610a2c91905b80821115610a0f5760008155600101610e1a565b5090565b90565b6000610e3f610e5b565b604051809103906000f0801515610c1357600080fd5b90505b90565b604051610c8180610e6c83390190560060606040526003805460a060020a60ff02191690555b60038054600160a060020a03191633600160a060020a03161790555b5b610c40806100416000396000f300606060405236156100e35763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b81146100e857806306fdde031461010f578063095ea7b31461019a57806318160ddd146101d057806323b872dd146101f5578063313ce5671461023157806340c10f191461025a578063661884631461029057806370a08231146102c65780637d64bcb4146102f75780638da5cb5b1461031e57806395d89b411461034d578063a9059cbb146103d8578063d73dd6231461040e578063dd62ed3e14610444578063f2fde38b1461047b575b600080fd5b34156100f357600080fd5b6100fb61049c565b604051901515815260200160405180910390f35b341561011a57600080fd5b6101226104bd565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561015f5780820151818401525b602001610146565b50505050905090810190601f16801561018c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101a557600080fd5b6100fb600160a060020a03600435166024356104f4565b604051901515815260200160405180910390f35b34156101db57600080fd5b6101e3610561565b60405190815260200160405180910390f35b341561020057600080fd5b6100fb600160a060020a0360043581169060243516604435610567565b604051901515815260200160405180910390f35b341561023c57600080fd5b610244610693565b60405160ff909116815260200160405180910390f35b341561026557600080fd5b6100fb600160a060020a0360043516602435610698565b604051901515815260200160405180910390f35b341561029b57600080fd5b6100fb600160a060020a03600435166024356107b9565b604051901515815260200160405180910390f35b34156102d157600080fd5b6101e3600160a060020a03600435166108b5565b60405190815260200160405180910390f35b341561030257600080fd5b6100fb6108d4565b604051901515815260200160405180910390f35b341561032957600080fd5b61033161095b565b604051600160a060020a03909116815260200160405180910390f35b341561035857600080fd5b61012261096a565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561015f5780820151818401525b602001610146565b50505050905090810190601f16801561018c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103e357600080fd5b6100fb600160a060020a03600435166024356109a1565b604051901515815260200160405180910390f35b341561041957600080fd5b6100fb600160a060020a0360043516602435610a78565b604051901515815260200160405180910390f35b341561044f57600080fd5b6101e3600160a060020a0360043581169060243516610b1d565b60405190815260200160405180910390f35b341561048657600080fd5b61049a600160a060020a0360043516610b4a565b005b60035474010000000000000000000000000000000000000000900460ff1681565b60408051908101604052600e81527f426c6f636b62696420546f6b656e000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60005481565b600080600160a060020a038416151561057f57600080fd5b50600160a060020a038085166000818152600260209081526040808320339095168352938152838220549282526001905291909120546105c5908463ffffffff610be316565b600160a060020a0380871660009081526001602052604080822093909355908616815220546105fa908463ffffffff610bfa16565b600160a060020a038516600090815260016020526040902055610623818463ffffffff610be316565b600160a060020a03808716600081815260026020908152604080832033861684529091529081902093909355908616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a3600191505b509392505050565b600881565b60035460009033600160a060020a039081169116146106b657600080fd5b60035474010000000000000000000000000000000000000000900460ff16156106de57600080fd5b6000546106f1908363ffffffff610bfa16565b6000908155600160a060020a03841681526001602052604090205461071c908363ffffffff610bfa16565b600160a060020a0384166000818152600160205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a282600160a060020a031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a35060015b5b5b92915050565b600160a060020a0333811660009081526002602090815260408083209386168352929052908120548083111561081657600160a060020a03338116600090815260026020908152604080832093881683529290529081205561084d565b610826818463ffffffff610be316565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a3600191505b5092915050565b600160a060020a0381166000908152600160205260409020545b919050565b60035460009033600160a060020a039081169116146108f257600080fd5b6003805474ff00000000000000000000000000000000000000001916740100000000000000000000000000000000000000001790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a15060015b5b90565b600354600160a060020a031681565b60408051908101604052600381527f4249440000000000000000000000000000000000000000000000000000000000602082015281565b6000600160a060020a03831615156109b857600080fd5b600160a060020a0333166000908152600160205260409020546109e1908363ffffffff610be316565b600160a060020a033381166000908152600160205260408082209390935590851681522054610a16908363ffffffff610bfa16565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b92915050565b600160a060020a033381166000908152600260209081526040808320938616835292905290812054610ab0908363ffffffff610bfa16565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a35060015b92915050565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b60035433600160a060020a03908116911614610b6557600080fd5b600160a060020a0381161515610b7a57600080fd5b600354600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b600082821115610bef57fe5b508082035b92915050565b600082820183811015610c0957fe5b8091505b50929150505600a165627a7a723058202a14ae7e094fca3fd08d2658d4765ba4cb0e87c10964373a1b599ed9f726a5950029a165627a7a7230582008175b9b82d3d5b7f64f3a1ae24f232b04b9f9c585a856b114270cc7bf2d72110029

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000aa87bee5380000000000000000000000000000000000000000000000000000000000059eb44d0000000000000000000000000000000000000000000000000000000005a3518d0000000000000000000000000000000000000000000000000000000000000012c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000fc33a201bb96457f14d19b6752f0bebaebde6e1d

-----Decoded View---------------
Arg [0] : _goal (uint256): 100000000000000
Arg [1] : _cap (uint256): 3000000000000000
Arg [2] : _startTime (uint256): 1508590800
Arg [3] : _endTime (uint256): 1513429200
Arg [4] : _rate (uint256): 300
Arg [5] : _earlyBonus (uint256): 60
Arg [6] : _wallet (address): 0xFC33a201BB96457F14D19b6752f0bEBAEbDE6E1d

-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000005af3107a4000
Arg [1] : 000000000000000000000000000000000000000000000000000aa87bee538000
Arg [2] : 0000000000000000000000000000000000000000000000000000000059eb44d0
Arg [3] : 000000000000000000000000000000000000000000000000000000005a3518d0
Arg [4] : 000000000000000000000000000000000000000000000000000000000000012c
Arg [5] : 000000000000000000000000000000000000000000000000000000000000003c
Arg [6] : 000000000000000000000000fc33a201bb96457f14d19b6752f0bebaebde6e1d


Swarm Source

bzzr://2a14ae7e094fca3fd08d2658d4765ba4cb0e87c10964373a1b599ed9f726a595

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.