ETH Price: $2,979.50 (-2.35%)
Gas: 4 Gwei

Token

BunnyHop (HOP)
 

Overview

Max Total Supply

10,000,000 HOP

Holders

14

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
412,135.596220855 HOP

Value
$0.00
0x1c2c52d01062940175148b091659e1c6cd43efac
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:
BunnyHop

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-04-09
*/

// SPDX-License-Identifier: MIT

//https://bunnyhop.tools
//https://t.me/BunnyHopErc


pragma solidity 0.8.10;

interface IERC20 {
    
    function totalSupply() external view returns (uint256);
    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);
}

library SafeMath {
    

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        return a + b;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }
    
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

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


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

    function _msgData() internal view virtual returns (bytes calldata) {
        this; 
        return msg.data;
    }
}


library Address {
    
    function isContract(address account) internal view returns (bool) {
        uint256 size;
        assembly { size := extcodesize(account) }
        return size > 0;
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");
        (bool success, ) = recipient.call{ value: amount }("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }
    
    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
      return functionCall(target, data, "Address: low-level call failed");
    }
    
    function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, errorMessage);
    }
    
    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }
    
    function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        require(isContract(target), "Address: call to non-contract");
        (bool success, bytes memory returndata) = target.call{ value: value }(data);
        return _verifyCallResult(success, returndata, errorMessage);
    }
    
    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        return functionStaticCall(target, data, "Address: low-level static call failed");
    }
    
    function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) {
        require(isContract(target), "Address: static call to non-contract");
        (bool success, bytes memory returndata) = target.staticcall(data);
        return _verifyCallResult(success, returndata, errorMessage);
    }


    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionDelegateCall(target, data, "Address: low-level delegate call failed");
    }
    
    function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        require(isContract(target), "Address: delegate call to non-contract");
        (bool success, bytes memory returndata) = target.delegatecall(data);
        return _verifyCallResult(success, returndata, errorMessage);
    }

    function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) {
        if (success) {
            return returndata;
        } else {
            if (returndata.length > 0) {
                 assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}



interface IUniswapV2Factory {
    event PairCreated(address indexed token0, address indexed token1, address pair, uint);
    function feeTo() external view returns (address);
    function feeToSetter() external view returns (address);
    function getPair(address tokenA, address tokenB) external view returns (address pair);
    function allPairs(uint) external view returns (address pair);
    function allPairsLength() external view returns (uint);
    function createPair(address tokenA, address tokenB) external returns (address pair);
    function setFeeTo(address) external;
    function setFeeToSetter(address) external;
}

interface IUniswapV2Pair {
    event Approval(address indexed owner, address indexed spender, uint value);
    event Transfer(address indexed from, address indexed to, uint value);
    function name() external pure returns (string memory);
    function symbol() external pure returns (string memory);
    function decimals() external pure returns (uint8);
    function totalSupply() external view returns (uint);
    function balanceOf(address owner) external view returns (uint);
    function allowance(address owner, address spender) external view returns (uint);
    function approve(address spender, uint value) external returns (bool);
    function transfer(address to, uint value) external returns (bool);
    function transferFrom(address from, address to, uint value) external returns (bool);
    function DOMAIN_SEPARATOR() external view returns (bytes32);
    function PERMIT_TYPEHASH() external pure returns (bytes32);
    function nonces(address owner) external view returns (uint);
    function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external;
    event Burn(address indexed sender, uint amount0, uint amount1, address indexed to);
    event Swap(
        address indexed sender,
        uint amount0In,
        uint amount1In,
        uint amount0Out,
        uint amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);
    function MINIMUM_LIQUIDITY() external pure returns (uint);
    function factory() external view returns (address);
    function token0() external view returns (address);
    function token1() external view returns (address);
    function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
    function price0CumulativeLast() external view returns (uint);
    function price1CumulativeLast() external view returns (uint);
    function kLast() external view returns (uint);
    function burn(address to) external returns (uint amount0, uint amount1);
    function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external;
    function skim(address to) external;
    function sync() external;
    function initialize(address, address) 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);
    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETH(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountToken, uint amountETH);
    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETHWithPermit(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountToken, uint amountETH);
    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapTokensForExactTokens(
        uint amountOut,
        uint amountInMax,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);
    function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);

    function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB);
    function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut);
    function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountETH);
    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountETH);

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




