ETH Price: $2,303.86 (-0.58%)

Token

Baby Volt (BOLT)
 

Overview

Max Total Supply

1,000,000,000,000 BOLT

Holders

44

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
1,562,872,728.413627589 BOLT

Value
$0.00
0x57406380a85da2a21f6e7370c14576b606a93143
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:
BabyVolt

Compiler Version
v0.8.13+commit.abaa5c0e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-04-27
*/

// Bolt= Baby Volt
// Bolt rewards its Users with Volt token.
// Manual claim.
// initial tax 14%
// Tax will be reduced 2% after a period of time.
// Period 1 - first 2 hours (14%)
// Period 2 - next 4 Hours (12%)
// period 3 - Next 6 hours (10%)
// Period 4 - Next 8 hours (8%)

// TG - https://t.me/BoltToken


// SPDX-License-Identifier: Unlicensed

pragma solidity 0.8.13;

/**
 * Standard SafeMath, stripped down to just add/sub/mul/div
 */
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) {
        // Solidity only automatically asserts when dividing by 0
        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;
    }
}

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

/**
 * Allows for contract ownership along with multi-address authorization
 */
abstract contract Auth {
    address internal owner;

    constructor(address _owner) {
        owner = _owner;
    }

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

    /**
     * Check if address is owner
     */
    function isOwner(address account) public view returns (bool) {
        return account == owner;
    }

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

    event OwnershipTransferred(address owner);
}

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

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

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);

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

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

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;

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

interface IDividendDistributor {
    function setShare(address shareholder, uint256 amount) external;
    function deposit(uint256 amount) external;
    function claimDividend(address shareholder) external;
    function getDividendsClaimedOf (address shareholder) external returns (uint256);
}

contract DividendDistributor is IDividendDistributor {
    using SafeMath for uint256;

    address public _token;
    address public _owner;

    address public immutable VOLT = address(0x7db5af2B9624e1b3B4Bb69D6DeBd9aD1016A58Ac); //UNI


    struct Share {
        uint256 amount;
        uint256 totalExcluded;
        uint256 totalClaimed;
    }

    address[] private shareholders;
    mapping (address => uint256) private shareholderIndexes;

    mapping (address => Share) public shares;

    uint256 public totalShares;
    uint256 public totalDividends;
    uint256 public totalClaimed;
    uint256 public dividendsPerShare;
    uint256 private dividendsPerShareAccuracyFactor = 10 ** 36;

    modifier onlyToken() {
        require(msg.sender == _token); _;
    }
    
    modifier onlyOwner() {
        require(msg.sender == _owner); _;
    }

    constructor (address owner) {
        _token = msg.sender;
        _owner = owner;
    }

    receive() external payable { }

    function setShare(address shareholder, uint256 amount) external override onlyToken {
        if(shares[shareholder].amount > 0){
            distributeDividend(shareholder);
        }

        if(amount > 0 && shares[shareholder].amount == 0){
            addShareholder(shareholder);
        }else if(amount == 0 && shares[shareholder].amount > 0){
            removeShareholder(shareholder);
        }

        totalShares = totalShares.sub(shares[shareholder].amount).add(amount);
        shares[shareholder].amount = amount;
        shares[shareholder].totalExcluded = getCumulativeDividends(shares[shareholder].amount);
    }

    function deposit(uint256 amount) external override onlyToken {
        
        if (amount > 0) {        
            totalDividends = totalDividends.add(amount);
            dividendsPerShare = dividendsPerShare.add(dividendsPerShareAccuracyFactor.mul(amount).div(totalShares));
        }
    }

    function distributeDividend(address shareholder) internal {
        if(shares[shareholder].amount == 0){ return; }

        uint256 amount = getClaimableDividendOf(shareholder);
        if(amount > 0){
            totalClaimed = totalClaimed.add(amount);
            shares[shareholder].totalClaimed = shares[shareholder].totalClaimed.add(amount);
            shares[shareholder].totalExcluded = getCumulativeDividends(shares[shareholder].amount);
            IERC20(VOLT).transfer(shareholder, amount);
        }
    }

    function claimDividend(address shareholder) external override onlyToken {
        distributeDividend(shareholder);
    }

    function getClaimableDividendOf(address shareholder) public view returns (uint256) {
        if(shares[shareholder].amount == 0){ return 0; }

        uint256 shareholderTotalDividends = getCumulativeDividends(shares[shareholder].amount);
        uint256 shareholderTotalExcluded = shares[shareholder].totalExcluded;

        if(shareholderTotalDividends <= shareholderTotalExcluded){ return 0; }

        return shareholderTotalDividends.sub(shareholderTotalExcluded);
    }

    function getCumulativeDividends(uint256 share) internal view returns (uint256) {
        return share.mul(dividendsPerShare).div(dividendsPerShareAccuracyFactor);
    }

    function addShareholder(address shareholder) internal {
        shareholderIndexes[shareholder] = shareholders.length;
        shareholders.push(shareholder);
    }

    function removeShareholder(address shareholder) internal {
        shareholders[shareholderIndexes[shareholder]] = shareholders[shareholders.length-1];
        shareholderIndexes[shareholders[shareholders.length-1]] = shareholderIndexes[shareholder];
        shareholders.pop();
    }
    
    function manualSend(uint256 amount, address holder) external onlyOwner {
        uint256 contractETHBalance = address(this).balance;
        payable(holder).transfer(amount > 0 ? amount : contractETHBalance);
    }


    function getDividendsClaimedOf (address shareholder) external view returns (uint256) {
        require (shares[shareholder].amount > 0, "You're not a VOLTBANK shareholder!");
        return shares[shareholder].totalClaimed;
    }

    }

