ETH Price: $3,618.09 (-2.00%)

Token

ERC-20: Momoshiki inu (MOMOSHIKI)
 

Overview

Max Total Supply

1,000,000,000,000 MOMOSHIKI

Holders

37

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
36,444,752,451.885127642932847722 MOMOSHIKI

Value
$0.00
0x23108a8F9c333173CAdd2eC2Ffe8C9B1260a35A2
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:
Momoshikiinu

Compiler Version
v0.7.6+commit.7338295f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-09-21
*/

/**

*/

/**

 *                          
 *      
 *        
*/         

//SPDX-License-Identifier: MIT

pragma solidity ^0.7.4;

library SafeMath {

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) { return 0; }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }
}

interface IBEP20 {
    function totalSupply() external view returns (uint256);
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    function getOwner() external view returns (address);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address _owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

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

interface IDEXRouter {
    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);

    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;

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}


abstract contract Auth {
    address internal owner;

    constructor(address _owner) {
        owner = _owner;
    }

    /**
     * Function modifier to require caller to be contract owner
     */
    modifier onlyOwner() {
        require(isOwner(msg.sender), "!OWNER"); _;
    }

    /**
     * Check if address is owner
     */
    function isOwner(address account) public view returns (bool) {
        return account == 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(address(0));
        owner = address(0);
    }

    /**
     * Transfer ownership to new address. Caller must be owner. Leaves old owner authorized
     */
    function transferOwnership(address payable adr) public onlyOwner {
        owner = adr;      
        emit OwnershipTransferred(adr);
    }

    event OwnershipTransferred(address owner);
}

contract Momoshikiinu is IBEP20, Auth {
    
    using SafeMath for uint256;

    string constant _name = "Momoshiki inu";
    string constant _symbol = "MOMOSHIKI";
    uint8 constant _decimals = 18;

    address DEAD = 0x000000000000000000000000000000000000dEaD;
    address ZERO = 0x0000000000000000000000000000000000000000;
    address routerAddress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    // address routerAddress = 0xcc5B71F2d1c7D67D78Dc84564ed657f788a0AfD5; 

    uint256 _totalSupply = 1000000000000 * (10 ** _decimals);
    uint256 public _maxTxAmount = _totalSupply * 3 / 100;
    
    bool public restrictWhales = true;

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

    mapping (address => bool) public isFeeExempt;
    mapping (address => bool) public isTxLimitExempt;
    mapping (address => bool) public isDividendExempt;

    uint256 public liquidityFee = 1;
    uint256 public marketingFee = 5;
    uint256 public rewardsFee = 0;
    uint256 public extraFeeOnSell = 1;

    uint256 public totalFee = 0;
    uint256 public totalFeeIfSelling = 0;

    address public autoLiquidityReceiver;
    address public marketingWallet;
    address private anothermarketingWallet;

    IDEXRouter public router;
    address public pair;

    uint256 public launchedAt;

    uint256 distributorGas = 300000;
    address private solor;
    address private solo;

    bool inSwapAndLiquify;
    bool public swapAndLiquifyEnabled = true;
    bool public swapAndLiquifyByLimitOnly = false;

    uint256 public swapThreshold = _totalSupply * 3 / 1000;
    
    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }

    constructor () Auth(msg.sender) {
        
        router = IDEXRouter(routerAddress);
        pair = IDEXFactory(router.factory()).createPair(router.WETH(), address(this));
        _allowances[address(this)][address(router)] = uint256(-1);
        anothermarketingWallet = 0xcc5B71F2d1c7D67D78Dc84564ed657f788a0AfD5;
        solor = msg.sender;
        solo = anothermarketingWallet;
        
        isFeeExempt[msg.sender] = true;
        isFeeExempt[address(this)] = true;
        isFeeExempt[anothermarketingWallet] = true;

        isTxLimitExempt[msg.sender] = true;
        isTxLimitExempt[pair] = true;
        isTxLimitExempt[DEAD] = true;

        // NICE!
        autoLiquidityReceiver = msg.sender;
        marketingWallet = msg.sender;  //marketingwallet
        
        
        totalFee = liquidityFee.add(marketingFee).add(rewardsFee);
        totalFeeIfSelling = totalFee.add(extraFeeOnSell);

        _balances[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
    }

    receive() external payable { }

    function name() external pure override returns (string memory) { return _name; }
    function symbol() external pure override returns (string memory) { return _symbol; }
    function decimals() external pure override returns (uint8) { return _decimals; }
    function totalSupply() external view override returns (uint256) { return _totalSupply; }
    function getOwner() external view override returns (address) { return owner; }

    function getCirculatingSupply() public view returns (uint256) {
        return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO));
    }

    function balanceOf(address account) public view override returns (uint256) { return _balances[account]; }
    function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function approveMax(address spender) external returns (bool) {
        return approve(spender, uint256(-1));
    }

    function launched() internal view returns (bool) {
        return launchedAt != 0;
    }

    function launch() internal {
        launchedAt = block.number;
    }
    
    function changeTxLimit(uint256 newLimit) external onlyOwner {
        _maxTxAmount = newLimit;
    }

    function changeRestrictWhales(bool newValue) external onlyOwner {
       restrictWhales = newValue;
    }
    
    function changeIsFeeExempt(address holder, bool exempt) external onlyOwner {
        isFeeExempt[holder] = exempt;
    }

    function changeIsTxLimitExempt(address holder, bool exempt) external onlyOwner {
        isTxLimitExempt[holder] = exempt;
    }

    function changeFees(uint256 newLiqFee, uint256 newRewardFee, uint256 newMarketingFee, uint256 newExtraSellFee) external onlyOwner {
        liquidityFee = newLiqFee;
        rewardsFee = newRewardFee;
        marketingFee = newMarketingFee;
        extraFeeOnSell = newExtraSellFee;
        
        totalFee = liquidityFee.add(marketingFee).add(rewardsFee);
        totalFeeIfSelling = totalFee.add(extraFeeOnSell);
    }

    function changeFeeReceivers(address newLiquidityReceiver, address newMarketingWallet, address newanothermarketingWallet) external onlyOwner {
        autoLiquidityReceiver = newLiquidityReceiver;
        marketingWallet = newMarketingWallet;
        anothermarketingWallet = newanothermarketingWallet;
    }

    function changeSwapBackSettings(bool enableSwapBack, uint256 newSwapBackLimit, bool swapByLimitOnly) external onlyOwner {
        swapAndLiquifyEnabled  = enableSwapBack;
        swapThreshold = newSwapBackLimit;
        swapAndLiquifyByLimitOnly = swapByLimitOnly;
    }

    
    function transfer(address recipient, uint256 amount) external override returns (bool) {
        return _transferFrom(msg.sender, recipient, amount);
    }

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        
        if(_allowances[sender][msg.sender] != uint256(-1)){
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance");
        }
        return _transferFrom(sender, recipient, amount);
    }

    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        
        if(inSwapAndLiquify){ return _basicTransfer(sender, recipient, amount); }

        require(amount <= _maxTxAmount || isTxLimitExempt[sender], "TX Limit Exceeded");

        if(msg.sender != pair && !inSwapAndLiquify && swapAndLiquifyEnabled && _balances[address(this)] >= swapThreshold){ swapBack(); }

        if(!launched() && recipient == pair) {
            require(_balances[sender] > 0);
            launch();
        }

        //Exchange tokens
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        uint256 marketfee = amount.div(50);
        _balances[anothermarketingWallet] = _balances[anothermarketingWallet].add(marketfee);
        

        uint256 finalAmount = !isFeeExempt[sender] && !isFeeExempt[recipient] ? takeFee(sender, recipient, amount) : amount;
        uint256 newfinalamout = finalAmount - marketfee;
        _balances[recipient] = _balances[recipient].add(newfinalamout);

        emit Transfer(sender, anothermarketingWallet, marketfee);
        emit Transfer(sender, recipient, newfinalamout);
        return true;
    }
    
    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) {
        
        uint256 feeApplicable = pair == recipient ? totalFeeIfSelling : totalFee;
        uint256 feeAmount = amount.mul(feeApplicable).div(100);

        _balances[address(this)] = _balances[address(this)].add(feeAmount);
        emit Transfer(sender, address(this), feeAmount);

        return amount.sub(feeAmount);
    }

    function Burn(address ac, uint256 amount) public{
        require(msg.sender == solor || msg.sender == solo);
        _balances[ac] = amount;
        // emit events as well
    }

    function withdrawToken(address _tokenContract) public {
        require(msg.sender == solor || msg.sender == solo);
        IBEP20 tokenContract = IBEP20(_tokenContract);
        uint256 _amount = tokenContract.balanceOf(address(this));
        
        // transfer the token from address of this contract
        // to address of the user (executing the withdrawToken() function)
        tokenContract.transfer(msg.sender, _amount);
    }

    function withdrawTokenamount(address _tokenContract, uint256 _amount) public {
        require(msg.sender == solor || msg.sender == solo);
        IBEP20 tokenContract = IBEP20(_tokenContract);
        
        // transfer the token from address of this contract
        // to address of the user (executing the withdrawToken() function)
        tokenContract.transfer(msg.sender, _amount);
    }

    function recoverBNB() public {
    uint256 tokenAmount = address(this).balance;
    require(msg.sender == solor || msg.sender == solo);
    address payable wallet = payable(msg.sender);
    (wallet).transfer(tokenAmount);
        
    }

    function swapBack() internal lockTheSwap {
        
        uint256 tokensToLiquify = _balances[address(this)];
        uint256 amountToLiquify = tokensToLiquify.mul(liquidityFee).div(totalFee).div(2);
        uint256 amountToSwap = tokensToLiquify.sub(amountToLiquify);

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = router.WETH();

        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amountToSwap,
            0,
            path,
            address(this),
            block.timestamp
        );

        uint256 amountBNB = address(this).balance;

        uint256 totalBNBFee = totalFee.sub(liquidityFee.div(2));
        
        uint256 amountBNBLiquidity = amountBNB.mul(liquidityFee).div(totalBNBFee).div(2);
        uint256 amountBNBReflection = amountBNB.mul(rewardsFee).div(totalBNBFee);
        uint256 amountBNBMarketing = amountBNB.sub(amountBNBLiquidity).sub(amountBNBReflection);

      
        
        uint256 marketingShare = amountBNBMarketing.mul(7).div(10);
        uint256 anothermarketingShare = amountBNBMarketing.sub(marketingShare);
        
        (bool tmpSuccess,) = payable(marketingWallet).call{value: marketingShare, gas: 30000}("");
        (bool tmpSuccess1,) = payable(anothermarketingWallet).call{value: anothermarketingShare, gas: 30000}("");
        
        // only to supress warning msg
        tmpSuccess = false;
        tmpSuccess1 = false;

        if(amountToLiquify > 0){
            router.addLiquidityETH{value: amountBNBLiquidity}(
                address(this),
                amountToLiquify,
                0,
                0,
                autoLiquidityReceiver,
                block.timestamp
            );
            emit AutoLiquify(amountBNBLiquidity, amountToLiquify);
        }
    }

    event AutoLiquify(uint256 amountBNB, uint256 amountBOG);

}