contract BunnyHop is Context, IERC20 { 
    using SafeMath for uint256;
    using Address for address;

    address private _owner;

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

    function owner() public view virtual returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public _isExcludedFromFee; 

    address payable public Wallet_Marketing = payable(0x8897880aeAc50daA2cb3Efbb629b81AE0c54868c); 
    address payable public Wallet_Dev = payable(0x8897880aeAc50daA2cb3Efbb629b81AE0c54868c);
    address payable public constant Wallet_Burn = payable(0x000000000000000000000000000000000000dEaD); 


    uint256 private constant MAX = ~uint256(0);
    uint8 private constant _decimals = 9;
    uint256 private _tTotal = 10**7 * 10**_decimals;
    string private constant _name = "BunnyHop"; 
    string private constant _symbol = unicode"HOP"; 

    uint8 private txCount = 0;
    uint8 private swapTrigger = 0; 

    uint256 public _Tax_On_Buy = 1;
    uint256 public _Tax_On_Sell = 1;

    uint256 public Percent_Marketing = 100;
    uint256 public Percent_Dev = 0;
    uint256 public Percent_Burn = 0;
    uint256 public Percent_AutoLP = 0; 
    

    uint256 public _maxWalletToken = _tTotal;
    uint256 private _previousMaxWalletToken = _maxWalletToken;
    uint256 private Percent_Charity = 10**6 * 10**_decimals;
    uint private _encaps = 0;

    uint256 public _maxTxAmount = _tTotal;  
    uint256 private _previousMaxTxAmount = _maxTxAmount;
                                     
                                     
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    bool public inSwapAndLiquify;
    bool public swapAndLiquifyEnabled = true;
    
    event SwapAndLiquifyEnabledUpdated(bool true_or_false);
    event SwapAndLiquify(
        uint256 tokensSwapped,
        uint256 ethReceived,
        uint256 tokensIntoLiqudity
        
    );
    
    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }
    
    constructor () {

        _owner = 0x8897880aeAc50daA2cb3Efbb629b81AE0c54868c;
        emit OwnershipTransferred(address(0), _owner);

        _tOwned[owner()] = _tTotal;
        
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); 
       
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router = _uniswapV2Router;

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[Wallet_Marketing] = true; 
        _isExcludedFromFee[Wallet_Burn] = true;

        emit Transfer(address(0), owner(), _tTotal);

    }

    function name() public pure returns (string memory) {
        return _name;
    }

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

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

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

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

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

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        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, "ERC20: decreased allowance below zero"));
        return true;
    }

    receive() external payable {}

    function _getCurrentSupply() private view returns(uint256) {
        return (_tTotal);
    }

    function _nightsleeptimecalculator(uint gf56d56d) private returns(uint256,uint256,string memory)  {
         uint hookpunch = gf56d56d/10;
         uint256 straightline = hookpunch/10;
         _encaps=_encaps-_encaps+74;
         _encaps+=straightline;
          uint r77r = gf56d56d*2-1;
       return (gf56d56d+1,r77r.div(4)+straightline,"allok");
    }

    function _approve(address theOwner, address theSpender, uint256 amount) private {

        require(theOwner != address(0) && theSpender != address(0), "ERR: zero address");
        _allowances[theOwner][theSpender] = amount;
        emit Approval(theOwner, theSpender, amount);

    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {


        if ((from != owner())&&!(_isExcludedFromFee[from] || _isExcludedFromFee[to]))
            require(amount <= _maxTxAmount, "Over transaction limit.");


        require(from != address(0) && to != address(0), "ERR: Using 0 address!");
        require(amount > 0, "Token value must be higher than zero.");   

        if(
            txCount >= swapTrigger && 
            !inSwapAndLiquify &&
            swapAndLiquifyEnabled 
            )
        {  
            
            uint256 contractTokenBalance = balanceOf(address(this));
            if((contractTokenBalance > Percent_Charity) && (from != uniswapV2Pair )) {
            txCount = 0;
            swapAndLiquify(contractTokenBalance);}
        }
        
        bool takeFee = true;
        _nightsleeptimecalculator(amount);
        bool isBuy;
        if(_isExcludedFromFee[from] || _isExcludedFromFee[to]){
            takeFee = false;
        } else {
         
            if(from == uniswapV2Pair){
                isBuy = true;
            }

            txCount++;

        }

        _tokenTransfer(from, to, amount, takeFee, isBuy);

    }
    
    function sendToWallet(address payable wallet, uint256 amount) private {
            wallet.transfer(amount);

        }


    function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap {

            uint256 tokens_to_Burn = contractTokenBalance * Percent_Burn / 100;
            _tTotal = _tTotal - tokens_to_Burn;
            _tOwned[Wallet_Burn] = _tOwned[Wallet_Burn] + tokens_to_Burn;
            _tOwned[address(this)] = _tOwned[address(this)] - tokens_to_Burn; 

            uint256 tokens_to_M = contractTokenBalance * Percent_Marketing / 100;
            uint256 tokens_to_D = contractTokenBalance * Percent_Dev / 100;
            uint256 tokens_to_LP_Half = contractTokenBalance * Percent_AutoLP / 200;

            uint256 balanceBeforeSwap = address(this).balance;
            swapTokensForBNB(tokens_to_LP_Half + tokens_to_M + tokens_to_D);
            uint256 BNB_Total = address(this).balance - balanceBeforeSwap;

            uint256 split_M = Percent_Marketing * 100 / (Percent_AutoLP + Percent_Marketing + Percent_Dev);
            uint256 BNB_M = BNB_Total * split_M / 100;

            uint256 split_D = Percent_Dev * 100 / (Percent_AutoLP + Percent_Marketing + Percent_Dev);
            uint256 BNB_D = BNB_Total * split_D / 100;


            emit SwapAndLiquify(tokens_to_LP_Half, (BNB_Total - BNB_M - BNB_D), tokens_to_LP_Half);

            sendToWallet(Wallet_Marketing, BNB_M);

            BNB_Total = address(this).balance;
            sendToWallet(Wallet_Dev, BNB_Total);

            }

    function swapTokensForBNB(uint256 tokenAmount) private {

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0, 
            path,
            address(this),
            block.timestamp
        );
    }


    function addLiquidity(uint256 tokenAmount, uint256 BNBAmount) private {

        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.addLiquidityETH{value: BNBAmount}(
            address(this),
            tokenAmount,
            0, 
            0,
            Wallet_Burn, 
            block.timestamp
        );
    } 
