ETH Price: $3,156.09 (+1.18%)
Gas: 2 Gwei

Token

Jurasaur (JREX)
 

Overview

Max Total Supply

10,000,000,000 JREX

Holders

421

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 8 Decimals)

Balance
20,000 JREX

Value
$0.00
0x769cc2ebb444da610a6f8e8971612399914406e1
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:
Jurasaur

Compiler Version
v0.5.2+commit.1df8f40c

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-11-01
*/

pragma solidity ^0.5.2;

/**
 * @title SafeMath
 * @dev Unsigned math operations with safety checks that revert on error
 */
library SafeMath {
  /**
   * @dev Multiplies two unsigned integers, 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.
    // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522
    if (a == 0) {
      return 0;
    }

    uint256 c = a * b;
    require(c / a == b);

    return c;
  }

  /**
   * @dev Integer division of two unsigned integers 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);
    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 unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend).
   */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    require(b <= a);
    uint256 c = a - b;

    return c;
  }

  /**
   * @dev Adds two unsigned integers, reverts on overflow.
   */
  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    require(c >= a);

    return c;
  }

  /**
   * @dev Divides two unsigned integers 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);
    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 private _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() internal {
    _owner = msg.sender;
    emit OwnershipTransferred(address(0), _owner);
  }

  /**
   * @return the address of the owner.
   */
  function owner() public view returns (address) {
    return _owner;
  }

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

  /**
   * @return true if `msg.sender` is the owner of the contract.
   */
  function isOwner() public view returns (bool) {
    return msg.sender == _owner;
  }

  /**
   * @dev Allows the current owner to relinquish control of the contract.
   * @notice Renouncing to ownership will leave the contract without an owner.
   * It will not be possible to call the functions with the `onlyOwner`
   * modifier anymore.
   */
  function renounceOwnership() public onlyOwner {
    emit OwnershipTransferred(_owner, address(0));
    _owner = address(0);
  }

  /**
   * @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 {
    _transferOwnership(newOwner);
  }

  /**
   * @dev Transfers control of the contract to a newOwner.
   * @param newOwner The address to transfer ownership to.
   */
  function _transferOwnership(address newOwner) internal {
    require(newOwner != address(0));
    emit OwnershipTransferred(_owner, newOwner);
    _owner = newOwner;
  }
}

/**
 * @title Pausable
 * @dev Base contract which allows children to implement an emergency stop mechanism.
 */
contract Pausable is Ownable {
  event Paused(address account);
  event Unpaused(address account);

  bool private _paused;

  constructor() internal {
    _paused = false;
  }

  /**
   * @return true if the contract is paused, false otherwise.
   */
  function paused() public view returns (bool) {
    return _paused;
  }

  /**
   * @dev Modifier to make a function callable only when the contract is not paused.
   */
  modifier whenNotPaused() {
    require(!_paused);
    _;
  }

  /**
   * @dev Modifier to make a function callable only when the contract is paused.
   */
  modifier whenPaused() {
    require(_paused);
    _;
  }

  /**
   * @dev called by the owner to pause, triggers stopped state
   */
  function pause() public onlyOwner whenNotPaused {
    _paused = true;
    emit Paused(msg.sender);
  }

  /**
   * @dev called by the owner to unpause, returns to normal state
   */
  function unpause() public onlyOwner whenPaused {
    _paused = false;
    emit Unpaused(msg.sender);
  }
}

/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
interface IERC20 {
  function totalSupply() external view returns (uint256);

  function balanceOf(address who) external view returns (uint256);

  function allowance(address owner, address spender)
    external view returns (uint256);

  function transfer(address to, uint256 value) external returns (bool);

  function approve(address spender, uint256 value)
    external returns (bool);

  function transferFrom(address from, address to, uint256 value)
    external returns (bool);

  event Transfer(
    address indexed from,
    address indexed to,
    uint256 value
  );

  event Approval(
    address indexed owner,
    address indexed spender,
    uint256 value
  );
}