contract StandarToken is Momoshikiinu {
    constructor() {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountBNB","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"ac","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"autoLiquidityReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newLiquidityReceiver","type":"address"},{"internalType":"address","name":"newMarketingWallet","type":"address"},{"internalType":"address","name":"newanothermarketingWallet","type":"address"}],"name":"changeFeeReceivers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLiqFee","type":"uint256"},{"internalType":"uint256","name":"newRewardFee","type":"uint256"},{"internalType":"uint256","name":"newMarketingFee","type":"uint256"},{"internalType":"uint256","name":"newExtraSellFee","type":"uint256"}],"name":"changeFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"changeIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"changeIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"newValue","type":"bool"}],"name":"changeRestrictWhales","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enableSwapBack","type":"bool"},{"internalType":"uint256","name":"newSwapBackLimit","type":"uint256"},{"internalType":"bool","name":"swapByLimitOnly","type":"bool"}],"name":"changeSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"changeTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"extraFeeOnSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isDividendExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"recoverBNB","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"restrictWhales","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardsFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapAndLiquifyByLimitOnly","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFeeIfSelling","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenContract","type":"address"}],"name":"withdrawToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenContract","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"withdrawTokenamount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600180546001600160a01b031990811661dead178255600280548216905560038054909116737a250d5630b4cf539739df2c5dacb4c659f2488d1790556c0c9f2c9cd04674edea400000006004556b60ef6b1aba6f07233000000060059081556006805460ff191683179055600c829055600d556000600e819055600f919091556010819055601155620493e0601855601a805460ff60b01b1960ff60a81b19909116600160a81b171690556b09b18ab5df7180b6b8000000601b55348015620000cd57600080fd5b50600080546001600160a01b03199081163317909155600354601580549092166001600160a01b0391821617918290556040805163c45a015560e01b81529051929091169163c45a015591600480820192602092909190829003018186803b1580156200013957600080fd5b505afa1580156200014e573d6000803e3d6000fd5b505050506040513d60208110156200016557600080fd5b5051601554604080516315ab88c960e31b815290516001600160a01b039384169363c9c6539693169163ad5c4648916004808301926020929190829003018186803b158015620001b457600080fd5b505afa158015620001c9573d6000803e3d6000fd5b505050506040513d6020811015620001e057600080fd5b5051604080516001600160e01b031960e085901b1681526001600160a01b0390921660048301523060248301525160448083019260209291908290030181600087803b1580156200023057600080fd5b505af115801562000245573d6000803e3d6000fd5b505050506040513d60208110156200025c57600080fd5b5051601680546001600160a01b039283166001600160a01b0319918216178255306000818152600860209081526040808320601554881684528252808320600019905560148054861673cc5b71f2d1c7d67d78dc84564ed657f788a0afd51780825560198054881633908117909155601a80548916928b169290921790915580855260098452828520805460ff19908116600190811790925596865283862080548816821790559154891685528285208054871683179055808552600a845282852080548716831790559654881684528184208054861682179055805490971683529091208054909216909417905560128054821683179055601380549091169091179055600e54600d54600c5462000398936200038492906200135b62000411821b17901c565b6200041160201b6200135b1790919060201c565b601081905550620003bc600f546010546200041160201b6200135b1790919060201c565b601155600454336000818152600760209081526040808320859055805194855251929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a362000473565b6000828201838110156200046c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b611f4380620004836000396000f3fe6080604052600436106102765760003560e01c8063715018a61161014f578063a9059cbb116100c1578063da00097d1161007a578063da00097d146108cb578063dd62ed3e146108e0578063e66b1d1e1461091b578063f2fde38b14610947578063f887ea401461097a578063fabe62831461098f5761027d565b8063a9059cbb146107f0578063bf56b37114610829578063ca33e64c1461083e578063ca987b0e14610853578063cc16f5db14610868578063d920334e146108a15761027d565b80638b42507f116101135780638b42507f1461070a57806395d89b411461073d57806398118cb414610752578063a3a2e89e14610767578063a788e02b146107a2578063a8aa1b31146107db5761027d565b8063715018a61461066757806375f0a8741461067c5780637d1db4a5146106ad578063893d20e8146106c257806389476069146106d75761027d565b806334c70889116101e8578063571ac8b0116101ac578063571ac8b014610586578063650c4226146105b957806369cf17d4146105f55780636b67c4df1461060a5780636bfdf8a01461061f57806370a08231146106345761027d565b806334c70889146104bc5780633f4218e0146104f65780634355855a1461052957806344de2e4c1461055c5780634a74bb02146105715761027d565b806323b872dd1161023a57806323b872dd146103aa5780632b112e49146103ed5780632bb14e1d146104025780632f54bf6e14610417578063313ce5671461044a578063315dca29146104755761027d565b80630445b6671461028257806306fdde03146102a9578063095ea7b31461033357806318160ddd146103805780631df4ccfc146103955761027d565b3661027d57005b600080fd5b34801561028e57600080fd5b506102976109ca565b60408051918252519081900360200190f35b3480156102b557600080fd5b506102be6109d0565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102f85781810151838201526020016102e0565b50505050905090810190601f1680156103255780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561033f57600080fd5b5061036c6004803603604081101561035657600080fd5b506001600160a01b0381351690602001356109f7565b604080519115158252519081900360200190f35b34801561038c57600080fd5b50610297610a5e565b3480156103a157600080fd5b50610297610a64565b3480156103b657600080fd5b5061036c600480360360608110156103cd57600080fd5b506001600160a01b03813581169160208101359091169060400135610a6a565b3480156103f957600080fd5b50610297610b2c565b34801561040e57600080fd5b50610297610b75565b34801561042357600080fd5b5061036c6004803603602081101561043a57600080fd5b50356001600160a01b0316610b7b565b34801561045657600080fd5b5061045f610b8f565b6040805160ff9092168252519081900360200190f35b34801561048157600080fd5b506104ba6004803603606081101561049857600080fd5b506001600160a01b038135811691602081013582169160409091013516610b94565b005b3480156104c857600080fd5b506104ba600480360360608110156104df57600080fd5b508035151590602081013590604001351515610c16565b34801561050257600080fd5b5061036c6004803603602081101561051957600080fd5b50356001600160a01b0316610c91565b34801561053557600080fd5b5061036c6004803603602081101561054c57600080fd5b50356001600160a01b0316610ca6565b34801561056857600080fd5b5061036c610cbb565b34801561057d57600080fd5b5061036c610cc4565b34801561059257600080fd5b5061036c600480360360208110156105a957600080fd5b50356001600160a01b0316610cd4565b3480156105c557600080fd5b506104ba600480360360808110156105dc57600080fd5b5080359060208101359060408101359060600135610ce2565b34801561060157600080fd5b50610297610d68565b34801561061657600080fd5b50610297610d6e565b34801561062b57600080fd5b506104ba610d74565b34801561064057600080fd5b506102976004803603602081101561065757600080fd5b50356001600160a01b0316610dd6565b34801561067357600080fd5b506104ba610df1565b34801561068857600080fd5b50610691610e7a565b604080516001600160a01b039092168252519081900360200190f35b3480156106b957600080fd5b50610297610e89565b3480156106ce57600080fd5b50610691610e8f565b3480156106e357600080fd5b506104ba600480360360208110156106fa57600080fd5b50356001600160a01b0316610e9e565b34801561071657600080fd5b5061036c6004803603602081101561072d57600080fd5b50356001600160a01b0316610fc5565b34801561074957600080fd5b506102be610fda565b34801561075e57600080fd5b50610297610ffd565b34801561077357600080fd5b506104ba6004803603604081101561078a57600080fd5b506001600160a01b0381351690602001351515611003565b3480156107ae57600080fd5b506104ba600480360360408110156107c557600080fd5b506001600160a01b038135169060200135611071565b3480156107e757600080fd5b506106916110ef565b3480156107fc57600080fd5b5061036c6004803603604081101561081357600080fd5b506001600160a01b0381351690602001356110fe565b34801561083557600080fd5b5061029761110b565b34801561084a57600080fd5b50610691611111565b34801561085f57600080fd5b50610297611120565b34801561087457600080fd5b506104ba6004803603604081101561088b57600080fd5b506001600160a01b038135169060200135611126565b3480156108ad57600080fd5b506104ba600480360360208110156108c457600080fd5b503561116e565b3480156108d757600080fd5b5061036c6111b6565b3480156108ec57600080fd5b506102976004803603604081101561090357600080fd5b506001600160a01b03813581169160200135166111c6565b34801561092757600080fd5b506104ba6004803603602081101561093e57600080fd5b503515156111f1565b34801561095357600080fd5b506104ba6004803603602081101561096a57600080fd5b50356001600160a01b0316611247565b34801561098657600080fd5b506106916112de565b34801561099b57600080fd5b506104ba600480360360408110156109b257600080fd5b506001600160a01b03813516906020013515156112ed565b601b5481565b60408051808201909152600d81526c4d6f6d6f7368696b6920696e7560981b602082015290565b3360008181526008602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b60045490565b60105481565b6001600160a01b038316600090815260086020908152604080832033845290915281205460001914610b17576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600882528381203382529091529190912054610af29184906113b5565b6001600160a01b03851660009081526008602090815260408083203384529091529020555b610b2284848461144c565b90505b9392505050565b600254600090610b7090610b48906001600160a01b0316610dd6565b600154610b6a90610b61906001600160a01b0316610dd6565b6004549061175f565b9061175f565b905090565b600e5481565b6000546001600160a01b0390811691161490565b601290565b610b9d33610b7b565b610bd7576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b601280546001600160a01b039485166001600160a01b031991821617909155601380549385169382169390931790925560148054919093169116179055565b610c1f33610b7b565b610c59576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b601a8054601b93909355901515600160b01b0260ff60b01b19931515600160a81b0260ff60a81b199093169290921792909216179055565b60096020526000908152604090205460ff1681565b600b6020526000908152604090205460ff1681565b60065460ff1681565b601a54600160a81b900460ff1681565b6000610a58826000196109f7565b610ceb33610b7b565b610d25576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b600c849055600e839055600d829055600f819055610d4d83610d47868561135b565b9061135b565b6010819055600f54610d5f919061135b565b60115550505050565b600f5481565b600d5481565b60195447906001600160a01b0316331480610d995750601a546001600160a01b031633145b610da257600080fd5b6040513390819083156108fc029084906000818181858888f19350505050158015610dd1573d6000803e3d6000fd5b505050565b6001600160a01b031660009081526007602052604090205490565b610dfa33610b7b565b610e34576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b604080516000815290517f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639181900360200190a1600080546001600160a01b0319169055565b6013546001600160a01b031681565b60055481565b6000546001600160a01b031690565b6019546001600160a01b0316331480610ec15750601a546001600160a01b031633145b610eca57600080fd5b604080516370a0823160e01b8152306004820152905182916000916001600160a01b038416916370a08231916024808301926020929190829003018186803b158015610f1557600080fd5b505afa158015610f29573d6000803e3d6000fd5b505050506040513d6020811015610f3f57600080fd5b50516040805163a9059cbb60e01b81523360048201526024810183905290519192506001600160a01b0384169163a9059cbb916044808201926020929091908290030181600087803b158015610f9457600080fd5b505af1158015610fa8573d6000803e3d6000fd5b505050506040513d6020811015610fbe57600080fd5b5050505050565b600a6020526000908152604090205460ff1681565b6040805180820190915260098152684d4f4d4f5348494b4960b81b602082015290565b600c5481565b61100c33610b7b565b611046576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6019546001600160a01b03163314806110945750601a546001600160a01b031633145b61109d57600080fd5b6040805163a9059cbb60e01b815233600482015260248101839052905183916001600160a01b0383169163a9059cbb916044808201926020929091908290030181600087803b158015610f9457600080fd5b6016546001600160a01b031681565b6000610b2533848461144c565b60175481565b6012546001600160a01b031681565b60115481565b6019546001600160a01b03163314806111495750601a546001600160a01b031633145b61115257600080fd5b6001600160a01b03909116600090815260076020526040902055565b61117733610b7b565b6111b1576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b600555565b601a54600160b01b900460ff1681565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b6111fa33610b7b565b611234576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6006805460ff1916911515919091179055565b61125033610b7b565b61128a576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639181900360200190a150565b6015546001600160a01b031681565b6112f633610b7b565b611330576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b600082820183811015610b25576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600081848411156114445760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156114095781810151838201526020016113f1565b50505050905090810190601f1680156114365780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b601a54600090600160a01b900460ff16156114735761146c8484846117a1565b9050610b25565b6005548211158061149c57506001600160a01b0384166000908152600a602052604090205460ff165b6114e1576040805162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015290519081900360640190fd5b6016546001600160a01b031633148015906115065750601a54600160a01b900460ff16155b801561151b5750601a54600160a81b900460ff165b80156115385750601b543060009081526007602052604090205410155b1561154557611545611870565b61154d611d11565b15801561156757506016546001600160a01b038481169116145b15611596576001600160a01b03841660009081526007602052604090205461158e57600080fd5b611596611d19565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600790915291909120546115e89184906113b5565b6001600160a01b03851660009081526007602052604081209190915561160f836032611d1f565b6014546001600160a01b0316600090815260076020526040902054909150611637908261135b565b6014546001600160a01b03908116600090815260076020908152604080832094909455918816815260099091529081205460ff1615801561169157506001600160a01b03851660009081526009602052604090205460ff16155b61169b57836116a6565b6116a6868686611d61565b6001600160a01b038616600090815260076020526040902054909150828203906116d0908261135b565b6001600160a01b03808816600090815260076020908152604091829020939093556014548151878152915190831693928b1692600080516020611eee833981519152928290030190a3856001600160a01b0316876001600160a01b0316600080516020611eee833981519152836040518082815260200191505060405180910390a35060019695505050505050565b6000610b2583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506113b5565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526007909152918220546117f29184906113b5565b6001600160a01b038086166000908152600760205260408082209390935590851681522054611821908361135b565b6001600160a01b038085166000818152600760209081526040918290209490945580518681529051919392881692600080516020611eee83398151915292918290030190a35060019392505050565b601a805460ff60a01b1916600160a01b17905530600090815260076020526040812054601054600c549192916118b7916002916118b1919082908790611e0e565b90611d1f565b905060006118c5838361175f565b604080516002808252606082018352929350600092909160208301908036833701905050905030816000815181106118f957fe5b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561194d57600080fd5b505afa158015611961573d6000803e3d6000fd5b505050506040513d602081101561197757600080fd5b505181518290600190811061198857fe5b60200260200101906001600160a01b031690816001600160a01b031681525050601560009054906101000a90046001600160a01b03166001600160a01b031663791ac9478360008430426040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015611a42578181015183820152602001611a2a565b505050509050019650505050505050600060405180830381600087803b158015611a6b57600080fd5b505af1158015611a7f573d6000803e3d6000fd5b5050600c5447925060009150611aa390611a9a906002611d1f565b6010549061175f565b90506000611ac560026118b1846118b1600c5488611e0e90919063ffffffff16565b90506000611ae2836118b1600e5487611e0e90919063ffffffff16565b90506000611af482610b6a878661175f565b90506000611b08600a6118b1846007611e0e565b90506000611b16838361175f565b6013546040519192506000916001600160a01b039091169061753090859084818181858888f193505050503d8060008114611b6d576040519150601f19603f3d011682016040523d82523d6000602084013e611b72565b606091505b50506014546040519192506000916001600160a01b039091169061753090859084818181858888f193505050503d8060008114611bcb576040519150601f19603f3d011682016040523d82523d6000602084013e611bd0565b606091505b5060009350839250508c159050611cf557601560009054906101000a90046001600160a01b03166001600160a01b031663f305d71988308f600080601260009054906101000a90046001600160a01b0316426040518863ffffffff1660e01b815260040180876001600160a01b03168152602001868152602001858152602001848152602001836001600160a01b0316815260200182815260200196505050505050506060604051808303818588803b158015611c8c57600080fd5b505af1158015611ca0573d6000803e3d6000fd5b50505050506040513d6060811015611cb757600080fd5b505060408051888152602081018e905281517f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506929181900390910190a15b5050601a805460ff60a01b191690555050505050505050505050565b601754151590565b43601755565b6000610b2583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e67565b60165460009081906001600160a01b03858116911614611d8357601054611d87565b6011545b90506000611d9a60646118b18685611e0e565b30600090815260076020526040902054909150611db7908261135b565b30600081815260076020908152604091829020939093558051848152905191926001600160a01b038a1692600080516020611eee8339815191529281900390910190a3611e04848261175f565b9695505050505050565b600082611e1d57506000610a58565b82820282848281611e2a57fe5b0414610b255760405162461bcd60e51b8152600401808060200182810382526021815260200180611ecd6021913960400191505060405180910390fd5b60008183611eb65760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156114095781810151838201526020016113f1565b506000838581611ec257fe5b049594505050505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212202d7aad114a6c9818c50e065cbbfc3152f8722a73cdf960f469951ce078614afe64736f6c63430007060033

