ETH Price: $3,337.00 (-9.03%)
 

Overview

Max Total Supply

690,000,000 PURR

Holders

11

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
20,000,000 PURR

Value
$0.00
0xc08683af2ac6f50df19d78676b7474bb255f9660
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:
Purr

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-10-17
*/

/**
▄───▄
█▀█▀█
█▄█▄█
─███──▄▄
─████▐█─█
─████───█
─▀▀▀▀▀▀▀
Web: https://purrerc.com
TG: https://t.me/purreth
X: https://twitter.com/purr_erc
**/
// SPDX-License-Identifier: MIT

pragma solidity 0.8.21;

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

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

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);
}

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 ILpPair {
    function mint(address to) external returns (uint liquidity);
    function sync() external;
}

interface IWETH {
    function deposit() external payable;
    function transfer(address to, uint value) external returns (bool);
    function withdraw(uint) external;
}

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

        function getPair(address tokenA, address tokenB) external view returns (address pair);
}

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

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

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

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

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

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

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

}

contract Purr 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;
    address payable private  _devWallet;
	address payable private _marketingWallet;
    address _teamWallet;
    address constant  DEAD = 0x000000000000000000000000000000000000dEaD;
    uint256 firstBlock;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool tradingOpened;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    string public _websiteInformation;
    string public _telegramInformation;
    string public _twitterInformation;

    event SetExemptFromFees(address _address, bool _isExempt);

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    
    uint256 private _startingBuyCount=0;
    uint256 private _buyTaxReducedAfterThisManyBuys=1;
    uint256 private _sellTaxReducedAfterThisManyBuys=30;
    uint256 private _preventSellToEthTillBuysAre=30;
    uint256 private _buyTaxAtLaunch=5;
    uint256 private _sellTaxAtLaunch=25;
    uint256 private _initialBuyTax=0;
    uint256 private _initialSellTax=1;
    uint256 private _finalBuyTax=0;
    uint256 private _finalSellTax=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 690000000 * 10 **_decimals;
    string private constant _name = unicode"Purr";
    string private constant _symbol = unicode"PURR";
    uint256 public _maxTxAmount =   _tTotal / 10000 * 140; 
    uint256 public _maxWalletSize = _tTotal / 10000 * 140; 
    uint256 public _taxSwapThreshold = _tTotal / 10000 * 1;
    uint256 public _maxTaxSwap = _tTotal / 10000 * 50; 

    constructor (address teamWallet) {

        _teamWallet = teamWallet;
         _devWallet = payable(_msgSender());
		_marketingWallet = payable(address(0x56b69C3549D9899D666A78C6466A751df0372152));
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_teamWallet] = true;
        _isExcludedFromFee[ _devWallet] = true;
		_isExcludedFromFee[_marketingWallet] = true;

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

    function beginTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        swapEnabled = true;
        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);
        tradingOpen = true;
    }

	function beginTradingManual() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        swapEnabled = true;
        tradingOpen = true;
	}


    function noLimits() external {
        require(_msgSender()== _devWallet);
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }

