ETH Price: $3,374.30 (-0.03%)

Token

HODL INCENTIVE TOKEN (HIT)
 

Overview

Max Total Supply

31,980,200.00000000000000004 HIT

Holders

4,772

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
160 HIT

Value
$0.00
0x4d324289783aa109e5a39d98441117628460b600
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
HODLIT

Compiler Version
v0.4.19+commit.c4cbbb05

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-02-27
*/

pragma solidity ^0.4.19;



contract ERC20Basic {
  function totalSupply() public view returns (uint256);
  function balanceOf(address who) public view returns (uint256);
  function transfer(address to, uint256 value) public returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}

contract ERC20 is ERC20Basic {
  function allowance(address owner, address spender) public view 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 BasicToken is ERC20Basic {
  using SafeMath for uint256;

  mapping(address => uint256) balances;

  uint256 totalSupply_;

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

  /**
  * @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));
    require(_value <= balances[msg.sender]);

    // 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 view returns (uint256 balance) {
    return balances[_owner];
  }

}

contract StandardToken is ERC20, BasicToken {

  mapping (address => mapping (address => uint256)) internal 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));
    require(_value <= balances[_from]);
    require(_value <= allowed[_from][msg.sender]);

    balances[_from] = balances[_from].sub(_value);
    balances[_to] = balances[_to].add(_value);
    allowed[_from][msg.sender] = allowed[_from][msg.sender].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 view returns (uint256) {
    return allowed[_owner][_spender];
  }

  /**
   * @dev Increase the amount of tokens that an owner allowed to a 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
   * @param _spender The address which will spend the funds.
   * @param _addedValue The amount of tokens to increase the allowance by.
   */
  function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
    allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
    Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }

  /**
   * @dev Decrease the amount of tokens that an owner allowed to a spender.
   *
   * approve should be called when allowed[_spender] == 0. To decrement
   * allowed value is better to use this function to avoid 2 calls (and wait until
   * the first transaction is mined)
   * From MonolithDAO Token.sol
   * @param _spender The address which will spend the funds.
   * @param _subtractedValue The amount of tokens to decrease the allowance by.
   */
  function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
    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 Ownable {
  address public owner;


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


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

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

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

}

library SafeMath {
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    assert(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;
  }
}


contract HODLIT is StandardToken, Ownable {
  using SafeMath for uint256;
  string public name = "HODL INCENTIVE TOKEN";
  string public symbol = "HIT";
  uint256 public decimals = 18;
  uint256 public multiplicator = 10 ** decimals;
  uint256 public totalSupply;
  uint256 public ICDSupply;

  uint256 public registeredUsers;
  uint256 public claimedUsers;
  uint256 public maxReferrals = 20;

  uint256 public hardCap = SafeMath.mul(100000000, multiplicator);
  uint256 public ICDCap = SafeMath.mul(20000000, multiplicator);

  mapping (address => uint256) public etherBalances;
  mapping (address => bool) public ICDClaims;
  mapping (address => uint256) public referrals;
  mapping (address => bool) public bonusReceived;


  uint256 public regStartTime = 1519848000; // 28 feb 2018 20:00 GMT
  uint256 public regStopTime = regStartTime + 7 days;
  uint256 public POHStartTime = regStopTime;
  uint256 public POHStopTime = POHStartTime + 7 days;
  uint256 public ICDStartTime = POHStopTime;
  uint256 public ICDStopTime = ICDStartTime + 7 days;
  uint256 public PCDStartTime = ICDStopTime + 14 days;

  address public ERC721Address;

  modifier forRegistration {
    require(block.timestamp >= regStartTime && block.timestamp < regStopTime);
    _;
  }

  modifier forICD {
    require(block.timestamp >= ICDStartTime && block.timestamp < ICDStopTime);
    _;
  }

  modifier forERC721 {
    require(msg.sender == ERC721Address && block.timestamp >= PCDStartTime);
    _;
  }

  function HODLIT() public {
    uint256 reserve = SafeMath.mul(30000000, multiplicator);
    owner = msg.sender;
    totalSupply = totalSupply.add(reserve);
    balances[owner] = balances[owner].add(reserve);
    Transfer(address(0), owner, reserve);
  }

  function() external payable {
    revert();
  }

  function setERC721Address(address _ERC721Address) external onlyOwner {
    ERC721Address = _ERC721Address;
  }

  function setMaxReferrals(uint256 _maxReferrals) external onlyOwner {
    maxReferrals = _maxReferrals;
  }

  function registerEtherBalance(address _referral) external forRegistration {
    require(
      msg.sender.balance > 0.2 ether &&
      etherBalances[msg.sender] == 0 &&
      _referral != msg.sender
    );
    if (_referral != address(0) && referrals[_referral] < maxReferrals) {
      referrals[_referral]++;
    }
    registeredUsers++;
    etherBalances[msg.sender] = msg.sender.balance;
  }

  function claimTokens() external forICD {
    require(ICDClaims[msg.sender] == false);
    require(etherBalances[msg.sender] > 0);
    require(etherBalances[msg.sender] <= msg.sender.balance + 50 finney);
    ICDClaims[msg.sender] = true;
    claimedUsers++;
    require(mintICD(msg.sender, computeReward(etherBalances[msg.sender])));
  }

  function declareCheater(address _cheater) external onlyOwner {
    require(_cheater != address(0));
    ICDClaims[_cheater] = false;
    etherBalances[_cheater] = 0;
  }

  function declareCheaters(address[] _cheaters) external onlyOwner {
    for (uint256 i = 0; i < _cheaters.length; i++) {
      require(_cheaters[i] != address(0));
      ICDClaims[_cheaters[i]] = false;
      etherBalances[_cheaters[i]] = 0;
    }
  }

  function mintPCD(address _to, uint256 _amount) external forERC721 returns(bool) {
    require(_to != address(0));
    require(_amount + totalSupply <= hardCap);
    totalSupply = totalSupply.add(_amount);
    balances[_to] = balances[_to].add(_amount);
    etherBalances[_to] = _to.balance;
    Transfer(address(0), _to, _amount);
    return true;
  }

  function claimTwitterBonus() external forICD {
    require(balances[msg.sender] > 0 && !bonusReceived[msg.sender]);
    bonusReceived[msg.sender] = true;
    mintICD(msg.sender, multiplicator.mul(20));
  }

  function claimReferralBonus() external forICD {
    require(referrals[msg.sender] > 0 && balances[msg.sender] > 0);
    uint256 cache = referrals[msg.sender];
    referrals[msg.sender] = 0;
    mintICD(msg.sender, SafeMath.mul(cache * 20, multiplicator));
  }

  function computeReward(uint256 _amount) internal view returns(uint256) {
    if (_amount < 1 ether) return SafeMath.mul(20, multiplicator);
    if (_amount < 2 ether) return SafeMath.mul(100, multiplicator);
    if (_amount < 3 ether) return SafeMath.mul(240, multiplicator);
    if (_amount < 4 ether) return SafeMath.mul(430, multiplicator);
    if (_amount < 5 ether) return SafeMath.mul(680, multiplicator);
    if (_amount < 6 ether) return SafeMath.mul(950, multiplicator);
    if (_amount < 7 ether) return SafeMath.mul(1260, multiplicator);
    if (_amount < 8 ether) return SafeMath.mul(1580, multiplicator);
    if (_amount < 9 ether) return SafeMath.mul(1900, multiplicator);
    if (_amount < 10 ether) return SafeMath.mul(2240, multiplicator);
    if (_amount < 11 ether) return SafeMath.mul(2560, multiplicator);
    if (_amount < 12 ether) return SafeMath.mul(2890, multiplicator);
    if (_amount < 13 ether) return SafeMath.mul(3210, multiplicator);
    if (_amount < 14 ether) return SafeMath.mul(3520, multiplicator);
    if (_amount < 15 ether) return SafeMath.mul(3830, multiplicator);
    if (_amount < 16 ether) return SafeMath.mul(4120, multiplicator);
    if (_amount < 17 ether) return SafeMath.mul(4410, multiplicator);
    if (_amount < 18 ether) return SafeMath.mul(4680, multiplicator);
    if (_amount < 19 ether) return SafeMath.mul(4950, multiplicator);
    if (_amount < 20 ether) return SafeMath.mul(5210, multiplicator);
    if (_amount < 21 ether) return SafeMath.mul(5460, multiplicator);
    if (_amount < 22 ether) return SafeMath.mul(5700, multiplicator);
    if (_amount < 23 ether) return SafeMath.mul(5930, multiplicator);
    if (_amount < 24 ether) return SafeMath.mul(6150, multiplicator);
    if (_amount < 25 ether) return SafeMath.mul(6360, multiplicator);
    if (_amount < 26 ether) return SafeMath.mul(6570, multiplicator);
    if (_amount < 27 ether) return SafeMath.mul(6770, multiplicator);
    if (_amount < 28 ether) return SafeMath.mul(6960, multiplicator);
    if (_amount < 29 ether) return SafeMath.mul(7140, multiplicator);
    if (_amount < 30 ether) return SafeMath.mul(7320, multiplicator);
    if (_amount < 31 ether) return SafeMath.mul(7500, multiplicator);
    if (_amount < 32 ether) return SafeMath.mul(7660, multiplicator);
    if (_amount < 33 ether) return SafeMath.mul(7820, multiplicator);
    if (_amount < 34 ether) return SafeMath.mul(7980, multiplicator);
    if (_amount < 35 ether) return SafeMath.mul(8130, multiplicator);
    if (_amount < 36 ether) return SafeMath.mul(8270, multiplicator);
    if (_amount < 37 ether) return SafeMath.mul(8410, multiplicator);
    if (_amount < 38 ether) return SafeMath.mul(8550, multiplicator);
    if (_amount < 39 ether) return SafeMath.mul(8680, multiplicator);
    if (_amount < 40 ether) return SafeMath.mul(8810, multiplicator);
    if (_amount < 41 ether) return SafeMath.mul(8930, multiplicator);
    if (_amount < 42 ether) return SafeMath.mul(9050, multiplicator);
    if (_amount < 43 ether) return SafeMath.mul(9170, multiplicator);
    if (_amount < 44 ether) return SafeMath.mul(9280, multiplicator);
    if (_amount < 45 ether) return SafeMath.mul(9390, multiplicator);
    if (_amount < 46 ether) return SafeMath.mul(9500, multiplicator);
    if (_amount < 47 ether) return SafeMath.mul(9600, multiplicator);
    if (_amount < 48 ether) return SafeMath.mul(9700, multiplicator);
    if (_amount < 49 ether) return SafeMath.mul(9800, multiplicator);
    if (_amount < 50 ether) return SafeMath.mul(9890, multiplicator);
    return SafeMath.mul(10000, multiplicator);
  }

  function mintICD(address _to, uint256 _amount) internal returns(bool) {
    require(_to != address(0));
    require(_amount + ICDSupply <= ICDCap);
    totalSupply = totalSupply.add(_amount);
    ICDSupply = ICDSupply.add(_amount);
    balances[_to] = balances[_to].add(_amount);
    etherBalances[_to] = _to.balance;
    Transfer(address(0), _to, _amount);
    return true;
  }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"multiplicator","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"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":"_cheater","type":"address"}],"name":"declareCheater","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":"claimReferralBonus","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":"regStopTime","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":true,"inputs":[{"name":"","type":"address"}],"name":"ICDClaims","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PCDStartTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"claimTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"POHStartTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ERC721Address","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"bonusReceived","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"registeredUsers","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":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_maxReferrals","type":"uint256"}],"name":"setMaxReferrals","outputs":[],"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":"ICDStartTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mintPCD","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"maxReferrals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"claimedUsers","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_referral","type":"address"}],"name":"registerEtherBalance","outputs":[],"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":true,"inputs":[{"name":"","type":"address"}],"name":"etherBalances","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"POHStopTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_ERC721Address","type":"address"}],"name":"setERC721Address","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"referrals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ICDSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"regStartTime","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":"_cheaters","type":"address[]"}],"name":"declareCheaters","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ICDStopTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"claimTwitterBonus","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ICDCap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hardCap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"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"}]

