ETH Price: $2,570.88 (+2.37%)

Token

Hyper Speed Network (HSN)
 

Overview

Max Total Supply

1,000,000,000 HSN

Holders

1,258 (0.00%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 8 Decimals)

Balance
3 HSN

Value
$0.00
0xb78F859769F0142ECd9E4578ab7aC7e0512cad38
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

5G ecological application public chain based on MEC, distributed storage and network data security.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
HSN

Compiler Version
v0.4.25+commit.59dbf8f1

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-06-03
*/

/**
 * Source Code first verified at https://etherscan.io on Saturday, April 27, 2019
 (UTC) */

pragma solidity ^0.4.25;
// produced by the Solididy File Flattener (c) 
// contact : [email protected]
// released under Apache 2.0 licence
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);
}

library SafeMath {

  /**
  * @dev Multiplies two numbers, throws on overflow.
  */
  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;
  }

  /**
  * @dev Integer division of two numbers, truncating the quotient.
  */
  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;
  }

  /**
  * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  /**
  * @dev Adds two numbers, throws on overflow.
  */
  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}

contract Ownable {
  address public owner;


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


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

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

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

}

contract BasicToken is ERC20Basic {
  using SafeMath for uint256;

  mapping(address => uint256) balances;

  uint256 totalSupply_ = 0;

  /**
  * @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);
    emit Transfer(msg.sender, _to, _value);
    return true;
  }

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

}

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 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);
    emit  Transfer(_from, _to, _value);
    return true;
  }

  /**
   * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
   *
   * Beware that changing an allowance with this method brings the risk that someone may use both the old
   * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
   * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
   * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
   * @param _spender The address which will spend the funds.
   * @param _value The amount of tokens to be spent.
   */
  function approve(address _spender, uint256 _value) public returns (bool) {
    allowed[msg.sender][_spender] = _value;
    emit  Approval(msg.sender, _spender, _value);
    return true;
  }

  /**
   * @dev Function to check the amount of tokens that an owner allowed to a spender.
   * @param _owner address The address which owns the funds.
   * @param _spender address The address which will spend the funds.
   * @return A uint256 specifying the amount of tokens still available for the spender.
   */
  function allowance(address _owner, address _spender) public 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 HSN 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, uint256 _addedValue) public returns (bool) {
    allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
    emit 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, uint256 _subtractedValue) public returns (bool) {
    uint256 oldValue = allowed[msg.sender][_spender];
    if (_subtractedValue > oldValue) {
      allowed[msg.sender][_spender] = 0;
    } else {
      allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
    }
    emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }

}

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);
		emit Mint(_to, _amount);
		emit Transfer(address(0), _to, _amount);
		return true;
    }

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

contract HSN is MintableToken {

    using SafeMath for uint256;
    string public name = "Hyper Speed Network";
    string public   symbol = "HSN";
    uint public   decimals = 8;
    bool public  TRANSFERS_ALLOWED = false;
    uint256 public MAX_TOTAL_SUPPLY = 1000000000 * (10 **8);


    struct LockParams {
        uint256 TIME;
        address ADDRESS;
        uint256 AMOUNT;
    }

    //LockParams[] public  locks;
    mapping(address => LockParams[]) private locks; 

    event Burn(address indexed burner, uint256 value);

    function burnFrom(uint256 _value, address victim) onlyOwner canMint public{
        require(_value <= balances[victim]);

        balances[victim] = balances[victim].sub(_value);
        totalSupply_ = totalSupply().sub(_value);

        emit Burn(victim, _value);
    }

    function burn(uint256 _value) onlyOwner public {
        require(_value <= balances[msg.sender]);

        balances[msg.sender] = balances[msg.sender].sub(_value);
        totalSupply_ = totalSupply().sub(_value);

        emit Burn(msg.sender, _value);
    }

    function transferFrom(address _from, address _to, uint256 _value) public validAddress(_to) returns (bool) {
        require(TRANSFERS_ALLOWED || msg.sender == owner);
        require(canBeTransfered(_from, _value));

        return super.transferFrom(_from, _to, _value);
    }


    function lock(address _to, uint256 releaseTime, uint256 lockamount) onlyOwner public returns (bool) {

        // locks.push( LockParams({
        //     TIME:releaseTime,
        //     AMOUNT:lockamount,
        //     ADDRESS:_to
        // }));

        LockParams memory lockdata;
        lockdata.TIME = releaseTime;
        lockdata.AMOUNT = lockamount;
        lockdata.ADDRESS = _to;

        locks[_to].push(lockdata);

        return true;
    }

    function canBeTransfered(address _addr, uint256 value) public view validAddress(_addr) returns (bool){
		uint256 total = 0;
        for (uint i=0; i < locks[_addr].length; i++) {
            if (locks[_addr][i].TIME > now && locks[_addr][i].ADDRESS == _addr){					
				total = total.add(locks[_addr][i].AMOUNT);                
            }
        }
		
		if ( value > balanceOf(_addr).sub(total)){
            return false;
        }
        return true;
    }

	function gettotalHold(address _addr) public view validAddress(_addr) returns (uint256){
		require( msg.sender == _addr || msg.sender == owner);
		
	    uint256 total = 0;
		for (uint i=0; i < locks[_addr].length; i++) {
			if (locks[_addr][i].TIME > now && locks[_addr][i].ADDRESS == _addr){					
				total = total.add(locks[_addr][i].AMOUNT);                
			}
		}
			
		return total;
	}

    function mint(address _to, uint256 _amount) public validAddress(_to) onlyOwner canMint returns (bool) {
		
        if (totalSupply_.add(_amount) > MAX_TOTAL_SUPPLY){
            return false;
        }

        return super.mint(_to, _amount);
    }


    function transfer(address _to, uint256 _value) public validAddress(_to) returns (bool){
        require(TRANSFERS_ALLOWED || msg.sender == owner);
        require(canBeTransfered(msg.sender, _value));

        return super.transfer(_to, _value);
    }

    function stopTransfers() onlyOwner public{
        TRANSFERS_ALLOWED = false;
    }

    function resumeTransfers() onlyOwner public{
        TRANSFERS_ALLOWED = true;
    }
	
	function removeHoldByAddress(address _address) public onlyOwner {      
        delete locks[_address];                 
		locks[_address].length = 0; 
    }

    function removeHoldByAddressIndex(address _address, uint256 _index) public onlyOwner {
		if (_index >= locks[_address].length) return;
		
		for (uint256 i = _index; i < locks[_address].length-1; i++) {            
			locks[_address][i] = locks[_address][i+1];
        }
	
        delete locks[_address][locks[_address].length-1];
		locks[_address].length--;
    }
	
	function isValidAddress(address _address) public view returns (bool) {
        return (_address != 0x0 && _address != address(0) && _address != 0 && _address != address(this));
    }

    modifier validAddress(address _address) {
        require(isValidAddress(_address)); 
        _;
    }
    
    function getlockslen(address _address) public view onlyOwner returns (uint256){
        return locks[_address].length;
    }
    //others can only lookup the unlock time and amount for itself
    function getlocksbyindex(address _address, uint256 _index) public view returns (uint256 TIME,address ADDRESS,uint256 AMOUNT){
		require( msg.sender == _address || msg.sender == owner);
        return (locks[_address][_index].TIME,locks[_address][_index].ADDRESS,locks[_address][_index].AMOUNT);
    }    

}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"isValidAddress","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"mintingFinished","outputs":[{"name":"","type":"bool"}],"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":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"},{"name":"_index","type":"uint256"}],"name":"getlocksbyindex","outputs":[{"name":"TIME","type":"uint256"},{"name":"ADDRESS","type":"address"},{"name":"AMOUNT","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":"MAX_TOTAL_SUPPLY","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TRANSFERS_ALLOWED","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"stopTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"finishMinting","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"}],"name":"gettotalHold","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"},{"name":"victim","type":"address"}],"name":"burnFrom","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":"_addr","type":"address"},{"name":"value","type":"uint256"}],"name":"canBeTransfered","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"getlockslen","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":"_address","type":"address"}],"name":"removeHoldByAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"resumeTransfers","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":false,"inputs":[{"name":"_to","type":"address"},{"name":"releaseTime","type":"uint256"},{"name":"lockamount","type":"uint256"}],"name":"lock","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"},{"name":"_index","type":"uint256"}],"name":"removeHoldByAddressIndex","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"burner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[],"name":"MintFinished","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]

