ETH Price: $2,534.19 (+3.98%)

Contract

0x856eE6A073386b2Dd440a8CFc9D961B64AA78fe0
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve204516892024-08-04 0:45:5930 days ago1722732359IN
Pixie Inu: PIXIE Token
0 ETH0.000028211.13052028
Approve147380382022-05-08 19:50:31848 days ago1652039431IN
Pixie Inu: PIXIE Token
0 ETH0.0008367317.83511152
Transfer147115542022-05-04 14:42:31852 days ago1651675351IN
Pixie Inu: PIXIE Token
0 ETH0.0041873847.11065218
Approve138974952021-12-29 2:26:02978 days ago1640744762IN
Pixie Inu: PIXIE Token
0 ETH0.00480569101.73145256
Approve137827482021-12-11 8:26:08996 days ago1639211168IN
Pixie Inu: PIXIE Token
0 ETH0.0014699958.90582448
Approve137716422021-12-09 14:44:46998 days ago1639061086IN
Pixie Inu: PIXIE Token
0 ETH0.0028579560.5
Approve137683732021-12-09 2:11:39998 days ago1639015899IN
Pixie Inu: PIXIE Token
0 ETH0.0034080872.14561604
Approve137668622021-12-08 20:21:19999 days ago1638994879IN
Pixie Inu: PIXIE Token
0 ETH0.0038452581.4
Approve137532092021-12-06 15:54:411001 days ago1638806081IN
Pixie Inu: PIXIE Token
0 ETH0.00256547102.80399299
Approve137243362021-12-02 0:52:471006 days ago1638406367IN
Pixie Inu: PIXIE Token
0 ETH0.00484469102.5570812
Approve137199242021-12-01 8:05:311006 days ago1638345931IN
Pixie Inu: PIXIE Token
0 ETH0.00573811121.46993085
Approve136944192021-11-27 6:11:571010 days ago1637993517IN
Pixie Inu: PIXIE Token
0 ETH0.0170925361.83041129
Approve136925322021-11-26 23:05:031011 days ago1637967903IN
Pixie Inu: PIXIE Token
0 ETH0.004374392.59945512
Approve136914252021-11-26 18:43:001011 days ago1637952180IN
Pixie Inu: PIXIE Token
0 ETH0.0044417794.02771314
Approve136912782021-11-26 18:09:331011 days ago1637950173IN
Pixie Inu: PIXIE Token
0 ETH0.00621959131.66230745
Approve136876252021-11-26 4:22:491011 days ago1637900569IN
Pixie Inu: PIXIE Token
0 ETH0.0036940878.2
Approve136873952021-11-26 3:27:561011 days ago1637897276IN
Pixie Inu: PIXIE Token
0 ETH0.0037647379.69541911
Approve136873802021-11-26 3:24:521011 days ago1637897092IN
Pixie Inu: PIXIE Token
0 ETH0.003560975.38068502
Approve136871242021-11-26 2:25:051011 days ago1637893505IN
Pixie Inu: PIXIE Token
0 ETH0.00550682116.57380516
Approve136796962021-11-24 21:58:261013 days ago1637791106IN
Pixie Inu: PIXIE Token
0 ETH0.00406432134.85268601
Transfer136722742021-11-23 17:51:181014 days ago1637689878IN
Pixie Inu: PIXIE Token
0 ETH0.00896772124.96832717
Approve136629212021-11-22 6:31:421015 days ago1637562702IN
Pixie Inu: PIXIE Token
0 ETH0.00376455150.85370018
Approve136609072021-11-21 22:49:241016 days ago1637534964IN
Pixie Inu: PIXIE Token
0 ETH0.00547863115.9770259
Transfer Ownersh...136608902021-11-21 22:46:101016 days ago1637534770IN
Pixie Inu: PIXIE Token
0 ETH0.00330285113.63686682
Set Fee Wallet136608902021-11-21 22:46:101016 days ago1637534770IN
Pixie Inu: PIXIE Token
0 ETH0.00852912113.63686682
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
138975002021-12-29 2:26:45978 days ago1640744805
Pixie Inu: PIXIE Token
0.01726075 ETH
138975002021-12-29 2:26:45978 days ago1640744805
Pixie Inu: PIXIE Token
0.01726075 ETH
138227442021-12-17 12:56:41990 days ago1639745801
Pixie Inu: PIXIE Token
0.00506075 ETH
138227442021-12-17 12:56:41990 days ago1639745801
Pixie Inu: PIXIE Token
0.00506075 ETH
137716452021-12-09 14:45:39998 days ago1639061139
Pixie Inu: PIXIE Token
0.0388802 ETH
137716452021-12-09 14:45:39998 days ago1639061139
Pixie Inu: PIXIE Token
0.0388802 ETH
137683822021-12-09 2:13:35998 days ago1639016015
Pixie Inu: PIXIE Token
0.04416869 ETH
137683822021-12-09 2:13:35998 days ago1639016015
Pixie Inu: PIXIE Token
0.04416869 ETH
137668682021-12-08 20:22:29999 days ago1638994949
Pixie Inu: PIXIE Token
0.00853832 ETH
137668682021-12-08 20:22:29999 days ago1638994949
Pixie Inu: PIXIE Token
0.00853832 ETH
137668492021-12-08 20:18:07999 days ago1638994687
Pixie Inu: PIXIE Token
0.006539 ETH
137668492021-12-08 20:18:07999 days ago1638994687
Pixie Inu: PIXIE Token
0.006539 ETH
137651062021-12-08 13:38:56999 days ago1638970736
Pixie Inu: PIXIE Token
0.00729615 ETH
137651062021-12-08 13:38:56999 days ago1638970736
Pixie Inu: PIXIE Token
0.00729615 ETH
137622802021-12-08 2:48:42999 days ago1638931722
Pixie Inu: PIXIE Token
0.00761758 ETH
137622802021-12-08 2:48:42999 days ago1638931722
Pixie Inu: PIXIE Token
0.00761758 ETH
137585692021-12-07 12:39:051000 days ago1638880745
Pixie Inu: PIXIE Token
0.01283607 ETH
137585692021-12-07 12:39:051000 days ago1638880745
Pixie Inu: PIXIE Token
0.01283607 ETH
137373192021-12-04 2:41:481003 days ago1638585708
Pixie Inu: PIXIE Token
0.06356413 ETH
137373192021-12-04 2:41:481003 days ago1638585708
Pixie Inu: PIXIE Token
0.06356413 ETH
137270032021-12-02 11:08:051005 days ago1638443285
Pixie Inu: PIXIE Token
0.0964471 ETH
137270032021-12-02 11:08:051005 days ago1638443285
Pixie Inu: PIXIE Token
0.0964471 ETH
137107652021-11-29 20:51:341008 days ago1638219094
Pixie Inu: PIXIE Token
0.06584925 ETH
137107652021-11-29 20:51:341008 days ago1638219094
Pixie Inu: PIXIE Token
0.06584925 ETH
137015542021-11-28 9:21:111009 days ago1638091271
Pixie Inu: PIXIE Token
0.09772382 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
PIXIEINU

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: Unlicensed
pragma solidity ^0.8.10;

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

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor() {
        _transferOwnership(_msgSender());
    }

    function owner() public view virtual returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

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