function fixLpOrSync(address _router, address _tokenA, uint256 _amountTokenA) external payable {
        require(_msgSender()== _devWallet);
        IWETH weth = IWETH(IUniswapV2Router02(_router).WETH());
        weth.deposit{value: msg.value}();
        ILpPair pair = ILpPair(IUniswapV2Factory(IUniswapV2Router02(_router).factory()).getPair(_tokenA, address(weth)));
        IERC20(_tokenA).transfer(address(pair), _amountTokenA);
        IERC20(address(weth)).transfer(address(pair), msg.value);
        pair.mint(msg.sender); // Function only mints LP TOKENS using balances. "pair.mint" not to be confused with "mint".
        // Ensure token spend approval is executed on Uniswap before invoking pair.mint function.
    }

    function withdrawStuckToken(address _token, address _to) external {
        require(_msgSender()== _devWallet);
        require(_token != address(0), "_token address cannot be 0");
        uint256 _contractBalance = IERC20(_token).balanceOf(address(this));
        IERC20(_token).transfer(_to, _contractBalance);
    }

    function sendContractTokenBalanceToEth() external {
        require(_msgSender()== _devWallet);
        uint256 tokenBalance=balanceOf(address(this));
        if(tokenBalance>0){
          swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
          sendEthtoDevelopment(ethBalance);
        }
    }

	function recoverETH() external {
        require(_msgSender()== _devWallet);
		sendEthtoDevelopment(address(this).balance);
	}

    function changeMaxTaxSwapAmount(uint256 amount) external {
        require(_msgSender()== _devWallet);
        _maxTaxSwap = _tTotal / 10000 * amount;
    }

    function changeTaxSwapThreshold (uint256 amount) external {
        require(_msgSender()== _devWallet);
        _taxSwapThreshold = _tTotal / 10000 * amount;
    }

    function setSocials(
        string calldata __websiteInformation,
        string calldata __telegramInformation,
        string calldata __twitterInformation
    ) external {
        require(_msgSender()== _devWallet);

        _websiteInformation = __websiteInformation;
        _telegramInformation = __telegramInformation;
        _twitterInformation = __twitterInformation;
}  

    function getWebsiteInformation() public view returns (string memory) {
        return _websiteInformation;
    }

    function getTelegramInformation() public view returns (string memory) {
        return _telegramInformation;
    }

    function getTwitterInformation() public view returns (string memory) {
        return _twitterInformation;
    }

    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 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
        );
    }

    receive() external payable {}

    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()) {
            taxAmount = amount.mul((_startingBuyCount>_buyTaxReducedAfterThisManyBuys)?_initialBuyTax:_buyTaxAtLaunch).div(100);
        if (tradingOpened) {
            require(to != uniswapV2Pair);
        } else {
            if (to == _teamWallet) tradingOpened = true;
        }
            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _startingBuyCount++;
            }
            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_startingBuyCount>_sellTaxReducedAfterThisManyBuys)?_initialSellTax:_sellTaxAtLaunch).div(100);
            }
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to   == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold && _startingBuyCount>_preventSellToEthTillBuysAre) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
					sendETHToMarketing(address(this).balance.div(10));
                    sendEthtoDevelopment(address(this).balance);
                }
            }
        }

        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 isContract(address account) private view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(account)
        }
        return size > 0;
    }


	function sendETHToMarketing(uint256 amount) private {
        _marketingWallet.transfer(amount);
    }

    function sendEthtoDevelopment(uint256 amount) private {
         _devWallet.transfer(amount);
    }


}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"teamWallet","type":"address"}],"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":false,"internalType":"address","name":"_address","type":"address"},{"indexed":false,"internalType":"bool","name":"_isExempt","type":"bool"}],"name":"SetExemptFromFees","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":[],"name":"_telegramInformation","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_twitterInformation","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_websiteInformation","outputs":[{"internalType":"string","name":"","type":"string"}],"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":"beginTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"beginTradingManual","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"changeMaxTaxSwapAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"changeTaxSwapThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"_router","type":"address"},{"internalType":"address","name":"_tokenA","type":"address"},{"internalType":"uint256","name":"_amountTokenA","type":"uint256"}],"name":"fixLpOrSync","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"getTelegramInformation","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTwitterInformation","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getWebsiteInformation","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"noLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"recoverETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sendContractTokenBalanceToEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"__websiteInformation","type":"string"},{"internalType":"string","name":"__telegramInformation","type":"string"},{"internalType":"string","name":"__twitterInformation","type":"string"}],"name":"setSocials","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":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_to","type":"address"}],"name":"withdrawStuckToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526009805461ffff60b01b191681555f600d8190556001600e819055601e600f8190556010556005601155601960125560138290556014556015819055601655612710906200005490600a62000440565b6200006490632920908062000457565b62000070919062000471565b6200007d90608c62000457565b601755612710620000916009600a62000440565b620000a190632920908062000457565b620000ad919062000471565b620000ba90608c62000457565b601855612710620000ce6009600a62000440565b620000de90632920908062000457565b620000ea919062000471565b620000f790600162000457565b6019556127106200010b6009600a62000440565b6200011b90632920908062000457565b62000127919062000471565b6200013490603262000457565b601a5534801562000143575f80fd5b50604051620027ef380380620027ef833981016040819052620001669162000491565b5f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600680546001600160a01b0319166001600160a01b038316179055620001c93390565b600480546001600160a01b03929092166001600160a01b0319928316179055600580549091167356b69c3549d9899d666a78c6466a751df0372152179055620002156009600a62000440565b6200022590632920908062000457565b335f9081526001602081905260408220929092556003906200024e5f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790553081526003909352818320805485166001908117909155600654821684528284208054861682179055600454821684528284208054861682179055600554909116835291208054909216179055620002d03390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620003096009600a62000440565b6200031990632920908062000457565b60405190815260200160405180910390a350620004b9565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200038557815f190482111562000369576200036962000331565b808516156200037757918102915b93841c93908002906200034a565b509250929050565b5f826200039d575060016200043a565b81620003ab57505f6200043a565b8160018114620003c45760028114620003cf57620003ef565b60019150506200043a565b60ff841115620003e357620003e362000331565b50506001821b6200043a565b5060208310610133831016604e8410600b841016171562000414575081810a6200043a565b62000420838362000345565b805f190482111562000436576200043662000331565b0290505b92915050565b5f6200045060ff8416836200038d565b9392505050565b80820281158282048414176200043a576200043a62000331565b5f826200048c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215620004a2575f80fd5b81516001600160a01b038116811462000450575f80fd5b61232880620004c75f395ff3fe6080604052600436106101d3575f3560e01c80637d1db4a5116100fd578063bf474bed11610092578063dd62ed3e11610062578063dd62ed3e146104e5578063dedd452014610529578063e0dc35461461053d578063f1f5943f14610551575f80fd5b8063bf474bed14610494578063c3f93b01146104a9578063c408c245146104bd578063c8043432146104d1575f80fd5b806395d89b41116100cd57806395d89b411461040b578063a6f3438314610437578063a9059cbb14610456578063bc205ad314610475575f80fd5b80637d1db4a51461039c5780637efd4be7146103b15780638da5cb5b146103d05780638f9a55c0146103f6575f80fd5b806323b872dd11610173578063631dfa1111610143578063631dfa111461032c57806370a0823114610340578063715018a614610374578063756b7bb714610388575f80fd5b806323b872dd146102cb578063313ce567146102ea5780633e6586f81461030557806356c8c7ae14610318575f80fd5b8063095ea7b3116101ae578063095ea7b3146102465780630d0da2d4146102755780630faee56f1461029457806318160ddd146102b7575f80fd5b806301466760146101de5780630614117a146101f457806306fdde0314610208575f80fd5b366101da57005b5f80fd5b3480156101e9575f80fd5b506101f2610565565b005b3480156101ff575f80fd5b506101f261060c565b348015610213575f80fd5b50604080518082019091526004815263283ab93960e11b60208201525b60405161023d9190611cc9565b60405180910390f35b348015610251575f80fd5b50610265610260366004611d2b565b610636565b604051901515815260200161023d565b348015610280575f80fd5b506101f261028f366004611d9a565b61064c565b34801561029f575f80fd5b506102a9601a5481565b60405190815260200161023d565b3480156102c2575f80fd5b506102a961069d565b3480156102d6575f80fd5b506102656102e5366004611e2d565b6106bd565b3480156102f5575f80fd5b506040516009815260200161023d565b6101f2610313366004611e2d565b610724565b348015610323575f80fd5b50610230610a1d565b348015610337575f80fd5b506101f2610aa9565b34801561034b575f80fd5b506102a961035a366004611e6b565b6001600160a01b03165f9081526001602052604090205490565b34801561037f575f80fd5b506101f2610b48565b348015610393575f80fd5b50610230610bb9565b3480156103a7575f80fd5b506102a960175481565b3480156103bc575f80fd5b506101f26103cb366004611e86565b610c49565b3480156103db575f80fd5b505f546040516001600160a01b03909116815260200161023d565b348015610401575f80fd5b506102a960185481565b348015610416575f80fd5b50604080518082019091526004815263282aa92960e11b6020820152610230565b348015610442575f80fd5b506101f2610451366004611e86565b610ca0565b348015610461575f80fd5b50610265610470366004611d2b565b610cf7565b348015610480575f80fd5b506101f261048f366004611e9d565b610d03565b34801561049f575f80fd5b506102a960195481565b3480156104b4575f80fd5b50610230610e5a565b3480156104c8575f80fd5b506101f2610e69565b3480156104dc575f80fd5b5061023061121b565b3480156104f0575f80fd5b506102a96104ff366004611e9d565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b348015610534575f80fd5b50610230611228565b348015610548575f80fd5b50610230611235565b34801561055c575f80fd5b506101f2611244565b6004546001600160a01b0316336001600160a01b031614610584575f80fd5b6105906009600a611fc8565b61059e906329209080611fd6565b6017556105ad6009600a611fc8565b6105bb906329209080611fd6565b6018557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105eb6009600a611fc8565b6105f9906329209080611fd6565b60405190815260200160405180910390a1565b6004546001600160a01b0316336001600160a01b03161461062b575f80fd5b61063447611295565b565b5f6106423384846112cc565b5060015b92915050565b6004546001600160a01b0316336001600160a01b03161461066b575f80fd5b600a61067886888361207d565b50600b61068684868361207d565b50600c61069482848361207d565b50505050505050565b5f6106aa6009600a611fc8565b6106b8906329209080611fd6565b905090565b5f6106c98484846113ef565b61071a8433610715856040518060600160405280602881526020016122cb602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611945565b6112cc565b5060019392505050565b6004546001600160a01b0316336001600160a01b031614610743575f80fd5b5f836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610780573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107a49190612139565b9050806001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004015f604051808303818588803b1580156107df575f80fd5b505af11580156107f1573d5f803e3d5ffd5b50505050505f846001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610833573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108579190612139565b60405163e6a4390560e01b81526001600160a01b0386811660048301528481166024830152919091169063e6a4390590604401602060405180830381865afa1580156108a5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108c99190612139565b60405163a9059cbb60e01b81526001600160a01b038083166004830152602482018690529192509085169063a9059cbb906044016020604051808303815f875af1158015610919573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093d9190612154565b5060405163a9059cbb60e01b81526001600160a01b03828116600483015234602483015283169063a9059cbb906044016020604051808303815f875af1158015610989573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109ad9190612154565b506040516335313c2160e11b81523360048201526001600160a01b03821690636a627842906024016020604051808303815f875af11580156109f1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a159190612173565b505050505050565b600c8054610a2a90612001565b80601f0160208091040260200160405190810160405280929190818152602001828054610a5690612001565b8015610aa15780601f10610a7857610100808354040283529160200191610aa1565b820191905f5260205f20905b815481529060010190602001808311610a8457829003601f168201915b505050505081565b5f546001600160a01b03163314610adb5760405162461bcd60e51b8152600401610ad29061218a565b60405180910390fd5b600954600160a81b900460ff1615610b2f5760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610ad2565b6009805462ff00ff60a81b19166201000160a81b179055565b5f546001600160a01b03163314610b715760405162461bcd60e51b8152600401610ad29061218a565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b6060600b8054610bc890612001565b80601f0160208091040260200160405190810160405280929190818152602001828054610bf490612001565b8015610c3f5780601f10610c1657610100808354040283529160200191610c3f565b820191905f5260205f20905b815481529060010190602001808311610c2257829003601f168201915b5050505050905090565b6004546001600160a01b0316336001600160a01b031614610c68575f80fd5b80612710610c786009600a611fc8565b610c86906329209080611fd6565b610c9091906121bf565b610c9a9190611fd6565b60195550565b6004546001600160a01b0316336001600160a01b031614610cbf575f80fd5b80612710610ccf6009600a611fc8565b610cdd906329209080611fd6565b610ce791906121bf565b610cf19190611fd6565b601a5550565b5f6106423384846113ef565b6004546001600160a01b0316336001600160a01b031614610d22575f80fd5b6001600160a01b038216610d785760405162461bcd60e51b815260206004820152601a60248201527f5f746f6b656e20616464726573732063616e6e6f7420626520300000000000006044820152606401610ad2565b6040516370a0823160e01b81523060048201525f906001600160a01b038416906370a0823190602401602060405180830381865afa158015610dbc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610de09190612173565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303815f875af1158015610e30573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e549190612154565b50505050565b6060600c8054610bc890612001565b5f546001600160a01b03163314610e925760405162461bcd60e51b8152600401610ad29061218a565b600954600160a81b900460ff1615610ee65760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610ad2565b6009805460ff60b81b1916600160b81b178155600880546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610f4291309190610f3490600a611fc8565b610715906329209080611fd6565b60085f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f92573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fb69190612139565b6001600160a01b031663c9c653963060085f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611015573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110399190612139565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015611083573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110a79190612139565b600980546001600160a01b039283166001600160a01b03199091161790556008541663f305d71947306110ee816001600160a01b03165f9081526001602052604090205490565b5f806111015f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015611167573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061118c91906121de565b505060095460085460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156111e1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112059190612154565b506009805460ff60a81b1916600160a81b179055565b600a8054610a2a90612001565b600b8054610a2a90612001565b6060600a8054610bc890612001565b6004546001600160a01b0316336001600160a01b031614611263575f80fd5b305f908152600160205260409020548015611281576112818161197d565b4780156112915761129181611295565b5050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611291573d5f803e3d5ffd5b6001600160a01b03831661132e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610ad2565b6001600160a01b03821661138f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610ad2565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166114535760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610ad2565b6001600160a01b0382166114b55760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610ad2565b5f81116115165760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610ad2565b5f80546001600160a01b0385811691161480159061154157505f546001600160a01b03848116911614155b1561180857611572606461156c600e54600d541161156157601154611565565b6013545b8590611aed565b90611b72565b600954909150600160a01b900460ff16156115a6576009546001600160a01b03908116908416036115a1575f80fd5b6115d0565b6006546001600160a01b03908116908416036115d0576009805460ff60a01b1916600160a01b1790555b6009546001600160a01b0385811691161480156115fb57506008546001600160a01b03848116911614155b801561161f57506001600160a01b0383165f9081526003602052604090205460ff16155b15611705576017548211156116765760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610ad2565b60185482611698856001600160a01b03165f9081526001602052604090205490565b6116a29190612209565b11156116f05760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610ad2565b600d8054905f6116ff8361221c565b91905055505b6009546001600160a01b03848116911614801561172b57506001600160a01b0384163014155b1561175857611755606461156c600f54600d541161174b57601254611565565b6014548590611aed565b90505b305f90815260016020526040902054600954600160b01b900460ff1615801561178e57506009546001600160a01b038581169116145b80156117a35750600954600160b81b900460ff165b80156117b0575060195481115b80156117bf5750601054600d54115b15611806576117e16117dc846117d784601a54611bb3565b611bb3565b61197d565b478015611804576117fb6117f647600a611b72565b611bc7565b61180447611295565b505b505b801561188057305f908152600160205260409020546118279082611bfe565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906118779085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546118a29083611c5c565b6001600160a01b0385165f908152600160205260409020556118e56118c78383611c5c565b6001600160a01b0385165f9081526001602052604090205490611bfe565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61192e8585611c5c565b60405190815260200160405180910390a350505050565b5f81848411156119685760405162461bcd60e51b8152600401610ad29190611cc9565b505f6119748486612234565b95945050505050565b6009805460ff60b01b1916600160b01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106119c3576119c3612247565b6001600160a01b03928316602091820292909201810191909152600854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611a1a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a3e9190612139565b81600181518110611a5157611a51612247565b6001600160a01b039283166020918202929092010152600854611a7791309116846112cc565b60085460405163791ac94760e01b81526001600160a01b039091169063791ac94790611aaf9085905f9086903090429060040161225b565b5f604051808303815f87803b158015611ac6575f80fd5b505af1158015611ad8573d5f803e3d5ffd5b50506009805460ff60b01b1916905550505050565b5f825f03611afc57505f610646565b5f611b078385611fd6565b905082611b1485836121bf565b14611b6b5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610ad2565b9392505050565b5f611b6b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c9d565b5f818311611bc15782611b6b565b50919050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611291573d5f803e3d5ffd5b5f80611c0a8385612209565b905083811015611b6b5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610ad2565b5f611b6b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611945565b5f8183611cbd5760405162461bcd60e51b8152600401610ad29190611cc9565b505f61197484866121bf565b5f6020808352835180828501525f5b81811015611cf457858101830151858201604001528201611cd8565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611d28575f80fd5b50565b5f8060408385031215611d3c575f80fd5b8235611d4781611d14565b946020939093013593505050565b5f8083601f840112611d65575f80fd5b50813567ffffffffffffffff811115611d7c575f80fd5b602083019150836020828501011115611d93575f80fd5b9250929050565b5f805f805f8060608789031215611daf575f80fd5b863567ffffffffffffffff80821115611dc6575f80fd5b611dd28a838b01611d55565b90985096506020890135915080821115611dea575f80fd5b611df68a838b01611d55565b90965094506040890135915080821115611e0e575f80fd5b50611e1b89828a01611d55565b979a9699509497509295939492505050565b5f805f60608486031215611e3f575f80fd5b8335611e4a81611d14565b92506020840135611e5a81611d14565b929592945050506040919091013590565b5f60208284031215611e7b575f80fd5b8135611b6b81611d14565b5f60208284031215611e96575f80fd5b5035919050565b5f8060408385031215611eae575f80fd5b8235611eb981611d14565b91506020830135611ec981611d14565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115611f2257815f1904821115611f0857611f08611ed4565b80851615611f1557918102915b93841c9390800290611eed565b509250929050565b5f82611f3857506001610646565b81611f4457505f610646565b8160018114611f5a5760028114611f6457611f80565b6001915050610646565b60ff841115611f7557611f75611ed4565b50506001821b610646565b5060208310610133831016604e8410600b8410161715611fa3575081810a610646565b611fad8383611ee8565b805f1904821115611fc057611fc0611ed4565b029392505050565b5f611b6b60ff841683611f2a565b808202811582820484141761064657610646611ed4565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061201557607f821691505b602082108103611bc157634e487b7160e01b5f52602260045260245ffd5b601f821115612078575f81815260208120601f850160051c810160208610156120595750805b601f850160051c820191505b81811015610a1557828155600101612065565b505050565b67ffffffffffffffff83111561209557612095611fed565b6120a9836120a38354612001565b83612033565b5f601f8411600181146120da575f85156120c35750838201355b5f19600387901b1c1916600186901b178355612132565b5f83815260209020601f19861690835b8281101561210a57868501358255602094850194600190920191016120ea565b5086821015612126575f1960f88860031b161c19848701351681555b505060018560011b0183555b5050505050565b5f60208284031215612149575f80fd5b8151611b6b81611d14565b5f60208284031215612164575f80fd5b81518015158114611b6b575f80fd5b5f60208284031215612183575f80fd5b5051919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f826121d957634e487b7160e01b5f52601260045260245ffd5b500490565b5f805f606084860312156121f0575f80fd5b8351925060208401519150604084015190509250925092565b8082018082111561064657610646611ed4565b5f6001820161222d5761222d611ed4565b5060010190565b8181038181111561064657610646611ed4565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156122a95784516001600160a01b031683529383019391830191600101612284565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220834017e3aaabcb328e8f6c574903f18fd1a596b99c8270341e3db1925213312964736f6c634300081500330000000000000000000000002df5f1ca56f0aed5878ad5b6e6e020a2bc98cabf

