ETH Price: $3,894.65 (+0.26%)

Token

ERC-20: DoggyTama (DOGGYTAMA)
 

Overview

Max Total Supply

1,000,000 DOGGYTAMA

Holders

56

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
10,000 DOGGYTAMA

Value
$0.00
0xec9e5d8788a8944ba21621d71aa523949e07db9d
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:
DoggyTama

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

/* 

  ____      U  ___ u   ____     ____  __   __  _____      _      __  __      _      
 |  _"\      \/"_ \/U /"___|uU /"___|u\ \ / / |_ " _| U  /"\  uU|' \/ '|uU  /"\  u  
/| | | |     | | | |\| |  _ /\| |  _ / \ V /    | |    \/ _ \/ \| |\/| |/ \/ _ \/   
U| |_| |\.-,_| |_| | | |_| |  | |_| | U_|"|_u  /| |\   / ___ \  | |  | |  / ___ \   
 |____/ u \_)-\___/   \____|   \____|   |_|   u |_|U  /_/   \_\ |_|  |_| /_/   \_\  
  |||_         \\     _)(|_    _)(|_.-,//|(_  _// \\_  \\    >><<,-,,-.   \\    >>  
 (__)_)       (__)   (__)__)  (__)__)\_) (__)(__) (__)(__)  (__)(./  \.) (__)  (__)                                                              
                                                               
DOGGYTAMA🐶🥷🏻

$DOGGYTAMA is a community-driven token born to both give investors a funny and meme space to ape safely as well as give back to people and countries in need.🥷🏻

🐶🥷🏻 Tokenomics 

Total supply: 1 mln 
Taxes: 9% on buys/on sells (18% first 24 hours after launch)
Initial LP: 4 ETH
Circulating Supply: 50%
Burn: 50%


*/ 

// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.8.7;

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

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

/**
 * 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() external payable;
    function claimDividend(address shareholder) external;
    function setCharity(address charity) external;
    function getDividendsClaimedOf (address shareholder) external returns (uint256);
}

contract DividendDistributor is IDividendDistributor {
    using SafeMath for uint256;

    address public _token;
    address public _owner;
    address public _charity;

    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, address charity) {
        _token = msg.sender;
        _owner = owner;
        _charity = charity;
    }

   // 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() external payable override {
       
        uint256 amount = msg.value;
        
        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);
            payable(shareholder).transfer(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 setCharity(address charity) external onlyToken {
        _charity = payable(charity);
    }

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

    }

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

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

    string private constant  _name = "DoggyTama";
    string private constant _symbol = "DOGGYTAMA";
    uint8 private constant _decimals = 9;

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

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

    mapping (address => bool) private isFeeExempt;
    mapping (address => bool) private isDividendExempt;
    mapping (address => bool) private isBot;
    

        
    uint256 private totalFee = 18;
    uint256 private feeDenominator = 100;

    address payable public marketingWallet = payable(0xa6C30C1C6f067528A167B3766a974c650AD7eC2C);
    address payable public charity = payable(0x1033A7d96C137f29A0b5a2c8B16034373DDc71B3);

    IDEXRouter public router;
    address public pair;

    uint256 public launchedAt;
    bool private tradingOpen;
    bool private buyLimit = true;
    uint256 private maxBuy = 1000000 * (10 ** _decimals);

    DividendDistributor private distributor;

    
    
    
    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, charity);

        isFeeExempt[_owner] = true;
        isFeeExempt[marketingWallet] = true;
        isFeeExempt[charity] = 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
        require (!isBot[sender] && !isBot[recipient], "Nice try");
        if (buyLimit) { 
            if (sender!=owner && recipient!= owner) require (amount<=maxBuy, "Too much sir");        
        }
        if (block.number <= (launchedAt + 1)) { 
            isBot[recipient] = true;
            isDividendExempt[recipient] = true; 
        }
       
        if(inSwap){ return _basicTransfer(sender, recipient, amount); }      
    
        bool shouldSwapBack = /*!inSwap &&*/ (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));

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

        
        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amountToSwap,
            0,
            path,
            address(this),
            block.timestamp
        );
        
        uint256 amountcharity = (address(this).balance).div(2);
        uint256 amountMarketing = (address(this).balance).div(2);

             
        payable(marketingWallet).transfer(amountMarketing);
        payable(charity).transfer(amountcharity);
    }

    
    function openTrading() external onlyOwner {
        launchedAt = block.number;
        tradingOpen = true;
    }    
  
    
    function setBot(address _address, bool toggle) external onlyOwner {
        isBot[_address] = toggle;
        _setIsDividendExempt(_address, toggle);
    }
    
    function isInBot(address _address) external view onlyOwner returns (bool) {
        return isBot[_address];
    }
    
    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 <= 18, "Fee can't exceed 18%");
        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 setCharity(address _charity) external onlyOwner {
        charity = payable(_charity);
        distributor.setCharity(_charity);
    }

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

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":[{"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":"charity","outputs":[{"internalType":"address payable","name":"","type":"address"}],"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":"_address","type":"address"}],"name":"isInBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"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":"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":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"toggle","type":"bool"}],"name":"setBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_charity","type":"address"}],"name":"setCharity","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":[],"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"}]