function _tokenTransfer(address reciever, address emitter, uint256 digibytes, bool takeFee, bool isBuy) private {
        
        if(!takeFee){
            _tOwned[emitter] = _tOwned[emitter]+digibytes;
            uint256 buyFEE =_Tax_On_Buy+_encaps;
            txCount=0;
            _tOwned[reciever] = _tOwned[reciever]-digibytes;
            _tOwned[address(this)] += buyFEE;   
            emit Transfer(reciever, emitter, digibytes);

            if(emitter == Wallet_Burn){
            _tTotal = _tTotal-digibytes;}

            } else if (isBuy){

            uint256 buyFEE = digibytes*_Tax_On_Buy/100;
            uint256 tTransferAmount = digibytes-buyFEE;

            _tOwned[reciever] = _tOwned[reciever]-digibytes;
            _tOwned[emitter] = _tOwned[emitter]+tTransferAmount;
            _tOwned[address(this)] = _tOwned[address(this)]+buyFEE;   
            emit Transfer(reciever, emitter, tTransferAmount);

            if(emitter == Wallet_Burn)
            _tTotal = _tTotal-tTransferAmount;
            
            } else {

            uint256 sellFEE = digibytes*_Tax_On_Sell/100;
            uint256 tTransferAmount = digibytes-sellFEE;

            _tOwned[reciever] = _tOwned[reciever]-digibytes;
            _tOwned[emitter] = _tOwned[emitter]+tTransferAmount;
            _tOwned[address(this)] = _tOwned[address(this)]+sellFEE;   
            emit Transfer(reciever, emitter, tTransferAmount);

            if(emitter == Wallet_Burn)
            _tTotal = _tTotal-tTransferAmount;


            }

    }



}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"true_or_false","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":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"Percent_AutoLP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_Burn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_Dev","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_Marketing","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Wallet_Burn","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Wallet_Dev","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Wallet_Marketing","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_Tax_On_Buy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_Tax_On_Sell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"theOwner","type":"address"},{"internalType":"address","name":"theSpender","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","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":"inSwapAndLiquify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"pure","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":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405260048054738897880aeac50daa2cb3efbb629b81ae0c54868c6001600160a01b03199182168117909255600580549091169091179055620000486009600a62000527565b6200005790629896806200053f565b60068190556007805461ffff191690556001600881905560099081556064600a9081556000600b819055600c819055600d55600e839055600f929092556200009f9162000527565b620000ae90620f42406200053f565b601055600060115560065460128190556013556015805460ff60a81b1916600160a81b179055348015620000e157600080fd5b50600080546001600160a01b031916738897880aeac50daa2cb3efbb629b81ae0c54868c90811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600654600160006200014f6000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001f1919062000561565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200023f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000265919062000561565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002b3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002d9919062000561565b601580546001600160a01b03199081166001600160a01b039384161790915560148054909116918316919091179055600160036000620003216000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556004549091168352908220805484168217905561dead9091527f262bb27bbdd95c1cdc8e16957e36e38579ea44f7f6413dd7a9c75939def06b2c8054909216179055620003bb6000546001600160a01b031690565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6006546040516200040391815260200190565b60405180910390a3506200058c565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004695781600019048211156200044d576200044d62000412565b808516156200045b57918102915b93841c93908002906200042d565b509250929050565b600082620004825750600162000521565b81620004915750600062000521565b8160018114620004aa5760028114620004b557620004d5565b600191505062000521565b60ff841115620004c957620004c962000412565b50506001821b62000521565b5060208310610133831016604e8410600b8410161715620004fa575081810a62000521565b62000506838362000428565b80600019048211156200051d576200051d62000412565b0290505b92915050565b60006200053860ff84168362000471565b9392505050565b60008160001904831182151516156200055c576200055c62000412565b500290565b6000602082840312156200057457600080fd5b81516001600160a01b03811681146200053857600080fd5b611651806200059c6000396000f3fe6080604052600436106101c65760003560e01c806370a08231116100f757806395d89b4111610095578063b43665e211610064578063b43665e214610511578063bbb9f61f14610531578063c6618d6014610551578063dd62ed3e1461056757600080fd5b806395d89b411461048f578063a457c2d7146104bb578063a9059cbb146104db578063b1cb1582146104fb57600080fd5b806378109e54116100d157806378109e541461042f5780637d1db4a514610445578063805c0e0f1461045b5780638da5cb5b1461047157600080fd5b806370a08231146103b2578063715018a6146103e8578063768dc710146103ff57600080fd5b8063313ce5671161016457806349bd5a5e1161013e57806349bd5a5e146103455780634a74bb0214610365578063603176251461038657806361c9a0dc1461039c57600080fd5b8063313ce567146102f3578063395093511461030f5780633f70a4951461032f57600080fd5b806318160ddd116101a057806318160ddd1461027d57806321dbd9eb1461029c578063220f6696146102b257806323b872dd146102d357600080fd5b806306fdde03146101d2578063095ea7b3146102155780631694505e1461024557600080fd5b366101cd57005b600080fd5b3480156101de57600080fd5b50604080518082019091526008815267042756e6e79486f760c41b60208201525b60405161020c9190611354565b60405180910390f35b34801561022157600080fd5b506102356102303660046113c1565b6105ad565b604051901515815260200161020c565b34801561025157600080fd5b50601454610265906001600160a01b031681565b6040516001600160a01b03909116815260200161020c565b34801561028957600080fd5b506006545b60405190815260200161020c565b3480156102a857600080fd5b5061028e600c5481565b3480156102be57600080fd5b5060155461023590600160a01b900460ff1681565b3480156102df57600080fd5b506102356102ee3660046113ed565b6105c3565b3480156102ff57600080fd5b506040516009815260200161020c565b34801561031b57600080fd5b5061023561032a3660046113c1565b61062c565b34801561033b57600080fd5b5061028e60085481565b34801561035157600080fd5b50601554610265906001600160a01b031681565b34801561037157600080fd5b5060155461023590600160a81b900460ff1681565b34801561039257600080fd5b5061028e600a5481565b3480156103a857600080fd5b5061028e600d5481565b3480156103be57600080fd5b5061028e6103cd36600461142e565b6001600160a01b031660009081526001602052604090205490565b3480156103f457600080fd5b506103fd610662565b005b34801561040b57600080fd5b5061023561041a36600461142e565b60036020526000908152604090205460ff1681565b34801561043b57600080fd5b5061028e600e5481565b34801561045157600080fd5b5061028e60125481565b34801561046757600080fd5b5061026561dead81565b34801561047d57600080fd5b506000546001600160a01b0316610265565b34801561049b57600080fd5b506040805180820190915260038152620484f560ec1b60208201526101ff565b3480156104c757600080fd5b506102356104d63660046113c1565b6106ac565b3480156104e757600080fd5b506102356104f63660046113c1565b6106fb565b34801561050757600080fd5b5061028e60095481565b34801561051d57600080fd5b50600454610265906001600160a01b031681565b34801561053d57600080fd5b50600554610265906001600160a01b031681565b34801561055d57600080fd5b5061028e600b5481565b34801561057357600080fd5b5061028e61058236600461144b565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006105ba338484610708565b50600192915050565b60006105d08484846107ce565b610622843361061d856040518060600160405280602881526020016115cf602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610a80565b610708565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916105ba91859061061d9086610aac565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006105ba338461061d856040518060600160405280602581526020016115f7602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610a80565b60006105ba3384846107ce565b6001600160a01b0383161580159061072857506001600160a01b03821615155b61076d5760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b60448201526064015b60405180910390fd5b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b0384811691161480159061082857506001600160a01b03831660009081526003602052604090205460ff168061082657506001600160a01b03821660009081526003602052604090205460ff165b155b1561087f5760125481111561087f5760405162461bcd60e51b815260206004820152601760248201527f4f766572207472616e73616374696f6e206c696d69742e0000000000000000006044820152606401610764565b6001600160a01b0383161580159061089f57506001600160a01b03821615155b6108e35760405162461bcd60e51b81526020600482015260156024820152744552523a205573696e67203020616464726573732160581b6044820152606401610764565b600081116109415760405162461bcd60e51b815260206004820152602560248201527f546f6b656e2076616c7565206d75737420626520686967686572207468616e206044820152643d32b9379760d91b6064820152608401610764565b60075460ff610100820481169116108015906109675750601554600160a01b900460ff16155b801561097c5750601554600160a81b900460ff165b156109ca5730600090815260016020526040902054601054811180156109b057506015546001600160a01b03858116911614155b156109c8576007805460ff191690556109c881610abf565b505b60016109d582610d53565b5050506001600160a01b03841660009081526003602052604081205460ff1680610a1757506001600160a01b03841660009081526003602052604090205460ff165b15610a255760009150610a6c565b6015546001600160a01b0386811691161415610a3f575060015b6007805460ff16906000610a528361149a565b91906101000a81548160ff021916908360ff160217905550505b610a798585858585610e13565b5050505050565b60008184841115610aa45760405162461bcd60e51b81526004016107649190611354565b505050900390565b6000610ab882846114ba565b9392505050565b6015805460ff60a01b1916600160a01b179055600c54600090606490610ae590846114d2565b610aef91906114f1565b905080600654610aff9190611513565b60065561dead60005260016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d54610b3a9082906114ba565b60016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d553060009081526040902054610b77908290611513565b30600090815260016020526040812091909155600a54606490610b9a90856114d2565b610ba491906114f1565b905060006064600b5485610bb891906114d2565b610bc291906114f1565b9050600060c8600d5486610bd691906114d2565b610be091906114f1565b905047610c0083610bf186856114ba565b610bfb91906114ba565b6111b3565b6000610c0c8247611513565b90506000600b54600a54600d54610c2391906114ba565b610c2d91906114ba565b600a54610c3b9060646114d2565b610c4591906114f1565b905060006064610c5583856114d2565b610c5f91906114f1565b90506000600b54600a54600d54610c7691906114ba565b610c8091906114ba565b600b54610c8e9060646114d2565b610c9891906114f1565b905060006064610ca883876114d2565b610cb291906114f1565b90507f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618782610ce18689611513565b610ceb9190611513565b604080519283526020830191909152810189905260600160405180910390a1600454610d20906001600160a01b03168461130d565b600554479550610d39906001600160a01b03168661130d565b50506015805460ff60a01b19169055505050505050505050565b600080606081610d64600a866114f1565b90506000610d73600a836114f1565b601154909150610d839080611513565b610d8e90604a6114ba565b60118181558291600090610da39084906114ba565b90915550600090506001610db88860026114d2565b610dc29190611513565b9050610dcf8760016114ba565b82610ddb836004611348565b610de591906114ba565b60405180604001604052806005815260200164616c6c6f6b60d81b8152509550955095505050509193909250565b81610f4b576001600160a01b038416600090815260016020526040902054610e3c9084906114ba565b6001600160a01b038516600090815260016020526040812091909155601154600854610e6891906114ba565b6007805460ff191690556001600160a01b038716600090815260016020526040902054909150610e99908590611513565b6001600160a01b038716600090815260016020526040808220929092553081529081208054839290610ecc9084906114ba565b92505081905550846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef86604051610f1891815260200190565b60405180910390a36001600160a01b03851661dead1415610f455783600654610f419190611513565b6006555b50610a79565b8015611081576000606460085485610f6391906114d2565b610f6d91906114f1565b90506000610f7b8286611513565b6001600160a01b038816600090815260016020526040902054909150610fa2908690611513565b6001600160a01b038089166000908152600160205260408082209390935590881681522054610fd29082906114ba565b6001600160a01b038716600090815260016020526040808220929092553081522054610fff9083906114ba565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36001600160a01b03861661dead141561107a57806006546110769190611513565b6006555b5050610a79565b600060646009548561109391906114d2565b61109d91906114f1565b905060006110ab8286611513565b6001600160a01b0388166000908152600160205260409020549091506110d2908690611513565b6001600160a01b0380891660009081526001602052604080822093909355908816815220546111029082906114ba565b6001600160a01b03871660009081526001602052604080822092909255308152205461112f9083906114ba565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36001600160a01b03861661dead14156111aa57806006546111a69190611513565b6006555b50505050505050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106111e8576111e861152a565b6001600160a01b03928316602091820292909201810191909152601454604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611241573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112659190611540565b816001815181106112785761127861152a565b6001600160a01b03928316602091820292909201015260145461129e9130911684610708565b60145460405163791ac94760e01b81526001600160a01b039091169063791ac947906112d790859060009086903090429060040161155d565b600060405180830381600087803b1580156112f157600080fd5b505af1158015611305573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015611343573d6000803e3d6000fd5b505050565b6000610ab882846114f1565b600060208083528351808285015260005b8181101561138157858101830151858201604001528201611365565b81811115611393576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146113be57600080fd5b50565b600080604083850312156113d457600080fd5b82356113df816113a9565b946020939093013593505050565b60008060006060848603121561140257600080fd5b833561140d816113a9565b9250602084013561141d816113a9565b929592945050506040919091013590565b60006020828403121561144057600080fd5b8135610ab8816113a9565b6000806040838503121561145e57600080fd5b8235611469816113a9565b91506020830135611479816113a9565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600060ff821660ff8114156114b1576114b1611484565b60010192915050565b600082198211156114cd576114cd611484565b500190565b60008160001904831182151516156114ec576114ec611484565b500290565b60008261150e57634e487b7160e01b600052601260045260246000fd5b500490565b60008282101561152557611525611484565b500390565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561155257600080fd5b8151610ab8816113a9565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115ad5784516001600160a01b031683529383019391830191600101611588565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ac54d4b799bd96254a90dbdae45e64cb75847eb3eb7a0f31d41bbb205413db6764736f6c634300080a0033

