ETH Price: $2,448.29 (+3.56%)

Token

Binance Intelligence (BI)
 

Overview

Max Total Supply

420,690,000,000 BI

Holders

27

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
5,300,079,932.545072578 BI

Value
$0.00
0x946bdb568626fe7fd3812a4108904eba14975ea0
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:
Meme

Compiler Version
v0.8.23+commit.f704f362

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

/*

https://x.com/binance/status/1800468122006097938

*/

// SPDX-License-Identifier: UNLICENSE

pragma solidity 0.8.23;

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 Meme 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 _holderLastTransferTimestamp;
    mapping (address => bool) private bots;
    address payable private _taxWallet;

    uint256 private _finalBuyTax=23;
    uint256 private _finalSellTax=23;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 420690000000 * 10**_decimals;
    string private constant _name = unicode"Binance Intelligence";
    string private constant _symbol = unicode"BI";

    uint256 public _maxTxAmount =   8413800000 * 10**_decimals;
    uint256 public _maxWalletSize = 8413800000 * 10**_decimals;
    uint256 public _taxSwapThreshold=4200000000 * 10**_decimals;
    uint256 public _maxTaxSwap=8413800000 * 10**_decimals;

    IUniswapV2Router02 private uniswapV2Router;
    address public uniswapV2Pair;
    bool private tradingOpen = false;
    bool private inSwap = false;
    bool private swapEnabled = false;
    uint256 private sellCount = 0;
    uint256 private lastSellBlock = 0;
    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_msgSender()] = 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, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
 
    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);
            
            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(tradingOpen, "Trading not open");
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                taxAmount = amount.mul(_finalBuyTax).div(100);

            }

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul(_finalSellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold) {
                if (block.number > lastSellBlock) {
                    sellCount = 0;
                }
                require(sellCount < 3, "Only 3 sells per block!");
                swapTokensForEth(min(amount, min(contractTokenBalance, _maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
                sellCount++;
                lastSellBlock = block.number;
            }
        }

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

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

    function 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 = _tTotal;
        _maxWalletSize=_tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }

    function addbBot(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }

    function delbBot(address[] memory notbot) public onlyOwner {
      for (uint i = 0; i < notbot.length; i++) {
          bots[notbot[i]] = false;
      }
    }

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

    function openTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;
    }
       
    function reduceFee(uint256 _newBuyFee, uint256 _newSellFee) external onlyOwner() {
      _finalBuyTax=_newBuyFee;
      _finalSellTax=_newSellFee;
    }
  
    receive() external payable {}

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

    function manualSwap() external {
        require(_msgSender()==_taxWallet);
        uint256 tokenBalance=balanceOf(address(this));
        if(tokenBalance>0){
          swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
          sendETHToFee(ethBalance);
        }
    }

}

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":"bots_","type":"address[]"}],"name":"addbBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delbBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newBuyFee","type":"uint256"},{"internalType":"uint256","name":"_newSellFee","type":"uint256"}],"name":"reduceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"resERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052601760078190556008556200001c6009600a62000362565b6200002d906401f580664062000379565b6009556009600a62000040919062000362565b62000051906401f580664062000379565b600a556009600a62000064919062000362565b620000749063fa56ea0062000379565b600b55620000856009600a62000362565b62000096906401f580664062000379565b600c55600e805462ffffff60a01b191690555f600f819055601055348015620000bd575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600680546001600160a01b031916331790556200011e6009600a62000362565b6200012f906461f313f88062000379565b335f908152600160208190526040822092909255600390620001585f546001600160a01b031690565b6001600160a01b0316815260208082019290925260409081015f908120805494151560ff1995861617905530815260039283905290812080549093166001908117909355620001a43390565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff1996871617905560065490911681526003909252902080549091166001179055620001f23390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200022b6009600a62000362565b6200023c906461f313f88062000379565b60405190815260200160405180910390a362000393565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620002a757815f19048211156200028b576200028b62000253565b808516156200029957918102915b93841c93908002906200026c565b509250929050565b5f82620002bf575060016200035c565b81620002cd57505f6200035c565b8160018114620002e65760028114620002f15762000311565b60019150506200035c565b60ff84111562000305576200030562000253565b50506001821b6200035c565b5060208310610133831016604e8410600b841016171562000336575081810a6200035c565b62000342838362000267565b805f190482111562000358576200035862000253565b0290505b92915050565b5f6200037260ff841683620002af565b9392505050565b80820281158282048414176200035c576200035c62000253565b611b0e80620003a15f395ff3fe60806040526004361061013f575f3560e01c806372333356116100b3578063a9059cbb1161006d578063a9059cbb1461038f578063bf474bed146103ae578063c9567bf9146103c3578063dd62ed3e146103d7578063e288aae81461041b578063f60550581461043a575f80fd5b806372333356146102ec578063751039fc1461030b5780637d1db4a51461031f5780638da5cb5b146103345780638f9a55c01461035057806395d89b4114610365575f80fd5b8063313ce56711610104578063313ce5671461021d57806349bd5a5e146102385780634cffe26d1461026f57806351bc3c851461029057806370a08231146102a4578063715018a6146102d8575f80fd5b806306fdde031461014a578063095ea7b3146101985780630faee56f146101c757806318160ddd146101ea57806323b872dd146101fe575f80fd5b3661014657005b5f80fd5b348015610155575f80fd5b5060408051808201909152601481527342696e616e636520496e74656c6c6967656e636560601b60208201525b60405161018f91906115fd565b60405180910390f35b3480156101a3575f80fd5b506101b76101b236600461166d565b61044e565b604051901515815260200161018f565b3480156101d2575f80fd5b506101dc600c5481565b60405190815260200161018f565b3480156101f5575f80fd5b506101dc610464565b348015610209575f80fd5b506101b7610218366004611697565b610485565b348015610228575f80fd5b506040516009815260200161018f565b348015610243575f80fd5b50600e54610257906001600160a01b031681565b6040516001600160a01b03909116815260200161018f565b34801561027a575f80fd5b5061028e6102893660046116e9565b6104ec565b005b34801561029b575f80fd5b5061028e61057d565b3480156102af575f80fd5b506101dc6102be3660046117a9565b6001600160a01b03165f9081526001602052604090205490565b3480156102e3575f80fd5b5061028e6105ca565b3480156102f7575f80fd5b5061028e6103063660046117c4565b61063b565b348015610316575f80fd5b5061028e61066f565b34801561032a575f80fd5b506101dc60095481565b34801561033f575f80fd5b505f546001600160a01b0316610257565b34801561035b575f80fd5b506101dc600a5481565b348015610370575f80fd5b50604080518082019091526002815261424960f01b6020820152610182565b34801561039a575f80fd5b506101b76103a936600461166d565b610727565b3480156103b9575f80fd5b506101dc600b5481565b3480156103ce575f80fd5b5061028e610733565b3480156103e2575f80fd5b506101dc6103f13660046117e4565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b348015610426575f80fd5b5061028e6104353660046116e9565b610add565b348015610445575f80fd5b5061028e610b60565b5f61045a338484610b9c565b5060015b92915050565b5f6104716009600a61190f565b610480906461f313f88061191d565b905090565b5f610491848484610cbf565b6104e284336104dd85604051806060016040528060288152602001611ab1602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611279565b610b9c565b5060019392505050565b5f546001600160a01b0316331461051e5760405162461bcd60e51b815260040161051590611934565b60405180910390fd5b5f5b815181101561057957600160055f84848151811061054057610540611969565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610520565b5050565b6006546001600160a01b0316336001600160a01b03161461059c575f80fd5b305f9081526001602052604090205480156105ba576105ba816112b1565b4780156105795761057981611421565b5f546001600160a01b031633146105f35760405162461bcd60e51b815260040161051590611934565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106645760405162461bcd60e51b815260040161051590611934565b600791909155600855565b5f546001600160a01b031633146106985760405162461bcd60e51b815260040161051590611934565b6106a46009600a61190f565b6106b3906461f313f88061191d565b60099081556106c390600a61190f565b6106d2906461f313f88061191d565b600a9081557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906107059060099061190f565b610714906461f313f88061191d565b60405190815260200160405180910390a1565b5f61045a338484610cbf565b5f546001600160a01b0316331461075c5760405162461bcd60e51b815260040161051590611934565b600e54600160a01b900460ff16156107b65760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610515565b600d80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556108009030906107f16009600a61190f565b6104dd906461f313f88061191d565b600d5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610850573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610874919061197d565b6001600160a01b031663c9c6539630600d5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108d3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f7919061197d565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610941573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610965919061197d565b600e80546001600160a01b039283166001600160a01b0319909116179055600d541663f305d71947306109ac816001600160a01b03165f9081526001602052604090205490565b5f806109bf5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a25573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610a4a9190611998565b5050600e54600d5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610a9f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ac391906119c3565b50600e805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b03163314610b065760405162461bcd60e51b815260040161051590611934565b5f5b8151811015610579575f60055f848481518110610b2757610b27611969565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610b08565b5f546001600160a01b03163314610b895760405162461bcd60e51b815260040161051590611934565b478015610b9957610b9981611421565b50565b6001600160a01b038316610bfe5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610515565b6001600160a01b038216610c5f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610515565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d235760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610515565b6001600160a01b038216610d855760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610515565b5f8111610de65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610515565b5f80546001600160a01b03858116911614801590610e1157505f546001600160a01b03848116911614155b1561113c576001600160a01b0384165f9081526005602052604090205460ff16158015610e5657506001600160a01b0383165f9081526005602052604090205460ff16155b610e5e575f80fd5b600e546001600160a01b038581169116148015610e895750600d546001600160a01b03848116911614155b8015610ead57506001600160a01b0383165f9081526003602052604090205460ff16155b15610fed57600e54600160a01b900460ff16610efe5760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b6044820152606401610515565b600954821115610f505760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610515565b600a5482610f72856001600160a01b03165f9081526001602052604090205490565b610f7c91906119e2565b1115610fca5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610515565b610fea6064610fe46007548561145890919063ffffffff16565b906114dd565b90505b600e546001600160a01b03848116911614801561101357506001600160a01b0384163014155b15611035576110326064610fe46008548561145890919063ffffffff16565b90505b305f90815260016020526040902054600e54600160a81b900460ff1615801561106b5750600e546001600160a01b038581169116145b80156110805750600e54600160b01b900460ff165b801561108d5750600b5481115b1561113a576010544311156110a1575f600f555b6003600f54106110f35760405162461bcd60e51b815260206004820152601760248201527f4f6e6c7920332073656c6c732070657220626c6f636b210000000000000000006044820152606401610515565b61111061110b8461110684600c5461151e565b61151e565b6112b1565b4780156111205761112047611421565b600f8054905f61112f836119f5565b909155505043601055505b505b80156111b457305f9081526001602052604090205461115b9082611532565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111ab9085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546111d69083611590565b6001600160a01b0385165f908152600160205260409020556112196111fb8383611590565b6001600160a01b0385165f9081526001602052604090205490611532565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6112628585611590565b60405190815260200160405180910390a350505050565b5f818484111561129c5760405162461bcd60e51b815260040161051591906115fd565b505f6112a88486611a0d565b95945050505050565b600e805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106112f7576112f7611969565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561134e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611372919061197d565b8160018151811061138557611385611969565b6001600160a01b039283166020918202929092010152600d546113ab9130911684610b9c565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac947906113e39085905f90869030904290600401611a20565b5f604051808303815f87803b1580156113fa575f80fd5b505af115801561140c573d5f803e3d5ffd5b5050600e805460ff60a81b1916905550505050565b6006546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015610579573d5f803e3d5ffd5b5f825f0361146757505f61045e565b5f611472838561191d565b90508261147f8583611a91565b146114d65760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610515565b9392505050565b5f6114d683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115d1565b5f81831161152c57826114d6565b50919050565b5f8061153e83856119e2565b9050838110156114d65760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610515565b5f6114d683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611279565b5f81836115f15760405162461bcd60e51b815260040161051591906115fd565b505f6112a88486611a91565b5f602080835283518060208501525f5b818110156116295785810183015185820160400152820161160d565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610b99575f80fd5b803561166881611649565b919050565b5f806040838503121561167e575f80fd5b823561168981611649565b946020939093013593505050565b5f805f606084860312156116a9575f80fd5b83356116b481611649565b925060208401356116c481611649565b929592945050506040919091013590565b634e487b7160e01b5f52604160045260245ffd5b5f60208083850312156116fa575f80fd5b823567ffffffffffffffff80821115611711575f80fd5b818501915085601f830112611724575f80fd5b813581811115611736576117366116d5565b8060051b604051601f19603f8301168101818110858211171561175b5761175b6116d5565b604052918252848201925083810185019188831115611778575f80fd5b938501935b8285101561179d5761178e8561165d565b8452938501939285019261177d565b98975050505050505050565b5f602082840312156117b9575f80fd5b81356114d681611649565b5f80604083850312156117d5575f80fd5b50508035926020909101359150565b5f80604083850312156117f5575f80fd5b823561180081611649565b9150602083013561181081611649565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561186957815f190482111561184f5761184f61181b565b8085161561185c57918102915b93841c9390800290611834565b509250929050565b5f8261187f5750600161045e565b8161188b57505f61045e565b81600181146118a157600281146118ab576118c7565b600191505061045e565b60ff8411156118bc576118bc61181b565b50506001821b61045e565b5060208310610133831016604e8410600b84101617156118ea575081810a61045e565b6118f4838361182f565b805f19048211156119075761190761181b565b029392505050565b5f6114d660ff841683611871565b808202811582820484141761045e5761045e61181b565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b5f6020828403121561198d575f80fd5b81516114d681611649565b5f805f606084860312156119aa575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156119d3575f80fd5b815180151581146114d6575f80fd5b8082018082111561045e5761045e61181b565b5f60018201611a0657611a0661181b565b5060010190565b8181038181111561045e5761045e61181b565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611a705784516001600160a01b031683529383019391830191600101611a4b565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82611aab57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a6847e6f8b2f863c81559a431ee8768860e77843407994752336b330280d66e764736f6c63430008170033