6080604052600280546001600160a01b031990811661dead17909155600380549091169055620000326009600a6200052d565b6200004190620f424062000545565b60048190556005556012600b8190556064600c55600d80546001600160a01b031990811673a6c30c1c6f067528a167b3766a974c650ad7ec2c17909155600e8054909116731033a7d96c137f29a0b5a2c8b16034373ddc71b3179055805461ff001916610100179055620000b86009600a6200052d565b620000c790620f424062000545565b601355348015620000d757600080fd5b5060405162002fb738038062002fb7833981016040819052620000fa9162000567565b600080546001600160a01b03199081166001600160a01b03841617909155600f8054737a250d5630b4cf539739df2c5dacb4c659f2488d921682179055604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa15801562000173573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000199919062000567565b600180546001600160a01b0319166001600160a01b03928316179055600f546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa158015620001f8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021e919062000567565b6001546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af115801562000270573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000296919062000567565b601080546001600160a01b0319166001600160a01b03928316179055306000908152600760209081526040808320600f5485168452909152908190206000199055600e54905183929190911690620002ee906200040a565b6001600160a01b03928316815291166020820152604001604051809103906000f08015801562000322573d6000803e3d6000fd5b50601480546001600160a01b0319166001600160a01b039283161790558181166000818152600860209081526040808320805460ff199081166001908117909255600d54871685528285208054821683179055600e548716855282852080548216831790556010548716855260098452828520805482168317905530855282852080548216831790556002549096168452818420805490961617909455600454838352600682528483208190559351938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35062000592565b610d0480620022b383390190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200046f57816000190482111562000453576200045362000418565b808516156200046157918102915b93841c939080029062000433565b509250929050565b600082620004885750600162000527565b81620004975750600062000527565b8160018114620004b05760028114620004bb57620004db565b600191505062000527565b60ff841115620004cf57620004cf62000418565b50506001821b62000527565b5060208310610133831016604e8410600b841016171562000500575081810a62000527565b6200050c83836200042e565b806000190482111562000523576200052362000418565b0290505b92915050565b60006200053e60ff84168362000477565b9392505050565b600081600019048311821515161562000562576200056262000418565b500290565b6000602082840312156200057a57600080fd5b81516001600160a01b03811681146200053e57600080fd5b611d1180620005a26000396000f3fe6080604052600436106102135760003560e01c806370a0823111610118578063bf56b371116100a0578063f2fde38b1161006f578063f2fde38b14610657578063f429389014610677578063f708a64f1461068c578063f887ea40146106ac578063fb6f71a3146106cc57600080fd5b8063bf56b371146105d1578063c9567bf9146105e7578063dd62ed3e146105fc578063f0fc6bca1461064257600080fd5b80638ecc37fb116100e75780638ecc37fb1461051f578063934aa0231461053f57806395d89b411461055f578063a8aa1b3114610591578063a9059cbb146105b157600080fd5b806370a082311461047e578063736a83a1146104b457806375f0a874146104c9578063893d20e81461050157600080fd5b8063342aa8b51161019b5780635cc33f741161016a5780635cc33f74146103e95780635d098b3814610409578063658d4b7f1461042957806367ee5f091461044957806369fe0e2d1461045e57600080fd5b8063342aa8b5146103745780633e07ce5b14610394578063416501c8146103a9578063571ac8b0146103c957600080fd5b806323b63585116101e257806323b63585146102d457806323b872dd146102f45780632b112e49146103145780632f54bf6e14610329578063313ce5671461035857600080fd5b806306fdde031461021f578063095ea7b31461026357806315f7e05e1461029357806318160ddd146102b557600080fd5b3661021a57005b600080fd5b34801561022b57600080fd5b50604080518082019091526009815268446f67677954616d6160b81b60208201525b60405161025a9190611a19565b60405180910390f35b34801561026f57600080fd5b5061028361027e366004611a86565b6106ec565b604051901515815260200161025a565b34801561029f57600080fd5b506102b36102ae366004611ab2565b610759565b005b3480156102c157600080fd5b506004545b60405190815260200161025a565b3480156102e057600080fd5b506102836102ef366004611acf565b6107ef565b34801561030057600080fd5b5061028361030f366004611ae8565b610832565b34801561032057600080fd5b506102c66108f4565b34801561033557600080fd5b50610283610344366004611ab2565b6000546001600160a01b0391821691161490565b34801561036457600080fd5b506040516009815260200161025a565b34801561038057600080fd5b506102b361038f366004611b29565b610946565b3480156103a057600080fd5b506102b36109a2565b3480156103b557600080fd5b506102836103c4366004611ab2565b6109d9565b3480156103d557600080fd5b506102836103e4366004611ab2565b610a23565b3480156103f557600080fd5b506102c6610404366004611ab2565b610a31565b34801561041557600080fd5b506102b3610424366004611ab2565b610aa1565b34801561043557600080fd5b506102b3610444366004611b29565b610aed565b34801561045557600080fd5b506102c6610b42565b34801561046a57600080fd5b506102b3610479366004611acf565b610bb0565b34801561048a57600080fd5b506102c6610499366004611ab2565b6001600160a01b031660009081526006602052604090205490565b3480156104c057600080fd5b506102c6610c27565b3480156104d557600080fd5b50600d546104e9906001600160a01b031681565b6040516001600160a01b03909116815260200161025a565b34801561050d57600080fd5b506000546001600160a01b03166104e9565b34801561052b57600080fd5b506102c661053a366004611ab2565b610c71565b34801561054b57600080fd5b50600e546104e9906001600160a01b031681565b34801561056b57600080fd5b50604080518082019091526009815268444f47475954414d4160b81b602082015261024d565b34801561059d57600080fd5b506010546104e9906001600160a01b031681565b3480156105bd57600080fd5b506102836105cc366004611a86565b610ca4565b3480156105dd57600080fd5b506102c660115481565b3480156105f357600080fd5b506102b3610cb1565b34801561060857600080fd5b506102c6610617366004611b67565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b34801561064e57600080fd5b506102b3610cee565b34801561066357600080fd5b506102b3610672366004611ab2565b610d4d565b34801561068357600080fd5b506102b3610dcb565b34801561069857600080fd5b506102b36106a7366004611b29565b610e2f565b3480156106b857600080fd5b50600f546104e9906001600160a01b031681565b3480156106d857600080fd5b506102b36106e7366004611ab2565b610e63565b3360008181526007602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906107479086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b0316331461078c5760405162461bcd60e51b815260040161078390611b95565b60405180910390fd5b601454604051630afbf02f60e11b81526001600160a01b038381166004830152909116906315f7e05e906024015b600060405180830381600087803b1580156107d457600080fd5b505af11580156107e8573d6000803e3d6000fd5b5050505050565b600080546001600160a01b0316331461081a5760405162461bcd60e51b815260040161078390611b95565b6002546107539030906001600160a01b031684610ed6565b6001600160a01b0383166000908152600760209081526040808320338452909152812054600019146108df576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526007825283812033825290915291909120546108ba918490610fbc565b6001600160a01b03851660009081526007602090815260408083203384529091529020555b6108ea848484610ff6565b90505b9392505050565b6003546001600160a01b0316600090815260066020526040812054610941906002546001600160a01b031660009081526006602052604090205461093b90600454906114a0565b906114a0565b905090565b6000546001600160a01b031633146109705760405162461bcd60e51b815260040161078390611b95565b6001600160a01b0382166000908152600a60205260409020805460ff191682151517905561099e82826114e2565b5050565b6000546001600160a01b031633146109cc5760405162461bcd60e51b815260040161078390611b95565b6012805461ff0019169055565b600080546001600160a01b03163314610a045760405162461bcd60e51b815260040161078390611b95565b506001600160a01b03166000908152600a602052604090205460ff1690565b6000610753826000196106ec565b601454604051631730cfdd60e21b81526001600160a01b0383811660048301526000921690635cc33f74906024015b602060405180830381865afa158015610a7d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107539190611bb5565b6000546001600160a01b03163314610acb5760405162461bcd60e51b815260040161078390611b95565b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610b175760405162461bcd60e51b815260040161078390611b95565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b6014546040805163997664d760e01b815290516000926001600160a01b03169163997664d79160048083019260209291908290030181865afa158015610b8c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109419190611bb5565b6000546001600160a01b03163314610bda5760405162461bcd60e51b815260040161078390611b95565b6012811115610c225760405162461bcd60e51b81526020600482015260146024820152734665652063616e2774206578636565642031382560601b6044820152606401610783565b600b55565b6014546040805163d54ad2a160e01b815290516000926001600160a01b03169163d54ad2a19160048083019260209291908290030181865afa158015610b8c573d6000803e3d6000fd5b601454604051638ecc37fb60e01b81526001600160a01b0383811660048301526000921690638ecc37fb90602401610a60565b60006108ed338484610ff6565b6000546001600160a01b03163314610cdb5760405162461bcd60e51b815260040161078390611b95565b436011556012805460ff19166001179055565b601454604051630afbf02f60e11b81523360048201526001600160a01b03909116906315f7e05e90602401600060405180830381600087803b158015610d3357600080fd5b505af1158015610d47573d6000803e3d6000fd5b50505050565b6000546001600160a01b03163314610d775760405162461bcd60e51b815260040161078390611b95565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b6000546001600160a01b03163314610df55760405162461bcd60e51b815260040161078390611b95565b600d5460405147916001600160a01b03169082156108fc029083906000818181858888f1935050505015801561099e573d6000803e3d6000fd5b6000546001600160a01b03163314610e595760405162461bcd60e51b815260040161078390611b95565b61099e82826114e2565b6000546001600160a01b03163314610e8d5760405162461bcd60e51b815260040161078390611b95565b600e80546001600160a01b0319166001600160a01b0383811691821790925560145460405163fb6f71a360e01b815260048101929092529091169063fb6f71a3906024016107ba565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600690915291822054610f27918490610fbc565b6001600160a01b038086166000908152600660205260408082209390935590851681522054610f5690836115f3565b6001600160a01b0380851660008181526006602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610faa9086815260200190565b60405180910390a35060019392505050565b60008184841115610fe05760405162461bcd60e51b81526004016107839190611a19565b506000610fed8486611be4565b95945050505050565b600080546001600160a01b0385811691161480159061102357506000546001600160a01b03848116911614155b1561107a5760125460ff1661107a5760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c65642e00000000000000006044820152606401610783565b6001600160a01b0384166000908152600a602052604090205460ff161580156110bc57506001600160a01b0383166000908152600a602052604090205460ff16155b6110f35760405162461bcd60e51b81526020600482015260086024820152674e6963652074727960c01b6044820152606401610783565b601254610100900460ff1615611175576000546001600160a01b0385811691161480159061112f57506000546001600160a01b03848116911614155b15611175576013548211156111755760405162461bcd60e51b815260206004820152600c60248201526b2a37b79036bab1b41039b4b960a11b6044820152606401610783565b601154611183906001611bfb565b43116111c5576001600160a01b0383166000908152600a602090815260408083208054600160ff19918216811790925560099093529220805490911690911790555b601454600160a01b900460ff16156111e9576111e2848484610ed6565b90506108ed565b6010546000906001600160a01b038581169116148015611216575030600090815260066020526040812054115b9050801561122657611226611652565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038816600090815260069091529190912054611278918590610fbc565b6001600160a01b03861660009081526006602052604081209190915561129e8686611809565b6112a857836112b2565b6112b2868561187e565b6001600160a01b0386166000908152600660205260409020549091506112d890826115f3565b6001600160a01b0380871660009081526006602052604090209190915560105487821691161480159061132457506001600160a01b03861660009081526009602052604090205460ff16155b1561139a576014546001600160a01b0387811660008181526006602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561138757600080fd5b505af1925050508015611398575060015b505b6010546001600160a01b038681169116148015906113d157506001600160a01b03851660009081526009602052604090205460ff16155b15611447576014546001600160a01b0386811660008181526006602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561143457600080fd5b505af1925050508015611445575060015b505b846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161148c91815260200190565b60405180910390a350600195945050505050565b60006108ed83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fbc565b6001600160a01b038216301480159061150957506010546001600160a01b03838116911614155b61151257600080fd5b6001600160a01b0382166000908152600960205260409020805460ff191682158015919091179091556115aa57601454604051630a5b654b60e11b81526001600160a01b03848116600483015260006024830152909116906314b6ca96906044015b600060405180830381600087803b15801561158e57600080fd5b505af11580156115a2573d6000803e3d6000fd5b505050505050565b6014546001600160a01b0383811660008181526006602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401611574565b6000806116008385611bfb565b9050838110156108ed5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610783565b6014805460ff60a01b1916600160a01b17905530600090815260066020526040812054604080516002808252606082019092529192506000919081602001602082028036833701905050905030816000815181106116b2576116b2611c13565b6001600160a01b03928316602091820292909201015260018054835192169183919081106116e2576116e2611c13565b6001600160a01b039283166020918202929092010152600f5460405163791ac94760e01b815291169063791ac94790611728908590600090869030904290600401611c29565b600060405180830381600087803b15801561174257600080fd5b505af1158015611756573d6000803e3d6000fd5b50505050600061177060024761192a90919063ffffffff16565b9050600061177f47600261192a565b600d546040519192506001600160a01b03169082156108fc029083906000818181858888f193505050501580156117ba573d6000803e3d6000fd5b50600e546040516001600160a01b039091169083156108fc029084906000818181858888f193505050501580156117f5573d6000803e3d6000fd5b50506014805460ff60a01b19169055505050565b6001600160a01b03821660009081526008602052604081205460ff168061184857506001600160a01b03821660009081526008602052604090205460ff165b1580156108ed57506010546001600160a01b03848116911614806108ed5750506010546001600160a01b03908116911614919050565b6000806118a2600c5461189c600b548661196c90919063ffffffff16565b9061192a565b306000908152600660205260409020549091506118bf90826115f3565b30600081815260066020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906119109085815260200190565b60405180910390a361192283826114a0565b949350505050565b60006108ed83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506119eb565b60008261197b57506000610753565b60006119878385611c9a565b9050826119948583611cb9565b146108ed5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610783565b60008183611a0c5760405162461bcd60e51b81526004016107839190611a19565b506000610fed8486611cb9565b600060208083528351808285015260005b81811015611a4657858101830151858201604001528201611a2a565b81811115611a58576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b0381168114611a8357600080fd5b50565b60008060408385031215611a9957600080fd5b8235611aa481611a6e565b946020939093013593505050565b600060208284031215611ac457600080fd5b81356108ed81611a6e565b600060208284031215611ae157600080fd5b5035919050565b600080600060608486031215611afd57600080fd5b8335611b0881611a6e565b92506020840135611b1881611a6e565b929592945050506040919091013590565b60008060408385031215611b3c57600080fd5b8235611b4781611a6e565b915060208301358015158114611b5c57600080fd5b809150509250929050565b60008060408385031215611b7a57600080fd5b8235611b8581611a6e565b91506020830135611b5c81611a6e565b60208082526006908201526510a7bbb732b960d11b604082015260600190565b600060208284031215611bc757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b600082821015611bf657611bf6611bce565b500390565b60008219821115611c0e57611c0e611bce565b500190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611c795784516001600160a01b031683529383019391830191600101611c54565b50506001600160a01b03969096166060850152505050608001529392505050565b6000816000190483118215151615611cb457611cb4611bce565b500290565b600082611cd657634e487b7160e01b600052601260045260246000fd5b50049056fea264697066735822122015228b4e6944cbe14de2219203456a30d16d64f914f8373ac5d93a3340f6ce9764736f6c634300080a003360806040526ec097ce7bc90715b34b9f1000000000600a5534801561002357600080fd5b50604051610d04380380610d048339810160408190526100429161009a565b600080546001600160a01b03199081163317909155600180546001600160a01b03948516908316179055600280549290931691161790556100cd565b80516001600160a01b038116811461009557600080fd5b919050565b600080604083850312156100ad57600080fd5b6100b68361007e565b91506100c46020840161007e565b90509250929050565b610c28806100dc6000396000f3fe6080604052600436106100e85760003560e01c8063997664d71161008a578063d54ad2a111610059578063d54ad2a114610285578063e2d2e2191461029b578063ecd0c0c3146102b1578063fb6f71a3146102d157600080fd5b8063997664d7146101f0578063b2bdfa7b14610206578063ce7c2ac214610226578063d0e30db01461027d57600080fd5b80633a98ef39116100c65780633a98ef391461014f5780635cc33f741461017857806382d99cb1146101985780638ecc37fb146101d057600080fd5b80631014edf5146100ed57806314b6ca961461010f57806315f7e05e1461012f575b600080fd5b3480156100f957600080fd5b5061010d610108366004610a7a565b6102f1565b005b34801561011b57600080fd5b5061010d61012a366004610aa6565b610351565b34801561013b57600080fd5b5061010d61014a366004610ad0565b6104c9565b34801561015b57600080fd5b5061016560065481565b6040519081526020015b60405180910390f35b34801561018457600080fd5b50610165610193366004610ad0565b6104ec565b3480156101a457600080fd5b506002546101b8906001600160a01b031681565b6040516001600160a01b03909116815260200161016f565b3480156101dc57600080fd5b506101656101eb366004610ad0565b610575565b3480156101fc57600080fd5b5061016560075481565b34801561021257600080fd5b506001546101b8906001600160a01b031681565b34801561023257600080fd5b50610262610241366004610ad0565b60056020526000908152604090208054600182015460029092015490919083565b6040805193845260208401929092529082015260600161016f565b61010d6105fe565b34801561029157600080fd5b5061016560085481565b3480156102a757600080fd5b5061016560095481565b3480156102bd57600080fd5b506000546101b8906001600160a01b031681565b3480156102dd57600080fd5b5061010d6102ec366004610ad0565b61063d565b6001546001600160a01b0316331461030857600080fd5b476001600160a01b0382166108fc846103215782610323565b845b6040518115909202916000818181858888f1935050505015801561034b573d6000803e3d6000fd5b50505050565b6000546001600160a01b0316331461036857600080fd5b6001600160a01b0382166000908152600560205260409020541561038f5761038f82610676565b6000811180156103b557506001600160a01b038216600090815260056020526040902054155b1561041b57600380546001600160a01b0384166000818152600460205260408120839055600183018455929092527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b031916909117905561044e565b8015801561044057506001600160a01b03821660009081526005602052604090205415155b1561044e5761044e82610759565b6001600160a01b03821660009081526005602052604090205460065461047f9183916104799161086e565b906108b9565b6006556001600160a01b03821660009081526005602052604090208190556104a681610918565b6001600160a01b0390921660009081526005602052604090206001019190915550565b6000546001600160a01b031633146104e057600080fd5b6104e981610676565b50565b6001600160a01b0381166000908152600560205260408120546105565760405162461bcd60e51b815260206004820152601d60248201527f596f75277265206e6f74206120424243207368617265686f6c6465722100000060448201526064015b60405180910390fd5b506001600160a01b031660009081526005602052604090206002015490565b6001600160a01b03811660009081526005602052604081205461059a57506000919050565b6001600160a01b0382166000908152600560205260408120546105bc90610918565b6001600160a01b0384166000908152600560205260409020600101549091508082116105ec575060009392505050565b6105f6828261086e565b949350505050565b600754349061060d90826108b9565b600755600654600a546106379161062e916106289085610935565b906109b4565b600954906108b9565b60095550565b6000546001600160a01b0316331461065457600080fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0381166000908152600560205260409020546106965750565b60006106a182610575565b90508015610755576008546106b690826108b9565b6008556001600160a01b0382166000908152600560205260409020600201546106df90826108b9565b6001600160a01b038316600090815260056020526040902060028101919091555461070990610918565b6001600160a01b038316600081815260056020526040808220600101939093559151909183156108fc02918491818181858888f19350505050158015610753573d6000803e3d6000fd5b505b5050565b6003805461076990600190610b01565b8154811061077957610779610b18565b60009182526020808320909101546001600160a01b03848116845260049092526040909220546003805492909316929181106107b7576107b7610b18565b600091825260208083209190910180546001600160a01b0319166001600160a01b0394851617905591831681526004918290526040812054600380549193929161080390600190610b01565b8154811061081357610813610b18565b60009182526020808320909101546001600160a01b03168352820192909252604001902055600380548061084957610849610b2e565b600082815260209020810160001990810180546001600160a01b031916905501905550565b60006108b083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506109f6565b90505b92915050565b6000806108c68385610b44565b9050838110156108b05760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161054d565b60006108b3600a546106286009548561093590919063ffffffff16565b600082610944575060006108b3565b60006109508385610b5c565b90508261095d8583610b7b565b146108b05760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161054d565b60006108b083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610a30565b60008184841115610a1a5760405162461bcd60e51b815260040161054d9190610b9d565b506000610a278486610b01565b95945050505050565b60008183610a515760405162461bcd60e51b815260040161054d9190610b9d565b506000610a278486610b7b565b80356001600160a01b0381168114610a7557600080fd5b919050565b60008060408385031215610a8d57600080fd5b82359150610a9d60208401610a5e565b90509250929050565b60008060408385031215610ab957600080fd5b610ac283610a5e565b946020939093013593505050565b600060208284031215610ae257600080fd5b6108b082610a5e565b634e487b7160e01b600052601160045260246000fd5b600082821015610b1357610b13610aeb565b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b60008219821115610b5757610b57610aeb565b500190565b6000816000190483118215151615610b7657610b76610aeb565b500290565b600082610b9857634e487b7160e01b600052601260045260246000fd5b500490565b600060208083528351808285015260005b81811015610bca57858101830151858201604001528201610bae565b81811115610bdc576000604083870101525b50601f01601f191692909201604001939250505056fea264697066735822122029c7420466af63bcfde0a9b507495b6ddf5da8fae831567e3c1b3d130ac05d5664736f6c634300080a0033000000000000000000000000f587f12f1fb18bf33144b82c6ff8294b90b220cd

