ETH Price: $3,187.55 (+1.82%)

Token

VAULTXP.FINANCE (VAULTXP)
 

Overview

Max Total Supply

13,282.777625494358724434 VAULTXP

Holders

166

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.99 VAULTXP

Value
$0.00
0x73c4ec9a0a8f85c085eb9efb67bde1fee0c7f578
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:
VaultXP

Compiler Version
v0.7.2+commit.51b20bc0

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2020-11-14
*/

pragma solidity ^0.7.2;

/**
* @dev Provides data about the current execution setting, including the 
* sender of the exchange and its information. While these are commonly accessible 
* through msg.sender and msg.data, they ought not be gotten to in such a direct 
* way, since when managing GSN meta-exchanges the record sending and 
* paying for execution may not be the real sender (to the extent an application 
* is concerned). 
* 
* This agreement is just needed for middle, library-like agreements.
*/
library SafeMath {
    
    /**
     * @dev Returns the addition of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     *
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }
    
    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a, "SafeMath: subtraction overflow");
        uint256 c = a - b;

        return c;
    }
    
    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     *
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

     /**
     * @dev Returns the integer division of two unsigned integers. Reverts with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0, "SafeMath: division by zero");
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

}

/** 
* @dev Contract module which gives a fundamental access control system, where 
* there is a record (a proprietor) that can be conceded selective admittance to 
* explicit capacities. 
* 
* By default, the proprietor record will be the one that conveys the agreement. This 
* can later be changed with {transferOwnership}. 
* 
* This module is utilized through legacy. It will make accessible the modifier 
* 'onlyOwner', which can be applied to your capacities to confine their utilization to 
* the proprietor. 
*/
contract Owned {
    address public owner;
    address public newOwner;

    event OwnershipTransferred(address indexed from, address indexed _to);

    constructor(address _owner) public {
        owner = _owner;
    }

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }

    function transferOwnership(address _newOwner) external onlyOwner {
        newOwner = _newOwner;
    }
    function acceptOwnership() external {
        require(msg.sender == newOwner);
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
        newOwner = address(0);
    }
}

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);
    
    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);
    
    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, uint256 amount) external returns (bool);
    
    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);
    
    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: 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
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    
    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);
}


