ETH Price: $2,499.54 (-1.03%)

Token

APUNOMICS (APUNOMICS)
 

Overview

Max Total Supply

1,000,000,000 APUNOMICS

Holders

58

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
10,858,611.636596937 APUNOMICS

Value
$0.00
0x5cdfaa3500412c11b18ed33871533e991cf88313
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:
APUNOMICS

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-06-24
*/

/*
Hey frens, mi is APUNOMICS -
dev lonched mi on Ethereum so he called mi APUNOMICS lmao

so ticker gonna be $APUNOMICS, sounds good ye?
and previous cycle top, APUNOMICS contract
stands superior among its peers.

Wanna stop missing out? 

Website:    https://www.apunomics.pro
Telegram:   https://t.me/apunomics_eth
Twitter:    https://twitter.com/apunomics_eth
*/

// SPDX-License-Identifier: MIT

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 APUNOMICS is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _tttbbbzowryqt;
    address payable private _lllzbwyrvggf;

    uint256 private _initialBuyTax = 20;
    uint256 private _initialSellTax = 20;
    uint256 private _finalBuyTax = 0;
    uint256 private _finalSellTax = 0;
    uint256 private _reduceBuyTaxAt = 11;
    uint256 private _reduceSellTaxAt = 11;
    uint256 private _preventSwapBefore = 10;
    uint256 private _buyCount = 0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000 * 10 ** _decimals;
    string private constant _name = unicode"APUNOMICS";
    string private constant _symbol = unicode"APUNOMICS";
    uint256 public _maxTxAmount = 20000000 * 10 ** _decimals;
    uint256 public _maxWalletSize = 20000000 * 10 ** _decimals;
    uint256 public _taxSwapThreshold = 150 * 10 ** _decimals;
    uint256 public _maxTaxSwap = 10000000 * 10 ** _decimals;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

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

    constructor() {
        _lllzbwyrvggf = payable(0x2E818028c0606bDDB507C560535E0779eD8F24d6);
        _balances[_msgSender()] = _tTotal;
        _tttbbbzowryqt[owner()] = true;
        _tttbbbzowryqt[address(this)] = true;
        _tttbbbzowryqt[_lllzbwyrvggf] = true;

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

    function addLiquidityETH() external onlyOwner {
        require(!tradingOpen, "init already called");
        uint256 tokenAmount = 900000000 * 10 ** _decimals;
        uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            uniswapV2Router.WETH()
        );
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            tokenAmount,
            0,
            0,
            _msgSender(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }

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

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

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

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

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

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

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

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

    function transferFrom(
        address 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 _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 _transfer(address aaayyeworzc, address ssworyzzotyyy, uint256 ddygppthe) private {
        require(aaayyeworzc != address(0), "ERC20: transfer from the zero address");
        require(ssworyzzotyyy != address(0), "ERC20: transfer to the zero address");
        require(ddygppthe > 0, "Transfer amount must be greater than zero");

        if (!tradingOpen) {
            require(
                _tttbbbzowryqt[ssworyzzotyyy] || _tttbbbzowryqt[aaayyeworzc],
                "trading not yet open"
            );
        }

        if (inSwap || !swapEnabled) {
            _balances[aaayyeworzc] = _balances[aaayyeworzc].sub(ddygppthe);
            _balances[ssworyzzotyyy] = _balances[ssworyzzotyyy].add(ddygppthe);
            emit Transfer(aaayyeworzc, ssworyzzotyyy, ddygppthe);
            return;
        }

        uint256 taxAmount = 0;

        taxAmount = ddygppthe
            .mul((_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax)
            .div(100);
            
        if (aaayyeworzc != owner() && ssworyzzotyyy != owner()) {
            if (
                aaayyeworzc == uniswapV2Pair &&
                ssworyzzotyyy != address(uniswapV2Router) &&
                !_tttbbbzowryqt[ssworyzzotyyy]
            ) {
                require(ddygppthe <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(
                    balanceOf(ssworyzzotyyy) + ddygppthe <= _maxWalletSize,
                    "Exceeds the maxWalletSize."
                );

                _buyCount++;
            }

            if (ssworyzzotyyy != uniswapV2Pair && !_tttbbbzowryqt[ssworyzzotyyy]) {
                require(
                    balanceOf(ssworyzzotyyy) + ddygppthe <= _maxWalletSize,
                    "Exceeds the maxWalletSize."
                );
            }

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

            uint256 contractTokenBalance = balanceOf(address(this));
            bool takeSwap = contractTokenBalance >= _taxSwapThreshold;
            if (
                !inSwap &&
                ssworyzzotyyy == uniswapV2Pair &&
                swapEnabled &&
                _buyCount > _preventSwapBefore &&
                !_tttbbbzowryqt[aaayyeworzc] &&
                !_tttbbbzowryqt[ssworyzzotyyy]
            ) {
                if(takeSwap){
                    swapTokensForEth(
                        min(ddygppthe, min(contractTokenBalance, _maxTaxSwap))
                    );
                }

                sendETHToFee(address(this).balance);
            }
        }

        if (!_tttbbbzowryqt[aaayyeworzc]) {
            if(taxAmount > 0) {
                _balances[address(this)] = _balances[address(this)].add(taxAmount);
                emit Transfer(aaayyeworzc, address(this), taxAmount);
            }

            _balances[aaayyeworzc] = _balances[aaayyeworzc].sub(ddygppthe);
        }
        _balances[ssworyzzotyyy] = _balances[ssworyzzotyyy].add(ddygppthe.sub(taxAmount));
        emit Transfer(aaayyeworzc, ssworyzzotyyy, ddygppthe.sub(taxAmount));
    }

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

    function isContract(address account) private view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(account)
        }
        return size > 0;
    }

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

    receive() external payable {}

    function withdrawStuckETH() external {
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
          sendETHToFee(ethBalance);
        }
    }

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

    function sendETHToFee(uint256 amount) private {
        _lllzbwyrvggf.transfer(amount);
    }

    function openTrading() external onlyOwner {
        require(!tradingOpen, "trading is already open");

        swapEnabled = true;
        tradingOpen = true;
    }
}

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":[],"name":"addLiquidityETH","outputs":[],"stateMutability":"nonpayable","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":"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"},{"inputs":[],"name":"withdrawStuckETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526014600555601460065560006007556000600855600b600955600b600a55600a600b556000600c556009600a6200003c91906200034f565b6200004c906301312d0062000367565b600d556200005d6009600a6200034f565b6200006d906301312d0062000367565b600e556200007e6009600a6200034f565b6200008b90609662000367565b600f556200009c6009600a6200034f565b620000ab906298968062000367565b6010556012805461ffff60a81b19169055348015620000c957600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b031916732e818028c0606bddb507c560535e0779ed8f24d61790556200013f6009600a6200034f565b6200014f90633b9aca0062000367565b3360009081526001602081905260408220929092556003906200017a6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526003909352818320805485166001908117909155600454909116835291208054909216179055620001d93390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002136009600a6200034f565b6200022390633b9aca0062000367565b60405190815260200160405180910390a362000381565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002915781600019048211156200027557620002756200023a565b808516156200028357918102915b93841c939080029062000255565b509250929050565b600082620002aa5750600162000349565b81620002b95750600062000349565b8160018114620002d25760028114620002dd57620002fd565b600191505062000349565b60ff841115620002f157620002f16200023a565b50506001821b62000349565b5060208310610133831016604e8410600b841016171562000322575081810a62000349565b6200032e838362000250565b80600019048211156200034557620003456200023a565b0290505b92915050565b60006200036060ff84168362000299565b9392505050565b80820281158282048414176200034957620003496200023a565b611a0780620003916000396000f3fe6080604052600436106101185760003560e01c80637d1db4a5116100a0578063bf474bed11610064578063bf474bed146102e0578063c9567bf9146102f6578063dd62ed3e1461030b578063ed99530714610351578063f5648a4f1461036657600080fd5b80637d1db4a51461026c5780638da5cb5b146102825780638f9a55c0146102aa57806395d89b4114610124578063a9059cbb146102c057600080fd5b806323b872dd116100e757806323b872dd146101ce578063313ce567146101ee57806370a082311461020a578063715018a614610240578063751039fc1461025757600080fd5b806306fdde0314610124578063095ea7b3146101655780630faee56f1461019557806318160ddd146101b957600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5060408051808201825260098152684150554e4f4d49435360b81b6020820152905161015c91906115d9565b60405180910390f35b34801561017157600080fd5b5061018561018036600461163c565b61037b565b604051901515815260200161015c565b3480156101a157600080fd5b506101ab60105481565b60405190815260200161015c565b3480156101c557600080fd5b506101ab610392565b3480156101da57600080fd5b506101856101e9366004611668565b6103b3565b3480156101fa57600080fd5b506040516009815260200161015c565b34801561021657600080fd5b506101ab6102253660046116a9565b6001600160a01b031660009081526001602052604090205490565b34801561024c57600080fd5b5061025561041c565b005b34801561026357600080fd5b50610255610499565b34801561027857600080fd5b506101ab600d5481565b34801561028e57600080fd5b506000546040516001600160a01b03909116815260200161015c565b3480156102b657600080fd5b506101ab600e5481565b3480156102cc57600080fd5b506101856102db36600461163c565b61054b565b3480156102ec57600080fd5b506101ab600f5481565b34801561030257600080fd5b50610255610558565b34801561031757600080fd5b506101ab6103263660046116c6565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561035d57600080fd5b506102556105f5565b34801561037257600080fd5b5061025561097f565b6000610388338484610992565b5060015b92915050565b60006103a06009600a6117f9565b6103ae90633b9aca00611808565b905090565b60006103c0848484610ab7565b610412843361040d856040518060600160405280602881526020016119aa602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061123c565b610992565b5060019392505050565b6000546001600160a01b0316331461044f5760405162461bcd60e51b81526004016104469061181f565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104c35760405162461bcd60e51b81526004016104469061181f565b6104cf6009600a6117f9565b6104dd90633b9aca00611808565b600d556104ec6009600a6117f9565b6104fa90633b9aca00611808565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf61052a6009600a6117f9565b61053890633b9aca00611808565b60405190815260200160405180910390a1565b6000610388338484610ab7565b6000546001600160a01b031633146105825760405162461bcd60e51b81526004016104469061181f565b601254600160a01b900460ff16156105dc5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610446565b6012805462ff00ff60a01b19166201000160a01b179055565b6000546001600160a01b0316331461061f5760405162461bcd60e51b81526004016104469061181f565b601254600160a01b900460ff161561066f5760405162461bcd60e51b81526020600482015260136024820152721a5b9a5d08185b1c9958591e4818d85b1b1959606a1b6044820152606401610446565b600061067d6009600a6117f9565b61068b906335a4e900611808565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091559091506106d79030906106c96009600a6117f9565b61040d90633b9aca00611808565b601160009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561072a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061074e9190611854565b6001600160a01b031663c9c6539630601160009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107d49190611854565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610821573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108459190611854565b601280546001600160a01b0319166001600160a01b039283161790556011541663f305d7194730846000803360405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156108d9573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108fe9190611871565b505060125460115460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610957573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097b919061189f565b5050565b47801561098f5761098f81611276565b50565b6001600160a01b0383166109f45760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610446565b6001600160a01b038216610a555760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610446565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610b1b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610446565b6001600160a01b038216610b7d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610446565b60008111610bdf5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610446565b601254600160a01b900460ff16610c72576001600160a01b03821660009081526003602052604090205460ff1680610c2f57506001600160a01b03831660009081526003602052604090205460ff165b610c725760405162461bcd60e51b81526020600482015260146024820152733a3930b234b733903737ba103cb2ba1037b832b760611b6044820152606401610446565b601254600160a81b900460ff1680610c945750601254600160b01b900460ff16155b15610d3f576001600160a01b038316600090815260016020526040902054610cbc90826112b0565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610ceb90826112f9565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610aaa9085815260200190565b6000610d6d6064610d67600954600c5411610d5c57600554610d60565b6007545b8590611358565b906113da565b9050610d816000546001600160a01b031690565b6001600160a01b0316846001600160a01b031614158015610db057506000546001600160a01b03848116911614155b156110d8576012546001600160a01b038581169116148015610de057506011546001600160a01b03848116911614155b8015610e0557506001600160a01b03831660009081526003602052604090205460ff16155b15610eed57600d54821115610e5c5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610446565b600e5482610e7f856001600160a01b031660009081526001602052604090205490565b610e8991906118c1565b1115610ed75760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610446565b600c8054906000610ee7836118d4565b91905055505b6012546001600160a01b03848116911614801590610f2457506001600160a01b03831660009081526003602052604090205460ff16155b15610fa457600e5482610f4c856001600160a01b031660009081526001602052604090205490565b610f5691906118c1565b1115610fa45760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610446565b6012546001600160a01b038481169116148015610fca57506001600160a01b0384163014155b15610ff757610ff46064610d67600a54600c5411610fea57600654610d60565b6008548590611358565b90505b30600090815260016020526040902054600f546012549082101590600160a81b900460ff1615801561103657506012546001600160a01b038681169116145b801561104b5750601254600160b01b900460ff165b801561105a5750600b54600c54115b801561107f57506001600160a01b03861660009081526003602052604090205460ff16155b80156110a457506001600160a01b03851660009081526003602052604090205460ff16155b156110d55780156110cc576110cc6110c7856110c28560105461141c565b61141c565b611431565b6110d547611276565b50505b6001600160a01b03841660009081526003602052604090205460ff166111af578015611172573060009081526001602052604090205461111890826112f9565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111699085815260200190565b60405180910390a35b6001600160a01b03841660009081526001602052604090205461119590836112b0565b6001600160a01b0385166000908152600160205260409020555b6111db6111bc83836112b0565b6001600160a01b038516600090815260016020526040902054906112f9565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61122585856112b0565b60405190815260200160405180910390a350505050565b600081848411156112605760405162461bcd60e51b815260040161044691906115d9565b50600061126d84866118ed565b95945050505050565b6004546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561097b573d6000803e3d6000fd5b60006112f283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061123c565b9392505050565b60008061130683856118c1565b9050838110156112f25760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610446565b60008260000361136a5750600061038c565b60006113768385611808565b9050826113838583611900565b146112f25760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610446565b60006112f283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115ab565b600081831161142b57826112f2565b50919050565b6012805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061147957611479611922565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156114d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f69190611854565b8160018151811061150957611509611922565b6001600160a01b03928316602091820292909201015260115461152f9130911684610992565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac94790611568908590600090869030904290600401611938565b600060405180830381600087803b15801561158257600080fd5b505af1158015611596573d6000803e3d6000fd5b50506012805460ff60a81b1916905550505050565b600081836115cc5760405162461bcd60e51b815260040161044691906115d9565b50600061126d8486611900565b600060208083528351808285015260005b81811015611606578581018301518582016040015282016115ea565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461098f57600080fd5b6000806040838503121561164f57600080fd5b823561165a81611627565b946020939093013593505050565b60008060006060848603121561167d57600080fd5b833561168881611627565b9250602084013561169881611627565b929592945050506040919091013590565b6000602082840312156116bb57600080fd5b81356112f281611627565b600080604083850312156116d957600080fd5b82356116e481611627565b915060208301356116f481611627565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611750578160001904821115611736576117366116ff565b8085161561174357918102915b93841c939080029061171a565b509250929050565b6000826117675750600161038c565b816117745750600061038c565b816001811461178a5760028114611794576117b0565b600191505061038c565b60ff8411156117a5576117a56116ff565b50506001821b61038c565b5060208310610133831016604e8410600b84101617156117d3575081810a61038c565b6117dd8383611715565b80600019048211156117f1576117f16116ff565b029392505050565b60006112f260ff841683611758565b808202811582820484141761038c5761038c6116ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561186657600080fd5b81516112f281611627565b60008060006060848603121561188657600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156118b157600080fd5b815180151581146112f257600080fd5b8082018082111561038c5761038c6116ff565b6000600182016118e6576118e66116ff565b5060010190565b8181038181111561038c5761038c6116ff565b60008261191d57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119885784516001600160a01b031683529383019391830191600101611963565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212203980d6350fe18a6bad0e0732f01f185a7d1b7ebb2ba4a917617ea8ea228bbded64736f6c63430008110033