Deployed Bytecode

0x6080604052600436106102135760003560e01c806370a0823111610118578063bf56b371116100a0578063f2fde38b1161006f578063f2fde38b14610657578063f429389014610677578063f708a64f1461068c578063f887ea40146106ac578063fb6f71a3146106cc57600080fd5b8063bf56b371146105d1578063c9567bf9146105e7578063dd62ed3e146105fc578063f0fc6bca1461064257600080fd5b80638ecc37fb116100e75780638ecc37fb1461051f578063934aa0231461053f57806395d89b411461055f578063a8aa1b3114610591578063a9059cbb146105b157600080fd5b806370a082311461047e578063736a83a1146104b457806375f0a874146104c9578063893d20e81461050157600080fd5b8063342aa8b51161019b5780635cc33f741161016a5780635cc33f74146103e95780635d098b3814610409578063658d4b7f1461042957806367ee5f091461044957806369fe0e2d1461045e57600080fd5b8063342aa8b5146103745780633e07ce5b14610394578063416501c8146103a9578063571ac8b0146103c957600080fd5b806323b63585116101e257806323b63585146102d457806323b872dd146102f45780632b112e49146103145780632f54bf6e14610329578063313ce5671461035857600080fd5b806306fdde031461021f578063095ea7b31461026357806315f7e05e1461029357806318160ddd146102b557600080fd5b3661021a57005b600080fd5b34801561022b57600080fd5b50604080518082019091526009815268446f67677954616d6160b81b60208201525b60405161025a9190611a19565b60405180910390f35b34801561026f57600080fd5b5061028361027e366004611a86565b6106ec565b604051901515815260200161025a565b34801561029f57600080fd5b506102b36102ae366004611ab2565b610759565b005b3480156102c157600080fd5b506004545b60405190815260200161025a565b3480156102e057600080fd5b506102836102ef366004611acf565b6107ef565b34801561030057600080fd5b5061028361030f366004611ae8565b610832565b34801561032057600080fd5b506102c66108f4565b34801561033557600080fd5b50610283610344366004611ab2565b6000546001600160a01b0391821691161490565b34801561036457600080fd5b506040516009815260200161025a565b34801561038057600080fd5b506102b361038f366004611b29565b610946565b3480156103a057600080fd5b506102b36109a2565b3480156103b557600080fd5b506102836103c4366004611ab2565b6109d9565b3480156103d557600080fd5b506102836103e4366004611ab2565b610a23565b3480156103f557600080fd5b506102c6610404366004611ab2565b610a31565b34801561041557600080fd5b506102b3610424366004611ab2565b610aa1565b34801561043557600080fd5b506102b3610444366004611b29565b610aed565b34801561045557600080fd5b506102c6610b42565b34801561046a57600080fd5b506102b3610479366004611acf565b610bb0565b34801561048a57600080fd5b506102c6610499366004611ab2565b6001600160a01b031660009081526006602052604090205490565b3480156104c057600080fd5b506102c6610c27565b3480156104d557600080fd5b50600d546104e9906001600160a01b031681565b6040516001600160a01b03909116815260200161025a565b34801561050d57600080fd5b506000546001600160a01b03166104e9565b34801561052b57600080fd5b506102c661053a366004611ab2565b610c71565b34801561054b57600080fd5b50600e546104e9906001600160a01b031681565b34801561056b57600080fd5b50604080518082019091526009815268444f47475954414d4160b81b602082015261024d565b34801561059d57600080fd5b506010546104e9906001600160a01b031681565b3480156105bd57600080fd5b506102836105cc366004611a86565b610ca4565b3480156105dd57600080fd5b506102c660115481565b3480156105f357600080fd5b506102b3610cb1565b34801561060857600080fd5b506102c6610617366004611b67565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b34801561064e57600080fd5b506102b3610cee565b34801561066357600080fd5b506102b3610672366004611ab2565b610d4d565b34801561068357600080fd5b506102b3610dcb565b34801561069857600080fd5b506102b36106a7366004611b29565b610e2f565b3480156106b857600080fd5b50600f546104e9906001600160a01b031681565b3480156106d857600080fd5b506102b36106e7366004611ab2565b610e63565b3360008181526007602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906107479086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b0316331461078c5760405162461bcd60e51b815260040161078390611b95565b60405180910390fd5b601454604051630afbf02f60e11b81526001600160a01b038381166004830152909116906315f7e05e906024015b600060405180830381600087803b1580156107d457600080fd5b505af11580156107e8573d6000803e3d6000fd5b5050505050565b600080546001600160a01b0316331461081a5760405162461bcd60e51b815260040161078390611b95565b6002546107539030906001600160a01b031684610ed6565b6001600160a01b0383166000908152600760209081526040808320338452909152812054600019146108df576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526007825283812033825290915291909120546108ba918490610fbc565b6001600160a01b03851660009081526007602090815260408083203384529091529020555b6108ea848484610ff6565b90505b9392505050565b6003546001600160a01b0316600090815260066020526040812054610941906002546001600160a01b031660009081526006602052604090205461093b90600454906114a0565b906114a0565b905090565b6000546001600160a01b031633146109705760405162461bcd60e51b815260040161078390611b95565b6001600160a01b0382166000908152600a60205260409020805460ff191682151517905561099e82826114e2565b5050565b6000546001600160a01b031633146109cc5760405162461bcd60e51b815260040161078390611b95565b6012805461ff0019169055565b600080546001600160a01b03163314610a045760405162461bcd60e51b815260040161078390611b95565b506001600160a01b03166000908152600a602052604090205460ff1690565b6000610753826000196106ec565b601454604051631730cfdd60e21b81526001600160a01b0383811660048301526000921690635cc33f74906024015b602060405180830381865afa158015610a7d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107539190611bb5565b6000546001600160a01b03163314610acb5760405162461bcd60e51b815260040161078390611b95565b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610b175760405162461bcd60e51b815260040161078390611b95565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b6014546040805163997664d760e01b815290516000926001600160a01b03169163997664d79160048083019260209291908290030181865afa158015610b8c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109419190611bb5565b6000546001600160a01b03163314610bda5760405162461bcd60e51b815260040161078390611b95565b6012811115610c225760405162461bcd60e51b81526020600482015260146024820152734665652063616e2774206578636565642031382560601b6044820152606401610783565b600b55565b6014546040805163d54ad2a160e01b815290516000926001600160a01b03169163d54ad2a19160048083019260209291908290030181865afa158015610b8c573d6000803e3d6000fd5b601454604051638ecc37fb60e01b81526001600160a01b0383811660048301526000921690638ecc37fb90602401610a60565b60006108ed338484610ff6565b6000546001600160a01b03163314610cdb5760405162461bcd60e51b815260040161078390611b95565b436011556012805460ff19166001179055565b601454604051630afbf02f60e11b81523360048201526001600160a01b03909116906315f7e05e90602401600060405180830381600087803b158015610d3357600080fd5b505af1158015610d47573d6000803e3d6000fd5b50505050565b6000546001600160a01b03163314610d775760405162461bcd60e51b815260040161078390611b95565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b6000546001600160a01b03163314610df55760405162461bcd60e51b815260040161078390611b95565b600d5460405147916001600160a01b03169082156108fc029083906000818181858888f1935050505015801561099e573d6000803e3d6000fd5b6000546001600160a01b03163314610e595760405162461bcd60e51b815260040161078390611b95565b61099e82826114e2565b6000546001600160a01b03163314610e8d5760405162461bcd60e51b815260040161078390611b95565b600e80546001600160a01b0319166001600160a01b0383811691821790925560145460405163fb6f71a360e01b815260048101929092529091169063fb6f71a3906024016107ba565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600690915291822054610f27918490610fbc565b6001600160a01b038086166000908152600660205260408082209390935590851681522054610f5690836115f3565b6001600160a01b0380851660008181526006602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610faa9086815260200190565b60405180910390a35060019392505050565b60008184841115610fe05760405162461bcd60e51b81526004016107839190611a19565b506000610fed8486611be4565b95945050505050565b600080546001600160a01b0385811691161480159061102357506000546001600160a01b03848116911614155b1561107a5760125460ff1661107a5760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c65642e00000000000000006044820152606401610783565b6001600160a01b0384166000908152600a602052604090205460ff161580156110bc57506001600160a01b0383166000908152600a602052604090205460ff16155b6110f35760405162461bcd60e51b81526020600482015260086024820152674e6963652074727960c01b6044820152606401610783565b601254610100900460ff1615611175576000546001600160a01b0385811691161480159061112f57506000546001600160a01b03848116911614155b15611175576013548211156111755760405162461bcd60e51b815260206004820152600c60248201526b2a37b79036bab1b41039b4b960a11b6044820152606401610783565b601154611183906001611bfb565b43116111c5576001600160a01b0383166000908152600a602090815260408083208054600160ff19918216811790925560099093529220805490911690911790555b601454600160a01b900460ff16156111e9576111e2848484610ed6565b90506108ed565b6010546000906001600160a01b038581169116148015611216575030600090815260066020526040812054115b9050801561122657611226611652565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038816600090815260069091529190912054611278918590610fbc565b6001600160a01b03861660009081526006602052604081209190915561129e8686611809565b6112a857836112b2565b6112b2868561187e565b6001600160a01b0386166000908152600660205260409020549091506112d890826115f3565b6001600160a01b0380871660009081526006602052604090209190915560105487821691161480159061132457506001600160a01b03861660009081526009602052604090205460ff16155b1561139a576014546001600160a01b0387811660008181526006602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561138757600080fd5b505af1925050508015611398575060015b505b6010546001600160a01b038681169116148015906113d157506001600160a01b03851660009081526009602052604090205460ff16155b15611447576014546001600160a01b0386811660008181526006602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401600060405180830381600087803b15801561143457600080fd5b505af1925050508015611445575060015b505b846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161148c91815260200190565b60405180910390a350600195945050505050565b60006108ed83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fbc565b6001600160a01b038216301480159061150957506010546001600160a01b03838116911614155b61151257600080fd5b6001600160a01b0382166000908152600960205260409020805460ff191682158015919091179091556115aa57601454604051630a5b654b60e11b81526001600160a01b03848116600483015260006024830152909116906314b6ca96906044015b600060405180830381600087803b15801561158e57600080fd5b505af11580156115a2573d6000803e3d6000fd5b505050505050565b6014546001600160a01b0383811660008181526006602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401611574565b6000806116008385611bfb565b9050838110156108ed5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610783565b6014805460ff60a01b1916600160a01b17905530600090815260066020526040812054604080516002808252606082019092529192506000919081602001602082028036833701905050905030816000815181106116b2576116b2611c13565b6001600160a01b03928316602091820292909201015260018054835192169183919081106116e2576116e2611c13565b6001600160a01b039283166020918202929092010152600f5460405163791ac94760e01b815291169063791ac94790611728908590600090869030904290600401611c29565b600060405180830381600087803b15801561174257600080fd5b505af1158015611756573d6000803e3d6000fd5b50505050600061177060024761192a90919063ffffffff16565b9050600061177f47600261192a565b600d546040519192506001600160a01b03169082156108fc029083906000818181858888f193505050501580156117ba573d6000803e3d6000fd5b50600e546040516001600160a01b039091169083156108fc029084906000818181858888f193505050501580156117f5573d6000803e3d6000fd5b50506014805460ff60a01b19169055505050565b6001600160a01b03821660009081526008602052604081205460ff168061184857506001600160a01b03821660009081526008602052604090205460ff165b1580156108ed57506010546001600160a01b03848116911614806108ed5750506010546001600160a01b03908116911614919050565b6000806118a2600c5461189c600b548661196c90919063ffffffff16565b9061192a565b306000908152600660205260409020549091506118bf90826115f3565b30600081815260066020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906119109085815260200190565b60405180910390a361192283826114a0565b949350505050565b60006108ed83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506119eb565b60008261197b57506000610753565b60006119878385611c9a565b9050826119948583611cb9565b146108ed5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610783565b60008183611a0c5760405162461bcd60e51b81526004016107839190611a19565b506000610fed8486611cb9565b600060208083528351808285015260005b81811015611a4657858101830151858201604001528201611a2a565b81811115611a58576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b0381168114611a8357600080fd5b50565b60008060408385031215611a9957600080fd5b8235611aa481611a6e565b946020939093013593505050565b600060208284031215611ac457600080fd5b81356108ed81611a6e565b600060208284031215611ae157600080fd5b5035919050565b600080600060608486031215611afd57600080fd5b8335611b0881611a6e565b92506020840135611b1881611a6e565b929592945050506040919091013590565b60008060408385031215611b3c57600080fd5b8235611b4781611a6e565b915060208301358015158114611b5c57600080fd5b809150509250929050565b60008060408385031215611b7a57600080fd5b8235611b8581611a6e565b91506020830135611b5c81611a6e565b60208082526006908201526510a7bbb732b960d11b604082015260600190565b600060208284031215611bc757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b600082821015611bf657611bf6611bce565b500390565b60008219821115611c0e57611c0e611bce565b500190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611c795784516001600160a01b031683529383019391830191600101611c54565b50506001600160a01b03969096166060850152505050608001529392505050565b6000816000190483118215151615611cb457611cb4611bce565b500290565b600082611cd657634e487b7160e01b600052601260045260246000fd5b50049056fea264697066735822122015228b4e6944cbe14de2219203456a30d16d64f914f8373ac5d93a3340f6ce9764736f6c634300080a0033

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

