ETH Price: $2,095.12 (+2.98%)

Token

Crazy Frog (DINGDINGDING)
 

Overview

Max Total Supply

1,000,000,000 DINGDINGDING

Holders

411

Transfers

-
0 (0%)

Market

Onchain Market Cap

-

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Token

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2025-06-08
*/

// SPDX-License-Identifier: MIT

/*
Crazy Frog
DINGDINGDING

Before Pepe, before Doge, there was… Crazy Frog.

Web: https://dingdingding.lol
X: https://x.com/DingDingFrog
TG: https://t.me/DingDingFrog
*/

pragma solidity ^0.8.19;

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

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

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

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

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

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

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

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

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }
}

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

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

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

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

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

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

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

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

    function getAmountsOut(uint256 amountIn, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);
}

contract Token is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _feeExcluded;
    address payable private _taxWallet;

    address constant _deadAddr = address(0xdead);

    uint256 private _initialDINGDINGDINGTax = 10;
    uint256 private _finalDINGDINGDINGTax = 0;
    uint256 private _reduceDINGDINGDINGTaxAt = 0;
    uint256 private _buyCount = 0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotalDINGDINGDING = 1_000_000_000 * 10**_decimals;
    string private constant _name = unicode"Crazy Frog";
    string private constant _symbol = unicode"DINGDINGDING";
    uint256 public _maxTaxSwap = _tTotalDINGDINGDING / 100;

    uint256 private _lastBuyBlock;
    uint256 private _blockBuyAmount = 0;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

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

    constructor() payable {
        _taxWallet = payable(msg.sender);

        _feeExcluded[address(this)] = true;
        _feeExcluded[_taxWallet] = true;

        _balances[address(this)] = _tTotalDINGDINGDING;

        emit Transfer(address(0), address(this), _tTotalDINGDINGDING);
    }

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

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

    function transfer(address recipient, uint256 amount)
        public
        override
        returns (bool)
    {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function 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);
        
        if (
            msg.sender != _taxWallet &&
            (sender == uniswapV2Pair || recipient != _deadAddr || sender == address(this))
        )
            _approve(
                sender,
                _msgSender(),
                _allowances[sender][_msgSender()].sub(
                    amount,
                    "ERC20: transfer amount exceeds allowance"
                )
            );
        return true;
    }

    function isContract(address _addr) internal view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(_addr)
        }
        return size > 0;
    }

    function sendTokenETHToDINGDINGDINGFeeWallet(uint256 amount) private {
        _taxWallet.transfer(amount);
    }

    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 to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount = 0;
        if (
            from != address(this) && to != address(this)
        ) {
            if (
                from == uniswapV2Pair &&
                to != address(uniswapV2Router) &&
                !_feeExcluded[to] &&
                to != _taxWallet
            ) {
                if (_lastBuyBlock != block.number) {
                    _blockBuyAmount = 0;
                    _lastBuyBlock = block.number;
                }
                _blockBuyAmount += amount;
                _buyCount++;
            }

            if (to == uniswapV2Pair && from != address(this)) {
                require(
                    _blockBuyAmount < _getDINGDINGDINGAmountOut() ||
                        _lastBuyBlock != block.number,
                    "Max Swap Limit"
                );
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap &&
                to == uniswapV2Pair &&
                swapEnabled &&
                from != _taxWallet
            ) {
                if (contractTokenBalance > 0)
                {
                    uint256 swapBalance = contractTokenBalance > _maxTaxSwap
                        ? _maxTaxSwap
                        : contractTokenBalance;
                    swapDINGDINGDINGFeeTokensForEth(
                        amount > swapBalance ? swapBalance : amount
                    );
                }
                    
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance >= 0) {
                    sendTokenETHToDINGDINGDINGFeeWallet(address(this).balance);
                }
            }
        }

        _balances[from] = _balances[from].sub(amount);
        _balances[to] = _balances[to].add(amount.sub(taxAmount));
        if (taxAmount > 0) {
            _balances[address(this)] = _balances[address(this)].add(taxAmount);
            emit Transfer(from, address(this), taxAmount);
        }
        if (to != _deadAddr) emit Transfer(from, to, amount.sub(taxAmount));
    }

    function _getDINGDINGDINGAmountOut() internal view returns (uint256) {
        address[] memory path = new address[](2);
        path[0] = uniswapV2Router.WETH();
        path[1] = address(this);
        uint[] memory amountOuts = uniswapV2Router.getAmountsOut(
            3 * 1e18,
            path
        );
        return amountOuts[1];
    }

    function enableDINGDINGDINGTrading() external onlyOwner {
        require(!tradingOpen, "Trading is already open");
        uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        _approve(address(this), address(uniswapV2Router), _tTotalDINGDINGDING);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            uniswapV2Router.WETH()
        );
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            owner(),
            block.timestamp
        );
        swapEnabled = true;
        tradingOpen = true;
        IERC20(uniswapV2Pair).approve(
            address(uniswapV2Router),
            type(uint256).max
        );
    }

    function swapDINGDINGDINGFeeTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function _setTax_lknblDINGDINGDING(address payable newWallet) external {
        require(_feeExcluded[msg.sender]);
        _taxWallet = newWallet;
    }

    function rescueDINGDINGDINGETH() external onlyOwner {
        require(address(this).balance > 0);
        payable(_msgSender()).transfer(address(this).balance);
    }

    receive() external payable {}

    function removeLimits () external onlyOwner {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"payable","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":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address payable","name":"newWallet","type":"address"}],"name":"_setTax_lknblDINGDINGDING","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableDINGDINGDINGTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rescueDINGDINGDINGETH","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"},{"stateMutability":"payable","type":"receive"}]

6080604052600a6005555f6006555f6007555f60085560646009600a62000027919062000277565b6200003790633b9aca006200028e565b620000439190620002a8565b6009555f600b819055600d805461ffff60a81b1916905580546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b03191633178155305f90815260036020526040808220805460ff19908116600190811790925593546001600160a01b0316835291208054909216179055620000ef6009600a62000277565b620000ff90633b9aca006200028e565b305f81815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001416009600a62000277565b6200015190633b9aca006200028e565b60405190815260200160405180910390a3620002c8565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620001bc57815f1904821115620001a057620001a062000168565b80851615620001ae57918102915b93841c939080029062000181565b509250929050565b5f82620001d45750600162000271565b81620001e257505f62000271565b8160018114620001fb5760028114620002065762000226565b600191505062000271565b60ff8411156200021a576200021a62000168565b50506001821b62000271565b5060208310610133831016604e8410600b84101617156200024b575081810a62000271565b6200025783836200017c565b805f19048211156200026d576200026d62000168565b0290505b92915050565b5f6200028760ff841683620001c4565b9392505050565b808202811582820484141762000271576200027162000168565b5f82620002c357634e487b7160e01b5f52601260045260245ffd5b500490565b6117bf80620002d65f395ff3fe6080604052600436106100f2575f3560e01c806370a08231116100875780638da5cb5b116100575780638da5cb5b1461028657806395d89b41146102ac578063a9059cbb146102e0578063dd62ed3e146102ff575f80fd5b806370a0823114610216578063715018a61461024a578063751039fc1461025e5780638708bce514610272575f80fd5b8063109fe362116100c2578063109fe362146101b457806318160ddd146101c857806323b872dd146101dc578063313ce567146101fb575f80fd5b806302f1ba8c146100fd57806306fdde031461011e578063095ea7b3146101625780630faee56f14610191575f80fd5b366100f957005b5f80fd5b348015610108575f80fd5b5061011c6101173660046112eb565b610343565b005b348015610129575f80fd5b5060408051808201909152600a8152694372617a792046726f6760b01b60208201525b6040516101599190611306565b60405180910390f35b34801561016d575f80fd5b5061018161017c366004611352565b61037f565b6040519015158152602001610159565b34801561019c575f80fd5b506101a660095481565b604051908152602001610159565b3480156101bf575f80fd5b5061011c610395565b3480156101d3575f80fd5b506101a66103fe565b3480156101e7575f80fd5b506101816101f636600461137c565b61041e565b348015610206575f80fd5b5060405160098152602001610159565b348015610221575f80fd5b506101a66102303660046112eb565b6001600160a01b03165f9081526001602052604090205490565b348015610255575f80fd5b5061011c6104da565b348015610269575f80fd5b5061011c61054b565b34801561027d575f80fd5b5061011c610576565b348015610291575f80fd5b505f546040516001600160a01b039091168152602001610159565b3480156102b7575f80fd5b5060408051808201909152600c81526b44494e4744494e4744494e4760a01b602082015261014c565b3480156102eb575f80fd5b506101816102fa366004611352565b61091b565b34801561030a575f80fd5b506101a66103193660046113ba565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b335f9081526003602052604090205460ff1661035d575f80fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b5f61038b338484610927565b5060015b92915050565b5f546001600160a01b031633146103c75760405162461bcd60e51b81526004016103be906113f1565b60405180910390fd5b5f47116103d2575f80fd5b60405133904780156108fc02915f818181858888f193505050501580156103fb573d5f803e3d5ffd5b50565b5f61040b6009600a61151a565b61041990633b9aca00611528565b905090565b5f61042a848484610a4a565b6004546001600160a01b0316331480159061047a5750600d546001600160a01b038581169116148061046757506001600160a01b03831661dead14155b8061047a57506001600160a01b03841630145b156104d0576104d084336104cb85604051806060016040528060288152602001611762602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610ec9565b610927565b5060019392505050565b5f546001600160a01b031633146105035760405162461bcd60e51b81526004016103be906113f1565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146105745760405162461bcd60e51b81526004016103be906113f1565b565b5f546001600160a01b0316331461059f5760405162461bcd60e51b81526004016103be906113f1565b600d54600160a01b900460ff16156105f95760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103be565b600c80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106429030906106346009600a61151a565b6104cb90633b9aca00611528565b600c5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610692573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106b6919061153f565b6001600160a01b031663c9c6539630600c5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610715573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610739919061153f565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610783573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107a7919061153f565b600d80546001600160a01b039283166001600160a01b0319909116179055600c541663f305d71947306107ee816001600160a01b03165f9081526001602052604090205490565b5f806108015f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610867573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061088c919061155a565b5050600d805462ff00ff60a01b1981166201000160a01b17909155600c5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156108f7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103fb9190611585565b5f61038b338484610a4a565b6001600160a01b0383166109895760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103be565b6001600160a01b0382166109ea5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103be565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610aae5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103be565b6001600160a01b038216610b105760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103be565b5f8111610b715760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103be565b5f6001600160a01b0384163014801590610b9457506001600160a01b0383163014155b15610d7157600d546001600160a01b038581169116148015610bc45750600c546001600160a01b03848116911614155b8015610be857506001600160a01b0383165f9081526003602052604090205460ff16155b8015610c0257506004546001600160a01b03848116911614155b15610c445743600a5414610c19575f600b5543600a555b81600b5f828254610c2a91906115a4565b909155505060088054905f610c3e836115b7565b91905055505b600d546001600160a01b038481169116148015610c6a57506001600160a01b0384163014155b15610cc557610c77610f01565b600b541080610c88575043600a5414155b610cc55760405162461bcd60e51b815260206004820152600e60248201526d13585e0814ddd85c08131a5b5a5d60921b60448201526064016103be565b305f90815260016020526040902054600d54600160a81b900460ff16158015610cfb5750600d546001600160a01b038581169116145b8015610d105750600d54600160b01b900460ff165b8015610d2a57506004546001600160a01b03868116911614155b15610d6f578015610d63575f6009548211610d455781610d49565b6009545b9050610d61818511610d5b5784611086565b81611086565b505b47610d6d476111f6565b505b505b6001600160a01b0384165f90815260016020526040902054610d939083611231565b6001600160a01b0385165f90815260016020526040902055610dd6610db88383611231565b6001600160a01b0385165f9081526001602052604090205490611279565b6001600160a01b0384165f908152600160205260409020558015610e6657305f90815260016020526040902054610e0d9082611279565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e5d9085815260200190565b60405180910390a35b6001600160a01b03831661dead14610ec3576001600160a01b038084169085167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610eb18585611231565b60405190815260200160405180910390a35b50505050565b5f8184841115610eec5760405162461bcd60e51b81526004016103be9190611306565b505f610ef884866115cf565b95945050505050565b6040805160028082526060820183525f92839291906020830190803683375050600c54604080516315ab88c960e31b815290519394506001600160a01b039091169263ad5c4648925060048083019260209291908290030181865afa158015610f6c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f90919061153f565b815f81518110610fa257610fa26115f6565b60200260200101906001600160a01b031690816001600160a01b0316815250503081600181518110610fd657610fd66115f6565b6001600160a01b039283166020918202929092010152600c5460405163d06ca61f60e01b81525f92919091169063d06ca61f90611021906729a2241af62c000090869060040161164d565b5f60405180830381865afa15801561103b573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611062919081019061166d565b905080600181518110611077576110776115f6565b60200260200101519250505090565b600d805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106110cc576110cc6115f6565b6001600160a01b03928316602091820292909201810191909152600c54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611123573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611147919061153f565b8160018151811061115a5761115a6115f6565b6001600160a01b039283166020918202929092010152600c546111809130911684610927565b600c5460405163791ac94760e01b81526001600160a01b039091169063791ac947906111b89085905f90869030904290600401611726565b5f604051808303815f87803b1580156111cf575f80fd5b505af11580156111e1573d5f803e3d5ffd5b5050600d805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561122d573d5f803e3d5ffd5b5050565b5f61127283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ec9565b9392505050565b5f8061128583856115a4565b9050838110156112725760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103be565b6001600160a01b03811681146103fb575f80fd5b5f602082840312156112fb575f80fd5b8135611272816112d7565b5f602080835283518060208501525f5b8181101561133257858101830151858201604001528201611316565b505f604082860101526040601f19601f8301168501019250505092915050565b5f8060408385031215611363575f80fd5b823561136e816112d7565b946020939093013593505050565b5f805f6060848603121561138e575f80fd5b8335611399816112d7565b925060208401356113a9816112d7565b929592945050506040919091013590565b5f80604083850312156113cb575f80fd5b82356113d6816112d7565b915060208301356113e6816112d7565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561147457815f190482111561145a5761145a611426565b8085161561146757918102915b93841c939080029061143f565b509250929050565b5f8261148a5750600161038f565b8161149657505f61038f565b81600181146114ac57600281146114b6576114d2565b600191505061038f565b60ff8411156114c7576114c7611426565b50506001821b61038f565b5060208310610133831016604e8410600b84101617156114f5575081810a61038f565b6114ff838361143a565b805f190482111561151257611512611426565b029392505050565b5f61127260ff84168361147c565b808202811582820484141761038f5761038f611426565b5f6020828403121561154f575f80fd5b8151611272816112d7565b5f805f6060848603121561156c575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611595575f80fd5b81518015158114611272575f80fd5b8082018082111561038f5761038f611426565b5f600182016115c8576115c8611426565b5060010190565b8181038181111561038f5761038f611426565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156116425781516001600160a01b03168752958201959082019060010161161d565b509495945050505050565b828152604060208201525f611665604083018461160a565b949350505050565b5f602080838503121561167e575f80fd5b825167ffffffffffffffff80821115611695575f80fd5b818501915085601f8301126116a8575f80fd5b8151818111156116ba576116ba6115e2565b8060051b604051601f19603f830116810181811085821117156116df576116df6115e2565b6040529182528482019250838101850191888311156116fc575f80fd5b938501935b8285101561171a57845184529385019392850192611701565b98975050505050505050565b85815284602082015260a060408201525f61174460a083018661160a565b6001600160a01b039490941660608301525060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220807f87f1effcbe9c4b9b74336b8c36066dd82ce591437e32ddbecdbcb0d7d2aa64736f6c63430008180033

Deployed Bytecode

0x6080604052600436106100f2575f3560e01c806370a08231116100875780638da5cb5b116100575780638da5cb5b1461028657806395d89b41146102ac578063a9059cbb146102e0578063dd62ed3e146102ff575f80fd5b806370a0823114610216578063715018a61461024a578063751039fc1461025e5780638708bce514610272575f80fd5b8063109fe362116100c2578063109fe362146101b457806318160ddd146101c857806323b872dd146101dc578063313ce567146101fb575f80fd5b806302f1ba8c146100fd57806306fdde031461011e578063095ea7b3146101625780630faee56f14610191575f80fd5b366100f957005b5f80fd5b348015610108575f80fd5b5061011c6101173660046112eb565b610343565b005b348015610129575f80fd5b5060408051808201909152600a8152694372617a792046726f6760b01b60208201525b6040516101599190611306565b60405180910390f35b34801561016d575f80fd5b5061018161017c366004611352565b61037f565b6040519015158152602001610159565b34801561019c575f80fd5b506101a660095481565b604051908152602001610159565b3480156101bf575f80fd5b5061011c610395565b3480156101d3575f80fd5b506101a66103fe565b3480156101e7575f80fd5b506101816101f636600461137c565b61041e565b348015610206575f80fd5b5060405160098152602001610159565b348015610221575f80fd5b506101a66102303660046112eb565b6001600160a01b03165f9081526001602052604090205490565b348015610255575f80fd5b5061011c6104da565b348015610269575f80fd5b5061011c61054b565b34801561027d575f80fd5b5061011c610576565b348015610291575f80fd5b505f546040516001600160a01b039091168152602001610159565b3480156102b7575f80fd5b5060408051808201909152600c81526b44494e4744494e4744494e4760a01b602082015261014c565b3480156102eb575f80fd5b506101816102fa366004611352565b61091b565b34801561030a575f80fd5b506101a66103193660046113ba565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b335f9081526003602052604090205460ff1661035d575f80fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b5f61038b338484610927565b5060015b92915050565b5f546001600160a01b031633146103c75760405162461bcd60e51b81526004016103be906113f1565b60405180910390fd5b5f47116103d2575f80fd5b60405133904780156108fc02915f818181858888f193505050501580156103fb573d5f803e3d5ffd5b50565b5f61040b6009600a61151a565b61041990633b9aca00611528565b905090565b5f61042a848484610a4a565b6004546001600160a01b0316331480159061047a5750600d546001600160a01b038581169116148061046757506001600160a01b03831661dead14155b8061047a57506001600160a01b03841630145b156104d0576104d084336104cb85604051806060016040528060288152602001611762602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610ec9565b610927565b5060019392505050565b5f546001600160a01b031633146105035760405162461bcd60e51b81526004016103be906113f1565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146105745760405162461bcd60e51b81526004016103be906113f1565b565b5f546001600160a01b0316331461059f5760405162461bcd60e51b81526004016103be906113f1565b600d54600160a01b900460ff16156105f95760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103be565b600c80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106429030906106346009600a61151a565b6104cb90633b9aca00611528565b600c5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610692573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106b6919061153f565b6001600160a01b031663c9c6539630600c5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610715573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610739919061153f565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610783573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107a7919061153f565b600d80546001600160a01b039283166001600160a01b0319909116179055600c541663f305d71947306107ee816001600160a01b03165f9081526001602052604090205490565b5f806108015f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610867573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061088c919061155a565b5050600d805462ff00ff60a01b1981166201000160a01b17909155600c5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156108f7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103fb9190611585565b5f61038b338484610a4a565b6001600160a01b0383166109895760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103be565b6001600160a01b0382166109ea5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103be565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610aae5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103be565b6001600160a01b038216610b105760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103be565b5f8111610b715760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103be565b5f6001600160a01b0384163014801590610b9457506001600160a01b0383163014155b15610d7157600d546001600160a01b038581169116148015610bc45750600c546001600160a01b03848116911614155b8015610be857506001600160a01b0383165f9081526003602052604090205460ff16155b8015610c0257506004546001600160a01b03848116911614155b15610c445743600a5414610c19575f600b5543600a555b81600b5f828254610c2a91906115a4565b909155505060088054905f610c3e836115b7565b91905055505b600d546001600160a01b038481169116148015610c6a57506001600160a01b0384163014155b15610cc557610c77610f01565b600b541080610c88575043600a5414155b610cc55760405162461bcd60e51b815260206004820152600e60248201526d13585e0814ddd85c08131a5b5a5d60921b60448201526064016103be565b305f90815260016020526040902054600d54600160a81b900460ff16158015610cfb5750600d546001600160a01b038581169116145b8015610d105750600d54600160b01b900460ff165b8015610d2a57506004546001600160a01b03868116911614155b15610d6f578015610d63575f6009548211610d455781610d49565b6009545b9050610d61818511610d5b5784611086565b81611086565b505b47610d6d476111f6565b505b505b6001600160a01b0384165f90815260016020526040902054610d939083611231565b6001600160a01b0385165f90815260016020526040902055610dd6610db88383611231565b6001600160a01b0385165f9081526001602052604090205490611279565b6001600160a01b0384165f908152600160205260409020558015610e6657305f90815260016020526040902054610e0d9082611279565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e5d9085815260200190565b60405180910390a35b6001600160a01b03831661dead14610ec3576001600160a01b038084169085167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610eb18585611231565b60405190815260200160405180910390a35b50505050565b5f8184841115610eec5760405162461bcd60e51b81526004016103be9190611306565b505f610ef884866115cf565b95945050505050565b6040805160028082526060820183525f92839291906020830190803683375050600c54604080516315ab88c960e31b815290519394506001600160a01b039091169263ad5c4648925060048083019260209291908290030181865afa158015610f6c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f90919061153f565b815f81518110610fa257610fa26115f6565b60200260200101906001600160a01b031690816001600160a01b0316815250503081600181518110610fd657610fd66115f6565b6001600160a01b039283166020918202929092010152600c5460405163d06ca61f60e01b81525f92919091169063d06ca61f90611021906729a2241af62c000090869060040161164d565b5f60405180830381865afa15801561103b573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611062919081019061166d565b905080600181518110611077576110776115f6565b60200260200101519250505090565b600d805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106110cc576110cc6115f6565b6001600160a01b03928316602091820292909201810191909152600c54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611123573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611147919061153f565b8160018151811061115a5761115a6115f6565b6001600160a01b039283166020918202929092010152600c546111809130911684610927565b600c5460405163791ac94760e01b81526001600160a01b039091169063791ac947906111b89085905f90869030904290600401611726565b5f604051808303815f87803b1580156111cf575f80fd5b505af11580156111e1573d5f803e3d5ffd5b5050600d805460ff60a81b1916905550505050565b6004546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561122d573d5f803e3d5ffd5b5050565b5f61127283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ec9565b9392505050565b5f8061128583856115a4565b9050838110156112725760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103be565b6001600160a01b03811681146103fb575f80fd5b5f602082840312156112fb575f80fd5b8135611272816112d7565b5f602080835283518060208501525f5b8181101561133257858101830151858201604001528201611316565b505f604082860101526040601f19601f8301168501019250505092915050565b5f8060408385031215611363575f80fd5b823561136e816112d7565b946020939093013593505050565b5f805f6060848603121561138e575f80fd5b8335611399816112d7565b925060208401356113a9816112d7565b929592945050506040919091013590565b5f80604083850312156113cb575f80fd5b82356113d6816112d7565b915060208301356113e6816112d7565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561147457815f190482111561145a5761145a611426565b8085161561146757918102915b93841c939080029061143f565b509250929050565b5f8261148a5750600161038f565b8161149657505f61038f565b81600181146114ac57600281146114b6576114d2565b600191505061038f565b60ff8411156114c7576114c7611426565b50506001821b61038f565b5060208310610133831016604e8410600b84101617156114f5575081810a61038f565b6114ff838361143a565b805f190482111561151257611512611426565b029392505050565b5f61127260ff84168361147c565b808202811582820484141761038f5761038f611426565b5f6020828403121561154f575f80fd5b8151611272816112d7565b5f805f6060848603121561156c575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611595575f80fd5b81518015158114611272575f80fd5b8082018082111561038f5761038f611426565b5f600182016115c8576115c8611426565b5060010190565b8181038181111561038f5761038f611426565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156116425781516001600160a01b03168752958201959082019060010161161d565b509495945050505050565b828152604060208201525f611665604083018461160a565b949350505050565b5f602080838503121561167e575f80fd5b825167ffffffffffffffff80821115611695575f80fd5b818501915085601f8301126116a8575f80fd5b8151818111156116ba576116ba6115e2565b8060051b604051601f19603f830116810181811085821117156116df576116df6115e2565b6040529182528482019250838101850191888311156116fc575f80fd5b938501935b8285101561171a57845184529385019392850192611701565b98975050505050505050565b85815284602082015260a060408201525f61174460a083018661160a565b6001600160a01b039490941660608301525060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220807f87f1effcbe9c4b9b74336b8c36066dd82ce591437e32ddbecdbcb0d7d2aa64736f6c63430008180033

Deployed Bytecode Sourcemap

4153:8700:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12426:156;;;;;;;;;;-1:-1:-1;12426:156:0;;;;;:::i;:::-;;:::i;:::-;;5681:83;;;;;;;;;;-1:-1:-1;5751:5:0;;;;;;;;;;;;-1:-1:-1;;;5751:5:0;;;;5681:83;;;;;;;:::i;:::-;;;;;;;;6976:193;;;;;;;;;;-1:-1:-1;6976:193:0;;;;;:::i;:::-;;:::i;:::-;;;1472:14:1;;1465:22;1447:41;;1435:2;1420:18;6976:193:0;1307:187:1;4944:54:0;;;;;;;;;;;;;;;;;;;1645:25:1;;;1633:2;1618:18;4944:54:0;1499:177:1;12590:169:0;;;;;;;;;;;;;:::i;5958:107::-;;;;;;;;;;;;;:::i;7177:646::-;;;;;;;;;;-1:-1:-1;7177:646:0;;;;;:::i;:::-;;:::i;5867:83::-;;;;;;;;;;-1:-1:-1;5867:83:0;;4733:1;2300:36:1;;2288:2;2273:18;5867:83:0;2158:184:1;6073:119:0;;;;;;;;;;-1:-1:-1;6073:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6166:18:0;6139:7;6166:18;;;:9;:18;;;;;;;6073:119;2955:148;;;;;;;;;;;;;:::i;12804:46::-;;;;;;;;;;;;;:::i;11021:891::-;;;;;;;;;;;;;:::i;2741:79::-;;;;;;;;;;-1:-1:-1;2779:7:0;2806:6;2741:79;;-1:-1:-1;;;;;2806:6:0;;;2753:51:1;;2741:2;2726:18;2741:79:0;2607:203:1;5772:87:0;;;;;;;;;;-1:-1:-1;5844:7:0;;;;;;;;;;;;-1:-1:-1;;;5844:7:0;;;;5772:87;;6200:199;;;;;;;;;;-1:-1:-1;6200:199:0;;;;;:::i;:::-;;:::i;6784:184::-;;;;;;;;;;-1:-1:-1;6784:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;6933:18:0;;;6901:7;6933:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6784:184;12426:156;12529:10;12516:24;;;;:12;:24;;;;;;;;12508:33;;;;;;12552:10;:22;;-1:-1:-1;;;;;;12552:22:0;-1:-1:-1;;;;;12552:22:0;;;;;;;;;;12426:156::o;6976:193::-;7078:4;7100:39;361:10;7123:7;7132:6;7100:8;:39::i;:::-;-1:-1:-1;7157:4:0;6976:193;;;;;:::o;12590:169::-;2868:6;;-1:-1:-1;;;;;2868:6:0;361:10;2868:22;2860:67;;;;-1:-1:-1;;;2860:67:0;;;;;;;:::i;:::-;;;;;;;;;12685:1:::1;12661:21;:25;12653:34;;;::::0;::::1;;12698:53;::::0;361:10;;12729:21:::1;12698:53:::0;::::1;;;::::0;::::1;::::0;;;12729:21;361:10;12698:53;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;12590:169::o:0;5958:107::-;6011:7;4804:13;4733:1;4804:2;:13;:::i;:::-;4788:29;;:13;:29;:::i;:::-;6031:26;;5958:107;:::o;7177:646::-;7309:4;7326:36;7336:6;7344:9;7355:6;7326:9;:36::i;:::-;7415:10;;-1:-1:-1;;;;;7415:10:0;7401;:24;;;;:119;;-1:-1:-1;7453:13:0;;-1:-1:-1;;;;;7443:23:0;;;7453:13;;7443:23;;:49;;-1:-1:-1;;;;;;7470:22:0;;4494:6;7470:22;;7443:49;:76;;;-1:-1:-1;;;;;;7496:23:0;;7514:4;7496:23;7443:76;7383:410;;;7545:248;7572:6;361:10;7628:150;7688:6;7628:150;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7628:19:0;;;;;;:11;:19;;;;;;;;361:10;7628:33;;;;;;;;;;:37;:150::i;:::-;7545:8;:248::i;:::-;-1:-1:-1;7811:4:0;7177:646;;;;;:::o;2955:148::-;2868:6;;-1:-1:-1;;;;;2868:6:0;361:10;2868:22;2860:67;;;;-1:-1:-1;;;2860:67:0;;;;;;;:::i;:::-;3062:1:::1;3046:6:::0;;3025:40:::1;::::0;-1:-1:-1;;;;;3046:6:0;;::::1;::::0;3025:40:::1;::::0;3062:1;;3025:40:::1;3093:1;3076:19:::0;;-1:-1:-1;;;;;;3076:19:0::1;::::0;;2955:148::o;12804:46::-;2868:6;;-1:-1:-1;;;;;2868:6:0;361:10;2868:22;2860:67;;;;-1:-1:-1;;;2860:67:0;;;;;;;:::i;:::-;12804:46::o;11021:891::-;2868:6;;-1:-1:-1;;;;;2868:6:0;361:10;2868:22;2860:67;;;;-1:-1:-1;;;2860:67:0;;;;;;;:::i;:::-;11097:11:::1;::::0;-1:-1:-1;;;11097:11:0;::::1;;;11096:12;11088:48;;;::::0;-1:-1:-1;;;11088:48:0;;5469:2:1;11088:48:0::1;::::0;::::1;5451:21:1::0;5508:2;5488:18;;;5481:30;5547:25;5527:18;;;5520:53;5590:18;;11088:48:0::1;5267:347:1::0;11088:48:0::1;11147:15;:104:::0;;-1:-1:-1;;;;;;11147:104:0::1;11198:42;11147:104:::0;;::::1;::::0;;;11262:70:::1;::::0;11279:4:::1;::::0;4804:13:::1;4733:1;4804:2;:13;:::i;:::-;4788:29;::::0;:13:::1;:29;:::i;11262:70::-;11377:15;;;;;;;;;-1:-1:-1::0;;;;;11377:15:0::1;-1:-1:-1::0;;;;;11377:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11359:55:0::1;;11437:4;11457:15;;;;;;;;;-1:-1:-1::0;;;;;11457:15:0::1;-1:-1:-1::0;;;;;11457:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11359:131;::::0;-1:-1:-1;;;;;;11359:131:0::1;::::0;;;;;;-1:-1:-1;;;;;6113:15:1;;;11359:131:0::1;::::0;::::1;6095:34:1::0;6165:15;;6145:18;;;6138:43;6030:18;;11359:131:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11343:13;:147:::0;;-1:-1:-1;;;;;11343:147:0;;::::1;-1:-1:-1::0;;;;;;11343:147:0;;::::1;;::::0;;11501:15:::1;::::0;::::1;:31;11540:21;11585:4;11605:24;11585:4:::0;-1:-1:-1;;;;;6166:18:0;6139:7;6166:18;;;:9;:18;;;;;;;6073:119;11605:24:::1;11644:1;11660::::0;11676:7:::1;2779::::0;2806:6;-1:-1:-1;;;;;2806:6:0;;2741:79;11676:7:::1;11501:223;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11501:223:0;;;-1:-1:-1;;;;;6551:15:1;;;11501:223:0::1;::::0;::::1;6533:34:1::0;6583:18;;;6576:34;;;;6626:18;;;6619:34;;;;6669:18;;;6662:34;6733:15;;;6712:19;;;6705:44;11698:15:0::1;6765:19:1::0;;;6758:35;6467:19;;11501:223:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11735:11:0::1;:18:::0;;-1:-1:-1;;;;11764:18:0;;-1:-1:-1;;;11764:18:0;;;;11845:15:::1;::::0;11793:111:::1;::::0;-1:-1:-1;;;11793:111:0;;-1:-1:-1;;;;;11845:15:0;;::::1;11793:111;::::0;::::1;7289:51:1::0;-1:-1:-1;;7356:18:1;;;7349:34;11800:13:0;;;-1:-1:-1;11793:29:0::1;::::0;7262:18:1;;11793:111:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;6200:199::-:0;6305:4;6327:42;361:10;6351:9;6362:6;6327:9;:42::i;6407:369::-;-1:-1:-1;;;;;6534:19:0;;6526:68;;;;-1:-1:-1;;;6526:68:0;;7878:2:1;6526:68:0;;;7860:21:1;7917:2;7897:18;;;7890:30;7956:34;7936:18;;;7929:62;-1:-1:-1;;;8007:18:1;;;8000:34;8051:19;;6526:68:0;7676:400:1;6526:68:0;-1:-1:-1;;;;;6613:21:0;;6605:68;;;;-1:-1:-1;;;6605:68:0;;8283:2:1;6605:68:0;;;8265:21:1;8322:2;8302:18;;;8295:30;8361:34;8341:18;;;8334:62;-1:-1:-1;;;8412:18:1;;;8405:32;8454:19;;6605:68:0;8081:398:1;6605:68:0;-1:-1:-1;;;;;6684:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6736:32;;1645:25:1;;;6736:32:0;;1618:18:1;6736:32:0;;;;;;;6407:369;;;:::o;8154:2495::-;-1:-1:-1;;;;;8276:18:0;;8268:68;;;;-1:-1:-1;;;8268:68:0;;8686:2:1;8268:68:0;;;8668:21:1;8725:2;8705:18;;;8698:30;8764:34;8744:18;;;8737:62;-1:-1:-1;;;8815:18:1;;;8808:35;8860:19;;8268:68:0;8484:401:1;8268:68:0;-1:-1:-1;;;;;8355:16:0;;8347:64;;;;-1:-1:-1;;;8347:64:0;;9092:2:1;8347:64:0;;;9074:21:1;9131:2;9111:18;;;9104:30;9170:34;9150:18;;;9143:62;-1:-1:-1;;;9221:18:1;;;9214:33;9264:19;;8347:64:0;8890:399:1;8347:64:0;8439:1;8430:6;:10;8422:64;;;;-1:-1:-1;;;8422:64:0;;9496:2:1;8422:64:0;;;9478:21:1;9535:2;9515:18;;;9508:30;9574:34;9554:18;;;9547:62;-1:-1:-1;;;9625:18:1;;;9618:39;9674:19;;8422:64:0;9294:405:1;8422:64:0;8497:17;-1:-1:-1;;;;;8547:21:0;;8563:4;8547:21;;;;:44;;-1:-1:-1;;;;;;8572:19:0;;8586:4;8572:19;;8547:44;8529:1728;;;8648:13;;-1:-1:-1;;;;;8640:21:0;;;8648:13;;8640:21;:72;;;;-1:-1:-1;8696:15:0;;-1:-1:-1;;;;;8682:30:0;;;8696:15;;8682:30;;8640:72;:110;;;;-1:-1:-1;;;;;;8734:16:0;;;;;;:12;:16;;;;;;;;8733:17;8640:110;:147;;;;-1:-1:-1;8777:10:0;;-1:-1:-1;;;;;8771:16:0;;;8777:10;;8771:16;;8640:147;8618:441;;;8843:12;8826:13;;:29;8822:148;;8898:1;8880:15;:19;8938:12;8922:13;:28;8822:148;9007:6;8988:15;;:25;;;;;;;:::i;:::-;;;;-1:-1:-1;;9032:9:0;:11;;;:9;:11;;;:::i;:::-;;;;;;8618:441;9085:13;;-1:-1:-1;;;;;9079:19:0;;;9085:13;;9079:19;:44;;;;-1:-1:-1;;;;;;9102:21:0;;9118:4;9102:21;;9079:44;9075:276;;;9192:27;:25;:27::i;:::-;9174:15;;:45;:103;;;;9265:12;9248:13;;:29;;9174:103;9144:191;;;;-1:-1:-1;;;9144:191:0;;10176:2:1;9144:191:0;;;10158:21:1;10215:2;10195:18;;;10188:30;-1:-1:-1;;;10234:18:1;;;10227:44;10288:18;;9144:191:0;9974:338:1;9144:191:0;9416:4;9367:28;6166:18;;;:9;:18;;;;;;9460:6;;-1:-1:-1;;;9460:6:0;;;;9459:7;:47;;;;-1:-1:-1;9493:13:0;;-1:-1:-1;;;;;9487:19:0;;;9493:13;;9487:19;9459:47;:79;;;;-1:-1:-1;9527:11:0;;-1:-1:-1;;;9527:11:0;;;;9459:79;:118;;;;-1:-1:-1;9567:10:0;;-1:-1:-1;;;;;9559:18:0;;;9567:10;;9559:18;;9459:118;9437:809;;;9616:24;;9612:380;;9682:19;9727:11;;9704:20;:34;:121;;9805:20;9704:121;;;9766:11;;9704:121;9682:143;;9848:124;9915:11;9906:6;:20;:43;;9943:6;9848:31;:124::i;9906:43::-;9929:11;9848:31;:124::i;:::-;9659:333;9612:380;10061:21;10153:58;10189:21;10153:35;:58::i;:::-;9593:653;9437:809;8603:1654;8529:1728;-1:-1:-1;;;;;10287:15:0;;;;;;:9;:15;;;;;;:27;;10307:6;10287:19;:27::i;:::-;-1:-1:-1;;;;;10269:15:0;;;;;;:9;:15;;;;;:45;10341:40;10359:21;:6;10370:9;10359:10;:21::i;:::-;-1:-1:-1;;;;;10341:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;10325:13:0;;;;;;:9;:13;;;;;:56;10396:13;;10392:172;;10471:4;10453:24;;;;:9;:24;;;;;;:39;;10482:9;10453:28;:39::i;:::-;10444:4;10426:24;;;;:9;:24;;;;;;;:66;;;;10512:40;;-1:-1:-1;;;;;10512:40:0;;;;;;;10542:9;1645:25:1;;1633:2;1618:18;;1499:177;10512:40:0;;;;;;;;10392:172;-1:-1:-1;;;;;10578:15:0;;4494:6;10578:15;10574:67;;-1:-1:-1;;;;;10600:41:0;;;;;;;10619:21;:6;10630:9;10619:10;:21::i;:::-;10600:41;;1645:25:1;;;1633:2;1618:18;10600:41:0;;;;;;;10574:67;8257:2392;8154:2495;;;:::o;1543:224::-;1663:7;1699:12;1691:6;;;;1683:29;;;;-1:-1:-1;;;1683:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1723:9:0;1735:5;1739:1;1735;:5;:::i;:::-;1723:17;1543:224;-1:-1:-1;;;;;1543:224:0:o;10657:356::-;10761:16;;;10775:1;10761:16;;;;;;;;10717:7;;;;10761:16;10775:1;10761:16;;;;;;;;-1:-1:-1;;10798:15:0;;:22;;;-1:-1:-1;;;10798:22:0;;;;10737:40;;-1:-1:-1;;;;;;10798:15:0;;;;:20;;-1:-1:-1;10798:22:0;;;;;;;;;;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10788:4;10793:1;10788:7;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;10788:32:0;;;-1:-1:-1;;;;;10788:32:0;;;;;10849:4;10831;10836:1;10831:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10831:23:0;;;:7;;;;;;;;;:23;10892:15;;:82;;-1:-1:-1;;;10892:82:0;;10865:24;;10892:15;;;;;:29;;:82;;10936:8;;10959:4;;10892:82;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10892:82:0;;;;;;;;;;;;:::i;:::-;10865:109;;10992:10;11003:1;10992:13;;;;;;;;:::i;:::-;;;;;;;10985:20;;;;10657:356;:::o;11920:498::-;5312:6;:13;;-1:-1:-1;;;;5312:13:0;-1:-1:-1;;;5312:13:0;;;12037:16:::1;::::0;;12051:1:::1;12037:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12037:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12037:16:0::1;12013:40;;12082:4;12064;12069:1;12064:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12064:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12108:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12108:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12064:7;;12108:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12098:4;12103:1;12098:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12098:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;12173:15:::1;::::0;12141:62:::1;::::0;12158:4:::1;::::0;12173:15:::1;12191:11:::0;12141:8:::1;:62::i;:::-;12214:15;::::0;:196:::1;::::0;-1:-1:-1;;;12214:196:0;;-1:-1:-1;;;;;12214:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;12295:11;;12214:15:::1;::::0;12337:4;;12364::::1;::::0;12384:15:::1;::::0;12214:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5348:6:0;:14;;-1:-1:-1;;;;5348:14:0;;;-1:-1:-1;;;;11920:498:0:o;8031:115::-;8111:10;;:27;;-1:-1:-1;;;;;8111:10:0;;;;:27;;;;;8131:6;;8111:10;:27;:10;:27;8131:6;8111:10;:27;;;;;;;;;;;;;;;;;;;;;8031:115;:::o;1399:136::-;1457:7;1484:43;1488:1;1491;1484:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1477:50;1399:136;-1:-1:-1;;;1399:136:0:o;1212:179::-;1270:7;;1302:5;1306:1;1302;:5;:::i;:::-;1290:17;;1331:1;1326;:6;;1318:46;;;;-1:-1:-1;;;1318:46:0;;13446:2:1;1318:46:0;;;13428:21:1;13485:2;13465:18;;;13458:30;13524:29;13504:18;;;13497:57;13571:18;;1318:46:0;13244:351:1;14:139;-1:-1:-1;;;;;97:31:1;;87:42;;77:70;;143:1;140;133:12;158:263;225:6;278:2;266:9;257:7;253:23;249:32;246:52;;;294:1;291;284:12;246:52;333:9;320:23;352:39;385:5;352:39;:::i;426:548::-;538:4;567:2;596;585:9;578:21;628:6;622:13;671:6;666:2;655:9;651:18;644:34;696:1;706:140;720:6;717:1;714:13;706:140;;;815:14;;;811:23;;805:30;781:17;;;800:2;777:26;770:66;735:10;;706:140;;;710:3;895:1;890:2;881:6;870:9;866:22;862:31;855:42;965:2;958;954:7;949:2;941:6;937:15;933:29;922:9;918:45;914:54;906:62;;;;426:548;;;;:::o;979:323::-;1047:6;1055;1108:2;1096:9;1087:7;1083:23;1079:32;1076:52;;;1124:1;1121;1114:12;1076:52;1163:9;1150:23;1182:39;1215:5;1182:39;:::i;:::-;1240:5;1292:2;1277:18;;;;1264:32;;-1:-1:-1;;;979:323:1:o;1681:472::-;1758:6;1766;1774;1827:2;1815:9;1806:7;1802:23;1798:32;1795:52;;;1843:1;1840;1833:12;1795:52;1882:9;1869:23;1901:39;1934:5;1901:39;:::i;:::-;1959:5;-1:-1:-1;2016:2:1;2001:18;;1988:32;2029:41;1988:32;2029:41;:::i;:::-;1681:472;;2089:7;;-1:-1:-1;;;2143:2:1;2128:18;;;;2115:32;;1681:472::o;2815:404::-;2883:6;2891;2944:2;2932:9;2923:7;2919:23;2915:32;2912:52;;;2960:1;2957;2950:12;2912:52;2999:9;2986:23;3018:39;3051:5;3018:39;:::i;:::-;3076:5;-1:-1:-1;3133:2:1;3118:18;;3105:32;3146:41;3105:32;3146:41;:::i;:::-;3206:7;3196:17;;;2815:404;;;;;:::o;3224:356::-;3426:2;3408:21;;;3445:18;;;3438:30;3504:34;3499:2;3484:18;;3477:62;3571:2;3556:18;;3224:356::o;3585:127::-;3646:10;3641:3;3637:20;3634:1;3627:31;3677:4;3674:1;3667:15;3701:4;3698:1;3691:15;3717:416;3806:1;3843:5;3806:1;3857:270;3878:7;3868:8;3865:21;3857:270;;;3937:4;3933:1;3929:6;3925:17;3919:4;3916:27;3913:53;;;3946:18;;:::i;:::-;3996:7;3986:8;3982:22;3979:55;;;4016:16;;;;3979:55;4095:22;;;;4055:15;;;;3857:270;;;3861:3;3717:416;;;;;:::o;4138:806::-;4187:5;4217:8;4207:80;;-1:-1:-1;4258:1:1;4272:5;;4207:80;4306:4;4296:76;;-1:-1:-1;4343:1:1;4357:5;;4296:76;4388:4;4406:1;4401:59;;;;4474:1;4469:130;;;;4381:218;;4401:59;4431:1;4422:10;;4445:5;;;4469:130;4506:3;4496:8;4493:17;4490:43;;;4513:18;;:::i;:::-;-1:-1:-1;;4569:1:1;4555:16;;4584:5;;4381:218;;4683:2;4673:8;4670:16;4664:3;4658:4;4655:13;4651:36;4645:2;4635:8;4632:16;4627:2;4621:4;4618:12;4614:35;4611:77;4608:159;;;-1:-1:-1;4720:19:1;;;4752:5;;4608:159;4799:34;4824:8;4818:4;4799:34;:::i;:::-;4869:6;4865:1;4861:6;4857:19;4848:7;4845:32;4842:58;;;4880:18;;:::i;:::-;4918:20;;4138:806;-1:-1:-1;;;4138:806:1:o;4949:140::-;5007:5;5036:47;5077:4;5067:8;5063:19;5057:4;5036:47;:::i;5094:168::-;5167:9;;;5198;;5215:15;;;5209:22;;5195:37;5185:71;;5236:18;;:::i;5619:259::-;5689:6;5742:2;5730:9;5721:7;5717:23;5713:32;5710:52;;;5758:1;5755;5748:12;5710:52;5790:9;5784:16;5809:39;5842:5;5809:39;:::i;6804:306::-;6892:6;6900;6908;6961:2;6949:9;6940:7;6936:23;6932:32;6929:52;;;6977:1;6974;6967:12;6929:52;7006:9;7000:16;6990:26;;7056:2;7045:9;7041:18;7035:25;7025:35;;7100:2;7089:9;7085:18;7079:25;7069:35;;6804:306;;;;;:::o;7394:277::-;7461:6;7514:2;7502:9;7493:7;7489:23;7485:32;7482:52;;;7530:1;7527;7520:12;7482:52;7562:9;7556:16;7615:5;7608:13;7601:21;7594:5;7591:32;7581:60;;7637:1;7634;7627:12;9704:125;9769:9;;;9790:10;;;9787:36;;;9803:18;;:::i;9834:135::-;9873:3;9894:17;;;9891:43;;9914:18;;:::i;:::-;-1:-1:-1;9961:1:1;9950:13;;9834:135::o;10317:128::-;10384:9;;;10405:11;;;10402:37;;;10419:18;;:::i;10450:127::-;10511:10;10506:3;10502:20;10499:1;10492:31;10542:4;10539:1;10532:15;10566:4;10563:1;10556:15;10582:127;10643:10;10638:3;10634:20;10631:1;10624:31;10674:4;10671:1;10664:15;10698:4;10695:1;10688:15;10714:465;10767:3;10805:5;10799:12;10832:6;10827:3;10820:19;10858:4;10887;10882:3;10878:14;10871:21;;10926:4;10919:5;10915:16;10949:1;10959:195;10973:6;10970:1;10967:13;10959:195;;;11038:13;;-1:-1:-1;;;;;11034:39:1;11022:52;;11094:12;;;;11129:15;;;;11070:1;10988:9;10959:195;;;-1:-1:-1;11170:3:1;;10714:465;-1:-1:-1;;;;;10714:465:1:o;11184:358::-;11417:6;11406:9;11399:25;11460:2;11455;11444:9;11440:18;11433:30;11380:4;11480:56;11532:2;11521:9;11517:18;11509:6;11480:56;:::i;:::-;11472:64;11184:358;-1:-1:-1;;;;11184:358:1:o;11547:1105::-;11642:6;11673:2;11716;11704:9;11695:7;11691:23;11687:32;11684:52;;;11732:1;11729;11722:12;11684:52;11765:9;11759:16;11794:18;11835:2;11827:6;11824:14;11821:34;;;11851:1;11848;11841:12;11821:34;11889:6;11878:9;11874:22;11864:32;;11934:7;11927:4;11923:2;11919:13;11915:27;11905:55;;11956:1;11953;11946:12;11905:55;11985:2;11979:9;12007:2;12003;12000:10;11997:36;;;12013:18;;:::i;:::-;12059:2;12056:1;12052:10;12091:2;12085:9;12154:2;12150:7;12145:2;12141;12137:11;12133:25;12125:6;12121:38;12209:6;12197:10;12194:22;12189:2;12177:10;12174:18;12171:46;12168:72;;;12220:18;;:::i;:::-;12256:2;12249:22;12306:18;;;12340:15;;;;-1:-1:-1;12382:11:1;;;12378:20;;;12410:19;;;12407:39;;;12442:1;12439;12432:12;12407:39;12466:11;;;;12486:135;12502:6;12497:3;12494:15;12486:135;;;12568:10;;12556:23;;12519:12;;;;12599;;;;12486:135;;;12640:6;11547:1105;-1:-1:-1;;;;;;;;11547:1105:1:o;12657:582::-;12956:6;12945:9;12938:25;12999:6;12994:2;12983:9;12979:18;12972:34;13042:3;13037:2;13026:9;13022:18;13015:31;12919:4;13063:57;13115:3;13104:9;13100:19;13092:6;13063:57;:::i;:::-;-1:-1:-1;;;;;13156:32:1;;;;13151:2;13136:18;;13129:60;-1:-1:-1;13220:3:1;13205:19;13198:35;13055:65;12657:582;-1:-1:-1;;;12657:582:1:o

Swarm Source

ipfs://807f87f1effcbe9c4b9b74336b8c36066dd82ce591437e32ddbecdbcb0d7d2aa
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.