ETH Price: $3,401.12 (+2.08%)

Token

Elder Doge (LordeEdge Inu)
 

Overview

Max Total Supply

1,000,000,000,000 LordeEdge Inu

Holders

35

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
18,177,582,768.634139577 LordeEdge Inu

Value
$0.00
0x495e2b2686f8ae9c9f6702b112ddf55c54072577
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:
LordeToken

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-11-08
*/

/**
 https://t.me/lordeedgeinu
 
 
 Recently Elon Musk changed his twitter name to Lorde Edge. Then what is Lorde Edge?
 According to Shibetoshi Nakamoto(Creator of Dogecoin), Lorde Edge is an anagram for elder doge.
 This is the Lorde Edge community which is supporting by doge coin and Elon Musk 

 https://twitter.com/elonmusk
 https://twitter.com/BillyM2k/status/1457543431564115972?s=20
*/

/**
 * 
 * 
 * 
 * SPDX-License-Identifier: UNLICENSED 
 * 
*/

pragma solidity ^0.8.4;

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

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

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    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 LordeToken is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private _bots;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1e12 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    
    string private constant _name = unicode"Elder Doge";
    string private constant _symbol = unicode"LordeEdge Inu";
    
    uint8 private constant _decimals = 9;
    uint256 private _taxFee = 1;
    uint256 private _teamFee = 9;
    uint256 private _previousTaxFee = _taxFee;
    uint256 private _previousteamFee = _teamFee;
    address payable private _FeeAddress;
    address payable private _marketingWalletAddress;
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen = false;
    bool private _noTaxMode = false;
    bool private inSwap = false;
    uint256 private walletLimitDuration;
    struct User {
        uint256 buyCD;
        bool exists;
    }

    event MaxBuyAmountUpdated(uint _maxBuyAmount);
    event CooldownEnabledUpdated(bool _cooldown);
    event FeeMultiplierUpdated(uint _multiplier);
    event FeeRateUpdated(uint _rate);

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
        constructor (address payable FeeAddress, address payable marketingWalletAddress) {
        _FeeAddress = FeeAddress;
        _marketingWalletAddress = marketingWalletAddress;
        _rOwned[_msgSender()] = _rTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[FeeAddress] = true;
        _isExcludedFromFee[marketingWalletAddress] = 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 tokenFromReflection(_rOwned[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 tokenFromReflection(uint256 rAmount) private view returns(uint256) {
        require(rAmount <= _rTotal, "Amount must be less than total reflections");
        uint256 currentRate =  _getRate();
        return rAmount.div(currentRate);
    }

    function removeAllFee() private {
        if(_taxFee == 0 && _teamFee == 0) return;
        _previousTaxFee = _taxFee;
        _previousteamFee = _teamFee;
        _taxFee = 0;
        _teamFee = 0;
    }
    
    function restoreAllFee() private {
        _taxFee = _previousTaxFee;
        _teamFee = _previousteamFee;
    }

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

        if(from != owner() && to != owner()) {
            
            require(!_bots[from] && !_bots[to]);
            
            if(from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to]) {
                require(tradingOpen, "Trading not yet enabled.");
                
                if (walletLimitDuration > block.timestamp) {
                    uint walletBalance = balanceOf(address(to));
                    require(amount.add(walletBalance) <= _tTotal.mul(2).div(100));
                }
            }
            uint256 contractTokenBalance = balanceOf(address(this));

            if(!inSwap && from != uniswapV2Pair && tradingOpen) {
                if(contractTokenBalance > 0) {
                    if(contractTokenBalance > balanceOf(uniswapV2Pair).mul(5).div(100)) {
                        contractTokenBalance = balanceOf(uniswapV2Pair).mul(5).div(100);
                    }
                    swapTokensForEth(contractTokenBalance);
                }
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
        bool takeFee = true;

        if(_isExcludedFromFee[from] || _isExcludedFromFee[to] || _noTaxMode){
            takeFee = false;
        }
        
        _tokenTransfer(from,to,amount,takeFee);
    }

    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 sendETHToFee(uint256 amount) private {
        _FeeAddress.transfer(amount.div(2));
        _marketingWalletAddress.transfer(amount.div(2));
    }
    
    function _tokenTransfer(address sender, address recipient, uint256 amount, bool takeFee) private {
        if(!takeFee)
            removeAllFee();
        _transferStandard(sender, recipient, amount);
        if(!takeFee)
            restoreAllFee();
    }

    function _transferStandard(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); 

        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _taxFee, _teamFee);
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate);
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }

    function _getTValues(uint256 tAmount, uint256 taxFee, uint256 TeamFee) private pure returns (uint256, uint256, uint256) {
        uint256 tFee = tAmount.mul(taxFee).div(100);
        uint256 tTeam = tAmount.mul(TeamFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
        return (tTransferAmount, tFee, tTeam);
    }

    function _getRate() private view returns(uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns(uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;
        if(rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }

    function _getRValues(uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate) private pure returns (uint256, uint256, uint256) {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
        return (rAmount, rTransferAmount, rFee);
    }

    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate =  _getRate();
        uint256 rTeam = tTeam.mul(currentRate);

        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    receive() external payable {}
    
    function openTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        _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;
        walletLimitDuration = block.timestamp + (60 minutes);
    }
    
    function setMarketingWallet (address payable marketingWalletAddress) external {
        require(_msgSender() == _FeeAddress);
        _isExcludedFromFee[_marketingWalletAddress] = false;
        _marketingWalletAddress = marketingWalletAddress;
        _isExcludedFromFee[marketingWalletAddress] = true;
    }

    function excludeFromFee (address payable ad) external {
        require(_msgSender() == _FeeAddress);
        _isExcludedFromFee[ad] = true;
    }
    
    function includeToFee (address payable ad) external {
        require(_msgSender() == _FeeAddress);
        _isExcludedFromFee[ad] = false;
    }
    
    function setNoTaxMode(bool onoff) external {
        require(_msgSender() == _FeeAddress);
        _noTaxMode = onoff;
    }
    
    function setTeamFee(uint256 team) external {
        require(_msgSender() == _FeeAddress);
        require(team <= 7);
        _teamFee = team;
    }
        
    function setTaxFee(uint256 tax) external {
        require(_msgSender() == _FeeAddress);
        require(tax <= 1);
        _taxFee = tax;
    }
    
    function setBots(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            if (bots_[i] != uniswapV2Pair && bots_[i] != address(uniswapV2Router)) {
                _bots[bots_[i]] = true;
            }
        }
    }
    
    function delBot(address notbot) public onlyOwner {
        _bots[notbot] = false;
    }
    
    function isBot(address ad) public view returns (bool) {
        return _bots[ad];
    }
    
    function manualswap() external {
        require(_msgSender() == _FeeAddress);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }
    
    function manualsend() external {
        require(_msgSender() == _FeeAddress);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }

    function thisBalance() public view returns (uint) {
        return balanceOf(address(this));
    }

    function amountInPool() public view returns (uint) {
        return balanceOf(uniswapV2Pair);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"FeeAddress","type":"address"},{"internalType":"address payable","name":"marketingWalletAddress","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":"bool","name":"_cooldown","type":"bool"}],"name":"CooldownEnabledUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_multiplier","type":"uint256"}],"name":"FeeMultiplierUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_rate","type":"uint256"}],"name":"FeeRateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxBuyAmount","type":"uint256"}],"name":"MaxBuyAmountUpdated","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":[{"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":[],"name":"amountInPool","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":"delBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"ad","type":"address"}],"name":"excludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"ad","type":"address"}],"name":"includeToFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"ad","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualsend","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":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"marketingWalletAddress","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setNoTaxMode","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tax","type":"uint256"}],"name":"setTaxFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"team","type":"uint256"}],"name":"setTeamFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"thisBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052683635c9adc5dea000006000196200001d91906200057d565b6000196200002c919062000504565b60075560016009556009600a55600954600b55600a54600c556000601060146101000a81548160ff0219169083151502179055506000601060156101000a81548160ff0219169083151502179055506000601060166101000a81548160ff021916908315150217905550348015620000a357600080fd5b5060405162004222380380620042228339818101604052810190620000c991906200048f565b6000620000db6200044760201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060075460026000620002126200044760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160056000620002666200044f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003cf6200044760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef683635c9adc5dea00000604051620004379190620004e7565b60405180910390a3505062000632565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081519050620004898162000618565b92915050565b60008060408385031215620004a957620004a862000613565b5b6000620004b98582860162000478565b9250506020620004cc8582860162000478565b9150509250929050565b620004e18162000573565b82525050565b6000602082019050620004fe6000830184620004d6565b92915050565b6000620005118262000573565b91506200051e8362000573565b925082821015620005345762000533620005b5565b5b828203905092915050565b60006200054c8262000553565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006200058a8262000573565b9150620005978362000573565b925082620005aa57620005a9620005e4565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600080fd5b62000623816200053f565b81146200062f57600080fd5b50565b613be080620006426000396000f3fe60806040526004361061016a5760003560e01c806370a08231116100d1578063c3c8cd801161008a578063cf0848f711610064578063cf0848f7146104fb578063db92dbb614610524578063dd62ed3e1461054f578063e6ec64ec1461058c57610171565b8063c3c8cd80146104a4578063c4081a4c146104bb578063c9567bf9146104e457610171565b806370a0823114610394578063715018a6146103d15780638da5cb5b146103e857806395d89b4114610413578063a9059cbb1461043e578063b515566a1461047b57610171565b8063313ce56711610123578063313ce5671461029a5780633bbac579146102c5578063437823ec146103025780634b740b161461032b5780635d098b38146103545780636fc3eaec1461037d57610171565b806306fdde0314610176578063095ea7b3146101a157806318160ddd146101de57806323b872dd14610209578063273123b71461024657806327f3a72a1461026f57610171565b3661017157005b600080fd5b34801561018257600080fd5b5061018b6105b5565b6040516101989190613285565b60405180910390f35b3480156101ad57600080fd5b506101c860048036038101906101c39190612daf565b6105f2565b6040516101d5919061326a565b60405180910390f35b3480156101ea57600080fd5b506101f3610610565b6040516102009190613407565b60405180910390f35b34801561021557600080fd5b50610230600480360381019061022b9190612d5c565b610621565b60405161023d919061326a565b60405180910390f35b34801561025257600080fd5b5061026d60048036038101906102689190612c95565b6106fa565b005b34801561027b57600080fd5b506102846107ea565b6040516102919190613407565b60405180910390f35b3480156102a657600080fd5b506102af6107fa565b6040516102bc919061347c565b60405180910390f35b3480156102d157600080fd5b506102ec60048036038101906102e79190612c95565b610803565b6040516102f9919061326a565b60405180910390f35b34801561030e57600080fd5b5061032960048036038101906103249190612cef565b610859565b005b34801561033757600080fd5b50610352600480360381019061034d9190612e38565b610915565b005b34801561036057600080fd5b5061037b60048036038101906103769190612cef565b610993565b005b34801561038957600080fd5b50610392610b0a565b005b3480156103a057600080fd5b506103bb60048036038101906103b69190612c95565b610b7c565b6040516103c89190613407565b60405180910390f35b3480156103dd57600080fd5b506103e6610bcd565b005b3480156103f457600080fd5b506103fd610d20565b60405161040a919061319c565b60405180910390f35b34801561041f57600080fd5b50610428610d49565b6040516104359190613285565b60405180910390f35b34801561044a57600080fd5b5061046560048036038101906104609190612daf565b610d86565b604051610472919061326a565b60405180910390f35b34801561048757600080fd5b506104a2600480360381019061049d9190612def565b610da4565b005b3480156104b057600080fd5b506104b9610fb4565b005b3480156104c757600080fd5b506104e260048036038101906104dd9190612e92565b61102e565b005b3480156104f057600080fd5b506104f96110a7565b005b34801561050757600080fd5b50610522600480360381019061051d9190612cef565b6115d2565b005b34801561053057600080fd5b5061053961168e565b6040516105469190613407565b60405180910390f35b34801561055b57600080fd5b5061057660048036038101906105719190612d1c565b6116c0565b6040516105839190613407565b60405180910390f35b34801561059857600080fd5b506105b360048036038101906105ae9190612e92565b611747565b005b60606040518060400160405280600a81526020017f456c64657220446f676500000000000000000000000000000000000000000000815250905090565b60006106066105ff6117c0565b84846117c8565b6001905092915050565b6000683635c9adc5dea00000905090565b600061062e848484611993565b6106ef8461063a6117c0565b6106ea85604051806060016040528060288152602001613b8360289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106a06117c0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fe59092919063ffffffff16565b6117c8565b600190509392505050565b6107026117c0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461078f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078690613347565b60405180910390fd5b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006107f530610b7c565b905090565b60006009905090565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661089a6117c0565b73ffffffffffffffffffffffffffffffffffffffff16146108ba57600080fd5b6001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109566117c0565b73ffffffffffffffffffffffffffffffffffffffff161461097657600080fd5b80601060156101000a81548160ff02191690831515021790555050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109d46117c0565b73ffffffffffffffffffffffffffffffffffffffff16146109f457600080fd5b600060056000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b4b6117c0565b73ffffffffffffffffffffffffffffffffffffffff1614610b6b57600080fd5b6000479050610b7981612049565b50565b6000610bc6600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612144565b9050919050565b610bd56117c0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5990613347565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600d81526020017f4c6f7264654564676520496e7500000000000000000000000000000000000000815250905090565b6000610d9a610d936117c0565b8484611993565b6001905092915050565b610dac6117c0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e39576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3090613347565b60405180910390fd5b60005b8151811015610fb057601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16828281518110610e9157610e906137d6565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614158015610f255750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16828281518110610f0457610f036137d6565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610f9d57600160066000848481518110610f4357610f426137d6565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b8080610fa89061372f565b915050610e3c565b5050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ff56117c0565b73ffffffffffffffffffffffffffffffffffffffff161461101557600080fd5b600061102030610b7c565b905061102b816121b2565b50565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661106f6117c0565b73ffffffffffffffffffffffffffffffffffffffff161461108f57600080fd5b600181111561109d57600080fd5b8060098190555050565b6110af6117c0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461113c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113390613347565b60405180910390fd5b601060149054906101000a900460ff161561118c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611183906133c7565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061121c30600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16683635c9adc5dea000006117c8565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561126257600080fd5b505afa158015611276573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061129a9190612cc2565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156112fc57600080fd5b505afa158015611310573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113349190612cc2565b6040518363ffffffff1660e01b81526004016113519291906131b7565b602060405180830381600087803b15801561136b57600080fd5b505af115801561137f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a39190612cc2565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061142c30610b7c565b600080611437610d20565b426040518863ffffffff1660e01b815260040161145996959493929190613209565b6060604051808303818588803b15801561147257600080fd5b505af1158015611486573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906114ab9190612ebf565b505050601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161154d9291906131e0565b602060405180830381600087803b15801561156757600080fd5b505af115801561157b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159f9190612e65565b506001601060146101000a81548160ff021916908315150217905550610e10426115c9919061353d565b60118190555050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166116136117c0565b73ffffffffffffffffffffffffffffffffffffffff161461163357600080fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006116bb601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610b7c565b905090565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166117886117c0565b73ffffffffffffffffffffffffffffffffffffffff16146117a857600080fd5b60078111156117b657600080fd5b80600a8190555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611838576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182f906133a7565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189f906132e7565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516119869190613407565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611a03576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119fa90613387565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6a906132a7565b60405180910390fd5b60008111611ab6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aad90613367565b60405180910390fd5b611abe610d20565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611b2c5750611afc610d20565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611f0b57600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015611bd55750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b611bde57600080fd5b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611c895750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611cdf5750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611d9b57601060149054906101000a900460ff16611d33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d2a906133e7565b60405180910390fd5b426011541115611d9a576000611d4883610b7c565b9050611d7a6064611d6c6002683635c9adc5dea0000061243a90919063ffffffff16565b6124b590919063ffffffff16565b611d8d82846124ff90919063ffffffff16565b1115611d9857600080fd5b505b5b6000611da630610b7c565b9050601060169054906101000a900460ff16158015611e135750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611e2b5750601060149054906101000a900460ff165b15611f09576000811115611eef57611e8a6064611e7c6005611e6e601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610b7c565b61243a90919063ffffffff16565b6124b590919063ffffffff16565b811115611ee557611ee26064611ed46005611ec6601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610b7c565b61243a90919063ffffffff16565b6124b590919063ffffffff16565b90505b611eee816121b2565b5b60004790506000811115611f0757611f0647612049565b5b505b505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611fb25750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611fc95750601060159054906101000a900460ff165b15611fd357600090505b611fdf8484848461255d565b50505050565b600083831115829061202d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120249190613285565b60405180910390fd5b506000838561203c919061361e565b9050809150509392505050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6120996002846124b590919063ffffffff16565b9081150290604051600060405180830381858888f193505050501580156120c4573d6000803e3d6000fd5b50600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6121156002846124b590919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015612140573d6000803e3d6000fd5b5050565b600060075482111561218b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612182906132c7565b60405180910390fd5b600061219561258a565b90506121aa81846124b590919063ffffffff16565b915050919050565b6001601060166101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156121ea576121e9613805565b5b6040519080825280602002602001820160405280156122185781602001602082028036833780820191505090505b50905030816000815181106122305761222f6137d6565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156122d257600080fd5b505afa1580156122e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230a9190612cc2565b8160018151811061231e5761231d6137d6565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061238530600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846117c8565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016123e9959493929190613422565b600060405180830381600087803b15801561240357600080fd5b505af1158015612417573d6000803e3d6000fd5b50505050506000601060166101000a81548160ff02191690831515021790555050565b60008083141561244d57600090506124af565b6000828461245b91906135c4565b905082848261246a9190613593565b146124aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124a190613327565b60405180910390fd5b809150505b92915050565b60006124f783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506125b5565b905092915050565b600080828461250e919061353d565b905083811015612553576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161254a90613307565b60405180910390fd5b8091505092915050565b8061256b5761256a612618565b5b61257684848461265b565b8061258457612583612826565b5b50505050565b600080600061259761283a565b915091506125ae81836124b590919063ffffffff16565b9250505090565b600080831182906125fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125f39190613285565b60405180910390fd5b506000838561260b9190613593565b9050809150509392505050565b600060095414801561262c57506000600a54145b1561263657612659565b600954600b81905550600a54600c8190555060006009819055506000600a819055505b565b60008060008060008061266d8761289c565b9550955095509550955095506126cb86600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461290490919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061276085600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124ff90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506127ac8161294e565b6127b68483612a0b565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516128139190613407565b60405180910390a3505050505050505050565b600b54600981905550600c54600a81905550565b600080600060075490506000683635c9adc5dea000009050612870683635c9adc5dea000006007546124b590919063ffffffff16565b82101561288f57600754683635c9adc5dea00000935093505050612898565b81819350935050505b9091565b60008060008060008060008060006128b98a600954600a54612a45565b92509250925060006128c961258a565b905060008060006128dc8e878787612adb565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061294683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611fe5565b905092915050565b600061295861258a565b9050600061296f828461243a90919063ffffffff16565b90506129c381600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124ff90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b612a208260075461290490919063ffffffff16565b600781905550612a3b816008546124ff90919063ffffffff16565b6008819055505050565b600080600080612a716064612a63888a61243a90919063ffffffff16565b6124b590919063ffffffff16565b90506000612a9b6064612a8d888b61243a90919063ffffffff16565b6124b590919063ffffffff16565b90506000612ac482612ab6858c61290490919063ffffffff16565b61290490919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612af4858961243a90919063ffffffff16565b90506000612b0b868961243a90919063ffffffff16565b90506000612b22878961243a90919063ffffffff16565b90506000612b4b82612b3d858761290490919063ffffffff16565b61290490919063ffffffff16565b9050838184965096509650505050509450945094915050565b6000612b77612b72846134bc565b613497565b90508083825260208201905082856020860282011115612b9a57612b99613839565b5b60005b85811015612bca5781612bb08882612bd4565b845260208401935060208301925050600181019050612b9d565b5050509392505050565b600081359050612be381613b26565b92915050565b600081519050612bf881613b26565b92915050565b600081359050612c0d81613b3d565b92915050565b600082601f830112612c2857612c27613834565b5b8135612c38848260208601612b64565b91505092915050565b600081359050612c5081613b54565b92915050565b600081519050612c6581613b54565b92915050565b600081359050612c7a81613b6b565b92915050565b600081519050612c8f81613b6b565b92915050565b600060208284031215612cab57612caa613843565b5b6000612cb984828501612bd4565b91505092915050565b600060208284031215612cd857612cd7613843565b5b6000612ce684828501612be9565b91505092915050565b600060208284031215612d0557612d04613843565b5b6000612d1384828501612bfe565b91505092915050565b60008060408385031215612d3357612d32613843565b5b6000612d4185828601612bd4565b9250506020612d5285828601612bd4565b9150509250929050565b600080600060608486031215612d7557612d74613843565b5b6000612d8386828701612bd4565b9350506020612d9486828701612bd4565b9250506040612da586828701612c6b565b9150509250925092565b60008060408385031215612dc657612dc5613843565b5b6000612dd485828601612bd4565b9250506020612de585828601612c6b565b9150509250929050565b600060208284031215612e0557612e04613843565b5b600082013567ffffffffffffffff811115612e2357612e2261383e565b5b612e2f84828501612c13565b91505092915050565b600060208284031215612e4e57612e4d613843565b5b6000612e5c84828501612c41565b91505092915050565b600060208284031215612e7b57612e7a613843565b5b6000612e8984828501612c56565b91505092915050565b600060208284031215612ea857612ea7613843565b5b6000612eb684828501612c6b565b91505092915050565b600080600060608486031215612ed857612ed7613843565b5b6000612ee686828701612c80565b9350506020612ef786828701612c80565b9250506040612f0886828701612c80565b9150509250925092565b6000612f1e8383612f2a565b60208301905092915050565b612f3381613652565b82525050565b612f4281613652565b82525050565b6000612f53826134f8565b612f5d818561351b565b9350612f68836134e8565b8060005b83811015612f99578151612f808882612f12565b9750612f8b8361350e565b925050600181019050612f6c565b5085935050505092915050565b612faf81613676565b82525050565b612fbe816136b9565b82525050565b6000612fcf82613503565b612fd9818561352c565b9350612fe98185602086016136cb565b612ff281613848565b840191505092915050565b600061300a60238361352c565b915061301582613859565b604082019050919050565b600061302d602a8361352c565b9150613038826138a8565b604082019050919050565b600061305060228361352c565b915061305b826138f7565b604082019050919050565b6000613073601b8361352c565b915061307e82613946565b602082019050919050565b600061309660218361352c565b91506130a18261396f565b604082019050919050565b60006130b960208361352c565b91506130c4826139be565b602082019050919050565b60006130dc60298361352c565b91506130e7826139e7565b604082019050919050565b60006130ff60258361352c565b915061310a82613a36565b604082019050919050565b600061312260248361352c565b915061312d82613a85565b604082019050919050565b600061314560178361352c565b915061315082613ad4565b602082019050919050565b600061316860188361352c565b915061317382613afd565b602082019050919050565b613187816136a2565b82525050565b613196816136ac565b82525050565b60006020820190506131b16000830184612f39565b92915050565b60006040820190506131cc6000830185612f39565b6131d96020830184612f39565b9392505050565b60006040820190506131f56000830185612f39565b613202602083018461317e565b9392505050565b600060c08201905061321e6000830189612f39565b61322b602083018861317e565b6132386040830187612fb5565b6132456060830186612fb5565b6132526080830185612f39565b61325f60a083018461317e565b979650505050505050565b600060208201905061327f6000830184612fa6565b92915050565b6000602082019050818103600083015261329f8184612fc4565b905092915050565b600060208201905081810360008301526132c081612ffd565b9050919050565b600060208201905081810360008301526132e081613020565b9050919050565b6000602082019050818103600083015261330081613043565b9050919050565b6000602082019050818103600083015261332081613066565b9050919050565b6000602082019050818103600083015261334081613089565b9050919050565b60006020820190508181036000830152613360816130ac565b9050919050565b60006020820190508181036000830152613380816130cf565b9050919050565b600060208201905081810360008301526133a0816130f2565b9050919050565b600060208201905081810360008301526133c081613115565b9050919050565b600060208201905081810360008301526133e081613138565b9050919050565b600060208201905081810360008301526134008161315b565b9050919050565b600060208201905061341c600083018461317e565b92915050565b600060a082019050613437600083018861317e565b6134446020830187612fb5565b81810360408301526134568186612f48565b90506134656060830185612f39565b613472608083018461317e565b9695505050505050565b6000602082019050613491600083018461318d565b92915050565b60006134a16134b2565b90506134ad82826136fe565b919050565b6000604051905090565b600067ffffffffffffffff8211156134d7576134d6613805565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000613548826136a2565b9150613553836136a2565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561358857613587613778565b5b828201905092915050565b600061359e826136a2565b91506135a9836136a2565b9250826135b9576135b86137a7565b5b828204905092915050565b60006135cf826136a2565b91506135da836136a2565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561361357613612613778565b5b828202905092915050565b6000613629826136a2565b9150613634836136a2565b92508282101561364757613646613778565b5b828203905092915050565b600061365d82613682565b9050919050565b600061366f82613682565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006136c4826136a2565b9050919050565b60005b838110156136e95780820151818401526020810190506136ce565b838111156136f8576000848401525b50505050565b61370782613848565b810181811067ffffffffffffffff8211171561372657613725613805565b5b80604052505050565b600061373a826136a2565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561376d5761376c613778565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b7f54726164696e67206e6f742079657420656e61626c65642e0000000000000000600082015250565b613b2f81613652565b8114613b3a57600080fd5b50565b613b4681613664565b8114613b5157600080fd5b50565b613b5d81613676565b8114613b6857600080fd5b50565b613b74816136a2565b8114613b7f57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220db52a11bf2c039e3c76ee1691423d60ef37cfb73c8047903b01357bc92f94e6364736f6c634300080700330000000000000000000000006c8f4c84177e067ebd676a76e994ec0ddc85c0640000000000000000000000006c8f4c84177e067ebd676a76e994ec0ddc85c064

