ETH Price: $3,468.10 (+2.28%)
Gas: 7 Gwei

Token

Secure Pad (SEPA)
 

Overview

Max Total Supply

350,000 SEPA

Holders

677

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.000064658388749342 SEPA

Value
$0.00
0xc85b2d1043555626826945ede1cd32135046cbf9
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:
SEPA_Token

Compiler Version
v0.7.3+commit.9bfce1f6

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

File 4 of 4: SEPA_Token.sol
/* 
   SPDX-License-Identifier: MIT
*/

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

interface IUniswapV2Pair {
    function sync() external;
}

interface IUniswapV2Router01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
      address token,
      uint liquidity,
      uint amountTokenMin,
      uint amountETHMin,
      address to,
      uint deadline
    ) external returns (uint amountETH);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
}

pragma solidity ^0.7.0;

import "../SafeMath.sol";
import "../Ownable.sol";

contract SEPA_Token is Ownable
{
    using SafeMath for *;

	IUniswapV2Router02 public _uniswapV2Router;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;
    uint8 private _decimals;

    address public reserve_repay_addr;

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

    mapping(address => bool) public uniswapPairAddress;
	address public currentPoolAddress;
	address public currentPairTokenAddress;
	address public uniswapETHPool;

    uint16 public LP_FEE = 3;
    uint16 public RR_FEE = 1;
    
    bool public transferable = false;
    mapping (address => bool) public transferWhitelist;

	uint256 public _minTokensBeforeSwap = 100;
	uint256 constant _autoSwapCallerFee = 0;
	uint256 constant liquidityRewardRate = 2;
	
	bool private inSwapAndLiquify;
    bool public swapAndLiquifyEnabled;
    
    event Transfer(address indexed from, address indexed to, uint amount);
    event Approval(address indexed owner, address indexed spender, uint amount);
    event UniswapPairAddress(address _addr, bool _whitelisted);
	
	event MinTokensBeforeSwapUpdated(uint256 minTokensBeforeSwap);
    event SwapAndLiquifyEnabledUpdated(bool enabled);
    event SwapAndLiquify(
        address indexed pairTokenAddress,
        uint256 tokensSwapped,
        uint256 pairTokenReceived,
        uint256 tokensIntoLiqudity
    );
    
	modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }

    constructor (IUniswapV2Router02 uniswapV2Router) {
        _name = "Secure Pad";
        _symbol = "SEPA";
        _decimals = 18;
        _mint(msg.sender, 3.5e5 * 10**_decimals); 
        _minTokensBeforeSwap = 100 * 10**_decimals;
        
		_uniswapV2Router = uniswapV2Router;

        currentPoolAddress = IUniswapV2Factory(uniswapV2Router.factory())
            .createPair(address(this), uniswapV2Router.WETH());
            
        uniswapETHPool = currentPoolAddress;
        
        transferWhitelist[msg.sender] = true;

    }
    
    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  returns (uint256) {
        return _totalSupply;
    }

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

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

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public virtual  returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount));
        return true;
    }

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

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

    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");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
	
	function _transfer(address sender, address recipient, uint256 amount) private {
		require(sender != address(0), "cannot transfer from the zero address");
        require(recipient != address(0), "cannot transfer to the zero address");

        if (!transferable) {
            require(transferWhitelist[sender], "sender not in transfer whitelist");
        }

        if(!inSwapAndLiquify) {
            uint256 lockedBalanceForPool = balanceOf(address(this));
            bool overMinTokenBalance = lockedBalanceForPool >= _minTokensBeforeSwap;
			currentPairTokenAddress == _uniswapV2Router.WETH();
            if (
                overMinTokenBalance &&
                msg.sender != currentPoolAddress &&
                swapAndLiquifyEnabled &&
                _isUniswapPairAddress(recipient)
            ) {
                swapAndLiquifyForEth(lockedBalanceForPool);
            }
        }
            _transferStandard(sender, recipient, amount);
    }
    
	function _transferStandard(address sender, address recipient, uint256 amount) private {
		_balances[sender] = _balances[sender].sub(amount);
		
		if (inSwapAndLiquify) {
            _balances[recipient] = _balances[recipient].add(amount);
            emit Transfer(sender, recipient, amount);
		}
		
	    else if (_isUniswapPairAddress(recipient))
        {
        uint256 LP_amount = LP_FEE.mul(amount).div(100);
        uint256 RR_amount = RR_FEE.mul(amount).div(100);
        uint256 transfer_amount = amount.sub(LP_amount.add(RR_amount));

		_transferStandardSell(sender, recipient, transfer_amount, LP_amount, RR_amount);
        }
        
        else {
            _balances[recipient] = _balances[recipient].add(amount);
            emit Transfer(sender, recipient, amount);

        }
    }
    
    function _transferStandardSell(address sender, address recipient, uint256 transfer_amount, uint256 LP_amount, uint256 RR_amount) private {
            _balances[recipient] = _balances[recipient].add(transfer_amount);
            _balances[address(this)] = _balances[address(this)].add(LP_amount);
            _balances[reserve_repay_addr] = _balances[reserve_repay_addr].add(RR_amount);        
		
            emit Transfer(sender, recipient, transfer_amount);
            emit Transfer(sender, address(this), LP_amount);
            emit Transfer(sender, reserve_repay_addr, RR_amount);
    }
    
    function swapAndLiquifyForEth(uint256 lockedBalanceForPool) internal lockTheSwap {
        uint256 lockedForSwap = lockedBalanceForPool.sub(_autoSwapCallerFee);
		uint256 forLiquidity = lockedForSwap.div(liquidityRewardRate);
		uint256 forLiquidityReward = lockedForSwap.sub(forLiquidity);
        uint256 half = forLiquidity.div(2);
        uint256 otherHalf = forLiquidity.sub(half);

        uint256 initialBalance = address(this).balance;

        swapTokensForEth(half);
        
        uint256 newBalance = address(this).balance.sub(initialBalance);

        addLiquidityForEth(otherHalf, newBalance);
        
        emit SwapAndLiquify(_uniswapV2Router.WETH(), half, newBalance, otherHalf);
        
		_transfer(address(this), uniswapETHPool, forLiquidityReward);
        _transfer(address(this), tx.origin, _autoSwapCallerFee);
    }
    
    function swapTokensForEth(uint256 tokenAmount) internal {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = _uniswapV2Router.WETH();

        _approve(address(this), address(_uniswapV2Router), tokenAmount);

        _uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0, // accept any amount of ETH
            path,
            address(this),
            block.timestamp
        );
    }

    function addLiquidityForEth(uint256 tokenAmount, uint256 ethAmount) internal {
        _approve(address(this), address(_uniswapV2Router), tokenAmount);

        _uniswapV2Router.addLiquidityETH{value: ethAmount}(
            address(this),
            tokenAmount,
            0, // slippage is unavoidable
            0, // slippage is unavoidable
            address(this),
            block.timestamp
        );
    }

	receive() external payable {}

 	function _setMinTokensBeforeSwap(uint256 minTokensBeforeSwap) external onlyOwner() {
        require(minTokensBeforeSwap >= 1 * _decimals, 'minTokenBeforeSwap should be greater than 1 SEPA');
        _minTokensBeforeSwap = minTokensBeforeSwap;
        emit MinTokensBeforeSwapUpdated(minTokensBeforeSwap);
    }
    
    function _enableTransfers() external onlyOwner() {
        transferable = true;
    }
    
    function _isUniswapPairAddress(address _addr) internal view returns (bool) {
        return uniswapPairAddress[_addr];
    }
    
    function _setUniswapPairAddress(address _addr, bool _whitelisted) external onlyOwner {
        emit UniswapPairAddress(_addr, _whitelisted);
        uniswapPairAddress[_addr] = _whitelisted;
    }
    
    function _setReserveRepayAddr(address _addr) external onlyOwner {
        reserve_repay_addr = _addr;
    }
    
    function _setRouterContract(IUniswapV2Router02 _addr) external onlyOwner {
        _uniswapV2Router = _addr;
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

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

    function _burn(uint256 amount) public {
        require(msg.sender != address(0), "ERC20: burn from the zero address");

        _balances[msg.sender] = _balances[msg.sender].sub(amount);
        _totalSupply = _totalSupply.sub(amount);
        emit Transfer(msg.sender, address(0), amount);
    }
	
	function getCurrentPoolAddress() public view returns(address) {
        return currentPoolAddress;
    }
    
    function getCurrentPairTokenAddress() public view returns(address) {
        return currentPairTokenAddress;
    }

	function updateSwapAndLiquifyEnabled(bool _enabled) external onlyOwner {
        swapAndLiquifyEnabled = _enabled;
        emit SwapAndLiquifyEnabledUpdated(_enabled);
    }
    
    function setAddrTransferWhitelist(address _addr, bool _bool) external onlyOwner {
        transferWhitelist[_addr] = _bool;
    }
    
    function setFees(uint16 lp, uint16 rr) external onlyOwner {
        LP_FEE = lp;
        RR_FEE = rr;
    }
	
}