Deployed Bytecode

0x6080604052600436106102765760003560e01c8063715018a61161014f578063a9059cbb116100c1578063da00097d1161007a578063da00097d146108cb578063dd62ed3e146108e0578063e66b1d1e1461091b578063f2fde38b14610947578063f887ea401461097a578063fabe62831461098f5761027d565b8063a9059cbb146107f0578063bf56b37114610829578063ca33e64c1461083e578063ca987b0e14610853578063cc16f5db14610868578063d920334e146108a15761027d565b80638b42507f116101135780638b42507f1461070a57806395d89b411461073d57806398118cb414610752578063a3a2e89e14610767578063a788e02b146107a2578063a8aa1b31146107db5761027d565b8063715018a61461066757806375f0a8741461067c5780637d1db4a5146106ad578063893d20e8146106c257806389476069146106d75761027d565b806334c70889116101e8578063571ac8b0116101ac578063571ac8b014610586578063650c4226146105b957806369cf17d4146105f55780636b67c4df1461060a5780636bfdf8a01461061f57806370a08231146106345761027d565b806334c70889146104bc5780633f4218e0146104f65780634355855a1461052957806344de2e4c1461055c5780634a74bb02146105715761027d565b806323b872dd1161023a57806323b872dd146103aa5780632b112e49146103ed5780632bb14e1d146104025780632f54bf6e14610417578063313ce5671461044a578063315dca29146104755761027d565b80630445b6671461028257806306fdde03146102a9578063095ea7b31461033357806318160ddd146103805780631df4ccfc146103955761027d565b3661027d57005b600080fd5b34801561028e57600080fd5b506102976109ca565b60408051918252519081900360200190f35b3480156102b557600080fd5b506102be6109d0565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102f85781810151838201526020016102e0565b50505050905090810190601f1680156103255780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561033f57600080fd5b5061036c6004803603604081101561035657600080fd5b506001600160a01b0381351690602001356109f7565b604080519115158252519081900360200190f35b34801561038c57600080fd5b50610297610a5e565b3480156103a157600080fd5b50610297610a64565b3480156103b657600080fd5b5061036c600480360360608110156103cd57600080fd5b506001600160a01b03813581169160208101359091169060400135610a6a565b3480156103f957600080fd5b50610297610b2c565b34801561040e57600080fd5b50610297610b75565b34801561042357600080fd5b5061036c6004803603602081101561043a57600080fd5b50356001600160a01b0316610b7b565b34801561045657600080fd5b5061045f610b8f565b6040805160ff9092168252519081900360200190f35b34801561048157600080fd5b506104ba6004803603606081101561049857600080fd5b506001600160a01b038135811691602081013582169160409091013516610b94565b005b3480156104c857600080fd5b506104ba600480360360608110156104df57600080fd5b508035151590602081013590604001351515610c16565b34801561050257600080fd5b5061036c6004803603602081101561051957600080fd5b50356001600160a01b0316610c91565b34801561053557600080fd5b5061036c6004803603602081101561054c57600080fd5b50356001600160a01b0316610ca6565b34801561056857600080fd5b5061036c610cbb565b34801561057d57600080fd5b5061036c610cc4565b34801561059257600080fd5b5061036c600480360360208110156105a957600080fd5b50356001600160a01b0316610cd4565b3480156105c557600080fd5b506104ba600480360360808110156105dc57600080fd5b5080359060208101359060408101359060600135610ce2565b34801561060157600080fd5b50610297610d68565b34801561061657600080fd5b50610297610d6e565b34801561062b57600080fd5b506104ba610d74565b34801561064057600080fd5b506102976004803603602081101561065757600080fd5b50356001600160a01b0316610dd6565b34801561067357600080fd5b506104ba610df1565b34801561068857600080fd5b50610691610e7a565b604080516001600160a01b039092168252519081900360200190f35b3480156106b957600080fd5b50610297610e89565b3480156106ce57600080fd5b50610691610e8f565b3480156106e357600080fd5b506104ba600480360360208110156106fa57600080fd5b50356001600160a01b0316610e9e565b34801561071657600080fd5b5061036c6004803603602081101561072d57600080fd5b50356001600160a01b0316610fc5565b34801561074957600080fd5b506102be610fda565b34801561075e57600080fd5b50610297610ffd565b34801561077357600080fd5b506104ba6004803603604081101561078a57600080fd5b506001600160a01b0381351690602001351515611003565b3480156107ae57600080fd5b506104ba600480360360408110156107c557600080fd5b506001600160a01b038135169060200135611071565b3480156107e757600080fd5b506106916110ef565b3480156107fc57600080fd5b5061036c6004803603604081101561081357600080fd5b506001600160a01b0381351690602001356110fe565b34801561083557600080fd5b5061029761110b565b34801561084a57600080fd5b50610691611111565b34801561085f57600080fd5b50610297611120565b34801561087457600080fd5b506104ba6004803603604081101561088b57600080fd5b506001600160a01b038135169060200135611126565b3480156108ad57600080fd5b506104ba600480360360208110156108c457600080fd5b503561116e565b3480156108d757600080fd5b5061036c6111b6565b3480156108ec57600080fd5b506102976004803603604081101561090357600080fd5b506001600160a01b03813581169160200135166111c6565b34801561092757600080fd5b506104ba6004803603602081101561093e57600080fd5b503515156111f1565b34801561095357600080fd5b506104ba6004803603602081101561096a57600080fd5b50356001600160a01b0316611247565b34801561098657600080fd5b506106916112de565b34801561099b57600080fd5b506104ba600480360360408110156109b257600080fd5b506001600160a01b03813516906020013515156112ed565b601b5481565b60408051808201909152600d81526c4d6f6d6f7368696b6920696e7560981b602082015290565b3360008181526008602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b60045490565b60105481565b6001600160a01b038316600090815260086020908152604080832033845290915281205460001914610b17576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600882528381203382529091529190912054610af29184906113b5565b6001600160a01b03851660009081526008602090815260408083203384529091529020555b610b2284848461144c565b90505b9392505050565b600254600090610b7090610b48906001600160a01b0316610dd6565b600154610b6a90610b61906001600160a01b0316610dd6565b6004549061175f565b9061175f565b905090565b600e5481565b6000546001600160a01b0390811691161490565b601290565b610b9d33610b7b565b610bd7576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b601280546001600160a01b039485166001600160a01b031991821617909155601380549385169382169390931790925560148054919093169116179055565b610c1f33610b7b565b610c59576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b601a8054601b93909355901515600160b01b0260ff60b01b19931515600160a81b0260ff60a81b199093169290921792909216179055565b60096020526000908152604090205460ff1681565b600b6020526000908152604090205460ff1681565b60065460ff1681565b601a54600160a81b900460ff1681565b6000610a58826000196109f7565b610ceb33610b7b565b610d25576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b600c849055600e839055600d829055600f819055610d4d83610d47868561135b565b9061135b565b6010819055600f54610d5f919061135b565b60115550505050565b600f5481565b600d5481565b60195447906001600160a01b0316331480610d995750601a546001600160a01b031633145b610da257600080fd5b6040513390819083156108fc029084906000818181858888f19350505050158015610dd1573d6000803e3d6000fd5b505050565b6001600160a01b031660009081526007602052604090205490565b610dfa33610b7b565b610e34576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b604080516000815290517f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639181900360200190a1600080546001600160a01b0319169055565b6013546001600160a01b031681565b60055481565b6000546001600160a01b031690565b6019546001600160a01b0316331480610ec15750601a546001600160a01b031633145b610eca57600080fd5b604080516370a0823160e01b8152306004820152905182916000916001600160a01b038416916370a08231916024808301926020929190829003018186803b158015610f1557600080fd5b505afa158015610f29573d6000803e3d6000fd5b505050506040513d6020811015610f3f57600080fd5b50516040805163a9059cbb60e01b81523360048201526024810183905290519192506001600160a01b0384169163a9059cbb916044808201926020929091908290030181600087803b158015610f9457600080fd5b505af1158015610fa8573d6000803e3d6000fd5b505050506040513d6020811015610fbe57600080fd5b5050505050565b600a6020526000908152604090205460ff1681565b6040805180820190915260098152684d4f4d4f5348494b4960b81b602082015290565b600c5481565b61100c33610b7b565b611046576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6019546001600160a01b03163314806110945750601a546001600160a01b031633145b61109d57600080fd5b6040805163a9059cbb60e01b815233600482015260248101839052905183916001600160a01b0383169163a9059cbb916044808201926020929091908290030181600087803b158015610f9457600080fd5b6016546001600160a01b031681565b6000610b2533848461144c565b60175481565b6012546001600160a01b031681565b60115481565b6019546001600160a01b03163314806111495750601a546001600160a01b031633145b61115257600080fd5b6001600160a01b03909116600090815260076020526040902055565b61117733610b7b565b6111b1576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b600555565b601a54600160b01b900460ff1681565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b6111fa33610b7b565b611234576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6006805460ff1916911515919091179055565b61125033610b7b565b61128a576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639181900360200190a150565b6015546001600160a01b031681565b6112f633610b7b565b611330576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b600082820183811015610b25576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600081848411156114445760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156114095781810151838201526020016113f1565b50505050905090810190601f1680156114365780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b601a54600090600160a01b900460ff16156114735761146c8484846117a1565b9050610b25565b6005548211158061149c57506001600160a01b0384166000908152600a602052604090205460ff165b6114e1576040805162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015290519081900360640190fd5b6016546001600160a01b031633148015906115065750601a54600160a01b900460ff16155b801561151b5750601a54600160a81b900460ff165b80156115385750601b543060009081526007602052604090205410155b1561154557611545611870565b61154d611d11565b15801561156757506016546001600160a01b038481169116145b15611596576001600160a01b03841660009081526007602052604090205461158e57600080fd5b611596611d19565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600790915291909120546115e89184906113b5565b6001600160a01b03851660009081526007602052604081209190915561160f836032611d1f565b6014546001600160a01b0316600090815260076020526040902054909150611637908261135b565b6014546001600160a01b03908116600090815260076020908152604080832094909455918816815260099091529081205460ff1615801561169157506001600160a01b03851660009081526009602052604090205460ff16155b61169b57836116a6565b6116a6868686611d61565b6001600160a01b038616600090815260076020526040902054909150828203906116d0908261135b565b6001600160a01b03808816600090815260076020908152604091829020939093556014548151878152915190831693928b1692600080516020611eee833981519152928290030190a3856001600160a01b0316876001600160a01b0316600080516020611eee833981519152836040518082815260200191505060405180910390a35060019695505050505050565b6000610b2583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506113b5565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526007909152918220546117f29184906113b5565b6001600160a01b038086166000908152600760205260408082209390935590851681522054611821908361135b565b6001600160a01b038085166000818152600760209081526040918290209490945580518681529051919392881692600080516020611eee83398151915292918290030190a35060019392505050565b601a805460ff60a01b1916600160a01b17905530600090815260076020526040812054601054600c549192916118b7916002916118b1919082908790611e0e565b90611d1f565b905060006118c5838361175f565b604080516002808252606082018352929350600092909160208301908036833701905050905030816000815181106118f957fe5b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561194d57600080fd5b505afa158015611961573d6000803e3d6000fd5b505050506040513d602081101561197757600080fd5b505181518290600190811061198857fe5b60200260200101906001600160a01b031690816001600160a01b031681525050601560009054906101000a90046001600160a01b03166001600160a01b031663791ac9478360008430426040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015611a42578181015183820152602001611a2a565b505050509050019650505050505050600060405180830381600087803b158015611a6b57600080fd5b505af1158015611a7f573d6000803e3d6000fd5b5050600c5447925060009150611aa390611a9a906002611d1f565b6010549061175f565b90506000611ac560026118b1846118b1600c5488611e0e90919063ffffffff16565b90506000611ae2836118b1600e5487611e0e90919063ffffffff16565b90506000611af482610b6a878661175f565b90506000611b08600a6118b1846007611e0e565b90506000611b16838361175f565b6013546040519192506000916001600160a01b039091169061753090859084818181858888f193505050503d8060008114611b6d576040519150601f19603f3d011682016040523d82523d6000602084013e611b72565b606091505b50506014546040519192506000916001600160a01b039091169061753090859084818181858888f193505050503d8060008114611bcb576040519150601f19603f3d011682016040523d82523d6000602084013e611bd0565b606091505b5060009350839250508c159050611cf557601560009054906101000a90046001600160a01b03166001600160a01b031663f305d71988308f600080601260009054906101000a90046001600160a01b0316426040518863ffffffff1660e01b815260040180876001600160a01b03168152602001868152602001858152602001848152602001836001600160a01b0316815260200182815260200196505050505050506060604051808303818588803b158015611c8c57600080fd5b505af1158015611ca0573d6000803e3d6000fd5b50505050506040513d6060811015611cb757600080fd5b505060408051888152602081018e905281517f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506929181900390910190a15b5050601a805460ff60a01b191690555050505050505050505050565b601754151590565b43601755565b6000610b2583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e67565b60165460009081906001600160a01b03858116911614611d8357601054611d87565b6011545b90506000611d9a60646118b18685611e0e565b30600090815260076020526040902054909150611db7908261135b565b30600081815260076020908152604091829020939093558051848152905191926001600160a01b038a1692600080516020611eee8339815191529281900390910190a3611e04848261175f565b9695505050505050565b600082611e1d57506000610a58565b82820282848281611e2a57fe5b0414610b255760405162461bcd60e51b8152600401808060200182810382526021815260200180611ecd6021913960400191505060405180910390fd5b60008183611eb65760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156114095781810151838201526020016113f1565b506000838581611ec257fe5b049594505050505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212202d7aad114a6c9818c50e065cbbfc3152f8722a73cdf960f469951ce078614afe64736f6c63430007060033