contract BabyVolt is IERC20, Auth {
    using SafeMath for uint256;

    address private WETH;
    address private DEAD = 0x000000000000000000000000000000000000dEaD;
    address private ZERO = 0x0000000000000000000000000000000000000000;

    address public immutable VOLT = address(0x7db5af2B9624e1b3B4Bb69D6DeBd9aD1016A58Ac); //UNI

    string private constant  _name = "Baby Volt";
    string private constant _symbol = "BOLT";
    uint8 private constant _decimals = 9;

    uint256 private _totalSupply = 1000000000000 * (10 ** _decimals);
    uint256 private _maxTxAmountBuy = _totalSupply;
    

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

    mapping (address => bool) private isFeeExempt;
    mapping (address => bool) private isDividendExempt;
    mapping (address => bool) private isBot;
            
    uint256 private totalFee = 14;
    uint256 private feeDenominator = 100;

    address payable public marketingWallet = payable(0x6eDAFf2857b872745aa8BC4270943CFF384B4149);

    IDEXRouter public router;
    address public pair;

    uint256 public launchedAt;
    bool private tradingOpen;
    bool private buyLimit = true;
    uint256 private maxBuy = 15000000001 * (10 ** _decimals);
    uint256 public numTokensSellToAddToLiquidity = 4000000000 * 10**9;

    DividendDistributor private distributor;    
    
    bool public blacklistEnabled = false;
    bool private inSwap;
    modifier swapping() { inSwap = true; _; inSwap = false; }

    constructor (
        address _owner        
    ) Auth(_owner) {
        router = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
            
        WETH = router.WETH();
        
        pair = IDEXFactory(router.factory()).createPair(WETH, address(this));
        
        _allowances[address(this)][address(router)] = type(uint256).max;

        distributor = new DividendDistributor(_owner);

        isFeeExempt[_owner] = true;
        isFeeExempt[marketingWallet] = true;             
              
        isDividendExempt[pair] = true;
        isDividendExempt[address(this)] = true;
        isDividendExempt[DEAD] = true;        

        _balances[_owner] = _totalSupply;
    
        emit Transfer(address(0), _owner, _totalSupply);
    }

    receive() external payable { }

    function totalSupply() external view override returns (uint256) { return _totalSupply; }
    function decimals() external pure override returns (uint8) { return _decimals; }
    function symbol() external pure override returns (string memory) { return _symbol; }
    function name() external pure override returns (string memory) { return _name; }
    function getOwner() external view override returns (address) { return owner; }
    function balanceOf(address account) public view override returns (uint256) { return _balances[account]; }
    function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; }

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

    function approveMax(address spender) external returns (bool) {
        return approve(spender, type(uint256).max);
    }

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

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

        return _transferFrom(sender, recipient, amount);
    }

    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        if (sender!= owner && recipient!= owner) require(tradingOpen, "Trading not yet enabled."); //transfers disabled before openTrading
        if (blacklistEnabled) {
            require (!isBot[sender] && !isBot[recipient], "Bot!");
        }
        if (buyLimit) { 
            if (sender!=owner && recipient!= owner) require (amount<=maxBuy, "Too much sir");        
        }

        if (sender == pair && recipient != address(router) && !isFeeExempt[recipient]) {
            require (cooldown[recipient] < block.timestamp);
            cooldown[recipient] = block.timestamp + 60 seconds;
            if (block.number <= (launchedAt + 1)) { 
                isBot[recipient] = true;
                isDividendExempt[recipient] = true; 
            }
        }
       
        if(inSwap){ return _basicTransfer(sender, recipient, amount); }      

        uint256 contractTokenBalance = balanceOf(address(this));

        bool overMinTokenBalance = contractTokenBalance >= numTokensSellToAddToLiquidity;
    
        bool shouldSwapBack = (overMinTokenBalance && recipient==pair && balanceOf(address(this)) > 0);
        if(shouldSwapBack){ swapBack(); }

        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");

        uint256 amountReceived = shouldTakeFee(sender, recipient) ? takeFee(sender, amount) : amount;
        
        _balances[recipient] = _balances[recipient].add(amountReceived);

        if(sender != pair && !isDividendExempt[sender]){ try distributor.setShare(sender, _balances[sender]) {} catch {} }
        if(recipient != pair && !isDividendExempt[recipient]){ try distributor.setShare(recipient, _balances[recipient]) {} catch {} }

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

 
    function shouldTakeFee(address sender, address recipient) internal view returns (bool) {
        return ( !(isFeeExempt[sender] || isFeeExempt[recipient]) &&  (sender == pair || recipient == pair) );
   }

    function takeFee(address sender, uint256 amount) internal returns (uint256) {
        uint256 feeAmount;
        feeAmount = amount.mul(totalFee).div(feeDenominator);
        _balances[address(this)] = _balances[address(this)].add(feeAmount);
        emit Transfer(sender, address(this), feeAmount);   

        return amount.sub(feeAmount);
    }

   
    function swapBack() internal swapping {

        uint256 amountToSwap = balanceOf(address(this));        

        swapTokensForEth(amountToSwap.div(2));
        swapTokensForVOLT(amountToSwap.div(2));

        uint256 dividends = IERC20(VOLT).balanceOf(address(this));

        bool success = IERC20(VOLT).transfer(address(distributor), dividends);

        if (success) {
            distributor.deposit(dividends);            
        }
             
        payable(marketingWallet).transfer(address(this).balance);        
    }

    

    function swapTokensForVOLT(uint256 tokenAmount) private {

        address[] memory path = new address[](3);
        path[0] = address(this);
        path[1] = WETH;
        path[2] = VOLT;

        // make the swap
        router.swapExactTokensForTokensSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function swapTokensForEth(uint256 tokenAmount) private {

        // generate the uniswap pair path of token -> weth
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = WETH;

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

    function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
        
        // add the liquidity
        router.addLiquidityETH{value: ethAmount}(
            address(this),
            tokenAmount,
            0, // slippage is unavoidable
            0, // slippage is unavoidable
            owner,
            block.timestamp
        );
    }

    
    function openTrading() external onlyOwner {
        launchedAt = block.number;
        tradingOpen = true;
    }    
  
    
    function setBot(address _address, bool toggle) external onlyOwner {
        isBot[_address] = toggle;
        _setIsDividendExempt(_address, toggle);
    }
    
    
    function _setIsDividendExempt(address holder, bool exempt) internal {
        require(holder != address(this) && holder != pair);
        isDividendExempt[holder] = exempt;
        if(exempt){
            distributor.setShare(holder, 0);
        }else{
            distributor.setShare(holder, _balances[holder]);
        }
    }

    function setIsDividendExempt(address holder, bool exempt) external onlyOwner {
        _setIsDividendExempt(holder, exempt);
    }

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

    function setFee (uint256 _fee) external onlyOwner {
        require (_fee <= 14, "Fee can't exceed 14%");
        totalFee = _fee;
    }
  
    function manualSend() external onlyOwner {
        uint256 contractETHBalance = address(this).balance;
        payable(marketingWallet).transfer(contractETHBalance);
    }

    function claimDividend() external {
        distributor.claimDividend(msg.sender);
    }
    
    function claimDividend(address holder) external onlyOwner {
        distributor.claimDividend(holder);
    }
    
    function getClaimableDividendOf(address shareholder) public view returns (uint256) {
        return distributor.getClaimableDividendOf(shareholder);
    }
    
    function manualBurn(uint256 amount) external onlyOwner returns (bool) {
        return _basicTransfer(address(this), DEAD, amount);
    }
    
    function getCirculatingSupply() public view returns (uint256) {
        return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO));
    }

    function setMarketingWallet(address _marketingWallet) external onlyOwner {
        marketingWallet = payable(_marketingWallet);
    } 

    function getTotalDividends() external view returns (uint256) {
        return distributor.totalDividends();
    }    

    function getTotalClaimed() external view returns (uint256) {
        return distributor.totalClaimed();
    }

     function getDividendsClaimedOf (address shareholder) external view returns (uint256) {
        return distributor.getDividendsClaimedOf(shareholder);
    }

    function removeBuyLimit() external onlyOwner {
        buyLimit = false;
    }

    function checkBot(address account) public view returns (bool) {
        return isBot[account];
    }

    function setBlacklistEnabled() external onlyOwner {
        require (blacklistEnabled == false, "can only be called once");
        blacklistEnabled = true;
    }

    function setSwapThresholdAmount (uint256 amount) external onlyOwner {
        require (amount <= _totalSupply.div(100), "can't exceed 1%");
        numTokensSellToAddToLiquidity = amount * 10 ** 9;
    } 
   
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_owner","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":false,"internalType":"address","name":"owner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"VOLT","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"blacklistEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"checkBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"}],"name":"claimDividend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimDividend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"}],"name":"getClaimableDividendOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"}],"name":"getDividendsClaimedOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalClaimed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalDividends","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"manualBurn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"numTokensSellToAddToLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeBuyLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"setBlacklistEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"toggle","type":"bool"}],"name":"setBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_fee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsDividendExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingWallet","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setSwapThresholdAmount","outputs":[],"stateMutability":"nonpayable","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 payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60a0604052600280546001600160a01b031990811661dead17909155600380549091169055737db5af2b9624e1b3b4bb69d6debd9ad1016a58ac6080526200004a6009600a6200051e565b6200005b9064e8d4a5100062000536565b6004819055600555600e600c8190556064600d5580546001600160a01b031916736edaff2857b872745aa8bc4270943cff384b41491790556012805461ff001916610100179055620000b06009600a6200051e565b620000c19064037e11d60162000536565b601355673782dace9d9000006014556015805460ff60a01b19169055348015620000ea57600080fd5b5060405162003478380380620034788339810160408190526200010d9162000558565b600080546001600160a01b03199081166001600160a01b03841617909155600f8054737a250d5630b4cf539739df2c5dacb4c659f2488d921682179055604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa15801562000186573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001ac919062000558565b600180546001600160a01b0319166001600160a01b03928316179055600f546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa1580156200020b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000231919062000558565b6001546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af115801562000283573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a9919062000558565b601080546001600160a01b0319166001600160a01b03928316179055306000908152600760209081526040808320600f5490941683529290528190206000199055518190620002f890620003fb565b6001600160a01b039091168152602001604051809103906000f08015801562000325573d6000803e3d6000fd5b50601580546001600160a01b0319166001600160a01b039283161790558181166000818152600960209081526040808320805460ff199081166001908117909255600e5487168552828520805482168317905560105487168552600a8452828520805482168317905530855282852080548216831790556002549096168452818420805490961617909455600454838352600682528483208190559351938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35062000583565b610da180620026d783390190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200046057816000190482111562000444576200044462000409565b808516156200045257918102915b93841c939080029062000424565b509250929050565b600082620004795750600162000518565b81620004885750600062000518565b8160018114620004a15760028114620004ac57620004cc565b600191505062000518565b60ff841115620004c057620004c062000409565b50506001821b62000518565b5060208310610133831016604e8410600b8410161715620004f1575081810a62000518565b620004fd83836200041f565b806000190482111562000514576200051462000409565b0290505b92915050565b60006200052f60ff84168362000468565b9392505050565b600081600019048311821515161562000553576200055362000409565b500290565b6000602082840312156200056b57600080fd5b81516001600160a01b03811681146200052f57600080fd5b608051612123620005b4600039600081816106d5015281816118c4015281816119660152611d0b01526121236000f3fe6080604052600436106102345760003560e01c8063736a83a11161012e578063bffb691d116100ab578063f0fc6bca1161006f578063f0fc6bca146106f7578063f2fde38b1461070c578063f42938901461072c578063f708a64f14610741578063f887ea401461076157600080fd5b8063bffb691d14610631578063c9567bf914610652578063d12a768814610667578063dd62ed3e1461067d578063ed5fe921146106c357600080fd5b806395d89b41116100f257806395d89b4114610575578063a8aa1b31146105a2578063a9059cbb146105c2578063b1a4e0dc146105e2578063bf56b3711461061b57600080fd5b8063736a83a1146104d557806375f0a874146104ea578063764ca51214610522578063893d20e8146105375780638ecc37fb1461055557600080fd5b8063313ce567116101bc5780635d098b38116101805780635d098b381461042a578063658d4b7f1461044a57806367ee5f091461046a57806369fe0e2d1461047f57806370a082311461049f57600080fd5b8063313ce56714610399578063342aa8b5146103b55780633e07ce5b146103d5578063571ac8b0146103ea5780635cc33f741461040a57600080fd5b806323b635851161020357806323b63585146102f557806323b872dd1461031557806329e04b4a146103355780632b112e49146103555780632f54bf6e1461036a57600080fd5b806306fdde0314610240578063095ea7b31461028457806315f7e05e146102b457806318160ddd146102d657600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b506040805180820190915260098152681098589e48159bdb1d60ba1b60208201525b60405161027b9190611e05565b60405180910390f35b34801561029057600080fd5b506102a461029f366004611e72565b610781565b604051901515815260200161027b565b3480156102c057600080fd5b506102d46102cf366004611e9e565b6107ee565b005b3480156102e257600080fd5b506004545b60405190815260200161027b565b34801561030157600080fd5b506102a4610310366004611ebb565b610883565b34801561032157600080fd5b506102a4610330366004611ed4565b6108c6565b34801561034157600080fd5b506102d4610350366004611ebb565b610988565b34801561036157600080fd5b506102e7610a15565b34801561037657600080fd5b506102a4610385366004611e9e565b6000546001600160a01b0391821691161490565b3480156103a557600080fd5b506040516009815260200161027b565b3480156103c157600080fd5b506102d46103d0366004611f23565b610a67565b3480156103e157600080fd5b506102d4610ac3565b3480156103f657600080fd5b506102a4610405366004611e9e565b610afa565b34801561041657600080fd5b506102e7610425366004611e9e565b610b08565b34801561043657600080fd5b506102d4610445366004611e9e565b610b78565b34801561045657600080fd5b506102d4610465366004611f23565b610bc4565b34801561047657600080fd5b506102e7610c19565b34801561048b57600080fd5b506102d461049a366004611ebb565b610c87565b3480156104ab57600080fd5b506102e76104ba366004611e9e565b6001600160a01b031660009081526006602052604090205490565b3480156104e157600080fd5b506102e7610cfe565b3480156104f657600080fd5b50600e5461050a906001600160a01b031681565b6040516001600160a01b03909116815260200161027b565b34801561052e57600080fd5b506102d4610d48565b34801561054357600080fd5b506000546001600160a01b031661050a565b34801561056157600080fd5b506102e7610570366004611e9e565b610de1565b34801561058157600080fd5b506040805180820190915260048152631093d31560e21b602082015261026e565b3480156105ae57600080fd5b5060105461050a906001600160a01b031681565b3480156105ce57600080fd5b506102a46105dd366004611e72565b610e14565b3480156105ee57600080fd5b506102a46105fd366004611e9e565b6001600160a01b03166000908152600b602052604090205460ff1690565b34801561062757600080fd5b506102e760115481565b34801561063d57600080fd5b506015546102a490600160a01b900460ff1681565b34801561065e57600080fd5b506102d4610e21565b34801561067357600080fd5b506102e760145481565b34801561068957600080fd5b506102e7610698366004611f5c565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b3480156106cf57600080fd5b5061050a7f000000000000000000000000000000000000000000000000000000000000000081565b34801561070357600080fd5b506102d4610e5e565b34801561071857600080fd5b506102d4610727366004611e9e565b610ebd565b34801561073857600080fd5b506102d4610f3b565b34801561074d57600080fd5b506102d461075c366004611f23565b610f9f565b34801561076d57600080fd5b50600f5461050a906001600160a01b031681565b3360008181526007602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906107dc9086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b031633146108215760405162461bcd60e51b815260040161081890611f8a565b60405180910390fd5b601554604051630afbf02f60e11b81526001600160a01b038381166004830152909116906315f7e05e90602401600060405180830381600087803b15801561086857600080fd5b505af115801561087c573d6000803e3d6000fd5b5050505050565b600080546001600160a01b031633146108ae5760405162461bcd60e51b815260040161081890611f8a565b6002546107e89030906001600160a01b031684610fd3565b6001600160a01b038316600090815260076020908152604080832033845290915281205460001914610973576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b038716600090815260078252838120338252909152919091205461094e9184906110b9565b6001600160a01b03851660009081526007602090815260408083203384529091529020555b61097e8484846110f3565b90505b9392505050565b6000546001600160a01b031633146109b25760405162461bcd60e51b815260040161081890611f8a565b6004546109c090606461166d565b811115610a015760405162461bcd60e51b815260206004820152600f60248201526e63616e27742065786365656420312560881b6044820152606401610818565b610a0f81633b9aca00611fc0565b60145550565b6003546001600160a01b0316600090815260066020526040812054610a62906002546001600160a01b0316600090815260066020526040902054610a5c90600454906116af565b906116af565b905090565b6000546001600160a01b03163314610a915760405162461bcd60e51b815260040161081890611f8a565b6001600160a01b0382166000908152600b60205260409020805460ff1916821515179055610abf82826116f1565b5050565b6000546001600160a01b03163314610aed5760405162461bcd60e51b815260040161081890611f8a565b6012805461ff0019169055565b60006107e882600019610781565b601554604051631730cfdd60e21b81526001600160a01b0383811660048301526000921690635cc33f74906024015b602060405180830381865afa158015610b54573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e89190611fdf565b6000546001600160a01b03163314610ba25760405162461bcd60e51b815260040161081890611f8a565b600e80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610bee5760405162461bcd60e51b815260040161081890611f8a565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6015546040805163997664d760e01b815290516000926001600160a01b03169163997664d79160048083019260209291908290030181865afa158015610c63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a629190611fdf565b6000546001600160a01b03163314610cb15760405162461bcd60e51b815260040161081890611f8a565b600e811115610cf95760405162461bcd60e51b81526020600482015260146024820152734665652063616e2774206578636565642031342560601b6044820152606401610818565b600c55565b6015546040805163d54ad2a160e01b815290516000926001600160a01b03169163d54ad2a19160048083019260209291908290030181865afa158015610c63573d6000803e3d6000fd5b6000546001600160a01b03163314610d725760405162461bcd60e51b815260040161081890611f8a565b601554600160a01b900460ff1615610dcc5760405162461bcd60e51b815260206004820152601760248201527f63616e206f6e6c792062652063616c6c6564206f6e63650000000000000000006044820152606401610818565b6015805460ff60a01b1916600160a01b179055565b601554604051638ecc37fb60e01b81526001600160a01b0383811660048301526000921690638ecc37fb90602401610b37565b60006109813384846110f3565b6000546001600160a01b03163314610e4b5760405162461bcd60e51b815260040161081890611f8a565b436011556012805460ff19166001179055565b601554604051630afbf02f60e11b81523360048201526001600160a01b03909116906315f7e05e90602401600060405180830381600087803b158015610ea357600080fd5b505af1158015610eb7573d6000803e3d6000fd5b50505050565b6000546001600160a01b03163314610ee75760405162461bcd60e51b815260040161081890611f8a565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b6000546001600160a01b03163314610f655760405162461bcd60e51b815260040161081890611f8a565b600e5460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610abf573d6000803e3d6000fd5b6000546001600160a01b03163314610fc95760405162461bcd60e51b815260040161081890611f8a565b610abf82826116f1565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526006909152918220546110249184906110b9565b6001600160a01b0380861660009081526006602052604080822093909355908516815220546110539083611802565b6001600160a01b0380851660008181526006602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110a79086815260200190565b60405180910390a35060019392505050565b600081848411156110dd5760405162461bcd60e51b81526004016108189190611e05565b5060006110ea8486611ff8565b95945050505050565b600080546001600160a01b0385811691161480159061112057506000546001600160a01b03848116911614155b156111775760125460ff166111775760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c65642e00000000000000006044820152606401610818565b601554600160a01b900460ff1615611200576001600160a01b0384166000908152600b602052604090205460ff161580156111cb57506001600160a01b0383166000908152600b602052604090205460ff16155b6112005760405162461bcd60e51b815260040161081890602080825260049082015263426f742160e01b604082015260600190565b601254610100900460ff1615611282576000546001600160a01b0385811691161480159061123c57506000546001600160a01b03848116911614155b15611282576013548211156112825760405162461bcd60e51b815260206004820152600c60248201526b2a37b79036bab1b41039b4b960a11b6044820152606401610818565b6010546001600160a01b0385811691161480156112ad5750600f546001600160a01b03848116911614155b80156112d257506001600160a01b03831660009081526009602052604090205460ff16155b1561136f576001600160a01b03831660009081526008602052604090205442116112fb57600080fd5b61130642603c61200f565b6001600160a01b03841660009081526008602052604090205560115461132d90600161200f565b431161136f576001600160a01b0383166000908152600b602090815260408083208054600160ff199182168117909255600a9093529220805490911690911790555b601554600160a81b900460ff16156113935761138c848484610fd3565b9050610981565b3060009081526006602052604081205460145490919082108015919082906113c857506010546001600160a01b038781169116145b80156113e1575030600090815260066020526040812054115b905080156113f1576113f1611861565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038a166000908152600690915291909120546114439187906110b9565b6001600160a01b0388166000908152600660205260408120919091556114698888611a88565b611473578561147d565b61147d8887611afd565b6001600160a01b0388166000908152600660205260409020549091506114a39082611802565b6001600160a01b038089166000908152600660205260409020919091556010548982169116148015906114ef57506001600160a01b0388166000908152600a602052604090205460ff16155b15611565576015546001600160a01b0389811660008181526006602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561155257600080fd5b505af1925050508015611563575060015b505b6010546001600160a01b0388811691161480159061159c57506001600160a01b0387166000908152600a602052604090205460ff16155b15611612576015546001600160a01b0388811660008181526006602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b1580156115ff57600080fd5b505af1925050508015611610575060015b505b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161165791815260200190565b60405180910390a3506001979650505050505050565b600061098183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ba9565b600061098183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110b9565b6001600160a01b038216301480159061171857506010546001600160a01b03838116911614155b61172157600080fd5b6001600160a01b0382166000908152600a60205260409020805460ff191682158015919091179091556117b957601554604051630a5b654b60e11b81526001600160a01b03848116600483015260006024830152909116906314b6ca96906044015b600060405180830381600087803b15801561179d57600080fd5b505af11580156117b1573d6000803e3d6000fd5b505050505050565b6015546001600160a01b0383811660008181526006602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401611783565b60008061180f838561200f565b9050838110156109815760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610818565b6015805460ff60a81b1916600160a81b17905530600090815260066020526040812054905061189961189482600261166d565b611bd7565b6118ac6118a782600261166d565b611c82565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015611913573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119379190611fdf565b60155460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529192506000917f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303816000875af11580156119b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119d59190612027565b90508015611a3c5760155460405163b6b55f2560e01b8152600481018490526001600160a01b039091169063b6b55f2590602401600060405180830381600087803b158015611a2357600080fd5b505af1158015611a37573d6000803e3d6000fd5b505050505b600e546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611a75573d6000803e3d6000fd5b50506015805460ff60a81b191690555050565b6001600160a01b03821660009081526009602052604081205460ff1680611ac757506001600160a01b03821660009081526009602052604090205460ff165b15801561098157506010546001600160a01b03848116911614806109815750506010546001600160a01b03908116911614919050565b600080611b21600d54611b1b600c5486611d8390919063ffffffff16565b9061166d565b30600090815260066020526040902054909150611b3e9082611802565b30600081815260066020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611b8f9085815260200190565b60405180910390a3611ba183826116af565b949350505050565b60008183611bca5760405162461bcd60e51b81526004016108189190611e05565b5060006110ea8486612044565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611c0c57611c0c612066565b6001600160a01b0392831660209182029290920101526001805483519216918391908110611c3c57611c3c612066565b6001600160a01b039283166020918202929092010152600f5460405163791ac94760e01b815291169063791ac9479061178390859060009086903090429060040161207c565b60408051600380825260808201909252600091602082016060803683370190505090503081600081518110611cb957611cb9612066565b6001600160a01b0392831660209182029290920101526001805483519216918391908110611ce957611ce9612066565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600281518110611d3d57611d3d612066565b6001600160a01b039283166020918202929092010152600f54604051635c11d79560e01b8152911690635c11d7959061178390859060009086903090429060040161207c565b600082600003611d95575060006107e8565b6000611da18385611fc0565b905082611dae8583612044565b146109815760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610818565b600060208083528351808285015260005b81811015611e3257858101830151858201604001528201611e16565b81811115611e44576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b0381168114611e6f57600080fd5b50565b60008060408385031215611e8557600080fd5b8235611e9081611e5a565b946020939093013593505050565b600060208284031215611eb057600080fd5b813561098181611e5a565b600060208284031215611ecd57600080fd5b5035919050565b600080600060608486031215611ee957600080fd5b8335611ef481611e5a565b92506020840135611f0481611e5a565b929592945050506040919091013590565b8015158114611e6f57600080fd5b60008060408385031215611f3657600080fd5b8235611f4181611e5a565b91506020830135611f5181611f15565b809150509250929050565b60008060408385031215611f6f57600080fd5b8235611f7a81611e5a565b91506020830135611f5181611e5a565b60208082526006908201526510a7bbb732b960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615611fda57611fda611faa565b500290565b600060208284031215611ff157600080fd5b5051919050565b60008282101561200a5761200a611faa565b500390565b6000821982111561202257612022611faa565b500190565b60006020828403121561203957600080fd5b815161098181611f15565b60008261206157634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156120cc5784516001600160a01b0316835293830193918301916001016120a7565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122016b2ba7577d0c8f0f66bec74d729d616786e2c1fd3c1af5d537040dee7aef4da64736f6c634300080d003360a0604052737db5af2b9624e1b3b4bb69d6debd9ad1016a58ac6080526ec097ce7bc90715b34b9f100000000060095534801561003b57600080fd5b50604051610da1380380610da183398101604081905261005a9161008d565b60008054336001600160a01b031991821617909155600180549091166001600160a01b03929092169190911790556100bd565b60006020828403121561009f57600080fd5b81516001600160a01b03811681146100b657600080fd5b9392505050565b608051610cc26100df600039600081816102db01526107420152610cc26000f3fe6080604052600436106100e15760003560e01c8063b2bdfa7b1161007f578063d54ad2a111610059578063d54ad2a11461027d578063e2d2e21914610293578063ecd0c0c3146102a9578063ed5fe921146102c957600080fd5b8063b2bdfa7b146101ce578063b6b55f2514610206578063ce7c2ac21461022657600080fd5b80633a98ef39116100bb5780633a98ef391461014f5780635cc33f74146101785780638ecc37fb14610198578063997664d7146101b857600080fd5b80631014edf5146100ed57806314b6ca961461010f57806315f7e05e1461012f57600080fd5b366100e857005b600080fd5b3480156100f957600080fd5b5061010d610108366004610ad9565b6102fd565b005b34801561011b57600080fd5b5061010d61012a366004610b05565b61035d565b34801561013b57600080fd5b5061010d61014a366004610b2f565b6104d5565b34801561015b57600080fd5b5061016560055481565b6040519081526020015b60405180910390f35b34801561018457600080fd5b50610165610193366004610b2f565b6104f8565b3480156101a457600080fd5b506101656101b3366004610b2f565b61058c565b3480156101c457600080fd5b5061016560065481565b3480156101da57600080fd5b506001546101ee906001600160a01b031681565b6040516001600160a01b03909116815260200161016f565b34801561021257600080fd5b5061010d610221366004610b4a565b610617565b34801561023257600080fd5b50610262610241366004610b2f565b60046020526000908152604090208054600182015460029092015490919083565b6040805193845260208401929092529082015260600161016f565b34801561028957600080fd5b5061016560075481565b34801561029f57600080fd5b5061016560085481565b3480156102b557600080fd5b506000546101ee906001600160a01b031681565b3480156102d557600080fd5b506101ee7f000000000000000000000000000000000000000000000000000000000000000081565b6001546001600160a01b0316331461031457600080fd5b476001600160a01b0382166108fc8461032d578261032f565b845b6040518115909202916000818181858888f19350505050158015610357573d6000803e3d6000fd5b50505050565b6000546001600160a01b0316331461037457600080fd5b6001600160a01b0382166000908152600460205260409020541561039b5761039b82610671565b6000811180156103c157506001600160a01b038216600090815260046020526040902054155b1561042757600280546001600160a01b0384166000818152600360205260408120839055600183018455929092527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0180546001600160a01b031916909117905561045a565b8015801561044c57506001600160a01b03821660009081526004602052604090205415155b1561045a5761045a826107b5565b6001600160a01b03821660009081526004602052604090205460055461048b918391610485916108ca565b90610915565b6005556001600160a01b03821660009081526004602052604090208190556104b281610974565b6001600160a01b0390921660009081526004602052604090206001019190915550565b6000546001600160a01b031633146104ec57600080fd5b6104f581610671565b50565b6001600160a01b03811660009081526004602052604081205461056d5760405162461bcd60e51b815260206004820152602260248201527f596f75277265206e6f74206120564f4c5442414e4b207368617265686f6c6465604482015261722160f01b60648201526084015b60405180910390fd5b506001600160a01b031660009081526004602052604090206002015490565b6001600160a01b03811660009081526004602052604081205481036105b357506000919050565b6001600160a01b0382166000908152600460205260408120546105d590610974565b6001600160a01b038416600090815260046020526040902060010154909150808211610605575060009392505050565b61060f82826108ca565b949350505050565b6000546001600160a01b0316331461062e57600080fd5b80156104f5576006546106419082610915565b60065560055460095461066b916106629161065c9085610991565b90610a13565b60085490610915565b60085550565b6001600160a01b03811660009081526004602052604081205490036106935750565b600061069e8261058c565b905080156107b1576007546106b39082610915565b6007556001600160a01b0382166000908152600460205260409020600201546106dc9082610915565b6001600160a01b038316600090815260046020526040902060028101919091555461070690610974565b6001600160a01b03838116600081815260046020819052604091829020600101949094555163a9059cbb60e01b815292830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af115801561078b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107af9190610b63565b505b5050565b600280546107c590600190610b9b565b815481106107d5576107d5610bb2565b60009182526020808320909101546001600160a01b038481168452600390925260409092205460028054929093169291811061081357610813610bb2565b600091825260208083209190910180546001600160a01b0319166001600160a01b0394851617905591831681526003918290526040812054600280549193929161085f90600190610b9b565b8154811061086f5761086f610bb2565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560028054806108a5576108a5610bc8565b600082815260209020810160001990810180546001600160a01b031916905501905550565b600061090c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610a55565b90505b92915050565b6000806109228385610bde565b90508381101561090c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610564565b600061090f60095461065c6008548561099190919063ffffffff16565b6000826000036109a35750600061090f565b60006109af8385610bf6565b9050826109bc8583610c15565b1461090c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610564565b600061090c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610a8f565b60008184841115610a795760405162461bcd60e51b81526004016105649190610c37565b506000610a868486610b9b565b95945050505050565b60008183610ab05760405162461bcd60e51b81526004016105649190610c37565b506000610a868486610c15565b80356001600160a01b0381168114610ad457600080fd5b919050565b60008060408385031215610aec57600080fd5b82359150610afc60208401610abd565b90509250929050565b60008060408385031215610b1857600080fd5b610b2183610abd565b946020939093013593505050565b600060208284031215610b4157600080fd5b61090c82610abd565b600060208284031215610b5c57600080fd5b5035919050565b600060208284031215610b7557600080fd5b8151801515811461090c57600080fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610bad57610bad610b85565b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b60008219821115610bf157610bf1610b85565b500190565b6000816000190483118215151615610c1057610c10610b85565b500290565b600082610c3257634e487b7160e01b600052601260045260246000fd5b500490565b600060208083528351808285015260005b81811015610c6457858101830151858201604001528201610c48565b81811115610c76576000604083870101525b50601f01601f191692909201604001939250505056fea264697066735822122014b2533c7e3cb32956003c2bb9bc456488dee733b2474fcd4010daea2bc72f3e64736f6c634300080d00330000000000000000000000006edaff2857b872745aa8bc4270943cff384b4149