File 1 of 4: Context.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.7.0;

/*
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with GSN meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    // Empty internal constructor, to prevent people from mistakenly deploying
    // an instance of this contract, which should be used via inheritance.
    constructor () { }

    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;
    }
}

File 2 of 4: Ownable.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.7.0;

import "./Context.sol";
/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
contract Ownable is Context {
    address private _owner;

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

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

File 3 of 4: SafeMath.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.7.0;

/**
 * @title SafeMath
 * @dev Math operations with safety checks that revert on error
 */
library SafeMath {

  /**
  * @dev Multiplies two numbers, reverts on overflow.
  */
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
    // benefit is lost if 'b' is also tested.
    // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522
    if (a == 0) {
      return 0;
    }

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

    return c;
  }

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

    return c;
  }

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

    return c;
  }

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

    return c;
  }

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"contract IUniswapV2Router02","name":"uniswapV2Router","type":"address"}],"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":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"minTokensBeforeSwap","type":"uint256"}],"name":"MinTokensBeforeSwapUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"pairTokenAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"pairTokenReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","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":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_addr","type":"address"},{"indexed":false,"internalType":"bool","name":"_whitelisted","type":"bool"}],"name":"UniswapPairAddress","type":"event"},{"inputs":[],"name":"LP_FEE","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"RR_FEE","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"_burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_enableTransfers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_minTokensBeforeSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"minTokensBeforeSwap","type":"uint256"}],"name":"_setMinTokensBeforeSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"}],"name":"_setReserveRepayAddr","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IUniswapV2Router02","name":"_addr","type":"address"}],"name":"_setRouterContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"},{"internalType":"bool","name":"_whitelisted","type":"bool"}],"name":"_setUniswapPairAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"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":"currentPairTokenAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentPoolAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":"getCurrentPairTokenAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentPoolAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"reserve_repay_addr","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"},{"internalType":"bool","name":"_bool","type":"bool"}],"name":"setAddrTransferWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"lp","type":"uint16"},{"internalType":"uint16","name":"rr","type":"uint16"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"transferWhitelist","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"transferable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapETHPool","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"uniswapPairAddress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"updateSwapAndLiquifyEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526003600b60146101000a81548161ffff021916908361ffff1602179055506001600b60166101000a81548161ffff021916908361ffff1602179055506000600b60186101000a81548160ff0219169083151502179055506064600d553480156200006d57600080fd5b5060405162003ee438038062003ee4833981810160405260208110156200009357600080fd5b81019080805190602001909291905050506000620000b66200056560201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506040518060400160405280600a81526020017f536563757265205061640000000000000000000000000000000000000000000081525060039080519060200190620001a192919062000759565b506040518060400160405280600481526020017f534550410000000000000000000000000000000000000000000000000000000081525060049080519060200190620001ef92919062000759565b506012600560006101000a81548160ff021916908360ff1602179055506200023833600560009054906101000a900460ff1660ff16600a0a62055730026200056d60201b60201c565b600560009054906101000a900460ff1660ff16600a0a606402600d8190555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620002df57600080fd5b505afa158015620002f4573d6000803e3d6000fd5b505050506040513d60208110156200030b57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200037f57600080fd5b505afa15801562000394573d6000803e3d6000fd5b505050506040513d6020811015620003ab57600080fd5b81019080805190602001909291905050506040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b1580156200042657600080fd5b505af11580156200043b573d6000803e3d6000fd5b505050506040513d60208110156200045257600080fd5b8101908080519060200190929190505050600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050620007ff565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000611576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b6200062d816002546200073960201b620022401790919060201c565b6002819055506200068c81600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200073960201b620022401790919060201c565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6000808284019050838110156200074f57600080fd5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200079c57805160ff1916838001178555620007cd565b82800160010185558215620007cd579182015b82811115620007cc578251825591602001919060010190620007af565b5b509050620007dc9190620007e0565b5090565b5b80821115620007fb576000816000905550600101620007e1565b5090565b6136d5806200080f6000396000f3fe60806040526004361061021e5760003560e01c80637f341447116101235780639ef833d4116100ab578063c9e6da191161006f578063c9e6da1914610c07578063dd62ed3e14610c48578063e452830214610ccd578063f2029d6b14610ce4578063f2fde38b14610d2557610225565b80639ef833d414610a5a5780639f9a4e7f14610aa7578063a457c2d714610ae4578063a9059cbb14610b55578063bdf9ec8614610bc657610225565b806392ff0d31116100f257806392ff0d31146108ba5780639437b8fa146108e757806395d89b411461094e578063989c5290146109de5780639b1f9e7414610a1f57610225565b80637f341447146107965780637ffbe241146107e75780638aadb8091461084e5780638da5cb5b1461087957610225565b80634a1e7726116101a65780635afbfd38116101755780635afbfd381461064d5780635dbc67d91461068e5780635e3f2727146106eb57806370a082311461071a578063715018a61461077f57610225565b80634a1e7726146105535780634a74bb021461058e5780634be69ff3146105bb578063583e05681461060c57610225565b8063259a1eb9116101ed578063259a1eb9146103e7578063274cebdb14610416578063313ce5671461045757806339509351146104855780634627893c146104f657610225565b806306fdde031461022a578063095ea7b3146102ba57806318160ddd1461032b57806323b872dd1461035657610225565b3661022557005b600080fd5b34801561023657600080fd5b5061023f610d76565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561027f578082015181840152602081019050610264565b50505050905090810190601f1680156102ac5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102c657600080fd5b50610313600480360360408110156102dd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e18565b60405180821515815260200191505060405180910390f35b34801561033757600080fd5b50610340610e36565b6040518082815260200191505060405180910390f35b34801561036257600080fd5b506103cf6004803603606081101561037957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e40565b60405180821515815260200191505060405180910390f35b3480156103f357600080fd5b506103fc610eff565b604051808261ffff16815260200191505060405180910390f35b34801561042257600080fd5b5061042b610f13565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561046357600080fd5b5061046c610f39565b604051808260ff16815260200191505060405180910390f35b34801561049157600080fd5b506104de600480360360408110156104a857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f50565b60405180821515815260200191505060405180910390f35b34801561050257600080fd5b506105516004803603604081101561051957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050611003565b005b34801561055f57600080fd5b5061058c6004803603602081101561057657600080fd5b810190808035906020019092919050505061117d565b005b34801561059a57600080fd5b506105a36112f4565b60405180821515815260200191505060405180910390f35b3480156105c757600080fd5b5061060a600480360360208110156105de57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611307565b005b34801561061857600080fd5b50610621611413565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561065957600080fd5b50610662611439565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561069a57600080fd5b506106e9600480360360408110156106b157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050611463565b005b3480156106f757600080fd5b50610700611586565b604051808261ffff16815260200191505060405180910390f35b34801561072657600080fd5b506107696004803603602081101561073d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061159a565b6040518082815260200191505060405180910390f35b34801561078b57600080fd5b506107946115e3565b005b3480156107a257600080fd5b506107e5600480360360208110156107b957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611769565b005b3480156107f357600080fd5b506108366004803603602081101561080a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611875565b60405180821515815260200191505060405180910390f35b34801561085a57600080fd5b50610863611895565b6040518082815260200191505060405180910390f35b34801561088557600080fd5b5061088e61189b565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156108c657600080fd5b506108cf6118c4565b60405180821515815260200191505060405180910390f35b3480156108f357600080fd5b506109366004803603602081101561090a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118d7565b60405180821515815260200191505060405180910390f35b34801561095a57600080fd5b506109636118f7565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109a3578082015181840152602081019050610988565b50505050905090810190601f1680156109d05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109ea57600080fd5b506109f3611999565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610a2b57600080fd5b50610a5860048036036020811015610a4257600080fd5b81019080803590602001909291905050506119bf565b005b348015610a6657600080fd5b50610aa560048036036040811015610a7d57600080fd5b81019080803561ffff169060200190929190803561ffff169060200190929190505050611b5e565b005b348015610ab357600080fd5b50610ae260048036036020811015610aca57600080fd5b81019080803515159060200190929190505050611c64565b005b348015610af057600080fd5b50610b3d60048036036040811015610b0757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d82565b60405180821515815260200191505060405180910390f35b348015610b6157600080fd5b50610bae60048036036040811015610b7857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611e35565b60405180821515815260200191505060405180910390f35b348015610bd257600080fd5b50610bdb611e53565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610c1357600080fd5b50610c1c611e79565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610c5457600080fd5b50610cb760048036036040811015610c6b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ea3565b6040518082815260200191505060405180910390f35b348015610cd957600080fd5b50610ce2611f2a565b005b348015610cf057600080fd5b50610cf961200f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610d3157600080fd5b50610d7460048036036020811015610d4857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612035565b005b606060038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e0e5780601f10610de357610100808354040283529160200191610e0e565b820191906000526020600020905b815481529060010190602001808311610df157829003601f168201915b5050505050905090565b6000610e2c610e2561225f565b8484612267565b6001905092915050565b6000600254905090565b6000610e4d84848461245e565b610ef484610e5961225f565b610eef85600760008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610ea661225f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127d790919063ffffffff16565b612267565b600190509392505050565b600b60169054906101000a900461ffff1681565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600560009054906101000a900460ff16905090565b6000610ff9610f5d61225f565b84610ff48560076000610f6e61225f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461224090919063ffffffff16565b612267565b6001905092915050565b61100b61225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b7fccb445f982fb5bec43b7eaff800f9e4bea4ae44fb3d94599db92469b49fbf34f8282604051808373ffffffffffffffffffffffffffffffffffffffff16815260200182151581526020019250505060405180910390a180600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b61118561225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611245576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600560009054906101000a900460ff1660010260ff168110156112b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806136706030913960400191505060405180910390fd5b80600d819055507f5948780118f41f7c4577ae4619d5cbd064057bd8562d9f7b7e60324053375c00816040518082815260200191505060405180910390a150565b600e60019054906101000a900460ff1681565b61130f61225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61146b61225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461152b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600b60149054906101000a900461ffff1681565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6115eb61225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61177161225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611831576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600c6020528060005260406000206000915054906101000a900460ff1681565b600d5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600b60189054906101000a900460ff1681565b60086020528060005260406000206000915054906101000a900460ff1681565b606060048054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561198f5780601f106119645761010080835404028352916020019161198f565b820191906000526020600020905b81548152906001019060200180831161197257829003601f168201915b5050505050905090565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415611a45576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806136086021913960400191505060405180910390fd5b611a9781600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127d790919063ffffffff16565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611aef816002546127d790919063ffffffff16565b600281905550600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350565b611b6661225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c26576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b81600b60146101000a81548161ffff021916908361ffff16021790555080600b60166101000a81548161ffff021916908361ffff1602179055505050565b611c6c61225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611d2c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600e60016101000a81548160ff0219169083151502179055507f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc1598160405180821515815260200191505060405180910390a150565b6000611e2b611d8f61225f565b84611e268560076000611da061225f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127d790919063ffffffff16565b612267565b6001905092915050565b6000611e49611e4261225f565b848461245e565b6001905092915050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611f3261225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ff2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6001600b60186101000a81548160ff021916908315150217905550565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61203d61225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146120fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612183576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061359b6026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008082840190508381101561225557600080fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156122ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806136296024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612373576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806135c16022913960400191505060405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156124e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806135e36025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561256a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602381526020018061364d6023913960400191505060405180910390fd5b600b60189054906101000a900460ff1661263e57600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661263d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f73656e646572206e6f7420696e207472616e736665722077686974656c69737481525060200191505060405180910390fd5b5b600e60009054906101000a900460ff166127c757600061265d3061159a565b90506000600d548210159050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156126d157600080fd5b505afa1580156126e5573d6000803e3d6000fd5b505050506040513d60208110156126fb57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff16600a60009054906101000a9050505080801561278c5750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b80156127a45750600e60019054906101000a900460ff165b80156127b557506127b4846127f7565b5b156127c4576127c38261284d565b5b50505b6127d2838383612a6b565b505050565b6000828211156127e657600080fd5b600082840390508091505092915050565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6001600e60006101000a81548160ff021916908315150217905550600061287e6000836127d790919063ffffffff16565b90506000612896600283612ddd90919063ffffffff16565b905060006128ad82846127d790919063ffffffff16565b905060006128c5600284612ddd90919063ffffffff16565b905060006128dc82856127d790919063ffffffff16565b905060004790506128ec83612e03565b600061290182476127d790919063ffffffff16565b905061290d83826130b7565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561297557600080fd5b505afa158015612989573d6000803e3d6000fd5b505050506040513d602081101561299f57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff167fa5edfeb09a3d7a0edab24279a4ca1c35b82bb038f8a7eb53339c904a217fe1f685838660405180848152602001838152602001828152602001935050505060405180910390a2612a3a30600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168761245e565b612a463032600061245e565b505050505050506000600e60006101000a81548160ff02191690831515021790555050565b612abd81600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127d790919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600e60009054906101000a900460ff1615612c1457612b6781600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461224090919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3612dd8565b612c1d826127f7565b15612cdc576000612c5e6064612c5084600b60149054906101000a900461ffff1661ffff1661320590919063ffffffff16565b612ddd90919063ffffffff16565b90506000612c9c6064612c8e85600b60169054906101000a900461ffff1661ffff1661320590919063ffffffff16565b612ddd90919063ffffffff16565b90506000612cc5612cb6838561224090919063ffffffff16565b856127d790919063ffffffff16565b9050612cd4868683868661323f565b505050612dd7565b612d2e81600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461224090919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35b5b505050565b6000808211612deb57600080fd5b6000828481612df657fe5b0490508091505092915050565b6060600267ffffffffffffffff81118015612e1d57600080fd5b50604051908082528060200260200182016040528015612e4c5781602001602082028036833780820191505090505b5090503081600081518110612e5d57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015612eff57600080fd5b505afa158015612f13573d6000803e3d6000fd5b505050506040513d6020811015612f2957600080fd5b810190808051906020019092919050505081600181518110612f4757fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050612fae30600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612267565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040180868152602001858152602001806020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015613072578082015181840152602081019050613057565b505050509050019650505050505050600060405180830381600087803b15801561309b57600080fd5b505af11580156130af573d6000803e3d6000fd5b505050505050565b6130e430600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612267565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71982308560008030426040518863ffffffff1660e01b8152600401808773ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200196505050505050506060604051808303818588803b1580156131ae57600080fd5b505af11580156131c2573d6000803e3d6000fd5b50505050506040513d60608110156131d957600080fd5b810190808051906020019092919080519060200190929190805190602001909291905050505050505050565b6000808314156132185760009050613239565b600082840290508284828161322957fe5b041461323457600080fd5b809150505b92915050565b61329183600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461224090919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061332682600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461224090919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506133dd8160066000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461224090919063ffffffff16565b60066000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a33073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050505056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737363616e6e6f74207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737363616e6e6f74207472616e7366657220746f20746865207a65726f20616464726573736d696e546f6b656e4265666f7265537761702073686f756c642062652067726561746572207468616e20312053455041a2646970667358221220fd57f227fb67af4749f727becb3856021bd459c4a497a1397eb141a38717f30264736f6c634300070300330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

