ETH Price: $3,101.29 (+1.34%)
Gas: 7 Gwei

Token

Token of Power (Valar)
 

Overview

Max Total Supply

1,000,000 Valar

Holders

83

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
btcmom.eth
Balance
5,115.154973305446155247 Valar

Value
$0.00
0x49ce9c25a5599d620305f1071b6c28d0a2524f25
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:
Valar

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-08-30
*/

// SPDX-License-Identifier: Unlicensed

/**
 * $Vala - Token of Power
 *
 * tokenofpower.xyz
 * twitter.com/tokenofpowererc
 * t.me/tokenofpower
 *
 * It all began with the forging of the Great Rings. 
 * Three were given to the Elves; immortal, wisest and fairest of all beings.
 * Seven, to the Dwarf Lords, great miners and craftsmen of the mountain halls. 
 * And nine, nine rings were gifted to the race of Men, who above all else desire power.
 * ...Another ring was made...One ring, to rule them all...
 *
 * As you commence on your journey, your quest for the almighty Æther shall be taxed according to the ring you hold.
 * The ring you hold shall be determined by the length of time you've held your purse.  
 *
 *
 * The Ring of Men: 0-2 hours - 9% sell tax
 *
 * The Ring of Dwarves: 2-12 hours - 7% sell tax
 *
 * The Ring of Elves: 12-24 hours - 3% sell tax
 *
 * The Ring of Power: after 24 hours - 1% sell tax
 * 
 * ALL buy tax - 1%
 *
 */
pragma solidity 0.8.13;

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

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