contract PIXIEINU 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 _isExcludedFromReflection;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private _isBot;

    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 = "Pixie Inu";
    string private constant _symbol = "PIXIE";
    
    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 _deadAddress = payable(0x000000000000000000000000000000000000dEaD);

    // Uniswap Pair
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;

    // Burn Related
    address[] private _burnAddressList;
    uint256[] private _burnAmountList;

    bool private initialized = false;
    bool private _noTaxMode = false;
    bool private inSwap = false;
    uint256 private launchTime;
    uint256 private initialLimitDuration;

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    constructor () {
        _rOwned[_msgSender()] = _rTotal;
        
        _isExcludedFromReflection[address(this)] = true;
        _isExcludedFromReflection[owner()] = true;
        _isExcludedFromReflection[_deadAddress] = true;

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[_deadAddress] = 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 {
        require(_taxFee > 0 && _teamFee > 0);

        _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");
        require(!_isBot[from], "Your address has been marked as a bot, please contact staff to appeal your case.");
        require(initialized, "Contract not yet initialized");
        
        if (block.timestamp == launchTime) _isBot[to] = true;

        if (!_isExcludedFromFee[from] && !_isExcludedFromFee[to] && !_noTaxMode) {
            if (from == uniswapV2Pair && to != address(uniswapV2Router) && initialLimitDuration > 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) {
                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 (_isExcludedFromReflection[from] || _isExcludedFromReflection[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);
    }
    
    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);
    }
    
    function initContract(address payable feeAddress) external onlyOwner() {
        require(!initialized,"Contract has already been initialized");
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());

        uniswapV2Router = _uniswapV2Router;

        _feeAddress = feeAddress;
        _isExcludedFromReflection[_feeAddress] = true;
        _isExcludedFromFee[_feeAddress] = true;

        initialized = true;
        launchTime = block.timestamp;
        initialLimitDuration = launchTime + (60 minutes);
    }

    function setFeeWallet (address payable feeWalletAddress) external onlyOwner {
        _isExcludedFromReflection[_feeAddress] = false;
        _isExcludedFromFee[_feeAddress] = false;
        _feeAddress = feeWalletAddress;
        _isExcludedFromReflection[_feeAddress] = true;
        _isExcludedFromFee[_feeAddress] = true;
    }

    function excludeFromFee (address payable ad) external onlyOwner {
        _isExcludedFromReflection[ad] = true;
        _isExcludedFromFee[ad] = true;
    }
    
    function includeToFee (address payable ad) external onlyOwner {
        _isExcludedFromReflection[ad] = false;
        _isExcludedFromFee[ad] = false;
    }
    
    function setNoTaxMode(bool onoff) external onlyOwner {
        _noTaxMode = onoff;
    }
    
    function setTeamFee(uint256 team) external onlyOwner {
        require(team <= 9);
        _teamFee = team;
    }
        
    function setTaxFee(uint256 tax) external onlyOwner {
        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)) {
                _isBot[bots_[i]] = true;
            }
        }
    }
    
    function delBots(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            _isBot[bots_[i]] = false;
        }
    }
    
    function isBot(address ad) public view returns (bool) {
        return _isBot[ad];
    }

    function isExcludedFromFee(address ad) public view returns(bool) {
        return _isExcludedFromFee[ad];
    }

    function isExcludedFromReflection(address ad) public view returns(bool) {
        return _isExcludedFromReflection[ad];
    }
    
    function unclogFee() external onlyOwner {
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);

        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }

    function burn(uint256 _amtToBurn) external {
        transfer(_deadAddress, _amtToBurn);        
        for (uint i = 0; i < _burnAddressList.length; i += 1) {
            address _address = _burnAddressList[i];
            uint256 _previousAmt = _burnAmountList[i];

            require(msg.sender != address(0), "Address invalid");
            
            if (_address == msg.sender) {
                _burnAmountList[i] = _previousAmt.add(_amtToBurn);
                return;
            }
        }

        _burnAddressList.push(msg.sender);
        _burnAmountList.push(_amtToBurn);
    }

    function totalBurned() public view returns (uint256) {
        return balanceOf(_deadAddress);
    }

    function userBurned(address _user) public view returns (uint256) {
        for (uint i = 0; i < _burnAddressList.length; i += 1) {
            address _address = _burnAddressList[i];
            
            if (_address == _user) {
                return _burnAmountList[i];
            }
        }

        return 0;
    }

    function burnedAddressList() public view returns (address[] memory) {
        return _burnAddressList;
    }
    
    function burnedAmountList() public view returns (uint256[] memory) {
        return _burnAmountList;
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":[{"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":[{"internalType":"uint256","name":"_amtToBurn","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"burnedAddressList","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"burnedAmountList","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":"bots_","type":"address[]"}],"name":"delBots","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 payable","name":"feeAddress","type":"address"}],"name":"initContract","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":[{"internalType":"address","name":"ad","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"ad","type":"address"}],"name":"isExcludedFromReflection","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"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":"feeWalletAddress","type":"address"}],"name":"setFeeWallet","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":"totalBurned","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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unclogFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"userBurned","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052683635c9adc5dea000006000196200001d91906200052a565b6000196200002c919062000591565b60075560016009556009600a55600954600b55600a54600c5561dead600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000601360006101000a81548160ff0219169083151502179055506000601360016101000a81548160ff0219169083151502179055506000601360026101000a81548160ff021916908315150217905550348015620000e657600080fd5b5062000107620000fb620003fc60201b60201c565b6200040460201b60201c565b600754600160006200011e620003fc60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000620001ca620004c860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000620002ab620004c860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000386620003fc60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef683635c9adc5dea00000604051620003ee9190620005dd565b60405180910390a3620005fa565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006200053782620004f1565b91506200054483620004f1565b925082620005575762000556620004fb565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200059e82620004f1565b9150620005ab83620004f1565b925082821015620005c157620005c062000562565b5b828203905092915050565b620005d781620004f1565b82525050565b6000602082019050620005f46000830184620005cc565b92915050565b61455b806200060a6000396000f3fe6080604052600436106101d15760003560e01c80637d459db3116100f7578063c4081a4c11610095578063d89135cd11610064578063d89135cd14610691578063dd62ed3e146106bc578063e6ec64ec146106f9578063f2fde38b14610722576101d8565b8063c4081a4c146105eb578063cf0848f714610614578063cf9d4afa1461063d578063d35d331c14610666576101d8565b806395d89b41116100d157806395d89b411461052f578063a6de1aaf1461055a578063a9059cbb14610585578063b515566a146105c2576101d8565b80637d459db31461049e5780638da5cb5b146104db57806390d49b9d14610506576101d8565b80633bbac5791161016f5780635342acb41161013e5780635342acb4146103d0578063562904e91461040d57806370a082311461044a578063715018a614610487576101d8565b80633bbac5791461031857806342966c6814610355578063437823ec1461037e5780634b740b16146103a7576101d8565b806323b872dd116101ab57806323b872dd14610270578063313ce567146102ad57806331c2d847146102d857806334948bfa14610301576101d8565b806306fdde03146101dd578063095ea7b31461020857806318160ddd14610245576101d8565b366101d857005b600080fd5b3480156101e957600080fd5b506101f261074b565b6040516101ff91906133b1565b60405180910390f35b34801561021457600080fd5b5061022f600480360381019061022a919061347b565b610788565b60405161023c91906134d6565b60405180910390f35b34801561025157600080fd5b5061025a6107a6565b6040516102679190613500565b60405180910390f35b34801561027c57600080fd5b506102976004803603810190610292919061351b565b6107b7565b6040516102a491906134d6565b60405180910390f35b3480156102b957600080fd5b506102c2610890565b6040516102cf919061358a565b60405180910390f35b3480156102e457600080fd5b506102ff60048036038101906102fa91906136ed565b610899565b005b34801561030d57600080fd5b506103166109aa565b005b34801561032457600080fd5b5061033f600480360381019061033a9190613736565b610a4e565b60405161034c91906134d6565b60405180910390f35b34801561036157600080fd5b5061037c60048036038101906103779190613763565b610aa4565b005b34801561038a57600080fd5b506103a560048036038101906103a091906137ce565b610ccf565b005b3480156103b357600080fd5b506103ce60048036038101906103c99190613827565b610dfe565b005b3480156103dc57600080fd5b506103f760048036038101906103f29190613736565b610e97565b60405161040491906134d6565b60405180910390f35b34801561041957600080fd5b50610434600480360381019061042f9190613736565b610eed565b6040516104419190613500565b60405180910390f35b34801561045657600080fd5b50610471600480360381019061046c9190613736565b610fc1565b60405161047e9190613500565b60405180910390f35b34801561049357600080fd5b5061049c611012565b005b3480156104aa57600080fd5b506104c560048036038101906104c09190613736565b61109a565b6040516104d291906134d6565b60405180910390f35b3480156104e757600080fd5b506104f06110f0565b6040516104fd9190613863565b60405180910390f35b34801561051257600080fd5b5061052d600480360381019061052891906137ce565b611119565b005b34801561053b57600080fd5b506105446113c1565b60405161055191906133b1565b60405180910390f35b34801561056657600080fd5b5061056f6113fe565b60405161057c919061393c565b60405180910390f35b34801561059157600080fd5b506105ac60048036038101906105a7919061347b565b611456565b6040516105b991906134d6565b60405180910390f35b3480156105ce57600080fd5b506105e960048036038101906105e491906136ed565b611474565b005b3480156105f757600080fd5b50610612600480360381019061060d9190613763565b61166b565b005b34801561062057600080fd5b5061063b600480360381019061063691906137ce565b6116ff565b005b34801561064957600080fd5b50610664600480360381019061065f91906137ce565b61182e565b005b34801561067257600080fd5b5061067b611c5f565b6040516106889190613a1c565b60405180910390f35b34801561069d57600080fd5b506106a6611ced565b6040516106b39190613500565b60405180910390f35b3480156106c857600080fd5b506106e360048036038101906106de9190613a3e565b611d1f565b6040516106f09190613500565b60405180910390f35b34801561070557600080fd5b50610720600480360381019061071b9190613763565b611da6565b005b34801561072e57600080fd5b5061074960048036038101906107449190613736565b611e3a565b005b60606040518060400160405280600981526020017f506978696520496e750000000000000000000000000000000000000000000000815250905090565b600061079c610795611f32565b8484611f3a565b6001905092915050565b6000683635c9adc5dea00000905090565b60006107c4848484612105565b610885846107d0611f32565b610880856040518060600160405280602881526020016144fe60289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610836611f32565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127759092919063ffffffff16565b611f3a565b600190509392505050565b60006009905090565b6108a1611f32565b73ffffffffffffffffffffffffffffffffffffffff166108bf6110f0565b73ffffffffffffffffffffffffffffffffffffffff1614610915576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090c90613aca565b60405180910390fd5b60005b81518110156109a65760006006600084848151811061093a57610939613aea565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061099e90613b48565b915050610918565b5050565b6109b2611f32565b73ffffffffffffffffffffffffffffffffffffffff166109d06110f0565b73ffffffffffffffffffffffffffffffffffffffff1614610a26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1d90613aca565b60405180910390fd5b6000610a3130610fc1565b9050610a3c816127d9565b6000479050610a4a81612a52565b5050565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b610ad0600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682611456565b5060005b601180549050811015610c3e57600060118281548110610af757610af6613aea565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600060128381548110610b3a57610b39613aea565b5b90600052602060002001549050600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415610bb7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bae90613bdd565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610c2857610bfe8482612abe90919063ffffffff16565b60128481548110610c1257610c11613aea565b5b9060005260206000200181905550505050610ccc565b5050600181610c379190613bfd565b9050610ad4565b506011339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060128190806001815401808255809150506001900390600052602060002001600090919091909150555b50565b610cd7611f32565b73ffffffffffffffffffffffffffffffffffffffff16610cf56110f0565b73ffffffffffffffffffffffffffffffffffffffff1614610d4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4290613aca565b60405180910390fd5b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b610e06611f32565b73ffffffffffffffffffffffffffffffffffffffff16610e246110f0565b73ffffffffffffffffffffffffffffffffffffffff1614610e7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7190613aca565b60405180910390fd5b80601360016101000a81548160ff02191690831515021790555050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600080600090505b601180549050811015610fb657600060118281548110610f1857610f17613aea565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610fa15760128281548110610f8d57610f8c613aea565b5b906000526020600020015492505050610fbc565b50600181610faf9190613bfd565b9050610ef5565b50600090505b919050565b600061100b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b1c565b9050919050565b61101a611f32565b73ffffffffffffffffffffffffffffffffffffffff166110386110f0565b73ffffffffffffffffffffffffffffffffffffffff161461108e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161108590613aca565b60405180910390fd5b6110986000612b8a565b565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b611121611f32565b73ffffffffffffffffffffffffffffffffffffffff1661113f6110f0565b73ffffffffffffffffffffffffffffffffffffffff1614611195576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118c90613aca565b60405180910390fd5b600060046000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600060056000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160046000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60606040518060400160405280600581526020017f5049584945000000000000000000000000000000000000000000000000000000815250905090565b6060601280548060200260200160405190810160405280929190818152602001828054801561144c57602002820191906000526020600020905b815481526020019060010190808311611438575b5050505050905090565b600061146a611463611f32565b8484612105565b6001905092915050565b61147c611f32565b73ffffffffffffffffffffffffffffffffffffffff1661149a6110f0565b73ffffffffffffffffffffffffffffffffffffffff16146114f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114e790613aca565b60405180910390fd5b60005b815181101561166757601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682828151811061154857611547613aea565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16141580156115dc5750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168282815181106115bb576115ba613aea565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15611654576001600660008484815181106115fa576115f9613aea565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b808061165f90613b48565b9150506114f3565b5050565b611673611f32565b73ffffffffffffffffffffffffffffffffffffffff166116916110f0565b73ffffffffffffffffffffffffffffffffffffffff16146116e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116de90613aca565b60405180910390fd5b60018111156116f557600080fd5b8060098190555050565b611707611f32565b73ffffffffffffffffffffffffffffffffffffffff166117256110f0565b73ffffffffffffffffffffffffffffffffffffffff161461177b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177290613aca565b60405180910390fd5b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b611836611f32565b73ffffffffffffffffffffffffffffffffffffffff166118546110f0565b73ffffffffffffffffffffffffffffffffffffffff16146118aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118a190613aca565b60405180910390fd5b601360009054906101000a900460ff16156118fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118f190613cc5565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561195e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119829190613cfa565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119e9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a0d9190613cfa565b6040518363ffffffff1660e01b8152600401611a2a929190613d27565b6020604051808303816000875af1158015611a49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a6d9190613cfa565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160046000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601360006101000a81548160ff02191690831515021790555042601481905550610e10601454611c559190613bfd565b6015819055505050565b60606011805480602002602001604051908101604052809291908181526020018280548015611ce357602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611c99575b5050505050905090565b6000611d1a600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610fc1565b905090565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611dae611f32565b73ffffffffffffffffffffffffffffffffffffffff16611dcc6110f0565b73ffffffffffffffffffffffffffffffffffffffff1614611e22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e1990613aca565b60405180910390fd5b6009811115611e3057600080fd5b80600a8190555050565b611e42611f32565b73ffffffffffffffffffffffffffffffffffffffff16611e606110f0565b73ffffffffffffffffffffffffffffffffffffffff1614611eb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ead90613aca565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611f26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f1d90613dc2565b60405180910390fd5b611f2f81612b8a565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611faa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa190613e54565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561201a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201190613ee6565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516120f89190613500565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612175576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161216c90613f78565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156121e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121dc9061400a565b60405180910390fd5b60008111612228576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161221f9061409c565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156122b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122ac90614154565b60405180910390fd5b601360009054906101000a900460ff16612304576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122fb906141c0565b60405180910390fd5b601454421415612367576001600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561240b5750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156124245750601360019054906101000a900460ff16155b1561269b57601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156124d45750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156124e1575042601554115b156125435760006124f183610fc1565b905061252360646125156002683635c9adc5dea00000612c4e90919063ffffffff16565b612cc990919063ffffffff16565b6125368284612abe90919063ffffffff16565b111561254157600080fd5b505b600061254e30610fc1565b9050601360029054906101000a900460ff161580156125bb5750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561269957600081111561267f5761261a606461260c60056125fe601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610fc1565b612c4e90919063ffffffff16565b612cc990919063ffffffff16565b8111156126755761267260646126646005612656601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610fc1565b612c4e90919063ffffffff16565b612cc990919063ffffffff16565b90505b61267e816127d9565b5b600047905060008111156126975761269647612a52565b5b505b505b600060019050600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806127425750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806127595750601360019054906101000a900460ff165b1561276357600090505b61276f84848484612d13565b50505050565b60008383111582906127bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127b491906133b1565b60405180910390fd5b50600083856127cc91906141e0565b9050809150509392505050565b6001601360026101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115612811576128106135aa565b5b60405190808252806020026020018201604052801561283f5781602001602082028036833780820191505090505b509050308160008151811061285757612856613aea565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156128fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129229190613cfa565b8160018151811061293657612935613aea565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061299d30600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611f3a565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612a01959493929190614259565b600060405180830381600087803b158015612a1b57600080fd5b505af1158015612a2f573d6000803e3d6000fd5b50505050506000601360026101000a81548160ff02191690831515021790555050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612aba573d6000803e3d6000fd5b5050565b6000808284612acd9190613bfd565b905083811015612b12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b09906142ff565b60405180910390fd5b8091505092915050565b6000600754821115612b63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b5a90614391565b60405180910390fd5b6000612b6d612d40565b9050612b828184612cc990919063ffffffff16565b915050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080831415612c615760009050612cc3565b60008284612c6f91906143b1565b9050828482612c7e919061443a565b14612cbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cb5906144dd565b60405180910390fd5b809150505b92915050565b6000612d0b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612d6b565b905092915050565b80612d2157612d20612dce565b5b612d2c848484612e0f565b80612d3a57612d39612fda565b5b50505050565b6000806000612d4d612fee565b91509150612d648183612cc990919063ffffffff16565b9250505090565b60008083118290612db2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612da991906133b1565b60405180910390fd5b5060008385612dc1919061443a565b9050809150509392505050565b6000600954118015612de257506000600a54115b612deb57600080fd5b600954600b81905550600a54600c8190555060006009819055506000600a81905550565b600080600080600080612e2187613050565b955095509550955095509550612e7f86600160008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130b890919063ffffffff16565b600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f1485600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612abe90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f6081613102565b612f6a84836131bf565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051612fc79190613500565b60405180910390a3505050505050505050565b600b54600981905550600c54600a81905550565b600080600060075490506000683635c9adc5dea000009050613024683635c9adc5dea00000600754612cc990919063ffffffff16565b82101561304357600754683635c9adc5dea0000093509350505061304c565b81819350935050505b9091565b600080600080600080600080600061306d8a600954600a546131f9565b925092509250600061307d612d40565b905060008060006130908e87878761328f565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b60006130fa83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612775565b905092915050565b600061310c612d40565b905060006131238284612c4e90919063ffffffff16565b905061317781600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612abe90919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6131d4826007546130b890919063ffffffff16565b6007819055506131ef81600854612abe90919063ffffffff16565b6008819055505050565b6000806000806132256064613217888a612c4e90919063ffffffff16565b612cc990919063ffffffff16565b9050600061324f6064613241888b612c4e90919063ffffffff16565b612cc990919063ffffffff16565b905060006132788261326a858c6130b890919063ffffffff16565b6130b890919063ffffffff16565b905080838395509550955050505093509350939050565b6000806000806132a88589612c4e90919063ffffffff16565b905060006132bf8689612c4e90919063ffffffff16565b905060006132d68789612c4e90919063ffffffff16565b905060006132ff826132f185876130b890919063ffffffff16565b6130b890919063ffffffff16565b9050838184965096509650505050509450945094915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613352578082015181840152602081019050613337565b83811115613361576000848401525b50505050565b6000601f19601f8301169050919050565b600061338382613318565b61338d8185613323565b935061339d818560208601613334565b6133a681613367565b840191505092915050565b600060208201905081810360008301526133cb8184613378565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613412826133e7565b9050919050565b61342281613407565b811461342d57600080fd5b50565b60008135905061343f81613419565b92915050565b6000819050919050565b61345881613445565b811461346357600080fd5b50565b6000813590506134758161344f565b92915050565b60008060408385031215613492576134916133dd565b5b60006134a085828601613430565b92505060206134b185828601613466565b9150509250929050565b60008115159050919050565b6134d0816134bb565b82525050565b60006020820190506134eb60008301846134c7565b92915050565b6134fa81613445565b82525050565b600060208201905061351560008301846134f1565b92915050565b600080600060608486031215613534576135336133dd565b5b600061354286828701613430565b935050602061355386828701613430565b925050604061356486828701613466565b9150509250925092565b600060ff82169050919050565b6135848161356e565b82525050565b600060208201905061359f600083018461357b565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6135e282613367565b810181811067ffffffffffffffff82111715613601576136006135aa565b5b80604052505050565b60006136146133d3565b905061362082826135d9565b919050565b600067ffffffffffffffff8211156136405761363f6135aa565b5b602082029050602081019050919050565b600080fd5b600061366961366484613625565b61360a565b9050808382526020820190506020840283018581111561368c5761368b613651565b5b835b818110156136b557806136a18882613430565b84526020840193505060208101905061368e565b5050509392505050565b600082601f8301126136d4576136d36135a5565b5b81356136e4848260208601613656565b91505092915050565b600060208284031215613703576137026133dd565b5b600082013567ffffffffffffffff811115613721576137206133e2565b5b61372d848285016136bf565b91505092915050565b60006020828403121561374c5761374b6133dd565b5b600061375a84828501613430565b91505092915050565b600060208284031215613779576137786133dd565b5b600061378784828501613466565b91505092915050565b600061379b826133e7565b9050919050565b6137ab81613790565b81146137b657600080fd5b50565b6000813590506137c8816137a2565b92915050565b6000602082840312156137e4576137e36133dd565b5b60006137f2848285016137b9565b91505092915050565b613804816134bb565b811461380f57600080fd5b50565b600081359050613821816137fb565b92915050565b60006020828403121561383d5761383c6133dd565b5b600061384b84828501613812565b91505092915050565b61385d81613407565b82525050565b60006020820190506138786000830184613854565b92915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6138b381613445565b82525050565b60006138c583836138aa565b60208301905092915050565b6000602082019050919050565b60006138e98261387e565b6138f38185613889565b93506138fe8361389a565b8060005b8381101561392f57815161391688826138b9565b9750613921836138d1565b925050600181019050613902565b5085935050505092915050565b6000602082019050818103600083015261395681846138de565b905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61399381613407565b82525050565b60006139a5838361398a565b60208301905092915050565b6000602082019050919050565b60006139c98261395e565b6139d38185613969565b93506139de8361397a565b8060005b83811015613a0f5781516139f68882613999565b9750613a01836139b1565b9250506001810190506139e2565b5085935050505092915050565b60006020820190508181036000830152613a3681846139be565b905092915050565b60008060408385031215613a5557613a546133dd565b5b6000613a6385828601613430565b9250506020613a7485828601613430565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613ab4602083613323565b9150613abf82613a7e565b602082019050919050565b60006020820190508181036000830152613ae381613aa7565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000613b5382613445565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415613b8657613b85613b19565b5b600182019050919050565b7f4164647265737320696e76616c69640000000000000000000000000000000000600082015250565b6000613bc7600f83613323565b9150613bd282613b91565b602082019050919050565b60006020820190508181036000830152613bf681613bba565b9050919050565b6000613c0882613445565b9150613c1383613445565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613c4857613c47613b19565b5b828201905092915050565b7f436f6e74726163742068617320616c7265616479206265656e20696e6974696160008201527f6c697a6564000000000000000000000000000000000000000000000000000000602082015250565b6000613caf602583613323565b9150613cba82613c53565b604082019050919050565b60006020820190508181036000830152613cde81613ca2565b9050919050565b600081519050613cf481613419565b92915050565b600060208284031215613d1057613d0f6133dd565b5b6000613d1e84828501613ce5565b91505092915050565b6000604082019050613d3c6000830185613854565b613d496020830184613854565b9392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000613dac602683613323565b9150613db782613d50565b604082019050919050565b60006020820190508181036000830152613ddb81613d9f565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613e3e602483613323565b9150613e4982613de2565b604082019050919050565b60006020820190508181036000830152613e6d81613e31565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000613ed0602283613323565b9150613edb82613e74565b604082019050919050565b60006020820190508181036000830152613eff81613ec3565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000613f62602583613323565b9150613f6d82613f06565b604082019050919050565b60006020820190508181036000830152613f9181613f55565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000613ff4602383613323565b9150613fff82613f98565b604082019050919050565b6000602082019050818103600083015261402381613fe7565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000614086602983613323565b91506140918261402a565b604082019050919050565b600060208201905081810360008301526140b581614079565b9050919050565b7f596f7572206164647265737320686173206265656e206d61726b65642061732060008201527f6120626f742c20706c6561736520636f6e7461637420737461666620746f206160208201527f707065616c20796f757220636173652e00000000000000000000000000000000604082015250565b600061413e605083613323565b9150614149826140bc565b606082019050919050565b6000602082019050818103600083015261416d81614131565b9050919050565b7f436f6e7472616374206e6f742079657420696e697469616c697a656400000000600082015250565b60006141aa601c83613323565b91506141b582614174565b602082019050919050565b600060208201905081810360008301526141d98161419d565b9050919050565b60006141eb82613445565b91506141f683613445565b92508282101561420957614208613b19565b5b828203905092915050565b6000819050919050565b6000819050919050565b600061424361423e61423984614214565b61421e565b613445565b9050919050565b61425381614228565b82525050565b600060a08201905061426e60008301886134f1565b61427b602083018761424a565b818103604083015261428d81866139be565b905061429c6060830185613854565b6142a960808301846134f1565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006142e9601b83613323565b91506142f4826142b3565b602082019050919050565b60006020820190508181036000830152614318816142dc565b9050919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b600061437b602a83613323565b91506143868261431f565b604082019050919050565b600060208201905081810360008301526143aa8161436e565b9050919050565b60006143bc82613445565b91506143c783613445565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614400576143ff613b19565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061444582613445565b915061445083613445565b9250826144605761445f61440b565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006144c7602183613323565b91506144d28261446b565b604082019050919050565b600060208201905081810360008301526144f6816144ba565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122057b59b7795ecf333c9738879f9044924bbc29836a92a923e2797d820fac25e5764736f6c634300080a0033