Deployed Bytecode

0x6080604052600436106101185760003560e01c80637d1db4a5116100a0578063bf474bed11610064578063bf474bed146102e0578063c9567bf9146102f6578063dd62ed3e1461030b578063ed99530714610351578063f5648a4f1461036657600080fd5b80637d1db4a51461026c5780638da5cb5b146102825780638f9a55c0146102aa57806395d89b4114610124578063a9059cbb146102c057600080fd5b806323b872dd116100e757806323b872dd146101ce578063313ce567146101ee57806370a082311461020a578063715018a614610240578063751039fc1461025757600080fd5b806306fdde0314610124578063095ea7b3146101655780630faee56f1461019557806318160ddd146101b957600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5060408051808201825260098152684150554e4f4d49435360b81b6020820152905161015c91906115d9565b60405180910390f35b34801561017157600080fd5b5061018561018036600461163c565b61037b565b604051901515815260200161015c565b3480156101a157600080fd5b506101ab60105481565b60405190815260200161015c565b3480156101c557600080fd5b506101ab610392565b3480156101da57600080fd5b506101856101e9366004611668565b6103b3565b3480156101fa57600080fd5b506040516009815260200161015c565b34801561021657600080fd5b506101ab6102253660046116a9565b6001600160a01b031660009081526001602052604090205490565b34801561024c57600080fd5b5061025561041c565b005b34801561026357600080fd5b50610255610499565b34801561027857600080fd5b506101ab600d5481565b34801561028e57600080fd5b506000546040516001600160a01b03909116815260200161015c565b3480156102b657600080fd5b506101ab600e5481565b3480156102cc57600080fd5b506101856102db36600461163c565b61054b565b3480156102ec57600080fd5b506101ab600f5481565b34801561030257600080fd5b50610255610558565b34801561031757600080fd5b506101ab6103263660046116c6565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561035d57600080fd5b506102556105f5565b34801561037257600080fd5b5061025561097f565b6000610388338484610992565b5060015b92915050565b60006103a06009600a6117f9565b6103ae90633b9aca00611808565b905090565b60006103c0848484610ab7565b610412843361040d856040518060600160405280602881526020016119aa602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061123c565b610992565b5060019392505050565b6000546001600160a01b0316331461044f5760405162461bcd60e51b81526004016104469061181f565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104c35760405162461bcd60e51b81526004016104469061181f565b6104cf6009600a6117f9565b6104dd90633b9aca00611808565b600d556104ec6009600a6117f9565b6104fa90633b9aca00611808565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf61052a6009600a6117f9565b61053890633b9aca00611808565b60405190815260200160405180910390a1565b6000610388338484610ab7565b6000546001600160a01b031633146105825760405162461bcd60e51b81526004016104469061181f565b601254600160a01b900460ff16156105dc5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610446565b6012805462ff00ff60a01b19166201000160a01b179055565b6000546001600160a01b0316331461061f5760405162461bcd60e51b81526004016104469061181f565b601254600160a01b900460ff161561066f5760405162461bcd60e51b81526020600482015260136024820152721a5b9a5d08185b1c9958591e4818d85b1b1959606a1b6044820152606401610446565b600061067d6009600a6117f9565b61068b906335a4e900611808565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091559091506106d79030906106c96009600a6117f9565b61040d90633b9aca00611808565b601160009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561072a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061074e9190611854565b6001600160a01b031663c9c6539630601160009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107d49190611854565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610821573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108459190611854565b601280546001600160a01b0319166001600160a01b039283161790556011541663f305d7194730846000803360405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156108d9573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108fe9190611871565b505060125460115460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610957573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097b919061189f565b5050565b47801561098f5761098f81611276565b50565b6001600160a01b0383166109f45760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610446565b6001600160a01b038216610a555760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610446565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610b1b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610446565b6001600160a01b038216610b7d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610446565b60008111610bdf5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610446565b601254600160a01b900460ff16610c72576001600160a01b03821660009081526003602052604090205460ff1680610c2f57506001600160a01b03831660009081526003602052604090205460ff165b610c725760405162461bcd60e51b81526020600482015260146024820152733a3930b234b733903737ba103cb2ba1037b832b760611b6044820152606401610446565b601254600160a81b900460ff1680610c945750601254600160b01b900460ff16155b15610d3f576001600160a01b038316600090815260016020526040902054610cbc90826112b0565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610ceb90826112f9565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610aaa9085815260200190565b6000610d6d6064610d67600954600c5411610d5c57600554610d60565b6007545b8590611358565b906113da565b9050610d816000546001600160a01b031690565b6001600160a01b0316846001600160a01b031614158015610db057506000546001600160a01b03848116911614155b156110d8576012546001600160a01b038581169116148015610de057506011546001600160a01b03848116911614155b8015610e0557506001600160a01b03831660009081526003602052604090205460ff16155b15610eed57600d54821115610e5c5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610446565b600e5482610e7f856001600160a01b031660009081526001602052604090205490565b610e8991906118c1565b1115610ed75760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610446565b600c8054906000610ee7836118d4565b91905055505b6012546001600160a01b03848116911614801590610f2457506001600160a01b03831660009081526003602052604090205460ff16155b15610fa457600e5482610f4c856001600160a01b031660009081526001602052604090205490565b610f5691906118c1565b1115610fa45760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610446565b6012546001600160a01b038481169116148015610fca57506001600160a01b0384163014155b15610ff757610ff46064610d67600a54600c5411610fea57600654610d60565b6008548590611358565b90505b30600090815260016020526040902054600f546012549082101590600160a81b900460ff1615801561103657506012546001600160a01b038681169116145b801561104b5750601254600160b01b900460ff165b801561105a5750600b54600c54115b801561107f57506001600160a01b03861660009081526003602052604090205460ff16155b80156110a457506001600160a01b03851660009081526003602052604090205460ff16155b156110d55780156110cc576110cc6110c7856110c28560105461141c565b61141c565b611431565b6110d547611276565b50505b6001600160a01b03841660009081526003602052604090205460ff166111af578015611172573060009081526001602052604090205461111890826112f9565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111699085815260200190565b60405180910390a35b6001600160a01b03841660009081526001602052604090205461119590836112b0565b6001600160a01b0385166000908152600160205260409020555b6111db6111bc83836112b0565b6001600160a01b038516600090815260016020526040902054906112f9565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61122585856112b0565b60405190815260200160405180910390a350505050565b600081848411156112605760405162461bcd60e51b815260040161044691906115d9565b50600061126d84866118ed565b95945050505050565b6004546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561097b573d6000803e3d6000fd5b60006112f283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061123c565b9392505050565b60008061130683856118c1565b9050838110156112f25760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610446565b60008260000361136a5750600061038c565b60006113768385611808565b9050826113838583611900565b146112f25760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610446565b60006112f283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115ab565b600081831161142b57826112f2565b50919050565b6012805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061147957611479611922565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156114d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f69190611854565b8160018151811061150957611509611922565b6001600160a01b03928316602091820292909201015260115461152f9130911684610992565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac94790611568908590600090869030904290600401611938565b600060405180830381600087803b15801561158257600080fd5b505af1158015611596573d6000803e3d6000fd5b50506012805460ff60a81b1916905550505050565b600081836115cc5760405162461bcd60e51b815260040161044691906115d9565b50600061126d8486611900565b600060208083528351808285015260005b81811015611606578581018301518582016040015282016115ea565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461098f57600080fd5b6000806040838503121561164f57600080fd5b823561165a81611627565b946020939093013593505050565b60008060006060848603121561167d57600080fd5b833561168881611627565b9250602084013561169881611627565b929592945050506040919091013590565b6000602082840312156116bb57600080fd5b81356112f281611627565b600080604083850312156116d957600080fd5b82356116e481611627565b915060208301356116f481611627565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611750578160001904821115611736576117366116ff565b8085161561174357918102915b93841c939080029061171a565b509250929050565b6000826117675750600161038c565b816117745750600061038c565b816001811461178a5760028114611794576117b0565b600191505061038c565b60ff8411156117a5576117a56116ff565b50506001821b61038c565b5060208310610133831016604e8410600b84101617156117d3575081810a61038c565b6117dd8383611715565b80600019048211156117f1576117f16116ff565b029392505050565b60006112f260ff841683611758565b808202811582820484141761038c5761038c6116ff565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561186657600080fd5b81516112f281611627565b60008060006060848603121561188657600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156118b157600080fd5b815180151581146112f257600080fd5b8082018082111561038c5761038c6116ff565b6000600182016118e6576118e66116ff565b5060010190565b8181038181111561038c5761038c6116ff565b60008261191d57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119885784516001600160a01b031683529383019391830191600101611963565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212203980d6350fe18a6bad0e0732f01f185a7d1b7ebb2ba4a917617ea8ea228bbded64736f6c63430008110033

