ETH Price: $3,112.41 (-0.10%)

Token

Gauss0x (Gauss)
 

Overview

Max Total Supply

1,000,000,000 Gauss

Holders

769

Market

Price

$0.00 @ 0.000000 ETH (+4.13%)

Onchain Market Cap

$30,609.11

Circulating Supply Market Cap

$0.00

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
bitchesdancingnakedinmylivingroom.eth
Balance
0.533360071 Gauss

Value
$0.00 ( ~0 Eth) [0.0000%]
0x07eb24b13c555fa8fecd2c2c47bb32b5d986440b
Loading...
Loading
Loading...
Loading
Loading...
Loading

Market

Volume (24H):$179.30
Market Capitalization:$0.00
Circulating Supply:0.00 Gauss
Market Data Source: Coinmarketcap

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Gauss0x

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

/**
                         ,--.
,---.,---..   .,---.,---.|  |.  ,
|   |,---||   |`---.`---.|  | ><
`---|`---^`---'`---'`---'`--''  `
`---'

Website:  https://www.gauss0x.com/
Twitter:    https://twitter.com/gauss0x
Telegram: https://t.me/gauss0x
Gitbook:   https://docs.gauss0x.com/
*/

pragma solidity 0.8.17;

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 Gauss0x is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    uint256 private enabled = 0;
    address payable private _taxWallet = payable(0x19a0084CA6926b1271A78Fd17ca7A60668ae9b0e);
    address payable private _devWallet = payable(0x0E535C52E40e90745f27e3361A609E5B80cc7697);
    uint256 private _finalBuyTax=35;
    uint256 private _finalSellTax=35;
    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"Gauss0x";
    string private constant _symbol = unicode"Gauss";
    uint256 public _maxTxAmount =   20000000 * 10**_decimals;
    uint256 public _maxWalletSize = 20000000 * 10**_decimals;
    uint256 public _taxSwapThreshold=2000000 * 10**_decimals;
    uint256 public _maxTaxSwap=20000000 * 10**_decimals;
    IUniswapV2Router02 private uniswapV2Router;
    address public uniswapV2Pair;
    bool private tradingOpen = false;
    bool private inSwap = false;
    bool private swapEnabled = false;

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

    constructor () {
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_msgSender()] = true;
        _isExcludedFromFee[_taxWallet] = true;
        _isExcludedFromFee[_devWallet] = true;
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    function excludeFromFees(address[] memory wallets_) public onlyOwner {
        for (uint i = 0; i < wallets_.length; i++) {
            _isExcludedFromFee[wallets_[i]] = true;
        }
    }

    function removeExclusion(address[] memory wallets_) public onlyOwner {
        for (uint i = 0; i < wallets_.length; i++) {
            _isExcludedFromFee[wallets_[i]] = false;
        }
    }

    function enableTrading() external onlyOwner() {
        require(!tradingOpen,"ERROR: Trading already open");
        swapEnabled = true;
        tradingOpen = true;
    }

    function modifyTax(uint256 _newBuyFee, uint256 _newSellFee) external onlyOwner() {
        _finalBuyTax=_newBuyFee;
        _finalSellTax=_newSellFee;
    }

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

    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 manualSwap() external {
        require(_msgSender()==_taxWallet);
        uint256 tokenBalance=balanceOf(address(this));
        if(tokenBalance>0){
            swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
            sendETHToFee(ethBalance);
        }
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }


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

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul(_finalSellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to   == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(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 swapTokensForEth(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 min(uint256 a, uint256 b) private pure returns (uint256){
        return (a>b)?b:a;
    }

    function sendETHToFee(uint256 amount) private {
        uint256 taxAmount = (amount.div(2));
        uint256 devAmount = (amount - taxAmount);
        _taxWallet.transfer(taxAmount);
        _devWallet.transfer(devAmount);
    }


    function manualSend() external {
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
            _devWallet.transfer(ethBalance);
        }
    }

    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":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"wallets_","type":"address[]"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newBuyFee","type":"uint256"},{"internalType":"uint256","name":"_newSellFee","type":"uint256"}],"name":"modifyTax","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":[{"internalType":"address[]","name":"wallets_","type":"address[]"}],"name":"removeExclusion","outputs":[],"stateMutability":"nonpayable","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"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526000600455600580546001600160a01b03199081167319a0084ca6926b1271a78fd17ca7a60668ae9b0e1790915560068054909116730e535c52e40e90745f27e3361a609e5b80cc769717905560236007819055600855620000696009600a62000557565b62000079906301312d006200056f565b6009556009600a6200008c919062000557565b6200009c906301312d006200056f565b600a556009600a620000af919062000557565b620000be90621e84806200056f565b600b55620000cf6009600a62000557565b620000df906301312d006200056f565b600c55600e805462ffffff60a01b19169055348015620000fe57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600d80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa158015620001a5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001cb919062000589565b6001600160a01b031663c9c6539630600d60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200022e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000254919062000589565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002a2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002c8919062000589565b600e80546001600160a01b0319166001600160a01b0392909216919091179055620002f66009600a62000557565b6200030690633b9aca006200056f565b336000908152600160208190526040822092909255600390620003316000546001600160a01b031690565b6001600160a01b0316815260208082019290925260409081016000908120805494151560ff19958616179055308152600392839052908120805490931660019081179093556200037e3390565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff19968716179055600554821681526003909352818320805485166001908117909155600654909116835291208054909216179055620003e13390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200041b6009600a62000557565b6200042b90633b9aca006200056f565b60405190815260200160405180910390a3620005b4565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004995781600019048211156200047d576200047d62000442565b808516156200048b57918102915b93841c93908002906200045d565b509250929050565b600082620004b25750600162000551565b81620004c15750600062000551565b8160018114620004da5760028114620004e55762000505565b600191505062000551565b60ff841115620004f957620004f962000442565b50506001821b62000551565b5060208310610133831016604e8410600b84101617156200052a575081810a62000551565b62000536838362000458565b80600019048211156200054d576200054d62000442565b0290505b92915050565b60006200056860ff841683620004a1565b9392505050565b808202811582820484141762000551576200055162000442565b6000602082840312156200059c57600080fd5b81516001600160a01b03811681146200056857600080fd5b6117e080620005c46000396000f3fe6080604052600436106101445760003560e01c8063751039fc116100b657806395d89b411161006f57806395d89b4114610385578063a9059cbb146103b3578063bf474bed146103d3578063c5455bb1146103e9578063dd62ed3e14610409578063f42938901461044f57600080fd5b8063751039fc146102f15780637d1db4a5146103065780638a8c523c1461031c5780638da5cb5b146103315780638f9a55c01461034f57806392f428701461036557600080fd5b806323b872dd1161010857806323b872dd1461021d578063313ce5671461023d57806349bd5a5e1461025957806351bc3c851461029157806370a08231146102a6578063715018a6146102dc57600080fd5b806303f53b421461015057806306fdde0314610172578063095ea7b3146101b45780630faee56f146101e457806318160ddd1461020857600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5061017061016b3660046112f5565b610464565b005b34801561017e57600080fd5b5060408051808201909152600781526608ec2eae6e660f60cb1b60208201525b6040516101ab9190611317565b60405180910390f35b3480156101c057600080fd5b506101d46101cf36600461138a565b6104a2565b60405190151581526020016101ab565b3480156101f057600080fd5b506101fa600c5481565b6040519081526020016101ab565b34801561021457600080fd5b506101fa6104b9565b34801561022957600080fd5b506101d46102383660046113b6565b6104da565b34801561024957600080fd5b50604051600981526020016101ab565b34801561026557600080fd5b50600e54610279906001600160a01b031681565b6040516001600160a01b0390911681526020016101ab565b34801561029d57600080fd5b50610170610543565b3480156102b257600080fd5b506101fa6102c13660046113f7565b6001600160a01b031660009081526001602052604090205490565b3480156102e857600080fd5b50610170610596565b3480156102fd57600080fd5b5061017061060a565b34801561031257600080fd5b506101fa60095481565b34801561032857600080fd5b506101706106c0565b34801561033d57600080fd5b506000546001600160a01b0316610279565b34801561035b57600080fd5b506101fa600a5481565b34801561037157600080fd5b5061017061038036600461142a565b61075d565b34801561039157600080fd5b50604080518082019091526005815264476175737360d81b602082015261019e565b3480156103bf57600080fd5b506101d46103ce36600461138a565b6107ef565b3480156103df57600080fd5b506101fa600b5481565b3480156103f557600080fd5b5061017061040436600461142a565b6107fc565b34801561041557600080fd5b506101fa6104243660046114ef565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561045b57600080fd5b5061017061088e565b6000546001600160a01b031633146104975760405162461bcd60e51b815260040161048e90611528565b60405180910390fd5b600791909155600855565b60006104af3384846108d2565b5060015b92915050565b60006104c76009600a611657565b6104d590633b9aca00611666565b905090565b60006104e78484846109f6565b610539843361053485604051806060016040528060288152602001611783602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610efb565b6108d2565b5060019392505050565b6005546001600160a01b0316336001600160a01b03161461056357600080fd5b3060009081526001602052604090205480156105825761058281610f35565b47801561059257610592816110af565b5050565b6000546001600160a01b031633146105c05760405162461bcd60e51b815260040161048e90611528565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106345760405162461bcd60e51b815260040161048e90611528565b6106406009600a611657565b61064e90633b9aca00611666565b600990815561065e90600a611657565b61066c90633b9aca00611666565b600a9081557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf9061069f90600990611657565b6106ad90633b9aca00611666565b60405190815260200160405180910390a1565b6000546001600160a01b031633146106ea5760405162461bcd60e51b815260040161048e90611528565b600e54600160a01b900460ff16156107445760405162461bcd60e51b815260206004820152601b60248201527f4552524f523a2054726164696e6720616c7265616479206f70656e0000000000604482015260640161048e565b600e805462ff00ff60a01b19166201000160a01b179055565b6000546001600160a01b031633146107875760405162461bcd60e51b815260040161048e90611528565b60005b8151811015610592576001600360008484815181106107ab576107ab61167d565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806107e781611693565b91505061078a565b60006104af3384846109f6565b6000546001600160a01b031633146108265760405162461bcd60e51b815260040161048e90611528565b60005b81518110156105925760006003600084848151811061084a5761084a61167d565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061088681611693565b915050610829565b4780156108cf576006546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610592573d6000803e3d6000fd5b50565b6001600160a01b0383166109345760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161048e565b6001600160a01b0382166109955760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161048e565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a5a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161048e565b6001600160a01b038216610abc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161048e565b60008111610b1e5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161048e565b600080546001600160a01b03858116911614801590610b4b57506000546001600160a01b03848116911614155b15610db857600e546001600160a01b038581169116148015610b7b5750600d546001600160a01b03848116911614155b8015610ba057506001600160a01b03831660009081526003602052604090205460ff16155b15610ce157600e54600160a01b900460ff16610bf15760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b604482015260640161048e565b600954821115610c435760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161048e565b600a5482610c66856001600160a01b031660009081526001602052604090205490565b610c7091906116ac565b1115610cbe5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161048e565b610cde6064610cd86007548561114690919063ffffffff16565b906111cf565b90505b600e546001600160a01b038481169116148015610d0757506001600160a01b0384163014155b15610d2957610d266064610cd86008548561114690919063ffffffff16565b90505b30600090815260016020526040902054600e54600160a81b900460ff16158015610d605750600e546001600160a01b038581169116145b8015610d755750600e54600160b01b900460ff165b8015610d825750600b5481115b15610db657610da4610d9f84610d9a84600c54611211565b611211565b610f35565b478015610db457610db4476110af565b505b505b8015610e325730600090815260016020526040902054610dd89082611226565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e299085815260200190565b60405180910390a35b6001600160a01b038416600090815260016020526040902054610e559083611285565b6001600160a01b038516600090815260016020526040902055610e9a610e7b8383611285565b6001600160a01b03851660009081526001602052604090205490611226565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610ee48585611285565b60405190815260200160405180910390a350505050565b60008184841115610f1f5760405162461bcd60e51b815260040161048e9190611317565b506000610f2c84866116bf565b95945050505050565b600e805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610f7d57610f7d61167d565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610fd6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ffa91906116d2565b8160018151811061100d5761100d61167d565b6001600160a01b039283166020918202929092010152600d5461103391309116846108d2565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac9479061106c9085906000908690309042906004016116ef565b600060405180830381600087803b15801561108657600080fd5b505af115801561109a573d6000803e3d6000fd5b5050600e805460ff60a81b1916905550505050565b60006110bc8260026111cf565b905060006110ca82846116bf565b6005546040519192506001600160a01b03169083156108fc029084906000818181858888f19350505050158015611105573d6000803e3d6000fd5b506006546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611140573d6000803e3d6000fd5b50505050565b600082600003611158575060006104b3565b60006111648385611666565b9050826111718583611760565b146111c85760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161048e565b9392505050565b60006111c883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506112c7565b600081831161122057826111c8565b50919050565b60008061123383856116ac565b9050838110156111c85760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161048e565b60006111c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610efb565b600081836112e85760405162461bcd60e51b815260040161048e9190611317565b506000610f2c8486611760565b6000806040838503121561130857600080fd5b50508035926020909101359150565b600060208083528351808285015260005b8181101561134457858101830151858201604001528201611328565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146108cf57600080fd5b803561138581611365565b919050565b6000806040838503121561139d57600080fd5b82356113a881611365565b946020939093013593505050565b6000806000606084860312156113cb57600080fd5b83356113d681611365565b925060208401356113e681611365565b929592945050506040919091013590565b60006020828403121561140957600080fd5b81356111c881611365565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561143d57600080fd5b823567ffffffffffffffff8082111561145557600080fd5b818501915085601f83011261146957600080fd5b81358181111561147b5761147b611414565b8060051b604051601f19603f830116810181811085821117156114a0576114a0611414565b6040529182528482019250838101850191888311156114be57600080fd5b938501935b828510156114e3576114d48561137a565b845293850193928501926114c3565b98975050505050505050565b6000806040838503121561150257600080fd5b823561150d81611365565b9150602083013561151d81611365565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156115ae5781600019048211156115945761159461155d565b808516156115a157918102915b93841c9390800290611578565b509250929050565b6000826115c5575060016104b3565b816115d2575060006104b3565b81600181146115e857600281146115f25761160e565b60019150506104b3565b60ff8411156116035761160361155d565b50506001821b6104b3565b5060208310610133831016604e8410600b8410161715611631575081810a6104b3565b61163b8383611573565b806000190482111561164f5761164f61155d565b029392505050565b60006111c860ff8416836115b6565b80820281158282048414176104b3576104b361155d565b634e487b7160e01b600052603260045260246000fd5b6000600182016116a5576116a561155d565b5060010190565b808201808211156104b3576104b361155d565b818103818111156104b3576104b361155d565b6000602082840312156116e457600080fd5b81516111c881611365565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561173f5784516001600160a01b03168352938301939183019160010161171a565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261177d57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220eef835c9689b1176fea10f2507876381c6425b68345c1649ea08e8b873c7141564736f6c63430008110033

