ETH Price: $2,465.30 (+0.83%)

Token

Dobermann ($DOBBY)
 

Overview

Max Total Supply

1,000,000,000,000,000,000,000,000 $DOBBY

Holders

98

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 0 Decimals)

Balance
2,485,002,026,804,712,256,511 $DOBBY

Value
$0.00
0xab6ae566c5c0073ab0b6bf5c4f062aa74ce664ae
Loading...
Loading
Loading...
Loading
Loading...
Loading

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

Contract Source Code Verified (Exact Match)

Contract Name:
Dobermann

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2023-10-26
*/

/*

    🅳🅾🅱🅱🆈

    Website: https://dobbycoinerc.com
    Telegram: https://t.me/DobermannERC
    Twitter: https://twitter.com/DobbyCoinERC

*/
// SPDX-License-Identifier: Unlicensed

pragma solidity 0.8.18;

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

interface IERC20 {
    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(address recipient, uint256 amount)
        external
        returns (bool);

    function allowance(address owner, address spender)
        external
        view
        returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

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

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

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

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

    function transferOwnership(address newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal {
        require(
            newOwner != address(0),
            "Ownable: new owner is the zero address"
        );
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }

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

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

    function WETH() external pure returns (address);
}

contract Dobermann is Context, IERC20, Ownable {
    uint256 private constant _totalSupply = 1_000_000e18;
    uint256 private constant onePercent = 20_000e18;
    uint256 private constant minSwap = 2_500e18;
    uint8 private constant _decimals = 18;

    IUniswapV2Router02 immutable uniswapV2Router;
    address immutable uniswapV2Pair;
    address immutable WETH;
    address payable immutable marketingWallet;

    uint256 public buyTax;
    uint256 public sellTax;

    uint8 private launch;
    uint8 private inSwapAndLiquify;

    uint256 private launchBlock;
    uint256 public maxTxAmount = onePercent; //max Tx for first mins after launch

    string private _name = "Dobermann";
    string private _symbol = "$DOBBY";

    mapping(address => uint256) private _balance;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFeeWallet;

    constructor() {
        uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        WETH = uniswapV2Router.WETH();
        buyTax = 35;
        sellTax = 35;

        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            WETH
        );

        marketingWallet = payable(0x3b20E22EbE840787c1F9344946113253658d4C19);
        _balance[msg.sender] = _totalSupply;
        _isExcludedFromFeeWallet[marketingWallet] = true;
        _isExcludedFromFeeWallet[msg.sender] = true;
        _isExcludedFromFeeWallet[address(this)] = true;
        _allowances[address(this)][address(uniswapV2Router)] = type(uint256)
            .max;
        _allowances[msg.sender][address(uniswapV2Router)] = type(uint256).max;
        _allowances[marketingWallet][address(uniswapV2Router)] = type(uint256)
            .max;

        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

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

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

    function 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()] - amount
        );
        return true;
    }

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

    function openTrading() external onlyOwner {
        launch = 1;
        launchBlock = block.number;
    }

    function addExcludedWallet(address wallet) external onlyOwner {
        _isExcludedFromFeeWallet[wallet] = true;
    }

    function removeLimits() external onlyOwner {
        maxTxAmount = _totalSupply;
    }

    function changeTax(uint256 newBuyTax, uint256 newSellTax) external onlyOwner {
        buyTax = newBuyTax;
        sellTax = newSellTax;
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(amount > 1e9, "Min transfer amt");

        uint256 _tax;
        if (_isExcludedFromFeeWallet[from] || _isExcludedFromFeeWallet[to]) {
            _tax = 0;
        } else {
            require(
                launch != 0 && amount <= maxTxAmount,
                "Launch / Max TxAmount 1% at launch"
            );

            if (inSwapAndLiquify == 1) {
                //No tax transfer
                _balance[from] -= amount;
                _balance[to] += amount;

                emit Transfer(from, to, amount);
                return;
            }

            if (from == uniswapV2Pair) {
                _tax = buyTax;
            } else if (to == uniswapV2Pair) {
                uint256 tokensToSwap = _balance[address(this)];
                if (tokensToSwap > minSwap && inSwapAndLiquify == 0) {
                    if (tokensToSwap > onePercent) {
                        tokensToSwap = onePercent;
                    }
                    inSwapAndLiquify = 1;
                    address[] memory path = new address[](2);
                    path[0] = address(this);
                    path[1] = WETH;
                    uniswapV2Router
                        .swapExactTokensForETHSupportingFeeOnTransferTokens(
                            tokensToSwap,
                            0,
                            path,
                            marketingWallet,
                            block.timestamp
                        );
                    inSwapAndLiquify = 0;
                }
                _tax = sellTax;
            } else {
                _tax = 0;
            }
        }

        //Is there tax for sender|receiver?
        if (_tax != 0) {
            //Tax transfer
            uint256 taxTokens = (amount * _tax) / 100;
            uint256 transferAmount = amount - taxTokens;

            _balance[from] -= amount;
            _balance[to] += transferAmount;
            _balance[address(this)] += taxTokens;
            emit Transfer(from, address(this), taxTokens);
            emit Transfer(from, to, transferAmount);
        } else {
            //No tax transfer
            _balance[from] -= amount;
            _balance[to] += amount;

            emit Transfer(from, to, amount);
        }
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"addExcludedWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"changeTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

61010060405269043c33c19375648000006006556040518060400160405280600981526020017f446f6265726d616e6e00000000000000000000000000000000000000000000008152506007908162000059919062000a1d565b506040518060400160405280600681526020017f24444f424259000000000000000000000000000000000000000000000000000081525060089081620000a0919062000a1d565b50348015620000ae57600080fd5b506000620000c16200079b60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505060805173ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021b919062000b6e565b73ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250506023600281905550602360038190555060805173ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002ac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002d2919062000b6e565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060c0516040518363ffffffff1660e01b81526004016200031092919062000bb1565b6020604051808303816000875af115801562000330573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000356919062000b6e565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1681525050733b20e22ebe840787c1f9344946113253658d4c1973ffffffffffffffffffffffffffffffffffffffff1660e08173ffffffffffffffffffffffffffffffffffffffff168152505069d3c21bcecceda1000000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600b600060e05173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600060805173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600060805173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600a600060e05173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600060805173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620007246200079b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef69d3c21bcecceda10000006040516200078d919062000bef565b60405180910390a362000c0c565b600033905090565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200082557607f821691505b6020821081036200083b576200083a620007dd565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620008a57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000866565b620008b1868362000866565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620008fe620008f8620008f284620008c9565b620008d3565b620008c9565b9050919050565b6000819050919050565b6200091a83620008dd565b62000932620009298262000905565b84845462000873565b825550505050565b600090565b620009496200093a565b620009568184846200090f565b505050565b5b818110156200097e57620009726000826200093f565b6001810190506200095c565b5050565b601f821115620009cd57620009978162000841565b620009a28462000856565b81016020851015620009b2578190505b620009ca620009c18562000856565b8301826200095b565b50505b505050565b600082821c905092915050565b6000620009f260001984600802620009d2565b1980831691505092915050565b600062000a0d8383620009df565b9150826002028217905092915050565b62000a2882620007a3565b67ffffffffffffffff81111562000a445762000a43620007ae565b5b62000a5082546200080c565b62000a5d82828562000982565b600060209050601f83116001811462000a95576000841562000a80578287015190505b62000a8c8582620009ff565b86555062000afc565b601f19841662000aa58662000841565b60005b8281101562000acf5784890151825560018201915060208501945060208101905062000aa8565b8683101562000aef578489015162000aeb601f891682620009df565b8355505b6001600288020188555050505b505050505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000b368262000b09565b9050919050565b62000b488162000b29565b811462000b5457600080fd5b50565b60008151905062000b688162000b3d565b92915050565b60006020828403121562000b875762000b8662000b04565b5b600062000b978482850162000b57565b91505092915050565b62000bab8162000b29565b82525050565b600060408201905062000bc8600083018562000ba0565b62000bd7602083018462000ba0565b9392505050565b62000be981620008c9565b82525050565b600060208201905062000c06600083018462000bde565b92915050565b60805160a05160c05160e0516123dc62000c4d60003960006114110152600061136201526000818161116601526111c3015260006113d101526123dc6000f3fe6080604052600436106101185760003560e01c80638c0b5e22116100a0578063c9567bf911610064578063c9567bf91461039c578063cc1776d3146103b3578063dba9d420146103de578063dd62ed3e14610407578063f2fde38b146104445761011f565b80638c0b5e22146102b55780638da5cb5b146102e05780639036ed4d1461030b57806395d89b4114610334578063a9059cbb1461035f5761011f565b8063313ce567116100e7578063313ce567146101f45780634f7041a51461021f57806370a082311461024a578063715018a614610287578063751039fc1461029e5761011f565b806306fdde0314610124578063095ea7b31461014f57806318160ddd1461018c57806323b872dd146101b75761011f565b3661011f57005b600080fd5b34801561013057600080fd5b5061013961046d565b604051610146919061198f565b60405180910390f35b34801561015b57600080fd5b5061017660048036038101906101719190611a4a565b6104ff565b6040516101839190611aa5565b60405180910390f35b34801561019857600080fd5b506101a161051d565b6040516101ae9190611acf565b60405180910390f35b3480156101c357600080fd5b506101de60048036038101906101d99190611aea565b61052f565b6040516101eb9190611aa5565b60405180910390f35b34801561020057600080fd5b506102096105e7565b6040516102169190611b59565b60405180910390f35b34801561022b57600080fd5b506102346105f0565b6040516102419190611acf565b60405180910390f35b34801561025657600080fd5b50610271600480360381019061026c9190611b74565b6105f6565b60405161027e9190611acf565b60405180910390f35b34801561029357600080fd5b5061029c61063f565b005b3480156102aa57600080fd5b506102b3610792565b005b3480156102c157600080fd5b506102ca61083a565b6040516102d79190611acf565b60405180910390f35b3480156102ec57600080fd5b506102f5610840565b6040516103029190611bb0565b60405180910390f35b34801561031757600080fd5b50610332600480360381019061032d9190611bcb565b610869565b005b34801561034057600080fd5b50610349610910565b604051610356919061198f565b60405180910390f35b34801561036b57600080fd5b5061038660048036038101906103819190611a4a565b6109a2565b6040516103939190611aa5565b60405180910390f35b3480156103a857600080fd5b506103b16109c0565b005b3480156103bf57600080fd5b506103c8610a7a565b6040516103d59190611acf565b60405180910390f35b3480156103ea57600080fd5b5061040560048036038101906104009190611b74565b610a80565b005b34801561041357600080fd5b5061042e60048036038101906104299190611c0b565b610b70565b60405161043b9190611acf565b60405180910390f35b34801561045057600080fd5b5061046b60048036038101906104669190611b74565b610bf7565b005b60606007805461047c90611c7a565b80601f01602080910402602001604051908101604052809291908181526020018280546104a890611c7a565b80156104f55780601f106104ca576101008083540402835291602001916104f5565b820191906000526020600020905b8154815290600101906020018083116104d857829003601f168201915b5050505050905090565b600061051361050c610c98565b8484610ca0565b6001905092915050565b600069d3c21bcecceda1000000905090565b600061053c848484610e69565b6105dc84610548610c98565b84600a60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610592610c98565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546105d79190611cda565b610ca0565b600190509392505050565b60006012905090565b60025481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610647610c98565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106cb90611d5a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61079a610c98565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610827576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081e90611d5a565b60405180910390fd5b69d3c21bcecceda1000000600681905550565b60065481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610871610c98565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108f590611d5a565b60405180910390fd5b81600281905550806003819055505050565b60606008805461091f90611c7a565b80601f016020809104026020016040519081016040528092919081815260200182805461094b90611c7a565b80156109985780601f1061096d57610100808354040283529160200191610998565b820191906000526020600020905b81548152906001019060200180831161097b57829003601f168201915b5050505050905090565b60006109b66109af610c98565b8484610e69565b6001905092915050565b6109c8610c98565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4c90611d5a565b60405180910390fd5b6001600460006101000a81548160ff021916908360ff16021790555043600581905550565b60035481565b610a88610c98565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0c90611d5a565b60405180910390fd5b6001600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610bff610c98565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8390611d5a565b60405180910390fd5b610c95816117d3565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0690611dec565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d7590611e7e565b60405180910390fd5b80600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610e5c9190611acf565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610ed8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ecf90611f10565b60405180910390fd5b633b9aca008111610f1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1590611f7c565b60405180910390fd5b6000600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610fc15750600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15610fcf57600090506114b3565b6000600460009054906101000a900460ff1660ff1614158015610ff457506006548211155b611033576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102a9061200e565b60405180910390fd5b6001600460019054906101000a900460ff1660ff16036111645781600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461109c9190611cda565b9250508190555081600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546110f2919061202e565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516111569190611acf565b60405180910390a3506117ce565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036111c15760025490506114b2565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114ac576000600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905068878678326eac9000008111801561128257506000600460019054906101000a900460ff1660ff16145b156114a15769043c33c19375648000008111156112a75769043c33c193756480000090505b6001600460016101000a81548160ff021916908360ff1602179055506000600267ffffffffffffffff8111156112e0576112df612062565b5b60405190808252806020026020018201604052801561130e5781602001602082028036833780820191505090505b509050308160008151811061132657611325612091565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f00000000000000000000000000000000000000000000000000000000000000008160018151811061139557611394612091565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac947836000847f0000000000000000000000000000000000000000000000000000000000000000426040518663ffffffff1660e01b8152600401611451959493929190612218565b600060405180830381600087803b15801561146b57600080fd5b505af115801561147f573d6000803e3d6000fd5b505050506000600460016101000a81548160ff021916908360ff160217905550505b6003549150506114b1565b600090505b5b5b600081146116ba576000606482846114cb9190612272565b6114d591906122e3565b9050600081846114e59190611cda565b905083600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546115369190611cda565b9250508190555080600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461158c919061202e565b9250508190555081600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546115e2919061202e565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516116469190611acf565b60405180910390a38473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516116ab9190611acf565b60405180910390a350506117cc565b81600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546117099190611cda565b9250508190555081600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461175f919061202e565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117c39190611acf565b60405180910390a35b505b505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611842576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161183990612386565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561193957808201518184015260208101905061191e565b60008484015250505050565b6000601f19601f8301169050919050565b6000611961826118ff565b61196b818561190a565b935061197b81856020860161191b565b61198481611945565b840191505092915050565b600060208201905081810360008301526119a98184611956565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006119e1826119b6565b9050919050565b6119f1816119d6565b81146119fc57600080fd5b50565b600081359050611a0e816119e8565b92915050565b6000819050919050565b611a2781611a14565b8114611a3257600080fd5b50565b600081359050611a4481611a1e565b92915050565b60008060408385031215611a6157611a606119b1565b5b6000611a6f858286016119ff565b9250506020611a8085828601611a35565b9150509250929050565b60008115159050919050565b611a9f81611a8a565b82525050565b6000602082019050611aba6000830184611a96565b92915050565b611ac981611a14565b82525050565b6000602082019050611ae46000830184611ac0565b92915050565b600080600060608486031215611b0357611b026119b1565b5b6000611b11868287016119ff565b9350506020611b22868287016119ff565b9250506040611b3386828701611a35565b9150509250925092565b600060ff82169050919050565b611b5381611b3d565b82525050565b6000602082019050611b6e6000830184611b4a565b92915050565b600060208284031215611b8a57611b896119b1565b5b6000611b98848285016119ff565b91505092915050565b611baa816119d6565b82525050565b6000602082019050611bc56000830184611ba1565b92915050565b60008060408385031215611be257611be16119b1565b5b6000611bf085828601611a35565b9250506020611c0185828601611a35565b9150509250929050565b60008060408385031215611c2257611c216119b1565b5b6000611c30858286016119ff565b9250506020611c41858286016119ff565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611c9257607f821691505b602082108103611ca557611ca4611c4b565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611ce582611a14565b9150611cf083611a14565b9250828203905081811115611d0857611d07611cab565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611d4460208361190a565b9150611d4f82611d0e565b602082019050919050565b60006020820190508181036000830152611d7381611d37565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611dd660248361190a565b9150611de182611d7a565b604082019050919050565b60006020820190508181036000830152611e0581611dc9565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611e6860228361190a565b9150611e7382611e0c565b604082019050919050565b60006020820190508181036000830152611e9781611e5b565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000611efa60258361190a565b9150611f0582611e9e565b604082019050919050565b60006020820190508181036000830152611f2981611eed565b9050919050565b7f4d696e207472616e7366657220616d7400000000000000000000000000000000600082015250565b6000611f6660108361190a565b9150611f7182611f30565b602082019050919050565b60006020820190508181036000830152611f9581611f59565b9050919050565b7f4c61756e6368202f204d6178205478416d6f756e74203125206174206c61756e60008201527f6368000000000000000000000000000000000000000000000000000000000000602082015250565b6000611ff860228361190a565b915061200382611f9c565b604082019050919050565b6000602082019050818103600083015261202781611feb565b9050919050565b600061203982611a14565b915061204483611a14565b925082820190508082111561205c5761205b611cab565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b6000819050919050565b60006120ef6120ea6120e5846120c0565b6120ca565b611a14565b9050919050565b6120ff816120d4565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61213a816119d6565b82525050565b600061214c8383612131565b60208301905092915050565b6000602082019050919050565b600061217082612105565b61217a8185612110565b935061218583612121565b8060005b838110156121b657815161219d8882612140565b97506121a883612158565b925050600181019050612189565b5085935050505092915050565b60006121de6121d96121d4846119b6565b6120ca565b6119b6565b9050919050565b60006121f0826121c3565b9050919050565b6000612202826121e5565b9050919050565b612212816121f7565b82525050565b600060a08201905061222d6000830188611ac0565b61223a60208301876120f6565b818103604083015261224c8186612165565b905061225b6060830185612209565b6122686080830184611ac0565b9695505050505050565b600061227d82611a14565b915061228883611a14565b925082820261229681611a14565b915082820484148315176122ad576122ac611cab565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006122ee82611a14565b91506122f983611a14565b925082612309576123086122b4565b5b828204905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061237060268361190a565b915061237b82612314565b604082019050919050565b6000602082019050818103600083015261239f81612363565b905091905056fea26469706673582212207afe0fb896f845f5d14e1b30e05aadb21ee253a04e9e210e1e1be24e9878bd1c64736f6c63430008120033

Deployed Bytecode

0x6080604052600436106101185760003560e01c80638c0b5e22116100a0578063c9567bf911610064578063c9567bf91461039c578063cc1776d3146103b3578063dba9d420146103de578063dd62ed3e14610407578063f2fde38b146104445761011f565b80638c0b5e22146102b55780638da5cb5b146102e05780639036ed4d1461030b57806395d89b4114610334578063a9059cbb1461035f5761011f565b8063313ce567116100e7578063313ce567146101f45780634f7041a51461021f57806370a082311461024a578063715018a614610287578063751039fc1461029e5761011f565b806306fdde0314610124578063095ea7b31461014f57806318160ddd1461018c57806323b872dd146101b75761011f565b3661011f57005b600080fd5b34801561013057600080fd5b5061013961046d565b604051610146919061198f565b60405180910390f35b34801561015b57600080fd5b5061017660048036038101906101719190611a4a565b6104ff565b6040516101839190611aa5565b60405180910390f35b34801561019857600080fd5b506101a161051d565b6040516101ae9190611acf565b60405180910390f35b3480156101c357600080fd5b506101de60048036038101906101d99190611aea565b61052f565b6040516101eb9190611aa5565b60405180910390f35b34801561020057600080fd5b506102096105e7565b6040516102169190611b59565b60405180910390f35b34801561022b57600080fd5b506102346105f0565b6040516102419190611acf565b60405180910390f35b34801561025657600080fd5b50610271600480360381019061026c9190611b74565b6105f6565b60405161027e9190611acf565b60405180910390f35b34801561029357600080fd5b5061029c61063f565b005b3480156102aa57600080fd5b506102b3610792565b005b3480156102c157600080fd5b506102ca61083a565b6040516102d79190611acf565b60405180910390f35b3480156102ec57600080fd5b506102f5610840565b6040516103029190611bb0565b60405180910390f35b34801561031757600080fd5b50610332600480360381019061032d9190611bcb565b610869565b005b34801561034057600080fd5b50610349610910565b604051610356919061198f565b60405180910390f35b34801561036b57600080fd5b5061038660048036038101906103819190611a4a565b6109a2565b6040516103939190611aa5565b60405180910390f35b3480156103a857600080fd5b506103b16109c0565b005b3480156103bf57600080fd5b506103c8610a7a565b6040516103d59190611acf565b60405180910390f35b3480156103ea57600080fd5b5061040560048036038101906104009190611b74565b610a80565b005b34801561041357600080fd5b5061042e60048036038101906104299190611c0b565b610b70565b60405161043b9190611acf565b60405180910390f35b34801561045057600080fd5b5061046b60048036038101906104669190611b74565b610bf7565b005b60606007805461047c90611c7a565b80601f01602080910402602001604051908101604052809291908181526020018280546104a890611c7a565b80156104f55780601f106104ca576101008083540402835291602001916104f5565b820191906000526020600020905b8154815290600101906020018083116104d857829003601f168201915b5050505050905090565b600061051361050c610c98565b8484610ca0565b6001905092915050565b600069d3c21bcecceda1000000905090565b600061053c848484610e69565b6105dc84610548610c98565b84600a60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610592610c98565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546105d79190611cda565b610ca0565b600190509392505050565b60006012905090565b60025481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610647610c98565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106cb90611d5a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61079a610c98565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610827576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081e90611d5a565b60405180910390fd5b69d3c21bcecceda1000000600681905550565b60065481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610871610c98565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108f590611d5a565b60405180910390fd5b81600281905550806003819055505050565b60606008805461091f90611c7a565b80601f016020809104026020016040519081016040528092919081815260200182805461094b90611c7a565b80156109985780601f1061096d57610100808354040283529160200191610998565b820191906000526020600020905b81548152906001019060200180831161097b57829003601f168201915b5050505050905090565b60006109b66109af610c98565b8484610e69565b6001905092915050565b6109c8610c98565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4c90611d5a565b60405180910390fd5b6001600460006101000a81548160ff021916908360ff16021790555043600581905550565b60035481565b610a88610c98565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0c90611d5a565b60405180910390fd5b6001600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610bff610c98565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8390611d5a565b60405180910390fd5b610c95816117d3565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0690611dec565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d7590611e7e565b60405180910390fd5b80600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610e5c9190611acf565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610ed8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ecf90611f10565b60405180910390fd5b633b9aca008111610f1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1590611f7c565b60405180910390fd5b6000600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610fc15750600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15610fcf57600090506114b3565b6000600460009054906101000a900460ff1660ff1614158015610ff457506006548211155b611033576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102a9061200e565b60405180910390fd5b6001600460019054906101000a900460ff1660ff16036111645781600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461109c9190611cda565b9250508190555081600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546110f2919061202e565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516111569190611acf565b60405180910390a3506117ce565b7f0000000000000000000000006519ed35256e65afb72f77e418ae16d663ede70273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036111c15760025490506114b2565b7f0000000000000000000000006519ed35256e65afb72f77e418ae16d663ede70273ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114ac576000600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905068878678326eac9000008111801561128257506000600460019054906101000a900460ff1660ff16145b156114a15769043c33c19375648000008111156112a75769043c33c193756480000090505b6001600460016101000a81548160ff021916908360ff1602179055506000600267ffffffffffffffff8111156112e0576112df612062565b5b60405190808252806020026020018201604052801561130e5781602001602082028036833780820191505090505b509050308160008151811061132657611325612091565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc28160018151811061139557611394612091565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac947836000847f0000000000000000000000003b20e22ebe840787c1f9344946113253658d4c19426040518663ffffffff1660e01b8152600401611451959493929190612218565b600060405180830381600087803b15801561146b57600080fd5b505af115801561147f573d6000803e3d6000fd5b505050506000600460016101000a81548160ff021916908360ff160217905550505b6003549150506114b1565b600090505b5b5b600081146116ba576000606482846114cb9190612272565b6114d591906122e3565b9050600081846114e59190611cda565b905083600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546115369190611cda565b9250508190555080600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461158c919061202e565b9250508190555081600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546115e2919061202e565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516116469190611acf565b60405180910390a38473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516116ab9190611acf565b60405180910390a350506117cc565b81600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546117099190611cda565b9250508190555081600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461175f919061202e565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117c39190611acf565b60405180910390a35b505b505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611842576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161183990612386565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561193957808201518184015260208101905061191e565b60008484015250505050565b6000601f19601f8301169050919050565b6000611961826118ff565b61196b818561190a565b935061197b81856020860161191b565b61198481611945565b840191505092915050565b600060208201905081810360008301526119a98184611956565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006119e1826119b6565b9050919050565b6119f1816119d6565b81146119fc57600080fd5b50565b600081359050611a0e816119e8565b92915050565b6000819050919050565b611a2781611a14565b8114611a3257600080fd5b50565b600081359050611a4481611a1e565b92915050565b60008060408385031215611a6157611a606119b1565b5b6000611a6f858286016119ff565b9250506020611a8085828601611a35565b9150509250929050565b60008115159050919050565b611a9f81611a8a565b82525050565b6000602082019050611aba6000830184611a96565b92915050565b611ac981611a14565b82525050565b6000602082019050611ae46000830184611ac0565b92915050565b600080600060608486031215611b0357611b026119b1565b5b6000611b11868287016119ff565b9350506020611b22868287016119ff565b9250506040611b3386828701611a35565b9150509250925092565b600060ff82169050919050565b611b5381611b3d565b82525050565b6000602082019050611b6e6000830184611b4a565b92915050565b600060208284031215611b8a57611b896119b1565b5b6000611b98848285016119ff565b91505092915050565b611baa816119d6565b82525050565b6000602082019050611bc56000830184611ba1565b92915050565b60008060408385031215611be257611be16119b1565b5b6000611bf085828601611a35565b9250506020611c0185828601611a35565b9150509250929050565b60008060408385031215611c2257611c216119b1565b5b6000611c30858286016119ff565b9250506020611c41858286016119ff565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611c9257607f821691505b602082108103611ca557611ca4611c4b565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611ce582611a14565b9150611cf083611a14565b9250828203905081811115611d0857611d07611cab565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611d4460208361190a565b9150611d4f82611d0e565b602082019050919050565b60006020820190508181036000830152611d7381611d37565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611dd660248361190a565b9150611de182611d7a565b604082019050919050565b60006020820190508181036000830152611e0581611dc9565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611e6860228361190a565b9150611e7382611e0c565b604082019050919050565b60006020820190508181036000830152611e9781611e5b565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000611efa60258361190a565b9150611f0582611e9e565b604082019050919050565b60006020820190508181036000830152611f2981611eed565b9050919050565b7f4d696e207472616e7366657220616d7400000000000000000000000000000000600082015250565b6000611f6660108361190a565b9150611f7182611f30565b602082019050919050565b60006020820190508181036000830152611f9581611f59565b9050919050565b7f4c61756e6368202f204d6178205478416d6f756e74203125206174206c61756e60008201527f6368000000000000000000000000000000000000000000000000000000000000602082015250565b6000611ff860228361190a565b915061200382611f9c565b604082019050919050565b6000602082019050818103600083015261202781611feb565b9050919050565b600061203982611a14565b915061204483611a14565b925082820190508082111561205c5761205b611cab565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b6000819050919050565b60006120ef6120ea6120e5846120c0565b6120ca565b611a14565b9050919050565b6120ff816120d4565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61213a816119d6565b82525050565b600061214c8383612131565b60208301905092915050565b6000602082019050919050565b600061217082612105565b61217a8185612110565b935061218583612121565b8060005b838110156121b657815161219d8882612140565b97506121a883612158565b925050600181019050612189565b5085935050505092915050565b60006121de6121d96121d4846119b6565b6120ca565b6119b6565b9050919050565b60006121f0826121c3565b9050919050565b6000612202826121e5565b9050919050565b612212816121f7565b82525050565b600060a08201905061222d6000830188611ac0565b61223a60208301876120f6565b818103604083015261224c8186612165565b905061225b6060830185612209565b6122686080830184611ac0565b9695505050505050565b600061227d82611a14565b915061228883611a14565b925082820261229681611a14565b915082820484148315176122ad576122ac611cab565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006122ee82611a14565b91506122f983611a14565b925082612309576123086122b4565b5b828204905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061237060268361190a565b915061237b82612314565b604082019050919050565b6000602082019050818103600083015261239f81612363565b905091905056fea26469706673582212207afe0fb896f845f5d14e1b30e05aadb21ee253a04e9e210e1e1be24e9878bd1c64736f6c63430008120033

Deployed Bytecode Sourcemap

2833:6871:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4794:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5704:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5071:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5905:350;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4980:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3264:21;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5179:118;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2160:148;;;;;;;;;;;;;:::i;:::-;;6884:88;;;;;;;;;;;;;:::i;:::-;;3423:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1555:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6980:145;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4885:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5305:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6640:108;;;;;;;;;;;;;:::i;:::-;;3292:22;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6756:120;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5512:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1769:109;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4794:83;4831:13;4864:5;4857:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4794:83;:::o;5704:193::-;5806:4;5828:39;5837:12;:10;:12::i;:::-;5851:7;5860:6;5828:8;:39::i;:::-;5885:4;5878:11;;5704:193;;;;:::o;5071:100::-;5124:7;2927:12;5144:19;;5071:100;:::o;5905:350::-;6037:4;6054:36;6064:6;6072:9;6083:6;6054:9;:36::i;:::-;6101:124;6124:6;6145:12;:10;:12::i;:::-;6208:6;6172:11;:19;6184:6;6172:19;;;;;;;;;;;;;;;:33;6192:12;:10;:12::i;:::-;6172:33;;;;;;;;;;;;;;;;:42;;;;:::i;:::-;6101:8;:124::i;:::-;6243:4;6236:11;;5905:350;;;;;:::o;4980:83::-;5021:5;3085:2;5039:16;;4980:83;:::o;3264:21::-;;;;:::o;5179:118::-;5245:7;5272:8;:17;5281:7;5272:17;;;;;;;;;;;;;;;;5265:24;;5179:118;;;:::o;2160:148::-;1692:12;:10;:12::i;:::-;1682:22;;:6;;;;;;;;;;:22;;;1674:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2267:1:::1;2230:40;;2251:6;::::0;::::1;;;;;;;;2230:40;;;;;;;;;;;;2298:1;2281:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2160:148::o:0;6884:88::-;1692:12;:10;:12::i;:::-;1682:22;;:6;;;;;;;;;;:22;;;1674:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2927:12:::1;6938:11;:26;;;;6884:88::o:0;3423:39::-;;;;:::o;1555:79::-;1593:7;1620:6;;;;;;;;;;;1613:13;;1555:79;:::o;6980:145::-;1692:12;:10;:12::i;:::-;1682:22;;:6;;;;;;;;;;:22;;;1674:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7077:9:::1;7068:6;:18;;;;7107:10;7097:7;:20;;;;6980:145:::0;;:::o;4885:87::-;4924:13;4957:7;4950:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4885:87;:::o;5305:199::-;5410:4;5432:42;5442:12;:10;:12::i;:::-;5456:9;5467:6;5432:9;:42::i;:::-;5492:4;5485:11;;5305:199;;;;:::o;6640:108::-;1692:12;:10;:12::i;:::-;1682:22;;:6;;;;;;;;;;:22;;;1674:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6702:1:::1;6693:6;;:10;;;;;;;;;;;;;;;;;;6728:12;6714:11;:26;;;;6640:108::o:0;3292:22::-;;;;:::o;6756:120::-;1692:12;:10;:12::i;:::-;1682:22;;:6;;;;;;;;;;:22;;;1674:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6864:4:::1;6829:24;:32;6854:6;6829:32;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;6756:120:::0;:::o;5512:184::-;5629:7;5661:11;:18;5673:5;5661:18;;;;;;;;;;;;;;;:27;5680:7;5661:27;;;;;;;;;;;;;;;;5654:34;;5512:184;;;;:::o;1769:109::-;1692:12;:10;:12::i;:::-;1682:22;;:6;;;;;;;;;;:22;;;1674:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1842:28:::1;1861:8;1842:18;:28::i;:::-;1769:109:::0;:::o;269:98::-;322:7;349:10;342:17;;269:98;:::o;6263:369::-;6407:1;6390:19;;:5;:19;;;6382:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6488:1;6469:21;;:7;:21;;;6461:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6570:6;6540:11;:18;6552:5;6540:18;;;;;;;;;;;;;;;:27;6559:7;6540:27;;;;;;;;;;;;;;;:36;;;;6608:7;6592:32;;6601:5;6592:32;;;6617:6;6592:32;;;;;;:::i;:::-;;;;;;;;6263:369;;;:::o;7133:2531::-;7271:1;7255:18;;:4;:18;;;7247:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7343:3;7334:6;:12;7326:41;;;;;;;;;;;;:::i;:::-;;;;;;;;;7380:12;7407:24;:30;7432:4;7407:30;;;;;;;;;;;;;;;;;;;;;;;;;:62;;;;7441:24;:28;7466:2;7441:28;;;;;;;;;;;;;;;;;;;;;;;;;7407:62;7403:1604;;;7493:1;7486:8;;7403:1604;;;7563:1;7553:6;;;;;;;;;;;:11;;;;:36;;;;;7578:11;;7568:6;:21;;7553:36;7527:132;;;;;;;;;;;;:::i;:::-;;;;;;;;;7700:1;7680:16;;;;;;;;;;;:21;;;7676:239;;7775:6;7757:8;:14;7766:4;7757:14;;;;;;;;;;;;;;;;:24;;;;;;;:::i;:::-;;;;;;;;7816:6;7800:8;:12;7809:2;7800:12;;;;;;;;;;;;;;;;:22;;;;;;;:::i;:::-;;;;;;;;7863:2;7848:26;;7857:4;7848:26;;;7867:6;7848:26;;;;;;:::i;:::-;;;;;;;;7893:7;;;7676:239;7943:13;7935:21;;:4;:21;;;7931:1065;;7984:6;;7977:13;;7931:1065;;;8022:13;8016:19;;:2;:19;;;8012:984;;8056:20;8079:8;:23;8096:4;8079:23;;;;;;;;;;;;;;;;8056:46;;3035:8;8125:12;:22;:47;;;;;8171:1;8151:16;;;;;;;;;;;:21;;;8125:47;8121:778;;;2984:9;8201:12;:25;8197:107;;;2984:9;8255:25;;8197:107;8345:1;8326:16;;:20;;;;;;;;;;;;;;;;;;8369:21;8407:1;8393:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8369:40;;8450:4;8432;8437:1;8432:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;8488:4;8478;8483:1;8478:7;;;;;;;;:::i;:::-;;;;;;;:14;;;;;;;;;;;8515:15;:92;;;8638:12;8681:1;8713:4;8748:15;8794;8515:321;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8878:1;8859:16;;:20;;;;;;;;;;;;;;;;;;8174:725;8121:778;8924:7;;8917:14;;8037:910;8012:984;;;8979:1;8972:8;;8012:984;7931:1065;7403:1604;9076:1;9068:4;:9;9064:593;;9122:17;9160:3;9152:4;9143:6;:13;;;;:::i;:::-;9142:21;;;;:::i;:::-;9122:41;;9178:22;9212:9;9203:6;:18;;;;:::i;:::-;9178:43;;9256:6;9238:8;:14;9247:4;9238:14;;;;;;;;;;;;;;;;:24;;;;;;;:::i;:::-;;;;;;;;9293:14;9277:8;:12;9286:2;9277:12;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;9349:9;9322:8;:23;9339:4;9322:23;;;;;;;;;;;;;;;;:36;;;;;;;:::i;:::-;;;;;;;;9401:4;9378:40;;9387:4;9378:40;;;9408:9;9378:40;;;;;;:::i;:::-;;;;;;;;9453:2;9438:34;;9447:4;9438:34;;;9457:14;9438:34;;;;;;:::i;:::-;;;;;;;;9079:405;;9064:593;;;9554:6;9536:8;:14;9545:4;9536:14;;;;;;;;;;;;;;;;:24;;;;;;;:::i;:::-;;;;;;;;9591:6;9575:8;:12;9584:2;9575:12;;;;;;;;;;;;;;;;:22;;;;;;;:::i;:::-;;;;;;;;9634:2;9619:26;;9628:4;9619:26;;;9638:6;9619:26;;;;;;:::i;:::-;;;;;;;;9064:593;7236:2428;7133:2531;;;;:::o;1886:266::-;1994:1;1974:22;;:8;:22;;;1952:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;2107:8;2078:38;;2099:6;;;;;;;;;;2078:38;;;;;;;;;;;;2136:8;2127:6;;:17;;;;;;;;;;;;;;;;;;1886:266;:::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:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:86::-;4458:7;4498:4;4491:5;4487:16;4476:27;;4423:86;;;:::o;4515:112::-;4598:22;4614:5;4598:22;:::i;:::-;4593:3;4586:35;4515:112;;:::o;4633:214::-;4722:4;4760:2;4749:9;4745:18;4737:26;;4773:67;4837:1;4826:9;4822:17;4813:6;4773:67;:::i;:::-;4633:214;;;;:::o;4853:329::-;4912:6;4961:2;4949:9;4940:7;4936:23;4932:32;4929:119;;;4967:79;;:::i;:::-;4929:119;5087:1;5112:53;5157:7;5148:6;5137:9;5133:22;5112:53;:::i;:::-;5102:63;;5058:117;4853:329;;;;:::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:180::-;6548:77;6545:1;6538:88;6645:4;6642:1;6635:15;6669:4;6666:1;6659:15;6686:320;6730:6;6767:1;6761:4;6757:12;6747:22;;6814:1;6808:4;6804:12;6835:18;6825:81;;6891:4;6883:6;6879:17;6869:27;;6825:81;6953:2;6945:6;6942:14;6922:18;6919:38;6916:84;;6972:18;;:::i;:::-;6916:84;6737:269;6686:320;;;:::o;7012:180::-;7060:77;7057:1;7050:88;7157:4;7154:1;7147:15;7181:4;7178:1;7171:15;7198:194;7238:4;7258:20;7276:1;7258:20;:::i;:::-;7253:25;;7292:20;7310:1;7292:20;:::i;:::-;7287:25;;7336:1;7333;7329:9;7321:17;;7360:1;7354:4;7351:11;7348:37;;;7365:18;;:::i;:::-;7348:37;7198:194;;;;:::o;7398:182::-;7538:34;7534:1;7526:6;7522:14;7515:58;7398:182;:::o;7586:366::-;7728:3;7749:67;7813:2;7808:3;7749:67;:::i;:::-;7742:74;;7825:93;7914:3;7825:93;:::i;:::-;7943:2;7938:3;7934:12;7927:19;;7586:366;;;:::o;7958:419::-;8124:4;8162:2;8151:9;8147:18;8139:26;;8211:9;8205:4;8201:20;8197:1;8186:9;8182:17;8175:47;8239:131;8365:4;8239:131;:::i;:::-;8231:139;;7958:419;;;:::o;8383:223::-;8523:34;8519:1;8511:6;8507:14;8500:58;8592:6;8587:2;8579:6;8575:15;8568:31;8383:223;:::o;8612:366::-;8754:3;8775:67;8839:2;8834:3;8775:67;:::i;:::-;8768:74;;8851:93;8940:3;8851:93;:::i;:::-;8969:2;8964:3;8960:12;8953:19;;8612:366;;;:::o;8984:419::-;9150:4;9188:2;9177:9;9173:18;9165:26;;9237:9;9231:4;9227:20;9223:1;9212:9;9208:17;9201:47;9265:131;9391:4;9265:131;:::i;:::-;9257:139;;8984:419;;;:::o;9409:221::-;9549:34;9545:1;9537:6;9533:14;9526:58;9618:4;9613:2;9605:6;9601:15;9594:29;9409:221;:::o;9636:366::-;9778:3;9799:67;9863:2;9858:3;9799:67;:::i;:::-;9792:74;;9875:93;9964:3;9875:93;:::i;:::-;9993:2;9988:3;9984:12;9977:19;;9636:366;;;:::o;10008:419::-;10174:4;10212:2;10201:9;10197:18;10189:26;;10261:9;10255:4;10251:20;10247:1;10236:9;10232:17;10225:47;10289:131;10415:4;10289:131;:::i;:::-;10281:139;;10008:419;;;:::o;10433:224::-;10573:34;10569:1;10561:6;10557:14;10550:58;10642:7;10637:2;10629:6;10625:15;10618:32;10433:224;:::o;10663:366::-;10805:3;10826:67;10890:2;10885:3;10826:67;:::i;:::-;10819:74;;10902:93;10991:3;10902:93;:::i;:::-;11020:2;11015:3;11011:12;11004:19;;10663:366;;;:::o;11035:419::-;11201:4;11239:2;11228:9;11224:18;11216:26;;11288:9;11282:4;11278:20;11274:1;11263:9;11259:17;11252:47;11316:131;11442:4;11316:131;:::i;:::-;11308:139;;11035:419;;;:::o;11460:166::-;11600:18;11596:1;11588:6;11584:14;11577:42;11460:166;:::o;11632:366::-;11774:3;11795:67;11859:2;11854:3;11795:67;:::i;:::-;11788:74;;11871:93;11960:3;11871:93;:::i;:::-;11989:2;11984:3;11980:12;11973:19;;11632:366;;;:::o;12004:419::-;12170:4;12208:2;12197:9;12193:18;12185:26;;12257:9;12251:4;12247:20;12243:1;12232:9;12228:17;12221:47;12285:131;12411:4;12285:131;:::i;:::-;12277:139;;12004:419;;;:::o;12429:221::-;12569:34;12565:1;12557:6;12553:14;12546:58;12638:4;12633:2;12625:6;12621:15;12614:29;12429:221;:::o;12656:366::-;12798:3;12819:67;12883:2;12878:3;12819:67;:::i;:::-;12812:74;;12895:93;12984:3;12895:93;:::i;:::-;13013:2;13008:3;13004:12;12997:19;;12656:366;;;:::o;13028:419::-;13194:4;13232:2;13221:9;13217:18;13209:26;;13281:9;13275:4;13271:20;13267:1;13256:9;13252:17;13245:47;13309:131;13435:4;13309:131;:::i;:::-;13301:139;;13028:419;;;:::o;13453:191::-;13493:3;13512:20;13530:1;13512:20;:::i;:::-;13507:25;;13546:20;13564:1;13546:20;:::i;:::-;13541:25;;13589:1;13586;13582:9;13575:16;;13610:3;13607:1;13604:10;13601:36;;;13617:18;;:::i;:::-;13601:36;13453:191;;;;:::o;13650:180::-;13698:77;13695:1;13688:88;13795:4;13792:1;13785:15;13819:4;13816:1;13809:15;13836:180;13884:77;13881:1;13874:88;13981:4;13978:1;13971:15;14005:4;14002:1;13995:15;14022:85;14067:7;14096:5;14085:16;;14022:85;;;:::o;14113:60::-;14141:3;14162:5;14155:12;;14113:60;;;:::o;14179:158::-;14237:9;14270:61;14288:42;14297:32;14323:5;14297:32;:::i;:::-;14288:42;:::i;:::-;14270:61;:::i;:::-;14257:74;;14179:158;;;:::o;14343:147::-;14438:45;14477:5;14438:45;:::i;:::-;14433:3;14426:58;14343:147;;:::o;14496:114::-;14563:6;14597:5;14591:12;14581:22;;14496:114;;;:::o;14616:184::-;14715:11;14749:6;14744:3;14737:19;14789:4;14784:3;14780:14;14765:29;;14616:184;;;;:::o;14806:132::-;14873:4;14896:3;14888:11;;14926:4;14921:3;14917:14;14909:22;;14806:132;;;:::o;14944:108::-;15021:24;15039:5;15021:24;:::i;:::-;15016:3;15009:37;14944:108;;:::o;15058:179::-;15127:10;15148:46;15190:3;15182:6;15148:46;:::i;:::-;15226:4;15221:3;15217:14;15203:28;;15058:179;;;;:::o;15243:113::-;15313:4;15345;15340:3;15336:14;15328:22;;15243:113;;;:::o;15392:732::-;15511:3;15540:54;15588:5;15540:54;:::i;:::-;15610:86;15689:6;15684:3;15610:86;:::i;:::-;15603:93;;15720:56;15770:5;15720:56;:::i;:::-;15799:7;15830:1;15815:284;15840:6;15837:1;15834:13;15815:284;;;15916:6;15910:13;15943:63;16002:3;15987:13;15943:63;:::i;:::-;15936:70;;16029:60;16082:6;16029:60;:::i;:::-;16019:70;;15875:224;15862:1;15859;15855:9;15850:14;;15815:284;;;15819:14;16115:3;16108:10;;15516:608;;;15392:732;;;;:::o;16130:142::-;16180:9;16213:53;16231:34;16240:24;16258:5;16240:24;:::i;:::-;16231:34;:::i;:::-;16213:53;:::i;:::-;16200:66;;16130:142;;;:::o;16278:126::-;16328:9;16361:37;16392:5;16361:37;:::i;:::-;16348:50;;16278:126;;;:::o;16410:134::-;16468:9;16501:37;16532:5;16501:37;:::i;:::-;16488:50;;16410:134;;;:::o;16550:147::-;16645:45;16684:5;16645:45;:::i;:::-;16640:3;16633:58;16550:147;;:::o;16703:847::-;16974:4;17012:3;17001:9;16997:19;16989:27;;17026:71;17094:1;17083:9;17079:17;17070:6;17026:71;:::i;:::-;17107:80;17183:2;17172:9;17168:18;17159:6;17107:80;:::i;:::-;17234:9;17228:4;17224:20;17219:2;17208:9;17204:18;17197:48;17262:108;17365:4;17356:6;17262:108;:::i;:::-;17254:116;;17380:80;17456:2;17445:9;17441:18;17432:6;17380:80;:::i;:::-;17470:73;17538:3;17527:9;17523:19;17514:6;17470:73;:::i;:::-;16703:847;;;;;;;;:::o;17556:410::-;17596:7;17619:20;17637:1;17619:20;:::i;:::-;17614:25;;17653:20;17671:1;17653:20;:::i;:::-;17648:25;;17708:1;17705;17701:9;17730:30;17748:11;17730:30;:::i;:::-;17719:41;;17909:1;17900:7;17896:15;17893:1;17890:22;17870:1;17863:9;17843:83;17820:139;;17939:18;;:::i;:::-;17820:139;17604:362;17556:410;;;;:::o;17972:180::-;18020:77;18017:1;18010:88;18117:4;18114:1;18107:15;18141:4;18138:1;18131:15;18158:185;18198:1;18215:20;18233:1;18215:20;:::i;:::-;18210:25;;18249:20;18267:1;18249:20;:::i;:::-;18244:25;;18288:1;18278:35;;18293:18;;:::i;:::-;18278:35;18335:1;18332;18328:9;18323:14;;18158:185;;;;:::o;18349:225::-;18489:34;18485:1;18477:6;18473:14;18466:58;18558:8;18553:2;18545:6;18541:15;18534:33;18349:225;:::o;18580:366::-;18722:3;18743:67;18807:2;18802:3;18743:67;:::i;:::-;18736:74;;18819:93;18908:3;18819:93;:::i;:::-;18937:2;18932:3;18928:12;18921:19;;18580:366;;;:::o;18952:419::-;19118:4;19156:2;19145:9;19141:18;19133:26;;19205:9;19199:4;19195:20;19191:1;19180:9;19176:17;19169:47;19233:131;19359:4;19233:131;:::i;:::-;19225:139;;18952:419;;;:::o

Swarm Source

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