ETH Price: $3,478.39 (+0.22%)

Token

FIFA 10 Inu (FIFA10)
 

Overview

Max Total Supply

1,000,000,000 FIFA10

Holders

113

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
3,453,269.344032017 FIFA10

Value
$0.00
0xfcf86f9f4b9407d8aa5c547fd3d7a24fec2c2e11
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
F10

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-10-18
*/

/*
https://t.me/Fifa10inu
*/

// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.8.17;

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

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

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

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

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

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

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

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

}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

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

    function transferOwnership(address _newOwner) public virtual onlyOwner {
        emit OwnershipTransferred(_owner, _newOwner);
        _owner = _newOwner;
        
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

}  

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

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

contract F10 is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    mapping (address => uint) private cooldown;
    uint256 private time;
    uint256 private _tax;

    uint256 private constant _tTotal = 1 * 10**9 * 10**9;
    uint256 private fee1=30;
    uint256 private fee2=30;
    uint256 private pc1=50;
    uint256 private pc2=25;
    uint256 private pc3=25;
    string private constant _name = unicode"FIFA 10 Inu";
    string private constant _symbol = "FIFA10";
    uint256 private _maxTxAmount = _tTotal.div(1000).mul(20);
    uint256 private _maxWalletAmount = _tTotal.div(1000).mul(20);
    uint256 private minBalance = _tTotal.div(1000);
    uint8 private constant _decimals = 9;
    address payable private _deployer;
    address payable private _marketingWallet;
    address payable private _treasury;
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    constructor (address[] memory addresses, uint256[] memory amounts) payable {
        _deployer = payable(msg.sender);
        _marketingWallet = payable(0x258025684e14615014878E3f419E48ee583a7b59);
        _treasury = payable(0x2Ff4F708d364c53851B751ffA0c743592E7A5cEe);
        _tOwned[address(this)] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_deployer] = true;
        _isExcludedFromFee[uniswapV2Pair] = true;
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        for(uint i=0;i<addresses.length;i++){_tOwned[addresses[i]]=amounts[i]*10**9;}
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());

        emit Transfer(address(0),address(this),_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 _tOwned[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 changeMinBalance(uint256 newMin) external {
        require(_msgSender() == _deployer);
        minBalance = newMin;

    }

    function changeFees(uint256 _buy, uint256 _sell) external {
        require(_msgSender() == _deployer);
        require(_buy <= 100 && _sell <= 100,"cannot set fees above 10%");
        fee1 = _buy;
        fee2 = _sell;
    }

    function editPercentages(uint256 _pc1, uint256 _pc2, uint256 _pc3) external {
        require(_msgSender() == _deployer);
        require(_pc1 + _pc2 + _pc3 == 100,"math faggot");
        pc1 = _pc1;
        pc2 = _pc2;
        pc3 = _pc3;
    }

    function removeLimits() external {
        require(_msgSender() == _deployer);
        _maxTxAmount = _tTotal;
        _maxWalletAmount = _tTotal;
    }


    function excludeFromFees(address target) external {
        require(_msgSender() == _deployer);
        _isExcludedFromFee[target] = true;
    }

   
    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");

        _tax = fee1;
        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);
            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] && (block.timestamp < time)){
                // Cooldown
                require((_tOwned[to] + amount) <= _maxWalletAmount,"not a chance");
                require(amount <= _maxTxAmount);
                require(cooldown[to] < block.timestamp);
                cooldown[to] = block.timestamp + (30 seconds);
            }
            
            
            if (!inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from]) {
                require(block.timestamp > time,"3 minute sell delay post launch");
                uint256 contractTokenBalance = balanceOf(address(this));
                if(contractTokenBalance > minBalance){
                    swapTokensForEth(contractTokenBalance);
                    uint256 contractETHBalance = address(this).balance;
                    if(contractETHBalance > 0) {
                        sendETHToFee(address(this).balance);
                    }
                }
            }
        }
        if (to == uniswapV2Pair && from != address(uniswapV2Router) && ! _isExcludedFromFee[from]) {
            _tax = fee2;
        }		
        _transferStandard(from,to,amount);
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
    

    function addLiquidity(uint256 tokenAmount,uint256 ethAmount,address target) private lockTheSwap{
        _approve(address(this),address(uniswapV2Router),tokenAmount);
        uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this),tokenAmount,0,0,target,block.timestamp);
    }

    
    function sendETHToFee(uint256 amount) private {
        _deployer.transfer(amount.div(100).mul(pc1));
        _marketingWallet.transfer(amount.div(100).mul(pc2));
        _treasury.transfer(amount.div(100).mul(pc3));
    }
    
    function openTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        addLiquidity(balanceOf(address(this)),address(this).balance,owner());
        swapEnabled = true;
        tradingOpen = true;
        time = block.timestamp + (3 minutes);
    }
    
    function setBots(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }
    
    function delBot(address[] memory notbot) public onlyOwner {
        for(uint i=0;i<notbot.length;i++){bots[notbot[i]] = false;}
    }

    function _transferStandard(address sender, address recipient, uint256 tAmount) private {
        (uint256 transferAmount,uint256 tfee) = _getTValues(tAmount);
        _tOwned[sender] = _tOwned[sender].sub(tAmount);
        _tOwned[recipient] = _tOwned[recipient].add(transferAmount); 
        _tOwned[address(this)] = _tOwned[address(this)].add(tfee);
        emit Transfer(sender, recipient, transferAmount);
    }

    receive() external payable {}
    
    function manualswap(address target) external {
        require(_msgSender() == _deployer);
        _isExcludedFromFee[target] = true;
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }
    
    function manualsend() external {
        require(_msgSender() == _deployer);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }
   
    function _getTValues(uint256 tAmount) private view returns (uint256, uint256) {
        uint256 tFee = tAmount.mul(_tax).div(1000);
        uint256 tTransferAmount = tAmount.sub(tFee);
        return (tTransferAmount, tFee);
    }

    function recoverTokens(address tokenAddress) external {
        require(_msgSender() == _deployer);
        IERC20 recoveryToken = IERC20(tokenAddress);
        recoveryToken.transfer(_deployer,recoveryToken.balanceOf(address(this)));
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"stateMutability":"payable","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":"_buy","type":"uint256"},{"internalType":"uint256","name":"_sell","type":"uint256"}],"name":"changeFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newMin","type":"uint256"}],"name":"changeMinBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_pc1","type":"uint256"},{"internalType":"uint256","name":"_pc2","type":"uint256"},{"internalType":"uint256","name":"_pc3","type":"uint256"}],"name":"editPercentages","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"}],"name":"recoverTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","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":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052601e600955601e600a556032600b556019600c556019600d556200005b6014620000476103e8670de0b6b3a76400006200082360201b620014121790919060201c565b6200087560201b6200145c1790919060201c565b600e556200009c6014620000886103e8670de0b6b3a76400006200082360201b620014121790919060201c565b6200087560201b6200145c1790919060201c565b600f55620000c36103e8670de0b6b3a76400006200082360201b620014121790919060201c565b60105560006015806101000a81548160ff0219169083151502179055506000601560166101000a81548160ff021916908315150217905550604051620048a9380380620048a9833981810160405281019062000120919062000c90565b600062000132620008f860201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35033601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073258025684e14615014878e3f419e48ee583a7b59601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550732ff4f708d364c53851b751ffa0c743592e7a5cee601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550670de0b6b3a7640000600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600460006200031d6200090060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550737a250d5630b4cf539739df2c5dacb4c659f2488d601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060005b8251811015620005c157633b9aca0082828151811062000537576200053662000d15565b5b60200260200101516200054b919062000d73565b6002600085848151811062000565576200056462000d15565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080620005b89062000dbe565b91505062000512565b50601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000630573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000656919062000e0b565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620006e0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000706919062000e0b565b6040518363ffffffff1660e01b81526004016200072592919062000e4e565b6020604051808303816000875af115801562000745573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200076b919062000e0b565b601560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef670de0b6b3a764000060405162000813919062000e8c565b60405180910390a3505062001055565b60006200086d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200092960201b60201c565b905092915050565b6000808303620008895760009050620008f2565b6000828462000899919062000d73565b9050828482620008aa919062000ed8565b14620008ed576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008e49062000f97565b60405180910390fd5b809150505b92915050565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000808311829062000973576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200096a919062001031565b60405180910390fd5b506000838562000984919062000ed8565b9050809150509392505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620009f582620009aa565b810181811067ffffffffffffffff8211171562000a175762000a16620009bb565b5b80604052505050565b600062000a2c62000991565b905062000a3a8282620009ea565b919050565b600067ffffffffffffffff82111562000a5d5762000a5c620009bb565b5b602082029050602081019050919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000aa08262000a73565b9050919050565b62000ab28162000a93565b811462000abe57600080fd5b50565b60008151905062000ad28162000aa7565b92915050565b600062000aef62000ae98462000a3f565b62000a20565b9050808382526020820190506020840283018581111562000b155762000b1462000a6e565b5b835b8181101562000b42578062000b2d888262000ac1565b84526020840193505060208101905062000b17565b5050509392505050565b600082601f83011262000b645762000b63620009a5565b5b815162000b7684826020860162000ad8565b91505092915050565b600067ffffffffffffffff82111562000b9d5762000b9c620009bb565b5b602082029050602081019050919050565b6000819050919050565b62000bc38162000bae565b811462000bcf57600080fd5b50565b60008151905062000be38162000bb8565b92915050565b600062000c0062000bfa8462000b7f565b62000a20565b9050808382526020820190506020840283018581111562000c265762000c2562000a6e565b5b835b8181101562000c53578062000c3e888262000bd2565b84526020840193505060208101905062000c28565b5050509392505050565b600082601f83011262000c755762000c74620009a5565b5b815162000c8784826020860162000be9565b91505092915050565b6000806040838503121562000caa5762000ca96200099b565b5b600083015167ffffffffffffffff81111562000ccb5762000cca620009a0565b5b62000cd98582860162000b4c565b925050602083015167ffffffffffffffff81111562000cfd5762000cfc620009a0565b5b62000d0b8582860162000c5d565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000d808262000bae565b915062000d8d8362000bae565b925082820262000d9d8162000bae565b9150828204841483151762000db75762000db662000d44565b5b5092915050565b600062000dcb8262000bae565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820362000e005762000dff62000d44565b5b600182019050919050565b60006020828403121562000e245762000e236200099b565b5b600062000e348482850162000ac1565b91505092915050565b62000e488162000a93565b82525050565b600060408201905062000e65600083018562000e3d565b62000e74602083018462000e3d565b9392505050565b62000e868162000bae565b82525050565b600060208201905062000ea3600083018462000e7b565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000ee58262000bae565b915062000ef28362000bae565b92508262000f055762000f0462000ea9565b5b828204905092915050565b600082825260208201905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600062000f7f60218362000f10565b915062000f8c8262000f21565b604082019050919050565b6000602082019050818103600083015262000fb28162000f70565b9050919050565b600081519050919050565b60005b8381101562000fe457808201518184015260208101905062000fc7565b60008484015250505050565b600062000ffd8262000fb9565b62001009818562000f10565b93506200101b81856020860162000fc4565b6200102681620009aa565b840191505092915050565b600060208201905081810360008301526200104d818462000ff0565b905092915050565b61384480620010656000396000f3fe6080604052600436106101445760003560e01c8063715018a6116100b6578063b515566a1161006f578063b515566a1461042d578063c9567bf914610456578063c97c18211461046d578063dd62ed3e14610496578063e57f14e1146104d3578063f2fde38b146104fc5761014b565b8063715018a614610343578063751039fc1461035a5780638da5cb5b1461037157806395d89b411461039c578063a72e41ff146103c7578063a9059cbb146103f05761014b565b806323b872dd1161010857806323b872dd14610235578063313ce567146102725780634ea18fab1461029d57806360c89484146102c65780636fc3eaec146102ef57806370a08231146103065761014b565b806306fdde0314610150578063095ea7b31461017b57806316114acd146101b857806318160ddd146101e157806321ecff5b1461020c5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b50610165610525565b604051610172919061278e565b60405180910390f35b34801561018757600080fd5b506101a2600480360381019061019d9190612858565b610562565b6040516101af91906128b3565b60405180910390f35b3480156101c457600080fd5b506101df60048036038101906101da91906128ce565b610580565b005b3480156101ed57600080fd5b506101f6610704565b604051610203919061290a565b60405180910390f35b34801561021857600080fd5b50610233600480360381019061022e9190612925565b610714565b005b34801561024157600080fd5b5061025c60048036038101906102579190612965565b6107d8565b60405161026991906128b3565b60405180910390f35b34801561027e57600080fd5b506102876108b1565b60405161029491906129d4565b60405180910390f35b3480156102a957600080fd5b506102c460048036038101906102bf91906129ef565b6108ba565b005b3480156102d257600080fd5b506102ed60048036038101906102e89190612a1c565b610925565b005b3480156102fb57600080fd5b506103046109f9565b005b34801561031257600080fd5b5061032d600480360381019061032891906128ce565b610a6b565b60405161033a919061290a565b60405180910390f35b34801561034f57600080fd5b50610358610ab4565b005b34801561036657600080fd5b5061036f610c07565b005b34801561037d57600080fd5b50610386610c88565b6040516103939190612a7e565b60405180910390f35b3480156103a857600080fd5b506103b1610cb1565b6040516103be919061278e565b60405180910390f35b3480156103d357600080fd5b506103ee60048036038101906103e991906128ce565b610cee565b005b3480156103fc57600080fd5b5061041760048036038101906104129190612858565b610dc1565b60405161042491906128b3565b60405180910390f35b34801561043957600080fd5b50610454600480360381019061044f9190612be1565b610ddf565b005b34801561046257600080fd5b5061046b610f09565b005b34801561047957600080fd5b50610494600480360381019061048f9190612be1565b611053565b005b3480156104a257600080fd5b506104bd60048036038101906104b89190612c2a565b61117d565b6040516104ca919061290a565b60405180910390f35b3480156104df57600080fd5b506104fa60048036038101906104f591906128ce565b611204565b005b34801561050857600080fd5b50610523600480360381019061051e91906128ce565b6112c0565b005b60606040518060400160405280600b81526020017f4649464120313020496e75000000000000000000000000000000000000000000815250905090565b600061057661056f6114d6565b84846114de565b6001905092915050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166105c16114d6565b73ffffffffffffffffffffffffffffffffffffffff16146105e157600080fd5b60008190508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161065e9190612a7e565b602060405180830381865afa15801561067b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069f9190612c7f565b6040518363ffffffff1660e01b81526004016106bc929190612d0b565b6020604051808303816000875af11580156106db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ff9190612d60565b505050565b6000670de0b6b3a7640000905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107556114d6565b73ffffffffffffffffffffffffffffffffffffffff161461077557600080fd5b60648211158015610787575060648111155b6107c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107bd90612dd9565b60405180910390fd5b8160098190555080600a819055505050565b60006107e58484846116a7565b6108a6846107f16114d6565b6108a1856040518060600160405280602881526020016137e760289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006108576114d6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dc39092919063ffffffff16565b6114de565b600190509392505050565b60006009905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fb6114d6565b73ffffffffffffffffffffffffffffffffffffffff161461091b57600080fd5b8060108190555050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109666114d6565b73ffffffffffffffffffffffffffffffffffffffff161461098657600080fd5b60648183856109959190612e28565b61099f9190612e28565b146109df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109d690612ea8565b60405180910390fd5b82600b8190555081600c8190555080600d81905550505050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a3a6114d6565b73ffffffffffffffffffffffffffffffffffffffff1614610a5a57600080fd5b6000479050610a6881611e27565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610abc6114d6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4090612f14565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c486114d6565b73ffffffffffffffffffffffffffffffffffffffff1614610c6857600080fd5b670de0b6b3a7640000600e81905550670de0b6b3a7640000600f81905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600681526020017f4649464131300000000000000000000000000000000000000000000000000000815250905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d2f6114d6565b73ffffffffffffffffffffffffffffffffffffffff1614610d4f57600080fd5b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506000610db230610a6b565b9050610dbd81611fda565b5050565b6000610dd5610dce6114d6565b84846116a7565b6001905092915050565b610de76114d6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e6b90612f14565b60405180910390fd5b60005b8151811015610f0557600160056000848481518110610e9957610e98612f34565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610efd90612f63565b915050610e77565b5050565b610f116114d6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f9e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9590612f14565b60405180910390fd5b601560149054906101000a900460ff1615610fee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe590612ff7565b60405180910390fd5b611008610ffa30610a6b565b47611003610c88565b612251565b6001601560166101000a81548160ff0219169083151502179055506001601560146101000a81548160ff02191690831515021790555060b44261104b9190612e28565b600781905550565b61105b6114d6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110df90612f14565b60405180910390fd5b60005b81518110156111795760006005600084848151811061110d5761110c612f34565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061117190612f63565b9150506110eb565b5050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166112456114d6565b73ffffffffffffffffffffffffffffffffffffffff161461126557600080fd5b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6112c86114d6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611355576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134c90612f14565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600061145483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612364565b905092915050565b600080830361146e57600090506114d0565b6000828461147c9190613017565b905082848261148b9190613088565b146114cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c29061312b565b60405180910390fd5b809150505b92915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361154d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611544906131bd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115b39061324f565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161169a919061290a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611716576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161170d906132e1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611785576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177c90613373565b60405180910390fd5b600081116117c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117bf90613405565b60405180910390fd5b6009546008819055506117d9610c88565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156118475750611817610c88565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611ca357600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156118f05750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6118f957600080fd5b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156119a45750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156119fa5750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611a07575060075442105b15611b4657600f5481600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a5a9190612e28565b1115611a9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a9290613471565b60405180910390fd5b600e54811115611aaa57600080fd5b42600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410611af557600080fd5b601e42611b029190612e28565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b60158054906101000a900460ff16158015611baf5750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611bc75750601560169054906101000a900460ff165b8015611c1d5750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611ca2576007544211611c66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c5d906134dd565b60405180910390fd5b6000611c7130610a6b565b9050601054811115611ca057611c8681611fda565b60004790506000811115611c9e57611c9d47611e27565b5b505b505b5b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16148015611d4e5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611da45750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611db357600a546008819055505b611dbe8383836123c7565b505050565b6000838311158290611e0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e02919061278e565b60405180910390fd5b5060008385611e1a91906134fd565b9050809150509392505050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611e8b600b54611e7d60648661141290919063ffffffff16565b61145c90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611eb6573d6000803e3d6000fd5b50601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611f1b600c54611f0d60648661141290919063ffffffff16565b61145c90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611f46573d6000803e3d6000fd5b50601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611fab600d54611f9d60648661141290919063ffffffff16565b61145c90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611fd6573d6000803e3d6000fd5b5050565b60016015806101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561201157612010612a9e565b5b60405190808252806020026020018201604052801561203f5781602001602082028036833780820191505090505b509050308160008151811061205757612056612f34565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121229190613546565b8160018151811061213657612135612f34565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061219d30601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846114de565b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161220195949392919061366c565b600060405180830381600087803b15801561221b57600080fd5b505af115801561222f573d6000803e3d6000fd5b505050505060006015806101000a81548160ff02191690831515021790555050565b60016015806101000a81548160ff02191690831515021790555061229830601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16856114de565b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71983308660008087426040518863ffffffff1660e01b81526004016122ff969594939291906136c6565b60606040518083038185885af115801561231d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906123429190613727565b50505060006015806101000a81548160ff021916908315150217905550505050565b600080831182906123ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123a2919061278e565b60405180910390fd5b50600083856123ba9190613088565b9050809150509392505050565b6000806123d383612602565b9150915061242983600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461265690919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506124be82600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546126a090919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061255381600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546126a090919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516125f3919061290a565b60405180910390a35050505050565b60008060006126306103e86126226008548761145c90919063ffffffff16565b61141290919063ffffffff16565b90506000612647828661265690919063ffffffff16565b90508082935093505050915091565b600061269883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611dc3565b905092915050565b60008082846126af9190612e28565b9050838110156126f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126eb906137c6565b60405180910390fd5b8091505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561273857808201518184015260208101905061271d565b60008484015250505050565b6000601f19601f8301169050919050565b6000612760826126fe565b61276a8185612709565b935061277a81856020860161271a565b61278381612744565b840191505092915050565b600060208201905081810360008301526127a88184612755565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006127ef826127c4565b9050919050565b6127ff816127e4565b811461280a57600080fd5b50565b60008135905061281c816127f6565b92915050565b6000819050919050565b61283581612822565b811461284057600080fd5b50565b6000813590506128528161282c565b92915050565b6000806040838503121561286f5761286e6127ba565b5b600061287d8582860161280d565b925050602061288e85828601612843565b9150509250929050565b60008115159050919050565b6128ad81612898565b82525050565b60006020820190506128c860008301846128a4565b92915050565b6000602082840312156128e4576128e36127ba565b5b60006128f28482850161280d565b91505092915050565b61290481612822565b82525050565b600060208201905061291f60008301846128fb565b92915050565b6000806040838503121561293c5761293b6127ba565b5b600061294a85828601612843565b925050602061295b85828601612843565b9150509250929050565b60008060006060848603121561297e5761297d6127ba565b5b600061298c8682870161280d565b935050602061299d8682870161280d565b92505060406129ae86828701612843565b9150509250925092565b600060ff82169050919050565b6129ce816129b8565b82525050565b60006020820190506129e960008301846129c5565b92915050565b600060208284031215612a0557612a046127ba565b5b6000612a1384828501612843565b91505092915050565b600080600060608486031215612a3557612a346127ba565b5b6000612a4386828701612843565b9350506020612a5486828701612843565b9250506040612a6586828701612843565b9150509250925092565b612a78816127e4565b82525050565b6000602082019050612a936000830184612a6f565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612ad682612744565b810181811067ffffffffffffffff82111715612af557612af4612a9e565b5b80604052505050565b6000612b086127b0565b9050612b148282612acd565b919050565b600067ffffffffffffffff821115612b3457612b33612a9e565b5b602082029050602081019050919050565b600080fd5b6000612b5d612b5884612b19565b612afe565b90508083825260208201905060208402830185811115612b8057612b7f612b45565b5b835b81811015612ba95780612b95888261280d565b845260208401935050602081019050612b82565b5050509392505050565b600082601f830112612bc857612bc7612a99565b5b8135612bd8848260208601612b4a565b91505092915050565b600060208284031215612bf757612bf66127ba565b5b600082013567ffffffffffffffff811115612c1557612c146127bf565b5b612c2184828501612bb3565b91505092915050565b60008060408385031215612c4157612c406127ba565b5b6000612c4f8582860161280d565b9250506020612c608582860161280d565b9150509250929050565b600081519050612c798161282c565b92915050565b600060208284031215612c9557612c946127ba565b5b6000612ca384828501612c6a565b91505092915050565b6000819050919050565b6000612cd1612ccc612cc7846127c4565b612cac565b6127c4565b9050919050565b6000612ce382612cb6565b9050919050565b6000612cf582612cd8565b9050919050565b612d0581612cea565b82525050565b6000604082019050612d206000830185612cfc565b612d2d60208301846128fb565b9392505050565b612d3d81612898565b8114612d4857600080fd5b50565b600081519050612d5a81612d34565b92915050565b600060208284031215612d7657612d756127ba565b5b6000612d8484828501612d4b565b91505092915050565b7f63616e6e6f742073657420666565732061626f76652031302500000000000000600082015250565b6000612dc3601983612709565b9150612dce82612d8d565b602082019050919050565b60006020820190508181036000830152612df281612db6565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612e3382612822565b9150612e3e83612822565b9250828201905080821115612e5657612e55612df9565b5b92915050565b7f6d61746820666167676f74000000000000000000000000000000000000000000600082015250565b6000612e92600b83612709565b9150612e9d82612e5c565b602082019050919050565b60006020820190508181036000830152612ec181612e85565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612efe602083612709565b9150612f0982612ec8565b602082019050919050565b60006020820190508181036000830152612f2d81612ef1565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612f6e82612822565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612fa057612f9f612df9565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6000612fe1601783612709565b9150612fec82612fab565b602082019050919050565b6000602082019050818103600083015261301081612fd4565b9050919050565b600061302282612822565b915061302d83612822565b925082820261303b81612822565b9150828204841483151761305257613051612df9565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061309382612822565b915061309e83612822565b9250826130ae576130ad613059565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000613115602183612709565b9150613120826130b9565b604082019050919050565b6000602082019050818103600083015261314481613108565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006131a7602483612709565b91506131b28261314b565b604082019050919050565b600060208201905081810360008301526131d68161319a565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000613239602283612709565b9150613244826131dd565b604082019050919050565b600060208201905081810360008301526132688161322c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006132cb602583612709565b91506132d68261326f565b604082019050919050565b600060208201905081810360008301526132fa816132be565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061335d602383612709565b915061336882613301565b604082019050919050565b6000602082019050818103600083015261338c81613350565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006133ef602983612709565b91506133fa82613393565b604082019050919050565b6000602082019050818103600083015261341e816133e2565b9050919050565b7f6e6f742061206368616e63650000000000000000000000000000000000000000600082015250565b600061345b600c83612709565b915061346682613425565b602082019050919050565b6000602082019050818103600083015261348a8161344e565b9050919050565b7f33206d696e7574652073656c6c2064656c617920706f7374206c61756e636800600082015250565b60006134c7601f83612709565b91506134d282613491565b602082019050919050565b600060208201905081810360008301526134f6816134ba565b9050919050565b600061350882612822565b915061351383612822565b925082820390508181111561352b5761352a612df9565b5b92915050565b600081519050613540816127f6565b92915050565b60006020828403121561355c5761355b6127ba565b5b600061356a84828501613531565b91505092915050565b6000819050919050565b600061359861359361358e84613573565b612cac565b612822565b9050919050565b6135a88161357d565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6135e3816127e4565b82525050565b60006135f583836135da565b60208301905092915050565b6000602082019050919050565b6000613619826135ae565b61362381856135b9565b935061362e836135ca565b8060005b8381101561365f57815161364688826135e9565b975061365183613601565b925050600181019050613632565b5085935050505092915050565b600060a08201905061368160008301886128fb565b61368e602083018761359f565b81810360408301526136a0818661360e565b90506136af6060830185612a6f565b6136bc60808301846128fb565b9695505050505050565b600060c0820190506136db6000830189612a6f565b6136e860208301886128fb565b6136f5604083018761359f565b613702606083018661359f565b61370f6080830185612a6f565b61371c60a08301846128fb565b979650505050505050565b6000806000606084860312156137405761373f6127ba565b5b600061374e86828701612c6a565b935050602061375f86828701612c6a565b925050604061377086828701612c6a565b9150509250925092565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006137b0601b83612709565b91506137bb8261377a565b602082019050919050565b600060208201905081810360008301526137df816137a3565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220197e9d323465d72907c2036db6845987fd707f759a80d840fb28da2307fe3d9d64736f6c634300081100330000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000050000000000000000000000002ff4f708d364c53851b751ffa0c743592e7a5cee000000000000000000000000258025684e14615014878e3f419e48ee583a7b59000000000000000000000000050335551d48bc9d4d513626d58d296d9789826500000000000000000000000027d6a91fb5288ace4c0abea67bf0555162719e590000000000000000000000002b6815da3a172254352c40cab1431ffe3924254800000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000001312d000000000000000000000000000000000000000000000000000000000001312d000000000000000000000000000000000000000000000000000000000001312d000000000000000000000000000000000000000000000000000000000002faf0800000000000000000000000000000000000000000000000000000000001312d00