abstract contract ERC20 is IERC20, Owned {
    using SafeMath for uint256;

    mapping (address => uint256) internal _balances;

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

    uint256 internal _totalSupply;
    
    function totalSupply() public override view returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public override view returns (uint256) {
        return _balances[account];
    }

    function allowance(address owner, address spender) public override view returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 value) public override returns (bool) {
        _approve(msg.sender, spender, value);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender].add(addedValue));
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender].sub(subtractedValue));
        return true;
    }

    function _transfer(address sender, address recipient, uint256 amount) internal {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _balances[sender] = _balances[sender].sub(amount);
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

    function _burn(address account, uint256 value) internal {
        require(account != address(0), "ERC20: burn from the zero address");

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

    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, msg.sender, _allowances[sender][msg.sender].sub(amount));
        return true;
    }

    function _approve(address owner, address spender, uint256 value) internal {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

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

abstract contract StakeVXP {
     /**
     * @dev stakes amount of tokens to the liquidity provider pool
     */
  function _stake(address to, uint256 amount) internal{}

 /**
     * @dev redeems the amount of the current user
     */
  function _redeem(address to, uint256 amount) internal{}

 /**
     * @dev claims rewards transfer to his account.
     */
  function _claimRewards(address to, uint256 amount) internal{}
}

 /**
     * @dev VAULTXP Contract is completely unique and adheres to the traditional
     * allowance mechanism. The contract is made by 2 devs ken and XP
     */
contract VaultXP is ERC20, StakeVXP {


    using SafeMath for uint256;

    string  public name;
    string  public symbol;
    uint8   public decimals;
    uint256 public burnedToken;
    uint256 public presaleToken;
    
    uint256 public presaleTarget;
    uint256 public presalePool;
    bool public presaleEvent;
    
    address private stakeContractAddress;
    
    
    constructor() public Owned(msg.sender) {
        name = "VAULTXP.FINANCE";
        symbol = "VAULTXP";
        decimals = 18;
        
        _totalSupply = 15000000000000000000000; // 15,000 supply
        _balances[msg.sender] = _totalSupply;
        burnedToken = 0;
        presaleToken = 14500;
        presaleTarget = 650000000000000000000; // 650
        emit Transfer(address(0), msg.sender, _totalSupply);
    }
    
    function burn(uint256 _amount) external returns (bool) {
      super._burn(msg.sender, _amount);
      burnedToken = burnedToken.add(_amount);
      return true;
    }

    function transfer(address _recipient, uint256 _amount) public override returns (bool) {
        if(totalSupply() <= 3000) {
            super._transfer(msg.sender, _recipient, _amount);
            return true;
        }
        uint _burnAmount = _amount.mul(100).div(10000); // 1 percent burning
        _burn(msg.sender, _burnAmount);
        burnedToken = burnedToken.add(_burnAmount);
        uint _transferAmount = _amount.sub(_burnAmount);
        super._transfer(msg.sender, _recipient, _transferAmount);
        return true;
    }

    function transferFrom(address _sender, address _recipient, uint256 _amount) public override returns (bool) {
        super._transferFrom(_sender, _recipient, _amount);
        return true;
    }

    function buyPresaleToken() public payable{
        require(presaleEvent);

        transferToPresalePool();

        uint256 value = msg.value;
        require(value > 0);

        uint _tokenEquivalent = value.mul(22);

        _balances[owner] = _balances[owner].sub(_tokenEquivalent);
        _balances[msg.sender] = _balances[msg.sender].add(_tokenEquivalent);
        
        // update Presale Pool Value
        presalePool = presalePool.add(value);
        
    }

    function transferToPresalePool() private{
        address payable _to = address(uint160(owner));
        _to.transfer(getBalance());
    }
    
    function getBalance() private view returns(uint){
        return address(this).balance;
    }
    
    function getContractBalance() public view onlyOwner returns(uint){
        return getBalance();
    }
    
    function startPresaleEvent() public onlyOwner{
        presaleEvent = true;
    }
    
    function endPresaleEvent() public onlyOwner{
        presaleEvent = false;
    }
    
    function getTokenBalance() public view returns(uint){
        return _balances[msg.sender];
    }
    
    function setStakeContractAddress(address _stakeContractAddress) public onlyOwner{
        stakeContractAddress = _stakeContractAddress;
    }
    
    function getStakeContractAddress() public view onlyOwner returns(address){
        return stakeContractAddress;
    }
    
    function stake(address _stakeToContract, address _to, uint256 _amount) public{
        require(_stakeToContract == stakeContractAddress);
        _stake(_to, _amount);
    }
    
    function redeem(address _stakeToContract, address _to, uint256 _amount) public{
        require(_stakeToContract == stakeContractAddress);
        _redeem(_to, _amount);
    }
    
    function _claimRewards(address _stakeToContract, address _to, uint256 _amount) public{
        require(_stakeToContract == stakeContractAddress);
        _claimRewards(_to, _amount);
    }
    
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"_stakeToContract","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"_claimRewards","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"burnedToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyPresaleToken","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"endPresaleEvent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getContractBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getStakeContractAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTokenBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"newOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"presaleEvent","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"presalePool","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"presaleTarget","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"presaleToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_stakeToContract","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"redeem","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_stakeContractAddress","type":"address"}],"name":"setStakeContractAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_stakeToContract","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"stake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startPresaleEvent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_recipient","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_sender","type":"address"},{"internalType":"address","name":"_recipient","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b5033806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506040518060400160405280600f81526020017f5641554c5458502e46494e414e4345000000000000000000000000000000000081525060059080519060200190620000a1929190620001f2565b506040518060400160405280600781526020017f5641554c5458500000000000000000000000000000000000000000000000000081525060069080519060200190620000ef929190620001f2565b506012600760006101000a81548160ff021916908360ff16021790555069032d26d12e980b600000600481905550600454600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006008819055506138a460098190555068233c8fe42703e80000600a819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6004546040518082815260200191505060405180910390a362000298565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200023557805160ff191683800117855562000266565b8280016001018555821562000266579182015b828111156200026557825182559160200191906001019062000248565b5b50905062000275919062000279565b5090565b5b80821115620002945760008160009055506001016200027a565b5090565b6122c880620002a86000396000f3fe6080604052600436106101d85760003560e01c806342966c68116101025780639c0e1bd611610095578063bf6eac2f11610064578063bf6eac2f146109a8578063d4ee1d9014610a23578063dd62ed3e14610a64578063f2fde38b14610ae9576101d8565b80639c0e1bd6146108a5578063a457c2d7146108af578063a9059cbb14610920578063acf9a27e14610991576101d8565b806382b2e257116100d157806382b2e2571461077e578063848c0dfd146107a95780638da5cb5b146107d457806395d89b4114610815576101d8565b806342966c68146106865780636f9fb98a146106d757806370a082311461070257806379ba509714610767576101d8565b806319f61be71161017a5780633188b9e2116101495780633188b9e21461052e578063330c4ce0146105a957806337ff5bcc146105d45780633950935114610615576101d8565b806319f61be71461041757806323b872dd1461044457806324ffea1a146104d5578063313ce56714610500576101d8565b80630723fa42116101b65780630723fa42146102d5578063095ea7b3146103005780630e6dfcd51461037157806318160ddd146103ec576101d8565b806301b6965a146101dd578063053273d91461022e57806306fdde0314610245575b600080fd5b3480156101e957600080fd5b5061022c6004803603602081101561020057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b3a565b005b34801561023a57600080fd5b50610243610bd6565b005b34801561025157600080fd5b5061025a610c4b565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561029a57808201518184015260208101905061027f565b50505050905090810190601f1680156102c75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102e157600080fd5b506102ea610ce9565b6040518082815260200191505060405180910390f35b34801561030c57600080fd5b506103596004803603604081101561032357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610cef565b60405180821515815260200191505060405180910390f35b34801561037d57600080fd5b506103ea6004803603606081101561039457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d06565b005b3480156103f857600080fd5b50610401610d6f565b6040518082815260200191505060405180910390f35b34801561042357600080fd5b5061042c610d79565b60405180821515815260200191505060405180910390f35b34801561045057600080fd5b506104bd6004803603606081101561046757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d8c565b60405180821515815260200191505060405180910390f35b3480156104e157600080fd5b506104ea610da5565b6040518082815260200191505060405180910390f35b34801561050c57600080fd5b50610515610dab565b604051808260ff16815260200191505060405180910390f35b34801561053a57600080fd5b506105a76004803603606081101561055157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610dbe565b005b3480156105b557600080fd5b506105be610e27565b6040518082815260200191505060405180910390f35b3480156105e057600080fd5b506105e9610e2d565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561062157600080fd5b5061066e6004803603604081101561063857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610eb0565b60405180821515815260200191505060405180910390f35b34801561069257600080fd5b506106bf600480360360208110156106a957600080fd5b8101908080359060200190929190505050610f55565b60405180821515815260200191505060405180910390f35b3480156106e357600080fd5b506106ec610f85565b6040518082815260200191505060405180910390f35b34801561070e57600080fd5b506107516004803603602081101561072557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fed565b6040518082815260200191505060405180910390f35b34801561077357600080fd5b5061077c611036565b005b34801561078a57600080fd5b506107936111d2565b6040518082815260200191505060405180910390f35b3480156107b557600080fd5b506107be611219565b6040518082815260200191505060405180910390f35b3480156107e057600080fd5b506107e961121f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561082157600080fd5b5061082a611243565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561086a57808201518184015260208101905061084f565b50505050905090810190601f1680156108975780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6108ad6112e1565b005b3480156108bb57600080fd5b50610908600480360360408110156108d257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506114b7565b60405180821515815260200191505060405180910390f35b34801561092c57600080fd5b506109796004803603604081101561094357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061155c565b60405180821515815260200191505060405180910390f35b34801561099d57600080fd5b506109a6611602565b005b3480156109b457600080fd5b50610a21600480360360608110156109cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611677565b005b348015610a2f57600080fd5b50610a386116e0565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610a7057600080fd5b50610ad360048036036040811015610a8757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611706565b6040518082815260200191505060405180910390f35b348015610af557600080fd5b50610b3860048036036020811015610b0c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061178d565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b9257600080fd5b80600c60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c2e57600080fd5b6000600c60006101000a81548160ff021916908315150217905550565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ce15780601f10610cb657610100808354040283529160200191610ce1565b820191906000526020600020905b815481529060010190602001808311610cc457829003601f168201915b505050505081565b600b5481565b6000610cfc338484611829565b6001905092915050565b600c60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614610d6057600080fd5b610d6a8282611a20565b505050565b6000600454905090565b600c60009054906101000a900460ff1681565b6000610d99848484611a24565b50600190509392505050565b60095481565b600760009054906101000a900460ff1681565b600c60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614610e1857600080fd5b610e228282611ad5565b505050565b60085481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e8857600080fd5b600c60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000610f4b3384610f4685600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ad990919063ffffffff16565b611829565b6001905092915050565b6000610f613383611b61565b610f7682600854611ad990919063ffffffff16565b60088190555060019050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610fe057600080fd5b610fe8611d01565b905090565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461109057600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905090565b600a5481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112d95780601f106112ae576101008083540402835291602001916112d9565b820191906000526020600020905b8154815290600101906020018083116112bc57829003601f168201915b505050505081565b600c60009054906101000a900460ff166112fa57600080fd5b611302611d09565b60003490506000811161131457600080fd5b600061132a601683611d8090919063ffffffff16565b905061139f81600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e0690919063ffffffff16565b600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061145581600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ad990919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506114ad82600b54611ad990919063ffffffff16565b600b819055505050565b6000611552338461154d85600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e0690919063ffffffff16565b611829565b6001905092915050565b6000610bb8611569610d6f565b1161158257611579338484611e8f565b600190506115fc565b60006115ac61271061159e606486611d8090919063ffffffff16565b61212f90919063ffffffff16565b90506115b83382611b61565b6115cd81600854611ad990919063ffffffff16565b60088190555060006115e88285611e0690919063ffffffff16565b90506115f5338683611e8f565b6001925050505b92915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461165a57600080fd5b6001600c60006101000a81548160ff021916908315150217905550565b600c60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146116d157600080fd5b6116db82826121be565b505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146117e557600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156118af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061226f6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611935576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806121e66022913960400191505060405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b5050565b6000611a31848484611e8f565b611aca8433611ac585600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e0690919063ffffffff16565b611829565b600190509392505050565b5050565b600080828401905083811015611b57576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611be7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806122296021913960400191505060405180910390fd5b611bfc81600454611e0690919063ffffffff16565b600481905550611c5481600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e0690919063ffffffff16565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600047905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff166108fc611d51611d01565b9081150290604051600060405180830381858888f19350505050158015611d7c573d6000803e3d6000fd5b5050565b600080831415611d935760009050611e00565b6000828402905082848281611da457fe5b0414611dfb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806122086021913960400191505060405180910390fd5b809150505b92915050565b600082821115611e7e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611f15576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602581526020018061224a6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f9b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806121c36023913960400191505060405180910390fd5b611fed81600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e0690919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061208281600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ad990919063ffffffff16565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b60008082116121a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b60008284816121b157fe5b0490508091505092915050565b505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a2646970667358221220845be716eec6d1f2c3eca57d9a20664aabe9942609a57b19976b1e00a77123fe64736f6c63430007020033

Deployed Bytecode

0x6080604052600436106101d85760003560e01c806342966c68116101025780639c0e1bd611610095578063bf6eac2f11610064578063bf6eac2f146109a8578063d4ee1d9014610a23578063dd62ed3e14610a64578063f2fde38b14610ae9576101d8565b80639c0e1bd6146108a5578063a457c2d7146108af578063a9059cbb14610920578063acf9a27e14610991576101d8565b806382b2e257116100d157806382b2e2571461077e578063848c0dfd146107a95780638da5cb5b146107d457806395d89b4114610815576101d8565b806342966c68146106865780636f9fb98a146106d757806370a082311461070257806379ba509714610767576101d8565b806319f61be71161017a5780633188b9e2116101495780633188b9e21461052e578063330c4ce0146105a957806337ff5bcc146105d45780633950935114610615576101d8565b806319f61be71461041757806323b872dd1461044457806324ffea1a146104d5578063313ce56714610500576101d8565b80630723fa42116101b65780630723fa42146102d5578063095ea7b3146103005780630e6dfcd51461037157806318160ddd146103ec576101d8565b806301b6965a146101dd578063053273d91461022e57806306fdde0314610245575b600080fd5b3480156101e957600080fd5b5061022c6004803603602081101561020057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b3a565b005b34801561023a57600080fd5b50610243610bd6565b005b34801561025157600080fd5b5061025a610c4b565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561029a57808201518184015260208101905061027f565b50505050905090810190601f1680156102c75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102e157600080fd5b506102ea610ce9565b6040518082815260200191505060405180910390f35b34801561030c57600080fd5b506103596004803603604081101561032357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610cef565b60405180821515815260200191505060405180910390f35b34801561037d57600080fd5b506103ea6004803603606081101561039457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d06565b005b3480156103f857600080fd5b50610401610d6f565b6040518082815260200191505060405180910390f35b34801561042357600080fd5b5061042c610d79565b60405180821515815260200191505060405180910390f35b34801561045057600080fd5b506104bd6004803603606081101561046757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d8c565b60405180821515815260200191505060405180910390f35b3480156104e157600080fd5b506104ea610da5565b6040518082815260200191505060405180910390f35b34801561050c57600080fd5b50610515610dab565b604051808260ff16815260200191505060405180910390f35b34801561053a57600080fd5b506105a76004803603606081101561055157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610dbe565b005b3480156105b557600080fd5b506105be610e27565b6040518082815260200191505060405180910390f35b3480156105e057600080fd5b506105e9610e2d565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561062157600080fd5b5061066e6004803603604081101561063857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610eb0565b60405180821515815260200191505060405180910390f35b34801561069257600080fd5b506106bf600480360360208110156106a957600080fd5b8101908080359060200190929190505050610f55565b60405180821515815260200191505060405180910390f35b3480156106e357600080fd5b506106ec610f85565b6040518082815260200191505060405180910390f35b34801561070e57600080fd5b506107516004803603602081101561072557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fed565b6040518082815260200191505060405180910390f35b34801561077357600080fd5b5061077c611036565b005b34801561078a57600080fd5b506107936111d2565b6040518082815260200191505060405180910390f35b3480156107b557600080fd5b506107be611219565b6040518082815260200191505060405180910390f35b3480156107e057600080fd5b506107e961121f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561082157600080fd5b5061082a611243565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561086a57808201518184015260208101905061084f565b50505050905090810190601f1680156108975780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6108ad6112e1565b005b3480156108bb57600080fd5b50610908600480360360408110156108d257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506114b7565b60405180821515815260200191505060405180910390f35b34801561092c57600080fd5b506109796004803603604081101561094357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061155c565b60405180821515815260200191505060405180910390f35b34801561099d57600080fd5b506109a6611602565b005b3480156109b457600080fd5b50610a21600480360360608110156109cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611677565b005b348015610a2f57600080fd5b50610a386116e0565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610a7057600080fd5b50610ad360048036036040811015610a8757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611706565b6040518082815260200191505060405180910390f35b348015610af557600080fd5b50610b3860048036036020811015610b0c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061178d565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b9257600080fd5b80600c60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c2e57600080fd5b6000600c60006101000a81548160ff021916908315150217905550565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ce15780601f10610cb657610100808354040283529160200191610ce1565b820191906000526020600020905b815481529060010190602001808311610cc457829003601f168201915b505050505081565b600b5481565b6000610cfc338484611829565b6001905092915050565b600c60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614610d6057600080fd5b610d6a8282611a20565b505050565b6000600454905090565b600c60009054906101000a900460ff1681565b6000610d99848484611a24565b50600190509392505050565b60095481565b600760009054906101000a900460ff1681565b600c60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614610e1857600080fd5b610e228282611ad5565b505050565b60085481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e8857600080fd5b600c60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000610f4b3384610f4685600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ad990919063ffffffff16565b611829565b6001905092915050565b6000610f613383611b61565b610f7682600854611ad990919063ffffffff16565b60088190555060019050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610fe057600080fd5b610fe8611d01565b905090565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461109057600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905090565b600a5481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112d95780601f106112ae576101008083540402835291602001916112d9565b820191906000526020600020905b8154815290600101906020018083116112bc57829003601f168201915b505050505081565b600c60009054906101000a900460ff166112fa57600080fd5b611302611d09565b60003490506000811161131457600080fd5b600061132a601683611d8090919063ffffffff16565b905061139f81600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e0690919063ffffffff16565b600260008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061145581600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ad990919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506114ad82600b54611ad990919063ffffffff16565b600b819055505050565b6000611552338461154d85600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e0690919063ffffffff16565b611829565b6001905092915050565b6000610bb8611569610d6f565b1161158257611579338484611e8f565b600190506115fc565b60006115ac61271061159e606486611d8090919063ffffffff16565b61212f90919063ffffffff16565b90506115b83382611b61565b6115cd81600854611ad990919063ffffffff16565b60088190555060006115e88285611e0690919063ffffffff16565b90506115f5338683611e8f565b6001925050505b92915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461165a57600080fd5b6001600c60006101000a81548160ff021916908315150217905550565b600c60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146116d157600080fd5b6116db82826121be565b505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146117e557600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156118af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061226f6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611935576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806121e66022913960400191505060405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b5050565b6000611a31848484611e8f565b611aca8433611ac585600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e0690919063ffffffff16565b611829565b600190509392505050565b5050565b600080828401905083811015611b57576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611be7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806122296021913960400191505060405180910390fd5b611bfc81600454611e0690919063ffffffff16565b600481905550611c5481600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e0690919063ffffffff16565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600047905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff166108fc611d51611d01565b9081150290604051600060405180830381858888f19350505050158015611d7c573d6000803e3d6000fd5b5050565b600080831415611d935760009050611e00565b6000828402905082848281611da457fe5b0414611dfb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806122086021913960400191505060405180910390fd5b809150505b92915050565b600082821115611e7e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611f15576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602581526020018061224a6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f9b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806121c36023913960400191505060405180910390fd5b611fed81600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e0690919063ffffffff16565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061208281600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ad990919063ffffffff16565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b60008082116121a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b60008284816121b157fe5b0490508091505092915050565b505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a2646970667358221220845be716eec6d1f2c3eca57d9a20664aabe9942609a57b19976b1e00a77123fe64736f6c63430007020033

Deployed Bytecode Sourcemap

9950:3819:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12905:143;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12700:82;;;;;;;;;;;;;:::i;:::-;;10032:19;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10224:26;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7370:157;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;13379:178;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6984:100;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10257:24;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11530:197;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;10149:27;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10086:23;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;13569:191;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10116:26;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13060:119;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;7535:206;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;10793:171;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12490:103;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7092:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3779:198;;;;;;;;;;;;;:::i;:::-;;12794:99;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10189:28;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3370:20;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;10058:21;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11735:487;;;:::i;:::-;;7749:216;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;10972:550;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12605:83;;;;;;;;;;;;;:::i;:::-;;13191:176;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3397:23;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;7219:143;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3669:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12905:143;3635:5;;;;;;;;;;3621:19;;:10;:19;;;3613:28;;;;;;13019:21:::1;12996:20;;:44;;;;;;;;;;;;;;;;;;12905:143:::0;:::o;12700:82::-;3635:5;;;;;;;;;;3621:19;;:10;:19;;;3613:28;;;;;;12769:5:::1;12754:12;;:20;;;;;;;;;;;;;;;;;;12700:82::o:0;10032:19::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;10224:26::-;;;;:::o;7370:157::-;7444:4;7461:36;7470:10;7482:7;7491:5;7461:8;:36::i;:::-;7515:4;7508:11;;7370:157;;;;:::o;13379:178::-;13496:20;;;;;;;;;;;13476:40;;:16;:40;;;13468:49;;;;;;13528:21;13536:3;13541:7;13528;:21::i;:::-;13379:178;;;:::o;6984:100::-;7037:7;7064:12;;7057:19;;6984:100;:::o;10257:24::-;;;;;;;;;;;;;:::o;11530:197::-;11631:4;11648:49;11668:7;11677:10;11689:7;11648:19;:49::i;:::-;;11715:4;11708:11;;11530:197;;;;;:::o;10149:27::-;;;;:::o;10086:23::-;;;;;;;;;;;;;:::o;13569:191::-;13693:20;;;;;;;;;;;13673:40;;:16;:40;;;13665:49;;;;;;13725:27;13739:3;13744:7;13725:13;:27::i;:::-;13569:191;;;:::o;10116:26::-;;;;:::o;13060:119::-;13125:7;3635:5;;;;;;;;;;;3621:19;;:10;:19;;;3613:28;;;;;;13151:20:::1;;;;;;;;;;;13144:27;;13060:119:::0;:::o;7535:206::-;7615:4;7632:79;7641:10;7653:7;7662:48;7699:10;7662:11;:23;7674:10;7662:23;;;;;;;;;;;;;;;:32;7686:7;7662:32;;;;;;;;;;;;;;;;:36;;:48;;;;:::i;:::-;7632:8;:79::i;:::-;7729:4;7722:11;;7535:206;;;;:::o;10793:171::-;10842:4;10857:32;10869:10;10881:7;10857:11;:32::i;:::-;10912:24;10928:7;10912:11;;:15;;:24;;;;:::i;:::-;10898:11;:38;;;;10952:4;10945:11;;10793:171;;;:::o;12490:103::-;12550:4;3635:5;;;;;;;;;;;3621:19;;:10;:19;;;3613:28;;;;;;12573:12:::1;:10;:12::i;:::-;12566:19;;12490:103:::0;:::o;7092:119::-;7158:7;7185:9;:18;7195:7;7185:18;;;;;;;;;;;;;;;;7178:25;;7092:119;;;:::o;3779:198::-;3848:8;;;;;;;;;;;3834:22;;:10;:22;;;3826:31;;;;;;3901:8;;;;;;;;;;;3873:37;;3894:5;;;;;;;;;;3873:37;;;;;;;;;;;;3929:8;;;;;;;;;;;3921:5;;:16;;;;;;;;;;;;;;;;;;3967:1;3948:8;;:21;;;;;;;;;;;;;;;;;;3779:198::o;12794:99::-;12841:4;12864:9;:21;12874:10;12864:21;;;;;;;;;;;;;;;;12857:28;;12794:99;:::o;10189:28::-;;;;:::o;3370:20::-;;;;;;;;;;;;:::o;10058:21::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;11735:487::-;11795:12;;;;;;;;;;;11787:21;;;;;;11821:23;:21;:23::i;:::-;11857:13;11873:9;11857:25;;11909:1;11901:5;:9;11893:18;;;;;;11924:21;11948:13;11958:2;11948:5;:9;;:13;;;;:::i;:::-;11924:37;;11993:38;12014:16;11993:9;:16;12003:5;;;;;;;;;;;11993:16;;;;;;;;;;;;;;;;:20;;:38;;;;:::i;:::-;11974:9;:16;11984:5;;;;;;;;;;;11974:16;;;;;;;;;;;;;;;:57;;;;12066:43;12092:16;12066:9;:21;12076:10;12066:21;;;;;;;;;;;;;;;;:25;;:43;;;;:::i;:::-;12042:9;:21;12052:10;12042:21;;;;;;;;;;;;;;;:67;;;;12182:22;12198:5;12182:11;;:15;;:22;;;;:::i;:::-;12168:11;:36;;;;11735:487;;:::o;7749:216::-;7834:4;7851:84;7860:10;7872:7;7881:53;7918:15;7881:11;:23;7893:10;7881:23;;;;;;;;;;;;;;;:32;7905:7;7881:32;;;;;;;;;;;;;;;;:36;;:53;;;;:::i;:::-;7851:8;:84::i;:::-;7953:4;7946:11;;7749:216;;;;:::o;10972:550::-;11052:4;11089;11072:13;:11;:13::i;:::-;:21;11069:127;;11110:48;11126:10;11138;11150:7;11110:15;:48::i;:::-;11180:4;11173:11;;;;11069:127;11206:16;11225:27;11246:5;11225:16;11237:3;11225:7;:11;;:16;;;;:::i;:::-;:20;;:27;;;;:::i;:::-;11206:46;;11284:30;11290:10;11302:11;11284:5;:30::i;:::-;11339:28;11355:11;11339;;:15;;:28;;;;:::i;:::-;11325:11;:42;;;;11378:20;11401:24;11413:11;11401:7;:11;;:24;;;;:::i;:::-;11378:47;;11436:56;11452:10;11464;11476:15;11436;:56::i;:::-;11510:4;11503:11;;;;10972:550;;;;;:::o;12605:83::-;3635:5;;;;;;;;;;3621:19;;:10;:19;;;3613:28;;;;;;12676:4:::1;12661:12;;:19;;;;;;;;;;;;;;;;;;12605:83::o:0;13191:176::-;13307:20;;;;;;;;;;;13287:40;;:16;:40;;;13279:49;;;;;;13339:20;13346:3;13351:7;13339:6;:20::i;:::-;13191:176;;;:::o;3397:23::-;;;;;;;;;;;;;:::o;7219:143::-;7300:7;7327:11;:18;7339:5;7327:18;;;;;;;;;;;;;;;:27;7346:7;7327:27;;;;;;;;;;;;;;;;7320:34;;7219:143;;;;:::o;3669:104::-;3635:5;;;;;;;;;;3621:19;;:10;:19;;;3613:28;;;;;;3756:9:::1;3745:8;;:20;;;;;;;;;;;;;;;;;;3669:104:::0;:::o;8991:335::-;9101:1;9084:19;;:5;:19;;;;9076:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9182:1;9163:21;;:7;:21;;;;9155:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9266:5;9236:11;:18;9248:5;9236:18;;;;;;;;;;;;;;;:27;9255:7;9236:27;;;;;;;;;;;;;;;:35;;;;9303:7;9287:31;;9296:5;9287:31;;;9312:5;9287:31;;;;;;;;;;;;;;;;;;8991:335;;;:::o;9585:55::-;;;:::o;8724:259::-;8816:4;8833:36;8843:6;8851:9;8862:6;8833:9;:36::i;:::-;8880:73;8889:6;8897:10;8909:43;8945:6;8909:11;:19;8921:6;8909:19;;;;;;;;;;;;;;;:31;8929:10;8909:31;;;;;;;;;;;;;;;;:35;;:43;;;;:::i;:::-;8880:8;:73::i;:::-;8971:4;8964:11;;8724:259;;;;;:::o;9714:61::-;;;:::o;791:181::-;849:7;869:9;885:1;881;:5;869:17;;910:1;905;:6;;897:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;963:1;956:8;;;791:181;;;;:::o;8410:306::-;8504:1;8485:21;;:7;:21;;;;8477:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8572:23;8589:5;8572:12;;:16;;:23;;;;:::i;:::-;8557:12;:38;;;;8627:29;8650:5;8627:9;:18;8637:7;8627:18;;;;;;;;;;;;;;;;:22;;:29;;;;:::i;:::-;8606:9;:18;8616:7;8606:18;;;;;;;;;;;;;;;:50;;;;8698:1;8672:36;;8681:7;8672:36;;;8702:5;8672:36;;;;;;;;;;;;;;;;;;8410:306;;:::o;12383:95::-;12426:4;12449:21;12442:28;;12383:95;:::o;12230:141::-;12281:19;12319:5;;;;;;;;;;;12281:45;;12337:3;:12;;:26;12350:12;:10;:12::i;:::-;12337:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12230:141;:::o;1726:250::-;1784:7;1813:1;1808;:6;1804:47;;;1838:1;1831:8;;;;1804:47;1863:9;1879:1;1875;:5;1863:17;;1908:1;1903;1899;:5;;;;;;:10;1891:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1967:1;1960:8;;;1726:250;;;;;:::o;1279:184::-;1337:7;1370:1;1365;:6;;1357:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1417:9;1433:1;1429;:5;1417:17;;1454:1;1447:8;;;1279:184;;;;:::o;7973:429::-;8089:1;8071:20;;:6;:20;;;;8063:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8173:1;8152:23;;:9;:23;;;;8144:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8248:29;8270:6;8248:9;:17;8258:6;8248:17;;;;;;;;;;;;;;;;:21;;:29;;;;:::i;:::-;8228:9;:17;8238:6;8228:17;;;;;;;;;;;;;;;:49;;;;8311:32;8336:6;8311:9;:20;8321:9;8311:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;8288:9;:20;8298:9;8288:20;;;;;;;;;;;;;;;:55;;;;8376:9;8359:35;;8368:6;8359:35;;;8387:6;8359:35;;;;;;;;;;;;;;;;;;7973:429;;;:::o;2473:333::-;2531:7;2630:1;2626;:5;2618:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2673:9;2689:1;2685;:5;;;;;;2673:17;;2797:1;2790:8;;;2473:333;;;;:::o;9458:54::-;;;:::o

Swarm Source

ipfs://845be716eec6d1f2c3eca57d9a20664aabe9942609a57b19976b1e00a77123fe
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.