abstract contract Ownable is Context {
    address private _owner;

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

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        _transferOwnership(_msgSender());
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(
            newOwner != address(0),
            "Ownable: new owner is the zero address"
        );
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

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 swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;

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

contract Valar is IERC20, Ownable {
    using SafeMath for uint256;

    string private constant _name = "Token of Power";
    string private constant _symbol = "Valar";
    uint8 private constant _decimals = 18;
    
    uint256 private _totalSupply = 1_000_000 * (10 ** _decimals);

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

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

    bool public antiBot = true;

    mapping (address => bool) private bots; 
    mapping (address => bool) public isFeeExempt;
    mapping (address => bool) public isTxLimitExempt;

    uint256 public launchedAt;
    address private lpWallet = DEAD;

    uint256 public buyFee = 1;
    uint256 public sellFeeMen = 9;
    uint256 public sellFeeDwarves = 7;
    uint256 public sellFeeElves = 3;
    uint256 public sellFeeGreatRing = 1;

    mapping (address => uint256) public lastTxTimestamp;

    uint256 public toLiquidity = 20;
    uint256 public toDev = 80;

    uint256 private feeSum = 100;

    IDEXRouter public router;
    address public pair;
    address public factory;
    address private tokenOwner;
    address public devWallet = payable(0x8162739A254f676390e116e2f0dE2aBA3867CB6f);

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

    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }

    uint256 public maxTx = _totalSupply.div(100);
    uint256 public maxWallet = _totalSupply.div(100);
    uint256 public swapThreshold = _totalSupply.div(400);

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

        isTxLimitExempt[owner()] = true;
        isTxLimitExempt[devWallet] = true;
        isTxLimitExempt[pair] = true;
        isTxLimitExempt[DEAD] = true;    

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

    receive() external payable { }

    function setBots(address[] memory bots_) external onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }
    
    //once enabled, cannot be reversed
    function openTrading() external onlyOwner {
        launchedAt = block.number;
        tradingOpen = true;
    }      


    function changeTotalFees(uint256 newBuyFee, uint256 newSellFeeMen, uint256 newSellFeeDwarves, uint256 newSellFeeElves, uint256 newSellFeeGreatRing) external onlyOwner {
        buyFee = newBuyFee;
        sellFeeMen = newSellFeeMen;
        sellFeeDwarves = newSellFeeDwarves;
        sellFeeElves = newSellFeeElves;
        sellFeeGreatRing = newSellFeeGreatRing;
    } 
    
    function changeFeeAllocation(uint256 newDevFee, uint256 newLpFee) external onlyOwner {
        toDev = newDevFee;
        toLiquidity = newLpFee;
    }

    function updateDevWallet (address newDevWallet) external onlyOwner {
        devWallet = newDevWallet;
    }

    function changeTxLimit(uint256 newLimit) external onlyOwner {
        maxTx = newLimit;
    }

    function changeWalletLimit(uint256 newLimit) external onlyOwner {
        maxWallet  = newLimit;
    }
    
    function changeIsFeeExempt(address holder, bool exempt) external onlyOwner {
        isFeeExempt[holder] = exempt;
    }

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

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

    function delBot(address notbot) external onlyOwner {
        bots[notbot] = false;
    }

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

    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 _transfer(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 _transfer(sender, recipient, amount);
    }

    function _transfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        if (sender!= owner() && recipient!= owner()) require(tradingOpen, "patience is a virtue."); //transfers disabled before tradingActive
        require(!bots[sender] && !bots[recipient]);

        if(inSwapAndLiquify){ return _basicTransfer(sender, recipient, amount); }

        require(amount <= maxTx || isTxLimitExempt[sender], "tx");

        if(!isTxLimitExempt[recipient] && antiBot)
        {
            require(_balances[recipient].add(amount) <= maxWallet, "wallet");
        }

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

        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        
        uint256 finalAmount = !isFeeExempt[sender] && !isFeeExempt[recipient] ? takeFee(sender, recipient, amount) : amount;
        _balances[recipient] = _balances[recipient].add(finalAmount);

        emit Transfer(sender, recipient, finalAmount);
        lastTxTimestamp[sender] = block.timestamp;
        lastTxTimestamp[recipient] = block.timestamp;
        return true;
    }    

    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }  
    
    function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) {
        uint256 _sellTotalFees = sellFeeMen;
        uint256 hodlTime = block.timestamp-lastTxTimestamp[sender];
            if (hodlTime > 2 hours && hodlTime <= 12 hours) {
                _sellTotalFees = sellFeeDwarves;
            }
            else if (hodlTime > 12 hours && hodlTime <= 24 hours) {
                _sellTotalFees = sellFeeElves;
            }
            else if (hodlTime > 24 hours) {
                _sellTotalFees = sellFeeGreatRing;
            }

        uint256 feeApplicable = pair == recipient ? _sellTotalFees : buyFee;
        uint256 feeAmount = amount.mul(feeApplicable).div(100);

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

        return amount.sub(feeAmount);
    }
    
    function swapTokensForEth(uint256 tokenAmount) private {

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

        approve(address(this), tokenAmount);

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

    function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
        router.addLiquidityETH{value: ethAmount}(
            address(this),
            tokenAmount,
            0,
            0,
            lpWallet,
            block.timestamp
        );
    }

    function swapBack() internal lockTheSwap {
    
        uint256 tokenBalance = _balances[address(this)]; 
        uint256 tokensForLiquidity = tokenBalance.mul(toLiquidity).div(100).div(2);     
        uint256 amountToSwap = tokenBalance.sub(tokensForLiquidity);

        swapTokensForEth(amountToSwap);

        uint256 totalEthBalance = address(this).balance;
        uint256 ethForDev = totalEthBalance.mul(toDev).div(100);
        uint256 ethForLiquidity = totalEthBalance.mul(toLiquidity).div(100).div(2);
      
        if (totalEthBalance > 0){
            payable(devWallet).transfer(ethForDev);
        }
        
        if (tokensForLiquidity > 0){
            addLiquidity(tokensForLiquidity, ethForLiquidity);
        }
    }

    function manualSwapBack() external onlyOwner {
        swapBack();
    }

    function clearStuckEth() external onlyOwner {
        uint256 contractETHBalance = address(this).balance;
        if(contractETHBalance > 0){          
            payable(address(devWallet)).transfer(contractETHBalance);
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":[],"name":"antiBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newDevFee","type":"uint256"},{"internalType":"uint256","name":"newLpFee","type":"uint256"}],"name":"changeFeeAllocation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"changeIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"changeIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enableSwapBack","type":"bool"},{"internalType":"uint256","name":"newSwapBackLimit","type":"uint256"}],"name":"changeSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyFee","type":"uint256"},{"internalType":"uint256","name":"newSellFeeMen","type":"uint256"},{"internalType":"uint256","name":"newSellFeeDwarves","type":"uint256"},{"internalType":"uint256","name":"newSellFeeElves","type":"uint256"},{"internalType":"uint256","name":"newSellFeeGreatRing","type":"uint256"}],"name":"changeTotalFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"changeTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"changeWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"clearStuckEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"delBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"devWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"lastTxTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwapBack","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTx","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellFeeDwarves","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellFeeElves","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellFeeGreatRing","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellFeeMen","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"toDev","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"toLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newDevWallet","type":"address"}],"name":"updateDevWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126012600a620005b7565b6200002190620f4240620005c8565b6001818155600680546001600160a01b031990811661dead908117909255600780546001600160a81b031916600160a01b178155600c80549092169092179055600d8290556009600e55600f556003601055601155601460138190556050905560646015819055601a8054600162ffff0160a01b0319167501008162739a254f676390e116e2f0de2aba3867cb6f179055620000cd919062000f44620003bc602090811b91909117901c565b601b55620000ed6064600154620003bc60201b62000f441790919060201c565b601c556200010e610190600154620003bc60201b62000f441790919060201c565b601d553480156200011e57600080fd5b506200012a336200040f565b601680546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa1580156200018f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001b59190620005ea565b600580546001600160a01b0319166001600160a01b039283161790556016546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa15801562000214573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200023a9190620005ea565b6005546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af11580156200028c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002b29190620005ea565b601780546001600160a01b0319166001600160a01b03928316178155306000908152600360209081526040808320601654861684528252808320600019905582548516835260098252808320805460ff199081166001908117909255601a8054881686528386208054831684179055855488168652600a85528386208054831684179055548716855282852080548216831790559454861684528184208054861682179055600654861684528184208054909516811790945592548254851683526002825283832081905582549351908152929093169290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a362000697565b60006200040683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200045f60201b60201c565b90505b92915050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600081836200048c5760405162461bcd60e51b81526004016200048391906200061c565b60405180910390fd5b5060006200049b848662000674565b95945050505050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004fb578160001904821115620004df57620004df620004a4565b80851615620004ed57918102915b93841c9390800290620004bf565b509250929050565b600082620005145750600162000409565b81620005235750600062000409565b81600181146200053c5760028114620005475762000567565b600191505062000409565b60ff8411156200055b576200055b620004a4565b50506001821b62000409565b5060208310610133831016604e8410600b84101617156200058c575081810a62000409565b620005988383620004ba565b8060001904821115620005af57620005af620004a4565b029392505050565b60006200040660ff84168362000503565b6000816000190483118215151615620005e557620005e5620004a4565b500290565b600060208284031215620005fd57600080fd5b81516001600160a01b03811681146200061557600080fd5b9392505050565b600060208083528351808285015260005b818110156200064b578581018301518582016040015282016200062d565b818111156200065e576000604083870101525b50601f01601f1916929092016040019392505050565b6000826200069257634e487b7160e01b600052601260045260246000fd5b500490565b611eff80620006a76000396000f3fe6080604052600436106102b25760003560e01c80637dfcbe3411610175578063bf56b371116100dc578063dd3af83c11610095578063f887ea401161006f578063f887ea4014610882578063f8b45b05146108a2578063fabe6283146108b8578063ffb54a99146108d857600080fd5b8063dd3af83c14610806578063dd62ed3e1461081c578063f2fde38b1461086257600080fd5b8063bf56b37114610765578063c45a01551461077b578063c8d1293d1461079b578063c9567bf9146107b1578063ca19e830146107c6578063d920334e146107e657600080fd5b80638ea5220f1161012e5780638ea5220f1461069757806395d89b41146106b7578063a3a2e89e146106e5578063a8aa1b3114610705578063a9059cbb14610725578063b515566a1461074557600080fd5b80637dfcbe34146105cb57806389215317146105ec57806389291a8f14610602578063893d20e8146106175780638b42507f146106495780638da5cb5b1461067957600080fd5b80633f4218e011610219578063571ac8b0116101d2578063571ac8b01461051557806366eb37851461053557806370a082311461054a578063715018a6146105805780637437681e146105955780637db1342c146105ab57600080fd5b80633f4218e01461044b5780634551bbe91461047b57806347062402146104a85780634a74bb02146104be5780634ec13f90146104df5780634f0b71e5146104f557600080fd5b806323b872dd1161026b57806323b872dd146103a4578063273123b7146103c45780632b112e49146103e45780632e1fe3b8146103f9578063313ce5671461040f5780633dab52691461042b57600080fd5b80630445b667146102be57806306fdde03146102e7578063095ea7b31461032757806318160ddd146103575780631816467f1461036c5780631a82593e1461038e57600080fd5b366102b957005b600080fd5b3480156102ca57600080fd5b506102d4601d5481565b6040519081526020015b60405180910390f35b3480156102f357600080fd5b5060408051808201909152600e81526d2a37b5b2b71037b3102837bbb2b960911b60208201525b6040516102de9190611a40565b34801561033357600080fd5b50610347610342366004611aba565b6108f9565b60405190151581526020016102de565b34801561036357600080fd5b506001546102d4565b34801561037857600080fd5b5061038c610387366004611ae6565b610966565b005b34801561039a57600080fd5b506102d460115481565b3480156103b057600080fd5b506103476103bf366004611b03565b6109bb565b3480156103d057600080fd5b5061038c6103df366004611ae6565b610a7d565b3480156103f057600080fd5b506102d4610ac8565b34801561040557600080fd5b506102d460105481565b34801561041b57600080fd5b50604051601281526020016102de565b34801561043757600080fd5b5061038c610446366004611b54565b610b1a565b34801561045757600080fd5b50610347610466366004611ae6565b60096020526000908152604090205460ff1681565b34801561048757600080fd5b506102d4610496366004611ae6565b60126020526000908152604090205481565b3480156104b457600080fd5b506102d4600d5481565b3480156104ca57600080fd5b50601a5461034790600160a81b900460ff1681565b3480156104eb57600080fd5b506102d4600f5481565b34801561050157600080fd5b5061038c610510366004611b70565b610b66565b34801561052157600080fd5b50610347610530366004611ae6565b610ba7565b34801561054157600080fd5b5061038c610bb5565b34801561055657600080fd5b506102d4610565366004611ae6565b6001600160a01b031660009081526002602052604090205490565b34801561058c57600080fd5b5061038c610be9565b3480156105a157600080fd5b506102d4601b5481565b3480156105b757600080fd5b5061038c6105c6366004611bab565b610c1d565b3480156105d757600080fd5b5060075461034790600160a01b900460ff1681565b3480156105f857600080fd5b506102d460145481565b34801561060e57600080fd5b5061038c610c4c565b34801561062357600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016102de565b34801561065557600080fd5b50610347610664366004611ae6565b600a6020526000908152604090205460ff1681565b34801561068557600080fd5b506000546001600160a01b0316610631565b3480156106a357600080fd5b50601a54610631906001600160a01b031681565b3480156106c357600080fd5b506040805180820190915260058152642b30b630b960d91b602082015261031a565b3480156106f157600080fd5b5061038c610700366004611bc4565b610cbc565b34801561071157600080fd5b50601754610631906001600160a01b031681565b34801561073157600080fd5b50610347610740366004611aba565b610d11565b34801561075157600080fd5b5061038c610760366004611c0f565b610d1e565b34801561077157600080fd5b506102d4600b5481565b34801561078757600080fd5b50601854610631906001600160a01b031681565b3480156107a757600080fd5b506102d460135481565b3480156107bd57600080fd5b5061038c610db0565b3480156107d257600080fd5b5061038c6107e1366004611cc8565b610df3565b3480156107f257600080fd5b5061038c610801366004611bab565b610e28565b34801561081257600080fd5b506102d4600e5481565b34801561082857600080fd5b506102d4610837366004611cea565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561086e57600080fd5b5061038c61087d366004611ae6565b610e57565b34801561088e57600080fd5b50601654610631906001600160a01b031681565b3480156108ae57600080fd5b506102d4601c5481565b3480156108c457600080fd5b5061038c6108d3366004611bc4565b610eef565b3480156108e457600080fd5b50601a5461034790600160b01b900460ff1681565b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906109549086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b031633146109995760405162461bcd60e51b815260040161099090611d23565b60405180910390fd5b601a80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316600090815260036020908152604080832033845290915281205460001914610a68576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600382528381203382529091529190912054610a43918490610f86565b6001600160a01b03851660009081526003602090815260408083203384529091529020555b610a73848484610fc0565b90505b9392505050565b6000546001600160a01b03163314610aa75760405162461bcd60e51b815260040161099090611d23565b6001600160a01b03166000908152600860205260409020805460ff19169055565b6007546001600160a01b0316600090815260026020526040812054610b15906006546001600160a01b0316600090815260026020526040902054610b0f906001549061136f565b9061136f565b905090565b6000546001600160a01b03163314610b445760405162461bcd60e51b815260040161099090611d23565b601a8054921515600160a81b0260ff60a81b1990931692909217909155601d55565b6000546001600160a01b03163314610b905760405162461bcd60e51b815260040161099090611d23565b600d94909455600e92909255600f55601055601155565b6000610960826000196108f9565b6000546001600160a01b03163314610bdf5760405162461bcd60e51b815260040161099090611d23565b610be76113b1565b565b6000546001600160a01b03163314610c135760405162461bcd60e51b815260040161099090611d23565b610be760006114bc565b6000546001600160a01b03163314610c475760405162461bcd60e51b815260040161099090611d23565b601c55565b6000546001600160a01b03163314610c765760405162461bcd60e51b815260040161099090611d23565b478015610cb957601a546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610cb7573d6000803e3d6000fd5b505b50565b6000546001600160a01b03163314610ce65760405162461bcd60e51b815260040161099090611d23565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000610a76338484610fc0565b6000546001600160a01b03163314610d485760405162461bcd60e51b815260040161099090611d23565b60005b8151811015610cb757600160086000848481518110610d6c57610d6c611d58565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610da881611d84565b915050610d4b565b6000546001600160a01b03163314610dda5760405162461bcd60e51b815260040161099090611d23565b43600b55601a805460ff60b01b1916600160b01b179055565b6000546001600160a01b03163314610e1d5760405162461bcd60e51b815260040161099090611d23565b601491909155601355565b6000546001600160a01b03163314610e525760405162461bcd60e51b815260040161099090611d23565b601b55565b6000546001600160a01b03163314610e815760405162461bcd60e51b815260040161099090611d23565b6001600160a01b038116610ee65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610990565b610cb9816114bc565b6000546001600160a01b03163314610f195760405162461bcd60e51b815260040161099090611d23565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b6000610a7683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061150c565b60008184841115610faa5760405162461bcd60e51b81526004016109909190611a40565b506000610fb78486611d9d565b95945050505050565b600080546001600160a01b03858116911614801590610fed57506000546001600160a01b03848116911614155b1561104357601a54600160b01b900460ff166110435760405162461bcd60e51b81526020600482015260156024820152743830ba34b2b731b29034b99030903b34b93a3ab29760591b6044820152606401610990565b6001600160a01b03841660009081526008602052604090205460ff1615801561108557506001600160a01b03831660009081526008602052604090205460ff16155b61108e57600080fd5b601a54600160a01b900460ff16156110b2576110ab84848461153a565b9050610a76565b601b54821115806110db57506001600160a01b0384166000908152600a602052604090205460ff165b61110c5760405162461bcd60e51b81526020600482015260026024820152610e8f60f31b6044820152606401610990565b6001600160a01b0383166000908152600a602052604090205460ff1615801561113e5750600754600160a01b900460ff165b156111a057601c546001600160a01b0384166000908152600260205260409020546111699084611620565b11156111a05760405162461bcd60e51b81526020600482015260066024820152651dd85b1b195d60d21b6044820152606401610990565b6017546001600160a01b031633148015906111c55750601a54600160a01b900460ff16155b80156111da5750601a54600160a81b900460ff165b80156111f75750601d543060009081526002602052604090205410155b15611204576112046113b1565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260029091529190912054611256918490610f86565b6001600160a01b038516600090815260026020908152604080832093909355600990529081205460ff161580156112a657506001600160a01b03841660009081526009602052604090205460ff16155b6112b057826112bb565b6112bb85858561167f565b6001600160a01b0385166000908152600260205260409020549091506112e19082611620565b6001600160a01b0380861660008181526002602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113359085815260200190565b60405180910390a350506001600160a01b038084166000908152601260205260408082204290819055928516825290205560019392505050565b6000610a7683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f86565b601a805460ff60a01b1916600160a01b1790553060009081526002602081905260408220546013549092916113f6916113f090606490829087906117c3565b90610f44565b90506000611404838361136f565b905061140f81611845565b6000479050600061143060646113f0601454856117c390919063ffffffff16565b9050600061145360026113f060646113f0601354886117c390919063ffffffff16565b9050821561149757601a546040516001600160a01b039091169083156108fc029084906000818181858888f19350505050158015611495573d6000803e3d6000fd5b505b84156114a7576114a785826119a4565b5050601a805460ff60a01b1916905550505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000818361152d5760405162461bcd60e51b81526004016109909190611a40565b506000610fb78486611db4565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038616600090815260029091529182205461158b918490610f86565b6001600160a01b0380861660009081526002602052604080822093909355908516815220546115ba9083611620565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061160e9086815260200190565b60405180910390a35060019392505050565b60008061162d8385611dd6565b905083811015610a765760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610990565b600e546001600160a01b03841660009081526012602052604081205490919082906116aa9042611d9d565b9050611c20811180156116bf575061a8c08111155b156116ce57600f549150611702565b61a8c0811180156116e25750620151808111155b156116f1576010549150611702565b620151808111156117025760115491505b6017546000906001600160a01b0387811691161461172257600d54611724565b825b9050600061173760646113f088856117c3565b306000908152600260205260409020549091506117549082611620565b30600081815260026020526040908190209290925590516001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117a59085815260200190565b60405180910390a36117b7868261136f565b98975050505050505050565b6000826000036117d557506000610960565b60006117e18385611dee565b9050826117ee8583611db4565b14610a765760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610990565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061187a5761187a611d58565b6001600160a01b03928316602091820292909201810191909152601654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156118d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118f79190611e0d565b8160018151811061190a5761190a611d58565b60200260200101906001600160a01b031690816001600160a01b03168152505061193430836108f9565b5060165460405163791ac94760e01b81526001600160a01b039091169063791ac9479061196e908590600090869030904290600401611e2a565b600060405180830381600087803b15801561198857600080fd5b505af115801561199c573d6000803e3d6000fd5b505050505050565b601654600c5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015611a14573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611a399190611e9b565b5050505050565b600060208083528351808285015260005b81811015611a6d57858101830151858201604001528201611a51565b81811115611a7f576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b0381168114610cb957600080fd5b8035611ab581611a95565b919050565b60008060408385031215611acd57600080fd5b8235611ad881611a95565b946020939093013593505050565b600060208284031215611af857600080fd5b8135610a7681611a95565b600080600060608486031215611b1857600080fd5b8335611b2381611a95565b92506020840135611b3381611a95565b929592945050506040919091013590565b80358015158114611ab557600080fd5b60008060408385031215611b6757600080fd5b611ad883611b44565b600080600080600060a08688031215611b8857600080fd5b505083359560208501359550604085013594606081013594506080013592509050565b600060208284031215611bbd57600080fd5b5035919050565b60008060408385031215611bd757600080fd5b8235611be281611a95565b9150611bf060208401611b44565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611c2257600080fd5b823567ffffffffffffffff80821115611c3a57600080fd5b818501915085601f830112611c4e57600080fd5b813581811115611c6057611c60611bf9565b8060051b604051601f19603f83011681018181108582111715611c8557611c85611bf9565b604052918252848201925083810185019188831115611ca357600080fd5b938501935b828510156117b757611cb985611aaa565b84529385019392850192611ca8565b60008060408385031215611cdb57600080fd5b50508035926020909101359150565b60008060408385031215611cfd57600080fd5b8235611d0881611a95565b91506020830135611d1881611a95565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611d9657611d96611d6e565b5060010190565b600082821015611daf57611daf611d6e565b500390565b600082611dd157634e487b7160e01b600052601260045260246000fd5b500490565b60008219821115611de957611de9611d6e565b500190565b6000816000190483118215151615611e0857611e08611d6e565b500290565b600060208284031215611e1f57600080fd5b8151610a7681611a95565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611e7a5784516001600160a01b031683529383019391830191600101611e55565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215611eb057600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212204ebdbfdc11ab7bb7a6bbfb39e4c869f5bc4e1c3732a40d1135007f4784512da464736f6c634300080d0033

Deployed Bytecode

0x6080604052600436106102b25760003560e01c80637dfcbe3411610175578063bf56b371116100dc578063dd3af83c11610095578063f887ea401161006f578063f887ea4014610882578063f8b45b05146108a2578063fabe6283146108b8578063ffb54a99146108d857600080fd5b8063dd3af83c14610806578063dd62ed3e1461081c578063f2fde38b1461086257600080fd5b8063bf56b37114610765578063c45a01551461077b578063c8d1293d1461079b578063c9567bf9146107b1578063ca19e830146107c6578063d920334e146107e657600080fd5b80638ea5220f1161012e5780638ea5220f1461069757806395d89b41146106b7578063a3a2e89e146106e5578063a8aa1b3114610705578063a9059cbb14610725578063b515566a1461074557600080fd5b80637dfcbe34146105cb57806389215317146105ec57806389291a8f14610602578063893d20e8146106175780638b42507f146106495780638da5cb5b1461067957600080fd5b80633f4218e011610219578063571ac8b0116101d2578063571ac8b01461051557806366eb37851461053557806370a082311461054a578063715018a6146105805780637437681e146105955780637db1342c146105ab57600080fd5b80633f4218e01461044b5780634551bbe91461047b57806347062402146104a85780634a74bb02146104be5780634ec13f90146104df5780634f0b71e5146104f557600080fd5b806323b872dd1161026b57806323b872dd146103a4578063273123b7146103c45780632b112e49146103e45780632e1fe3b8146103f9578063313ce5671461040f5780633dab52691461042b57600080fd5b80630445b667146102be57806306fdde03146102e7578063095ea7b31461032757806318160ddd146103575780631816467f1461036c5780631a82593e1461038e57600080fd5b366102b957005b600080fd5b3480156102ca57600080fd5b506102d4601d5481565b6040519081526020015b60405180910390f35b3480156102f357600080fd5b5060408051808201909152600e81526d2a37b5b2b71037b3102837bbb2b960911b60208201525b6040516102de9190611a40565b34801561033357600080fd5b50610347610342366004611aba565b6108f9565b60405190151581526020016102de565b34801561036357600080fd5b506001546102d4565b34801561037857600080fd5b5061038c610387366004611ae6565b610966565b005b34801561039a57600080fd5b506102d460115481565b3480156103b057600080fd5b506103476103bf366004611b03565b6109bb565b3480156103d057600080fd5b5061038c6103df366004611ae6565b610a7d565b3480156103f057600080fd5b506102d4610ac8565b34801561040557600080fd5b506102d460105481565b34801561041b57600080fd5b50604051601281526020016102de565b34801561043757600080fd5b5061038c610446366004611b54565b610b1a565b34801561045757600080fd5b50610347610466366004611ae6565b60096020526000908152604090205460ff1681565b34801561048757600080fd5b506102d4610496366004611ae6565b60126020526000908152604090205481565b3480156104b457600080fd5b506102d4600d5481565b3480156104ca57600080fd5b50601a5461034790600160a81b900460ff1681565b3480156104eb57600080fd5b506102d4600f5481565b34801561050157600080fd5b5061038c610510366004611b70565b610b66565b34801561052157600080fd5b50610347610530366004611ae6565b610ba7565b34801561054157600080fd5b5061038c610bb5565b34801561055657600080fd5b506102d4610565366004611ae6565b6001600160a01b031660009081526002602052604090205490565b34801561058c57600080fd5b5061038c610be9565b3480156105a157600080fd5b506102d4601b5481565b3480156105b757600080fd5b5061038c6105c6366004611bab565b610c1d565b3480156105d757600080fd5b5060075461034790600160a01b900460ff1681565b3480156105f857600080fd5b506102d460145481565b34801561060e57600080fd5b5061038c610c4c565b34801561062357600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016102de565b34801561065557600080fd5b50610347610664366004611ae6565b600a6020526000908152604090205460ff1681565b34801561068557600080fd5b506000546001600160a01b0316610631565b3480156106a357600080fd5b50601a54610631906001600160a01b031681565b3480156106c357600080fd5b506040805180820190915260058152642b30b630b960d91b602082015261031a565b3480156106f157600080fd5b5061038c610700366004611bc4565b610cbc565b34801561071157600080fd5b50601754610631906001600160a01b031681565b34801561073157600080fd5b50610347610740366004611aba565b610d11565b34801561075157600080fd5b5061038c610760366004611c0f565b610d1e565b34801561077157600080fd5b506102d4600b5481565b34801561078757600080fd5b50601854610631906001600160a01b031681565b3480156107a757600080fd5b506102d460135481565b3480156107bd57600080fd5b5061038c610db0565b3480156107d257600080fd5b5061038c6107e1366004611cc8565b610df3565b3480156107f257600080fd5b5061038c610801366004611bab565b610e28565b34801561081257600080fd5b506102d4600e5481565b34801561082857600080fd5b506102d4610837366004611cea565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561086e57600080fd5b5061038c61087d366004611ae6565b610e57565b34801561088e57600080fd5b50601654610631906001600160a01b031681565b3480156108ae57600080fd5b506102d4601c5481565b3480156108c457600080fd5b5061038c6108d3366004611bc4565b610eef565b3480156108e457600080fd5b50601a5461034790600160b01b900460ff1681565b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906109549086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b031633146109995760405162461bcd60e51b815260040161099090611d23565b60405180910390fd5b601a80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316600090815260036020908152604080832033845290915281205460001914610a68576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600382528381203382529091529190912054610a43918490610f86565b6001600160a01b03851660009081526003602090815260408083203384529091529020555b610a73848484610fc0565b90505b9392505050565b6000546001600160a01b03163314610aa75760405162461bcd60e51b815260040161099090611d23565b6001600160a01b03166000908152600860205260409020805460ff19169055565b6007546001600160a01b0316600090815260026020526040812054610b15906006546001600160a01b0316600090815260026020526040902054610b0f906001549061136f565b9061136f565b905090565b6000546001600160a01b03163314610b445760405162461bcd60e51b815260040161099090611d23565b601a8054921515600160a81b0260ff60a81b1990931692909217909155601d55565b6000546001600160a01b03163314610b905760405162461bcd60e51b815260040161099090611d23565b600d94909455600e92909255600f55601055601155565b6000610960826000196108f9565b6000546001600160a01b03163314610bdf5760405162461bcd60e51b815260040161099090611d23565b610be76113b1565b565b6000546001600160a01b03163314610c135760405162461bcd60e51b815260040161099090611d23565b610be760006114bc565b6000546001600160a01b03163314610c475760405162461bcd60e51b815260040161099090611d23565b601c55565b6000546001600160a01b03163314610c765760405162461bcd60e51b815260040161099090611d23565b478015610cb957601a546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610cb7573d6000803e3d6000fd5b505b50565b6000546001600160a01b03163314610ce65760405162461bcd60e51b815260040161099090611d23565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000610a76338484610fc0565b6000546001600160a01b03163314610d485760405162461bcd60e51b815260040161099090611d23565b60005b8151811015610cb757600160086000848481518110610d6c57610d6c611d58565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610da881611d84565b915050610d4b565b6000546001600160a01b03163314610dda5760405162461bcd60e51b815260040161099090611d23565b43600b55601a805460ff60b01b1916600160b01b179055565b6000546001600160a01b03163314610e1d5760405162461bcd60e51b815260040161099090611d23565b601491909155601355565b6000546001600160a01b03163314610e525760405162461bcd60e51b815260040161099090611d23565b601b55565b6000546001600160a01b03163314610e815760405162461bcd60e51b815260040161099090611d23565b6001600160a01b038116610ee65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610990565b610cb9816114bc565b6000546001600160a01b03163314610f195760405162461bcd60e51b815260040161099090611d23565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b6000610a7683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061150c565b60008184841115610faa5760405162461bcd60e51b81526004016109909190611a40565b506000610fb78486611d9d565b95945050505050565b600080546001600160a01b03858116911614801590610fed57506000546001600160a01b03848116911614155b1561104357601a54600160b01b900460ff166110435760405162461bcd60e51b81526020600482015260156024820152743830ba34b2b731b29034b99030903b34b93a3ab29760591b6044820152606401610990565b6001600160a01b03841660009081526008602052604090205460ff1615801561108557506001600160a01b03831660009081526008602052604090205460ff16155b61108e57600080fd5b601a54600160a01b900460ff16156110b2576110ab84848461153a565b9050610a76565b601b54821115806110db57506001600160a01b0384166000908152600a602052604090205460ff165b61110c5760405162461bcd60e51b81526020600482015260026024820152610e8f60f31b6044820152606401610990565b6001600160a01b0383166000908152600a602052604090205460ff1615801561113e5750600754600160a01b900460ff165b156111a057601c546001600160a01b0384166000908152600260205260409020546111699084611620565b11156111a05760405162461bcd60e51b81526020600482015260066024820152651dd85b1b195d60d21b6044820152606401610990565b6017546001600160a01b031633148015906111c55750601a54600160a01b900460ff16155b80156111da5750601a54600160a81b900460ff165b80156111f75750601d543060009081526002602052604090205410155b15611204576112046113b1565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260029091529190912054611256918490610f86565b6001600160a01b038516600090815260026020908152604080832093909355600990529081205460ff161580156112a657506001600160a01b03841660009081526009602052604090205460ff16155b6112b057826112bb565b6112bb85858561167f565b6001600160a01b0385166000908152600260205260409020549091506112e19082611620565b6001600160a01b0380861660008181526002602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113359085815260200190565b60405180910390a350506001600160a01b038084166000908152601260205260408082204290819055928516825290205560019392505050565b6000610a7683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f86565b601a805460ff60a01b1916600160a01b1790553060009081526002602081905260408220546013549092916113f6916113f090606490829087906117c3565b90610f44565b90506000611404838361136f565b905061140f81611845565b6000479050600061143060646113f0601454856117c390919063ffffffff16565b9050600061145360026113f060646113f0601354886117c390919063ffffffff16565b9050821561149757601a546040516001600160a01b039091169083156108fc029084906000818181858888f19350505050158015611495573d6000803e3d6000fd5b505b84156114a7576114a785826119a4565b5050601a805460ff60a01b1916905550505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000818361152d5760405162461bcd60e51b81526004016109909190611a40565b506000610fb78486611db4565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038616600090815260029091529182205461158b918490610f86565b6001600160a01b0380861660009081526002602052604080822093909355908516815220546115ba9083611620565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061160e9086815260200190565b60405180910390a35060019392505050565b60008061162d8385611dd6565b905083811015610a765760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610990565b600e546001600160a01b03841660009081526012602052604081205490919082906116aa9042611d9d565b9050611c20811180156116bf575061a8c08111155b156116ce57600f549150611702565b61a8c0811180156116e25750620151808111155b156116f1576010549150611702565b620151808111156117025760115491505b6017546000906001600160a01b0387811691161461172257600d54611724565b825b9050600061173760646113f088856117c3565b306000908152600260205260409020549091506117549082611620565b30600081815260026020526040908190209290925590516001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117a59085815260200190565b60405180910390a36117b7868261136f565b98975050505050505050565b6000826000036117d557506000610960565b60006117e18385611dee565b9050826117ee8583611db4565b14610a765760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610990565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061187a5761187a611d58565b6001600160a01b03928316602091820292909201810191909152601654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156118d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118f79190611e0d565b8160018151811061190a5761190a611d58565b60200260200101906001600160a01b031690816001600160a01b03168152505061193430836108f9565b5060165460405163791ac94760e01b81526001600160a01b039091169063791ac9479061196e908590600090869030904290600401611e2a565b600060405180830381600087803b15801561198857600080fd5b505af115801561199c573d6000803e3d6000fd5b505050505050565b601654600c5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015611a14573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611a399190611e9b565b5050505050565b600060208083528351808285015260005b81811015611a6d57858101830151858201604001528201611a51565b81811115611a7f576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b0381168114610cb957600080fd5b8035611ab581611a95565b919050565b60008060408385031215611acd57600080fd5b8235611ad881611a95565b946020939093013593505050565b600060208284031215611af857600080fd5b8135610a7681611a95565b600080600060608486031215611b1857600080fd5b8335611b2381611a95565b92506020840135611b3381611a95565b929592945050506040919091013590565b80358015158114611ab557600080fd5b60008060408385031215611b6757600080fd5b611ad883611b44565b600080600080600060a08688031215611b8857600080fd5b505083359560208501359550604085013594606081013594506080013592509050565b600060208284031215611bbd57600080fd5b5035919050565b60008060408385031215611bd757600080fd5b8235611be281611a95565b9150611bf060208401611b44565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611c2257600080fd5b823567ffffffffffffffff80821115611c3a57600080fd5b818501915085601f830112611c4e57600080fd5b813581811115611c6057611c60611bf9565b8060051b604051601f19603f83011681018181108582111715611c8557611c85611bf9565b604052918252848201925083810185019188831115611ca357600080fd5b938501935b828510156117b757611cb985611aaa565b84529385019392850192611ca8565b60008060408385031215611cdb57600080fd5b50508035926020909101359150565b60008060408385031215611cfd57600080fd5b8235611d0881611a95565b91506020830135611d1881611a95565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611d9657611d96611d6e565b5060010190565b600082821015611daf57611daf611d6e565b500390565b600082611dd157634e487b7160e01b600052601260045260246000fd5b500490565b60008219821115611de957611de9611d6e565b500190565b6000816000190483118215151615611e0857611e08611d6e565b500290565b600060208284031215611e1f57600080fd5b8151610a7681611a95565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611e7a5784516001600160a01b031683529383019391830191600101611e55565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215611eb057600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212204ebdbfdc11ab7bb7a6bbfb39e4c869f5bc4e1c3732a40d1135007f4784512da464736f6c634300080d0033

Deployed Bytecode Sourcemap

6674:10513:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8474:52;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;8474:52:0;;;;;;;;11514:80;;;;;;;;;;-1:-1:-1;11586:5:0;;;;;;;;;;;;-1:-1:-1;;;11586:5:0;;;;11514:80;;;;;;;:::i;11942:216::-;;;;;;;;;;-1:-1:-1;11942:216:0;;;;;:::i;:::-;;:::i;:::-;;;1558:14:1;;1551:22;1533:41;;1521:2;1506:18;11942:216:0;1393:187:1;11244:88:0;;;;;;;;;;-1:-1:-1;11317:12:0;;11244:88;;10178:110;;;;;;;;;;-1:-1:-1;10178:110:0;;;;;:::i;:::-;;:::i;:::-;;7716:35;;;;;;;;;;;;;;;;12456:366;;;;;;;;;;-1:-1:-1;12456:366:0;;;;;:::i;:::-;;:::i;10996:90::-;;;;;;;;;;-1:-1:-1;10996:90:0;;;;;:::i;:::-;;:::i;11094:142::-;;;;;;;;;;;;;:::i;7678:31::-;;;;;;;;;;;;;;;;11338:80;;;;;;;;;;-1:-1:-1;11338:80:0;;6888:2;2440:36:1;;2428:2;2413:18;11338:80:0;2298:184:1;10789:199:0;;;;;;;;;;-1:-1:-1;10789:199:0;;;;;:::i;:::-;;:::i;7390:44::-;;;;;;;;;;-1:-1:-1;7390:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;7760:51;;;;;;;;;;-1:-1:-1;7760:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;7570:25;;;;;;;;;;;;;;;;8163:40;;;;;;;;;;-1:-1:-1;8163:40:0;;;;-1:-1:-1;;;8163:40:0;;;;;;7638:33;;;;;;;;;;;;;;;;9627:376;;;;;;;;;;-1:-1:-1;9627:376:0;;;;;:::i;:::-;;:::i;12166:122::-;;;;;;;;;;-1:-1:-1;12166:122:0;;;;;:::i;:::-;;:::i;16860:74::-;;;;;;;;;;;;;:::i;11686:105::-;;;;;;;;;;-1:-1:-1;11686:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;11770:18:0;11752:7;11770:18;;;:9;:18;;;;;;;11686:105;4563:103;;;;;;;;;;;;;:::i;8368:44::-;;;;;;;;;;;;;;;;10399:104;;;;;;;;;;-1:-1:-1;10399:104:0;;;;;:::i;:::-;;:::i;7309:26::-;;;;;;;;;;-1:-1:-1;7309:26:0;;;;-1:-1:-1;;;7309:26:0;;;;;;7858:25;;;;;;;;;;;;;;;;16942:242;;;;;;;;;;;;;:::i;11600:80::-;;;;;;;;;;-1:-1:-1;11652:7:0;3985:6;-1:-1:-1;;;;;3985:6:0;11600:80;;;-1:-1:-1;;;;;3713:32:1;;;3695:51;;3683:2;3668:18;11600:80:0;3549:203:1;7441:48:0;;;;;;;;;;-1:-1:-1;7441:48:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;3912:87;;;;;;;;;;-1:-1:-1;3958:7:0;3985:6;-1:-1:-1;;;;;3985:6:0;3912:87;;8048:78;;;;;;;;;;-1:-1:-1;8048:78:0;;;;-1:-1:-1;;;;;8048:78:0;;;11424:84;;;;;;;;;;-1:-1:-1;11498:7:0;;;;;;;;;;;;-1:-1:-1;;;11498:7:0;;;;11424:84;;10515:122;;;;;;;;;;-1:-1:-1;10515:122:0;;;;;:::i;:::-;;:::i;7960:19::-;;;;;;;;;;-1:-1:-1;7960:19:0;;;;-1:-1:-1;;;;;7960:19:0;;;12296:152;;;;;;;;;;-1:-1:-1;12296:152:0;;;;;:::i;:::-;;:::i;9278:166::-;;;;;;;;;;-1:-1:-1;9278:166:0;;;;;:::i;:::-;;:::i;7498:25::-;;;;;;;;;;;;;;;;7986:22;;;;;;;;;;-1:-1:-1;7986:22:0;;;;-1:-1:-1;;;;;7986:22:0;;;7820:31;;;;;;;;;;;;;;;;9496:115;;;;;;;;;;;;;:::i;10016:154::-;;;;;;;;;;-1:-1:-1;10016:154:0;;;;;:::i;:::-;;:::i;10296:95::-;;;;;;;;;;-1:-1:-1;10296:95:0;;;;;:::i;:::-;;:::i;7602:29::-;;;;;;;;;;;;;;;;11797:133;;;;;;;;;;-1:-1:-1;11797:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;11899:19:0;;;11881:7;11899:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;11797:133;4821:238;;;;;;;;;;-1:-1:-1;4821:238:0;;;;;:::i;:::-;;:::i;7929:24::-;;;;;;;;;;-1:-1:-1;7929:24:0;;;;-1:-1:-1;;;;;7929:24:0;;;8419:48;;;;;;;;;;;;;;;;10645:136;;;;;;;;;;-1:-1:-1;10645:136:0;;;;;:::i;:::-;;:::i;8210:31::-;;;;;;;;;;-1:-1:-1;8210:31:0;;;;-1:-1:-1;;;8210:31:0;;;;;;11942:216;12046:10;12017:4;12034:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;12034:32:0;;;;;;;;;;:41;;;12091:37;12017:4;;12034:32;;12091:37;;;;12069:6;160:25:1;;148:2;133:18;;14:177;12091:37:0;;;;;;;;-1:-1:-1;12146:4:0;11942:216;;;;;:::o;10178:110::-;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;;;;;;;;;10256:9:::1;:24:::0;;-1:-1:-1;;;;;;10256:24:0::1;-1:-1:-1::0;;;;;10256:24:0;;;::::1;::::0;;;::::1;::::0;;10178:110::o;12456:366::-;-1:-1:-1;;;;;12576:19:0;;12556:4;12576:19;;;:11;:19;;;;;;;;12596:10;12576:31;;;;;;;;-1:-1:-1;;12576:52:0;12573:186;;12678:69;;;;;;;;;;;-1:-1:-1;;;12678:69:0;;;;;;;;-1:-1:-1;;;;;12678:19:0;;-1:-1:-1;12678:19:0;;;:11;:19;;;;;12698:10;12678:31;;;;;;;;;;:69;;12714:6;;12678:35;:69::i;:::-;-1:-1:-1;;;;;12644:19:0;;;;;;:11;:19;;;;;;;;12664:10;12644:31;;;;;;;:103;12573:186;12778:36;12788:6;12796:9;12807:6;12778:9;:36::i;:::-;12771:43;;12456:366;;;;;;:::o;10996:90::-;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11058:12:0::1;11073:5;11058:12:::0;;;:4:::1;:12;::::0;;;;:20;;-1:-1:-1;;11058:20:0::1;::::0;;10996:90::o;11094:142::-;11222:4;;-1:-1:-1;;;;;11222:4:0;11147:7;11770:18;;;:9;:18;;;;;;11174:54;;11201:4;;-1:-1:-1;;;;;11201:4:0;11752:7;11770:18;;;:9;:18;;;;;;11174:33;;:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;11167:61;;11094:142;:::o;10789:199::-;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;10898:21:::1;:39:::0;;;::::1;;-1:-1:-1::0;;;10898:39:0::1;-1:-1:-1::0;;;;10898:39:0;;::::1;::::0;;;::::1;::::0;;;10948:13:::1;:32:::0;10789:199::o;9627:376::-;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;9805:6:::1;:18:::0;;;;9834:10:::1;:26:::0;;;;9871:14:::1;:34:::0;9916:12:::1;:30:::0;9957:16:::1;:38:::0;9627:376::o;12166:122::-;12221:4;12245:35;12253:7;-1:-1:-1;;12245:7:0;:35::i;16860:74::-;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;16916:10:::1;:8;:10::i;:::-;16860:74::o:0;4563:103::-;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;4628:30:::1;4655:1;4628:18;:30::i;10399:104::-:0;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;10474:9:::1;:21:::0;10399:104::o;16942:242::-;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;17026:21:::1;17061:22:::0;;17058:119:::1;;17125:9;::::0;17109:56:::1;::::0;-1:-1:-1;;;;;17125:9:0;;::::1;::::0;17109:56;::::1;;;::::0;17146:18;;17125:9:::1;17109:56:::0;17125:9;17109:56;17146:18;17125:9;17109:56;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;17058:119;16986:198;16942:242::o:0;10515:122::-;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;10601:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;10601:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10515:122::o;12296:152::-;12376:4;12400:40;12410:10;12422:9;12433:6;12400:9;:40::i;9278:166::-;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;9354:6:::1;9349:88;9370:5;:12;9366:1;:16;9349:88;;;9421:4;9404;:14;9409:5;9415:1;9409:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;9404:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;9404:14:0;:21;;-1:-1:-1;;9404:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9384:3;::::1;::::0;::::1;:::i;:::-;;;;9349:88;;9496:115:::0;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;9562:12:::1;9549:10;:25:::0;9585:11:::1;:18:::0;;-1:-1:-1;;;;9585:18:0::1;-1:-1:-1::0;;;9585:18:0::1;::::0;;9496:115::o;10016:154::-;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;10112:5:::1;:17:::0;;;;10140:11:::1;:22:::0;10016:154::o;10296:95::-;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;10367:5:::1;:16:::0;10296:95::o;4821:238::-;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;4924:22:0;::::1;4902:110;;;::::0;-1:-1:-1;;;4902:110:0;;7174:2:1;4902:110:0::1;::::0;::::1;7156:21:1::0;7213:2;7193:18;;;7186:30;7252:34;7232:18;;;7225:62;-1:-1:-1;;;7303:18:1;;;7296:36;7349:19;;4902:110:0::1;6972:402:1::0;4902:110:0::1;5023:28;5042:8;5023:18;:28::i;10645:136::-:0;3958:7;3985:6;-1:-1:-1;;;;;3985:6:0;1128:10;4132:23;4124:68;;;;-1:-1:-1;;;4124:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;10741:23:0;;;::::1;;::::0;;;:15:::1;:23;::::0;;;;:32;;-1:-1:-1;;10741:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10645:136::o;2031:132::-;2089:7;2116:39;2120:1;2123;2116:39;;;;;;;;;;;;;;;;;:3;:39::i;1577:192::-;1663:7;1699:12;1691:6;;;;1683:29;;;;-1:-1:-1;;;1683:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1723:9:0;1735:5;1739:1;1735;:5;:::i;:::-;1723:17;1577:192;-1:-1:-1;;;;;1577:192:0:o;12830:1228::-;12918:4;3985:6;;-1:-1:-1;;;;;12939:16:0;;;3985:6;;12939:16;;;;:39;;-1:-1:-1;3958:7:0;3985:6;-1:-1:-1;;;;;12959:19:0;;;3985:6;;12959:19;;12939:39;12935:90;;;12988:11;;-1:-1:-1;;;12988:11:0;;;;12980:45;;;;-1:-1:-1;;;12980:45:0;;7711:2:1;12980:45:0;;;7693:21:1;7750:2;7730:18;;;7723:30;-1:-1:-1;;;7769:18:1;;;7762:51;7830:18;;12980:45:0;7509:345:1;12980:45:0;-1:-1:-1;;;;;13087:12:0;;;;;;:4;:12;;;;;;;;13086:13;:33;;;;-1:-1:-1;;;;;;13104:15:0;;;;;;:4;:15;;;;;;;;13103:16;13086:33;13078:42;;;;;;13136:16;;-1:-1:-1;;;13136:16:0;;;;13133:73;;;13162:41;13177:6;13185:9;13196:6;13162:14;:41::i;:::-;13155:48;;;;13133:73;13236:5;;13226:6;:15;;:42;;;-1:-1:-1;;;;;;13245:23:0;;;;;;:15;:23;;;;;;;;13226:42;13218:57;;;;-1:-1:-1;;;13218:57:0;;8061:2:1;13218:57:0;;;8043:21:1;8100:1;8080:18;;;8073:29;-1:-1:-1;;;8118:18:1;;;8111:32;8160:18;;13218:57:0;7859:325:1;13218:57:0;-1:-1:-1;;;;;13292:26:0;;;;;;:15;:26;;;;;;;;13291:27;:38;;;;-1:-1:-1;13322:7:0;;-1:-1:-1;;;13322:7:0;;;;13291:38;13288:143;;;13399:9;;-1:-1:-1;;;;;13363:20:0;;;;;;:9;:20;;;;;;:32;;13388:6;13363:24;:32::i;:::-;:45;;13355:64;;;;-1:-1:-1;;;13355:64:0;;8391:2:1;13355:64:0;;;8373:21:1;8430:1;8410:18;;;8403:29;-1:-1:-1;;;8448:18:1;;;8441:36;8494:18;;13355:64:0;8189:329:1;13355:64:0;13460:4;;-1:-1:-1;;;;;13460:4:0;13446:10;:18;;;;:39;;-1:-1:-1;13469:16:0;;-1:-1:-1;;;13469:16:0;;;;13468:17;13446:39;:64;;;;-1:-1:-1;13489:21:0;;-1:-1:-1;;;13489:21:0;;;;13446:64;:109;;;;-1:-1:-1;13542:13:0;;13532:4;13514:24;;;;:9;:24;;;;;;:41;;13446:109;13443:128;;;13558:10;:8;:10::i;:::-;13603:53;;;;;;;;;;;-1:-1:-1;;;13603:53:0;;;;;;;;-1:-1:-1;;;;;13603:17:0;;-1:-1:-1;13603:17:0;;;:9;:17;;;;;;;;:53;;13625:6;;13603:21;:53::i;:::-;-1:-1:-1;;;;;13583:17:0;;;;;;:9;:17;;;;;;;;:73;;;;13700:11;:19;;;;;;;;13699:20;:47;;;;-1:-1:-1;;;;;;13724:22:0;;;;;;:11;:22;;;;;;;;13723:23;13699:47;:93;;13786:6;13699:93;;;13749:34;13757:6;13765:9;13776:6;13749:7;:34::i;:::-;-1:-1:-1;;;;;13826:20:0;;;;;;:9;:20;;;;;;13677:115;;-1:-1:-1;13826:37:0;;13677:115;13826:24;:37::i;:::-;-1:-1:-1;;;;;13803:20:0;;;;;;;:9;:20;;;;;;;:60;;;;13881:40;;;;;;;;;;13909:11;160:25:1;;148:2;133:18;;14:177;13881:40:0;;;;;;;;-1:-1:-1;;;;;;;13932:23:0;;;;;;;:15;:23;;;;;;13958:15;13932:41;;;;13984:26;;;;;;;:44;14046:4;12830:1228;;;;;:::o;1435:136::-;1493:7;1520:43;1524:1;1527;1520:43;;;;;;;;;;;;;;;;;:3;:43::i;16094:758::-;8282:16;:23;;-1:-1:-1;;;;8282:23:0;-1:-1:-1;;;8282:23:0;;;16193:4:::1;8282:23:::0;16175:24;;;:9:::1;:24;::::0;;;;;;;16257:11:::1;::::0;16175:24;;8282:23;16240:45:::1;::::0;:38:::1;::::0;16274:3:::1;::::0;16240:38;;16175:24;;16240:16:::1;:29::i;:::-;:33:::0;::::1;:38::i;:45::-;16211:74:::0;-1:-1:-1;16301:20:0::1;16324:36;:12:::0;16211:74;16324:16:::1;:36::i;:::-;16301:59;;16373:30;16390:12;16373:16;:30::i;:::-;16416:23;16442:21;16416:47;;16474:17;16494:35;16525:3;16494:26;16514:5;;16494:15;:19;;:26;;;;:::i;:35::-;16474:55;;16540:23;16566:48;16612:1;16566:41;16603:3;16566:32;16586:11;;16566:15;:19;;:32;;;;:::i;:48::-;16540:74:::0;-1:-1:-1;16637:19:0;;16633:89:::1;;16680:9;::::0;16672:38:::1;::::0;-1:-1:-1;;;;;16680:9:0;;::::1;::::0;16672:38;::::1;;;::::0;16700:9;;16680::::1;16672:38:::0;16680:9;16672:38;16700:9;16680;16672:38;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;16633:89;16746:22:::0;;16742:103:::1;;16784:49;16797:18;16817:15;16784:12;:49::i;:::-;-1:-1:-1::0;;8328:16:0;:24;;-1:-1:-1;;;;8328:24:0;;;-1:-1:-1;;;;16094:758:0:o;5219:191::-;5293:16;5312:6;;-1:-1:-1;;;;;5329:17:0;;;-1:-1:-1;;;;;;5329:17:0;;;;;;5362:40;;5312:6;;;;;;;5362:40;;5293:16;5362:40;5282:128;5219:191;:::o;2169:345::-;2255:7;2357:12;2350:5;2342:28;;;;-1:-1:-1;;;2342:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2381:9:0;2393:5;2397:1;2393;:5;:::i;14070:330::-;14200:53;;;;;;;;;;;-1:-1:-1;;;14200:53:0;;;;;;;;-1:-1:-1;;;;;14200:17:0;;14163:4;14200:17;;;:9;:17;;;;;;;:53;;14222:6;;14200:21;:53::i;:::-;-1:-1:-1;;;;;14180:17:0;;;;;;;:9;:17;;;;;;:73;;;;14287:20;;;;;;;:32;;14312:6;14287:24;:32::i;:::-;-1:-1:-1;;;;;14264:20:0;;;;;;;:9;:20;;;;;;;:55;;;;14335:35;;;;;;;;;;14363:6;160:25:1;;148:2;133:18;;14:177;14335:35:0;;;;;;;;-1:-1:-1;14388:4:0;14070:330;;;;;:::o;1248:181::-;1306:7;;1338:5;1342:1;1338;:5;:::i;:::-;1326:17;;1367:1;1362;:6;;1354:46;;;;-1:-1:-1;;;1354:46:0;;9080:2:1;1354:46:0;;;9062:21:1;9119:2;9099:18;;;9092:30;9158:29;9138:18;;;9131:57;9205:18;;1354:46:0;8878:351:1;14414:913:0;14545:10;;-1:-1:-1;;;;;14601:23:0;;14500:7;14601:23;;;:15;:23;;;;;;14500:7;;14545:10;14500:7;;14585:39;;:15;:39;:::i;:::-;14566:58;;14654:7;14643:8;:18;:42;;;;;14677:8;14665;:20;;14643:42;14639:358;;;14723:14;;14706:31;;14639:358;;;14787:8;14776;:19;:43;;;;;14811:8;14799;:20;;14776:43;14772:225;;;14857:12;;14840:29;;14772:225;;;14919:8;14908;:19;14904:93;;;14965:16;;14948:33;;14904:93;15033:4;;15009:21;;-1:-1:-1;;;;;15033:17:0;;;:4;;:17;:43;;15070:6;;15033:43;;;15053:14;15033:43;15009:67;-1:-1:-1;15087:17:0;15107:34;15137:3;15107:25;:6;15009:67;15107:10;:25::i;:34::-;15199:4;15181:24;;;;:9;:24;;;;;;15087:54;;-1:-1:-1;15181:39:0;;15087:54;15181:28;:39::i;:::-;15172:4;15154:24;;;;:9;:24;;;;;;;:66;;;;15236:42;;-1:-1:-1;;;;;15236:42:0;;;;;;;15268:9;160:25:1;;148:2;133:18;;14:177;15236:42:0;;;;;;;;15298:21;:6;15309:9;15298:10;:21::i;:::-;15291:28;14414:913;-1:-1:-1;;;;;;;;14414:913:0:o;1775:250::-;1833:7;1857:1;1862;1857:6;1853:47;;-1:-1:-1;1887:1:0;1880:8;;1853:47;1912:9;1924:5;1928:1;1924;:5;:::i;:::-;1912:17;-1:-1:-1;1957:1:0;1948:5;1952:1;1912:17;1948:5;:::i;:::-;:10;1940:56;;;;-1:-1:-1;;;1940:56:0;;9609:2:1;1940:56:0;;;9591:21:1;9648:2;9628:18;;;9621:30;9687:34;9667:18;;;9660:62;-1:-1:-1;;;9738:18:1;;;9731:31;9779:19;;1940:56:0;9407:397:1;15339:460:0;15431:16;;;15445:1;15431:16;;;;;;;;15407:21;;15431:16;;;;;;;;;;-1:-1:-1;15431:16:0;15407:40;;15476:4;15458;15463:1;15458:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;15458:23:0;;;:7;;;;;;;;;;:23;;;;15502:6;;:13;;;-1:-1:-1;;;15502:13:0;;;;:6;;;;;:11;;:13;;;;;15458:7;;15502:13;;;;;:6;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15492:4;15497:1;15492:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;15492:23:0;;;-1:-1:-1;;;;;15492:23:0;;;;;15528:35;15544:4;15551:11;15528:7;:35::i;:::-;-1:-1:-1;15576:6:0;;:215;;-1:-1:-1;;;15576:215:0;;-1:-1:-1;;;;;15576:6:0;;;;:57;;:215;;15648:11;;15576:6;;15718:4;;15745;;15765:15;;15576:215;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15394:405;15339:460;:::o;15807:279::-;15888:6;;16029:8;;15888:190;;-1:-1:-1;;;15888:190:0;;15951:4;15888:190;;;11391:34:1;11441:18;;;11434:34;;;15888:6:0;11484:18:1;;;11477:34;;;11527:18;;;11520:34;-1:-1:-1;;;;;16029:8:0;;;11570:19:1;;;11563:44;16052:15:0;11623:19:1;;;11616:35;15888:6:0;;;:22;;15918:9;;11325:19:1;;15888:190:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;15807:279;;:::o;196:597:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;634:6;631:1;628:13;625:91;;;704:1;699:2;690:6;679:9;675:22;671:31;664:42;625:91;-1:-1:-1;777:2:1;756:15;-1:-1:-1;;752:29:1;737:45;;;;784:2;733:54;;196:597;-1:-1:-1;;;196:597:1:o;798:131::-;-1:-1:-1;;;;;873:31:1;;863:42;;853:70;;919:1;916;909:12;934:134;1002:20;;1031:31;1002:20;1031:31;:::i;:::-;934:134;;;:::o;1073:315::-;1141:6;1149;1202:2;1190:9;1181:7;1177:23;1173:32;1170:52;;;1218:1;1215;1208:12;1170:52;1257:9;1244:23;1276:31;1301:5;1276:31;:::i;:::-;1326:5;1378:2;1363:18;;;;1350:32;;-1:-1:-1;;;1073:315:1:o;1585:247::-;1644:6;1697:2;1685:9;1676:7;1672:23;1668:32;1665:52;;;1713:1;1710;1703:12;1665:52;1752:9;1739:23;1771:31;1796:5;1771:31;:::i;1837:456::-;1914:6;1922;1930;1983:2;1971:9;1962:7;1958:23;1954:32;1951:52;;;1999:1;1996;1989:12;1951:52;2038:9;2025:23;2057:31;2082:5;2057:31;:::i;:::-;2107:5;-1:-1:-1;2164:2:1;2149:18;;2136:32;2177:33;2136:32;2177:33;:::i;:::-;1837:456;;2229:7;;-1:-1:-1;;;2283:2:1;2268:18;;;;2255:32;;1837:456::o;2487:160::-;2552:20;;2608:13;;2601:21;2591:32;;2581:60;;2637:1;2634;2627:12;2652:248;2717:6;2725;2778:2;2766:9;2757:7;2753:23;2749:32;2746:52;;;2794:1;2791;2784:12;2746:52;2817:26;2833:9;2817:26;:::i;2905:454::-;3000:6;3008;3016;3024;3032;3085:3;3073:9;3064:7;3060:23;3056:33;3053:53;;;3102:1;3099;3092:12;3053:53;-1:-1:-1;;3125:23:1;;;3195:2;3180:18;;3167:32;;-1:-1:-1;3246:2:1;3231:18;;3218:32;;3297:2;3282:18;;3269:32;;-1:-1:-1;3348:3:1;3333:19;3320:33;;-1:-1:-1;2905:454:1;-1:-1:-1;2905:454:1:o;3364:180::-;3423:6;3476:2;3464:9;3455:7;3451:23;3447:32;3444:52;;;3492:1;3489;3482:12;3444:52;-1:-1:-1;3515:23:1;;3364:180;-1:-1:-1;3364:180:1:o;3757:315::-;3822:6;3830;3883:2;3871:9;3862:7;3858:23;3854:32;3851:52;;;3899:1;3896;3889:12;3851:52;3938:9;3925:23;3957:31;3982:5;3957:31;:::i;:::-;4007:5;-1:-1:-1;4031:35:1;4062:2;4047:18;;4031:35;:::i;:::-;4021:45;;3757:315;;;;;:::o;4077:127::-;4138:10;4133:3;4129:20;4126:1;4119:31;4169:4;4166:1;4159:15;4193:4;4190:1;4183:15;4209:1121;4293:6;4324:2;4367;4355:9;4346:7;4342:23;4338:32;4335:52;;;4383:1;4380;4373:12;4335:52;4423:9;4410:23;4452:18;4493:2;4485:6;4482:14;4479:34;;;4509:1;4506;4499:12;4479:34;4547:6;4536:9;4532:22;4522:32;;4592:7;4585:4;4581:2;4577:13;4573:27;4563:55;;4614:1;4611;4604:12;4563:55;4650:2;4637:16;4672:2;4668;4665:10;4662:36;;;4678:18;;:::i;:::-;4724:2;4721:1;4717:10;4756:2;4750:9;4819:2;4815:7;4810:2;4806;4802:11;4798:25;4790:6;4786:38;4874:6;4862:10;4859:22;4854:2;4842:10;4839:18;4836:46;4833:72;;;4885:18;;:::i;:::-;4921:2;4914:22;4971:18;;;5005:15;;;;-1:-1:-1;5047:11:1;;;5043:20;;;5075:19;;;5072:39;;;5107:1;5104;5097:12;5072:39;5131:11;;;;5151:148;5167:6;5162:3;5159:15;5151:148;;;5233:23;5252:3;5233:23;:::i;:::-;5221:36;;5184:12;;;;5277;;;;5151:148;;5335:248;5403:6;5411;5464:2;5452:9;5443:7;5439:23;5435:32;5432:52;;;5480:1;5477;5470:12;5432:52;-1:-1:-1;;5503:23:1;;;5573:2;5558:18;;;5545:32;;-1:-1:-1;5335:248:1:o;5588:388::-;5656:6;5664;5717:2;5705:9;5696:7;5692:23;5688:32;5685:52;;;5733:1;5730;5723:12;5685:52;5772:9;5759:23;5791:31;5816:5;5791:31;:::i;:::-;5841:5;-1:-1:-1;5898:2:1;5883:18;;5870:32;5911:33;5870:32;5911:33;:::i;:::-;5963:7;5953:17;;;5588:388;;;;;:::o;6207:356::-;6409:2;6391:21;;;6428:18;;;6421:30;6487:34;6482:2;6467:18;;6460:62;6554:2;6539:18;;6207:356::o;6568:127::-;6629:10;6624:3;6620:20;6617:1;6610:31;6660:4;6657:1;6650:15;6684:4;6681:1;6674:15;6700:127;6761:10;6756:3;6752:20;6749:1;6742:31;6792:4;6789:1;6782:15;6816:4;6813:1;6806:15;6832:135;6871:3;6892:17;;;6889:43;;6912:18;;:::i;:::-;-1:-1:-1;6959:1:1;6948:13;;6832:135::o;7379:125::-;7419:4;7447:1;7444;7441:8;7438:34;;;7452:18;;:::i;:::-;-1:-1:-1;7489:9:1;;7379:125::o;8523:217::-;8563:1;8589;8579:132;;8633:10;8628:3;8624:20;8621:1;8614:31;8668:4;8665:1;8658:15;8696:4;8693:1;8686:15;8579:132;-1:-1:-1;8725:9:1;;8523:217::o;8745:128::-;8785:3;8816:1;8812:6;8809:1;8806:13;8803:39;;;8822:18;;:::i;:::-;-1:-1:-1;8858:9:1;;8745:128::o;9234:168::-;9274:7;9340:1;9336;9332:6;9328:14;9325:1;9322:21;9317:1;9310:9;9303:17;9299:45;9296:71;;;9347:18;;:::i;:::-;-1:-1:-1;9387:9:1;;9234:168::o;9809:251::-;9879:6;9932:2;9920:9;9911:7;9907:23;9903:32;9900:52;;;9948:1;9945;9938:12;9900:52;9980:9;9974:16;9999:31;10024:5;9999:31;:::i;10065:980::-;10327:4;10375:3;10364:9;10360:19;10406:6;10395:9;10388:25;10432:2;10470:6;10465:2;10454:9;10450:18;10443:34;10513:3;10508:2;10497:9;10493:18;10486:31;10537:6;10572;10566:13;10603:6;10595;10588:22;10641:3;10630:9;10626:19;10619:26;;10680:2;10672:6;10668:15;10654:29;;10701:1;10711:195;10725:6;10722:1;10719:13;10711:195;;;10790:13;;-1:-1:-1;;;;;10786:39:1;10774:52;;10881:15;;;;10846:12;;;;10822:1;10740:9;10711:195;;;-1:-1:-1;;;;;;;10962:32:1;;;;10957:2;10942:18;;10935:60;-1:-1:-1;;;11026:3:1;11011:19;11004:35;10923:3;10065:980;-1:-1:-1;;;10065:980:1:o;11662:306::-;11750:6;11758;11766;11819:2;11807:9;11798:7;11794:23;11790:32;11787:52;;;11835:1;11832;11825:12;11787:52;11864:9;11858:16;11848:26;;11914:2;11903:9;11899:18;11893:25;11883:35;;11958:2;11947:9;11943:18;11937:25;11927:35;;11662:306;;;;;:::o

Swarm Source

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