Deployed Bytecode

0x6080604052600436106102345760003560e01c8063736a83a11161012e578063bffb691d116100ab578063f0fc6bca1161006f578063f0fc6bca146106f7578063f2fde38b1461070c578063f42938901461072c578063f708a64f14610741578063f887ea401461076157600080fd5b8063bffb691d14610631578063c9567bf914610652578063d12a768814610667578063dd62ed3e1461067d578063ed5fe921146106c357600080fd5b806395d89b41116100f257806395d89b4114610575578063a8aa1b31146105a2578063a9059cbb146105c2578063b1a4e0dc146105e2578063bf56b3711461061b57600080fd5b8063736a83a1146104d557806375f0a874146104ea578063764ca51214610522578063893d20e8146105375780638ecc37fb1461055557600080fd5b8063313ce567116101bc5780635d098b38116101805780635d098b381461042a578063658d4b7f1461044a57806367ee5f091461046a57806369fe0e2d1461047f57806370a082311461049f57600080fd5b8063313ce56714610399578063342aa8b5146103b55780633e07ce5b146103d5578063571ac8b0146103ea5780635cc33f741461040a57600080fd5b806323b635851161020357806323b63585146102f557806323b872dd1461031557806329e04b4a146103355780632b112e49146103555780632f54bf6e1461036a57600080fd5b806306fdde0314610240578063095ea7b31461028457806315f7e05e146102b457806318160ddd146102d657600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b506040805180820190915260098152681098589e48159bdb1d60ba1b60208201525b60405161027b9190611e05565b60405180910390f35b34801561029057600080fd5b506102a461029f366004611e72565b610781565b604051901515815260200161027b565b3480156102c057600080fd5b506102d46102cf366004611e9e565b6107ee565b005b3480156102e257600080fd5b506004545b60405190815260200161027b565b34801561030157600080fd5b506102a4610310366004611ebb565b610883565b34801561032157600080fd5b506102a4610330366004611ed4565b6108c6565b34801561034157600080fd5b506102d4610350366004611ebb565b610988565b34801561036157600080fd5b506102e7610a15565b34801561037657600080fd5b506102a4610385366004611e9e565b6000546001600160a01b0391821691161490565b3480156103a557600080fd5b506040516009815260200161027b565b3480156103c157600080fd5b506102d46103d0366004611f23565b610a67565b3480156103e157600080fd5b506102d4610ac3565b3480156103f657600080fd5b506102a4610405366004611e9e565b610afa565b34801561041657600080fd5b506102e7610425366004611e9e565b610b08565b34801561043657600080fd5b506102d4610445366004611e9e565b610b78565b34801561045657600080fd5b506102d4610465366004611f23565b610bc4565b34801561047657600080fd5b506102e7610c19565b34801561048b57600080fd5b506102d461049a366004611ebb565b610c87565b3480156104ab57600080fd5b506102e76104ba366004611e9e565b6001600160a01b031660009081526006602052604090205490565b3480156104e157600080fd5b506102e7610cfe565b3480156104f657600080fd5b50600e5461050a906001600160a01b031681565b6040516001600160a01b03909116815260200161027b565b34801561052e57600080fd5b506102d4610d48565b34801561054357600080fd5b506000546001600160a01b031661050a565b34801561056157600080fd5b506102e7610570366004611e9e565b610de1565b34801561058157600080fd5b506040805180820190915260048152631093d31560e21b602082015261026e565b3480156105ae57600080fd5b5060105461050a906001600160a01b031681565b3480156105ce57600080fd5b506102a46105dd366004611e72565b610e14565b3480156105ee57600080fd5b506102a46105fd366004611e9e565b6001600160a01b03166000908152600b602052604090205460ff1690565b34801561062757600080fd5b506102e760115481565b34801561063d57600080fd5b506015546102a490600160a01b900460ff1681565b34801561065e57600080fd5b506102d4610e21565b34801561067357600080fd5b506102e760145481565b34801561068957600080fd5b506102e7610698366004611f5c565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b3480156106cf57600080fd5b5061050a7f0000000000000000000000007db5af2b9624e1b3b4bb69d6debd9ad1016a58ac81565b34801561070357600080fd5b506102d4610e5e565b34801561071857600080fd5b506102d4610727366004611e9e565b610ebd565b34801561073857600080fd5b506102d4610f3b565b34801561074d57600080fd5b506102d461075c366004611f23565b610f9f565b34801561076d57600080fd5b50600f5461050a906001600160a01b031681565b3360008181526007602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906107dc9086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b031633146108215760405162461bcd60e51b815260040161081890611f8a565b60405180910390fd5b601554604051630afbf02f60e11b81526001600160a01b038381166004830152909116906315f7e05e90602401600060405180830381600087803b15801561086857600080fd5b505af115801561087c573d6000803e3d6000fd5b5050505050565b600080546001600160a01b031633146108ae5760405162461bcd60e51b815260040161081890611f8a565b6002546107e89030906001600160a01b031684610fd3565b6001600160a01b038316600090815260076020908152604080832033845290915281205460001914610973576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b038716600090815260078252838120338252909152919091205461094e9184906110b9565b6001600160a01b03851660009081526007602090815260408083203384529091529020555b61097e8484846110f3565b90505b9392505050565b6000546001600160a01b031633146109b25760405162461bcd60e51b815260040161081890611f8a565b6004546109c090606461166d565b811115610a015760405162461bcd60e51b815260206004820152600f60248201526e63616e27742065786365656420312560881b6044820152606401610818565b610a0f81633b9aca00611fc0565b60145550565b6003546001600160a01b0316600090815260066020526040812054610a62906002546001600160a01b0316600090815260066020526040902054610a5c90600454906116af565b906116af565b905090565b6000546001600160a01b03163314610a915760405162461bcd60e51b815260040161081890611f8a565b6001600160a01b0382166000908152600b60205260409020805460ff1916821515179055610abf82826116f1565b5050565b6000546001600160a01b03163314610aed5760405162461bcd60e51b815260040161081890611f8a565b6012805461ff0019169055565b60006107e882600019610781565b601554604051631730cfdd60e21b81526001600160a01b0383811660048301526000921690635cc33f74906024015b602060405180830381865afa158015610b54573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e89190611fdf565b6000546001600160a01b03163314610ba25760405162461bcd60e51b815260040161081890611f8a565b600e80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610bee5760405162461bcd60e51b815260040161081890611f8a565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6015546040805163997664d760e01b815290516000926001600160a01b03169163997664d79160048083019260209291908290030181865afa158015610c63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a629190611fdf565b6000546001600160a01b03163314610cb15760405162461bcd60e51b815260040161081890611f8a565b600e811115610cf95760405162461bcd60e51b81526020600482015260146024820152734665652063616e2774206578636565642031342560601b6044820152606401610818565b600c55565b6015546040805163d54ad2a160e01b815290516000926001600160a01b03169163d54ad2a19160048083019260209291908290030181865afa158015610c63573d6000803e3d6000fd5b6000546001600160a01b03163314610d725760405162461bcd60e51b815260040161081890611f8a565b601554600160a01b900460ff1615610dcc5760405162461bcd60e51b815260206004820152601760248201527f63616e206f6e6c792062652063616c6c6564206f6e63650000000000000000006044820152606401610818565b6015805460ff60a01b1916600160a01b179055565b601554604051638ecc37fb60e01b81526001600160a01b0383811660048301526000921690638ecc37fb90602401610b37565b60006109813384846110f3565b6000546001600160a01b03163314610e4b5760405162461bcd60e51b815260040161081890611f8a565b436011556012805460ff19166001179055565b601554604051630afbf02f60e11b81523360048201526001600160a01b03909116906315f7e05e90602401600060405180830381600087803b158015610ea357600080fd5b505af1158015610eb7573d6000803e3d6000fd5b50505050565b6000546001600160a01b03163314610ee75760405162461bcd60e51b815260040161081890611f8a565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b6000546001600160a01b03163314610f655760405162461bcd60e51b815260040161081890611f8a565b600e5460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610abf573d6000803e3d6000fd5b6000546001600160a01b03163314610fc95760405162461bcd60e51b815260040161081890611f8a565b610abf82826116f1565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526006909152918220546110249184906110b9565b6001600160a01b0380861660009081526006602052604080822093909355908516815220546110539083611802565b6001600160a01b0380851660008181526006602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110a79086815260200190565b60405180910390a35060019392505050565b600081848411156110dd5760405162461bcd60e51b81526004016108189190611e05565b5060006110ea8486611ff8565b95945050505050565b600080546001600160a01b0385811691161480159061112057506000546001600160a01b03848116911614155b156111775760125460ff166111775760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c65642e00000000000000006044820152606401610818565b601554600160a01b900460ff1615611200576001600160a01b0384166000908152600b602052604090205460ff161580156111cb57506001600160a01b0383166000908152600b602052604090205460ff16155b6112005760405162461bcd60e51b815260040161081890602080825260049082015263426f742160e01b604082015260600190565b601254610100900460ff1615611282576000546001600160a01b0385811691161480159061123c57506000546001600160a01b03848116911614155b15611282576013548211156112825760405162461bcd60e51b815260206004820152600c60248201526b2a37b79036bab1b41039b4b960a11b6044820152606401610818565b6010546001600160a01b0385811691161480156112ad5750600f546001600160a01b03848116911614155b80156112d257506001600160a01b03831660009081526009602052604090205460ff16155b1561136f576001600160a01b03831660009081526008602052604090205442116112fb57600080fd5b61130642603c61200f565b6001600160a01b03841660009081526008602052604090205560115461132d90600161200f565b431161136f576001600160a01b0383166000908152600b602090815260408083208054600160ff199182168117909255600a9093529220805490911690911790555b601554600160a81b900460ff16156113935761138c848484610fd3565b9050610981565b3060009081526006602052604081205460145490919082108015919082906113c857506010546001600160a01b038781169116145b80156113e1575030600090815260066020526040812054115b905080156113f1576113f1611861565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038a166000908152600690915291909120546114439187906110b9565b6001600160a01b0388166000908152600660205260408120919091556114698888611a88565b611473578561147d565b61147d8887611afd565b6001600160a01b0388166000908152600660205260409020549091506114a39082611802565b6001600160a01b038089166000908152600660205260409020919091556010548982169116148015906114ef57506001600160a01b0388166000908152600a602052604090205460ff16155b15611565576015546001600160a01b0389811660008181526006602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561155257600080fd5b505af1925050508015611563575060015b505b6010546001600160a01b0388811691161480159061159c57506001600160a01b0387166000908152600a602052604090205460ff16155b15611612576015546001600160a01b0388811660008181526006602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b1580156115ff57600080fd5b505af1925050508015611610575060015b505b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161165791815260200190565b60405180910390a3506001979650505050505050565b600061098183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ba9565b600061098183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110b9565b6001600160a01b038216301480159061171857506010546001600160a01b03838116911614155b61172157600080fd5b6001600160a01b0382166000908152600a60205260409020805460ff191682158015919091179091556117b957601554604051630a5b654b60e11b81526001600160a01b03848116600483015260006024830152909116906314b6ca96906044015b600060405180830381600087803b15801561179d57600080fd5b505af11580156117b1573d6000803e3d6000fd5b505050505050565b6015546001600160a01b0383811660008181526006602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401611783565b60008061180f838561200f565b9050838110156109815760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610818565b6015805460ff60a81b1916600160a81b17905530600090815260066020526040812054905061189961189482600261166d565b611bd7565b6118ac6118a782600261166d565b611c82565b6040516370a0823160e01b81523060048201526000907f0000000000000000000000007db5af2b9624e1b3b4bb69d6debd9ad1016a58ac6001600160a01b0316906370a0823190602401602060405180830381865afa158015611913573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119379190611fdf565b60155460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529192506000917f0000000000000000000000007db5af2b9624e1b3b4bb69d6debd9ad1016a58ac9091169063a9059cbb906044016020604051808303816000875af11580156119b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119d59190612027565b90508015611a3c5760155460405163b6b55f2560e01b8152600481018490526001600160a01b039091169063b6b55f2590602401600060405180830381600087803b158015611a2357600080fd5b505af1158015611a37573d6000803e3d6000fd5b505050505b600e546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611a75573d6000803e3d6000fd5b50506015805460ff60a81b191690555050565b6001600160a01b03821660009081526009602052604081205460ff1680611ac757506001600160a01b03821660009081526009602052604090205460ff165b15801561098157506010546001600160a01b03848116911614806109815750506010546001600160a01b03908116911614919050565b600080611b21600d54611b1b600c5486611d8390919063ffffffff16565b9061166d565b30600090815260066020526040902054909150611b3e9082611802565b30600081815260066020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611b8f9085815260200190565b60405180910390a3611ba183826116af565b949350505050565b60008183611bca5760405162461bcd60e51b81526004016108189190611e05565b5060006110ea8486612044565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611c0c57611c0c612066565b6001600160a01b0392831660209182029290920101526001805483519216918391908110611c3c57611c3c612066565b6001600160a01b039283166020918202929092010152600f5460405163791ac94760e01b815291169063791ac9479061178390859060009086903090429060040161207c565b60408051600380825260808201909252600091602082016060803683370190505090503081600081518110611cb957611cb9612066565b6001600160a01b0392831660209182029290920101526001805483519216918391908110611ce957611ce9612066565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007db5af2b9624e1b3b4bb69d6debd9ad1016a58ac81600281518110611d3d57611d3d612066565b6001600160a01b039283166020918202929092010152600f54604051635c11d79560e01b8152911690635c11d7959061178390859060009086903090429060040161207c565b600082600003611d95575060006107e8565b6000611da18385611fc0565b905082611dae8583612044565b146109815760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610818565b600060208083528351808285015260005b81811015611e3257858101830151858201604001528201611e16565b81811115611e44576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b0381168114611e6f57600080fd5b50565b60008060408385031215611e8557600080fd5b8235611e9081611e5a565b946020939093013593505050565b600060208284031215611eb057600080fd5b813561098181611e5a565b600060208284031215611ecd57600080fd5b5035919050565b600080600060608486031215611ee957600080fd5b8335611ef481611e5a565b92506020840135611f0481611e5a565b929592945050506040919091013590565b8015158114611e6f57600080fd5b60008060408385031215611f3657600080fd5b8235611f4181611e5a565b91506020830135611f5181611f15565b809150509250929050565b60008060408385031215611f6f57600080fd5b8235611f7a81611e5a565b91506020830135611f5181611e5a565b60208082526006908201526510a7bbb732b960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615611fda57611fda611faa565b500290565b600060208284031215611ff157600080fd5b5051919050565b60008282101561200a5761200a611faa565b500390565b6000821982111561202257612022611faa565b500190565b60006020828403121561203957600080fd5b815161098181611f15565b60008261206157634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156120cc5784516001600160a01b0316835293830193918301916001016120a7565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122016b2ba7577d0c8f0f66bec74d729d616786e2c1fd3c1af5d537040dee7aef4da64736f6c634300080d0033

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