/**
 * @title Standard ERC20 token
 *
 * @dev Implementation of the basic standard token.
 * https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md
 * Originally based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
 *
 * This implementation emits additional Approval events, allowing applications to reconstruct the allowance status for
 * all accounts just by listening to said events. Note that this isn't required by the specification, and other
 * compliant implementations may not do it.
 */
contract ERC20 is IERC20 {
  using SafeMath for uint256;

  mapping (address => uint256) private _balances;

  mapping (address => mapping (address => uint256)) private _allowed;

  uint256 private _totalSupply;

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

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

  /**
   * @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 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) {
    _transfer(msg.sender, 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) {
    _approve(msg.sender, spender, value);
    return true;
  }

  /**
   * @dev Transfer tokens from one address to another.
   * Note that while this function emits an Approval event, this is not required as per the specification,
   * and other compliant implementations may not emit the event.
   * @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)
  {
    _transfer(from, to, value);
    _approve(from, msg.sender, _allowed[from][msg.sender].sub(value));
    return true;
  }

  /**
   * @dev Increase the amount of tokens that an owner allowed to a spender.
   * approve should be called when allowed_[_spender] == 0. To increment
   * allowed value is better to use this function to avoid 2 calls (and wait until
   * the first transaction is mined)
   * From MonolithDAO Token.sol
   * Emits an Approval event.
   * @param spender The address which will spend the funds.
   * @param addedValue The amount of tokens to increase the allowance by.
   */
  function increaseAllowance(
    address spender,
    uint256 addedValue
  )
    public
    returns (bool)
  {
    _approve(msg.sender, spender, _allowed[msg.sender][spender].add(addedValue));
    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
   * Emits an Approval event.
   * @param spender The address which will spend the funds.
   * @param subtractedValue The amount of tokens to decrease the allowance by.
   */
  function decreaseAllowance(
    address spender,
    uint256 subtractedValue
  )
    public
    returns (bool)
  {
    _approve(msg.sender, spender, _allowed[msg.sender][spender].sub(subtractedValue));
    return true;
  }

  /**
   * @dev Transfer token for a specified addresses
   * @param from The address to transfer from.
   * @param to The address to transfer to.
   * @param value The amount to be transferred.
   */
  function _transfer(address from, address to, uint256 value) internal {
    require(to != address(0));

    _balances[from] = _balances[from].sub(value);
    _balances[to] = _balances[to].add(value);
    emit Transfer(from, to, value);
  }

  /**
   * @dev Internal function that mints an amount of the token and assigns it to
   * an account. This encapsulates the modification of balances such that the
   * proper events are emitted.
   * @param account The account that will receive the created tokens.
   * @param value The amount that will be created.
   */
  function _mint(address account, uint256 value) internal {
    require(account != address(0));

    _totalSupply = _totalSupply.add(value);
    _balances[account] = _balances[account].add(value);
    emit Transfer(address(0), account, value);
  }

  /**
   * @dev Internal function that burns an amount of the token of a given
   * account.
   * @param account The account whose tokens will be burnt.
   * @param value The amount that will be burnt.
   */
  function _burn(address account, uint256 value) internal {
    require(account != address(0));

    _totalSupply = _totalSupply.sub(value);
    _balances[account] = _balances[account].sub(value);
    emit Transfer(account, address(0), value);
  }

  /**
   * @dev Approve an address to spend another addresses' tokens.
   * @param owner The address that owns the tokens.
   * @param spender The address that will spend the tokens.
   * @param value The number of tokens that can be spent.
   */
  function _approve(address owner, address spender, uint256 value) internal {
    require(spender != address(0));
    require(owner != address(0));

    _allowed[owner][spender] = value;
    emit Approval(owner, spender, value);
  }

  /**
   * @dev Internal function that burns an amount of the token of a given
   * account, deducting from the sender's allowance for said account. Uses the
   * internal burn function.
   * Emits an Approval event (reflecting the reduced allowance).
   * @param account The account whose tokens will be burnt.
   * @param value The amount that will be burnt.
   */
  function _burnFrom(address account, uint256 value) internal {
    _burn(account, value);
    _approve(account, msg.sender, _allowed[account][msg.sender].sub(value));
  }
}

/**
 * @title Burnable Token
 * @dev Token that can be irreversibly burned (destroyed).
 */
contract ERC20Burnable is ERC20 {
  /**
   * @dev Burns a specific amount of tokens.
   * @param value The amount of token to be burned.
   */
  function burn(uint256 value) public {
    _burn(msg.sender, value);
  }

  /**
   * @dev Burns a specific amount of tokens from the target address and decrements allowance
   * @param from address The account whose tokens will be burned.
   * @param value uint256 The amount of token to be burned.
   */
  function burnFrom(address from, uint256 value) public {
    _burnFrom(from, value);
  }
}

/**
 * @title ERC20Mintable
 * @dev ERC20 minting logic
 */
contract ERC20Mintable is ERC20, Ownable {
  /**
   * @dev Function to mint tokens
   * @param to The address that will receive the minted tokens.
   * @param value The amount of tokens to mint.
   * @return A boolean that indicates if the operation was successful.
   */
  function mint(
    address to,
    uint256 value
  )
    public
    onlyOwner
    returns (bool)
  {
    _mint(to, value);
    return true;
  }
}

/**
 * @title Pausable token
 * @dev ERC20 modified with pausable transfers.
 */
contract ERC20Pausable is ERC20, Pausable {
  function transfer(
    address to,
    uint256 value
  )
    public
    whenNotPaused
    returns (bool)
  {
    return super.transfer(to, value);
  }

  function transferFrom(
    address from,
    address to,
    uint256 value
  )
    public
    whenNotPaused
    returns (bool)
  {
    return super.transferFrom(from, to, value);
  }

  function approve(
    address spender,
    uint256 value
  )
    public
    whenNotPaused
    returns (bool)
  {
    return super.approve(spender, value);
  }

  function increaseAllowance(
    address spender,
    uint addedValue
  )
    public
    whenNotPaused
    returns (bool success)
  {
    return super.increaseAllowance(spender, addedValue);
  }

  function decreaseAllowance(
    address spender,
    uint subtractedValue
  )
    public
    whenNotPaused
    returns (bool success)
  {
    return super.decreaseAllowance(spender, subtractedValue);
  }
}

contract Jurasaur is ERC20Burnable, ERC20Mintable, ERC20Pausable {
  string public name = "Jurasaur";
  string public symbol = "JREX";
  uint public decimals = 8;
  uint256 public initialSupply = 10 * (10 ** 9);

  constructor() public {
    mint(msg.sender, initialSupply * (10 ** uint256(decimals)));
  }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"initialSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","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":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"value","type":"uint256"}],"name":"burnFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","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":"isOwner","outputs":[{"name":"","type":"bool"}],"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":"spender","type":"address"},{"name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","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":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":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"account","type":"address"}],"name":"Unpaused","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":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","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"}]