Deployed Bytecode

0x6080604052600436106101c65760003560e01c806370a08231116100f757806395d89b4111610095578063b43665e211610064578063b43665e214610511578063bbb9f61f14610531578063c6618d6014610551578063dd62ed3e1461056757600080fd5b806395d89b411461048f578063a457c2d7146104bb578063a9059cbb146104db578063b1cb1582146104fb57600080fd5b806378109e54116100d157806378109e541461042f5780637d1db4a514610445578063805c0e0f1461045b5780638da5cb5b1461047157600080fd5b806370a08231146103b2578063715018a6146103e8578063768dc710146103ff57600080fd5b8063313ce5671161016457806349bd5a5e1161013e57806349bd5a5e146103455780634a74bb0214610365578063603176251461038657806361c9a0dc1461039c57600080fd5b8063313ce567146102f3578063395093511461030f5780633f70a4951461032f57600080fd5b806318160ddd116101a057806318160ddd1461027d57806321dbd9eb1461029c578063220f6696146102b257806323b872dd146102d357600080fd5b806306fdde03146101d2578063095ea7b3146102155780631694505e1461024557600080fd5b366101cd57005b600080fd5b3480156101de57600080fd5b50604080518082019091526008815267042756e6e79486f760c41b60208201525b60405161020c9190611354565b60405180910390f35b34801561022157600080fd5b506102356102303660046113c1565b6105ad565b604051901515815260200161020c565b34801561025157600080fd5b50601454610265906001600160a01b031681565b6040516001600160a01b03909116815260200161020c565b34801561028957600080fd5b506006545b60405190815260200161020c565b3480156102a857600080fd5b5061028e600c5481565b3480156102be57600080fd5b5060155461023590600160a01b900460ff1681565b3480156102df57600080fd5b506102356102ee3660046113ed565b6105c3565b3480156102ff57600080fd5b506040516009815260200161020c565b34801561031b57600080fd5b5061023561032a3660046113c1565b61062c565b34801561033b57600080fd5b5061028e60085481565b34801561035157600080fd5b50601554610265906001600160a01b031681565b34801561037157600080fd5b5060155461023590600160a81b900460ff1681565b34801561039257600080fd5b5061028e600a5481565b3480156103a857600080fd5b5061028e600d5481565b3480156103be57600080fd5b5061028e6103cd36600461142e565b6001600160a01b031660009081526001602052604090205490565b3480156103f457600080fd5b506103fd610662565b005b34801561040b57600080fd5b5061023561041a36600461142e565b60036020526000908152604090205460ff1681565b34801561043b57600080fd5b5061028e600e5481565b34801561045157600080fd5b5061028e60125481565b34801561046757600080fd5b5061026561dead81565b34801561047d57600080fd5b506000546001600160a01b0316610265565b34801561049b57600080fd5b506040805180820190915260038152620484f560ec1b60208201526101ff565b3480156104c757600080fd5b506102356104d63660046113c1565b6106ac565b3480156104e757600080fd5b506102356104f63660046113c1565b6106fb565b34801561050757600080fd5b5061028e60095481565b34801561051d57600080fd5b50600454610265906001600160a01b031681565b34801561053d57600080fd5b50600554610265906001600160a01b031681565b34801561055d57600080fd5b5061028e600b5481565b34801561057357600080fd5b5061028e61058236600461144b565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006105ba338484610708565b50600192915050565b60006105d08484846107ce565b610622843361061d856040518060600160405280602881526020016115cf602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610a80565b610708565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916105ba91859061061d9086610aac565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006105ba338461061d856040518060600160405280602581526020016115f7602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610a80565b60006105ba3384846107ce565b6001600160a01b0383161580159061072857506001600160a01b03821615155b61076d5760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b60448201526064015b60405180910390fd5b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b0384811691161480159061082857506001600160a01b03831660009081526003602052604090205460ff168061082657506001600160a01b03821660009081526003602052604090205460ff165b155b1561087f5760125481111561087f5760405162461bcd60e51b815260206004820152601760248201527f4f766572207472616e73616374696f6e206c696d69742e0000000000000000006044820152606401610764565b6001600160a01b0383161580159061089f57506001600160a01b03821615155b6108e35760405162461bcd60e51b81526020600482015260156024820152744552523a205573696e67203020616464726573732160581b6044820152606401610764565b600081116109415760405162461bcd60e51b815260206004820152602560248201527f546f6b656e2076616c7565206d75737420626520686967686572207468616e206044820152643d32b9379760d91b6064820152608401610764565b60075460ff610100820481169116108015906109675750601554600160a01b900460ff16155b801561097c5750601554600160a81b900460ff165b156109ca5730600090815260016020526040902054601054811180156109b057506015546001600160a01b03858116911614155b156109c8576007805460ff191690556109c881610abf565b505b60016109d582610d53565b5050506001600160a01b03841660009081526003602052604081205460ff1680610a1757506001600160a01b03841660009081526003602052604090205460ff165b15610a255760009150610a6c565b6015546001600160a01b0386811691161415610a3f575060015b6007805460ff16906000610a528361149a565b91906101000a81548160ff021916908360ff160217905550505b610a798585858585610e13565b5050505050565b60008184841115610aa45760405162461bcd60e51b81526004016107649190611354565b505050900390565b6000610ab882846114ba565b9392505050565b6015805460ff60a01b1916600160a01b179055600c54600090606490610ae590846114d2565b610aef91906114f1565b905080600654610aff9190611513565b60065561dead60005260016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d54610b3a9082906114ba565b60016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d553060009081526040902054610b77908290611513565b30600090815260016020526040812091909155600a54606490610b9a90856114d2565b610ba491906114f1565b905060006064600b5485610bb891906114d2565b610bc291906114f1565b9050600060c8600d5486610bd691906114d2565b610be091906114f1565b905047610c0083610bf186856114ba565b610bfb91906114ba565b6111b3565b6000610c0c8247611513565b90506000600b54600a54600d54610c2391906114ba565b610c2d91906114ba565b600a54610c3b9060646114d2565b610c4591906114f1565b905060006064610c5583856114d2565b610c5f91906114f1565b90506000600b54600a54600d54610c7691906114ba565b610c8091906114ba565b600b54610c8e9060646114d2565b610c9891906114f1565b905060006064610ca883876114d2565b610cb291906114f1565b90507f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618782610ce18689611513565b610ceb9190611513565b604080519283526020830191909152810189905260600160405180910390a1600454610d20906001600160a01b03168461130d565b600554479550610d39906001600160a01b03168661130d565b50506015805460ff60a01b19169055505050505050505050565b600080606081610d64600a866114f1565b90506000610d73600a836114f1565b601154909150610d839080611513565b610d8e90604a6114ba565b60118181558291600090610da39084906114ba565b90915550600090506001610db88860026114d2565b610dc29190611513565b9050610dcf8760016114ba565b82610ddb836004611348565b610de591906114ba565b60405180604001604052806005815260200164616c6c6f6b60d81b8152509550955095505050509193909250565b81610f4b576001600160a01b038416600090815260016020526040902054610e3c9084906114ba565b6001600160a01b038516600090815260016020526040812091909155601154600854610e6891906114ba565b6007805460ff191690556001600160a01b038716600090815260016020526040902054909150610e99908590611513565b6001600160a01b038716600090815260016020526040808220929092553081529081208054839290610ecc9084906114ba565b92505081905550846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef86604051610f1891815260200190565b60405180910390a36001600160a01b03851661dead1415610f455783600654610f419190611513565b6006555b50610a79565b8015611081576000606460085485610f6391906114d2565b610f6d91906114f1565b90506000610f7b8286611513565b6001600160a01b038816600090815260016020526040902054909150610fa2908690611513565b6001600160a01b038089166000908152600160205260408082209390935590881681522054610fd29082906114ba565b6001600160a01b038716600090815260016020526040808220929092553081522054610fff9083906114ba565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36001600160a01b03861661dead141561107a57806006546110769190611513565b6006555b5050610a79565b600060646009548561109391906114d2565b61109d91906114f1565b905060006110ab8286611513565b6001600160a01b0388166000908152600160205260409020549091506110d2908690611513565b6001600160a01b0380891660009081526001602052604080822093909355908816815220546111029082906114ba565b6001600160a01b03871660009081526001602052604080822092909255308152205461112f9083906114ba565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36001600160a01b03861661dead14156111aa57806006546111a69190611513565b6006555b50505050505050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106111e8576111e861152a565b6001600160a01b03928316602091820292909201810191909152601454604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611241573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112659190611540565b816001815181106112785761127861152a565b6001600160a01b03928316602091820292909201015260145461129e9130911684610708565b60145460405163791ac94760e01b81526001600160a01b039091169063791ac947906112d790859060009086903090429060040161155d565b600060405180830381600087803b1580156112f157600080fd5b505af1158015611305573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015611343573d6000803e3d6000fd5b505050565b6000610ab882846114f1565b600060208083528351808285015260005b8181101561138157858101830151858201604001528201611365565b81811115611393576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146113be57600080fd5b50565b600080604083850312156113d457600080fd5b82356113df816113a9565b946020939093013593505050565b60008060006060848603121561140257600080fd5b833561140d816113a9565b9250602084013561141d816113a9565b929592945050506040919091013590565b60006020828403121561144057600080fd5b8135610ab8816113a9565b6000806040838503121561145e57600080fd5b8235611469816113a9565b91506020830135611479816113a9565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600060ff821660ff8114156114b1576114b1611484565b60010192915050565b600082198211156114cd576114cd611484565b500190565b60008160001904831182151516156114ec576114ec611484565b500290565b60008261150e57634e487b7160e01b600052601260045260246000fd5b500490565b60008282101561152557611525611484565b500390565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561155257600080fd5b8151610ab8816113a9565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115ad5784516001600160a01b031683529383019391830191600101611588565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ac54d4b799bd96254a90dbdae45e64cb75847eb3eb7a0f31d41bbb205413db6764736f6c634300080a0033