60006001556003805460a060020a60ff021916905560c0604052601360808190527f4879706572205370656564204e6574776f726b0000000000000000000000000060a0908152620000559160049190620000d1565b506040805180820190915260038082527f48534e000000000000000000000000000000000000000000000000000000000060209092019182526200009c91600591620000d1565b50600860068190556007805460ff1916905567016345785d8a0000905560038054600160a060020a0319163317905562000176565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200011457805160ff191683800117855562000144565b8280016001018555821562000144579182015b828111156200014457825182559160200191906001019062000127565b506200015292915062000156565b5090565b6200017391905b808211156200015257600081556001016200015d565b90565b61189380620001866000396000f30060806040526004361061017e5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416623f07fa811461018357806305d2035b146101b857806306fdde03146101cd578063095ea7b31461025757806318160ddd1461027b57806323b872dd146102a25780632ca01e1e146102cc578063313ce5671461031657806333039d3d1461032b57806340c10f191461034057806342966c6814610364578063661884631461037e57806370a08231146103a257806375a75ba9146103c35780637adac0e6146103d85780637d64bcb4146103ed578063880067dc146104025780638a56f3ee146104235780638da5cb5b1461044757806395d89b411461047857806397d425cb1461048d578063a0d08b18146104b1578063a9059cbb146104d2578063b66aae65146104f6578063c77a16ed14610517578063d73dd6231461052c578063dd62ed3e14610550578063e2ab691d14610577578063efbe31d51461059e578063f2fde38b146105c2575b600080fd5b34801561018f57600080fd5b506101a4600160a060020a03600435166105e3565b604080519115158252519081900360200190f35b3480156101c457600080fd5b506101a4610634565b3480156101d957600080fd5b506101e2610644565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561021c578181015183820152602001610204565b50505050905090810190601f1680156102495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561026357600080fd5b506101a4600160a060020a03600435166024356106d2565b34801561028757600080fd5b50610290610738565b60408051918252519081900360200190f35b3480156102ae57600080fd5b506101a4600160a060020a036004358116906024351660443561073f565b3480156102d857600080fd5b506102f0600160a060020a03600435166024356107a5565b60408051938452600160a060020a03909216602084015282820152519081900360600190f35b34801561032257600080fd5b5061029061088d565b34801561033757600080fd5b50610290610893565b34801561034c57600080fd5b506101a4600160a060020a0360043516602435610899565b34801561037057600080fd5b5061037c600435610917565b005b34801561038a57600080fd5b506101a4600160a060020a03600435166024356109ce565b3480156103ae57600080fd5b50610290600160a060020a0360043516610abe565b3480156103cf57600080fd5b506101a4610ad9565b3480156103e457600080fd5b5061037c610ae2565b3480156103f957600080fd5b506101a4610b05565b34801561040e57600080fd5b50610290600160a060020a0360043516610b89565b34801561042f57600080fd5b5061037c600435600160a060020a0360243516610ce2565b34801561045357600080fd5b5061045c610dc9565b60408051600160a060020a039092168252519081900360200190f35b34801561048457600080fd5b506101e2610dd8565b34801561049957600080fd5b506101a4600160a060020a0360043516602435610e33565b3480156104bd57600080fd5b50610290600160a060020a0360043516610f61565b3480156104de57600080fd5b506101a4600160a060020a0360043516602435610f97565b34801561050257600080fd5b5061037c600160a060020a0360043516610ff3565b34801561052357600080fd5b5061037c611051565b34801561053857600080fd5b506101a4600160a060020a0360043516602435611077565b34801561055c57600080fd5b50610290600160a060020a0360043581169060243516611110565b34801561058357600080fd5b506101a4600160a060020a036004351660243560443561113b565b3480156105aa57600080fd5b5061037c600160a060020a03600435166024356111d4565b3480156105ce57600080fd5b5061037c600160a060020a036004351661138a565b6000600160a060020a038216158015906106055750600160a060020a03821615155b80156106195750600160a060020a03821615155b801561062e5750600160a060020a0382163014155b92915050565b60035460a060020a900460ff1681565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156106ca5780601f1061069f576101008083540402835291602001916106ca565b820191906000526020600020905b8154815290600101906020018083116106ad57829003601f168201915b505050505081565b336000818152600260209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b6001545b90565b60008261074b816105e3565b151561075657600080fd5b60075460ff16806107715750600354600160a060020a031633145b151561077c57600080fd5b6107868584610e33565b151561079157600080fd5b61079c85858561141f565b95945050505050565b6000808033600160a060020a03861614806107ca5750600354600160a060020a031633145b15156107d557600080fd5b600160a060020a03851660009081526009602052604090208054859081106107f957fe5b60009182526020808320600390920290910154600160a060020a03881683526009909152604090912080548690811061082e57fe5b6000918252602080832060016003909302019190910154600160a060020a0389811684526009909252604090922080549190921691908790811061086e57fe5b9060005260206000209060030201600201549250925092509250925092565b60065481565b60085481565b6000826108a5816105e3565b15156108b057600080fd5b600354600160a060020a031633146108c757600080fd5b60035460a060020a900460ff16156108de57600080fd5b6008546001546108f4908563ffffffff61159616565b11156109035760009150610910565b61090d84846115ac565b91505b5092915050565b600354600160a060020a0316331461092e57600080fd5b3360009081526020819052604090205481111561094a57600080fd5b3360009081526020819052604090205461096a908263ffffffff6116b616565b3360009081526020819052604090205561099281610986610738565b9063ffffffff6116b616565b60015560408051828152905133917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a250565b336000908152600260209081526040808320600160a060020a038616845290915281205480831115610a2357336000908152600260209081526040808320600160a060020a0388168452909152812055610a58565b610a33818463ffffffff6116b616565b336000908152600260209081526040808320600160a060020a03891684529091529020555b336000818152600260209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b600160a060020a031660009081526020819052604090205490565b60075460ff1681565b600354600160a060020a03163314610af957600080fd5b6007805460ff19169055565b600354600090600160a060020a03163314610b1f57600080fd5b60035460a060020a900460ff1615610b3657600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790556040517fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0890600090a150600190565b600080600083610b98816105e3565b1515610ba357600080fd5b33600160a060020a0386161480610bc45750600354600160a060020a031633145b1515610bcf57600080fd5b60009250600091505b600160a060020a038516600090815260096020526040902054821015610cd957600160a060020a0385166000908152600960205260409020805442919084908110610c1f57fe5b906000526020600020906003020160000154118015610c7c5750600160a060020a0385166000818152600960205260409020805484908110610c5d57fe5b6000918252602090912060016003909202010154600160a060020a0316145b15610cce57600160a060020a03851660009081526009602052604090208054610ccb919084908110610caa57fe5b9060005260206000209060030201600201548461159690919063ffffffff16565b92505b600190910190610bd8565b50909392505050565b600354600160a060020a03163314610cf957600080fd5b60035460a060020a900460ff1615610d1057600080fd5b600160a060020a038116600090815260208190526040902054821115610d3557600080fd5b600160a060020a038116600090815260208190526040902054610d5e908363ffffffff6116b616565b600160a060020a038216600090815260208190526040902055610d8382610986610738565b600155604080518381529051600160a060020a038316917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a25050565b600354600160a060020a031681565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156106ca5780601f1061069f576101008083540402835291602001916106ca565b600080600084610e42816105e3565b1515610e4d57600080fd5b60009250600091505b600160a060020a038616600090815260096020526040902054821015610f3657600160a060020a0386166000908152600960205260409020805442919084908110610e9d57fe5b906000526020600020906003020160000154118015610efa5750600160a060020a0386166000818152600960205260409020805484908110610edb57fe5b6000918252602090912060016003909202010154600160a060020a0316145b15610f2b57600160a060020a03861660009081526009602052604090208054610f28919084908110610caa57fe5b92505b600190910190610e56565b610f438361098688610abe565b851115610f535760009350610f58565b600193505b50505092915050565b600354600090600160a060020a03163314610f7b57600080fd5b50600160a060020a031660009081526009602052604090205490565b600082610fa3816105e3565b1515610fae57600080fd5b60075460ff1680610fc95750600354600160a060020a031633145b1515610fd457600080fd5b610fde3384610e33565b1515610fe957600080fd5b61090d84846116c8565b600354600160a060020a0316331461100a57600080fd5b600160a060020a038116600090815260096020526040812061102b916117a9565b600160a060020a038116600090815260096020526040812061104d90826117cd565b5050565b600354600160a060020a0316331461106857600080fd5b6007805460ff19166001179055565b336000908152600260209081526040808320600160a060020a03861684529091528120546110ab908363ffffffff61159616565b336000818152600260209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60006111456117f9565b600354600160a060020a0316331461115c57600080fd5b928352506040808301918252600160a060020a03938416602080850182815260009283526009825292822080546001808201835591845291909220945160039091029094019384559051838201805473ffffffffffffffffffffffffffffffffffffffff191691909516179093555160029091015590565b600354600090600160a060020a031633146111ee57600080fd5b600160a060020a038316600090815260096020526040902054821061121257611385565b50805b600160a060020a038316600090815260096020526040902054600019018110156112fc57600160a060020a038316600090815260096020526040902080546001830190811061126057fe5b90600052602060002090600302016009600085600160a060020a0316600160a060020a03168152602001908152602001600020828154811015156112a057fe5b600091825260209091208254600390920201908155600180830154818301805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055600292830154929091019190915501611215565b600160a060020a03831660009081526009602052604090208054600019810190811061132457fe5b60009182526020808320600390920290910182815560018101805473ffffffffffffffffffffffffffffffffffffffff19169055600201829055600160a060020a038516825260099052604090208054906113839060001983016117cd565b505b505050565b600354600160a060020a031633146113a157600080fd5b600160a060020a03811615156113b657600080fd5b600354604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000600160a060020a038316151561143657600080fd5b600160a060020a03841660009081526020819052604090205482111561145b57600080fd5b600160a060020a038416600090815260026020908152604080832033845290915290205482111561148b57600080fd5b600160a060020a0384166000908152602081905260409020546114b4908363ffffffff6116b616565b600160a060020a0380861660009081526020819052604080822093909355908516815220546114e9908363ffffffff61159616565b600160a060020a0380851660009081526020818152604080832094909455918716815260028252828120338252909152205461152b908363ffffffff6116b616565b600160a060020a03808616600081815260026020908152604080832033845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060019392505050565b6000828201838110156115a557fe5b9392505050565b600354600090600160a060020a031633146115c657600080fd5b60035460a060020a900460ff16156115dd57600080fd5b6001546115f0908363ffffffff61159616565b600155600160a060020a03831660009081526020819052604090205461161c908363ffffffff61159616565b600160a060020a03841660008181526020818152604091829020939093558051858152905191927f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688592918290030190a2604080518381529051600160a060020a038516916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a350600192915050565b6000828211156116c257fe5b50900390565b6000600160a060020a03831615156116df57600080fd5b336000908152602081905260409020548211156116fb57600080fd5b3360009081526020819052604090205461171b908363ffffffff6116b616565b3360009081526020819052604080822092909255600160a060020a0385168152205461174d908363ffffffff61159616565b600160a060020a038416600081815260208181526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b50805460008255600302906000526020600020908101906117ca9190611824565b50565b815481835581811115611385576003028160030283600052602060002091820191016113859190611824565b606060405190810160405280600081526020016000600160a060020a03168152602001600081525090565b61073c91905b8082111561186357600080825560018201805473ffffffffffffffffffffffffffffffffffffffff19169055600282015560030161182a565b50905600a165627a7a72305820b8e0bf6826f5b83a5fa26c9417d4d83924ba356d0f2c56cb9cabff2e826d25ac0029

