ETH Price: $2,621.39 (-3.89%)

Token

PARADISE TOKEN (PDT)
 

Overview

Max Total Supply

10,000,000,000 PDT

Holders

554

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0 PDT

Value
$0.00
0x17fe8454ade36a6def39f9a7eea9a71c8bcc1203
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:
ParadiseToken

Compiler Version
v0.5.2+commit.1df8f40c

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2020-09-04
*/

pragma solidity ^0.5.2;

/**
 * @title SafeMath
 * @dev Math operations with safety checks that revert on error
 */
library SafeMath {
    /**
    * @dev Multiplies two numbers, reverts on overflow.
    */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "multiplication constraint voilated");
        return c;
    }

    /**
    * @dev Integer division of two numbers truncating the quotient, reverts on division by zero.
    */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0, "division constraint voilated");
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold
        return c;
    }

    /**
    * @dev Subtracts two numbers, reverts on overflow (i.e. if subtrahend is greater than minuend).
    */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a, "substracts constraint voilated");
        uint256 c = a - b;
        return c;
    }

    /**
    * @dev Adds two numbers, reverts on overflow.
    */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "addition constraint voilated");
        return c;
    }

    /**
    * @dev Divides two numbers and returns the remainder (unsigned integer modulo),
    * reverts when dividing by zero.
    */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b != 0, "divides contraint voilated");
        return a % b;
    }
}

/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */
contract Ownable {
  address public owner;
  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
  /**
   * @dev The Ownable constructor sets the original `owner` of the contract to the sender
   * account.
   */
  constructor() public{
    owner = msg.sender;
  }
  /**
   * @dev Throws if called by any account other than the owner.
   */
  modifier onlyOwner() {
    require(msg.sender == owner, "Ownable: only owner can execute");
    _;
  }
  /**
   * @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), "Ownable: new owner should not empty");
    emit OwnershipTransferred(owner, newOwner);
    owner = newOwner;
  }
}
contract Pausable is Ownable {
  event Pause();
  event Unpause();

  bool public paused = false;

  /**
   * @dev modifier to allow actions only when the contract IS paused
   */
  modifier whenNotPaused() {
    require(!paused, "Pausable: contract not paused");
    _;
  }
  /**
   * @dev modifier to allow actions only when the contract IS NOT paused
   */
  modifier whenPaused {
    require(paused, "Pausable: contract paused");
    _;
  }
  /**
   * @dev called by the owner to pause, triggers stopped state
   */
  function pause() public onlyOwner whenNotPaused returns (bool) {
    paused = true;
    emit Pause();
    return true;
  }

  /**
   * @dev called by the owner to unpause, returns to normal state
   */
  function unpause() public onlyOwner whenPaused returns (bool) {
    paused = false;
    emit Unpause();
    return true;
  }
}


/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic {
  uint256 public totalSupply;
  function balanceOf(address who) public view returns (uint256);
  function transfer(address to, uint256 value) public returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}
/**
 * @title Basic token
 * @dev Basic version of StandardToken, with no allowances.
 */
contract BasicToken is ERC20Basic {
  using SafeMath for uint256;
  mapping(address => uint256) balances;
  
  /**
  * @dev transfer token for a specified address
  * @param _to The address to transfer to.
  * @param _value The amount to be transferred.
  */
  function transfer(address _to, uint256 _value) public returns (bool) {
    require(_to != address(0), "BasicToken: require to address");
    // 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];
  }
}
/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
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);
}
/**
 * @title Standard ERC20 token
 *
 * @dev Implementation of the basic standard token.
 * @dev https://github.com/ethereum/EIPs/issues/20
 * @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
 */
