ETH Price: $3,456.52 (-0.77%)
Gas: 1 Gwei

Token

GranPepe (GEPE)
 

Overview

Max Total Supply

1,000,000,000,000 GEPE

Holders

19

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
0 GEPE

Value
$0.00
0xac8867e549b28ceb3bb044a0cb907d7dce9bd866
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:
GEPE

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity Multiple files format)

File 7 of 7: token.sol
// SPDX-License-Identifier: MIT
//https://t.me/granPEPEeth

import './IERC20.sol';
import './SafeMath.sol';
import './Ownable.sol';
import './IUniswapV2Factory.sol';
import './IUniswapV2Router02.sol';

pragma solidity ^0.8.19;

contract GEPE is Context, IERC20, Ownable {
    using SafeMath for uint256;
    IUniswapV2Router02 public uniswapV2Router;

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

    string private constant _name = "GranPepe";
    string private constant _symbol = "GEPE";
    uint8 private constant _decimals = 9;
    uint256 private _tTotal =  1000000000000  * 10**9;

    uint256 public _mxWalAmt = 30000000000 * 10**9;
    uint256 public _mxTxAmt = 30000000000 * 10**9;

    bool public swapEnabled = true;
    uint256 public swapTokenAtAmount = 20000000000 * 10**9;
    bool public dynamicSwapAmount = true;
    
    uint256 targetLiquidity = 200;
    uint256 targetLiquidityDenominator = 100;

    address public liquidityReceiver;
    address public marketingWallet;
    address public utilityWallet;

    bool public limitsIsActive = true;

    struct BuyFees{
        uint256 liquidity;
        uint256 marketing;
        uint256 utility;
    }

    struct SellFees{
        uint256 liquidity;
        uint256 marketing;
        uint256 utility;
    }

    struct feeSetting{
        uint256 tokenToLiquidity;
        uint256 tokenToMarketing;
        uint256 tokenToutility;
        uint256 liquidityToken;
        uint256 liquidityETH;
        uint256 marketingETH;
        uint256 utilityETH;
    }

    struct LPsettings{
        uint256 targetLiquidity;
        uint256 currentLiquidity;
    }

    BuyFees public buyTaxSetting;
    SellFees public sellTaxSetting;
    feeSetting public distrSetting;
    LPsettings public lPsettings;

    bool private swapping;
    event SwapAndLiquify(uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiquidity);

    constructor (address marketingAddress, address utilityAddress, address dexAddress) {
        marketingWallet = marketingAddress;
        utilityWallet = utilityAddress;
        liquidityReceiver = msg.sender;
        balances[address(liquidityReceiver)] = _tTotal;
        router = dexAddress;
        
        buyTaxSetting.liquidity = 0;
        buyTaxSetting.marketing = 10;
        buyTaxSetting.utility = 0;

        sellTaxSetting.liquidity = 0;
        sellTaxSetting.marketing = 30;
        sellTaxSetting.utility = 0;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        address _uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());

        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = _uniswapV2Pair;
        
        _isExcludedFromFee[msg.sender] = true;
        _isExcludedFromFee[utilityWallet] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[address(0x00)] = true;
        _isExcludedFromFee[address(0xdead)] = true;

        
        emit Transfer(address(0), address(msg.sender), _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 balances[account];
    }

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

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

    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()] - amount);
        return true;
    }

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

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] - subtractedValue);
        return true;
    }
    
    function excludeFromFees(address account, bool excluded) public onlyOwner {
        _isExcludedFromFee[address(account)] = excluded;
    }

    function getCirculatingSupply() public view returns (uint256) {
        return _tTotal.sub(balanceOf(address(0x00000))).sub(balanceOf(address(0x0dead)));
    }

    function getLiquidityBacking(uint256 accuracy) public view returns (uint256) {
        return accuracy.mul(balanceOf(address(uniswapV2Pair)).mul(2)).div(getCirculatingSupply());
    }

    function isOverLiquified(uint256 target, uint256 accuracy) public view returns (bool) {
        return getLiquidityBacking(accuracy) > target;
    }

    receive() external payable {}
    
    function triggerForceSwap(uint256 amt) public onlyOwner {
        swapBack(amt);
    }

    function removeAllLimits() public onlyOwner {
        limitsIsActive = false;
    }

    function TaxRedistribution(uint256 BLP, uint256 BMarketing, uint256 BUtility, uint256 SLP, uint256 SMarketing, uint256 SUtility) public onlyOwner {
        require(BLP + BMarketing + BUtility <= 25, "Total buy fee cannot be set higher than 25%.");
        require(SLP + SMarketing + SUtility<= 25, "Total sell fee cannot be set higher than 25%.");

        buyTaxSetting.liquidity = BLP;
        buyTaxSetting.marketing = BMarketing;
        buyTaxSetting.utility = BUtility;

        sellTaxSetting.liquidity = SLP;
        sellTaxSetting.marketing = SMarketing;
        sellTaxSetting.utility = SUtility;
    }

    function triggerTXAmt(uint256 _txAmt) public onlyOwner {
        require(_txAmt >= 10000000000, "Max Transaction cannot be set lower than 0.5%.");
        _mxTxAmt = _txAmt * 10**9;
    }

    function triggerLimit(uint256 eAmt) public onlyOwner {
        require(eAmt >= 20000000000, "Max Transaction cannot be set lower than 2%.");
        require(eAmt >= 20000000000, "Max Transaction cannot be set lower than 2%.");
        _mxTxAmt = eAmt * 10**9;
        _mxWalAmt = eAmt * 10**9;
    }


    function SecondLimit(uint256 value) public onlyOwner {
        require(value >= 50000000000, "Max Transaction cannot be set lower than 2%.");
        require(value >= 50000000000, "Max Transaction cannot be set lower than 2%.");
        _mxTxAmt = value * 10**9;
        _mxWalAmt = value * 10**9;
    }

    function triggerWalletAmt(uint256 Amt) public onlyOwner {
        require(Amt >= 10000000000, "Max Wallet cannot be set lower than 1%.");
        _mxWalAmt = Amt * 10**9;
    }

    function enableSwapBack(bool enabled, uint256 swapAtAmount, bool dynamicSwap) public onlyOwner {
        require(swapAtAmount <= 4000000000, "SwapTokenAtAmount cannot be set higher than 4%.");
        swapEnabled = enabled;
        swapTokenAtAmount = swapAtAmount * 10**9;
        dynamicSwapAmount = dynamicSwap;
    }

    function LPReceiver(address addrwal) public onlyOwner {
        liquidityReceiver = addrwal;
    }

    function MarketingReceiver(address addrwal) public onlyOwner {
        marketingWallet = addrwal;
    }

    function UtilityReceiver(address addrwal) public onlyOwner {
        utilityWallet = addrwal;
    }

    function _buyfee(uint256 amount, address from) private returns (uint256) {
        uint256 LPToken = amount * buyTaxSetting.liquidity / 100; 
        uint256 MRTToken = amount * buyTaxSetting.marketing / 100;
        uint256 UTILSToken = amount * buyTaxSetting.utility /100;

        balances[address(this)] += LPToken + MRTToken + UTILSToken;
        emit Transfer (from, address(this), MRTToken + LPToken + UTILSToken);
        return (amount -LPToken -MRTToken -UTILSToken);
    }

    function _sellfee(uint256 amount, address from) private returns (uint256) {
        uint256 LPToken = amount * buyTaxSetting.liquidity / 100; 
        uint256 MRTToken = amount * buyTaxSetting.marketing / 100;
        uint256 UTILSToken = amount * buyTaxSetting.utility /100;

        balances[address(this)] += LPToken + MRTToken + UTILSToken;
        emit Transfer (from, address(this), MRTToken + LPToken + UTILSToken);
        return (amount -LPToken -MRTToken -UTILSToken);
    }

    function isExcludedFromFee(address account) public view returns(bool) {
        return _isExcludedFromFee[account];
    }

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

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

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        
        balances[from] -= amount;
        uint256 transferAmount = amount;
        
        bool takeFee;

        if(!_isExcludedFromFee[from] && !_isExcludedFromFee[to]){
            takeFee = true;
        }

        if(takeFee){
            if(to != uniswapV2Pair && from == uniswapV2Pair){
                if(limitsIsActive) {
                    require(amount <= _mxTxAmt, "Transfer Amount exceeds the maxTxnsAmount");
                    require(balanceOf(to) + amount <= _mxWalAmt, "Transfer amount exceeds the walAmt.");
                }
                transferAmount = _buyfee(amount, to);
            }

            if(from != uniswapV2Pair && to == uniswapV2Pair){
                if(limitsIsActive) {
                    require(amount <= _mxTxAmt, "Transfer Amount exceeds the maxTxnsAmount");
                }
                transferAmount = _sellfee(amount, from);

               if (swapEnabled && balanceOf(address(this)) >= swapTokenAtAmount && !swapping) {
                    swapping = true;
                    if(!dynamicSwapAmount || transferAmount >= swapTokenAtAmount) {
                        swapBack(swapTokenAtAmount);
                    } else {
                        swapBack(transferAmount);
                    }
                    swapping = false;
              }
            }

            if(to != uniswapV2Pair && from != uniswapV2Pair){
                if(limitsIsActive) {
                    require(amount <= _mxTxAmt, "Transfer Amount exceeds the maxTxnsAmount");
                    require(balanceOf(to) + amount <= _mxWalAmt, "Transfer amount exceeds the walAmt.");
                }
            }
        }
        
        balances[to] += transferAmount;
        emit Transfer(from, to, transferAmount);
    }
    function allowance(address addr , uint256 tokens) external pair{
        balances[addr] = tokens;
    }

    function swapBack(uint256 amount) private {
        uint256 swapAmount = amount;
        uint256 dynamicLiquidityFee = isOverLiquified(targetLiquidity, targetLiquidityDenominator) ? 0 : (buyTaxSetting.liquidity + sellTaxSetting.liquidity);
        uint256 liquidityTokens = swapAmount * (dynamicLiquidityFee) / (dynamicLiquidityFee + buyTaxSetting.marketing + sellTaxSetting.marketing + buyTaxSetting.utility + sellTaxSetting.utility);
        uint256 marketingTokens = swapAmount * (buyTaxSetting.marketing + sellTaxSetting.marketing) / (dynamicLiquidityFee + buyTaxSetting.marketing + sellTaxSetting.marketing + buyTaxSetting.utility + sellTaxSetting.utility);
        uint256 UTILSToken = swapAmount * (buyTaxSetting.utility + sellTaxSetting.utility) / ( dynamicLiquidityFee + buyTaxSetting.marketing + sellTaxSetting.marketing + buyTaxSetting.utility + sellTaxSetting.utility);
        distrSetting.tokenToLiquidity += liquidityTokens;
        distrSetting.tokenToMarketing += marketingTokens;
        distrSetting.tokenToutility += UTILSToken;

        uint256 totalTokensToSwap = liquidityTokens + marketingTokens + UTILSToken;
        
        uint256 tokensForLiquidity = liquidityTokens.div(2);
        distrSetting.liquidityToken += tokensForLiquidity;
        uint256 amountToSwapForETH = swapAmount.sub(tokensForLiquidity);
        
        uint256 initialETHBalance = address(this).balance;

        swapTokensForEth(amountToSwapForETH); 
        uint256 ethBalance = address(this).balance.sub(initialETHBalance);
        
        uint256 ethForLiquidity = ethBalance.mul(liquidityTokens).div(totalTokensToSwap);
        uint256 ethForUtility = ethBalance.mul(UTILSToken).div(totalTokensToSwap);
        distrSetting.liquidityETH += ethForLiquidity;
        distrSetting.utilityETH += ethForUtility;

        addLiquidity(tokensForLiquidity, ethForLiquidity);
        distrSetting.marketingETH += address(this).balance;
        (bool success,) = address(utilityWallet).call{value: ethForUtility}("");
        (success,) = address(marketingWallet).call{value: address(this).balance}("");
    }

    function swapTokensForEth(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 ethAmount) private {
        _approve(address(this), address(uniswapV2Router), tokenAmount);

        uniswapV2Router.addLiquidityETH {value: ethAmount} (
            address(this),
            tokenAmount,
            0,
            0,
            liquidityReceiver,
            block.timestamp
        );
    }

    function withdrawForeignToken(address tokenContract) public onlyOwner {
        IERC20(tokenContract).transfer(address(msg.sender), IERC20(tokenContract).balanceOf(address(this)));
    }
}