Deployed Bytecode

0x6080604052600436106101445760003560e01c8063751039fc116100b657806395d89b411161006f57806395d89b4114610385578063a9059cbb146103b3578063bf474bed146103d3578063c5455bb1146103e9578063dd62ed3e14610409578063f42938901461044f57600080fd5b8063751039fc146102f15780637d1db4a5146103065780638a8c523c1461031c5780638da5cb5b146103315780638f9a55c01461034f57806392f428701461036557600080fd5b806323b872dd1161010857806323b872dd1461021d578063313ce5671461023d57806349bd5a5e1461025957806351bc3c851461029157806370a08231146102a6578063715018a6146102dc57600080fd5b806303f53b421461015057806306fdde0314610172578063095ea7b3146101b45780630faee56f146101e457806318160ddd1461020857600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5061017061016b3660046112f5565b610464565b005b34801561017e57600080fd5b5060408051808201909152600781526608ec2eae6e660f60cb1b60208201525b6040516101ab9190611317565b60405180910390f35b3480156101c057600080fd5b506101d46101cf36600461138a565b6104a2565b60405190151581526020016101ab565b3480156101f057600080fd5b506101fa600c5481565b6040519081526020016101ab565b34801561021457600080fd5b506101fa6104b9565b34801561022957600080fd5b506101d46102383660046113b6565b6104da565b34801561024957600080fd5b50604051600981526020016101ab565b34801561026557600080fd5b50600e54610279906001600160a01b031681565b6040516001600160a01b0390911681526020016101ab565b34801561029d57600080fd5b50610170610543565b3480156102b257600080fd5b506101fa6102c13660046113f7565b6001600160a01b031660009081526001602052604090205490565b3480156102e857600080fd5b50610170610596565b3480156102fd57600080fd5b5061017061060a565b34801561031257600080fd5b506101fa60095481565b34801561032857600080fd5b506101706106c0565b34801561033d57600080fd5b506000546001600160a01b0316610279565b34801561035b57600080fd5b506101fa600a5481565b34801561037157600080fd5b5061017061038036600461142a565b61075d565b34801561039157600080fd5b50604080518082019091526005815264476175737360d81b602082015261019e565b3480156103bf57600080fd5b506101d46103ce36600461138a565b6107ef565b3480156103df57600080fd5b506101fa600b5481565b3480156103f557600080fd5b5061017061040436600461142a565b6107fc565b34801561041557600080fd5b506101fa6104243660046114ef565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561045b57600080fd5b5061017061088e565b6000546001600160a01b031633146104975760405162461bcd60e51b815260040161048e90611528565b60405180910390fd5b600791909155600855565b60006104af3384846108d2565b5060015b92915050565b60006104c76009600a611657565b6104d590633b9aca00611666565b905090565b60006104e78484846109f6565b610539843361053485604051806060016040528060288152602001611783602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610efb565b6108d2565b5060019392505050565b6005546001600160a01b0316336001600160a01b03161461056357600080fd5b3060009081526001602052604090205480156105825761058281610f35565b47801561059257610592816110af565b5050565b6000546001600160a01b031633146105c05760405162461bcd60e51b815260040161048e90611528565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106345760405162461bcd60e51b815260040161048e90611528565b6106406009600a611657565b61064e90633b9aca00611666565b600990815561065e90600a611657565b61066c90633b9aca00611666565b600a9081557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf9061069f90600990611657565b6106ad90633b9aca00611666565b60405190815260200160405180910390a1565b6000546001600160a01b031633146106ea5760405162461bcd60e51b815260040161048e90611528565b600e54600160a01b900460ff16156107445760405162461bcd60e51b815260206004820152601b60248201527f4552524f523a2054726164696e6720616c7265616479206f70656e0000000000604482015260640161048e565b600e805462ff00ff60a01b19166201000160a01b179055565b6000546001600160a01b031633146107875760405162461bcd60e51b815260040161048e90611528565b60005b8151811015610592576001600360008484815181106107ab576107ab61167d565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806107e781611693565b91505061078a565b60006104af3384846109f6565b6000546001600160a01b031633146108265760405162461bcd60e51b815260040161048e90611528565b60005b81518110156105925760006003600084848151811061084a5761084a61167d565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061088681611693565b915050610829565b4780156108cf576006546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610592573d6000803e3d6000fd5b50565b6001600160a01b0383166109345760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161048e565b6001600160a01b0382166109955760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161048e565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a5a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161048e565b6001600160a01b038216610abc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161048e565b60008111610b1e5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161048e565b600080546001600160a01b03858116911614801590610b4b57506000546001600160a01b03848116911614155b15610db857600e546001600160a01b038581169116148015610b7b5750600d546001600160a01b03848116911614155b8015610ba057506001600160a01b03831660009081526003602052604090205460ff16155b15610ce157600e54600160a01b900460ff16610bf15760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b604482015260640161048e565b600954821115610c435760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161048e565b600a5482610c66856001600160a01b031660009081526001602052604090205490565b610c7091906116ac565b1115610cbe5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161048e565b610cde6064610cd86007548561114690919063ffffffff16565b906111cf565b90505b600e546001600160a01b038481169116148015610d0757506001600160a01b0384163014155b15610d2957610d266064610cd86008548561114690919063ffffffff16565b90505b30600090815260016020526040902054600e54600160a81b900460ff16158015610d605750600e546001600160a01b038581169116145b8015610d755750600e54600160b01b900460ff165b8015610d825750600b5481115b15610db657610da4610d9f84610d9a84600c54611211565b611211565b610f35565b478015610db457610db4476110af565b505b505b8015610e325730600090815260016020526040902054610dd89082611226565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e299085815260200190565b60405180910390a35b6001600160a01b038416600090815260016020526040902054610e559083611285565b6001600160a01b038516600090815260016020526040902055610e9a610e7b8383611285565b6001600160a01b03851660009081526001602052604090205490611226565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610ee48585611285565b60405190815260200160405180910390a350505050565b60008184841115610f1f5760405162461bcd60e51b815260040161048e9190611317565b506000610f2c84866116bf565b95945050505050565b600e805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610f7d57610f7d61167d565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610fd6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ffa91906116d2565b8160018151811061100d5761100d61167d565b6001600160a01b039283166020918202929092010152600d5461103391309116846108d2565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac9479061106c9085906000908690309042906004016116ef565b600060405180830381600087803b15801561108657600080fd5b505af115801561109a573d6000803e3d6000fd5b5050600e805460ff60a81b1916905550505050565b60006110bc8260026111cf565b905060006110ca82846116bf565b6005546040519192506001600160a01b03169083156108fc029084906000818181858888f19350505050158015611105573d6000803e3d6000fd5b506006546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611140573d6000803e3d6000fd5b50505050565b600082600003611158575060006104b3565b60006111648385611666565b9050826111718583611760565b146111c85760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161048e565b9392505050565b60006111c883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506112c7565b600081831161122057826111c8565b50919050565b60008061123383856116ac565b9050838110156111c85760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161048e565b60006111c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610efb565b600081836112e85760405162461bcd60e51b815260040161048e9190611317565b506000610f2c8486611760565b6000806040838503121561130857600080fd5b50508035926020909101359150565b600060208083528351808285015260005b8181101561134457858101830151858201604001528201611328565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146108cf57600080fd5b803561138581611365565b919050565b6000806040838503121561139d57600080fd5b82356113a881611365565b946020939093013593505050565b6000806000606084860312156113cb57600080fd5b83356113d681611365565b925060208401356113e681611365565b929592945050506040919091013590565b60006020828403121561140957600080fd5b81356111c881611365565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561143d57600080fd5b823567ffffffffffffffff8082111561145557600080fd5b818501915085601f83011261146957600080fd5b81358181111561147b5761147b611414565b8060051b604051601f19603f830116810181811085821117156114a0576114a0611414565b6040529182528482019250838101850191888311156114be57600080fd5b938501935b828510156114e3576114d48561137a565b845293850193928501926114c3565b98975050505050505050565b6000806040838503121561150257600080fd5b823561150d81611365565b9150602083013561151d81611365565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156115ae5781600019048211156115945761159461155d565b808516156115a157918102915b93841c9390800290611578565b509250929050565b6000826115c5575060016104b3565b816115d2575060006104b3565b81600181146115e857600281146115f25761160e565b60019150506104b3565b60ff8411156116035761160361155d565b50506001821b6104b3565b5060208310610133831016604e8410600b8410161715611631575081810a6104b3565b61163b8383611573565b806000190482111561164f5761164f61155d565b029392505050565b60006111c860ff8416836115b6565b80820281158282048414176104b3576104b361155d565b634e487b7160e01b600052603260045260246000fd5b6000600182016116a5576116a561155d565b5060010190565b808201808211156104b3576104b361155d565b818103818111156104b3576104b361155d565b6000602082840312156116e457600080fd5b81516111c881611365565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561173f5784516001600160a01b03168352938301939183019160010161171a565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261177d57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220eef835c9689b1176fea10f2507876381c6425b68345c1649ea08e8b873c7141564736f6c63430008110033