000000000000000000000000f587f12f1fb18bf33144b82c6ff8294b90b220cd

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

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000f587f12f1fb18bf33144b82c6ff8294b90b220cd


Deployed Bytecode Sourcemap

10509:9901:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13127:80;;;;;;;;;;-1:-1:-1;13199:5:0;;;;;;;;;;;;-1:-1:-1;;;13199:5:0;;;;13127:80;;;;;;;:::i;:::-;;;;;;;;13549:216;;;;;;;;;;-1:-1:-1;13549:216:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;13549:216:0;1072:187:1;19027:110:0;;;;;;;;;;-1:-1:-1;19027:110:0;;;;;:::i;:::-;;:::i;:::-;;12857:88;;;;;;;;;;-1:-1:-1;12930:12:0;;12857:88;;;1662:25:1;;;1650:2;1635:18;12857:88:0;1516:177:1;19317:139:0;;;;;;;;;;-1:-1:-1;19317:139:0;;;;;:::i;:::-;;:::i;14067:370::-;;;;;;;;;;-1:-1:-1;14067:370:0;;;;;:::i;:::-;;:::i;19468:142::-;;;;;;;;;;;;;:::i;3938:103::-;;;;;;;;;;-1:-1:-1;3938:103:0;;;;;:::i;:::-;3993:4;4028:5;-1:-1:-1;;;;;4017:16:0;;;4028:5;;4017:16;;3938:103;12951:80;;;;;;;;;;-1:-1:-1;12951:80:0;;10897:1;2486:36:1;;2474:2;2459:18;12951:80:0;2344:184:1;17683:158:0;;;;;;;;;;-1:-1:-1;17683:158:0;;;;;:::i;:::-;;:::i;20327:80::-;;;;;;;;;;;;;:::i;17853:115::-;;;;;;;;;;-1:-1:-1;17853:115:0;;;;;:::i;:::-;;:::i;13773:122::-;;;;;;;;;;-1:-1:-1;13773:122:0;;;;;:::i;:::-;;:::i;20162:157::-;;;;;;;;;;-1:-1:-1;20162:157:0;;;;;:::i;:::-;;:::i;19618:135::-;;;;;;;;;;-1:-1:-1;19618:135:0;;;;;:::i;:::-;;:::i;18465:119::-;;;;;;;;;;-1:-1:-1;18465:119:0;;;;;:::i;:::-;;:::i;19915:115::-;;;;;;;;;;;;;:::i;18592:139::-;;;;;;;;;;-1:-1:-1;18592:139:0;;;;;:::i;:::-;;:::i;13297:105::-;;;;;;;;;;-1:-1:-1;13297:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;13381:18:0;13363:7;13381:18;;;:9;:18;;;;;;;13297:105;20042:111;;;;;;;;;;;;;:::i;11418:92::-;;;;;;;;;;-1:-1:-1;11418:92:0;;;;-1:-1:-1;;;;;11418:92:0;;;;;;-1:-1:-1;;;;;3134:32:1;;;3116:51;;3104:2;3089:18;11418:92:0;2954:219:1;13213:78:0;;;;;;;;;;-1:-1:-1;13265:7:0;13283:5;-1:-1:-1;;;;;13283:5:0;13213:78;;19149:156;;;;;;;;;;-1:-1:-1;19149:156:0;;;;;:::i;:::-;;:::i;11517:84::-;;;;;;;;;;-1:-1:-1;11517:84:0;;;;-1:-1:-1;;;;;11517:84:0;;;13037;;;;;;;;;;-1:-1:-1;13111:7:0;;;;;;;;;;;;-1:-1:-1;;;13111:7:0;;;;13037:84;;11641:19;;;;;;;;;;-1:-1:-1;11641:19:0;;;;-1:-1:-1;;;;;11641:19:0;;;13903:156;;;;;;;;;;-1:-1:-1;13903:156:0;;;;;:::i;:::-;;:::i;11669:25::-;;;;;;;;;;;;;;;;17548:115;;;;;;;;;;;;;:::i;13408:133::-;;;;;;;;;;-1:-1:-1;13408:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;13510:19:0;;;13492:7;13510:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;13408:133;18925:90;;;;;;;;;;;;;:::i;4166:136::-;;;;;;;;;;-1:-1:-1;4166:136:0;;;;;:::i;:::-;;:::i;18743:174::-;;;;;;;;;;;;;:::i;18325:132::-;;;;;;;;;;-1:-1:-1;18325:132:0;;;;;:::i;:::-;;:::i;11610:24::-;;;;;;;;;;-1:-1:-1;11610:24:0;;;;-1:-1:-1;;;;;11610:24:0;;;19761:146;;;;;;;;;;-1:-1:-1;19761:146:0;;;;;:::i;:::-;;:::i;13549:216::-;13653:10;13624:4;13641:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;13641:32:0;;;;;;;;;;:41;;;13698:37;13624:4;;13641:32;;13698:37;;;;13676:6;1662:25:1;;1650:2;1635:18;;1516:177;13698:37:0;;;;;;;;-1:-1:-1;13753:4:0;13549:216;;;;;:::o;19027:110::-;3993:4;4028:5;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;;;;;;;;;19096:11:::1;::::0;:33:::1;::::0;-1:-1:-1;;;19096:33:0;;-1:-1:-1;;;;;3134:32:1;;;19096:33:0::1;::::0;::::1;3116:51:1::0;19096:11:0;;::::1;::::0;:25:::1;::::0;3089:18:1;;19096:33:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;19027:110:::0;:::o;19317:139::-;19381:4;4028:5;;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;19435:4:::1;::::0;19405:43:::1;::::0;19428:4:::1;::::0;-1:-1:-1;;;;;19435:4:0::1;19441:6:::0;19405:14:::1;:43::i;14067:370::-:0;-1:-1:-1;;;;;14187:19:0;;14167:4;14187:19;;;:11;:19;;;;;;;;14207:10;14187:31;;;;;;;;-1:-1:-1;;14187:52:0;14184:186;;14289:69;;;;;;;;;;;-1:-1:-1;;;14289:69:0;;;;;;;;-1:-1:-1;;;;;14289:19:0;;-1:-1:-1;14289:19:0;;;:11;:19;;;;;14309:10;14289:31;;;;;;;;;;:69;;14325:6;;14289:35;:69::i;:::-;-1:-1:-1;;;;;14255:19:0;;;;;;:11;:19;;;;;;;;14275:10;14255:31;;;;;;;:103;14184:186;14389:40;14403:6;14411:9;14422:6;14389:13;:40::i;:::-;14382:47;;14067:370;;;;;;:::o;19468:142::-;19596:4;;-1:-1:-1;;;;;19596:4:0;19521:7;13381:18;;;:9;:18;;;;;;19548:54;;19575:4;;-1:-1:-1;;;;;19575:4:0;13363:7;13381:18;;;:9;:18;;;;;;19548:33;;:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;19541:61;;19468:142;:::o;17683:158::-;3993:4;4028:5;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17760:15:0;::::1;;::::0;;;:5:::1;:15;::::0;;;;:24;;-1:-1:-1;;17760:24:0::1;::::0;::::1;;;::::0;;17795:38:::1;17760:15:::0;:24;17795:20:::1;:38::i;:::-;17683:158:::0;;:::o;20327:80::-;3993:4;4028:5;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;20383:8:::1;:16:::0;;-1:-1:-1;;20383:16:0::1;::::0;;20327:80::o;17853:115::-;17921:4;4028:5;;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;;17945:15:0::1;;::::0;;;:5:::1;:15;::::0;;;;;::::1;;::::0;17853:115::o;13773:122::-;13828:4;13852:35;13860:7;-1:-1:-1;;13852:7:0;:35::i;20162:157::-;20265:11;;:46;;-1:-1:-1;;;20265:46:0;;-1:-1:-1;;;;;3134:32:1;;;20265:46:0;;;3116:51:1;20238:7:0;;20265:11;;:33;;3089:18:1;;20265:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19618:135::-;3993:4;4028:5;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;19702:15:::1;:43:::0;;-1:-1:-1;;;;;;19702:43:0::1;-1:-1:-1::0;;;;;19702:43:0;;;::::1;::::0;;;::::1;::::0;;19618:135::o;18465:119::-;3993:4;4028:5;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;18548:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;18548:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;18465:119::o;19915:115::-;19994:11;;:28;;;-1:-1:-1;;;19994:28:0;;;;19967:7;;-1:-1:-1;;;;;19994:11:0;;:26;;:28;;;;;;;;;;;;;;:11;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;18592:139::-;3993:4;4028:5;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;18670:2:::1;18662:4;:10;;18653:44;;;::::0;-1:-1:-1;;;18653:44:0;;4990:2:1;18653:44:0::1;::::0;::::1;4972:21:1::0;5029:2;5009:18;;;5002:30;-1:-1:-1;;;5048:18:1;;;5041:50;5108:18;;18653:44:0::1;4788:344:1::0;18653:44:0::1;18708:8;:15:::0;18592:139::o;20042:111::-;20119:11;;:26;;;-1:-1:-1;;;20119:26:0;;;;20092:7;;-1:-1:-1;;;;;20119:11:0;;:24;;:26;;;;;;;;;;;;;;:11;:26;;;;;;;;;;;;;;19149:156;19250:11;;:47;;-1:-1:-1;;;19250:47:0;;-1:-1:-1;;;;;3134:32:1;;;19250:47:0;;;3116:51:1;19223:7:0;;19250:11;;:34;;3089:18:1;;19250:47:0;2954:219:1;13903:156:0;13983:4;14007:44;14021:10;14033:9;14044:6;14007:13;:44::i;17548:115::-;3993:4;4028:5;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;17614:12:::1;17601:10;:25:::0;17637:11:::1;:18:::0;;-1:-1:-1;;17637:18:0::1;17651:4;17637:18;::::0;;17548:115::o;18925:90::-;18970:11;;:37;;-1:-1:-1;;;18970:37:0;;18996:10;18970:37;;;3116:51:1;-1:-1:-1;;;;;18970:11:0;;;;:25;;3089:18:1;;18970:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18925:90::o;4166:136::-;3993:4;4028:5;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;4242:5:::1;:11:::0;;-1:-1:-1;;;;;;4242:11:0::1;-1:-1:-1::0;;;;;4242:11:0;::::1;::::0;;::::1;::::0;;;4269:25:::1;::::0;3116:51:1;;;4269:25:0::1;::::0;3104:2:1;3089:18;4269:25:0::1;;;;;;;4166:136:::0;:::o;18743:174::-;3993:4;4028:5;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;18864:15:::1;::::0;18856:53:::1;::::0;18824:21:::1;::::0;-1:-1:-1;;;;;18864:15:0::1;::::0;18856:53;::::1;;;::::0;18824:21;;18795:26:::1;18856:53:::0;18795:26;18856:53;18824:21;18864:15;18856:53;::::1;;;;;;;;;;;;;::::0;::::1;;;;18325:132:::0;3993:4;4028:5;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;18413:36:::1;18434:6;18442;18413:20;:36::i;19761:146::-:0;3993:4;4028:5;-1:-1:-1;;;;;4028:5:0;3845:10;4017:16;3829:38;;;;-1:-1:-1;;;3829:38:0;;;;;;;:::i;:::-;19829:7:::1;:27:::0;;-1:-1:-1;;;;;;19829:27:0::1;-1:-1:-1::0;;;;;19829:27:0;;::::1;::::0;;::::1;::::0;;;19867:11:::1;::::0;:32:::1;::::0;-1:-1:-1;;;19867:32:0;;::::1;::::0;::::1;3116:51:1::0;;;;19867:11:0;;::::1;::::0;:22:::1;::::0;3089:18:1;;19867:32:0::1;2954:219:1::0;15914:330:0;16044:53;;;;;;;;;;;-1:-1:-1;;;16044:53:0;;;;;;;;-1:-1:-1;;;;;16044:17:0;;16007:4;16044:17;;;:9;:17;;;;;;;:53;;16066:6;;16044:21;:53::i;:::-;-1:-1:-1;;;;;16024:17:0;;;;;;;:9;:17;;;;;;:73;;;;16131:20;;;;;;;:32;;16156:6;16131:24;:32::i;:::-;-1:-1:-1;;;;;16108:20:0;;;;;;;:9;:20;;;;;;;:55;;;;16179:35;;;;;;;;;;16207:6;1662:25:1;;1650:2;1635:18;;1516:177;16179:35:0;;;;;;;;-1:-1:-1;16232:4:0;15914:330;;;;;:::o;1600:192::-;1686:7;1722:12;1714:6;;;;1706:29;;;;-1:-1:-1;;;1706:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1746:9:0;1758:5;1762:1;1758;:5;:::i;:::-;1746:17;1600:192;-1:-1:-1;;;;;1600:192:0:o;14445:1457::-;14537:4;14567:5;;-1:-1:-1;;;;;14558:14:0;;;14567:5;;14558:14;;;;:35;;-1:-1:-1;14588:5:0;;-1:-1:-1;;;;;14576:17:0;;;14588:5;;14576:17;;14558:35;14554:89;;;14603:11;;;;14595:48;;;;-1:-1:-1;;;14595:48:0;;5817:2:1;14595:48:0;;;5799:21:1;5856:2;5836:18;;;5829:30;5895:26;5875:18;;;5868:54;5939:18;;14595:48:0;5615:348:1;14595:48:0;-1:-1:-1;;;;;14704:13:0;;;;;;:5;:13;;;;;;;;14703:14;:35;;;;-1:-1:-1;;;;;;14722:16:0;;;;;;:5;:16;;;;;;;;14721:17;14703:35;14694:57;;;;-1:-1:-1;;;14694:57:0;;6170:2:1;14694:57:0;;;6152:21:1;6209:1;6189:18;;;6182:29;-1:-1:-1;;;6227:18:1;;;6220:38;6275:18;;14694:57:0;5968:331:1;14694:57:0;14766:8;;;;;;;14762:130;;;14804:5;;-1:-1:-1;;;;;14796:13:0;;;14804:5;;14796:13;;;;:34;;-1:-1:-1;14825:5:0;;-1:-1:-1;;;;;14813:17:0;;;14825:5;;14813:17;;14796:34;14792:80;;;14849:6;;14841;:14;;14832:40;;;;-1:-1:-1;;;14832:40:0;;6506:2:1;14832:40:0;;;6488:21:1;6545:2;6525:18;;;6518:30;-1:-1:-1;;;6564:18:1;;;6557:42;6616:18;;14832:40:0;6304:336:1;14832:40:0;14923:10;;:14;;14936:1;14923:14;:::i;:::-;14906:12;:32;14902:139;;-1:-1:-1;;;;;14956:16:0;;;;;;:5;:16;;;;;;;;:23;;14975:4;-1:-1:-1;;14956:23:0;;;;;;;;14994:16;:27;;;;;:34;;;;;;;;;;14902:139;15063:6;;-1:-1:-1;;;15063:6:0;;;;15060:63;;;15079:41;15094:6;15102:9;15113:6;15079:14;:41::i;:::-;15072:48;;;;15060:63;15194:4;;15145:19;;-1:-1:-1;;;;;15183:15:0;;;15194:4;;15183:15;:47;;;;-1:-1:-1;15220:4:0;15229:1;13381:18;;;:9;:18;;;;;;15202:28;15183:47;15145:86;;15245:14;15242:33;;;15262:10;:8;:10::i;:::-;15307:53;;;;;;;;;;;-1:-1:-1;;;15307:53:0;;;;;;;;-1:-1:-1;;;;;15307:17:0;;-1:-1:-1;15307:17:0;;;:9;:17;;;;;;;;:53;;15329:6;;15307:21;:53::i;:::-;-1:-1:-1;;;;;15287:17:0;;;;;;:9;:17;;;;;:73;;;;15398:32;15297:6;15420:9;15398:13;:32::i;:::-;:67;;15459:6;15398:67;;;15433:23;15441:6;15449;15433:7;:23::i;:::-;-1:-1:-1;;;;;15509:20:0;;;;;;:9;:20;;;;;;15373:92;;-1:-1:-1;15509:40:0;;15373:92;15509:24;:40::i;:::-;-1:-1:-1;;;;;15486:20:0;;;;;;;:9;:20;;;;;:63;;;;15575:4;;15565:14;;;15575:4;;15565:14;;;;:43;;-1:-1:-1;;;;;;15584:24:0;;;;;;:16;:24;;;;;;;;15583:25;15565:43;15562:114;;;15615:11;;-1:-1:-1;;;;;15644:17:0;;;15615:11;15644:17;;;:9;:17;;;;;;;;15615:47;;-1:-1:-1;;;15615:47:0;;;;;6952:51:1;;;;7019:18;;;7012:34;15615:11:0;;;:20;;6925:18:1;;15615:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15611:63;;15702:4;;-1:-1:-1;;;;;15689:17:0;;;15702:4;;15689:17;;;;:49;;-1:-1:-1;;;;;;15711:27:0;;;;;;:16;:27;;;;;;;;15710:28;15689:49;15686:126;;;15745:11;;-1:-1:-1;;;;;15777:20:0;;;15745:11;15777:20;;;:9;:20;;;;;;;;15745:53;;-1:-1:-1;;;15745:53:0;;;;;6952:51:1;;;;7019:18;;;7012:34;15745:11:0;;;:20;;6925:18:1;;15745:53:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15741:69;;15846:9;-1:-1:-1;;;;;15829:43:0;15838:6;-1:-1:-1;;;;;15829:43:0;;15857:14;15829:43;;;;1662:25:1;;1650:2;1635:18;;1516:177;15829:43:0;;;;;;;;-1:-1:-1;15890:4:0;;14445:1457;-1:-1:-1;;;;;14445:1457:0:o;1458:136::-;1516:7;1543:43;1547:1;1550;1543:43;;;;;;;;;;;;;;;;;:3;:43::i;17980:337::-;-1:-1:-1;;;;;18067:23:0;;18085:4;18067:23;;;;:41;;-1:-1:-1;18104:4:0;;-1:-1:-1;;;;;18094:14:0;;;18104:4;;18094:14;;18067:41;18059:50;;;;;;-1:-1:-1;;;;;18120:24:0;;;;;;:16;:24;;;;;:33;;-1:-1:-1;;18120:33:0;;;;;;;;;;;;18164:146;;18189:11;;:31;;-1:-1:-1;;;18189:31:0;;-1:-1:-1;;;;;6970:32:1;;;18189:31:0;;;6952:51:1;18189:11:0;7019:18:1;;;7012:34;18189:11:0;;;;:20;;6925:18:1;;18189:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17683:158;;:::o;18164:146::-;18251:11;;-1:-1:-1;;;;;18280:17:0;;;18251:11;18280:17;;;:9;:17;;;;;;;;18251:47;;-1:-1:-1;;;18251:47:0;;;;;6952:51:1;;;;7019:18;;;7012:34;18251:11:0;;;:20;;6925:18:1;;18251:47:0;6778:274:1;1271:181:0;1329:7;;1361:5;1365:1;1361;:5;:::i;:::-;1349:17;;1390:1;1385;:6;;1377:46;;;;-1:-1:-1;;;1377:46:0;;7546:2:1;1377:46:0;;;7528:21:1;7585:2;7565:18;;;7558:30;7624:29;7604:18;;;7597:57;7671:18;;1377:46:0;7344:351:1;16836:698:0;11942:6;:13;;-1:-1:-1;;;;11942:13:0;-1:-1:-1;;;11942:13:0;;;16926:4:::1;-1:-1:-1::0;13381:18:0;;;:9;:18;;;;;;16969:16:::1;::::0;;16983:1:::1;16969:16:::0;;;;;::::1;::::0;;;16885:47;;-1:-1:-1;16945:21:0::1;::::0;16969:16;::::1;;;;;;;;;;;::::0;-1:-1:-1;16969:16:0::1;16945:40;;17014:4;16996;17001:1;16996:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;16996:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;17040:4:::1;::::0;;17030:7;;17040:4;::::1;::::0;17030;;17040;17030:7;::::1;;;;;:::i;:::-;-1:-1:-1::0;;;;;17030:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;17067:6:::1;::::0;:188:::1;::::0;-1:-1:-1;;;17067:188:0;;:6;::::1;::::0;:57:::1;::::0;:188:::1;::::0;17139:12;;17067:6:::1;::::0;17182:4;;17209::::1;::::0;17229:15:::1;::::0;17067:188:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;17276:21;17300:30;17328:1;17301:21;17300:27;;:30;;;;:::i;:::-;17276:54:::0;-1:-1:-1;17341:23:0::1;17367:30;17368:21;17395:1;17367:27;:30::i;:::-;17433:15;::::0;17425:50:::1;::::0;17341:56;;-1:-1:-1;;;;;;17433:15:0::1;::::0;17425:50;::::1;;;::::0;17341:56;;17433:15:::1;17425:50:::0;17433:15;17425:50;17341:56;17433:15;17425:50;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;17494:7:0::1;::::0;17486:40:::1;::::0;-1:-1:-1;;;;;17494:7:0;;::::1;::::0;17486:40;::::1;;;::::0;17512:13;;17494:7:::1;17486:40:::0;17494:7;17486:40;17512:13;17494:7;17486:40;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;11960:6:0;:14;;-1:-1:-1;;;;11960:14:0;;;-1:-1:-1;;;16836:698:0:o;16255:206::-;-1:-1:-1;;;;;16364:19:0;;16336:4;16364:19;;;:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;16387:22:0;;;;;;:11;:22;;;;;;;;16364:45;16362:48;:90;;;;-1:-1:-1;16426:4:0;;-1:-1:-1;;;;;16416:14:0;;;16426:4;;16416:14;;:35;;-1:-1:-1;;16447:4:0;;-1:-1:-1;;;;;16447:4:0;;;16434:17;;;;16255:206;-1:-1:-1;16255:206:0:o;16469:354::-;16536:7;16556:17;16596:40;16621:14;;16596:20;16607:8;;16596:6;:10;;:20;;;;:::i;:::-;:24;;:40::i;:::-;16692:4;16674:24;;;;:9;:24;;;;;;16584:52;;-1:-1:-1;16674:39:0;;16584:52;16674:28;:39::i;:::-;16665:4;16647:24;;;;:9;:24;;;;;;;:66;;;;16729:42;;-1:-1:-1;;;;;16729:42:0;;;;;;;16761:9;1662:25:1;;1650:2;1635:18;;1516:177;16729:42:0;;;;;;;;16794:21;:6;16805:9;16794:10;:21::i;:::-;16787:28;16469:354;-1:-1:-1;;;;16469:354:0:o;2054:132::-;2112:7;2139:39;2143:1;2146;2139:39;;;;;;;;;;;;;;;;;:3;:39::i;1798:250::-;1856:7;1880:6;1876:47;;-1:-1:-1;1910:1:0;1903:8;;1876:47;1935:9;1947:5;1951:1;1947;:5;:::i;:::-;1935:17;-1:-1:-1;1980:1:0;1971:5;1975:1;1935:17;1971:5;:::i;:::-;:10;1963:56;;;;-1:-1:-1;;;1963:56:0;;9546:2:1;1963:56:0;;;9528:21:1;9585:2;9565:18;;;9558:30;9624:34;9604:18;;;9597:62;-1:-1:-1;;;9675:18:1;;;9668:31;9716:19;;1963:56:0;9344:397:1;2192:345:0;2278:7;2380:12;2373:5;2365:28;;;;-1:-1:-1;;;2365:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2404:9:0;2416:5;2420:1;2416;:5;:::i;14:597:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;671:70;616:131;:::o;752:315::-;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;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:416::-;2598:6;2606;2659:2;2647:9;2638:7;2634:23;2630:32;2627:52;;;2675:1;2672;2665:12;2627:52;2714:9;2701:23;2733:31;2758:5;2733:31;:::i;:::-;2783:5;-1:-1:-1;2840:2:1;2825:18;;2812:32;2882:15;;2875:23;2863:36;;2853:64;;2913:1;2910;2903:12;2853:64;2936:7;2926:17;;;2533:416;;;;;:::o;3386:388::-;3454:6;3462;3515:2;3503:9;3494:7;3490:23;3486:32;3483:52;;;3531:1;3528;3521:12;3483:52;3570:9;3557:23;3589:31;3614:5;3589:31;:::i;:::-;3639:5;-1:-1:-1;3696:2:1;3681:18;;3668:32;3709:33;3668:32;3709:33;:::i;4265:329::-;4467:2;4449:21;;;4506:1;4486:18;;;4479:29;-1:-1:-1;;;4539:2:1;4524:18;;4517:36;4585:2;4570:18;;4265:329::o;4599:184::-;4669:6;4722:2;4710:9;4701:7;4697:23;4693:32;4690:52;;;4738:1;4735;4728:12;4690:52;-1:-1:-1;4761:16:1;;4599:184;-1:-1:-1;4599:184:1:o;5353:127::-;5414:10;5409:3;5405:20;5402:1;5395:31;5445:4;5442:1;5435:15;5469:4;5466:1;5459:15;5485:125;5525:4;5553:1;5550;5547:8;5544:34;;;5558:18;;:::i;:::-;-1:-1:-1;5595:9:1;;5485:125::o;6645:128::-;6685:3;6716:1;6712:6;6709:1;6706:13;6703:39;;;6722:18;;:::i;:::-;-1:-1:-1;6758:9:1;;6645:128::o;7832:127::-;7893:10;7888:3;7884:20;7881:1;7874:31;7924:4;7921:1;7914:15;7948:4;7945:1;7938:15;7964:980;8226:4;8274:3;8263:9;8259:19;8305:6;8294:9;8287:25;8331:2;8369:6;8364:2;8353:9;8349:18;8342:34;8412:3;8407:2;8396:9;8392:18;8385:31;8436:6;8471;8465:13;8502:6;8494;8487:22;8540:3;8529:9;8525:19;8518:26;;8579:2;8571:6;8567:15;8553:29;;8600:1;8610:195;8624:6;8621:1;8618:13;8610:195;;;8689:13;;-1:-1:-1;;;;;8685:39:1;8673:52;;8780:15;;;;8745:12;;;;8721:1;8639:9;8610:195;;;-1:-1:-1;;;;;;;8861:32:1;;;;8856:2;8841:18;;8834:60;-1:-1:-1;;;8925:3:1;8910:19;8903:35;8822:3;7964:980;-1:-1:-1;;;7964:980:1:o;8949:168::-;8989:7;9055:1;9051;9047:6;9043:14;9040:1;9037:21;9032:1;9025:9;9018:17;9014:45;9011:71;;;9062:18;;:::i;:::-;-1:-1:-1;9102:9:1;;8949:168::o;9122:217::-;9162:1;9188;9178:132;;9232:10;9227:3;9223:20;9220:1;9213:31;9267:4;9264:1;9257:15;9295:4;9292:1;9285:15;9178:132;-1:-1:-1;9324:9:1;;9122:217::o

Swarm Source

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