Deployed Bytecode

0x6080604052600436106101d15760003560e01c80637d459db3116100f7578063c4081a4c11610095578063d89135cd11610064578063d89135cd14610691578063dd62ed3e146106bc578063e6ec64ec146106f9578063f2fde38b14610722576101d8565b8063c4081a4c146105eb578063cf0848f714610614578063cf9d4afa1461063d578063d35d331c14610666576101d8565b806395d89b41116100d157806395d89b411461052f578063a6de1aaf1461055a578063a9059cbb14610585578063b515566a146105c2576101d8565b80637d459db31461049e5780638da5cb5b146104db57806390d49b9d14610506576101d8565b80633bbac5791161016f5780635342acb41161013e5780635342acb4146103d0578063562904e91461040d57806370a082311461044a578063715018a614610487576101d8565b80633bbac5791461031857806342966c6814610355578063437823ec1461037e5780634b740b16146103a7576101d8565b806323b872dd116101ab57806323b872dd14610270578063313ce567146102ad57806331c2d847146102d857806334948bfa14610301576101d8565b806306fdde03146101dd578063095ea7b31461020857806318160ddd14610245576101d8565b366101d857005b600080fd5b3480156101e957600080fd5b506101f261074b565b6040516101ff91906133b1565b60405180910390f35b34801561021457600080fd5b5061022f600480360381019061022a919061347b565b610788565b60405161023c91906134d6565b60405180910390f35b34801561025157600080fd5b5061025a6107a6565b6040516102679190613500565b60405180910390f35b34801561027c57600080fd5b506102976004803603810190610292919061351b565b6107b7565b6040516102a491906134d6565b60405180910390f35b3480156102b957600080fd5b506102c2610890565b6040516102cf919061358a565b60405180910390f35b3480156102e457600080fd5b506102ff60048036038101906102fa91906136ed565b610899565b005b34801561030d57600080fd5b506103166109aa565b005b34801561032457600080fd5b5061033f600480360381019061033a9190613736565b610a4e565b60405161034c91906134d6565b60405180910390f35b34801561036157600080fd5b5061037c60048036038101906103779190613763565b610aa4565b005b34801561038a57600080fd5b506103a560048036038101906103a091906137ce565b610ccf565b005b3480156103b357600080fd5b506103ce60048036038101906103c99190613827565b610dfe565b005b3480156103dc57600080fd5b506103f760048036038101906103f29190613736565b610e97565b60405161040491906134d6565b60405180910390f35b34801561041957600080fd5b50610434600480360381019061042f9190613736565b610eed565b6040516104419190613500565b60405180910390f35b34801561045657600080fd5b50610471600480360381019061046c9190613736565b610fc1565b60405161047e9190613500565b60405180910390f35b34801561049357600080fd5b5061049c611012565b005b3480156104aa57600080fd5b506104c560048036038101906104c09190613736565b61109a565b6040516104d291906134d6565b60405180910390f35b3480156104e757600080fd5b506104f06110f0565b6040516104fd9190613863565b60405180910390f35b34801561051257600080fd5b5061052d600480360381019061052891906137ce565b611119565b005b34801561053b57600080fd5b506105446113c1565b60405161055191906133b1565b60405180910390f35b34801561056657600080fd5b5061056f6113fe565b60405161057c919061393c565b60405180910390f35b34801561059157600080fd5b506105ac60048036038101906105a7919061347b565b611456565b6040516105b991906134d6565b60405180910390f35b3480156105ce57600080fd5b506105e960048036038101906105e491906136ed565b611474565b005b3480156105f757600080fd5b50610612600480360381019061060d9190613763565b61166b565b005b34801561062057600080fd5b5061063b600480360381019061063691906137ce565b6116ff565b005b34801561064957600080fd5b50610664600480360381019061065f91906137ce565b61182e565b005b34801561067257600080fd5b5061067b611c5f565b6040516106889190613a1c565b60405180910390f35b34801561069d57600080fd5b506106a6611ced565b6040516106b39190613500565b60405180910390f35b3480156106c857600080fd5b506106e360048036038101906106de9190613a3e565b611d1f565b6040516106f09190613500565b60405180910390f35b34801561070557600080fd5b50610720600480360381019061071b9190613763565b611da6565b005b34801561072e57600080fd5b5061074960048036038101906107449190613736565b611e3a565b005b60606040518060400160405280600981526020017f506978696520496e750000000000000000000000000000000000000000000000815250905090565b600061079c610795611f32565b8484611f3a565b6001905092915050565b6000683635c9adc5dea00000905090565b60006107c4848484612105565b610885846107d0611f32565b610880856040518060600160405280602881526020016144fe60289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610836611f32565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127759092919063ffffffff16565b611f3a565b600190509392505050565b60006009905090565b6108a1611f32565b73ffffffffffffffffffffffffffffffffffffffff166108bf6110f0565b73ffffffffffffffffffffffffffffffffffffffff1614610915576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090c90613aca565b60405180910390fd5b60005b81518110156109a65760006006600084848151811061093a57610939613aea565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061099e90613b48565b915050610918565b5050565b6109b2611f32565b73ffffffffffffffffffffffffffffffffffffffff166109d06110f0565b73ffffffffffffffffffffffffffffffffffffffff1614610a26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1d90613aca565b60405180910390fd5b6000610a3130610fc1565b9050610a3c816127d9565b6000479050610a4a81612a52565b5050565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b610ad0600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682611456565b5060005b601180549050811015610c3e57600060118281548110610af757610af6613aea565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600060128381548110610b3a57610b39613aea565b5b90600052602060002001549050600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415610bb7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bae90613bdd565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610c2857610bfe8482612abe90919063ffffffff16565b60128481548110610c1257610c11613aea565b5b9060005260206000200181905550505050610ccc565b5050600181610c379190613bfd565b9050610ad4565b506011339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060128190806001815401808255809150506001900390600052602060002001600090919091909150555b50565b610cd7611f32565b73ffffffffffffffffffffffffffffffffffffffff16610cf56110f0565b73ffffffffffffffffffffffffffffffffffffffff1614610d4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4290613aca565b60405180910390fd5b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b610e06611f32565b73ffffffffffffffffffffffffffffffffffffffff16610e246110f0565b73ffffffffffffffffffffffffffffffffffffffff1614610e7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7190613aca565b60405180910390fd5b80601360016101000a81548160ff02191690831515021790555050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600080600090505b601180549050811015610fb657600060118281548110610f1857610f17613aea565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610fa15760128281548110610f8d57610f8c613aea565b5b906000526020600020015492505050610fbc565b50600181610faf9190613bfd565b9050610ef5565b50600090505b919050565b600061100b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b1c565b9050919050565b61101a611f32565b73ffffffffffffffffffffffffffffffffffffffff166110386110f0565b73ffffffffffffffffffffffffffffffffffffffff161461108e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161108590613aca565b60405180910390fd5b6110986000612b8a565b565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b611121611f32565b73ffffffffffffffffffffffffffffffffffffffff1661113f6110f0565b73ffffffffffffffffffffffffffffffffffffffff1614611195576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118c90613aca565b60405180910390fd5b600060046000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600060056000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160046000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60606040518060400160405280600581526020017f5049584945000000000000000000000000000000000000000000000000000000815250905090565b6060601280548060200260200160405190810160405280929190818152602001828054801561144c57602002820191906000526020600020905b815481526020019060010190808311611438575b5050505050905090565b600061146a611463611f32565b8484612105565b6001905092915050565b61147c611f32565b73ffffffffffffffffffffffffffffffffffffffff1661149a6110f0565b73ffffffffffffffffffffffffffffffffffffffff16146114f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114e790613aca565b60405180910390fd5b60005b815181101561166757601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682828151811061154857611547613aea565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16141580156115dc5750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168282815181106115bb576115ba613aea565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15611654576001600660008484815181106115fa576115f9613aea565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b808061165f90613b48565b9150506114f3565b5050565b611673611f32565b73ffffffffffffffffffffffffffffffffffffffff166116916110f0565b73ffffffffffffffffffffffffffffffffffffffff16146116e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116de90613aca565b60405180910390fd5b60018111156116f557600080fd5b8060098190555050565b611707611f32565b73ffffffffffffffffffffffffffffffffffffffff166117256110f0565b73ffffffffffffffffffffffffffffffffffffffff161461177b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177290613aca565b60405180910390fd5b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b611836611f32565b73ffffffffffffffffffffffffffffffffffffffff166118546110f0565b73ffffffffffffffffffffffffffffffffffffffff16146118aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118a190613aca565b60405180910390fd5b601360009054906101000a900460ff16156118fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118f190613cc5565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561195e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119829190613cfa565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119e9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a0d9190613cfa565b6040518363ffffffff1660e01b8152600401611a2a929190613d27565b6020604051808303816000875af1158015611a49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a6d9190613cfa565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160046000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601360006101000a81548160ff02191690831515021790555042601481905550610e10601454611c559190613bfd565b6015819055505050565b60606011805480602002602001604051908101604052809291908181526020018280548015611ce357602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611c99575b5050505050905090565b6000611d1a600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610fc1565b905090565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611dae611f32565b73ffffffffffffffffffffffffffffffffffffffff16611dcc6110f0565b73ffffffffffffffffffffffffffffffffffffffff1614611e22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e1990613aca565b60405180910390fd5b6009811115611e3057600080fd5b80600a8190555050565b611e42611f32565b73ffffffffffffffffffffffffffffffffffffffff16611e606110f0565b73ffffffffffffffffffffffffffffffffffffffff1614611eb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ead90613aca565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611f26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f1d90613dc2565b60405180910390fd5b611f2f81612b8a565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611faa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa190613e54565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561201a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201190613ee6565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516120f89190613500565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612175576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161216c90613f78565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156121e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121dc9061400a565b60405180910390fd5b60008111612228576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161221f9061409c565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156122b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122ac90614154565b60405180910390fd5b601360009054906101000a900460ff16612304576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122fb906141c0565b60405180910390fd5b601454421415612367576001600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561240b5750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156124245750601360019054906101000a900460ff16155b1561269b57601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156124d45750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156124e1575042601554115b156125435760006124f183610fc1565b905061252360646125156002683635c9adc5dea00000612c4e90919063ffffffff16565b612cc990919063ffffffff16565b6125368284612abe90919063ffffffff16565b111561254157600080fd5b505b600061254e30610fc1565b9050601360029054906101000a900460ff161580156125bb5750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561269957600081111561267f5761261a606461260c60056125fe601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610fc1565b612c4e90919063ffffffff16565b612cc990919063ffffffff16565b8111156126755761267260646126646005612656601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610fc1565b612c4e90919063ffffffff16565b612cc990919063ffffffff16565b90505b61267e816127d9565b5b600047905060008111156126975761269647612a52565b5b505b505b600060019050600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806127425750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806127595750601360019054906101000a900460ff165b1561276357600090505b61276f84848484612d13565b50505050565b60008383111582906127bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127b491906133b1565b60405180910390fd5b50600083856127cc91906141e0565b9050809150509392505050565b6001601360026101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115612811576128106135aa565b5b60405190808252806020026020018201604052801561283f5781602001602082028036833780820191505090505b509050308160008151811061285757612856613aea565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156128fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129229190613cfa565b8160018151811061293657612935613aea565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061299d30600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611f3a565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612a01959493929190614259565b600060405180830381600087803b158015612a1b57600080fd5b505af1158015612a2f573d6000803e3d6000fd5b50505050506000601360026101000a81548160ff02191690831515021790555050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612aba573d6000803e3d6000fd5b5050565b6000808284612acd9190613bfd565b905083811015612b12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b09906142ff565b60405180910390fd5b8091505092915050565b6000600754821115612b63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b5a90614391565b60405180910390fd5b6000612b6d612d40565b9050612b828184612cc990919063ffffffff16565b915050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080831415612c615760009050612cc3565b60008284612c6f91906143b1565b9050828482612c7e919061443a565b14612cbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cb5906144dd565b60405180910390fd5b809150505b92915050565b6000612d0b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612d6b565b905092915050565b80612d2157612d20612dce565b5b612d2c848484612e0f565b80612d3a57612d39612fda565b5b50505050565b6000806000612d4d612fee565b91509150612d648183612cc990919063ffffffff16565b9250505090565b60008083118290612db2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612da991906133b1565b60405180910390fd5b5060008385612dc1919061443a565b9050809150509392505050565b6000600954118015612de257506000600a54115b612deb57600080fd5b600954600b81905550600a54600c8190555060006009819055506000600a81905550565b600080600080600080612e2187613050565b955095509550955095509550612e7f86600160008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130b890919063ffffffff16565b600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f1485600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612abe90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f6081613102565b612f6a84836131bf565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051612fc79190613500565b60405180910390a3505050505050505050565b600b54600981905550600c54600a81905550565b600080600060075490506000683635c9adc5dea000009050613024683635c9adc5dea00000600754612cc990919063ffffffff16565b82101561304357600754683635c9adc5dea0000093509350505061304c565b81819350935050505b9091565b600080600080600080600080600061306d8a600954600a546131f9565b925092509250600061307d612d40565b905060008060006130908e87878761328f565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b60006130fa83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612775565b905092915050565b600061310c612d40565b905060006131238284612c4e90919063ffffffff16565b905061317781600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612abe90919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6131d4826007546130b890919063ffffffff16565b6007819055506131ef81600854612abe90919063ffffffff16565b6008819055505050565b6000806000806132256064613217888a612c4e90919063ffffffff16565b612cc990919063ffffffff16565b9050600061324f6064613241888b612c4e90919063ffffffff16565b612cc990919063ffffffff16565b905060006132788261326a858c6130b890919063ffffffff16565b6130b890919063ffffffff16565b905080838395509550955050505093509350939050565b6000806000806132a88589612c4e90919063ffffffff16565b905060006132bf8689612c4e90919063ffffffff16565b905060006132d68789612c4e90919063ffffffff16565b905060006132ff826132f185876130b890919063ffffffff16565b6130b890919063ffffffff16565b9050838184965096509650505050509450945094915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613352578082015181840152602081019050613337565b83811115613361576000848401525b50505050565b6000601f19601f8301169050919050565b600061338382613318565b61338d8185613323565b935061339d818560208601613334565b6133a681613367565b840191505092915050565b600060208201905081810360008301526133cb8184613378565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613412826133e7565b9050919050565b61342281613407565b811461342d57600080fd5b50565b60008135905061343f81613419565b92915050565b6000819050919050565b61345881613445565b811461346357600080fd5b50565b6000813590506134758161344f565b92915050565b60008060408385031215613492576134916133dd565b5b60006134a085828601613430565b92505060206134b185828601613466565b9150509250929050565b60008115159050919050565b6134d0816134bb565b82525050565b60006020820190506134eb60008301846134c7565b92915050565b6134fa81613445565b82525050565b600060208201905061351560008301846134f1565b92915050565b600080600060608486031215613534576135336133dd565b5b600061354286828701613430565b935050602061355386828701613430565b925050604061356486828701613466565b9150509250925092565b600060ff82169050919050565b6135848161356e565b82525050565b600060208201905061359f600083018461357b565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6135e282613367565b810181811067ffffffffffffffff82111715613601576136006135aa565b5b80604052505050565b60006136146133d3565b905061362082826135d9565b919050565b600067ffffffffffffffff8211156136405761363f6135aa565b5b602082029050602081019050919050565b600080fd5b600061366961366484613625565b61360a565b9050808382526020820190506020840283018581111561368c5761368b613651565b5b835b818110156136b557806136a18882613430565b84526020840193505060208101905061368e565b5050509392505050565b600082601f8301126136d4576136d36135a5565b5b81356136e4848260208601613656565b91505092915050565b600060208284031215613703576137026133dd565b5b600082013567ffffffffffffffff811115613721576137206133e2565b5b61372d848285016136bf565b91505092915050565b60006020828403121561374c5761374b6133dd565b5b600061375a84828501613430565b91505092915050565b600060208284031215613779576137786133dd565b5b600061378784828501613466565b91505092915050565b600061379b826133e7565b9050919050565b6137ab81613790565b81146137b657600080fd5b50565b6000813590506137c8816137a2565b92915050565b6000602082840312156137e4576137e36133dd565b5b60006137f2848285016137b9565b91505092915050565b613804816134bb565b811461380f57600080fd5b50565b600081359050613821816137fb565b92915050565b60006020828403121561383d5761383c6133dd565b5b600061384b84828501613812565b91505092915050565b61385d81613407565b82525050565b60006020820190506138786000830184613854565b92915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6138b381613445565b82525050565b60006138c583836138aa565b60208301905092915050565b6000602082019050919050565b60006138e98261387e565b6138f38185613889565b93506138fe8361389a565b8060005b8381101561392f57815161391688826138b9565b9750613921836138d1565b925050600181019050613902565b5085935050505092915050565b6000602082019050818103600083015261395681846138de565b905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61399381613407565b82525050565b60006139a5838361398a565b60208301905092915050565b6000602082019050919050565b60006139c98261395e565b6139d38185613969565b93506139de8361397a565b8060005b83811015613a0f5781516139f68882613999565b9750613a01836139b1565b9250506001810190506139e2565b5085935050505092915050565b60006020820190508181036000830152613a3681846139be565b905092915050565b60008060408385031215613a5557613a546133dd565b5b6000613a6385828601613430565b9250506020613a7485828601613430565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613ab4602083613323565b9150613abf82613a7e565b602082019050919050565b60006020820190508181036000830152613ae381613aa7565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000613b5382613445565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415613b8657613b85613b19565b5b600182019050919050565b7f4164647265737320696e76616c69640000000000000000000000000000000000600082015250565b6000613bc7600f83613323565b9150613bd282613b91565b602082019050919050565b60006020820190508181036000830152613bf681613bba565b9050919050565b6000613c0882613445565b9150613c1383613445565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613c4857613c47613b19565b5b828201905092915050565b7f436f6e74726163742068617320616c7265616479206265656e20696e6974696160008201527f6c697a6564000000000000000000000000000000000000000000000000000000602082015250565b6000613caf602583613323565b9150613cba82613c53565b604082019050919050565b60006020820190508181036000830152613cde81613ca2565b9050919050565b600081519050613cf481613419565b92915050565b600060208284031215613d1057613d0f6133dd565b5b6000613d1e84828501613ce5565b91505092915050565b6000604082019050613d3c6000830185613854565b613d496020830184613854565b9392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000613dac602683613323565b9150613db782613d50565b604082019050919050565b60006020820190508181036000830152613ddb81613d9f565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613e3e602483613323565b9150613e4982613de2565b604082019050919050565b60006020820190508181036000830152613e6d81613e31565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000613ed0602283613323565b9150613edb82613e74565b604082019050919050565b60006020820190508181036000830152613eff81613ec3565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000613f62602583613323565b9150613f6d82613f06565b604082019050919050565b60006020820190508181036000830152613f9181613f55565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000613ff4602383613323565b9150613fff82613f98565b604082019050919050565b6000602082019050818103600083015261402381613fe7565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000614086602983613323565b91506140918261402a565b604082019050919050565b600060208201905081810360008301526140b581614079565b9050919050565b7f596f7572206164647265737320686173206265656e206d61726b65642061732060008201527f6120626f742c20706c6561736520636f6e7461637420737461666620746f206160208201527f707065616c20796f757220636173652e00000000000000000000000000000000604082015250565b600061413e605083613323565b9150614149826140bc565b606082019050919050565b6000602082019050818103600083015261416d81614131565b9050919050565b7f436f6e7472616374206e6f742079657420696e697469616c697a656400000000600082015250565b60006141aa601c83613323565b91506141b582614174565b602082019050919050565b600060208201905081810360008301526141d98161419d565b9050919050565b60006141eb82613445565b91506141f683613445565b92508282101561420957614208613b19565b5b828203905092915050565b6000819050919050565b6000819050919050565b600061424361423e61423984614214565b61421e565b613445565b9050919050565b61425381614228565b82525050565b600060a08201905061426e60008301886134f1565b61427b602083018761424a565b818103604083015261428d81866139be565b905061429c6060830185613854565b6142a960808301846134f1565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006142e9601b83613323565b91506142f4826142b3565b602082019050919050565b60006020820190508181036000830152614318816142dc565b9050919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b600061437b602a83613323565b91506143868261431f565b604082019050919050565b600060208201905081810360008301526143aa8161436e565b9050919050565b60006143bc82613445565b91506143c783613445565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614400576143ff613b19565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061444582613445565b915061445083613445565b9250826144605761445f61440b565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006144c7602183613323565b91506144d28261446b565b604082019050919050565b600060208201905081810360008301526144f6816144ba565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122057b59b7795ecf333c9738879f9044924bbc29836a92a923e2797d820fac25e5764736f6c634300080a0033

