ETH Price: $2,535.26 (+5.47%)
 

Overview

Max Total Supply

5,000,000 ONI

Holders

770

Market

Price

$0.01 @ 0.000002 ETH

Onchain Market Cap

$27,122.20

Circulating Supply Market Cap

$0.00

Other Info

Token Contract (WITH 18 Decimals)

Balance
0 ONI

Value
$0.00
0x5157c898760a09f89f92e84bd179ea14aac9f4aa
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

ONI is an utility token powered with a private crypto-currency exchange through Telegram.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Anonify

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-02-20
*/

// SPDX-License-Identifier: MIT

//https://anonify.bot/
//https://docs.anonify.bot/
//https://twitter.com/AnonifyBot
//https://t.me/AnonifyPortal
//https://t.me/anonify_swap_bot


pragma solidity 0.8.19;

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

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

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "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, " multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "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;

    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(), "caller is not the owner");
        _;
    }

    function transferOwnership(address newOwner) public onlyOwner {
        require(newOwner != address(0), "new owner is zero address");
        _owner = newOwner;
        emit OwnershipTransferred(_owner, newOwner);
    }

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

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

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 Anonify is Context, IERC20, Ownable {
    using SafeMath for uint256;

    mapping(address => uint256) private _balance;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedWallet;
    uint8 private constant _decimals = 18;
    uint256 private constant _totalSupply = 5_000_000 * 10 ** _decimals;
    string private constant _name = "Anonify";
    string private constant _symbol = "ONI";

    uint256 private constant onePercent = _totalSupply / 100; //1%

    uint256 public buyFee = 0;
    uint256 public sellFee = 0;
    uint256 public maxAmountPerTx = _totalSupply * 1 / 100; //1%
    uint256 public maxAmountPerWallet = _totalSupply * 1 / 100; //1%

    uint256 private maxSwapTokenAtAmount = _totalSupply * 1 / 100; //1%

    IUniswapV2Router02 private constant uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    address public uniswapV2Pair;

    address payable private taxWallet;
    address payable private marketingWallet;
    address payable private devWallet;

    bool private swapEnabled = false;
    bool private inSwapAndLiquify = false;

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

    constructor(address _taxWallet, address _marketingWallet) {
        taxWallet = payable(_taxWallet);
        marketingWallet = payable(_marketingWallet);
        devWallet = payable(0x7809731f2f9a6781731bC7210361554c925D55C1);

        _isExcludedWallet[_msgSender()] = true;
        _isExcludedWallet[address(this)] = true;
        _isExcludedWallet[taxWallet] = true;
        _isExcludedWallet[marketingWallet] = true;
        _isExcludedWallet[devWallet] = true;

        _allowances[address(this)][address(uniswapV2Router)] = type(uint).max;
        _allowances[_msgSender()][address(uniswapV2Router)] = type(uint).max;

        _balance[address(0xE13A3d44402BE184A21E28001e96C50dBFFB7DD9)] = onePercent * 5;   // 5%
        _balance[address(this)] = onePercent * 95;  // 95%

        emit Transfer(address(0), address(0xE13A3d44402BE184A21E28001e96C50dBFFB7DD9), onePercent * 5);
        emit Transfer(address(0), address(this), onePercent * 95);
    }

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

    function balanceOf(address account) public view override returns (uint256) {
        return _balance[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, "low allowance"));
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0) && spender != address(0), "approve 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");

        uint256 _tax = 0;
        if (!_isExcludedWallet[from] && !_isExcludedWallet[to]) {
            if (from == uniswapV2Pair && to != address(uniswapV2Router)) {
                require(balanceOf(to) + amount <= maxAmountPerWallet || maxAmountPerWallet == 0, "Exceed max amount per wallet");
                require(amount <= maxAmountPerTx || maxAmountPerTx == 0, "Exceed max amount per tx");
                _tax = buyFee;
            } else if (to == uniswapV2Pair) {
                require(amount <= maxAmountPerTx || maxAmountPerTx == 0, "Exceed max amount per tx");
                _tax = sellFee;
            } else {
                _tax = 0;
            }
        }

        uint256 taxAmount = (amount * _tax) / 100;
        uint256 transferAmount = amount - taxAmount;

        _balance[from] = _balance[from] - amount;
        _balance[address(this)] = _balance[address(this)] + taxAmount;

        uint256 cAmount = _balance[address(this)];
        if (!inSwapAndLiquify && from != uniswapV2Pair && to == uniswapV2Pair && swapEnabled) {
            if (cAmount >= maxSwapTokenAtAmount) {
                swapTokensForEth(cAmount);
                uint256 ethBalance = address(this).balance;
                if (ethBalance > 0) {
                    sendETHToFee(ethBalance);
                }
            }
        }

        _balance[to] = _balance[to] + transferAmount;

        if (taxAmount > 0) {
            emit Transfer(from, address(this), taxAmount);
        }

        emit Transfer(from, to, transferAmount);
    }

    function swapTokensForEth(uint256 _tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            _tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
        
    function sendETHToFee(uint256 _amount) private {
        uint256 tax = _amount * 50 / 100;
        uint256 dev = _amount * 30 / 100;
        uint256 marketing = _amount - tax - dev;
        taxWallet.transfer(tax);
        devWallet.transfer(dev);
        marketingWallet.transfer(marketing);
    }

    function manualSwap() external {
        require(_msgSender() == owner() || _msgSender() == taxWallet || _msgSender() == devWallet || _msgSender() == marketingWallet, "Invalid permission");

        uint256 tokenBalance = balanceOf(address(this));
        if (tokenBalance > 0) {
            swapTokensForEth(tokenBalance);
        }

        uint256 ethBalance = address(this).balance;
        if (ethBalance > 0) {
            sendETHToFee(ethBalance);
        }
    }

    function openTrading(
        uint256 _buyFee,
        uint256 _sellFee
    ) external payable onlyOwner {
        require(!swapEnabled, "Already enabled for trading");

        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: msg.value}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            owner(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);

        buyFee = _buyFee;
        sellFee = _sellFee;

        swapEnabled = true;
    }

    function liftLimits() external {
        require(_msgSender() == taxWallet || _msgSender() == owner(), "Invalid permission");
        maxAmountPerTx = 0;
        maxAmountPerWallet = 0;
    }

    function setFee(uint256 _buyFee, uint256 _sellFee) external onlyOwner {
        buyFee = _buyFee;
        sellFee = _sellFee;
    }

    function setMaxSwapTokenAtAmount(uint256 _maxSwapTokenAtAmount) external {
        require(_msgSender() == taxWallet || _msgSender() == owner(), "Invalid permission");
        maxSwapTokenAtAmount = _maxSwapTokenAtAmount;
    }

    function setTaxWallet(address _taxWallet) external {
        require(_msgSender() == taxWallet, "Invalid permission");
        taxWallet = payable(_taxWallet);
    }

    function setMarketingWallet(address _marketingWallet) external {
        require(_msgSender() == marketingWallet, "Invalid permission");
        marketingWallet = payable(_marketingWallet);
    }

    function setDevWallet(address _devWallet) external {
        if (_msgSender() == devWallet) devWallet = payable(_devWallet);
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_taxWallet","type":"address"},{"internalType":"address","name":"_marketingWallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":[],"name":"buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"liftLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxAmountPerTx","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxAmountPerWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"openTrading","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_devWallet","type":"address"}],"name":"setDevWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingWallet","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxSwapTokenAtAmount","type":"uint256"}],"name":"setMaxSwapTokenAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_taxWallet","type":"address"}],"name":"setTaxWallet","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"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405260006004556000600555606460016012600a62000022919062000a77565b624c4b4062000032919062000ac8565b6200003e919062000ac8565b6200004a919062000b42565b600655606460016012600a62000061919062000a77565b624c4b4062000071919062000ac8565b6200007d919062000ac8565b62000089919062000b42565b600755606460016012600a620000a0919062000a77565b624c4b40620000b0919062000ac8565b620000bc919062000ac8565b620000c8919062000b42565b6008556000600c60146101000a81548160ff0219169083151502179055506000600c60156101000a81548160ff0219169083151502179055503480156200010e57600080fd5b5060405162003f6738038062003f67833981810160405281019062000134919062000be4565b600062000146620008d560201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550737809731f2f9a6781731bc7210361554c925d55c1600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160036000620002d1620008d560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60026000620005d2620008d560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600560646012600a62000675919062000a77565b624c4b4062000685919062000ac8565b62000691919062000b42565b6200069d919062000ac8565b6001600073e13a3d44402be184a21e28001e96c50dbffb7dd973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550605f60646012600a62000708919062000a77565b624c4b4062000718919062000ac8565b62000724919062000b42565b62000730919062000ac8565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555073e13a3d44402be184a21e28001e96c50dbffb7dd973ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600560646012600a620007eb919062000a77565b624c4b40620007fb919062000ac8565b62000807919062000b42565b62000813919062000ac8565b60405162000822919062000c3c565b60405180910390a33073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef605f60646012600a6200088e919062000a77565b624c4b406200089e919062000ac8565b620008aa919062000b42565b620008b6919062000ac8565b604051620008c5919062000c3c565b60405180910390a3505062000c59565b600033905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200096b57808604811115620009435762000942620008dd565b5b6001851615620009535780820291505b808102905062000963856200090c565b945062000923565b94509492505050565b60008262000986576001905062000a59565b8162000996576000905062000a59565b8160018114620009af5760028114620009ba57620009f0565b600191505062000a59565b60ff841115620009cf57620009ce620008dd565b5b8360020a915084821115620009e957620009e8620008dd565b5b5062000a59565b5060208310610133831016604e8410600b841016171562000a2a5782820a90508381111562000a245762000a23620008dd565b5b62000a59565b62000a39848484600162000919565b9250905081840481111562000a535762000a52620008dd565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b600062000a848262000a60565b915062000a918362000a6a565b925062000ac07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000974565b905092915050565b600062000ad58262000a60565b915062000ae28362000a60565b925082820262000af28162000a60565b9150828204841483151762000b0c5762000b0b620008dd565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000b4f8262000a60565b915062000b5c8362000a60565b92508262000b6f5762000b6e62000b13565b5b828204905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000bac8262000b7f565b9050919050565b62000bbe8162000b9f565b811462000bca57600080fd5b50565b60008151905062000bde8162000bb3565b92915050565b6000806040838503121562000bfe5762000bfd62000b7a565b5b600062000c0e8582860162000bcd565b925050602062000c218582860162000bcd565b9150509250929050565b62000c368162000a60565b82525050565b600060208201905062000c53600083018462000c2b565b92915050565b6132fe8062000c696000396000f3fe60806040526004361061016a5760003560e01c80635d098b38116100d1578063a9059cbb1161008a578063e7a919f911610064578063e7a919f914610527578063ea414b2814610543578063f2fde38b1461056c578063f60b3d6d1461059557610171565b8063a9059cbb14610484578063dd62ed3e146104c1578063e1035bf9146104fe57610171565b80635d098b381461038657806370a08231146103af578063715018a6146103ec57806385b27c85146104035780638da5cb5b1461042e57806395d89b411461045957610171565b8063313ce56711610123578063313ce5671461029a57806336db7129146102c557806347062402146102f057806349bd5a5e1461031b57806351bc3c851461034657806352f7c9881461035d57610171565b806306fdde0314610176578063095ea7b3146101a157806318160ddd146101de5780631f53ac021461020957806323b872dd146102325780632b14ca561461026f57610171565b3661017157005b600080fd5b34801561018257600080fd5b5061018b6105ac565b604051610198919061250d565b60405180910390f35b3480156101ad57600080fd5b506101c860048036038101906101c391906125c8565b6105e9565b6040516101d59190612623565b60405180910390f35b3480156101ea57600080fd5b506101f3610607565b604051610200919061264d565b60405180910390f35b34801561021557600080fd5b50610230600480360381019061022b9190612668565b61062a565b005b34801561023e57600080fd5b5061025960048036038101906102549190612695565b6106cb565b6040516102669190612623565b60405180910390f35b34801561027b57600080fd5b506102846107c1565b604051610291919061264d565b60405180910390f35b3480156102a657600080fd5b506102af6107c7565b6040516102bc9190612704565b60405180910390f35b3480156102d157600080fd5b506102da6107d0565b6040516102e7919061264d565b60405180910390f35b3480156102fc57600080fd5b506103056107d6565b604051610312919061264d565b60405180910390f35b34801561032757600080fd5b506103306107dc565b60405161033d919061272e565b60405180910390f35b34801561035257600080fd5b5061035b610802565b005b34801561036957600080fd5b50610384600480360381019061037f9190612749565b6109d7565b005b34801561039257600080fd5b506103ad60048036038101906103a89190612668565b610a7e565b005b3480156103bb57600080fd5b506103d660048036038101906103d19190612668565b610b59565b6040516103e3919061264d565b60405180910390f35b3480156103f857600080fd5b50610401610ba2565b005b34801561040f57600080fd5b50610418610cf5565b604051610425919061264d565b60405180910390f35b34801561043a57600080fd5b50610443610cfb565b604051610450919061272e565b60405180910390f35b34801561046557600080fd5b5061046e610d24565b60405161047b919061250d565b60405180910390f35b34801561049057600080fd5b506104ab60048036038101906104a691906125c8565b610d61565b6040516104b89190612623565b60405180910390f35b3480156104cd57600080fd5b506104e860048036038101906104e39190612789565b610d7f565b6040516104f5919061264d565b60405180910390f35b34801561050a57600080fd5b50610525600480360381019061052091906127c9565b610e06565b005b610541600480360381019061053c9190612749565b610eeb565b005b34801561054f57600080fd5b5061056a60048036038101906105659190612668565b611342565b005b34801561057857600080fd5b50610593600480360381019061058e9190612668565b61141d565b005b3480156105a157600080fd5b506105aa6115de565b005b60606040518060400160405280600781526020017f416e6f6e69667900000000000000000000000000000000000000000000000000815250905090565b60006105fd6105f66116cb565b84846116d3565b6001905092915050565b60006012600a6106179190612958565b624c4b4061062591906129a3565b905090565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661066b6116cb565b73ffffffffffffffffffffffffffffffffffffffff16036106c85780600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60006106d8848484611867565b6107b6846106e46116cb565b6107b1856040518060400160405280600d81526020017f6c6f7720616c6c6f77616e636500000000000000000000000000000000000000815250600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107676116cb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120539092919063ffffffff16565b6116d3565b600190509392505050565b60055481565b60006012905090565b60075481565b60045481565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61080a610cfb565b73ffffffffffffffffffffffffffffffffffffffff166108286116cb565b73ffffffffffffffffffffffffffffffffffffffff16148061089e5750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108866116cb565b73ffffffffffffffffffffffffffffffffffffffff16145b806108fd5750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108e56116cb565b73ffffffffffffffffffffffffffffffffffffffff16145b8061095c5750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109446116cb565b73ffffffffffffffffffffffffffffffffffffffff16145b61099b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099290612a31565b60405180910390fd5b60006109a630610b59565b905060008111156109bb576109ba816120b7565b5b600047905060008111156109d3576109d2816122e7565b5b5050565b6109df6116cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6390612a9d565b60405180910390fd5b81600481905550806005819055505050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610abf6116cb565b73ffffffffffffffffffffffffffffffffffffffff1614610b15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0c90612a31565b60405180910390fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610baa6116cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2e90612a9d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60065481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600381526020017f4f4e490000000000000000000000000000000000000000000000000000000000815250905090565b6000610d75610d6e6116cb565b8484611867565b6001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610e476116cb565b73ffffffffffffffffffffffffffffffffffffffff161480610ea25750610e6c610cfb565b73ffffffffffffffffffffffffffffffffffffffff16610e8a6116cb565b73ffffffffffffffffffffffffffffffffffffffff16145b610ee1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed890612a31565b60405180910390fd5b8060088190555050565b610ef36116cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f7790612a9d565b60405180910390fd5b600c60149054906101000a900460ff1615610fd0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc790612b09565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561102f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110539190612b3e565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f29190612b3e565b6040518363ffffffff1660e01b815260040161110f929190612b6b565b6020604051808303816000875af115801561112e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111529190612b3e565b600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663f305d71934306111cd30610b59565b6000806111d8610cfb565b426040518863ffffffff1660e01b81526004016111fa96959493929190612bd9565b60606040518083038185885af1158015611218573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061123d9190612c4f565b505050600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3737a250d5630b4cf539739df2c5dacb4c659f2488d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016112d1929190612ca2565b6020604051808303816000875af11580156112f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113149190612cf7565b5081600481905550806005819055506001600c60146101000a81548160ff0219169083151502179055505050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166113836116cb565b73ffffffffffffffffffffffffffffffffffffffff16146113d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d090612a31565b60405180910390fd5b80600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6114256116cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a990612a9d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611521576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151890612d70565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661161f6116cb565b73ffffffffffffffffffffffffffffffffffffffff16148061167a5750611644610cfb565b73ffffffffffffffffffffffffffffffffffffffff166116626116cb565b73ffffffffffffffffffffffffffffffffffffffff16145b6116b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b090612a31565b60405180910390fd5b60006006819055506000600781905550565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561173d5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b61177c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177390612ddc565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161185a919061264d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118cd90612e6e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161193c90612f00565b60405180910390fd5b60008111611988576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197f90612f92565b60405180910390fd5b6000600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015611a2e5750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611c4e57600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611ad05750737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611b965760075482611ae285610b59565b611aec9190612fb2565b111580611afb57506000600754145b611b3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b3190613032565b60405180910390fd5b60065482111580611b4d57506000600654145b611b8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b839061309e565b60405180910390fd5b6004549050611c4d565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611c475760065482111580611bfe57506000600654145b611c3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c349061309e565b60405180910390fd5b6005549050611c4c565b600090505b5b5b600060648284611c5e91906129a3565b611c6891906130ed565b905060008184611c78919061311e565b905083600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cc5919061311e565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d539190612fb2565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050600c60159054906101000a900460ff16158015611e455750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614155b8015611e9e5750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b8015611eb65750600c60149054906101000a900460ff165b15611ee8576008548110611ee757611ecd816120b7565b60004790506000811115611ee557611ee4816122e7565b5b505b5b81600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f339190612fb2565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000831115611fe5573073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611fdc919061264d565b60405180910390a35b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612042919061264d565b60405180910390a350505050505050565b600083831115829061209b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612092919061250d565b60405180910390fd5b50600083856120aa919061311e565b9050809150509392505050565b6001600c60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156120ef576120ee613152565b5b60405190808252806020026020018201604052801561211d5781602001602082028036833780820191505090505b509050308160008151811061213557612134613181565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f29190612b3e565b8160018151811061220657612205613181565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161229695949392919061326e565b600060405180830381600087803b1580156122b057600080fd5b505af11580156122c4573d6000803e3d6000fd5b50505050506000600c60156101000a81548160ff02191690831515021790555050565b600060646032836122f891906129a3565b61230291906130ed565b905060006064601e8461231591906129a3565b61231f91906130ed565b90506000818385612330919061311e565b61233a919061311e565b9050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f193505050501580156123a4573d6000803e3d6000fd5b50600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505015801561240d573d6000803e3d6000fd5b50600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612476573d6000803e3d6000fd5b5050505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156124b757808201518184015260208101905061249c565b60008484015250505050565b6000601f19601f8301169050919050565b60006124df8261247d565b6124e98185612488565b93506124f9818560208601612499565b612502816124c3565b840191505092915050565b6000602082019050818103600083015261252781846124d4565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061255f82612534565b9050919050565b61256f81612554565b811461257a57600080fd5b50565b60008135905061258c81612566565b92915050565b6000819050919050565b6125a581612592565b81146125b057600080fd5b50565b6000813590506125c28161259c565b92915050565b600080604083850312156125df576125de61252f565b5b60006125ed8582860161257d565b92505060206125fe858286016125b3565b9150509250929050565b60008115159050919050565b61261d81612608565b82525050565b60006020820190506126386000830184612614565b92915050565b61264781612592565b82525050565b6000602082019050612662600083018461263e565b92915050565b60006020828403121561267e5761267d61252f565b5b600061268c8482850161257d565b91505092915050565b6000806000606084860312156126ae576126ad61252f565b5b60006126bc8682870161257d565b93505060206126cd8682870161257d565b92505060406126de868287016125b3565b9150509250925092565b600060ff82169050919050565b6126fe816126e8565b82525050565b600060208201905061271960008301846126f5565b92915050565b61272881612554565b82525050565b6000602082019050612743600083018461271f565b92915050565b600080604083850312156127605761275f61252f565b5b600061276e858286016125b3565b925050602061277f858286016125b3565b9150509250929050565b600080604083850312156127a05761279f61252f565b5b60006127ae8582860161257d565b92505060206127bf8582860161257d565b9150509250929050565b6000602082840312156127df576127de61252f565b5b60006127ed848285016125b3565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111561287c57808604811115612858576128576127f6565b5b60018516156128675780820291505b808102905061287585612825565b945061283c565b94509492505050565b6000826128955760019050612951565b816128a35760009050612951565b81600181146128b957600281146128c3576128f2565b6001915050612951565b60ff8411156128d5576128d46127f6565b5b8360020a9150848211156128ec576128eb6127f6565b5b50612951565b5060208310610133831016604e8410600b84101617156129275782820a905083811115612922576129216127f6565b5b612951565b6129348484846001612832565b9250905081840481111561294b5761294a6127f6565b5b81810290505b9392505050565b600061296382612592565b915061296e836126e8565b925061299b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612885565b905092915050565b60006129ae82612592565b91506129b983612592565b92508282026129c781612592565b915082820484148315176129de576129dd6127f6565b5b5092915050565b7f496e76616c6964207065726d697373696f6e0000000000000000000000000000600082015250565b6000612a1b601283612488565b9150612a26826129e5565b602082019050919050565b60006020820190508181036000830152612a4a81612a0e565b9050919050565b7f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000600082015250565b6000612a87601783612488565b9150612a9282612a51565b602082019050919050565b60006020820190508181036000830152612ab681612a7a565b9050919050565b7f416c726561647920656e61626c656420666f722074726164696e670000000000600082015250565b6000612af3601b83612488565b9150612afe82612abd565b602082019050919050565b60006020820190508181036000830152612b2281612ae6565b9050919050565b600081519050612b3881612566565b92915050565b600060208284031215612b5457612b5361252f565b5b6000612b6284828501612b29565b91505092915050565b6000604082019050612b80600083018561271f565b612b8d602083018461271f565b9392505050565b6000819050919050565b6000819050919050565b6000612bc3612bbe612bb984612b94565b612b9e565b612592565b9050919050565b612bd381612ba8565b82525050565b600060c082019050612bee600083018961271f565b612bfb602083018861263e565b612c086040830187612bca565b612c156060830186612bca565b612c22608083018561271f565b612c2f60a083018461263e565b979650505050505050565b600081519050612c498161259c565b92915050565b600080600060608486031215612c6857612c6761252f565b5b6000612c7686828701612c3a565b9350506020612c8786828701612c3a565b9250506040612c9886828701612c3a565b9150509250925092565b6000604082019050612cb7600083018561271f565b612cc4602083018461263e565b9392505050565b612cd481612608565b8114612cdf57600080fd5b50565b600081519050612cf181612ccb565b92915050565b600060208284031215612d0d57612d0c61252f565b5b6000612d1b84828501612ce2565b91505092915050565b7f6e6577206f776e6572206973207a65726f206164647265737300000000000000600082015250565b6000612d5a601983612488565b9150612d6582612d24565b602082019050919050565b60006020820190508181036000830152612d8981612d4d565b9050919050565b7f617070726f7665207a65726f2061646472657373000000000000000000000000600082015250565b6000612dc6601483612488565b9150612dd182612d90565b602082019050919050565b60006020820190508181036000830152612df581612db9565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612e58602583612488565b9150612e6382612dfc565b604082019050919050565b60006020820190508181036000830152612e8781612e4b565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612eea602383612488565b9150612ef582612e8e565b604082019050919050565b60006020820190508181036000830152612f1981612edd565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612f7c602983612488565b9150612f8782612f20565b604082019050919050565b60006020820190508181036000830152612fab81612f6f565b9050919050565b6000612fbd82612592565b9150612fc883612592565b9250828201905080821115612fe057612fdf6127f6565b5b92915050565b7f457863656564206d617820616d6f756e74207065722077616c6c657400000000600082015250565b600061301c601c83612488565b915061302782612fe6565b602082019050919050565b6000602082019050818103600083015261304b8161300f565b9050919050565b7f457863656564206d617820616d6f756e74207065722074780000000000000000600082015250565b6000613088601883612488565b915061309382613052565b602082019050919050565b600060208201905081810360008301526130b78161307b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006130f882612592565b915061310383612592565b925082613113576131126130be565b5b828204905092915050565b600061312982612592565b915061313483612592565b925082820390508181111561314c5761314b6127f6565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6131e581612554565b82525050565b60006131f783836131dc565b60208301905092915050565b6000602082019050919050565b600061321b826131b0565b61322581856131bb565b9350613230836131cc565b8060005b8381101561326157815161324888826131eb565b975061325383613203565b925050600181019050613234565b5085935050505092915050565b600060a082019050613283600083018861263e565b6132906020830187612bca565b81810360408301526132a28186613210565b90506132b1606083018561271f565b6132be608083018461263e565b969550505050505056fea26469706673582212200854c5f2bf787f98151aa64b7a5ca0af0e4d58dd4be4f24f5f57f1bf3736bef964736f6c63430008130033000000000000000000000000773de850cf68746b1ab86ee94b6c1c75219eae5700000000000000000000000072a049a96e0b50efb3e18d39693b1f0107f81002

Deployed Bytecode

0x60806040526004361061016a5760003560e01c80635d098b38116100d1578063a9059cbb1161008a578063e7a919f911610064578063e7a919f914610527578063ea414b2814610543578063f2fde38b1461056c578063f60b3d6d1461059557610171565b8063a9059cbb14610484578063dd62ed3e146104c1578063e1035bf9146104fe57610171565b80635d098b381461038657806370a08231146103af578063715018a6146103ec57806385b27c85146104035780638da5cb5b1461042e57806395d89b411461045957610171565b8063313ce56711610123578063313ce5671461029a57806336db7129146102c557806347062402146102f057806349bd5a5e1461031b57806351bc3c851461034657806352f7c9881461035d57610171565b806306fdde0314610176578063095ea7b3146101a157806318160ddd146101de5780631f53ac021461020957806323b872dd146102325780632b14ca561461026f57610171565b3661017157005b600080fd5b34801561018257600080fd5b5061018b6105ac565b604051610198919061250d565b60405180910390f35b3480156101ad57600080fd5b506101c860048036038101906101c391906125c8565b6105e9565b6040516101d59190612623565b60405180910390f35b3480156101ea57600080fd5b506101f3610607565b604051610200919061264d565b60405180910390f35b34801561021557600080fd5b50610230600480360381019061022b9190612668565b61062a565b005b34801561023e57600080fd5b5061025960048036038101906102549190612695565b6106cb565b6040516102669190612623565b60405180910390f35b34801561027b57600080fd5b506102846107c1565b604051610291919061264d565b60405180910390f35b3480156102a657600080fd5b506102af6107c7565b6040516102bc9190612704565b60405180910390f35b3480156102d157600080fd5b506102da6107d0565b6040516102e7919061264d565b60405180910390f35b3480156102fc57600080fd5b506103056107d6565b604051610312919061264d565b60405180910390f35b34801561032757600080fd5b506103306107dc565b60405161033d919061272e565b60405180910390f35b34801561035257600080fd5b5061035b610802565b005b34801561036957600080fd5b50610384600480360381019061037f9190612749565b6109d7565b005b34801561039257600080fd5b506103ad60048036038101906103a89190612668565b610a7e565b005b3480156103bb57600080fd5b506103d660048036038101906103d19190612668565b610b59565b6040516103e3919061264d565b60405180910390f35b3480156103f857600080fd5b50610401610ba2565b005b34801561040f57600080fd5b50610418610cf5565b604051610425919061264d565b60405180910390f35b34801561043a57600080fd5b50610443610cfb565b604051610450919061272e565b60405180910390f35b34801561046557600080fd5b5061046e610d24565b60405161047b919061250d565b60405180910390f35b34801561049057600080fd5b506104ab60048036038101906104a691906125c8565b610d61565b6040516104b89190612623565b60405180910390f35b3480156104cd57600080fd5b506104e860048036038101906104e39190612789565b610d7f565b6040516104f5919061264d565b60405180910390f35b34801561050a57600080fd5b50610525600480360381019061052091906127c9565b610e06565b005b610541600480360381019061053c9190612749565b610eeb565b005b34801561054f57600080fd5b5061056a60048036038101906105659190612668565b611342565b005b34801561057857600080fd5b50610593600480360381019061058e9190612668565b61141d565b005b3480156105a157600080fd5b506105aa6115de565b005b60606040518060400160405280600781526020017f416e6f6e69667900000000000000000000000000000000000000000000000000815250905090565b60006105fd6105f66116cb565b84846116d3565b6001905092915050565b60006012600a6106179190612958565b624c4b4061062591906129a3565b905090565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661066b6116cb565b73ffffffffffffffffffffffffffffffffffffffff16036106c85780600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60006106d8848484611867565b6107b6846106e46116cb565b6107b1856040518060400160405280600d81526020017f6c6f7720616c6c6f77616e636500000000000000000000000000000000000000815250600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107676116cb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120539092919063ffffffff16565b6116d3565b600190509392505050565b60055481565b60006012905090565b60075481565b60045481565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61080a610cfb565b73ffffffffffffffffffffffffffffffffffffffff166108286116cb565b73ffffffffffffffffffffffffffffffffffffffff16148061089e5750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108866116cb565b73ffffffffffffffffffffffffffffffffffffffff16145b806108fd5750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108e56116cb565b73ffffffffffffffffffffffffffffffffffffffff16145b8061095c5750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109446116cb565b73ffffffffffffffffffffffffffffffffffffffff16145b61099b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099290612a31565b60405180910390fd5b60006109a630610b59565b905060008111156109bb576109ba816120b7565b5b600047905060008111156109d3576109d2816122e7565b5b5050565b6109df6116cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6390612a9d565b60405180910390fd5b81600481905550806005819055505050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610abf6116cb565b73ffffffffffffffffffffffffffffffffffffffff1614610b15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0c90612a31565b60405180910390fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610baa6116cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2e90612a9d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60065481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600381526020017f4f4e490000000000000000000000000000000000000000000000000000000000815250905090565b6000610d75610d6e6116cb565b8484611867565b6001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610e476116cb565b73ffffffffffffffffffffffffffffffffffffffff161480610ea25750610e6c610cfb565b73ffffffffffffffffffffffffffffffffffffffff16610e8a6116cb565b73ffffffffffffffffffffffffffffffffffffffff16145b610ee1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed890612a31565b60405180910390fd5b8060088190555050565b610ef36116cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f7790612a9d565b60405180910390fd5b600c60149054906101000a900460ff1615610fd0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc790612b09565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561102f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110539190612b3e565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f29190612b3e565b6040518363ffffffff1660e01b815260040161110f929190612b6b565b6020604051808303816000875af115801561112e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111529190612b3e565b600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663f305d71934306111cd30610b59565b6000806111d8610cfb565b426040518863ffffffff1660e01b81526004016111fa96959493929190612bd9565b60606040518083038185885af1158015611218573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061123d9190612c4f565b505050600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3737a250d5630b4cf539739df2c5dacb4c659f2488d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016112d1929190612ca2565b6020604051808303816000875af11580156112f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113149190612cf7565b5081600481905550806005819055506001600c60146101000a81548160ff0219169083151502179055505050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166113836116cb565b73ffffffffffffffffffffffffffffffffffffffff16146113d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d090612a31565b60405180910390fd5b80600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6114256116cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a990612a9d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611521576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151890612d70565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661161f6116cb565b73ffffffffffffffffffffffffffffffffffffffff16148061167a5750611644610cfb565b73ffffffffffffffffffffffffffffffffffffffff166116626116cb565b73ffffffffffffffffffffffffffffffffffffffff16145b6116b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b090612a31565b60405180910390fd5b60006006819055506000600781905550565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561173d5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b61177c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177390612ddc565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161185a919061264d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118cd90612e6e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161193c90612f00565b60405180910390fd5b60008111611988576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197f90612f92565b60405180910390fd5b6000600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015611a2e5750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611c4e57600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611ad05750737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611b965760075482611ae285610b59565b611aec9190612fb2565b111580611afb57506000600754145b611b3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b3190613032565b60405180910390fd5b60065482111580611b4d57506000600654145b611b8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b839061309e565b60405180910390fd5b6004549050611c4d565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611c475760065482111580611bfe57506000600654145b611c3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c349061309e565b60405180910390fd5b6005549050611c4c565b600090505b5b5b600060648284611c5e91906129a3565b611c6891906130ed565b905060008184611c78919061311e565b905083600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cc5919061311e565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d539190612fb2565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050600c60159054906101000a900460ff16158015611e455750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614155b8015611e9e5750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b8015611eb65750600c60149054906101000a900460ff165b15611ee8576008548110611ee757611ecd816120b7565b60004790506000811115611ee557611ee4816122e7565b5b505b5b81600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f339190612fb2565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000831115611fe5573073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611fdc919061264d565b60405180910390a35b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612042919061264d565b60405180910390a350505050505050565b600083831115829061209b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612092919061250d565b60405180910390fd5b50600083856120aa919061311e565b9050809150509392505050565b6001600c60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156120ef576120ee613152565b5b60405190808252806020026020018201604052801561211d5781602001602082028036833780820191505090505b509050308160008151811061213557612134613181565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f29190612b3e565b8160018151811061220657612205613181565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161229695949392919061326e565b600060405180830381600087803b1580156122b057600080fd5b505af11580156122c4573d6000803e3d6000fd5b50505050506000600c60156101000a81548160ff02191690831515021790555050565b600060646032836122f891906129a3565b61230291906130ed565b905060006064601e8461231591906129a3565b61231f91906130ed565b90506000818385612330919061311e565b61233a919061311e565b9050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f193505050501580156123a4573d6000803e3d6000fd5b50600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505015801561240d573d6000803e3d6000fd5b50600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612476573d6000803e3d6000fd5b5050505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156124b757808201518184015260208101905061249c565b60008484015250505050565b6000601f19601f8301169050919050565b60006124df8261247d565b6124e98185612488565b93506124f9818560208601612499565b612502816124c3565b840191505092915050565b6000602082019050818103600083015261252781846124d4565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061255f82612534565b9050919050565b61256f81612554565b811461257a57600080fd5b50565b60008135905061258c81612566565b92915050565b6000819050919050565b6125a581612592565b81146125b057600080fd5b50565b6000813590506125c28161259c565b92915050565b600080604083850312156125df576125de61252f565b5b60006125ed8582860161257d565b92505060206125fe858286016125b3565b9150509250929050565b60008115159050919050565b61261d81612608565b82525050565b60006020820190506126386000830184612614565b92915050565b61264781612592565b82525050565b6000602082019050612662600083018461263e565b92915050565b60006020828403121561267e5761267d61252f565b5b600061268c8482850161257d565b91505092915050565b6000806000606084860312156126ae576126ad61252f565b5b60006126bc8682870161257d565b93505060206126cd8682870161257d565b92505060406126de868287016125b3565b9150509250925092565b600060ff82169050919050565b6126fe816126e8565b82525050565b600060208201905061271960008301846126f5565b92915050565b61272881612554565b82525050565b6000602082019050612743600083018461271f565b92915050565b600080604083850312156127605761275f61252f565b5b600061276e858286016125b3565b925050602061277f858286016125b3565b9150509250929050565b600080604083850312156127a05761279f61252f565b5b60006127ae8582860161257d565b92505060206127bf8582860161257d565b9150509250929050565b6000602082840312156127df576127de61252f565b5b60006127ed848285016125b3565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111561287c57808604811115612858576128576127f6565b5b60018516156128675780820291505b808102905061287585612825565b945061283c565b94509492505050565b6000826128955760019050612951565b816128a35760009050612951565b81600181146128b957600281146128c3576128f2565b6001915050612951565b60ff8411156128d5576128d46127f6565b5b8360020a9150848211156128ec576128eb6127f6565b5b50612951565b5060208310610133831016604e8410600b84101617156129275782820a905083811115612922576129216127f6565b5b612951565b6129348484846001612832565b9250905081840481111561294b5761294a6127f6565b5b81810290505b9392505050565b600061296382612592565b915061296e836126e8565b925061299b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612885565b905092915050565b60006129ae82612592565b91506129b983612592565b92508282026129c781612592565b915082820484148315176129de576129dd6127f6565b5b5092915050565b7f496e76616c6964207065726d697373696f6e0000000000000000000000000000600082015250565b6000612a1b601283612488565b9150612a26826129e5565b602082019050919050565b60006020820190508181036000830152612a4a81612a0e565b9050919050565b7f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000600082015250565b6000612a87601783612488565b9150612a9282612a51565b602082019050919050565b60006020820190508181036000830152612ab681612a7a565b9050919050565b7f416c726561647920656e61626c656420666f722074726164696e670000000000600082015250565b6000612af3601b83612488565b9150612afe82612abd565b602082019050919050565b60006020820190508181036000830152612b2281612ae6565b9050919050565b600081519050612b3881612566565b92915050565b600060208284031215612b5457612b5361252f565b5b6000612b6284828501612b29565b91505092915050565b6000604082019050612b80600083018561271f565b612b8d602083018461271f565b9392505050565b6000819050919050565b6000819050919050565b6000612bc3612bbe612bb984612b94565b612b9e565b612592565b9050919050565b612bd381612ba8565b82525050565b600060c082019050612bee600083018961271f565b612bfb602083018861263e565b612c086040830187612bca565b612c156060830186612bca565b612c22608083018561271f565b612c2f60a083018461263e565b979650505050505050565b600081519050612c498161259c565b92915050565b600080600060608486031215612c6857612c6761252f565b5b6000612c7686828701612c3a565b9350506020612c8786828701612c3a565b9250506040612c9886828701612c3a565b9150509250925092565b6000604082019050612cb7600083018561271f565b612cc4602083018461263e565b9392505050565b612cd481612608565b8114612cdf57600080fd5b50565b600081519050612cf181612ccb565b92915050565b600060208284031215612d0d57612d0c61252f565b5b6000612d1b84828501612ce2565b91505092915050565b7f6e6577206f776e6572206973207a65726f206164647265737300000000000000600082015250565b6000612d5a601983612488565b9150612d6582612d24565b602082019050919050565b60006020820190508181036000830152612d8981612d4d565b9050919050565b7f617070726f7665207a65726f2061646472657373000000000000000000000000600082015250565b6000612dc6601483612488565b9150612dd182612d90565b602082019050919050565b60006020820190508181036000830152612df581612db9565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612e58602583612488565b9150612e6382612dfc565b604082019050919050565b60006020820190508181036000830152612e8781612e4b565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612eea602383612488565b9150612ef582612e8e565b604082019050919050565b60006020820190508181036000830152612f1981612edd565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612f7c602983612488565b9150612f8782612f20565b604082019050919050565b60006020820190508181036000830152612fab81612f6f565b9050919050565b6000612fbd82612592565b9150612fc883612592565b9250828201905080821115612fe057612fdf6127f6565b5b92915050565b7f457863656564206d617820616d6f756e74207065722077616c6c657400000000600082015250565b600061301c601c83612488565b915061302782612fe6565b602082019050919050565b6000602082019050818103600083015261304b8161300f565b9050919050565b7f457863656564206d617820616d6f756e74207065722074780000000000000000600082015250565b6000613088601883612488565b915061309382613052565b602082019050919050565b600060208201905081810360008301526130b78161307b565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006130f882612592565b915061310383612592565b925082613113576131126130be565b5b828204905092915050565b600061312982612592565b915061313483612592565b925082820390508181111561314c5761314b6127f6565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6131e581612554565b82525050565b60006131f783836131dc565b60208301905092915050565b6000602082019050919050565b600061321b826131b0565b61322581856131bb565b9350613230836131cc565b8060005b8381101561326157815161324888826131eb565b975061325383613203565b925050600181019050613234565b5085935050505092915050565b600060a082019050613283600083018861263e565b6132906020830187612bca565b81810360408301526132a28186613210565b90506132b1606083018561271f565b6132be608083018461263e565b969550505050505056fea26469706673582212200854c5f2bf787f98151aa64b7a5ca0af0e4d58dd4be4f24f5f57f1bf3736bef964736f6c63430008130033

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

000000000000000000000000773de850cf68746b1ab86ee94b6c1c75219eae5700000000000000000000000072a049a96e0b50efb3e18d39693b1f0107f81002

-----Decoded View---------------
Arg [0] : _taxWallet (address): 0x773dE850CF68746B1Ab86ee94b6c1c75219Eae57
Arg [1] : _marketingWallet (address): 0x72a049A96e0B50EFb3e18d39693b1F0107f81002

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000773de850cf68746b1ab86ee94b6c1c75219eae57
Arg [1] : 00000000000000000000000072a049a96e0b50efb3e18d39693b1f0107f81002


Deployed Bytecode Sourcemap

3860:8841:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6166:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7001:160;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6443:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12529:132;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7169:286;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4445:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6352:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4544:58;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4413:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4814:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10371:482;;;;;;;;;;;;;:::i;:::-;;11767:134;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12323:198;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6551:118;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2238:148;;;;;;;;;;;;;:::i;:::-;;4478:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1802:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6257:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6677:166;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6851:142;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11909:230;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10861:695;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12147:168;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2007:223;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11564:195;;;;;;;;;;;;;:::i;:::-;;6166:83;6203:13;6236:5;;;;;;;;;;;;;;;;;6229:12;;6166:83;:::o;7001:160::-;7076:4;7092:39;7101:12;:10;:12::i;:::-;7115:7;7124:6;7092:8;:39::i;:::-;7149:4;7142:11;;7001:160;;;;:::o;6443:100::-;6496:7;4164:2;4225;:15;;;;:::i;:::-;4213:9;:27;;;;:::i;:::-;6516:19;;6443:100;:::o;12529:132::-;12611:9;;;;;;;;;;;12595:25;;:12;:10;:12::i;:::-;:25;;;12591:62;;12642:10;12622:9;;:31;;;;;;;;;;;;;;;;;;12591:62;12529:132;:::o;7169:286::-;7267:4;7284:36;7294:6;7302:9;7313:6;7284:9;:36::i;:::-;7331:94;7340:6;7348:12;:10;:12::i;:::-;7362:62;7400:6;7362:62;;;;;;;;;;;;;;;;;:11;:19;7374:6;7362:19;;;;;;;;;;;;;;;:33;7382:12;:10;:12::i;:::-;7362:33;;;;;;;;;;;;;;;;:37;;:62;;;;;:::i;:::-;7331:8;:94::i;:::-;7443:4;7436:11;;7169:286;;;;;:::o;4445:26::-;;;;:::o;6352:83::-;6393:5;4164:2;6411:16;;6352:83;:::o;4544:58::-;;;;:::o;4413:25::-;;;;:::o;4814:28::-;;;;;;;;;;;;;:::o;10371:482::-;10437:7;:5;:7::i;:::-;10421:23;;:12;:10;:12::i;:::-;:23;;;:52;;;;10464:9;;;;;;;;;;;10448:25;;:12;:10;:12::i;:::-;:25;;;10421:52;:81;;;;10493:9;;;;;;;;;;;10477:25;;:12;:10;:12::i;:::-;:25;;;10421:81;:116;;;;10522:15;;;;;;;;;;;10506:31;;:12;:10;:12::i;:::-;:31;;;10421:116;10413:147;;;;;;;;;;;;:::i;:::-;;;;;;;;;10573:20;10596:24;10614:4;10596:9;:24::i;:::-;10573:47;;10650:1;10635:12;:16;10631:79;;;10668:30;10685:12;10668:16;:30::i;:::-;10631:79;10722:18;10743:21;10722:42;;10792:1;10779:10;:14;10775:71;;;10810:24;10823:10;10810:12;:24::i;:::-;10775:71;10402:451;;10371:482::o;11767:134::-;1939:12;:10;:12::i;:::-;1929:22;;:6;;;;;;;;;;:22;;;1921:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;11857:7:::1;11848:6;:16;;;;11885:8;11875:7;:18;;;;11767:134:::0;;:::o;12323:198::-;12421:15;;;;;;;;;;;12405:31;;:12;:10;:12::i;:::-;:31;;;12397:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;12496:16;12470:15;;:43;;;;;;;;;;;;;;;;;;12323:198;:::o;6551:118::-;6617:7;6644:8;:17;6653:7;6644:17;;;;;;;;;;;;;;;;6637:24;;6551:118;;;:::o;2238:148::-;1939:12;:10;:12::i;:::-;1929:22;;:6;;;;;;;;;;:22;;;1921:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;2345:1:::1;2308:40;;2329:6;::::0;::::1;;;;;;;;2308:40;;;;;;;;;;;;2376:1;2359:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2238:148::o:0;4478:54::-;;;;:::o;1802:79::-;1840:7;1867:6;;;;;;;;;;;1860:13;;1802:79;:::o;6257:87::-;6296:13;6329:7;;;;;;;;;;;;;;;;;6322:14;;6257:87;:::o;6677:166::-;6755:4;6771:42;6781:12;:10;:12::i;:::-;6795:9;6806:6;6771:9;:42::i;:::-;6831:4;6824:11;;6677:166;;;;:::o;6851:142::-;6932:7;6958:11;:18;6970:5;6958:18;;;;;;;;;;;;;;;:27;6977:7;6958:27;;;;;;;;;;;;;;;;6951:34;;6851:142;;;;:::o;11909:230::-;12017:9;;;;;;;;;;;12001:25;;:12;:10;:12::i;:::-;:25;;;:52;;;;12046:7;:5;:7::i;:::-;12030:23;;:12;:10;:12::i;:::-;:23;;;12001:52;11993:83;;;;;;;;;;;;:::i;:::-;;;;;;;;;12110:21;12087:20;:44;;;;11909:230;:::o;10861:695::-;1939:12;:10;:12::i;:::-;1929:22;;:6;;;;;;;;;;:22;;;1921:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;10989:11:::1;;;;;;;;;;;10988:12;10980:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;4764:42;11079:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11061:55;;;11125:4;4764:42;11132:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11061:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11045:13;;:110;;;;;;;;;;;;;;;;;;4764:42;11166:31;;;11205:9;11238:4;11258:24;11276:4;11258:9;:24::i;:::-;11297:1;11313::::0;11329:7:::1;:5;:7::i;:::-;11351:15;11166:211;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;11395:13;;;;;;;;;;;11388:29;;;4764:42;11444:14;11388:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11481:7;11472:6;:16;;;;11509:8;11499:7;:18;;;;11544:4;11530:11;;:18;;;;;;;;;;;;;;;;;;10861:695:::0;;:::o;12147:168::-;12233:9;;;;;;;;;;;12217:25;;:12;:10;:12::i;:::-;:25;;;12209:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;12296:10;12276:9;;:31;;;;;;;;;;;;;;;;;;12147:168;:::o;2007:223::-;1939:12;:10;:12::i;:::-;1929:22;;:6;;;;;;;;;;:22;;;1921:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;2108:1:::1;2088:22;;:8;:22;;::::0;2080:60:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2160:8;2151:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;2213:8;2184:38;;2205:6;::::0;::::1;;;;;;;;2184:38;;;;;;;;;;;;2007:223:::0;:::o;11564:195::-;11630:9;;;;;;;;;;;11614:25;;:12;:10;:12::i;:::-;:25;;;:52;;;;11659:7;:5;:7::i;:::-;11643:23;;:12;:10;:12::i;:::-;:23;;;11614:52;11606:83;;;;;;;;;;;;:::i;:::-;;;;;;;;;11717:1;11700:14;:18;;;;11750:1;11729:18;:22;;;;11564:195::o;249:98::-;302:7;329:10;322:17;;249:98;:::o;7463:265::-;7573:1;7556:19;;:5;:19;;;;:44;;;;;7598:1;7579:21;;:7;:21;;;;7556:44;7548:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;7666:6;7636:11;:18;7648:5;7636:18;;;;;;;;;;;;;;;:27;7655:7;7636:27;;;;;;;;;;;;;;;:36;;;;7704:7;7688:32;;7697:5;7688:32;;;7713:6;7688:32;;;;;;:::i;:::-;;;;;;;;7463:265;;;:::o;7736:1886::-;7840:1;7824:18;;:4;:18;;;7816:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7917:1;7903:16;;:2;:16;;;7895:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7987:1;7978:6;:10;7970:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8047:12;8079:17;:23;8097:4;8079:23;;;;;;;;;;;;;;;;;;;;;;;;;8078:24;:50;;;;;8107:17;:21;8125:2;8107:21;;;;;;;;;;;;;;;;;;;;;;;;;8106:22;8078:50;8074:657;;;8157:13;;;;;;;;;;;8149:21;;:4;:21;;;:55;;;;;4764:42;8174:30;;:2;:30;;;;8149:55;8145:575;;;8259:18;;8249:6;8233:13;8243:2;8233:9;:13::i;:::-;:22;;;;:::i;:::-;:44;;:71;;;;8303:1;8281:18;;:23;8233:71;8225:112;;;;;;;;;;;;:::i;:::-;;;;;;;;;8374:14;;8364:6;:24;;:47;;;;8410:1;8392:14;;:19;8364:47;8356:84;;;;;;;;;;;;:::i;:::-;;;;;;;;;8466:6;;8459:13;;8145:575;;;8504:13;;;;;;;;;;;8498:19;;:2;:19;;;8494:226;;8556:14;;8546:6;:24;;:47;;;;8592:1;8574:14;;:19;8546:47;8538:84;;;;;;;;;;;;:::i;:::-;;;;;;;;;8648:7;;8641:14;;8494:226;;;8703:1;8696:8;;8494:226;8145:575;8074:657;8743:17;8781:3;8773:4;8764:6;:13;;;;:::i;:::-;8763:21;;;;:::i;:::-;8743:41;;8795:22;8829:9;8820:6;:18;;;;:::i;:::-;8795:43;;8885:6;8868:8;:14;8877:4;8868:14;;;;;;;;;;;;;;;;:23;;;;:::i;:::-;8851:8;:14;8860:4;8851:14;;;;;;;;;;;;;;;:40;;;;8954:9;8928:8;:23;8945:4;8928:23;;;;;;;;;;;;;;;;:35;;;;:::i;:::-;8902:8;:23;8919:4;8902:23;;;;;;;;;;;;;;;:61;;;;8976:15;8994:8;:23;9011:4;8994:23;;;;;;;;;;;;;;;;8976:41;;9033:16;;;;;;;;;;;9032:17;:42;;;;;9061:13;;;;;;;;;;;9053:21;;:4;:21;;;;9032:42;:65;;;;;9084:13;;;;;;;;;;;9078:19;;:2;:19;;;9032:65;:80;;;;;9101:11;;;;;;;;;;;9032:80;9028:375;;;9144:20;;9133:7;:31;9129:263;;9185:25;9202:7;9185:16;:25::i;:::-;9229:18;9250:21;9229:42;;9307:1;9294:10;:14;9290:87;;;9333:24;9346:10;9333:12;:24::i;:::-;9290:87;9166:226;9129:263;9028:375;9445:14;9430:8;:12;9439:2;9430:12;;;;;;;;;;;;;;;;:29;;;;:::i;:::-;9415:8;:12;9424:2;9415:12;;;;;;;;;;;;;;;:44;;;;9488:1;9476:9;:13;9472:91;;;9534:4;9511:40;;9520:4;9511:40;;;9541:9;9511:40;;;;;;:::i;:::-;;;;;;;;9472:91;9595:2;9580:34;;9589:4;9580:34;;;9599:14;9580:34;;;;;;:::i;:::-;;;;;;;;7805:1817;;;;7736:1886;;;:::o;689:190::-;775:7;808:1;803;:6;;811:12;795:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;835:9;851:1;847;:5;;;;:::i;:::-;835:17;;870:1;863:8;;;689:190;;;;;:::o;9630:412::-;5115:4;5096:16;;:23;;;;;;;;;;;;;;;;;;9709:21:::1;9747:1;9733:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9709:40;;9778:4;9760;9765:1;9760:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;4764:42;9804:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9794:4;9799:1;9794:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;4764:42;9837:66;;;9918:12;9945:1;9961:4;9988;10008:15;9837:197;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9698:344;5161:5:::0;5142:16;;:24;;;;;;;;;;;;;;;;;;9630:412;:::o;10058:305::-;10116:11;10145:3;10140:2;10130:7;:12;;;;:::i;:::-;:18;;;;:::i;:::-;10116:32;;10159:11;10188:3;10183:2;10173:7;:12;;;;:::i;:::-;:18;;;;:::i;:::-;10159:32;;10202:17;10238:3;10232;10222:7;:13;;;;:::i;:::-;:19;;;;:::i;:::-;10202:39;;10252:9;;;;;;;;;;;:18;;:23;10271:3;10252:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10286:9;;;;;;;;;;;:18;;:23;10305:3;10286:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10320:15;;;;;;;;;;;:24;;:35;10345:9;10320:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10105:258;;;10058:305;:::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;1430:117::-;1539:1;1536;1529: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:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:329::-;3857:6;3906:2;3894:9;3885:7;3881:23;3877:32;3874:119;;;3912:79;;:::i;:::-;3874:119;4032:1;4057:53;4102:7;4093:6;4082:9;4078:22;4057:53;:::i;:::-;4047:63;;4003:117;3798:329;;;;:::o;4133:619::-;4210:6;4218;4226;4275:2;4263:9;4254:7;4250:23;4246:32;4243:119;;;4281:79;;:::i;:::-;4243:119;4401:1;4426:53;4471:7;4462:6;4451:9;4447:22;4426:53;:::i;:::-;4416:63;;4372:117;4528:2;4554:53;4599:7;4590:6;4579:9;4575:22;4554:53;:::i;:::-;4544:63;;4499:118;4656:2;4682:53;4727:7;4718:6;4707:9;4703:22;4682:53;:::i;:::-;4672:63;;4627:118;4133:619;;;;;:::o;4758:86::-;4793:7;4833:4;4826:5;4822:16;4811:27;;4758:86;;;:::o;4850:112::-;4933:22;4949:5;4933:22;:::i;:::-;4928:3;4921:35;4850:112;;:::o;4968:214::-;5057:4;5095:2;5084:9;5080:18;5072:26;;5108:67;5172:1;5161:9;5157:17;5148:6;5108:67;:::i;:::-;4968:214;;;;:::o;5188:118::-;5275:24;5293:5;5275:24;:::i;:::-;5270:3;5263:37;5188:118;;:::o;5312:222::-;5405:4;5443:2;5432:9;5428:18;5420:26;;5456:71;5524:1;5513:9;5509:17;5500:6;5456:71;:::i;:::-;5312:222;;;;:::o;5540:474::-;5608:6;5616;5665:2;5653:9;5644:7;5640:23;5636:32;5633:119;;;5671:79;;:::i;:::-;5633:119;5791:1;5816:53;5861:7;5852:6;5841:9;5837:22;5816:53;:::i;:::-;5806:63;;5762:117;5918:2;5944:53;5989:7;5980:6;5969:9;5965:22;5944:53;:::i;:::-;5934:63;;5889:118;5540:474;;;;;:::o;6020:::-;6088:6;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;6020:474;;;;;:::o;6500:329::-;6559:6;6608:2;6596:9;6587:7;6583:23;6579:32;6576:119;;;6614:79;;:::i;:::-;6576:119;6734:1;6759:53;6804:7;6795:6;6784:9;6780:22;6759:53;:::i;:::-;6749:63;;6705:117;6500:329;;;;:::o;6835:180::-;6883:77;6880:1;6873:88;6980:4;6977:1;6970:15;7004:4;7001:1;6994:15;7021:102;7063:8;7110:5;7107:1;7103:13;7082:34;;7021:102;;;:::o;7129:848::-;7190:5;7197:4;7221:6;7212:15;;7245:5;7236:14;;7259:712;7280:1;7270:8;7267:15;7259:712;;;7375:4;7370:3;7366:14;7360:4;7357:24;7354:50;;;7384:18;;:::i;:::-;7354:50;7434:1;7424:8;7420:16;7417:451;;;7849:4;7842:5;7838:16;7829:25;;7417:451;7899:4;7893;7889:15;7881:23;;7929:32;7952:8;7929:32;:::i;:::-;7917:44;;7259:712;;;7129:848;;;;;;;:::o;7983:1073::-;8037:5;8228:8;8218:40;;8249:1;8240:10;;8251:5;;8218:40;8277:4;8267:36;;8294:1;8285:10;;8296:5;;8267:36;8363:4;8411:1;8406:27;;;;8447:1;8442:191;;;;8356:277;;8406:27;8424:1;8415:10;;8426:5;;;8442:191;8487:3;8477:8;8474:17;8471:43;;;8494:18;;:::i;:::-;8471:43;8543:8;8540:1;8536:16;8527:25;;8578:3;8571:5;8568:14;8565:40;;;8585:18;;:::i;:::-;8565:40;8618:5;;;8356:277;;8742:2;8732:8;8729:16;8723:3;8717:4;8714:13;8710:36;8692:2;8682:8;8679:16;8674:2;8668:4;8665:12;8661:35;8645:111;8642:246;;;8798:8;8792:4;8788:19;8779:28;;8833:3;8826:5;8823:14;8820:40;;;8840:18;;:::i;:::-;8820:40;8873:5;;8642:246;8913:42;8951:3;8941:8;8935:4;8932:1;8913:42;:::i;:::-;8898:57;;;;8987:4;8982:3;8978:14;8971:5;8968:25;8965:51;;;8996:18;;:::i;:::-;8965:51;9045:4;9038:5;9034:16;9025:25;;7983:1073;;;;;;:::o;9062:281::-;9120:5;9144:23;9162:4;9144:23;:::i;:::-;9136:31;;9188:25;9204:8;9188:25;:::i;:::-;9176:37;;9232:104;9269:66;9259:8;9253:4;9232:104;:::i;:::-;9223:113;;9062:281;;;;:::o;9349:410::-;9389:7;9412:20;9430:1;9412:20;:::i;:::-;9407:25;;9446:20;9464:1;9446:20;:::i;:::-;9441:25;;9501:1;9498;9494:9;9523:30;9541:11;9523:30;:::i;:::-;9512:41;;9702:1;9693:7;9689:15;9686:1;9683:22;9663:1;9656:9;9636:83;9613:139;;9732:18;;:::i;:::-;9613:139;9397:362;9349:410;;;;:::o;9765:168::-;9905:20;9901:1;9893:6;9889:14;9882:44;9765:168;:::o;9939:366::-;10081:3;10102:67;10166:2;10161:3;10102:67;:::i;:::-;10095:74;;10178:93;10267:3;10178:93;:::i;:::-;10296:2;10291:3;10287:12;10280:19;;9939:366;;;:::o;10311:419::-;10477:4;10515:2;10504:9;10500:18;10492:26;;10564:9;10558:4;10554:20;10550:1;10539:9;10535:17;10528:47;10592:131;10718:4;10592:131;:::i;:::-;10584:139;;10311:419;;;:::o;10736:173::-;10876:25;10872:1;10864:6;10860:14;10853:49;10736:173;:::o;10915:366::-;11057:3;11078:67;11142:2;11137:3;11078:67;:::i;:::-;11071:74;;11154:93;11243:3;11154:93;:::i;:::-;11272:2;11267:3;11263:12;11256:19;;10915:366;;;:::o;11287:419::-;11453:4;11491:2;11480:9;11476:18;11468:26;;11540:9;11534:4;11530:20;11526:1;11515:9;11511:17;11504:47;11568:131;11694:4;11568:131;:::i;:::-;11560:139;;11287:419;;;:::o;11712:177::-;11852:29;11848:1;11840:6;11836:14;11829:53;11712:177;:::o;11895:366::-;12037:3;12058:67;12122:2;12117:3;12058:67;:::i;:::-;12051:74;;12134:93;12223:3;12134:93;:::i;:::-;12252:2;12247:3;12243:12;12236:19;;11895:366;;;:::o;12267:419::-;12433:4;12471:2;12460:9;12456:18;12448:26;;12520:9;12514:4;12510:20;12506:1;12495:9;12491:17;12484:47;12548:131;12674:4;12548:131;:::i;:::-;12540:139;;12267:419;;;:::o;12692:143::-;12749:5;12780:6;12774:13;12765:22;;12796:33;12823:5;12796:33;:::i;:::-;12692:143;;;;:::o;12841:351::-;12911:6;12960:2;12948:9;12939:7;12935:23;12931:32;12928:119;;;12966:79;;:::i;:::-;12928:119;13086:1;13111:64;13167:7;13158:6;13147:9;13143:22;13111:64;:::i;:::-;13101:74;;13057:128;12841:351;;;;:::o;13198:332::-;13319:4;13357:2;13346:9;13342:18;13334:26;;13370:71;13438:1;13427:9;13423:17;13414:6;13370:71;:::i;:::-;13451:72;13519:2;13508:9;13504:18;13495:6;13451:72;:::i;:::-;13198:332;;;;;:::o;13536:85::-;13581:7;13610:5;13599:16;;13536:85;;;:::o;13627:60::-;13655:3;13676:5;13669:12;;13627:60;;;:::o;13693:158::-;13751:9;13784:61;13802:42;13811:32;13837:5;13811:32;:::i;:::-;13802:42;:::i;:::-;13784:61;:::i;:::-;13771:74;;13693:158;;;:::o;13857:147::-;13952:45;13991:5;13952:45;:::i;:::-;13947:3;13940:58;13857:147;;:::o;14010:807::-;14259:4;14297:3;14286:9;14282:19;14274:27;;14311:71;14379:1;14368:9;14364:17;14355:6;14311:71;:::i;:::-;14392:72;14460:2;14449:9;14445:18;14436:6;14392:72;:::i;:::-;14474:80;14550:2;14539:9;14535:18;14526:6;14474:80;:::i;:::-;14564;14640:2;14629:9;14625:18;14616:6;14564:80;:::i;:::-;14654:73;14722:3;14711:9;14707:19;14698:6;14654:73;:::i;:::-;14737;14805:3;14794:9;14790:19;14781:6;14737:73;:::i;:::-;14010:807;;;;;;;;;:::o;14823:143::-;14880:5;14911:6;14905:13;14896:22;;14927:33;14954:5;14927:33;:::i;:::-;14823:143;;;;:::o;14972:663::-;15060:6;15068;15076;15125:2;15113:9;15104:7;15100:23;15096:32;15093:119;;;15131:79;;:::i;:::-;15093:119;15251:1;15276:64;15332:7;15323:6;15312:9;15308:22;15276:64;:::i;:::-;15266:74;;15222:128;15389:2;15415:64;15471:7;15462:6;15451:9;15447:22;15415:64;:::i;:::-;15405:74;;15360:129;15528:2;15554:64;15610:7;15601:6;15590:9;15586:22;15554:64;:::i;:::-;15544:74;;15499:129;14972:663;;;;;:::o;15641:332::-;15762:4;15800:2;15789:9;15785:18;15777:26;;15813:71;15881:1;15870:9;15866:17;15857:6;15813:71;:::i;:::-;15894:72;15962:2;15951:9;15947:18;15938:6;15894:72;:::i;:::-;15641:332;;;;;:::o;15979:116::-;16049:21;16064:5;16049:21;:::i;:::-;16042:5;16039:32;16029:60;;16085:1;16082;16075:12;16029:60;15979:116;:::o;16101:137::-;16155:5;16186:6;16180:13;16171:22;;16202:30;16226:5;16202:30;:::i;:::-;16101:137;;;;:::o;16244:345::-;16311:6;16360:2;16348:9;16339:7;16335:23;16331:32;16328:119;;;16366:79;;:::i;:::-;16328:119;16486:1;16511:61;16564:7;16555:6;16544:9;16540:22;16511:61;:::i;:::-;16501:71;;16457:125;16244:345;;;;:::o;16595:175::-;16735:27;16731:1;16723:6;16719:14;16712:51;16595:175;:::o;16776:366::-;16918:3;16939:67;17003:2;16998:3;16939:67;:::i;:::-;16932:74;;17015:93;17104:3;17015:93;:::i;:::-;17133:2;17128:3;17124:12;17117:19;;16776:366;;;:::o;17148:419::-;17314:4;17352:2;17341:9;17337:18;17329:26;;17401:9;17395:4;17391:20;17387:1;17376:9;17372:17;17365:47;17429:131;17555:4;17429:131;:::i;:::-;17421:139;;17148:419;;;:::o;17573:170::-;17713:22;17709:1;17701:6;17697:14;17690:46;17573:170;:::o;17749:366::-;17891:3;17912:67;17976:2;17971:3;17912:67;:::i;:::-;17905:74;;17988:93;18077:3;17988:93;:::i;:::-;18106:2;18101:3;18097:12;18090:19;;17749:366;;;:::o;18121:419::-;18287:4;18325:2;18314:9;18310:18;18302:26;;18374:9;18368:4;18364:20;18360:1;18349:9;18345:17;18338:47;18402:131;18528:4;18402:131;:::i;:::-;18394:139;;18121:419;;;:::o;18546:224::-;18686:34;18682:1;18674:6;18670:14;18663:58;18755:7;18750:2;18742:6;18738:15;18731:32;18546:224;:::o;18776:366::-;18918:3;18939:67;19003:2;18998:3;18939:67;:::i;:::-;18932:74;;19015:93;19104:3;19015:93;:::i;:::-;19133:2;19128:3;19124:12;19117:19;;18776:366;;;:::o;19148:419::-;19314:4;19352:2;19341:9;19337:18;19329:26;;19401:9;19395:4;19391:20;19387:1;19376:9;19372:17;19365:47;19429:131;19555:4;19429:131;:::i;:::-;19421:139;;19148:419;;;:::o;19573:222::-;19713:34;19709:1;19701:6;19697:14;19690:58;19782:5;19777:2;19769:6;19765:15;19758:30;19573:222;:::o;19801:366::-;19943:3;19964:67;20028:2;20023:3;19964:67;:::i;:::-;19957:74;;20040:93;20129:3;20040:93;:::i;:::-;20158:2;20153:3;20149:12;20142:19;;19801:366;;;:::o;20173:419::-;20339:4;20377:2;20366:9;20362:18;20354:26;;20426:9;20420:4;20416:20;20412:1;20401:9;20397:17;20390:47;20454:131;20580:4;20454:131;:::i;:::-;20446:139;;20173:419;;;:::o;20598:228::-;20738:34;20734:1;20726:6;20722:14;20715:58;20807:11;20802:2;20794:6;20790:15;20783:36;20598:228;:::o;20832:366::-;20974:3;20995:67;21059:2;21054:3;20995:67;:::i;:::-;20988:74;;21071:93;21160:3;21071:93;:::i;:::-;21189:2;21184:3;21180:12;21173:19;;20832:366;;;:::o;21204:419::-;21370:4;21408:2;21397:9;21393:18;21385:26;;21457:9;21451:4;21447:20;21443:1;21432:9;21428:17;21421:47;21485:131;21611:4;21485:131;:::i;:::-;21477:139;;21204:419;;;:::o;21629:191::-;21669:3;21688:20;21706:1;21688:20;:::i;:::-;21683:25;;21722:20;21740:1;21722:20;:::i;:::-;21717:25;;21765:1;21762;21758:9;21751:16;;21786:3;21783:1;21780:10;21777:36;;;21793:18;;:::i;:::-;21777:36;21629:191;;;;:::o;21826:178::-;21966:30;21962:1;21954:6;21950:14;21943:54;21826:178;:::o;22010:366::-;22152:3;22173:67;22237:2;22232:3;22173:67;:::i;:::-;22166:74;;22249:93;22338:3;22249:93;:::i;:::-;22367:2;22362:3;22358:12;22351:19;;22010:366;;;:::o;22382:419::-;22548:4;22586:2;22575:9;22571:18;22563:26;;22635:9;22629:4;22625:20;22621:1;22610:9;22606:17;22599:47;22663:131;22789:4;22663:131;:::i;:::-;22655:139;;22382:419;;;:::o;22807:174::-;22947:26;22943:1;22935:6;22931:14;22924:50;22807:174;:::o;22987:366::-;23129:3;23150:67;23214:2;23209:3;23150:67;:::i;:::-;23143:74;;23226:93;23315:3;23226:93;:::i;:::-;23344:2;23339:3;23335:12;23328:19;;22987:366;;;:::o;23359:419::-;23525:4;23563:2;23552:9;23548:18;23540:26;;23612:9;23606:4;23602:20;23598:1;23587:9;23583:17;23576:47;23640:131;23766:4;23640:131;:::i;:::-;23632:139;;23359:419;;;:::o;23784:180::-;23832:77;23829:1;23822:88;23929:4;23926:1;23919:15;23953:4;23950:1;23943:15;23970:185;24010:1;24027:20;24045:1;24027:20;:::i;:::-;24022:25;;24061:20;24079:1;24061:20;:::i;:::-;24056:25;;24100:1;24090:35;;24105:18;;:::i;:::-;24090:35;24147:1;24144;24140:9;24135:14;;23970:185;;;;:::o;24161:194::-;24201:4;24221:20;24239:1;24221:20;:::i;:::-;24216:25;;24255:20;24273:1;24255:20;:::i;:::-;24250:25;;24299:1;24296;24292:9;24284:17;;24323:1;24317:4;24314:11;24311:37;;;24328:18;;:::i;:::-;24311:37;24161:194;;;;:::o;24361:180::-;24409:77;24406:1;24399:88;24506:4;24503:1;24496:15;24530:4;24527:1;24520:15;24547:180;24595:77;24592:1;24585:88;24692:4;24689:1;24682:15;24716:4;24713:1;24706:15;24733:114;24800:6;24834:5;24828:12;24818:22;;24733:114;;;:::o;24853:184::-;24952:11;24986:6;24981:3;24974:19;25026:4;25021:3;25017:14;25002:29;;24853:184;;;;:::o;25043:132::-;25110:4;25133:3;25125:11;;25163:4;25158:3;25154:14;25146:22;;25043:132;;;:::o;25181:108::-;25258:24;25276:5;25258:24;:::i;:::-;25253:3;25246:37;25181:108;;:::o;25295:179::-;25364:10;25385:46;25427:3;25419:6;25385:46;:::i;:::-;25463:4;25458:3;25454:14;25440:28;;25295:179;;;;:::o;25480:113::-;25550:4;25582;25577:3;25573:14;25565:22;;25480:113;;;:::o;25629:732::-;25748:3;25777:54;25825:5;25777:54;:::i;:::-;25847:86;25926:6;25921:3;25847:86;:::i;:::-;25840:93;;25957:56;26007:5;25957:56;:::i;:::-;26036:7;26067:1;26052:284;26077:6;26074:1;26071:13;26052:284;;;26153:6;26147:13;26180:63;26239:3;26224:13;26180:63;:::i;:::-;26173:70;;26266:60;26319:6;26266:60;:::i;:::-;26256:70;;26112:224;26099:1;26096;26092:9;26087:14;;26052:284;;;26056:14;26352:3;26345:10;;25753:608;;;25629:732;;;;:::o;26367:831::-;26630:4;26668:3;26657:9;26653:19;26645:27;;26682:71;26750:1;26739:9;26735:17;26726:6;26682:71;:::i;:::-;26763:80;26839:2;26828:9;26824:18;26815:6;26763:80;:::i;:::-;26890:9;26884:4;26880:20;26875:2;26864:9;26860:18;26853:48;26918:108;27021:4;27012:6;26918:108;:::i;:::-;26910:116;;27036:72;27104:2;27093:9;27089:18;27080:6;27036:72;:::i;:::-;27118:73;27186:3;27175:9;27171:19;27162:6;27118:73;:::i;:::-;26367:831;;;;;;;;:::o

Swarm Source

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