ETH Price: $2,841.90 (+7.08%)
 

Overview

Max Total Supply

4,715.636294708588760746 BTF

Holders

26

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
218.628841141751279147 BTF

Value
$0.00
0xb8d30056170ca6CEFbA517E161B57fcFA4dA816C
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:
BFD

Compiler Version
v0.7.4+commit.3f05b770

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-06
*/

pragma solidity ^0.7.0;
//SPDX-License-Identifier: UNLICENSED

interface IERC20 {
    function totalSupply() external view returns (uint);
    function balanceOf(address who) external view returns (uint);
    function allowance(address owner, address spender) external view returns (uint);
    function transfer(address to, uint value) external returns (bool);
    function approve(address spender, uint value) external returns (bool);
    function transferFrom(address from, address to, uint value) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint value);
    event Approval(address indexed owner, address indexed spender, uint value);
}
interface IUNIv2 {
    function addLiquidityETH(address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline) 
    external 
    payable 
    returns (uint amountToken, uint amountETH, uint liquidity);
    
    function WETH() external pure returns (address);

}

interface IUniswapV2Factory {
  event PairCreated(address indexed token0, address indexed token1, address pair, uint);

  function createPair(address tokenA, address tokenB) external returns (address pair);
}
interface IUniswapV2Pair {
    function sync() external;
}

abstract contract Context {
    function _msgSender() internal view virtual returns (address payable) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes memory) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