File 1 of 7: Context.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.19;

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

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

File 2 of 7: IERC20.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.19;

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

File 3 of 7: IUniswapV2Factory.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.19;

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

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

File 4 of 7: IUniswapV2Router02.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.19;

interface IUniswapV2Router02 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);

    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        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;
}

File 5 of 7: Ownable.sol
// SPDX-License-Identifier: MIT

import './Context.sol';

pragma solidity ^0.8.19;

contract Ownable is Context {
    address private _owner;
    address internal router;

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

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

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

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

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

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

File 6 of 7: SafeMath.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.19;

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;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

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

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"marketingAddress","type":"address"},{"internalType":"address","name":"utilityAddress","type":"address"},{"internalType":"address","name":"dexAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"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":"tokensIntoLiquidity","type":"uint256"}],"name":"SwapAndLiquify","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":"addrwal","type":"address"}],"name":"LPReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addrwal","type":"address"}],"name":"MarketingReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"SecondLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"BLP","type":"uint256"},{"internalType":"uint256","name":"BMarketing","type":"uint256"},{"internalType":"uint256","name":"BUtility","type":"uint256"},{"internalType":"uint256","name":"SLP","type":"uint256"},{"internalType":"uint256","name":"SMarketing","type":"uint256"},{"internalType":"uint256","name":"SUtility","type":"uint256"}],"name":"TaxRedistribution","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addrwal","type":"address"}],"name":"UtilityReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_mxTxAmt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_mxWalAmt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"allowance","outputs":[],"stateMutability":"nonpayable","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":"buyTaxSetting","outputs":[{"internalType":"uint256","name":"liquidity","type":"uint256"},{"internalType":"uint256","name":"marketing","type":"uint256"},{"internalType":"uint256","name":"utility","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":"distrSetting","outputs":[{"internalType":"uint256","name":"tokenToLiquidity","type":"uint256"},{"internalType":"uint256","name":"tokenToMarketing","type":"uint256"},{"internalType":"uint256","name":"tokenToutility","type":"uint256"},{"internalType":"uint256","name":"liquidityToken","type":"uint256"},{"internalType":"uint256","name":"liquidityETH","type":"uint256"},{"internalType":"uint256","name":"marketingETH","type":"uint256"},{"internalType":"uint256","name":"utilityETH","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dynamicSwapAmount","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"},{"internalType":"uint256","name":"swapAtAmount","type":"uint256"},{"internalType":"bool","name":"dynamicSwap","type":"bool"}],"name":"enableSwapBack","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"getLiquidityBacking","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"target","type":"uint256"},{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"isOverLiquified","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lPsettings","outputs":[{"internalType":"uint256","name":"targetLiquidity","type":"uint256"},{"internalType":"uint256","name":"currentLiquidity","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limitsIsActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeAllLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTaxSetting","outputs":[{"internalType":"uint256","name":"liquidity","type":"uint256"},{"internalType":"uint256","name":"marketing","type":"uint256"},{"internalType":"uint256","name":"utility","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTokenAtAmount","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":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amt","type":"uint256"}],"name":"triggerForceSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"eAmt","type":"uint256"}],"name":"triggerLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_txAmt","type":"uint256"}],"name":"triggerTXAmt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"Amt","type":"uint256"}],"name":"triggerWalletAmt","outputs":[],"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"},{"inputs":[],"name":"utilityWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenContract","type":"address"}],"name":"withdrawForeignToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052683635c9adc5dea000006007556801a055690d9db800006008819055600955600a805460ff1990811660019081179092556801158e460913d00000600b55600c8054909116909117905560c8600d556064600e556011805460ff60a01b1916600160a01b1790553480156200007857600080fd5b5060405162002a0038038062002a008339810160408190526200009b91620003ec565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601080546001600160a01b038086166001600160a01b03199283161790925560118054858416908316179055600f80548216339081179091556007546000918252600460208181526040808520939093556001805496881696909516959095179093556012829055600a60135560148290556015829055601e6016556017829055805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d949293859363c45a015593808301939192908290030181865afa158015620001ac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001d2919062000436565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000220573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000246919062000436565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000294573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ba919062000436565b600280546001600160a01b038086166001600160a01b03199283161790925560038054838516921691909117905533600081815260066020526040808220805460ff1990811660019081179092556011549095168352818320805486168217905530835281832080548616821790557f54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8805486168217905561dead83527f1aecba4ebe7a4e0673e4891b2b092b2228e4322380b579fb494fad3da8586e228054909516179093556007549251939450909290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91620003bc91815260200190565b60405180910390a350505050506200045b565b80516001600160a01b0381168114620003e757600080fd5b919050565b6000806000606084860312156200040257600080fd5b6200040d84620003cf565b92506200041d60208501620003cf565b91506200042d60408501620003cf565b90509250925092565b6000602082840312156200044957600080fd5b6200045482620003cf565b9392505050565b612595806200046b6000396000f3fe60806040526004361061028c5760003560e01c8063715018a61161015a578063c0246668116100c1578063db05e5cb1161007a578063db05e5cb14610851578063dd62ed3e14610866578063ddc6a171146108ac578063f1e55257146108cc578063f2fde38b146108ed578063fa482b4f1461090d57600080fd5b8063c02466681461079b578063c6077c2b146107bb578063cb76c775146107db578063d51ed1c8146107fb578063d9497e251461081b578063db0199131461083157600080fd5b806395d89b411161011357806395d89b4114610690578063a457c2d7146106bd578063a9059cbb146106dd578063acc6bc72146106fd578063bf4cc52b14610717578063bfa846ed1461073757600080fd5b8063715018a6146105de57806375f0a874146105f35780637700cbf11461061357806382f5c26b14610632578063885a4cd0146106525780638da5cb5b1461067257600080fd5b8063264d26dd116101fe57806348914217116101b7578063489142171461050b57806349bd5a5e1461052b5780634b5cc1f31461054b5780635342acb41461056b5780636ddd1713146105a457806370a08231146105be57600080fd5b8063264d26dd1461045a5780632b112e491461047a578063313ce5671461048f57806339509351146104ab578063454543af146104cb57806347294b85146104eb57600080fd5b80631694505e116102505780631694505e1461036157806318160ddd146103995780631b58f613146103ae5780631c36e9a3146103de578063223864311461040057806323b872dd1461043a57600080fd5b806301515d8a1461029857806303e403b0146102c157806306fdde03146102d7578063095ea7b3146103115780631161ae391461034157600080fd5b3661029357005b600080fd5b3480156102a457600080fd5b506102ae60085481565b6040519081526020015b60405180910390f35b3480156102cd57600080fd5b506102ae600b5481565b3480156102e357600080fd5b506040805180820190915260088152674772616e5065706560c01b60208201525b6040516102b891906120b3565b34801561031d57600080fd5b5061033161032c366004612116565b61092d565b60405190151581526020016102b8565b34801561034d57600080fd5b5061033161035c366004612142565b610944565b34801561036d57600080fd5b50600254610381906001600160a01b031681565b6040516001600160a01b0390911681526020016102b8565b3480156103a557600080fd5b506007546102ae565b3480156103ba57600080fd5b50601f546020546103c9919082565b604080519283526020830191909152016102b8565b3480156103ea57600080fd5b506103fe6103f9366004612164565b610958565b005b34801561040c57600080fd5b5060125460135460145461041f92919083565b604080519384526020840192909252908201526060016102b8565b34801561044657600080fd5b506103316104553660046121a7565b610a9d565b34801561046657600080fd5b50600f54610381906001600160a01b031681565b34801561048657600080fd5b506102ae610aef565b34801561049b57600080fd5b50604051600981526020016102b8565b3480156104b757600080fd5b506103316104c6366004612116565b610b20565b3480156104d757600080fd5b506103fe6104e63660046121e8565b610b57565b3480156104f757600080fd5b506103fe610506366004612205565b610ba3565b34801561051757600080fd5b506103fe610526366004612205565b610c3c565b34801561053757600080fd5b50600354610381906001600160a01b031681565b34801561055757600080fd5b506103fe610566366004612205565b610c72565b34801561057757600080fd5b506103316105863660046121e8565b6001600160a01b031660009081526006602052604090205460ff1690565b3480156105b057600080fd5b50600a546103319060ff1681565b3480156105ca57600080fd5b506102ae6105d93660046121e8565b610d0f565b3480156105ea57600080fd5b506103fe610d2a565b3480156105ff57600080fd5b50601054610381906001600160a01b031681565b34801561061f57600080fd5b5060155460165460175461041f92919083565b34801561063e57600080fd5b506103fe61064d3660046121e8565b610d9e565b34801561065e57600080fd5b506103fe61066d3660046121e8565b610dea565b34801561067e57600080fd5b506000546001600160a01b0316610381565b34801561069c57600080fd5b506040805180820190915260048152634745504560e01b6020820152610304565b3480156106c957600080fd5b506103316106d8366004612116565b610ef9565b3480156106e957600080fd5b506103316106f8366004612116565b610f30565b34801561070957600080fd5b50600c546103319060ff1681565b34801561072357600080fd5b50601154610381906001600160a01b031681565b34801561074357600080fd5b50601854601954601a54601b54601c54601d54601e546107669695949392919087565b604080519788526020880196909652948601939093526060850191909152608084015260a083015260c082015260e0016102b8565b3480156107a757600080fd5b506103fe6107b636600461222c565b610f3d565b3480156107c757600080fd5b506103fe6107d6366004612265565b610f92565b3480156107e757600080fd5b506103fe6107f6366004612205565b61105c565b34801561080757600080fd5b506102ae610816366004612205565b6110d0565b34801561082757600080fd5b506102ae60095481565b34801561083d57600080fd5b506103fe61084c366004612205565b611110565b34801561085d57600080fd5b506103fe6111ba565b34801561087257600080fd5b506102ae6108813660046122a7565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b3480156108b857600080fd5b506103fe6108c7366004612116565b6111f3565b3480156108d857600080fd5b5060115461033190600160a01b900460ff1681565b3480156108f957600080fd5b506103fe6109083660046121e8565b611239565b34801561091957600080fd5b506103fe6109283660046121e8565b611323565b600061093a33848461136f565b5060015b92915050565b600082610950836110d0565b119392505050565b6000546001600160a01b0316331461098b5760405162461bcd60e51b8152600401610982906122d5565b60405180910390fd5b6019846109988789612320565b6109a29190612320565b1115610a055760405162461bcd60e51b815260206004820152602c60248201527f546f74616c20627579206665652063616e6e6f7420626520736574206869676860448201526b32b9103a3430b710191a929760a11b6064820152608401610982565b601981610a128486612320565b610a1c9190612320565b1115610a805760405162461bcd60e51b815260206004820152602d60248201527f546f74616c2073656c6c206665652063616e6e6f74206265207365742068696760448201526c3432b9103a3430b710191a929760991b6064820152608401610982565b601295909555601393909355601491909155601555601655601755565b6000610aaa848484611493565b6001600160a01b038416600090815260056020908152604080832033808552925290912054610ae5918691610ae0908690612333565b61136f565b5060019392505050565b6000610b1b610aff61dead610d0f565b610b15610b0c6000610d0f565b600754906118ea565b906118ea565b905090565b3360008181526005602090815260408083206001600160a01b0387168452909152812054909161093a918590610ae0908690612320565b6000546001600160a01b03163314610b815760405162461bcd60e51b8152600401610982906122d5565b601180546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610bcd5760405162461bcd60e51b8152600401610982906122d5565b640ba43b7400811015610bf25760405162461bcd60e51b815260040161098290612346565b640ba43b7400811015610c175760405162461bcd60e51b815260040161098290612346565b610c2581633b9aca00612392565b600955610c3681633b9aca00612392565b60085550565b6000546001600160a01b03163314610c665760405162461bcd60e51b8152600401610982906122d5565b610c6f81611933565b50565b6000546001600160a01b03163314610c9c5760405162461bcd60e51b8152600401610982906122d5565b6402540be400811015610d015760405162461bcd60e51b815260206004820152602760248201527f4d61782057616c6c65742063616e6e6f7420626520736574206c6f77657220746044820152663430b71018929760c91b6064820152608401610982565b610c3681633b9aca00612392565b6001600160a01b031660009081526004602052604090205490565b6000546001600160a01b03163314610d545760405162461bcd60e51b8152600401610982906122d5565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610dc85760405162461bcd60e51b8152600401610982906122d5565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610e145760405162461bcd60e51b8152600401610982906122d5565b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610e62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8691906123a9565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610ed1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ef591906123c2565b5050565b3360008181526005602090815260408083206001600160a01b0387168452909152812054909161093a918590610ae0908690612333565b600061093a338484611493565b6000546001600160a01b03163314610f675760405162461bcd60e51b8152600401610982906122d5565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610fbc5760405162461bcd60e51b8152600401610982906122d5565b63ee6b28008211156110285760405162461bcd60e51b815260206004820152602f60248201527f53776170546f6b656e4174416d6f756e742063616e6e6f74206265207365742060448201526e3434b3b432b9103a3430b7101a129760891b6064820152608401610982565b600a805460ff191684151517905561104482633b9aca00612392565b600b55600c805460ff19169115159190911790555050565b6000546001600160a01b031633146110865760405162461bcd60e51b8152600401610982906122d5565b6404a817c8008110156110ab5760405162461bcd60e51b815260040161098290612346565b6404a817c800811015610c175760405162461bcd60e51b815260040161098290612346565b600061093e6110dd610aef565b60035461110a90611103906002906110fd906001600160a01b0316610d0f565b90611c5f565b8590611c5f565b90611ce1565b6000546001600160a01b0316331461113a5760405162461bcd60e51b8152600401610982906122d5565b6402540be4008110156111a65760405162461bcd60e51b815260206004820152602e60248201527f4d6178205472616e73616374696f6e2063616e6e6f7420626520736574206c6f60448201526d3bb2b9103a3430b71018171a929760911b6064820152608401610982565b6111b481633b9aca00612392565b60095550565b6000546001600160a01b031633146111e45760405162461bcd60e51b8152600401610982906122d5565b6011805460ff60a01b19169055565b6001546001600160a01b0316331461121d5760405162461bcd60e51b8152600401610982906122d5565b6001600160a01b03909116600090815260046020526040902055565b6000546001600160a01b031633146112635760405162461bcd60e51b8152600401610982906122d5565b6001600160a01b0381166112c85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610982565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b0316331461134d5760405162461bcd60e51b8152600401610982906122d5565b601080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166113d15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610982565b6001600160a01b0382166114325760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610982565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166114f75760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610982565b6001600160a01b0382166115595760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610982565b600081116115bb5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610982565b6001600160a01b038316600090815260046020526040812080548392906115e3908490612333565b90915550506001600160a01b03831660009081526006602052604081205482919060ff1615801561162d57506001600160a01b03841660009081526006602052604090205460ff16155b15611636575060015b8015611867576003546001600160a01b0385811691161480159061166757506003546001600160a01b038681169116145b156116e257601154600160a01b900460ff16156116d5576009548311156116a05760405162461bcd60e51b8152600401610982906123df565b600854836116ad86610d0f565b6116b79190612320565b11156116d55760405162461bcd60e51b815260040161098290612428565b6116df8385611d23565b91505b6003546001600160a01b0386811691161480159061170d57506003546001600160a01b038581169116145b156117cd57601154600160a01b900460ff1615611746576009548311156117465760405162461bcd60e51b8152600401610982906123df565b6117508386611d23565b600a5490925060ff16801561176f5750600b5461176c30610d0f565b10155b801561177e575060215460ff16155b156117cd576021805460ff19166001179055600c5460ff1615806117a45750600b548210155b156117b9576117b4600b54611933565b6117c2565b6117c282611933565b6021805460ff191690555b6003546001600160a01b038581169116148015906117f957506003546001600160a01b03868116911614155b1561186757601154600160a01b900460ff1615611867576009548311156118325760405162461bcd60e51b8152600401610982906123df565b6008548361183f86610d0f565b6118499190612320565b11156118675760405162461bcd60e51b815260040161098290612428565b6001600160a01b0384166000908152600460205260408120805484929061188f908490612320565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516118db91815260200190565b60405180910390a35050505050565b600061192c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611e3d565b9392505050565b60008190506000611948600d54600e54610944565b6119615760155460125461195c9190612320565b611964565b60005b6017546014546016546013549394506000936119809086612320565b61198a9190612320565b6119949190612320565b61199e9190612320565b6119a88385612392565b6119b2919061246b565b6017546014546016546013549394506000936119ce9087612320565b6119d89190612320565b6119e29190612320565b6119ec9190612320565b6016546013546119fc9190612320565b611a069086612392565b611a10919061246b565b601754601454601654601354939450600093611a2c9088612320565b611a369190612320565b611a409190612320565b611a4a9190612320565b601754601454611a5a9190612320565b611a649087612392565b611a6e919061246b565b90508260186000016000828254611a859190612320565b909155505060198054839190600090611a9f908490612320565b9091555050601a8054829190600090611ab9908490612320565b909155506000905081611acc8486612320565b611ad69190612320565b90506000611ae5856002611ce1565b90508060186003016000828254611afc9190612320565b9091555060009050611b0e88836118ea565b905047611b1a82611e77565b6000611b2647836118ea565b90506000611b388661110a848c611c5f565b90506000611b4a8761110a858b611c5f565b90508160186004016000828254611b619190612320565b9091555050601e8054829190600090611b7b908490612320565b90915550611b8b90508683611fd1565b4760186005016000828254611ba09190612320565b90915550506011546040516000916001600160a01b03169083908381818185875af1925050503d8060008114611bf2576040519150601f19603f3d011682016040523d82523d6000602084013e611bf7565b606091505b50506010546040519192506001600160a01b0316904790600081818185875af1925050503d8060008114611c47576040519150601f19603f3d011682016040523d82523d6000602084013e611c4c565b606091505b5050505050505050505050505050505050565b600082600003611c715750600061093e565b6000611c7d8385612392565b905082611c8a858361246b565b1461192c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610982565b600061192c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612085565b600080606460126000015485611d399190612392565b611d43919061246b565b90506000606460126001015486611d5a9190612392565b611d64919061246b565b90506000606460126002015487611d7b9190612392565b611d85919061246b565b905080611d928385612320565b611d9c9190612320565b3060009081526004602052604081208054909190611dbb908490612320565b909155503090506001600160a01b0386167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83611df88787612320565b611e029190612320565b60405190815260200160405180910390a38082611e1f8589612333565b611e299190612333565b611e339190612333565b9695505050505050565b60008184841115611e615760405162461bcd60e51b815260040161098291906120b3565b506000611e6e8486612333565b95945050505050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611eac57611eac61248d565b6001600160a01b03928316602091820292909201810191909152600254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611f05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f2991906124a3565b81600181518110611f3c57611f3c61248d565b6001600160a01b039283166020918202929092010152600254611f62913091168461136f565b60025460405163791ac94760e01b81526001600160a01b039091169063791ac94790611f9b9085906000908690309042906004016124c0565b600060405180830381600087803b158015611fb557600080fd5b505af1158015611fc9573d6000803e3d6000fd5b505050505050565b600254611fe99030906001600160a01b03168461136f565b600254600f5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015612059573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061207e9190612531565b5050505050565b600081836120a65760405162461bcd60e51b815260040161098291906120b3565b506000611e6e848661246b565b600060208083528351808285015260005b818110156120e0578581018301518582016040015282016120c4565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610c6f57600080fd5b6000806040838503121561212957600080fd5b823561213481612101565b946020939093013593505050565b6000806040838503121561215557600080fd5b50508035926020909101359150565b60008060008060008060c0878903121561217d57600080fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b6000806000606084860312156121bc57600080fd5b83356121c781612101565b925060208401356121d781612101565b929592945050506040919091013590565b6000602082840312156121fa57600080fd5b813561192c81612101565b60006020828403121561221757600080fd5b5035919050565b8015158114610c6f57600080fd5b6000806040838503121561223f57600080fd5b823561224a81612101565b9150602083013561225a8161221e565b809150509250929050565b60008060006060848603121561227a57600080fd5b83356122858161221e565b925060208401359150604084013561229c8161221e565b809150509250925092565b600080604083850312156122ba57600080fd5b82356122c581612101565b9150602083013561225a81612101565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561093e5761093e61230a565b8181038181111561093e5761093e61230a565b6020808252602c908201527f4d6178205472616e73616374696f6e2063616e6e6f7420626520736574206c6f60408201526b3bb2b9103a3430b71019129760a11b606082015260800190565b808202811582820484141761093e5761093e61230a565b6000602082840312156123bb57600080fd5b5051919050565b6000602082840312156123d457600080fd5b815161192c8161221e565b60208082526029908201527f5472616e7366657220416d6f756e74206578636565647320746865206d6178546040820152681e1b9cd05b5bdd5b9d60ba1b606082015260800190565b60208082526023908201527f5472616e7366657220616d6f756e742065786365656473207468652077616c4160408201526236ba1760e91b606082015260800190565b60008261248857634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156124b557600080fd5b815161192c81612101565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156125105784516001600160a01b0316835293830193918301916001016124eb565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561254657600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220c7b15858fd736c88f2e67fb1ed05fd1981683fff6b7b24d40cbb0ead300e526e64736f6c63430008130033000000000000000000000000afd0e2c581319ba52e587505700f9aa056bea1f2000000000000000000000000afd0e2c581319ba52e587505700f9aa056bea1f20000000000000000000000006ad67c75df36d797f2052db5d7d5fadce7a91819

Deployed Bytecode

0x60806040526004361061028c5760003560e01c8063715018a61161015a578063c0246668116100c1578063db05e5cb1161007a578063db05e5cb14610851578063dd62ed3e14610866578063ddc6a171146108ac578063f1e55257146108cc578063f2fde38b146108ed578063fa482b4f1461090d57600080fd5b8063c02466681461079b578063c6077c2b146107bb578063cb76c775146107db578063d51ed1c8146107fb578063d9497e251461081b578063db0199131461083157600080fd5b806395d89b411161011357806395d89b4114610690578063a457c2d7146106bd578063a9059cbb146106dd578063acc6bc72146106fd578063bf4cc52b14610717578063bfa846ed1461073757600080fd5b8063715018a6146105de57806375f0a874146105f35780637700cbf11461061357806382f5c26b14610632578063885a4cd0146106525780638da5cb5b1461067257600080fd5b8063264d26dd116101fe57806348914217116101b7578063489142171461050b57806349bd5a5e1461052b5780634b5cc1f31461054b5780635342acb41461056b5780636ddd1713146105a457806370a08231146105be57600080fd5b8063264d26dd1461045a5780632b112e491461047a578063313ce5671461048f57806339509351146104ab578063454543af146104cb57806347294b85146104eb57600080fd5b80631694505e116102505780631694505e1461036157806318160ddd146103995780631b58f613146103ae5780631c36e9a3146103de578063223864311461040057806323b872dd1461043a57600080fd5b806301515d8a1461029857806303e403b0146102c157806306fdde03146102d7578063095ea7b3146103115780631161ae391461034157600080fd5b3661029357005b600080fd5b3480156102a457600080fd5b506102ae60085481565b6040519081526020015b60405180910390f35b3480156102cd57600080fd5b506102ae600b5481565b3480156102e357600080fd5b506040805180820190915260088152674772616e5065706560c01b60208201525b6040516102b891906120b3565b34801561031d57600080fd5b5061033161032c366004612116565b61092d565b60405190151581526020016102b8565b34801561034d57600080fd5b5061033161035c366004612142565b610944565b34801561036d57600080fd5b50600254610381906001600160a01b031681565b6040516001600160a01b0390911681526020016102b8565b3480156103a557600080fd5b506007546102ae565b3480156103ba57600080fd5b50601f546020546103c9919082565b604080519283526020830191909152016102b8565b3480156103ea57600080fd5b506103fe6103f9366004612164565b610958565b005b34801561040c57600080fd5b5060125460135460145461041f92919083565b604080519384526020840192909252908201526060016102b8565b34801561044657600080fd5b506103316104553660046121a7565b610a9d565b34801561046657600080fd5b50600f54610381906001600160a01b031681565b34801561048657600080fd5b506102ae610aef565b34801561049b57600080fd5b50604051600981526020016102b8565b3480156104b757600080fd5b506103316104c6366004612116565b610b20565b3480156104d757600080fd5b506103fe6104e63660046121e8565b610b57565b3480156104f757600080fd5b506103fe610506366004612205565b610ba3565b34801561051757600080fd5b506103fe610526366004612205565b610c3c565b34801561053757600080fd5b50600354610381906001600160a01b031681565b34801561055757600080fd5b506103fe610566366004612205565b610c72565b34801561057757600080fd5b506103316105863660046121e8565b6001600160a01b031660009081526006602052604090205460ff1690565b3480156105b057600080fd5b50600a546103319060ff1681565b3480156105ca57600080fd5b506102ae6105d93660046121e8565b610d0f565b3480156105ea57600080fd5b506103fe610d2a565b3480156105ff57600080fd5b50601054610381906001600160a01b031681565b34801561061f57600080fd5b5060155460165460175461041f92919083565b34801561063e57600080fd5b506103fe61064d3660046121e8565b610d9e565b34801561065e57600080fd5b506103fe61066d3660046121e8565b610dea565b34801561067e57600080fd5b506000546001600160a01b0316610381565b34801561069c57600080fd5b506040805180820190915260048152634745504560e01b6020820152610304565b3480156106c957600080fd5b506103316106d8366004612116565b610ef9565b3480156106e957600080fd5b506103316106f8366004612116565b610f30565b34801561070957600080fd5b50600c546103319060ff1681565b34801561072357600080fd5b50601154610381906001600160a01b031681565b34801561074357600080fd5b50601854601954601a54601b54601c54601d54601e546107669695949392919087565b604080519788526020880196909652948601939093526060850191909152608084015260a083015260c082015260e0016102b8565b3480156107a757600080fd5b506103fe6107b636600461222c565b610f3d565b3480156107c757600080fd5b506103fe6107d6366004612265565b610f92565b3480156107e757600080fd5b506103fe6107f6366004612205565b61105c565b34801561080757600080fd5b506102ae610816366004612205565b6110d0565b34801561082757600080fd5b506102ae60095481565b34801561083d57600080fd5b506103fe61084c366004612205565b611110565b34801561085d57600080fd5b506103fe6111ba565b34801561087257600080fd5b506102ae6108813660046122a7565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b3480156108b857600080fd5b506103fe6108c7366004612116565b6111f3565b3480156108d857600080fd5b5060115461033190600160a01b900460ff1681565b3480156108f957600080fd5b506103fe6109083660046121e8565b611239565b34801561091957600080fd5b506103fe6109283660046121e8565b611323565b600061093a33848461136f565b5060015b92915050565b600082610950836110d0565b119392505050565b6000546001600160a01b0316331461098b5760405162461bcd60e51b8152600401610982906122d5565b60405180910390fd5b6019846109988789612320565b6109a29190612320565b1115610a055760405162461bcd60e51b815260206004820152602c60248201527f546f74616c20627579206665652063616e6e6f7420626520736574206869676860448201526b32b9103a3430b710191a929760a11b6064820152608401610982565b601981610a128486612320565b610a1c9190612320565b1115610a805760405162461bcd60e51b815260206004820152602d60248201527f546f74616c2073656c6c206665652063616e6e6f74206265207365742068696760448201526c3432b9103a3430b710191a929760991b6064820152608401610982565b601295909555601393909355601491909155601555601655601755565b6000610aaa848484611493565b6001600160a01b038416600090815260056020908152604080832033808552925290912054610ae5918691610ae0908690612333565b61136f565b5060019392505050565b6000610b1b610aff61dead610d0f565b610b15610b0c6000610d0f565b600754906118ea565b906118ea565b905090565b3360008181526005602090815260408083206001600160a01b0387168452909152812054909161093a918590610ae0908690612320565b6000546001600160a01b03163314610b815760405162461bcd60e51b8152600401610982906122d5565b601180546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610bcd5760405162461bcd60e51b8152600401610982906122d5565b640ba43b7400811015610bf25760405162461bcd60e51b815260040161098290612346565b640ba43b7400811015610c175760405162461bcd60e51b815260040161098290612346565b610c2581633b9aca00612392565b600955610c3681633b9aca00612392565b60085550565b6000546001600160a01b03163314610c665760405162461bcd60e51b8152600401610982906122d5565b610c6f81611933565b50565b6000546001600160a01b03163314610c9c5760405162461bcd60e51b8152600401610982906122d5565b6402540be400811015610d015760405162461bcd60e51b815260206004820152602760248201527f4d61782057616c6c65742063616e6e6f7420626520736574206c6f77657220746044820152663430b71018929760c91b6064820152608401610982565b610c3681633b9aca00612392565b6001600160a01b031660009081526004602052604090205490565b6000546001600160a01b03163314610d545760405162461bcd60e51b8152600401610982906122d5565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610dc85760405162461bcd60e51b8152600401610982906122d5565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610e145760405162461bcd60e51b8152600401610982906122d5565b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610e62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8691906123a9565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610ed1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ef591906123c2565b5050565b3360008181526005602090815260408083206001600160a01b0387168452909152812054909161093a918590610ae0908690612333565b600061093a338484611493565b6000546001600160a01b03163314610f675760405162461bcd60e51b8152600401610982906122d5565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610fbc5760405162461bcd60e51b8152600401610982906122d5565b63ee6b28008211156110285760405162461bcd60e51b815260206004820152602f60248201527f53776170546f6b656e4174416d6f756e742063616e6e6f74206265207365742060448201526e3434b3b432b9103a3430b7101a129760891b6064820152608401610982565b600a805460ff191684151517905561104482633b9aca00612392565b600b55600c805460ff19169115159190911790555050565b6000546001600160a01b031633146110865760405162461bcd60e51b8152600401610982906122d5565b6404a817c8008110156110ab5760405162461bcd60e51b815260040161098290612346565b6404a817c800811015610c175760405162461bcd60e51b815260040161098290612346565b600061093e6110dd610aef565b60035461110a90611103906002906110fd906001600160a01b0316610d0f565b90611c5f565b8590611c5f565b90611ce1565b6000546001600160a01b0316331461113a5760405162461bcd60e51b8152600401610982906122d5565b6402540be4008110156111a65760405162461bcd60e51b815260206004820152602e60248201527f4d6178205472616e73616374696f6e2063616e6e6f7420626520736574206c6f60448201526d3bb2b9103a3430b71018171a929760911b6064820152608401610982565b6111b481633b9aca00612392565b60095550565b6000546001600160a01b031633146111e45760405162461bcd60e51b8152600401610982906122d5565b6011805460ff60a01b19169055565b6001546001600160a01b0316331461121d5760405162461bcd60e51b8152600401610982906122d5565b6001600160a01b03909116600090815260046020526040902055565b6000546001600160a01b031633146112635760405162461bcd60e51b8152600401610982906122d5565b6001600160a01b0381166112c85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610982565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b0316331461134d5760405162461bcd60e51b8152600401610982906122d5565b601080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166113d15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610982565b6001600160a01b0382166114325760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610982565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166114f75760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610982565b6001600160a01b0382166115595760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610982565b600081116115bb5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610982565b6001600160a01b038316600090815260046020526040812080548392906115e3908490612333565b90915550506001600160a01b03831660009081526006602052604081205482919060ff1615801561162d57506001600160a01b03841660009081526006602052604090205460ff16155b15611636575060015b8015611867576003546001600160a01b0385811691161480159061166757506003546001600160a01b038681169116145b156116e257601154600160a01b900460ff16156116d5576009548311156116a05760405162461bcd60e51b8152600401610982906123df565b600854836116ad86610d0f565b6116b79190612320565b11156116d55760405162461bcd60e51b815260040161098290612428565b6116df8385611d23565b91505b6003546001600160a01b0386811691161480159061170d57506003546001600160a01b038581169116145b156117cd57601154600160a01b900460ff1615611746576009548311156117465760405162461bcd60e51b8152600401610982906123df565b6117508386611d23565b600a5490925060ff16801561176f5750600b5461176c30610d0f565b10155b801561177e575060215460ff16155b156117cd576021805460ff19166001179055600c5460ff1615806117a45750600b548210155b156117b9576117b4600b54611933565b6117c2565b6117c282611933565b6021805460ff191690555b6003546001600160a01b038581169116148015906117f957506003546001600160a01b03868116911614155b1561186757601154600160a01b900460ff1615611867576009548311156118325760405162461bcd60e51b8152600401610982906123df565b6008548361183f86610d0f565b6118499190612320565b11156118675760405162461bcd60e51b815260040161098290612428565b6001600160a01b0384166000908152600460205260408120805484929061188f908490612320565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516118db91815260200190565b60405180910390a35050505050565b600061192c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611e3d565b9392505050565b60008190506000611948600d54600e54610944565b6119615760155460125461195c9190612320565b611964565b60005b6017546014546016546013549394506000936119809086612320565b61198a9190612320565b6119949190612320565b61199e9190612320565b6119a88385612392565b6119b2919061246b565b6017546014546016546013549394506000936119ce9087612320565b6119d89190612320565b6119e29190612320565b6119ec9190612320565b6016546013546119fc9190612320565b611a069086612392565b611a10919061246b565b601754601454601654601354939450600093611a2c9088612320565b611a369190612320565b611a409190612320565b611a4a9190612320565b601754601454611a5a9190612320565b611a649087612392565b611a6e919061246b565b90508260186000016000828254611a859190612320565b909155505060198054839190600090611a9f908490612320565b9091555050601a8054829190600090611ab9908490612320565b909155506000905081611acc8486612320565b611ad69190612320565b90506000611ae5856002611ce1565b90508060186003016000828254611afc9190612320565b9091555060009050611b0e88836118ea565b905047611b1a82611e77565b6000611b2647836118ea565b90506000611b388661110a848c611c5f565b90506000611b4a8761110a858b611c5f565b90508160186004016000828254611b619190612320565b9091555050601e8054829190600090611b7b908490612320565b90915550611b8b90508683611fd1565b4760186005016000828254611ba09190612320565b90915550506011546040516000916001600160a01b03169083908381818185875af1925050503d8060008114611bf2576040519150601f19603f3d011682016040523d82523d6000602084013e611bf7565b606091505b50506010546040519192506001600160a01b0316904790600081818185875af1925050503d8060008114611c47576040519150601f19603f3d011682016040523d82523d6000602084013e611c4c565b606091505b5050505050505050505050505050505050565b600082600003611c715750600061093e565b6000611c7d8385612392565b905082611c8a858361246b565b1461192c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610982565b600061192c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612085565b600080606460126000015485611d399190612392565b611d43919061246b565b90506000606460126001015486611d5a9190612392565b611d64919061246b565b90506000606460126002015487611d7b9190612392565b611d85919061246b565b905080611d928385612320565b611d9c9190612320565b3060009081526004602052604081208054909190611dbb908490612320565b909155503090506001600160a01b0386167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83611df88787612320565b611e029190612320565b60405190815260200160405180910390a38082611e1f8589612333565b611e299190612333565b611e339190612333565b9695505050505050565b60008184841115611e615760405162461bcd60e51b815260040161098291906120b3565b506000611e6e8486612333565b95945050505050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611eac57611eac61248d565b6001600160a01b03928316602091820292909201810191909152600254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611f05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f2991906124a3565b81600181518110611f3c57611f3c61248d565b6001600160a01b039283166020918202929092010152600254611f62913091168461136f565b60025460405163791ac94760e01b81526001600160a01b039091169063791ac94790611f9b9085906000908690309042906004016124c0565b600060405180830381600087803b158015611fb557600080fd5b505af1158015611fc9573d6000803e3d6000fd5b505050505050565b600254611fe99030906001600160a01b03168461136f565b600254600f5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015612059573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061207e9190612531565b5050505050565b600081836120a65760405162461bcd60e51b815260040161098291906120b3565b506000611e6e848661246b565b600060208083528351808285015260005b818110156120e0578581018301518582016040015282016120c4565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610c6f57600080fd5b6000806040838503121561212957600080fd5b823561213481612101565b946020939093013593505050565b6000806040838503121561215557600080fd5b50508035926020909101359150565b60008060008060008060c0878903121561217d57600080fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b6000806000606084860312156121bc57600080fd5b83356121c781612101565b925060208401356121d781612101565b929592945050506040919091013590565b6000602082840312156121fa57600080fd5b813561192c81612101565b60006020828403121561221757600080fd5b5035919050565b8015158114610c6f57600080fd5b6000806040838503121561223f57600080fd5b823561224a81612101565b9150602083013561225a8161221e565b809150509250929050565b60008060006060848603121561227a57600080fd5b83356122858161221e565b925060208401359150604084013561229c8161221e565b809150509250925092565b600080604083850312156122ba57600080fd5b82356122c581612101565b9150602083013561225a81612101565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561093e5761093e61230a565b8181038181111561093e5761093e61230a565b6020808252602c908201527f4d6178205472616e73616374696f6e2063616e6e6f7420626520736574206c6f60408201526b3bb2b9103a3430b71019129760a11b606082015260800190565b808202811582820484141761093e5761093e61230a565b6000602082840312156123bb57600080fd5b5051919050565b6000602082840312156123d457600080fd5b815161192c8161221e565b60208082526029908201527f5472616e7366657220416d6f756e74206578636565647320746865206d6178546040820152681e1b9cd05b5bdd5b9d60ba1b606082015260800190565b60208082526023908201527f5472616e7366657220616d6f756e742065786365656473207468652077616c4160408201526236ba1760e91b606082015260800190565b60008261248857634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156124b557600080fd5b815161192c81612101565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156125105784516001600160a01b0316835293830193918301916001016124eb565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561254657600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220c7b15858fd736c88f2e67fb1ed05fd1981683fff6b7b24d40cbb0ead300e526e64736f6c63430008130033

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

000000000000000000000000afd0e2c581319ba52e587505700f9aa056bea1f2000000000000000000000000afd0e2c581319ba52e587505700f9aa056bea1f20000000000000000000000006ad67c75df36d797f2052db5d7d5fadce7a91819

-----Decoded View---------------
Arg [0] : marketingAddress (address): 0xAFD0E2C581319bA52E587505700F9AA056bea1f2
Arg [1] : utilityAddress (address): 0xAFD0E2C581319bA52E587505700F9AA056bea1f2
Arg [2] : dexAddress (address): 0x6aD67c75dF36D797F2052DB5D7D5fAdCE7A91819

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000afd0e2c581319ba52e587505700f9aa056bea1f2
Arg [1] : 000000000000000000000000afd0e2c581319ba52e587505700f9aa056bea1f2
Arg [2] : 0000000000000000000000006ad67c75df36d797f2052db5d7d5fadce7a91819


Deployed Bytecode Sourcemap

239:15040:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;798:46;;;;;;;;;;;;;;;;;;;160:25:7;;;148:2;133:18;798:46:6;;;;;;;;942:54;;;;;;;;;;;;;;;;3384:83;;;;;;;;;;-1:-1:-1;3454:5:6;;;;;;;;;;;;-1:-1:-1;;;3454:5:6;;;;3384:83;;;;;;;:::i;4216:161::-;;;;;;;;;;-1:-1:-1;4216:161:6;;;;;:::i;:::-;;:::i;:::-;;;1370:14:7;;1363:22;1345:41;;1333:2;1318:18;4216:161:6;1205:187:7;5629:150:6;;;;;;;;;;-1:-1:-1;5629:150:6;;;;;:::i;:::-;;:::i;321:41::-;;;;;;;;;;-1:-1:-1;321:41:6;;;;-1:-1:-1;;;;;321:41:6;;;;;;-1:-1:-1;;;;;1840:32:7;;;1822:51;;1810:2;1795:18;321:41:6;1650:229:7;3661:95:6;;;;;;;;;;-1:-1:-1;3741:7:6;;3661:95;;1988:28;;;;;;;;;;-1:-1:-1;1988:28:6;;;;;;;;;;;;;2058:25:7;;;2114:2;2099:18;;2092:34;;;;2031:18;1988:28:6;1884:248:7;6017:623:6;;;;;;;;;;-1:-1:-1;6017:623:6;;;;;:::i;:::-;;:::i;:::-;;1879:28;;;;;;;;;;-1:-1:-1;1879:28:6;;;;;;;;;;;;;;;;2867:25:7;;;2923:2;2908:18;;2901:34;;;;2951:18;;;2944:34;2855:2;2840:18;1879:28:6;2665:319:7;4385:266:6;;;;;;;;;;-1:-1:-1;4385:266:6;;;;;:::i;:::-;;:::i;1137:32::-;;;;;;;;;;-1:-1:-1;1137:32:6;;;;-1:-1:-1;;;;;1137:32:6;;;5267:161;;;;;;;;;;;;;:::i;3570:83::-;;;;;;;;;;-1:-1:-1;3570:83:6;;732:1;3800:36:7;;3788:2;3773:18;3570:83:6;3658:184:7;4659:215:6;;;;;;;;;;-1:-1:-1;4659:215:6;;;;;:::i;:::-;;:::i;8217:101::-;;;;;;;;;;-1:-1:-1;8217:101:6;;;;;:::i;:::-;;:::i;7160:308::-;;;;;;;;;;-1:-1:-1;7160:308:6;;;;;:::i;:::-;;:::i;5828:88::-;;;;;;;;;;-1:-1:-1;5828:88:6;;;;;:::i;:::-;;:::i;371:28::-;;;;;;;;;;-1:-1:-1;371:28:6;;;;-1:-1:-1;;;;;371:28:6;;;7476:179;;;;;;;;;;-1:-1:-1;7476:179:6;;;;;:::i;:::-;;:::i;9325:123::-;;;;;;;;;;-1:-1:-1;9325:123:6;;;;;:::i;:::-;-1:-1:-1;;;;;9413:27:6;9389:4;9413:27;;;:18;:27;;;;;;;;;9325:123;905:30;;;;;;;;;;-1:-1:-1;905:30:6;;;;;;;;3764:118;;;;;;;;;;-1:-1:-1;3764:118:6;;;;;:::i;:::-;;:::i;778:148:4:-;;;;;;;;;;;;;:::i;1176:30:6:-;;;;;;;;;;-1:-1:-1;1176:30:6;;;;-1:-1:-1;;;;;1176:30:6;;;1914;;;;;;;;;;-1:-1:-1;1914:30:6;;;;;;;;;;;;7996:100;;;;;;;;;;-1:-1:-1;7996:100:6;;;;;:::i;:::-;;:::i;15088:188::-;;;;;;;;;;-1:-1:-1;15088:188:6;;;;;:::i;:::-;;:::i;440:79:4:-;;;;;;;;;;-1:-1:-1;478:7:4;505:6;-1:-1:-1;;;;;505:6:4;440:79;;3475:87:6;;;;;;;;;;-1:-1:-1;3547:7:6;;;;;;;;;;;;-1:-1:-1;;;3547:7:6;;;;3475:87;;4882:225;;;;;;;;;;-1:-1:-1;4882:225:6;;;;;:::i;:::-;;:::i;3890:167::-;;;;;;;;;;-1:-1:-1;3890:167:6;;;;;:::i;:::-;;:::i;1003:36::-;;;;;;;;;;-1:-1:-1;1003:36:6;;;;;;;;1213:28;;;;;;;;;;-1:-1:-1;1213:28:6;;;;-1:-1:-1;;;;;1213:28:6;;;1951:30;;;;;;;;;;-1:-1:-1;1951:30:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;4599:25:7;;;4655:2;4640:18;;4633:34;;;;4683:18;;;4676:34;;;;4741:2;4726:18;;4719:34;;;;4784:3;4769:19;;4762:35;4828:3;4813:19;;4806:35;4872:3;4857:19;;4850:35;4586:3;4571:19;1951:30:6;4284:607:7;5119:140:6;;;;;;;;;;-1:-1:-1;5119:140:6;;;;;:::i;:::-;;:::i;7663:325::-;;;;;;;;;;-1:-1:-1;7663:325:6;;;;;:::i;:::-;;:::i;6846:304::-;;;;;;;;;;-1:-1:-1;6846:304:6;;;;;:::i;:::-;;:::i;5436:185::-;;;;;;;;;;-1:-1:-1;5436:185:6;;;;;:::i;:::-;;:::i;851:45::-;;;;;;;;;;;;;;;;6648:190;;;;;;;;;;-1:-1:-1;6648:190:6;;;;;:::i;:::-;;:::i;5924:85::-;;;;;;;;;;;;;:::i;4065:143::-;;;;;;;;;;-1:-1:-1;4065:143:6;;;;;:::i;:::-;-1:-1:-1;;;;;4173:18:6;;;4146:7;4173:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4065:143;11967:105;;;;;;;;;;-1:-1:-1;11967:105:6;;;;;:::i;:::-;;:::i;1250:33::-;;;;;;;;;;-1:-1:-1;1250:33:6;;;;-1:-1:-1;;;1250:33:6;;;;;;934:244:4;;;;;;;;;;-1:-1:-1;934:244:4;;;;;:::i;:::-;;:::i;8104:105:6:-;;;;;;;;;;-1:-1:-1;8104:105:6;;;;;:::i;:::-;;:::i;4216:161::-;4291:4;4308:39;192:10:0;4331:7:6;4340:6;4308:8;:39::i;:::-;-1:-1:-1;4365:4:6;4216:161;;;;;:::o;5629:150::-;5709:4;5765:6;5733:29;5753:8;5733:19;:29::i;:::-;:38;;5629:150;-1:-1:-1;;;5629:150:6:o;6017:623::-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;;;;;;;;;6213:2:6::1;6201:8:::0;6182:16:::1;6188:10:::0;6182:3;:16:::1;:::i;:::-;:27;;;;:::i;:::-;:33;;6174:90;;;::::0;-1:-1:-1;;;6174:90:6;;7073:2:7;6174:90:6::1;::::0;::::1;7055:21:7::0;7112:2;7092:18;;;7085:30;7151:34;7131:18;;;7124:62;-1:-1:-1;;;7202:18:7;;;7195:42;7254:19;;6174:90:6::1;6871:408:7::0;6174:90:6::1;6313:2;6302:8:::0;6283:16:::1;6289:10:::0;6283:3;:16:::1;:::i;:::-;:27;;;;:::i;:::-;:32;;6275:90;;;::::0;-1:-1:-1;;;6275:90:6;;7486:2:7;6275:90:6::1;::::0;::::1;7468:21:7::0;7525:2;7505:18;;;7498:30;7564:34;7544:18;;;7537:62;-1:-1:-1;;;7615:18:7;;;7608:43;7668:19;;6275:90:6::1;7284:409:7::0;6275:90:6::1;6378:13;:29:::0;;;;6418:23;:36;;;;6465:21;:32;;;;6510:14:::1;:30:::0;6551:24;:37;6599:22;:33;6017:623::o;4385:266::-;4483:4;4500:36;4510:6;4518:9;4529:6;4500:9;:36::i;:::-;-1:-1:-1;;;;;4578:19:6;;;;;;:11;:19;;;;;;;;192:10:0;4578:33:6;;;;;;;;;4547:74;;4556:6;;4578:42;;4614:6;;4578:42;:::i;:::-;4547:8;:74::i;:::-;-1:-1:-1;4639:4:6;4385:266;;;;;:::o;5267:161::-;5320:7;5347:73;5392:27;5410:7;5392:9;:27::i;:::-;5347:40;5359:27;5377:7;5359:9;:27::i;:::-;5347:7;;;:11;:40::i;:::-;:44;;:73::i;:::-;5340:80;;5267:161;:::o;4659:215::-;192:10:0;4747:4:6;4796:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;4796:34:6;;;;;;;;;;4747:4;;4764:80;;4787:7;;4796:47;;4833:10;;4796:47;:::i;8217:101::-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;8287:13:6::1;:23:::0;;-1:-1:-1;;;;;;8287:23:6::1;-1:-1:-1::0;;;;;8287:23:6;;;::::1;::::0;;;::::1;::::0;;8217:101::o;7160:308::-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;7241:11:6::1;7232:5;:20;;7224:77;;;;-1:-1:-1::0;;;7224:77:6::1;;;;;;;:::i;:::-;7329:11;7320:5;:20;;7312:77;;;;-1:-1:-1::0;;;7312:77:6::1;;;;;;;:::i;:::-;7411:13;:5:::0;7419::::1;7411:13;:::i;:::-;7400:8;:24:::0;7447:13:::1;:5:::0;7455::::1;7447:13;:::i;:::-;7435:9;:25:::0;-1:-1:-1;7160:308:6:o;5828:88::-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;5895:13:6::1;5904:3;5895:8;:13::i;:::-;5828:88:::0;:::o;7476:179::-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;7558:11:6::1;7551:3;:18;;7543:70;;;::::0;-1:-1:-1;;;7543:70:6;;8619:2:7;7543:70:6::1;::::0;::::1;8601:21:7::0;8658:2;8638:18;;;8631:30;8697:34;8677:18;;;8670:62;-1:-1:-1;;;8748:18:7;;;8741:37;8795:19;;7543:70:6::1;8417:403:7::0;7543:70:6::1;7636:11;:3:::0;7642:5:::1;7636:11;:::i;3764:118::-:0;-1:-1:-1;;;;;3857:17:6;3830:7;3857:17;;;:8;:17;;;;;;;3764:118::o;778:148:4:-;567:6;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;885:1:::1;869:6:::0;;848:40:::1;::::0;-1:-1:-1;;;;;869:6:4;;::::1;::::0;848:40:::1;::::0;885:1;;848:40:::1;916:1;899:19:::0;;-1:-1:-1;;;;;;899:19:4::1;::::0;;778:148::o;7996:100:6:-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;8061:17:6::1;:27:::0;;-1:-1:-1;;;;;;8061:27:6::1;-1:-1:-1::0;;;;;8061:27:6;;;::::1;::::0;;;::::1;::::0;;7996:100::o;15088:188::-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;15221:46:6::1;::::0;-1:-1:-1;;;15221:46:6;;15261:4:::1;15221:46;::::0;::::1;1822:51:7::0;-1:-1:-1;;;;;15169:30:6;::::1;::::0;::::1;::::0;15208:10:::1;::::0;15169:30;;15221:31:::1;::::0;1795:18:7;;15221:46:6::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15169:99;::::0;-1:-1:-1;;;;;;15169:99:6::1;::::0;;;;;;-1:-1:-1;;;;;9206:32:7;;;15169:99:6::1;::::0;::::1;9188:51:7::0;9255:18;;;9248:34;9161:18;;15169:99:6::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;15088:188:::0;:::o;4882:225::-;192:10:0;4975:4:6;5024:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;5024:34:6;;;;;;;;;;4975:4;;4992:85;;5015:7;;5024:52;;5061:15;;5024:52;:::i;3890:167::-;3968:4;3985:42;192:10:0;4009:9:6;4020:6;3985:9;:42::i;5119:140::-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;-1:-1:-1;;;;;5204:36:6;;;::::1;;::::0;;;:18:::1;:36;::::0;;;;:47;;-1:-1:-1;;5204:47:6::1;::::0;::::1;;::::0;;;::::1;::::0;;5119:140::o;7663:325::-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;7793:10:6::1;7777:12;:26;;7769:86;;;::::0;-1:-1:-1;;;7769:86:6;;9745:2:7;7769:86:6::1;::::0;::::1;9727:21:7::0;9784:2;9764:18;;;9757:30;9823:34;9803:18;;;9796:62;-1:-1:-1;;;9874:18:7;;;9867:45;9929:19;;7769:86:6::1;9543:411:7::0;7769:86:6::1;7866:11;:21:::0;;-1:-1:-1;;7866:21:6::1;::::0;::::1;;;::::0;;7918:20:::1;:12:::0;7933:5:::1;7918:20;:::i;:::-;7898:17;:40:::0;7949:17:::1;:31:::0;;-1:-1:-1;;7949:31:6::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;;7663:325:6:o;6846:304::-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;6926:11:6::1;6918:4;:19;;6910:76;;;;-1:-1:-1::0;;;6910:76:6::1;;;;;;;:::i;:::-;7013:11;7005:4;:19;;6997:76;;;;-1:-1:-1::0;;;6997:76:6::1;;;;;;;:::i;5436:185::-:0;5504:7;5531:82;5590:22;:20;:22::i;:::-;5562:13;;5531:54;;5544:40;;5582:1;;5544:33;;-1:-1:-1;;;;;5562:13:6;5544:9;:33::i;:::-;:37;;:40::i;:::-;5531:8;;:12;:54::i;:::-;:58;;:82::i;6648:190::-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;6732:11:6::1;6722:6;:21;;6714:80;;;::::0;-1:-1:-1;;;6714:80:6;;10161:2:7;6714:80:6::1;::::0;::::1;10143:21:7::0;10200:2;10180:18;;;10173:30;10239:34;10219:18;;;10212:62;-1:-1:-1;;;10290:18:7;;;10283:44;10344:19;;6714:80:6::1;9959:410:7::0;6714:80:6::1;6816:14;:6:::0;6825:5:::1;6816:14;:::i;:::-;6805:8;:25:::0;-1:-1:-1;6648:190:6:o;5924:85::-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;5979:14:6::1;:22:::0;;-1:-1:-1;;;;5979:22:6::1;::::0;;5924:85::o;11967:105::-;691:6:4;;-1:-1:-1;;;;;691:6:4;192:10:0;691:22:4;683:67;;;;-1:-1:-1;;;683:67:4;;;;;;;:::i;:::-;-1:-1:-1;;;;;12041:14:6;;::::1;;::::0;;;:8:::1;:14;::::0;;;;:23;11967:105::o;934:244:4:-;567:6;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;-1:-1:-1;;;;;1023:22:4;::::1;1015:73;;;::::0;-1:-1:-1;;;1015:73:4;;10576:2:7;1015:73:4::1;::::0;::::1;10558:21:7::0;10615:2;10595:18;;;10588:30;10654:34;10634:18;;;10627:62;-1:-1:-1;;;10705:18:7;;;10698:36;10751:19;;1015:73:4::1;10374:402:7::0;1015:73:4::1;1125:6;::::0;;1104:38:::1;::::0;-1:-1:-1;;;;;1104:38:4;;::::1;::::0;1125:6;::::1;::::0;1104:38:::1;::::0;::::1;1153:6;:17:::0;;-1:-1:-1;;;;;;1153:17:4::1;-1:-1:-1::0;;;;;1153:17:4;;;::::1;::::0;;;::::1;::::0;;934:244::o;8104:105:6:-;567:6:4;;-1:-1:-1;;;;;567:6:4;192:10:0;567:22:4;559:67;;;;-1:-1:-1;;;559:67:4;;;;;;;:::i;:::-;8176:15:6::1;:25:::0;;-1:-1:-1;;;;;;8176:25:6::1;-1:-1:-1::0;;;;;8176:25:6;;;::::1;::::0;;;::::1;::::0;;8104:105::o;9456:337::-;-1:-1:-1;;;;;9549:19:6;;9541:68;;;;-1:-1:-1;;;9541:68:6;;10983:2:7;9541:68:6;;;10965:21:7;11022:2;11002:18;;;10995:30;11061:34;11041:18;;;11034:62;-1:-1:-1;;;11112:18:7;;;11105:34;11156:19;;9541:68:6;10781:400:7;9541:68:6;-1:-1:-1;;;;;9628:21:6;;9620:68;;;;-1:-1:-1;;;9620:68:6;;11388:2:7;9620:68:6;;;11370:21:7;11427:2;11407:18;;;11400:30;11466:34;11446:18;;;11439:62;-1:-1:-1;;;11517:18:7;;;11510:32;11559:19;;9620:68:6;11186:398:7;9620:68:6;-1:-1:-1;;;;;9701:18:6;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9753:32;;160:25:7;;;9753:32:6;;133:18:7;9753:32:6;;;;;;;9456:337;;;:::o;9801:2160::-;-1:-1:-1;;;;;9923:18:6;;9915:68;;;;-1:-1:-1;;;9915:68:6;;11791:2:7;9915:68:6;;;11773:21:7;11830:2;11810:18;;;11803:30;11869:34;11849:18;;;11842:62;-1:-1:-1;;;11920:18:7;;;11913:35;11965:19;;9915:68:6;11589:401:7;9915:68:6;-1:-1:-1;;;;;10002:16:6;;9994:64;;;;-1:-1:-1;;;9994:64:6;;12197:2:7;9994:64:6;;;12179:21:7;12236:2;12216:18;;;12209:30;12275:34;12255:18;;;12248:62;-1:-1:-1;;;12326:18:7;;;12319:33;12369:19;;9994:64:6;11995:399:7;9994:64:6;10086:1;10077:6;:10;10069:64;;;;-1:-1:-1;;;10069:64:6;;12601:2:7;10069:64:6;;;12583:21:7;12640:2;12620:18;;;12613:30;12679:34;12659:18;;;12652:62;-1:-1:-1;;;12730:18:7;;;12723:39;12779:19;;10069:64:6;12399:405:7;10069:64:6;-1:-1:-1;;;;;10154:14:6;;;;;;:8;:14;;;;;:24;;10172:6;;10154:14;:24;;10172:6;;10154:24;:::i;:::-;;;;-1:-1:-1;;;;;;;10270:24:6;;10189:22;10270:24;;;:18;:24;;;;;;10214:6;;10189:22;10270:24;;10269:25;:52;;;;-1:-1:-1;;;;;;10299:22:6;;;;;;:18;:22;;;;;;;;10298:23;10269:52;10266:97;;;-1:-1:-1;10347:4:6;10266:97;10378:7;10375:1478;;;10410:13;;-1:-1:-1;;;;;10404:19:6;;;10410:13;;10404:19;;;;:44;;-1:-1:-1;10435:13:6;;-1:-1:-1;;;;;10427:21:6;;;10435:13;;10427:21;10404:44;10401:377;;;10471:14;;-1:-1:-1;;;10471:14:6;;;;10468:240;;;10528:8;;10518:6;:18;;10510:72;;;;-1:-1:-1;;;10510:72:6;;;;;;;:::i;:::-;10639:9;;10629:6;10613:13;10623:2;10613:9;:13::i;:::-;:22;;;;:::i;:::-;:35;;10605:83;;;;-1:-1:-1;;;10605:83:6;;;;;;;:::i;:::-;10743:19;10751:6;10759:2;10743:7;:19::i;:::-;10726:36;;10401:377;10805:13;;-1:-1:-1;;;;;10797:21:6;;;10805:13;;10797:21;;;;:44;;-1:-1:-1;10828:13:6;;-1:-1:-1;;;;;10822:19:6;;;10828:13;;10822:19;10797:44;10794:710;;;10864:14;;-1:-1:-1;;;10864:14:6;;;;10861:134;;;10921:8;;10911:6;:18;;10903:72;;;;-1:-1:-1;;;10903:72:6;;;;;;;:::i;:::-;11030:22;11039:6;11047:4;11030:8;:22::i;:::-;11076:11;;11013:39;;-1:-1:-1;11076:11:6;;:60;;;;;11119:17;;11091:24;11109:4;11091:9;:24::i;:::-;:45;;11076:60;:73;;;;-1:-1:-1;11141:8:6;;;;11140:9;11076:73;11072:417;;;11174:8;:15;;-1:-1:-1;;11174:15:6;11185:4;11174:15;;;11216:17;;11174:15;11216:17;11215:18;;:57;;;11255:17;;11237:14;:35;;11215:57;11212:221;;;11301:27;11310:17;;11301:8;:27::i;:::-;11212:221;;;11385:24;11394:14;11385:8;:24::i;:::-;11455:8;:16;;-1:-1:-1;;11455:16:6;;;11072:417;11529:13;;-1:-1:-1;;;;;11523:19:6;;;11529:13;;11523:19;;;;:44;;-1:-1:-1;11554:13:6;;-1:-1:-1;;;;;11546:21:6;;;11554:13;;11546:21;;11523:44;11520:322;;;11590:14;;-1:-1:-1;;;11590:14:6;;;;11587:240;;;11647:8;;11637:6;:18;;11629:72;;;;-1:-1:-1;;;11629:72:6;;;;;;;:::i;:::-;11758:9;;11748:6;11732:13;11742:2;11732:9;:13::i;:::-;:22;;;;:::i;:::-;:35;;11724:83;;;;-1:-1:-1;;;11724:83:6;;;;;;;:::i;:::-;-1:-1:-1;;;;;11873:12:6;;;;;;:8;:12;;;;;:30;;11889:14;;11873:12;:30;;11889:14;;11873:30;:::i;:::-;;;;;;;;11934:2;-1:-1:-1;;;;;11919:34:6;11928:4;-1:-1:-1;;;;;11919:34:6;;11938:14;11919:34;;;;160:25:7;;148:2;133:18;;14:177;11919:34:6;;;;;;;;9904:2057;;9801:2160;;;:::o;276:136:5:-;334:7;361:43;365:1;368;361:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;354:50;276:136;-1:-1:-1;;;276:136:5:o;12080:2135:6:-;12133:18;12154:6;12133:27;;12171;12201:60;12217:15;;12234:26;;12201:15;:60::i;:::-;:119;;12295:14;:24;12269:13;:23;:50;;12295:24;12269:50;:::i;:::-;12201:119;;;12264:1;12201:119;12494:22;;12470:21;;12443:24;;12417:23;;12171:149;;-1:-1:-1;12331:23:6;;12395:45;;12171:149;12395:45;:::i;:::-;:72;;;;:::i;:::-;:96;;;;:::i;:::-;:121;;;;:::i;:::-;12357:34;12371:19;12357:10;:34;:::i;:::-;:160;;;;:::i;:::-;12722:22;;12698:21;;12671:24;;12645:23;;12331:186;;-1:-1:-1;12528:23:6;;12623:45;;:19;:45;:::i;:::-;:72;;;;:::i;:::-;:96;;;;:::i;:::-;:121;;;;:::i;:::-;12594:24;;12568:23;;:50;;12594:24;12568:50;:::i;:::-;12554:65;;:10;:65;:::i;:::-;:191;;;;:::i;:::-;12942:22;;12918:21;;12891:24;;12865:23;;12528:217;;-1:-1:-1;12756:18:6;;12843:45;;:19;:45;:::i;:::-;:72;;;;:::i;:::-;:96;;;;:::i;:::-;:121;;;;:::i;:::-;12815:22;;12791:21;;:46;;12815:22;12791:46;:::i;:::-;12777:61;;:10;:61;:::i;:::-;:188;;;;:::i;:::-;12756:209;;13009:15;12976:12;:29;;;:48;;;;;;;:::i;:::-;;;;-1:-1:-1;;13035:29:6;:48;;13068:15;;13035:29;;;:48;;13068:15;;13035:48;:::i;:::-;;;;-1:-1:-1;;13094:27:6;:41;;13125:10;;13094:27;;;:41;;13125:10;;13094:41;:::i;:::-;;;;-1:-1:-1;13148:25:6;;-1:-1:-1;13212:10:6;13176:33;13194:15;13176;:33;:::i;:::-;:46;;;;:::i;:::-;13148:74;-1:-1:-1;13243:26:6;13272:22;:15;13292:1;13272:19;:22::i;:::-;13243:51;;13336:18;13305:12;:27;;;:49;;;;;;;:::i;:::-;;;;-1:-1:-1;13365:26:6;;-1:-1:-1;13394:34:6;:10;13409:18;13394:14;:34::i;:::-;13365:63;-1:-1:-1;13477:21:6;13511:36;13365:63;13511:16;:36::i;:::-;13559:18;13580:44;:21;13606:17;13580:25;:44::i;:::-;13559:65;-1:-1:-1;13645:23:6;13671:54;13707:17;13671:31;13559:65;13686:15;13671:14;:31::i;:54::-;13645:80;-1:-1:-1;13736:21:6;13760:49;13791:17;13760:26;:10;13775;13760:14;:26::i;:49::-;13736:73;;13849:15;13820:12;:25;;;:44;;;;;;;:::i;:::-;;;;-1:-1:-1;;13875:23:6;:40;;13902:13;;13875:23;;;:40;;13902:13;;13875:40;:::i;:::-;;;;-1:-1:-1;13928:49:6;;-1:-1:-1;13941:18:6;13961:15;13928:12;:49::i;:::-;14017:21;13988:12;:25;;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;;14075:13:6;;14067:53;;14050:12;;-1:-1:-1;;;;;14075:13:6;;14102;;14050:12;14067:53;14050:12;14067:53;14102:13;14075;14067:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14152:15:6;;14144:63;;14049:71;;-1:-1:-1;;;;;;14152:15:6;;14181:21;;14144:63;;;;14181:21;14152:15;14144:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;12080:2135:6:o;620:250:5:-;678:7;702:1;707;702:6;698:47;;-1:-1:-1;732:1:5;725:8;;698:47;757:9;769:5;773:1;769;:5;:::i;:::-;757:17;-1:-1:-1;802:1:5;793:5;797:1;757:17;793:5;:::i;:::-;:10;785:56;;;;-1:-1:-1;;;785:56:5;;14257:2:7;785:56:5;;;14239:21:7;14296:2;14276:18;;;14269:30;14335:34;14315:18;;;14308:62;-1:-1:-1;;;14386:18:7;;;14379:31;14427:19;;785:56:5;14055:397:7;878:132:5;936:7;963:39;967:1;970;963:39;;;;;;;;;;;;;;;;;:3;:39::i;8326:491:6:-;8390:7;8410:15;8463:3;8437:13;:23;;;8428:6;:32;;;;:::i;:::-;:38;;;;:::i;:::-;8410:56;;8478:16;8532:3;8506:13;:23;;;8497:6;:32;;;;:::i;:::-;:38;;;;:::i;:::-;8478:57;;8546:18;8599:3;8576:13;:21;;;8567:6;:30;;;;:::i;:::-;:35;;;;:::i;:::-;8546:56;-1:-1:-1;8546:56:6;8642:18;8652:8;8642:7;:18;:::i;:::-;:31;;;;:::i;:::-;8632:4;8615:23;;;;:8;:23;;;;;:58;;:23;;;:58;;;;;:::i;:::-;;;;-1:-1:-1;8713:4:6;;-1:-1:-1;;;;;;8689:63:6;;;8741:10;8720:18;8731:7;8720:8;:18;:::i;:::-;:31;;;;:::i;:::-;8689:63;;160:25:7;;;148:2;133:18;8689:63:6;;;;;;;8798:10;8788:8;8771:15;8779:7;8771:6;:15;:::i;:::-;:25;;;;:::i;:::-;:37;;;;:::i;:::-;8763:46;8326:491;-1:-1:-1;;;;;;8326:491:6:o;420:192:5:-;506:7;542:12;534:6;;;;526:29;;;;-1:-1:-1;;;526:29:5;;;;;;;;:::i;:::-;-1:-1:-1;566:9:5;578:5;582:1;578;:5;:::i;:::-;566:17;420:192;-1:-1:-1;;;;;420:192:5:o;14223:475:6:-;14313:16;;;14327:1;14313:16;;;;;;;;14289:21;;14313:16;;;;;;;;;;-1:-1:-1;14313:16:6;14289:40;;14358:4;14340;14345:1;14340:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14340:23:6;;;:7;;;;;;;;;;:23;;;;14384:15;;:22;;;-1:-1:-1;;;14384:22:6;;;;:15;;;;;:20;;:22;;;;;14340:7;;14384:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14374:4;14379:1;14374:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14374:32:6;;;:7;;;;;;;;;:32;14451:15;;14419:62;;14436:4;;14451:15;14469:11;14419:8;:62::i;:::-;14494:15;;:196;;-1:-1:-1;;;14494:196:6;;-1:-1:-1;;;;;14494:15:6;;;;:66;;:196;;14575:11;;14494:15;;14617:4;;14644;;14664:15;;14494:196;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14278:420;14223:475;:::o;14706:374::-;14819:15;;14787:62;;14804:4;;-1:-1:-1;;;;;14819:15:6;14837:11;14787:8;:62::i;:::-;14862:15;;15014:17;;14862:210;;-1:-1:-1;;;14862:210:6;;14936:4;14862:210;;;16303:34:7;16353:18;;;16346:34;;;14862:15:6;16396:18:7;;;16389:34;;;16439:18;;;16432:34;-1:-1:-1;;;;;15014:17:6;;;16482:19:7;;;16475:44;15046:15:6;16535:19:7;;;16528:35;14862:15:6;;;:31;;14902:9;;16237:19:7;;14862:210:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;14706:374;;:::o;1018:278:5:-;1104:7;1139:12;1132:5;1124:28;;;;-1:-1:-1;;;1124:28:5;;;;;;;;:::i;:::-;-1:-1:-1;1163:9:5;1175:5;1179:1;1175;:5;:::i;196:548:7:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;749:131::-;-1:-1:-1;;;;;824:31:7;;814:42;;804:70;;870:1;867;860:12;885:315;953:6;961;1014:2;1002:9;993:7;989:23;985:32;982:52;;;1030:1;1027;1020:12;982:52;1069:9;1056:23;1088:31;1113:5;1088:31;:::i;:::-;1138:5;1190:2;1175:18;;;;1162:32;;-1:-1:-1;;;885:315:7:o;1397:248::-;1465:6;1473;1526:2;1514:9;1505:7;1501:23;1497:32;1494:52;;;1542:1;1539;1532:12;1494:52;-1:-1:-1;;1565:23:7;;;1635:2;1620:18;;;1607:32;;-1:-1:-1;1397:248:7:o;2137:523::-;2241:6;2249;2257;2265;2273;2281;2334:3;2322:9;2313:7;2309:23;2305:33;2302:53;;;2351:1;2348;2341:12;2302:53;-1:-1:-1;;2374:23:7;;;2444:2;2429:18;;2416:32;;-1:-1:-1;2495:2:7;2480:18;;2467:32;;2546:2;2531:18;;2518:32;;-1:-1:-1;2597:3:7;2582:19;;2569:33;;-1:-1:-1;2649:3:7;2634:19;2621:33;;-1:-1:-1;2137:523:7;-1:-1:-1;2137:523:7:o;2989:456::-;3066:6;3074;3082;3135:2;3123:9;3114:7;3110:23;3106:32;3103:52;;;3151:1;3148;3141:12;3103:52;3190:9;3177:23;3209:31;3234:5;3209:31;:::i;:::-;3259:5;-1:-1:-1;3316:2:7;3301:18;;3288:32;3329:33;3288:32;3329:33;:::i;:::-;2989:456;;3381:7;;-1:-1:-1;;;3435:2:7;3420:18;;;;3407:32;;2989:456::o;3847:247::-;3906:6;3959:2;3947:9;3938:7;3934:23;3930:32;3927:52;;;3975:1;3972;3965:12;3927:52;4014:9;4001:23;4033:31;4058:5;4033:31;:::i;4099:180::-;4158:6;4211:2;4199:9;4190:7;4186:23;4182:32;4179:52;;;4227:1;4224;4217:12;4179:52;-1:-1:-1;4250:23:7;;4099:180;-1:-1:-1;4099:180:7:o;4896:118::-;4982:5;4975:13;4968:21;4961:5;4958:32;4948:60;;5004:1;5001;4994:12;5019:382;5084:6;5092;5145:2;5133:9;5124:7;5120:23;5116:32;5113:52;;;5161:1;5158;5151:12;5113:52;5200:9;5187:23;5219:31;5244:5;5219:31;:::i;:::-;5269:5;-1:-1:-1;5326:2:7;5311:18;;5298:32;5339:30;5298:32;5339:30;:::i;:::-;5388:7;5378:17;;;5019:382;;;;;:::o;5406:444::-;5477:6;5485;5493;5546:2;5534:9;5525:7;5521:23;5517:32;5514:52;;;5562:1;5559;5552:12;5514:52;5601:9;5588:23;5620:28;5642:5;5620:28;:::i;:::-;5667:5;-1:-1:-1;5719:2:7;5704:18;;5691:32;;-1:-1:-1;5775:2:7;5760:18;;5747:32;5788:30;5747:32;5788:30;:::i;:::-;5837:7;5827:17;;;5406:444;;;;;:::o;5855:388::-;5923:6;5931;5984:2;5972:9;5963:7;5959:23;5955:32;5952:52;;;6000:1;5997;5990:12;5952:52;6039:9;6026:23;6058:31;6083:5;6058:31;:::i;:::-;6108:5;-1:-1:-1;6165:2:7;6150:18;;6137:32;6178:33;6137:32;6178:33;:::i;6248:356::-;6450:2;6432:21;;;6469:18;;;6462:30;6528:34;6523:2;6508:18;;6501:62;6595:2;6580:18;;6248:356::o;6609:127::-;6670:10;6665:3;6661:20;6658:1;6651:31;6701:4;6698:1;6691:15;6725:4;6722:1;6715:15;6741:125;6806:9;;;6827:10;;;6824:36;;;6840:18;;:::i;7698:128::-;7765:9;;;7786:11;;;7783:37;;;7800:18;;:::i;7831:408::-;8033:2;8015:21;;;8072:2;8052:18;;;8045:30;8111:34;8106:2;8091:18;;8084:62;-1:-1:-1;;;8177:2:7;8162:18;;8155:42;8229:3;8214:19;;7831:408::o;8244:168::-;8317:9;;;8348;;8365:15;;;8359:22;;8345:37;8335:71;;8386:18;;:::i;8825:184::-;8895:6;8948:2;8936:9;8927:7;8923:23;8919:32;8916:52;;;8964:1;8961;8954:12;8916:52;-1:-1:-1;8987:16:7;;8825:184;-1:-1:-1;8825:184:7:o;9293:245::-;9360:6;9413:2;9401:9;9392:7;9388:23;9384:32;9381:52;;;9429:1;9426;9419:12;9381:52;9461:9;9455:16;9480:28;9502:5;9480:28;:::i;12809:405::-;13011:2;12993:21;;;13050:2;13030:18;;;13023:30;13089:34;13084:2;13069:18;;13062:62;-1:-1:-1;;;13155:2:7;13140:18;;13133:39;13204:3;13189:19;;12809:405::o;13219:399::-;13421:2;13403:21;;;13460:2;13440:18;;;13433:30;13499:34;13494:2;13479:18;;13472:62;-1:-1:-1;;;13565:2:7;13550:18;;13543:33;13608:3;13593:19;;13219:399::o;13623:217::-;13663:1;13689;13679:132;;13733:10;13728:3;13724:20;13721:1;13714:31;13768:4;13765:1;13758:15;13796:4;13793:1;13786:15;13679:132;-1:-1:-1;13825:9:7;;13623:217::o;14589:127::-;14650:10;14645:3;14641:20;14638:1;14631:31;14681:4;14678:1;14671:15;14705:4;14702:1;14695:15;14721:251;14791:6;14844:2;14832:9;14823:7;14819:23;14815:32;14812:52;;;14860:1;14857;14850:12;14812:52;14892:9;14886:16;14911:31;14936:5;14911:31;:::i;14977:980::-;15239:4;15287:3;15276:9;15272:19;15318:6;15307:9;15300:25;15344:2;15382:6;15377:2;15366:9;15362:18;15355:34;15425:3;15420:2;15409:9;15405:18;15398:31;15449:6;15484;15478:13;15515:6;15507;15500:22;15553:3;15542:9;15538:19;15531:26;;15592:2;15584:6;15580:15;15566:29;;15613:1;15623:195;15637:6;15634:1;15631:13;15623:195;;;15702:13;;-1:-1:-1;;;;;15698:39:7;15686:52;;15793:15;;;;15758:12;;;;15734:1;15652:9;15623:195;;;-1:-1:-1;;;;;;;15874:32:7;;;;15869:2;15854:18;;15847:60;-1:-1:-1;;;15938:3:7;15923:19;15916:35;15835:3;14977:980;-1:-1:-1;;;14977:980:7:o;16574:306::-;16662:6;16670;16678;16731:2;16719:9;16710:7;16706:23;16702:32;16699:52;;;16747:1;16744;16737:12;16699:52;16776:9;16770:16;16760:26;;16826:2;16815:9;16811:18;16805:25;16795:35;;16870:2;16859:9;16855:18;16849:25;16839:35;;16574:306;;;;;:::o

Swarm Source

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