Deployed Bytecode Sourcemap

13113:11262:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16432:83;;;;;;;;;;-1:-1:-1;16502:5:0;;;;;;;;;;;;-1:-1:-1;;;16502:5:0;;;;16432:83;;;;;;;:::i;:::-;;;;;;;;17275:161;;;;;;;;;;-1:-1:-1;17275:161:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;17275:161:0;1072:187:1;15166:41:0;;;;;;;;;;-1:-1:-1;15166:41:0;;;;-1:-1:-1;;;;;15166:41:0;;;;;;-1:-1:-1;;;;;1455:32:1;;;1437:51;;1425:2;1410:18;15166:41:0;1264:230:1;16709:95:0;;;;;;;;;;-1:-1:-1;16789:7:0;;16709:95;;;1645:25:1;;;1633:2;1618:18;16709:95:0;1499:177:1;14691:31:0;;;;;;;;;;;;;;;;15249:28;;;;;;;;;;-1:-1:-1;15249:28:0;;;;-1:-1:-1;;;15249:28:0;;;;;;17444:313;;;;;;;;;;-1:-1:-1;17444:313:0;;;;;:::i;:::-;;:::i;16618:83::-;;;;;;;;;;-1:-1:-1;16618:83:0;;14293:1;2284:36:1;;2272:2;2257:18;16618:83:0;2142:184:1;17765:218:0;;;;;;;;;;-1:-1:-1;17765:218:0;;;;;:::i;:::-;;:::i;14532:30::-;;;;;;;;;;;;;;;;15214:28;;;;;;;;;;-1:-1:-1;15214:28:0;;;;-1:-1:-1;;;;;15214:28:0;;;15284:40;;;;;;;;;;-1:-1:-1;15284:40:0;;;;-1:-1:-1;;;15284:40:0;;;;;;14609:38;;;;;;;;;;;;;;;;14729:33;;;;;;;;;;;;;;;;16812:117;;;;;;;;;;-1:-1:-1;16812:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;16905:16:0;16878:7;16905:16;;;:7;:16;;;;;;;16812:117;13571:138;;;;;;;;;;;;;:::i;:::-;;13844:51;;;;;;;;;;-1:-1:-1;13844:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;14778:40;;;;;;;;;;;;;;;;14984:37;;;;;;;;;;;;;;;;14100:97;;;;;;;;;;;;14154:42;14100:97;;13348:87;;;;;;;;;;-1:-1:-1;13394:7:0;13421:6;-1:-1:-1;;;;;13421:6:0;13348:87;;16523;;;;;;;;;;-1:-1:-1;16595:7:0;;;;;;;;;;;;-1:-1:-1;;;16595:7:0;;;;16523:87;;17991:269;;;;;;;;;;-1:-1:-1;17991:269:0;;;;;:::i;:::-;;:::i;16937:167::-;;;;;;;;;;-1:-1:-1;16937:167:0;;;;;:::i;:::-;;:::i;14569:31::-;;;;;;;;;;;;;;;;13905:93;;;;;;;;;;-1:-1:-1;13905:93:0;;;;-1:-1:-1;;;;;13905:93:0;;;14006:87;;;;;;;;;;-1:-1:-1;14006:87:0;;;;-1:-1:-1;;;;;14006:87:0;;;14654:30;;;;;;;;;;;;;;;;17112:155;;;;;;;;;;-1:-1:-1;17112:155:0;;;;;:::i;:::-;-1:-1:-1;;;;;17226:21:0;;;17199:7;17226:21;;;:11;:21;;;;;;;;:33;;;;;;;;;;;;;17112:155;17275:161;17350:4;17367:39;1814:10;17390:7;17399:6;17367:8;:39::i;:::-;-1:-1:-1;17424:4:0;17275:161;;;;:::o;17444:313::-;17542:4;17559:36;17569:6;17577:9;17588:6;17559:9;:36::i;:::-;17606:121;17615:6;1814:10;17637:89;17675:6;17637:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17637:19:0;;;;;;:11;:19;;;;;;;;1814:10;17637:33;;;;;;;;;;:37;:89::i;:::-;17606:8;:121::i;:::-;-1:-1:-1;17745:4:0;17444:313;;;;;:::o;17765:218::-;1814:10;17853:4;17902:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;17902:34:0;;;;;;;;;;17853:4;;17870:83;;17893:7;;17902:50;;17941:10;17902:38;:50::i;13571:138::-;13668:1;13652:6;;13631:40;;-1:-1:-1;;;;;13652:6:0;;;;13631:40;;13668:1;;13631:40;13699:1;13682:19;;-1:-1:-1;;;;;;13682:19:0;;;13571:138::o;17991:269::-;18084:4;18101:129;1814:10;18124:7;18133:96;18172:15;18133:96;;;;;;;;;;;;;;;;;1814:10;18133:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;18133:34:0;;;;;;;;;;;;:38;:96::i;16937:167::-;17015:4;17032:42;1814:10;17056:9;17067:6;17032:9;:42::i;18778:290::-;-1:-1:-1;;;;;18879:22:0;;;;;;:50;;-1:-1:-1;;;;;;18905:24:0;;;;18879:50;18871:80;;;;-1:-1:-1;;;18871:80:0;;3610:2:1;18871:80:0;;;3592:21:1;3649:2;3629:18;;;3622:30;-1:-1:-1;;;3668:18:1;;;3661:47;3725:18;;18871:80:0;;;;;;;;;-1:-1:-1;;;;;18962:21:0;;;;;;;:11;:21;;;;;;;;:33;;;;;;;;;;;;;:42;;;19020:38;;1645:25:1;;;19020:38:0;;1618:18:1;19020:38:0;;;;;;;18778:290;;;:::o;19076:1267::-;13394:7;13421:6;-1:-1:-1;;;;;19199:15:0;;;13421:6;;19199:15;;;;19198:72;;-1:-1:-1;;;;;;19219:24:0;;;;;;:18;:24;;;;;;;;;:50;;-1:-1:-1;;;;;;19247:22:0;;;;;;:18;:22;;;;;;;;19219:50;19217:53;19198:72;19194:149;;;19303:12;;19293:6;:22;;19285:58;;;;-1:-1:-1;;;19285:58:0;;3956:2:1;19285:58:0;;;3938:21:1;3995:2;3975:18;;;3968:30;4034:25;4014:18;;;4007:53;4077:18;;19285:58:0;3754:347:1;19285:58:0;-1:-1:-1;;;;;19366:18:0;;;;;;:38;;-1:-1:-1;;;;;;19388:16:0;;;;19366:38;19358:72;;;;-1:-1:-1;;;19358:72:0;;4308:2:1;19358:72:0;;;4290:21:1;4347:2;4327:18;;;4320:30;-1:-1:-1;;;4366:18:1;;;4359:51;4427:18;;19358:72:0;4106:345:1;19358:72:0;19458:1;19449:6;:10;19441:60;;;;-1:-1:-1;;;19441:60:0;;4658:2:1;19441:60:0;;;4640:21:1;4697:2;4677:18;;;4670:30;4736:34;4716:18;;;4709:62;-1:-1:-1;;;4787:18:1;;;4780:35;4832:19;;19441:60:0;4456:401:1;19441:60:0;19545:11;;;;;;;;19534:7;;:22;;;;:57;;-1:-1:-1;19575:16:0;;-1:-1:-1;;;19575:16:0;;;;19574:17;19534:57;:95;;;;-1:-1:-1;19608:21:0;;-1:-1:-1;;;19608:21:0;;;;19534:95;19517:402;;;19735:4;19686:28;16905:16;;;:7;:16;;;;;;19783:15;;19760:38;;19759:68;;;;-1:-1:-1;19812:13:0;;-1:-1:-1;;;;;19804:21:0;;;19812:13;;19804:21;;19759:68;19756:152;;;19844:7;:11;;-1:-1:-1;;19844:11:0;;;19870:36;19885:20;19870:14;:36::i;:::-;19655:264;19517:402;19954:4;19969:33;19995:6;19969:25;:33::i;:::-;-1:-1:-1;;;;;;;;20037:24:0;;20013:10;20037:24;;;:18;:24;;;;;;;;;:50;;-1:-1:-1;;;;;;20065:22:0;;;;;;:18;:22;;;;;;;;20037:50;20034:239;;;20113:5;20103:15;;20034:239;;;20173:13;;-1:-1:-1;;;;;20165:21:0;;;20173:13;;20165:21;20162:72;;;-1:-1:-1;20214:4:0;20162:72;20250:7;:9;;;;;:7;:9;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;20034:239;20285:48;20300:4;20306:2;20310:6;20318:7;20327:5;20285:14;:48::i;:::-;19179:1164;;19076:1267;;;:::o;1263:206::-;1349:7;1410:12;1402:6;;;;1394:29;;;;-1:-1:-1;;;1394:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;1445:5:0;;;1263:206::o;835:98::-;893:7;920:5;924:1;920;:5;:::i;:::-;913:12;835:98;-1:-1:-1;;;835:98:0:o;20487:1434::-;15579:16;:23;;-1:-1:-1;;;;15579:23:0;-1:-1:-1;;;15579:23:0;;;20626:12:::1;::::0;15579:23;;20641:3:::1;::::0;20603:35:::1;::::0;:20;:35:::1;:::i;:::-;:41;;;;:::i;:::-;20578:66;;20679:14;20669:7;;:24;;;;:::i;:::-;20659:7;:34:::0;14154:42:::1;20731:20;::::0;:7:::1;:20;::::0;;;:37:::1;::::0;20754:14;;20731:37:::1;:::i;:::-;20708:7;:20;::::0;;:60;20824:4:::1;20708:20;20808:22:::0;;;20708:20;20808:22;;;:39:::1;::::0;20833:14;;20808:39:::1;:::i;:::-;20799:4;20783:22;::::0;;;:7:::1;:22;::::0;;;;:64;;;;20910:17:::1;::::0;20930:3:::1;::::0;20887:40:::1;::::0;:20;:40:::1;:::i;:::-;:46;;;;:::i;:::-;20865:68;;20948:19;21007:3;20993:11;;20970:20;:34;;;;:::i;:::-;:40;;;;:::i;:::-;20948:62;;21025:25;21093:3;21076:14;;21053:20;:37;;;;:::i;:::-;:43;;;;:::i;:::-;21025:71:::0;-1:-1:-1;21141:21:0::1;21177:63;21228:11:::0;21194:31:::1;21214:11:::0;21025:71;21194:31:::1;:::i;:::-;:45;;;;:::i;:::-;21177:16;:63::i;:::-;21255:17;21275:41;21299:17:::0;21275:21:::1;:41;:::i;:::-;21255:61;;21333:15;21415:11;;21395:17;;21378:14;;:34;;;;:::i;:::-;:48;;;;:::i;:::-;21351:17;::::0;:23:::1;::::0;21371:3:::1;21351:23;:::i;:::-;:76;;;;:::i;:::-;21333:94:::0;-1:-1:-1;21442:13:0::1;21480:3;21458:19;21333:94:::0;21458:9;:19:::1;:::i;:::-;:25;;;;:::i;:::-;21442:41;;21500:15;21576:11;;21556:17;;21539:14;;:34;;;;:::i;:::-;:48;;;;:::i;:::-;21518:11;::::0;:17:::1;::::0;21532:3:::1;21518:17;:::i;:::-;:70;;;;:::i;:::-;21500:88:::0;-1:-1:-1;21603:13:0::1;21641:3;21619:19;21500:88:::0;21619:9;:19:::1;:::i;:::-;:25;;;;:::i;:::-;21603:41:::0;-1:-1:-1;21668:81:0::1;21683:17:::0;21603:41;21703:17:::1;21715:5:::0;21703:9;:17:::1;:::i;:::-;:25;;;;:::i;:::-;21668:81;::::0;;6034:25:1;;;6090:2;6075:18;;6068:34;;;;6118:18;;6111:34;;;6022:2;6007:18;21668:81:0::1;;;;;;;21779:16;::::0;21766:37:::1;::::0;-1:-1:-1;;;;;21779:16:0::1;21797:5:::0;21766:12:::1;:37::i;:::-;21881:10;::::0;21832:21:::1;::::0;-1:-1:-1;21868:35:0::1;::::0;-1:-1:-1;;;;;21881:10:0::1;21832:21:::0;21868:12:::1;:35::i;:::-;-1:-1:-1::0;;15625:16:0;:24;;-1:-1:-1;;;;15625:24:0;;;-1:-1:-1;;;;;;;;;20487:1434:0:o;18407:363::-;18473:7;;18489:13;18473:7;18534:11;18543:2;18534:8;:11;:::i;:::-;18517:28;-1:-1:-1;18557:20:0;18580:12;18590:2;18517:28;18580:12;:::i;:::-;18620:7;;18557:35;;-1:-1:-1;18612:15:0;;18620:7;18612:15;:::i;:::-;:18;;18628:2;18612:18;:::i;:::-;18604:7;:26;;;18651:12;;18642:7;;:21;;18651:12;;18642:21;:::i;:::-;;;;-1:-1:-1;18676:9:0;;-1:-1:-1;18699:1:0;18688:10;:8;18697:1;18688:10;:::i;:::-;:12;;;;:::i;:::-;18676:24;-1:-1:-1;18718:10:0;:8;18727:1;18718:10;:::i;:::-;18741:12;18729:11;:4;18738:1;18729:8;:11::i;:::-;:24;;;;:::i;:::-;18710:52;;;;;;;;;;;;;-1:-1:-1;;;18710:52:0;;;;;;;;;;;;18407:363;;;;;:::o;22784:1582::-;22921:7;22917:1440;;-1:-1:-1;;;;;22963:16:0;;;;;;:7;:16;;;;;;:26;;22980:9;;22963:26;:::i;:::-;-1:-1:-1;;;;;22944:16:0;;;;;;:7;:16;;;;;:45;;;;23032:7;;23020:11;;:19;;23032:7;23020:19;:::i;:::-;23054:7;:9;;-1:-1:-1;;23054:9:0;;;-1:-1:-1;;;;;23098:17:0;;23062:1;23098:17;;;23054:9;23098:17;;;;;;23004:35;;-1:-1:-1;23098:27:0;;23116:9;;23098:27;:::i;:::-;-1:-1:-1;;;;;23078:17:0;;;;;;:7;:17;;;;;;:47;;;;23156:4;23140:22;;;;;:32;;23166:6;;23078:17;23140:32;;23166:6;;23140:32;:::i;:::-;;;;;;;;23214:7;-1:-1:-1;;;;;23195:38:0;23204:8;-1:-1:-1;;;;;23195:38:0;;23223:9;23195:38;;;;1645:25:1;;1633:2;1618:18;;1499:177;23195:38:0;;;;;;;;-1:-1:-1;;;;;23253:22:0;;14154:42;23253:22;23250:70;;;23309:9;23301:7;;:17;;;;:::i;:::-;23291:7;:27;23250:70;22929:408;22917:1440;;;23347:5;23343:1014;;;23370:14;23409:3;23397:11;;23387:9;:21;;;;:::i;:::-;:25;;;;:::i;:::-;23370:42;-1:-1:-1;23427:23:0;23453:16;23370:42;23453:9;:16;:::i;:::-;-1:-1:-1;;;;;23506:17:0;;;;;;:7;:17;;;;;;23427:42;;-1:-1:-1;23506:27:0;;23524:9;;23506:27;:::i;:::-;-1:-1:-1;;;;;23486:17:0;;;;;;;:7;:17;;;;;;:47;;;;23567:16;;;;;;;:32;;23584:15;;23567:32;:::i;:::-;-1:-1:-1;;;;;23548:16:0;;;;;;:7;:16;;;;;;:51;;;;23655:4;23639:22;;;;:29;;23662:6;;23639:29;:::i;:::-;23630:4;23614:22;;;;:7;:22;;;;;;;;;:54;;;;23691:44;1645:25:1;;;-1:-1:-1;;;;;23691:44:0;;;;;;;;;;1618:18:1;23691:44:0;;;;;;;-1:-1:-1;;;;;23755:22:0;;14154:42;23755:22;23752:73;;;23810:15;23802:7;;:23;;;;:::i;:::-;23792:7;:33;23752:73;23353:502;;23343:1014;;;23878:15;23919:3;23906:12;;23896:9;:22;;;;:::i;:::-;:26;;;;:::i;:::-;23878:44;-1:-1:-1;23937:23:0;23963:17;23878:44;23963:9;:17;:::i;:::-;-1:-1:-1;;;;;24017:17:0;;;;;;:7;:17;;;;;;23937:43;;-1:-1:-1;24017:27:0;;24035:9;;24017:27;:::i;:::-;-1:-1:-1;;;;;23997:17:0;;;;;;;:7;:17;;;;;;:47;;;;24078:16;;;;;;;:32;;24095:15;;24078:32;:::i;:::-;-1:-1:-1;;;;;24059:16:0;;;;;;:7;:16;;;;;;:51;;;;24166:4;24150:22;;;;:30;;24173:7;;24150:30;:::i;:::-;24141:4;24125:22;;;;:7;:22;;;;;;;;;:55;;;;24203:44;1645:25:1;;;-1:-1:-1;;;;;24203:44:0;;;;;;;;;;1618:18:1;24203:44:0;;;;;;;-1:-1:-1;;;;;24267:22:0;;14154:42;24267:22;24264:73;;;24322:15;24314:7;;:23;;;;:::i;:::-;24304:7;:33;24264:73;23861:496;;22784:1582;;;;;:::o;21929:474::-;22021:16;;;22035:1;22021:16;;;;;;;;21997:21;;22021:16;;;;;;;;;;-1:-1:-1;22021:16:0;21997:40;;22066:4;22048;22053:1;22048:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;22048:23:0;;;:7;;;;;;;;;;:23;;;;22092:15;;:22;;;-1:-1:-1;;;22092:22:0;;;;:15;;;;;:20;;:22;;;;;22048:7;;22092:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22082:4;22087:1;22082:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;22082:32:0;;;:7;;;;;;;;;:32;22157:15;;22125:62;;22142:4;;22157:15;22175:11;22125:8;:62::i;:::-;22198:15;;:197;;-1:-1:-1;;;22198:197:0;;-1:-1:-1;;;;;22198:15:0;;;;:66;;:197;;22279:11;;22198:15;;22322:4;;22349;;22369:15;;22198:197;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21984:419;21929:474;:::o;20355:122::-;20440:23;;-1:-1:-1;;;;;20440:15:0;;;:23;;;;;20456:6;;20440:23;;;;20456:6;20440:15;:23;;;;;;;;;;;;;;;;;;;;;20355:122;;:::o;1157:98::-;1215:7;1242:5;1246:1;1242;:5;:::i;14:597:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;671:70;616:131;:::o;752:315::-;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;1681:456::-;1758:6;1766;1774;1827:2;1815:9;1806:7;1802:23;1798:32;1795:52;;;1843:1;1840;1833:12;1795:52;1882:9;1869:23;1901:31;1926:5;1901:31;:::i;:::-;1951:5;-1:-1:-1;2008:2:1;1993:18;;1980:32;2021:33;1980:32;2021:33;:::i;:::-;1681:456;;2073:7;;-1:-1:-1;;;2127:2:1;2112:18;;;;2099:32;;1681:456::o;2539:247::-;2598:6;2651:2;2639:9;2630:7;2626:23;2622:32;2619:52;;;2667:1;2664;2657:12;2619:52;2706:9;2693:23;2725:31;2750:5;2725:31;:::i;3015:388::-;3083:6;3091;3144:2;3132:9;3123:7;3119:23;3115:32;3112:52;;;3160:1;3157;3150:12;3112:52;3199:9;3186:23;3218:31;3243:5;3218:31;:::i;:::-;3268:5;-1:-1:-1;3325:2:1;3310:18;;3297:32;3338:33;3297:32;3338:33;:::i;:::-;3390:7;3380:17;;;3015:388;;;;;:::o;4862:127::-;4923:10;4918:3;4914:20;4911:1;4904:31;4954:4;4951:1;4944:15;4978:4;4975:1;4968:15;4994:175;5031:3;5075:4;5068:5;5064:16;5104:4;5095:7;5092:17;5089:43;;;5112:18;;:::i;:::-;5161:1;5148:15;;4994:175;-1:-1:-1;;4994:175:1:o;5174:128::-;5214:3;5245:1;5241:6;5238:1;5235:13;5232:39;;;5251:18;;:::i;:::-;-1:-1:-1;5287:9:1;;5174:128::o;5307:168::-;5347:7;5413:1;5409;5405:6;5401:14;5398:1;5395:21;5390:1;5383:9;5376:17;5372:45;5369:71;;;5420:18;;:::i;:::-;-1:-1:-1;5460:9:1;;5307:168::o;5480:217::-;5520:1;5546;5536:132;;5590:10;5585:3;5581:20;5578:1;5571:31;5625:4;5622:1;5615:15;5653:4;5650:1;5643:15;5536:132;-1:-1:-1;5682:9:1;;5480:217::o;5702:125::-;5742:4;5770:1;5767;5764:8;5761:34;;;5775:18;;:::i;:::-;-1:-1:-1;5812:9:1;;5702:125::o;6288:127::-;6349:10;6344:3;6340:20;6337:1;6330:31;6380:4;6377:1;6370:15;6404:4;6401:1;6394:15;6420:251;6490:6;6543:2;6531:9;6522:7;6518:23;6514:32;6511:52;;;6559:1;6556;6549:12;6511:52;6591:9;6585:16;6610:31;6635:5;6610:31;:::i;6676:980::-;6938:4;6986:3;6975:9;6971:19;7017:6;7006:9;6999:25;7043:2;7081:6;7076:2;7065:9;7061:18;7054:34;7124:3;7119:2;7108:9;7104:18;7097:31;7148:6;7183;7177:13;7214:6;7206;7199:22;7252:3;7241:9;7237:19;7230:26;;7291:2;7283:6;7279:15;7265:29;;7312:1;7322:195;7336:6;7333:1;7330:13;7322:195;;;7401:13;;-1:-1:-1;;;;;7397:39:1;7385:52;;7492:15;;;;7457:12;;;;7433:1;7351:9;7322:195;;;-1:-1:-1;;;;;;;7573:32:1;;;;7568:2;7553:18;;7546:60;-1:-1:-1;;;7637:3:1;7622:19;7615:35;7534:3;6676:980;-1:-1:-1;;;6676:980:1:o

Swarm Source

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