contract BFD is IERC20, Context {
    
    using SafeMath for uint;
    
    IUNIv2 uniswap = IUNIv2(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    IUniswapV2Factory uniswapFactory = IUniswapV2Factory(0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f);

    string public _symbol;
    string public _name;
    uint8 public _decimals;
    uint _totalSupply;
    
    // For presale
    uint public tokensBought;
    bool public isStopped = false;
    bool public canRefund = false;
    bool public devClaimed = false;
    bool public moonMissionStarted = false;
    uint256 public canRefundTime;
    uint256 public tokensForUniswap = 3500 ether;
    uint256 public tokensForAidrop = 1000 ether;
    uint256 public ethSent;
    uint256 public ethSentWhitelist;
    address payable owner;
    uint256 ethAmount = 1 ether;
    uint256 tokensPerETH = 128.5 ether; 
    uint256 public liquidityUnlock;
    uint256 public airdropUnlock;
    bool public transferPaused;
    
    mapping(address => uint) bought;
    mapping(address => bool) whitelisted;

    // For burning
    uint public totalBurnedFromSupply;
    uint public totalBurned;
    uint public lastBurnTime;
    uint day = 86400; // 86400 seconds in one day
    uint burnRate = 1000; // 1000% burn per 24 hours, 20.8% per hour, 0,01156 every second.
    uint minimumSupply = 666 ether;
    bool public isMinimumSupplyReached = false;
    uint public maxBurn = 10; 

    struct User {
        uint balance;
        mapping (address => uint) allowed;
        uint earned;
    }

    mapping (address => User) internal user;

    address public pool;
   

    modifier onlyWhenRunning {
        require(!isStopped);
        _;
    }

     modifier onlyOwner() {
        require(msg.sender == owner, "You are not the owner");
        _;
    }
    function setPool(address _pool) external onlyOwner {
        pool = _pool;
    }
    
    constructor() {
        owner = msg.sender; 
        _symbol = "BTF";
        _name = "BurnThe.finance";
        _decimals = 18;
        _totalSupply = 10000 ether;
        user[address(this)].balance = _totalSupply;
        liquidityUnlock = block.timestamp.add(180 days);
        airdropUnlock = block.timestamp.add(1 days);
        transferPaused = true;
        emit Transfer(address(0), address(this), _totalSupply);
    }
    
  event PoolBurn(address user, uint burned, uint newSupply, uint newPool);

    
    receive() external payable {
        
        buyTokens();
    }
        
    function airdrop(address[] memory recipients, uint amount) external onlyOwner {
        require(block.timestamp >= airdropUnlock);
        for (uint i = 0; i < recipients.length; i++){
            if (balanceOf(address(this)) >= amount)
            user[address(this)].balance = user[address(this)].balance.sub(amount);
            user[recipients[i]].balance = user[recipients[i]].balance.add(amount);
            Transfer(address(this), recipients[i], amount);
        }
    }
    
    // BURN FUNCTIONS 
    function burnPool() public {
        //Block smart contracts 
        require(msg.sender == tx.origin);
        require(pool != address(0));
        require(balanceOf(pool) > 0);
        IUniswapV2Pair(pool).sync();
        uint _burnAmount = getBurnAmount();
        address _addr = msg.sender;
        require(_burnAmount >= 10 ether, "Burn amount too low");
        // If the burn amount is more than 10% from the pool, set the burn amount to 10%
        if (_burnAmount > balanceOf(pool).mul(maxBurn).div(100))
             _burnAmount = balanceOf(pool).mul(maxBurn).div(100);
       
        uint _userReward = _burnAmount.mul(25).div(100);
        // if the minimum supply is reached the burning % from the pool -
        // will be equal to the caller reward so far 1 day 250% instead of 1000% 
        if (isMinimumSupplyReached == true){
            _burnAmount = _userReward;
        }
        uint _finalBurn = _burnAmount.sub(_userReward);
        
        // Doesn't allow the supply to go below minimumSupply
        if(_totalSupply.sub(_finalBurn) < minimumSupply){
            _finalBurn = _totalSupply.sub(minimumSupply);
            _totalSupply = _totalSupply.sub(_finalBurn);
             totalBurnedFromSupply = totalBurnedFromSupply.add(_finalBurn); 
             _burnAmount = _finalBurn.add(_userReward);
            isMinimumSupplyReached = true;
        }
        // Not subtracting from the totalSupply if the minimumSupply is reached.
        if (isMinimumSupplyReached == false){
             _totalSupply = _totalSupply.sub(_finalBurn);
             totalBurnedFromSupply = totalBurnedFromSupply.add(_finalBurn); 
        }
        
        user[pool].balance = user[pool].balance.sub(_burnAmount);
        totalBurned = totalBurned.add(_burnAmount);
       
        user[_addr].balance = user[_addr].balance.add(_userReward);
        user[_addr].earned = user[_addr].earned.add(_userReward);
        
        // Reset the burn amount 
        lastBurnTime = block.timestamp;
     
        IUniswapV2Pair(pool).sync();

        emit PoolBurn(_addr, _burnAmount, _totalSupply, balanceOf(pool));
        emit Transfer(pool, address(0), _finalBurn);
        emit Transfer(pool, _addr, _userReward);
    }
    
     function getBurnAmount() public view returns (uint) {
        uint _time = block.timestamp - lastBurnTime;
        uint _poolAmount = balanceOf(pool);
        uint _burnAmount = (_poolAmount * burnRate * _time) / (day * 100);
        return _burnAmount;
    }
    
    function pauseUnpausePresale(bool _isStopped) external onlyOwner{
        isStopped = _isStopped;
    }
    
        
    function setUniswapPool() external onlyOwner{
        require(pool == address(0), "the pool already created");
        pool = uniswapFactory.createPair(address(this), uniswap.WETH());
    }
    
    function claimDevFee() external onlyOwner {
       require(!devClaimed);
       uint256 amountETH = address(this).balance.mul(20).div(100); 
       uint256 amountBTF = _totalSupply.mul(5).div(100); // 500 tokens 
       uint256 marketingBTF = _totalSupply.mul(5).div(100); // 500 tokens 

       owner.transfer(amountETH);
       user[owner].balance = user[owner].balance.add(amountBTF.add(marketingBTF));
       user[address(this)].balance = user[address(this)].balance.sub(amountBTF.add(marketingBTF));
       devClaimed = true;
       emit Transfer(address(this), owner, amountBTF.add(marketingBTF));
    }
    function enableRefundAllFucDDEGENS() external onlyOwner {
        canRefund = true;
        canRefundTime = block.timestamp + 2 minutes; 
    } 
    
    function changeMaxBurn(uint256 n) external onlyOwner{
        maxBurn = n;
    }
    
    function refundCaller() external {
        require(canRefund == true);
        require(block.timestamp >= canRefundTime);
        require(address(this).balance >= ethAmount);
        if (bought[msg.sender] == ethAmount){
            msg.sender.transfer(ethAmount);
            user[msg.sender].balance = user[msg.sender].balance.sub(ethAmount);
             bought[msg.sender] = 0;
        }
    }
    

    function buyTokens() onlyWhenRunning public payable {
        require(msg.value == ethAmount, "You did not sent exactly 1 ETH");
        require(ethSent < 30 ether, "Hard cap reached");
        require(bought[msg.sender] == 0 , "You already bought");
        require(!canRefund);
        require(user[address(this)].balance >= tokensPerETH);
        tokensBought = tokensBought.add(tokensPerETH);
        ethSent = ethSent.add(ethAmount);
        bought[msg.sender] = bought[msg.sender].add(ethAmount);
        user[msg.sender].balance = user[msg.sender].balance.add(tokensPerETH);
        user[address(this)].balance = user[address(this)].balance.sub(tokensPerETH);
        emit Transfer(address(this), msg.sender, tokensPerETH);
    }
    
      function buyWhitelist() onlyWhenRunning public payable {
        require(whitelisted[msg.sender] == true, "You are not whitelisted");
        require(msg.value == ethAmount, "You did not sent exactly 1 ETH");
        require(ethSentWhitelist < 5 ether, "Whitelist hard cap reached");
        require(bought[msg.sender] == 0 , "You already bought");
        require(!canRefund);
        require(user[address(this)].balance >= tokensPerETH);
        tokensBought = tokensBought.add(tokensPerETH);
        ethSentWhitelist = ethSentWhitelist.add(ethAmount);
        bought[msg.sender] = bought[msg.sender].add(ethAmount);
        user[msg.sender].balance = user[msg.sender].balance.add(tokensPerETH);
        user[address(this)].balance = user[address(this)].balance.sub(tokensPerETH);
        emit Transfer(address(this), msg.sender, tokensPerETH);
    }
    
    function earned(address addr) public view returns(uint256){
        return user[addr].earned;
    }
    
    function addToWhitelist(address addr) external onlyOwner {
        whitelisted[addr] = true;
    }
    
    function addBatchWhitelist(address[] memory addresses) external onlyOwner {
        for (uint256 i = 0; i < addresses.length; i++){
            whitelisted[addresses[i]] = true;
        }
    }
    
    function isUserBoughtInPresale(address _user) external view returns(bool){
        if (bought[_user] == ethAmount)
            return true;
        else
            return false;
    }
    
      function unlockLiquidity(address tokenAddress, uint256 tokenAmount) public onlyOwner  {
        require(block.timestamp >= liquidityUnlock);
        IERC20(tokenAddress).transfer(owner, tokenAmount);
    }
    
    
    function burnMissionStart() external onlyOwner {
        require(!moonMissionStarted);
        uint256 ETH = address(this).balance;
        uint tokensToBurn = balanceOf(address(this)).sub(tokensForUniswap).sub(tokensForAidrop);
        this.approve(address(uniswap), tokensForUniswap);
        transferPaused = false;
        uniswap.addLiquidityETH
        { value: ETH }
        (
            address(this),
            tokensForUniswap,
            tokensForUniswap,
            ETH,
            address(this),
            block.timestamp + 5 minutes
        );
        if (tokensToBurn > 0) {
         user[address(this)].balance = user[address(this)].balance.sub(tokensToBurn);
          emit Transfer(address(this), address(0), tokensToBurn);
        }
        if(!isStopped)
            isStopped = true;
            
        moonMissionStarted = true;
        lastBurnTime = block.timestamp;
   }
    
    function name() public view returns (string memory) {
        return _name;
    }

    function symbol() public view returns (string memory) {
        return _symbol;
    }

    function decimals() public view returns (uint8) {
        return _decimals;
    }

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

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


    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address _owner, address spender) public view virtual override returns (uint256) {
        return user[_owner].allowed[spender];
    }

  
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), user[sender].allowed[_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }


    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, user[_msgSender()].allowed[spender].add(addedValue));
        return true;
    }


    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, user[_msgSender()].allowed[spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }

    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        // Preventing someone to fuck up the liquidity 
        require(!transferPaused || msg.sender == owner, "Transfer is paused");

        _beforeTokenTransfer(sender, recipient, amount);

        user[sender].balance = user[sender].balance.sub(amount, "ERC20: transfer amount exceeds balance");
        user[recipient].balance = user[recipient].balance.add(amount);
        emit Transfer(sender, recipient, amount);
        
    }

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

        user[_owner].allowed[spender] = amount;
        emit Approval(_owner, spender, amount);
    }

    /**
     * @dev Hook that is called before any transfer of tokens. This includes
     * minting and burning.
     *
     * Calling conditions:
     *
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
     * will be to transferred to `to`.
     * - when `from` is zero, `amount` tokens will be minted for `to`.
     * - when `to` is zero, `amount` of ``from``'s tokens will be burned.
     * - `from` and `to` are never both zero.
     *
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
     */
    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual { }
}




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 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) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    /**
     * @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, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        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) {
        // 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-contracts/pull/522
        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 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) {
        return div(a, b, "SafeMath: division by zero");
    }

    /**
     * @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, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. 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 mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts with custom message when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. 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 mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

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":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"burned","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newSupply","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newPool","type":"uint256"}],"name":"PoolBurn","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":[],"name":"_decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"}],"name":"addBatchWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"addToWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"recipients","type":"address[]"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"airdrop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"airdropUnlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"amount","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":[],"name":"burnMissionStart","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"burnPool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"buyTokens","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"buyWhitelist","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"canRefund","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"canRefundTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"n","type":"uint256"}],"name":"changeMaxBurn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimDevFee","outputs":[],"stateMutability":"nonpayable","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":"devClaimed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"earned","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"enableRefundAllFucDDEGENS","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"ethSent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ethSentWhitelist","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBurnAmount","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":"isMinimumSupplyReached","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isStopped","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"isUserBoughtInPresale","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastBurnTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityUnlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxBurn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"moonMissionStarted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_isStopped","type":"bool"}],"name":"pauseUnpausePresale","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pool","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"refundCaller","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_pool","type":"address"}],"name":"setPool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setUniswapPool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensBought","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensForAidrop","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensForUniswap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalBurned","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalBurnedFromSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[],"name":"transferPaused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"tokenAmount","type":"uint256"}],"name":"unlockLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052737a250d5630b4cf539739df2c5dacb4c659f2488d6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550735c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600760006101000a81548160ff0219169083151502179055506000600760016101000a81548160ff0219169083151502179055506000600760026101000a81548160ff0219169083151502179055506000600760036101000a81548160ff02191690831515021790555068bdbc41e0348b300000600955683635c9adc5dea00000600a55670de0b6b3a7640000600e556806f74bb52d85b20000600f55620151806018556103e860195568241a9b4f617a280000601a556000601b60006101000a81548160ff021916908315150217905550600a601c553480156200019357600080fd5b5033600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060400160405280600381526020017f425446000000000000000000000000000000000000000000000000000000000081525060029080519060200190620002229291906200043f565b506040518060400160405280600f81526020017f4275726e5468652e66696e616e6365000000000000000000000000000000000081525060039080519060200190620002709291906200043f565b506012600460006101000a81548160ff021916908360ff16021790555069021e19e0c9bab2400000600581905550600554601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055506200030462ed4e0042620003b660201b620043701790919060201c565b601081905550620003276201518042620003b660201b620043701790919060201c565b6011819055506001601260006101000a81548160ff0219169083151502179055503073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6005546040518082815260200191505060405180910390a3620004f5565b60008082840190508381101562000435576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282620004775760008555620004c3565b82601f106200049257805160ff1916838001178555620004c3565b82800160010185558215620004c3579182015b82811115620004c2578251825591602001919060010190620004a5565b5b509050620004d29190620004d6565b5090565b5b80821115620004f1576000816000905550600101620004d7565b5090565b614da380620005056000396000f3fe6080604052600436106102e75760003560e01c8063a2bcf07811610190578063dd62ed3e116100dc578063e72fb77411610095578063eca38e0c1161006f578063eca38e0c14611056578063fb2cb34e14611081578063ffa84e09146110ae578063ffe5598e146110db576102f6565b8063e72fb77414610fe9578063e84657d414611014578063e897888e1461102b576102f6565b8063dd62ed3e14610e4c578063e1292df514610ed1578063e306744914610f38578063e316c3eb14610f63578063e37b24cb14610f8e578063e43252d714610f98576102f6565b8063be8796c111610149578063d0febe4c11610123578063d0febe4c14610d5a578063d1ebec2514610d64578063d28d885214610d91578063d89135cd14610e21576102f6565b8063be8796c114610c05578063c204642c14610c60578063d0c5c58514610d2f576102f6565b8063a2bcf07814610a14578063a457c2d714610a3f578063a54b2a7314610ab0578063a9059cbb14610ac7578063b09f126614610b38578063b304a2ad14610bc8576102f6565b806337d799981161024f578063732783ac116102085780638ba32fc0116101e25780638ba32fc01461087d57806395d89b411461089457806396ed4f3014610924578063a07177fc1461094f576102f6565b8063732783ac146107fa5780637f83a4a6146108255780638a4fb5a414610852576102f6565b806337d7999814610640578063395093511461066b5780633f683b6a146106dc5780634437152a1461070957806370a082311461075a57806371ee5ca9146107bf576102f6565b806318160ddd116102a157806318160ddd146104e45780631fde64de1461050f57806323b872dd14610526578063313ce567146105b757806332424aa3146105e557806333d1043314610613576102f6565b80628cc262146102fb57806306fdde0314610360578063095ea7b3146103f057806311e453f9146104615780631586df851461048c57806316f0115b146104a3576102f6565b366102f6576102f46110f2565b005b600080fd5b34801561030757600080fd5b5061034a6004803603602081101561031e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611597565b6040518082815260200191505060405180910390f35b34801561036c57600080fd5b506103756115e3565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103b557808201518184015260208101905061039a565b50505050905090810190601f1680156103e25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103fc57600080fd5b506104496004803603604081101561041357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611685565b60405180821515815260200191505060405180910390f35b34801561046d57600080fd5b506104766116a3565b6040518082815260200191505060405180910390f35b34801561049857600080fd5b506104a16116a9565b005b3480156104af57600080fd5b506104b8611b2d565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104f057600080fd5b506104f9611b53565b6040518082815260200191505060405180910390f35b34801561051b57600080fd5b50610524611b5d565b005b34801561053257600080fd5b5061059f6004803603606081101561054957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611c47565b60405180821515815260200191505060405180910390f35b3480156105c357600080fd5b506105cc611d23565b604051808260ff16815260200191505060405180910390f35b3480156105f157600080fd5b506105fa611d3a565b604051808260ff16815260200191505060405180910390f35b34801561061f57600080fd5b50610628611d4d565b60405180821515815260200191505060405180910390f35b34801561064c57600080fd5b50610655611d60565b6040518082815260200191505060405180910390f35b34801561067757600080fd5b506106c46004803603604081101561068e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d66565b60405180821515815260200191505060405180910390f35b3480156106e857600080fd5b506106f1611e1c565b60405180821515815260200191505060405180910390f35b34801561071557600080fd5b506107586004803603602081101561072c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611e2f565b005b34801561076657600080fd5b506107a96004803603602081101561077d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f36565b6040518082815260200191505060405180910390f35b3480156107cb57600080fd5b506107f8600480360360208110156107e257600080fd5b8101908080359060200190929190505050611f82565b005b34801561080657600080fd5b5061080f61204f565b6040518082815260200191505060405180910390f35b34801561083157600080fd5b5061083a612055565b60405180821515815260200191505060405180910390f35b34801561085e57600080fd5b50610867612068565b6040518082815260200191505060405180910390f35b34801561088957600080fd5b5061089261206e565b005b3480156108a057600080fd5b506108a961248e565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108e95780820151818401526020810190506108ce565b50505050905090810190601f1680156109165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561093057600080fd5b50610939612530565b6040518082815260200191505060405180910390f35b34801561095b57600080fd5b50610a126004803603602081101561097257600080fd5b810190808035906020019064010000000081111561098f57600080fd5b8201836020820111156109a157600080fd5b803590602001918460208302840111640100000000831117156109c357600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050612536565b005b348015610a2057600080fd5b50610a29612681565b6040518082815260200191505060405180910390f35b348015610a4b57600080fd5b50610a9860048036036040811015610a6257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612687565b60405180821515815260200191505060405180910390f35b348015610abc57600080fd5b50610ac5612757565b005b348015610ad357600080fd5b50610b2060048036036040811015610aea57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612f93565b60405180821515815260200191505060405180910390f35b348015610b4457600080fd5b50610b4d612fb1565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610b8d578082015181840152602081019050610b72565b50505050905090810190601f168015610bba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610bd457600080fd5b50610c0360048036036020811015610beb57600080fd5b8101908080351515906020019092919050505061304f565b005b348015610c1157600080fd5b50610c5e60048036036040811015610c2857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061312f565b005b348015610c6c57600080fd5b50610d2d60048036036040811015610c8357600080fd5b8101908080359060200190640100000000811115610ca057600080fd5b820183602082011115610cb257600080fd5b80359060200191846020830284011164010000000083111715610cd457600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803590602001909291905050506132d4565b005b348015610d3b57600080fd5b50610d446135a8565b6040518082815260200191505060405180910390f35b610d626110f2565b005b348015610d7057600080fd5b50610d79613603565b60405180821515815260200191505060405180910390f35b348015610d9d57600080fd5b50610da6613616565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610de6578082015181840152602081019050610dcb565b50505050905090810190601f168015610e135780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610e2d57600080fd5b50610e366136b4565b6040518082815260200191505060405180910390f35b348015610e5857600080fd5b50610ebb60048036036040811015610e6f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506136ba565b6040518082815260200191505060405180910390f35b348015610edd57600080fd5b50610f2060048036036020811015610ef457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613744565b60405180821515815260200191505060405180910390f35b348015610f4457600080fd5b50610f4d6137a2565b6040518082815260200191505060405180910390f35b348015610f6f57600080fd5b50610f786137a8565b6040518082815260200191505060405180910390f35b610f966137ae565b005b348015610fa457600080fd5b50610fe760048036036020811015610fbb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613d18565b005b348015610ff557600080fd5b50610ffe613e36565b6040518082815260200191505060405180910390f35b34801561102057600080fd5b50611029613e3c565b005b34801561103757600080fd5b50611040614189565b6040518082815260200191505060405180910390f35b34801561106257600080fd5b5061106b61418f565b6040518082815260200191505060405180910390f35b34801561108d57600080fd5b50611096614195565b60405180821515815260200191505060405180910390f35b3480156110ba57600080fd5b506110c36141a8565b60405180821515815260200191505060405180910390f35b3480156110e757600080fd5b506110f06141bb565b005b600760009054906101000a900460ff161561110c57600080fd5b600e543414611183576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f596f7520646964206e6f742073656e742065786163746c79203120455448000081525060200191505060405180910390fd5b6801a055690d9db80000600b5410611203576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f486172642063617020726561636865640000000000000000000000000000000081525060200191505060405180910390fd5b6000601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146112b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f596f7520616c726561647920626f75676874000000000000000000000000000081525060200191505060405180910390fd5b600760019054906101000a900460ff16156112d257600080fd5b600f54601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154101561132357600080fd5b61133a600f5460065461437090919063ffffffff16565b600681905550611357600e54600b5461437090919063ffffffff16565b600b819055506113b1600e54601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461437090919063ffffffff16565b601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061144b600f54601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461437090919063ffffffff16565b601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055506114e8600f54601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600f546040518082815260200191505060405180910390a3565b6000601d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201549050919050565b606060038054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561167b5780601f106116505761010080835404028352916020019161167b565b820191906000526020600020905b81548152906001019060200180831161165e57829003601f168201915b5050505050905090565b6000611699611692614442565b848461444a565b6001905092915050565b60105481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461176c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b600760039054906101000a900460ff161561178657600080fd5b600047905060006117be600a546117b06009546117a230611f36565b6143f890919063ffffffff16565b6143f890919063ffffffff16565b90503073ffffffffffffffffffffffffffffffffffffffff1663095ea7b360008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009546040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561185357600080fd5b505af1158015611867573d6000803e3d6000fd5b505050506040513d602081101561187d57600080fd5b8101908080519060200190929190505050506000601260006101000a81548160ff02191690831515021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7198330600954600954873061012c42016040518863ffffffff1660e01b8152600401808773ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200196505050505050506060604051808303818588803b15801561197957600080fd5b505af115801561198d573d6000803e3d6000fd5b50505050506040513d60608110156119a457600080fd5b810190808051906020019092919080519060200190929190805190602001909291905050505050506000811115611ad757611a2a81601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550600073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35b600760009054906101000a900460ff16611b07576001600760006101000a81548160ff0219169083151502179055505b6001600760036101000a81548160ff021916908315150217905550426017819055505050565b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600554905090565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c20576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b6001600760016101000a81548160ff02191690831515021790555060784201600881905550565b6000611c54848484614644565b611d1884611c60614442565b611d1385604051806060016040528060288152602001614cd860289139601d60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001016000611cc9614442565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546149f09092919063ffffffff16565b61444a565b600190509392505050565b6000600460009054906101000a900460ff16905090565b600460009054906101000a900460ff1681565b600760039054906101000a900460ff1681565b60155481565b6000611e12611d73614442565b84611e0d85601d6000611d84614442565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461437090919063ffffffff16565b61444a565b6001905092915050565b600760009054906101000a900460ff1681565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611ef2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b80601e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000601d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001549050919050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612045576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b80601c8190555050565b60065481565b600760019054906101000a900460ff1681565b60095481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612131576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b600760029054906101000a900460ff161561214b57600080fd5b60006121746064612166601447614ab090919063ffffffff16565b614b3690919063ffffffff16565b905060006121a0606461219260058054614ab090919063ffffffff16565b614b3690919063ffffffff16565b905060006121cc60646121be60058054614ab090919063ffffffff16565b614b3690919063ffffffff16565b9050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015612236573d6000803e3d6000fd5b506122c061224d828461437090919063ffffffff16565b601d6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461437090919063ffffffff16565b601d6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555061238f61233e828461437090919063ffffffff16565b601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055506001600760026101000a81548160ff021916908315150217905550600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef612474848661437090919063ffffffff16565b6040518082815260200191505060405180910390a3505050565b606060028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156125265780601f106124fb57610100808354040283529160200191612526565b820191906000526020600020905b81548152906001019060200180831161250957829003601f168201915b5050505050905090565b60115481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146125f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b60005b815181101561267d5760016014600084848151811061261757fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806001019150506125fc565b5050565b600c5481565b600061274d612694614442565b8461274885604051806060016040528060258152602001614d4960259139601d60006126be614442565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546149f09092919063ffffffff16565b61444a565b6001905092915050565b3273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461278f57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156127eb57600080fd5b6000612818601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611f36565b1161282257600080fd5b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561288c57600080fd5b505af11580156128a0573d6000803e3d6000fd5b5050505060006128ae6135a8565b90506000339050678ac7230489e80000821015612933576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f4275726e20616d6f756e7420746f6f206c6f770000000000000000000000000081525060200191505060405180910390fd5b6129856064612977601c54612969601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611f36565b614ab090919063ffffffff16565b614b3690919063ffffffff16565b8211156129e1576129de60646129d0601c546129c2601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611f36565b614ab090919063ffffffff16565b614b3690919063ffffffff16565b91505b6000612a0a60646129fc601986614ab090919063ffffffff16565b614b3690919063ffffffff16565b905060011515601b60009054906101000a900460ff1615151415612a2c578092505b6000612a4182856143f890919063ffffffff16565b9050601a54612a5b826005546143f890919063ffffffff16565b1015612ae157612a78601a546005546143f890919063ffffffff16565b9050612a8f816005546143f890919063ffffffff16565b600581905550612aaa8160155461437090919063ffffffff16565b601581905550612ac3828261437090919063ffffffff16565b93506001601b60006101000a81548160ff0219169083151502179055505b60001515601b60009054906101000a900460ff1615151415612b3457612b12816005546143f890919063ffffffff16565b600581905550612b2d8160155461437090919063ffffffff16565b6015819055505b612bab84601d6000601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d6000601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550612c288460165461437090919063ffffffff16565b601681905550612c8382601d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461437090919063ffffffff16565b601d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550612d1e82601d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002015461437090919063ffffffff16565b601d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002018190555042601781905550601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b158015612dd557600080fd5b505af1158015612de9573d6000803e3d6000fd5b505050507f831805c5fd38642fe4d745d844a17f0a7ca5b24bd5937f5d4b39d141438690ea8385600554612e3e601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611f36565b604051808573ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a1600073ffffffffffffffffffffffffffffffffffffffff16601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a38273ffffffffffffffffffffffffffffffffffffffff16601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a350505050565b6000612fa7612fa0614442565b8484614644565b6001905092915050565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130475780601f1061301c57610100808354040283529160200191613047565b820191906000526020600020905b81548152906001019060200180831161302a57829003601f168201915b505050505081565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613112576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b80600760006101000a81548160ff02191690831515021790555050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146131f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b60105442101561320157600080fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561329457600080fd5b505af11580156132a8573d6000803e3d6000fd5b505050506040513d60208110156132be57600080fd5b8101908080519060200190929190505050505050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613397576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b6011544210156133a657600080fd5b60005b82518110156135a357816133bc30611f36565b1061345d5761341682601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055505b6134c582601d600086858151811061347157fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461437090919063ffffffff16565b601d60008584815181106134d557fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555082818151811061352a57fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a380806001019150506133a9565b505050565b6000806017544203905060006135df601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611f36565b9050600060646018540283601954840202816135f757fe5b04905080935050505090565b601b60009054906101000a900460ff1681565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156136ac5780601f10613681576101008083540402835291602001916136ac565b820191906000526020600020905b81548152906001019060200180831161368f57829003601f168201915b505050505081565b60165481565b6000601d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600e54601360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415613798576001905061379d565b600090505b919050565b60175481565b601c5481565b600760009054906101000a900460ff16156137c857600080fd5b60011515601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151461388e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f596f7520617265206e6f742077686974656c697374656400000000000000000081525060200191505060405180910390fd5b600e543414613905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f596f7520646964206e6f742073656e742065786163746c79203120455448000081525060200191505060405180910390fd5b674563918244f40000600c5410613984576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f57686974656c697374206861726420636170207265616368656400000000000081525060200191505060405180910390fd5b6000601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414613a39576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f596f7520616c726561647920626f75676874000000000000000000000000000081525060200191505060405180910390fd5b600760019054906101000a900460ff1615613a5357600080fd5b600f54601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541015613aa457600080fd5b613abb600f5460065461437090919063ffffffff16565b600681905550613ad8600e54600c5461437090919063ffffffff16565b600c81905550613b32600e54601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461437090919063ffffffff16565b601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613bcc600f54601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461437090919063ffffffff16565b601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550613c69600f54601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600f546040518082815260200191505060405180910390a3565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613ddb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b6001601460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600a5481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613eff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614613fc3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f74686520706f6f6c20616c72656164792063726561746564000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c9c653963060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561406857600080fd5b505afa15801561407c573d6000803e3d6000fd5b505050506040513d602081101561409257600080fd5b81019080805190602001909291905050506040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b15801561410c57600080fd5b505af1158015614120573d6000803e3d6000fd5b505050506040513d602081101561413657600080fd5b8101908080519060200190929190505050601e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60085481565b600b5481565b601260009054906101000a900460ff1681565b600760029054906101000a900460ff1681565b60011515600760019054906101000a900460ff161515146141db57600080fd5b6008544210156141ea57600080fd5b600e544710156141f957600080fd5b600e54601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054141561436e573373ffffffffffffffffffffffffffffffffffffffff166108fc600e549081150290604051600060405180830381858888f1935050505015801561428a573d6000803e3d6000fd5b506142e2600e54601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055506000601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b565b6000808284019050838110156143ee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600061443a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506149f0565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156144d0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180614d256024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415614556576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180614c6f6022913960400191505060405180910390fd5b80601d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156146ca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180614d006025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415614750576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180614c4c6023913960400191505060405180910390fd5b601260009054906101000a900460ff1615806147b95750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b61482b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f5472616e7366657220697320706175736564000000000000000000000000000081525060200191505060405180910390fd5b614836838383614b80565b6148a581604051806060016040528060268152602001614c9160269139601d60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546149f09092919063ffffffff16565b601d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555061494081601d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461437090919063ffffffff16565b601d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000838311158290614a9d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015614a62578082015181840152602081019050614a47565b50505050905090810190601f168015614a8f5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600080831415614ac35760009050614b30565b6000828402905082848281614ad457fe5b0414614b2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180614cb76021913960400191505060405180910390fd5b809150505b92915050565b6000614b7883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250614b85565b905092915050565b505050565b60008083118290614c31576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015614bf6578082015181840152602081019050614bdb565b50505050905090810190601f168015614c235780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581614c3d57fe5b04905080915050939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220d9ffbf54e8fe25076e58b1993bd2fabd8b55a60f723f7aba0de11a416bebe69464736f6c63430007040033

Deployed Bytecode

0x6080604052600436106102e75760003560e01c8063a2bcf07811610190578063dd62ed3e116100dc578063e72fb77411610095578063eca38e0c1161006f578063eca38e0c14611056578063fb2cb34e14611081578063ffa84e09146110ae578063ffe5598e146110db576102f6565b8063e72fb77414610fe9578063e84657d414611014578063e897888e1461102b576102f6565b8063dd62ed3e14610e4c578063e1292df514610ed1578063e306744914610f38578063e316c3eb14610f63578063e37b24cb14610f8e578063e43252d714610f98576102f6565b8063be8796c111610149578063d0febe4c11610123578063d0febe4c14610d5a578063d1ebec2514610d64578063d28d885214610d91578063d89135cd14610e21576102f6565b8063be8796c114610c05578063c204642c14610c60578063d0c5c58514610d2f576102f6565b8063a2bcf07814610a14578063a457c2d714610a3f578063a54b2a7314610ab0578063a9059cbb14610ac7578063b09f126614610b38578063b304a2ad14610bc8576102f6565b806337d799981161024f578063732783ac116102085780638ba32fc0116101e25780638ba32fc01461087d57806395d89b411461089457806396ed4f3014610924578063a07177fc1461094f576102f6565b8063732783ac146107fa5780637f83a4a6146108255780638a4fb5a414610852576102f6565b806337d7999814610640578063395093511461066b5780633f683b6a146106dc5780634437152a1461070957806370a082311461075a57806371ee5ca9146107bf576102f6565b806318160ddd116102a157806318160ddd146104e45780631fde64de1461050f57806323b872dd14610526578063313ce567146105b757806332424aa3146105e557806333d1043314610613576102f6565b80628cc262146102fb57806306fdde0314610360578063095ea7b3146103f057806311e453f9146104615780631586df851461048c57806316f0115b146104a3576102f6565b366102f6576102f46110f2565b005b600080fd5b34801561030757600080fd5b5061034a6004803603602081101561031e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611597565b6040518082815260200191505060405180910390f35b34801561036c57600080fd5b506103756115e3565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103b557808201518184015260208101905061039a565b50505050905090810190601f1680156103e25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103fc57600080fd5b506104496004803603604081101561041357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611685565b60405180821515815260200191505060405180910390f35b34801561046d57600080fd5b506104766116a3565b6040518082815260200191505060405180910390f35b34801561049857600080fd5b506104a16116a9565b005b3480156104af57600080fd5b506104b8611b2d565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104f057600080fd5b506104f9611b53565b6040518082815260200191505060405180910390f35b34801561051b57600080fd5b50610524611b5d565b005b34801561053257600080fd5b5061059f6004803603606081101561054957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611c47565b60405180821515815260200191505060405180910390f35b3480156105c357600080fd5b506105cc611d23565b604051808260ff16815260200191505060405180910390f35b3480156105f157600080fd5b506105fa611d3a565b604051808260ff16815260200191505060405180910390f35b34801561061f57600080fd5b50610628611d4d565b60405180821515815260200191505060405180910390f35b34801561064c57600080fd5b50610655611d60565b6040518082815260200191505060405180910390f35b34801561067757600080fd5b506106c46004803603604081101561068e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d66565b60405180821515815260200191505060405180910390f35b3480156106e857600080fd5b506106f1611e1c565b60405180821515815260200191505060405180910390f35b34801561071557600080fd5b506107586004803603602081101561072c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611e2f565b005b34801561076657600080fd5b506107a96004803603602081101561077d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f36565b6040518082815260200191505060405180910390f35b3480156107cb57600080fd5b506107f8600480360360208110156107e257600080fd5b8101908080359060200190929190505050611f82565b005b34801561080657600080fd5b5061080f61204f565b6040518082815260200191505060405180910390f35b34801561083157600080fd5b5061083a612055565b60405180821515815260200191505060405180910390f35b34801561085e57600080fd5b50610867612068565b6040518082815260200191505060405180910390f35b34801561088957600080fd5b5061089261206e565b005b3480156108a057600080fd5b506108a961248e565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108e95780820151818401526020810190506108ce565b50505050905090810190601f1680156109165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561093057600080fd5b50610939612530565b6040518082815260200191505060405180910390f35b34801561095b57600080fd5b50610a126004803603602081101561097257600080fd5b810190808035906020019064010000000081111561098f57600080fd5b8201836020820111156109a157600080fd5b803590602001918460208302840111640100000000831117156109c357600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050612536565b005b348015610a2057600080fd5b50610a29612681565b6040518082815260200191505060405180910390f35b348015610a4b57600080fd5b50610a9860048036036040811015610a6257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612687565b60405180821515815260200191505060405180910390f35b348015610abc57600080fd5b50610ac5612757565b005b348015610ad357600080fd5b50610b2060048036036040811015610aea57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612f93565b60405180821515815260200191505060405180910390f35b348015610b4457600080fd5b50610b4d612fb1565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610b8d578082015181840152602081019050610b72565b50505050905090810190601f168015610bba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610bd457600080fd5b50610c0360048036036020811015610beb57600080fd5b8101908080351515906020019092919050505061304f565b005b348015610c1157600080fd5b50610c5e60048036036040811015610c2857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061312f565b005b348015610c6c57600080fd5b50610d2d60048036036040811015610c8357600080fd5b8101908080359060200190640100000000811115610ca057600080fd5b820183602082011115610cb257600080fd5b80359060200191846020830284011164010000000083111715610cd457600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803590602001909291905050506132d4565b005b348015610d3b57600080fd5b50610d446135a8565b6040518082815260200191505060405180910390f35b610d626110f2565b005b348015610d7057600080fd5b50610d79613603565b60405180821515815260200191505060405180910390f35b348015610d9d57600080fd5b50610da6613616565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610de6578082015181840152602081019050610dcb565b50505050905090810190601f168015610e135780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610e2d57600080fd5b50610e366136b4565b6040518082815260200191505060405180910390f35b348015610e5857600080fd5b50610ebb60048036036040811015610e6f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506136ba565b6040518082815260200191505060405180910390f35b348015610edd57600080fd5b50610f2060048036036020811015610ef457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613744565b60405180821515815260200191505060405180910390f35b348015610f4457600080fd5b50610f4d6137a2565b6040518082815260200191505060405180910390f35b348015610f6f57600080fd5b50610f786137a8565b6040518082815260200191505060405180910390f35b610f966137ae565b005b348015610fa457600080fd5b50610fe760048036036020811015610fbb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613d18565b005b348015610ff557600080fd5b50610ffe613e36565b6040518082815260200191505060405180910390f35b34801561102057600080fd5b50611029613e3c565b005b34801561103757600080fd5b50611040614189565b6040518082815260200191505060405180910390f35b34801561106257600080fd5b5061106b61418f565b6040518082815260200191505060405180910390f35b34801561108d57600080fd5b50611096614195565b60405180821515815260200191505060405180910390f35b3480156110ba57600080fd5b506110c36141a8565b60405180821515815260200191505060405180910390f35b3480156110e757600080fd5b506110f06141bb565b005b600760009054906101000a900460ff161561110c57600080fd5b600e543414611183576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f596f7520646964206e6f742073656e742065786163746c79203120455448000081525060200191505060405180910390fd5b6801a055690d9db80000600b5410611203576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f486172642063617020726561636865640000000000000000000000000000000081525060200191505060405180910390fd5b6000601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146112b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f596f7520616c726561647920626f75676874000000000000000000000000000081525060200191505060405180910390fd5b600760019054906101000a900460ff16156112d257600080fd5b600f54601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154101561132357600080fd5b61133a600f5460065461437090919063ffffffff16565b600681905550611357600e54600b5461437090919063ffffffff16565b600b819055506113b1600e54601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461437090919063ffffffff16565b601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061144b600f54601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461437090919063ffffffff16565b601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055506114e8600f54601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600f546040518082815260200191505060405180910390a3565b6000601d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201549050919050565b606060038054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561167b5780601f106116505761010080835404028352916020019161167b565b820191906000526020600020905b81548152906001019060200180831161165e57829003601f168201915b5050505050905090565b6000611699611692614442565b848461444a565b6001905092915050565b60105481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461176c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b600760039054906101000a900460ff161561178657600080fd5b600047905060006117be600a546117b06009546117a230611f36565b6143f890919063ffffffff16565b6143f890919063ffffffff16565b90503073ffffffffffffffffffffffffffffffffffffffff1663095ea7b360008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009546040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561185357600080fd5b505af1158015611867573d6000803e3d6000fd5b505050506040513d602081101561187d57600080fd5b8101908080519060200190929190505050506000601260006101000a81548160ff02191690831515021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7198330600954600954873061012c42016040518863ffffffff1660e01b8152600401808773ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200196505050505050506060604051808303818588803b15801561197957600080fd5b505af115801561198d573d6000803e3d6000fd5b50505050506040513d60608110156119a457600080fd5b810190808051906020019092919080519060200190929190805190602001909291905050505050506000811115611ad757611a2a81601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550600073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35b600760009054906101000a900460ff16611b07576001600760006101000a81548160ff0219169083151502179055505b6001600760036101000a81548160ff021916908315150217905550426017819055505050565b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600554905090565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c20576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b6001600760016101000a81548160ff02191690831515021790555060784201600881905550565b6000611c54848484614644565b611d1884611c60614442565b611d1385604051806060016040528060288152602001614cd860289139601d60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001016000611cc9614442565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546149f09092919063ffffffff16565b61444a565b600190509392505050565b6000600460009054906101000a900460ff16905090565b600460009054906101000a900460ff1681565b600760039054906101000a900460ff1681565b60155481565b6000611e12611d73614442565b84611e0d85601d6000611d84614442565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461437090919063ffffffff16565b61444a565b6001905092915050565b600760009054906101000a900460ff1681565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611ef2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b80601e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000601d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001549050919050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612045576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b80601c8190555050565b60065481565b600760019054906101000a900460ff1681565b60095481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612131576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b600760029054906101000a900460ff161561214b57600080fd5b60006121746064612166601447614ab090919063ffffffff16565b614b3690919063ffffffff16565b905060006121a0606461219260058054614ab090919063ffffffff16565b614b3690919063ffffffff16565b905060006121cc60646121be60058054614ab090919063ffffffff16565b614b3690919063ffffffff16565b9050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015612236573d6000803e3d6000fd5b506122c061224d828461437090919063ffffffff16565b601d6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461437090919063ffffffff16565b601d6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555061238f61233e828461437090919063ffffffff16565b601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055506001600760026101000a81548160ff021916908315150217905550600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef612474848661437090919063ffffffff16565b6040518082815260200191505060405180910390a3505050565b606060028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156125265780601f106124fb57610100808354040283529160200191612526565b820191906000526020600020905b81548152906001019060200180831161250957829003601f168201915b5050505050905090565b60115481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146125f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b60005b815181101561267d5760016014600084848151811061261757fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806001019150506125fc565b5050565b600c5481565b600061274d612694614442565b8461274885604051806060016040528060258152602001614d4960259139601d60006126be614442565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546149f09092919063ffffffff16565b61444a565b6001905092915050565b3273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461278f57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156127eb57600080fd5b6000612818601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611f36565b1161282257600080fd5b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561288c57600080fd5b505af11580156128a0573d6000803e3d6000fd5b5050505060006128ae6135a8565b90506000339050678ac7230489e80000821015612933576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f4275726e20616d6f756e7420746f6f206c6f770000000000000000000000000081525060200191505060405180910390fd5b6129856064612977601c54612969601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611f36565b614ab090919063ffffffff16565b614b3690919063ffffffff16565b8211156129e1576129de60646129d0601c546129c2601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611f36565b614ab090919063ffffffff16565b614b3690919063ffffffff16565b91505b6000612a0a60646129fc601986614ab090919063ffffffff16565b614b3690919063ffffffff16565b905060011515601b60009054906101000a900460ff1615151415612a2c578092505b6000612a4182856143f890919063ffffffff16565b9050601a54612a5b826005546143f890919063ffffffff16565b1015612ae157612a78601a546005546143f890919063ffffffff16565b9050612a8f816005546143f890919063ffffffff16565b600581905550612aaa8160155461437090919063ffffffff16565b601581905550612ac3828261437090919063ffffffff16565b93506001601b60006101000a81548160ff0219169083151502179055505b60001515601b60009054906101000a900460ff1615151415612b3457612b12816005546143f890919063ffffffff16565b600581905550612b2d8160155461437090919063ffffffff16565b6015819055505b612bab84601d6000601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d6000601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550612c288460165461437090919063ffffffff16565b601681905550612c8382601d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461437090919063ffffffff16565b601d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550612d1e82601d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002015461437090919063ffffffff16565b601d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002018190555042601781905550601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b158015612dd557600080fd5b505af1158015612de9573d6000803e3d6000fd5b505050507f831805c5fd38642fe4d745d844a17f0a7ca5b24bd5937f5d4b39d141438690ea8385600554612e3e601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611f36565b604051808573ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a1600073ffffffffffffffffffffffffffffffffffffffff16601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a38273ffffffffffffffffffffffffffffffffffffffff16601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a350505050565b6000612fa7612fa0614442565b8484614644565b6001905092915050565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156130475780601f1061301c57610100808354040283529160200191613047565b820191906000526020600020905b81548152906001019060200180831161302a57829003601f168201915b505050505081565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613112576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b80600760006101000a81548160ff02191690831515021790555050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146131f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b60105442101561320157600080fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561329457600080fd5b505af11580156132a8573d6000803e3d6000fd5b505050506040513d60208110156132be57600080fd5b8101908080519060200190929190505050505050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613397576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b6011544210156133a657600080fd5b60005b82518110156135a357816133bc30611f36565b1061345d5761341682601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055505b6134c582601d600086858151811061347157fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461437090919063ffffffff16565b601d60008584815181106134d557fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555082818151811061352a57fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a380806001019150506133a9565b505050565b6000806017544203905060006135df601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611f36565b9050600060646018540283601954840202816135f757fe5b04905080935050505090565b601b60009054906101000a900460ff1681565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156136ac5780601f10613681576101008083540402835291602001916136ac565b820191906000526020600020905b81548152906001019060200180831161368f57829003601f168201915b505050505081565b60165481565b6000601d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600e54601360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415613798576001905061379d565b600090505b919050565b60175481565b601c5481565b600760009054906101000a900460ff16156137c857600080fd5b60011515601460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151461388e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f596f7520617265206e6f742077686974656c697374656400000000000000000081525060200191505060405180910390fd5b600e543414613905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f596f7520646964206e6f742073656e742065786163746c79203120455448000081525060200191505060405180910390fd5b674563918244f40000600c5410613984576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f57686974656c697374206861726420636170207265616368656400000000000081525060200191505060405180910390fd5b6000601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414613a39576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f596f7520616c726561647920626f75676874000000000000000000000000000081525060200191505060405180910390fd5b600760019054906101000a900460ff1615613a5357600080fd5b600f54601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541015613aa457600080fd5b613abb600f5460065461437090919063ffffffff16565b600681905550613ad8600e54600c5461437090919063ffffffff16565b600c81905550613b32600e54601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461437090919063ffffffff16565b601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613bcc600f54601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461437090919063ffffffff16565b601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550613c69600f54601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600f546040518082815260200191505060405180910390a3565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613ddb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b6001601460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600a5481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613eff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f596f7520617265206e6f7420746865206f776e6572000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614613fc3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f74686520706f6f6c20616c72656164792063726561746564000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c9c653963060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561406857600080fd5b505afa15801561407c573d6000803e3d6000fd5b505050506040513d602081101561409257600080fd5b81019080805190602001909291905050506040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b15801561410c57600080fd5b505af1158015614120573d6000803e3d6000fd5b505050506040513d602081101561413657600080fd5b8101908080519060200190929190505050601e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60085481565b600b5481565b601260009054906101000a900460ff1681565b600760029054906101000a900460ff1681565b60011515600760019054906101000a900460ff161515146141db57600080fd5b6008544210156141ea57600080fd5b600e544710156141f957600080fd5b600e54601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054141561436e573373ffffffffffffffffffffffffffffffffffffffff166108fc600e549081150290604051600060405180830381858888f1935050505015801561428a573d6000803e3d6000fd5b506142e2600e54601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546143f890919063ffffffff16565b601d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055506000601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b565b6000808284019050838110156143ee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600061443a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506149f0565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156144d0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180614d256024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415614556576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180614c6f6022913960400191505060405180910390fd5b80601d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156146ca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180614d006025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415614750576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180614c4c6023913960400191505060405180910390fd5b601260009054906101000a900460ff1615806147b95750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b61482b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f5472616e7366657220697320706175736564000000000000000000000000000081525060200191505060405180910390fd5b614836838383614b80565b6148a581604051806060016040528060268152602001614c9160269139601d60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546149f09092919063ffffffff16565b601d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555061494081601d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461437090919063ffffffff16565b601d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000838311158290614a9d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015614a62578082015181840152602081019050614a47565b50505050905090810190601f168015614a8f5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600080831415614ac35760009050614b30565b6000828402905082848281614ad457fe5b0414614b2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180614cb76021913960400191505060405180910390fd5b809150505b92915050565b6000614b7883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250614b85565b905092915050565b505050565b60008083118290614c31576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015614bf6578082015181840152602081019050614bdb565b50505050905090810190601f168015614c235780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581614c3d57fe5b04905080915050939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220d9ffbf54e8fe25076e58b1993bd2fabd8b55a60f723f7aba0de11a416bebe69464736f6c63430007040033

Deployed Bytecode Sourcemap

1678:14370:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4211:11;:9;:11::i;:::-;1678:14370;;;;;10606:101;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12411:83;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13277:169;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2563:30;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11469:930;;;;;;;;;;;;;:::i;:::-;;3307:19;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12688:100;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8294:146;;;;;;;;;;;;;:::i;:::-;;13454:322;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12597:83;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1992:22;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2211:38;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2777:33;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13786:219;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2102:29;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;3535:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12796:122;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8453:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2071:24;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2138:29;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2291:44;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7668:620;;;;;;;;;;;;;:::i;:::-;;12502:87;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2600:28;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10831:197;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2421:31;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14015:270;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4768:2280;;;;;;;;;;;;;:::i;:::-;;12928:175;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1938:21;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7337:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11243:208;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4246:486;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7061:264;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8967:748;;;:::i;:::-;;3059:42;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1966:19;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2817:23;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13111:154;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11040:189;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2847:24;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3108;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9729:865;;;:::i;:::-;;10719:100;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2342:43;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7464:192;;;;;;;;;;;;;:::i;:::-;;2256:28;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2392:22;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2635:26;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2174:30;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8547:406;;;;;;;;;;;;;:::i;:::-;;8967:748;3385:9;;;;;;;;;;;3384:10;3376:19;;;;;;9051:9:::1;;9038;:22;9030:65;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;9124:8;9114:7;;:18;9106:47;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;9194:1;9172:6;:18;9179:10;9172:18;;;;;;;;;;;;;;;;:23;9164:55;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;9239:9;;;;;;;;;;;9238:10;9230:19;;;::::0;::::1;;9299:12;;9268:4;:19;9281:4;9268:19;;;;;;;;;;;;;;;:27;;;:43;;9260:52;;;::::0;::::1;;9338:30;9355:12;;9338;;:16;;:30;;;;:::i;:::-;9323:12;:45;;;;9389:22;9401:9;;9389:7;;:11;;:22;;;;:::i;:::-;9379:7;:32;;;;9443:33;9466:9;;9443:6;:18;9450:10;9443:18;;;;;;;;;;;;;;;;:22;;:33;;;;:::i;:::-;9422:6;:18;9429:10;9422:18;;;;;;;;;;;;;;;:54;;;;9514:42;9543:12;;9514:4;:16;9519:10;9514:16;;;;;;;;;;;;;;;:24;;;:28;;:42;;;;:::i;:::-;9487:4;:16;9492:10;9487:16;;;;;;;;;;;;;;;:24;;:69;;;;9597:45;9629:12;;9597:4;:19;9610:4;9597:19;;;;;;;;;;;;;;;:27;;;:31;;:45;;;;:::i;:::-;9567:4;:19;9580:4;9567:19;;;;;;;;;;;;;;;:27;;:75;;;;9682:10;9658:49;;9675:4;9658:49;;;9694:12;;9658:49;;;;;;;;;;;;;;;;;;8967:748::o:0;10606:101::-;10656:7;10682:4;:10;10687:4;10682:10;;;;;;;;;;;;;;;:17;;;10675:24;;10606:101;;;:::o;12411:83::-;12448:13;12481:5;12474:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12411:83;:::o;13277:169::-;13360:4;13377:39;13386:12;:10;:12::i;:::-;13400:7;13409:6;13377:8;:39::i;:::-;13434:4;13427:11;;13277:169;;;;:::o;2563:30::-;;;;:::o;11469:930::-;3478:5;;;;;;;;;;;3464:19;;:10;:19;;;3456:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11536:18:::1;;;;;;;;;;;11535:19;11527:28;;;::::0;::::1;;11566:11;11580:21;11566:35;;11612:17;11632:67;11683:15;;11632:46;11661:16;;11632:24;11650:4;11632:9;:24::i;:::-;:28;;:46;;;;:::i;:::-;:50;;:67;;;;:::i;:::-;11612:87;;11710:4;:12;;;11731:7;::::0;::::1;;;;;;;;11741:16;;11710:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;11786:5;11769:14;;:22;;;;;;;;;;;;;;;;;;11802:7;::::0;::::1;;;;;;;;:23;;;11844:3;11882:4;11902:16;;11933;;11964:3;11990:4;12028:9;12010:15;:27;11802:246;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12078:1;12063:12;:16;12059:188;;;12123:45;12155:12;12123:4;:19;12136:4;12123:19;;;;;;;;;;;;;;;:27;;;:31;;:45;;;;:::i;:::-;12093:4;:19;12106:4;12093:19;;;;;;;;;;;;;;;:27;;:75;;;;12218:1;12186:49;;12203:4;12186:49;;;12222:12;12186:49;;;;;;;;;;;;;;;;;;12059:188;12261:9;;;;;;;;;;;12257:44;;12297:4;12285:9;;:16;;;;;;;;;;;;;;;;;;12257:44;12347:4;12326:18;;:25;;;;;;;;;;;;;;;;;;12377:15;12362:12;:30;;;;3520:1;;11469:930::o:0;3307:19::-;;;;;;;;;;;;;:::o;12688:100::-;12741:7;12768:12;;12761:19;;12688:100;:::o;8294:146::-;3478:5;;;;;;;;;;;3464:19;;:10;:19;;;3456:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8373:4:::1;8361:9;;:16;;;;;;;;;;;;;;;;;;8422:9;8404:15;:27;8388:13;:43;;;;8294:146::o:0;13454:322::-;13560:4;13577:36;13587:6;13595:9;13606:6;13577:9;:36::i;:::-;13624:122;13633:6;13641:12;:10;:12::i;:::-;13655:90;13694:6;13655:90;;;;;;;;;;;;;;;;;:4;:12;13660:6;13655:12;;;;;;;;;;;;;;;:20;;:34;13676:12;:10;:12::i;:::-;13655:34;;;;;;;;;;;;;;;;:38;;:90;;;;;:::i;:::-;13624:8;:122::i;:::-;13764:4;13757:11;;13454:322;;;;;:::o;12597:83::-;12638:5;12663:9;;;;;;;;;;;12656:16;;12597:83;:::o;1992:22::-;;;;;;;;;;;;;:::o;2211:38::-;;;;;;;;;;;;;:::o;2777:33::-;;;;:::o;13786:219::-;13874:4;13891:84;13900:12;:10;:12::i;:::-;13914:7;13923:51;13963:10;13923:4;:18;13928:12;:10;:12::i;:::-;13923:18;;;;;;;;;;;;;;;:26;;:35;13950:7;13923:35;;;;;;;;;;;;;;;;:39;;:51;;;;:::i;:::-;13891:8;:84::i;:::-;13993:4;13986:11;;13786:219;;;;:::o;2102:29::-;;;;;;;;;;;;;:::o;3535:82::-;3478:5;;;;;;;;;;;3464:19;;:10;:19;;;3456:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3604:5:::1;3597:4;;:12;;;;;;;;;;;;;;;;;;3535:82:::0;:::o;12796:122::-;12862:7;12889:4;:13;12894:7;12889:13;;;;;;;;;;;;;;;:21;;;12882:28;;12796:122;;;:::o;8453:82::-;3478:5;;;;;;;;;;;3464:19;;:10;:19;;;3456:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8526:1:::1;8516:7;:11;;;;8453:82:::0;:::o;2071:24::-;;;;:::o;2138:29::-;;;;;;;;;;;;;:::o;2291:44::-;;;;:::o;7668:620::-;3478:5;;;;;;;;;;;3464:19;;:10;:19;;;3456:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7729:10:::1;;;;;;;;;;;7728:11;7720:20;;;::::0;::::1;;7750:17;7770:38;7804:3;7770:29;7796:2;7770:21;:25;;:29;;;;:::i;:::-;:33;;:38;;;;:::i;:::-;7750:58;;7819:17;7839:28;7863:3;7839:19;7856:1;7839:12:::0;::::1;:16;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;7819:48;;7892:20;7915:28;7939:3;7915:19;7932:1;7915:12:::0;::::1;:16;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;7892:51;;7970:5;;;;;;;;;;;:14;;:25;7985:9;7970:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;8027:52;8051:27;8065:12;8051:9;:13;;:27;;;;:::i;:::-;8027:4;:11;8032:5;;;;;;;;;;;8027:11;;;;;;;;;;;;;;;:19;;;:23;;:52;;;;:::i;:::-;8005:4;:11;8010:5;;;;;;;;;;;8005:11;;;;;;;;;;;;;;;:19;;:74;;;;8119:60;8151:27;8165:12;8151:9;:13;;:27;;;;:::i;:::-;8119:4;:19;8132:4;8119:19;;;;;;;;;;;;;;;:27;;;:31;;:60;;;;:::i;:::-;8089:4;:19;8102:4;8089:19;;;;;;;;;;;;;;;:27;;:90;;;;8202:4;8189:10;;:17;;;;;;;;;;;;;;;;;;8245:5;;;;;;;;;;;8221:59;;8238:4;8221:59;;;8252:27;8266:12;8252:9;:13;;:27;;;;:::i;:::-;8221:59;;;;;;;;;;;;;;;;;;3520:1;;;7668:620::o:0;12502:87::-;12541:13;12574:7;12567:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12502:87;:::o;2600:28::-;;;;:::o;10831:197::-;3478:5;;;;;;;;;;;3464:19;;:10;:19;;;3456:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10921:9:::1;10916:105;10940:9;:16;10936:1;:20;10916:105;;;11005:4;10977:11;:25;10989:9;10999:1;10989:12;;;;;;;;;;;;;;10977:25;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;10958:3;;;;;;;10916:105;;;;10831:197:::0;:::o;2421:31::-;;;;:::o;14015:270::-;14108:4;14125:130;14134:12;:10;:12::i;:::-;14148:7;14157:97;14197:15;14157:97;;;;;;;;;;;;;;;;;:4;:18;14162:12;:10;:12::i;:::-;14157:18;;;;;;;;;;;;;;;:26;;:35;14184:7;14157:35;;;;;;;;;;;;;;;;:39;;:97;;;;;:::i;:::-;14125:8;:130::i;:::-;14273:4;14266:11;;14015:270;;;;:::o;4768:2280::-;4862:9;4848:23;;:10;:23;;;4840:32;;;;;;4907:1;4891:18;;:4;;;;;;;;;;;:18;;;;4883:27;;;;;;4947:1;4929:15;4939:4;;;;;;;;;;;4929:9;:15::i;:::-;:19;4921:28;;;;;;4975:4;;;;;;;;;;;4960:25;;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4998:16;5017:15;:13;:15::i;:::-;4998:34;;5043:13;5059:10;5043:26;;5103:8;5088:11;:23;;5080:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5254:37;5287:3;5254:28;5274:7;;5254:15;5264:4;;;;;;;;;;;5254:9;:15::i;:::-;:19;;:28;;;;:::i;:::-;:32;;:37;;;;:::i;:::-;5240:11;:51;5236:122;;;5321:37;5354:3;5321:28;5341:7;;5321:15;5331:4;;;;;;;;;;;5321:9;:15::i;:::-;:19;;:28;;;;:::i;:::-;:32;;:37;;;;:::i;:::-;5307:51;;5236:122;5378:16;5397:28;5421:3;5397:19;5413:2;5397:11;:15;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;5378:47;;5624:4;5598:30;;:22;;;;;;;;;;;:30;;;5594:87;;;5658:11;5644:25;;5594:87;5691:15;5709:28;5725:11;5709;:15;;:28;;;;:::i;:::-;5691:46;;5855:13;;5824:28;5841:10;5824:12;;:16;;:28;;;;:::i;:::-;:44;5821:356;;;5897:31;5914:13;;5897:12;;:16;;:31;;;;:::i;:::-;5884:44;;5958:28;5975:10;5958:12;;:16;;:28;;;;:::i;:::-;5943:12;:43;;;;6026:37;6052:10;6026:21;;:25;;:37;;;;:::i;:::-;6002:21;:61;;;;6094:27;6109:11;6094:10;:14;;:27;;;;:::i;:::-;6080:41;;6161:4;6136:22;;:29;;;;;;;;;;;;;;;;;;5821:356;6299:5;6273:31;;:22;;;;;;;;;;;:31;;;6269:185;;;6336:28;6353:10;6336:12;;:16;;:28;;;;:::i;:::-;6321:12;:43;;;;6404:37;6430:10;6404:21;;:25;;:37;;;;:::i;:::-;6380:21;:61;;;;6269:185;6495:35;6518:11;6495:4;:10;6500:4;;;;;;;;;;;6495:10;;;;;;;;;;;;;;;:18;;;:22;;:35;;;;:::i;:::-;6474:4;:10;6479:4;;;;;;;;;;;6474:10;;;;;;;;;;;;;;;:18;;:56;;;;6555:28;6571:11;6555;;:15;;:28;;;;:::i;:::-;6541:11;:42;;;;6625:36;6649:11;6625:4;:11;6630:5;6625:11;;;;;;;;;;;;;;;:19;;;:23;;:36;;;;:::i;:::-;6603:4;:11;6608:5;6603:11;;;;;;;;;;;;;;;:19;;:58;;;;6693:35;6716:11;6693:4;:11;6698:5;6693:11;;;;;;;;;;;;;;;:18;;;:22;;:35;;;;:::i;:::-;6672:4;:11;6677:5;6672:11;;;;;;;;;;;;;;;:18;;:56;;;;6799:15;6784:12;:30;;;;6847:4;;;;;;;;;;;6832:25;;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6877:59;6886:5;6893:11;6906:12;;6920:15;6930:4;;;;;;;;;;;6920:9;:15::i;:::-;6877:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6975:1;6952:38;;6961:4;;;;;;;;;;;6952:38;;;6979:10;6952:38;;;;;;;;;;;;;;;;;;7021:5;7006:34;;7015:4;;;;;;;;;;;7006:34;;;7028:11;7006:34;;;;;;;;;;;;;;;;;;4768:2280;;;;:::o;12928:175::-;13014:4;13031:42;13041:12;:10;:12::i;:::-;13055:9;13066:6;13031:9;:42::i;:::-;13091:4;13084:11;;12928:175;;;;:::o;1938:21::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7337:105::-;3478:5;;;;;;;;;;;3464:19;;:10;:19;;;3456:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7424:10:::1;7412:9;;:22;;;;;;;;;;;;;;;;;;7337:105:::0;:::o;11243:208::-;3478:5;;;;;;;;;;;3464:19;;:10;:19;;;3456:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11367:15:::1;;11348;:34;;11340:43;;;::::0;::::1;;11401:12;11394:29;;;11424:5;;;;;;;;;;;11431:11;11394:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;11243:208:::0;;:::o;4246:486::-;3478:5;;;;;;;;;;;3464:19;;:10;:19;;;3456:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4362:13:::1;;4343:15;:32;;4335:41;;;::::0;::::1;;4392:6;4387:338;4408:10;:17;4404:1;:21;4387:338;;;4478:6;4450:24;4468:4;4450:9;:24::i;:::-;:34;4446:122;;4529:39;4561:6;4529:4;:19;4542:4;4529:19;;;;;;;;;;;;;;;:27;;;:31;;:39;;;;:::i;:::-;4499:4;:19;4512:4;4499:19;;;;;;;;;;;;;;;:27;;:69;;;;4446:122;4613:39;4645:6;4613:4;:19;4618:10;4629:1;4618:13;;;;;;;;;;;;;;4613:19;;;;;;;;;;;;;;;:27;;;:31;;:39;;;;:::i;:::-;4583:4;:19;4588:10;4599:1;4588:13;;;;;;;;;;;;;;4583:19;;;;;;;;;;;;;;;:27;;:69;;;;4691:10;4702:1;4691:13;;;;;;;;;;;;;;4667:46;;4684:4;4667:46;;;4706:6;4667:46;;;;;;;;;;;;;;;;;;4427:3;;;;;;;4387:338;;;;4246:486:::0;;:::o;7061:264::-;7107:4;7124:10;7155:12;;7137:15;:30;7124:43;;7178:16;7197:15;7207:4;;;;;;;;;;;7197:9;:15::i;:::-;7178:34;;7223:16;7284:3;7278;;:9;7268:5;7257:8;;7243:11;:22;:30;7242:46;;;;;;7223:65;;7306:11;7299:18;;;;;7061:264;:::o;3059:42::-;;;;;;;;;;;;;:::o;1966:19::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2817:23::-;;;;:::o;13111:154::-;13201:7;13228:4;:12;13233:6;13228:12;;;;;;;;;;;;;;;:20;;:29;13249:7;13228:29;;;;;;;;;;;;;;;;13221:36;;13111:154;;;;:::o;11040:189::-;11108:4;11145:9;;11128:6;:13;11135:5;11128:13;;;;;;;;;;;;;;;;:26;11124:97;;;11176:4;11169:11;;;;11124:97;11216:5;11209:12;;11040:189;;;;:::o;2847:24::-;;;;:::o;3108:::-;;;;:::o;9729:865::-;3385:9;;;;;;;;;;;3384:10;3376:19;;;;;;9830:4:::1;9803:31;;:11;:23;9815:10;9803:23;;;;;;;;;;;;;;;;;;;;;;;;;:31;;;9795:67;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;9894:9;;9881;:22;9873:65;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;9976:7;9957:16;;:26;9949:65;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;10055:1;10033:6;:18;10040:10;10033:18;;;;;;;;;;;;;;;;:23;10025:55;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;10100:9;;;;;;;;;;;10099:10;10091:19;;;::::0;::::1;;10160:12;;10129:4;:19;10142:4;10129:19;;;;;;;;;;;;;;;:27;;;:43;;10121:52;;;::::0;::::1;;10199:30;10216:12;;10199;;:16;;:30;;;;:::i;:::-;10184:12;:45;;;;10259:31;10280:9;;10259:16;;:20;;:31;;;;:::i;:::-;10240:16;:50;;;;10322:33;10345:9;;10322:6;:18;10329:10;10322:18;;;;;;;;;;;;;;;;:22;;:33;;;;:::i;:::-;10301:6;:18;10308:10;10301:18;;;;;;;;;;;;;;;:54;;;;10393:42;10422:12;;10393:4;:16;10398:10;10393:16;;;;;;;;;;;;;;;:24;;;:28;;:42;;;;:::i;:::-;10366:4;:16;10371:10;10366:16;;;;;;;;;;;;;;;:24;;:69;;;;10476:45;10508:12;;10476:4;:19;10489:4;10476:19;;;;;;;;;;;;;;;:27;;;:31;;:45;;;;:::i;:::-;10446:4;:19;10459:4;10446:19;;;;;;;;;;;;;;;:27;;:75;;;;10561:10;10537:49;;10554:4;10537:49;;;10573:12;;10537:49;;;;;;;;;;;;;;;;;;9729:865::o:0;10719:100::-;3478:5;;;;;;;;;;;3464:19;;:10;:19;;;3456:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10807:4:::1;10787:11;:17;10799:4;10787:17;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;10719:100:::0;:::o;2342:43::-;;;;:::o;7464:192::-;3478:5;;;;;;;;;;;3464:19;;:10;:19;;;3456:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7543:1:::1;7527:18;;:4;;;;;;;;;;;:18;;;7519:55;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;7592:14;;;;;;;;;;;:25;;;7626:4;7633:7;::::0;::::1;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;7592:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;7585:4;;:63;;;;;;;;;;;;;;;;;;7464:192::o:0;2256:28::-;;;;:::o;2392:22::-;;;;:::o;2635:26::-;;;;;;;;;;;;;:::o;2174:30::-;;;;;;;;;;;;;:::o;8547:406::-;8612:4;8599:17;;:9;;;;;;;;;;;:17;;;8591:26;;;;;;8655:13;;8636:15;:32;;8628:41;;;;;;8713:9;;8688:21;:34;;8680:43;;;;;;8760:9;;8738:6;:18;8745:10;8738:18;;;;;;;;;;;;;;;;:31;8734:212;;;8785:10;:19;;:30;8805:9;;8785:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8857:39;8886:9;;8857:4;:16;8862:10;8857:16;;;;;;;;;;;;;;;:24;;;:28;;:39;;;;:::i;:::-;8830:4;:16;8835:10;8830:16;;;;;;;;;;;;;;;:24;;:66;;;;8933:1;8912:6;:18;8919:10;8912:18;;;;;;;;;;;;;;;:22;;;;8734:212;8547:406::o;16321:181::-;16379:7;16399:9;16415:1;16411;:5;16399:17;;16440:1;16435;:6;;16427:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16493:1;16486:8;;;16321:181;;;;:::o;16785:136::-;16843:7;16870:43;16874:1;16877;16870:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;16863:50;;16785:136;;;;:::o;1324:106::-;1377:15;1412:10;1405:17;;1324:106;:::o;14999:351::-;15120:1;15102:20;;:6;:20;;;;15094:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15201:1;15182:21;;:7;:21;;;;15174:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15287:6;15255:4;:12;15260:6;15255:12;;;;;;;;;;;;;;;:20;;:29;15276:7;15255:29;;;;;;;;;;;;;;;:38;;;;15326:7;15309:33;;15318:6;15309:33;;;15335:6;15309:33;;;;;;;;;;;;;;;;;;14999:351;;;:::o;14293:698::-;14417:1;14399:20;;:6;:20;;;;14391:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14501:1;14480:23;;:9;:23;;;;14472:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14620:14;;;;;;;;;;;14619:15;:38;;;;14652:5;;;;;;;;;;;14638:19;;:10;:19;;;14619:38;14611:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14693:47;14714:6;14722:9;14733:6;14693:20;:47::i;:::-;14776:74;14801:6;14776:74;;;;;;;;;;;;;;;;;:4;:12;14781:6;14776:12;;;;;;;;;;;;;;;:20;;;:24;;:74;;;;;:::i;:::-;14753:4;:12;14758:6;14753:12;;;;;;;;;;;;;;;:20;;:97;;;;14887:35;14915:6;14887:4;:15;14892:9;14887:15;;;;;;;;;;;;;;;:23;;;:27;;:35;;;;:::i;:::-;14861:4;:15;14866:9;14861:15;;;;;;;;;;;;;;;:23;;:61;;;;14955:9;14938:35;;14947:6;14938:35;;;14966:6;14938:35;;;;;;;;;;;;;;;;;;14293:698;;;:::o;17224:192::-;17310:7;17343:1;17338;:6;;17346:12;17330:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17370:9;17386:1;17382;:5;17370:17;;17407:1;17400:8;;;17224:192;;;;;:::o;17675:471::-;17733:7;17983:1;17978;:6;17974:47;;;18008:1;18001:8;;;;17974:47;18033:9;18049:1;18045;:5;18033:17;;18078:1;18073;18069;:5;;;;;;:10;18061:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18137:1;18130:8;;;17675:471;;;;;:::o;18622:132::-;18680:7;18707:39;18711:1;18714;18707:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;18700:46;;18622:132;;;;:::o;15953:92::-;;;;:::o;19250:278::-;19336:7;19368:1;19364;:5;19371:12;19356:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19395:9;19411:1;19407;:5;;;;;;19395:17;;19519:1;19512:8;;;19250:278;;;;;:::o

Swarm Source

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