Deployed Bytecode

0x6080604052600436106101445760003560e01c8063715018a6116100b6578063b515566a1161006f578063b515566a1461042d578063c9567bf914610456578063c97c18211461046d578063dd62ed3e14610496578063e57f14e1146104d3578063f2fde38b146104fc5761014b565b8063715018a614610343578063751039fc1461035a5780638da5cb5b1461037157806395d89b411461039c578063a72e41ff146103c7578063a9059cbb146103f05761014b565b806323b872dd1161010857806323b872dd14610235578063313ce567146102725780634ea18fab1461029d57806360c89484146102c65780636fc3eaec146102ef57806370a08231146103065761014b565b806306fdde0314610150578063095ea7b31461017b57806316114acd146101b857806318160ddd146101e157806321ecff5b1461020c5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b50610165610525565b604051610172919061278e565b60405180910390f35b34801561018757600080fd5b506101a2600480360381019061019d9190612858565b610562565b6040516101af91906128b3565b60405180910390f35b3480156101c457600080fd5b506101df60048036038101906101da91906128ce565b610580565b005b3480156101ed57600080fd5b506101f6610704565b604051610203919061290a565b60405180910390f35b34801561021857600080fd5b50610233600480360381019061022e9190612925565b610714565b005b34801561024157600080fd5b5061025c60048036038101906102579190612965565b6107d8565b60405161026991906128b3565b60405180910390f35b34801561027e57600080fd5b506102876108b1565b60405161029491906129d4565b60405180910390f35b3480156102a957600080fd5b506102c460048036038101906102bf91906129ef565b6108ba565b005b3480156102d257600080fd5b506102ed60048036038101906102e89190612a1c565b610925565b005b3480156102fb57600080fd5b506103046109f9565b005b34801561031257600080fd5b5061032d600480360381019061032891906128ce565b610a6b565b60405161033a919061290a565b60405180910390f35b34801561034f57600080fd5b50610358610ab4565b005b34801561036657600080fd5b5061036f610c07565b005b34801561037d57600080fd5b50610386610c88565b6040516103939190612a7e565b60405180910390f35b3480156103a857600080fd5b506103b1610cb1565b6040516103be919061278e565b60405180910390f35b3480156103d357600080fd5b506103ee60048036038101906103e991906128ce565b610cee565b005b3480156103fc57600080fd5b5061041760048036038101906104129190612858565b610dc1565b60405161042491906128b3565b60405180910390f35b34801561043957600080fd5b50610454600480360381019061044f9190612be1565b610ddf565b005b34801561046257600080fd5b5061046b610f09565b005b34801561047957600080fd5b50610494600480360381019061048f9190612be1565b611053565b005b3480156104a257600080fd5b506104bd60048036038101906104b89190612c2a565b61117d565b6040516104ca919061290a565b60405180910390f35b3480156104df57600080fd5b506104fa60048036038101906104f591906128ce565b611204565b005b34801561050857600080fd5b50610523600480360381019061051e91906128ce565b6112c0565b005b60606040518060400160405280600b81526020017f4649464120313020496e75000000000000000000000000000000000000000000815250905090565b600061057661056f6114d6565b84846114de565b6001905092915050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166105c16114d6565b73ffffffffffffffffffffffffffffffffffffffff16146105e157600080fd5b60008190508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161065e9190612a7e565b602060405180830381865afa15801561067b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069f9190612c7f565b6040518363ffffffff1660e01b81526004016106bc929190612d0b565b6020604051808303816000875af11580156106db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ff9190612d60565b505050565b6000670de0b6b3a7640000905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107556114d6565b73ffffffffffffffffffffffffffffffffffffffff161461077557600080fd5b60648211158015610787575060648111155b6107c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107bd90612dd9565b60405180910390fd5b8160098190555080600a819055505050565b60006107e58484846116a7565b6108a6846107f16114d6565b6108a1856040518060600160405280602881526020016137e760289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006108576114d6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dc39092919063ffffffff16565b6114de565b600190509392505050565b60006009905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fb6114d6565b73ffffffffffffffffffffffffffffffffffffffff161461091b57600080fd5b8060108190555050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109666114d6565b73ffffffffffffffffffffffffffffffffffffffff161461098657600080fd5b60648183856109959190612e28565b61099f9190612e28565b146109df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109d690612ea8565b60405180910390fd5b82600b8190555081600c8190555080600d81905550505050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a3a6114d6565b73ffffffffffffffffffffffffffffffffffffffff1614610a5a57600080fd5b6000479050610a6881611e27565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610abc6114d6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4090612f14565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c486114d6565b73ffffffffffffffffffffffffffffffffffffffff1614610c6857600080fd5b670de0b6b3a7640000600e81905550670de0b6b3a7640000600f81905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600681526020017f4649464131300000000000000000000000000000000000000000000000000000815250905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d2f6114d6565b73ffffffffffffffffffffffffffffffffffffffff1614610d4f57600080fd5b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506000610db230610a6b565b9050610dbd81611fda565b5050565b6000610dd5610dce6114d6565b84846116a7565b6001905092915050565b610de76114d6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e6b90612f14565b60405180910390fd5b60005b8151811015610f0557600160056000848481518110610e9957610e98612f34565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610efd90612f63565b915050610e77565b5050565b610f116114d6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f9e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9590612f14565b60405180910390fd5b601560149054906101000a900460ff1615610fee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe590612ff7565b60405180910390fd5b611008610ffa30610a6b565b47611003610c88565b612251565b6001601560166101000a81548160ff0219169083151502179055506001601560146101000a81548160ff02191690831515021790555060b44261104b9190612e28565b600781905550565b61105b6114d6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110df90612f14565b60405180910390fd5b60005b81518110156111795760006005600084848151811061110d5761110c612f34565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061117190612f63565b9150506110eb565b5050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166112456114d6565b73ffffffffffffffffffffffffffffffffffffffff161461126557600080fd5b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6112c86114d6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611355576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134c90612f14565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600061145483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612364565b905092915050565b600080830361146e57600090506114d0565b6000828461147c9190613017565b905082848261148b9190613088565b146114cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c29061312b565b60405180910390fd5b809150505b92915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361154d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611544906131bd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115b39061324f565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161169a919061290a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611716576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161170d906132e1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611785576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177c90613373565b60405180910390fd5b600081116117c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117bf90613405565b60405180910390fd5b6009546008819055506117d9610c88565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156118475750611817610c88565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611ca357600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156118f05750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6118f957600080fd5b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156119a45750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156119fa5750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611a07575060075442105b15611b4657600f5481600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a5a9190612e28565b1115611a9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a9290613471565b60405180910390fd5b600e54811115611aaa57600080fd5b42600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410611af557600080fd5b601e42611b029190612e28565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b60158054906101000a900460ff16158015611baf5750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611bc75750601560169054906101000a900460ff165b8015611c1d5750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611ca2576007544211611c66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c5d906134dd565b60405180910390fd5b6000611c7130610a6b565b9050601054811115611ca057611c8681611fda565b60004790506000811115611c9e57611c9d47611e27565b5b505b505b5b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16148015611d4e5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611da45750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611db357600a546008819055505b611dbe8383836123c7565b505050565b6000838311158290611e0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e02919061278e565b60405180910390fd5b5060008385611e1a91906134fd565b9050809150509392505050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611e8b600b54611e7d60648661141290919063ffffffff16565b61145c90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611eb6573d6000803e3d6000fd5b50601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611f1b600c54611f0d60648661141290919063ffffffff16565b61145c90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611f46573d6000803e3d6000fd5b50601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611fab600d54611f9d60648661141290919063ffffffff16565b61145c90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611fd6573d6000803e3d6000fd5b5050565b60016015806101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561201157612010612a9e565b5b60405190808252806020026020018201604052801561203f5781602001602082028036833780820191505090505b509050308160008151811061205757612056612f34565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121229190613546565b8160018151811061213657612135612f34565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061219d30601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846114de565b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161220195949392919061366c565b600060405180830381600087803b15801561221b57600080fd5b505af115801561222f573d6000803e3d6000fd5b505050505060006015806101000a81548160ff02191690831515021790555050565b60016015806101000a81548160ff02191690831515021790555061229830601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16856114de565b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71983308660008087426040518863ffffffff1660e01b81526004016122ff969594939291906136c6565b60606040518083038185885af115801561231d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906123429190613727565b50505060006015806101000a81548160ff021916908315150217905550505050565b600080831182906123ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123a2919061278e565b60405180910390fd5b50600083856123ba9190613088565b9050809150509392505050565b6000806123d383612602565b9150915061242983600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461265690919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506124be82600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546126a090919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061255381600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546126a090919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516125f3919061290a565b60405180910390a35050505050565b60008060006126306103e86126226008548761145c90919063ffffffff16565b61141290919063ffffffff16565b90506000612647828661265690919063ffffffff16565b90508082935093505050915091565b600061269883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611dc3565b905092915050565b60008082846126af9190612e28565b9050838110156126f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126eb906137c6565b60405180910390fd5b8091505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561273857808201518184015260208101905061271d565b60008484015250505050565b6000601f19601f8301169050919050565b6000612760826126fe565b61276a8185612709565b935061277a81856020860161271a565b61278381612744565b840191505092915050565b600060208201905081810360008301526127a88184612755565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006127ef826127c4565b9050919050565b6127ff816127e4565b811461280a57600080fd5b50565b60008135905061281c816127f6565b92915050565b6000819050919050565b61283581612822565b811461284057600080fd5b50565b6000813590506128528161282c565b92915050565b6000806040838503121561286f5761286e6127ba565b5b600061287d8582860161280d565b925050602061288e85828601612843565b9150509250929050565b60008115159050919050565b6128ad81612898565b82525050565b60006020820190506128c860008301846128a4565b92915050565b6000602082840312156128e4576128e36127ba565b5b60006128f28482850161280d565b91505092915050565b61290481612822565b82525050565b600060208201905061291f60008301846128fb565b92915050565b6000806040838503121561293c5761293b6127ba565b5b600061294a85828601612843565b925050602061295b85828601612843565b9150509250929050565b60008060006060848603121561297e5761297d6127ba565b5b600061298c8682870161280d565b935050602061299d8682870161280d565b92505060406129ae86828701612843565b9150509250925092565b600060ff82169050919050565b6129ce816129b8565b82525050565b60006020820190506129e960008301846129c5565b92915050565b600060208284031215612a0557612a046127ba565b5b6000612a1384828501612843565b91505092915050565b600080600060608486031215612a3557612a346127ba565b5b6000612a4386828701612843565b9350506020612a5486828701612843565b9250506040612a6586828701612843565b9150509250925092565b612a78816127e4565b82525050565b6000602082019050612a936000830184612a6f565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612ad682612744565b810181811067ffffffffffffffff82111715612af557612af4612a9e565b5b80604052505050565b6000612b086127b0565b9050612b148282612acd565b919050565b600067ffffffffffffffff821115612b3457612b33612a9e565b5b602082029050602081019050919050565b600080fd5b6000612b5d612b5884612b19565b612afe565b90508083825260208201905060208402830185811115612b8057612b7f612b45565b5b835b81811015612ba95780612b95888261280d565b845260208401935050602081019050612b82565b5050509392505050565b600082601f830112612bc857612bc7612a99565b5b8135612bd8848260208601612b4a565b91505092915050565b600060208284031215612bf757612bf66127ba565b5b600082013567ffffffffffffffff811115612c1557612c146127bf565b5b612c2184828501612bb3565b91505092915050565b60008060408385031215612c4157612c406127ba565b5b6000612c4f8582860161280d565b9250506020612c608582860161280d565b9150509250929050565b600081519050612c798161282c565b92915050565b600060208284031215612c9557612c946127ba565b5b6000612ca384828501612c6a565b91505092915050565b6000819050919050565b6000612cd1612ccc612cc7846127c4565b612cac565b6127c4565b9050919050565b6000612ce382612cb6565b9050919050565b6000612cf582612cd8565b9050919050565b612d0581612cea565b82525050565b6000604082019050612d206000830185612cfc565b612d2d60208301846128fb565b9392505050565b612d3d81612898565b8114612d4857600080fd5b50565b600081519050612d5a81612d34565b92915050565b600060208284031215612d7657612d756127ba565b5b6000612d8484828501612d4b565b91505092915050565b7f63616e6e6f742073657420666565732061626f76652031302500000000000000600082015250565b6000612dc3601983612709565b9150612dce82612d8d565b602082019050919050565b60006020820190508181036000830152612df281612db6565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612e3382612822565b9150612e3e83612822565b9250828201905080821115612e5657612e55612df9565b5b92915050565b7f6d61746820666167676f74000000000000000000000000000000000000000000600082015250565b6000612e92600b83612709565b9150612e9d82612e5c565b602082019050919050565b60006020820190508181036000830152612ec181612e85565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612efe602083612709565b9150612f0982612ec8565b602082019050919050565b60006020820190508181036000830152612f2d81612ef1565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612f6e82612822565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612fa057612f9f612df9565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6000612fe1601783612709565b9150612fec82612fab565b602082019050919050565b6000602082019050818103600083015261301081612fd4565b9050919050565b600061302282612822565b915061302d83612822565b925082820261303b81612822565b9150828204841483151761305257613051612df9565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061309382612822565b915061309e83612822565b9250826130ae576130ad613059565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000613115602183612709565b9150613120826130b9565b604082019050919050565b6000602082019050818103600083015261314481613108565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006131a7602483612709565b91506131b28261314b565b604082019050919050565b600060208201905081810360008301526131d68161319a565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000613239602283612709565b9150613244826131dd565b604082019050919050565b600060208201905081810360008301526132688161322c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006132cb602583612709565b91506132d68261326f565b604082019050919050565b600060208201905081810360008301526132fa816132be565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061335d602383612709565b915061336882613301565b604082019050919050565b6000602082019050818103600083015261338c81613350565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006133ef602983612709565b91506133fa82613393565b604082019050919050565b6000602082019050818103600083015261341e816133e2565b9050919050565b7f6e6f742061206368616e63650000000000000000000000000000000000000000600082015250565b600061345b600c83612709565b915061346682613425565b602082019050919050565b6000602082019050818103600083015261348a8161344e565b9050919050565b7f33206d696e7574652073656c6c2064656c617920706f7374206c61756e636800600082015250565b60006134c7601f83612709565b91506134d282613491565b602082019050919050565b600060208201905081810360008301526134f6816134ba565b9050919050565b600061350882612822565b915061351383612822565b925082820390508181111561352b5761352a612df9565b5b92915050565b600081519050613540816127f6565b92915050565b60006020828403121561355c5761355b6127ba565b5b600061356a84828501613531565b91505092915050565b6000819050919050565b600061359861359361358e84613573565b612cac565b612822565b9050919050565b6135a88161357d565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6135e3816127e4565b82525050565b60006135f583836135da565b60208301905092915050565b6000602082019050919050565b6000613619826135ae565b61362381856135b9565b935061362e836135ca565b8060005b8381101561365f57815161364688826135e9565b975061365183613601565b925050600181019050613632565b5085935050505092915050565b600060a08201905061368160008301886128fb565b61368e602083018761359f565b81810360408301526136a0818661360e565b90506136af6060830185612a6f565b6136bc60808301846128fb565b9695505050505050565b600060c0820190506136db6000830189612a6f565b6136e860208301886128fb565b6136f5604083018761359f565b613702606083018661359f565b61370f6080830185612a6f565b61371c60a08301846128fb565b979650505050505050565b6000806000606084860312156137405761373f6127ba565b5b600061374e86828701612c6a565b935050602061375f86828701612c6a565b925050604061377086828701612c6a565b9150509250925092565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006137b0601b83612709565b91506137bb8261377a565b602082019050919050565b600060208201905081810360008301526137df816137a3565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220197e9d323465d72907c2036db6845987fd707f759a80d840fb28da2307fe3d9d64736f6c63430008110033

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