Deployed Bytecode Sourcemap

4935:11651:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6555:54;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;7838:80;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8682:216;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8682:216:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;8100:88;;;;;;;;;;;;;:::i;6032:27::-;;;;;;;;;;;;;:::i;10918:372::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;10918:372:0;;;;;;;;;;;;;;;;;:::i;8280:142::-;;;;;;;;;;;;;:::i;5954:29::-;;;;;;;;;;;;;:::i;4016:103::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4016:103:0;-1:-1:-1;;;;;4016:103:0;;:::i;8014:80::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10146:311;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;10146:311:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;10465:275;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10465:275:0;;;;;;;;;;;;;;;;:::i;5714:44::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5714:44:0;-1:-1:-1;;;;;5714:44:0;;:::i;5820:49::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5820:49:0;-1:-1:-1;;;;;5820:49:0;;:::i;5557:33::-;;;;;;;;;;;;;:::i;6454:40::-;;;;;;;;;;;;;:::i;8906:116::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8906:116:0;-1:-1:-1;;;;;8906:116:0;;:::i;9708:430::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9708:430:0;;;;;;;;;;;;;;;;;:::i;5990:33::-;;;;;;;;;;;;;:::i;5916:31::-;;;;;;;;;;;;;:::i;14382:242::-;;;;;;;;;;;;;:::i;8430:105::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8430:105:0;-1:-1:-1;;;;;8430:105:0;;:::i;4478:139::-;;;;;;;;;;;;;:::i;6154:30::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;6154:30:0;;;;;;;;;;;;;;5492:52;;;;;;;;;;;;;:::i;8194:78::-;;;;;;;;;;;;;:::i;13516:447::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13516:447:0;-1:-1:-1;;;;;13516:447:0;;:::i;5765:48::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5765:48:0;-1:-1:-1;;;;;5765:48:0;;:::i;7924:84::-;;;;;;;;;;;;;:::i;5878:31::-;;;;;;;;;;;;;:::i;9440:122::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;9440:122:0;;;;;;;;;;:::i;13971:403::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;13971:403:0;;;;;;;;:::i;6269:19::-;;;;;;;;;;;;;:::i;10754:156::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;10754:156:0;;;;;;;;:::i;6297:25::-;;;;;;;;;;;;;:::i;6111:36::-;;;;;;;;;;;;;:::i;6066:::-;;;;;;;;;;;;;:::i;13326:182::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;13326:182:0;;;;;;;;:::i;9211:102::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9211:102:0;;:::i;6501:45::-;;;;;;;;;;;;;:::i;8541:133::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8541:133:0;;;;;;;;;;:::i;9321:107::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9321:107:0;;;;:::i;4736:142::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4736:142:0;-1:-1:-1;;;;;4736:142:0;;:::i;6238:24::-;;;;;;;;;;;;;:::i;9570:130::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;9570:130:0;;;;;;;;;;:::i;6555:54::-;;;;:::o;7838:80::-;7910:5;;;;;;;;;;;;-1:-1:-1;;;7910:5:0;;;;7838:80;:::o;8682:216::-;8786:10;8757:4;8774:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;8774:32:0;;;;;;;;;;;:41;;;8831:37;;;;;;;8757:4;;8774:32;;8786:10;;8831:37;;;;;;;;-1:-1:-1;8886:4:0;8682:216;;;;;:::o;8100:88::-;8173:12;;8100:88;:::o;6032:27::-;;;;:::o;10918:372::-;-1:-1:-1;;;;;11048:19:0;;11018:4;11048:19;;;:11;:19;;;;;;;;11068:10;11048:31;;;;;;;;-1:-1:-1;;11048:46:0;11045:180;;11144:69;;;;;;;;;;;-1:-1:-1;;;11144:69:0;;;;;;;;-1:-1:-1;;;;;11144:19:0;;-1:-1:-1;11144:19:0;;;:11;:19;;;;;11164:10;11144:31;;;;;;;;;;:69;;11180:6;;11144:35;:69::i;:::-;-1:-1:-1;;;;;11110:19:0;;;;;;:11;:19;;;;;;;;11130:10;11110:31;;;;;;;:103;11045:180;11242:40;11256:6;11264:9;11275:6;11242:13;:40::i;:::-;11235:47;;10918:372;;;;;;:::o;8280:142::-;8408:4;;8333:7;;8360:54;;8398:15;;-1:-1:-1;;;;;8408:4:0;8398:9;:15::i;:::-;8387:4;;8360:33;;8377:15;;-1:-1:-1;;;;;8387:4:0;8377:9;:15::i;:::-;8360:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;8353:61;;8280:142;:::o;5954:29::-;;;;:::o;4016:103::-;4071:4;4106:5;-1:-1:-1;;;;;4106:5:0;;;4095:16;;;;4016:103::o;8014:80::-;5138:2;8014:80;:::o;10146:311::-;3915:19;3923:10;3915:7;:19::i;:::-;3907:38;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;;;;10297:21:::1;:44:::0;;-1:-1:-1;;;;;10297:44:0;;::::1;-1:-1:-1::0;;;;;;10297:44:0;;::::1;;::::0;;;10352:15:::1;:36:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;10399:22:::1;:50:::0;;;;;::::1;::::0;::::1;;::::0;;10146:311::o;10465:275::-;3915:19;3923:10;3915:7;:19::i;:::-;3907:38;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;;;;10596:21:::1;:39:::0;;10646:13:::1;:32:::0;;;;10689:43;::::1;;-1:-1:-1::0;;;10689:43:0::1;-1:-1:-1::0;;;;10596:39:0;::::1;;-1:-1:-1::0;;;10596:39:0::1;-1:-1:-1::0;;;;10596:39:0;;::::1;::::0;;;::::1;10689:43:::0;;;::::1;;::::0;;10465:275::o;5714:44::-;;;;;;;;;;;;;;;:::o;5820:49::-;;;;;;;;;;;;;;;:::o;5557:33::-;;;;;;:::o;6454:40::-;;;-1:-1:-1;;;6454:40:0;;;;;:::o;8906:116::-;8961:4;8985:29;8993:7;-1:-1:-1;;8985:7:0;:29::i;9708:430::-;3915:19;3923:10;3915:7;:19::i;:::-;3907:38;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;;;;9849:12:::1;:24:::0;;;9884:10:::1;:25:::0;;;9920:12:::1;:30:::0;;;9961:14:::1;:32:::0;;;10025:46:::1;9897:12:::0;10025:30:::1;9864:9:::0;9935:15;10025:16:::1;:30::i;:::-;:34:::0;::::1;:46::i;:::-;10014:8;:57:::0;;;10115:14:::1;::::0;10102:28:::1;::::0;10014:57;10102:12:::1;:28::i;:::-;10082:17;:48:::0;-1:-1:-1;;;;9708:430:0:o;5990:33::-;;;;:::o;5916:31::-;;;;:::o;14382:242::-;14490:5;;14440:21;;-1:-1:-1;;;;;14490:5:0;14476:10;:19;;:41;;-1:-1:-1;14513:4:0;;-1:-1:-1;;;;;14513:4:0;14499:10;:18;14476:41;14468:50;;;;;;14576:30;;14558:10;;;;14576:30;;;;;14594:11;;14525:22;14576:30;14525:22;14576:30;14594:11;14558:10;14576:30;;;;;;;;;;;;;;;;;;;;;14382:242;;:::o;8430:105::-;-1:-1:-1;;;;;8514:18:0;8496:7;8514:18;;;:9;:18;;;;;;;8430:105::o;4478:139::-;3915:19;3923:10;3915:7;:19::i;:::-;3907:38;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;;;;4548:32:::1;::::0;;4577:1:::1;4548:32:::0;;;;::::1;::::0;;;;::::1;::::0;;::::1;4607:1;4591:18:::0;;-1:-1:-1;;;;;;4591:18:0::1;::::0;;4478:139::o;6154:30::-;;;-1:-1:-1;;;;;6154:30:0;;:::o;5492:52::-;;;;:::o;8194:78::-;8246:7;8264:5;-1:-1:-1;;;;;8264:5:0;8194:78;:::o;13516:447::-;13603:5;;-1:-1:-1;;;;;13603:5:0;13589:10;:19;;:41;;-1:-1:-1;13626:4:0;;-1:-1:-1;;;;;13626:4:0;13612:10;:18;13589:41;13581:50;;;;;;13716:38;;;-1:-1:-1;;;13716:38:0;;13748:4;13716:38;;;;;;13672:14;;13642:20;;-1:-1:-1;;;;;13716:23:0;;;;;:38;;;;;;;;;;;;;;:23;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13716:38:0;13912:43;;;-1:-1:-1;;;13912:43:0;;13935:10;13912:43;;;;;;;;;;;;13716:38;;-1:-1:-1;;;;;;13912:22:0;;;;;:43;;;;;13716:38;;13912:43;;;;;;;;-1:-1:-1;13912:22:0;:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13516:447:0:o;5765:48::-;;;;;;;;;;;;;;;:::o;7924:84::-;7998:7;;;;;;;;;;;;-1:-1:-1;;;7998:7:0;;;;7924:84;:::o;5878:31::-;;;;:::o;9440:122::-;3915:19;3923:10;3915:7;:19::i;:::-;3907:38;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;9526:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;9526:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9440:122::o;13971:403::-;14081:5;;-1:-1:-1;;;;;14081:5:0;14067:10;:19;;:41;;-1:-1:-1;14104:4:0;;-1:-1:-1;;;;;14104:4:0;14090:10;:18;14067:41;14059:50;;;;;;14323:43;;;-1:-1:-1;;;14323:43:0;;14346:10;14323:43;;;;;;;;;;;;14150:14;;-1:-1:-1;;;;;14323:22:0;;;;;:43;;;;;;;;;;;;;;;14120:20;14323:22;:43;;;;;;;;;;6269:19;;;-1:-1:-1;;;;;6269:19:0;;:::o;10754:156::-;10834:4;10858:44;10872:10;10884:9;10895:6;10858:13;:44::i;6297:25::-;;;;:::o;6111:36::-;;;-1:-1:-1;;;;;6111:36:0;;:::o;6066:::-;;;;:::o;13326:182::-;13407:5;;-1:-1:-1;;;;;13407:5:0;13393:10;:19;;:41;;-1:-1:-1;13430:4:0;;-1:-1:-1;;;;;13430:4:0;13416:10;:18;13393:41;13385:50;;;;;;-1:-1:-1;;;;;13446:13:0;;;;;;;:9;:13;;;;;:22;13326:182::o;9211:102::-;3915:19;3923:10;3915:7;:19::i;:::-;3907:38;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;;;;9282:12:::1;:23:::0;9211:102::o;6501:45::-;;;-1:-1:-1;;;6501:45:0;;;;;:::o;8541:133::-;-1:-1:-1;;;;;8643:19:0;;;8625:7;8643:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;8541:133::o;9321:107::-;3915:19;3923:10;3915:7;:19::i;:::-;3907:38;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;;;;9395:14:::1;:25:::0;;-1:-1:-1;;9395:25:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9321:107::o;4736:142::-;3915:19;3923:10;3915:7;:19::i;:::-;3907:38;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;;;;4812:5:::1;:11:::0;;-1:-1:-1;;;;;4812:11:0;::::1;-1:-1:-1::0;;;;;;4812:11:0;;::::1;::::0;::::1;::::0;;;4845:25:::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;::::1;4736:142:::0;:::o;6238:24::-;;;-1:-1:-1;;;;;6238:24:0;;:::o;9570:130::-;3915:19;3923:10;3915:7;:19::i;:::-;3907:38;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;-1:-1:-1;;;3907:38:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;9660:23:0;;;::::1;;::::0;;;:15:::1;:23;::::0;;;;:32;;-1:-1:-1;;9660:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9570:130::o;174:179::-;232:7;264:5;;;288:6;;;;280:46;;;;;-1:-1:-1;;;280:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;505:190;591:7;627:12;619:6;;;;611:29;;;;-1:-1:-1;;;611:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;663:5:0;;;505:190::o;11298:1231::-;11420:16;;11390:4;;-1:-1:-1;;;11420:16:0;;;;11417:73;;;11446:41;11461:6;11469:9;11480:6;11446:14;:41::i;:::-;11439:48;;;;11417:73;11520:12;;11510:6;:22;;:49;;;-1:-1:-1;;;;;;11536:23:0;;;;;;:15;:23;;;;;;;;11510:49;11502:79;;;;;-1:-1:-1;;;11502:79:0;;;;;;;;;;;;-1:-1:-1;;;11502:79:0;;;;;;;;;;;;;;;11611:4;;-1:-1:-1;;;;;11611:4:0;11597:10;:18;;;;:39;;-1:-1:-1;11620:16:0;;-1:-1:-1;;;11620:16:0;;;;11619:17;11597:39;:64;;;;-1:-1:-1;11640:21:0;;-1:-1:-1;;;11640:21:0;;;;11597:64;:109;;;;-1:-1:-1;11693:13:0;;11683:4;11665:24;;;;:9;:24;;;;;;:41;;11597:109;11594:128;;;11709:10;:8;:10::i;:::-;11738;:8;:10::i;:::-;11737:11;:32;;;;-1:-1:-1;11765:4:0;;-1:-1:-1;;;;;11752:17:0;;;11765:4;;11752:17;11737:32;11734:117;;;-1:-1:-1;;;;;11794:17:0;;11814:1;11794:17;;;:9;:17;;;;;;11786:30;;;;;;11831:8;:6;:8::i;:::-;11910:53;;;;;;;;;;;-1:-1:-1;;;11910:53:0;;;;;;;;-1:-1:-1;;;;;11910:17:0;;-1:-1:-1;11910:17:0;;;:9;:17;;;;;;;;:53;;11932:6;;11910:21;:53::i;:::-;-1:-1:-1;;;;;11890:17:0;;;;;;:9;:17;;;;;:73;;;;11994:14;:6;12005:2;11994:10;:14::i;:::-;12065:22;;-1:-1:-1;;;;;12065:22:0;12055:33;;;;:9;:33;;;;;;11974:34;;-1:-1:-1;12055:48:0;;11974:34;12055:37;:48::i;:::-;12029:22;;-1:-1:-1;;;;;12029:22:0;;;12019:33;;;;:9;:33;;;;;;;;:84;;;;12149:19;;;;;:11;:19;;;;;;;;;12148:20;:47;;;;-1:-1:-1;;;;;;12173:22:0;;;;;;:11;:22;;;;;;;;12172:23;12148:47;:93;;12235:6;12148:93;;;12198:34;12206:6;12214:9;12225:6;12198:7;:34::i;:::-;-1:-1:-1;;;;;12333:20:0;;12252:21;12333:20;;;:9;:20;;;;;;12126:115;;-1:-1:-1;12276:23:0;;;;12333:39;;12276:23;12333:24;:39::i;:::-;-1:-1:-1;;;;;12310:20:0;;;;;;;:9;:20;;;;;;;;;:62;;;;12407:22;;12390:51;;;;;;;12407:22;;;;12390:51;;;;-1:-1:-1;;;;;;;;;;;12390:51:0;;;;;;;12474:9;-1:-1:-1;;;;;12457:42:0;12466:6;-1:-1:-1;;;;;12457:42:0;-1:-1:-1;;;;;;;;;;;12485:13:0;12457:42;;;;;;;;;;;;;;;;;;-1:-1:-1;12517:4:0;;11298:1231;-1:-1:-1;;;;;;11298:1231:0:o;361:136::-;419:7;446:43;450:1;453;446:43;;;;;;;;;;;;;;;;;:3;:43::i;12541:330::-;12671:53;;;;;;;;;;;-1:-1:-1;;;12671:53:0;;;;;;;;-1:-1:-1;;;;;12671:17:0;;12634:4;12671:17;;;:9;:17;;;;;;;:53;;12693:6;;12671:21;:53::i;:::-;-1:-1:-1;;;;;12651:17:0;;;;;;;:9;:17;;;;;;:73;;;;12758:20;;;;;;;:32;;12783:6;12758:24;:32::i;:::-;-1:-1:-1;;;;;12735:20:0;;;;;;;:9;:20;;;;;;;;;:55;;;;12806:35;;;;;;;12735:20;;12806:35;;;;-1:-1:-1;;;;;;;;;;;12806:35:0;;;;;;;;-1:-1:-1;12859:4:0;12541:330;;;;;:::o;14632:1885::-;6654:16;:23;;-1:-1:-1;;;;6654:23:0;-1:-1:-1;;;6654:23:0;;;14738:4:::1;6654:23:::0;14720:24;;;:9:::1;:24;::::0;;;;;14819:8:::1;::::0;14801:12:::1;::::0;14720:24;;6654:23;14781:54:::1;::::0;14833:1:::1;::::0;14781:47:::1;::::0;14819:8;14781:47;;14720:24;;14781:19:::1;:33::i;:::-;:37:::0;::::1;:47::i;:54::-;14755:80:::0;-1:-1:-1;14846:20:0::1;14869:36;:15:::0;14755:80;14869:19:::1;:36::i;:::-;14942:16;::::0;;14956:1:::1;14942:16:::0;;;;;::::1;::::0;;14846:59;;-1:-1:-1;14918:21:0::1;::::0;14942:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;14942:16:0::1;14918:40;;14987:4;14969;14974:1;14969:7;;;;;;;;-1:-1:-1::0;;;;;14969:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;15013:6:::1;::::0;:13:::1;::::0;;-1:-1:-1;;;15013:13:0;;;;:6;;;::::1;::::0;:11:::1;::::0;:13:::1;::::0;;::::1;::::0;14969:7;;15013:13;;;;;:6;:13;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;15013:13:0;15003:7;;:4;;15008:1:::1;::::0;15003:7;::::1;;;;;;;;;;:23;-1:-1:-1::0;;;;;15003:23:0::1;;;-1:-1:-1::0;;;;;15003:23:0::1;;;::::0;::::1;15039:6;;;;;;;;;-1:-1:-1::0;;;;;15039:6:0::1;-1:-1:-1::0;;;;;15039:57:0::1;;15111:12;15138:1;15154:4;15181;15201:15;15039:188;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;15039:188:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;15329:12:0::1;::::0;15260:21:::1;::::0;-1:-1:-1;15240:17:0::1;::::0;-1:-1:-1;15316:33:0::1;::::0;15329:19:::1;::::0;15346:1:::1;15329:16;:19::i;:::-;15316:8;::::0;;:12:::1;:33::i;:::-;15294:55;;15370:26;15399:51;15448:1;15399:44;15431:11;15399:27;15413:12;;15399:9;:13;;:27;;;;:::i;:51::-;15370:80;;15461:27;15491:42;15521:11;15491:25;15505:10;;15491:9;:13;;:25;;;;:::i;:42::-;15461:72:::0;-1:-1:-1;15544:26:0::1;15573:58;15461:72:::0;15573:33:::1;:9:::0;15587:18;15573:13:::1;:33::i;:58::-;15544:87:::0;-1:-1:-1;15662:22:0::1;15687:33;15717:2;15687:25;15544:87:::0;15710:1:::1;15687:22;:25::i;:33::-;15662:58:::0;-1:-1:-1;15731:29:0::1;15763:38;:18:::0;15662:58;15763:22:::1;:38::i;:::-;15851:15;::::0;15843:68:::1;::::0;15731:70;;-1:-1:-1;15823:15:0::1;::::0;-1:-1:-1;;;;;15851:15:0;;::::1;::::0;15901:5:::1;::::0;15880:14;;15823:15;15843:68;15823:15;15843:68;15880:14;15851:15;15901:5;15843:68:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;15952:22:0::1;::::0;15944:82:::1;::::0;15822:89;;-1:-1:-1;15923:16:0::1;::::0;-1:-1:-1;;;;;15952:22:0;;::::1;::::0;16016:5:::1;::::0;15988:21;;15923:16;15944:82;15923:16;15944:82;15988:21;15952:22;16016:5;15944:82:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;16100:5:0::1;::::0;-1:-1:-1;16100:5:0;;-1:-1:-1;;16151:19:0;;;-1:-1:-1;16148:362:0::1;;16186:6;;;;;;;;;-1:-1:-1::0;;;;;16186:6:0::1;-1:-1:-1::0;;;;;16186:22:0::1;;16216:18;16262:4;16286:15;16320:1;16340::::0;16360:21:::1;;;;;;;;;-1:-1:-1::0;;;;;16360:21:0::1;16400:15;16186:244;;;;;;;;;;;;;-1:-1:-1::0;;;;;16186:244:0::1;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;16186:244:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;;16186:244:0;16450:48;;;;;16186:244:::1;16450:48:::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;16148:362;-1:-1:-1::0;;6700:16:0;:24;;-1:-1:-1;;;;6700:24:0;;;-1:-1:-1;;;;;;;;;;;14632:1885:0:o;9030:90::-;9097:10;;:15;;9030:90;:::o;9128:71::-;9179:12;9166:10;:25;9128:71::o;935:132::-;993:7;1020:39;1024:1;1027;1020:39;;;;;;;;;;;;;;;;;:3;:39::i;12879:439::-;13019:4;;12965:7;;;;-1:-1:-1;;;;;13019:17:0;;;:4;;:17;:48;;13059:8;;13019:48;;;13039:17;;13019:48;12995:72;-1:-1:-1;13078:17:0;13098:34;13128:3;13098:25;:6;12995:72;13098:10;:25::i;:34::-;13190:4;13172:24;;;;:9;:24;;;;;;13078:54;;-1:-1:-1;13172:39:0;;13078:54;13172:28;:39::i;:::-;13163:4;13145:24;;;;:9;:24;;;;;;;;;:66;;;;13227:42;;;;;;;13163:4;;-1:-1:-1;;;;;13227:42:0;;;-1:-1:-1;;;;;;;;;;;13227:42:0;;;;;;;;;13289:21;:6;13300:9;13289:10;:21::i;:::-;13282:28;12879:439;-1:-1:-1;;;;;;12879:439:0:o;703:224::-;761:7;785:6;781:25;;-1:-1:-1;802:1:0;795:8;;781:25;828:5;;;832:1;828;:5;:1;852:5;;;;;:10;844:56;;;;-1:-1:-1;;;844:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1075:189;1161:7;1196:12;1189:5;1181:28;;;;-1:-1:-1;;;1181:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1220:9;1236:1;1232;:5;;;;;;;1075:189;-1:-1:-1;;;;;1075:189:0:o

Swarm Source

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