Deployed Bytecode

0x60806040526004361061021e5760003560e01c80637f341447116101235780639ef833d4116100ab578063c9e6da191161006f578063c9e6da1914610c07578063dd62ed3e14610c48578063e452830214610ccd578063f2029d6b14610ce4578063f2fde38b14610d2557610225565b80639ef833d414610a5a5780639f9a4e7f14610aa7578063a457c2d714610ae4578063a9059cbb14610b55578063bdf9ec8614610bc657610225565b806392ff0d31116100f257806392ff0d31146108ba5780639437b8fa146108e757806395d89b411461094e578063989c5290146109de5780639b1f9e7414610a1f57610225565b80637f341447146107965780637ffbe241146107e75780638aadb8091461084e5780638da5cb5b1461087957610225565b80634a1e7726116101a65780635afbfd38116101755780635afbfd381461064d5780635dbc67d91461068e5780635e3f2727146106eb57806370a082311461071a578063715018a61461077f57610225565b80634a1e7726146105535780634a74bb021461058e5780634be69ff3146105bb578063583e05681461060c57610225565b8063259a1eb9116101ed578063259a1eb9146103e7578063274cebdb14610416578063313ce5671461045757806339509351146104855780634627893c146104f657610225565b806306fdde031461022a578063095ea7b3146102ba57806318160ddd1461032b57806323b872dd1461035657610225565b3661022557005b600080fd5b34801561023657600080fd5b5061023f610d76565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561027f578082015181840152602081019050610264565b50505050905090810190601f1680156102ac5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102c657600080fd5b50610313600480360360408110156102dd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e18565b60405180821515815260200191505060405180910390f35b34801561033757600080fd5b50610340610e36565b6040518082815260200191505060405180910390f35b34801561036257600080fd5b506103cf6004803603606081101561037957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e40565b60405180821515815260200191505060405180910390f35b3480156103f357600080fd5b506103fc610eff565b604051808261ffff16815260200191505060405180910390f35b34801561042257600080fd5b5061042b610f13565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561046357600080fd5b5061046c610f39565b604051808260ff16815260200191505060405180910390f35b34801561049157600080fd5b506104de600480360360408110156104a857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f50565b60405180821515815260200191505060405180910390f35b34801561050257600080fd5b506105516004803603604081101561051957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050611003565b005b34801561055f57600080fd5b5061058c6004803603602081101561057657600080fd5b810190808035906020019092919050505061117d565b005b34801561059a57600080fd5b506105a36112f4565b60405180821515815260200191505060405180910390f35b3480156105c757600080fd5b5061060a600480360360208110156105de57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611307565b005b34801561061857600080fd5b50610621611413565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561065957600080fd5b50610662611439565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561069a57600080fd5b506106e9600480360360408110156106b157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050611463565b005b3480156106f757600080fd5b50610700611586565b604051808261ffff16815260200191505060405180910390f35b34801561072657600080fd5b506107696004803603602081101561073d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061159a565b6040518082815260200191505060405180910390f35b34801561078b57600080fd5b506107946115e3565b005b3480156107a257600080fd5b506107e5600480360360208110156107b957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611769565b005b3480156107f357600080fd5b506108366004803603602081101561080a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611875565b60405180821515815260200191505060405180910390f35b34801561085a57600080fd5b50610863611895565b6040518082815260200191505060405180910390f35b34801561088557600080fd5b5061088e61189b565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156108c657600080fd5b506108cf6118c4565b60405180821515815260200191505060405180910390f35b3480156108f357600080fd5b506109366004803603602081101561090a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118d7565b60405180821515815260200191505060405180910390f35b34801561095a57600080fd5b506109636118f7565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109a3578082015181840152602081019050610988565b50505050905090810190601f1680156109d05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109ea57600080fd5b506109f3611999565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610a2b57600080fd5b50610a5860048036036020811015610a4257600080fd5b81019080803590602001909291905050506119bf565b005b348015610a6657600080fd5b50610aa560048036036040811015610a7d57600080fd5b81019080803561ffff169060200190929190803561ffff169060200190929190505050611b5e565b005b348015610ab357600080fd5b50610ae260048036036020811015610aca57600080fd5b81019080803515159060200190929190505050611c64565b005b348015610af057600080fd5b50610b3d60048036036040811015610b0757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d82565b60405180821515815260200191505060405180910390f35b348015610b6157600080fd5b50610bae60048036036040811015610b7857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611e35565b60405180821515815260200191505060405180910390f35b348015610bd257600080fd5b50610bdb611e53565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610c1357600080fd5b50610c1c611e79565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610c5457600080fd5b50610cb760048036036040811015610c6b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ea3565b6040518082815260200191505060405180910390f35b348015610cd957600080fd5b50610ce2611f2a565b005b348015610cf057600080fd5b50610cf961200f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610d3157600080fd5b50610d7460048036036020811015610d4857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612035565b005b606060038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e0e5780601f10610de357610100808354040283529160200191610e0e565b820191906000526020600020905b815481529060010190602001808311610df157829003601f168201915b5050505050905090565b6000610e2c610e2561225f565b8484612267565b6001905092915050565b6000600254905090565b6000610e4d84848461245e565b610ef484610e5961225f565b610eef85600760008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610ea661225f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127d790919063ffffffff16565b612267565b600190509392505050565b600b60169054906101000a900461ffff1681565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600560009054906101000a900460ff16905090565b6000610ff9610f5d61225f565b84610ff48560076000610f6e61225f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461224090919063ffffffff16565b612267565b6001905092915050565b61100b61225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b7fccb445f982fb5bec43b7eaff800f9e4bea4ae44fb3d94599db92469b49fbf34f8282604051808373ffffffffffffffffffffffffffffffffffffffff16815260200182151581526020019250505060405180910390a180600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b61118561225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611245576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600560009054906101000a900460ff1660010260ff168110156112b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806136706030913960400191505060405180910390fd5b80600d819055507f5948780118f41f7c4577ae4619d5cbd064057bd8562d9f7b7e60324053375c00816040518082815260200191505060405180910390a150565b600e60019054906101000a900460ff1681565b61130f61225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61146b61225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461152b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600b60149054906101000a900461ffff1681565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6115eb61225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61177161225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611831576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600c6020528060005260406000206000915054906101000a900460ff1681565b600d5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600b60189054906101000a900460ff1681565b60086020528060005260406000206000915054906101000a900460ff1681565b606060048054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561198f5780601f106119645761010080835404028352916020019161198f565b820191906000526020600020905b81548152906001019060200180831161197257829003601f168201915b5050505050905090565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415611a45576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806136086021913960400191505060405180910390fd5b611a9781600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127d790919063ffffffff16565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611aef816002546127d790919063ffffffff16565b600281905550600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350565b611b6661225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c26576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b81600b60146101000a81548161ffff021916908361ffff16021790555080600b60166101000a81548161ffff021916908361ffff1602179055505050565b611c6c61225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611d2c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600e60016101000a81548160ff0219169083151502179055507f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc1598160405180821515815260200191505060405180910390a150565b6000611e2b611d8f61225f565b84611e268560076000611da061225f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127d790919063ffffffff16565b612267565b6001905092915050565b6000611e49611e4261225f565b848461245e565b6001905092915050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611f3261225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ff2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6001600b60186101000a81548160ff021916908315150217905550565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61203d61225f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146120fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612183576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061359b6026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008082840190508381101561225557600080fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156122ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806136296024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612373576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806135c16022913960400191505060405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156124e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806135e36025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561256a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602381526020018061364d6023913960400191505060405180910390fd5b600b60189054906101000a900460ff1661263e57600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661263d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f73656e646572206e6f7420696e207472616e736665722077686974656c69737481525060200191505060405180910390fd5b5b600e60009054906101000a900460ff166127c757600061265d3061159a565b90506000600d548210159050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156126d157600080fd5b505afa1580156126e5573d6000803e3d6000fd5b505050506040513d60208110156126fb57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff16600a60009054906101000a9050505080801561278c5750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b80156127a45750600e60019054906101000a900460ff165b80156127b557506127b4846127f7565b5b156127c4576127c38261284d565b5b50505b6127d2838383612a6b565b505050565b6000828211156127e657600080fd5b600082840390508091505092915050565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6001600e60006101000a81548160ff021916908315150217905550600061287e6000836127d790919063ffffffff16565b90506000612896600283612ddd90919063ffffffff16565b905060006128ad82846127d790919063ffffffff16565b905060006128c5600284612ddd90919063ffffffff16565b905060006128dc82856127d790919063ffffffff16565b905060004790506128ec83612e03565b600061290182476127d790919063ffffffff16565b905061290d83826130b7565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561297557600080fd5b505afa158015612989573d6000803e3d6000fd5b505050506040513d602081101561299f57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff167fa5edfeb09a3d7a0edab24279a4ca1c35b82bb038f8a7eb53339c904a217fe1f685838660405180848152602001838152602001828152602001935050505060405180910390a2612a3a30600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168761245e565b612a463032600061245e565b505050505050506000600e60006101000a81548160ff02191690831515021790555050565b612abd81600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127d790919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600e60009054906101000a900460ff1615612c1457612b6781600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461224090919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3612dd8565b612c1d826127f7565b15612cdc576000612c5e6064612c5084600b60149054906101000a900461ffff1661ffff1661320590919063ffffffff16565b612ddd90919063ffffffff16565b90506000612c9c6064612c8e85600b60169054906101000a900461ffff1661ffff1661320590919063ffffffff16565b612ddd90919063ffffffff16565b90506000612cc5612cb6838561224090919063ffffffff16565b856127d790919063ffffffff16565b9050612cd4868683868661323f565b505050612dd7565b612d2e81600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461224090919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35b5b505050565b6000808211612deb57600080fd5b6000828481612df657fe5b0490508091505092915050565b6060600267ffffffffffffffff81118015612e1d57600080fd5b50604051908082528060200260200182016040528015612e4c5781602001602082028036833780820191505090505b5090503081600081518110612e5d57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015612eff57600080fd5b505afa158015612f13573d6000803e3d6000fd5b505050506040513d6020811015612f2957600080fd5b810190808051906020019092919050505081600181518110612f4757fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050612fae30600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612267565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040180868152602001858152602001806020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015613072578082015181840152602081019050613057565b505050509050019650505050505050600060405180830381600087803b15801561309b57600080fd5b505af11580156130af573d6000803e3d6000fd5b505050505050565b6130e430600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612267565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71982308560008030426040518863ffffffff1660e01b8152600401808773ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200196505050505050506060604051808303818588803b1580156131ae57600080fd5b505af11580156131c2573d6000803e3d6000fd5b50505050506040513d60608110156131d957600080fd5b810190808051906020019092919080519060200190929190805190602001909291905050505050505050565b6000808314156132185760009050613239565b600082840290508284828161322957fe5b041461323457600080fd5b809150505b92915050565b61329183600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461224090919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061332682600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461224090919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506133dd8160066000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461224090919063ffffffff16565b60066000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a33073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050505056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737363616e6e6f74207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737363616e6e6f74207472616e7366657220746f20746865207a65726f20616464726573736d696e546f6b656e4265666f7265537761702073686f756c642062652067726561746572207468616e20312053455041a2646970667358221220fd57f227fb67af4749f727becb3856021bd459c4a497a1397eb141a38717f30264736f6c63430007030033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