Deployed Bytecode

0x60806040526004361061016a5760003560e01c806370a08231116100d1578063c3c8cd801161008a578063cf0848f711610064578063cf0848f7146104fb578063db92dbb614610524578063dd62ed3e1461054f578063e6ec64ec1461058c57610171565b8063c3c8cd80146104a4578063c4081a4c146104bb578063c9567bf9146104e457610171565b806370a0823114610394578063715018a6146103d15780638da5cb5b146103e857806395d89b4114610413578063a9059cbb1461043e578063b515566a1461047b57610171565b8063313ce56711610123578063313ce5671461029a5780633bbac579146102c5578063437823ec146103025780634b740b161461032b5780635d098b38146103545780636fc3eaec1461037d57610171565b806306fdde0314610176578063095ea7b3146101a157806318160ddd146101de57806323b872dd14610209578063273123b71461024657806327f3a72a1461026f57610171565b3661017157005b600080fd5b34801561018257600080fd5b5061018b6105b5565b6040516101989190613285565b60405180910390f35b3480156101ad57600080fd5b506101c860048036038101906101c39190612daf565b6105f2565b6040516101d5919061326a565b60405180910390f35b3480156101ea57600080fd5b506101f3610610565b6040516102009190613407565b60405180910390f35b34801561021557600080fd5b50610230600480360381019061022b9190612d5c565b610621565b60405161023d919061326a565b60405180910390f35b34801561025257600080fd5b5061026d60048036038101906102689190612c95565b6106fa565b005b34801561027b57600080fd5b506102846107ea565b6040516102919190613407565b60405180910390f35b3480156102a657600080fd5b506102af6107fa565b6040516102bc919061347c565b60405180910390f35b3480156102d157600080fd5b506102ec60048036038101906102e79190612c95565b610803565b6040516102f9919061326a565b60405180910390f35b34801561030e57600080fd5b5061032960048036038101906103249190612cef565b610859565b005b34801561033757600080fd5b50610352600480360381019061034d9190612e38565b610915565b005b34801561036057600080fd5b5061037b60048036038101906103769190612cef565b610993565b005b34801561038957600080fd5b50610392610b0a565b005b3480156103a057600080fd5b506103bb60048036038101906103b69190612c95565b610b7c565b6040516103c89190613407565b60405180910390f35b3480156103dd57600080fd5b506103e6610bcd565b005b3480156103f457600080fd5b506103fd610d20565b60405161040a919061319c565b60405180910390f35b34801561041f57600080fd5b50610428610d49565b6040516104359190613285565b60405180910390f35b34801561044a57600080fd5b5061046560048036038101906104609190612daf565b610d86565b604051610472919061326a565b60405180910390f35b34801561048757600080fd5b506104a2600480360381019061049d9190612def565b610da4565b005b3480156104b057600080fd5b506104b9610fb4565b005b3480156104c757600080fd5b506104e260048036038101906104dd9190612e92565b61102e565b005b3480156104f057600080fd5b506104f96110a7565b005b34801561050757600080fd5b50610522600480360381019061051d9190612cef565b6115d2565b005b34801561053057600080fd5b5061053961168e565b6040516105469190613407565b60405180910390f35b34801561055b57600080fd5b5061057660048036038101906105719190612d1c565b6116c0565b6040516105839190613407565b60405180910390f35b34801561059857600080fd5b506105b360048036038101906105ae9190612e92565b611747565b005b60606040518060400160405280600a81526020017f456c64657220446f676500000000000000000000000000000000000000000000815250905090565b60006106066105ff6117c0565b84846117c8565b6001905092915050565b6000683635c9adc5dea00000905090565b600061062e848484611993565b6106ef8461063a6117c0565b6106ea85604051806060016040528060288152602001613b8360289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106a06117c0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fe59092919063ffffffff16565b6117c8565b600190509392505050565b6107026117c0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461078f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078690613347565b60405180910390fd5b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006107f530610b7c565b905090565b60006009905090565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661089a6117c0565b73ffffffffffffffffffffffffffffffffffffffff16146108ba57600080fd5b6001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109566117c0565b73ffffffffffffffffffffffffffffffffffffffff161461097657600080fd5b80601060156101000a81548160ff02191690831515021790555050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109d46117c0565b73ffffffffffffffffffffffffffffffffffffffff16146109f457600080fd5b600060056000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b4b6117c0565b73ffffffffffffffffffffffffffffffffffffffff1614610b6b57600080fd5b6000479050610b7981612049565b50565b6000610bc6600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612144565b9050919050565b610bd56117c0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5990613347565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600d81526020017f4c6f7264654564676520496e7500000000000000000000000000000000000000815250905090565b6000610d9a610d936117c0565b8484611993565b6001905092915050565b610dac6117c0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e39576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3090613347565b60405180910390fd5b60005b8151811015610fb057601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16828281518110610e9157610e906137d6565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614158015610f255750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16828281518110610f0457610f036137d6565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610f9d57600160066000848481518110610f4357610f426137d6565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b8080610fa89061372f565b915050610e3c565b5050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ff56117c0565b73ffffffffffffffffffffffffffffffffffffffff161461101557600080fd5b600061102030610b7c565b905061102b816121b2565b50565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661106f6117c0565b73ffffffffffffffffffffffffffffffffffffffff161461108f57600080fd5b600181111561109d57600080fd5b8060098190555050565b6110af6117c0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461113c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113390613347565b60405180910390fd5b601060149054906101000a900460ff161561118c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611183906133c7565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061121c30600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16683635c9adc5dea000006117c8565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561126257600080fd5b505afa158015611276573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061129a9190612cc2565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156112fc57600080fd5b505afa158015611310573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113349190612cc2565b6040518363ffffffff1660e01b81526004016113519291906131b7565b602060405180830381600087803b15801561136b57600080fd5b505af115801561137f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a39190612cc2565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061142c30610b7c565b600080611437610d20565b426040518863ffffffff1660e01b815260040161145996959493929190613209565b6060604051808303818588803b15801561147257600080fd5b505af1158015611486573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906114ab9190612ebf565b505050601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161154d9291906131e0565b602060405180830381600087803b15801561156757600080fd5b505af115801561157b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159f9190612e65565b506001601060146101000a81548160ff021916908315150217905550610e10426115c9919061353d565b60118190555050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166116136117c0565b73ffffffffffffffffffffffffffffffffffffffff161461163357600080fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006116bb601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610b7c565b905090565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166117886117c0565b73ffffffffffffffffffffffffffffffffffffffff16146117a857600080fd5b60078111156117b657600080fd5b80600a8190555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611838576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182f906133a7565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189f906132e7565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516119869190613407565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611a03576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119fa90613387565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6a906132a7565b60405180910390fd5b60008111611ab6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aad90613367565b60405180910390fd5b611abe610d20565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611b2c5750611afc610d20565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611f0b57600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015611bd55750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b611bde57600080fd5b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611c895750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611cdf5750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611d9b57601060149054906101000a900460ff16611d33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d2a906133e7565b60405180910390fd5b426011541115611d9a576000611d4883610b7c565b9050611d7a6064611d6c6002683635c9adc5dea0000061243a90919063ffffffff16565b6124b590919063ffffffff16565b611d8d82846124ff90919063ffffffff16565b1115611d9857600080fd5b505b5b6000611da630610b7c565b9050601060169054906101000a900460ff16158015611e135750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611e2b5750601060149054906101000a900460ff165b15611f09576000811115611eef57611e8a6064611e7c6005611e6e601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610b7c565b61243a90919063ffffffff16565b6124b590919063ffffffff16565b811115611ee557611ee26064611ed46005611ec6601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610b7c565b61243a90919063ffffffff16565b6124b590919063ffffffff16565b90505b611eee816121b2565b5b60004790506000811115611f0757611f0647612049565b5b505b505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611fb25750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611fc95750601060159054906101000a900460ff165b15611fd357600090505b611fdf8484848461255d565b50505050565b600083831115829061202d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120249190613285565b60405180910390fd5b506000838561203c919061361e565b9050809150509392505050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6120996002846124b590919063ffffffff16565b9081150290604051600060405180830381858888f193505050501580156120c4573d6000803e3d6000fd5b50600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6121156002846124b590919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015612140573d6000803e3d6000fd5b5050565b600060075482111561218b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612182906132c7565b60405180910390fd5b600061219561258a565b90506121aa81846124b590919063ffffffff16565b915050919050565b6001601060166101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156121ea576121e9613805565b5b6040519080825280602002602001820160405280156122185781602001602082028036833780820191505090505b50905030816000815181106122305761222f6137d6565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156122d257600080fd5b505afa1580156122e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230a9190612cc2565b8160018151811061231e5761231d6137d6565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061238530600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846117c8565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016123e9959493929190613422565b600060405180830381600087803b15801561240357600080fd5b505af1158015612417573d6000803e3d6000fd5b50505050506000601060166101000a81548160ff02191690831515021790555050565b60008083141561244d57600090506124af565b6000828461245b91906135c4565b905082848261246a9190613593565b146124aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124a190613327565b60405180910390fd5b809150505b92915050565b60006124f783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506125b5565b905092915050565b600080828461250e919061353d565b905083811015612553576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161254a90613307565b60405180910390fd5b8091505092915050565b8061256b5761256a612618565b5b61257684848461265b565b8061258457612583612826565b5b50505050565b600080600061259761283a565b915091506125ae81836124b590919063ffffffff16565b9250505090565b600080831182906125fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125f39190613285565b60405180910390fd5b506000838561260b9190613593565b9050809150509392505050565b600060095414801561262c57506000600a54145b1561263657612659565b600954600b81905550600a54600c8190555060006009819055506000600a819055505b565b60008060008060008061266d8761289c565b9550955095509550955095506126cb86600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461290490919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061276085600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124ff90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506127ac8161294e565b6127b68483612a0b565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516128139190613407565b60405180910390a3505050505050505050565b600b54600981905550600c54600a81905550565b600080600060075490506000683635c9adc5dea000009050612870683635c9adc5dea000006007546124b590919063ffffffff16565b82101561288f57600754683635c9adc5dea00000935093505050612898565b81819350935050505b9091565b60008060008060008060008060006128b98a600954600a54612a45565b92509250925060006128c961258a565b905060008060006128dc8e878787612adb565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061294683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611fe5565b905092915050565b600061295861258a565b9050600061296f828461243a90919063ffffffff16565b90506129c381600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124ff90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b612a208260075461290490919063ffffffff16565b600781905550612a3b816008546124ff90919063ffffffff16565b6008819055505050565b600080600080612a716064612a63888a61243a90919063ffffffff16565b6124b590919063ffffffff16565b90506000612a9b6064612a8d888b61243a90919063ffffffff16565b6124b590919063ffffffff16565b90506000612ac482612ab6858c61290490919063ffffffff16565b61290490919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612af4858961243a90919063ffffffff16565b90506000612b0b868961243a90919063ffffffff16565b90506000612b22878961243a90919063ffffffff16565b90506000612b4b82612b3d858761290490919063ffffffff16565b61290490919063ffffffff16565b9050838184965096509650505050509450945094915050565b6000612b77612b72846134bc565b613497565b90508083825260208201905082856020860282011115612b9a57612b99613839565b5b60005b85811015612bca5781612bb08882612bd4565b845260208401935060208301925050600181019050612b9d565b5050509392505050565b600081359050612be381613b26565b92915050565b600081519050612bf881613b26565b92915050565b600081359050612c0d81613b3d565b92915050565b600082601f830112612c2857612c27613834565b5b8135612c38848260208601612b64565b91505092915050565b600081359050612c5081613b54565b92915050565b600081519050612c6581613b54565b92915050565b600081359050612c7a81613b6b565b92915050565b600081519050612c8f81613b6b565b92915050565b600060208284031215612cab57612caa613843565b5b6000612cb984828501612bd4565b91505092915050565b600060208284031215612cd857612cd7613843565b5b6000612ce684828501612be9565b91505092915050565b600060208284031215612d0557612d04613843565b5b6000612d1384828501612bfe565b91505092915050565b60008060408385031215612d3357612d32613843565b5b6000612d4185828601612bd4565b9250506020612d5285828601612bd4565b9150509250929050565b600080600060608486031215612d7557612d74613843565b5b6000612d8386828701612bd4565b9350506020612d9486828701612bd4565b9250506040612da586828701612c6b565b9150509250925092565b60008060408385031215612dc657612dc5613843565b5b6000612dd485828601612bd4565b9250506020612de585828601612c6b565b9150509250929050565b600060208284031215612e0557612e04613843565b5b600082013567ffffffffffffffff811115612e2357612e2261383e565b5b612e2f84828501612c13565b91505092915050565b600060208284031215612e4e57612e4d613843565b5b6000612e5c84828501612c41565b91505092915050565b600060208284031215612e7b57612e7a613843565b5b6000612e8984828501612c56565b91505092915050565b600060208284031215612ea857612ea7613843565b5b6000612eb684828501612c6b565b91505092915050565b600080600060608486031215612ed857612ed7613843565b5b6000612ee686828701612c80565b9350506020612ef786828701612c80565b9250506040612f0886828701612c80565b9150509250925092565b6000612f1e8383612f2a565b60208301905092915050565b612f3381613652565b82525050565b612f4281613652565b82525050565b6000612f53826134f8565b612f5d818561351b565b9350612f68836134e8565b8060005b83811015612f99578151612f808882612f12565b9750612f8b8361350e565b925050600181019050612f6c565b5085935050505092915050565b612faf81613676565b82525050565b612fbe816136b9565b82525050565b6000612fcf82613503565b612fd9818561352c565b9350612fe98185602086016136cb565b612ff281613848565b840191505092915050565b600061300a60238361352c565b915061301582613859565b604082019050919050565b600061302d602a8361352c565b9150613038826138a8565b604082019050919050565b600061305060228361352c565b915061305b826138f7565b604082019050919050565b6000613073601b8361352c565b915061307e82613946565b602082019050919050565b600061309660218361352c565b91506130a18261396f565b604082019050919050565b60006130b960208361352c565b91506130c4826139be565b602082019050919050565b60006130dc60298361352c565b91506130e7826139e7565b604082019050919050565b60006130ff60258361352c565b915061310a82613a36565b604082019050919050565b600061312260248361352c565b915061312d82613a85565b604082019050919050565b600061314560178361352c565b915061315082613ad4565b602082019050919050565b600061316860188361352c565b915061317382613afd565b602082019050919050565b613187816136a2565b82525050565b613196816136ac565b82525050565b60006020820190506131b16000830184612f39565b92915050565b60006040820190506131cc6000830185612f39565b6131d96020830184612f39565b9392505050565b60006040820190506131f56000830185612f39565b613202602083018461317e565b9392505050565b600060c08201905061321e6000830189612f39565b61322b602083018861317e565b6132386040830187612fb5565b6132456060830186612fb5565b6132526080830185612f39565b61325f60a083018461317e565b979650505050505050565b600060208201905061327f6000830184612fa6565b92915050565b6000602082019050818103600083015261329f8184612fc4565b905092915050565b600060208201905081810360008301526132c081612ffd565b9050919050565b600060208201905081810360008301526132e081613020565b9050919050565b6000602082019050818103600083015261330081613043565b9050919050565b6000602082019050818103600083015261332081613066565b9050919050565b6000602082019050818103600083015261334081613089565b9050919050565b60006020820190508181036000830152613360816130ac565b9050919050565b60006020820190508181036000830152613380816130cf565b9050919050565b600060208201905081810360008301526133a0816130f2565b9050919050565b600060208201905081810360008301526133c081613115565b9050919050565b600060208201905081810360008301526133e081613138565b9050919050565b600060208201905081810360008301526134008161315b565b9050919050565b600060208201905061341c600083018461317e565b92915050565b600060a082019050613437600083018861317e565b6134446020830187612fb5565b81810360408301526134568186612f48565b90506134656060830185612f39565b613472608083018461317e565b9695505050505050565b6000602082019050613491600083018461318d565b92915050565b60006134a16134b2565b90506134ad82826136fe565b919050565b6000604051905090565b600067ffffffffffffffff8211156134d7576134d6613805565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000613548826136a2565b9150613553836136a2565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561358857613587613778565b5b828201905092915050565b600061359e826136a2565b91506135a9836136a2565b9250826135b9576135b86137a7565b5b828204905092915050565b60006135cf826136a2565b91506135da836136a2565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561361357613612613778565b5b828202905092915050565b6000613629826136a2565b9150613634836136a2565b92508282101561364757613646613778565b5b828203905092915050565b600061365d82613682565b9050919050565b600061366f82613682565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006136c4826136a2565b9050919050565b60005b838110156136e95780820151818401526020810190506136ce565b838111156136f8576000848401525b50505050565b61370782613848565b810181811067ffffffffffffffff8211171561372657613725613805565b5b80604052505050565b600061373a826136a2565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561376d5761376c613778565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b7f54726164696e67206e6f742079657420656e61626c65642e0000000000000000600082015250565b613b2f81613652565b8114613b3a57600080fd5b50565b613b4681613664565b8114613b5157600080fd5b50565b613b5d81613676565b8114613b6857600080fd5b50565b613b74816136a2565b8114613b7f57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220db52a11bf2c039e3c76ee1691423d60ef37cfb73c8047903b01357bc92f94e6364736f6c63430008070033

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