0000000000000000000000006edaff2857b872745aa8bc4270943cff384b4149

-----Decoded View---------------
Arg [0] : _owner (address): 0x6eDAFf2857b872745aa8BC4270943CFF384B4149

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000006edaff2857b872745aa8bc4270943cff384b4149


Deployed Bytecode Sourcemap

9631:11881:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12371:80;;;;;;;;;;-1:-1:-1;12443:5:0;;;;;;;;;;;;-1:-1:-1;;;12443:5:0;;;;12371:80;;;;;;;:::i;:::-;;;;;;;;12793:216;;;;;;;;;;-1:-1:-1;12793:216:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;12793:216:0;1072:187:1;19779:110:0;;;;;;;;;;-1:-1:-1;19779:110:0;;;;;:::i;:::-;;:::i;:::-;;12101:88;;;;;;;;;;-1:-1:-1;12174:12:0;;12101:88;;;1662:25:1;;;1650:2;1635:18;12101:88:0;1516:177:1;20069:139:0;;;;;;;;;;-1:-1:-1;20069:139:0;;;;;:::i;:::-;;:::i;13311:370::-;;;;;;;;;;-1:-1:-1;13311:370:0;;;;;:::i;:::-;;:::i;21297:206::-;;;;;;;;;;-1:-1:-1;21297:206:0;;;;;:::i;:::-;;:::i;20220:142::-;;;;;;;;;;;;;:::i;3158:103::-;;;;;;;;;;-1:-1:-1;3158:103:0;;;;;:::i;:::-;3213:4;3248:5;-1:-1:-1;;;;;3237:16:0;;;3248:5;;3237:16;;3158:103;12195:80;;;;;;;;;;-1:-1:-1;12195:80:0;;10111:1;2486:36:1;;2474:2;2459:18;12195:80:0;2344:184:1;18558:158:0;;;;;;;;;;-1:-1:-1;18558:158:0;;;;;:::i;:::-;;:::i;20926:80::-;;;;;;;;;;;;;:::i;13017:122::-;;;;;;;;;;-1:-1:-1;13017:122:0;;;;;:::i;:::-;;:::i;20761:157::-;;;;;;;;;;-1:-1:-1;20761:157:0;;;;;:::i;:::-;;:::i;20370:135::-;;;;;;;;;;-1:-1:-1;20370:135:0;;;;;:::i;:::-;;:::i;19219:119::-;;;;;;;;;;-1:-1:-1;19219:119:0;;;;;:::i;:::-;;:::i;20514:115::-;;;;;;;;;;;;;:::i;19346:139::-;;;;;;;;;;-1:-1:-1;19346:139:0;;;;;:::i;:::-;;:::i;12541:105::-;;;;;;;;;;-1:-1:-1;12541:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;12625:18:0;12607:7;12625:18;;;:9;:18;;;;;;;12541:105;20641:111;;;;;;;;;;;;;:::i;10686:92::-;;;;;;;;;;-1:-1:-1;10686:92:0;;;;-1:-1:-1;;;;;10686:92:0;;;;;;-1:-1:-1;;;;;3223:32:1;;;3205:51;;3193:2;3178:18;10686:92:0;3043:219:1;21124:165:0;;;;;;;;;;;;;:::i;12457:78::-;;;;;;;;;;-1:-1:-1;12509:7:0;12527:5;-1:-1:-1;;;;;12527:5:0;12457:78;;19901:156;;;;;;;;;;-1:-1:-1;19901:156:0;;;;;:::i;:::-;;:::i;12281:84::-;;;;;;;;;;-1:-1:-1;12355:7:0;;;;;;;;;;;;-1:-1:-1;;;12355:7:0;;;;12281:84;;10818:19;;;;;;;;;;-1:-1:-1;10818:19:0;;;;-1:-1:-1;;;;;10818:19:0;;;13147:156;;;;;;;;;;-1:-1:-1;13147:156:0;;;;;:::i;:::-;;:::i;21014:102::-;;;;;;;;;;-1:-1:-1;21014:102:0;;;;;:::i;:::-;-1:-1:-1;;;;;21094:14:0;21070:4;21094:14;;;:5;:14;;;;;;;;;21014:102;10846:25;;;;;;;;;;;;;;;;11137:36;;;;;;;;;;-1:-1:-1;11137:36:0;;;;-1:-1:-1;;;11137:36:0;;;;;;18423:115;;;;;;;;;;;;;:::i;11007:65::-;;;;;;;;;;;;;;;;12652:133;;;;;;;;;;-1:-1:-1;12652:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;12754:19:0;;;12736:7;12754:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;12652:133;9880:83;;;;;;;;;;;;;;;19677:90;;;;;;;;;;;;;:::i;3386:136::-;;;;;;;;;;-1:-1:-1;3386:136:0;;;;;:::i;:::-;;:::i;19495:174::-;;;;;;;;;;;;;:::i;19079:132::-;;;;;;;;;;-1:-1:-1;19079:132:0;;;;;:::i;:::-;;:::i;10787:24::-;;;;;;;;;;-1:-1:-1;10787:24:0;;;;-1:-1:-1;;;;;10787:24:0;;;12793:216;12897:10;12868:4;12885:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;12885:32:0;;;;;;;;;;:41;;;12942:37;12868:4;;12885:32;;12942:37;;;;12920:6;1662:25:1;;1650:2;1635:18;;1516:177;12942:37:0;;;;;;;;-1:-1:-1;12997:4:0;12793:216;;;;;:::o;19779:110::-;3213:4;3248:5;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;;;;;;;;;19848:11:::1;::::0;:33:::1;::::0;-1:-1:-1;;;19848:33:0;;-1:-1:-1;;;;;3223:32:1;;;19848:33:0::1;::::0;::::1;3205:51:1::0;19848:11:0;;::::1;::::0;:25:::1;::::0;3178:18:1;;19848:33:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;19779:110:::0;:::o;20069:139::-;20133:4;3248:5;;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;20187:4:::1;::::0;20157:43:::1;::::0;20180:4:::1;::::0;-1:-1:-1;;;;;20187:4:0::1;20193:6:::0;20157:14:::1;:43::i;13311:370::-:0;-1:-1:-1;;;;;13431:19:0;;13411:4;13431:19;;;:11;:19;;;;;;;;13451:10;13431:31;;;;;;;;-1:-1:-1;;13431:52:0;13428:186;;13533:69;;;;;;;;;;;-1:-1:-1;;;13533:69:0;;;;;;;;-1:-1:-1;;;;;13533:19:0;;-1:-1:-1;13533:19:0;;;:11;:19;;;;;13553:10;13533:31;;;;;;;;;;:69;;13569:6;;13533:35;:69::i;:::-;-1:-1:-1;;;;;13499:19:0;;;;;;:11;:19;;;;;;;;13519:10;13499:31;;;;;;;:103;13428:186;13633:40;13647:6;13655:9;13666:6;13633:13;:40::i;:::-;13626:47;;13311:370;;;;;;:::o;21297:206::-;3213:4;3248:5;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;21395:12:::1;::::0;:21:::1;::::0;21412:3:::1;21395:16;:21::i;:::-;21385:6;:31;;21376:60;;;::::0;-1:-1:-1;;;21376:60:0;;4890:2:1;21376:60:0::1;::::0;::::1;4872:21:1::0;4929:2;4909:18;;;4902:30;-1:-1:-1;;;4948:18:1;;;4941:45;5003:18;;21376:60:0::1;4688:339:1::0;21376:60:0::1;21479:16;:6:::0;21488:7:::1;21479:16;:::i;:::-;21447:29;:48:::0;-1:-1:-1;21297:206:0:o;20220:142::-;20348:4;;-1:-1:-1;;;;;20348:4:0;20273:7;12625:18;;;:9;:18;;;;;;20300:54;;20327:4;;-1:-1:-1;;;;;20327:4:0;12607:7;12625:18;;;:9;:18;;;;;;20300:33;;:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;20293:61;;20220:142;:::o;18558:158::-;3213:4;3248:5;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;18635:15:0;::::1;;::::0;;;:5:::1;:15;::::0;;;;:24;;-1:-1:-1;;18635:24:0::1;::::0;::::1;;;::::0;;18670:38:::1;18635:15:::0;:24;18670:20:::1;:38::i;:::-;18558:158:::0;;:::o;20926:80::-;3213:4;3248:5;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;20982:8:::1;:16:::0;;-1:-1:-1;;20982:16:0::1;::::0;;20926:80::o;13017:122::-;13072:4;13096:35;13104:7;-1:-1:-1;;13096:7:0;:35::i;20761:157::-;20864:11;;:46;;-1:-1:-1;;;20864:46:0;;-1:-1:-1;;;;;3223:32:1;;;20864:46:0;;;3205:51:1;20837:7:0;;20864:11;;:33;;3178:18:1;;20864:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;20370:135::-;3213:4;3248:5;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;20454:15:::1;:43:::0;;-1:-1:-1;;;;;;20454:43:0::1;-1:-1:-1::0;;;;;20454:43:0;;;::::1;::::0;;;::::1;::::0;;20370:135::o;19219:119::-;3213:4;3248:5;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;19302:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;19302:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;19219:119::o;20514:115::-;20593:11;;:28;;;-1:-1:-1;;;20593:28:0;;;;20566:7;;-1:-1:-1;;;;;20593:11:0;;:26;;:28;;;;;;;;;;;;;;:11;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19346:139::-;3213:4;3248:5;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;19424:2:::1;19416:4;:10;;19407:44;;;::::0;-1:-1:-1;;;19407:44:0;;5728:2:1;19407:44:0::1;::::0;::::1;5710:21:1::0;5767:2;5747:18;;;5740:30;-1:-1:-1;;;5786:18:1;;;5779:50;5846:18;;19407:44:0::1;5526:344:1::0;19407:44:0::1;19462:8;:15:::0;19346:139::o;20641:111::-;20718:11;;:26;;;-1:-1:-1;;;20718:26:0;;;;20691:7;;-1:-1:-1;;;;;20718:11:0;;:24;;:26;;;;;;;;;;;;;;:11;:26;;;;;;;;;;;;;;21124:165;3213:4;3248:5;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;21194:16:::1;::::0;-1:-1:-1;;;21194:16:0;::::1;;;:25;21185:62;;;::::0;-1:-1:-1;;;21185:62:0;;6077:2:1;21185:62:0::1;::::0;::::1;6059:21:1::0;6116:2;6096:18;;;6089:30;6155:25;6135:18;;;6128:53;6198:18;;21185:62:0::1;5875:347:1::0;21185:62:0::1;21258:16;:23:::0;;-1:-1:-1;;;;21258:23:0::1;-1:-1:-1::0;;;21258:23:0::1;::::0;;21124:165::o;19901:156::-;20002:11;;:47;;-1:-1:-1;;;20002:47:0;;-1:-1:-1;;;;;3223:32:1;;;20002:47:0;;;3205:51:1;19975:7:0;;20002:11;;:34;;3178:18:1;;20002:47:0;3043:219:1;13147:156:0;13227:4;13251:44;13265:10;13277:9;13288:6;13251:13;:44::i;18423:115::-;3213:4;3248:5;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;18489:12:::1;18476:10;:25:::0;18512:11:::1;:18:::0;;-1:-1:-1;;18512:18:0::1;18526:4;18512:18;::::0;;18423:115::o;19677:90::-;19722:11;;:37;;-1:-1:-1;;;19722:37:0;;19748:10;19722:37;;;3205:51:1;-1:-1:-1;;;;;19722:11:0;;;;:25;;3178:18:1;;19722:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19677:90::o;3386:136::-;3213:4;3248:5;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;3462:5:::1;:11:::0;;-1:-1:-1;;;;;;3462:11:0::1;-1:-1:-1::0;;;;;3462:11:0;::::1;::::0;;::::1;::::0;;;3489:25:::1;::::0;3205:51:1;;;3489:25:0::1;::::0;3193:2:1;3178:18;3489:25:0::1;;;;;;;3386:136:::0;:::o;19495:174::-;3213:4;3248:5;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;19616:15:::1;::::0;19608:53:::1;::::0;19576:21:::1;::::0;-1:-1:-1;;;;;19616:15:0::1;::::0;19608:53;::::1;;;::::0;19576:21;;19547:26:::1;19608:53:::0;19547:26;19608:53;19576:21;19616:15;19608:53;::::1;;;;;;;;;;;;;::::0;::::1;;;;19079:132:::0;3213:4;3248:5;-1:-1:-1;;;;;3248:5:0;3065:10;3237:16;3049:38;;;;-1:-1:-1;;;3049:38:0;;;;;;;:::i;:::-;19167:36:::1;19188:6;19196;19167:20;:36::i;15617:330::-:0;15747:53;;;;;;;;;;;-1:-1:-1;;;15747:53:0;;;;;;;;-1:-1:-1;;;;;15747:17:0;;15710:4;15747:17;;;:9;:17;;;;;;;:53;;15769:6;;15747:21;:53::i;:::-;-1:-1:-1;;;;;15727:17:0;;;;;;;:9;:17;;;;;;:73;;;;15834:20;;;;;;;:32;;15859:6;15834:24;:32::i;:::-;-1:-1:-1;;;;;15811:20:0;;;;;;;:9;:20;;;;;;;:55;;;;15882:35;;;;;;;;;;15910:6;1662:25:1;;1650:2;1635:18;;1516:177;15882:35:0;;;;;;;;-1:-1:-1;15935:4:0;15617:330;;;;;:::o;820:192::-;906:7;942:12;934:6;;;;926:29;;;;-1:-1:-1;;;926:29:0;;;;;;;;:::i;:::-;-1:-1:-1;966:9:0;978:5;982:1;978;:5;:::i;:::-;966:17;820:192;-1:-1:-1;;;;;820:192:0:o;13689:1916::-;13781:4;13811:5;;-1:-1:-1;;;;;13802:14:0;;;13811:5;;13802:14;;;;:35;;-1:-1:-1;13832:5:0;;-1:-1:-1;;;;;13820:17:0;;;13832:5;;13820:17;;13802:35;13798:89;;;13847:11;;;;13839:48;;;;-1:-1:-1;;;13839:48:0;;6775:2:1;13839:48:0;;;6757:21:1;6814:2;6794:18;;;6787:30;6853:26;6833:18;;;6826:54;6897:18;;13839:48:0;6573:348:1;13839:48:0;13942:16;;-1:-1:-1;;;13942:16:0;;;;13938:102;;;-1:-1:-1;;;;;13985:13:0;;;;;;:5;:13;;;;;;;;13984:14;:35;;;;-1:-1:-1;;;;;;14003:16:0;;;;;;:5;:16;;;;;;;;14002:17;13984:35;13975:53;;;;-1:-1:-1;;;13975:53:0;;;;;;7128:2:1;7110:21;;;7167:1;7147:18;;;7140:29;-1:-1:-1;;;7200:2:1;7185:18;;7178:34;7244:2;7229:18;;6926:327;13975:53:0;14054:8;;;;;;;14050:130;;;14092:5;;-1:-1:-1;;;;;14084:13:0;;;14092:5;;14084:13;;;;:34;;-1:-1:-1;14113:5:0;;-1:-1:-1;;;;;14101:17:0;;;14113:5;;14101:17;;14084:34;14080:80;;;14137:6;;14129;:14;;14120:40;;;;-1:-1:-1;;;14120:40:0;;7460:2:1;14120:40:0;;;7442:21:1;7499:2;7479:18;;;7472:30;-1:-1:-1;;;7518:18:1;;;7511:42;7570:18;;14120:40:0;7258:336:1;14120:40:0;14206:4;;-1:-1:-1;;;;;14196:14:0;;;14206:4;;14196:14;:46;;;;-1:-1:-1;14235:6:0;;-1:-1:-1;;;;;14214:28:0;;;14235:6;;14214:28;;14196:46;:73;;;;-1:-1:-1;;;;;;14247:22:0;;;;;;:11;:22;;;;;;;;14246:23;14196:73;14192:383;;;-1:-1:-1;;;;;14295:19:0;;;;;;:8;:19;;;;;;14317:15;-1:-1:-1;14286:47:0;;;;;;14370:28;:15;14388:10;14370:28;:::i;:::-;-1:-1:-1;;;;;14348:19:0;;;;;;:8;:19;;;;;:50;14434:10;;:14;;14447:1;14434:14;:::i;:::-;14417:12;:32;14413:151;;-1:-1:-1;;;;;14471:16:0;;;;;;:5;:16;;;;;;;;:23;;14490:4;-1:-1:-1;;14471:23:0;;;;;;;;14513:16;:27;;;;;:34;;;;;;;;;;14413:151;14597:6;;-1:-1:-1;;;14597:6:0;;;;14594:63;;;14613:41;14628:6;14636:9;14647:6;14613:14;:41::i;:::-;14606:48;;;;14594:63;14724:4;14675:28;12625:18;;;:9;:18;;;;;;14794:29;;12625:18;;14770:53;;;;;;14675:28;14770:53;;14863:38;;-1:-1:-1;14897:4:0;;-1:-1:-1;;;;;14886:15:0;;;14897:4;;14886:15;14863:38;:70;;;;-1:-1:-1;14923:4:0;14932:1;12625:18;;;:9;:18;;;;;;14905:28;14863:70;14840:94;;14948:14;14945:33;;;14965:10;:8;:10::i;:::-;15010:53;;;;;;;;;;;-1:-1:-1;;;15010:53:0;;;;;;;;-1:-1:-1;;;;;15010:17:0;;-1:-1:-1;15010:17:0;;;:9;:17;;;;;;;;:53;;15032:6;;15010:21;:53::i;:::-;-1:-1:-1;;;;;14990:17:0;;;;;;:9;:17;;;;;:73;;;;15101:32;15000:6;15123:9;15101:13;:32::i;:::-;:67;;15162:6;15101:67;;;15136:23;15144:6;15152;15136:7;:23::i;:::-;-1:-1:-1;;;;;15212:20:0;;;;;;:9;:20;;;;;;15076:92;;-1:-1:-1;15212:40:0;;15076:92;15212:24;:40::i;:::-;-1:-1:-1;;;;;15189:20:0;;;;;;;:9;:20;;;;;:63;;;;15278:4;;15268:14;;;15278:4;;15268:14;;;;:43;;-1:-1:-1;;;;;;15287:24:0;;;;;;:16;:24;;;;;;;;15286:25;15268:43;15265:114;;;15318:11;;-1:-1:-1;;;;;15347:17:0;;;15318:11;15347:17;;;:9;:17;;;;;;;;15318:47;;-1:-1:-1;;;15318:47:0;;;;;7906:51:1;;;;7973:18;;;7966:34;15318:11:0;;;:20;;7879:18:1;;15318:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15314:63;;15405:4;;-1:-1:-1;;;;;15392:17:0;;;15405:4;;15392:17;;;;:49;;-1:-1:-1;;;;;;15414:27:0;;;;;;:16;:27;;;;;;;;15413:28;15392:49;15389:126;;;15448:11;;-1:-1:-1;;;;;15480:20:0;;;15448:11;15480:20;;;:9;:20;;;;;;;;15448:53;;-1:-1:-1;;;15448:53:0;;;;;7906:51:1;;;;7973:18;;;7966:34;15448:11:0;;;:20;;7879:18:1;;15448:53:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15444:69;;15549:9;-1:-1:-1;;;;;15532:43:0;15541:6;-1:-1:-1;;;;;15532:43:0;;15560:14;15532:43;;;;1662:25:1;;1650:2;1635:18;;1516:177;15532:43:0;;;;;;;;-1:-1:-1;15593:4:0;;13689:1916;-1:-1:-1;;;;;;;13689:1916:0:o;1274:132::-;1332:7;1359:39;1363:1;1366;1359:39;;;;;;;;;;;;;;;;;:3;:39::i;678:136::-;736:7;763:43;767:1;770;763:43;;;;;;;;;;;;;;;;;:3;:43::i;18734:337::-;-1:-1:-1;;;;;18821:23:0;;18839:4;18821:23;;;;:41;;-1:-1:-1;18858:4:0;;-1:-1:-1;;;;;18848:14:0;;;18858:4;;18848:14;;18821:41;18813:50;;;;;;-1:-1:-1;;;;;18874:24:0;;;;;;:16;:24;;;;;:33;;-1:-1:-1;;18874:33:0;;;;;;;;;;;;18918:146;;18943:11;;:31;;-1:-1:-1;;;18943:31:0;;-1:-1:-1;;;;;7924:32:1;;;18943:31:0;;;7906:51:1;18943:11:0;7973:18:1;;;7966:34;18943:11:0;;;;:20;;7879:18:1;;18943:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18558:158;;:::o;18918:146::-;19005:11;;-1:-1:-1;;;;;19034:17:0;;;19005:11;19034:17;;;:9;:17;;;;;;;;19005:47;;-1:-1:-1;;;19005:47:0;;;;;7906:51:1;;;;7973:18;;;7966:34;19005:11:0;;;:20;;7879:18:1;;19005:47:0;7732:274:1;491:181:0;549:7;;581:5;585:1;581;:5;:::i;:::-;569:17;;610:1;605;:6;;597:46;;;;-1:-1:-1;;;597:46:0;;8500:2:1;597:46:0;;;8482:21:1;8539:2;8519:18;;;8512:30;8578:29;8558:18;;;8551:57;8625:18;;597:46:0;8298:351:1;16539:549:0;11228:6;:13;;-1:-1:-1;;;;11228:13:0;-1:-1:-1;;;11228:13:0;;;16631:4:::1;-1:-1:-1::0;12625:18:0;;;:9;:18;;;;;;16590:47;-1:-1:-1;16658:37:0::1;16675:19;16590:47:::0;16692:1:::1;16675:16;:19::i;:::-;16658:16;:37::i;:::-;16706:38;16724:19;:12:::0;16741:1:::1;16724:16;:19::i;:::-;16706:17;:38::i;:::-;16777:37;::::0;-1:-1:-1;;;16777:37:0;;16808:4:::1;16777:37;::::0;::::1;3205:51:1::0;16757:17:0::1;::::0;16784:4:::1;-1:-1:-1::0;;;;;16777:22:0::1;::::0;::::1;::::0;3178:18:1;;16777:37:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16872:11;::::0;16842:54:::1;::::0;-1:-1:-1;;;16842:54:0;;-1:-1:-1;;;;;16872:11:0;;::::1;16842:54;::::0;::::1;7906:51:1::0;7973:18;;;7966:34;;;16757:57:0;;-1:-1:-1;16827:12:0::1;::::0;16849:4:::1;16842:21:::0;;::::1;::::0;::::1;::::0;7879:18:1;;16842:54:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16827:69;;16913:7;16909:82;;;16937:11;::::0;:30:::1;::::0;-1:-1:-1;;;16937:30:0;;::::1;::::0;::::1;1662:25:1::0;;;-1:-1:-1;;;;;16937:11:0;;::::1;::::0;:19:::1;::::0;1635:18:1;;16937:30:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;16909:82;17024:15;::::0;17016:56:::1;::::0;-1:-1:-1;;;;;17024:15:0;;::::1;::::0;17050:21:::1;17016:56:::0;::::1;;;::::0;17024:15:::1;17016:56:::0;17024:15;17016:56;17050:21;17024:15;17016:56;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;11246:6:0;:14;;-1:-1:-1;;;;11246:14:0;;;-1:-1:-1;;16539:549:0:o;15958:206::-;-1:-1:-1;;;;;16067:19:0;;16039:4;16067:19;;;:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;16090:22:0;;;;;;:11;:22;;;;;;;;16067:45;16065:48;:90;;;;-1:-1:-1;16129:4:0;;-1:-1:-1;;;;;16119:14:0;;;16129:4;;16119:14;;:35;;-1:-1:-1;;16150:4:0;;-1:-1:-1;;;;;16150:4:0;;;16137:17;;;;15958:206;-1:-1:-1;15958:206:0:o;16172:354::-;16239:7;16259:17;16299:40;16324:14;;16299:20;16310:8;;16299:6;:10;;:20;;;;:::i;:::-;:24;;:40::i;:::-;16395:4;16377:24;;;;:9;:24;;;;;;16287:52;;-1:-1:-1;16377:39:0;;16287:52;16377:28;:39::i;:::-;16368:4;16350:24;;;;:9;:24;;;;;;;:66;;;;16432:42;;-1:-1:-1;;;;;16432:42:0;;;;;;;16464:9;1662:25:1;;1650:2;1635:18;;1516:177;16432:42:0;;;;;;;;16497:21;:6;16508:9;16497:10;:21::i;:::-;16490:28;16172:354;-1:-1:-1;;;;16172:354:0:o;1412:345::-;1498:7;1600:12;1593:5;1585:28;;;;-1:-1:-1;;;1585:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1624:9:0;1636:5;1640:1;1636;:5;:::i;17542:489::-;17694:16;;;17708:1;17694:16;;;;;;;;17670:21;;17694:16;;;;;;;;;;-1:-1:-1;17694:16:0;17670:40;;17739:4;17721;17726:1;17721:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;17721:23:0;;;:7;;;;;;;;;:23;17765:4;;;17755:7;;17765:4;;;17755;;17765;17755:7;;;;;;:::i;:::-;-1:-1:-1;;;;;17755:14:0;;;:7;;;;;;;;;:14;17808:6;;:215;;-1:-1:-1;;;17808:215:0;;:6;;;:57;;:215;;17880:11;;17808:6;;17950:4;;17977;;17997:15;;17808:215;;;:::i;17104:430::-;17197:16;;;17211:1;17197:16;;;;;;;;;17173:21;;17197:16;;;;;;;;;;-1:-1:-1;17197:16:0;17173:40;;17242:4;17224;17229:1;17224:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;17224:23:0;;;:7;;;;;;;;;:23;17268:4;;;17258:7;;17268:4;;;17258;;17268;17258:7;;;;;;:::i;:::-;;;;;;:14;-1:-1:-1;;;;;17258:14:0;;;-1:-1:-1;;;;;17258:14:0;;;;;17293:4;17283;17288:1;17283:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;17283:14:0;;;:7;;;;;;;;;:14;17336:6;;:190;;-1:-1:-1;;;17336:190:0;;:6;;;:60;;:190;;17411:11;;17336:6;;17453:4;;17480;;17500:15;;17336:190;;;:::i;1018:250::-;1076:7;1100:1;1105;1100:6;1096:47;;-1:-1:-1;1130:1:0;1123:8;;1096:47;1155:9;1167:5;1171:1;1167;:5;:::i;:::-;1155:17;-1:-1:-1;1200:1:0;1191:5;1195:1;1155:17;1191:5;:::i;:::-;:10;1183:56;;;;-1:-1:-1;;;1183:56:0;;10577:2:1;1183:56:0;;;10559:21:1;10616:2;10596:18;;;10589:30;10655:34;10635:18;;;10628:62;-1:-1:-1;;;10706:18:1;;;10699:31;10747:19;;1183:56:0;10375:397:1;14:597;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;671:70;616:131;:::o;752:315::-;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;1264:247::-;1323:6;1376:2;1364:9;1355:7;1351:23;1347:32;1344:52;;;1392:1;1389;1382:12;1344:52;1431:9;1418:23;1450:31;1475:5;1450:31;:::i;1698:180::-;1757:6;1810:2;1798:9;1789:7;1785:23;1781:32;1778:52;;;1826:1;1823;1816:12;1778:52;-1:-1:-1;1849:23:1;;1698:180;-1:-1:-1;1698:180:1:o;1883:456::-;1960:6;1968;1976;2029:2;2017:9;2008:7;2004:23;2000:32;1997:52;;;2045:1;2042;2035:12;1997:52;2084:9;2071:23;2103:31;2128:5;2103:31;:::i;:::-;2153:5;-1:-1:-1;2210:2:1;2195:18;;2182:32;2223:33;2182:32;2223:33;:::i;:::-;1883:456;;2275:7;;-1:-1:-1;;;2329:2:1;2314:18;;;;2301:32;;1883:456::o;2533:118::-;2619:5;2612:13;2605:21;2598:5;2595:32;2585:60;;2641:1;2638;2631:12;2656:382;2721:6;2729;2782:2;2770:9;2761:7;2757:23;2753:32;2750:52;;;2798:1;2795;2788:12;2750:52;2837:9;2824:23;2856:31;2881:5;2856:31;:::i;:::-;2906:5;-1:-1:-1;2963:2:1;2948:18;;2935:32;2976:30;2935:32;2976:30;:::i;:::-;3025:7;3015:17;;;2656:382;;;;;:::o;3475:388::-;3543:6;3551;3604:2;3592:9;3583:7;3579:23;3575:32;3572:52;;;3620:1;3617;3610:12;3572:52;3659:9;3646:23;3678:31;3703:5;3678:31;:::i;:::-;3728:5;-1:-1:-1;3785:2:1;3770:18;;3757:32;3798:33;3757:32;3798:33;:::i;4354:329::-;4556:2;4538:21;;;4595:1;4575:18;;;4568:29;-1:-1:-1;;;4628:2:1;4613:18;;4606:36;4674:2;4659:18;;4354:329::o;5032:127::-;5093:10;5088:3;5084:20;5081:1;5074:31;5124:4;5121:1;5114:15;5148:4;5145:1;5138:15;5164:168;5204:7;5270:1;5266;5262:6;5258:14;5255:1;5252:21;5247:1;5240:9;5233:17;5229:45;5226:71;;;5277:18;;:::i;:::-;-1:-1:-1;5317:9:1;;5164:168::o;5337:184::-;5407:6;5460:2;5448:9;5439:7;5435:23;5431:32;5428:52;;;5476:1;5473;5466:12;5428:52;-1:-1:-1;5499:16:1;;5337:184;-1:-1:-1;5337:184:1:o;6443:125::-;6483:4;6511:1;6508;6505:8;6502:34;;;6516:18;;:::i;:::-;-1:-1:-1;6553:9:1;;6443:125::o;7599:128::-;7639:3;7670:1;7666:6;7663:1;7660:13;7657:39;;;7676:18;;:::i;:::-;-1:-1:-1;7712:9:1;;7599:128::o;8654:245::-;8721:6;8774:2;8762:9;8753:7;8749:23;8745:32;8742:52;;;8790:1;8787;8780:12;8742:52;8822:9;8816:16;8841:28;8863:5;8841:28;:::i;8904:217::-;8944:1;8970;8960:132;;9014:10;9009:3;9005:20;9002:1;8995:31;9049:4;9046:1;9039:15;9077:4;9074:1;9067:15;8960:132;-1:-1:-1;9106:9:1;;8904:217::o;9258:127::-;9319:10;9314:3;9310:20;9307:1;9300:31;9350:4;9347:1;9340:15;9374:4;9371:1;9364:15;9390:980;9652:4;9700:3;9689:9;9685:19;9731:6;9720:9;9713:25;9757:2;9795:6;9790:2;9779:9;9775:18;9768:34;9838:3;9833:2;9822:9;9818:18;9811:31;9862:6;9897;9891:13;9928:6;9920;9913:22;9966:3;9955:9;9951:19;9944:26;;10005:2;9997:6;9993:15;9979:29;;10026:1;10036:195;10050:6;10047:1;10044:13;10036:195;;;10115:13;;-1:-1:-1;;;;;10111:39:1;10099:52;;10206:15;;;;10171:12;;;;10147:1;10065:9;10036:195;;;-1:-1:-1;;;;;;;10287:32:1;;;;10282:2;10267:18;;10260:60;-1:-1:-1;;;10351:3:1;10336:19;10329:35;10248:3;9390:980;-1:-1:-1;;;9390:980:1:o

Swarm Source

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