ETH Price: $3,898.08 (+0.36%)

Token

ERC-20: Financial Kekduct Autority (FKA)
 

Overview

Max Total Supply

1,000,000 FKA

Holders

66

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
981.480212104573730968 FKA

Value
$0.00
0xf950f1bf38f31b2c3267bea0eecbd600e19503b4
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:
FKA

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2024-05-07
*/

// SPDX-License-Identifier: MIT

/**
Website - https://kekduct.xyz
Twitter - https://x.com/kekduct2024
Telegram - https://t.me/kekduct
**/

pragma solidity 0.8.24;

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

    function withdrawStuckEther() public onlyOwner {
        require(address(this).balance > 0, "No Ether left to withdraw");
        payable(owner()).transfer(address(this).balance);
    }
}

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 FKA is Context, IERC20, Ownable {
    uint256 private constant _totalSupply = 1_000_000e18;
    uint256 private constant onePercent = 10_000e18;
    uint256 private constant minSwap = 1_000e18;
    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 = 10_000e18;

    string private constant _name = "Financial Kekduct Autority";
    string private constant _symbol = "FKA";

    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 = 20;
        sellTax = 40;

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

        marketingWallet = payable(msg.sender);
        _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 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()] - 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 {
        require(newBuyTax <= 40 && newBuyTax > 0, "must be less than 40");
        require(newSellTax <= 40 && newSellTax > 0, "must be less than 40");
        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, "1% max");

            if (inSwapAndLiquify == 1) {
                _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;
            }
        }

        if (_tax != 0) {
            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 {
            _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":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"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":"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":"withdrawStuckEther","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

61010060405269021e19e0c9bab24000006006553480156200001f575f80fd5b505f62000031620006d660201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505060805173ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000161573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000187919062000742565b73ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250506014600281905550602860038190555060805173ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000216573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200023c919062000742565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060c0516040518363ffffffff1660e01b81526004016200027a92919062000783565b6020604051808303815f875af115801562000297573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002bd919062000742565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250503373ffffffffffffffffffffffffffffffffffffffff1660e08173ffffffffffffffffffffffffffffffffffffffff168152505069d3c21bcecceda100000060075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160095f60e05173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160095f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60085f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f60805173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60085f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f60805173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60085f60e05173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f60805173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555062000660620006d660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef69d3c21bcecceda1000000604051620006c89190620007c8565b60405180910390a3620007e3565b5f33905090565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6200070c82620006e1565b9050919050565b6200071e8162000700565b811462000729575f80fd5b50565b5f815190506200073c8162000713565b92915050565b5f602082840312156200075a5762000759620006dd565b5b5f62000769848285016200072c565b91505092915050565b6200077d8162000700565b82525050565b5f604082019050620007985f83018562000772565b620007a7602083018462000772565b9392505050565b5f819050919050565b620007c281620007ae565b82525050565b5f602082019050620007dd5f830184620007b7565b92915050565b60805160a05160c05160e0516124916200081e5f395f6114f401525f61144601525f818161125001526112ad01525f6114b501526124915ff3fe608060405260043610610122575f3560e01c80638da5cb5b1161009f578063c9567bf911610063578063c9567bf9146103ad578063cc1776d3146103c3578063dba9d420146103ed578063dd62ed3e14610415578063f2fde38b1461045157610129565b80638da5cb5b146102df5780639036ed4d1461030957806395d89b4114610331578063a32b9e181461035b578063a9059cbb1461037157610129565b80634f7041a5116100e65780634f7041a51461022357806370a082311461024d578063715018a614610289578063751039fc1461029f5780638c0b5e22146102b557610129565b806306fdde031461012d578063095ea7b31461015757806318160ddd1461019357806323b872dd146101bd578063313ce567146101f957610129565b3661012957005b5f80fd5b348015610138575f80fd5b50610141610479565b60405161014e9190611a50565b60405180910390f35b348015610162575f80fd5b5061017d60048036038101906101789190611b01565b6104b6565b60405161018a9190611b59565b60405180910390f35b34801561019e575f80fd5b506101a76104d3565b6040516101b49190611b81565b60405180910390f35b3480156101c8575f80fd5b506101e360048036038101906101de9190611b9a565b6104e4565b6040516101f09190611b59565b60405180910390f35b348015610204575f80fd5b5061020d610597565b60405161021a9190611c05565b60405180910390f35b34801561022e575f80fd5b5061023761059f565b6040516102449190611b81565b60405180910390f35b348015610258575f80fd5b50610273600480360381019061026e9190611c1e565b6105a5565b6040516102809190611b81565b60405180910390f35b348015610294575f80fd5b5061029d6105eb565b005b3480156102aa575f80fd5b506102b3610739565b005b3480156102c0575f80fd5b506102c96107e0565b6040516102d69190611b81565b60405180910390f35b3480156102ea575f80fd5b506102f36107e6565b6040516103009190611c58565b60405180910390f35b348015610314575f80fd5b5061032f600480360381019061032a9190611c71565b61080d565b005b34801561033c575f80fd5b50610345610951565b6040516103529190611a50565b60405180910390f35b348015610366575f80fd5b5061036f61098e565b005b34801561037c575f80fd5b5061039760048036038101906103929190611b01565b610ab1565b6040516103a49190611b59565b60405180910390f35b3480156103b8575f80fd5b506103c1610ace565b005b3480156103ce575f80fd5b506103d7610b86565b6040516103e49190611b81565b60405180910390f35b3480156103f8575f80fd5b50610413600480360381019061040e9190611c1e565b610b8c565b005b348015610420575f80fd5b5061043b60048036038101906104369190611caf565b610c78565b6040516104489190611b81565b60405180910390f35b34801561045c575f80fd5b5061047760048036038101906104729190611c1e565b610cfa565b005b60606040518060400160405280601a81526020017f46696e616e6369616c204b656b64756374204175746f72697479000000000000815250905090565b5f6104c96104c2610d9a565b8484610da1565b6001905092915050565b5f69d3c21bcecceda1000000905090565b5f6104f0848484610f64565b61058c846104fc610d9a565b8460085f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610543610d9a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546105879190611d1a565b610da1565b600190509392505050565b5f6012905090565b60025481565b5f60075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6105f3610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461067f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067690611d97565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610741610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c490611d97565b60405180910390fd5b69d3c21bcecceda1000000600681905550565b60065481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610815610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161089890611d97565b60405180910390fd5b602882111580156108b157505f82115b6108f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e790611dff565b60405180910390fd5b6028811115801561090057505f81115b61093f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093690611dff565b60405180910390fd5b81600281905550806003819055505050565b60606040518060400160405280600381526020017f464b410000000000000000000000000000000000000000000000000000000000815250905090565b610996610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1990611d97565b60405180910390fd5b5f4711610a64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5b90611e67565b60405180910390fd5b610a6c6107e6565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610aae573d5f803e3d5ffd5b50565b5f610ac4610abd610d9a565b8484610f64565b6001905092915050565b610ad6610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5990611d97565b60405180910390fd5b600160045f6101000a81548160ff021916908360ff16021790555043600581905550565b60035481565b610b94610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c20576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1790611d97565b60405180910390fd5b600160095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b5f60085f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610d02610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d8e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8590611d97565b60405180910390fd5b610d978161189d565b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0690611ef5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7490611f83565b60405180910390fd5b8060085f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f579190611b81565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fd2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc990612011565b60405180910390fd5b633b9aca008111611018576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100f90612079565b60405180910390fd5b5f60095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806110b4575060095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b156110c1575f905061158f565b5f60045f9054906101000a900460ff1660ff16141580156110e457506006548211155b611123576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111a906120e1565b60405180910390fd5b6001600460019054906101000a900460ff1660ff160361124e578160075f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546111899190611d1a565b925050819055508160075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546111dc91906120ff565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112409190611b81565b60405180910390a350611898565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036112ab57600254905061158e565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611589575f60075f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050683635c9adc5dea000008111801561136857505f600460019054906101000a900460ff1660ff16145b1561157e5769021e19e0c9bab240000081111561138d5769021e19e0c9bab240000090505b6001600460016101000a81548160ff021916908360ff1602179055505f600267ffffffffffffffff8111156113c5576113c4612132565b5b6040519080825280602002602001820160405280156113f35781602001602082028036833780820191505090505b50905030815f8151811061140a5761140961215f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816001815181106114795761147861215f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac947835f847f0000000000000000000000000000000000000000000000000000000000000000426040518663ffffffff1660e01b81526004016115349594939291906122d7565b5f604051808303815f87803b15801561154b575f80fd5b505af115801561155d573d5f803e3d5ffd5b505050505f600460016101000a81548160ff021916908360ff160217905550505b60035491505061158d565b5f90505b5b5b5f811461178a575f606482846115a5919061232f565b6115af919061239d565b90505f81846115be9190611d1a565b90508360075f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461160c9190611d1a565b925050819055508060075f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461165f91906120ff565b925050819055508160075f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546116b291906120ff565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117169190611b81565b60405180910390a38473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161177b9190611b81565b60405180910390a35050611896565b8160075f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546117d69190611d1a565b925050819055508160075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461182991906120ff565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161188d9190611b81565b60405180910390a35b505b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361190b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119029061243d565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156119fd5780820151818401526020810190506119e2565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611a22826119c6565b611a2c81856119d0565b9350611a3c8185602086016119e0565b611a4581611a08565b840191505092915050565b5f6020820190508181035f830152611a688184611a18565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611a9d82611a74565b9050919050565b611aad81611a93565b8114611ab7575f80fd5b50565b5f81359050611ac881611aa4565b92915050565b5f819050919050565b611ae081611ace565b8114611aea575f80fd5b50565b5f81359050611afb81611ad7565b92915050565b5f8060408385031215611b1757611b16611a70565b5b5f611b2485828601611aba565b9250506020611b3585828601611aed565b9150509250929050565b5f8115159050919050565b611b5381611b3f565b82525050565b5f602082019050611b6c5f830184611b4a565b92915050565b611b7b81611ace565b82525050565b5f602082019050611b945f830184611b72565b92915050565b5f805f60608486031215611bb157611bb0611a70565b5b5f611bbe86828701611aba565b9350506020611bcf86828701611aba565b9250506040611be086828701611aed565b9150509250925092565b5f60ff82169050919050565b611bff81611bea565b82525050565b5f602082019050611c185f830184611bf6565b92915050565b5f60208284031215611c3357611c32611a70565b5b5f611c4084828501611aba565b91505092915050565b611c5281611a93565b82525050565b5f602082019050611c6b5f830184611c49565b92915050565b5f8060408385031215611c8757611c86611a70565b5b5f611c9485828601611aed565b9250506020611ca585828601611aed565b9150509250929050565b5f8060408385031215611cc557611cc4611a70565b5b5f611cd285828601611aba565b9250506020611ce385828601611aba565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611d2482611ace565b9150611d2f83611ace565b9250828203905081811115611d4757611d46611ced565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611d816020836119d0565b9150611d8c82611d4d565b602082019050919050565b5f6020820190508181035f830152611dae81611d75565b9050919050565b7f6d757374206265206c657373207468616e2034300000000000000000000000005f82015250565b5f611de96014836119d0565b9150611df482611db5565b602082019050919050565b5f6020820190508181035f830152611e1681611ddd565b9050919050565b7f4e6f204574686572206c65667420746f207769746864726177000000000000005f82015250565b5f611e516019836119d0565b9150611e5c82611e1d565b602082019050919050565b5f6020820190508181035f830152611e7e81611e45565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611edf6024836119d0565b9150611eea82611e85565b604082019050919050565b5f6020820190508181035f830152611f0c81611ed3565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611f6d6022836119d0565b9150611f7882611f13565b604082019050919050565b5f6020820190508181035f830152611f9a81611f61565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611ffb6025836119d0565b915061200682611fa1565b604082019050919050565b5f6020820190508181035f83015261202881611fef565b9050919050565b7f4d696e207472616e7366657220616d74000000000000000000000000000000005f82015250565b5f6120636010836119d0565b915061206e8261202f565b602082019050919050565b5f6020820190508181035f83015261209081612057565b9050919050565b7f3125206d617800000000000000000000000000000000000000000000000000005f82015250565b5f6120cb6006836119d0565b91506120d682612097565b602082019050919050565b5f6020820190508181035f8301526120f8816120bf565b9050919050565b5f61210982611ace565b915061211483611ace565b925082820190508082111561212c5761212b611ced565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f819050919050565b5f819050919050565b5f6121b86121b36121ae8461218c565b612195565b611ace565b9050919050565b6121c88161219e565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61220081611a93565b82525050565b5f61221183836121f7565b60208301905092915050565b5f602082019050919050565b5f612233826121ce565b61223d81856121d8565b9350612248836121e8565b805f5b8381101561227857815161225f8882612206565b975061226a8361221d565b92505060018101905061224b565b5085935050505092915050565b5f61229f61229a61229584611a74565b612195565b611a74565b9050919050565b5f6122b082612285565b9050919050565b5f6122c1826122a6565b9050919050565b6122d1816122b7565b82525050565b5f60a0820190506122ea5f830188611b72565b6122f760208301876121bf565b81810360408301526123098186612229565b905061231860608301856122c8565b6123256080830184611b72565b9695505050505050565b5f61233982611ace565b915061234483611ace565b925082820261235281611ace565b9150828204841483151761236957612368611ced565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6123a782611ace565b91506123b283611ace565b9250826123c2576123c1612370565b5b828204905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f6124276026836119d0565b9150612432826123cd565b604082019050919050565b5f6020820190508181035f8301526124548161241b565b905091905056fea26469706673582212209b7e2eafdf43f9ddef40b47182e71b61dcc5b54e19cfb6fad0f4a5d603556d2664736f6c63430008180033

Deployed Bytecode

0x608060405260043610610122575f3560e01c80638da5cb5b1161009f578063c9567bf911610063578063c9567bf9146103ad578063cc1776d3146103c3578063dba9d420146103ed578063dd62ed3e14610415578063f2fde38b1461045157610129565b80638da5cb5b146102df5780639036ed4d1461030957806395d89b4114610331578063a32b9e181461035b578063a9059cbb1461037157610129565b80634f7041a5116100e65780634f7041a51461022357806370a082311461024d578063715018a614610289578063751039fc1461029f5780638c0b5e22146102b557610129565b806306fdde031461012d578063095ea7b31461015757806318160ddd1461019357806323b872dd146101bd578063313ce567146101f957610129565b3661012957005b5f80fd5b348015610138575f80fd5b50610141610479565b60405161014e9190611a50565b60405180910390f35b348015610162575f80fd5b5061017d60048036038101906101789190611b01565b6104b6565b60405161018a9190611b59565b60405180910390f35b34801561019e575f80fd5b506101a76104d3565b6040516101b49190611b81565b60405180910390f35b3480156101c8575f80fd5b506101e360048036038101906101de9190611b9a565b6104e4565b6040516101f09190611b59565b60405180910390f35b348015610204575f80fd5b5061020d610597565b60405161021a9190611c05565b60405180910390f35b34801561022e575f80fd5b5061023761059f565b6040516102449190611b81565b60405180910390f35b348015610258575f80fd5b50610273600480360381019061026e9190611c1e565b6105a5565b6040516102809190611b81565b60405180910390f35b348015610294575f80fd5b5061029d6105eb565b005b3480156102aa575f80fd5b506102b3610739565b005b3480156102c0575f80fd5b506102c96107e0565b6040516102d69190611b81565b60405180910390f35b3480156102ea575f80fd5b506102f36107e6565b6040516103009190611c58565b60405180910390f35b348015610314575f80fd5b5061032f600480360381019061032a9190611c71565b61080d565b005b34801561033c575f80fd5b50610345610951565b6040516103529190611a50565b60405180910390f35b348015610366575f80fd5b5061036f61098e565b005b34801561037c575f80fd5b5061039760048036038101906103929190611b01565b610ab1565b6040516103a49190611b59565b60405180910390f35b3480156103b8575f80fd5b506103c1610ace565b005b3480156103ce575f80fd5b506103d7610b86565b6040516103e49190611b81565b60405180910390f35b3480156103f8575f80fd5b50610413600480360381019061040e9190611c1e565b610b8c565b005b348015610420575f80fd5b5061043b60048036038101906104369190611caf565b610c78565b6040516104489190611b81565b60405180910390f35b34801561045c575f80fd5b5061047760048036038101906104729190611c1e565b610cfa565b005b60606040518060400160405280601a81526020017f46696e616e6369616c204b656b64756374204175746f72697479000000000000815250905090565b5f6104c96104c2610d9a565b8484610da1565b6001905092915050565b5f69d3c21bcecceda1000000905090565b5f6104f0848484610f64565b61058c846104fc610d9a565b8460085f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610543610d9a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546105879190611d1a565b610da1565b600190509392505050565b5f6012905090565b60025481565b5f60075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6105f3610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461067f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067690611d97565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610741610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c490611d97565b60405180910390fd5b69d3c21bcecceda1000000600681905550565b60065481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610815610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161089890611d97565b60405180910390fd5b602882111580156108b157505f82115b6108f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e790611dff565b60405180910390fd5b6028811115801561090057505f81115b61093f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093690611dff565b60405180910390fd5b81600281905550806003819055505050565b60606040518060400160405280600381526020017f464b410000000000000000000000000000000000000000000000000000000000815250905090565b610996610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1990611d97565b60405180910390fd5b5f4711610a64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5b90611e67565b60405180910390fd5b610a6c6107e6565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610aae573d5f803e3d5ffd5b50565b5f610ac4610abd610d9a565b8484610f64565b6001905092915050565b610ad6610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5990611d97565b60405180910390fd5b600160045f6101000a81548160ff021916908360ff16021790555043600581905550565b60035481565b610b94610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c20576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1790611d97565b60405180910390fd5b600160095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b5f60085f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610d02610d9a565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d8e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8590611d97565b60405180910390fd5b610d978161189d565b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0690611ef5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7490611f83565b60405180910390fd5b8060085f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f579190611b81565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fd2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc990612011565b60405180910390fd5b633b9aca008111611018576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100f90612079565b60405180910390fd5b5f60095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806110b4575060095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b156110c1575f905061158f565b5f60045f9054906101000a900460ff1660ff16141580156110e457506006548211155b611123576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111a906120e1565b60405180910390fd5b6001600460019054906101000a900460ff1660ff160361124e578160075f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546111899190611d1a565b925050819055508160075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546111dc91906120ff565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112409190611b81565b60405180910390a350611898565b7f00000000000000000000000002a34c7e0aac26072395f3c61968587dedb4fc4c73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036112ab57600254905061158e565b7f00000000000000000000000002a34c7e0aac26072395f3c61968587dedb4fc4c73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611589575f60075f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050683635c9adc5dea000008111801561136857505f600460019054906101000a900460ff1660ff16145b1561157e5769021e19e0c9bab240000081111561138d5769021e19e0c9bab240000090505b6001600460016101000a81548160ff021916908360ff1602179055505f600267ffffffffffffffff8111156113c5576113c4612132565b5b6040519080825280602002602001820160405280156113f35781602001602082028036833780820191505090505b50905030815f8151811061140a5761140961215f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2816001815181106114795761147861215f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac947835f847f0000000000000000000000007a1dc2f5270d3096bab425b236abfa6654889bc9426040518663ffffffff1660e01b81526004016115349594939291906122d7565b5f604051808303815f87803b15801561154b575f80fd5b505af115801561155d573d5f803e3d5ffd5b505050505f600460016101000a81548160ff021916908360ff160217905550505b60035491505061158d565b5f90505b5b5b5f811461178a575f606482846115a5919061232f565b6115af919061239d565b90505f81846115be9190611d1a565b90508360075f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461160c9190611d1a565b925050819055508060075f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461165f91906120ff565b925050819055508160075f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546116b291906120ff565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117169190611b81565b60405180910390a38473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161177b9190611b81565b60405180910390a35050611896565b8160075f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546117d69190611d1a565b925050819055508160075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461182991906120ff565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161188d9190611b81565b60405180910390a35b505b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361190b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119029061243d565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156119fd5780820151818401526020810190506119e2565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611a22826119c6565b611a2c81856119d0565b9350611a3c8185602086016119e0565b611a4581611a08565b840191505092915050565b5f6020820190508181035f830152611a688184611a18565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611a9d82611a74565b9050919050565b611aad81611a93565b8114611ab7575f80fd5b50565b5f81359050611ac881611aa4565b92915050565b5f819050919050565b611ae081611ace565b8114611aea575f80fd5b50565b5f81359050611afb81611ad7565b92915050565b5f8060408385031215611b1757611b16611a70565b5b5f611b2485828601611aba565b9250506020611b3585828601611aed565b9150509250929050565b5f8115159050919050565b611b5381611b3f565b82525050565b5f602082019050611b6c5f830184611b4a565b92915050565b611b7b81611ace565b82525050565b5f602082019050611b945f830184611b72565b92915050565b5f805f60608486031215611bb157611bb0611a70565b5b5f611bbe86828701611aba565b9350506020611bcf86828701611aba565b9250506040611be086828701611aed565b9150509250925092565b5f60ff82169050919050565b611bff81611bea565b82525050565b5f602082019050611c185f830184611bf6565b92915050565b5f60208284031215611c3357611c32611a70565b5b5f611c4084828501611aba565b91505092915050565b611c5281611a93565b82525050565b5f602082019050611c6b5f830184611c49565b92915050565b5f8060408385031215611c8757611c86611a70565b5b5f611c9485828601611aed565b9250506020611ca585828601611aed565b9150509250929050565b5f8060408385031215611cc557611cc4611a70565b5b5f611cd285828601611aba565b9250506020611ce385828601611aba565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611d2482611ace565b9150611d2f83611ace565b9250828203905081811115611d4757611d46611ced565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611d816020836119d0565b9150611d8c82611d4d565b602082019050919050565b5f6020820190508181035f830152611dae81611d75565b9050919050565b7f6d757374206265206c657373207468616e2034300000000000000000000000005f82015250565b5f611de96014836119d0565b9150611df482611db5565b602082019050919050565b5f6020820190508181035f830152611e1681611ddd565b9050919050565b7f4e6f204574686572206c65667420746f207769746864726177000000000000005f82015250565b5f611e516019836119d0565b9150611e5c82611e1d565b602082019050919050565b5f6020820190508181035f830152611e7e81611e45565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611edf6024836119d0565b9150611eea82611e85565b604082019050919050565b5f6020820190508181035f830152611f0c81611ed3565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611f6d6022836119d0565b9150611f7882611f13565b604082019050919050565b5f6020820190508181035f830152611f9a81611f61565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611ffb6025836119d0565b915061200682611fa1565b604082019050919050565b5f6020820190508181035f83015261202881611fef565b9050919050565b7f4d696e207472616e7366657220616d74000000000000000000000000000000005f82015250565b5f6120636010836119d0565b915061206e8261202f565b602082019050919050565b5f6020820190508181035f83015261209081612057565b9050919050565b7f3125206d617800000000000000000000000000000000000000000000000000005f82015250565b5f6120cb6006836119d0565b91506120d682612097565b602082019050919050565b5f6020820190508181035f8301526120f8816120bf565b9050919050565b5f61210982611ace565b915061211483611ace565b925082820190508082111561212c5761212b611ced565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f819050919050565b5f819050919050565b5f6121b86121b36121ae8461218c565b612195565b611ace565b9050919050565b6121c88161219e565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61220081611a93565b82525050565b5f61221183836121f7565b60208301905092915050565b5f602082019050919050565b5f612233826121ce565b61223d81856121d8565b9350612248836121e8565b805f5b8381101561227857815161225f8882612206565b975061226a8361221d565b92505060018101905061224b565b5085935050505092915050565b5f61229f61229a61229584611a74565b612195565b611a74565b9050919050565b5f6122b082612285565b9050919050565b5f6122c1826122a6565b9050919050565b6122d1816122b7565b82525050565b5f60a0820190506122ea5f830188611b72565b6122f760208301876121bf565b81810360408301526123098186612229565b905061231860608301856122c8565b6123256080830184611b72565b9695505050505050565b5f61233982611ace565b915061234483611ace565b925082820261235281611ace565b9150828204841483151761236957612368611ced565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6123a782611ace565b91506123b283611ace565b9250826123c2576123c1612370565b5b828204905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f6124276026836119d0565b9150612432826123cd565b604082019050919050565b5f6020820190508181035f8301526124548161241b565b905091905056fea26469706673582212209b7e2eafdf43f9ddef40b47182e71b61dcc5b54e19cfb6fad0f4a5d603556d2664736f6c63430008180033

Deployed Bytecode Sourcemap

2980:6692:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4897:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5784:186;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5174:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5978:350;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5083:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3405:21;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5282:118;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2104:148;;;;;;;;;;;;;:::i;:::-;;6923:88;;;;;;;;;;;;;:::i;:::-;;3564:38;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1499:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7019:324;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4988:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2260:188;;;;;;;;;;;;;:::i;:::-;;5408:192;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6679:108;;;;;;;;;;;;;:::i;:::-;;3433:22;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6795:120;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5608:168;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1713:109;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4897:83;4934:13;4967:5;;;;;;;;;;;;;;;;;4960:12;;4897:83;:::o;5784:186::-;5884:4;5901:39;5910:12;:10;:12::i;:::-;5924:7;5933:6;5901:8;:39::i;:::-;5958:4;5951:11;;5784:186;;;;:::o;5174:100::-;5227:7;3068:12;5247:19;;5174:100;:::o;5978:350::-;6110:4;6127:36;6137:6;6145:9;6156:6;6127:9;:36::i;:::-;6174:124;6197:6;6218:12;:10;:12::i;:::-;6281:6;6245:11;:19;6257:6;6245:19;;;;;;;;;;;;;;;:33;6265:12;:10;:12::i;:::-;6245:33;;;;;;;;;;;;;;;;:42;;;;:::i;:::-;6174:8;:124::i;:::-;6316:4;6309:11;;5978:350;;;;;:::o;5083:83::-;5124:5;3226:2;5142:16;;5083:83;:::o;3405:21::-;;;;:::o;5282:118::-;5348:7;5375:8;:17;5384:7;5375:17;;;;;;;;;;;;;;;;5368:24;;5282:118;;;:::o;2104:148::-;1636:12;:10;:12::i;:::-;1626:22;;:6;;;;;;;;;;:22;;;1618:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2211:1:::1;2174:40;;2195:6;::::0;::::1;;;;;;;;2174:40;;;;;;;;;;;;2242:1;2225:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2104:148::o:0;6923:88::-;1636:12;:10;:12::i;:::-;1626:22;;:6;;;;;;;;;;:22;;;1618:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3068:12:::1;6977:11;:26;;;;6923:88::o:0;3564:38::-;;;;:::o;1499:79::-;1537:7;1564:6;;;;;;;;;;;1557:13;;1499:79;:::o;7019:324::-;1636:12;:10;:12::i;:::-;1626:22;;:6;;;;;;;;;;:22;;;1618:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7153:2:::1;7140:9;:15;;:32;;;;;7171:1;7159:9;:13;7140:32;7132:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;7230:2;7216:10;:16;;:34;;;;;7249:1;7236:10;:14;7216:34;7208:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7295:9;7286:6;:18;;;;7325:10;7315:7;:20;;;;7019:324:::0;;:::o;4988:87::-;5027:13;5060:7;;;;;;;;;;;;;;;;;5053:14;;4988:87;:::o;2260:188::-;1636:12;:10;:12::i;:::-;1626:22;;:6;;;;;;;;;;:22;;;1618:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2350:1:::1;2326:21;:25;2318:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;2400:7;:5;:7::i;:::-;2392:25;;:48;2418:21;2392:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;2260:188::o:0;5408:192::-;5511:4;5528:42;5538:12;:10;:12::i;:::-;5552:9;5563:6;5528:9;:42::i;:::-;5588:4;5581:11;;5408:192;;;;:::o;6679:108::-;1636:12;:10;:12::i;:::-;1626:22;;:6;;;;;;;;;;:22;;;1618:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6741:1:::1;6732:6;;:10;;;;;;;;;;;;;;;;;;6767:12;6753:11;:26;;;;6679:108::o:0;3433:22::-;;;;:::o;6795:120::-;1636:12;:10;:12::i;:::-;1626:22;;:6;;;;;;;;;;:22;;;1618:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6903:4:::1;6868:24;:32;6893:6;6868:32;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;6795:120:::0;:::o;5608:168::-;5714:7;5741:11;:18;5753:5;5741:18;;;;;;;;;;;;;;;:27;5760:7;5741:27;;;;;;;;;;;;;;;;5734:34;;5608:168;;;;:::o;1713:109::-;1636:12;:10;:12::i;:::-;1626:22;;:6;;;;;;;;;;:22;;;1618:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1786:28:::1;1805:8;1786:18;:28::i;:::-;1713:109:::0;:::o;208:98::-;261:7;288:10;281:17;;208:98;:::o;6336:335::-;6446:1;6429:19;;:5;:19;;;6421:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6527:1;6508:21;;:7;:21;;;6500:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6609:6;6579:11;:18;6591:5;6579:18;;;;;;;;;;;;;;;:27;6598:7;6579:27;;;;;;;;;;;;;;;:36;;;;6647:7;6631:32;;6640:5;6631:32;;;6656:6;6631:32;;;;;;:::i;:::-;;;;;;;;6336:335;;;:::o;7351:2281::-;7455:1;7439:18;;:4;:18;;;7431:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7527:3;7518:6;:12;7510:41;;;;;;;;;;;;:::i;:::-;;;;;;;;;7564:12;7591:24;:30;7616:4;7591:30;;;;;;;;;;;;;;;;;;;;;;;;;:62;;;;7625:24;:28;7650:2;7625:28;;;;;;;;;;;;;;;;;;;;;;;;;7591:62;7587:1492;;;7677:1;7670:8;;7587:1492;;;7729:1;7719:6;;;;;;;;;;;:11;;;;:36;;;;;7744:11;;7734:6;:21;;7719:36;7711:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;7807:1;7787:16;;;;;;;;;;;:21;;;7783:204;;7847:6;7829:8;:14;7838:4;7829:14;;;;;;;;;;;;;;;;:24;;;;;;;:::i;:::-;;;;;;;;7888:6;7872:8;:12;7881:2;7872:12;;;;;;;;;;;;;;;;:22;;;;;;;:::i;:::-;;;;;;;;7935:2;7920:26;;7929:4;7920:26;;;7939:6;7920:26;;;;;;:::i;:::-;;;;;;;;7965:7;;;7783:204;8015:13;8007:21;;:4;:21;;;8003:1065;;8056:6;;8049:13;;8003:1065;;;8094:13;8088:19;;:2;:19;;;8084:984;;8128:20;8151:8;:23;8168:4;8151:23;;;;;;;;;;;;;;;;8128:46;;3176:8;8197:12;:22;:47;;;;;8243:1;8223:16;;;;;;;;;;;:21;;;8197:47;8193:778;;;3125:9;8273:12;:25;8269:107;;;3125:9;8327:25;;8269:107;8417:1;8398:16;;:20;;;;;;;;;;;;;;;;;;8441:21;8479:1;8465:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8441:40;;8522:4;8504;8509:1;8504:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;8560:4;8550;8555:1;8550:7;;;;;;;;:::i;:::-;;;;;;;:14;;;;;;;;;;;8587:15;:92;;;8710:12;8753:1;8785:4;8820:15;8866;8587:321;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8950:1;8931:16;;:20;;;;;;;;;;;;;;;;;;8246:725;8193:778;8996:7;;8989:14;;8109:910;8084:984;;;9051:1;9044:8;;8084:984;8003:1065;7587:1492;9103:1;9095:4;:9;9091:534;;9121:17;9159:3;9151:4;9142:6;:13;;;;:::i;:::-;9141:21;;;;:::i;:::-;9121:41;;9177:22;9211:9;9202:6;:18;;;;:::i;:::-;9177:43;;9255:6;9237:8;:14;9246:4;9237:14;;;;;;;;;;;;;;;;:24;;;;;;;:::i;:::-;;;;;;;;9292:14;9276:8;:12;9285:2;9276:12;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;9348:9;9321:8;:23;9338:4;9321:23;;;;;;;;;;;;;;;;:36;;;;;;;:::i;:::-;;;;;;;;9400:4;9377:40;;9386:4;9377:40;;;9407:9;9377:40;;;;;;:::i;:::-;;;;;;;;9452:2;9437:34;;9446:4;9437:34;;;9456:14;9437:34;;;;;;:::i;:::-;;;;;;;;9106:377;;9091:534;;;9522:6;9504:8;:14;9513:4;9504:14;;;;;;;;;;;;;;;;:24;;;;;;;:::i;:::-;;;;;;;;9559:6;9543:8;:12;9552:2;9543:12;;;;;;;;;;;;;;;;:22;;;;;;;:::i;:::-;;;;;;;;9602:2;9587:26;;9596:4;9587:26;;;9606:6;9587:26;;;;;;:::i;:::-;;;;;;;;9091:534;7420:2212;7351:2281;;;;:::o;1830:266::-;1938:1;1918:22;;:8;:22;;;1896:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;2051:8;2022:38;;2043:6;;;;;;;;;;2022:38;;;;;;;;;;;;2080:8;2071:6;;:17;;;;;;;;;;;;;;;;;;1830: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:194;6726:4;6746:20;6764:1;6746:20;:::i;:::-;6741:25;;6780:20;6798:1;6780:20;:::i;:::-;6775:25;;6824:1;6821;6817:9;6809:17;;6848:1;6842:4;6839:11;6836:37;;;6853:18;;:::i;:::-;6836:37;6686:194;;;;:::o;6886:182::-;7026:34;7022:1;7014:6;7010:14;7003:58;6886:182;:::o;7074:366::-;7216:3;7237:67;7301:2;7296:3;7237:67;:::i;:::-;7230:74;;7313:93;7402:3;7313:93;:::i;:::-;7431:2;7426:3;7422:12;7415:19;;7074:366;;;:::o;7446:419::-;7612:4;7650:2;7639:9;7635:18;7627:26;;7699:9;7693:4;7689:20;7685:1;7674:9;7670:17;7663:47;7727:131;7853:4;7727:131;:::i;:::-;7719:139;;7446:419;;;:::o;7871:170::-;8011:22;8007:1;7999:6;7995:14;7988:46;7871:170;:::o;8047:366::-;8189:3;8210:67;8274:2;8269:3;8210:67;:::i;:::-;8203:74;;8286:93;8375:3;8286:93;:::i;:::-;8404:2;8399:3;8395:12;8388:19;;8047:366;;;:::o;8419:419::-;8585:4;8623:2;8612:9;8608:18;8600:26;;8672:9;8666:4;8662:20;8658:1;8647:9;8643:17;8636:47;8700:131;8826:4;8700:131;:::i;:::-;8692:139;;8419:419;;;:::o;8844:175::-;8984:27;8980:1;8972:6;8968:14;8961:51;8844:175;:::o;9025:366::-;9167:3;9188:67;9252:2;9247:3;9188:67;:::i;:::-;9181:74;;9264:93;9353:3;9264:93;:::i;:::-;9382:2;9377:3;9373:12;9366:19;;9025:366;;;:::o;9397:419::-;9563:4;9601:2;9590:9;9586:18;9578:26;;9650:9;9644:4;9640:20;9636:1;9625:9;9621:17;9614:47;9678:131;9804:4;9678:131;:::i;:::-;9670:139;;9397:419;;;:::o;9822:223::-;9962:34;9958:1;9950:6;9946:14;9939:58;10031:6;10026:2;10018:6;10014:15;10007:31;9822:223;:::o;10051:366::-;10193:3;10214:67;10278:2;10273:3;10214:67;:::i;:::-;10207:74;;10290:93;10379:3;10290:93;:::i;:::-;10408:2;10403:3;10399:12;10392:19;;10051:366;;;:::o;10423:419::-;10589:4;10627:2;10616:9;10612:18;10604:26;;10676:9;10670:4;10666:20;10662:1;10651:9;10647:17;10640:47;10704:131;10830:4;10704:131;:::i;:::-;10696:139;;10423:419;;;:::o;10848:221::-;10988:34;10984:1;10976:6;10972:14;10965:58;11057:4;11052:2;11044:6;11040:15;11033:29;10848:221;:::o;11075:366::-;11217:3;11238:67;11302:2;11297:3;11238:67;:::i;:::-;11231:74;;11314:93;11403:3;11314:93;:::i;:::-;11432:2;11427:3;11423:12;11416:19;;11075:366;;;:::o;11447:419::-;11613:4;11651:2;11640:9;11636:18;11628:26;;11700:9;11694:4;11690:20;11686:1;11675:9;11671:17;11664:47;11728:131;11854:4;11728:131;:::i;:::-;11720:139;;11447:419;;;:::o;11872:224::-;12012:34;12008:1;12000:6;11996:14;11989:58;12081:7;12076:2;12068:6;12064:15;12057:32;11872:224;:::o;12102:366::-;12244:3;12265:67;12329:2;12324:3;12265:67;:::i;:::-;12258:74;;12341:93;12430:3;12341:93;:::i;:::-;12459:2;12454:3;12450:12;12443:19;;12102:366;;;:::o;12474:419::-;12640:4;12678:2;12667:9;12663:18;12655:26;;12727:9;12721:4;12717:20;12713:1;12702:9;12698:17;12691:47;12755:131;12881:4;12755:131;:::i;:::-;12747:139;;12474:419;;;:::o;12899:166::-;13039:18;13035:1;13027:6;13023:14;13016:42;12899:166;:::o;13071:366::-;13213:3;13234:67;13298:2;13293:3;13234:67;:::i;:::-;13227:74;;13310:93;13399:3;13310:93;:::i;:::-;13428:2;13423:3;13419:12;13412:19;;13071:366;;;:::o;13443:419::-;13609:4;13647:2;13636:9;13632:18;13624:26;;13696:9;13690:4;13686:20;13682:1;13671:9;13667:17;13660:47;13724:131;13850:4;13724:131;:::i;:::-;13716:139;;13443:419;;;:::o;13868:156::-;14008:8;14004:1;13996:6;13992:14;13985:32;13868:156;:::o;14030:365::-;14172:3;14193:66;14257:1;14252:3;14193:66;:::i;:::-;14186:73;;14268:93;14357:3;14268:93;:::i;:::-;14386:2;14381:3;14377:12;14370:19;;14030:365;;;:::o;14401:419::-;14567:4;14605:2;14594:9;14590:18;14582:26;;14654:9;14648:4;14644:20;14640:1;14629:9;14625:17;14618:47;14682:131;14808:4;14682:131;:::i;:::-;14674:139;;14401:419;;;:::o;14826:191::-;14866:3;14885:20;14903:1;14885:20;:::i;:::-;14880:25;;14919:20;14937:1;14919:20;:::i;:::-;14914:25;;14962:1;14959;14955:9;14948:16;;14983:3;14980:1;14977:10;14974:36;;;14990:18;;:::i;:::-;14974:36;14826:191;;;;:::o;15023:180::-;15071:77;15068:1;15061:88;15168:4;15165:1;15158:15;15192:4;15189:1;15182:15;15209:180;15257:77;15254:1;15247:88;15354:4;15351:1;15344:15;15378:4;15375:1;15368:15;15395:85;15440:7;15469:5;15458:16;;15395:85;;;:::o;15486:60::-;15514:3;15535:5;15528:12;;15486:60;;;:::o;15552:158::-;15610:9;15643:61;15661:42;15670:32;15696:5;15670:32;:::i;:::-;15661:42;:::i;:::-;15643:61;:::i;:::-;15630:74;;15552:158;;;:::o;15716:147::-;15811:45;15850:5;15811:45;:::i;:::-;15806:3;15799:58;15716:147;;:::o;15869:114::-;15936:6;15970:5;15964:12;15954:22;;15869:114;;;:::o;15989:184::-;16088:11;16122:6;16117:3;16110:19;16162:4;16157:3;16153:14;16138:29;;15989:184;;;;:::o;16179:132::-;16246:4;16269:3;16261:11;;16299:4;16294:3;16290:14;16282:22;;16179:132;;;:::o;16317:108::-;16394:24;16412:5;16394:24;:::i;:::-;16389:3;16382:37;16317:108;;:::o;16431:179::-;16500:10;16521:46;16563:3;16555:6;16521:46;:::i;:::-;16599:4;16594:3;16590:14;16576:28;;16431:179;;;;:::o;16616:113::-;16686:4;16718;16713:3;16709:14;16701:22;;16616:113;;;:::o;16765:732::-;16884:3;16913:54;16961:5;16913:54;:::i;:::-;16983:86;17062:6;17057:3;16983:86;:::i;:::-;16976:93;;17093:56;17143:5;17093:56;:::i;:::-;17172:7;17203:1;17188:284;17213:6;17210:1;17207:13;17188:284;;;17289:6;17283:13;17316:63;17375:3;17360:13;17316:63;:::i;:::-;17309:70;;17402:60;17455:6;17402:60;:::i;:::-;17392:70;;17248:224;17235:1;17232;17228:9;17223:14;;17188:284;;;17192:14;17488:3;17481:10;;16889:608;;;16765:732;;;;:::o;17503:142::-;17553:9;17586:53;17604:34;17613:24;17631:5;17613:24;:::i;:::-;17604:34;:::i;:::-;17586:53;:::i;:::-;17573:66;;17503:142;;;:::o;17651:126::-;17701:9;17734:37;17765:5;17734:37;:::i;:::-;17721:50;;17651:126;;;:::o;17783:134::-;17841:9;17874:37;17905:5;17874:37;:::i;:::-;17861:50;;17783:134;;;:::o;17923:147::-;18018:45;18057:5;18018:45;:::i;:::-;18013:3;18006:58;17923:147;;:::o;18076:847::-;18347:4;18385:3;18374:9;18370:19;18362:27;;18399:71;18467:1;18456:9;18452:17;18443:6;18399:71;:::i;:::-;18480:80;18556:2;18545:9;18541:18;18532:6;18480:80;:::i;:::-;18607:9;18601:4;18597:20;18592:2;18581:9;18577:18;18570:48;18635:108;18738:4;18729:6;18635:108;:::i;:::-;18627:116;;18753:80;18829:2;18818:9;18814:18;18805:6;18753:80;:::i;:::-;18843:73;18911:3;18900:9;18896:19;18887:6;18843:73;:::i;:::-;18076:847;;;;;;;;:::o;18929:410::-;18969:7;18992:20;19010:1;18992:20;:::i;:::-;18987:25;;19026:20;19044:1;19026:20;:::i;:::-;19021:25;;19081:1;19078;19074:9;19103:30;19121:11;19103:30;:::i;:::-;19092:41;;19282:1;19273:7;19269:15;19266:1;19263:22;19243:1;19236:9;19216:83;19193:139;;19312:18;;:::i;:::-;19193:139;18977:362;18929:410;;;;:::o;19345:180::-;19393:77;19390:1;19383:88;19490:4;19487:1;19480:15;19514:4;19511:1;19504:15;19531:185;19571:1;19588:20;19606:1;19588:20;:::i;:::-;19583:25;;19622:20;19640:1;19622:20;:::i;:::-;19617:25;;19661:1;19651:35;;19666:18;;:::i;:::-;19651:35;19708:1;19705;19701:9;19696:14;;19531:185;;;;:::o;19722:225::-;19862:34;19858:1;19850:6;19846:14;19839:58;19931:8;19926:2;19918:6;19914:15;19907:33;19722:225;:::o;19953:366::-;20095:3;20116:67;20180:2;20175:3;20116:67;:::i;:::-;20109:74;;20192:93;20281:3;20192:93;:::i;:::-;20310:2;20305:3;20301:12;20294:19;;19953:366;;;:::o;20325:419::-;20491:4;20529:2;20518:9;20514:18;20506:26;;20578:9;20572:4;20568:20;20564:1;20553:9;20549:17;20542:47;20606:131;20732:4;20606:131;:::i;:::-;20598:139;;20325:419;;;:::o

Swarm Source

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