contract StandardToken is ERC20, BasicToken {
  mapping (address => mapping (address => uint256)) allowed;
  /**
   * @dev Transfer tokens from one address to another
   * @param _from address The address which you want to send tokens from
   * @param _to address The address which you want to transfer to
   * @param _value uint256 the amount of tokens to be transferred
   */
  function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
    require(_to != address(0), "StandardToken: receiver address empty");
    uint256 _allowance = allowed[_from][msg.sender];
    // Check is not needed because sub(_allowance, _value) will already throw if this condition is not met
    // require (_value <= _allowance);
    balances[_from] = balances[_from].sub(_value);
    balances[_to] = balances[_to].add(_value);
    allowed[_from][msg.sender] = _allowance.sub(_value);
    emit Transfer(_from, _to, _value);
    return true;
  }
  /**
   * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
   *
   * Beware that changing an allowance with this method brings the risk that someone may use both the old
   * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
   * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
   * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
   * @param _spender The address which will spend the funds.
   * @param _value The amount of tokens to be spent.
   */
  function approve(address _spender, uint256 _value) public returns (bool) {
    require(_spender != address(0), "StandardToken: spender address empty");
    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 remaining) {
    return allowed[_owner][_spender];
  }
  /**
   * approve should be called when allowed[_spender] == 0. To increment
   * allowed value is better to use this function to avoid 2 calls (and wait until
   * the first transaction is mined)
   * From MonolithDAO Token.sol
   */
  function increaseApproval (address _spender, uint256 _addedValue) public
    returns (bool success) {
    require(_spender != address(0), "StandardToken: spender address empty");
    allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
    emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }
  function decreaseApproval (address _spender, uint256 _subtractedValue) public
    returns (bool success) {
    require(_spender != address(0), "StandardToken: spender address empty");
    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 BurnableToken is StandardToken {

    /**
     * @dev Burns a specified amount of tokens.
     * @param _value The amount of tokens to burn. 
     */
    function burn(uint256 _value) public {
        require(_value > 0, "BurnableToken: value must be greterthan 0");

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

}

contract PausableToken is StandardToken, Pausable {
    mapping (address => bool) frozenAccount;
    event FrozenFunds(address target, bool frozen);

    /// @notice `freeze? Prevent | Allow` `target` from sending & receiving tokens
    /// @param target Address to be frozen
    /// @param freeze either to freeze it or not
    function freezeAccount(address target, bool freeze) onlyOwner public returns(bool){
        frozenAccount[target] = freeze;
        emit FrozenFunds(target, freeze);
        return true;
    }
     
  function transfer(address _to, uint256 _value)public whenNotPaused returns (bool) {
     require(!frozenAccount[msg.sender], "Sending Tokens from frozen account restricted!");
    return super.transfer(_to, _value);
  }

  function transferFrom(address _from, address _to, uint256 _value) public whenNotPaused returns (bool) {
   require(!frozenAccount[_from], "Sending Tokens from frozen account restricted!");
    return super.transferFrom(_from, _to, _value);
  }
  
  function approve(address _spender, uint256 _value) public whenNotPaused returns (bool) {
    return super.approve(_spender, _value);
  }

  function increaseApproval(address _spender, uint _addedValue) public whenNotPaused returns (bool success) {
    return super.increaseApproval(_spender, _addedValue);
  }

  function decreaseApproval(address _spender, uint _subtractedValue) public whenNotPaused returns (bool success) {
    return super.decreaseApproval(_spender, _subtractedValue);
  }
}

contract ParadiseToken is  PausableToken, BurnableToken {
    string public name = "PARADISE TOKEN";
    string public symbol = "PDT";
    uint8 public decimals = 18; 
    uint256 public  initialSupply = 10000000000 * (10 ** uint256(decimals));
    // Constructor
    constructor() public {
        totalSupply = initialSupply;
        balances[msg.sender] = initialSupply; // Send all tokens to owner
        emit Transfer(address(0), msg.sender, initialSupply);
    }
    //send ethers
    function transferEther(address payable _receiver, uint256 _value) public onlyOwner payable{
        address(_receiver).transfer(_value);
    }
    
    //Receive ether 
    function () external payable {
    }
    
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"_receiver","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferEther","outputs":[],"payable":true,"stateMutability":"payable","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":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"initialSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unpause","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":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"freeze","type":"bool"}],"name":"freezeAccount","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"target","type":"address"},{"indexed":false,"name":"frozen","type":"bool"}],"name":"FrozenFunds","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","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"}]

60806040526000600360146101000a81548160ff0219169083151502179055506040805190810160405280600e81526020017f504152414449534520544f4b454e000000000000000000000000000000000000815250600590805190602001906200006c92919062000203565b506040805190810160405280600381526020017f504454000000000000000000000000000000000000000000000000000000000081525060069080519060200190620000ba92919062000203565b506012600760006101000a81548160ff021916908360ff160217905550600760009054906101000a900460ff1660ff16600a0a6402540be400026008553480156200010457600080fd5b5033600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600854600081905550600854600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6008546040518082815260200191505060405180910390a3620002b2565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200024657805160ff191683800117855562000277565b8280016001018555821562000277579182015b828111156200027657825182559160200191906001019062000259565b5b5090506200028691906200028a565b5090565b620002af91905b80821115620002ab57600081600090555060010162000291565b5090565b90565b6126ff80620002c26000396000f3fe60806040526004361061013c576000357c01000000000000000000000000000000000000000000000000000000009004806366188463116100bd578063a9059cbb11610081578063a9059cbb14610630578063d73dd623146106a3578063dd62ed3e14610716578063e724529c1461079b578063f2fde38b146108105761013c565b8063661884631461044257806370a08231146104b55780638456cb591461051a5780638da5cb5b1461054957806395d89b41146105a05761013c565b8063313ce56711610104578063313ce5671461034d578063378dc3dc1461037e5780633f4ba83a146103a957806342966c68146103d85780635c975abb146104135761013c565b806305b1137b1461013e57806306fdde031461018c578063095ea7b31461021c57806318160ddd1461028f57806323b872dd146102ba575b005b61018a6004803603604081101561015457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610861565b005b34801561019857600080fd5b506101a1610971565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101e15780820151818401526020810190506101c6565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561022857600080fd5b506102756004803603604081101561023f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a0f565b604051808215151515815260200191505060405180910390f35b34801561029b57600080fd5b506102a4610aa8565b6040518082815260200191505060405180910390f35b3480156102c657600080fd5b50610333600480360360608110156102dd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610aae565b604051808215151515815260200191505060405180910390f35b34801561035957600080fd5b50610362610bee565b604051808260ff1660ff16815260200191505060405180910390f35b34801561038a57600080fd5b50610393610c01565b6040518082815260200191505060405180910390f35b3480156103b557600080fd5b506103be610c07565b604051808215151515815260200191505060405180910390f35b3480156103e457600080fd5b50610411600480360360208110156103fb57600080fd5b8101908080359060200190929190505050610da0565b005b34801561041f57600080fd5b50610428610f1a565b604051808215151515815260200191505060405180910390f35b34801561044e57600080fd5b5061049b6004803603604081101561046557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f2d565b604051808215151515815260200191505060405180910390f35b3480156104c157600080fd5b50610504600480360360208110156104d857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fc6565b6040518082815260200191505060405180910390f35b34801561052657600080fd5b5061052f61100f565b604051808215151515815260200191505060405180910390f35b34801561055557600080fd5b5061055e6111a9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156105ac57600080fd5b506105b56111cf565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105f55780820151818401526020810190506105da565b50505050905090810190601f1680156106225780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561063c57600080fd5b506106896004803603604081101561065357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061126d565b604051808215151515815260200191505060405180910390f35b3480156106af57600080fd5b506106fc600480360360408110156106c657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113ab565b604051808215151515815260200191505060405180910390f35b34801561072257600080fd5b506107856004803603604081101561073957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611444565b6040518082815260200191505060405180910390f35b3480156107a757600080fd5b506107f6600480360360408110156107be57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035151590602001909291905050506114cb565b604051808215151515815260200191505060405180910390f35b34801561081c57600080fd5b5061085f6004803603602081101561083357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611662565b005b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610926576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4f776e61626c653a206f6e6c79206f776e65722063616e20657865637574650081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561096c573d6000803e3d6000fd5b505050565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a075780601f106109dc57610100808354040283529160200191610a07565b820191906000526020600020905b8154815290600101906020018083116109ea57829003601f168201915b505050505081565b6000600360149054906101000a900460ff16151515610a96576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f5061757361626c653a20636f6e7472616374206e6f742070617573656400000081525060200191505060405180910390fd5b610aa0838361186f565b905092915050565b60005481565b6000600360149054906101000a900460ff16151515610b35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f5061757361626c653a20636f6e7472616374206e6f742070617573656400000081525060200191505060405180910390fd5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515610bda576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180612681602e913960400191505060405180910390fd5b610be58484846119e8565b90509392505050565b600760009054906101000a900460ff1681565b60085481565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610cce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4f776e61626c653a206f6e6c79206f776e65722063616e20657865637574650081525060200191505060405180910390fd5b600360149054906101000a900460ff161515610d52576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f5061757361626c653a20636f6e7472616374207061757365640000000000000081525060200191505060405180910390fd5b6000600360146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a16001905090565b600081111515610dfb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260298152602001806126116029913960400191505060405180910390fd5b6000339050610e5282600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d2090919063ffffffff16565b600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610eaa82600054611d2090919063ffffffff16565b600081905550600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050565b600360149054906101000a900460ff1681565b6000600360149054906101000a900460ff16151515610fb4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f5061757361626c653a20636f6e7472616374206e6f742070617573656400000081525060200191505060405180910390fd5b610fbe8383611dab565b905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4f776e61626c653a206f6e6c79206f776e65722063616e20657865637574650081525060200191505060405180910390fd5b600360149054906101000a900460ff1615151561115b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f5061757361626c653a20636f6e7472616374206e6f742070617573656400000081525060200191505060405180910390fd5b6001600360146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a16001905090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112655780601f1061123a57610100808354040283529160200191611265565b820191906000526020600020905b81548152906001019060200180831161124857829003601f168201915b505050505081565b6000600360149054906101000a900460ff161515156112f4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f5061757361626c653a20636f6e7472616374206e6f742070617573656400000081525060200191505060405180910390fd5b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515611399576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180612681602e913960400191505060405180910390fd5b6113a383836120c4565b905092915050565b6000600360149054906101000a900460ff16151515611432576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f5061757361626c653a20636f6e7472616374206e6f742070617573656400000081525060200191505060405180910390fd5b61143c8383612303565b905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611592576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4f776e61626c653a206f6e6c79206f776e65722063616e20657865637574650081525060200191505060405180910390fd5b81600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a58383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a16001905092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611727576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4f776e61626c653a206f6e6c79206f776e65722063616e20657865637574650081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156117af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602381526020018061263a6023913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156118f8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061265d6024913960400191505060405180910390fd5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611a71576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806126af6025913960400191505060405180910390fd5b6000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050611b4483600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d2090919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611bd983600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461258690919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c2f8382611d2090919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b6000828211151515611d9a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f7375627374726163747320636f6e73747261696e7420766f696c61746564000081525060200191505060405180910390fd5b600082840390508091505092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611e34576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061265d6024913960400191505060405180910390fd5b6000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115611f44576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611fd8565b611f578382611d2090919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561216a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f4261736963546f6b656e3a207265717569726520746f2061646472657373000081525060200191505060405180910390fd5b6121bc82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d2090919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061225182600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461258690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561238c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061265d6024913960400191505060405180910390fd5b61241b82600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461258690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000808284019050838110151515612606576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f6164646974696f6e20636f6e73747261696e7420766f696c617465640000000081525060200191505060405180910390fd5b809150509291505056fe4275726e61626c65546f6b656e3a2076616c7565206d757374206265206772657465727468616e20304f776e61626c653a206e6577206f776e65722073686f756c64206e6f7420656d7074795374616e64617264546f6b656e3a207370656e646572206164647265737320656d70747953656e64696e6720546f6b656e732066726f6d2066726f7a656e206163636f756e742072657374726963746564215374616e64617264546f6b656e3a207265636569766572206164647265737320656d707479a165627a7a72305820a36c9881458fb97ba61dcbf4060d17c975d95117091bc7eb9321f871fa451ac50029

Deployed Bytecode

0x60806040526004361061013c576000357c01000000000000000000000000000000000000000000000000000000009004806366188463116100bd578063a9059cbb11610081578063a9059cbb14610630578063d73dd623146106a3578063dd62ed3e14610716578063e724529c1461079b578063f2fde38b146108105761013c565b8063661884631461044257806370a08231146104b55780638456cb591461051a5780638da5cb5b1461054957806395d89b41146105a05761013c565b8063313ce56711610104578063313ce5671461034d578063378dc3dc1461037e5780633f4ba83a146103a957806342966c68146103d85780635c975abb146104135761013c565b806305b1137b1461013e57806306fdde031461018c578063095ea7b31461021c57806318160ddd1461028f57806323b872dd146102ba575b005b61018a6004803603604081101561015457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610861565b005b34801561019857600080fd5b506101a1610971565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101e15780820151818401526020810190506101c6565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561022857600080fd5b506102756004803603604081101561023f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a0f565b604051808215151515815260200191505060405180910390f35b34801561029b57600080fd5b506102a4610aa8565b6040518082815260200191505060405180910390f35b3480156102c657600080fd5b50610333600480360360608110156102dd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610aae565b604051808215151515815260200191505060405180910390f35b34801561035957600080fd5b50610362610bee565b604051808260ff1660ff16815260200191505060405180910390f35b34801561038a57600080fd5b50610393610c01565b6040518082815260200191505060405180910390f35b3480156103b557600080fd5b506103be610c07565b604051808215151515815260200191505060405180910390f35b3480156103e457600080fd5b50610411600480360360208110156103fb57600080fd5b8101908080359060200190929190505050610da0565b005b34801561041f57600080fd5b50610428610f1a565b604051808215151515815260200191505060405180910390f35b34801561044e57600080fd5b5061049b6004803603604081101561046557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f2d565b604051808215151515815260200191505060405180910390f35b3480156104c157600080fd5b50610504600480360360208110156104d857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fc6565b6040518082815260200191505060405180910390f35b34801561052657600080fd5b5061052f61100f565b604051808215151515815260200191505060405180910390f35b34801561055557600080fd5b5061055e6111a9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156105ac57600080fd5b506105b56111cf565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105f55780820151818401526020810190506105da565b50505050905090810190601f1680156106225780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561063c57600080fd5b506106896004803603604081101561065357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061126d565b604051808215151515815260200191505060405180910390f35b3480156106af57600080fd5b506106fc600480360360408110156106c657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113ab565b604051808215151515815260200191505060405180910390f35b34801561072257600080fd5b506107856004803603604081101561073957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611444565b6040518082815260200191505060405180910390f35b3480156107a757600080fd5b506107f6600480360360408110156107be57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035151590602001909291905050506114cb565b604051808215151515815260200191505060405180910390f35b34801561081c57600080fd5b5061085f6004803603602081101561083357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611662565b005b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610926576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4f776e61626c653a206f6e6c79206f776e65722063616e20657865637574650081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561096c573d6000803e3d6000fd5b505050565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a075780601f106109dc57610100808354040283529160200191610a07565b820191906000526020600020905b8154815290600101906020018083116109ea57829003601f168201915b505050505081565b6000600360149054906101000a900460ff16151515610a96576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f5061757361626c653a20636f6e7472616374206e6f742070617573656400000081525060200191505060405180910390fd5b610aa0838361186f565b905092915050565b60005481565b6000600360149054906101000a900460ff16151515610b35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f5061757361626c653a20636f6e7472616374206e6f742070617573656400000081525060200191505060405180910390fd5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515610bda576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180612681602e913960400191505060405180910390fd5b610be58484846119e8565b90509392505050565b600760009054906101000a900460ff1681565b60085481565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610cce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4f776e61626c653a206f6e6c79206f776e65722063616e20657865637574650081525060200191505060405180910390fd5b600360149054906101000a900460ff161515610d52576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f5061757361626c653a20636f6e7472616374207061757365640000000000000081525060200191505060405180910390fd5b6000600360146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a16001905090565b600081111515610dfb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260298152602001806126116029913960400191505060405180910390fd5b6000339050610e5282600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d2090919063ffffffff16565b600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610eaa82600054611d2090919063ffffffff16565b600081905550600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050565b600360149054906101000a900460ff1681565b6000600360149054906101000a900460ff16151515610fb4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f5061757361626c653a20636f6e7472616374206e6f742070617573656400000081525060200191505060405180910390fd5b610fbe8383611dab565b905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110d6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4f776e61626c653a206f6e6c79206f776e65722063616e20657865637574650081525060200191505060405180910390fd5b600360149054906101000a900460ff1615151561115b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f5061757361626c653a20636f6e7472616374206e6f742070617573656400000081525060200191505060405180910390fd5b6001600360146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a16001905090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112655780601f1061123a57610100808354040283529160200191611265565b820191906000526020600020905b81548152906001019060200180831161124857829003601f168201915b505050505081565b6000600360149054906101000a900460ff161515156112f4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f5061757361626c653a20636f6e7472616374206e6f742070617573656400000081525060200191505060405180910390fd5b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515611399576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e815260200180612681602e913960400191505060405180910390fd5b6113a383836120c4565b905092915050565b6000600360149054906101000a900460ff16151515611432576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f5061757361626c653a20636f6e7472616374206e6f742070617573656400000081525060200191505060405180910390fd5b61143c8383612303565b905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611592576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4f776e61626c653a206f6e6c79206f776e65722063616e20657865637574650081525060200191505060405180910390fd5b81600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a58383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a16001905092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611727576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4f776e61626c653a206f6e6c79206f776e65722063616e20657865637574650081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156117af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602381526020018061263a6023913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156118f8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061265d6024913960400191505060405180910390fd5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611a71576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806126af6025913960400191505060405180910390fd5b6000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050611b4483600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d2090919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611bd983600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461258690919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c2f8382611d2090919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b6000828211151515611d9a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f7375627374726163747320636f6e73747261696e7420766f696c61746564000081525060200191505060405180910390fd5b600082840390508091505092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611e34576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061265d6024913960400191505060405180910390fd5b6000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115611f44576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611fd8565b611f578382611d2090919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561216a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f4261736963546f6b656e3a207265717569726520746f2061646472657373000081525060200191505060405180910390fd5b6121bc82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d2090919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061225182600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461258690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561238c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061265d6024913960400191505060405180910390fd5b61241b82600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461258690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000808284019050838110151515612606576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f6164646974696f6e20636f6e73747261696e7420766f696c617465640000000081525060200191505060405180910390fd5b809150509291505056fe4275726e61626c65546f6b656e3a2076616c7565206d757374206265206772657465727468616e20304f776e61626c653a206e6577206f776e65722073686f756c64206e6f7420656d7074795374616e64617264546f6b656e3a207370656e646572206164647265737320656d70747953656e64696e6720546f6b656e732066726f6d2066726f7a656e206163636f756e742072657374726963746564215374616e64617264546f6b656e3a207265636569766572206164647265737320656d707479a165627a7a72305820a36c9881458fb97ba61dcbf4060d17c975d95117091bc7eb9321f871fa451ac50029

Deployed Bytecode Sourcemap

11611:728:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12115:144;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12115:144:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11674:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11674:37:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;11674:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11102:138;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11102:138:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11102:138:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4065:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4065:26:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10848:246;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10848:246:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10848:246:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;11753:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11753:26:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;11787:71;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11787:71:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3770:128;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3770:128:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9746:322;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9746:322:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9746:322:0;;;;;;;;;;;;;;;;;:::i;:::-;;3086:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3086:26:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;11423:181;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11423:181:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11423:181:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5260:109;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5260:109:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5260:109:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3557:126;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3557:126:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2153:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2153:20:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;11718:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11718:28:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;11718:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10620:222;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10620:222:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10620:222:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;11246:171;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11246:171:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11246:171:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;8309:138;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8309:138:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8309:138:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10413:196;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10413:196:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10413:196:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2790:217;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2790:217:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2790:217:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;12115:144;2570:5;;;;;;;;;;;2556:19;;:10;:19;;;2548:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12224:9;12216:27;;:35;12244:6;12216:35;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12216:35:0;12115:144;;:::o;11674:37::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;11102:138::-;11183:4;3244:6;;;;;;;;;;;3243:7;3235:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11203:31;11217:8;11227:6;11203:13;:31::i;:::-;11196:38;;11102:138;;;;:::o;4065:26::-;;;;:::o;10848:246::-;10944:4;3244:6;;;;;;;;;;;3243:7;3235:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10965:13;:20;10979:5;10965:20;;;;;;;;;;;;;;;;;;;;;;;;;10964:21;10956:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11050:38;11069:5;11076:3;11081:6;11050:18;:38::i;:::-;11043:45;;10848:246;;;;;:::o;11753:26::-;;;;;;;;;;;;;:::o;11787:71::-;;;;:::o;3770:128::-;3826:4;2570:5;;;;;;;;;;;2556:19;;:10;:19;;;2548:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3425:6;;;;;;;;;;;3417:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3848:5;3839:6;;:14;;;;;;;;;;;;;;;;;;3865:9;;;;;;;;;;3888:4;3881:11;;3770:128;:::o;9746:322::-;9811:1;9802:6;:10;9794:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9871:14;9888:10;9871:27;;9928:28;9949:6;9928:8;:16;9937:6;9928:16;;;;;;;;;;;;;;;;:20;;:28;;;;:::i;:::-;9909:8;:16;9918:6;9909:16;;;;;;;;;;;;;;;:47;;;;9981:23;9997:6;9981:11;;:15;;:23;;;;:::i;:::-;9967:11;:37;;;;10049:1;10020:40;;10029:10;10020:40;;;10053:6;10020:40;;;;;;;;;;;;;;;;;;9746:322;;:::o;3086:26::-;;;;;;;;;;;;;:::o;11423:181::-;11520:12;3244:6;;;;;;;;;;;3243:7;3235:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11548:50;11571:8;11581:16;11548:22;:50::i;:::-;11541:57;;11423:181;;;;:::o;5260:109::-;5316:15;5347:8;:16;5356:6;5347:16;;;;;;;;;;;;;;;;5340:23;;5260:109;;;:::o;3557:126::-;3614:4;2570:5;;;;;;;;;;;2556:19;;:10;:19;;;2548:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3244:6;;;;;;;;;;;3243:7;3235:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3636:4;3627:6;;:13;;;;;;;;;;;;;;;;;;3652:7;;;;;;;;;;3673:4;3666:11;;3557:126;:::o;2153:20::-;;;;;;;;;;;;;:::o;11718:28::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;10620:222::-;10696:4;3244:6;;;;;;;;;;;3243:7;3235:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10719:13;:25;10733:10;10719:25;;;;;;;;;;;;;;;;;;;;;;;;;10718:26;10710:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10809:27;10824:3;10829:6;10809:14;:27::i;:::-;10802:34;;10620:222;;;;:::o;11246:171::-;11338:12;3244:6;;;;;;;;;;;3243:7;3235:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11366:45;11389:8;11399:11;11366:22;:45::i;:::-;11359:52;;11246:171;;;;:::o;8309:138::-;8383:17;8416:7;:15;8424:6;8416:15;;;;;;;;;;;;;;;:25;8432:8;8416:25;;;;;;;;;;;;;;;;8409:32;;8309:138;;;;:::o;10413:196::-;10490:4;2570:5;;;;;;;;;;;2556:19;;:10;:19;;;2548:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10530:6;10506:13;:21;10520:6;10506:21;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;10552:27;10564:6;10572;10552:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10597:4;10590:11;;10413:196;;;;:::o;2790:217::-;2570:5;;;;;;;;;;;2556:19;;:10;:19;;;2548:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2887:1;2867:22;;:8;:22;;;;2859:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2969:8;2941:37;;2962:5;;;;;;;;;;;2941:37;;;;;;;;;;;;2993:8;2985:5;;:16;;;;;;;;;;;;;;;;;;2790:217;:::o;7714:270::-;7781:4;7822:1;7802:22;;:8;:22;;;;7794:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7904:6;7872:7;:19;7880:10;7872:19;;;;;;;;;;;;;;;:29;7892:8;7872:29;;;;;;;;;;;;;;;:38;;;;7943:8;7922:38;;7931:10;7922:38;;;7953:6;7922:38;;;;;;;;;;;;;;;;;;7974:4;7967:11;;7714:270;;;;:::o;6495:586::-;6577:4;6613:1;6598:17;;:3;:17;;;;6590:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6664:18;6685:7;:14;6693:5;6685:14;;;;;;;;;;;;;;;:26;6700:10;6685:26;;;;;;;;;;;;;;;;6664:47;;6884:27;6904:6;6884:8;:15;6893:5;6884:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;6866:8;:15;6875:5;6866:15;;;;;;;;;;;;;;;:45;;;;6934:25;6952:6;6934:8;:13;6943:3;6934:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;6918:8;:13;6927:3;6918:13;;;;;;;;;;;;;;;:41;;;;6995:22;7010:6;6995:10;:14;;:22;;;;:::i;:::-;6966:7;:14;6974:5;6966:14;;;;;;;;;;;;;;;:26;6981:10;6966:26;;;;;;;;;;;;;;;:51;;;;7045:3;7029:28;;7038:5;7029:28;;;7050:6;7029:28;;;;;;;;;;;;;;;;;;7071:4;7064:11;;;6495:586;;;;;:::o;1189:182::-;1247:7;1280:1;1275;:6;;1267:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1327:9;1343:1;1339;:5;1327:17;;1362:1;1355:8;;;1189:182;;;;:::o;9058:510::-;9150:12;9199:1;9179:22;;:8;:22;;;;9171:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9249:16;9268:7;:19;9276:10;9268:19;;;;;;;;;;;;;;;:29;9288:8;9268:29;;;;;;;;;;;;;;;;9249:48;;9327:8;9308:16;:27;9304:168;;;9378:1;9346:7;:19;9354:10;9346:19;;;;;;;;;;;;;;;:29;9366:8;9346:29;;;;;;;;;;;;;;;:33;;;;9304:168;;;9434:30;9447:16;9434:8;:12;;:30;;;;:::i;:::-;9402:7;:19;9410:10;9402:19;;;;;;;;;;;;;;;:29;9422:8;9402:29;;;;;;;;;;;;;;;:62;;;;9304:168;9504:8;9483:61;;9492:10;9483:61;;;9514:7;:19;9522:10;9514:19;;;;;;;;;;;;;;;:29;9534:8;9514:29;;;;;;;;;;;;;;;;9483:61;;;;;;;;;;;;;;;;;;9558:4;9551:11;;;9058:510;;;;:::o;4674:379::-;4737:4;4773:1;4758:17;;:3;:17;;;;4750:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4904:32;4929:6;4904:8;:20;4913:10;4904:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;4881:8;:20;4890:10;4881:20;;;;;;;;;;;;;;;:55;;;;4959:25;4977:6;4959:8;:13;4968:3;4959:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;4943:8;:13;4952:3;4943:13;;;;;;;;;;;;;;;:41;;;;5017:3;4996:33;;5005:10;4996:33;;;5022:6;4996:33;;;;;;;;;;;;;;;;;;5043:4;5036:11;;4674:379;;;;:::o;8693:361::-;8780:12;8829:1;8809:22;;:8;:22;;;;8801:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8911:46;8945:11;8911:7;:19;8919:10;8911:19;;;;;;;;;;;;;;;:29;8931:8;8911:29;;;;;;;;;;;;;;;;:33;;:46;;;;:::i;:::-;8879:7;:19;8887:10;8879:19;;;;;;;;;;;;;;;:29;8899:8;8879:29;;;;;;;;;;;;;;;:78;;;;8990:8;8969:61;;8978:10;8969:61;;;9000:7;:19;9008:10;9000:19;;;;;;;;;;;;;;;:29;9020:8;9000:29;;;;;;;;;;;;;;;;8969:61;;;;;;;;;;;;;;;;;;9044:4;9037:11;;8693:361;;;;:::o;1447:180::-;1505:7;1525:9;1541:1;1537;:5;1525:17;;1566:1;1561;:6;;1553:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1618:1;1611:8;;;1447:180;;;;:::o

Swarm Source

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