Deployed Bytecode

0x60806040526004361061013f575f3560e01c806372333356116100b3578063a9059cbb1161006d578063a9059cbb1461038f578063bf474bed146103ae578063c9567bf9146103c3578063dd62ed3e146103d7578063e288aae81461041b578063f60550581461043a575f80fd5b806372333356146102ec578063751039fc1461030b5780637d1db4a51461031f5780638da5cb5b146103345780638f9a55c01461035057806395d89b4114610365575f80fd5b8063313ce56711610104578063313ce5671461021d57806349bd5a5e146102385780634cffe26d1461026f57806351bc3c851461029057806370a08231146102a4578063715018a6146102d8575f80fd5b806306fdde031461014a578063095ea7b3146101985780630faee56f146101c757806318160ddd146101ea57806323b872dd146101fe575f80fd5b3661014657005b5f80fd5b348015610155575f80fd5b5060408051808201909152601481527342696e616e636520496e74656c6c6967656e636560601b60208201525b60405161018f91906115fd565b60405180910390f35b3480156101a3575f80fd5b506101b76101b236600461166d565b61044e565b604051901515815260200161018f565b3480156101d2575f80fd5b506101dc600c5481565b60405190815260200161018f565b3480156101f5575f80fd5b506101dc610464565b348015610209575f80fd5b506101b7610218366004611697565b610485565b348015610228575f80fd5b506040516009815260200161018f565b348015610243575f80fd5b50600e54610257906001600160a01b031681565b6040516001600160a01b03909116815260200161018f565b34801561027a575f80fd5b5061028e6102893660046116e9565b6104ec565b005b34801561029b575f80fd5b5061028e61057d565b3480156102af575f80fd5b506101dc6102be3660046117a9565b6001600160a01b03165f9081526001602052604090205490565b3480156102e3575f80fd5b5061028e6105ca565b3480156102f7575f80fd5b5061028e6103063660046117c4565b61063b565b348015610316575f80fd5b5061028e61066f565b34801561032a575f80fd5b506101dc60095481565b34801561033f575f80fd5b505f546001600160a01b0316610257565b34801561035b575f80fd5b506101dc600a5481565b348015610370575f80fd5b50604080518082019091526002815261424960f01b6020820152610182565b34801561039a575f80fd5b506101b76103a936600461166d565b610727565b3480156103b9575f80fd5b506101dc600b5481565b3480156103ce575f80fd5b5061028e610733565b3480156103e2575f80fd5b506101dc6103f13660046117e4565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b348015610426575f80fd5b5061028e6104353660046116e9565b610add565b348015610445575f80fd5b5061028e610b60565b5f61045a338484610b9c565b5060015b92915050565b5f6104716009600a61190f565b610480906461f313f88061191d565b905090565b5f610491848484610cbf565b6104e284336104dd85604051806060016040528060288152602001611ab1602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611279565b610b9c565b5060019392505050565b5f546001600160a01b0316331461051e5760405162461bcd60e51b815260040161051590611934565b60405180910390fd5b5f5b815181101561057957600160055f84848151811061054057610540611969565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610520565b5050565b6006546001600160a01b0316336001600160a01b03161461059c575f80fd5b305f9081526001602052604090205480156105ba576105ba816112b1565b4780156105795761057981611421565b5f546001600160a01b031633146105f35760405162461bcd60e51b815260040161051590611934565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106645760405162461bcd60e51b815260040161051590611934565b600791909155600855565b5f546001600160a01b031633146106985760405162461bcd60e51b815260040161051590611934565b6106a46009600a61190f565b6106b3906461f313f88061191d565b60099081556106c390600a61190f565b6106d2906461f313f88061191d565b600a9081557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906107059060099061190f565b610714906461f313f88061191d565b60405190815260200160405180910390a1565b5f61045a338484610cbf565b5f546001600160a01b0316331461075c5760405162461bcd60e51b815260040161051590611934565b600e54600160a01b900460ff16156107b65760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610515565b600d80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556108009030906107f16009600a61190f565b6104dd906461f313f88061191d565b600d5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610850573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610874919061197d565b6001600160a01b031663c9c6539630600d5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108d3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f7919061197d565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610941573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610965919061197d565b600e80546001600160a01b039283166001600160a01b0319909116179055600d541663f305d71947306109ac816001600160a01b03165f9081526001602052604090205490565b5f806109bf5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a25573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610a4a9190611998565b5050600e54600d5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610a9f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ac391906119c3565b50600e805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b03163314610b065760405162461bcd60e51b815260040161051590611934565b5f5b8151811015610579575f60055f848481518110610b2757610b27611969565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610b08565b5f546001600160a01b03163314610b895760405162461bcd60e51b815260040161051590611934565b478015610b9957610b9981611421565b50565b6001600160a01b038316610bfe5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610515565b6001600160a01b038216610c5f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610515565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d235760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610515565b6001600160a01b038216610d855760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610515565b5f8111610de65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610515565b5f80546001600160a01b03858116911614801590610e1157505f546001600160a01b03848116911614155b1561113c576001600160a01b0384165f9081526005602052604090205460ff16158015610e5657506001600160a01b0383165f9081526005602052604090205460ff16155b610e5e575f80fd5b600e546001600160a01b038581169116148015610e895750600d546001600160a01b03848116911614155b8015610ead57506001600160a01b0383165f9081526003602052604090205460ff16155b15610fed57600e54600160a01b900460ff16610efe5760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b6044820152606401610515565b600954821115610f505760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610515565b600a5482610f72856001600160a01b03165f9081526001602052604090205490565b610f7c91906119e2565b1115610fca5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610515565b610fea6064610fe46007548561145890919063ffffffff16565b906114dd565b90505b600e546001600160a01b03848116911614801561101357506001600160a01b0384163014155b15611035576110326064610fe46008548561145890919063ffffffff16565b90505b305f90815260016020526040902054600e54600160a81b900460ff1615801561106b5750600e546001600160a01b038581169116145b80156110805750600e54600160b01b900460ff165b801561108d5750600b5481115b1561113a576010544311156110a1575f600f555b6003600f54106110f35760405162461bcd60e51b815260206004820152601760248201527f4f6e6c7920332073656c6c732070657220626c6f636b210000000000000000006044820152606401610515565b61111061110b8461110684600c5461151e565b61151e565b6112b1565b4780156111205761112047611421565b600f8054905f61112f836119f5565b909155505043601055505b505b80156111b457305f9081526001602052604090205461115b9082611532565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111ab9085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546111d69083611590565b6001600160a01b0385165f908152600160205260409020556112196111fb8383611590565b6001600160a01b0385165f9081526001602052604090205490611532565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6112628585611590565b60405190815260200160405180910390a350505050565b5f818484111561129c5760405162461bcd60e51b815260040161051591906115fd565b505f6112a88486611a0d565b95945050505050565b600e805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106112f7576112f7611969565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561134e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611372919061197d565b8160018151811061138557611385611969565b6001600160a01b039283166020918202929092010152600d546113ab9130911684610b9c565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac947906113e39085905f90869030904290600401611a20565b5f604051808303815f87803b1580156113fa575f80fd5b505af115801561140c573d5f803e3d5ffd5b5050600e805460ff60a81b1916905550505050565b6006546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015610579573d5f803e3d5ffd5b5f825f0361146757505f61045e565b5f611472838561191d565b90508261147f8583611a91565b146114d65760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610515565b9392505050565b5f6114d683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115d1565b5f81831161152c57826114d6565b50919050565b5f8061153e83856119e2565b9050838110156114d65760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610515565b5f6114d683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611279565b5f81836115f15760405162461bcd60e51b815260040161051591906115fd565b505f6112a88486611a91565b5f602080835283518060208501525f5b818110156116295785810183015185820160400152820161160d565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610b99575f80fd5b803561166881611649565b919050565b5f806040838503121561167e575f80fd5b823561168981611649565b946020939093013593505050565b5f805f606084860312156116a9575f80fd5b83356116b481611649565b925060208401356116c481611649565b929592945050506040919091013590565b634e487b7160e01b5f52604160045260245ffd5b5f60208083850312156116fa575f80fd5b823567ffffffffffffffff80821115611711575f80fd5b818501915085601f830112611724575f80fd5b813581811115611736576117366116d5565b8060051b604051601f19603f8301168101818110858211171561175b5761175b6116d5565b604052918252848201925083810185019188831115611778575f80fd5b938501935b8285101561179d5761178e8561165d565b8452938501939285019261177d565b98975050505050505050565b5f602082840312156117b9575f80fd5b81356114d681611649565b5f80604083850312156117d5575f80fd5b50508035926020909101359150565b5f80604083850312156117f5575f80fd5b823561180081611649565b9150602083013561181081611649565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561186957815f190482111561184f5761184f61181b565b8085161561185c57918102915b93841c9390800290611834565b509250929050565b5f8261187f5750600161045e565b8161188b57505f61045e565b81600181146118a157600281146118ab576118c7565b600191505061045e565b60ff8411156118bc576118bc61181b565b50506001821b61045e565b5060208310610133831016604e8410600b84101617156118ea575081810a61045e565b6118f4838361182f565b805f19048211156119075761190761181b565b029392505050565b5f6114d660ff841683611871565b808202811582820484141761045e5761045e61181b565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b5f6020828403121561198d575f80fd5b81516114d681611649565b5f805f606084860312156119aa575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156119d3575f80fd5b815180151581146114d6575f80fd5b8082018082111561045e5761045e61181b565b5f60018201611a0657611a0661181b565b5060010190565b8181038181111561045e5761045e61181b565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611a705784516001600160a01b031683529383019391830191600101611a4b565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82611aab57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a6847e6f8b2f863c81559a431ee8768860e77843407994752336b330280d66e764736f6c63430008170033