-----Decoded View---------------
Arg [0] : uniswapV2Router (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d


Deployed Bytecode Sourcemap

1972:10910:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4153:83;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4975:161;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4430:92;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5144:269;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2588:24;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2213:33;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4339:83;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;5421:218;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11107:199;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10543:315;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2891:33;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11439:116;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2037:42;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12314:116;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12623:131;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2557:24;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4530:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1728:148:1;;;;;;;;;;;;;:::i;:::-;;11318:109:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2664:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2720:41;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1086:79:1;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2625:32:2;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2386:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4244:87;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2477:38;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11887:303;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12766:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12435:176;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5647:228;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4649:167;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2440:33;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12196:106;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4824:143;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10870:87;;;;;;;;;;;;;:::i;:::-;;2519:29;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2031:244:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4153:83:2;4190:13;4223:5;4216:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4153:83;:::o;4975:161::-;5050:4;5067:39;5076:12;:10;:12::i;:::-;5090:7;5099:6;5067:8;:39::i;:::-;5124:4;5117:11;;4975:161;;;;:::o;4430:92::-;4475:7;4502:12;;4495:19;;4430:92;:::o;5144:269::-;5242:4;5259:36;5269:6;5277:9;5288:6;5259:9;:36::i;:::-;5306:77;5315:6;5323:12;:10;:12::i;:::-;5337:45;5375:6;5337:11;:19;5349:6;5337:19;;;;;;;;;;;;;;;:33;5357:12;:10;:12::i;:::-;5337:33;;;;;;;;;;;;;;;;:37;;:45;;;;:::i;:::-;5306:8;:77::i;:::-;5401:4;5394:11;;5144:269;;;;;:::o;2588:24::-;;;;;;;;;;;;;:::o;2213:33::-;;;;;;;;;;;;;:::o;4339:83::-;4380:5;4405:9;;;;;;;;;;;4398:16;;4339:83;:::o;5421:218::-;5509:4;5526:83;5535:12;:10;:12::i;:::-;5549:7;5558:50;5597:10;5558:11;:25;5570:12;:10;:12::i;:::-;5558:25;;;;;;;;;;;;;;;:34;5584:7;5558:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;5526:8;:83::i;:::-;5627:4;5620:11;;5421:218;;;;:::o;11107:199::-;1308:12:1;:10;:12::i;:::-;1298:22;;:6;;;;;;;;;;:22;;;1290:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11208:39:2::1;11227:5;11234:12;11208:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;11286:12;11258:18;:25;11277:5;11258:25;;;;;;;;;;;;;;;;:40;;;;;;;;;;;;;;;;;;11107:199:::0;;:::o;10543:315::-;1308:12:1;:10;:12::i;:::-;1298:22;;:6;;;;;;;;;;:22;;;1290:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10672:9:2::1;;;;;;;;;;;10668:1;:13;10645:36;;:19;:36;;10637:97;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10768:19;10745:20;:42;;;;10803:47;10830:19;10803:47;;;;;;;;;;;;;;;;;;10543:315:::0;:::o;2891:33::-;;;;;;;;;;;;;:::o;11439:116::-;1308:12:1;:10;:12::i;:::-;1298:22;;:6;;;;;;;;;;:22;;;1290:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11542:5:2::1;11523:16;;:24;;;;;;;;;;;;;;;;;;11439:116:::0;:::o;2037:42::-;;;;;;;;;;;;;:::o;12314:116::-;12372:7;12399:23;;;;;;;;;;;12392:30;;12314:116;:::o;12623:131::-;1308:12:1;:10;:12::i;:::-;1298:22;;:6;;;;;;;;;;:22;;;1290:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12741:5:2::1;12714:17;:24;12732:5;12714:24;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;12623:131:::0;;:::o;2557:24::-;;;;;;;;;;;;;:::o;4530:111::-;4588:7;4615:9;:18;4625:7;4615:18;;;;;;;;;;;;;;;;4608:25;;4530:111;;;:::o;1728:148:1:-;1308:12;:10;:12::i;:::-;1298:22;;:6;;;;;;;;;;:22;;;1290:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1835:1:::1;1798:40;;1819:6;::::0;::::1;;;;;;;;1798:40;;;;;;;;;;;;1866:1;1849:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;1728:148::o:0;11318:109:2:-;1308:12:1;:10;:12::i;:::-;1298:22;;:6;;;;;;;;;;:22;;;1290:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11414:5:2::1;11393:18;;:26;;;;;;;;;;;;;;;;;;11318:109:::0;:::o;2664:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;2720:41::-;;;;:::o;1086:79:1:-;1124:7;1151:6;;;;;;;;;;;1144:13;;1086:79;:::o;2625:32:2:-;;;;;;;;;;;;;:::o;2386:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;4244:87::-;4283:13;4316:7;4309:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4244:87;:::o;2477:38::-;;;;;;;;;;;;;:::o;11887:303::-;11966:1;11944:24;;:10;:24;;;;11936:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12043:33;12069:6;12043:9;:21;12053:10;12043:21;;;;;;;;;;;;;;;;:25;;:33;;;;:::i;:::-;12019:9;:21;12029:10;12019:21;;;;;;;;;;;;;;;:57;;;;12102:24;12119:6;12102:12;;:16;;:24;;;;:::i;:::-;12087:12;:39;;;;12171:1;12142:40;;12151:10;12142:40;;;12175:6;12142:40;;;;;;;;;;;;;;;;;;11887:303;:::o;12766:110::-;1308:12:1;:10;:12::i;:::-;1298:22;;:6;;;;;;;;;;:22;;;1290:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12844:2:2::1;12835:6;;:11;;;;;;;;;;;;;;;;;;12866:2;12857:6;;:11;;;;;;;;;;;;;;;;;;12766:110:::0;;:::o;12435:176::-;1308:12:1;:10;:12::i;:::-;1298:22;;:6;;;;;;;;;;:22;;;1290:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12541:8:2::1;12517:21;;:32;;;;;;;;;;;;;;;;;;12565:38;12594:8;12565:38;;;;;;;;;;;;;;;;;;;;12435:176:::0;:::o;5647:228::-;5740:4;5757:88;5766:12;:10;:12::i;:::-;5780:7;5789:55;5828:15;5789:11;:25;5801:12;:10;:12::i;:::-;5789:25;;;;;;;;;;;;;;;:34;5815:7;5789:34;;;;;;;;;;;;;;;;:38;;:55;;;;:::i;:::-;5757:8;:88::i;:::-;5863:4;5856:11;;5647:228;;;;:::o;4649:167::-;4727:4;4744:42;4754:12;:10;:12::i;:::-;4768:9;4779:6;4744:9;:42::i;:::-;4804:4;4797:11;;4649:167;;;;:::o;2440:33::-;;;;;;;;;;;;;:::o;12196:106::-;12249:7;12276:18;;;;;;;;;;;12269:25;;12196:106;:::o;4824:143::-;4905:7;4932:11;:18;4944:5;4932:18;;;;;;;;;;;;;;;:27;4951:7;4932:27;;;;;;;;;;;;;;;;4925:34;;4824:143;;;;:::o;10870:87::-;1308:12:1;:10;:12::i;:::-;1298:22;;:6;;;;;;;;;;:22;;;1290:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10945:4:2::1;10930:12;;:19;;;;;;;;;;;;;;;;;;10870:87::o:0;2519:29::-;;;;;;;;;;;;;:::o;2031:244:1:-;1308:12;:10;:12::i;:::-;1298:22;;:6;;;;;;;;;;:22;;;1290:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2140:1:::1;2120:22;;:8;:22;;;;2112:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2230:8;2201:38;;2222:6;::::0;::::1;;;;;;;;2201:38;;;;;;;;;;;;2259:8;2250:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;2031:244:::0;:::o;1353:136:3:-;1411:7;1427:9;1443:1;1439;:5;1427:17;;1464:1;1459;:6;;1451:15;;;;;;1482:1;1475:8;;;1353:136;;;;:::o;785:106:0:-;838:15;873:10;866:17;;785:106;:::o;5889:346:2:-;6008:1;5991:19;;:5;:19;;;;5983:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6089:1;6070:21;;:7;:21;;;;6062:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6173:6;6143:11;:18;6155:5;6143:18;;;;;;;;;;;;;;;:27;6162:7;6143:27;;;;;;;;;;;;;;;:36;;;;6211:7;6195:32;;6204:5;6195:32;;;6220:6;6195:32;;;;;;;;;;;;;;;;;;5889:346;;;:::o;6241:984::-;6350:1;6332:20;;:6;:20;;;;6324:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6434:1;6413:23;;:9;:23;;;;6405:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6494:12;;;;;;;;;;;6489:116;;6531:17;:25;6549:6;6531:25;;;;;;;;;;;;;;;;;;;;;;;;;6523:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6489:116;6621:16;;;;;;;;;;;6617:542;;6654:28;6685:24;6703:4;6685:9;:24::i;:::-;6654:55;;6724:24;6775:20;;6751;:44;;6724:71;;6828:16;;;;;;;;;;;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6801:50;;:23;;;;;;;;;;:50;6888:19;:72;;;;;6942:18;;;;;;;;;;;6928:32;;:10;:32;;;;6888:72;:114;;;;;6981:21;;;;;;;;;;;6888:114;:167;;;;;7023:32;7045:9;7023:21;:32::i;:::-;6888:167;6866:282;;;7090:42;7111:20;7090;:42::i;:::-;6866:282;6617:542;;;7173:44;7191:6;7199:9;7210:6;7173:17;:44::i;:::-;6241:984;;;:::o;1149:136:3:-;1207:7;1236:1;1231;:6;;1223:15;;;;;;1245:9;1261:1;1257;:5;1245:17;;1278:1;1271:8;;;1149:136;;;;:::o;10969:126:2:-;11038:4;11062:18;:25;11081:5;11062:25;;;;;;;;;;;;;;;;;;;;;;;;;11055:32;;10969:126;;;:::o;8682:863::-;3519:4;3500:16;;:23;;;;;;;;;;;;;;;;;;8774:21:::1;8798:44;2803:1;8798:20;:24;;:44;;;;:::i;:::-;8774:68;;8847:20;8870:38;2847:1;8870:13;:17;;:38;;;;:::i;:::-;8847:61;;8913:26;8942:31;8960:12;8942:13;:17;;:31;;;;:::i;:::-;8913:60;;8984:12;8999:19;9016:1;8999:12;:16;;:19;;;;:::i;:::-;8984:34;;9029:17;9049:22;9066:4;9049:12;:16;;:22;;;;:::i;:::-;9029:42;;9084:22;9109:21;9084:46;;9143:22;9160:4;9143:16;:22::i;:::-;9186:18;9207:41;9233:14;9207:21;:25;;:41;;;;:::i;:::-;9186:62;;9261:41;9280:9;9291:10;9261:18;:41::i;:::-;9343:16;;;;;;;;;;;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;9328:68;;;9368:4;9374:10;9386:9;9328:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9411:60;9429:4;9436:14;;;;;;;;;;;9452:18;9411:9;:60::i;:::-;9482:55;9500:4;9507:9;2803:1;9482:9;:55::i;:::-;3534:1;;;;;;;3565:5:::0;3546:16;;:24;;;;;;;;;;;;;;;;;;8682:863;:::o;7234:823::-;7345:29;7367:6;7345:9;:17;7355:6;7345:17;;;;;;;;;;;;;;;;:21;;:29;;;;:::i;:::-;7325:9;:17;7335:6;7325:17;;;;;;;;;;;;;;;:49;;;;7387:16;;;;;;;;;;;7383:667;;;7443:32;7468:6;7443:9;:20;7453:9;7443:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;7420:9;:20;7430:9;7420:20;;;;;;;;;;;;;;;:55;;;;7512:9;7495:35;;7504:6;7495:35;;;7523:6;7495:35;;;;;;;;;;;;;;;;;;7383:667;;;7556:32;7578:9;7556:21;:32::i;:::-;7552:498;;;7610:17;7630:27;7653:3;7630:18;7641:6;7630;;;;;;;;;;;:10;;;;:18;;;;:::i;:::-;:22;;:27;;;;:::i;:::-;7610:47;;7668:17;7688:27;7711:3;7688:18;7699:6;7688;;;;;;;;;;;:10;;;;:18;;;;:::i;:::-;:22;;:27;;;;:::i;:::-;7668:47;;7726:23;7752:36;7763:24;7777:9;7763;:13;;:24;;;;:::i;:::-;7752:6;:10;;:36;;;;:::i;:::-;7726:62;;7795:79;7817:6;7825:9;7836:15;7853:9;7864;7795:21;:79::i;:::-;7552:498;;;;;;7949:32;7974:6;7949:9;:20;7959:9;7949:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;7926:9;:20;7936:9;7926:20;;;;;;;;;;;;;;;:55;;;;8018:9;8001:35;;8010:6;8001:35;;;8029:6;8001:35;;;;;;;;;;;;;;;;;;7552:498;7383:667;7234:823;;;:::o;755:276:3:-;813:7;841:1;837;:5;829:14;;;;;;908:9;924:1;920;:5;;;;;;908:17;;1024:1;1017:8;;;755:276;;;;:::o;9557:507:2:-;9624:21;9662:1;9648:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9624:40;;9693:4;9675;9680:1;9675:7;;;;;;;;;;;;;:23;;;;;;;;;;;9719:16;;;;;;;;;;;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9709:4;9714:1;9709:7;;;;;;;;;;;;;:33;;;;;;;;;;;9755:63;9772:4;9787:16;;;;;;;;;;;9806:11;9755:8;:63::i;:::-;9831:16;;;;;;;;;;;:67;;;9913:11;9939:1;9983:4;10010;10030:15;9831:225;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9557:507;;:::o;10072:431::-;10160:63;10177:4;10192:16;;;;;;;;;;;10211:11;10160:8;:63::i;:::-;10236:16;;;;;;;;;;;:32;;;10276:9;10309:4;10329:11;10355:1;10398;10449:4;10469:15;10236:259;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10072:431;;:::o;247:393:3:-;305:7;538:1;533;:6;529:37;;;557:1;550:8;;;;529:37;574:9;590:1;586;:5;574:17;;615:1;610;606;:5;;;;;;:10;598:19;;;;;;633:1;626:8;;;247:393;;;;;:::o;8069:601:2:-;8244:41;8269:15;8244:9;:20;8254:9;8244:20;;;;;;;;;;;;;;;;:24;;:41;;;;:::i;:::-;8221:9;:20;8231:9;8221:20;;;;;;;;;;;;;;;:64;;;;8327:39;8356:9;8327;:24;8345:4;8327:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;8300:9;:24;8318:4;8300:24;;;;;;;;;;;;;;;:66;;;;8413:44;8447:9;8413;:29;8423:18;;;;;;;;;;;8413:29;;;;;;;;;;;;;;;;:33;;:44;;;;:::i;:::-;8381:9;:29;8391:18;;;;;;;;;;;8381:29;;;;;;;;;;;;;;;:76;;;;8506:9;8489:44;;8498:6;8489:44;;;8517:15;8489:44;;;;;;;;;;;;;;;;;;8578:4;8553:42;;8562:6;8553:42;;;8585:9;8553:42;;;;;;;;;;;;;;;;;;8632:18;;;;;;;;;;;8615:47;;8624:6;8615:47;;;8652:9;8615:47;;;;;;;;;;;;;;;;;;8069:601;;;;;:::o

Swarm Source

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