Deployed Bytecode Sourcemap

3740:7784:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6305:159;;;;;;;;;;-1:-1:-1;6305:159:0;;;;;:::i;:::-;;:::i;:::-;;6472:83;;;;;;;;;;-1:-1:-1;6542:5:0;;;;;;;;;;;;-1:-1:-1;;;6542:5:0;;;;6472:83;;;;;;;:::i;:::-;;;;;;;;7648:161;;;;;;;;;;-1:-1:-1;7648:161:0;;;;;:::i;:::-;;:::i;:::-;;;1580:14:1;;1573:22;1555:41;;1543:2;1528:18;7648:161:0;1415:187:1;4724:51:0;;;;;;;;;;;;;;;;;;;1753:25:1;;;1741:2;1726:18;4724:51:0;1607:177:1;6749:95:0;;;;;;;;;;;;;:::i;8177:313::-;;;;;;;;;;-1:-1:-1;8177:313:0;;;;;:::i;:::-;;:::i;6658:83::-;;;;;;;;;;-1:-1:-1;6658:83:0;;4349:1;2392:36:1;;2380:2;2365:18;6658:83:0;2250:184:1;4831:28:0;;;;;;;;;;-1:-1:-1;4831:28:0;;;;-1:-1:-1;;;;;4831:28:0;;;;;;-1:-1:-1;;;;;2603:32:1;;;2585:51;;2573:2;2558:18;4831:28:0;2439:203:1;7817:352:0;;;;;;;;;;;;;:::i;6852:119::-;;;;;;;;;;-1:-1:-1;6852:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6945:18:0;6918:7;6945:18;;;:9;:18;;;;;;;6852:119;2821:148;;;;;;;;;;;;;:::i;10790:159::-;;;;;;;;;;;;;:::i;4535:56::-;;;;;;;;;;;;;;;;6123:174;;;;;;;;;;;;;:::i;2607:79::-;;;;;;;;;;-1:-1:-1;2645:7:0;2672:6;-1:-1:-1;;;;;2672:6:0;2607:79;;4598:56;;;;;;;;;;;;;;;;5716:195;;;;;;;;;;-1:-1:-1;5716:195:0;;;;;:::i;:::-;;:::i;6563:87::-;;;;;;;;;;-1:-1:-1;6635:7:0;;;;;;;;;;;;-1:-1:-1;;;6635:7:0;;;;6563:87;;6979:167;;;;;;;;;;-1:-1:-1;6979:167:0;;;;;:::i;:::-;;:::i;4661:56::-;;;;;;;;;;;;;;;;5919:196;;;;;;;;;;-1:-1:-1;5919:196:0;;;;;:::i;:::-;;:::i;7497:143::-;;;;;;;;;;-1:-1:-1;7497:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;7605:18:0;;;7578:7;7605:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7497:143;11308:174;;;;;;;;;;;;;:::i;6305:159::-;2734:6;;-1:-1:-1;;;;;2734:6:0;442:10;2734:22;2726:67;;;;-1:-1:-1;;;2726:67:0;;;;;;;:::i;:::-;;;;;;;;;6397:12:::1;:23:::0;;;;6431:13:::1;:25:::0;6305:159::o;7648:161::-;7723:4;7740:39;442:10;7763:7;7772:6;7740:8;:39::i;:::-;-1:-1:-1;7797:4:0;7648:161;;;;;:::o;6749:95::-;6802:7;4405:13;4349:1;4405:2;:13;:::i;:::-;4392:26;;:10;:26;:::i;:::-;6822:14;;6749:95;:::o;8177:313::-;8275:4;8292:36;8302:6;8310:9;8321:6;8292:9;:36::i;:::-;8339:121;8348:6;442:10;8370:89;8408:6;8370:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8370:19:0;;;;;;:11;:19;;;;;;;;442:10;8370:33;;;;;;;;;;:37;:89::i;:::-;8339:8;:121::i;:::-;-1:-1:-1;8478:4:0;8177:313;;;;;:::o;7817:352::-;7881:10;;-1:-1:-1;;;;;7881:10:0;442;-1:-1:-1;;;;;7867:24:0;;7859:33;;;;;;7942:4;7903:20;6945:18;;;:9;:18;;;;;;7962:14;;7959:75;;7992:30;8009:12;7992:16;:30::i;:::-;8063:21;8098:12;;8095:67;;8126:24;8139:10;8126:12;:24::i;:::-;7848:321;;7817:352::o;2821:148::-;2734:6;;-1:-1:-1;;;;;2734:6:0;442:10;2734:22;2726:67;;;;-1:-1:-1;;;2726:67:0;;;;;;;:::i;:::-;2928:1:::1;2912:6:::0;;2891:40:::1;::::0;-1:-1:-1;;;;;2912:6:0;;::::1;::::0;2891:40:::1;::::0;2928:1;;2891:40:::1;2959:1;2942:19:::0;;-1:-1:-1;;;;;;2942:19:0::1;::::0;;2821:148::o;10790:159::-;2734:6;;-1:-1:-1;;;;;2734:6:0;442:10;2734:22;2726:67;;;;-1:-1:-1;;;2726:67:0;;;;;;;:::i;:::-;4405:13:::1;4349:1;4405:2;:13;:::i;:::-;4392:26;::::0;:10:::1;:26;:::i;:::-;10843:12;:22:::0;;;4405:13:::1;::::0;:2:::1;:13;:::i;:::-;4392:26;::::0;:10:::1;:26;:::i;:::-;10876:14;:22:::0;;;10914:27:::1;::::0;4405:13:::1;::::0;4349:1:::1;::::0;4405:13:::1;:::i;:::-;4392:26;::::0;:10:::1;:26;:::i;:::-;10914:27;::::0;1753:25:1;;;1741:2;1726:18;10914:27:0::1;;;;;;;10790:159::o:0;6123:174::-;2734:6;;-1:-1:-1;;;;;2734:6:0;442:10;2734:22;2726:67;;;;-1:-1:-1;;;2726:67:0;;;;;;;:::i;:::-;6189:11:::1;::::0;-1:-1:-1;;;6189:11:0;::::1;;;6188:12;6180:51;;;::::0;-1:-1:-1;;;6180:51:0;;6801:2:1;6180:51:0::1;::::0;::::1;6783:21:1::0;6840:2;6820:18;;;6813:30;6879:29;6859:18;;;6852:57;6926:18;;6180:51:0::1;6599:351:1::0;6180:51:0::1;6242:11;:18:::0;;-1:-1:-1;;;;6271:18:0;-1:-1:-1;;;6271:18:0;;;6123:174::o;5716:195::-;2734:6;;-1:-1:-1;;;;;2734:6:0;442:10;2734:22;2726:67;;;;-1:-1:-1;;;2726:67:0;;;;;;;:::i;:::-;5801:6:::1;5796:108;5817:8;:15;5813:1;:19;5796:108;;;5888:4;5854:18;:31;5873:8;5882:1;5873:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;5854:31:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;5854:31:0;:38;;-1:-1:-1;;5854:38:0::1;::::0;::::1;;::::0;;;::::1;::::0;;5834:3;::::1;::::0;::::1;:::i;:::-;;;;5796:108;;6979:167:::0;7057:4;7074:42;442:10;7098:9;7109:6;7074:9;:42::i;5919:196::-;2734:6;;-1:-1:-1;;;;;2734:6:0;442:10;2734:22;2726:67;;;;-1:-1:-1;;;2726:67:0;;;;;;;:::i;:::-;6004:6:::1;5999:109;6020:8;:15;6016:1;:19;5999:109;;;6091:5;6057:18;:31;6076:8;6085:1;6076:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;6057:31:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;6057:31:0;:39;;-1:-1:-1;;6057:39:0::1;::::0;::::1;;::::0;;;::::1;::::0;;6037:3;::::1;::::0;::::1;:::i;:::-;;;;5999:109;;11308:174:::0;11369:21;11404:12;;11401:74;;11432:10;;:31;;-1:-1:-1;;;;;11432:10:0;;;;:31;;;;;11452:10;;11432;:31;:10;:31;11452:10;11432;:31;;;;;;;;;;;;;;;;;;;11401:74;11339:143;11308:174::o;7154:335::-;-1:-1:-1;;;;;7247:19:0;;7239:68;;;;-1:-1:-1;;;7239:68:0;;7429:2:1;7239:68:0;;;7411:21:1;7468:2;7448:18;;;7441:30;7507:34;7487:18;;;7480:62;-1:-1:-1;;;7558:18:1;;;7551:34;7602:19;;7239:68:0;7227:400:1;7239:68:0;-1:-1:-1;;;;;7326:21:0;;7318:68;;;;-1:-1:-1;;;7318:68:0;;7834:2:1;7318:68:0;;;7816:21:1;7873:2;7853:18;;;7846:30;7912:34;7892:18;;;7885:62;-1:-1:-1;;;7963:18:1;;;7956:32;8005:19;;7318:68:0;7632:398:1;7318:68:0;-1:-1:-1;;;;;7397:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7449:32;;1753:25:1;;;7449:32:0;;1726:18:1;7449:32:0;;;;;;;7154:335;;;:::o;8500:1791::-;-1:-1:-1;;;;;8588:18:0;;8580:68;;;;-1:-1:-1;;;8580:68:0;;8237:2:1;8580:68:0;;;8219:21:1;8276:2;8256:18;;;8249:30;8315:34;8295:18;;;8288:62;-1:-1:-1;;;8366:18:1;;;8359:35;8411:19;;8580:68:0;8035:401:1;8580:68:0;-1:-1:-1;;;;;8667:16:0;;8659:64;;;;-1:-1:-1;;;8659:64:0;;8643:2:1;8659:64:0;;;8625:21:1;8682:2;8662:18;;;8655:30;8721:34;8701:18;;;8694:62;-1:-1:-1;;;8772:18:1;;;8765:33;8815:19;;8659:64:0;8441:399:1;8659:64:0;8751:1;8742:6;:10;8734:64;;;;-1:-1:-1;;;8734:64:0;;9047:2:1;8734:64:0;;;9029:21:1;9086:2;9066:18;;;9059:30;9125:34;9105:18;;;9098:62;-1:-1:-1;;;9176:18:1;;;9169:39;9225:19;;8734:64:0;8845:405:1;8734:64:0;8809:17;2672:6;;-1:-1:-1;;;;;8843:15:0;;;2672:6;;8843:15;;;;:32;;-1:-1:-1;2645:7:0;2672:6;-1:-1:-1;;;;;8862:13:0;;;2672:6;;8862:13;;8843:32;8839:1090;;;8904:13;;-1:-1:-1;;;;;8896:21:0;;;8904:13;;8896:21;:55;;;;-1:-1:-1;8935:15:0;;-1:-1:-1;;;;;8921:30:0;;;8935:15;;8921:30;;8896:55;:83;;;;-1:-1:-1;;;;;;8957:22:0;;;;;;:18;:22;;;;;;;;8955:24;8896:83;8892:406;;;9009:11;;-1:-1:-1;;;9009:11:0;;;;9001:40;;;;-1:-1:-1;;;9001:40:0;;9457:2:1;9001:40:0;;;9439:21:1;9496:2;9476:18;;;9469:30;-1:-1:-1;;;9515:18:1;;;9508:46;9571:18;;9001:40:0;9255:340:1;9001:40:0;9078:12;;9068:6;:22;;9060:60;;;;-1:-1:-1;;;9060:60:0;;9802:2:1;9060:60:0;;;9784:21:1;9841:2;9821:18;;;9814:30;9880:27;9860:18;;;9853:55;9925:18;;9060:60:0;9600:349:1;9060:60:0;9173:14;;9163:6;9147:13;9157:2;-1:-1:-1;;;;;6945:18:0;6918:7;6945:18;;;:9;:18;;;;;;;6852:119;9147:13;:22;;;;:::i;:::-;:40;;9139:79;;;;-1:-1:-1;;;9139:79:0;;10286:2:1;9139:79:0;;;10268:21:1;10325:2;10305:18;;;10298:30;10364:28;10344:18;;;10337:56;10410:18;;9139:79:0;10084:350:1;9139:79:0;9249:33;9278:3;9249:24;9260:12;;9249:6;:10;;:24;;;;:::i;:::-;:28;;:33::i;:::-;9237:45;;8892:406;9323:13;;-1:-1:-1;;;;;9317:19:0;;;9323:13;;9317:19;:43;;;;-1:-1:-1;;;;;;9340:20:0;;9355:4;9340:20;;9317:43;9314:129;;;9393:34;9423:3;9393:25;9404:13;;9393:6;:10;;:25;;;;:::i;:34::-;9381:46;;9314:129;9508:4;9459:28;6945:18;;;:9;:18;;;;;;9534:6;;-1:-1:-1;;;9534:6:0;;;;9533:7;:32;;;;-1:-1:-1;9552:13:0;;-1:-1:-1;;;;;9544:21:0;;;9552:13;;9544:21;9533:32;:47;;;;-1:-1:-1;9569:11:0;;-1:-1:-1;;;9569:11:0;;;;9533:47;:89;;;;;9605:17;;9584:20;:38;9533:89;9529:389;;;9643:67;9660:49;9664:6;9671:37;9675:20;9696:11;;9671:3;:37::i;:::-;9660:3;:49::i;:::-;9643:16;:67::i;:::-;9758:21;9801:22;;9798:105;;9848:35;9861:21;9848:12;:35::i;:::-;9624:294;9529:389;8877:1052;8839:1090;9944:11;;9941:165;;10014:4;9996:24;;;;:9;:24;;;;;;:39;;10025:9;9996:28;:39::i;:::-;9989:4;9971:24;;;;:9;:24;;;;;;;:64;;;;10055:39;;-1:-1:-1;;;;;10055:39:0;;;;;;;10084:9;1753:25:1;;1741:2;1726:18;;1607:177;10055:39:0;;;;;;;;9941:165;-1:-1:-1;;;;;10134:15:0;;;;;;:9;:15;;;;;;:27;;10154:6;10134:19;:27::i;:::-;-1:-1:-1;;;;;10118:15:0;;;;;;:9;:15;;;;;:43;10186:40;10204:21;:6;10215:9;10204:10;:21::i;:::-;-1:-1:-1;;;;;10186:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;10172:13:0;;;;;;;:9;:13;;;;;:54;;;;10242:41;;;10261:21;:6;10272:9;10261:10;:21::i;:::-;10242:41;;1753:25:1;;;1741:2;1726:18;10242:41:0;;;;;;;8569:1722;8500:1791;;;:::o;1499:190::-;1585:7;1621:12;1613:6;;;;1605:29;;;;-1:-1:-1;;;1605:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1645:9:0;1657:5;1661:1;1657;:5;:::i;:::-;1645:17;1499:190;-1:-1:-1;;;;;1499:190:0:o;10299:483::-;5062:6;:13;;-1:-1:-1;;;;5062:13:0;-1:-1:-1;;;5062:13:0;;;10401:16:::1;::::0;;10415:1:::1;10401:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10401:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10401:16:0::1;10377:40;;10446:4;10428;10433:1;10428:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10428:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10472:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10472:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10428:7;;10472:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10462:4;10467:1;10462:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10462:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10537:15:::1;::::0;10505:62:::1;::::0;10522:4:::1;::::0;10537:15:::1;10555:11:::0;10505:8:::1;:62::i;:::-;10578:15;::::0;:196:::1;::::0;-1:-1:-1;;;10578:196:0;;-1:-1:-1;;;;;10578:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10659:11;;10578:15:::1;::::0;10701:4;;10728::::1;::::0;10748:15:::1;::::0;10578:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5098:6:0;:14;;-1:-1:-1;;;;5098:14:0;;;-1:-1:-1;;;;10299:483:0:o;11065:233::-;11122:17;11143:13;:6;11154:1;11143:10;:13::i;:::-;11122:35;-1:-1:-1;11168:17:0;11189:18;11122:35;11189:6;:18;:::i;:::-;11219:10;;:30;;11168:40;;-1:-1:-1;;;;;;11219:10:0;;:30;;;;;11239:9;;11219:10;:30;:10;:30;11239:9;11219:10;:30;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11260:10:0;;:30;;-1:-1:-1;;;;;11260:10:0;;;;:30;;;;;11280:9;;11260:10;:30;:10;:30;11280:9;11260:10;:30;;;;;;;;;;;;;;;;;;;;;11111:187;;11065:233;:::o;1697:246::-;1755:7;1779:1;1784;1779:6;1775:47;;-1:-1:-1;1809:1:0;1802:8;;1775:47;1832:9;1844:5;1848:1;1844;:5;:::i;:::-;1832:17;-1:-1:-1;1877:1:0;1868:5;1872:1;1832:17;1868:5;:::i;:::-;:10;1860:56;;;;-1:-1:-1;;;1860:56:0;;12237:2:1;1860:56:0;;;12219:21:1;12276:2;12256:18;;;12249:30;12315:34;12295:18;;;12288:62;-1:-1:-1;;;12366:18:1;;;12359:31;12407:19;;1860:56:0;12035:397:1;1860:56:0;1934:1;1697:246;-1:-1:-1;;;1697:246:0:o;1951:132::-;2009:7;2036:39;2040:1;2043;2036:39;;;;;;;;;;;;;;;;;:3;:39::i;10957:100::-;11014:7;11043:1;11041;:3;11040:9;;11048:1;11040:9;;;-1:-1:-1;11046:1:0;10957:100;-1:-1:-1;10957:100:0:o;1168:179::-;1226:7;;1258:5;1262:1;1258;:5;:::i;:::-;1246:17;;1287:1;1282;:6;;1274:46;;;;-1:-1:-1;;;1274:46:0;;12639:2:1;1274:46:0;;;12621:21:1;12678:2;12658:18;;;12651:30;12717:29;12697:18;;;12690:57;12764:18;;1274:46:0;12437:351:1;1355:136:0;1413:7;1440:43;1444:1;1447;1440:43;;;;;;;;;;;;;;;;;:3;:43::i;2091:189::-;2177:7;2212:12;2205:5;2197:28;;;;-1:-1:-1;;;2197:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2236:9:0;2248:5;2252:1;2248;:5;:::i;14:248:1:-;82:6;90;143:2;131:9;122:7;118:23;114:32;111:52;;;159:1;156;149:12;111:52;-1:-1:-1;;182:23:1;;;252:2;237:18;;;224:32;;-1:-1:-1;14:248:1:o;267:548::-;379:4;408:2;437;426:9;419:21;469:6;463:13;512:6;507:2;496:9;492:18;485:34;537:1;547:140;561:6;558:1;555:13;547:140;;;656:14;;;652:23;;646:30;622:17;;;641:2;618:26;611:66;576:10;;547:140;;;551:3;736:1;731:2;722:6;711:9;707:22;703:31;696:42;806:2;799;795:7;790:2;782:6;778:15;774:29;763:9;759:45;755:54;747:62;;;;267:548;;;;:::o;820:131::-;-1:-1:-1;;;;;895:31:1;;885:42;;875:70;;941:1;938;931:12;956:134;1024:20;;1053:31;1024:20;1053:31;:::i;:::-;956:134;;;:::o;1095:315::-;1163:6;1171;1224:2;1212:9;1203:7;1199:23;1195:32;1192:52;;;1240:1;1237;1230:12;1192:52;1279:9;1266:23;1298:31;1323:5;1298:31;:::i;:::-;1348:5;1400:2;1385:18;;;;1372:32;;-1:-1:-1;;;1095:315:1:o;1789:456::-;1866:6;1874;1882;1935:2;1923:9;1914:7;1910:23;1906:32;1903:52;;;1951:1;1948;1941:12;1903:52;1990:9;1977:23;2009:31;2034:5;2009:31;:::i;:::-;2059:5;-1:-1:-1;2116:2:1;2101:18;;2088:32;2129:33;2088:32;2129:33;:::i;:::-;1789:456;;2181:7;;-1:-1:-1;;;2235:2:1;2220:18;;;;2207:32;;1789:456::o;2647:247::-;2706:6;2759:2;2747:9;2738:7;2734:23;2730:32;2727:52;;;2775:1;2772;2765:12;2727:52;2814:9;2801:23;2833:31;2858:5;2833:31;:::i;2899:127::-;2960:10;2955:3;2951:20;2948:1;2941:31;2991:4;2988:1;2981:15;3015:4;3012:1;3005:15;3031:1121;3115:6;3146:2;3189;3177:9;3168:7;3164:23;3160:32;3157:52;;;3205:1;3202;3195:12;3157:52;3245:9;3232:23;3274:18;3315:2;3307:6;3304:14;3301:34;;;3331:1;3328;3321:12;3301:34;3369:6;3358:9;3354:22;3344:32;;3414:7;3407:4;3403:2;3399:13;3395:27;3385:55;;3436:1;3433;3426:12;3385:55;3472:2;3459:16;3494:2;3490;3487:10;3484:36;;;3500:18;;:::i;:::-;3546:2;3543:1;3539:10;3578:2;3572:9;3641:2;3637:7;3632:2;3628;3624:11;3620:25;3612:6;3608:38;3696:6;3684:10;3681:22;3676:2;3664:10;3661:18;3658:46;3655:72;;;3707:18;;:::i;:::-;3743:2;3736:22;3793:18;;;3827:15;;;;-1:-1:-1;3869:11:1;;;3865:20;;;3897:19;;;3894:39;;;3929:1;3926;3919:12;3894:39;3953:11;;;;3973:148;3989:6;3984:3;3981:15;3973:148;;;4055:23;4074:3;4055:23;:::i;:::-;4043:36;;4006:12;;;;4099;;;;3973:148;;;4140:6;3031:1121;-1:-1:-1;;;;;;;;3031:1121:1:o;4157:388::-;4225:6;4233;4286:2;4274:9;4265:7;4261:23;4257:32;4254:52;;;4302:1;4299;4292:12;4254:52;4341:9;4328:23;4360:31;4385:5;4360:31;:::i;:::-;4410:5;-1:-1:-1;4467:2:1;4452:18;;4439:32;4480:33;4439:32;4480:33;:::i;:::-;4532:7;4522:17;;;4157:388;;;;;:::o;4550:356::-;4752:2;4734:21;;;4771:18;;;4764:30;4830:34;4825:2;4810:18;;4803:62;4897:2;4882:18;;4550:356::o;4911:127::-;4972:10;4967:3;4963:20;4960:1;4953:31;5003:4;5000:1;4993:15;5027:4;5024:1;5017:15;5043:422;5132:1;5175:5;5132:1;5189:270;5210:7;5200:8;5197:21;5189:270;;;5269:4;5265:1;5261:6;5257:17;5251:4;5248:27;5245:53;;;5278:18;;:::i;:::-;5328:7;5318:8;5314:22;5311:55;;;5348:16;;;;5311:55;5427:22;;;;5387:15;;;;5189:270;;;5193:3;5043:422;;;;;:::o;5470:806::-;5519:5;5549:8;5539:80;;-1:-1:-1;5590:1:1;5604:5;;5539:80;5638:4;5628:76;;-1:-1:-1;5675:1:1;5689:5;;5628:76;5720:4;5738:1;5733:59;;;;5806:1;5801:130;;;;5713:218;;5733:59;5763:1;5754:10;;5777:5;;;5801:130;5838:3;5828:8;5825:17;5822:43;;;5845:18;;:::i;:::-;-1:-1:-1;;5901:1:1;5887:16;;5916:5;;5713:218;;6015:2;6005:8;6002:16;5996:3;5990:4;5987:13;5983:36;5977:2;5967:8;5964:16;5959:2;5953:4;5950:12;5946:35;5943:77;5940:159;;;-1:-1:-1;6052:19:1;;;6084:5;;5940:159;6131:34;6156:8;6150:4;6131:34;:::i;:::-;6201:6;6197:1;6193:6;6189:19;6180:7;6177:32;6174:58;;;6212:18;;:::i;:::-;6250:20;;5470:806;-1:-1:-1;;;5470:806:1:o;6281:140::-;6339:5;6368:47;6409:4;6399:8;6395:19;6389:4;6368:47;:::i;6426:168::-;6499:9;;;6530;;6547:15;;;6541:22;;6527:37;6517:71;;6568:18;;:::i;6955:127::-;7016:10;7011:3;7007:20;7004:1;6997:31;7047:4;7044:1;7037:15;7071:4;7068:1;7061:15;7087:135;7126:3;7147:17;;;7144:43;;7167:18;;:::i;:::-;-1:-1:-1;7214:1:1;7203:13;;7087:135::o;9954:125::-;10019:9;;;10040:10;;;10037:36;;;10053:18;;:::i;10439:128::-;10506:9;;;10527:11;;;10524:37;;;10541:18;;:::i;10572:251::-;10642:6;10695:2;10683:9;10674:7;10670:23;10666:32;10663:52;;;10711:1;10708;10701:12;10663:52;10743:9;10737:16;10762:31;10787:5;10762:31;:::i;10828:980::-;11090:4;11138:3;11127:9;11123:19;11169:6;11158:9;11151:25;11195:2;11233:6;11228:2;11217:9;11213:18;11206:34;11276:3;11271:2;11260:9;11256:18;11249:31;11300:6;11335;11329:13;11366:6;11358;11351:22;11404:3;11393:9;11389:19;11382:26;;11443:2;11435:6;11431:15;11417:29;;11464:1;11474:195;11488:6;11485:1;11482:13;11474:195;;;11553:13;;-1:-1:-1;;;;;11549:39:1;11537:52;;11644:15;;;;11609:12;;;;11585:1;11503:9;11474:195;;;-1:-1:-1;;;;;;;11725:32:1;;;;11720:2;11705:18;;11698:60;-1:-1:-1;;;11789:3:1;11774:19;11767:35;11686:3;10828:980;-1:-1:-1;;;10828:980:1:o;11813:217::-;11853:1;11879;11869:132;;11923:10;11918:3;11914:20;11911:1;11904:31;11958:4;11955:1;11948:15;11986:4;11983:1;11976:15;11869:132;-1:-1:-1;12015:9:1;;11813:217::o

Swarm Source

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