60606040526040805190810160405280601481526020017f484f444c20494e43454e5449564520544f4b454e0000000000000000000000008152506004908051906020019062000051929190620003fc565b506040805190810160405280600381526020017f4849540000000000000000000000000000000000000000000000000000000000815250600590805190602001906200009f929190620003fc565b506012600655600654600a0a6007556014600c55620000d96305f5e1006007546200039e64010000000002620028c0176401000000009004565b600d55620001026301312d006007546200039e64010000000002620028c0176401000000009004565b600e55635a970a4060135562093a806013540160145560145460155562093a806015540160165560165460175562093a8060175401601855621275006018540160195534156200015157600080fd5b600033600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001ba6301c9c3806007546200039e64010000000002620028c0176401000000009004565b905033600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200022281600854620003dd6401000000000262002afa179091906401000000009004565b600881905550620002ab81600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054620003dd6401000000000262002afa179091906401000000009004565b600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350620004ab565b6000806000841415620003b55760009150620003d6565b8284029050828482811515620003c757fe5b04141515620003d257fe5b8091505b5092915050565b6000808284019050838110151515620003f257fe5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200043f57805160ff191683800117855562000470565b8280016001018555821562000470579182015b828111156200046f57825182559160200191906001019062000452565b5b5090506200047f919062000483565b5090565b620004a891905b80821115620004a45760008160009055506001016200048a565b5090565b90565b6132b380620004bb6000396000f3006060604052600436106101f8576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168062fa081a146101fd57806306fdde0314610226578063095ea7b3146102b457806310f885461461030e57806318160ddd146103475780631e375ab91461037057806323b872dd14610385578063297c9cd9146103fe578063313ce567146104275780633b00751214610450578063456176eb146104a157806348c54b9d146104ca57806351f1fa97146104df578063574490cd1461050857806363f44d1e1461055d578063660d5887146105ae57806366188463146105d75780636a1d87131461063157806370a082311461065457806373107c99146106a1578063742cd75d146106ca578063747fc0d2146107245780637bb0688d1461074d57806389efa1b5146107765780638da5cb5b146107af57806395d89b41146108045780639653f8a11461089257806396a6a748146108df5780639a03d9a3146109085780639ca423b3146109415780639d2ff29c1461098e578063a69bd4a8146109b7578063a9059cbb146109e0578063b5a0596e14610a3a578063d73dd62314610a68578063dd62ed3e14610ac2578063eb1de3e514610b2e578063f0330d5414610b57578063f2fde38b14610b6c578063f949116d14610ba5578063fb86a40414610bce575b600080fd5b341561020857600080fd5b610210610bf7565b6040518082815260200191505060405180910390f35b341561023157600080fd5b610239610bfd565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561027957808201518184015260208101905061025e565b50505050905090810190601f1680156102a65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102bf57600080fd5b6102f4600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610c9b565b604051808215151515815260200191505060405180910390f35b341561031957600080fd5b610345600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610d8d565b005b341561035257600080fd5b61035a610ec5565b6040518082815260200191505060405180910390f35b341561037b57600080fd5b610383610ecb565b005b341561039057600080fd5b6103e4600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611026565b604051808215151515815260200191505060405180910390f35b341561040957600080fd5b6104116113e0565b6040518082815260200191505060405180910390f35b341561043257600080fd5b61043a6113e6565b6040518082815260200191505060405180910390f35b341561045b57600080fd5b610487600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506113ec565b604051808215151515815260200191505060405180910390f35b34156104ac57600080fd5b6104b461140c565b6040518082815260200191505060405180910390f35b34156104d557600080fd5b6104dd611412565b005b34156104ea57600080fd5b6104f2611613565b6040518082815260200191505060405180910390f35b341561051357600080fd5b61051b611619565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561056857600080fd5b610594600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061163f565b604051808215151515815260200191505060405180910390f35b34156105b957600080fd5b6105c161165f565b6040518082815260200191505060405180910390f35b34156105e257600080fd5b610617600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611665565b604051808215151515815260200191505060405180910390f35b341561063c57600080fd5b61065260048080359060200190919050506118f6565b005b341561065f57600080fd5b61068b600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061195c565b6040518082815260200191505060405180910390f35b34156106ac57600080fd5b6106b46119a4565b6040518082815260200191505060405180910390f35b34156106d557600080fd5b61070a600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506119aa565b604051808215151515815260200191505060405180910390f35b341561072f57600080fd5b610737611be0565b6040518082815260200191505060405180910390f35b341561075857600080fd5b610760611be6565b6040518082815260200191505060405180910390f35b341561078157600080fd5b6107ad600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611bec565b005b34156107ba57600080fd5b6107c2611dfc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561080f57600080fd5b610817611e22565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561085757808201518184015260208101905061083c565b50505050905090810190601f1680156108845780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561089d57600080fd5b6108c9600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611ec0565b6040518082815260200191505060405180910390f35b34156108ea57600080fd5b6108f2611ed8565b6040518082815260200191505060405180910390f35b341561091357600080fd5b61093f600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611ede565b005b341561094c57600080fd5b610978600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611f7e565b6040518082815260200191505060405180910390f35b341561099957600080fd5b6109a1611f96565b6040518082815260200191505060405180910390f35b34156109c257600080fd5b6109ca611f9c565b6040518082815260200191505060405180910390f35b34156109eb57600080fd5b610a20600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611fa2565b604051808215151515815260200191505060405180910390f35b3415610a4557600080fd5b610a66600480803590602001908201803590602001919091929050506121c1565b005b3415610a7357600080fd5b610aa8600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050612398565b604051808215151515815260200191505060405180910390f35b3415610acd57600080fd5b610b18600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050612594565b6040518082815260200191505060405180910390f35b3415610b3957600080fd5b610b4161261b565b6040518082815260200191505060405180910390f35b3415610b6257600080fd5b610b6a612621565b005b3415610b7757600080fd5b610ba3600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061275c565b005b3415610bb057600080fd5b610bb86128b4565b6040518082815260200191505060405180910390f35b3415610bd957600080fd5b610be16128ba565b6040518082815260200191505060405180910390f35b60075481565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c935780601f10610c6857610100808354040283529160200191610c93565b820191906000526020600020905b815481529060010190602001808311610c7657829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610de957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e2557600080fd5b6000601060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b60085481565b60006017544210158015610ee0575060185442105b1515610eeb57600080fd5b6000601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054118015610f78575060008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1515610f8357600080fd5b601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506110223361101d601484026007546128c0565b6128fb565b5050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561106357600080fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156110b057600080fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561113b57600080fd5b61118c826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612ae190919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061121f826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612afa90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506112f082600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612ae190919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60145481565b60065481565b60106020528060005260406000206000915054906101000a900460ff1681565b60195481565b6017544210158015611425575060185442105b151561143057600080fd5b60001515601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514151561148f57600080fd5b6000600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115156114dd57600080fd5b66b1a2bc2ec500003373ffffffffffffffffffffffffffffffffffffffff163101600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115151561154b57600080fd5b6001601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600b6000815480929190600101919050555061160633611601600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b18565b6128fb565b151561161157600080fd5b565b60155481565b601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60126020528060005260406000206000915054906101000a900460ff1681565b600a5481565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115611776576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061180a565b6117898382612ae190919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561195257600080fd5b80600c8190555050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60175481565b6000601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148015611a0b57506019544210155b1515611a1657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611a5257600080fd5b600d54600854830111151515611a6757600080fd5b611a7c82600854612afa90919063ffffffff16565b600881905550611ad3826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612afa90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff1631600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600c5481565b600b5481565b6013544210158015611bff575060145442105b1515611c0a57600080fd5b6702c68af0bb1400003373ffffffffffffffffffffffffffffffffffffffff1631118015611c7757506000600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b8015611caf57503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b1515611cba57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015611d375750600c54601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054105b15611d8c57601160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919060010191905055505b600a600081548092919060010191905055503373ffffffffffffffffffffffffffffffffffffffff1631600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611eb85780601f10611e8d57610100808354040283529160200191611eb8565b820191906000526020600020905b815481529060010190602001808311611e9b57829003601f168201915b505050505081565b600f6020528060005260406000206000915090505481565b60165481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611f3a57600080fd5b80601a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60116020528060005260406000206000915090505481565b60095481565b60135481565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611fdf57600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561202c57600080fd5b61207d826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612ae190919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612110826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612afa90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561221f57600080fd5b600090505b8282905081101561239357600073ffffffffffffffffffffffffffffffffffffffff16838383818110151561225557fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561229557600080fd5b60006010600085858581811015156122a957fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506000600f6000858585818110151561232b57fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080600101915050612224565b505050565b600061242982600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612afa90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60185481565b6017544210158015612634575060185442105b151561263f57600080fd5b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541180156126d75750601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15156126e257600080fd5b6001601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506127593361275460146007546128c090919063ffffffff16565b6128fb565b50565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156127b857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156127f457600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600e5481565b600d5481565b60008060008414156128d557600091506128f4565b82840290508284828115156128e657fe5b041415156128f057fe5b8091505b5092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561293857600080fd5b600e5460095483011115151561294d57600080fd5b61296282600854612afa90919063ffffffff16565b60088190555061297d82600954612afa90919063ffffffff16565b6009819055506129d4826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612afa90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff1631600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000828211151515612aef57fe5b818303905092915050565b6000808284019050838110151515612b0e57fe5b8091505092915050565b6000670de0b6b3a7640000821015612b3e57612b3760146007546128c0565b9050613282565b671bc16d674ec80000821015612b6257612b5b60646007546128c0565b9050613282565b6729a2241af62c0000821015612b8657612b7f60f06007546128c0565b9050613282565b673782dace9d900000821015612bab57612ba46101ae6007546128c0565b9050613282565b674563918244f40000821015612bd057612bc96102a86007546128c0565b9050613282565b6753444835ec580000821015612bf557612bee6103b66007546128c0565b9050613282565b676124fee993bc0000821015612c1a57612c136104ec6007546128c0565b9050613282565b676f05b59d3b200000821015612c3f57612c3861062c6007546128c0565b9050613282565b677ce66c50e2840000821015612c6457612c5d61076c6007546128c0565b9050613282565b678ac7230489e80000821015612c8957612c826108c06007546128c0565b9050613282565b6798a7d9b8314c0000821015612cae57612ca7610a006007546128c0565b9050613282565b67a688906bd8b00000821015612cd357612ccc610b4a6007546128c0565b9050613282565b67b469471f80140000821015612cf857612cf1610c8a6007546128c0565b9050613282565b67c249fdd327780000821015612d1d57612d16610dc06007546128c0565b9050613282565b67d02ab486cedc0000821015612d4257612d3b610ef66007546128c0565b9050613282565b67de0b6b3a76400000821015612d6757612d606110186007546128c0565b9050613282565b67ebec21ee1da40000821015612d8c57612d8561113a6007546128c0565b9050613282565b67f9ccd8a1c5080000821015612db157612daa6112486007546128c0565b9050613282565b680107ad8f556c6c0000821015612dd757612dd06113566007546128c0565b9050613282565b6801158e460913d00000821015612dfd57612df661145a6007546128c0565b9050613282565b6801236efcbcbb340000821015612e2357612e1c6115546007546128c0565b9050613282565b6801314fb37062980000821015612e4957612e426116446007546128c0565b9050613282565b68013f306a2409fc0000821015612e6f57612e6861172a6007546128c0565b9050613282565b68014d1120d7b1600000821015612e9557612e8e6118066007546128c0565b9050613282565b68015af1d78b58c40000821015612ebb57612eb46118d86007546128c0565b9050613282565b680168d28e3f00280000821015612ee157612eda6119aa6007546128c0565b9050613282565b680176b344f2a78c0000821015612f0757612f00611a726007546128c0565b9050613282565b68018493fba64ef00000821015612f2d57612f26611b306007546128c0565b9050613282565b68019274b259f6540000821015612f5357612f4c611be46007546128c0565b9050613282565b6801a055690d9db80000821015612f7957612f72611c986007546128c0565b9050613282565b6801ae361fc1451c0000821015612f9f57612f98611d4c6007546128c0565b9050613282565b6801bc16d674ec800000821015612fc557612fbe611dec6007546128c0565b9050613282565b6801c9f78d2893e40000821015612feb57612fe4611e8c6007546128c0565b9050613282565b6801d7d843dc3b4800008210156130115761300a611f2c6007546128c0565b9050613282565b6801e5b8fa8fe2ac000082101561303757613030611fc26007546128c0565b9050613282565b6801f399b1438a10000082101561305d5761305661204e6007546128c0565b9050613282565b6802017a67f7317400008210156130835761307c6120da6007546128c0565b9050613282565b68020f5b1eaad8d800008210156130a9576130a26121666007546128c0565b9050613282565b68021d3bd55e803c00008210156130cf576130c86121e86007546128c0565b9050613282565b68022b1c8c1227a000008210156130f5576130ee61226a6007546128c0565b9050613282565b680238fd42c5cf04000082101561311b576131146122e26007546128c0565b9050613282565b680246ddf979766800008210156131415761313a61235a6007546128c0565b9050613282565b680254beb02d1dcc0000821015613167576131606123d26007546128c0565b9050613282565b6802629f66e0c530000082101561318d576131866124406007546128c0565b9050613282565b680270801d946c9400008210156131b3576131ac6124ae6007546128c0565b9050613282565b68027e60d44813f800008210156131d9576131d261251c6007546128c0565b9050613282565b68028c418afbbb5c00008210156131ff576131f86125806007546128c0565b9050613282565b68029a2241af62c000008210156132255761321e6125e46007546128c0565b9050613282565b6802a802f8630a24000082101561324b576132446126486007546128c0565b9050613282565b6802b5e3af16b18800008210156132715761326a6126a26007546128c0565b9050613282565b61327f6127106007546128c0565b90505b9190505600a165627a7a72305820be7d0adc5f81207478eef2b39849c5215ef22d2c0bc2cb8b78418000b9a2389f0029