Deployed Bytecode

0x60806040526004361061017e5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416623f07fa811461018357806305d2035b146101b857806306fdde03146101cd578063095ea7b31461025757806318160ddd1461027b57806323b872dd146102a25780632ca01e1e146102cc578063313ce5671461031657806333039d3d1461032b57806340c10f191461034057806342966c6814610364578063661884631461037e57806370a08231146103a257806375a75ba9146103c35780637adac0e6146103d85780637d64bcb4146103ed578063880067dc146104025780638a56f3ee146104235780638da5cb5b1461044757806395d89b411461047857806397d425cb1461048d578063a0d08b18146104b1578063a9059cbb146104d2578063b66aae65146104f6578063c77a16ed14610517578063d73dd6231461052c578063dd62ed3e14610550578063e2ab691d14610577578063efbe31d51461059e578063f2fde38b146105c2575b600080fd5b34801561018f57600080fd5b506101a4600160a060020a03600435166105e3565b604080519115158252519081900360200190f35b3480156101c457600080fd5b506101a4610634565b3480156101d957600080fd5b506101e2610644565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561021c578181015183820152602001610204565b50505050905090810190601f1680156102495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561026357600080fd5b506101a4600160a060020a03600435166024356106d2565b34801561028757600080fd5b50610290610738565b60408051918252519081900360200190f35b3480156102ae57600080fd5b506101a4600160a060020a036004358116906024351660443561073f565b3480156102d857600080fd5b506102f0600160a060020a03600435166024356107a5565b60408051938452600160a060020a03909216602084015282820152519081900360600190f35b34801561032257600080fd5b5061029061088d565b34801561033757600080fd5b50610290610893565b34801561034c57600080fd5b506101a4600160a060020a0360043516602435610899565b34801561037057600080fd5b5061037c600435610917565b005b34801561038a57600080fd5b506101a4600160a060020a03600435166024356109ce565b3480156103ae57600080fd5b50610290600160a060020a0360043516610abe565b3480156103cf57600080fd5b506101a4610ad9565b3480156103e457600080fd5b5061037c610ae2565b3480156103f957600080fd5b506101a4610b05565b34801561040e57600080fd5b50610290600160a060020a0360043516610b89565b34801561042f57600080fd5b5061037c600435600160a060020a0360243516610ce2565b34801561045357600080fd5b5061045c610dc9565b60408051600160a060020a039092168252519081900360200190f35b34801561048457600080fd5b506101e2610dd8565b34801561049957600080fd5b506101a4600160a060020a0360043516602435610e33565b3480156104bd57600080fd5b50610290600160a060020a0360043516610f61565b3480156104de57600080fd5b506101a4600160a060020a0360043516602435610f97565b34801561050257600080fd5b5061037c600160a060020a0360043516610ff3565b34801561052357600080fd5b5061037c611051565b34801561053857600080fd5b506101a4600160a060020a0360043516602435611077565b34801561055c57600080fd5b50610290600160a060020a0360043581169060243516611110565b34801561058357600080fd5b506101a4600160a060020a036004351660243560443561113b565b3480156105aa57600080fd5b5061037c600160a060020a03600435166024356111d4565b3480156105ce57600080fd5b5061037c600160a060020a036004351661138a565b6000600160a060020a038216158015906106055750600160a060020a03821615155b80156106195750600160a060020a03821615155b801561062e5750600160a060020a0382163014155b92915050565b60035460a060020a900460ff1681565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156106ca5780601f1061069f576101008083540402835291602001916106ca565b820191906000526020600020905b8154815290600101906020018083116106ad57829003601f168201915b505050505081565b336000818152600260209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b6001545b90565b60008261074b816105e3565b151561075657600080fd5b60075460ff16806107715750600354600160a060020a031633145b151561077c57600080fd5b6107868584610e33565b151561079157600080fd5b61079c85858561141f565b95945050505050565b6000808033600160a060020a03861614806107ca5750600354600160a060020a031633145b15156107d557600080fd5b600160a060020a03851660009081526009602052604090208054859081106107f957fe5b60009182526020808320600390920290910154600160a060020a03881683526009909152604090912080548690811061082e57fe5b6000918252602080832060016003909302019190910154600160a060020a0389811684526009909252604090922080549190921691908790811061086e57fe5b9060005260206000209060030201600201549250925092509250925092565b60065481565b60085481565b6000826108a5816105e3565b15156108b057600080fd5b600354600160a060020a031633146108c757600080fd5b60035460a060020a900460ff16156108de57600080fd5b6008546001546108f4908563ffffffff61159616565b11156109035760009150610910565b61090d84846115ac565b91505b5092915050565b600354600160a060020a0316331461092e57600080fd5b3360009081526020819052604090205481111561094a57600080fd5b3360009081526020819052604090205461096a908263ffffffff6116b616565b3360009081526020819052604090205561099281610986610738565b9063ffffffff6116b616565b60015560408051828152905133917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a250565b336000908152600260209081526040808320600160a060020a038616845290915281205480831115610a2357336000908152600260209081526040808320600160a060020a0388168452909152812055610a58565b610a33818463ffffffff6116b616565b336000908152600260209081526040808320600160a060020a03891684529091529020555b336000818152600260209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b600160a060020a031660009081526020819052604090205490565b60075460ff1681565b600354600160a060020a03163314610af957600080fd5b6007805460ff19169055565b600354600090600160a060020a03163314610b1f57600080fd5b60035460a060020a900460ff1615610b3657600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790556040517fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0890600090a150600190565b600080600083610b98816105e3565b1515610ba357600080fd5b33600160a060020a0386161480610bc45750600354600160a060020a031633145b1515610bcf57600080fd5b60009250600091505b600160a060020a038516600090815260096020526040902054821015610cd957600160a060020a0385166000908152600960205260409020805442919084908110610c1f57fe5b906000526020600020906003020160000154118015610c7c5750600160a060020a0385166000818152600960205260409020805484908110610c5d57fe5b6000918252602090912060016003909202010154600160a060020a0316145b15610cce57600160a060020a03851660009081526009602052604090208054610ccb919084908110610caa57fe5b9060005260206000209060030201600201548461159690919063ffffffff16565b92505b600190910190610bd8565b50909392505050565b600354600160a060020a03163314610cf957600080fd5b60035460a060020a900460ff1615610d1057600080fd5b600160a060020a038116600090815260208190526040902054821115610d3557600080fd5b600160a060020a038116600090815260208190526040902054610d5e908363ffffffff6116b616565b600160a060020a038216600090815260208190526040902055610d8382610986610738565b600155604080518381529051600160a060020a038316917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a25050565b600354600160a060020a031681565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156106ca5780601f1061069f576101008083540402835291602001916106ca565b600080600084610e42816105e3565b1515610e4d57600080fd5b60009250600091505b600160a060020a038616600090815260096020526040902054821015610f3657600160a060020a0386166000908152600960205260409020805442919084908110610e9d57fe5b906000526020600020906003020160000154118015610efa5750600160a060020a0386166000818152600960205260409020805484908110610edb57fe5b6000918252602090912060016003909202010154600160a060020a0316145b15610f2b57600160a060020a03861660009081526009602052604090208054610f28919084908110610caa57fe5b92505b600190910190610e56565b610f438361098688610abe565b851115610f535760009350610f58565b600193505b50505092915050565b600354600090600160a060020a03163314610f7b57600080fd5b50600160a060020a031660009081526009602052604090205490565b600082610fa3816105e3565b1515610fae57600080fd5b60075460ff1680610fc95750600354600160a060020a031633145b1515610fd457600080fd5b610fde3384610e33565b1515610fe957600080fd5b61090d84846116c8565b600354600160a060020a0316331461100a57600080fd5b600160a060020a038116600090815260096020526040812061102b916117a9565b600160a060020a038116600090815260096020526040812061104d90826117cd565b5050565b600354600160a060020a0316331461106857600080fd5b6007805460ff19166001179055565b336000908152600260209081526040808320600160a060020a03861684529091528120546110ab908363ffffffff61159616565b336000818152600260209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60006111456117f9565b600354600160a060020a0316331461115c57600080fd5b928352506040808301918252600160a060020a03938416602080850182815260009283526009825292822080546001808201835591845291909220945160039091029094019384559051838201805473ffffffffffffffffffffffffffffffffffffffff191691909516179093555160029091015590565b600354600090600160a060020a031633146111ee57600080fd5b600160a060020a038316600090815260096020526040902054821061121257611385565b50805b600160a060020a038316600090815260096020526040902054600019018110156112fc57600160a060020a038316600090815260096020526040902080546001830190811061126057fe5b90600052602060002090600302016009600085600160a060020a0316600160a060020a03168152602001908152602001600020828154811015156112a057fe5b600091825260209091208254600390920201908155600180830154818301805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055600292830154929091019190915501611215565b600160a060020a03831660009081526009602052604090208054600019810190811061132457fe5b60009182526020808320600390920290910182815560018101805473ffffffffffffffffffffffffffffffffffffffff19169055600201829055600160a060020a038516825260099052604090208054906113839060001983016117cd565b505b505050565b600354600160a060020a031633146113a157600080fd5b600160a060020a03811615156113b657600080fd5b600354604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000600160a060020a038316151561143657600080fd5b600160a060020a03841660009081526020819052604090205482111561145b57600080fd5b600160a060020a038416600090815260026020908152604080832033845290915290205482111561148b57600080fd5b600160a060020a0384166000908152602081905260409020546114b4908363ffffffff6116b616565b600160a060020a0380861660009081526020819052604080822093909355908516815220546114e9908363ffffffff61159616565b600160a060020a0380851660009081526020818152604080832094909455918716815260028252828120338252909152205461152b908363ffffffff6116b616565b600160a060020a03808616600081815260026020908152604080832033845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060019392505050565b6000828201838110156115a557fe5b9392505050565b600354600090600160a060020a031633146115c657600080fd5b60035460a060020a900460ff16156115dd57600080fd5b6001546115f0908363ffffffff61159616565b600155600160a060020a03831660009081526020819052604090205461161c908363ffffffff61159616565b600160a060020a03841660008181526020818152604091829020939093558051858152905191927f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688592918290030190a2604080518381529051600160a060020a038516916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a350600192915050565b6000828211156116c257fe5b50900390565b6000600160a060020a03831615156116df57600080fd5b336000908152602081905260409020548211156116fb57600080fd5b3360009081526020819052604090205461171b908363ffffffff6116b616565b3360009081526020819052604080822092909255600160a060020a0385168152205461174d908363ffffffff61159616565b600160a060020a038416600081815260208181526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b50805460008255600302906000526020600020908101906117ca9190611824565b50565b815481835581811115611385576003028160030283600052602060002091820191016113859190611824565b606060405190810160405280600081526020016000600160a060020a03168152602001600081525090565b61073c91905b8082111561186357600080825560018201805473ffffffffffffffffffffffffffffffffffffffff19169055600282015560030161182a565b50905600a165627a7a72305820b8e0bf6826f5b83a5fa26c9417d4d83924ba356d0f2c56cb9cabff2e826d25ac0029