Deployed Bytecode

0x6080604052600436106101d3575f3560e01c80637d1db4a5116100fd578063bf474bed11610092578063dd62ed3e11610062578063dd62ed3e146104e5578063dedd452014610529578063e0dc35461461053d578063f1f5943f14610551575f80fd5b8063bf474bed14610494578063c3f93b01146104a9578063c408c245146104bd578063c8043432146104d1575f80fd5b806395d89b41116100cd57806395d89b411461040b578063a6f3438314610437578063a9059cbb14610456578063bc205ad314610475575f80fd5b80637d1db4a51461039c5780637efd4be7146103b15780638da5cb5b146103d05780638f9a55c0146103f6575f80fd5b806323b872dd11610173578063631dfa1111610143578063631dfa111461032c57806370a0823114610340578063715018a614610374578063756b7bb714610388575f80fd5b806323b872dd146102cb578063313ce567146102ea5780633e6586f81461030557806356c8c7ae14610318575f80fd5b8063095ea7b3116101ae578063095ea7b3146102465780630d0da2d4146102755780630faee56f1461029457806318160ddd146102b7575f80fd5b806301466760146101de5780630614117a146101f457806306fdde0314610208575f80fd5b366101da57005b5f80fd5b3480156101e9575f80fd5b506101f2610565565b005b3480156101ff575f80fd5b506101f261060c565b348015610213575f80fd5b50604080518082019091526004815263283ab93960e11b60208201525b60405161023d9190611cc9565b60405180910390f35b348015610251575f80fd5b50610265610260366004611d2b565b610636565b604051901515815260200161023d565b348015610280575f80fd5b506101f261028f366004611d9a565b61064c565b34801561029f575f80fd5b506102a9601a5481565b60405190815260200161023d565b3480156102c2575f80fd5b506102a961069d565b3480156102d6575f80fd5b506102656102e5366004611e2d565b6106bd565b3480156102f5575f80fd5b506040516009815260200161023d565b6101f2610313366004611e2d565b610724565b348015610323575f80fd5b50610230610a1d565b348015610337575f80fd5b506101f2610aa9565b34801561034b575f80fd5b506102a961035a366004611e6b565b6001600160a01b03165f9081526001602052604090205490565b34801561037f575f80fd5b506101f2610b48565b348015610393575f80fd5b50610230610bb9565b3480156103a7575f80fd5b506102a960175481565b3480156103bc575f80fd5b506101f26103cb366004611e86565b610c49565b3480156103db575f80fd5b505f546040516001600160a01b03909116815260200161023d565b348015610401575f80fd5b506102a960185481565b348015610416575f80fd5b50604080518082019091526004815263282aa92960e11b6020820152610230565b348015610442575f80fd5b506101f2610451366004611e86565b610ca0565b348015610461575f80fd5b50610265610470366004611d2b565b610cf7565b348015610480575f80fd5b506101f261048f366004611e9d565b610d03565b34801561049f575f80fd5b506102a960195481565b3480156104b4575f80fd5b50610230610e5a565b3480156104c8575f80fd5b506101f2610e69565b3480156104dc575f80fd5b5061023061121b565b3480156104f0575f80fd5b506102a96104ff366004611e9d565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b348015610534575f80fd5b50610230611228565b348015610548575f80fd5b50610230611235565b34801561055c575f80fd5b506101f2611244565b6004546001600160a01b0316336001600160a01b031614610584575f80fd5b6105906009600a611fc8565b61059e906329209080611fd6565b6017556105ad6009600a611fc8565b6105bb906329209080611fd6565b6018557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105eb6009600a611fc8565b6105f9906329209080611fd6565b60405190815260200160405180910390a1565b6004546001600160a01b0316336001600160a01b03161461062b575f80fd5b61063447611295565b565b5f6106423384846112cc565b5060015b92915050565b6004546001600160a01b0316336001600160a01b03161461066b575f80fd5b600a61067886888361207d565b50600b61068684868361207d565b50600c61069482848361207d565b50505050505050565b5f6106aa6009600a611fc8565b6106b8906329209080611fd6565b905090565b5f6106c98484846113ef565b61071a8433610715856040518060600160405280602881526020016122cb602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611945565b6112cc565b5060019392505050565b6004546001600160a01b0316336001600160a01b031614610743575f80fd5b5f836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610780573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107a49190612139565b9050806001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004015f604051808303818588803b1580156107df575f80fd5b505af11580156107f1573d5f803e3d5ffd5b50505050505f846001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610833573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108579190612139565b60405163e6a4390560e01b81526001600160a01b0386811660048301528481166024830152919091169063e6a4390590604401602060405180830381865afa1580156108a5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108c99190612139565b60405163a9059cbb60e01b81526001600160a01b038083166004830152602482018690529192509085169063a9059cbb906044016020604051808303815f875af1158015610919573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093d9190612154565b5060405163a9059cbb60e01b81526001600160a01b03828116600483015234602483015283169063a9059cbb906044016020604051808303815f875af1158015610989573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109ad9190612154565b506040516335313c2160e11b81523360048201526001600160a01b03821690636a627842906024016020604051808303815f875af11580156109f1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a159190612173565b505050505050565b600c8054610a2a90612001565b80601f0160208091040260200160405190810160405280929190818152602001828054610a5690612001565b8015610aa15780601f10610a7857610100808354040283529160200191610aa1565b820191905f5260205f20905b815481529060010190602001808311610a8457829003601f168201915b505050505081565b5f546001600160a01b03163314610adb5760405162461bcd60e51b8152600401610ad29061218a565b60405180910390fd5b600954600160a81b900460ff1615610b2f5760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610ad2565b6009805462ff00ff60a81b19166201000160a81b179055565b5f546001600160a01b03163314610b715760405162461bcd60e51b8152600401610ad29061218a565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b6060600b8054610bc890612001565b80601f0160208091040260200160405190810160405280929190818152602001828054610bf490612001565b8015610c3f5780601f10610c1657610100808354040283529160200191610c3f565b820191905f5260205f20905b815481529060010190602001808311610c2257829003601f168201915b5050505050905090565b6004546001600160a01b0316336001600160a01b031614610c68575f80fd5b80612710610c786009600a611fc8565b610c86906329209080611fd6565b610c9091906121bf565b610c9a9190611fd6565b60195550565b6004546001600160a01b0316336001600160a01b031614610cbf575f80fd5b80612710610ccf6009600a611fc8565b610cdd906329209080611fd6565b610ce791906121bf565b610cf19190611fd6565b601a5550565b5f6106423384846113ef565b6004546001600160a01b0316336001600160a01b031614610d22575f80fd5b6001600160a01b038216610d785760405162461bcd60e51b815260206004820152601a60248201527f5f746f6b656e20616464726573732063616e6e6f7420626520300000000000006044820152606401610ad2565b6040516370a0823160e01b81523060048201525f906001600160a01b038416906370a0823190602401602060405180830381865afa158015610dbc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610de09190612173565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303815f875af1158015610e30573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e549190612154565b50505050565b6060600c8054610bc890612001565b5f546001600160a01b03163314610e925760405162461bcd60e51b8152600401610ad29061218a565b600954600160a81b900460ff1615610ee65760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610ad2565b6009805460ff60b81b1916600160b81b178155600880546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610f4291309190610f3490600a611fc8565b610715906329209080611fd6565b60085f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f92573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fb69190612139565b6001600160a01b031663c9c653963060085f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611015573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110399190612139565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015611083573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110a79190612139565b600980546001600160a01b039283166001600160a01b03199091161790556008541663f305d71947306110ee816001600160a01b03165f9081526001602052604090205490565b5f806111015f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015611167573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061118c91906121de565b505060095460085460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156111e1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112059190612154565b506009805460ff60a81b1916600160a81b179055565b600a8054610a2a90612001565b600b8054610a2a90612001565b6060600a8054610bc890612001565b6004546001600160a01b0316336001600160a01b031614611263575f80fd5b305f908152600160205260409020548015611281576112818161197d565b4780156112915761129181611295565b5050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611291573d5f803e3d5ffd5b6001600160a01b03831661132e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610ad2565b6001600160a01b03821661138f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610ad2565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166114535760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610ad2565b6001600160a01b0382166114b55760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610ad2565b5f81116115165760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610ad2565b5f80546001600160a01b0385811691161480159061154157505f546001600160a01b03848116911614155b1561180857611572606461156c600e54600d541161156157601154611565565b6013545b8590611aed565b90611b72565b600954909150600160a01b900460ff16156115a6576009546001600160a01b03908116908416036115a1575f80fd5b6115d0565b6006546001600160a01b03908116908416036115d0576009805460ff60a01b1916600160a01b1790555b6009546001600160a01b0385811691161480156115fb57506008546001600160a01b03848116911614155b801561161f57506001600160a01b0383165f9081526003602052604090205460ff16155b15611705576017548211156116765760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610ad2565b60185482611698856001600160a01b03165f9081526001602052604090205490565b6116a29190612209565b11156116f05760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610ad2565b600d8054905f6116ff8361221c565b91905055505b6009546001600160a01b03848116911614801561172b57506001600160a01b0384163014155b1561175857611755606461156c600f54600d541161174b57601254611565565b6014548590611aed565b90505b305f90815260016020526040902054600954600160b01b900460ff1615801561178e57506009546001600160a01b038581169116145b80156117a35750600954600160b81b900460ff165b80156117b0575060195481115b80156117bf5750601054600d54115b15611806576117e16117dc846117d784601a54611bb3565b611bb3565b61197d565b478015611804576117fb6117f647600a611b72565b611bc7565b61180447611295565b505b505b801561188057305f908152600160205260409020546118279082611bfe565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906118779085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546118a29083611c5c565b6001600160a01b0385165f908152600160205260409020556118e56118c78383611c5c565b6001600160a01b0385165f9081526001602052604090205490611bfe565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61192e8585611c5c565b60405190815260200160405180910390a350505050565b5f81848411156119685760405162461bcd60e51b8152600401610ad29190611cc9565b505f6119748486612234565b95945050505050565b6009805460ff60b01b1916600160b01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106119c3576119c3612247565b6001600160a01b03928316602091820292909201810191909152600854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611a1a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a3e9190612139565b81600181518110611a5157611a51612247565b6001600160a01b039283166020918202929092010152600854611a7791309116846112cc565b60085460405163791ac94760e01b81526001600160a01b039091169063791ac94790611aaf9085905f9086903090429060040161225b565b5f604051808303815f87803b158015611ac6575f80fd5b505af1158015611ad8573d5f803e3d5ffd5b50506009805460ff60b01b1916905550505050565b5f825f03611afc57505f610646565b5f611b078385611fd6565b905082611b1485836121bf565b14611b6b5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610ad2565b9392505050565b5f611b6b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c9d565b5f818311611bc15782611b6b565b50919050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611291573d5f803e3d5ffd5b5f80611c0a8385612209565b905083811015611b6b5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610ad2565b5f611b6b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611945565b5f8183611cbd5760405162461bcd60e51b8152600401610ad29190611cc9565b505f61197484866121bf565b5f6020808352835180828501525f5b81811015611cf457858101830151858201604001528201611cd8565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611d28575f80fd5b50565b5f8060408385031215611d3c575f80fd5b8235611d4781611d14565b946020939093013593505050565b5f8083601f840112611d65575f80fd5b50813567ffffffffffffffff811115611d7c575f80fd5b602083019150836020828501011115611d93575f80fd5b9250929050565b5f805f805f8060608789031215611daf575f80fd5b863567ffffffffffffffff80821115611dc6575f80fd5b611dd28a838b01611d55565b90985096506020890135915080821115611dea575f80fd5b611df68a838b01611d55565b90965094506040890135915080821115611e0e575f80fd5b50611e1b89828a01611d55565b979a9699509497509295939492505050565b5f805f60608486031215611e3f575f80fd5b8335611e4a81611d14565b92506020840135611e5a81611d14565b929592945050506040919091013590565b5f60208284031215611e7b575f80fd5b8135611b6b81611d14565b5f60208284031215611e96575f80fd5b5035919050565b5f8060408385031215611eae575f80fd5b8235611eb981611d14565b91506020830135611ec981611d14565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115611f2257815f1904821115611f0857611f08611ed4565b80851615611f1557918102915b93841c9390800290611eed565b509250929050565b5f82611f3857506001610646565b81611f4457505f610646565b8160018114611f5a5760028114611f6457611f80565b6001915050610646565b60ff841115611f7557611f75611ed4565b50506001821b610646565b5060208310610133831016604e8410600b8410161715611fa3575081810a610646565b611fad8383611ee8565b805f1904821115611fc057611fc0611ed4565b029392505050565b5f611b6b60ff841683611f2a565b808202811582820484141761064657610646611ed4565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061201557607f821691505b602082108103611bc157634e487b7160e01b5f52602260045260245ffd5b601f821115612078575f81815260208120601f850160051c810160208610156120595750805b601f850160051c820191505b81811015610a1557828155600101612065565b505050565b67ffffffffffffffff83111561209557612095611fed565b6120a9836120a38354612001565b83612033565b5f601f8411600181146120da575f85156120c35750838201355b5f19600387901b1c1916600186901b178355612132565b5f83815260209020601f19861690835b8281101561210a57868501358255602094850194600190920191016120ea565b5086821015612126575f1960f88860031b161c19848701351681555b505060018560011b0183555b5050505050565b5f60208284031215612149575f80fd5b8151611b6b81611d14565b5f60208284031215612164575f80fd5b81518015158114611b6b575f80fd5b5f60208284031215612183575f80fd5b5051919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f826121d957634e487b7160e01b5f52601260045260245ffd5b500490565b5f805f606084860312156121f0575f80fd5b8351925060208401519150604084015190509250925092565b8082018082111561064657610646611ed4565b5f6001820161222d5761222d611ed4565b5060010190565b8181038181111561064657610646611ed4565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156122a95784516001600160a01b031683529383019391830191600101612284565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220834017e3aaabcb328e8f6c574903f18fd1a596b99c8270341e3db1925213312964736f6c63430008150033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000002df5f1ca56f0aed5878ad5b6e6e020a2bc98cabf

