ETH Price: $3,245.50 (-0.41%)
Gas: 1 Gwei

Token

DaoAI (0xDAO)
 

Overview

Max Total Supply

100,000,000 0xDAO

Holders

10

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

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:
DaoAI

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

/*

██████   █████   ██████   █████  ██ 
██   ██ ██   ██ ██    ██ ██   ██ ██ 
██   ██ ███████ ██    ██ ███████ ██ 
██   ██ ██   ██ ██    ██ ██   ██ ██ 
██████  ██   ██  ██████  ██   ██ ██ 

website:  https://0xdao.dev/
dao:      https://dapp.0xdao.dev/
twitter:  https://twitter.com/0xDAOeth
telegram: https://t.me/DAOAIeth

*/
// SPDX-License-Identifier: MIT
pragma solidity 0.8.19;

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;
    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 DaoAI is Context, IERC20, Ownable {
    mapping(address => uint256) private _balance;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => uint256) private _FreeWallets;
    mapping(address => bool) public bots;
    uint256 private constant MAX = ~uint256(0);
    uint8 private constant _decimals = 9;
    uint256 private constant _totalSupply = 100_000_000 * 10 ** _decimals;
    uint256 private constant minimumSwapAmount = 1_200_000 * 10 ** _decimals;
    uint256 private constant onePercent = 1_200_000 * 10 ** _decimals;
    uint256 public maxTrxAmount = onePercent;
    uint256 private InitialBlockNo;
    uint256 public buyTax = 20;
    uint256 public sellTax = 30;
    uint256 private maxTax = 30;

    string private constant _name = unicode"DaoAI";
    string private constant _symbol = unicode"0xDAO";

    IUniswapV2Router02 private uniswapV2Router;
    address public uniswapV2Pair;
    address payable private feesAddress;
    bool private launch = false;

    constructor() {
        uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            uniswapV2Router.WETH()
        );
        feesAddress = payable(0xE0Ca681b52b0def4001539fE930f319C6649969a);
        _balance[msg.sender] = _totalSupply;
        _FreeWallets[feesAddress] = 1;
        _FreeWallets[msg.sender] = 1;
        _FreeWallets[address(this)] = 1;

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

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        if (currentAllowance != type(uint256).max) {
            require(
                currentAllowance >= amount,
                "ERC20: transfer amount exceeds allowance"
            );
            unchecked {
                _approve(sender, _msgSender(), currentAllowance - 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 startTrading() external onlyOwner {
        launch = true;
        InitialBlockNo = block.number;
    }

    function removeLimits() external onlyOwner {
        maxTrxAmount = _totalSupply;
        maxTax = 99;
    }

    function editSellTax(uint256 newSellTax) external onlyOwner returns (bool) {
        require(newSellTax <= maxTax, "Tax needs to be lower than Max Tax");
        sellTax = newSellTax;
        return true;
    }

    function editBuyTax(uint256 newBuyTax) external onlyOwner returns (bool)  {
        require(newBuyTax <= maxTax, "Tax needs to be lower thna Max Tax");
        buyTax = newBuyTax;
        return true;
    }

    function rescueETH(uint256 amount) public onlyOwner {
        feesAddress.transfer(amount);
    }

    function blockBot(address[] memory bots_) public onlyOwner {
        for (uint256 i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }

    function unblockBot(address notbot) public onlyOwner {
        bots[notbot] = false;
    }

    function _tokenTransfer(
        address from,
        address to,
        uint256 amount,
        uint256 _tax
    ) private {
        uint256 taxTokens = (amount * _tax) / 100;
        uint256 transferAmount = amount - taxTokens;

        _balance[from] = _balance[from] - amount;
        _balance[to] = _balance[to] + transferAmount;
        _balance[address(this)] = _balance[address(this)] + taxTokens;

        emit Transfer(from, to, transferAmount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(amount > 0, "ERC20: no tokens transferred");
        uint256 _tax = 0;
        if (_FreeWallets[from] == 0 && _FreeWallets[to] == 0) {
            require(launch, "Trading not open");
            require(amount <= maxTrxAmount, "MaxTx Enabled at launch");
            require(!bots[from] && !bots[to], "bot account is blacklisted!");

            if (to != uniswapV2Pair && to != address(0xdead))
                require(
                    balanceOf(to) + amount <= maxTrxAmount,
                    "MaxTx Enabled at launch"
                );
            if (block.number < InitialBlockNo + 2) {
                _tax = 30;
            } else {
                if (from == uniswapV2Pair) {
                    _tax = buyTax;
                } else if (to == uniswapV2Pair) {
                    uint256 tokensToSwap = balanceOf(address(this));
                    if (tokensToSwap > minimumSwapAmount) {
                        swapTokensForEth(minimumSwapAmount);
                    }
                    _tax = sellTax;
                }
            }
        }
        _tokenTransfer(from, to, amount, _tax);
    }

    function swapTokensForEth(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
        bool success;
        (success, ) = feesAddress.call{value: address(this).balance}("");
    }

    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":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"blockBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"bots","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"}],"name":"editBuyTax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"editSellTax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTrxAmount","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":"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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"rescueETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"startTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"unblockBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126009600a62000430565b620000219062124f8062000448565b6005556014600755601e6008819055600955600c805460ff60a01b191690553480156200004d57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600a80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa158015620000f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200011a919062000462565b6001600160a01b031663c9c6539630600a60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200017d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001a3919062000462565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620001f1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000217919062000462565b600b80546001600160a01b03929092166001600160a01b0319928316179055600c805490911673e0ca681b52b0def4001539fe930f319c6649969a179055620002636009600a62000430565b62000273906305f5e10062000448565b33600081815260016020818152604080842095909555600c546001600160a01b03168352600390528382208190559181528281208290553081529190912055620002ba3390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002f46009600a62000430565b62000304906305f5e10062000448565b60405190815260200160405180910390a36200048d565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003725781600019048211156200035657620003566200031b565b808516156200036457918102915b93841c939080029062000336565b509250929050565b6000826200038b575060016200042a565b816200039a575060006200042a565b8160018114620003b35760028114620003be57620003de565b60019150506200042a565b60ff841115620003d257620003d26200031b565b50506001821b6200042a565b5060208310610133831016604e8410600b841016171562000403575081810a6200042a565b6200040f838362000331565b80600019048211156200042657620004266200031b565b0290505b92915050565b60006200044160ff8416836200037a565b9392505050565b80820281158282048414176200042a576200042a6200031b565b6000602082840312156200047557600080fd5b81516001600160a01b03811681146200044157600080fd5b611638806200049d6000396000f3fe60806040526004361061014f5760003560e01c8063715018a6116100b6578063bfd792841161006f578063bfd79284146103d1578063c02d900f14610401578063c367c73514610421578063cc1776d314610441578063dd62ed3e14610457578063f2fde38b1461049d57600080fd5b8063715018a61461031b578063751039fc146103305780638da5cb5b1461034557806395d89b41146103635780639e252f0014610391578063a9059cbb146103b157600080fd5b8063313ce56711610108578063313ce5671461024557806349bd5a5e146102615780634f7041a5146102995780636b999053146102af57806370a08231146102cf57806370a3c45d1461030557600080fd5b806306fdde031461015b578063095ea7b31461019b57806318160ddd146101cb5780631ffe1e3b146101ee57806323b872dd14610210578063293230b81461023057600080fd5b3661015657005b600080fd5b34801561016757600080fd5b5060408051808201909152600581526444616f414960d81b60208201525b604051610192919061117c565b60405180910390f35b3480156101a757600080fd5b506101bb6101b63660046111ea565b6104bd565b6040519015158152602001610192565b3480156101d757600080fd5b506101e06104d4565b604051908152602001610192565b3480156101fa57600080fd5b5061020e61020936600461122c565b6104f5565b005b34801561021c57600080fd5b506101bb61022b3660046112f1565b610594565b34801561023c57600080fd5b5061020e610647565b34801561025157600080fd5b5060405160098152602001610192565b34801561026d57600080fd5b50600b54610281906001600160a01b031681565b6040516001600160a01b039091168152602001610192565b3480156102a557600080fd5b506101e060075481565b3480156102bb57600080fd5b5061020e6102ca366004611332565b61068a565b3480156102db57600080fd5b506101e06102ea366004611332565b6001600160a01b031660009081526001602052604090205490565b34801561031157600080fd5b506101e060055481565b34801561032757600080fd5b5061020e6106d5565b34801561033c57600080fd5b5061020e610749565b34801561035157600080fd5b506000546001600160a01b0316610281565b34801561036f57600080fd5b50604080518082019091526005815264307844414f60d81b6020820152610185565b34801561039d57600080fd5b5061020e6103ac366004611356565b610797565b3480156103bd57600080fd5b506101bb6103cc3660046111ea565b6107fb565b3480156103dd57600080fd5b506101bb6103ec366004611332565b60046020526000908152604090205460ff1681565b34801561040d57600080fd5b506101bb61041c366004611356565b610808565b34801561042d57600080fd5b506101bb61043c366004611356565b61089e565b34801561044d57600080fd5b506101e060085481565b34801561046357600080fd5b506101e061047236600461136f565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156104a957600080fd5b5061020e6104b8366004611332565b61092f565b60006104ca338484610965565b5060015b92915050565b60006104e26009600a6114a2565b6104f0906305f5e1006114b1565b905090565b6000546001600160a01b031633146105285760405162461bcd60e51b815260040161051f906114c8565b60405180910390fd5b60005b81518110156105905760016004600084848151811061054c5761054c6114fd565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061058881611513565b91505061052b565b5050565b60006105a1848484610a89565b6001600160a01b0384166000908152600260209081526040808320338452909152902054600019811461063c578281101561062f5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b606482015260840161051f565b61063c8533858403610965565b506001949350505050565b6000546001600160a01b031633146106715760405162461bcd60e51b815260040161051f906114c8565b600c805460ff60a01b1916600160a01b17905543600655565b6000546001600160a01b031633146106b45760405162461bcd60e51b815260040161051f906114c8565b6001600160a01b03166000908152600460205260409020805460ff19169055565b6000546001600160a01b031633146106ff5760405162461bcd60e51b815260040161051f906114c8565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107735760405162461bcd60e51b815260040161051f906114c8565b61077f6009600a6114a2565b61078d906305f5e1006114b1565b6005556063600955565b6000546001600160a01b031633146107c15760405162461bcd60e51b815260040161051f906114c8565b600c546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610590573d6000803e3d6000fd5b60006104ca338484610a89565b600080546001600160a01b031633146108335760405162461bcd60e51b815260040161051f906114c8565b6009548211156108905760405162461bcd60e51b815260206004820152602260248201527f546178206e6565647320746f206265206c6f776572207468616e204d617820546044820152610c2f60f31b606482015260840161051f565b50600881905560015b919050565b600080546001600160a01b031633146108c95760405162461bcd60e51b815260040161051f906114c8565b6009548211156109265760405162461bcd60e51b815260206004820152602260248201527f546178206e6565647320746f206265206c6f7765722074686e61204d617820546044820152610c2f60f31b606482015260840161051f565b50600755600190565b6000546001600160a01b031633146109595760405162461bcd60e51b815260040161051f906114c8565b61096281610e02565b50565b6001600160a01b0383166109c75760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161051f565b6001600160a01b038216610a285760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161051f565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610aed5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161051f565b60008111610b3d5760405162461bcd60e51b815260206004820152601c60248201527f45524332303a206e6f20746f6b656e73207472616e7366657272656400000000604482015260640161051f565b6001600160a01b038316600090815260036020526040812054158015610b7957506001600160a01b038316600090815260036020526040902054155b15610df057600c54600160a01b900460ff16610bca5760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b604482015260640161051f565b600554821115610c165760405162461bcd60e51b815260206004820152601760248201527609ac2f0a8f0408adcc2c4d8cac840c2e840d8c2eadcc6d604b1b604482015260640161051f565b6001600160a01b03841660009081526004602052604090205460ff16158015610c5857506001600160a01b03831660009081526004602052604090205460ff16155b610ca45760405162461bcd60e51b815260206004820152601b60248201527f626f74206163636f756e7420697320626c61636b6c6973746564210000000000604482015260640161051f565b600b546001600160a01b03848116911614801590610ccd57506001600160a01b03831661dead14155b15610d475760055482610cf5856001600160a01b031660009081526001602052604090205490565b610cff919061152c565b1115610d475760405162461bcd60e51b815260206004820152601760248201527609ac2f0a8f0408adcc2c4d8cac840c2e840d8c2eadcc6d604b1b604482015260640161051f565b600654610d5590600261152c565b431015610d645750601e610df0565b600b546001600160a01b0390811690851603610d835750600754610df0565b600b546001600160a01b0390811690841603610df05730600090815260016020526040902054610db56009600a6114a2565b610dc29062124f806114b1565b811115610dea57610dea610dd86009600a6114a2565b610de59062124f806114b1565b610ec2565b50506008545b610dfc84848484611074565b50505050565b6001600160a01b038116610e675760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161051f565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610ef757610ef76114fd565b6001600160a01b03928316602091820292909201810191909152600a54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f50573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f74919061153f565b81600181518110610f8757610f876114fd565b6001600160a01b039283166020918202929092010152600a54610fad9130911684610965565b600a5460405163791ac94760e01b81526001600160a01b039091169063791ac94790610fe690859060009086903090429060040161155c565b600060405180830381600087803b15801561100057600080fd5b505af1158015611014573d6000803e3d6000fd5b5050600c54604051600093506001600160a01b03909116915047908381818185875af1925050503d8060008114611067576040519150601f19603f3d011682016040523d82523d6000602084013e61106c565b606091505b505050505050565b6000606461108283856114b1565b61108c91906115cd565b9050600061109a82856115ef565b6001600160a01b0387166000908152600160205260409020549091506110c19085906115ef565b6001600160a01b0380881660009081526001602052604080822093909355908716815220546110f190829061152c565b6001600160a01b03861660009081526001602052604080822092909255308152205461111e90839061152c565b3060009081526001602090815260409182902092909255518281526001600160a01b0387811692908916917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050505050565b600060208083528351808285015260005b818110156111a95785810183015185820160400152820161118d565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461096257600080fd5b8035610899816111ca565b600080604083850312156111fd57600080fd5b8235611208816111ca565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561123f57600080fd5b823567ffffffffffffffff8082111561125757600080fd5b818501915085601f83011261126b57600080fd5b81358181111561127d5761127d611216565b8060051b604051601f19603f830116810181811085821117156112a2576112a2611216565b6040529182528482019250838101850191888311156112c057600080fd5b938501935b828510156112e5576112d6856111df565b845293850193928501926112c5565b98975050505050505050565b60008060006060848603121561130657600080fd5b8335611311816111ca565b92506020840135611321816111ca565b929592945050506040919091013590565b60006020828403121561134457600080fd5b813561134f816111ca565b9392505050565b60006020828403121561136857600080fd5b5035919050565b6000806040838503121561138257600080fd5b823561138d816111ca565b9150602083013561139d816111ca565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156113f95781600019048211156113df576113df6113a8565b808516156113ec57918102915b93841c93908002906113c3565b509250929050565b600082611410575060016104ce565b8161141d575060006104ce565b8160018114611433576002811461143d57611459565b60019150506104ce565b60ff84111561144e5761144e6113a8565b50506001821b6104ce565b5060208310610133831016604e8410600b841016171561147c575081810a6104ce565b61148683836113be565b806000190482111561149a5761149a6113a8565b029392505050565b600061134f60ff841683611401565b80820281158282048414176104ce576104ce6113a8565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060018201611525576115256113a8565b5060010190565b808201808211156104ce576104ce6113a8565b60006020828403121561155157600080fd5b815161134f816111ca565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115ac5784516001600160a01b031683529383019391830191600101611587565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826115ea57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156104ce576104ce6113a856fea26469706673582212203588f71efb7d9f04d5bb77d585bacfb8b71c73058da52f5d19b4453ea639b23764736f6c63430008130033

Deployed Bytecode

0x60806040526004361061014f5760003560e01c8063715018a6116100b6578063bfd792841161006f578063bfd79284146103d1578063c02d900f14610401578063c367c73514610421578063cc1776d314610441578063dd62ed3e14610457578063f2fde38b1461049d57600080fd5b8063715018a61461031b578063751039fc146103305780638da5cb5b1461034557806395d89b41146103635780639e252f0014610391578063a9059cbb146103b157600080fd5b8063313ce56711610108578063313ce5671461024557806349bd5a5e146102615780634f7041a5146102995780636b999053146102af57806370a08231146102cf57806370a3c45d1461030557600080fd5b806306fdde031461015b578063095ea7b31461019b57806318160ddd146101cb5780631ffe1e3b146101ee57806323b872dd14610210578063293230b81461023057600080fd5b3661015657005b600080fd5b34801561016757600080fd5b5060408051808201909152600581526444616f414960d81b60208201525b604051610192919061117c565b60405180910390f35b3480156101a757600080fd5b506101bb6101b63660046111ea565b6104bd565b6040519015158152602001610192565b3480156101d757600080fd5b506101e06104d4565b604051908152602001610192565b3480156101fa57600080fd5b5061020e61020936600461122c565b6104f5565b005b34801561021c57600080fd5b506101bb61022b3660046112f1565b610594565b34801561023c57600080fd5b5061020e610647565b34801561025157600080fd5b5060405160098152602001610192565b34801561026d57600080fd5b50600b54610281906001600160a01b031681565b6040516001600160a01b039091168152602001610192565b3480156102a557600080fd5b506101e060075481565b3480156102bb57600080fd5b5061020e6102ca366004611332565b61068a565b3480156102db57600080fd5b506101e06102ea366004611332565b6001600160a01b031660009081526001602052604090205490565b34801561031157600080fd5b506101e060055481565b34801561032757600080fd5b5061020e6106d5565b34801561033c57600080fd5b5061020e610749565b34801561035157600080fd5b506000546001600160a01b0316610281565b34801561036f57600080fd5b50604080518082019091526005815264307844414f60d81b6020820152610185565b34801561039d57600080fd5b5061020e6103ac366004611356565b610797565b3480156103bd57600080fd5b506101bb6103cc3660046111ea565b6107fb565b3480156103dd57600080fd5b506101bb6103ec366004611332565b60046020526000908152604090205460ff1681565b34801561040d57600080fd5b506101bb61041c366004611356565b610808565b34801561042d57600080fd5b506101bb61043c366004611356565b61089e565b34801561044d57600080fd5b506101e060085481565b34801561046357600080fd5b506101e061047236600461136f565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156104a957600080fd5b5061020e6104b8366004611332565b61092f565b60006104ca338484610965565b5060015b92915050565b60006104e26009600a6114a2565b6104f0906305f5e1006114b1565b905090565b6000546001600160a01b031633146105285760405162461bcd60e51b815260040161051f906114c8565b60405180910390fd5b60005b81518110156105905760016004600084848151811061054c5761054c6114fd565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061058881611513565b91505061052b565b5050565b60006105a1848484610a89565b6001600160a01b0384166000908152600260209081526040808320338452909152902054600019811461063c578281101561062f5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b606482015260840161051f565b61063c8533858403610965565b506001949350505050565b6000546001600160a01b031633146106715760405162461bcd60e51b815260040161051f906114c8565b600c805460ff60a01b1916600160a01b17905543600655565b6000546001600160a01b031633146106b45760405162461bcd60e51b815260040161051f906114c8565b6001600160a01b03166000908152600460205260409020805460ff19169055565b6000546001600160a01b031633146106ff5760405162461bcd60e51b815260040161051f906114c8565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107735760405162461bcd60e51b815260040161051f906114c8565b61077f6009600a6114a2565b61078d906305f5e1006114b1565b6005556063600955565b6000546001600160a01b031633146107c15760405162461bcd60e51b815260040161051f906114c8565b600c546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610590573d6000803e3d6000fd5b60006104ca338484610a89565b600080546001600160a01b031633146108335760405162461bcd60e51b815260040161051f906114c8565b6009548211156108905760405162461bcd60e51b815260206004820152602260248201527f546178206e6565647320746f206265206c6f776572207468616e204d617820546044820152610c2f60f31b606482015260840161051f565b50600881905560015b919050565b600080546001600160a01b031633146108c95760405162461bcd60e51b815260040161051f906114c8565b6009548211156109265760405162461bcd60e51b815260206004820152602260248201527f546178206e6565647320746f206265206c6f7765722074686e61204d617820546044820152610c2f60f31b606482015260840161051f565b50600755600190565b6000546001600160a01b031633146109595760405162461bcd60e51b815260040161051f906114c8565b61096281610e02565b50565b6001600160a01b0383166109c75760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161051f565b6001600160a01b038216610a285760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161051f565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610aed5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161051f565b60008111610b3d5760405162461bcd60e51b815260206004820152601c60248201527f45524332303a206e6f20746f6b656e73207472616e7366657272656400000000604482015260640161051f565b6001600160a01b038316600090815260036020526040812054158015610b7957506001600160a01b038316600090815260036020526040902054155b15610df057600c54600160a01b900460ff16610bca5760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b604482015260640161051f565b600554821115610c165760405162461bcd60e51b815260206004820152601760248201527609ac2f0a8f0408adcc2c4d8cac840c2e840d8c2eadcc6d604b1b604482015260640161051f565b6001600160a01b03841660009081526004602052604090205460ff16158015610c5857506001600160a01b03831660009081526004602052604090205460ff16155b610ca45760405162461bcd60e51b815260206004820152601b60248201527f626f74206163636f756e7420697320626c61636b6c6973746564210000000000604482015260640161051f565b600b546001600160a01b03848116911614801590610ccd57506001600160a01b03831661dead14155b15610d475760055482610cf5856001600160a01b031660009081526001602052604090205490565b610cff919061152c565b1115610d475760405162461bcd60e51b815260206004820152601760248201527609ac2f0a8f0408adcc2c4d8cac840c2e840d8c2eadcc6d604b1b604482015260640161051f565b600654610d5590600261152c565b431015610d645750601e610df0565b600b546001600160a01b0390811690851603610d835750600754610df0565b600b546001600160a01b0390811690841603610df05730600090815260016020526040902054610db56009600a6114a2565b610dc29062124f806114b1565b811115610dea57610dea610dd86009600a6114a2565b610de59062124f806114b1565b610ec2565b50506008545b610dfc84848484611074565b50505050565b6001600160a01b038116610e675760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161051f565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610ef757610ef76114fd565b6001600160a01b03928316602091820292909201810191909152600a54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f50573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f74919061153f565b81600181518110610f8757610f876114fd565b6001600160a01b039283166020918202929092010152600a54610fad9130911684610965565b600a5460405163791ac94760e01b81526001600160a01b039091169063791ac94790610fe690859060009086903090429060040161155c565b600060405180830381600087803b15801561100057600080fd5b505af1158015611014573d6000803e3d6000fd5b5050600c54604051600093506001600160a01b03909116915047908381818185875af1925050503d8060008114611067576040519150601f19603f3d011682016040523d82523d6000602084013e61106c565b606091505b505050505050565b6000606461108283856114b1565b61108c91906115cd565b9050600061109a82856115ef565b6001600160a01b0387166000908152600160205260409020549091506110c19085906115ef565b6001600160a01b0380881660009081526001602052604080822093909355908716815220546110f190829061152c565b6001600160a01b03861660009081526001602052604080822092909255308152205461111e90839061152c565b3060009081526001602090815260409182902092909255518281526001600160a01b0387811692908916917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050505050565b600060208083528351808285015260005b818110156111a95785810183015185820160400152820161118d565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461096257600080fd5b8035610899816111ca565b600080604083850312156111fd57600080fd5b8235611208816111ca565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561123f57600080fd5b823567ffffffffffffffff8082111561125757600080fd5b818501915085601f83011261126b57600080fd5b81358181111561127d5761127d611216565b8060051b604051601f19603f830116810181811085821117156112a2576112a2611216565b6040529182528482019250838101850191888311156112c057600080fd5b938501935b828510156112e5576112d6856111df565b845293850193928501926112c5565b98975050505050505050565b60008060006060848603121561130657600080fd5b8335611311816111ca565b92506020840135611321816111ca565b929592945050506040919091013590565b60006020828403121561134457600080fd5b813561134f816111ca565b9392505050565b60006020828403121561136857600080fd5b5035919050565b6000806040838503121561138257600080fd5b823561138d816111ca565b9150602083013561139d816111ca565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156113f95781600019048211156113df576113df6113a8565b808516156113ec57918102915b93841c93908002906113c3565b509250929050565b600082611410575060016104ce565b8161141d575060006104ce565b8160018114611433576002811461143d57611459565b60019150506104ce565b60ff84111561144e5761144e6113a8565b50506001821b6104ce565b5060208310610133831016604e8410600b841016171561147c575081810a6104ce565b61148683836113be565b806000190482111561149a5761149a6113a8565b029392505050565b600061134f60ff841683611401565b80820281158282048414176104ce576104ce6113a8565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060018201611525576115256113a8565b5060010190565b808201808211156104ce576104ce6113a8565b60006020828403121561155157600080fd5b815161134f816111ca565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115ac5784516001600160a01b031683529383019391830191600101611587565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826115ea57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156104ce576104ce6113a856fea26469706673582212203588f71efb7d9f04d5bb77d585bacfb8b71c73058da52f5d19b4453ea639b23764736f6c63430008130033

Deployed Bytecode Sourcemap

3186:7189:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4849:83;;;;;;;;;;-1:-1:-1;4919:5:0;;;;;;;;;;;;-1:-1:-1;;;4919:5:0;;;;4849:83;;;;;;;:::i;:::-;;;;;;;;5736:186;;;;;;;;;;-1:-1:-1;5736:186:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;5736:186:0;1162:187:1;5126:100:0;;;;;;;;;;;;;:::i;:::-;;;1500:25:1;;;1488:2;1473:18;5126:100:0;1354:177:1;7682:168:0;;;;;;;;;;-1:-1:-1;7682:168:0;;;;;:::i;:::-;;:::i;:::-;;5930:612;;;;;;;;;;-1:-1:-1;5930:612:0;;;;;:::i;:::-;;:::i;6893:115::-;;;;;;;;;;;;;:::i;5035:83::-;;;;;;;;;;-1:-1:-1;5035:83:0;;3543:1;3397:36:1;;3385:2;3370:18;5035:83:0;3255:184:1;4124:28:0;;;;;;;;;;-1:-1:-1;4124:28:0;;;;-1:-1:-1;;;;;4124:28:0;;;;;;-1:-1:-1;;;;;3608:32:1;;;3590:51;;3578:2;3563:18;4124:28:0;3444:203:1;3862:26:0;;;;;;;;;;;;;;;;7858:92;;;;;;;;;;-1:-1:-1;7858:92:0;;;;;:::i;:::-;;:::i;5234:118::-;;;;;;;;;;-1:-1:-1;5234:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;5327:17:0;5300:7;5327:17;;;:8;:17;;;;;;;5234:118;3778:40;;;;;;;;;;;;;;;;2506:148;;;;;;;;;;;;;:::i;7016:111::-;;;;;;;;;;;;;:::i;1901:79::-;;;;;;;;;;-1:-1:-1;1939:7:0;1966:6;-1:-1:-1;;;;;1966:6:0;1901:79;;4940:87;;;;;;;;;;-1:-1:-1;5012:7:0;;;;;;;;;;;;-1:-1:-1;;;5012:7:0;;;;4940:87;;7575:99;;;;;;;;;;-1:-1:-1;7575:99:0;;;;;:::i;:::-;;:::i;5360:192::-;;;;;;;;;;-1:-1:-1;5360:192:0;;;;;:::i;:::-;;:::i;3416:36::-;;;;;;;;;;-1:-1:-1;3416:36:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;7135:214;;;;;;;;;;-1:-1:-1;7135:214:0;;;;;:::i;:::-;;:::i;7357:210::-;;;;;;;;;;-1:-1:-1;7357:210:0;;;;;:::i;:::-;;:::i;3895:27::-;;;;;;;;;;;;;;;;5560:168;;;;;;;;;;-1:-1:-1;5560:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;5693:18:0;;;5666:7;5693:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5560:168;2115:109;;;;;;;;;;-1:-1:-1;2115:109:0;;;;;:::i;:::-;;:::i;5736:186::-;5836:4;5853:39;727:10;5876:7;5885:6;5853:8;:39::i;:::-;-1:-1:-1;5910:4:0;5736:186;;;;;:::o;5126:100::-;5179:7;3605:15;3543:1;3605:2;:15;:::i;:::-;3591:29;;:11;:29;:::i;:::-;5199:19;;5126:100;:::o;7682:168::-;2028:6;;-1:-1:-1;;;;;2028:6:0;727:10;2028:22;2020:67;;;;-1:-1:-1;;;2020:67:0;;;;;;;:::i;:::-;;;;;;;;;7757:9:::1;7752:91;7776:5;:12;7772:1;:16;7752:91;;;7827:4;7810;:14;7815:5;7821:1;7815:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;7810:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;7810:14:0;:21;;-1:-1:-1;;7810:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;7790:3;::::1;::::0;::::1;:::i;:::-;;;;7752:91;;;;7682:168:::0;:::o;5930:612::-;6062:4;6079:36;6089:6;6097:9;6108:6;6079:9;:36::i;:::-;-1:-1:-1;;;;;6155:19:0;;6128:24;6155:19;;;:11;:19;;;;;;;;727:10;6155:33;;;;;;;;-1:-1:-1;;6203:37:0;;6199:314;;6303:6;6283:16;:26;;6257:128;;;;-1:-1:-1;;;6257:128:0;;7005:2:1;6257:128:0;;;6987:21:1;7044:2;7024:18;;;7017:30;7083:34;7063:18;;;7056:62;-1:-1:-1;;;7134:18:1;;;7127:38;7182:19;;6257:128:0;6803:404:1;6257:128:0;6429:57;6438:6;727:10;6479:6;6460:16;:25;6429:8;:57::i;:::-;-1:-1:-1;6530:4:0;;5930:612;-1:-1:-1;;;;5930:612:0:o;6893:115::-;2028:6;;-1:-1:-1;;;;;2028:6:0;727:10;2028:22;2020:67;;;;-1:-1:-1;;;2020:67:0;;;;;;;:::i;:::-;6947:6:::1;:13:::0;;-1:-1:-1;;;;6947:13:0::1;-1:-1:-1::0;;;6947:13:0::1;::::0;;6988:12:::1;6971:14;:29:::0;6893:115::o;7858:92::-;2028:6;;-1:-1:-1;;;;;2028:6:0;727:10;2028:22;2020:67;;;;-1:-1:-1;;;2020:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7922:12:0::1;7937:5;7922:12:::0;;;:4:::1;:12;::::0;;;;:20;;-1:-1:-1;;7922:20:0::1;::::0;;7858:92::o;2506:148::-;2028:6;;-1:-1:-1;;;;;2028:6:0;727:10;2028:22;2020:67;;;;-1:-1:-1;;;2020:67:0;;;;;;;:::i;:::-;2613:1:::1;2597:6:::0;;2576:40:::1;::::0;-1:-1:-1;;;;;2597:6:0;;::::1;::::0;2576:40:::1;::::0;2613:1;;2576:40:::1;2644:1;2627:19:::0;;-1:-1:-1;;;;;;2627:19:0::1;::::0;;2506:148::o;7016:111::-;2028:6;;-1:-1:-1;;;;;2028:6:0;727:10;2028:22;2020:67;;;;-1:-1:-1;;;2020:67:0;;;;;;;:::i;:::-;3605:15:::1;3543:1;3605:2;:15;:::i;:::-;3591:29;::::0;:11:::1;:29;:::i;:::-;7070:12;:27:::0;7117:2:::1;7108:6;:11:::0;7016:111::o;7575:99::-;2028:6;;-1:-1:-1;;;;;2028:6:0;727:10;2028:22;2020:67;;;;-1:-1:-1;;;2020:67:0;;;;;;;:::i;:::-;7638:11:::1;::::0;:28:::1;::::0;-1:-1:-1;;;;;7638:11:0;;::::1;::::0;:28;::::1;;;::::0;7659:6;;7638:11:::1;:28:::0;:11;:28;7659:6;7638:11;:28;::::1;;;;;;;;;;;;;::::0;::::1;;;;5360:192:::0;5463:4;5480:42;727:10;5504:9;5515:6;5480:9;:42::i;7135:214::-;7204:4;2028:6;;-1:-1:-1;;;;;2028:6:0;727:10;2028:22;2020:67;;;;-1:-1:-1;;;2020:67:0;;;;;;;:::i;:::-;7243:6:::1;;7229:10;:20;;7221:67;;;::::0;-1:-1:-1;;;7221:67:0;;7414:2:1;7221:67:0::1;::::0;::::1;7396:21:1::0;7453:2;7433:18;;;7426:30;7492:34;7472:18;;;7465:62;-1:-1:-1;;;7543:18:1;;;7536:32;7585:19;;7221:67:0::1;7212:398:1::0;7221:67:0::1;-1:-1:-1::0;7299:7:0::1;:20:::0;;;7337:4:::1;2098:1;7135:214:::0;;;:::o;7357:210::-;7424:4;2028:6;;-1:-1:-1;;;;;2028:6:0;727:10;2028:22;2020:67;;;;-1:-1:-1;;;2020:67:0;;;;;;;:::i;:::-;7463:6:::1;;7450:9;:19;;7442:66;;;::::0;-1:-1:-1;;;7442:66:0;;7817:2:1;7442:66:0::1;::::0;::::1;7799:21:1::0;7856:2;7836:18;;;7829:30;7895:34;7875:18;;;7868:62;-1:-1:-1;;;7946:18:1;;;7939:32;7988:19;;7442:66:0::1;7615:398:1::0;7442:66:0::1;-1:-1:-1::0;7519:6:0::1;:18:::0;7555:4:::1;::::0;7357:210::o;2115:109::-;2028:6;;-1:-1:-1;;;;;2028:6:0;727:10;2028:22;2020:67;;;;-1:-1:-1;;;2020:67:0;;;;;;;:::i;:::-;2188:28:::1;2207:8;2188:18;:28::i;:::-;2115:109:::0;:::o;6550:335::-;-1:-1:-1;;;;;6643:19:0;;6635:68;;;;-1:-1:-1;;;6635:68:0;;8220:2:1;6635:68:0;;;8202:21:1;8259:2;8239:18;;;8232:30;8298:34;8278:18;;;8271:62;-1:-1:-1;;;8349:18:1;;;8342:34;8393:19;;6635:68:0;8018:400:1;6635:68:0;-1:-1:-1;;;;;6722:21:0;;6714:68;;;;-1:-1:-1;;;6714:68:0;;8625:2:1;6714:68:0;;;8607:21:1;8664:2;8644:18;;;8637:30;8703:34;8683:18;;;8676:62;-1:-1:-1;;;8754:18:1;;;8747:32;8796:19;;6714:68:0;8423:398:1;6714:68:0;-1:-1:-1;;;;;6793:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6845:32;;1500:25:1;;;6845:32:0;;1473:18:1;6845:32:0;;;;;;;6550:335;;;:::o;8443:1315::-;-1:-1:-1;;;;;8531:18:0;;8523:68;;;;-1:-1:-1;;;8523:68:0;;9028:2:1;8523:68:0;;;9010:21:1;9067:2;9047:18;;;9040:30;9106:34;9086:18;;;9079:62;-1:-1:-1;;;9157:18:1;;;9150:35;9202:19;;8523:68:0;8826:401:1;8523:68:0;8619:1;8610:6;:10;8602:51;;;;-1:-1:-1;;;8602:51:0;;9434:2:1;8602:51:0;;;9416:21:1;9473:2;9453:18;;;9446:30;9512;9492:18;;;9485:58;9560:18;;8602:51:0;9232:352:1;8602:51:0;-1:-1:-1;;;;;8695:18:0;;8664:12;8695:18;;;:12;:18;;;;;;:23;:48;;;;-1:-1:-1;;;;;;8722:16:0;;;;;;:12;:16;;;;;;:21;8695:48;8691:1011;;;8768:6;;-1:-1:-1;;;8768:6:0;;;;8760:35;;;;-1:-1:-1;;;8760:35:0;;9791:2:1;8760:35:0;;;9773:21:1;9830:2;9810:18;;;9803:30;-1:-1:-1;;;9849:18:1;;;9842:46;9905:18;;8760:35:0;9589:340:1;8760:35:0;8828:12;;8818:6;:22;;8810:58;;;;-1:-1:-1;;;8810:58:0;;10136:2:1;8810:58:0;;;10118:21:1;10175:2;10155:18;;;10148:30;-1:-1:-1;;;10194:18:1;;;10187:53;10257:18;;8810:58:0;9934:347:1;8810:58:0;-1:-1:-1;;;;;8892:10:0;;;;;;:4;:10;;;;;;;;8891:11;:24;;;;-1:-1:-1;;;;;;8907:8:0;;;;;;:4;:8;;;;;;;;8906:9;8891:24;8883:64;;;;-1:-1:-1;;;8883:64:0;;10488:2:1;8883:64:0;;;10470:21:1;10527:2;10507:18;;;10500:30;10566:29;10546:18;;;10539:57;10613:18;;8883:64:0;10286:351:1;8883:64:0;8974:13;;-1:-1:-1;;;;;8968:19:0;;;8974:13;;8968:19;;;;:44;;-1:-1:-1;;;;;;8991:21:0;;9005:6;8991:21;;8968:44;8964:202;;;9087:12;;9077:6;9061:13;9071:2;-1:-1:-1;;;;;5327:17:0;5300:7;5327:17;;;:8;:17;;;;;;;5234:118;9061:13;:22;;;;:::i;:::-;:38;;9031:135;;;;-1:-1:-1;;;9031:135:0;;10136:2:1;9031:135:0;;;10118:21:1;10175:2;10155:18;;;10148:30;-1:-1:-1;;;10194:18:1;;;10187:53;10257:18;;9031:135:0;9934:347:1;9031:135:0;9200:14;;:18;;9217:1;9200:18;:::i;:::-;9185:12;:33;9181:510;;;-1:-1:-1;9246:2:0;9181:510;;;9301:13;;-1:-1:-1;;;;;9301:13:0;;;9293:21;;;;9289:387;;-1:-1:-1;9346:6:0;;9289:387;;;9388:13;;-1:-1:-1;;;;;9388:13:0;;;9382:19;;;;9378:298;;9467:4;9426:20;5327:17;;;:8;:17;;;;;;3684:15;3543:1;3684:2;:15;:::i;:::-;3672:27;;:9;:27;:::i;:::-;9500:12;:32;9496:124;;;9561:35;3684:15;3543:1;3684:2;:15;:::i;:::-;3672:27;;:9;:27;:::i;:::-;9561:16;:35::i;:::-;-1:-1:-1;;9649:7:0;;9378:298;9712:38;9727:4;9733:2;9737:6;9745:4;9712:14;:38::i;:::-;8512:1246;8443:1315;;;:::o;2232:266::-;-1:-1:-1;;;;;2320:22:0;;2298:110;;;;-1:-1:-1;;;2298:110:0;;10974:2:1;2298:110:0;;;10956:21:1;11013:2;10993:18;;;10986:30;11052:34;11032:18;;;11025:62;-1:-1:-1;;;11103:18:1;;;11096:36;11149:19;;2298:110:0;10772:402:1;2298:110:0;2445:6;;;2424:38;;-1:-1:-1;;;;;2424:38:0;;;;2445:6;;;2424:38;;;2473:6;:17;;-1:-1:-1;;;;;;2473:17:0;-1:-1:-1;;;;;2473:17:0;;;;;;;;;;2232:266::o;9766:569::-;9856:16;;;9870:1;9856:16;;;;;;;;9832:21;;9856:16;;;;;;;;;;-1:-1:-1;9856:16:0;9832:40;;9901:4;9883;9888:1;9883:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;9883:23:0;;;:7;;;;;;;;;;:23;;;;9927:15;;:22;;;-1:-1:-1;;;9927:22:0;;;;:15;;;;;:20;;:22;;;;;9883:7;;9927:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9917:4;9922:1;9917:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;9917:32:0;;;:7;;;;;;;;;:32;9992:15;;9960:62;;9977:4;;9992:15;10010:11;9960:8;:62::i;:::-;10033:15;;:196;;-1:-1:-1;;;10033:196:0;;-1:-1:-1;;;;;10033:15:0;;;;:66;;:196;;10114:11;;10033:15;;10156:4;;10183;;10203:15;;10033:196;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10277:11:0;;:50;;10240:12;;-1:-1:-1;;;;;;10277:11:0;;;;-1:-1:-1;10301:21:0;;10240:12;10277:50;10240:12;10277:50;10301:21;10277:11;:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;9766:569:0:o;7958:477::-;8100:17;8138:3;8121:13;8130:4;8121:6;:13;:::i;:::-;8120:21;;;;:::i;:::-;8100:41;-1:-1:-1;8152:22:0;8177:18;8100:41;8177:6;:18;:::i;:::-;-1:-1:-1;;;;;8225:14:0;;;;;;:8;:14;;;;;;8152:43;;-1:-1:-1;8225:23:0;;8242:6;;8225:23;:::i;:::-;-1:-1:-1;;;;;8208:14:0;;;;;;;:8;:14;;;;;;:40;;;;8274:12;;;;;;;:29;;8289:14;;8274:29;:::i;:::-;-1:-1:-1;;;;;8259:12:0;;;;;;:8;:12;;;;;;:44;;;;8357:4;8340:23;;;;:35;;8366:9;;8340:35;:::i;:::-;8331:4;8314:23;;;;:8;:23;;;;;;;;;:61;;;;8393:34;1500:25:1;;;-1:-1:-1;;;;;8393:34:0;;;;;;;;;;1473:18:1;8393:34:0;;;;;;;8089:346;;7958:477;;;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:134;771:20;;800:31;771:20;800:31;:::i;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;1536:127::-;1597:10;1592:3;1588:20;1585:1;1578:31;1628:4;1625:1;1618:15;1652:4;1649:1;1642:15;1668:1121;1752:6;1783:2;1826;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1882:9;1869:23;1911:18;1952:2;1944:6;1941:14;1938:34;;;1968:1;1965;1958:12;1938:34;2006:6;1995:9;1991:22;1981:32;;2051:7;2044:4;2040:2;2036:13;2032:27;2022:55;;2073:1;2070;2063:12;2022:55;2109:2;2096:16;2131:2;2127;2124:10;2121:36;;;2137:18;;:::i;:::-;2183:2;2180:1;2176:10;2215:2;2209:9;2278:2;2274:7;2269:2;2265;2261:11;2257:25;2249:6;2245:38;2333:6;2321:10;2318:22;2313:2;2301:10;2298:18;2295:46;2292:72;;;2344:18;;:::i;:::-;2380:2;2373:22;2430:18;;;2464:15;;;;-1:-1:-1;2506:11:1;;;2502:20;;;2534:19;;;2531:39;;;2566:1;2563;2556:12;2531:39;2590:11;;;;2610:148;2626:6;2621:3;2618:15;2610:148;;;2692:23;2711:3;2692:23;:::i;:::-;2680:36;;2643:12;;;;2736;;;;2610:148;;;2777:6;1668:1121;-1:-1:-1;;;;;;;;1668:1121:1:o;2794:456::-;2871:6;2879;2887;2940:2;2928:9;2919:7;2915:23;2911:32;2908:52;;;2956:1;2953;2946:12;2908:52;2995:9;2982:23;3014:31;3039:5;3014:31;:::i;:::-;3064:5;-1:-1:-1;3121:2:1;3106:18;;3093:32;3134:33;3093:32;3134:33;:::i;:::-;2794:456;;3186:7;;-1:-1:-1;;;3240:2:1;3225:18;;;;3212:32;;2794:456::o;3652:247::-;3711:6;3764:2;3752:9;3743:7;3739:23;3735:32;3732:52;;;3780:1;3777;3770:12;3732:52;3819:9;3806:23;3838:31;3863:5;3838:31;:::i;:::-;3888:5;3652:247;-1:-1:-1;;;3652:247:1:o;3904:180::-;3963:6;4016:2;4004:9;3995:7;3991:23;3987:32;3984:52;;;4032:1;4029;4022:12;3984:52;-1:-1:-1;4055:23:1;;3904:180;-1:-1:-1;3904:180:1:o;4089:388::-;4157:6;4165;4218:2;4206:9;4197:7;4193:23;4189:32;4186:52;;;4234:1;4231;4224:12;4186:52;4273:9;4260:23;4292:31;4317:5;4292:31;:::i;:::-;4342:5;-1:-1:-1;4399:2:1;4384:18;;4371:32;4412:33;4371:32;4412:33;:::i;:::-;4464:7;4454:17;;;4089:388;;;;;:::o;4482:127::-;4543:10;4538:3;4534:20;4531:1;4524:31;4574:4;4571:1;4564:15;4598:4;4595:1;4588:15;4614:422;4703:1;4746:5;4703:1;4760:270;4781:7;4771:8;4768:21;4760:270;;;4840:4;4836:1;4832:6;4828:17;4822:4;4819:27;4816:53;;;4849:18;;:::i;:::-;4899:7;4889:8;4885:22;4882:55;;;4919:16;;;;4882:55;4998:22;;;;4958:15;;;;4760:270;;;4764:3;4614:422;;;;;:::o;5041:806::-;5090:5;5120:8;5110:80;;-1:-1:-1;5161:1:1;5175:5;;5110:80;5209:4;5199:76;;-1:-1:-1;5246:1:1;5260:5;;5199:76;5291:4;5309:1;5304:59;;;;5377:1;5372:130;;;;5284:218;;5304:59;5334:1;5325:10;;5348:5;;;5372:130;5409:3;5399:8;5396:17;5393:43;;;5416:18;;:::i;:::-;-1:-1:-1;;5472:1:1;5458:16;;5487:5;;5284:218;;5586:2;5576:8;5573:16;5567:3;5561:4;5558:13;5554:36;5548:2;5538:8;5535:16;5530:2;5524:4;5521:12;5517:35;5514:77;5511:159;;;-1:-1:-1;5623:19:1;;;5655:5;;5511:159;5702:34;5727:8;5721:4;5702:34;:::i;:::-;5772:6;5768:1;5764:6;5760:19;5751:7;5748:32;5745:58;;;5783:18;;:::i;:::-;5821:20;;5041:806;-1:-1:-1;;;5041:806:1:o;5852:140::-;5910:5;5939:47;5980:4;5970:8;5966:19;5960:4;5939:47;:::i;5997:168::-;6070:9;;;6101;;6118:15;;;6112:22;;6098:37;6088:71;;6139:18;;:::i;6170:356::-;6372:2;6354:21;;;6391:18;;;6384:30;6450:34;6445:2;6430:18;;6423:62;6517:2;6502:18;;6170:356::o;6531:127::-;6592:10;6587:3;6583:20;6580:1;6573:31;6623:4;6620:1;6613:15;6647:4;6644:1;6637:15;6663:135;6702:3;6723:17;;;6720:43;;6743:18;;:::i;:::-;-1:-1:-1;6790:1:1;6779:13;;6663:135::o;10642:125::-;10707:9;;;10728:10;;;10725:36;;;10741:18;;:::i;11179:251::-;11249:6;11302:2;11290:9;11281:7;11277:23;11273:32;11270:52;;;11318:1;11315;11308:12;11270:52;11350:9;11344:16;11369:31;11394:5;11369:31;:::i;11435:980::-;11697:4;11745:3;11734:9;11730:19;11776:6;11765:9;11758:25;11802:2;11840:6;11835:2;11824:9;11820:18;11813:34;11883:3;11878:2;11867:9;11863:18;11856:31;11907:6;11942;11936:13;11973:6;11965;11958:22;12011:3;12000:9;11996:19;11989:26;;12050:2;12042:6;12038:15;12024:29;;12071:1;12081:195;12095:6;12092:1;12089:13;12081:195;;;12160:13;;-1:-1:-1;;;;;12156:39:1;12144:52;;12251:15;;;;12216:12;;;;12192:1;12110:9;12081:195;;;-1:-1:-1;;;;;;;12332:32:1;;;;12327:2;12312:18;;12305:60;-1:-1:-1;;;12396:3:1;12381:19;12374:35;12293:3;11435:980;-1:-1:-1;;;11435:980:1:o;12630:217::-;12670:1;12696;12686:132;;12740:10;12735:3;12731:20;12728:1;12721:31;12775:4;12772:1;12765:15;12803:4;12800:1;12793:15;12686:132;-1:-1:-1;12832:9:1;;12630:217::o;12852:128::-;12919:9;;;12940:11;;;12937:37;;;12954:18;;:::i

Swarm Source

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