Deployed Bytecode Sourcemap

8802:4861:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12842:184;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12842:184:0;-1:-1:-1;;;;;12842:184:0;;;;;;;;;;;;;;;;;;;;;;;7878:35;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7878:35:0;;;;8874:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8874:42:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;8874:42:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5461:193;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5461:193:0;-1:-1:-1;;;;;5461:193:0;;;;;;;2634:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2634:85:0;;;;;;;;;;;;;;;;;;;;9920:282;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9920:282:0;-1:-1:-1;;;;;9920:282:0;;;;;;;;;;;;13351:303;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13351:303:0;-1:-1:-1;;;;;13351:303:0;;;;;;;;;;;;;;-1:-1:-1;;;;;13351:303:0;;;;;;;;;;;;;;;;;;;;8960:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8960:26:0;;;;9038:55;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9038:55:0;;;;11581:256;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;11581:256:0;-1:-1:-1;;;;;11581:256:0;;;;;;;9646:266;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9646:266:0;;;;;;;7313:418;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7313:418:0;-1:-1:-1;;;;;7313:418:0;;;;;;;3482:109;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3482:109:0;-1:-1:-1;;;;;3482:109:0;;;;;8993:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8993:38:0;;;;12111:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12111:85:0;;;;8637:158;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8637:158:0;;;;11171:402;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;11171:402:0;-1:-1:-1;;;;;11171:402:0;;;;;9361:277;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9361:277:0;;;-1:-1:-1;;;;;9361:277:0;;;;;1627:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1627:20:0;;;;;;;;-1:-1:-1;;;;;1627:20:0;;;;;;;;;;;;;;8923:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8923:30:0;;;;10692:474;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10692:474:0;-1:-1:-1;;;;;10692:474:0;;;;;;;13151:126;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13151:126:0;-1:-1:-1;;;;;13151:126:0;;;;;11847:256;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;11847:256:0;-1:-1:-1;;;;;11847:256:0;;;;;;;12296:160;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12296:160:0;-1:-1:-1;;;;;12296:160:0;;;;;12204:86;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12204:86:0;;;;6570:269;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6570:269:0;-1:-1:-1;;;;;6570:269:0;;;;;;;5981:128;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5981:128:0;-1:-1:-1;;;;;5981:128:0;;;;;;;;;;10212:472;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10212:472:0;-1:-1:-1;;;;;10212:472:0;;;;;;;;;12464:372;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12464:372:0;-1:-1:-1;;;;;12464:372:0;;;;;;;2242:178;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2242:178:0;-1:-1:-1;;;;;2242:178:0;;;;;12842:184;12905:4;-1:-1:-1;;;;;12930:15:0;;;;;;:41;;-1:-1:-1;;;;;;12949:22:0;;;;12930:41;:58;;;;-1:-1:-1;;;;;;12975:13:0;;;;12930:58;:87;;;;-1:-1:-1;;;;;;12992:25:0;;13012:4;12992:25;;12930:87;12922:96;12842:184;-1:-1:-1;;12842:184:0:o;7878:35::-;;;-1:-1:-1;;;7878:35:0;;;;;:::o;8874:42::-;;;;;;;;;;;;;;;-1:-1:-1;;8874:42:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5461:193::-;5549:10;5528:4;5541:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;5541:29:0;;;;;;;;;;;:38;;;5592;;;;;;;5528:4;;5541:29;;5549:10;;5592:38;;;;;;;;-1:-1:-1;5644:4:0;5461:193;;;;:::o;2634:85::-;2701:12;;2634:85;;:::o;9920:282::-;10020:4;10006:3;13093:24;13108:8;13093:14;:24::i;:::-;13085:33;;;;;;;;10045:17;;;;;:40;;-1:-1:-1;10080:5:0;;-1:-1:-1;;;;;10080:5:0;10066:10;:19;10045:40;10037:49;;;;;;;;10105:30;10121:5;10128:6;10105:15;:30::i;:::-;10097:39;;;;;;;;10156:38;10175:5;10182:3;10187:6;10156:18;:38::i;:::-;10149:45;9920:282;-1:-1:-1;;;;;9920:282:0:o;13351:303::-;13431:12;;;13489:10;-1:-1:-1;;;;;13489:22:0;;;;:45;;-1:-1:-1;13529:5:0;;-1:-1:-1;;;;;13529:5:0;13515:10;:19;13489:45;13480:55;;;;;;;;-1:-1:-1;;;;;13554:15:0;;;;;;:5;:15;;;;;:23;;13570:6;;13554:23;;;;;;;;;;;;;;;;;;;;;:28;-1:-1:-1;;;;;13583:15:0;;;;:5;:15;;;;;;;:23;;13599:6;;13583:23;;;;;;;;;;;;;;:31;:23;;;;;:31;;;;;-1:-1:-1;;;;;13615:15:0;;;;;:5;:15;;;;;;;:23;;13583:31;;;;;13615:15;13631:6;;13615:23;;;;;;;;;;;;;;;;:30;;;13546:100;;;;;;13351:303;;;;;:::o;8960:26::-;;;;:::o;9038:55::-;;;;:::o;11581:256::-;11677:4;11645:3;13093:24;13108:8;13093:14;:24::i;:::-;13085:33;;;;;;;;2055:5;;-1:-1:-1;;;;;2055:5:0;2041:10;:19;2033:28;;;;;;7961:15;;-1:-1:-1;;;7961:15:0;;;;7960:16;7952:25;;;;;;11730:16;;11702:12;;:25;;11719:7;11702:25;:16;:25;:::i;:::-;:44;11698:88;;;11769:5;11762:12;;;;11698:88;11805:24;11816:3;11821:7;11805:10;:24::i;:::-;11798:31;;7986:1;11581:256;;;;;:::o;9646:266::-;2055:5;;-1:-1:-1;;;;;2055:5:0;2041:10;:19;2033:28;;;;;;9731:10;9722:8;:20;;;;;;;;;;;9712:30;;;9704:39;;;;;;9788:10;9779:8;:20;;;;;;;;;;;:32;;9804:6;9779:32;:24;:32;:::i;:::-;9765:10;9756:8;:20;;;;;;;;;;:55;9837:25;9855:6;9837:13;:11;:13::i;:::-;:17;:25;:17;:25;:::i;:::-;9822:12;:40;9880:24;;;;;;;;9885:10;;9880:24;;;;;;;;;;9646:266;:::o;7313:418::-;7439:10;7399:4;7431:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;7431:29:0;;;;;;;;;;7471:27;;;7467:168;;;7517:10;7541:1;7509:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;7509:29:0;;;;;;;;;:33;7467:168;;;7597:30;:8;7610:16;7597:30;:12;:30;:::i;:::-;7573:10;7565:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;7565:29:0;;;;;;;;;:62;7467:168;7655:10;7677:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;7646:61:0;;7677:29;;;;;;;;;;;7646:61;;;;;;;;;7655:10;7646:61;;;;;;;;;;;-1:-1:-1;7721:4:0;;7313:418;-1:-1:-1;;;7313:418:0:o;3482:109::-;-1:-1:-1;;;;;3569:16:0;3538:15;3569:16;;;;;;;;;;;;3482:109::o;8993:38::-;;;;;;:::o;12111:85::-;2055:5;;-1:-1:-1;;;;;2055:5:0;2041:10;:19;2033:28;;;;;;12163:17;:25;;-1:-1:-1;;12163:25:0;;;12111:85::o;8637:158::-;2055:5;;8696:4;;-1:-1:-1;;;;;2055:5:0;2041:10;:19;2033:28;;;;;;7961:15;;-1:-1:-1;;;7961:15:0;;;;7960:16;7952:25;;;;;;8713:15;:22;;-1:-1:-1;;8713:22:0;-1:-1:-1;;;8713:22:0;;;8751:14;;;;8713:22;;8751:14;-1:-1:-1;8783:4:0;8637:158;:::o;11171:402::-;11249:7;11326:13;11353:6;11233:5;13093:24;13108:8;13093:14;:24::i;:::-;13085:33;;;;;;;;11271:10;-1:-1:-1;;;;;11271:19:0;;;;:42;;-1:-1:-1;11308:5:0;;-1:-1:-1;;;;;11308:5:0;11294:10;:19;11271:42;11262:52;;;;;;;;11342:1;11326:17;;11360:1;11353:8;;11348:199;-1:-1:-1;;;;;11367:12:0;;;;;;:5;:12;;;;;:19;11363:23;;11348:199;;;-1:-1:-1;;;;;11403:12:0;;;;;;:5;:12;;;;;:15;;11426:3;;11403:12;11416:1;;11403:15;;;;;;;;;;;;;;;;:20;;;:26;:62;;;;-1:-1:-1;;;;;;11433:32:0;;:12;;;;:5;:12;;;;;:15;;11446:1;;11433:15;;;;;;;;;;;;;;:23;:15;;;;;:23;;-1:-1:-1;;;;;11433:23:0;:32;11403:62;11399:143;;;-1:-1:-1;;;;;11496:12:0;;;;;;:5;:12;;;;;:15;;11486:33;;11496:12;11509:1;;11496:15;;;;;;;;;;;;;;;;:22;;;11486:5;:9;;:33;;;;:::i;:::-;11478:41;;11399:143;11388:3;;;;;11348:199;;;-1:-1:-1;11563:5:0;;11171:402;-1:-1:-1;;;11171:402:0:o;9361:277::-;2055:5;;-1:-1:-1;;;;;2055:5:0;2041:10;:19;2033:28;;;;;;7961:15;;-1:-1:-1;;;7961:15:0;;;;7960:16;7952:25;;;;;;-1:-1:-1;;;;;9464:16:0;;:8;:16;;;;;;;;;;;9454:26;;;9446:35;;;;;;-1:-1:-1;;;;;9513:16:0;;:8;:16;;;;;;;;;;;:28;;9534:6;9513:28;:20;:28;:::i;:::-;-1:-1:-1;;;;;9494:16:0;;:8;:16;;;;;;;;;;:47;9567:25;9585:6;9567:13;:11;:13::i;:25::-;9552:12;:40;9610:20;;;;;;;;-1:-1:-1;;;;;9610:20:0;;;;;;;;;;;;;9361:277;;:::o;1627:20::-;;;-1:-1:-1;;;;;1627:20:0;;:::o;8923:30::-;;;;;;;;;;;;;;;-1:-1:-1;;8923:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10692:474;10788:4;10798:13;10831:6;10772:5;13093:24;13108:8;13093:14;:24::i;:::-;13085:33;;;;;;;;10814:1;10798:17;;10838:1;10831:8;;10826:223;-1:-1:-1;;;;;10845:12:0;;;;;;:5;:12;;;;;:19;10841:23;;10826:223;;;-1:-1:-1;;;;;10890:12:0;;;;;;:5;:12;;;;;:15;;10913:3;;10890:12;10903:1;;10890:15;;;;;;;;;;;;;;;;:20;;;:26;:62;;;;-1:-1:-1;;;;;;10920:32:0;;:12;;;;:5;:12;;;;;:15;;10933:1;;10920:15;;;;;;;;;;;;;;:23;:15;;;;;:23;;-1:-1:-1;;;;;10920:23:0;:32;10890:62;10886:152;;;-1:-1:-1;;;;;10983:12:0;;;;;;:5;:12;;;;;:15;;10973:33;;10983:12;10996:1;;10983:15;;;;;10973:33;10965:41;;10886:152;10866:3;;;;;10826:223;;;11070:27;11091:5;11070:16;11080:5;11070:9;:16::i;:27::-;11062:5;:35;11057:80;;;11120:5;11113:12;;;;11057:80;11154:4;11147:11;;13130:1;10692:474;;;;;;;:::o;13151:126::-;2055:5;;13221:7;;-1:-1:-1;;;;;2055:5:0;2041:10;:19;2033:28;;;;;;-1:-1:-1;;;;;;13247:15:0;;;;;:5;:15;;;;;:22;;13151:126::o;11847:256::-;11928:4;11914:3;13093:24;13108:8;13093:14;:24::i;:::-;13085:33;;;;;;;;11952:17;;;;;:40;;-1:-1:-1;11987:5:0;;-1:-1:-1;;;;;11987:5:0;11973:10;:19;11952:40;11944:49;;;;;;;;12012:35;12028:10;12040:6;12012:15;:35::i;:::-;12004:44;;;;;;;;12068:27;12083:3;12088:6;12068:14;:27::i;12296:160::-;2055:5;;-1:-1:-1;;;;;2055:5:0;2041:10;:19;2033:28;;;;;;-1:-1:-1;;;;;12384:15:0;;;;;;:5;:15;;;;;12377:22;;;:::i;:::-;-1:-1:-1;;;;;12421:15:0;;12446:1;12421:15;;;:5;:15;;;;;:26;;12446:1;12421:26;:::i;:::-;;12296:160;:::o;12204:86::-;2055:5;;-1:-1:-1;;;;;2055:5:0;2041:10;:19;2033:28;;;;;;12258:17;:24;;-1:-1:-1;;12258:24:0;12278:4;12258:24;;;12204:86::o;6570:269::-;6704:10;6651:4;6696:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;6696:29:0;;;;;;;;;;:46;;6730:11;6696:46;:33;:46;:::i;:::-;6672:10;6664:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;6664:29:0;;;;;;;;;;;;:78;;;6754:61;;;;;;6664:29;;6754:61;;;;;;;;;;;-1:-1:-1;6829:4:0;6570:269;;;;:::o;5981:128::-;-1:-1:-1;;;;;6078:15:0;;;6055:7;6078:15;;;:7;:15;;;;;;;;:25;;;;;;;;;;;;;5981:128::o;10212:472::-;10306:4;10478:26;;:::i;:::-;2055:5;;-1:-1:-1;;;;;2055:5:0;2041:10;:19;2033:28;;;;;;10515:27;;;-1:-1:-1;10553:15:0;;;;:28;;;-1:-1:-1;;;;;10592:22:0;;;:16;;;;:22;;;-1:-1:-1;10627:10:0;;;:5;:10;;;;;27::-1;;39:1;23:18;;;45:23;;10627:25:0;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10627:25:0;;;;;;;;;;;;;;;39:1:-1;10212:472:0:o;12464:372::-;2055:5;;12612:9;;-1:-1:-1;;;;;2055:5:0;2041:10;:19;2033:28;;;;;;-1:-1:-1;;;;;12568:15:0;;;;;;:5;:15;;;;;:22;12558:32;;12554:45;;12592:7;;12554:45;-1:-1:-1;12624:6:0;12607:131;-1:-1:-1;;;;;12636:15:0;;;;;;:5;:15;;;;;:22;-1:-1:-1;;12636:24:0;12632:28;;12607:131;;;-1:-1:-1;;;;;12706:15:0;;;;;;:5;:15;;;;;:20;;12724:1;12722:3;;;12706:20;;;;;;;;;;;;;;;;12685:5;:15;12691:8;-1:-1:-1;;;;;12685:15:0;-1:-1:-1;;;;;12685:15:0;;;;;;;;;;;;12701:1;12685:18;;;;;;;;;;;;;;;;;;:41;;:18;;;;;:41;;;;;;;;;;;;;-1:-1:-1;;12685:41:0;-1:-1:-1;;;;;12685:41:0;;;;;;;;;;;;;;;;;;;;;;12662:3;12607:131;;;-1:-1:-1;;;;;12758:15:0;;;;;;:5;:15;;;;;12774:22;;-1:-1:-1;;12774:24:0;;;12758:41;;;;;;;;;;;;;;;;;;;;;12751:48;;;;;;;;-1:-1:-1;;12751:48:0;;;;;;;;-1:-1:-1;;;;;12804:15:0;;;;:5;:15;;;;;:24;;;;;-1:-1:-1;;12804:24:0;;;:::i;:::-;;2068:1;12464:372;;;:::o;2242:178::-;2055:5;;-1:-1:-1;;;;;2055:5:0;2041:10;:19;2033:28;;;;;;-1:-1:-1;;;;;2319:22:0;;;;2311:31;;;;;;2375:5;;2354:37;;-1:-1:-1;;;;;2354:37:0;;;;2375:5;;2354:37;;2375:5;;2354:37;2398:5;:16;;-1:-1:-1;;2398:16:0;-1:-1:-1;;;;;2398:16:0;;;;;;;;;;2242:178::o;4371:455::-;4453:4;-1:-1:-1;;;;;4474:17:0;;;;4466:26;;;;;;-1:-1:-1;;;;;4517:15:0;;:8;:15;;;;;;;;;;;4507:25;;;4499:34;;;;;;-1:-1:-1;;;;;4558:14:0;;;;;;:7;:14;;;;;;;;4573:10;4558:26;;;;;;;;4548:36;;;4540:45;;;;;;-1:-1:-1;;;;;4612:15:0;;:8;:15;;;;;;;;;;;:27;;4632:6;4612:27;:19;:27;:::i;:::-;-1:-1:-1;;;;;4594:15:0;;;:8;:15;;;;;;;;;;;:45;;;;4662:13;;;;;;;:25;;4680:6;4662:25;:17;:25;:::i;:::-;-1:-1:-1;;;;;4646:13:0;;;:8;:13;;;;;;;;;;;:41;;;;4723:14;;;;;:7;:14;;;;;4738:10;4723:26;;;;;;;:38;;4754:6;4723:38;:30;:38;:::i;:::-;-1:-1:-1;;;;;4694:14:0;;;;;;;:7;:14;;;;;;;;4709:10;4694:26;;;;;;;;:67;;;;4774:28;;;;;;;;;;;4694:14;;4774:28;;;;;;;;;;;-1:-1:-1;4816:4:0;4371:455;;;;;:::o;1465:133::-;1523:7;1551:5;;;1570:6;;;;1563:14;;;;1591:1;1465:133;-1:-1:-1;;;1465:133:0:o;8238:272::-;2055:5;;8316:4;;-1:-1:-1;;;;;2055:5:0;2041:10;:19;2033:28;;;;;;7961:15;;-1:-1:-1;;;7961:15:0;;;;7960:16;7952:25;;;;;;8342:12;;:25;;8359:7;8342:25;:16;:25;:::i;:::-;8327:12;:40;-1:-1:-1;;;;;8388:13:0;;:8;:13;;;;;;;;;;;:26;;8406:7;8388:26;:17;:26;:::i;:::-;-1:-1:-1;;;;;8372:13:0;;:8;:13;;;;;;;;;;;;:42;;;;8424:18;;;;;;;8372:13;;8424:18;;;;;;;;;8452:34;;;;;;;;-1:-1:-1;;;;;8452:34:0;;;8469:1;;8452:34;;;;;;;;;-1:-1:-1;8498:4:0;8238:272;;;;:::o;1285:113::-;1343:7;1366:6;;;;1359:14;;;;-1:-1:-1;1387:5:0;;;1285:113::o;2880:393::-;2943:4;-1:-1:-1;;;;;2964:17:0;;;;2956:26;;;;;;3016:10;3007:8;:20;;;;;;;;;;;2997:30;;;2989:39;;;;;;3133:10;3124:8;:20;;;;;;;;;;;:32;;3149:6;3124:32;:24;:32;:::i;:::-;3110:10;3101:8;:20;;;;;;;;;;;:55;;;;-1:-1:-1;;;;;3179:13:0;;;;;;:25;;3197:6;3179:25;:17;:25;:::i;:::-;-1:-1:-1;;;;;3163:13:0;;:8;:13;;;;;;;;;;;;:41;;;;3216:33;;;;;;;3163:13;;3225:10;;3216:33;;;;;;;;;;-1:-1:-1;3263:4:0;2880:393;;;;:::o;8802:4861::-;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8802:4861:0;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8802:4861:0;;;;;;;;;;;;;;

Swarm Source

bzzr://b8e0bf6826f5b83a5fa26c9417d4d83924ba356d0f2c56cb9cabff2e826d25ac
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.