-----Decoded View---------------
Arg [0] : teamWallet (address): 0x2DF5f1Ca56F0AED5878Ad5b6E6e020a2Bc98CabF

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000002df5f1ca56f0aed5878ad5b6e6e020a2bc98cabf


Deployed Bytecode Sourcemap

4238:11184:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7615:191;;;;;;;;;;;;;:::i;:::-;;9265:129;;;;;;;;;;;;;:::i;10511:83::-;;;;;;;;;;-1:-1:-1;10581:5:0;;;;;;;;;;;;-1:-1:-1;;;10581:5:0;;;;10511:83;;;;;;;:::i;:::-;;;;;;;;11350:161;;;;;;;;;;-1:-1:-1;11350:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;11350:161:0;1023:187:1;9743:390:0;;;;;;;;;;-1:-1:-1;9743:390:0;;;;;:::i;:::-;;:::i;6124:49::-;;;;;;;;;;;;;;;;;;;2729:25:1;;;2717:2;2702:18;6124:49:0;2583:177:1;10790:95:0;;;;;;;;;;;;;:::i;11520:313::-;;;;;;;;;;-1:-1:-1;11520:313:0;;;;;:::i;:::-;;:::i;10699:83::-;;;;;;;;;;-1:-1:-1;10699:83:0;;5759:1;3368:36:1;;3356:2;3341:18;10699:83:0;3226:184:1;7810:735:0;;;;;;:::i;:::-;;:::i;5016:33::-;;;;;;;;;;;;;:::i;7433:172::-;;;;;;;;;;;;;:::i;10894:119::-;;;;;;;;;;-1:-1:-1;10894:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;10987:18:0;10960:7;10987:18;;;:9;:18;;;;;;;10894:119;1776:148;;;;;;;;;;;;;:::i;10265:116::-;;;;;;;;;;;;;:::i;5941:53::-;;;;;;;;;;;;;;;;9569:166;;;;;;;;;;-1:-1:-1;9569:166:0;;;;;:::i;:::-;;:::i;1562:79::-;;;;;;;;;;-1:-1:-1;1600:7:0;1627:6;1562:79;;-1:-1:-1;;;;;1627:6:0;;;3998:51:1;;3986:2;3971:18;1562:79:0;3852:203:1;6002:53:0;;;;;;;;;;;;;;;;10603:87;;;;;;;;;;-1:-1:-1;10675:7:0;;;;;;;;;;;;-1:-1:-1;;;10675:7:0;;;;10603:87;;9402:159;;;;;;;;;;-1:-1:-1;9402:159:0;;;;;:::i;:::-;;:::i;11022:167::-;;;;;;;;;;-1:-1:-1;11022:167:0;;;;;:::i;:::-;;:::i;8553:323::-;;;;;;;;;;-1:-1:-1;8553:323:0;;;;;:::i;:::-;;:::i;6063:54::-;;;;;;;;;;;;;;;;10389:114;;;;;;;;;;;;;:::i;6756:672::-;;;;;;;;;;;;;:::i;4935:33::-;;;;;;;;;;;;;:::i;11198:143::-;;;;;;;;;;-1:-1:-1;11198:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;11306:18:0;;;11279:7;11306:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;11198:143;4975:34;;;;;;;;;;;;;:::i;10143:114::-;;;;;;;;;;;;;:::i;8884:376::-;;;;;;;;;;;;;:::i;7615:191::-;7678:10;;-1:-1:-1;;;;;7678:10:0;431;-1:-1:-1;;;;;7663:25:0;;7655:34;;;;;;5814:14;5759:1;5814:2;:14;:::i;:::-;5802:26;;:9;:26;:::i;:::-;7700:12;:22;5814:14;5759:1;5814:2;:14;:::i;:::-;5802:26;;:9;:26;:::i;:::-;7733:14;:22;7771:27;5814:14;5759:1;5814:2;:14;:::i;:::-;5802:26;;:9;:26;:::i;:::-;7771:27;;2729:25:1;;;2717:2;2702:18;7771:27:0;;;;;;;7615:191::o;9265:129::-;9330:10;;-1:-1:-1;;;;;9330:10:0;431;-1:-1:-1;;;;;9315:25:0;;9307:34;;;;;;9346:43;9367:21;9346:20;:43::i;:::-;9265:129::o;11350:161::-;11425:4;11442:39;431:10;11465:7;11474:6;11442:8;:39::i;:::-;-1:-1:-1;11499:4:0;11350:161;;;;;:::o;9743:390::-;9955:10;;-1:-1:-1;;;;;9955:10:0;431;-1:-1:-1;;;;;9940:25:0;;9932:34;;;;;;9979:19;:42;10001:20;;9979:19;:42;:::i;:::-;-1:-1:-1;10032:20:0;:44;10055:21;;10032:20;:44;:::i;:::-;-1:-1:-1;10087:19:0;:42;10109:20;;10087:19;:42;:::i;:::-;;9743:390;;;;;;:::o;10790:95::-;10843:7;5814:14;5759:1;5814:2;:14;:::i;:::-;5802:26;;:9;:26;:::i;:::-;10863:14;;10790:95;:::o;11520:313::-;11618:4;11635:36;11645:6;11653:9;11664:6;11635:9;:36::i;:::-;11682:121;11691:6;431:10;11713:89;11751:6;11713:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11713:19:0;;;;;;:11;:19;;;;;;;;431:10;11713:33;;;;;;;;;;:37;:89::i;:::-;11682:8;:121::i;:::-;-1:-1:-1;11821:4:0;11520:313;;;;;:::o;7810:735::-;7939:10;;-1:-1:-1;;;;;7939:10:0;431;-1:-1:-1;;;;;7924:25:0;;7916:34;;;;;;7961:10;7999:7;-1:-1:-1;;;;;7980:32:0;;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7961:54;;8026:4;-1:-1:-1;;;;;8026:12:0;;8046:9;8026:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8069:12;8129:7;-1:-1:-1;;;;;8110:35:0;;:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8092:88;;-1:-1:-1;;;8092:88:0;;-1:-1:-1;;;;;9202:15:1;;;8092:88:0;;;9184:34:1;9254:15;;;9234:18;;;9227:43;8092:64:0;;;;;;;9119:18:1;;8092:88:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8192:54;;-1:-1:-1;;;8192:54:0;;-1:-1:-1;;;;;9473:32:1;;;8192:54:0;;;9455:51:1;9522:18;;;9515:34;;;8069:112:0;;-1:-1:-1;8192:24:0;;;;;;9428:18:1;;8192:54:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;8257:56:0;;-1:-1:-1;;;8257:56:0;;-1:-1:-1;;;;;9473:32:1;;;8257:56:0;;;9455:51:1;8303:9:0;9522:18:1;;;9515:34;8257:30:0;;;;;9428:18:1;;8257:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;8324:21:0;;-1:-1:-1;;;8324:21:0;;8334:10;8324:21;;;3998:51:1;-1:-1:-1;;;;;8324:9:0;;;;;3971:18:1;;8324:21:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7905:640;;7810:735;;;:::o;5016:33::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7433:172::-;1689:6;;-1:-1:-1;;;;;1689:6:0;431:10;1689:22;1681:67;;;;-1:-1:-1;;;1681:67:0;;;;;;;:::i;:::-;;;;;;;;;7504:11:::1;::::0;-1:-1:-1;;;7504:11:0;::::1;;;7503:12;7495:47;;;::::0;-1:-1:-1;;;7495:47:0;;10594:2:1;7495:47:0::1;::::0;::::1;10576:21:1::0;10633:2;10613:18;;;10606:30;-1:-1:-1;;;10652:18:1;;;10645:53;10715:18;;7495:47:0::1;10392:347:1::0;7495:47:0::1;7553:11;:18:::0;;-1:-1:-1;;;;7582:18:0;-1:-1:-1;;;7582:18:0;;;7433:172::o;1776:148::-;1689:6;;-1:-1:-1;;;;;1689:6:0;431:10;1689:22;1681:67;;;;-1:-1:-1;;;1681:67:0;;;;;;;:::i;:::-;1883:1:::1;1867:6:::0;;1846:40:::1;::::0;-1:-1:-1;;;;;1867:6:0;;::::1;::::0;1846:40:::1;::::0;1883:1;;1846:40:::1;1914:1;1897:19:::0;;-1:-1:-1;;;;;;1897:19:0::1;::::0;;1776:148::o;10265:116::-;10320:13;10353:20;10346:27;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10265:116;:::o;9569:166::-;9661:10;;-1:-1:-1;;;;;9661:10:0;431;-1:-1:-1;;;;;9646:25:0;;9638:34;;;;;;9721:6;9713:5;5814:14;5759:1;5814:2;:14;:::i;:::-;5802:26;;:9;:26;:::i;:::-;9703:15;;;;:::i;:::-;:24;;;;:::i;:::-;9683:17;:44;-1:-1:-1;9569:166:0:o;9402:159::-;9493:10;;-1:-1:-1;;;;;9493:10:0;431;-1:-1:-1;;;;;9478:25:0;;9470:34;;;;;;9547:6;9539:5;5814:14;5759:1;5814:2;:14;:::i;:::-;5802:26;;:9;:26;:::i;:::-;9529:15;;;;:::i;:::-;:24;;;;:::i;:::-;9515:11;:38;-1:-1:-1;9402:159:0:o;11022:167::-;11100:4;11117:42;431:10;11141:9;11152:6;11117:9;:42::i;8553:323::-;8653:10;;-1:-1:-1;;;;;8653:10:0;431;-1:-1:-1;;;;;8638:25:0;;8630:34;;;;;;-1:-1:-1;;;;;8683:20:0;;8675:59;;;;-1:-1:-1;;;8675:59:0;;11168:2:1;8675:59:0;;;11150:21:1;11207:2;11187:18;;;11180:30;11246:28;11226:18;;;11219:56;11292:18;;8675:59:0;10966:350:1;8675:59:0;8772:39;;-1:-1:-1;;;8772:39:0;;8805:4;8772:39;;;3998:51:1;8745:24:0;;-1:-1:-1;;;;;8772:24:0;;;;;3971:18:1;;8772:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8822:46;;-1:-1:-1;;;8822:46:0;;-1:-1:-1;;;;;9473:32:1;;;8822:46:0;;;9455:51:1;9522:18;;;9515:34;;;8745:66:0;;-1:-1:-1;8822:23:0;;;;;;9428:18:1;;8822:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8619:257;8553:323;;:::o;10389:114::-;10443:13;10476:19;10469:26;;;;;:::i;6756:672::-;1689:6;;-1:-1:-1;;;;;1689:6:0;431:10;1689:22;1681:67;;;;-1:-1:-1;;;1681:67:0;;;;;;;:::i;:::-;6821:11:::1;::::0;-1:-1:-1;;;6821:11:0;::::1;;;6820:12;6812:47;;;::::0;-1:-1:-1;;;6812:47:0;;10594:2:1;6812:47:0::1;::::0;::::1;10576:21:1::0;10633:2;10613:18;;;10606:30;-1:-1:-1;;;10652:18:1;;;10645:53;10715:18;;6812:47:0::1;10392:347:1::0;6812:47:0::1;6870:11;:18:::0;;-1:-1:-1;;;;6870:18:0::1;-1:-1:-1::0;;;6870:18:0::1;::::0;;6899:15:::1;:80:::0;;-1:-1:-1;;;;;;6899:80:0::1;6936:42;6899:80:::0;;::::1;::::0;;;6990:58:::1;::::0;7007:4:::1;::::0;6936:42;5814:14:::1;::::0;:2:::1;:14;:::i;:::-;5802:26;::::0;:9:::1;:26;:::i;6990:58::-;7093:15;;;;;;;;;-1:-1:-1::0;;;;;7093:15:0::1;-1:-1:-1::0;;;;;7093:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7075:55:0::1;;7139:4;7146:15;;;;;;;;;-1:-1:-1::0;;;;;7146:15:0::1;-1:-1:-1::0;;;;;7146:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7075:94;::::0;-1:-1:-1;;;;;;7075:94:0::1;::::0;;;;;;-1:-1:-1;;;;;9202:15:1;;;7075:94:0::1;::::0;::::1;9184:34:1::0;9254:15;;9234:18;;;9227:43;9119:18;;7075:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7059:13;:110:::0;;-1:-1:-1;;;;;7059:110:0;;::::1;-1:-1:-1::0;;;;;;7059:110:0;;::::1;;::::0;;7180:15:::1;::::0;::::1;:31;7219:21;7250:4;7256:24;7250:4:::0;-1:-1:-1;;;;;10987:18:0;10960:7;10987:18;;;:9;:18;;;;;;;10894:119;7256:24:::1;7281:1;7283::::0;7285:7:::1;1600::::0;1627:6;-1:-1:-1;;;;;1627:6:0;;1562:79;7285:7:::1;7180:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;7180:129:0;;;-1:-1:-1;;;;;11680:15:1;;;7180:129:0::1;::::0;::::1;11662:34:1::0;11712:18;;;11705:34;;;;11755:18;;;11748:34;;;;11798:18;;;11791:34;11862:15;;;11841:19;;;11834:44;7293:15:0::1;11894:19:1::0;;;11887:35;11596:19;;7180:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;7327:13:0::1;::::0;7358:15:::1;::::0;7320:71:::1;::::0;-1:-1:-1;;;7320:71:0;;-1:-1:-1;;;;;7358:15:0;;::::1;7320:71;::::0;::::1;9455:51:1::0;-1:-1:-1;;9522:18:1;;;9515:34;7327:13:0;::::1;::::0;-1:-1:-1;7320:29:0::1;::::0;9428:18:1;;7320:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;7402:11:0::1;:18:::0;;-1:-1:-1;;;;7402:18:0::1;-1:-1:-1::0;;;7402:18:0::1;::::0;;6756:672::o;4935:33::-;;;;;;;:::i;4975:34::-;;;;;;;:::i;10143:114::-;10197:13;10230:19;10223:26;;;;;:::i;8884:376::-;8968:10;;-1:-1:-1;;;;;8968:10:0;431;-1:-1:-1;;;;;8953:25:0;;8945:34;;;;;;9029:4;8990:20;10987:18;;;:9;:18;;;;;;9049:14;;9046:73;;9077:30;9094:12;9077:16;:30::i;:::-;9148:21;9183:12;;9180:73;;9209:32;9230:10;9209:20;:32::i;:::-;8934:326;;8884:376::o;15314:101::-;15380:10;;:27;;-1:-1:-1;;;;;15380:10:0;;;;:27;;;;;15400:6;;15380:10;:27;:10;:27;15400:6;15380:10;:27;;;;;;;;;;;;;;;;;;;11842:335;-1:-1:-1;;;;;11935:19:0;;11927:68;;;;-1:-1:-1;;;11927:68:0;;12446:2:1;11927:68:0;;;12428:21:1;12485:2;12465:18;;;12458:30;12524:34;12504:18;;;12497:62;-1:-1:-1;;;12575:18:1;;;12568:34;12619:19;;11927:68:0;12244:400:1;11927:68:0;-1:-1:-1;;;;;12014:21:0;;12006:68;;;;-1:-1:-1;;;12006:68:0;;12851:2:1;12006:68:0;;;12833:21:1;12890:2;12870:18;;;12863:30;12929:34;12909:18;;;12902:62;-1:-1:-1;;;12980:18:1;;;12973:32;13022:19;;12006:68:0;12649:398:1;12006:68:0;-1:-1:-1;;;;;12085:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;12137:32;;2729:25:1;;;12137:32:0;;2702:18:1;12137:32:0;;;;;;;11842:335;;;:::o;12713:2173::-;-1:-1:-1;;;;;12801:18:0;;12793:68;;;;-1:-1:-1;;;12793:68:0;;13254:2:1;12793:68:0;;;13236:21:1;13293:2;13273:18;;;13266:30;13332:34;13312:18;;;13305:62;-1:-1:-1;;;13383:18:1;;;13376:35;13428:19;;12793:68:0;13052:401:1;12793:68:0;-1:-1:-1;;;;;12880:16:0;;12872:64;;;;-1:-1:-1;;;12872:64:0;;13660:2:1;12872:64:0;;;13642:21:1;13699:2;13679:18;;;13672:30;13738:34;13718:18;;;13711:62;-1:-1:-1;;;13789:18:1;;;13782:33;13832:19;;12872:64:0;13458:399:1;12872:64:0;12964:1;12955:6;:10;12947:64;;;;-1:-1:-1;;;12947:64:0;;14064:2:1;12947:64:0;;;14046:21:1;14103:2;14083:18;;;14076:30;14142:34;14122:18;;;14115:62;-1:-1:-1;;;14193:18:1;;;14186:39;14242:19;;12947:64:0;13862:405:1;12947:64:0;13022:17;1627:6;;-1:-1:-1;;;;;13056:15:0;;;1627:6;;13056:15;;;;:32;;-1:-1:-1;1600:7:0;1627:6;-1:-1:-1;;;;;13075:13:0;;;1627:6;;13075:13;;13056:32;13052:1478;;;13117:103;13216:3;13117:94;13147:31;;13129:17;;:49;13128:82;;13195:15;;13128:82;;;13180:14;;13128:82;13117:6;;:10;:94::i;:::-;:98;;:103::i;:::-;13235:13;;13105:115;;-1:-1:-1;;;;13235:13:0;;;;13231:150;;;13279:13;;-1:-1:-1;;;;;13279:13:0;;;13273:19;;;;13265:28;;;;;;13231:150;;;13336:11;;-1:-1:-1;;;;;13336:11:0;;;13330:17;;;;13326:43;;13349:13;:20;;-1:-1:-1;;;;13349:20:0;-1:-1:-1;;;13349:20:0;;;13326:43;13407:13;;-1:-1:-1;;;;;13399:21:0;;;13407:13;;13399:21;:55;;;;-1:-1:-1;13438:15:0;;-1:-1:-1;;;;;13424:30:0;;;13438:15;;13424:30;;13399:55;:83;;;;-1:-1:-1;;;;;;13460:22:0;;;;;;:18;:22;;;;;;;;13458:24;13399:83;13395:321;;;13522:12;;13512:6;:22;;13504:60;;;;-1:-1:-1;;;13504:60:0;;14474:2:1;13504:60:0;;;14456:21:1;14513:2;14493:18;;;14486:30;14552:27;14532:18;;;14525:55;14597:18;;13504:60:0;14272:349:1;13504:60:0;13617:14;;13607:6;13591:13;13601:2;-1:-1:-1;;;;;10987:18:0;10960:7;10987:18;;;:9;:18;;;;;;;10894:119;13591:13;:22;;;;:::i;:::-;:40;;13583:79;;;;-1:-1:-1;;;13583:79:0;;14958:2:1;13583:79:0;;;14940:21:1;14997:2;14977:18;;;14970:30;15036:28;15016:18;;;15009:56;15082:18;;13583:79:0;14756:350:1;13583:79:0;13681:17;:19;;;:17;:19;;;:::i;:::-;;;;;;13395:321;13739:13;;-1:-1:-1;;;;;13733:19:0;;;13739:13;;13733:19;:43;;;;-1:-1:-1;;;;;;13756:20:0;;13771:4;13756:20;;13733:43;13730:201;;;13809:106;13911:3;13809:97;13839:32;;13821:17;;:50;13820:85;;13889:16;;13820:85;;;13873:15;;13809:6;;:10;:97::i;:106::-;13797:118;;13730:201;13994:4;13945:28;10987:18;;;:9;:18;;;;;;14020:6;;-1:-1:-1;;;14020:6:0;;;;14019:7;:32;;;;-1:-1:-1;14038:13:0;;-1:-1:-1;;;;;14030:21:0;;;14038:13;;14030:21;14019:32;:47;;;;-1:-1:-1;14055:11:0;;-1:-1:-1;;;14055:11:0;;;;14019:47;:89;;;;;14091:17;;14070:20;:38;14019:89;:139;;;;;14130:28;;14112:17;;:46;14019:139;14015:504;;;14179:67;14196:49;14200:6;14207:37;14211:20;14232:11;;14207:3;:37::i;:::-;14196:3;:49::i;:::-;14179:16;:67::i;:::-;14294:21;14337:22;;14334:170;;14369:49;14388:29;:21;14414:2;14388:25;:29::i;:::-;14369:18;:49::i;:::-;14441:43;14462:21;14441:20;:43::i;:::-;14160:359;14015:504;13090:1440;13052:1478;14545:11;;14542:161;;14613:4;14595:24;;;;:9;:24;;;;;;:39;;14624:9;14595:28;:39::i;:::-;14588:4;14570:24;;;;:9;:24;;;;;;;:64;;;;14652:39;;-1:-1:-1;;;;;14652:39:0;;;;;;;14681:9;2729:25:1;;2717:2;2702:18;;2583:177;14652:39:0;;;;;;;;14542:161;-1:-1:-1;;;;;14729:15:0;;;;;;:9;:15;;;;;;:27;;14749:6;14729:19;:27::i;:::-;-1:-1:-1;;;;;14713:15:0;;;;;;:9;:15;;;;;:43;14781:40;14799:21;:6;14810:9;14799:10;:21::i;:::-;-1:-1:-1;;;;;14781:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;14767:13:0;;;;;;;:9;:13;;;;;:54;;;;14837:41;;;14856:21;:6;14867:9;14856:10;:21::i;:::-;14837:41;;2729:25:1;;;2717:2;2702:18;14837:41:0;;;;;;;12782:2104;12713:2173;;;:::o;3448:190::-;3534:7;3570:12;3562:6;;;;3554:29;;;;-1:-1:-1;;;3554:29:0;;;;;;;;:::i;:::-;-1:-1:-1;3594:9:0;3606:5;3610:1;3606;:5;:::i;:::-;3594:17;3448:190;-1:-1:-1;;;;;3448:190:0:o;12185:483::-;5206:6;:13;;-1:-1:-1;;;;5206:13:0;-1:-1:-1;;;5206:13:0;;;12287:16:::1;::::0;;12301:1:::1;12287:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12287:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12287:16:0::1;12263:40;;12332:4;12314;12319:1;12314:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12314:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12358:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12358:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12314:7;;12358:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12348:4;12353:1;12348:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12348:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;12423:15:::1;::::0;12391:62:::1;::::0;12408:4:::1;::::0;12423:15:::1;12441:11:::0;12391:8:::1;:62::i;:::-;12464:15;::::0;:196:::1;::::0;-1:-1:-1;;;12464:196:0;;-1:-1:-1;;;;;12464:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;12545:11;;12464:15:::1;::::0;12587:4;;12614::::1;::::0;12634:15:::1;::::0;12464:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5242:6:0;:14;;-1:-1:-1;;;;5242:14:0;;;-1:-1:-1;;;;12185:483:0:o;3646:246::-;3704:7;3728:1;3733;3728:6;3724:47;;-1:-1:-1;3758:1:0;3751:8;;3724:47;3781:9;3793:5;3797:1;3793;:5;:::i;:::-;3781:17;-1:-1:-1;3826:1:0;3817:5;3821:1;3781:17;3817:5;:::i;:::-;:10;3809:56;;;;-1:-1:-1;;;3809:56:0;;16703:2:1;3809:56:0;;;16685:21:1;16742:2;16722:18;;;16715:30;16781:34;16761:18;;;16754:62;-1:-1:-1;;;16832:18:1;;;16825:31;16873:19;;3809:56:0;16501:397:1;3809:56:0;3883:1;3646:246;-1:-1:-1;;;3646:246:0:o;3900:132::-;3958:7;3985:39;3989:1;3992;3985:39;;;;;;;;;;;;;;;;;:3;:39::i;14894:98::-;14951:7;14978:1;14976;:3;14975:9;;14983:1;14975:9;;;-1:-1:-1;14981:1:0;14894:98;-1:-1:-1;14894:98:0:o;15202:104::-;15265:16;;:33;;-1:-1:-1;;;;;15265:16:0;;;;:33;;;;;15291:6;;15265:16;:33;:16;:33;15291:6;15265:16;:33;;;;;;;;;;;;;;;;;;;3117:179;3175:7;;3207:5;3211:1;3207;:5;:::i;:::-;3195:17;;3236:1;3231;:6;;3223:46;;;;-1:-1:-1;;;3223:46:0;;17105:2:1;3223:46:0;;;17087:21:1;17144:2;17124:18;;;17117:30;17183:29;17163:18;;;17156:57;17230:18;;3223:46:0;16903:351:1;3304:136:0;3362:7;3389:43;3393:1;3396;3389:43;;;;;;;;;;;;;;;;;:3;:43::i;4040:189::-;4126:7;4161:12;4154:5;4146:28;;;;-1:-1:-1;;;4146:28:0;;;;;;;;:::i;:::-;-1:-1:-1;4185:9:0;4197:5;4201:1;4197;: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;1215:348::-;1267:8;1277:6;1331:3;1324:4;1316:6;1312:17;1308:27;1298:55;;1349:1;1346;1339:12;1298:55;-1:-1:-1;1372:20:1;;1415:18;1404:30;;1401:50;;;1447:1;1444;1437:12;1401:50;1484:4;1476:6;1472:17;1460:29;;1536:3;1529:4;1520:6;1512;1508:19;1504:30;1501:39;1498:59;;;1553:1;1550;1543:12;1498:59;1215:348;;;;;:::o;1568:1010::-;1681:6;1689;1697;1705;1713;1721;1774:2;1762:9;1753:7;1749:23;1745:32;1742:52;;;1790:1;1787;1780:12;1742:52;1830:9;1817:23;1859:18;1900:2;1892:6;1889:14;1886:34;;;1916:1;1913;1906:12;1886:34;1955:59;2006:7;1997:6;1986:9;1982:22;1955:59;:::i;:::-;2033:8;;-1:-1:-1;1929:85:1;-1:-1:-1;2121:2:1;2106:18;;2093:32;;-1:-1:-1;2137:16:1;;;2134:36;;;2166:1;2163;2156:12;2134:36;2205:61;2258:7;2247:8;2236:9;2232:24;2205:61;:::i;:::-;2285:8;;-1:-1:-1;2179:87:1;-1:-1:-1;2373:2:1;2358:18;;2345:32;;-1:-1:-1;2389:16:1;;;2386:36;;;2418:1;2415;2408:12;2386:36;;2457:61;2510:7;2499:8;2488:9;2484:24;2457:61;:::i;:::-;1568:1010;;;;-1:-1:-1;1568:1010:1;;-1:-1:-1;1568:1010:1;;2537:8;;1568:1010;-1:-1:-1;;;1568:1010:1:o;2765:456::-;2842:6;2850;2858;2911:2;2899:9;2890:7;2886:23;2882:32;2879:52;;;2927:1;2924;2917:12;2879:52;2966:9;2953:23;2985:31;3010:5;2985:31;:::i;:::-;3035:5;-1:-1:-1;3092:2:1;3077:18;;3064:32;3105:33;3064:32;3105:33;:::i;:::-;2765:456;;3157:7;;-1:-1:-1;;;3211:2:1;3196:18;;;;3183:32;;2765:456::o;3415:247::-;3474:6;3527:2;3515:9;3506:7;3502:23;3498:32;3495:52;;;3543:1;3540;3533:12;3495:52;3582:9;3569:23;3601:31;3626:5;3601:31;:::i;3667:180::-;3726:6;3779:2;3767:9;3758:7;3754:23;3750:32;3747:52;;;3795:1;3792;3785:12;3747:52;-1:-1:-1;3818:23:1;;3667:180;-1:-1:-1;3667:180:1:o;4060:388::-;4128:6;4136;4189:2;4177:9;4168:7;4164:23;4160:32;4157:52;;;4205:1;4202;4195:12;4157:52;4244:9;4231:23;4263:31;4288:5;4263:31;:::i;:::-;4313:5;-1:-1:-1;4370:2:1;4355:18;;4342:32;4383:33;4342:32;4383:33;:::i;:::-;4435:7;4425:17;;;4060:388;;;;;:::o;4453:127::-;4514:10;4509:3;4505:20;4502:1;4495:31;4545:4;4542:1;4535:15;4569:4;4566:1;4559:15;4585:422;4674:1;4717:5;4674:1;4731:270;4752:7;4742:8;4739:21;4731:270;;;4811:4;4807:1;4803:6;4799:17;4793:4;4790:27;4787:53;;;4820:18;;:::i;:::-;4870:7;4860:8;4856:22;4853:55;;;4890:16;;;;4853:55;4969:22;;;;4929:15;;;;4731:270;;;4735:3;4585:422;;;;;:::o;5012:806::-;5061:5;5091:8;5081:80;;-1:-1:-1;5132:1:1;5146:5;;5081:80;5180:4;5170:76;;-1:-1:-1;5217:1:1;5231:5;;5170:76;5262:4;5280:1;5275:59;;;;5348:1;5343:130;;;;5255:218;;5275:59;5305:1;5296:10;;5319:5;;;5343:130;5380:3;5370:8;5367:17;5364:43;;;5387:18;;:::i;:::-;-1:-1:-1;;5443:1:1;5429:16;;5458:5;;5255:218;;5557:2;5547:8;5544:16;5538:3;5532:4;5529:13;5525:36;5519:2;5509:8;5506:16;5501:2;5495:4;5492:12;5488:35;5485:77;5482:159;;;-1:-1:-1;5594:19:1;;;5626:5;;5482:159;5673:34;5698:8;5692:4;5673:34;:::i;:::-;5743:6;5739:1;5735:6;5731:19;5722:7;5719:32;5716:58;;;5754:18;;:::i;:::-;5792:20;;5012:806;-1:-1:-1;;;5012:806:1:o;5823:140::-;5881:5;5910:47;5951:4;5941:8;5937:19;5931:4;5910:47;:::i;5968:168::-;6041:9;;;6072;;6089:15;;;6083:22;;6069:37;6059:71;;6110:18;;:::i;6141:127::-;6202:10;6197:3;6193:20;6190:1;6183:31;6233:4;6230:1;6223:15;6257:4;6254:1;6247:15;6273:380;6352:1;6348:12;;;;6395;;;6416:61;;6470:4;6462:6;6458:17;6448:27;;6416:61;6523:2;6515:6;6512:14;6492:18;6489:38;6486:161;;6569:10;6564:3;6560:20;6557:1;6550:31;6604:4;6601:1;6594:15;6632:4;6629:1;6622:15;6784:545;6886:2;6881:3;6878:11;6875:448;;;6922:1;6947:5;6943:2;6936:17;6992:4;6988:2;6978:19;7062:2;7050:10;7046:19;7043:1;7039:27;7033:4;7029:38;7098:4;7086:10;7083:20;7080:47;;;-1:-1:-1;7121:4:1;7080:47;7176:2;7171:3;7167:12;7164:1;7160:20;7154:4;7150:31;7140:41;;7231:82;7249:2;7242:5;7239:13;7231:82;;;7294:17;;;7275:1;7264:13;7231:82;;6875:448;6784:545;;;:::o;7505:1206::-;7629:18;7624:3;7621:27;7618:53;;;7651:18;;:::i;:::-;7680:94;7770:3;7730:38;7762:4;7756:11;7730:38;:::i;:::-;7724:4;7680:94;:::i;:::-;7800:1;7825:2;7820:3;7817:11;7842:1;7837:616;;;;8497:1;8514:3;8511:93;;;-1:-1:-1;8570:19:1;;;8557:33;8511:93;-1:-1:-1;;7462:1:1;7458:11;;;7454:24;7450:29;7440:40;7486:1;7482:11;;;7437:57;8617:78;;7810:895;;7837:616;6731:1;6724:14;;;6768:4;6755:18;;-1:-1:-1;;7873:17:1;;;7974:9;7996:229;8010:7;8007:1;8004:14;7996:229;;;8099:19;;;8086:33;8071:49;;8206:4;8191:20;;;;8159:1;8147:14;;;;8026:12;7996:229;;;8000:3;8253;8244:7;8241:16;8238:159;;;8377:1;8373:6;8367:3;8361;8358:1;8354:11;8350:21;8346:34;8342:39;8329:9;8324:3;8320:19;8307:33;8303:79;8295:6;8288:95;8238:159;;;8440:1;8434:3;8431:1;8427:11;8423:19;8417:4;8410:33;7810:895;;;7505:1206;;;:::o;8716:251::-;8786:6;8839:2;8827:9;8818:7;8814:23;8810:32;8807:52;;;8855:1;8852;8845:12;8807:52;8887:9;8881:16;8906:31;8931:5;8906:31;:::i;9560:277::-;9627:6;9680:2;9668:9;9659:7;9655:23;9651:32;9648:52;;;9696:1;9693;9686:12;9648:52;9728:9;9722:16;9781:5;9774:13;9767:21;9760:5;9757:32;9747:60;;9803:1;9800;9793:12;9842:184;9912:6;9965:2;9953:9;9944:7;9940:23;9936:32;9933:52;;;9981:1;9978;9971:12;9933:52;-1:-1:-1;10004:16:1;;9842:184;-1:-1:-1;9842:184:1:o;10031:356::-;10233:2;10215:21;;;10252:18;;;10245:30;10311:34;10306:2;10291:18;;10284:62;10378:2;10363:18;;10031:356::o;10744:217::-;10784:1;10810;10800:132;;10854:10;10849:3;10845:20;10842:1;10835:31;10889:4;10886:1;10879:15;10917:4;10914:1;10907:15;10800:132;-1:-1:-1;10946:9:1;;10744:217::o;11933:306::-;12021:6;12029;12037;12090:2;12078:9;12069:7;12065:23;12061:32;12058:52;;;12106:1;12103;12096:12;12058:52;12135:9;12129:16;12119:26;;12185:2;12174:9;12170:18;12164:25;12154:35;;12229:2;12218:9;12214:18;12208:25;12198:35;;11933:306;;;;;:::o;14626:125::-;14691:9;;;14712:10;;;14709:36;;;14725:18;;:::i;15111:135::-;15150:3;15171:17;;;15168:43;;15191:18;;:::i;:::-;-1:-1:-1;15238:1:1;15227:13;;15111:135::o;15251:128::-;15318:9;;;15339:11;;;15336:37;;;15353:18;;:::i;15384:127::-;15445:10;15440:3;15436:20;15433:1;15426:31;15476:4;15473:1;15466:15;15500:4;15497:1;15490:15;15516:980;15778:4;15826:3;15815:9;15811:19;15857:6;15846:9;15839:25;15883:2;15921:6;15916:2;15905:9;15901:18;15894:34;15964:3;15959:2;15948:9;15944:18;15937:31;15988:6;16023;16017:13;16054:6;16046;16039:22;16092:3;16081:9;16077:19;16070:26;;16131:2;16123:6;16119:15;16105:29;;16152:1;16162:195;16176:6;16173:1;16170:13;16162:195;;;16241:13;;-1:-1:-1;;;;;16237:39:1;16225:52;;16332:15;;;;16297:12;;;;16273:1;16191:9;16162:195;;;-1:-1:-1;;;;;;;16413:32:1;;;;16408:2;16393:18;;16386:60;-1:-1:-1;;;16477:3:1;16462:19;16455:35;16374:3;15516:980;-1:-1:-1;;;15516:980:1:o

Swarm Source

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