0000000000000000000000006c8f4c84177e067ebd676a76e994ec0ddc85c0640000000000000000000000006c8f4c84177e067ebd676a76e994ec0ddc85c064

-----Decoded View---------------
Arg [0] : FeeAddress (address): 0x6c8F4C84177E067ebD676a76E994eC0Ddc85C064
Arg [1] : marketingWalletAddress (address): 0x6c8F4C84177E067ebD676a76E994eC0Ddc85C064

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000006c8f4c84177e067ebd676a76e994ec0ddc85c064
Arg [1] : 0000000000000000000000006c8f4c84177e067ebd676a76e994ec0ddc85c064


Deployed Bytecode Sourcemap

4266:12710:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6371:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7223:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6648:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7392:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16161:89;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;16764:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6557:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16262:89;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15090:149;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15411:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14768:314;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;16566:190;;;;;;;;;;;;;:::i;:::-;;6751:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3345:148;;;;;;;;;;;;;:::i;:::-;;3131:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6462:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6897:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15879:270;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;16363:191;;;;;;;;;;;;;:::i;:::-;;15719:148;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13984:772;;;;;;;;;;;;;:::i;:::-;;15251:148;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;16872:101;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7072:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15550:153;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6371:83;6408:13;6441:5;;;;;;;;;;;;;;;;;6434:12;;6371:83;:::o;7223:161::-;7298:4;7315:39;7324:12;:10;:12::i;:::-;7338:7;7347:6;7315:8;:39::i;:::-;7372:4;7365:11;;7223:161;;;;:::o;6648:95::-;6701:7;4721:12;6721:14;;6648:95;:::o;7392:313::-;7490:4;7507:36;7517:6;7525:9;7536:6;7507:9;:36::i;:::-;7554:121;7563:6;7571:12;:10;:12::i;:::-;7585:89;7623:6;7585:89;;;;;;;;;;;;;;;;;:11;:19;7597:6;7585:19;;;;;;;;;;;;;;;:33;7605:12;:10;:12::i;:::-;7585:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;7554:8;:121::i;:::-;7693:4;7686:11;;7392:313;;;;;:::o;16161:89::-;3268:12;:10;:12::i;:::-;3258:22;;:6;;;;;;;;;;:22;;;3250:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;16237:5:::1;16221;:13;16227:6;16221:13;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;16161:89:::0;:::o;16764:100::-;16808:4;16832:24;16850:4;16832:9;:24::i;:::-;16825:31;;16764:100;:::o;6557:83::-;6598:5;4997:1;6616:16;;6557:83;:::o;16262:89::-;16310:4;16334:5;:9;16340:2;16334:9;;;;;;;;;;;;;;;;;;;;;;;;;16327:16;;16262:89;;;:::o;15090:149::-;15179:11;;;;;;;;;;;15163:27;;:12;:10;:12::i;:::-;:27;;;15155:36;;;;;;15227:4;15202:18;:22;15221:2;15202:22;;;;;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;15090:149;:::o;15411:127::-;15489:11;;;;;;;;;;;15473:27;;:12;:10;:12::i;:::-;:27;;;15465:36;;;;;;15525:5;15512:10;;:18;;;;;;;;;;;;;;;;;;15411:127;:::o;14768:314::-;14881:11;;;;;;;;;;;14865:27;;:12;:10;:12::i;:::-;:27;;;14857:36;;;;;;14950:5;14904:18;:43;14923:23;;;;;;;;;;;14904:43;;;;;;;;;;;;;;;;:51;;;;;;;;;;;;;;;;;;14992:22;14966:23;;:48;;;;;;;;;;;;;;;;;;15070:4;15025:18;:42;15044:22;15025:42;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;14768:314;:::o;16566:190::-;16632:11;;;;;;;;;;;16616:27;;:12;:10;:12::i;:::-;:27;;;16608:36;;;;;;16655:26;16684:21;16655:50;;16716:32;16729:18;16716:12;:32::i;:::-;16597:159;16566:190::o;6751:138::-;6817:7;6844:37;6864:7;:16;6872:7;6864:16;;;;;;;;;;;;;;;;6844:19;:37::i;:::-;6837:44;;6751:138;;;:::o;3345:148::-;3268:12;:10;:12::i;:::-;3258:22;;:6;;;;;;;;;;:22;;;3250:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3452:1:::1;3415:40;;3436:6;::::0;::::1;;;;;;;;3415:40;;;;;;;;;;;;3483:1;3466:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3345:148::o:0;3131:79::-;3169:7;3196:6;;;;;;;;;;;3189:13;;3131:79;:::o;6462:87::-;6501:13;6534:7;;;;;;;;;;;;;;;;;6527:14;;6462:87;:::o;6897:167::-;6975:4;6992:42;7002:12;:10;:12::i;:::-;7016:9;7027:6;6992:9;:42::i;:::-;7052:4;7045:11;;6897:167;;;;:::o;15879:270::-;3268:12;:10;:12::i;:::-;3258:22;;:6;;;;;;;;;;:22;;;3250:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15953:6:::1;15948:194;15969:5;:12;15965:1;:16;15948:194;;;16019:13;;;;;;;;;;;16007:25;;:5;16013:1;16007:8;;;;;;;;:::i;:::-;;;;;;;;:25;;;;:65;;;;;16056:15;;;;;;;;;;;16036:36;;:5;16042:1;16036:8;;;;;;;;:::i;:::-;;;;;;;;:36;;;;16007:65;16003:128;;;16111:4;16093:5;:15;16099:5;16105:1;16099:8;;;;;;;;:::i;:::-;;;;;;;;16093:15;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;16003:128;15983:3;;;;;:::i;:::-;;;;15948:194;;;;15879:270:::0;:::o;16363:191::-;16429:11;;;;;;;;;;;16413:27;;:12;:10;:12::i;:::-;:27;;;16405:36;;;;;;16452:23;16478:24;16496:4;16478:9;:24::i;:::-;16452:50;;16513:33;16530:15;16513:16;:33::i;:::-;16394:160;16363:191::o;15719:148::-;15795:11;;;;;;;;;;;15779:27;;:12;:10;:12::i;:::-;:27;;;15771:36;;;;;;15833:1;15826:3;:8;;15818:17;;;;;;15856:3;15846:7;:13;;;;15719:148;:::o;13984:772::-;3268:12;:10;:12::i;:::-;3258:22;;:6;;;;;;;;;;:22;;;3250:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;14048:11:::1;;;;;;;;;;;14047:12;14039:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;14097:35;14154:42;14097:100;;14226:16;14208:15;;:34;;;;;;;;;;;;;;;;;;14253:58;14270:4;14285:15;;;;;;;;;;;4721:12;14253:8;:58::i;:::-;14356:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14338:56;;;14403:4;14410:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14338:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14322:13;;:112;;;;;;;;;;;;;;;;;;14445:15;;;;;;;;;;;:31;;;14484:21;14515:4;14521:24;14539:4;14521:9;:24::i;:::-;14546:1;14548::::0;14550:7:::1;:5;:7::i;:::-;14558:15;14445:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;14592:13;;;;;;;;;;;14585:29;;;14623:15;;;;;;;;;;;14641:14;14585:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;14681:4;14667:11;;:18;;;;;;;;;;;;;;;;;;14737:10;14718:15;:30;;;;:::i;:::-;14696:19;:52;;;;14028:728;13984:772::o:0;15251:148::-;15338:11;;;;;;;;;;;15322:27;;:12;:10;:12::i;:::-;:27;;;15314:36;;;;;;15386:5;15361:18;:22;15380:2;15361:22;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;15251:148;:::o;16872:101::-;16917:4;16941:24;16951:13;;;;;;;;;;;16941:9;:24::i;:::-;16934:31;;16872:101;:::o;7072:143::-;7153:7;7180:11;:18;7192:5;7180:18;;;;;;;;;;;;;;;:27;7199:7;7180:27;;;;;;;;;;;;;;;;7173:34;;7072:143;;;;:::o;15550:153::-;15628:11;;;;;;;;;;;15612:27;;:12;:10;:12::i;:::-;:27;;;15604:36;;;;;;15667:1;15659:4;:9;;15651:18;;;;;;15691:4;15680:8;:15;;;;15550:153;:::o;540:98::-;593:7;620:10;613:17;;540:98;:::o;8320:335::-;8430:1;8413:19;;:5;:19;;;;8405:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8511:1;8492:21;;:7;:21;;;;8484:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8593:6;8563:11;:18;8575:5;8563:18;;;;;;;;;;;;;;;:27;8582:7;8563:27;;;;;;;;;;;;;;;:36;;;;8631:7;8615:32;;8624:5;8615:32;;;8640:6;8615:32;;;;;;:::i;:::-;;;;;;;;8320:335;;;:::o;8667:1767::-;8771:1;8755:18;;:4;:18;;;;8747:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8848:1;8834:16;;:2;:16;;;;8826:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8918:1;8909:6;:10;8901:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8989:7;:5;:7::i;:::-;8981:15;;:4;:15;;;;:32;;;;;9006:7;:5;:7::i;:::-;9000:13;;:2;:13;;;;8981:32;8978:1238;;;9053:5;:11;9059:4;9053:11;;;;;;;;;;;;;;;;;;;;;;;;;9052:12;:26;;;;;9069:5;:9;9075:2;9069:9;;;;;;;;;;;;;;;;;;;;;;;;;9068:10;9052:26;9044:35;;;;;;9119:13;;;;;;;;;;;9111:21;;:4;:21;;;:55;;;;;9150:15;;;;;;;;;;;9136:30;;:2;:30;;;;9111:55;:82;;;;;9171:18;:22;9190:2;9171:22;;;;;;;;;;;;;;;;;;;;;;;;;9170:23;9111:82;9108:419;;;9222:11;;;;;;;;;;;9214:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;9325:15;9303:19;;:37;9299:213;;;9365:18;9386:22;9404:2;9386:9;:22::i;:::-;9365:43;;9468:23;9487:3;9468:14;9480:1;4721:12;9468:11;;:14;;;;:::i;:::-;:18;;:23;;;;:::i;:::-;9439:25;9450:13;9439:6;:10;;:25;;;;:::i;:::-;:52;;9431:61;;;;;;9342:170;9299:213;9108:419;9541:28;9572:24;9590:4;9572:9;:24::i;:::-;9541:55;;9617:6;;;;;;;;;;;9616:7;:32;;;;;9635:13;;;;;;;;;;;9627:21;;:4;:21;;;;9616:32;:47;;;;;9652:11;;;;;;;;;;;9616:47;9613:592;;;9710:1;9687:20;:24;9684:314;;;9762:40;9798:3;9762:31;9791:1;9762:24;9772:13;;;;;;;;;;;9762:9;:24::i;:::-;:28;;:31;;;;:::i;:::-;:35;;:40;;;;:::i;:::-;9739:20;:63;9736:182;;;9854:40;9890:3;9854:31;9883:1;9854:24;9864:13;;;;;;;;;;;9854:9;:24::i;:::-;:28;;:31;;;;:::i;:::-;:35;;:40;;;;:::i;:::-;9831:63;;9736:182;9940:38;9957:20;9940:16;:38::i;:::-;9684:314;10016:26;10045:21;10016:50;;10109:1;10088:18;:22;10085:105;;;10135:35;10148:21;10135:12;:35::i;:::-;10085:105;9665:540;9613:592;9015:1201;8978:1238;10226:12;10241:4;10226:19;;10261:18;:24;10280:4;10261:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;10289:18;:22;10308:2;10289:22;;;;;;;;;;;;;;;;;;;;;;;;;10261:50;:64;;;;10315:10;;;;;;;;;;;10261:64;10258:110;;;10351:5;10341:15;;10258:110;10388:38;10403:4;10408:2;10411:6;10418:7;10388:14;:38::i;:::-;8736:1698;8667:1767;;;:::o;1677:190::-;1763:7;1796:1;1791;:6;;1799:12;1783:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1823:9;1839:1;1835;:5;;;;:::i;:::-;1823:17;;1858:1;1851:8;;;1677:190;;;;;:::o;10941:158::-;10998:11;;;;;;;;;;;:20;;:35;11019:13;11030:1;11019:6;:10;;:13;;;;:::i;:::-;10998:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11044:23;;;;;;;;;;;:32;;:47;11077:13;11088:1;11077:6;:10;;:13;;;;:::i;:::-;11044:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10941:158;:::o;7713:254::-;7780:7;7819;;7808;:18;;7800:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;7884:19;7907:10;:8;:10::i;:::-;7884:33;;7935:24;7947:11;7935:7;:11;;:24;;;;:::i;:::-;7928:31;;;7713:254;;;:::o;10442:483::-;5816:4;5807:6;;:13;;;;;;;;;;;;;;;;;;10520:21:::1;10558:1;10544:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10520:40;;10589:4;10571;10576:1;10571:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10615:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10605:4;10610:1;10605:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;10648:62;10665:4;10680:15;;;;;;;;;;;10698:11;10648:8;:62::i;:::-;10721:15;;;;;;;;;;;:66;;;10802:11;10828:1;10844:4;10871;10891:15;10721:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10509:416;5852:5:::0;5843:6;;:14;;;;;;;;;;;;;;;;;;10442:483;:::o;1875:245::-;1933:7;1961:1;1956;:6;1953:46;;;1986:1;1979:8;;;;1953:46;2009:9;2025:1;2021;:5;;;;:::i;:::-;2009:17;;2054:1;2049;2045;:5;;;;:::i;:::-;:10;2037:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2111:1;2104:8;;;1875:245;;;;;:::o;2128:132::-;2186:7;2213:39;2217:1;2220;2213:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2206:46;;2128:132;;;;:::o;1346:179::-;1404:7;1424:9;1440:1;1436;:5;;;;:::i;:::-;1424:17;;1465:1;1460;:6;;1452:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1516:1;1509:8;;;1346:179;;;;:::o;11111:263::-;11223:7;11219:40;;11245:14;:12;:14::i;:::-;11219:40;11270:44;11288:6;11296:9;11307:6;11270:17;:44::i;:::-;11329:7;11325:41;;11351:15;:13;:15::i;:::-;11325:41;11111:263;;;;:::o;12715:163::-;12756:7;12777:15;12794;12813:19;:17;:19::i;:::-;12776:56;;;;12850:20;12862:7;12850;:11;;:20;;;;:::i;:::-;12843:27;;;;12715:163;:::o;2268:189::-;2354:7;2386:1;2382;:5;2389:12;2374:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2413:9;2429:1;2425;:5;;;;:::i;:::-;2413:17;;2448:1;2441:8;;;2268:189;;;;;:::o;7975:210::-;8032:1;8021:7;;:12;:29;;;;;8049:1;8037:8;;:13;8021:29;8018:41;;;8052:7;;8018:41;8087:7;;8069:15;:25;;;;8124:8;;8105:16;:27;;;;8153:1;8143:7;:11;;;;8176:1;8165:8;:12;;;;7975:210;:::o;11382:490::-;11481:15;11498:23;11523:12;11537:23;11562:12;11576:13;11593:19;11604:7;11593:10;:19::i;:::-;11480:132;;;;;;;;;;;;11641:28;11661:7;11641;:15;11649:6;11641:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;11623:7;:15;11631:6;11623:15;;;;;;;;;;;;;;;:46;;;;11701:39;11724:15;11701:7;:18;11709:9;11701:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;11680:7;:18;11688:9;11680:18;;;;;;;;;;;;;;;:60;;;;11754:16;11764:5;11754:9;:16::i;:::-;11781:23;11793:4;11799;11781:11;:23::i;:::-;11837:9;11820:44;;11829:6;11820:44;;;11848:15;11820:44;;;;;;:::i;:::-;;;;;;;;11469:403;;;;;;11382:490;;;:::o;8197:115::-;8251:15;;8241:7;:25;;;;8288:16;;8277:8;:27;;;;8197:115::o;12886:255::-;12936:7;12945;12965:15;12983:7;;12965:25;;13001:15;4721:12;13001:25;;13050:20;4721:12;13050:7;;:11;;:20;;;;:::i;:::-;13040:7;:30;13037:60;;;13080:7;;4721:12;13072:25;;;;;;;;13037:60;13116:7;13125;13108:25;;;;;;12886:255;;;:::o;11880:468::-;11939:7;11948;11957;11966;11975;11984;12005:23;12030:12;12044:13;12061:39;12073:7;12082;;12091:8;;12061:11;:39::i;:::-;12004:96;;;;;;12111:19;12134:10;:8;:10::i;:::-;12111:33;;12156:15;12173:23;12198:12;12214:46;12226:7;12235:4;12241:5;12248:11;12214;:46::i;:::-;12155:105;;;;;;12279:7;12288:15;12305:4;12311:15;12328:4;12334:5;12271:69;;;;;;;;;;;;;;;;;;;11880:468;;;;;;;:::o;1533:136::-;1591:7;1618:43;1622:1;1625;1618:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1611:50;;1533:136;;;;:::o;13566:214::-;13619:19;13642:10;:8;:10::i;:::-;13619:33;;13663:13;13679:22;13689:11;13679:5;:9;;:22;;;;:::i;:::-;13663:38;;13739:33;13766:5;13739:7;:22;13755:4;13739:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;13714:7;:22;13730:4;13714:22;;;;;;;;;;;;;;;:58;;;;13608:172;;13566:214;:::o;13788:147::-;13866:17;13878:4;13866:7;;:11;;:17;;;;:::i;:::-;13856:7;:27;;;;13907:20;13922:4;13907:10;;:14;;:20;;;;:::i;:::-;13894:10;:33;;;;13788:147;;:::o;12356:351::-;12449:7;12458;12467;12487:12;12502:28;12526:3;12502:19;12514:6;12502:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;12487:43;;12541:13;12557:29;12582:3;12557:20;12569:7;12557;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;12541:45;;12597:23;12623:28;12645:5;12623:17;12635:4;12623:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;12597:54;;12670:15;12687:4;12693:5;12662:37;;;;;;;;;12356:351;;;;;;;:::o;13149:409::-;13259:7;13268;13277;13297:15;13315:24;13327:11;13315:7;:11;;:24;;;;:::i;:::-;13297:42;;13350:12;13365:21;13374:11;13365:4;:8;;:21;;;;:::i;:::-;13350:36;;13397:13;13413:22;13423:11;13413:5;:9;;:22;;;;:::i;:::-;13397:38;;13446:23;13472:28;13494:5;13472:17;13484:4;13472:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;13446:54;;13519:7;13528:15;13545:4;13511:39;;;;;;;;;;13149:409;;;;;;;;:::o;24:722:1:-;120:5;145:81;161:64;218:6;161:64;:::i;:::-;145:81;:::i;:::-;136:90;;246:5;275:6;268:5;261:21;309:4;302:5;298:16;291:23;;335:6;385:3;377:4;369:6;365:17;360:3;356:27;353:36;350:143;;;404:79;;:::i;:::-;350:143;517:1;502:238;527:6;524:1;521:13;502:238;;;595:3;624:37;657:3;645:10;624:37;:::i;:::-;619:3;612:50;691:4;686:3;682:14;675:21;;725:4;720:3;716:14;709:21;;562:178;549:1;546;542:9;537:14;;502:238;;;506:14;126:620;;24:722;;;;;:::o;752:139::-;798:5;836:6;823:20;814:29;;852:33;879:5;852:33;:::i;:::-;752:139;;;;:::o;897:143::-;954:5;985:6;979:13;970:22;;1001:33;1028:5;1001:33;:::i;:::-;897:143;;;;:::o;1046:155::-;1100:5;1138:6;1125:20;1116:29;;1154:41;1189:5;1154:41;:::i;:::-;1046:155;;;;:::o;1224:370::-;1295:5;1344:3;1337:4;1329:6;1325:17;1321:27;1311:122;;1352:79;;:::i;:::-;1311:122;1469:6;1456:20;1494:94;1584:3;1576:6;1569:4;1561:6;1557:17;1494:94;:::i;:::-;1485:103;;1301:293;1224:370;;;;:::o;1600:133::-;1643:5;1681:6;1668:20;1659:29;;1697:30;1721:5;1697:30;:::i;:::-;1600:133;;;;:::o;1739:137::-;1793:5;1824:6;1818:13;1809:22;;1840:30;1864:5;1840:30;:::i;:::-;1739:137;;;;:::o;1882:139::-;1928:5;1966:6;1953:20;1944:29;;1982:33;2009:5;1982:33;:::i;:::-;1882:139;;;;:::o;2027:143::-;2084:5;2115:6;2109:13;2100:22;;2131:33;2158:5;2131:33;:::i;:::-;2027:143;;;;:::o;2176:329::-;2235:6;2284:2;2272:9;2263:7;2259:23;2255:32;2252:119;;;2290:79;;:::i;:::-;2252:119;2410:1;2435:53;2480:7;2471:6;2460:9;2456:22;2435:53;:::i;:::-;2425:63;;2381:117;2176:329;;;;:::o;2511:351::-;2581:6;2630:2;2618:9;2609:7;2605:23;2601:32;2598:119;;;2636:79;;:::i;:::-;2598:119;2756:1;2781:64;2837:7;2828:6;2817:9;2813:22;2781:64;:::i;:::-;2771:74;;2727:128;2511:351;;;;:::o;2868:345::-;2935:6;2984:2;2972:9;2963:7;2959:23;2955:32;2952:119;;;2990:79;;:::i;:::-;2952:119;3110:1;3135:61;3188:7;3179:6;3168:9;3164:22;3135:61;:::i;:::-;3125:71;;3081:125;2868:345;;;;:::o;3219:474::-;3287:6;3295;3344:2;3332:9;3323:7;3319:23;3315:32;3312:119;;;3350:79;;:::i;:::-;3312:119;3470:1;3495:53;3540:7;3531:6;3520:9;3516:22;3495:53;:::i;:::-;3485:63;;3441:117;3597:2;3623:53;3668:7;3659:6;3648:9;3644:22;3623:53;:::i;:::-;3613:63;;3568:118;3219:474;;;;;:::o;3699:619::-;3776:6;3784;3792;3841:2;3829:9;3820:7;3816:23;3812:32;3809:119;;;3847:79;;:::i;:::-;3809:119;3967:1;3992:53;4037:7;4028:6;4017:9;4013:22;3992:53;:::i;:::-;3982:63;;3938:117;4094:2;4120:53;4165:7;4156:6;4145:9;4141:22;4120:53;:::i;:::-;4110:63;;4065:118;4222:2;4248:53;4293:7;4284:6;4273:9;4269:22;4248:53;:::i;:::-;4238:63;;4193:118;3699:619;;;;;:::o;4324:474::-;4392:6;4400;4449:2;4437:9;4428:7;4424:23;4420:32;4417:119;;;4455:79;;:::i;:::-;4417:119;4575:1;4600:53;4645:7;4636:6;4625:9;4621:22;4600:53;:::i;:::-;4590:63;;4546:117;4702:2;4728:53;4773:7;4764:6;4753:9;4749:22;4728:53;:::i;:::-;4718:63;;4673:118;4324:474;;;;;:::o;4804:539::-;4888:6;4937:2;4925:9;4916:7;4912:23;4908:32;4905:119;;;4943:79;;:::i;:::-;4905:119;5091:1;5080:9;5076:17;5063:31;5121:18;5113:6;5110:30;5107:117;;;5143:79;;:::i;:::-;5107:117;5248:78;5318:7;5309:6;5298:9;5294:22;5248:78;:::i;:::-;5238:88;;5034:302;4804:539;;;;:::o;5349:323::-;5405:6;5454:2;5442:9;5433:7;5429:23;5425:32;5422:119;;;5460:79;;:::i;:::-;5422:119;5580:1;5605:50;5647:7;5638:6;5627:9;5623:22;5605:50;:::i;:::-;5595:60;;5551:114;5349:323;;;;:::o;5678:345::-;5745:6;5794:2;5782:9;5773:7;5769:23;5765:32;5762:119;;;5800:79;;:::i;:::-;5762:119;5920:1;5945:61;5998:7;5989:6;5978:9;5974:22;5945:61;:::i;:::-;5935:71;;5891:125;5678:345;;;;:::o;6029:329::-;6088:6;6137:2;6125:9;6116:7;6112:23;6108:32;6105:119;;;6143:79;;:::i;:::-;6105:119;6263:1;6288:53;6333:7;6324:6;6313:9;6309:22;6288:53;:::i;:::-;6278:63;;6234:117;6029:329;;;;:::o;6364:663::-;6452:6;6460;6468;6517:2;6505:9;6496:7;6492:23;6488:32;6485:119;;;6523:79;;:::i;:::-;6485:119;6643:1;6668:64;6724:7;6715:6;6704:9;6700:22;6668:64;:::i;:::-;6658:74;;6614:128;6781:2;6807:64;6863:7;6854:6;6843:9;6839:22;6807:64;:::i;:::-;6797:74;;6752:129;6920:2;6946:64;7002:7;6993:6;6982:9;6978:22;6946:64;:::i;:::-;6936:74;;6891:129;6364:663;;;;;:::o;7033:179::-;7102:10;7123:46;7165:3;7157:6;7123:46;:::i;:::-;7201:4;7196:3;7192:14;7178:28;;7033:179;;;;:::o;7218:108::-;7295:24;7313:5;7295:24;:::i;:::-;7290:3;7283:37;7218:108;;:::o;7332:118::-;7419:24;7437:5;7419:24;:::i;:::-;7414:3;7407:37;7332:118;;:::o;7486:732::-;7605:3;7634:54;7682:5;7634:54;:::i;:::-;7704:86;7783:6;7778:3;7704:86;:::i;:::-;7697:93;;7814:56;7864:5;7814:56;:::i;:::-;7893:7;7924:1;7909:284;7934:6;7931:1;7928:13;7909:284;;;8010:6;8004:13;8037:63;8096:3;8081:13;8037:63;:::i;:::-;8030:70;;8123:60;8176:6;8123:60;:::i;:::-;8113:70;;7969:224;7956:1;7953;7949:9;7944:14;;7909:284;;;7913:14;8209:3;8202:10;;7610:608;;;7486:732;;;;:::o;8224:109::-;8305:21;8320:5;8305:21;:::i;:::-;8300:3;8293:34;8224:109;;:::o;8339:147::-;8434:45;8473:5;8434:45;:::i;:::-;8429:3;8422:58;8339:147;;:::o;8492:364::-;8580:3;8608:39;8641:5;8608:39;:::i;:::-;8663:71;8727:6;8722:3;8663:71;:::i;:::-;8656:78;;8743:52;8788:6;8783:3;8776:4;8769:5;8765:16;8743:52;:::i;:::-;8820:29;8842:6;8820:29;:::i;:::-;8815:3;8811:39;8804:46;;8584:272;8492:364;;;;:::o;8862:366::-;9004:3;9025:67;9089:2;9084:3;9025:67;:::i;:::-;9018:74;;9101:93;9190:3;9101:93;:::i;:::-;9219:2;9214:3;9210:12;9203:19;;8862:366;;;:::o;9234:::-;9376:3;9397:67;9461:2;9456:3;9397:67;:::i;:::-;9390:74;;9473:93;9562:3;9473:93;:::i;:::-;9591:2;9586:3;9582:12;9575:19;;9234:366;;;:::o;9606:::-;9748:3;9769:67;9833:2;9828:3;9769:67;:::i;:::-;9762:74;;9845:93;9934:3;9845:93;:::i;:::-;9963:2;9958:3;9954:12;9947:19;;9606:366;;;:::o;9978:::-;10120:3;10141:67;10205:2;10200:3;10141:67;:::i;:::-;10134:74;;10217:93;10306:3;10217:93;:::i;:::-;10335:2;10330:3;10326:12;10319:19;;9978:366;;;:::o;10350:::-;10492:3;10513:67;10577:2;10572:3;10513:67;:::i;:::-;10506:74;;10589:93;10678:3;10589:93;:::i;:::-;10707:2;10702:3;10698:12;10691:19;;10350:366;;;:::o;10722:::-;10864:3;10885:67;10949:2;10944:3;10885:67;:::i;:::-;10878:74;;10961:93;11050:3;10961:93;:::i;:::-;11079:2;11074:3;11070:12;11063:19;;10722:366;;;:::o;11094:::-;11236:3;11257:67;11321:2;11316:3;11257:67;:::i;:::-;11250:74;;11333:93;11422:3;11333:93;:::i;:::-;11451:2;11446:3;11442:12;11435:19;;11094:366;;;:::o;11466:::-;11608:3;11629:67;11693:2;11688:3;11629:67;:::i;:::-;11622:74;;11705:93;11794:3;11705:93;:::i;:::-;11823:2;11818:3;11814:12;11807:19;;11466:366;;;:::o;11838:::-;11980:3;12001:67;12065:2;12060:3;12001:67;:::i;:::-;11994:74;;12077:93;12166:3;12077:93;:::i;:::-;12195:2;12190:3;12186:12;12179:19;;11838:366;;;:::o;12210:::-;12352:3;12373:67;12437:2;12432:3;12373:67;:::i;:::-;12366:74;;12449:93;12538:3;12449:93;:::i;:::-;12567:2;12562:3;12558:12;12551:19;;12210:366;;;:::o;12582:::-;12724:3;12745:67;12809:2;12804:3;12745:67;:::i;:::-;12738:74;;12821:93;12910:3;12821:93;:::i;:::-;12939:2;12934:3;12930:12;12923:19;;12582:366;;;:::o;12954:118::-;13041:24;13059:5;13041:24;:::i;:::-;13036:3;13029:37;12954:118;;:::o;13078:112::-;13161:22;13177:5;13161:22;:::i;:::-;13156:3;13149:35;13078:112;;:::o;13196:222::-;13289:4;13327:2;13316:9;13312:18;13304:26;;13340:71;13408:1;13397:9;13393:17;13384:6;13340:71;:::i;:::-;13196:222;;;;:::o;13424:332::-;13545:4;13583:2;13572:9;13568:18;13560:26;;13596:71;13664:1;13653:9;13649:17;13640:6;13596:71;:::i;:::-;13677:72;13745:2;13734:9;13730:18;13721:6;13677:72;:::i;:::-;13424:332;;;;;:::o;13762:::-;13883:4;13921:2;13910:9;13906:18;13898:26;;13934:71;14002:1;13991:9;13987:17;13978:6;13934:71;:::i;:::-;14015:72;14083:2;14072:9;14068:18;14059:6;14015:72;:::i;:::-;13762:332;;;;;:::o;14100:807::-;14349:4;14387:3;14376:9;14372:19;14364:27;;14401:71;14469:1;14458:9;14454:17;14445:6;14401:71;:::i;:::-;14482:72;14550:2;14539:9;14535:18;14526:6;14482:72;:::i;:::-;14564:80;14640:2;14629:9;14625:18;14616:6;14564:80;:::i;:::-;14654;14730:2;14719:9;14715:18;14706:6;14654:80;:::i;:::-;14744:73;14812:3;14801:9;14797:19;14788:6;14744:73;:::i;:::-;14827;14895:3;14884:9;14880:19;14871:6;14827:73;:::i;:::-;14100:807;;;;;;;;;:::o;14913:210::-;15000:4;15038:2;15027:9;15023:18;15015:26;;15051:65;15113:1;15102:9;15098:17;15089:6;15051:65;:::i;:::-;14913:210;;;;:::o;15129:313::-;15242:4;15280:2;15269:9;15265:18;15257:26;;15329:9;15323:4;15319:20;15315:1;15304:9;15300:17;15293:47;15357:78;15430:4;15421:6;15357:78;:::i;:::-;15349:86;;15129:313;;;;:::o;15448:419::-;15614:4;15652:2;15641:9;15637:18;15629:26;;15701:9;15695:4;15691:20;15687:1;15676:9;15672:17;15665:47;15729:131;15855:4;15729:131;:::i;:::-;15721:139;;15448:419;;;:::o;15873:::-;16039:4;16077:2;16066:9;16062:18;16054:26;;16126:9;16120:4;16116:20;16112:1;16101:9;16097:17;16090:47;16154:131;16280:4;16154:131;:::i;:::-;16146:139;;15873:419;;;:::o;16298:::-;16464:4;16502:2;16491:9;16487:18;16479:26;;16551:9;16545:4;16541:20;16537:1;16526:9;16522:17;16515:47;16579:131;16705:4;16579:131;:::i;:::-;16571:139;;16298:419;;;:::o;16723:::-;16889:4;16927:2;16916:9;16912:18;16904:26;;16976:9;16970:4;16966:20;16962:1;16951:9;16947:17;16940:47;17004:131;17130:4;17004:131;:::i;:::-;16996:139;;16723:419;;;:::o;17148:::-;17314:4;17352:2;17341:9;17337:18;17329:26;;17401:9;17395:4;17391:20;17387:1;17376:9;17372:17;17365:47;17429:131;17555:4;17429:131;:::i;:::-;17421:139;;17148:419;;;:::o;17573:::-;17739:4;17777:2;17766:9;17762:18;17754:26;;17826:9;17820:4;17816:20;17812:1;17801:9;17797:17;17790:47;17854:131;17980:4;17854:131;:::i;:::-;17846:139;;17573:419;;;:::o;17998:::-;18164:4;18202:2;18191:9;18187:18;18179:26;;18251:9;18245:4;18241:20;18237:1;18226:9;18222:17;18215:47;18279:131;18405:4;18279:131;:::i;:::-;18271:139;;17998:419;;;:::o;18423:::-;18589:4;18627:2;18616:9;18612:18;18604:26;;18676:9;18670:4;18666:20;18662:1;18651:9;18647:17;18640:47;18704:131;18830:4;18704:131;:::i;:::-;18696:139;;18423:419;;;:::o;18848:::-;19014:4;19052:2;19041:9;19037:18;19029:26;;19101:9;19095:4;19091:20;19087:1;19076:9;19072:17;19065:47;19129:131;19255:4;19129:131;:::i;:::-;19121:139;;18848:419;;;:::o;19273:::-;19439:4;19477:2;19466:9;19462:18;19454:26;;19526:9;19520:4;19516:20;19512:1;19501:9;19497:17;19490:47;19554:131;19680:4;19554:131;:::i;:::-;19546:139;;19273:419;;;:::o;19698:::-;19864:4;19902:2;19891:9;19887:18;19879:26;;19951:9;19945:4;19941:20;19937:1;19926:9;19922:17;19915:47;19979:131;20105:4;19979:131;:::i;:::-;19971:139;;19698:419;;;:::o;20123:222::-;20216:4;20254:2;20243:9;20239:18;20231:26;;20267:71;20335:1;20324:9;20320:17;20311:6;20267:71;:::i;:::-;20123:222;;;;:::o;20351:831::-;20614:4;20652:3;20641:9;20637:19;20629:27;;20666:71;20734:1;20723:9;20719:17;20710:6;20666:71;:::i;:::-;20747:80;20823:2;20812:9;20808:18;20799:6;20747:80;:::i;:::-;20874:9;20868:4;20864:20;20859:2;20848:9;20844:18;20837:48;20902:108;21005:4;20996:6;20902:108;:::i;:::-;20894:116;;21020:72;21088:2;21077:9;21073:18;21064:6;21020:72;:::i;:::-;21102:73;21170:3;21159:9;21155:19;21146:6;21102:73;:::i;:::-;20351:831;;;;;;;;:::o;21188:214::-;21277:4;21315:2;21304:9;21300:18;21292:26;;21328:67;21392:1;21381:9;21377:17;21368:6;21328:67;:::i;:::-;21188:214;;;;:::o;21408:129::-;21442:6;21469:20;;:::i;:::-;21459:30;;21498:33;21526:4;21518:6;21498:33;:::i;:::-;21408:129;;;:::o;21543:75::-;21576:6;21609:2;21603:9;21593:19;;21543:75;:::o;21624:311::-;21701:4;21791:18;21783:6;21780:30;21777:56;;;21813:18;;:::i;:::-;21777:56;21863:4;21855:6;21851:17;21843:25;;21923:4;21917;21913:15;21905:23;;21624:311;;;:::o;21941:132::-;22008:4;22031:3;22023:11;;22061:4;22056:3;22052:14;22044:22;;21941:132;;;:::o;22079:114::-;22146:6;22180:5;22174:12;22164:22;;22079:114;;;:::o;22199:99::-;22251:6;22285:5;22279:12;22269:22;;22199:99;;;:::o;22304:113::-;22374:4;22406;22401:3;22397:14;22389:22;;22304:113;;;:::o;22423:184::-;22522:11;22556:6;22551:3;22544:19;22596:4;22591:3;22587:14;22572:29;;22423:184;;;;:::o;22613:169::-;22697:11;22731:6;22726:3;22719:19;22771:4;22766:3;22762:14;22747:29;;22613:169;;;;:::o;22788:305::-;22828:3;22847:20;22865:1;22847:20;:::i;:::-;22842:25;;22881:20;22899:1;22881:20;:::i;:::-;22876:25;;23035:1;22967:66;22963:74;22960:1;22957:81;22954:107;;;23041:18;;:::i;:::-;22954:107;23085:1;23082;23078:9;23071:16;;22788:305;;;;:::o;23099:185::-;23139:1;23156:20;23174:1;23156:20;:::i;:::-;23151:25;;23190:20;23208:1;23190:20;:::i;:::-;23185:25;;23229:1;23219:35;;23234:18;;:::i;:::-;23219:35;23276:1;23273;23269:9;23264:14;;23099:185;;;;:::o;23290:348::-;23330:7;23353:20;23371:1;23353:20;:::i;:::-;23348:25;;23387:20;23405:1;23387:20;:::i;:::-;23382:25;;23575:1;23507:66;23503:74;23500:1;23497:81;23492:1;23485:9;23478:17;23474:105;23471:131;;;23582:18;;:::i;:::-;23471:131;23630:1;23627;23623:9;23612:20;;23290:348;;;;:::o;23644:191::-;23684:4;23704:20;23722:1;23704:20;:::i;:::-;23699:25;;23738:20;23756:1;23738:20;:::i;:::-;23733:25;;23777:1;23774;23771:8;23768:34;;;23782:18;;:::i;:::-;23768:34;23827:1;23824;23820:9;23812:17;;23644:191;;;;:::o;23841:96::-;23878:7;23907:24;23925:5;23907:24;:::i;:::-;23896:35;;23841:96;;;:::o;23943:104::-;23988:7;24017:24;24035:5;24017:24;:::i;:::-;24006:35;;23943:104;;;:::o;24053:90::-;24087:7;24130:5;24123:13;24116:21;24105:32;;24053:90;;;:::o;24149:126::-;24186:7;24226:42;24219:5;24215:54;24204:65;;24149:126;;;:::o;24281:77::-;24318:7;24347:5;24336:16;;24281:77;;;:::o;24364:86::-;24399:7;24439:4;24432:5;24428:16;24417:27;;24364:86;;;:::o;24456:121::-;24514:9;24547:24;24565:5;24547:24;:::i;:::-;24534:37;;24456:121;;;:::o;24583:307::-;24651:1;24661:113;24675:6;24672:1;24669:13;24661:113;;;24760:1;24755:3;24751:11;24745:18;24741:1;24736:3;24732:11;24725:39;24697:2;24694:1;24690:10;24685:15;;24661:113;;;24792:6;24789:1;24786:13;24783:101;;;24872:1;24863:6;24858:3;24854:16;24847:27;24783:101;24632:258;24583:307;;;:::o;24896:281::-;24979:27;25001:4;24979:27;:::i;:::-;24971:6;24967:40;25109:6;25097:10;25094:22;25073:18;25061:10;25058:34;25055:62;25052:88;;;25120:18;;:::i;:::-;25052:88;25160:10;25156:2;25149:22;24939:238;24896:281;;:::o;25183:233::-;25222:3;25245:24;25263:5;25245:24;:::i;:::-;25236:33;;25291:66;25284:5;25281:77;25278:103;;;25361:18;;:::i;:::-;25278:103;25408:1;25401:5;25397:13;25390:20;;25183:233;;;:::o;25422:180::-;25470:77;25467:1;25460:88;25567:4;25564:1;25557:15;25591:4;25588:1;25581:15;25608:180;25656:77;25653:1;25646:88;25753:4;25750:1;25743:15;25777:4;25774:1;25767:15;25794:180;25842:77;25839:1;25832:88;25939:4;25936:1;25929:15;25963:4;25960:1;25953:15;25980:180;26028:77;26025:1;26018:88;26125:4;26122:1;26115:15;26149:4;26146:1;26139:15;26166:117;26275:1;26272;26265:12;26289:117;26398:1;26395;26388:12;26412:117;26521:1;26518;26511:12;26535:117;26644:1;26641;26634:12;26658:102;26699:6;26750:2;26746:7;26741:2;26734:5;26730:14;26726:28;26716:38;;26658:102;;;:::o;26766:222::-;26906:34;26902:1;26894:6;26890:14;26883:58;26975:5;26970:2;26962:6;26958:15;26951:30;26766:222;:::o;26994:229::-;27134:34;27130:1;27122:6;27118:14;27111:58;27203:12;27198:2;27190:6;27186:15;27179:37;26994:229;:::o;27229:221::-;27369:34;27365:1;27357:6;27353:14;27346:58;27438:4;27433:2;27425:6;27421:15;27414:29;27229:221;:::o;27456:177::-;27596:29;27592:1;27584:6;27580:14;27573:53;27456:177;:::o;27639:220::-;27779:34;27775:1;27767:6;27763:14;27756:58;27848:3;27843:2;27835:6;27831:15;27824:28;27639:220;:::o;27865:182::-;28005:34;28001:1;27993:6;27989:14;27982:58;27865:182;:::o;28053:228::-;28193:34;28189:1;28181:6;28177:14;28170:58;28262:11;28257:2;28249:6;28245:15;28238:36;28053:228;:::o;28287:224::-;28427:34;28423:1;28415:6;28411:14;28404:58;28496:7;28491:2;28483:6;28479:15;28472:32;28287:224;:::o;28517:223::-;28657:34;28653:1;28645:6;28641:14;28634:58;28726:6;28721:2;28713:6;28709:15;28702:31;28517:223;:::o;28746:173::-;28886:25;28882:1;28874:6;28870:14;28863:49;28746:173;:::o;28925:174::-;29065:26;29061:1;29053:6;29049:14;29042:50;28925:174;:::o;29105:122::-;29178:24;29196:5;29178:24;:::i;:::-;29171:5;29168:35;29158:63;;29217:1;29214;29207:12;29158:63;29105:122;:::o;29233:138::-;29314:32;29340:5;29314:32;:::i;:::-;29307:5;29304:43;29294:71;;29361:1;29358;29351:12;29294:71;29233:138;:::o;29377:116::-;29447:21;29462:5;29447:21;:::i;:::-;29440:5;29437:32;29427:60;;29483:1;29480;29473:12;29427:60;29377:116;:::o;29499:122::-;29572:24;29590:5;29572:24;:::i;:::-;29565:5;29562:35;29552:63;;29611:1;29608;29601:12;29552:63;29499:122;:::o

Swarm Source

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