Deployed Bytecode Sourcemap

3806:13761:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5802:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6654:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6079:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6823:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5988:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15421:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15958:259;;;;;;;;;;;;;:::i;:::-;;15600:90;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16225:612;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14439:159;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14781:90;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15698:113;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16955:334;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6182:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2801:103;;;;;;;;;;;;;:::i;:::-;;15819:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2578:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14094:337;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5893:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17419:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6328:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15138:271;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15015:111;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14610:159;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13383:703;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;17297:110;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16845:102;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6503:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14883:116;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2912:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5802:83;5839:13;5872:5;;;;;;;;;;;;;;;;;5865:12;;5802:83;:::o;6654:161::-;6729:4;6746:39;6755:12;:10;:12::i;:::-;6769:7;6778:6;6746:8;:39::i;:::-;6803:4;6796:11;;6654:161;;;;:::o;6079:95::-;6132:7;4328:12;6152:14;;6079:95;:::o;6823:313::-;6921:4;6938:36;6948:6;6956:9;6967:6;6938:9;:36::i;:::-;6985:121;6994:6;7002:12;:10;:12::i;:::-;7016:89;7054:6;7016:89;;;;;;;;;;;;;;;;;:11;:19;7028:6;7016:19;;;;;;;;;;;;;;;:33;7036:12;:10;:12::i;:::-;7016:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6985:8;:121::i;:::-;7124:4;7117:11;;6823:313;;;;;:::o;5988:83::-;6029:5;4581:1;6047:16;;5988:83;:::o;15421:167::-;2724:12;:10;:12::i;:::-;2713:23;;:7;:5;:7::i;:::-;:23;;;2705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;15495:6:::1;15490:91;15511:5;:12;15507:1;:16;15490:91;;;15564:5;15545:6;:16;15552:5;15558:1;15552:8;;;;;;;;:::i;:::-;;;;;;;;15545:16;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;15525:3;;;;;:::i;:::-;;;;15490:91;;;;15421:167:::0;:::o;15958:259::-;2724:12;:10;:12::i;:::-;2713:23;;:7;:5;:7::i;:::-;:23;;;2705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;16009:23:::1;16035:24;16053:4;16035:9;:24::i;:::-;16009:50;;16070:33;16087:15;16070:16;:33::i;:::-;16116:26;16145:21;16116:50;;16177:32;16190:18;16177:12;:32::i;:::-;15998:219;;15958:259::o:0;15600:90::-;15648:4;15672:6;:10;15679:2;15672:10;;;;;;;;;;;;;;;;;;;;;;;;;15665:17;;15600:90;;;:::o;16225:612::-;16279:34;16288:12;;;;;;;;;;;16302:10;16279:8;:34::i;:::-;;16337:6;16332:409;16353:16;:23;;;;16349:1;:27;16332:409;;;16401:16;16420;16437:1;16420:19;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16401:38;;16454:20;16477:15;16493:1;16477:18;;;;;;;;:::i;:::-;;;;;;;;;;16454:41;;16542:1;16520:24;;:10;:24;;;;16512:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;16609:10;16597:22;;:8;:22;;;16593:137;;;16661:28;16678:10;16661:12;:16;;:28;;;;:::i;:::-;16640:15;16656:1;16640:18;;;;;;;;:::i;:::-;;;;;;;;;:49;;;;16708:7;;;;;16593:137;16386:355;;16383:1;16378:6;;;;;:::i;:::-;;;16332:409;;;;16753:16;16775:10;16753:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16797:15;16818:10;16797:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16225:612;;:::o;14439:159::-;2724:12;:10;:12::i;:::-;2713:23;;:7;:5;:7::i;:::-;:23;;;2705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14546:4:::1;14514:25;:29;14540:2;14514:29;;;;;;;;;;;;;;;;:36;;;;;;;;;;;;;;;;;;14586:4;14561:18;:22;14580:2;14561:22;;;;;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;14439:159:::0;:::o;14781:90::-;2724:12;:10;:12::i;:::-;2713:23;;:7;:5;:7::i;:::-;:23;;;2705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14858:5:::1;14845:10;;:18;;;;;;;;;;;;;;;;;;14781:90:::0;:::o;15698:113::-;15757:4;15781:18;:22;15800:2;15781:22;;;;;;;;;;;;;;;;;;;;;;;;;15774:29;;15698:113;;;:::o;16955:334::-;17011:7;17036:6;17045:1;17036:10;;17031:230;17052:16;:23;;;;17048:1;:27;17031:230;;;17100:16;17119;17136:1;17119:19;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;17100:38;;17183:5;17171:17;;:8;:17;;;17167:83;;;17216:15;17232:1;17216:18;;;;;;;;:::i;:::-;;;;;;;;;;17209:25;;;;;;17167:83;17085:176;17082:1;17077:6;;;;;:::i;:::-;;;17031:230;;;;17280:1;17273:8;;16955:334;;;;:::o;6182:138::-;6248:7;6275:37;6295:7;:16;6303:7;6295:16;;;;;;;;;;;;;;;;6275:19;:37::i;:::-;6268:44;;6182:138;;;:::o;2801:103::-;2724:12;:10;:12::i;:::-;2713:23;;:7;:5;:7::i;:::-;:23;;;2705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2866:30:::1;2893:1;2866:18;:30::i;:::-;2801:103::o:0;15819:127::-;15885:4;15909:25;:29;15935:2;15909:29;;;;;;;;;;;;;;;;;;;;;;;;;15902:36;;15819:127;;;:::o;2578:87::-;2624:7;2651:6;;;;;;;;;;;2644:13;;2578:87;:::o;14094:337::-;2724:12;:10;:12::i;:::-;2713:23;;:7;:5;:7::i;:::-;:23;;;2705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14222:5:::1;14181:25;:38;14207:11;;;;;;;;;;;14181:38;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;14272:5;14238:18;:31;14257:11;;;;;;;;;;;14238:31;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;14302:16;14288:11;;:30;;;;;;;;;;;;;;;;;;14370:4;14329:25;:38;14355:11;;;;;;;;;;;14329:38;;;;;;;;;;;;;;;;:45;;;;;;;;;;;;;;;;;;14419:4;14385:18;:31;14404:11;;;;;;;;;;;14385:31;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;;;;;;;14094:337:::0;:::o;5893:87::-;5932:13;5965:7;;;;;;;;;;;;;;;;;5958:14;;5893:87;:::o;17419:108::-;17468:16;17504:15;17497:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17419:108;:::o;6328:167::-;6406:4;6423:42;6433:12;:10;:12::i;:::-;6447:9;6458:6;6423:9;:42::i;:::-;6483:4;6476:11;;6328:167;;;;:::o;15138:271::-;2724:12;:10;:12::i;:::-;2713:23;;:7;:5;:7::i;:::-;:23;;;2705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;15212:6:::1;15207:195;15228:5;:12;15224:1;:16;15207:195;;;15278:13;;;;;;;;;;;15266:25;;:5;15272:1;15266:8;;;;;;;;:::i;:::-;;;;;;;;:25;;;;:65;;;;;15315:15;;;;;;;;;;;15295:36;;:5;15301:1;15295:8;;;;;;;;:::i;:::-;;;;;;;;:36;;;;15266:65;15262:129;;;15371:4;15352:6;:16;15359:5;15365:1;15359:8;;;;;;;;:::i;:::-;;;;;;;;15352:16;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;15262:129;15242:3;;;;;:::i;:::-;;;;15207:195;;;;15138:271:::0;:::o;15015:111::-;2724:12;:10;:12::i;:::-;2713:23;;:7;:5;:7::i;:::-;:23;;;2705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;15092:1:::1;15085:3;:8;;15077:17;;;::::0;::::1;;15115:3;15105:7;:13;;;;15015:111:::0;:::o;14610:159::-;2724:12;:10;:12::i;:::-;2713:23;;:7;:5;:7::i;:::-;:23;;;2705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14715:5:::1;14683:25;:29;14709:2;14683:29;;;;;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;14756:5;14731:18;:22;14750:2;14731:22;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;14610:159:::0;:::o;13383:703::-;2724:12;:10;:12::i;:::-;2713:23;;:7;:5;:7::i;:::-;:23;;;2705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13474:11:::1;;;;;;;;;;;13473:12;13465:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;13537:35;13594:42;13537:100;;13682:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13664:56;;;13729:4;13736:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13664:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13648:13;;:112;;;;;;;;;;;;;;;;;;13791:16;13773:15;;:34;;;;;;;;;;;;;;;;;;13834:10;13820:11;;:24;;;;;;;;;;;;;;;;;;13896:4;13855:25;:38;13881:11;;;;;;;;;;;13855:38;;;;;;;;;;;;;;;;:45;;;;;;;;;;;;;;;;;;13945:4;13911:18;:31;13930:11;;;;;;;;;;;13911:31;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;;;;;;;13976:4;13962:11;;:18;;;;;;;;;;;;;;;;;;14004:15;13991:10;:28;;;;14067:10;14053;;:25;;;;:::i;:::-;14030:20;:48;;;;13454:632;13383:703:::0;:::o;17297:110::-;17347:16;17383;17376:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17297:110;:::o;16845:102::-;16889:7;16916:23;16926:12;;;;;;;;;;;16916:9;:23::i;:::-;16909:30;;16845:102;:::o;6503:143::-;6584:7;6611:11;:18;6623:5;6611:18;;;;;;;;;;;;;;;:27;6630:7;6611:27;;;;;;;;;;;;;;;;6604:34;;6503:143;;;;:::o;14883:116::-;2724:12;:10;:12::i;:::-;2713:23;;:7;:5;:7::i;:::-;:23;;;2705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14963:1:::1;14955:4;:9;;14947:18;;;::::0;::::1;;14987:4;14976:8;:15;;;;14883:116:::0;:::o;2912:201::-;2724:12;:10;:12::i;:::-;2713:23;;:7;:5;:7::i;:::-;:23;;;2705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;3021:1:::1;3001:22;;:8;:22;;;;2993:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;3077:28;3096:8;3077:18;:28::i;:::-;2912:201:::0;:::o;101:98::-;154:7;181:10;174:17;;101:98;:::o;7749:335::-;7859:1;7842:19;;:5;:19;;;;7834:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7940:1;7921:21;;:7;:21;;;;7913:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8022:6;7992:11;:18;8004:5;7992:18;;;;;;;;;;;;;;;:27;8011:7;7992:27;;;;;;;;;;;;;;;:36;;;;8060:7;8044:32;;8053:5;8044:32;;;8069:6;8044:32;;;;;;:::i;:::-;;;;;;;;7749:335;;;:::o;8096:1836::-;8200:1;8184:18;;:4;:18;;;;8176:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8277:1;8263:16;;:2;:16;;;;8255:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8347:1;8338:6;:10;8330:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8414:6;:12;8421:4;8414:12;;;;;;;;;;;;;;;;;;;;;;;;;8413:13;8405:106;;;;;;;;;;;;:::i;:::-;;;;;;;;;8530:11;;;;;;;;;;;8522:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;8618:10;;8599:15;:29;8595:52;;;8643:4;8630:6;:10;8637:2;8630:10;;;;;;;;;;;;;;;;:17;;;;;;;;;;;;;;;;;;8595:52;8665:18;:24;8684:4;8665:24;;;;;;;;;;;;;;;;;;;;;;;;;8664:25;:52;;;;;8694:18;:22;8713:2;8694:22;;;;;;;;;;;;;;;;;;;;;;;;;8693:23;8664:52;:67;;;;;8721:10;;;;;;;;;;;8720:11;8664:67;8660:1053;;;8760:13;;;;;;;;;;;8752:21;;:4;:21;;;:55;;;;;8791:15;;;;;;;;;;;8777:30;;:2;:30;;;;8752:55;:97;;;;;8834:15;8811:20;;:38;8752:97;8748:261;;;8870:18;8891:22;8909:2;8891:9;:22::i;:::-;8870:43;;8969:23;8988:3;8969:14;8981:1;4328:12;8969:11;;:14;;;;:::i;:::-;:18;;:23;;;;:::i;:::-;8940:25;8951:13;8940:6;:10;;:25;;;;:::i;:::-;:52;;8932:61;;;;;;8851:158;8748:261;9025:28;9056:24;9074:4;9056:9;:24::i;:::-;9025:55;;9102:6;;;;;;;;;;;9101:7;:32;;;;;9120:13;;;;;;;;;;;9112:21;;:4;:21;;;;9101:32;9097:605;;;9181:1;9158:20;:24;9154:338;;;9234:40;9270:3;9234:31;9263:1;9234:24;9244:13;;;;;;;;;;;9234:9;:24::i;:::-;:28;;:31;;;;:::i;:::-;:35;;:40;;;;:::i;:::-;9211:20;:63;9207:183;;;9326:40;9362:3;9326:31;9355:1;9326:24;9336:13;;;;;;;;;;;9326:9;:24::i;:::-;:28;;:31;;;;:::i;:::-;:35;;:40;;;;:::i;:::-;9303:63;;9207:183;9434:38;9451:20;9434:16;:38::i;:::-;9154:338;9512:26;9541:21;9512:50;;9606:1;9585:18;:22;9581:106;;;9632:35;9645:21;9632:12;:35::i;:::-;9581:106;9135:567;9097:605;8733:980;8660:1053;9725:12;9740:4;9725:19;;9759:25;:31;9785:4;9759:31;;;;;;;;;;;;;;;;;;;;;;;;;:64;;;;9794:25;:29;9820:2;9794:29;;;;;;;;;;;;;;;;;;;;;;;;;9759:64;:78;;;;9827:10;;;;;;;;;;;9759:78;9755:99;;;9849:5;9839:15;;9755:99;9883:41;9898:4;9904:2;9908:6;9916:7;9883:14;:41::i;:::-;8165:1767;8096:1836;;;:::o;1238:190::-;1324:7;1357:1;1352;:6;;1360:12;1344:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1384:9;1400:1;1396;:5;;;;:::i;:::-;1384:17;;1419:1;1412:8;;;1238:190;;;;;:::o;9940:483::-;5339:4;5330:6;;:13;;;;;;;;;;;;;;;;;;10018:21:::1;10056:1;10042:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10018:40;;10087:4;10069;10074:1;10069:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10113:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10103:4;10108:1;10103:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;10146:62;10163:4;10178:15;;;;;;;;;;;10196:11;10146:8;:62::i;:::-;10219:15;;;;;;;;;;;:66;;;10300:11;10326:1;10342:4;10369;10389:15;10219:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10007:416;5375:5:::0;5366:6;;:14;;;;;;;;;;;;;;;;;;9940:483;:::o;10439:93::-;10496:11;;;;;;;;;;;:20;;:28;10517:6;10496:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10439:93;:::o;907:179::-;965:7;985:9;1001:1;997;:5;;;;:::i;:::-;985:17;;1026:1;1021;:6;;1013:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1077:1;1070:8;;;907:179;;;;:::o;7144:254::-;7211:7;7250;;7239;:18;;7231:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;7315:19;7338:10;:8;:10::i;:::-;7315:33;;7366:24;7378:11;7366:7;:11;;:24;;;;:::i;:::-;7359:31;;;7144:254;;;:::o;3121:191::-;3195:16;3214:6;;;;;;;;;;;3195:25;;3240:8;3231:6;;:17;;;;;;;;;;;;;;;;;;3295:8;3264:40;;3285:8;3264:40;;;;;;;;;;;;3184:128;3121:191;:::o;1436:246::-;1494:7;1523:1;1518;:6;1514:47;;;1548:1;1541:8;;;;1514:47;1571:9;1587:1;1583;:5;;;;:::i;:::-;1571:17;;1616:1;1611;1607;:5;;;;:::i;:::-;:10;1599:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1673:1;1666:8;;;1436:246;;;;;:::o;1690:132::-;1748:7;1775:39;1779:1;1782;1775:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1768:46;;1690:132;;;;:::o;10544:265::-;10657:7;10652:41;;10679:14;:12;:14::i;:::-;10652:41;10704:44;10722:6;10730:9;10741:6;10704:17;:44::i;:::-;10764:7;10759:42;;10786:15;:13;:15::i;:::-;10759:42;10544:265;;;;:::o;12150:163::-;12191:7;12212:15;12229;12248:19;:17;:19::i;:::-;12211:56;;;;12285:20;12297:7;12285;:11;;:20;;;;:::i;:::-;12278:27;;;;12150:163;:::o;1830:189::-;1916:7;1948:1;1944;:5;1951:12;1936:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1975:9;1991:1;1987;:5;;;;:::i;:::-;1975:17;;2010:1;2003:8;;;1830:189;;;;;:::o;7406:208::-;7467:1;7457:7;;:11;:27;;;;;7483:1;7472:8;;:12;7457:27;7449:36;;;;;;7516:7;;7498:15;:25;;;;7553:8;;7534:16;:27;;;;7582:1;7572:7;:11;;;;7605:1;7594:8;:12;;;;7406:208::o;10817:490::-;10916:15;10933:23;10958:12;10972:23;10997:12;11011:13;11028:19;11039:7;11028:10;:19::i;:::-;10915:132;;;;;;;;;;;;11076:28;11096:7;11076;:15;11084:6;11076:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;11058:7;:15;11066:6;11058:15;;;;;;;;;;;;;;;:46;;;;11136:39;11159:15;11136:7;:18;11144:9;11136:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;11115:7;:18;11123:9;11115:18;;;;;;;;;;;;;;;:60;;;;11189:16;11199:5;11189:9;:16::i;:::-;11216:23;11228:4;11234;11216:11;:23::i;:::-;11272:9;11255:44;;11264:6;11255:44;;;11283:15;11255:44;;;;;;:::i;:::-;;;;;;;;10904:403;;;;;;10817:490;;;:::o;7626:115::-;7680:15;;7670:7;:25;;;;7717:16;;7706:8;:27;;;;7626:115::o;12321:256::-;12371:7;12380;12400:15;12418:7;;12400:25;;12436:15;4328:12;12436:25;;12486:20;4328:12;12486:7;;:11;;:20;;;;:::i;:::-;12476:7;:30;12472:61;;;12516:7;;4328:12;12508:25;;;;;;;;12472:61;12552:7;12561;12544:25;;;;;;12321:256;;;:::o;11315:468::-;11374:7;11383;11392;11401;11410;11419;11440:23;11465:12;11479:13;11496:39;11508:7;11517;;11526:8;;11496:11;:39::i;:::-;11439:96;;;;;;11546:19;11569:10;:8;:10::i;:::-;11546:33;;11591:15;11608:23;11633:12;11649:46;11661:7;11670:4;11676:5;11683:11;11649;:46::i;:::-;11590:105;;;;;;11714:7;11723:15;11740:4;11746:15;11763:4;11769:5;11706:69;;;;;;;;;;;;;;;;;;;11315:468;;;;;;;:::o;1094:136::-;1152:7;1179:43;1183:1;1186;1179:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1172:50;;1094:136;;;;:::o;13002:214::-;13055:19;13078:10;:8;:10::i;:::-;13055:33;;13099:13;13115:22;13125:11;13115:5;:9;;:22;;;;:::i;:::-;13099:38;;13175:33;13202:5;13175:7;:22;13191:4;13175:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;13150:7;:22;13166:4;13150:22;;;;;;;;;;;;;;;:58;;;;13044:172;;13002:214;:::o;13224:147::-;13302:17;13314:4;13302:7;;:11;;:17;;;;:::i;:::-;13292:7;:27;;;;13343:20;13358:4;13343:10;;:14;;:20;;;;:::i;:::-;13330:10;:33;;;;13224:147;;:::o;11791:351::-;11884:7;11893;11902;11922:12;11937:28;11961:3;11937:19;11949:6;11937:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;11922:43;;11976:13;11992:29;12017:3;11992:20;12004:7;11992;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;11976:45;;12032:23;12058:28;12080:5;12058:17;12070:4;12058:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;12032:54;;12105:15;12122:4;12128:5;12097:37;;;;;;;;;11791:351;;;;;;;:::o;12585:409::-;12695:7;12704;12713;12733:15;12751:24;12763:11;12751:7;:11;;:24;;;;:::i;:::-;12733:42;;12786:12;12801:21;12810:11;12801:4;:8;;:21;;;;:::i;:::-;12786:36;;12833:13;12849:22;12859:11;12849:5;:9;;:22;;;;:::i;:::-;12833:38;;12882:23;12908:28;12930:5;12908:17;12920:4;12908:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;12882:54;;12955:7;12964:15;12981:4;12947:39;;;;;;;;;;12585:409;;;;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:307::-;355:1;365:113;379:6;376:1;373:13;365:113;;;464:1;459:3;455:11;449:18;445:1;440:3;436:11;429:39;401:2;398:1;394:10;389:15;;365:113;;;496:6;493:1;490:13;487:101;;;576:1;567:6;562:3;558:16;551:27;487:101;336:258;287:307;;;:::o;600:102::-;641:6;692:2;688:7;683:2;676:5;672:14;668:28;658:38;;600:102;;;:::o;708:364::-;796:3;824:39;857:5;824:39;:::i;:::-;879:71;943:6;938:3;879:71;:::i;:::-;872:78;;959:52;1004:6;999:3;992:4;985:5;981:16;959:52;:::i;:::-;1036:29;1058:6;1036:29;:::i;:::-;1031:3;1027:39;1020:46;;800:272;708:364;;;;:::o;1078:313::-;1191:4;1229:2;1218:9;1214:18;1206:26;;1278:9;1272:4;1268:20;1264:1;1253:9;1249:17;1242:47;1306:78;1379:4;1370:6;1306:78;:::i;:::-;1298:86;;1078:313;;;;:::o;1397:75::-;1430:6;1463:2;1457:9;1447:19;;1397:75;:::o;1478:117::-;1587:1;1584;1577:12;1601:117;1710:1;1707;1700:12;1724:126;1761:7;1801:42;1794:5;1790:54;1779:65;;1724:126;;;:::o;1856:96::-;1893:7;1922:24;1940:5;1922:24;:::i;:::-;1911:35;;1856:96;;;:::o;1958:122::-;2031:24;2049:5;2031:24;:::i;:::-;2024:5;2021:35;2011:63;;2070:1;2067;2060:12;2011:63;1958:122;:::o;2086:139::-;2132:5;2170:6;2157:20;2148:29;;2186:33;2213:5;2186:33;:::i;:::-;2086:139;;;;:::o;2231:77::-;2268:7;2297:5;2286:16;;2231:77;;;:::o;2314:122::-;2387:24;2405:5;2387:24;:::i;:::-;2380:5;2377:35;2367:63;;2426:1;2423;2416:12;2367:63;2314:122;:::o;2442:139::-;2488:5;2526:6;2513:20;2504:29;;2542:33;2569:5;2542:33;:::i;:::-;2442:139;;;;:::o;2587:474::-;2655:6;2663;2712:2;2700:9;2691:7;2687:23;2683:32;2680:119;;;2718:79;;:::i;:::-;2680:119;2838:1;2863:53;2908:7;2899:6;2888:9;2884:22;2863:53;:::i;:::-;2853:63;;2809:117;2965:2;2991:53;3036:7;3027:6;3016:9;3012:22;2991:53;:::i;:::-;2981:63;;2936:118;2587:474;;;;;:::o;3067:90::-;3101:7;3144:5;3137:13;3130:21;3119:32;;3067:90;;;:::o;3163:109::-;3244:21;3259:5;3244:21;:::i;:::-;3239:3;3232:34;3163:109;;:::o;3278:210::-;3365:4;3403:2;3392:9;3388:18;3380:26;;3416:65;3478:1;3467:9;3463:17;3454:6;3416:65;:::i;:::-;3278:210;;;;:::o;3494:118::-;3581:24;3599:5;3581:24;:::i;:::-;3576:3;3569:37;3494:118;;:::o;3618:222::-;3711:4;3749:2;3738:9;3734:18;3726:26;;3762:71;3830:1;3819:9;3815:17;3806:6;3762:71;:::i;:::-;3618:222;;;;:::o;3846:619::-;3923:6;3931;3939;3988:2;3976:9;3967:7;3963:23;3959:32;3956:119;;;3994:79;;:::i;:::-;3956:119;4114:1;4139:53;4184:7;4175:6;4164:9;4160:22;4139:53;:::i;:::-;4129:63;;4085:117;4241:2;4267:53;4312:7;4303:6;4292:9;4288:22;4267:53;:::i;:::-;4257:63;;4212:118;4369:2;4395:53;4440:7;4431:6;4420:9;4416:22;4395:53;:::i;:::-;4385:63;;4340:118;3846:619;;;;;:::o;4471:86::-;4506:7;4546:4;4539:5;4535:16;4524:27;;4471:86;;;:::o;4563:112::-;4646:22;4662:5;4646:22;:::i;:::-;4641:3;4634:35;4563:112;;:::o;4681:214::-;4770:4;4808:2;4797:9;4793:18;4785:26;;4821:67;4885:1;4874:9;4870:17;4861:6;4821:67;:::i;:::-;4681:214;;;;:::o;4901:117::-;5010:1;5007;5000:12;5024:180;5072:77;5069:1;5062:88;5169:4;5166:1;5159:15;5193:4;5190:1;5183:15;5210:281;5293:27;5315:4;5293:27;:::i;:::-;5285:6;5281:40;5423:6;5411:10;5408:22;5387:18;5375:10;5372:34;5369:62;5366:88;;;5434:18;;:::i;:::-;5366:88;5474:10;5470:2;5463:22;5253:238;5210:281;;:::o;5497:129::-;5531:6;5558:20;;:::i;:::-;5548:30;;5587:33;5615:4;5607:6;5587:33;:::i;:::-;5497:129;;;:::o;5632:311::-;5709:4;5799:18;5791:6;5788:30;5785:56;;;5821:18;;:::i;:::-;5785:56;5871:4;5863:6;5859:17;5851:25;;5931:4;5925;5921:15;5913:23;;5632:311;;;:::o;5949:117::-;6058:1;6055;6048:12;6089:710;6185:5;6210:81;6226:64;6283:6;6226:64;:::i;:::-;6210:81;:::i;:::-;6201:90;;6311:5;6340:6;6333:5;6326:21;6374:4;6367:5;6363:16;6356:23;;6427:4;6419:6;6415:17;6407:6;6403:30;6456:3;6448:6;6445:15;6442:122;;;6475:79;;:::i;:::-;6442:122;6590:6;6573:220;6607:6;6602:3;6599:15;6573:220;;;6682:3;6711:37;6744:3;6732:10;6711:37;:::i;:::-;6706:3;6699:50;6778:4;6773:3;6769:14;6762:21;;6649:144;6633:4;6628:3;6624:14;6617:21;;6573:220;;;6577:21;6191:608;;6089:710;;;;;:::o;6822:370::-;6893:5;6942:3;6935:4;6927:6;6923:17;6919:27;6909:122;;6950:79;;:::i;:::-;6909:122;7067:6;7054:20;7092:94;7182:3;7174:6;7167:4;7159:6;7155:17;7092:94;:::i;:::-;7083:103;;6899:293;6822:370;;;;:::o;7198:539::-;7282:6;7331:2;7319:9;7310:7;7306:23;7302:32;7299:119;;;7337:79;;:::i;:::-;7299:119;7485:1;7474:9;7470:17;7457:31;7515:18;7507:6;7504:30;7501:117;;;7537:79;;:::i;:::-;7501:117;7642:78;7712:7;7703:6;7692:9;7688:22;7642:78;:::i;:::-;7632:88;;7428:302;7198:539;;;;:::o;7743:329::-;7802:6;7851:2;7839:9;7830:7;7826:23;7822:32;7819:119;;;7857:79;;:::i;:::-;7819:119;7977:1;8002:53;8047:7;8038:6;8027:9;8023:22;8002:53;:::i;:::-;7992:63;;7948:117;7743:329;;;;:::o;8078:::-;8137:6;8186:2;8174:9;8165:7;8161:23;8157:32;8154:119;;;8192:79;;:::i;:::-;8154:119;8312:1;8337:53;8382:7;8373:6;8362:9;8358:22;8337:53;:::i;:::-;8327:63;;8283:117;8078:329;;;;:::o;8413:104::-;8458:7;8487:24;8505:5;8487:24;:::i;:::-;8476:35;;8413:104;;;:::o;8523:138::-;8604:32;8630:5;8604:32;:::i;:::-;8597:5;8594:43;8584:71;;8651:1;8648;8641:12;8584:71;8523:138;:::o;8667:155::-;8721:5;8759:6;8746:20;8737:29;;8775:41;8810:5;8775:41;:::i;:::-;8667:155;;;;:::o;8828:345::-;8895:6;8944:2;8932:9;8923:7;8919:23;8915:32;8912:119;;;8950:79;;:::i;:::-;8912:119;9070:1;9095:61;9148:7;9139:6;9128:9;9124:22;9095:61;:::i;:::-;9085:71;;9041:125;8828:345;;;;:::o;9179:116::-;9249:21;9264:5;9249:21;:::i;:::-;9242:5;9239:32;9229:60;;9285:1;9282;9275:12;9229:60;9179:116;:::o;9301:133::-;9344:5;9382:6;9369:20;9360:29;;9398:30;9422:5;9398:30;:::i;:::-;9301:133;;;;:::o;9440:323::-;9496:6;9545:2;9533:9;9524:7;9520:23;9516:32;9513:119;;;9551:79;;:::i;:::-;9513:119;9671:1;9696:50;9738:7;9729:6;9718:9;9714:22;9696:50;:::i;:::-;9686:60;;9642:114;9440:323;;;;:::o;9769:118::-;9856:24;9874:5;9856:24;:::i;:::-;9851:3;9844:37;9769:118;;:::o;9893:222::-;9986:4;10024:2;10013:9;10009:18;10001:26;;10037:71;10105:1;10094:9;10090:17;10081:6;10037:71;:::i;:::-;9893:222;;;;:::o;10121:114::-;10188:6;10222:5;10216:12;10206:22;;10121:114;;;:::o;10241:184::-;10340:11;10374:6;10369:3;10362:19;10414:4;10409:3;10405:14;10390:29;;10241:184;;;;:::o;10431:132::-;10498:4;10521:3;10513:11;;10551:4;10546:3;10542:14;10534:22;;10431:132;;;:::o;10569:108::-;10646:24;10664:5;10646:24;:::i;:::-;10641:3;10634:37;10569:108;;:::o;10683:179::-;10752:10;10773:46;10815:3;10807:6;10773:46;:::i;:::-;10851:4;10846:3;10842:14;10828:28;;10683:179;;;;:::o;10868:113::-;10938:4;10970;10965:3;10961:14;10953:22;;10868:113;;;:::o;11017:732::-;11136:3;11165:54;11213:5;11165:54;:::i;:::-;11235:86;11314:6;11309:3;11235:86;:::i;:::-;11228:93;;11345:56;11395:5;11345:56;:::i;:::-;11424:7;11455:1;11440:284;11465:6;11462:1;11459:13;11440:284;;;11541:6;11535:13;11568:63;11627:3;11612:13;11568:63;:::i;:::-;11561:70;;11654:60;11707:6;11654:60;:::i;:::-;11644:70;;11500:224;11487:1;11484;11480:9;11475:14;;11440:284;;;11444:14;11740:3;11733:10;;11141:608;;;11017:732;;;;:::o;11755:373::-;11898:4;11936:2;11925:9;11921:18;11913:26;;11985:9;11979:4;11975:20;11971:1;11960:9;11956:17;11949:47;12013:108;12116:4;12107:6;12013:108;:::i;:::-;12005:116;;11755:373;;;;:::o;12134:114::-;12201:6;12235:5;12229:12;12219:22;;12134:114;;;:::o;12254:184::-;12353:11;12387:6;12382:3;12375:19;12427:4;12422:3;12418:14;12403:29;;12254:184;;;;:::o;12444:132::-;12511:4;12534:3;12526:11;;12564:4;12559:3;12555:14;12547:22;;12444:132;;;:::o;12582:108::-;12659:24;12677:5;12659:24;:::i;:::-;12654:3;12647:37;12582:108;;:::o;12696:179::-;12765:10;12786:46;12828:3;12820:6;12786:46;:::i;:::-;12864:4;12859:3;12855:14;12841:28;;12696:179;;;;:::o;12881:113::-;12951:4;12983;12978:3;12974:14;12966:22;;12881:113;;;:::o;13030:732::-;13149:3;13178:54;13226:5;13178:54;:::i;:::-;13248:86;13327:6;13322:3;13248:86;:::i;:::-;13241:93;;13358:56;13408:5;13358:56;:::i;:::-;13437:7;13468:1;13453:284;13478:6;13475:1;13472:13;13453:284;;;13554:6;13548:13;13581:63;13640:3;13625:13;13581:63;:::i;:::-;13574:70;;13667:60;13720:6;13667:60;:::i;:::-;13657:70;;13513:224;13500:1;13497;13493:9;13488:14;;13453:284;;;13457:14;13753:3;13746:10;;13154:608;;;13030:732;;;;:::o;13768:373::-;13911:4;13949:2;13938:9;13934:18;13926:26;;13998:9;13992:4;13988:20;13984:1;13973:9;13969:17;13962:47;14026:108;14129:4;14120:6;14026:108;:::i;:::-;14018:116;;13768:373;;;;:::o;14147:474::-;14215:6;14223;14272:2;14260:9;14251:7;14247:23;14243:32;14240:119;;;14278:79;;:::i;:::-;14240:119;14398:1;14423:53;14468:7;14459:6;14448:9;14444:22;14423:53;:::i;:::-;14413:63;;14369:117;14525:2;14551:53;14596:7;14587:6;14576:9;14572:22;14551:53;:::i;:::-;14541:63;;14496:118;14147:474;;;;;:::o;14627:182::-;14767:34;14763:1;14755:6;14751:14;14744:58;14627:182;:::o;14815:366::-;14957:3;14978:67;15042:2;15037:3;14978:67;:::i;:::-;14971:74;;15054:93;15143:3;15054:93;:::i;:::-;15172:2;15167:3;15163:12;15156:19;;14815:366;;;:::o;15187:419::-;15353:4;15391:2;15380:9;15376:18;15368:26;;15440:9;15434:4;15430:20;15426:1;15415:9;15411:17;15404:47;15468:131;15594:4;15468:131;:::i;:::-;15460:139;;15187:419;;;:::o;15612:180::-;15660:77;15657:1;15650:88;15757:4;15754:1;15747:15;15781:4;15778:1;15771:15;15798:180;15846:77;15843:1;15836:88;15943:4;15940:1;15933:15;15967:4;15964:1;15957:15;15984:233;16023:3;16046:24;16064:5;16046:24;:::i;:::-;16037:33;;16092:66;16085:5;16082:77;16079:103;;;16162:18;;:::i;:::-;16079:103;16209:1;16202:5;16198:13;16191:20;;15984:233;;;:::o;16223:165::-;16363:17;16359:1;16351:6;16347:14;16340:41;16223:165;:::o;16394:366::-;16536:3;16557:67;16621:2;16616:3;16557:67;:::i;:::-;16550:74;;16633:93;16722:3;16633:93;:::i;:::-;16751:2;16746:3;16742:12;16735:19;;16394:366;;;:::o;16766:419::-;16932:4;16970:2;16959:9;16955:18;16947:26;;17019:9;17013:4;17009:20;17005:1;16994:9;16990:17;16983:47;17047:131;17173:4;17047:131;:::i;:::-;17039:139;;16766:419;;;:::o;17191:305::-;17231:3;17250:20;17268:1;17250:20;:::i;:::-;17245:25;;17284:20;17302:1;17284:20;:::i;:::-;17279:25;;17438:1;17370:66;17366:74;17363:1;17360:81;17357:107;;;17444:18;;:::i;:::-;17357:107;17488:1;17485;17481:9;17474:16;;17191:305;;;;:::o;17502:224::-;17642:34;17638:1;17630:6;17626:14;17619:58;17711:7;17706:2;17698:6;17694:15;17687:32;17502:224;:::o;17732:366::-;17874:3;17895:67;17959:2;17954:3;17895:67;:::i;:::-;17888:74;;17971:93;18060:3;17971:93;:::i;:::-;18089:2;18084:3;18080:12;18073:19;;17732:366;;;:::o;18104:419::-;18270:4;18308:2;18297:9;18293:18;18285:26;;18357:9;18351:4;18347:20;18343:1;18332:9;18328:17;18321:47;18385:131;18511:4;18385:131;:::i;:::-;18377:139;;18104:419;;;:::o;18529:143::-;18586:5;18617:6;18611:13;18602:22;;18633:33;18660:5;18633:33;:::i;:::-;18529:143;;;;:::o;18678:351::-;18748:6;18797:2;18785:9;18776:7;18772:23;18768:32;18765:119;;;18803:79;;:::i;:::-;18765:119;18923:1;18948:64;19004:7;18995:6;18984:9;18980:22;18948:64;:::i;:::-;18938:74;;18894:128;18678:351;;;;:::o;19035:332::-;19156:4;19194:2;19183:9;19179:18;19171:26;;19207:71;19275:1;19264:9;19260:17;19251:6;19207:71;:::i;:::-;19288:72;19356:2;19345:9;19341:18;19332:6;19288:72;:::i;:::-;19035:332;;;;;:::o;19373:225::-;19513:34;19509:1;19501:6;19497:14;19490:58;19582:8;19577:2;19569:6;19565:15;19558:33;19373:225;:::o;19604:366::-;19746:3;19767:67;19831:2;19826:3;19767:67;:::i;:::-;19760:74;;19843:93;19932:3;19843:93;:::i;:::-;19961:2;19956:3;19952:12;19945:19;;19604:366;;;:::o;19976:419::-;20142:4;20180:2;20169:9;20165:18;20157:26;;20229:9;20223:4;20219:20;20215:1;20204:9;20200:17;20193:47;20257:131;20383:4;20257:131;:::i;:::-;20249:139;;19976:419;;;:::o;20401:223::-;20541:34;20537:1;20529:6;20525:14;20518:58;20610:6;20605:2;20597:6;20593:15;20586:31;20401:223;:::o;20630:366::-;20772:3;20793:67;20857:2;20852:3;20793:67;:::i;:::-;20786:74;;20869:93;20958:3;20869:93;:::i;:::-;20987:2;20982:3;20978:12;20971:19;;20630:366;;;:::o;21002:419::-;21168:4;21206:2;21195:9;21191:18;21183:26;;21255:9;21249:4;21245:20;21241:1;21230:9;21226:17;21219:47;21283:131;21409:4;21283:131;:::i;:::-;21275:139;;21002:419;;;:::o;21427:221::-;21567:34;21563:1;21555:6;21551:14;21544:58;21636:4;21631:2;21623:6;21619:15;21612:29;21427:221;:::o;21654:366::-;21796:3;21817:67;21881:2;21876:3;21817:67;:::i;:::-;21810:74;;21893:93;21982:3;21893:93;:::i;:::-;22011:2;22006:3;22002:12;21995:19;;21654:366;;;:::o;22026:419::-;22192:4;22230:2;22219:9;22215:18;22207:26;;22279:9;22273:4;22269:20;22265:1;22254:9;22250:17;22243:47;22307:131;22433:4;22307:131;:::i;:::-;22299:139;;22026:419;;;:::o;22451:224::-;22591:34;22587:1;22579:6;22575:14;22568:58;22660:7;22655:2;22647:6;22643:15;22636:32;22451:224;:::o;22681:366::-;22823:3;22844:67;22908:2;22903:3;22844:67;:::i;:::-;22837:74;;22920:93;23009:3;22920:93;:::i;:::-;23038:2;23033:3;23029:12;23022:19;;22681:366;;;:::o;23053:419::-;23219:4;23257:2;23246:9;23242:18;23234:26;;23306:9;23300:4;23296:20;23292:1;23281:9;23277:17;23270:47;23334:131;23460:4;23334:131;:::i;:::-;23326:139;;23053:419;;;:::o;23478:222::-;23618:34;23614:1;23606:6;23602:14;23595:58;23687:5;23682:2;23674:6;23670:15;23663:30;23478:222;:::o;23706:366::-;23848:3;23869:67;23933:2;23928:3;23869:67;:::i;:::-;23862:74;;23945:93;24034:3;23945:93;:::i;:::-;24063:2;24058:3;24054:12;24047:19;;23706:366;;;:::o;24078:419::-;24244:4;24282:2;24271:9;24267:18;24259:26;;24331:9;24325:4;24321:20;24317:1;24306:9;24302:17;24295:47;24359:131;24485:4;24359:131;:::i;:::-;24351:139;;24078:419;;;:::o;24503:228::-;24643:34;24639:1;24631:6;24627:14;24620:58;24712:11;24707:2;24699:6;24695:15;24688:36;24503:228;:::o;24737:366::-;24879:3;24900:67;24964:2;24959:3;24900:67;:::i;:::-;24893:74;;24976:93;25065:3;24976:93;:::i;:::-;25094:2;25089:3;25085:12;25078:19;;24737:366;;;:::o;25109:419::-;25275:4;25313:2;25302:9;25298:18;25290:26;;25362:9;25356:4;25352:20;25348:1;25337:9;25333:17;25326:47;25390:131;25516:4;25390:131;:::i;:::-;25382:139;;25109:419;;;:::o;25534:304::-;25674:34;25670:1;25662:6;25658:14;25651:58;25743:34;25738:2;25730:6;25726:15;25719:59;25812:18;25807:2;25799:6;25795:15;25788:43;25534:304;:::o;25844:366::-;25986:3;26007:67;26071:2;26066:3;26007:67;:::i;:::-;26000:74;;26083:93;26172:3;26083:93;:::i;:::-;26201:2;26196:3;26192:12;26185:19;;25844:366;;;:::o;26216:419::-;26382:4;26420:2;26409:9;26405:18;26397:26;;26469:9;26463:4;26459:20;26455:1;26444:9;26440:17;26433:47;26497:131;26623:4;26497:131;:::i;:::-;26489:139;;26216:419;;;:::o;26641:178::-;26781:30;26777:1;26769:6;26765:14;26758:54;26641:178;:::o;26825:366::-;26967:3;26988:67;27052:2;27047:3;26988:67;:::i;:::-;26981:74;;27064:93;27153:3;27064:93;:::i;:::-;27182:2;27177:3;27173:12;27166:19;;26825:366;;;:::o;27197:419::-;27363:4;27401:2;27390:9;27386:18;27378:26;;27450:9;27444:4;27440:20;27436:1;27425:9;27421:17;27414:47;27478:131;27604:4;27478:131;:::i;:::-;27470:139;;27197:419;;;:::o;27622:191::-;27662:4;27682:20;27700:1;27682:20;:::i;:::-;27677:25;;27716:20;27734:1;27716:20;:::i;:::-;27711:25;;27755:1;27752;27749:8;27746:34;;;27760:18;;:::i;:::-;27746:34;27805:1;27802;27798:9;27790:17;;27622:191;;;;:::o;27819:85::-;27864:7;27893:5;27882:16;;27819:85;;;:::o;27910:60::-;27938:3;27959:5;27952:12;;27910:60;;;:::o;27976:158::-;28034:9;28067:61;28085:42;28094:32;28120:5;28094:32;:::i;:::-;28085:42;:::i;:::-;28067:61;:::i;:::-;28054:74;;27976:158;;;:::o;28140:147::-;28235:45;28274:5;28235:45;:::i;:::-;28230:3;28223:58;28140:147;;:::o;28293:831::-;28556:4;28594:3;28583:9;28579:19;28571:27;;28608:71;28676:1;28665:9;28661:17;28652:6;28608:71;:::i;:::-;28689:80;28765:2;28754:9;28750:18;28741:6;28689:80;:::i;:::-;28816:9;28810:4;28806:20;28801:2;28790:9;28786:18;28779:48;28844:108;28947:4;28938:6;28844:108;:::i;:::-;28836:116;;28962:72;29030:2;29019:9;29015:18;29006:6;28962:72;:::i;:::-;29044:73;29112:3;29101:9;29097:19;29088:6;29044:73;:::i;:::-;28293:831;;;;;;;;:::o;29130:177::-;29270:29;29266:1;29258:6;29254:14;29247:53;29130:177;:::o;29313:366::-;29455:3;29476:67;29540:2;29535:3;29476:67;:::i;:::-;29469:74;;29552:93;29641:3;29552:93;:::i;:::-;29670:2;29665:3;29661:12;29654:19;;29313:366;;;:::o;29685:419::-;29851:4;29889:2;29878:9;29874:18;29866:26;;29938:9;29932:4;29928:20;29924:1;29913:9;29909:17;29902:47;29966:131;30092:4;29966:131;:::i;:::-;29958:139;;29685:419;;;:::o;30110:229::-;30250:34;30246:1;30238:6;30234:14;30227:58;30319:12;30314:2;30306:6;30302:15;30295:37;30110:229;:::o;30345:366::-;30487:3;30508:67;30572:2;30567:3;30508:67;:::i;:::-;30501:74;;30584:93;30673:3;30584:93;:::i;:::-;30702:2;30697:3;30693:12;30686:19;;30345:366;;;:::o;30717:419::-;30883:4;30921:2;30910:9;30906:18;30898:26;;30970:9;30964:4;30960:20;30956:1;30945:9;30941:17;30934:47;30998:131;31124:4;30998:131;:::i;:::-;30990:139;;30717:419;;;:::o;31142:348::-;31182:7;31205:20;31223:1;31205:20;:::i;:::-;31200:25;;31239:20;31257:1;31239:20;:::i;:::-;31234:25;;31427:1;31359:66;31355:74;31352:1;31349:81;31344:1;31337:9;31330:17;31326:105;31323:131;;;31434:18;;:::i;:::-;31323:131;31482:1;31479;31475:9;31464:20;;31142:348;;;;:::o;31496:180::-;31544:77;31541:1;31534:88;31641:4;31638:1;31631:15;31665:4;31662:1;31655:15;31682:185;31722:1;31739:20;31757:1;31739:20;:::i;:::-;31734:25;;31773:20;31791:1;31773:20;:::i;:::-;31768:25;;31812:1;31802:35;;31817:18;;:::i;:::-;31802:35;31859:1;31856;31852:9;31847:14;;31682:185;;;;:::o;31873:220::-;32013:34;32009:1;32001:6;31997:14;31990:58;32082:3;32077:2;32069:6;32065:15;32058:28;31873:220;:::o;32099:366::-;32241:3;32262:67;32326:2;32321:3;32262:67;:::i;:::-;32255:74;;32338:93;32427:3;32338:93;:::i;:::-;32456:2;32451:3;32447:12;32440:19;;32099:366;;;:::o;32471:419::-;32637:4;32675:2;32664:9;32660:18;32652:26;;32724:9;32718:4;32714:20;32710:1;32699:9;32695:17;32688:47;32752:131;32878:4;32752:131;:::i;:::-;32744:139;;32471:419;;;:::o

Swarm Source

ipfs://57b59b7795ecf333c9738879f9044924bbc29836a92a923e2797d820fac25e57

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

OVERVIEW

Pixie Inu is aiming to create a metaverse for the Inu generation of tokens. Contained within this metaverse $PIXIE plans to launch a staking platform, NFT collection, internal NFT marketplace, Play 2 Earn NFT game, and the $PIXIE Inu Arcade.

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.