60806040526040805190810160405280600881526020017f4a757261736175720000000000000000000000000000000000000000000000008152506004908051906020019062000051929190620003fb565b506040805190810160405280600481526020017f4a52455800000000000000000000000000000000000000000000000000000000815250600590805190602001906200009f929190620003fb565b5060086006556402540be400600755348015620000bb57600080fd5b5033600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600360146101000a81548160ff021916908315150217905550620001b933600654600a0a60075402620001c0640100000000026401000000009004565b50620004aa565b6000620001db6200020c640100000000026401000000009004565b1515620001e757600080fd5b62000202838362000264640100000000026401000000009004565b6001905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515620002a157600080fd5b620002c681600254620003d96401000000000262001789179091906401000000009004565b6002819055506200032d816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054620003d96401000000000262001789179091906401000000009004565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6000808284019050838110151515620003f157600080fd5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200043e57805160ff19168380011785556200046f565b828001600101855582156200046f579182015b828111156200046e57825182559160200191906001019062000451565b5b5090506200047e919062000482565b5090565b620004a791905b80821115620004a357600081600090555060010162000489565b5090565b90565b6117d680620004ba6000396000f3fe608060405234801561001057600080fd5b506004361061015f576000357c01000000000000000000000000000000000000000000000000000000009004806370a08231116100d55780638f32d59b116100995780638f32d59b1461055757806395d89b4114610579578063a457c2d7146105fc578063a9059cbb14610662578063dd62ed3e146106c8578063f2fde38b146107405761015f565b806370a0823114610453578063715018a6146104ab57806379cc6790146104b55780638456cb59146105035780638da5cb5b1461050d5761015f565b8063378dc3dc11610127578063378dc3dc1461030f578063395093511461032d5780633f4ba83a1461039357806340c10f191461039d57806342966c68146104035780635c975abb146104315761015f565b806306fdde0314610164578063095ea7b3146101e757806318160ddd1461024d57806323b872dd1461026b578063313ce567146102f1575b600080fd5b61016c610784565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101ac578082015181840152602081019050610191565b50505050905090810190601f1680156101d95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610233600480360360408110156101fd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610822565b604051808215151515815260200191505060405180910390f35b610255610852565b6040518082815260200191505060405180910390f35b6102d76004803603606081101561028157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061085c565b604051808215151515815260200191505060405180910390f35b6102f961088e565b6040518082815260200191505060405180910390f35b610317610894565b6040518082815260200191505060405180910390f35b6103796004803603604081101561034357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061089a565b604051808215151515815260200191505060405180910390f35b61039b6108ca565b005b6103e9600480360360408110156103b357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610978565b604051808215151515815260200191505060405180910390f35b61042f6004803603602081101561041957600080fd5b81019080803590602001909291905050506109a1565b005b6104396109ae565b604051808215151515815260200191505060405180910390f35b6104956004803603602081101561046957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109c5565b6040518082815260200191505060405180910390f35b6104b3610a0d565b005b610501600480360360408110156104cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ae1565b005b61050b610aef565b005b610515610b9e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61055f610bc8565b604051808215151515815260200191505060405180910390f35b610581610c20565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105c15780820151818401526020810190506105a6565b50505050905090810190601f1680156105ee5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6106486004803603604081101561061257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610cbe565b604051808215151515815260200191505060405180910390f35b6106ae6004803603604081101561067857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610cee565b604051808215151515815260200191505060405180910390f35b61072a600480360360408110156106de57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d1e565b6040518082815260200191505060405180910390f35b6107826004803603602081101561075657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610da5565b005b60048054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561081a5780601f106107ef5761010080835404028352916020019161081a565b820191906000526020600020905b8154815290600101906020018083116107fd57829003601f168201915b505050505081565b6000600360149054906101000a900460ff1615151561084057600080fd5b61084a8383610dc4565b905092915050565b6000600254905090565b6000600360149054906101000a900460ff1615151561087a57600080fd5b610885848484610ddb565b90509392505050565b60065481565b60075481565b6000600360149054906101000a900460ff161515156108b857600080fd5b6108c28383610e8c565b905092915050565b6108d2610bc8565b15156108dd57600080fd5b600360149054906101000a900460ff1615156108f857600080fd5b6000600360146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b6000610982610bc8565b151561098d57600080fd5b6109978383610f31565b6001905092915050565b6109ab3382611085565b50565b6000600360149054906101000a900460ff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a15610bc8565b1515610a2057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610aeb82826111d9565b5050565b610af7610bc8565b1515610b0257600080fd5b600360149054906101000a900460ff16151515610b1e57600080fd5b6001600360146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cb65780601f10610c8b57610100808354040283529160200191610cb6565b820191906000526020600020905b815481529060010190602001808311610c9957829003601f168201915b505050505081565b6000600360149054906101000a900460ff16151515610cdc57600080fd5b610ce68383611280565b905092915050565b6000600360149054906101000a900460ff16151515610d0c57600080fd5b610d168383611325565b905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610dad610bc8565b1515610db857600080fd5b610dc18161133c565b50565b6000610dd1338484611438565b6001905092915050565b6000610de884848461159b565b610e818433610e7c85600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461176790919063ffffffff16565b611438565b600190509392505050565b6000610f273384610f2285600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461178990919063ffffffff16565b611438565b6001905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610f6d57600080fd5b610f828160025461178990919063ffffffff16565b600281905550610fd9816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461178990919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156110c157600080fd5b6110d68160025461176790919063ffffffff16565b60028190555061112d816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461176790919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6111e38282611085565b61127c823361127784600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461176790919063ffffffff16565b611438565b5050565b600061131b338461131685600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461176790919063ffffffff16565b611438565b6001905092915050565b600061133233848461159b565b6001905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561137857600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561147457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156114b057600080fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156115d757600080fd5b611628816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461176790919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506116bb816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461178990919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600082821115151561177857600080fd5b600082840390508091505092915050565b60008082840190508381101515156117a057600080fd5b809150509291505056fea165627a7a7230582059efbaf4dd08980fb4eff27039f58155ffbbbf624ac41f389f5bc7c190ec98090029

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061015f576000357c01000000000000000000000000000000000000000000000000000000009004806370a08231116100d55780638f32d59b116100995780638f32d59b1461055757806395d89b4114610579578063a457c2d7146105fc578063a9059cbb14610662578063dd62ed3e146106c8578063f2fde38b146107405761015f565b806370a0823114610453578063715018a6146104ab57806379cc6790146104b55780638456cb59146105035780638da5cb5b1461050d5761015f565b8063378dc3dc11610127578063378dc3dc1461030f578063395093511461032d5780633f4ba83a1461039357806340c10f191461039d57806342966c68146104035780635c975abb146104315761015f565b806306fdde0314610164578063095ea7b3146101e757806318160ddd1461024d57806323b872dd1461026b578063313ce567146102f1575b600080fd5b61016c610784565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101ac578082015181840152602081019050610191565b50505050905090810190601f1680156101d95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610233600480360360408110156101fd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610822565b604051808215151515815260200191505060405180910390f35b610255610852565b6040518082815260200191505060405180910390f35b6102d76004803603606081101561028157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061085c565b604051808215151515815260200191505060405180910390f35b6102f961088e565b6040518082815260200191505060405180910390f35b610317610894565b6040518082815260200191505060405180910390f35b6103796004803603604081101561034357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061089a565b604051808215151515815260200191505060405180910390f35b61039b6108ca565b005b6103e9600480360360408110156103b357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610978565b604051808215151515815260200191505060405180910390f35b61042f6004803603602081101561041957600080fd5b81019080803590602001909291905050506109a1565b005b6104396109ae565b604051808215151515815260200191505060405180910390f35b6104956004803603602081101561046957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109c5565b6040518082815260200191505060405180910390f35b6104b3610a0d565b005b610501600480360360408110156104cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ae1565b005b61050b610aef565b005b610515610b9e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61055f610bc8565b604051808215151515815260200191505060405180910390f35b610581610c20565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105c15780820151818401526020810190506105a6565b50505050905090810190601f1680156105ee5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6106486004803603604081101561061257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610cbe565b604051808215151515815260200191505060405180910390f35b6106ae6004803603604081101561067857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610cee565b604051808215151515815260200191505060405180910390f35b61072a600480360360408110156106de57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d1e565b6040518082815260200191505060405180910390f35b6107826004803603602081101561075657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610da5565b005b60048054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561081a5780601f106107ef5761010080835404028352916020019161081a565b820191906000526020600020905b8154815290600101906020018083116107fd57829003601f168201915b505050505081565b6000600360149054906101000a900460ff1615151561084057600080fd5b61084a8383610dc4565b905092915050565b6000600254905090565b6000600360149054906101000a900460ff1615151561087a57600080fd5b610885848484610ddb565b90509392505050565b60065481565b60075481565b6000600360149054906101000a900460ff161515156108b857600080fd5b6108c28383610e8c565b905092915050565b6108d2610bc8565b15156108dd57600080fd5b600360149054906101000a900460ff1615156108f857600080fd5b6000600360146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b6000610982610bc8565b151561098d57600080fd5b6109978383610f31565b6001905092915050565b6109ab3382611085565b50565b6000600360149054906101000a900460ff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a15610bc8565b1515610a2057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610aeb82826111d9565b5050565b610af7610bc8565b1515610b0257600080fd5b600360149054906101000a900460ff16151515610b1e57600080fd5b6001600360146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cb65780601f10610c8b57610100808354040283529160200191610cb6565b820191906000526020600020905b815481529060010190602001808311610c9957829003601f168201915b505050505081565b6000600360149054906101000a900460ff16151515610cdc57600080fd5b610ce68383611280565b905092915050565b6000600360149054906101000a900460ff16151515610d0c57600080fd5b610d168383611325565b905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610dad610bc8565b1515610db857600080fd5b610dc18161133c565b50565b6000610dd1338484611438565b6001905092915050565b6000610de884848461159b565b610e818433610e7c85600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461176790919063ffffffff16565b611438565b600190509392505050565b6000610f273384610f2285600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461178990919063ffffffff16565b611438565b6001905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610f6d57600080fd5b610f828160025461178990919063ffffffff16565b600281905550610fd9816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461178990919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156110c157600080fd5b6110d68160025461176790919063ffffffff16565b60028190555061112d816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461176790919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6111e38282611085565b61127c823361127784600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461176790919063ffffffff16565b611438565b5050565b600061131b338461131685600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461176790919063ffffffff16565b611438565b6001905092915050565b600061133233848461159b565b6001905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561137857600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561147457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156114b057600080fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156115d757600080fd5b611628816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461176790919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506116bb816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461178990919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600082821115151561177857600080fd5b600082840390508091505092915050565b60008082840190508381101515156117a057600080fd5b809150509291505056fea165627a7a7230582059efbaf4dd08980fb4eff27039f58155ffbbbf624ac41f389f5bc7c190ec98090029