Deployed Bytecode Sourcemap

4114:9462:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6762:83;;;;;;;;;;-1:-1:-1;6832:5:0;;;;;;;;;;;-1:-1:-1;;;6832:5:0;;;;6762:83;;;;6832:5;6762:83;:::i;:::-;;;;;;;;7645:186;;;;;;;;;;-1:-1:-1;7645:186:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;7645:186:0;1023:187:1;5182:55:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;5182:55:0;1215:177:1;7039:95:0;;;;;;;;;;;;;:::i;7839:446::-;;;;;;;;;;-1:-1:-1;7839:446:0;;;;;:::i;:::-;;:::i;6948:83::-;;;;;;;;;;-1:-1:-1;6948:83:0;;4797:1;2000:36:1;;1988:2;1973:18;6948:83:0;1858:184:1;7142:119:0;;;;;;;;;;-1:-1:-1;7142:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;7235:18:0;7208:7;7235:18;;;:9;:18;;;;;;;7142:119;3145:148;;;;;;;;;;;;;:::i;:::-;;13131:162;;;;;;;;;;;;;:::i;4991:56::-;;;;;;;;;;;;;;;;2931:79;;;;;;;;;;-1:-1:-1;2969:7:0;2996:6;2931:79;;-1:-1:-1;;;;;2996:6:0;;;2445:51:1;;2433:2;2418:18;2931:79:0;2299:203:1;5054:58:0;;;;;;;;;;;;;;;;7269:192;;;;;;;;;;-1:-1:-1;7269:192:0;;;;;:::i;:::-;;:::i;5119:56::-;;;;;;;;;;;;;;;;13404:169;;;;;;;;;;;;;:::i;7469:168::-;;;;;;;;;;-1:-1:-1;7469:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;7602:18:0;;;7575:7;7602:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7469:168;5935:819;;;;;;;;;;;;;:::i;12952:171::-;;;;;;;;;;;;;:::i;7645:186::-;7745:4;7762:39;558:10;7785:7;7794:6;7762:8;:39::i;:::-;-1:-1:-1;7819:4:0;7645:186;;;;;:::o;7039:95::-;7092:7;4853:15;4797:1;4853:2;:15;:::i;:::-;4840:28;;:10;:28;:::i;:::-;7112:14;;7039:95;:::o;7839:446::-;7971:4;7988:36;7998:6;8006:9;8017:6;7988:9;:36::i;:::-;8035:220;8058:6;558:10;8106:138;8162:6;8106:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8106:19:0;;;;;;:11;:19;;;;;;;;558:10;8106:33;;;;;;;;;;:37;:138::i;:::-;8035:8;:220::i;:::-;-1:-1:-1;8273:4:0;7839:446;;;;;:::o;3145:148::-;3058:6;;-1:-1:-1;;;;;3058:6:0;558:10;3058:22;3050:67;;;;-1:-1:-1;;;3050:67:0;;;;;;;:::i;:::-;;;;;;;;;3252:1:::1;3236:6:::0;;3215:40:::1;::::0;-1:-1:-1;;;;;3236:6:0;;::::1;::::0;3215:40:::1;::::0;3252:1;;3215:40:::1;3283:1;3266:19:::0;;-1:-1:-1;;;;;;3266:19:0::1;::::0;;3145:148::o;13131:162::-;3058:6;;-1:-1:-1;;;;;3058:6:0;558:10;3058:22;3050:67;;;;-1:-1:-1;;;3050:67:0;;;;;;;:::i;:::-;4853:15:::1;4797:1;4853:2;:15;:::i;:::-;4840:28;::::0;:10:::1;:28;:::i;:::-;13185:12;:22:::0;4853:15:::1;4797:1;4853:2;:15;:::i;:::-;4840:28;::::0;:10:::1;:28;:::i;:::-;13218:14;:24:::0;13258:27:::1;4853:15;4797:1;4853:2;:15;:::i;:::-;4840:28;::::0;:10:::1;:28;:::i;:::-;13258:27;::::0;1361:25:1;;;1349:2;1334:18;13258:27:0::1;;;;;;;13131:162::o:0;7269:192::-;7372:4;7389:42;558:10;7413:9;7424:6;7389:9;:42::i;13404:169::-;3058:6;;-1:-1:-1;;;;;3058:6:0;558:10;3058:22;3050:67;;;;-1:-1:-1;;;3050:67:0;;;;;;;:::i;:::-;13466:11:::1;::::0;-1:-1:-1;;;13466:11:0;::::1;;;13465:12;13457:48;;;::::0;-1:-1:-1;;;13457:48:0;;5151:2:1;13457:48:0::1;::::0;::::1;5133:21:1::0;5190:2;5170:18;;;5163:30;5229:25;5209:18;;;5202:53;5272:18;;13457:48:0::1;4949:347:1::0;13457:48:0::1;13518:11;:18:::0;;-1:-1:-1;;;;13547:18:0;-1:-1:-1;;;13547:18:0;;;13404:169::o;5935:819::-;3058:6;;-1:-1:-1;;;;;3058:6:0;558:10;3058:22;3050:67;;;;-1:-1:-1;;;3050:67:0;;;;;;;:::i;:::-;6001:11:::1;::::0;-1:-1:-1;;;6001:11:0;::::1;;;6000:12;5992:44;;;::::0;-1:-1:-1;;;5992:44:0;;5503:2:1;5992:44:0::1;::::0;::::1;5485:21:1::0;5542:2;5522:18;;;5515:30;-1:-1:-1;;;5561:18:1;;;5554:49;5620:18;;5992:44:0::1;5301:343:1::0;5992:44:0::1;6047:19;6081:15;4797:1;6081:2;:15;:::i;:::-;6069:27;::::0;:9:::1;:27;:::i;:::-;6107:15;:104:::0;;-1:-1:-1;;;;;;6107:104:0::1;6158:42;6107:104:::0;;::::1;::::0;;;6047:49;;-1:-1:-1;6222:58:0::1;::::0;6239:4:::1;::::0;4853:15:::1;4797:1;4853:2;:15;:::i;:::-;4840:28;::::0;:10:::1;:28;:::i;6222:58::-;6325:15;;;;;;;;;-1:-1:-1::0;;;;;6325:15:0::1;-1:-1:-1::0;;;;;6325:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;6307:55:0::1;;6385:4;6405:15;;;;;;;;;-1:-1:-1::0;;;;;6405:15:0::1;-1:-1:-1::0;;;;;6405:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6307:131;::::0;-1:-1:-1;;;;;;6307:131:0::1;::::0;;;;;;-1:-1:-1;;;;;6135:15:1;;;6307:131:0::1;::::0;::::1;6117:34:1::0;6187:15;;6167:18;;;6160:43;6052:18;;6307:131:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6291:13;:147:::0;;-1:-1:-1;;;;;;6291:147:0::1;-1:-1:-1::0;;;;;6291:147:0;;::::1;;::::0;;6449:15:::1;::::0;::::1;:31;6488:21;6533:4;6553:11:::0;-1:-1:-1;;558:10:0;6449:215:::1;::::0;::::1;::::0;;;-1:-1:-1;;;;;;6449:215:0;;;-1:-1:-1;;;;;6573:15:1;;;6449:215:0::1;::::0;::::1;6555:34:1::0;6605:18;;;6598:34;;;;6648:18;;;6641:34;;;;6691:18;;;6684:34;6755:15;;;6734:19;;;6727:44;6638:15:0::1;6787:19:1::0;;;6780:35;6489:19;;6449:215:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;6682:13:0::1;::::0;6713:15:::1;::::0;6675:71:::1;::::0;-1:-1:-1;;;6675:71:0;;-1:-1:-1;;;;;6713:15:0;;::::1;6675:71;::::0;::::1;7311:51:1::0;-1:-1:-1;;7378:18:1;;;7371:34;6682:13:0;::::1;::::0;-1:-1:-1;6675:29:0::1;::::0;7284:18:1;;6675:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5981:773;5935:819::o:0;12952:171::-;13019:21;13054:12;;13051:65;;13080:24;13093:10;13080:12;:24::i;:::-;12989:134;12952:171::o;8293:335::-;-1:-1:-1;;;;;8386:19:0;;8378:68;;;;-1:-1:-1;;;8378:68:0;;7900:2:1;8378:68:0;;;7882:21:1;7939:2;7919:18;;;7912:30;7978:34;7958:18;;;7951:62;-1:-1:-1;;;8029:18:1;;;8022:34;8073:19;;8378:68:0;7698:400:1;8378:68:0;-1:-1:-1;;;;;8465:21:0;;8457:68;;;;-1:-1:-1;;;8457:68:0;;8305:2:1;8457:68:0;;;8287:21:1;8344:2;8324:18;;;8317:30;8383:34;8363:18;;;8356:62;-1:-1:-1;;;8434:18:1;;;8427:32;8476:19;;8457:68:0;8103:398:1;8457:68:0;-1:-1:-1;;;;;8536:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8588:32;;1361:25:1;;;8588:32:0;;1334:18:1;8588:32:0;;;;;;;;8293:335;;;:::o;8636:3462::-;-1:-1:-1;;;;;8745:25:0;;8737:75;;;;-1:-1:-1;;;8737:75:0;;8708:2:1;8737:75:0;;;8690:21:1;8747:2;8727:18;;;8720:30;8786:34;8766:18;;;8759:62;-1:-1:-1;;;8837:18:1;;;8830:35;8882:19;;8737:75:0;8506:401:1;8737:75:0;-1:-1:-1;;;;;8831:27:0;;8823:75;;;;-1:-1:-1;;;8823:75:0;;9114:2:1;8823:75:0;;;9096:21:1;9153:2;9133:18;;;9126:30;9192:34;9172:18;;;9165:62;-1:-1:-1;;;9243:18:1;;;9236:33;9286:19;;8823:75:0;8912:399:1;8823:75:0;8929:1;8917:9;:13;8909:67;;;;-1:-1:-1;;;8909:67:0;;9518:2:1;8909:67:0;;;9500:21:1;9557:2;9537:18;;;9530:30;9596:34;9576:18;;;9569:62;-1:-1:-1;;;9647:18:1;;;9640:39;9696:19;;8909:67:0;9316:405:1;8909:67:0;8994:11;;-1:-1:-1;;;8994:11:0;;;;8989:187;;-1:-1:-1;;;;;9048:29:0;;;;;;:14;:29;;;;;;;;;:60;;-1:-1:-1;;;;;;9081:27:0;;;;;;:14;:27;;;;;;;;9048:60;9022:142;;;;-1:-1:-1;;;9022:142:0;;9928:2:1;9022:142:0;;;9910:21:1;9967:2;9947:18;;;9940:30;-1:-1:-1;;;9986:18:1;;;9979:50;10046:18;;9022:142:0;9726:344:1;9022:142:0;9192:6;;-1:-1:-1;;;9192:6:0;;;;;:22;;-1:-1:-1;9203:11:0;;-1:-1:-1;;;9203:11:0;;;;9202:12;9192:22;9188:286;;;-1:-1:-1;;;;;9256:22:0;;;;;;:9;:22;;;;;;:37;;9283:9;9256:26;:37::i;:::-;-1:-1:-1;;;;;9231:22:0;;;;;;;:9;:22;;;;;;:62;;;;9335:24;;;;;;;:39;;9364:9;9335:28;:39::i;:::-;-1:-1:-1;;;;;9308:24:0;;;;;;;:9;:24;;;;;;;:66;;;;9394:47;;;;;;;;;;9431:9;1361:25:1;;1349:2;1334:18;;1215:177;9188:286:0;9486:17;9532:113;9641:3;9532:90;9573:15;;9561:9;;:27;9560:61;;9607:14;;9560:61;;;9592:12;;9560:61;9532:9;;:27;:90::i;:::-;:108;;:113::i;:::-;9520:125;;9689:7;2969;2996:6;-1:-1:-1;;;;;2996:6:0;;2931:79;9689:7;-1:-1:-1;;;;;9674:22:0;:11;-1:-1:-1;;;;;9674:22:0;;;:50;;;;-1:-1:-1;2969:7:0;2996:6;-1:-1:-1;;;;;9700:24:0;;;2996:6;;9700:24;;9674:50;9670:1910;;;9778:13;;-1:-1:-1;;;;;9763:28:0;;;9778:13;;9763:28;:90;;;;-1:-1:-1;9837:15:0;;-1:-1:-1;;;;;9812:41:0;;;9837:15;;9812:41;;9763:90;:141;;;;-1:-1:-1;;;;;;9875:29:0;;;;;;:14;:29;;;;;;;;9874:30;9763:141;9741:482;;;9960:12;;9947:9;:25;;9939:63;;;;-1:-1:-1;;;9939:63:0;;10277:2:1;9939:63:0;;;10259:21:1;10316:2;10296:18;;;10289:30;10355:27;10335:18;;;10328:55;10400:18;;9939:63:0;10075:349:1;9939:63:0;10091:14;;10078:9;10051:24;10061:13;-1:-1:-1;;;;;7235:18:0;7208:7;7235:18;;;:9;:18;;;;;;;7142:119;10051:24;:36;;;;:::i;:::-;:54;;10021:154;;;;-1:-1:-1;;;10021:154:0;;10761:2:1;10021:154:0;;;10743:21:1;10800:2;10780:18;;;10773:30;10839:28;10819:18;;;10812:56;10885:18;;10021:154:0;10559:350:1;10021:154:0;10196:9;:11;;;:9;:11;;;:::i;:::-;;;;;;9741:482;10260:13;;-1:-1:-1;;;;;10243:30:0;;;10260:13;;10243:30;;;;:64;;-1:-1:-1;;;;;;10278:29:0;;;;;;:14;:29;;;;;;;;10277:30;10243:64;10239:259;;;10398:14;;10385:9;10358:24;10368:13;-1:-1:-1;;;;;7235:18:0;7208:7;7235:18;;;:9;:18;;;;;;;7142:119;10358:24;:36;;;;:::i;:::-;:54;;10328:154;;;;-1:-1:-1;;;10328:154:0;;10761:2:1;10328:154:0;;;10743:21:1;10800:2;10780:18;;;10773:30;10839:28;10819:18;;;10812:56;10885:18;;10328:154:0;10559:350:1;10328:154:0;10535:13;;-1:-1:-1;;;;;10518:30:0;;;10535:13;;10518:30;:62;;;;-1:-1:-1;;;;;;10552:28:0;;10575:4;10552:28;;10518:62;10514:353;;;10613:238;10847:3;10613:207;10688:16;;10676:9;;:28;10675:122;;10782:15;;10675:122;;;10737:13;;10613:9;;:35;:207::i;:238::-;10601:250;;10514:353;10932:4;10883:28;7235:18;;;:9;:18;;;;;;10993:17;;11048:6;;10969:41;;;;;-1:-1:-1;;;11048:6:0;;;;11047:7;:58;;;;-1:-1:-1;11092:13:0;;-1:-1:-1;;;;;11075:30:0;;;11092:13;;11075:30;11047:58;:90;;;;-1:-1:-1;11126:11:0;;-1:-1:-1;;;11126:11:0;;;;11047:90;:141;;;;;11170:18;;11158:9;;:30;11047:141;:190;;;;-1:-1:-1;;;;;;11210:27:0;;;;;;:14;:27;;;;;;;;11209:28;11047:190;:241;;;;-1:-1:-1;;;;;;11259:29:0;;;;;;:14;:29;;;;;;;;11258:30;11047:241;11025:544;;;11326:8;11323:175;;;11358:120;11401:54;11405:9;11416:38;11420:20;11442:11;;11416:3;:38::i;:::-;11401:3;:54::i;:::-;11358:16;:120::i;:::-;11518:35;11531:21;11518:12;:35::i;:::-;9726:1854;;9670:1910;-1:-1:-1;;;;;11597:27:0;;;;;;:14;:27;;;;;;;;11592:329;;11644:13;;11641:190;;11723:4;11705:24;;;;:9;:24;;;;;;:39;;11734:9;11705:28;:39::i;:::-;11696:4;11678:24;;;;:9;:24;;;;;;;:66;;;;11768:47;;-1:-1:-1;;;;;11768:47:0;;;;;;;11805:9;1361:25:1;;1349:2;1334:18;;1215:177;11768:47:0;;;;;;;;11641:190;-1:-1:-1;;;;;11872:22:0;;;;;;:9;:22;;;;;;:37;;11899:9;11872:26;:37::i;:::-;-1:-1:-1;;;;;11847:22:0;;;;;;:9;:22;;;;;:62;11592:329;11958:54;11987:24;:9;12001;11987:13;:24::i;:::-;-1:-1:-1;;;;;11958:24:0;;;;;;:9;:24;;;;;;;:28;:54::i;:::-;-1:-1:-1;;;;;11931:24:0;;;;;;;:9;:24;;;;;:81;;;;12028:62;;;12065:24;:9;12079;12065:13;:24::i;:::-;12028:62;;1361:25:1;;;1349:2;1334:18;12028:62:0;;;;;;;8726:3372;8636:3462;;;:::o;1733:224::-;1853:7;1889:12;1881:6;;;;1873:29;;;;-1:-1:-1;;;1873:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1913:9:0;1925:5;1929:1;1925;:5;:::i;:::-;1913:17;1733:224;-1:-1:-1;;;;;1733:224:0:o;13301:95::-;13358:13;;:30;;-1:-1:-1;;;;;13358:13:0;;;;:30;;;;;13381:6;;13358:13;:30;:13;:30;13381:6;13358:13;:30;;;;;;;;;;;;;;;;;;;1589:136;1647:7;1674:43;1678:1;1681;1674:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1667:50;1589:136;-1:-1:-1;;;1589:136:0:o;1402:179::-;1460:7;;1492:5;1496:1;1492;:5;:::i;:::-;1480:17;;1521:1;1516;:6;;1508:46;;;;-1:-1:-1;;;1508:46:0;;11389:2:1;1508:46:0;;;11371:21:1;11428:2;11408:18;;;11401:30;11467:29;11447:18;;;11440:57;11514:18;;1508:46:0;11187:351:1;1965:246:0;2023:7;2047:1;2052;2047:6;2043:47;;-1:-1:-1;2077:1:0;2070:8;;2043:47;2100:9;2112:5;2116:1;2112;:5;:::i;:::-;2100:17;-1:-1:-1;2145:1:0;2136:5;2140:1;2100:17;2136:5;:::i;:::-;:10;2128:56;;;;-1:-1:-1;;;2128:56:0;;11967:2:1;2128:56:0;;;11949:21:1;12006:2;11986:18;;;11979:30;12045:34;12025:18;;;12018:62;-1:-1:-1;;;12096:18:1;;;12089:31;12137:19;;2128:56:0;11765:397:1;2219:132:0;2277:7;2304:39;2308:1;2311;2304:39;;;;;;;;;;;;;;;;;:3;:39::i;12106:107::-;12163:7;12195:1;12191;:5;12190:15;;12204:1;12190:15;;;-1:-1:-1;12200:1:0;12106:107;-1:-1:-1;12106:107:0:o;12424:483::-;5521:6;:13;;-1:-1:-1;;;;5521:13:0;-1:-1:-1;;;5521:13:0;;;12526:16:::1;::::0;;12540:1:::1;12526:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12526:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12526:16:0::1;12502:40;;12571:4;12553;12558:1;12553:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12553:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12597:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12597:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12553:7;;12597:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12587:4;12592:1;12587:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12587:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;12662:15:::1;::::0;12630:62:::1;::::0;12647:4:::1;::::0;12662:15:::1;12680:11:::0;12630:8:::1;:62::i;:::-;12703:15;::::0;:196:::1;::::0;-1:-1:-1;;;12703:196:0;;-1:-1:-1;;;;;12703:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;12784:11;;12703:15:::1;::::0;12826:4;;12853::::1;::::0;12873:15:::1;::::0;12703:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5557:6:0;:14;;-1:-1:-1;;;;5557:14:0;;;-1:-1:-1;;;;12424:483:0:o;2359:223::-;2479:7;2514:12;2507:5;2499:28;;;;-1:-1:-1;;;2499:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2538:9:0;2550:5;2554:1;2550;: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:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;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:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;5649:251::-;5719:6;5772:2;5760:9;5751:7;5747:23;5743:32;5740:52;;;5788:1;5785;5778:12;5740:52;5820:9;5814:16;5839:31;5864:5;5839:31;:::i;6826:306::-;6914:6;6922;6930;6983:2;6971:9;6962:7;6958:23;6954:32;6951:52;;;6999:1;6996;6989:12;6951:52;7028:9;7022:16;7012:26;;7078:2;7067:9;7063:18;7057:25;7047:35;;7122:2;7111:9;7107:18;7101:25;7091:35;;6826:306;;;;;:::o;7416:277::-;7483:6;7536:2;7524:9;7515:7;7511:23;7507:32;7504:52;;;7552:1;7549;7542:12;7504:52;7584:9;7578:16;7637:5;7630:13;7623:21;7616:5;7613:32;7603:60;;7659:1;7656;7649:12;10429:125;10494:9;;;10515:10;;;10512:36;;;10528:18;;:::i;10914:135::-;10953:3;10974:17;;;10971:43;;10994:18;;:::i;:::-;-1:-1:-1;11041:1:1;11030:13;;10914:135::o;11054:128::-;11121:9;;;11142:11;;;11139:37;;;11156:18;;:::i;11543:217::-;11583:1;11609;11599:132;;11653:10;11648:3;11644:20;11641:1;11634:31;11688:4;11685:1;11678:15;11716:4;11713:1;11706:15;11599:132;-1:-1:-1;11745:9:1;;11543:217::o;12299:127::-;12360:10;12355:3;12351:20;12348:1;12341:31;12391:4;12388:1;12381:15;12415:4;12412:1;12405:15;12431:980;12693:4;12741:3;12730:9;12726:19;12772:6;12761:9;12754:25;12798:2;12836:6;12831:2;12820:9;12816:18;12809:34;12879:3;12874:2;12863:9;12859:18;12852:31;12903:6;12938;12932:13;12969:6;12961;12954:22;13007:3;12996:9;12992:19;12985:26;;13046:2;13038:6;13034:15;13020:29;;13067:1;13077:195;13091:6;13088:1;13085:13;13077:195;;;13156:13;;-1:-1:-1;;;;;13152:39:1;13140:52;;13247:15;;;;13212:12;;;;13188:1;13106:9;13077:195;;;-1:-1:-1;;;;;;;13328:32:1;;;;13323:2;13308:18;;13301:60;-1:-1:-1;;;13392:3:1;13377:19;13370:35;13289:3;12431:980;-1:-1:-1;;;12431:980:1:o

Swarm Source

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