Deployed Bytecode Sourcemap

3543:8202:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5337:83;;;;;;;;;;-1:-1:-1;5407:5:0;;;;;;;;;;;;-1:-1:-1;;;5407:5:0;;;;5337:83;;;;;;;:::i;:::-;;;;;;;;6170:161;;;;;;;;;;-1:-1:-1;6170:161:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;6170:161:0;1162:187:1;4482:53:0;;;;;;;;;;;;;;;;;;;1500:25:1;;;1488:2;1473:18;4482:53:0;1354:177:1;5614:95:0;;;;;;;;;;;;;:::i;6339:313::-;;;;;;;;;;-1:-1:-1;6339:313:0;;;;;:::i;:::-;;:::i;5523:83::-;;;;;;;;;;-1:-1:-1;5523:83:0;;4086:1;2139:36:1;;2127:2;2112:18;5523:83:0;1997:184:1;4593:28:0;;;;;;;;;;-1:-1:-1;4593:28:0;;;;-1:-1:-1;;;;;4593:28:0;;;;;;-1:-1:-1;;;;;2350:32:1;;;2332:51;;2320:2;2305:18;4593:28:0;2186:203:1;9881:164:0;;;;;;;;;;-1:-1:-1;9881:164:0;;;;;:::i;:::-;;:::i;:::-;;11392:348;;;;;;;;;;;;;:::i;5717:119::-;;;;;;;;;;-1:-1:-1;5717:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5810:18:0;5783:7;5810:18;;;:9;:18;;;;;;;5717:119;2624:148;;;;;;;;;;;;;:::i;11009:155::-;;;;;;;;;;-1:-1:-1;11009:155:0;;;;;:::i;:::-;;:::i;9714:159::-;;;;;;;;;;;;;:::i;4286:58::-;;;;;;;;;;;;;;;;2410:79;;;;;;;;;;-1:-1:-1;2448:7:0;2475:6;-1:-1:-1;;;;;2475:6:0;2410:79;;4351:58;;;;;;;;;;;;;;;;5428:87;;;;;;;;;;-1:-1:-1;5500:7:0;;;;;;;;;;;;-1:-1:-1;;;5500:7:0;;;;5428:87;;5844:167;;;;;;;;;;-1:-1:-1;5844:167:0;;;;;:::i;:::-;;:::i;4416:59::-;;;;;;;;;;;;;;;;10323:671;;;;;;;;;;;;;:::i;6019:143::-;;;;;;;;;;-1:-1:-1;6019:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6127:18:0;;;6100:7;6127:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6019:143;10053:162;;;;;;;;;;-1:-1:-1;10053:162:0;;;;;:::i;:::-;;:::i;11211:173::-;;;;;;;;;;;;;:::i;6170:161::-;6245:4;6262:39;245:10;6285:7;6294:6;6262:8;:39::i;:::-;-1:-1:-1;6319:4:0;6170:161;;;;;:::o;5614:95::-;5667:7;4144:13;4086:1;4144:2;:13;:::i;:::-;4129:28;;:12;:28;:::i;:::-;5687:14;;5614:95;:::o;6339:313::-;6437:4;6454:36;6464:6;6472:9;6483:6;6454:9;:36::i;:::-;6501:121;6510:6;245:10;6532:89;6570:6;6532:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6532:19:0;;;;;;:11;:19;;;;;;;;245:10;6532:33;;;;;;;;;;:37;:89::i;:::-;6501:8;:121::i;:::-;-1:-1:-1;6640:4:0;6339:313;;;;;:::o;9881:164::-;2537:6;;-1:-1:-1;;;;;2537:6:0;245:10;2537:22;2529:67;;;;-1:-1:-1;;;2529:67:0;;;;;;;:::i;:::-;;;;;;;;;9955:6:::1;9950:88;9971:5;:12;9967:1;:16;9950:88;;;10022:4;10005;:14;10010:5;10016:1;10010:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;10005:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;10005:14:0;:21;;-1:-1:-1;;10005:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;9985:3:0::1;9950:88;;;;9881:164:::0;:::o;11392:348::-;11456:10;;-1:-1:-1;;;;;11456:10:0;245;-1:-1:-1;;;;;11442:24:0;;11434:33;;;;;;11517:4;11478:20;5810:18;;;:9;:18;;;;;;11537:14;;11534:73;;11565:30;11582:12;11565:16;:30::i;:::-;11636:21;11671:12;;11668:65;;11697:24;11710:10;11697:12;:24::i;2624:148::-;2537:6;;-1:-1:-1;;;;;2537:6:0;245:10;2537:22;2529:67;;;;-1:-1:-1;;;2529:67:0;;;;;;;:::i;:::-;2731:1:::1;2715:6:::0;;2694:40:::1;::::0;-1:-1:-1;;;;;2715:6:0;;::::1;::::0;2694:40:::1;::::0;2731:1;;2694:40:::1;2762:1;2745:19:::0;;-1:-1:-1;;;;;;2745:19:0::1;::::0;;2624:148::o;11009:155::-;2537:6;;-1:-1:-1;;;;;2537:6:0;245:10;2537:22;2529:67;;;;-1:-1:-1;;;2529:67:0;;;;;;;:::i;:::-;11099:12:::1;:23:::0;;;;11131:13:::1;:25:::0;11009:155::o;9714:159::-;2537:6;;-1:-1:-1;;;;;2537:6:0;245:10;2537:22;2529:67;;;;-1:-1:-1;;;2529:67:0;;;;;;;:::i;:::-;4144:13:::1;4086:1;4144:2;:13;:::i;:::-;4129:28;::::0;:12:::1;:28;:::i;:::-;9767:12;:22:::0;;;4144:13:::1;::::0;:2:::1;:13;:::i;:::-;4129:28;::::0;:12:::1;:28;:::i;:::-;9800:14;:22:::0;;;9838:27:::1;::::0;4144:13:::1;::::0;4086:1:::1;::::0;4144:13:::1;:::i;:::-;4129:28;::::0;:12:::1;:28;:::i;:::-;9838:27;::::0;1500:25:1;;;1488:2;1473:18;9838:27:0::1;;;;;;;9714:159::o:0;5844:167::-;5922:4;5939:42;245:10;5963:9;5974:6;5939:9;:42::i;10323:671::-;2537:6;;-1:-1:-1;;;;;2537:6:0;245:10;2537:22;2529:67;;;;-1:-1:-1;;;2529:67:0;;;;;;;:::i;:::-;10387:11:::1;::::0;-1:-1:-1;;;10387:11:0;::::1;;;10386:12;10378:47;;;::::0;-1:-1:-1;;;10378:47:0;;6927:2:1;10378:47:0::1;::::0;::::1;6909:21:1::0;6966:2;6946:18;;;6939:30;7005:25;6985:18;;;6978:53;7048:18;;10378:47:0::1;6725:347:1::0;10378:47:0::1;10436:15;:80:::0;;-1:-1:-1;;;;;;10436:80:0::1;10473:42;10436:80:::0;;::::1;::::0;;;10527:58:::1;::::0;10544:4:::1;::::0;4144:13:::1;4086:1;4144:2;:13;:::i;:::-;4129:28;::::0;:12:::1;:28;:::i;10527:58::-;10630:15;;;;;;;;;-1:-1:-1::0;;;;;10630:15:0::1;-1:-1:-1::0;;;;;10630:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10612:55:0::1;;10676:4;10683:15;;;;;;;;;-1:-1:-1::0;;;;;10683:15:0::1;-1:-1:-1::0;;;;;10683:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10612:94;::::0;-1:-1:-1;;;;;;10612:94:0::1;::::0;;;;;;-1:-1:-1;;;;;7563:15:1;;;10612:94:0::1;::::0;::::1;7545:34:1::0;7615:15;;7595:18;;;7588:43;7480:18;;10612:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10596:13;:110:::0;;-1:-1:-1;;;;;10596:110:0;;::::1;-1:-1:-1::0;;;;;;10596:110:0;;::::1;;::::0;;10717:15:::1;::::0;::::1;:31;10756:21;10787:4;10793:24;10787:4:::0;-1:-1:-1;;;;;5810:18:0;5783:7;5810:18;;;:9;:18;;;;;;;5717:119;10793:24:::1;10818:1;10820::::0;10822:7:::1;2448::::0;2475:6;-1:-1:-1;;;;;2475:6:0;;2410:79;10822:7:::1;10717:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10717:129:0;;;-1:-1:-1;;;;;8001:15:1;;;10717:129:0::1;::::0;::::1;7983:34:1::0;8033:18;;;8026:34;;;;8076:18;;;8069:34;;;;8119:18;;;8112:34;8183:15;;;8162:19;;;8155:44;10830:15:0::1;8215:19:1::0;;;8208:35;7917:19;;10717:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10864:13:0::1;::::0;10895:15:::1;::::0;10857:71:::1;::::0;-1:-1:-1;;;10857:71:0;;-1:-1:-1;;;;;10895:15:0;;::::1;10857:71;::::0;::::1;8739:51:1::0;-1:-1:-1;;8806:18:1;;;8799:34;10864:13:0;::::1;::::0;-1:-1:-1;10857:29:0::1;::::0;8712:18:1;;10857:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;10939:11:0::1;:18:::0;;-1:-1:-1;;;;10968:18:0;-1:-1:-1;;;10968:18:0;;;10323:671::o;10053:162::-;2537:6;;-1:-1:-1;;;;;2537:6:0;245:10;2537:22;2529:67;;;;-1:-1:-1;;;2529:67:0;;;;;;;:::i;:::-;10126:6:::1;10121:87;10142:6;:13;10138:1;:17;10121:87;;;10193:5;10175:4;:15;10180:6;10187:1;10180:9;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;10175:15:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;10175:15:0;:23;;-1:-1:-1;;10175:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;10157:3:0::1;10121:87;;11211:173:::0;2537:6;;-1:-1:-1;;;;;2537:6:0;245:10;2537:22;2529:67;;;;-1:-1:-1;;;2529:67:0;;;;;;;:::i;:::-;11280:21:::1;11315:12:::0;;11312:65:::1;;11341:24;11354:10;11341:12;:24::i;:::-;11250:134;11211:173::o:0;6660:335::-;-1:-1:-1;;;;;6753:19:0;;6745:68;;;;-1:-1:-1;;;6745:68:0;;9328:2:1;6745:68:0;;;9310:21:1;9367:2;9347:18;;;9340:30;9406:34;9386:18;;;9379:62;-1:-1:-1;;;9457:18:1;;;9450:34;9501:19;;6745:68:0;9126:400:1;6745:68:0;-1:-1:-1;;;;;6832:21:0;;6824:68;;;;-1:-1:-1;;;6824:68:0;;9733:2:1;6824:68:0;;;9715:21:1;9772:2;9752:18;;;9745:30;9811:34;9791:18;;;9784:62;-1:-1:-1;;;9862:18:1;;;9855:32;9904:19;;6824:68:0;9531:398:1;6824:68:0;-1:-1:-1;;;;;6903:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6955:32;;1500:25:1;;;6955:32:0;;1473:18:1;6955:32:0;;;;;;;6660:335;;;:::o;7004:2105::-;-1:-1:-1;;;;;7092:18:0;;7084:68;;;;-1:-1:-1;;;7084:68:0;;10136:2:1;7084:68:0;;;10118:21:1;10175:2;10155:18;;;10148:30;10214:34;10194:18;;;10187:62;-1:-1:-1;;;10265:18:1;;;10258:35;10310:19;;7084:68:0;9934:401:1;7084:68:0;-1:-1:-1;;;;;7171:16:0;;7163:64;;;;-1:-1:-1;;;7163:64:0;;10542:2:1;7163:64:0;;;10524:21:1;10581:2;10561:18;;;10554:30;10620:34;10600:18;;;10593:62;-1:-1:-1;;;10671:18:1;;;10664:33;10714:19;;7163:64:0;10340:399:1;7163:64:0;7255:1;7246:6;:10;7238:64;;;;-1:-1:-1;;;7238:64:0;;10946:2:1;7238:64:0;;;10928:21:1;10985:2;10965:18;;;10958:30;11024:34;11004:18;;;10997:62;-1:-1:-1;;;11075:18:1;;;11068:39;11124:19;;7238:64:0;10744:405:1;7238:64:0;7313:17;2475:6;;-1:-1:-1;;;;;7347:15:0;;;2475:6;;7347:15;;;;:32;;-1:-1:-1;2448:7:0;2475:6;-1:-1:-1;;;;;7366:13:0;;;2475:6;;7366:13;;7347:32;7343:1410;;;-1:-1:-1;;;;;7405:10:0;;;;;;:4;:10;;;;;;;;7404:11;:24;;;;-1:-1:-1;;;;;;7420:8:0;;;;;;:4;:8;;;;;;;;7419:9;7404:24;7396:33;;;;;;7470:13;;-1:-1:-1;;;;;7462:21:0;;;7470:13;;7462:21;:55;;;;-1:-1:-1;7501:15:0;;-1:-1:-1;;;;;7487:30:0;;;7501:15;;7487:30;;7462:55;:83;;;;-1:-1:-1;;;;;;7523:22:0;;;;;;:18;:22;;;;;;;;7521:24;7462:83;7458:408;;;7575:11;;-1:-1:-1;;;7575:11:0;;;;7567:40;;;;-1:-1:-1;;;7567:40:0;;11356:2:1;7567:40:0;;;11338:21:1;11395:2;11375:18;;;11368:30;-1:-1:-1;;;11414:18:1;;;11407:46;11470:18;;7567:40:0;11154:340:1;7567:40:0;7644:12;;7634:6;:22;;7626:60;;;;-1:-1:-1;;;7626:60:0;;11701:2:1;7626:60:0;;;11683:21:1;11740:2;11720:18;;;11713:30;11779:27;11759:18;;;11752:55;11824:18;;7626:60:0;11499:349:1;7626:60:0;7739:14;;7729:6;7713:13;7723:2;-1:-1:-1;;;;;5810:18:0;5783:7;5810:18;;;:9;:18;;;;;;;5717:119;7713:13;:22;;;;:::i;:::-;:40;;7705:79;;;;-1:-1:-1;;;7705:79:0;;12185:2:1;7705:79:0;;;12167:21:1;12224:2;12204:18;;;12197:30;12263:28;12243:18;;;12236:56;12309:18;;7705:79:0;11983:350:1;7705:79:0;7815:33;7844:3;7815:24;7826:12;;7815:6;:10;;:24;;;;:::i;:::-;:28;;:33::i;:::-;7803:45;;7458:408;7891:13;;-1:-1:-1;;;;;7885:19:0;;;7891:13;;7885:19;:43;;;;-1:-1:-1;;;;;;7908:20:0;;7923:4;7908:20;;7885:43;7882:129;;;7961:34;7991:3;7961:25;7972:13;;7961:6;:10;;:25;;;;:::i;:34::-;7949:46;;7882:129;8076:4;8027:28;5810:18;;;:9;:18;;;;;;8102:6;;-1:-1:-1;;;8102:6:0;;;;8101:7;:30;;;;-1:-1:-1;8118:13:0;;-1:-1:-1;;;;;8112:19:0;;;8118:13;;8112:19;8101:30;:45;;;;-1:-1:-1;8135:11:0;;-1:-1:-1;;;8135:11:0;;;;8101:45;:89;;;;;8173:17;;8150:20;:40;8101:89;8097:645;;;8230:13;;8215:12;:28;8211:90;;;8280:1;8268:9;:13;8211:90;8339:1;8327:9;;:13;8319:49;;;;-1:-1:-1;;;8319:49:0;;12540:2:1;8319:49:0;;;12522:21:1;12579:2;12559:18;;;12552:30;12618:25;12598:18;;;12591:53;12661:18;;8319:49:0;12338:347:1;8319:49:0;8387:69;8404:51;8408:6;8416:38;8420:20;8442:11;;8416:3;:38::i;:::-;8404:3;:51::i;:::-;8387:16;:69::i;:::-;8504:21;8548:22;;8544:106;;8595:35;8608:21;8595:12;:35::i;:::-;8668:9;:11;;;:9;:11;;;:::i;:::-;;;;-1:-1:-1;;8714:12:0;8698:13;:28;-1:-1:-1;8097:645:0;7381:1372;7343:1410;8768:11;;8765:161;;8836:4;8818:24;;;;:9;:24;;;;;;:39;;8847:9;8818:28;:39::i;:::-;8811:4;8793:24;;;;:9;:24;;;;;;;:64;;;;8875:39;;-1:-1:-1;;;;;8875:39:0;;;;;;;8904:9;1500:25:1;;1488:2;1473:18;;1354:177;8875:39:0;;;;;;;;8765:161;-1:-1:-1;;;;;8952:15:0;;;;;;:9;:15;;;;;;:27;;8972:6;8952:19;:27::i;:::-;-1:-1:-1;;;;;8936:15:0;;;;;;:9;:15;;;;;:43;9004:40;9022:21;:6;9033:9;9022:10;:21::i;:::-;-1:-1:-1;;;;;9004:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;8990:13:0;;;;;;;:9;:13;;;;;:54;;;;9060:41;;;9079:21;:6;9090:9;9079:10;:21::i;:::-;9060:41;;1500:25:1;;;1488:2;1473:18;9060:41:0;;;;;;;7073:2036;7004:2105;;;:::o;1302:190::-;1388:7;1424:12;1416:6;;;;1408:29;;;;-1:-1:-1;;;1408:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1448:9:0;1460:5;1464:1;1460;:5;:::i;:::-;1448:17;1302:190;-1:-1:-1;;;;;1302:190:0:o;9223:483::-;4898:6;:13;;-1:-1:-1;;;;4898:13:0;-1:-1:-1;;;4898:13:0;;;9325:16:::1;::::0;;9339:1:::1;9325:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9325:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9325:16:0::1;9301:40;;9370:4;9352;9357:1;9352:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9352:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9396:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9396:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9352:7;;9396:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9386:4;9391:1;9386:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9386:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9461:15:::1;::::0;9429:62:::1;::::0;9446:4:::1;::::0;9461:15:::1;9479:11:::0;9429:8:::1;:62::i;:::-;9502:15;::::0;:196:::1;::::0;-1:-1:-1;;;9502:196:0;;-1:-1:-1;;;;;9502:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9583:11;;9502:15:::1;::::0;9625:4;;9652::::1;::::0;9672:15:::1;::::0;9502:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4934:6:0;:14;;-1:-1:-1;;;;4934:14:0;;;-1:-1:-1;;;;9223:483:0:o;10223:92::-;10280:10;;:27;;-1:-1:-1;;;;;10280:10:0;;;;:27;;;;;10300:6;;10280:10;:27;:10;:27;10300:6;10280:10;:27;;;;;;;;;;;;;;;;;;;1500:246;1558:7;1582:1;1587;1582:6;1578:47;;-1:-1:-1;1612:1:0;1605:8;;1578:47;1635:9;1647:5;1651:1;1647;:5;:::i;:::-;1635:17;-1:-1:-1;1680:1:0;1671:5;1675:1;1635:17;1671:5;:::i;:::-;:10;1663:56;;;;-1:-1:-1;;;1663:56:0;;14372:2:1;1663:56:0;;;14354:21:1;14411:2;14391:18;;;14384:30;14450:34;14430:18;;;14423:62;-1:-1:-1;;;14501:18:1;;;14494:31;14542:19;;1663:56:0;14170:397:1;1663:56:0;1737:1;1500:246;-1:-1:-1;;;1500:246:0:o;1754:132::-;1812:7;1839:39;1843:1;1846;1839:39;;;;;;;;;;;;;;;;;:3;:39::i;9117:98::-;9174:7;9201:1;9199;:3;9198:9;;9206:1;9198:9;;;-1:-1:-1;9204:1:0;9117:98;-1:-1:-1;9117:98:0:o;971:179::-;1029:7;;1061:5;1065:1;1061;:5;:::i;:::-;1049:17;;1090:1;1085;:6;;1077:46;;;;-1:-1:-1;;;1077:46:0;;14774:2:1;1077:46:0;;;14756:21:1;14813:2;14793:18;;;14786:30;14852:29;14832:18;;;14825:57;14899:18;;1077:46:0;14572:351:1;1158:136:0;1216:7;1243:43;1247:1;1250;1243:43;;;;;;;;;;;;;;;;;:3;:43::i;1894:189::-;1980:7;2015:12;2008:5;2000:28;;;;-1:-1:-1;;;2000:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2039:9:0;2051:5;2055:1;2051;: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:134;771:20;;800:31;771:20;800:31;:::i;:::-;703:134;;;:::o;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;1536:456::-;1613:6;1621;1629;1682:2;1670:9;1661:7;1657:23;1653:32;1650:52;;;1698:1;1695;1688:12;1650:52;1737:9;1724:23;1756:31;1781:5;1756:31;:::i;:::-;1806:5;-1:-1:-1;1863:2:1;1848:18;;1835:32;1876:33;1835:32;1876:33;:::i;:::-;1536:456;;1928:7;;-1:-1:-1;;;1982:2:1;1967:18;;;;1954:32;;1536:456::o;2394:127::-;2455:10;2450:3;2446:20;2443:1;2436:31;2486:4;2483:1;2476:15;2510:4;2507:1;2500:15;2526:1121;2610:6;2641:2;2684;2672:9;2663:7;2659:23;2655:32;2652:52;;;2700:1;2697;2690:12;2652:52;2740:9;2727:23;2769:18;2810:2;2802:6;2799:14;2796:34;;;2826:1;2823;2816:12;2796:34;2864:6;2853:9;2849:22;2839:32;;2909:7;2902:4;2898:2;2894:13;2890:27;2880:55;;2931:1;2928;2921:12;2880:55;2967:2;2954:16;2989:2;2985;2982:10;2979:36;;;2995:18;;:::i;:::-;3041:2;3038:1;3034:10;3073:2;3067:9;3136:2;3132:7;3127:2;3123;3119:11;3115:25;3107:6;3103:38;3191:6;3179:10;3176:22;3171:2;3159:10;3156:18;3153:46;3150:72;;;3202:18;;:::i;:::-;3238:2;3231:22;3288:18;;;3322:15;;;;-1:-1:-1;3364:11:1;;;3360:20;;;3392:19;;;3389:39;;;3424:1;3421;3414:12;3389:39;3448:11;;;;3468:148;3484:6;3479:3;3476:15;3468:148;;;3550:23;3569:3;3550:23;:::i;:::-;3538:36;;3501:12;;;;3594;;;;3468:148;;;3635:6;2526:1121;-1:-1:-1;;;;;;;;2526:1121:1:o;3652:247::-;3711:6;3764:2;3752:9;3743:7;3739:23;3735:32;3732:52;;;3780:1;3777;3770:12;3732:52;3819:9;3806:23;3838:31;3863:5;3838:31;:::i;3904:248::-;3972:6;3980;4033:2;4021:9;4012:7;4008:23;4004:32;4001:52;;;4049:1;4046;4039:12;4001:52;-1:-1:-1;;4072:23:1;;;4142:2;4127:18;;;4114:32;;-1:-1:-1;3904:248:1:o;4157:388::-;4225:6;4233;4286:2;4274:9;4265:7;4261:23;4257:32;4254:52;;;4302:1;4299;4292:12;4254:52;4341:9;4328:23;4360:31;4385:5;4360:31;:::i;:::-;4410:5;-1:-1:-1;4467:2:1;4452:18;;4439:32;4480:33;4439:32;4480:33;:::i;:::-;4532:7;4522:17;;;4157:388;;;;;:::o;4550:127::-;4611:10;4606:3;4602:20;4599:1;4592:31;4642:4;4639:1;4632:15;4666:4;4663:1;4656:15;4682:416;4771:1;4808:5;4771:1;4822:270;4843:7;4833:8;4830:21;4822:270;;;4902:4;4898:1;4894:6;4890:17;4884:4;4881:27;4878:53;;;4911:18;;:::i;:::-;4961:7;4951:8;4947:22;4944:55;;;4981:16;;;;4944:55;5060:22;;;;5020:15;;;;4822:270;;;4826:3;4682:416;;;;;:::o;5103:806::-;5152:5;5182:8;5172:80;;-1:-1:-1;5223:1:1;5237:5;;5172:80;5271:4;5261:76;;-1:-1:-1;5308:1:1;5322:5;;5261:76;5353:4;5371:1;5366:59;;;;5439:1;5434:130;;;;5346:218;;5366:59;5396:1;5387:10;;5410:5;;;5434:130;5471:3;5461:8;5458:17;5455:43;;;5478:18;;:::i;:::-;-1:-1:-1;;5534:1:1;5520:16;;5549:5;;5346:218;;5648:2;5638:8;5635:16;5629:3;5623:4;5620:13;5616:36;5610:2;5600:8;5597:16;5592:2;5586:4;5583:12;5579:35;5576:77;5573:159;;;-1:-1:-1;5685:19:1;;;5717:5;;5573:159;5764:34;5789:8;5783:4;5764:34;:::i;:::-;5834:6;5830:1;5826:6;5822:19;5813:7;5810:32;5807:58;;;5845:18;;:::i;:::-;5883:20;;5103:806;-1:-1:-1;;;5103:806:1:o;5914:140::-;5972:5;6001:47;6042:4;6032:8;6028:19;6022:4;6001:47;:::i;6059:168::-;6132:9;;;6163;;6180:15;;;6174:22;;6160:37;6150:71;;6201:18;;:::i;6232:356::-;6434:2;6416:21;;;6453:18;;;6446:30;6512:34;6507:2;6492:18;;6485:62;6579:2;6564:18;;6232:356::o;6593:127::-;6654:10;6649:3;6645:20;6642:1;6635:31;6685:4;6682:1;6675:15;6709:4;6706:1;6699:15;7077:251;7147:6;7200:2;7188:9;7179:7;7175:23;7171:32;7168:52;;;7216:1;7213;7206:12;7168:52;7248:9;7242:16;7267:31;7292:5;7267:31;:::i;8254:306::-;8342:6;8350;8358;8411:2;8399:9;8390:7;8386:23;8382:32;8379:52;;;8427:1;8424;8417:12;8379:52;8456:9;8450:16;8440:26;;8506:2;8495:9;8491:18;8485:25;8475:35;;8550:2;8539:9;8535:18;8529:25;8519:35;;8254:306;;;;;:::o;8844:277::-;8911:6;8964:2;8952:9;8943:7;8939:23;8935:32;8932:52;;;8980:1;8977;8970:12;8932:52;9012:9;9006:16;9065:5;9058:13;9051:21;9044:5;9041:32;9031:60;;9087:1;9084;9077:12;11853:125;11918:9;;;11939:10;;;11936:36;;;11952:18;;:::i;12690:135::-;12729:3;12750:17;;;12747:43;;12770:18;;:::i;:::-;-1:-1:-1;12817:1:1;12806:13;;12690:135::o;12830:128::-;12897:9;;;12918:11;;;12915:37;;;12932:18;;:::i;12963:980::-;13225:4;13273:3;13262:9;13258:19;13304:6;13293:9;13286:25;13330:2;13368:6;13363:2;13352:9;13348:18;13341:34;13411:3;13406:2;13395:9;13391:18;13384:31;13435:6;13470;13464:13;13501:6;13493;13486:22;13539:3;13528:9;13524:19;13517:26;;13578:2;13570:6;13566:15;13552:29;;13599:1;13609:195;13623:6;13620:1;13617:13;13609:195;;;13688:13;;-1:-1:-1;;;;;13684:39:1;13672:52;;13779:15;;;;13744:12;;;;13720:1;13638:9;13609:195;;;-1:-1:-1;;;;;;;13860:32:1;;;;13855:2;13840:18;;13833:60;-1:-1:-1;;;13924:3:1;13909:19;13902:35;13821:3;12963:980;-1:-1:-1;;;12963:980:1:o;13948:217::-;13988:1;14014;14004:132;;14058:10;14053:3;14049:20;14046:1;14039:31;14093:4;14090:1;14083:15;14121:4;14118:1;14111:15;14004:132;-1:-1:-1;14150:9:1;;13948:217::o

Swarm Source

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