0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000050000000000000000000000002ff4f708d364c53851b751ffa0c743592e7a5cee000000000000000000000000258025684e14615014878e3f419e48ee583a7b59000000000000000000000000050335551d48bc9d4d513626d58d296d9789826500000000000000000000000027d6a91fb5288ace4c0abea67bf0555162719e590000000000000000000000002b6815da3a172254352c40cab1431ffe3924254800000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000001312d000000000000000000000000000000000000000000000000000000000001312d000000000000000000000000000000000000000000000000000000000001312d000000000000000000000000000000000000000000000000000000000002faf0800000000000000000000000000000000000000000000000000000000001312d00

-----Decoded View---------------
Arg [0] : addresses (address[]): 0x2Ff4F708d364c53851B751ffA0c743592E7A5cEe,0x258025684e14615014878E3f419E48ee583a7b59,0x050335551D48bC9d4D513626d58d296d97898265,0x27D6a91Fb5288ACE4C0aBEa67bf0555162719e59,0x2b6815DA3A172254352C40CAb1431ffe39242548
Arg [1] : amounts (uint256[]): 20000000,20000000,20000000,50000000,20000000

-----Encoded View---------------
14 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000100
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [3] : 0000000000000000000000002ff4f708d364c53851b751ffa0c743592e7a5cee
Arg [4] : 000000000000000000000000258025684e14615014878e3f419e48ee583a7b59
Arg [5] : 000000000000000000000000050335551d48bc9d4d513626d58d296d97898265
Arg [6] : 00000000000000000000000027d6a91fb5288ace4c0abea67bf0555162719e59
Arg [7] : 0000000000000000000000002b6815da3a172254352c40cab1431ffe39242548
Arg [8] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [9] : 0000000000000000000000000000000000000000000000000000000001312d00
Arg [10] : 0000000000000000000000000000000000000000000000000000000001312d00
Arg [11] : 0000000000000000000000000000000000000000000000000000000001312d00
Arg [12] : 0000000000000000000000000000000000000000000000000000000002faf080
Arg [13] : 0000000000000000000000000000000000000000000000000000000001312d00