Deployed Bytecode Sourcemap

15548:317:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15548:317:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15618:31;;;:::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;15618:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14948:167;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14948:167:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6642:85;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14750:192;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14750:192:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;15688:24;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15717:45;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15121:202;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15121:202:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4869:107;;;:::i;:::-;;14293:153;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14293:153:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;13537:73;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13537:73:0;;;;;;;;;;;;;;;;;:::i;:::-;;4191:72;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6935:100;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6935:100:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3087:130;;;:::i;:::-;;13852:89;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13852:89:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4677:105;;;:::i;:::-;;2426:73;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2729:86;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;15654:29;;;:::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;15654:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15329:212;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15329:212:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;14585:159;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14585:159:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7360:158;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7360:158:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3384:103;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3384:103:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;15618:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14948:167::-;15057:4;4410:7;;;;;;;;;;;4409:8;4401:17;;;;;;;;15080:29;15094:7;15103:5;15080:13;:29::i;:::-;15073:36;;14948:167;;;;:::o;6642:85::-;6686:7;6709:12;;6702:19;;6642:85;:::o;14750:192::-;14878:4;4410:7;;;;;;;;;;;4409:8;4401:17;;;;;;;;14901:35;14920:4;14926:2;14930:5;14901:18;:35::i;:::-;14894:42;;14750:192;;;;;:::o;15688:24::-;;;;:::o;15717:45::-;;;;:::o;15121:202::-;15242:12;4410:7;;;;;;;;;;;4409:8;4401:17;;;;;;;;15273:44;15297:7;15306:10;15273:23;:44::i;:::-;15266:51;;15121:202;;;;:::o;4869:107::-;2620:9;:7;:9::i;:::-;2612:18;;;;;;;;4571:7;;;;;;;;;;;4563:16;;;;;;;;4933:5;4923:7;;:15;;;;;;;;;;;;;;;;;;4950:20;4959:10;4950:20;;;;;;;;;;;;;;;;;;;;;;4869:107::o;14293:153::-;14390:4;2620:9;:7;:9::i;:::-;2612:18;;;;;;;;14406:16;14412:2;14416:5;14406;:16::i;:::-;14436:4;14429:11;;14293:153;;;;:::o;13537:73::-;13580:24;13586:10;13598:5;13580;:24::i;:::-;13537:73;:::o;4191:72::-;4230:4;4250:7;;;;;;;;;;;4243:14;;4191:72;:::o;6935:100::-;6990:7;7013:9;:16;7023:5;7013:16;;;;;;;;;;;;;;;;7006:23;;6935:100;;;:::o;3087:130::-;2620:9;:7;:9::i;:::-;2612:18;;;;;;;;3182:1;3145:40;;3166:6;;;;;;;;;;;3145:40;;;;;;;;;;;;3209:1;3192:6;;:19;;;;;;;;;;;;;;;;;;3087:130::o;13852:89::-;13913:22;13923:4;13929:5;13913:9;:22::i;:::-;13852:89;;:::o;4677:105::-;2620:9;:7;:9::i;:::-;2612:18;;;;;;;;4410:7;;;;;;;;;;;4409:8;4401:17;;;;;;;;4742:4;4732:7;;:14;;;;;;;;;;;;;;;;;;4758:18;4765:10;4758:18;;;;;;;;;;;;;;;;;;;;;;4677:105::o;2426:73::-;2464:7;2487:6;;;;;;;;;;;2480:13;;2426:73;:::o;2729:86::-;2769:4;2803:6;;;;;;;;;;;2789:20;;:10;:20;;;2782:27;;2729:86;:::o;15654:29::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;15329:212::-;15455:12;4410:7;;;;;;;;;;;4409:8;4401:17;;;;;;;;15486:49;15510:7;15519:15;15486:23;:49::i;:::-;15479:56;;15329:212;;;;:::o;14585:159::-;14690:4;4410:7;;;;;;;;;;;4409:8;4401:17;;;;;;;;14713:25;14728:2;14732:5;14713:14;:25::i;:::-;14706:32;;14585:159;;;;:::o;7360:158::-;7462:7;7488:8;:15;7497:5;7488:15;;;;;;;;;;;;;;;:24;7504:7;7488:24;;;;;;;;;;;;;;;;7481:31;;7360:158;;;;:::o;3384:103::-;2620:9;:7;:9::i;:::-;2612:18;;;;;;;;3453:28;3472:8;3453:18;:28::i;:::-;3384:103;:::o;8438:138::-;8503:4;8516:36;8525:10;8537:7;8546:5;8516:8;:36::i;:::-;8566:4;8559:11;;8438:138;;;;:::o;9031:247::-;9140:4;9156:26;9166:4;9172:2;9176:5;9156:9;:26::i;:::-;9189:65;9198:4;9204:10;9216:37;9247:5;9216:8;:14;9225:4;9216:14;;;;;;;;;;;;;;;:26;9231:10;9216:26;;;;;;;;;;;;;;;;:30;;:37;;;;:::i;:::-;9189:8;:65::i;:::-;9268:4;9261:11;;9031:247;;;;;:::o;9771:221::-;9876:4;9892:76;9901:10;9913:7;9922:45;9956:10;9922:8;:20;9931:10;9922:20;;;;;;;;;;;;;;;:29;9943:7;9922:29;;;;;;;;;;;;;;;;:33;;:45;;;;:::i;:::-;9892:8;:76::i;:::-;9982:4;9975:11;;9771:221;;;;:::o;11514:251::-;11604:1;11585:21;;:7;:21;;;;11577:30;;;;;;;;11631:23;11648:5;11631:12;;:16;;:23;;;;:::i;:::-;11616:12;:38;;;;11682:29;11705:5;11682:9;:18;11692:7;11682:18;;;;;;;;;;;;;;;;:22;;:29;;;;:::i;:::-;11661:9;:18;11671:7;11661:18;;;;;;;;;;;;;;;:50;;;;11744:7;11723:36;;11740:1;11723:36;;;11753:5;11723:36;;;;;;;;;;;;;;;;;;11514:251;;:::o;11985:::-;12075:1;12056:21;;:7;:21;;;;12048:30;;;;;;;;12102:23;12119:5;12102:12;;:16;;:23;;;;:::i;:::-;12087:12;:38;;;;12153:29;12176:5;12153:9;:18;12163:7;12153:18;;;;;;;;;;;;;;;;:22;;:29;;;;:::i;:::-;12132:9;:18;12142:7;12132:18;;;;;;;;;;;;;;;:50;;;;12220:1;12194:36;;12203:7;12194:36;;;12224:5;12194:36;;;;;;;;;;;;;;;;;;11985:251;;:::o;13112:172::-;13179:21;13185:7;13194:5;13179;:21::i;:::-;13207:71;13216:7;13225:10;13237:40;13271:5;13237:8;:17;13246:7;13237:17;;;;;;;;;;;;;;;:29;13255:10;13237:29;;;;;;;;;;;;;;;;:33;;:40;;;;:::i;:::-;13207:8;:71::i;:::-;13112:172;;:::o;10490:231::-;10600:4;10616:81;10625:10;10637:7;10646:50;10680:15;10646:8;:20;10655:10;10646:20;;;;;;;;;;;;;;;:29;10667:7;10646:29;;;;;;;;;;;;;;;;:33;;:50;;;;:::i;:::-;10616:8;:81::i;:::-;10711:4;10704:11;;10490:231;;;;:::o;7681:130::-;7742:4;7755:32;7765:10;7777:2;7781:5;7755:9;:32::i;:::-;7801:4;7794:11;;7681:130;;;;:::o;3627:173::-;3717:1;3697:22;;:8;:22;;;;3689:31;;;;;;;;3761:8;3732:38;;3753:6;;;;;;;;;;;3732:38;;;;;;;;;;;;3786:8;3777:6;;:17;;;;;;;;;;;;;;;;;;3627:173;:::o;12495:236::-;12603:1;12584:21;;:7;:21;;;;12576:30;;;;;;;;12638:1;12621:19;;:5;:19;;;;12613:28;;;;;;;;12677:5;12650:8;:15;12659:5;12650:15;;;;;;;;;;;;;;;:24;12666:7;12650:24;;;;;;;;;;;;;;;:32;;;;12710:7;12694:31;;12703:5;12694:31;;;12719:5;12694:31;;;;;;;;;;;;;;;;;;12495:236;;;:::o;10934:244::-;11032:1;11018:16;;:2;:16;;;;11010:25;;;;;;;;11062:26;11082:5;11062:9;:15;11072:4;11062:15;;;;;;;;;;;;;;;;:19;;:26;;;;:::i;:::-;11044:9;:15;11054:4;11044:15;;;;;;;;;;;;;;;:44;;;;11111:24;11129:5;11111:9;:13;11121:2;11111:13;;;;;;;;;;;;;;;;:17;;:24;;;;:::i;:::-;11095:9;:13;11105:2;11095:13;;;;;;;;;;;;;;;:40;;;;11162:2;11147:25;;11156:4;11147:25;;;11166:5;11147:25;;;;;;;;;;;;;;;;;;10934:244;;;:::o;1164:136::-;1222:7;1251:1;1246;:6;;1238:15;;;;;;;;1260:9;1276:1;1272;:5;1260:17;;1293:1;1286:8;;;1164:136;;;;:::o;1380:::-;1438:7;1454:9;1470:1;1466;:5;1454:17;;1491:1;1486;:6;;1478:15;;;;;;;;1509:1;1502:8;;;1380:136;;;;:::o

Swarm Source

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