Deployed Bytecode

0x6060604052600436106101f8576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168062fa081a146101fd57806306fdde0314610226578063095ea7b3146102b457806310f885461461030e57806318160ddd146103475780631e375ab91461037057806323b872dd14610385578063297c9cd9146103fe578063313ce567146104275780633b00751214610450578063456176eb146104a157806348c54b9d146104ca57806351f1fa97146104df578063574490cd1461050857806363f44d1e1461055d578063660d5887146105ae57806366188463146105d75780636a1d87131461063157806370a082311461065457806373107c99146106a1578063742cd75d146106ca578063747fc0d2146107245780637bb0688d1461074d57806389efa1b5146107765780638da5cb5b146107af57806395d89b41146108045780639653f8a11461089257806396a6a748146108df5780639a03d9a3146109085780639ca423b3146109415780639d2ff29c1461098e578063a69bd4a8146109b7578063a9059cbb146109e0578063b5a0596e14610a3a578063d73dd62314610a68578063dd62ed3e14610ac2578063eb1de3e514610b2e578063f0330d5414610b57578063f2fde38b14610b6c578063f949116d14610ba5578063fb86a40414610bce575b600080fd5b341561020857600080fd5b610210610bf7565b6040518082815260200191505060405180910390f35b341561023157600080fd5b610239610bfd565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561027957808201518184015260208101905061025e565b50505050905090810190601f1680156102a65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102bf57600080fd5b6102f4600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610c9b565b604051808215151515815260200191505060405180910390f35b341561031957600080fd5b610345600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610d8d565b005b341561035257600080fd5b61035a610ec5565b6040518082815260200191505060405180910390f35b341561037b57600080fd5b610383610ecb565b005b341561039057600080fd5b6103e4600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611026565b604051808215151515815260200191505060405180910390f35b341561040957600080fd5b6104116113e0565b6040518082815260200191505060405180910390f35b341561043257600080fd5b61043a6113e6565b6040518082815260200191505060405180910390f35b341561045b57600080fd5b610487600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506113ec565b604051808215151515815260200191505060405180910390f35b34156104ac57600080fd5b6104b461140c565b6040518082815260200191505060405180910390f35b34156104d557600080fd5b6104dd611412565b005b34156104ea57600080fd5b6104f2611613565b6040518082815260200191505060405180910390f35b341561051357600080fd5b61051b611619565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561056857600080fd5b610594600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061163f565b604051808215151515815260200191505060405180910390f35b34156105b957600080fd5b6105c161165f565b6040518082815260200191505060405180910390f35b34156105e257600080fd5b610617600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611665565b604051808215151515815260200191505060405180910390f35b341561063c57600080fd5b61065260048080359060200190919050506118f6565b005b341561065f57600080fd5b61068b600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061195c565b6040518082815260200191505060405180910390f35b34156106ac57600080fd5b6106b46119a4565b6040518082815260200191505060405180910390f35b34156106d557600080fd5b61070a600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506119aa565b604051808215151515815260200191505060405180910390f35b341561072f57600080fd5b610737611be0565b6040518082815260200191505060405180910390f35b341561075857600080fd5b610760611be6565b6040518082815260200191505060405180910390f35b341561078157600080fd5b6107ad600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611bec565b005b34156107ba57600080fd5b6107c2611dfc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561080f57600080fd5b610817611e22565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561085757808201518184015260208101905061083c565b50505050905090810190601f1680156108845780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561089d57600080fd5b6108c9600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611ec0565b6040518082815260200191505060405180910390f35b34156108ea57600080fd5b6108f2611ed8565b6040518082815260200191505060405180910390f35b341561091357600080fd5b61093f600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611ede565b005b341561094c57600080fd5b610978600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611f7e565b6040518082815260200191505060405180910390f35b341561099957600080fd5b6109a1611f96565b6040518082815260200191505060405180910390f35b34156109c257600080fd5b6109ca611f9c565b6040518082815260200191505060405180910390f35b34156109eb57600080fd5b610a20600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611fa2565b604051808215151515815260200191505060405180910390f35b3415610a4557600080fd5b610a66600480803590602001908201803590602001919091929050506121c1565b005b3415610a7357600080fd5b610aa8600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050612398565b604051808215151515815260200191505060405180910390f35b3415610acd57600080fd5b610b18600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050612594565b6040518082815260200191505060405180910390f35b3415610b3957600080fd5b610b4161261b565b6040518082815260200191505060405180910390f35b3415610b6257600080fd5b610b6a612621565b005b3415610b7757600080fd5b610ba3600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061275c565b005b3415610bb057600080fd5b610bb86128b4565b6040518082815260200191505060405180910390f35b3415610bd957600080fd5b610be16128ba565b6040518082815260200191505060405180910390f35b60075481565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c935780601f10610c6857610100808354040283529160200191610c93565b820191906000526020600020905b815481529060010190602001808311610c7657829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610de957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e2557600080fd5b6000601060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b60085481565b60006017544210158015610ee0575060185442105b1515610eeb57600080fd5b6000601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054118015610f78575060008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1515610f8357600080fd5b601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506110223361101d601484026007546128c0565b6128fb565b5050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561106357600080fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156110b057600080fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561113b57600080fd5b61118c826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612ae190919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061121f826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612afa90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506112f082600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612ae190919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60145481565b60065481565b60106020528060005260406000206000915054906101000a900460ff1681565b60195481565b6017544210158015611425575060185442105b151561143057600080fd5b60001515601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514151561148f57600080fd5b6000600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115156114dd57600080fd5b66b1a2bc2ec500003373ffffffffffffffffffffffffffffffffffffffff163101600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115151561154b57600080fd5b6001601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600b6000815480929190600101919050555061160633611601600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b18565b6128fb565b151561161157600080fd5b565b60155481565b601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60126020528060005260406000206000915054906101000a900460ff1681565b600a5481565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115611776576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061180a565b6117898382612ae190919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561195257600080fd5b80600c8190555050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60175481565b6000601a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148015611a0b57506019544210155b1515611a1657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611a5257600080fd5b600d54600854830111151515611a6757600080fd5b611a7c82600854612afa90919063ffffffff16565b600881905550611ad3826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612afa90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff1631600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600c5481565b600b5481565b6013544210158015611bff575060145442105b1515611c0a57600080fd5b6702c68af0bb1400003373ffffffffffffffffffffffffffffffffffffffff1631118015611c7757506000600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b8015611caf57503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b1515611cba57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015611d375750600c54601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054105b15611d8c57601160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919060010191905055505b600a600081548092919060010191905055503373ffffffffffffffffffffffffffffffffffffffff1631600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611eb85780601f10611e8d57610100808354040283529160200191611eb8565b820191906000526020600020905b815481529060010190602001808311611e9b57829003601f168201915b505050505081565b600f6020528060005260406000206000915090505481565b60165481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611f3a57600080fd5b80601a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60116020528060005260406000206000915090505481565b60095481565b60135481565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611fdf57600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561202c57600080fd5b61207d826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612ae190919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612110826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612afa90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561221f57600080fd5b600090505b8282905081101561239357600073ffffffffffffffffffffffffffffffffffffffff16838383818110151561225557fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561229557600080fd5b60006010600085858581811015156122a957fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506000600f6000858585818110151561232b57fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080600101915050612224565b505050565b600061242982600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612afa90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60185481565b6017544210158015612634575060185442105b151561263f57600080fd5b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541180156126d75750601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15156126e257600080fd5b6001601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506127593361275460146007546128c090919063ffffffff16565b6128fb565b50565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156127b857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156127f457600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600e5481565b600d5481565b60008060008414156128d557600091506128f4565b82840290508284828115156128e657fe5b041415156128f057fe5b8091505b5092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561293857600080fd5b600e5460095483011115151561294d57600080fd5b61296282600854612afa90919063ffffffff16565b60088190555061297d82600954612afa90919063ffffffff16565b6009819055506129d4826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612afa90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff1631600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000828211151515612aef57fe5b818303905092915050565b6000808284019050838110151515612b0e57fe5b8091505092915050565b6000670de0b6b3a7640000821015612b3e57612b3760146007546128c0565b9050613282565b671bc16d674ec80000821015612b6257612b5b60646007546128c0565b9050613282565b6729a2241af62c0000821015612b8657612b7f60f06007546128c0565b9050613282565b673782dace9d900000821015612bab57612ba46101ae6007546128c0565b9050613282565b674563918244f40000821015612bd057612bc96102a86007546128c0565b9050613282565b6753444835ec580000821015612bf557612bee6103b66007546128c0565b9050613282565b676124fee993bc0000821015612c1a57612c136104ec6007546128c0565b9050613282565b676f05b59d3b200000821015612c3f57612c3861062c6007546128c0565b9050613282565b677ce66c50e2840000821015612c6457612c5d61076c6007546128c0565b9050613282565b678ac7230489e80000821015612c8957612c826108c06007546128c0565b9050613282565b6798a7d9b8314c0000821015612cae57612ca7610a006007546128c0565b9050613282565b67a688906bd8b00000821015612cd357612ccc610b4a6007546128c0565b9050613282565b67b469471f80140000821015612cf857612cf1610c8a6007546128c0565b9050613282565b67c249fdd327780000821015612d1d57612d16610dc06007546128c0565b9050613282565b67d02ab486cedc0000821015612d4257612d3b610ef66007546128c0565b9050613282565b67de0b6b3a76400000821015612d6757612d606110186007546128c0565b9050613282565b67ebec21ee1da40000821015612d8c57612d8561113a6007546128c0565b9050613282565b67f9ccd8a1c5080000821015612db157612daa6112486007546128c0565b9050613282565b680107ad8f556c6c0000821015612dd757612dd06113566007546128c0565b9050613282565b6801158e460913d00000821015612dfd57612df661145a6007546128c0565b9050613282565b6801236efcbcbb340000821015612e2357612e1c6115546007546128c0565b9050613282565b6801314fb37062980000821015612e4957612e426116446007546128c0565b9050613282565b68013f306a2409fc0000821015612e6f57612e6861172a6007546128c0565b9050613282565b68014d1120d7b1600000821015612e9557612e8e6118066007546128c0565b9050613282565b68015af1d78b58c40000821015612ebb57612eb46118d86007546128c0565b9050613282565b680168d28e3f00280000821015612ee157612eda6119aa6007546128c0565b9050613282565b680176b344f2a78c0000821015612f0757612f00611a726007546128c0565b9050613282565b68018493fba64ef00000821015612f2d57612f26611b306007546128c0565b9050613282565b68019274b259f6540000821015612f5357612f4c611be46007546128c0565b9050613282565b6801a055690d9db80000821015612f7957612f72611c986007546128c0565b9050613282565b6801ae361fc1451c0000821015612f9f57612f98611d4c6007546128c0565b9050613282565b6801bc16d674ec800000821015612fc557612fbe611dec6007546128c0565b9050613282565b6801c9f78d2893e40000821015612feb57612fe4611e8c6007546128c0565b9050613282565b6801d7d843dc3b4800008210156130115761300a611f2c6007546128c0565b9050613282565b6801e5b8fa8fe2ac000082101561303757613030611fc26007546128c0565b9050613282565b6801f399b1438a10000082101561305d5761305661204e6007546128c0565b9050613282565b6802017a67f7317400008210156130835761307c6120da6007546128c0565b9050613282565b68020f5b1eaad8d800008210156130a9576130a26121666007546128c0565b9050613282565b68021d3bd55e803c00008210156130cf576130c86121e86007546128c0565b9050613282565b68022b1c8c1227a000008210156130f5576130ee61226a6007546128c0565b9050613282565b680238fd42c5cf04000082101561311b576131146122e26007546128c0565b9050613282565b680246ddf979766800008210156131415761313a61235a6007546128c0565b9050613282565b680254beb02d1dcc0000821015613167576131606123d26007546128c0565b9050613282565b6802629f66e0c530000082101561318d576131866124406007546128c0565b9050613282565b680270801d946c9400008210156131b3576131ac6124ae6007546128c0565b9050613282565b68027e60d44813f800008210156131d9576131d261251c6007546128c0565b9050613282565b68028c418afbbb5c00008210156131ff576131f86125806007546128c0565b9050613282565b68029a2241af62c000008210156132255761321e6125e46007546128c0565b9050613282565b6802a802f8630a24000082101561324b576132446126486007546128c0565b9050613282565b6802b5e3af16b18800008210156132715761326a6126a26007546128c0565b9050613282565b61327f6127106007546128c0565b90505b9190505600a165627a7a72305820be7d0adc5f81207478eef2b39849c5215ef22d2c0bc2cb8b78418000b9a2389f0029

Swarm Source

bzzr://be7d0adc5f81207478eef2b39849c5215ef22d2c0bc2cb8b78418000b9a2389f
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.