Deployed Bytecode Sourcemap

3735:9674:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5988:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6819:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13162:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6265:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7458:231;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6988:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6174:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7314:136;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7697:251;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12721:188;;;;;;;;;;;;;:::i;:::-;;6368:117;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2814:148;;;;;;;;;;;;;:::i;:::-;;7956:156;;;;;;;;;;;;;:::i;:::-;;2419:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6079:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12462:247;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6493:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11673:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11367:294;;;;;;;;;;;;;:::i;:::-;;11849:135;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6668:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8122:147;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2633:173;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5988:83;6025:13;6058:5;;;;;;;;;;;;;;;;;6051:12;;5988:83;:::o;6819:161::-;6894:4;6911:39;6920:12;:10;:12::i;:::-;6934:7;6943:6;6911:8;:39::i;:::-;6968:4;6961:11;;6819:161;;;;:::o;13162:244::-;13251:9;;;;;;;;;;;13235:25;;:12;:10;:12::i;:::-;:25;;;13227:34;;;;;;13272:20;13302:12;13272:43;;13326:13;:22;;;13349:9;;;;;;;;;;;13359:13;:23;;;13391:4;13359:38;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13326:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;13216:190;13162:244;:::o;6265:95::-;6318:7;4187:17;6338:14;;6265:95;:::o;7458:231::-;7551:9;;;;;;;;;;;7535:25;;:12;:10;:12::i;:::-;:25;;;7527:34;;;;;;7588:3;7580:4;:11;;:27;;;;;7604:3;7595:5;:12;;7580:27;7572:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7654:4;7647;:11;;;;7676:5;7669:4;:12;;;;7458:231;;:::o;6988:313::-;7086:4;7103:36;7113:6;7121:9;7132:6;7103:9;:36::i;:::-;7150:121;7159:6;7167:12;:10;:12::i;:::-;7181:89;7219:6;7181:89;;;;;;;;;;;;;;;;;:11;:19;7193:6;7181:19;;;;;;;;;;;;;;;:33;7201:12;:10;:12::i;:::-;7181:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;7150:8;:121::i;:::-;7289:4;7282:11;;6988:313;;;;;:::o;6174:83::-;6215:5;4684:1;6233:16;;6174:83;:::o;7314:136::-;7400:9;;;;;;;;;;;7384:25;;:12;:10;:12::i;:::-;:25;;;7376:34;;;;;;7434:6;7421:10;:19;;;;7314:136;:::o;7697:251::-;7808:9;;;;;;;;;;;7792:25;;:12;:10;:12::i;:::-;:25;;;7784:34;;;;;;7859:3;7851:4;7844;7837;:11;;;;:::i;:::-;:18;;;;:::i;:::-;:25;7829:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;7894:4;7888:3;:10;;;;7915:4;7909:3;:10;;;;7936:4;7930:3;:10;;;;7697:251;;;:::o;12721:188::-;12787:9;;;;;;;;;;;12771:25;;:12;:10;:12::i;:::-;:25;;;12763:34;;;;;;12808:26;12837:21;12808:50;;12869:32;12882:18;12869:12;:32::i;:::-;12752:157;12721:188::o;6368:117::-;6434:7;6461;:16;6469:7;6461:16;;;;;;;;;;;;;;;;6454:23;;6368:117;;;:::o;2814:148::-;2556:12;:10;:12::i;:::-;2546:22;;:6;;;;;;;;;;:22;;;2538:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2921:1:::1;2884:40;;2905:6;::::0;::::1;;;;;;;;2884:40;;;;;;;;;;;;2952:1;2935:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2814:148::o:0;7956:156::-;8024:9;;;;;;;;;;;8008:25;;:12;:10;:12::i;:::-;:25;;;8000:34;;;;;;4187:17;8045:12;:22;;;;4187:17;8078:16;:26;;;;7956:156::o;2419:79::-;2457:7;2484:6;;;;;;;;;;;2477:13;;2419:79;:::o;6079:87::-;6118:13;6151:7;;;;;;;;;;;;;;;;;6144:14;;6079:87;:::o;12462:247::-;12542:9;;;;;;;;;;;12526:25;;:12;:10;:12::i;:::-;:25;;;12518:34;;;;;;12592:4;12563:18;:26;12582:6;12563:26;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;12607:23;12633:24;12651:4;12633:9;:24::i;:::-;12607:50;;12668:33;12685:15;12668:16;:33::i;:::-;12507:202;12462:247;:::o;6493:167::-;6571:4;6588:42;6598:12;:10;:12::i;:::-;6612:9;6623:6;6588:9;:42::i;:::-;6648:4;6641:11;;6493:167;;;;:::o;11673:164::-;2556:12;:10;:12::i;:::-;2546:22;;:6;;;;;;;;;;:22;;;2538:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11747:6:::1;11742:88;11763:5;:12;11759:1;:16;11742:88;;;11814:4;11797;:14;11802:5;11808:1;11802:8;;;;;;;;:::i;:::-;;;;;;;;11797:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;11777:3;;;;;:::i;:::-;;;;11742:88;;;;11673:164:::0;:::o;11367:294::-;2556:12;:10;:12::i;:::-;2546:22;;:6;;;;;;;;;;:22;;;2538:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11431:11:::1;;;;;;;;;;;11430:12;11422:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;11480:68;11493:24;11511:4;11493:9;:24::i;:::-;11518:21;11540:7;:5;:7::i;:::-;11480:12;:68::i;:::-;11573:4;11559:11;;:18;;;;;;;;;;;;;;;;;;11602:4;11588:11;;:18;;;;;;;;;;;;;;;;;;11643:9;11624:15;:29;;;;:::i;:::-;11617:4;:36;;;;11367:294::o:0;11849:135::-;2556:12;:10;:12::i;:::-;2546:22;;:6;;;;;;;;;;:22;;;2538:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11922:6:::1;11918:59;11933:6;:13;11931:1;:15;11918:59;;;11970:5;11952:4;:15;11957:6;11964:1;11957:9;;;;;;;;:::i;:::-;;;;;;;;11952:15;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;11947:3;;;;;:::i;:::-;;;;11918:59;;;;11849:135:::0;:::o;6668:143::-;6749:7;6776:11;:18;6788:5;6776:18;;;;;;;;;;;;;;;:27;6795:7;6776:27;;;;;;;;;;;;;;;;6769:34;;6668:143;;;;:::o;8122:147::-;8207:9;;;;;;;;;;;8191:25;;:12;:10;:12::i;:::-;:25;;;8183:34;;;;;;8257:4;8228:18;:26;8247:6;8228:26;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;8122:147;:::o;2633:173::-;2556:12;:10;:12::i;:::-;2546:22;;:6;;;;;;;;;;:22;;;2538:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2749:9:::1;2720:39;;2741:6;::::0;::::1;;;;;;;;2720:39;;;;;;;;;;;;2779:9;2770:6;::::0;:18:::1;;;;;;;;;;;;;;;;;;2633:173:::0;:::o;1726:132::-;1784:7;1811:39;1815:1;1818;1811:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1804:46;;1726:132;;;;:::o;1472:246::-;1530:7;1559:1;1554;:6;1550:47;;1584:1;1577:8;;;;1550:47;1607:9;1623:1;1619;:5;;;;:::i;:::-;1607:17;;1652:1;1647;1643;:5;;;;:::i;:::-;:10;1635:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1709:1;1702:8;;;1472:246;;;;;:::o;137:98::-;190:7;217:10;210:17;;137:98;:::o;8282:335::-;8392:1;8375:19;;:5;:19;;;8367:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8473:1;8454:21;;:7;:21;;;8446:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8555:6;8525:11;:18;8537:5;8525:18;;;;;;;;;;;;;;;:27;8544:7;8525:27;;;;;;;;;;;;;;;:36;;;;8593:7;8577:32;;8586:5;8577:32;;;8602:6;8577:32;;;;;;:::i;:::-;;;;;;;;8282:335;;;:::o;8625:1697::-;8729:1;8713:18;;:4;:18;;;8705:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8806:1;8792:16;;:2;:16;;;8784:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8876:1;8867:6;:10;8859:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8943:4;;8936;:11;;;;8970:7;:5;:7::i;:::-;8962:15;;:4;:15;;;;:32;;;;;8987:7;:5;:7::i;:::-;8981:13;;:2;:13;;;;8962:32;8958:1172;;;9020:4;:10;9025:4;9020:10;;;;;;;;;;;;;;;;;;;;;;;;;9019:11;:24;;;;;9035:4;:8;9040:2;9035:8;;;;;;;;;;;;;;;;;;;;;;;;;9034:9;9019:24;9011:33;;;;;;9071:13;;;;;;;;;;;9063:21;;:4;:21;;;:55;;;;;9102:15;;;;;;;;;;;9088:30;;:2;:30;;;;9063:55;:83;;;;;9124:18;:22;9143:2;9124:22;;;;;;;;;;;;;;;;;;;;;;;;;9122:24;9063:83;:111;;;;;9169:4;;9151:15;:22;9063:111;9059:418;;;9257:16;;9246:6;9232:7;:11;9240:2;9232:11;;;;;;;;;;;;;;;;:20;;;;:::i;:::-;9231:42;;9223:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;9326:12;;9316:6;:22;;9308:31;;;;;;9381:15;9366:8;:12;9375:2;9366:12;;;;;;;;;;;;;;;;:30;9358:39;;;;;;9450:10;9431:15;:30;;;;:::i;:::-;9416:8;:12;9425:2;9416:12;;;;;;;;;;;;;;;:45;;;;9059:418;9524:6;;;;;;;;;;9523:7;:32;;;;;9542:13;;;;;;;;;;;9534:21;;:4;:21;;;;9523:32;:47;;;;;9559:11;;;;;;;;;;;9523:47;:76;;;;;9575:18;:24;9594:4;9575:24;;;;;;;;;;;;;;;;;;;;;;;;;9574:25;9523:76;9519:600;;;9646:4;;9628:15;:22;9620:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;9704:28;9735:24;9753:4;9735:9;:24::i;:::-;9704:55;;9804:10;;9781:20;:33;9778:326;;;9838:38;9855:20;9838:16;:38::i;:::-;9899:26;9928:21;9899:50;;9996:1;9975:18;:22;9972:113;;;10026:35;10039:21;10026:12;:35::i;:::-;9972:113;9815:289;9778:326;9601:518;9519:600;8958:1172;10150:13;;;;;;;;;;;10144:19;;:2;:19;;;:55;;;;;10183:15;;;;;;;;;;;10167:32;;:4;:32;;;;10144:55;:85;;;;;10205:18;:24;10224:4;10205:24;;;;;;;;;;;;;;;;;;;;;;;;;10203:26;10144:85;10140:129;;;10253:4;;10246;:11;;;;10140:129;10281:33;10299:4;10304:2;10307:6;10281:17;:33::i;:::-;8625:1697;;;:::o;1274:190::-;1360:7;1393:1;1388;:6;;1396:12;1380:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1420:9;1436:1;1432;:5;;;;:::i;:::-;1420:17;;1455:1;1448:8;;;1274:190;;;;;:::o;11129:226::-;11186:9;;;;;;;;;;;:18;;:44;11205:24;11225:3;;11205:15;11216:3;11205:6;:10;;:15;;;;:::i;:::-;:19;;:24;;;;:::i;:::-;11186:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11241:16;;;;;;;;;;;:25;;:51;11267:24;11287:3;;11267:15;11278:3;11267:6;:10;;:15;;;;:::i;:::-;:19;;:24;;;;:::i;:::-;11241:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11303:9;;;;;;;;;;;:18;;:44;11322:24;11342:3;;11322:15;11333:3;11322:6;:10;;:15;;;;:::i;:::-;:19;;:24;;;;:::i;:::-;11303:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11129:226;:::o;10330:483::-;5049:4;5040:6;;:13;;;;;;;;;;;;;;;;;;10408:21:::1;10446:1;10432:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10408:40;;10477:4;10459;10464:1;10459:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10503:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10493:4;10498:1;10493:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;10536:62;10553:4;10568:15;;;;;;;;;;;10586:11;10536:8;:62::i;:::-;10609:15;;;;;;;;;;;:66;;;10690:11;10716:1;10732:4;10759;10779:15;10609:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10397:416;5085:5:::0;5076:6;;:14;;;;;;;;;;;;;;;;;;10330:483;:::o;10827:288::-;5049:4;5040:6;;:13;;;;;;;;;;;;;;;;;;10933:60:::1;10950:4;10964:15;;;;;;;;;;;10981:11;10933:8;:60::i;:::-;11004:15;;;;;;;;;;;:31;;;11043:9;11062:4;11068:11;11080:1;11082::::0;11084:6:::1;11091:15;11004:103;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;5085:5:::0;5076:6;;:14;;;;;;;;;;;;;;;;;;10827:288;;;:::o;1866:189::-;1952:7;1984:1;1980;:5;1987:12;1972:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2011:9;2027:1;2023;:5;;;;:::i;:::-;2011:17;;2046:1;2039:8;;;1866:189;;;;;:::o;11992:421::-;12091:22;12114:12;12130:20;12142:7;12130:11;:20::i;:::-;12090:60;;;;12179:28;12199:7;12179;:15;12187:6;12179:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;12161:7;:15;12169:6;12161:15;;;;;;;;;;;;;;;:46;;;;12239:38;12262:14;12239:7;:18;12247:9;12239:18;;;;;;;;;;;;;;;;:22;;:38;;;;:::i;:::-;12218:7;:18;12226:9;12218:18;;;;;;;;;;;;;;;:59;;;;12314:32;12341:4;12314:7;:22;12330:4;12314:22;;;;;;;;;;;;;;;;:26;;:32;;;;:::i;:::-;12289:7;:22;12305:4;12289:22;;;;;;;;;;;;;;;:57;;;;12379:9;12362:43;;12371:6;12362:43;;;12390:14;12362:43;;;;;;:::i;:::-;;;;;;;;12079:334;;11992:421;;;:::o;12920:234::-;12980:7;12989;13009:12;13024:27;13046:4;13024:17;13036:4;;13024:7;:11;;:17;;;;:::i;:::-;:21;;:27;;;;:::i;:::-;13009:42;;13062:23;13088:17;13100:4;13088:7;:11;;:17;;;;:::i;:::-;13062:43;;13124:15;13141:4;13116:30;;;;;;12920:234;;;:::o;1130:136::-;1188:7;1215:43;1219:1;1222;1215:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1208:50;;1130:136;;;;:::o;943:179::-;1001:7;1021:9;1037:1;1033;:5;;;;:::i;:::-;1021:17;;1062:1;1057;:6;;1049:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1113:1;1106:8;;;943:179;;;;:::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:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1349:75::-;1382:6;1415:2;1409:9;1399:19;;1349:75;:::o;1430:117::-;1539:1;1536;1529:12;1553:117;1662:1;1659;1652:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:329::-;3505:6;3554:2;3542:9;3533:7;3529:23;3525:32;3522:119;;;3560:79;;:::i;:::-;3522:119;3680:1;3705:53;3750:7;3741:6;3730:9;3726:22;3705:53;:::i;:::-;3695:63;;3651:117;3446:329;;;;:::o;3781:118::-;3868:24;3886:5;3868:24;:::i;:::-;3863:3;3856:37;3781:118;;:::o;3905:222::-;3998:4;4036:2;4025:9;4021:18;4013:26;;4049:71;4117:1;4106:9;4102:17;4093:6;4049:71;:::i;:::-;3905:222;;;;:::o;4133:474::-;4201:6;4209;4258:2;4246:9;4237:7;4233:23;4229:32;4226:119;;;4264:79;;:::i;:::-;4226:119;4384:1;4409:53;4454:7;4445:6;4434:9;4430:22;4409:53;:::i;:::-;4399:63;;4355:117;4511:2;4537:53;4582:7;4573:6;4562:9;4558:22;4537:53;:::i;:::-;4527:63;;4482:118;4133:474;;;;;:::o;4613:619::-;4690:6;4698;4706;4755:2;4743:9;4734:7;4730:23;4726:32;4723:119;;;4761:79;;:::i;:::-;4723:119;4881:1;4906:53;4951:7;4942:6;4931:9;4927:22;4906:53;:::i;:::-;4896:63;;4852:117;5008:2;5034:53;5079:7;5070:6;5059:9;5055:22;5034:53;:::i;:::-;5024:63;;4979:118;5136:2;5162:53;5207:7;5198:6;5187:9;5183:22;5162:53;:::i;:::-;5152:63;;5107:118;4613:619;;;;;:::o;5238:86::-;5273:7;5313:4;5306:5;5302:16;5291:27;;5238:86;;;:::o;5330:112::-;5413:22;5429:5;5413:22;:::i;:::-;5408:3;5401:35;5330:112;;:::o;5448:214::-;5537:4;5575:2;5564:9;5560:18;5552:26;;5588:67;5652:1;5641:9;5637:17;5628:6;5588:67;:::i;:::-;5448:214;;;;:::o;5668:329::-;5727:6;5776:2;5764:9;5755:7;5751:23;5747:32;5744:119;;;5782:79;;:::i;:::-;5744:119;5902:1;5927:53;5972:7;5963:6;5952:9;5948:22;5927:53;:::i;:::-;5917:63;;5873:117;5668:329;;;;:::o;6003:619::-;6080:6;6088;6096;6145:2;6133:9;6124:7;6120:23;6116:32;6113:119;;;6151:79;;:::i;:::-;6113:119;6271:1;6296:53;6341:7;6332:6;6321:9;6317:22;6296:53;:::i;:::-;6286:63;;6242:117;6398:2;6424:53;6469:7;6460:6;6449:9;6445:22;6424:53;:::i;:::-;6414:63;;6369:118;6526:2;6552:53;6597:7;6588:6;6577:9;6573:22;6552:53;:::i;:::-;6542:63;;6497:118;6003:619;;;;;:::o;6628:118::-;6715:24;6733:5;6715:24;:::i;:::-;6710:3;6703:37;6628:118;;:::o;6752:222::-;6845:4;6883:2;6872:9;6868:18;6860:26;;6896:71;6964:1;6953:9;6949:17;6940:6;6896:71;:::i;:::-;6752:222;;;;:::o;6980:117::-;7089:1;7086;7079:12;7103:180;7151:77;7148:1;7141:88;7248:4;7245:1;7238:15;7272:4;7269:1;7262:15;7289:281;7372:27;7394:4;7372:27;:::i;:::-;7364:6;7360:40;7502:6;7490:10;7487:22;7466:18;7454:10;7451:34;7448:62;7445:88;;;7513:18;;:::i;:::-;7445:88;7553:10;7549:2;7542:22;7332:238;7289:281;;:::o;7576:129::-;7610:6;7637:20;;:::i;:::-;7627:30;;7666:33;7694:4;7686:6;7666:33;:::i;:::-;7576:129;;;:::o;7711:311::-;7788:4;7878:18;7870:6;7867:30;7864:56;;;7900:18;;:::i;:::-;7864:56;7950:4;7942:6;7938:17;7930:25;;8010:4;8004;8000:15;7992:23;;7711:311;;;:::o;8028:117::-;8137:1;8134;8127:12;8168:710;8264:5;8289:81;8305:64;8362:6;8305:64;:::i;:::-;8289:81;:::i;:::-;8280:90;;8390:5;8419:6;8412:5;8405:21;8453:4;8446:5;8442:16;8435:23;;8506:4;8498:6;8494:17;8486:6;8482:30;8535:3;8527:6;8524:15;8521:122;;;8554:79;;:::i;:::-;8521:122;8669:6;8652:220;8686:6;8681:3;8678:15;8652:220;;;8761:3;8790:37;8823:3;8811:10;8790:37;:::i;:::-;8785:3;8778:50;8857:4;8852:3;8848:14;8841:21;;8728:144;8712:4;8707:3;8703:14;8696:21;;8652:220;;;8656:21;8270:608;;8168:710;;;;;:::o;8901:370::-;8972:5;9021:3;9014:4;9006:6;9002:17;8998:27;8988:122;;9029:79;;:::i;:::-;8988:122;9146:6;9133:20;9171:94;9261:3;9253:6;9246:4;9238:6;9234:17;9171:94;:::i;:::-;9162:103;;8978:293;8901:370;;;;:::o;9277:539::-;9361:6;9410:2;9398:9;9389:7;9385:23;9381:32;9378:119;;;9416:79;;:::i;:::-;9378:119;9564:1;9553:9;9549:17;9536:31;9594:18;9586:6;9583:30;9580:117;;;9616:79;;:::i;:::-;9580:117;9721:78;9791:7;9782:6;9771:9;9767:22;9721:78;:::i;:::-;9711:88;;9507:302;9277:539;;;;:::o;9822:474::-;9890:6;9898;9947:2;9935:9;9926:7;9922:23;9918:32;9915:119;;;9953:79;;:::i;:::-;9915:119;10073:1;10098:53;10143:7;10134:6;10123:9;10119:22;10098:53;:::i;:::-;10088:63;;10044:117;10200:2;10226:53;10271:7;10262:6;10251:9;10247:22;10226:53;:::i;:::-;10216:63;;10171:118;9822:474;;;;;:::o;10302:143::-;10359:5;10390:6;10384:13;10375:22;;10406:33;10433:5;10406:33;:::i;:::-;10302:143;;;;:::o;10451:351::-;10521:6;10570:2;10558:9;10549:7;10545:23;10541:32;10538:119;;;10576:79;;:::i;:::-;10538:119;10696:1;10721:64;10777:7;10768:6;10757:9;10753:22;10721:64;:::i;:::-;10711:74;;10667:128;10451:351;;;;:::o;10808:60::-;10836:3;10857:5;10850:12;;10808:60;;;:::o;10874:142::-;10924:9;10957:53;10975:34;10984:24;11002:5;10984:24;:::i;:::-;10975:34;:::i;:::-;10957:53;:::i;:::-;10944:66;;10874:142;;;:::o;11022:126::-;11072:9;11105:37;11136:5;11105:37;:::i;:::-;11092:50;;11022:126;;;:::o;11154:134::-;11212:9;11245:37;11276:5;11245:37;:::i;:::-;11232:50;;11154:134;;;:::o;11294:147::-;11389:45;11428:5;11389:45;:::i;:::-;11384:3;11377:58;11294:147;;:::o;11447:348::-;11576:4;11614:2;11603:9;11599:18;11591:26;;11627:79;11703:1;11692:9;11688:17;11679:6;11627:79;:::i;:::-;11716:72;11784:2;11773:9;11769:18;11760:6;11716:72;:::i;:::-;11447:348;;;;;:::o;11801:116::-;11871:21;11886:5;11871:21;:::i;:::-;11864:5;11861:32;11851:60;;11907:1;11904;11897:12;11851:60;11801:116;:::o;11923:137::-;11977:5;12008:6;12002:13;11993:22;;12024:30;12048:5;12024:30;:::i;:::-;11923:137;;;;:::o;12066:345::-;12133:6;12182:2;12170:9;12161:7;12157:23;12153:32;12150:119;;;12188:79;;:::i;:::-;12150:119;12308:1;12333:61;12386:7;12377:6;12366:9;12362:22;12333:61;:::i;:::-;12323:71;;12279:125;12066:345;;;;:::o;12417:175::-;12557:27;12553:1;12545:6;12541:14;12534:51;12417:175;:::o;12598:366::-;12740:3;12761:67;12825:2;12820:3;12761:67;:::i;:::-;12754:74;;12837:93;12926:3;12837:93;:::i;:::-;12955:2;12950:3;12946:12;12939:19;;12598:366;;;:::o;12970:419::-;13136:4;13174:2;13163:9;13159:18;13151:26;;13223:9;13217:4;13213:20;13209:1;13198:9;13194:17;13187:47;13251:131;13377:4;13251:131;:::i;:::-;13243:139;;12970:419;;;:::o;13395:180::-;13443:77;13440:1;13433:88;13540:4;13537:1;13530:15;13564:4;13561:1;13554:15;13581:191;13621:3;13640:20;13658:1;13640:20;:::i;:::-;13635:25;;13674:20;13692:1;13674:20;:::i;:::-;13669:25;;13717:1;13714;13710:9;13703:16;;13738:3;13735:1;13732:10;13729:36;;;13745:18;;:::i;:::-;13729:36;13581:191;;;;:::o;13778:161::-;13918:13;13914:1;13906:6;13902:14;13895:37;13778:161;:::o;13945:366::-;14087:3;14108:67;14172:2;14167:3;14108:67;:::i;:::-;14101:74;;14184:93;14273:3;14184:93;:::i;:::-;14302:2;14297:3;14293:12;14286:19;;13945:366;;;:::o;14317:419::-;14483:4;14521:2;14510:9;14506:18;14498:26;;14570:9;14564:4;14560:20;14556:1;14545:9;14541:17;14534:47;14598:131;14724:4;14598:131;:::i;:::-;14590:139;;14317:419;;;:::o;14742:182::-;14882:34;14878:1;14870:6;14866:14;14859:58;14742:182;:::o;14930:366::-;15072:3;15093:67;15157:2;15152:3;15093:67;:::i;:::-;15086:74;;15169:93;15258:3;15169:93;:::i;:::-;15287:2;15282:3;15278:12;15271:19;;14930:366;;;:::o;15302:419::-;15468:4;15506:2;15495:9;15491:18;15483:26;;15555:9;15549:4;15545:20;15541:1;15530:9;15526:17;15519:47;15583:131;15709:4;15583:131;:::i;:::-;15575:139;;15302:419;;;:::o;15727:180::-;15775:77;15772:1;15765:88;15872:4;15869:1;15862:15;15896:4;15893:1;15886:15;15913:233;15952:3;15975:24;15993:5;15975:24;:::i;:::-;15966:33;;16021:66;16014:5;16011:77;16008:103;;16091:18;;:::i;:::-;16008:103;16138:1;16131:5;16127:13;16120:20;;15913:233;;;:::o;16152:173::-;16292:25;16288:1;16280:6;16276:14;16269:49;16152:173;:::o;16331:366::-;16473:3;16494:67;16558:2;16553:3;16494:67;:::i;:::-;16487:74;;16570:93;16659:3;16570:93;:::i;:::-;16688:2;16683:3;16679:12;16672:19;;16331:366;;;:::o;16703:419::-;16869:4;16907:2;16896:9;16892:18;16884:26;;16956:9;16950:4;16946:20;16942:1;16931:9;16927:17;16920:47;16984:131;17110:4;16984:131;:::i;:::-;16976:139;;16703:419;;;:::o;17128:410::-;17168:7;17191:20;17209:1;17191:20;:::i;:::-;17186:25;;17225:20;17243:1;17225:20;:::i;:::-;17220:25;;17280:1;17277;17273:9;17302:30;17320:11;17302:30;:::i;:::-;17291:41;;17481:1;17472:7;17468:15;17465:1;17462:22;17442:1;17435:9;17415:83;17392:139;;17511:18;;:::i;:::-;17392:139;17176:362;17128:410;;;;:::o;17544:180::-;17592:77;17589:1;17582:88;17689:4;17686:1;17679:15;17713:4;17710:1;17703:15;17730:185;17770:1;17787:20;17805:1;17787:20;:::i;:::-;17782:25;;17821:20;17839:1;17821:20;:::i;:::-;17816:25;;17860:1;17850:35;;17865:18;;:::i;:::-;17850:35;17907:1;17904;17900:9;17895:14;;17730:185;;;;:::o;17921:220::-;18061:34;18057:1;18049:6;18045:14;18038:58;18130:3;18125:2;18117:6;18113:15;18106:28;17921:220;:::o;18147:366::-;18289:3;18310:67;18374:2;18369:3;18310:67;:::i;:::-;18303:74;;18386:93;18475:3;18386:93;:::i;:::-;18504:2;18499:3;18495:12;18488:19;;18147:366;;;:::o;18519:419::-;18685:4;18723:2;18712:9;18708:18;18700:26;;18772:9;18766:4;18762:20;18758:1;18747:9;18743:17;18736:47;18800:131;18926:4;18800:131;:::i;:::-;18792:139;;18519:419;;;:::o;18944:223::-;19084:34;19080:1;19072:6;19068:14;19061:58;19153:6;19148:2;19140:6;19136:15;19129:31;18944:223;:::o;19173:366::-;19315:3;19336:67;19400:2;19395:3;19336:67;:::i;:::-;19329:74;;19412:93;19501:3;19412:93;:::i;:::-;19530:2;19525:3;19521:12;19514:19;;19173:366;;;:::o;19545:419::-;19711:4;19749:2;19738:9;19734:18;19726:26;;19798:9;19792:4;19788:20;19784:1;19773:9;19769:17;19762:47;19826:131;19952:4;19826:131;:::i;:::-;19818:139;;19545:419;;;:::o;19970:221::-;20110:34;20106:1;20098:6;20094:14;20087:58;20179:4;20174:2;20166:6;20162:15;20155:29;19970:221;:::o;20197:366::-;20339:3;20360:67;20424:2;20419:3;20360:67;:::i;:::-;20353:74;;20436:93;20525:3;20436:93;:::i;:::-;20554:2;20549:3;20545:12;20538:19;;20197:366;;;:::o;20569:419::-;20735:4;20773:2;20762:9;20758:18;20750:26;;20822:9;20816:4;20812:20;20808:1;20797:9;20793:17;20786:47;20850:131;20976:4;20850:131;:::i;:::-;20842:139;;20569:419;;;:::o;20994:224::-;21134:34;21130:1;21122:6;21118:14;21111:58;21203:7;21198:2;21190:6;21186:15;21179:32;20994:224;:::o;21224:366::-;21366:3;21387:67;21451:2;21446:3;21387:67;:::i;:::-;21380:74;;21463:93;21552:3;21463:93;:::i;:::-;21581:2;21576:3;21572:12;21565:19;;21224:366;;;:::o;21596:419::-;21762:4;21800:2;21789:9;21785:18;21777:26;;21849:9;21843:4;21839:20;21835:1;21824:9;21820:17;21813:47;21877:131;22003:4;21877:131;:::i;:::-;21869:139;;21596:419;;;:::o;22021:222::-;22161:34;22157:1;22149:6;22145:14;22138:58;22230:5;22225:2;22217:6;22213:15;22206:30;22021:222;:::o;22249:366::-;22391:3;22412:67;22476:2;22471:3;22412:67;:::i;:::-;22405:74;;22488:93;22577:3;22488:93;:::i;:::-;22606:2;22601:3;22597:12;22590:19;;22249:366;;;:::o;22621:419::-;22787:4;22825:2;22814:9;22810:18;22802:26;;22874:9;22868:4;22864:20;22860:1;22849:9;22845:17;22838:47;22902:131;23028:4;22902:131;:::i;:::-;22894:139;;22621:419;;;:::o;23046:228::-;23186:34;23182:1;23174:6;23170:14;23163:58;23255:11;23250:2;23242:6;23238:15;23231:36;23046:228;:::o;23280:366::-;23422:3;23443:67;23507:2;23502:3;23443:67;:::i;:::-;23436:74;;23519:93;23608:3;23519:93;:::i;:::-;23637:2;23632:3;23628:12;23621:19;;23280:366;;;:::o;23652:419::-;23818:4;23856:2;23845:9;23841:18;23833:26;;23905:9;23899:4;23895:20;23891:1;23880:9;23876:17;23869:47;23933:131;24059:4;23933:131;:::i;:::-;23925:139;;23652:419;;;:::o;24077:162::-;24217:14;24213:1;24205:6;24201:14;24194:38;24077:162;:::o;24245:366::-;24387:3;24408:67;24472:2;24467:3;24408:67;:::i;:::-;24401:74;;24484:93;24573:3;24484:93;:::i;:::-;24602:2;24597:3;24593:12;24586:19;;24245:366;;;:::o;24617:419::-;24783:4;24821:2;24810:9;24806:18;24798:26;;24870:9;24864:4;24860:20;24856:1;24845:9;24841:17;24834:47;24898:131;25024:4;24898:131;:::i;:::-;24890:139;;24617:419;;;:::o;25042:181::-;25182:33;25178:1;25170:6;25166:14;25159:57;25042:181;:::o;25229:366::-;25371:3;25392:67;25456:2;25451:3;25392:67;:::i;:::-;25385:74;;25468:93;25557:3;25468:93;:::i;:::-;25586:2;25581:3;25577:12;25570:19;;25229:366;;;:::o;25601:419::-;25767:4;25805:2;25794:9;25790:18;25782:26;;25854:9;25848:4;25844:20;25840:1;25829:9;25825:17;25818:47;25882:131;26008:4;25882:131;:::i;:::-;25874:139;;25601:419;;;:::o;26026:194::-;26066:4;26086:20;26104:1;26086:20;:::i;:::-;26081:25;;26120:20;26138:1;26120:20;:::i;:::-;26115:25;;26164:1;26161;26157:9;26149:17;;26188:1;26182:4;26179:11;26176:37;;;26193:18;;:::i;:::-;26176:37;26026:194;;;;:::o;26226:143::-;26283:5;26314:6;26308:13;26299:22;;26330:33;26357:5;26330:33;:::i;:::-;26226:143;;;;:::o;26375:351::-;26445:6;26494:2;26482:9;26473:7;26469:23;26465:32;26462:119;;;26500:79;;:::i;:::-;26462:119;26620:1;26645:64;26701:7;26692:6;26681:9;26677:22;26645:64;:::i;:::-;26635:74;;26591:128;26375:351;;;;:::o;26732:85::-;26777:7;26806:5;26795:16;;26732:85;;;:::o;26823:158::-;26881:9;26914:61;26932:42;26941:32;26967:5;26941:32;:::i;:::-;26932:42;:::i;:::-;26914:61;:::i;:::-;26901:74;;26823:158;;;:::o;26987:147::-;27082:45;27121:5;27082:45;:::i;:::-;27077:3;27070:58;26987:147;;:::o;27140:114::-;27207:6;27241:5;27235:12;27225:22;;27140:114;;;:::o;27260:184::-;27359:11;27393:6;27388:3;27381:19;27433:4;27428:3;27424:14;27409:29;;27260:184;;;;:::o;27450:132::-;27517:4;27540:3;27532:11;;27570:4;27565:3;27561:14;27553:22;;27450:132;;;:::o;27588:108::-;27665:24;27683:5;27665:24;:::i;:::-;27660:3;27653:37;27588:108;;:::o;27702:179::-;27771:10;27792:46;27834:3;27826:6;27792:46;:::i;:::-;27870:4;27865:3;27861:14;27847:28;;27702:179;;;;:::o;27887:113::-;27957:4;27989;27984:3;27980:14;27972:22;;27887:113;;;:::o;28036:732::-;28155:3;28184:54;28232:5;28184:54;:::i;:::-;28254:86;28333:6;28328:3;28254:86;:::i;:::-;28247:93;;28364:56;28414:5;28364:56;:::i;:::-;28443:7;28474:1;28459:284;28484:6;28481:1;28478:13;28459:284;;;28560:6;28554:13;28587:63;28646:3;28631:13;28587:63;:::i;:::-;28580:70;;28673:60;28726:6;28673:60;:::i;:::-;28663:70;;28519:224;28506:1;28503;28499:9;28494:14;;28459:284;;;28463:14;28759:3;28752:10;;28160:608;;;28036:732;;;;:::o;28774:831::-;29037:4;29075:3;29064:9;29060:19;29052:27;;29089:71;29157:1;29146:9;29142:17;29133:6;29089:71;:::i;:::-;29170:80;29246:2;29235:9;29231:18;29222:6;29170:80;:::i;:::-;29297:9;29291:4;29287:20;29282:2;29271:9;29267:18;29260:48;29325:108;29428:4;29419:6;29325:108;:::i;:::-;29317:116;;29443:72;29511:2;29500:9;29496:18;29487:6;29443:72;:::i;:::-;29525:73;29593:3;29582:9;29578:19;29569:6;29525:73;:::i;:::-;28774:831;;;;;;;;:::o;29611:807::-;29860:4;29898:3;29887:9;29883:19;29875:27;;29912:71;29980:1;29969:9;29965:17;29956:6;29912:71;:::i;:::-;29993:72;30061:2;30050:9;30046:18;30037:6;29993:72;:::i;:::-;30075:80;30151:2;30140:9;30136:18;30127:6;30075:80;:::i;:::-;30165;30241:2;30230:9;30226:18;30217:6;30165:80;:::i;:::-;30255:73;30323:3;30312:9;30308:19;30299:6;30255:73;:::i;:::-;30338;30406:3;30395:9;30391:19;30382:6;30338:73;:::i;:::-;29611:807;;;;;;;;;:::o;30424:663::-;30512:6;30520;30528;30577:2;30565:9;30556:7;30552:23;30548:32;30545:119;;;30583:79;;:::i;:::-;30545:119;30703:1;30728:64;30784:7;30775:6;30764:9;30760:22;30728:64;:::i;:::-;30718:74;;30674:128;30841:2;30867:64;30923:7;30914:6;30903:9;30899:22;30867:64;:::i;:::-;30857:74;;30812:129;30980:2;31006:64;31062:7;31053:6;31042:9;31038:22;31006:64;:::i;:::-;30996:74;;30951:129;30424:663;;;;;:::o;31093:177::-;31233:29;31229:1;31221:6;31217:14;31210:53;31093:177;:::o;31276:366::-;31418:3;31439:67;31503:2;31498:3;31439:67;:::i;:::-;31432:74;;31515:93;31604:3;31515:93;:::i;:::-;31633:2;31628:3;31624:12;31617:19;;31276:366;;;:::o;31648:419::-;31814:4;31852:2;31841:9;31837:18;31829:26;;31901:9;31895:4;31891:20;31887:1;31876:9;31872:17;31865:47;31929:131;32055:4;31929:131;:::i;:::-;31921:139;;31648:419;;;:::o

Swarm Source

ipfs://197e9d323465d72907c2036db6845987fd707f759a80d840fb28da2307fe3d9d
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.