ETH Price: $2,439.97 (+1.23%)

Token

Porkys Duck Hunt (DAFFY)
 

Overview

Max Total Supply

1,000,000,000 DAFFY

Holders

68

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
1,567,752.177620567587687359 DAFFY

Value
$0.00
0xa3cf81df03bb003ea0d1843626f123462e0083e2
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:
DAFFY

Compiler Version
v0.8.22+commit.4fc1097e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-01-09
*/

/**
$DAFFY             ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⡶⣇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⠋⢹⣿⠀⠀⠀⠀⠀⠀⣠⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⢀⠄⡀⠀⠀⠀⢐⣣⣿⢠⡾⠿⢇⠀⠀⣀⣰⣾⡛⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⠔⣌⠋⠉⠉⠁⠑⠊⢑⠇⠀⠀⡁⢀⣿⠛⠿⠿⢷⣴⣤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⣀⡀⣀⣼⠏⠀⠀⣠⣿⡟⠀⠀⠀⠀⠙⣯⠓⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣠⣤⣄⣀⣀⣤⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣾⣿⣿⣿⣿⡿⠟⠛⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⣿⢿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⣿⡃⠘⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠛⠻⢿⣦⣿⣿⣿⣿⣿⣄⠀⣿⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣶⢮⣿⣿⣿⣿⣿⣿⣷⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣾⣟⣿⣿⣿⣿⣿⣿⣿⡏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠁⠙⣿⣿⣿⣿⣿⣿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⠛⠈⢻⣿⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⠀⠠⠡⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡈⢀⠌⠅⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠄⠀⠀⠀⠀⠀⠀⠀⠀⢁⠜⠀⠄⠄⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠀⠒⠄⣀⣀⠀⠠⠐⠊⠂⢀⠀⠀⠀⠀⠀⠉⠀⠨⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠁⠢⠀⡠⠐⠀⠀⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀

X.com/PDHDaffy

t.me/Daffy_portal 

https://porkysduckhunt.com
**/

// SPDX-License-Identifier: MIT
pragma solidity 0.8.22;

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

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

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

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

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

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

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

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

contract Ownable {
    address private _owner;

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

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

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

    modifier onlyOwner() {
        require(isOwner());
        _;
    }

    function isOwner() private view returns (bool) {
        return msg.sender == _owner;
    }

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

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

    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0));
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

library SafeMath {

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

        return c;
    }
}

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

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

    function factory() external pure returns (address);

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

contract DAFFY is Context, IERC20, Ownable {
    using SafeMath for uint256;
    
    string private constant _name = "Porkys Duck Hunt";
    string private constant _symbol = "DAFFY";
    uint256 private constant _totalSupply = 1_000_000_000 * 10**18;
    uint256 public maxWalletlimit = 20_000_001 * 10**18; 
    uint256 public maxTxLimit = 20_000_001 * 10**18;
    uint256 public minSwap = 500_000 * 10**18;
    uint8 private constant _decimals = 18;

    IUniswapV2Router02 immutable uniswapV2Router;
    address immutable uniswapV2Pair;
    address immutable WETH;
    address payable public marketingWallet;
    bool public isOpen = false;
    mapping (address => bool) public _isBlacklisted;

    uint256 public buyTax;
    uint256 public sellTax;
    uint8 private inSwapAndLiquify;

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

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

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

        marketingWallet = payable(0xd93477453Aa748167D388C7B28DCbB223c8FA17A);
        _balance[msg.sender] = _totalSupply;
        _isExcludedFromFees[marketingWallet] = true;
        _isExcludedFromFees[msg.sender] = true;
        _isExcludedFromFees[address(this)] = true;
        _isExcludedFromFees[address(uniswapV2Router)] = true;
        _allowances[address(this)][address(uniswapV2Router)] = type(uint256)
            .max;
        _allowances[msg.sender][address(uniswapV2Router)] = type(uint256).max;
        _allowances[marketingWallet][address(uniswapV2Router)] = type(uint256)
            .max;

        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

    function name() public pure returns (string memory) {
        return _name;
    }

    function symbol() public pure returns (string memory) {
        return _symbol;
    }

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

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

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

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

    function allowance(address owner, address spender)
        public
        view
        override
        returns (uint256)
    {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount)
        public
        override
        returns (bool)
    {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()] - amount
        );
        return true;
    }

    function _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 ExcludeFromFees(address holder, bool exempt) external onlyOwner {
        _isExcludedFromFees[holder] = exempt;
    }
    
    function RemoveLimits() external onlyOwner {
        maxWalletlimit = _totalSupply;
        maxTxLimit = _totalSupply;
    }
    

    function ChangeTax(uint256 newBuyTax, uint256 newSellTax) external onlyOwner {
        require(newBuyTax <= 10, "Must keep fees at 10% or less");
        require(newSellTax <= 10, "Must keep fees at 10% or less");
        buyTax = newBuyTax;
        sellTax = newSellTax;
    }
    
    function ChangeMinSwap(uint256 NewMinSwapAmount) external onlyOwner {
        minSwap = NewMinSwapAmount * 10**18;
    }

    function ChangeMarketingWalletAddress(address newAddress) external onlyOwner() {
        marketingWallet = payable(newAddress);
    }
    
    function EnableTrading() external onlyOwner {
        isOpen = true;
    }
    
        
    function BlackListWallet(address[] calldata addresses) external onlyOwner {
      for (uint256 i; i < addresses.length; ++i) {
        _isBlacklisted[addresses[i]] = true;
      }
    }
     
    function UnBlackListWallet(address[] calldata addresses) external onlyOwner {
      for (uint256 i; i < addresses.length; ++i) {
        _isBlacklisted[addresses[i]] = false;
      }
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(amount > 1e9, "Min transfer amt");
        require(isOpen || _isExcludedFromFees[from] || _isExcludedFromFees[to], "Not Open");
        require(!_isBlacklisted[from] && !_isBlacklisted[to], "To/from address is blacklisted!");

        uint256 _tax;
        if (_isExcludedFromFees[from] || _isExcludedFromFees[to]) {
            _tax = 0;
        } else {

            if (inSwapAndLiquify == 1) {
                //No tax transfer
                _balance[from] -= amount;
                _balance[to] += amount;

                emit Transfer(from, to, amount);
                return;
            }

            if (from == uniswapV2Pair) {
                require(balanceOf(to).add(amount) <= maxWalletlimit);
                require(amount <= maxTxLimit, "Buy transfer amount exceeds the maxTxLimit.");
                _tax = buyTax;
            } else if (to == uniswapV2Pair) {
                uint256 tokensToSwap = _balance[address(this)];
                if (tokensToSwap > minSwap && inSwapAndLiquify == 0) {
                    inSwapAndLiquify = 1;
                    address[] memory path = new address[](2);
                    path[0] = address(this);
                    path[1] = WETH;
                    uniswapV2Router
                        .swapExactTokensForETHSupportingFeeOnTransferTokens(
                            tokensToSwap,
                            0,
                            path,
                            marketingWallet,
                            block.timestamp
                        );
                    inSwapAndLiquify = 0;
                }
                _tax = sellTax;
            } else {
                _tax = 0;
            }
        }
        


        //Is there tax for sender|receiver?
        if (_tax != 0) {
            //Tax transfer
            uint256 taxTokens = (amount * _tax) / 100;
            uint256 transferAmount = amount - taxTokens;

            _balance[from] -= amount;
            _balance[to] += transferAmount;
            _balance[address(this)] += taxTokens;
            emit Transfer(from, address(this), taxTokens);
            emit Transfer(from, to, transferAmount);
        } else {
            //No tax transfer
            _balance[from] -= amount;
            _balance[to] += amount;

            emit Transfer(from, to, amount);
        }
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"}],"name":"BlackListWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"ChangeMarketingWalletAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"NewMinSwapAmount","type":"uint256"}],"name":"ChangeMinSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"ChangeTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"EnableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"ExcludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"RemoveLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"}],"name":"UnBlackListWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isBlacklisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"isOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletlimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60e06040526a108b2a3a08b9443b64000060018190556002556969e10de76676d08000006003556004805460ff60a01b191690553480156200003f575f80fd5b505f80546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3737a250d5630b4cf539739df2c5dacb4c659f2488d6080819052604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa158015620000d2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620000f891906200033a565b6001600160a01b0390811660c052605a60068190556007556080516040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa15801562000151573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200017791906200033a565b60c0516040516364e329cb60e11b81523060048201526001600160a01b03918216602482015291169063c9c65396906044016020604051808303815f875af1158015620001c6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001ec91906200033a565b6001600160a01b0390811660a052600480546001600160a01b03191673d93477453aa748167d388c7b28dcbb223c8fa17a178155335f8181526009602090815260408083206b033b2e3c9fd0803ce80000009055845486168352600b8252808320805460ff1990811660019081179092558585528285208054821683179055308086528386208054831684179055608051891680875284872080549093169093179091558452600a80845282852082865284528285205f199081905595855280845282852082865284528285208690559554909616835293815283822094825293909352912055620002db3390565b6001600160a01b03165f6001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6b033b2e3c9fd0803ce80000006040516200032c91815260200190565b60405180910390a362000369565b5f602082840312156200034b575f80fd5b81516001600160a01b038116811462000362575f80fd5b9392505050565b60805160a05160c0516114de6200039b5f395f610ea901525f8181610d0b0152610de801525f610f0401526114de5ff3fe6080604052600436106101b2575f3560e01c806370a08231116100e757806395d89b4111610087578063cc1776d311610062578063cc1776d3146104e6578063d50a72a6146104fb578063dd62ed3e1461051a578063f2fde38b1461055e575f80fd5b806395d89b411461047b5780639d8f7706146104a8578063a9059cbb146104c7575f80fd5b806375f0a874116100c257806375f0a874146103fe5780638036d5901461043557806389e40cf91461044a5780638da5cb5b1461045f575f80fd5b806370a0823114610397578063715018a6146103cb57806374233c06146103df575f80fd5b80632f6bc9e7116101525780634f7041a51161012d5780634f7041a51461033a5780635165943f1461034f57806356cd40e71461036e57806359cd903114610382575f80fd5b80632f6bc9e7146102e0578063313ce567146102ff57806347535d7b1461031a575f80fd5b806318160ddd1161018d57806318160ddd146102575780631cdd3be31461027f5780631d97b7cd146102ad57806323b872dd146102c1575f80fd5b806305d2743f146101bd57806306fdde03146101de578063095ea7b314610228575f80fd5b366101b957005b5f80fd5b3480156101c8575f80fd5b506101dc6101d73660046111dd565b61057d565b005b3480156101e9575f80fd5b5060408051808201909152601081526f141bdc9ade5cc8111d58dac8121d5b9d60821b60208201525b60405161021f91906111f6565b60405180910390f35b348015610233575f80fd5b50610247610242366004611242565b6105b4565b604051901515815260200161021f565b348015610262575f80fd5b506b033b2e3c9fd0803ce80000005b60405190815260200161021f565b34801561028a575f80fd5b506102476102993660046111dd565b60056020525f908152604090205460ff1681565b3480156102b8575f80fd5b506101dc6105ca565b3480156102cc575f80fd5b506102476102db36600461126a565b6105f4565b3480156102eb575f80fd5b506101dc6102fa3660046112a3565b610644565b34801561030a575f80fd5b506040516012815260200161021f565b348015610325575f80fd5b5060045461024790600160a01b900460ff1681565b348015610345575f80fd5b5061027160065481565b34801561035a575f80fd5b506101dc6103693660046112c3565b61070b565b348015610379575f80fd5b506101dc610789565b34801561038d575f80fd5b5061027160035481565b3480156103a2575f80fd5b506102716103b13660046111dd565b6001600160a01b03165f9081526009602052604090205490565b3480156103d6575f80fd5b506101dc6107b5565b3480156103ea575f80fd5b506101dc6103f9366004611332565b610812565b348015610409575f80fd5b5060045461041d906001600160a01b031681565b6040516001600160a01b03909116815260200161021f565b348015610440575f80fd5b5061027160025481565b348015610455575f80fd5b5061027160015481565b34801561046a575f80fd5b505f546001600160a01b031661041d565b348015610486575f80fd5b50604080518082019091526005815264444146465960d81b6020820152610212565b3480156104b3575f80fd5b506101dc6104c2366004611349565b61083f565b3480156104d2575f80fd5b506102476104e1366004611242565b61087e565b3480156104f1575f80fd5b5061027160075481565b348015610506575f80fd5b506101dc6105153660046112c3565b61088a565b348015610525575f80fd5b50610271610534366004611382565b6001600160a01b039182165f908152600a6020908152604080832093909416825291909152205490565b348015610569575f80fd5b506101dc6105783660046111dd565b610904565b5f546001600160a01b03163314610592575f80fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b5f6105c0338484610925565b5060015b92915050565b5f546001600160a01b031633146105df575f80fd5b6004805460ff60a01b1916600160a01b179055565b5f610600848484610a48565b6001600160a01b0384165f908152600a602090815260408083203380855292529091205461063a9186916106359086906113c7565b610925565b5060019392505050565b5f546001600160a01b03163314610659575f80fd5b600a8211156106af5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064015b60405180910390fd5b600a8111156107005760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064016106a6565b600691909155600755565b5f546001600160a01b03163314610720575f80fd5b5f5b81811015610784575f60055f858585818110610740576107406113da565b905060200201602081019061075591906111dd565b6001600160a01b0316815260208101919091526040015f20805460ff1916911515919091179055600101610722565b505050565b5f546001600160a01b0316331461079e575f80fd5b6b033b2e3c9fd0803ce80000006001819055600255565b5f546001600160a01b031633146107ca575f80fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b03163314610827575f80fd5b61083981670de0b6b3a76400006113ee565b60035550565b5f546001600160a01b03163314610854575f80fd5b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b5f6105c0338484610a48565b5f546001600160a01b0316331461089f575f80fd5b5f5b8181101561078457600160055f8585858181106108c0576108c06113da565b90506020020160208101906108d591906111dd565b6001600160a01b0316815260208101919091526040015f20805460ff19169115159190911790556001016108a1565b5f546001600160a01b03163314610919575f80fd5b610922816110f2565b50565b6001600160a01b0383166109875760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106a6565b6001600160a01b0382166109e85760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106a6565b6001600160a01b038381165f818152600a602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610aac5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106a6565b633b9aca008111610af25760405162461bcd60e51b815260206004820152601060248201526f135a5b881d1c985b9cd9995c88185b5d60821b60448201526064016106a6565b600454600160a01b900460ff1680610b2157506001600160a01b0383165f908152600b602052604090205460ff165b80610b4357506001600160a01b0382165f908152600b602052604090205460ff165b610b7a5760405162461bcd60e51b81526020600482015260086024820152672737ba1027b832b760c11b60448201526064016106a6565b6001600160a01b0383165f9081526005602052604090205460ff16158015610bba57506001600160a01b0382165f9081526005602052604090205460ff16155b610c065760405162461bcd60e51b815260206004820152601f60248201527f546f2f66726f6d206164647265737320697320626c61636b6c6973746564210060448201526064016106a6565b6001600160a01b0383165f908152600b602052604081205460ff1680610c4357506001600160a01b0383165f908152600b602052604090205460ff165b15610c4f57505f610f87565b60085460ff16600103610d09576001600160a01b0384165f9081526009602052604081208054849290610c839084906113c7565b90915550506001600160a01b0383165f9081526009602052604081208054849290610caf908490611405565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610cfb91815260200190565b60405180910390a350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b031603610de657600154610d6d83610d67866001600160a01b03165f9081526009602052604090205490565b9061115d565b1115610d77575f80fd5b600254821115610ddd5760405162461bcd60e51b815260206004820152602b60248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201526a36b0bc2a3c2634b6b4ba1760a91b60648201526084016106a6565b50600654610f87565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031603610f8457305f9081526009602052604090205460035481118015610e42575060085460ff16155b15610f7a576008805460ff191660011790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610e8757610e876113da565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110610edb57610edb6113da565b6001600160a01b0392831660209182029290920101526004805460405163791ac94760e01b81527f000000000000000000000000000000000000000000000000000000000000000084169363791ac94793610f419388935f938993921691429101611418565b5f604051808303815f87803b158015610f58575f80fd5b505af1158015610f6a573d5f803e3d5ffd5b50506008805460ff191690555050505b5050600754610f87565b505f5b80156110c5575f6064610f9a83856113ee565b610fa49190611489565b90505f610fb182856113c7565b6001600160a01b0387165f90815260096020526040812080549293508692909190610fdd9084906113c7565b90915550506001600160a01b0385165f9081526009602052604081208054839290611009908490611405565b9091555050305f908152600960205260408120805484929061102c908490611405565b909155505060405182815230906001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110b691815260200190565b60405180910390a350506110ec565b6001600160a01b0384165f9081526009602052604081208054849290610c839084906113c7565b50505050565b6001600160a01b038116611104575f80fd5b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f806111698385611405565b9050838110156111bb5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016106a6565b9392505050565b80356001600160a01b03811681146111d8575f80fd5b919050565b5f602082840312156111ed575f80fd5b6111bb826111c2565b5f602080835283518060208501525f5b8181101561122257858101830151858201604001528201611206565b505f604082860101526040601f19601f8301168501019250505092915050565b5f8060408385031215611253575f80fd5b61125c836111c2565b946020939093013593505050565b5f805f6060848603121561127c575f80fd5b611285846111c2565b9250611293602085016111c2565b9150604084013590509250925092565b5f80604083850312156112b4575f80fd5b50508035926020909101359150565b5f80602083850312156112d4575f80fd5b823567ffffffffffffffff808211156112eb575f80fd5b818501915085601f8301126112fe575f80fd5b81358181111561130c575f80fd5b8660208260051b8501011115611320575f80fd5b60209290920196919550909350505050565b5f60208284031215611342575f80fd5b5035919050565b5f806040838503121561135a575f80fd5b611363836111c2565b915060208301358015158114611377575f80fd5b809150509250929050565b5f8060408385031215611393575f80fd5b61139c836111c2565b91506113aa602084016111c2565b90509250929050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105c4576105c46113b3565b634e487b7160e01b5f52603260045260245ffd5b80820281158282048414176105c4576105c46113b3565b808201808211156105c4576105c46113b3565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156114685784516001600160a01b031683529383019391830191600101611443565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826114a357634e487b7160e01b5f52601260045260245ffd5b50049056fea26469706673582212208e7ee46f3cc7eb643cde12ab9fdc6b1ba7e81551826c587ea194399b095a223764736f6c63430008160033

Deployed Bytecode

0x6080604052600436106101b2575f3560e01c806370a08231116100e757806395d89b4111610087578063cc1776d311610062578063cc1776d3146104e6578063d50a72a6146104fb578063dd62ed3e1461051a578063f2fde38b1461055e575f80fd5b806395d89b411461047b5780639d8f7706146104a8578063a9059cbb146104c7575f80fd5b806375f0a874116100c257806375f0a874146103fe5780638036d5901461043557806389e40cf91461044a5780638da5cb5b1461045f575f80fd5b806370a0823114610397578063715018a6146103cb57806374233c06146103df575f80fd5b80632f6bc9e7116101525780634f7041a51161012d5780634f7041a51461033a5780635165943f1461034f57806356cd40e71461036e57806359cd903114610382575f80fd5b80632f6bc9e7146102e0578063313ce567146102ff57806347535d7b1461031a575f80fd5b806318160ddd1161018d57806318160ddd146102575780631cdd3be31461027f5780631d97b7cd146102ad57806323b872dd146102c1575f80fd5b806305d2743f146101bd57806306fdde03146101de578063095ea7b314610228575f80fd5b366101b957005b5f80fd5b3480156101c8575f80fd5b506101dc6101d73660046111dd565b61057d565b005b3480156101e9575f80fd5b5060408051808201909152601081526f141bdc9ade5cc8111d58dac8121d5b9d60821b60208201525b60405161021f91906111f6565b60405180910390f35b348015610233575f80fd5b50610247610242366004611242565b6105b4565b604051901515815260200161021f565b348015610262575f80fd5b506b033b2e3c9fd0803ce80000005b60405190815260200161021f565b34801561028a575f80fd5b506102476102993660046111dd565b60056020525f908152604090205460ff1681565b3480156102b8575f80fd5b506101dc6105ca565b3480156102cc575f80fd5b506102476102db36600461126a565b6105f4565b3480156102eb575f80fd5b506101dc6102fa3660046112a3565b610644565b34801561030a575f80fd5b506040516012815260200161021f565b348015610325575f80fd5b5060045461024790600160a01b900460ff1681565b348015610345575f80fd5b5061027160065481565b34801561035a575f80fd5b506101dc6103693660046112c3565b61070b565b348015610379575f80fd5b506101dc610789565b34801561038d575f80fd5b5061027160035481565b3480156103a2575f80fd5b506102716103b13660046111dd565b6001600160a01b03165f9081526009602052604090205490565b3480156103d6575f80fd5b506101dc6107b5565b3480156103ea575f80fd5b506101dc6103f9366004611332565b610812565b348015610409575f80fd5b5060045461041d906001600160a01b031681565b6040516001600160a01b03909116815260200161021f565b348015610440575f80fd5b5061027160025481565b348015610455575f80fd5b5061027160015481565b34801561046a575f80fd5b505f546001600160a01b031661041d565b348015610486575f80fd5b50604080518082019091526005815264444146465960d81b6020820152610212565b3480156104b3575f80fd5b506101dc6104c2366004611349565b61083f565b3480156104d2575f80fd5b506102476104e1366004611242565b61087e565b3480156104f1575f80fd5b5061027160075481565b348015610506575f80fd5b506101dc6105153660046112c3565b61088a565b348015610525575f80fd5b50610271610534366004611382565b6001600160a01b039182165f908152600a6020908152604080832093909416825291909152205490565b348015610569575f80fd5b506101dc6105783660046111dd565b610904565b5f546001600160a01b03163314610592575f80fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b5f6105c0338484610925565b5060015b92915050565b5f546001600160a01b031633146105df575f80fd5b6004805460ff60a01b1916600160a01b179055565b5f610600848484610a48565b6001600160a01b0384165f908152600a602090815260408083203380855292529091205461063a9186916106359086906113c7565b610925565b5060019392505050565b5f546001600160a01b03163314610659575f80fd5b600a8211156106af5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064015b60405180910390fd5b600a8111156107005760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064016106a6565b600691909155600755565b5f546001600160a01b03163314610720575f80fd5b5f5b81811015610784575f60055f858585818110610740576107406113da565b905060200201602081019061075591906111dd565b6001600160a01b0316815260208101919091526040015f20805460ff1916911515919091179055600101610722565b505050565b5f546001600160a01b0316331461079e575f80fd5b6b033b2e3c9fd0803ce80000006001819055600255565b5f546001600160a01b031633146107ca575f80fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b03163314610827575f80fd5b61083981670de0b6b3a76400006113ee565b60035550565b5f546001600160a01b03163314610854575f80fd5b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b5f6105c0338484610a48565b5f546001600160a01b0316331461089f575f80fd5b5f5b8181101561078457600160055f8585858181106108c0576108c06113da565b90506020020160208101906108d591906111dd565b6001600160a01b0316815260208101919091526040015f20805460ff19169115159190911790556001016108a1565b5f546001600160a01b03163314610919575f80fd5b610922816110f2565b50565b6001600160a01b0383166109875760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106a6565b6001600160a01b0382166109e85760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106a6565b6001600160a01b038381165f818152600a602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610aac5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106a6565b633b9aca008111610af25760405162461bcd60e51b815260206004820152601060248201526f135a5b881d1c985b9cd9995c88185b5d60821b60448201526064016106a6565b600454600160a01b900460ff1680610b2157506001600160a01b0383165f908152600b602052604090205460ff165b80610b4357506001600160a01b0382165f908152600b602052604090205460ff165b610b7a5760405162461bcd60e51b81526020600482015260086024820152672737ba1027b832b760c11b60448201526064016106a6565b6001600160a01b0383165f9081526005602052604090205460ff16158015610bba57506001600160a01b0382165f9081526005602052604090205460ff16155b610c065760405162461bcd60e51b815260206004820152601f60248201527f546f2f66726f6d206164647265737320697320626c61636b6c6973746564210060448201526064016106a6565b6001600160a01b0383165f908152600b602052604081205460ff1680610c4357506001600160a01b0383165f908152600b602052604090205460ff165b15610c4f57505f610f87565b60085460ff16600103610d09576001600160a01b0384165f9081526009602052604081208054849290610c839084906113c7565b90915550506001600160a01b0383165f9081526009602052604081208054849290610caf908490611405565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610cfb91815260200190565b60405180910390a350505050565b7f0000000000000000000000000b2a1fe0728e6787a242932a1abb39ddfac14b956001600160a01b0316846001600160a01b031603610de657600154610d6d83610d67866001600160a01b03165f9081526009602052604090205490565b9061115d565b1115610d77575f80fd5b600254821115610ddd5760405162461bcd60e51b815260206004820152602b60248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201526a36b0bc2a3c2634b6b4ba1760a91b60648201526084016106a6565b50600654610f87565b7f0000000000000000000000000b2a1fe0728e6787a242932a1abb39ddfac14b956001600160a01b0316836001600160a01b031603610f8457305f9081526009602052604090205460035481118015610e42575060085460ff16155b15610f7a576008805460ff191660011790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610e8757610e876113da565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610edb57610edb6113da565b6001600160a01b0392831660209182029290920101526004805460405163791ac94760e01b81527f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84169363791ac94793610f419388935f938993921691429101611418565b5f604051808303815f87803b158015610f58575f80fd5b505af1158015610f6a573d5f803e3d5ffd5b50506008805460ff191690555050505b5050600754610f87565b505f5b80156110c5575f6064610f9a83856113ee565b610fa49190611489565b90505f610fb182856113c7565b6001600160a01b0387165f90815260096020526040812080549293508692909190610fdd9084906113c7565b90915550506001600160a01b0385165f9081526009602052604081208054839290611009908490611405565b9091555050305f908152600960205260408120805484929061102c908490611405565b909155505060405182815230906001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110b691815260200190565b60405180910390a350506110ec565b6001600160a01b0384165f9081526009602052604081208054849290610c839084906113c7565b50505050565b6001600160a01b038116611104575f80fd5b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f806111698385611405565b9050838110156111bb5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016106a6565b9392505050565b80356001600160a01b03811681146111d8575f80fd5b919050565b5f602082840312156111ed575f80fd5b6111bb826111c2565b5f602080835283518060208501525f5b8181101561122257858101830151858201604001528201611206565b505f604082860101526040601f19601f8301168501019250505092915050565b5f8060408385031215611253575f80fd5b61125c836111c2565b946020939093013593505050565b5f805f6060848603121561127c575f80fd5b611285846111c2565b9250611293602085016111c2565b9150604084013590509250925092565b5f80604083850312156112b4575f80fd5b50508035926020909101359150565b5f80602083850312156112d4575f80fd5b823567ffffffffffffffff808211156112eb575f80fd5b818501915085601f8301126112fe575f80fd5b81358181111561130c575f80fd5b8660208260051b8501011115611320575f80fd5b60209290920196919550909350505050565b5f60208284031215611342575f80fd5b5035919050565b5f806040838503121561135a575f80fd5b611363836111c2565b915060208301358015158114611377575f80fd5b809150509250929050565b5f8060408385031215611393575f80fd5b61139c836111c2565b91506113aa602084016111c2565b90509250929050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105c4576105c46113b3565b634e487b7160e01b5f52603260045260245ffd5b80820281158282048414176105c4576105c46113b3565b808201808211156105c4576105c46113b3565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156114685784516001600160a01b031683529383019391830191600101611443565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826114a357634e487b7160e01b5f52601260045260245ffd5b50049056fea26469706673582212208e7ee46f3cc7eb643cde12ab9fdc6b1ba7e81551826c587ea194399b095a223764736f6c63430008160033

Deployed Bytecode Sourcemap

5793:7922:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10412:135;;;;;;;;;;-1:-1:-1;10412:135:0;;;;;:::i;:::-;;:::i;:::-;;7857:83;;;;;;;;;;-1:-1:-1;7927:5:0;;;;;;;;;;;;-1:-1:-1;;;7927:5:0;;;;7857:83;;;;;;;:::i;:::-;;;;;;;;8767:193;;;;;;;;;;-1:-1:-1;8767:193:0;;;;;:::i;:::-;;:::i;:::-;;;1360:14:1;;1353:22;1335:41;;1323:2;1308:18;8767:193:0;1195:187:1;8134:100:0;;;;;;;;;;-1:-1:-1;6027:22:0;8134:100;;;1533:25:1;;;1521:2;1506:18;8134:100:0;1387:177:1;6459:47:0;;;;;;;;;;-1:-1:-1;6459:47:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;10559:76;;;;;;;;;;;;;:::i;8968:350::-;;;;;;;;;;-1:-1:-1;8968:350:0;;;;;:::i;:::-;;:::i;9988:282::-;;;;;;;;;;-1:-1:-1;9988:282:0;;;;;:::i;:::-;;:::i;8043:83::-;;;;;;;;;;-1:-1:-1;8043:83:0;;6252:2;2297:36:1;;2285:2;2270:18;8043:83:0;2155:184:1;6426:26:0;;;;;;;;;;-1:-1:-1;6426:26:0;;;;-1:-1:-1;;;6426:26:0;;;;;;6515:21;;;;;;;;;;;;;;;;10859:192;;;;;;;;;;-1:-1:-1;10859:192:0;;;;;:::i;:::-;;:::i;9847:127::-;;;;;;;;;;;;;:::i;6169:41::-;;;;;;;;;;;;;;;;8242:118;;;;;;;;;;-1:-1:-1;8242:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;8335:17:0;8308:7;8335:17;;;:8;:17;;;;;;;8242:118;4602:140;;;;;;;;;;;;;:::i;10282:122::-;;;;;;;;;;-1:-1:-1;10282:122:0;;;;;:::i;:::-;;:::i;6381:38::-;;;;;;;;;;-1:-1:-1;6381:38:0;;;;-1:-1:-1;;;;;6381:38:0;;;;;;-1:-1:-1;;;;;3329:32:1;;;3311:51;;3299:2;3284:18;6381:38:0;3149:219:1;6115:47:0;;;;;;;;;;;;;;;;6056:51;;;;;;;;;;;;;;;;4336:79;;;;;;;;;;-1:-1:-1;4374:7:0;4401:6;-1:-1:-1;;;;;4401:6:0;4336:79;;7948:87;;;;;;;;;;-1:-1:-1;8020:7:0;;;;;;;;;;;;-1:-1:-1;;;8020:7:0;;;;7948:87;;9707:128;;;;;;;;;;-1:-1:-1;9707:128:0;;;;;:::i;:::-;;:::i;8368:199::-;;;;;;;;;;-1:-1:-1;8368:199:0;;;;;:::i;:::-;;:::i;6543:22::-;;;;;;;;;;;;;;;;10657:189;;;;;;;;;;-1:-1:-1;10657:189:0;;;;;:::i;:::-;;:::i;8575:184::-;;;;;;;;;;-1:-1:-1;8575:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;8724:18:0;;;8692:7;8724:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;8575:184;4750:109;;;;;;;;;;-1:-1:-1;4750:109:0;;;;;:::i;:::-;;:::i;10412:135::-;4542:4;4580:6;-1:-1:-1;;;;;4580:6:0;4566:10;:20;4455:18;;;;;;10502:15:::1;:37:::0;;-1:-1:-1;;;;;;10502:37:0::1;-1:-1:-1::0;;;;;10502:37:0;;;::::1;::::0;;;::::1;::::0;;10412:135::o;8767:193::-;8869:4;8891:39;3245:10;8914:7;8923:6;8891:8;:39::i;:::-;-1:-1:-1;8948:4:0;8767:193;;;;;:::o;10559:76::-;4542:4;4580:6;-1:-1:-1;;;;;4580:6:0;4566:10;:20;4455:18;;;;;;10614:6:::1;:13:::0;;-1:-1:-1;;;;10614:13:0::1;-1:-1:-1::0;;;10614:13:0::1;::::0;;10559:76::o;8968:350::-;9100:4;9117:36;9127:6;9135:9;9146:6;9117:9;:36::i;:::-;-1:-1:-1;;;;;9235:19:0;;;;;;:11;:19;;;;;;;;3245:10;9235:33;;;;;;;;;9164:124;;9187:6;;9235:42;;9271:6;;9235:42;:::i;:::-;9164:8;:124::i;:::-;-1:-1:-1;9306:4:0;8968:350;;;;;:::o;9988:282::-;4542:4;4580:6;-1:-1:-1;;;;;4580:6:0;4566:10;:20;4455:18;;;;;;10097:2:::1;10084:9;:15;;10076:57;;;::::0;-1:-1:-1;;;10076:57:0;;4665:2:1;10076:57:0::1;::::0;::::1;4647:21:1::0;4704:2;4684:18;;;4677:30;4743:31;4723:18;;;4716:59;4792:18;;10076:57:0::1;;;;;;;;;10166:2;10152:10;:16;;10144:58;;;::::0;-1:-1:-1;;;10144:58:0;;4665:2:1;10144:58:0::1;::::0;::::1;4647:21:1::0;4704:2;4684:18;;;4677:30;4743:31;4723:18;;;4716:59;4792:18;;10144:58:0::1;4463:353:1::0;10144:58:0::1;10213:6;:18:::0;;;;10242:7:::1;:20:::0;9988:282::o;10859:192::-;4542:4;4580:6;-1:-1:-1;;;;;4580:6:0;4566:10;:20;4455:18;;;;;;10949:9:::1;10944:100;10960:20:::0;;::::1;10944:100;;;11029:5;10998:14;:28;11013:9;;11023:1;11013:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10998:28:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;10998:28:0;:36;;-1:-1:-1;;10998:36:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;10982:3:0::1;10944:100;;;;10859:192:::0;;:::o;9847:127::-;4542:4;4580:6;-1:-1:-1;;;;;4580:6:0;4566:10;:20;4455:18;;;;;;6027:22:::1;9901:14;:29:::0;;;9941:10:::1;:25:::0;9847:127::o;4602:140::-;4542:4;4580:6;-1:-1:-1;;;;;4580:6:0;4566:10;:20;4455:18;;;;;;4701:1:::1;4685:6:::0;;4664:40:::1;::::0;-1:-1:-1;;;;;4685:6:0;;::::1;::::0;4664:40:::1;::::0;4701:1;;4664:40:::1;4732:1;4715:19:::0;;-1:-1:-1;;;;;;4715:19:0::1;::::0;;4602:140::o;10282:122::-;4542:4;4580:6;-1:-1:-1;;;;;4580:6:0;4566:10;:20;4455:18;;;;;;10371:25:::1;:16:::0;10390:6:::1;10371:25;:::i;:::-;10361:7;:35:::0;-1:-1:-1;10282:122:0:o;9707:128::-;4542:4;4580:6;-1:-1:-1;;;;;4580:6:0;4566:10;:20;4455:18;;;;;;-1:-1:-1;;;;;9791:27:0;;;::::1;;::::0;;;:19:::1;:27;::::0;;;;:36;;-1:-1:-1;;9791:36:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9707:128::o;8368:199::-;8473:4;8495:42;3245:10;8519:9;8530:6;8495:9;:42::i;10657:189::-;4542:4;4580:6;-1:-1:-1;;;;;4580:6:0;4566:10;:20;4455:18;;;;;;10745:9:::1;10740:99;10756:20:::0;;::::1;10740:99;;;10825:4;10794:14;:28;10809:9;;10819:1;10809:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10794:28:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;10794:28:0;:35;;-1:-1:-1;;10794:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;10778:3:0::1;10740:99;;4750:109:::0;4542:4;4580:6;-1:-1:-1;;;;;4580:6:0;4566:10;:20;4455:18;;;;;;4823:28:::1;4842:8;4823:18;:28::i;:::-;4750:109:::0;:::o;9326:369::-;-1:-1:-1;;;;;9453:19:0;;9445:68;;;;-1:-1:-1;;;9445:68:0;;5328:2:1;9445:68:0;;;5310:21:1;5367:2;5347:18;;;5340:30;5406:34;5386:18;;;5379:62;-1:-1:-1;;;5457:18:1;;;5450:34;5501:19;;9445:68:0;5126:400:1;9445:68:0;-1:-1:-1;;;;;9532:21:0;;9524:68;;;;-1:-1:-1;;;9524:68:0;;5733:2:1;9524:68:0;;;5715:21:1;5772:2;5752:18;;;5745:30;5811:34;5791:18;;;5784:62;-1:-1:-1;;;5862:18:1;;;5855:32;5904:19;;9524:68:0;5531:398:1;9524:68:0;-1:-1:-1;;;;;9603:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9655:32;;1533:25:1;;;9655:32:0;;1506:18:1;9655:32:0;;;;;;;9326:369;;;:::o;11059:2616::-;-1:-1:-1;;;;;11181:18:0;;11173:68;;;;-1:-1:-1;;;11173:68:0;;6136:2:1;11173:68:0;;;6118:21:1;6175:2;6155:18;;;6148:30;6214:34;6194:18;;;6187:62;-1:-1:-1;;;6265:18:1;;;6258:35;6310:19;;11173:68:0;5934:401:1;11173:68:0;11269:3;11260:6;:12;11252:41;;;;-1:-1:-1;;;11252:41:0;;6542:2:1;11252:41:0;;;6524:21:1;6581:2;6561:18;;;6554:30;-1:-1:-1;;;6600:18:1;;;6593:46;6656:18;;11252:41:0;6340:340:1;11252:41:0;11312:6;;-1:-1:-1;;;11312:6:0;;;;;:35;;-1:-1:-1;;;;;;11322:25:0;;;;;;:19;:25;;;;;;;;11312:35;:62;;;-1:-1:-1;;;;;;11351:23:0;;;;;;:19;:23;;;;;;;;11312:62;11304:83;;;;-1:-1:-1;;;11304:83:0;;6887:2:1;11304:83:0;;;6869:21:1;6926:1;6906:18;;;6899:29;-1:-1:-1;;;6944:18:1;;;6937:38;6992:18;;11304:83:0;6685:331:1;11304:83:0;-1:-1:-1;;;;;11407:20:0;;;;;;:14;:20;;;;;;;;11406:21;:44;;;;-1:-1:-1;;;;;;11432:18:0;;;;;;:14;:18;;;;;;;;11431:19;11406:44;11398:88;;;;-1:-1:-1;;;11398:88:0;;7223:2:1;11398:88:0;;;7205:21:1;7262:2;7242:18;;;7235:30;7301:33;7281:18;;;7274:61;7352:18;;11398:88:0;7021:355:1;11398:88:0;-1:-1:-1;;;;;11526:25:0;;11499:12;11526:25;;;:19;:25;;;;;;;;;:52;;-1:-1:-1;;;;;;11555:23:0;;;;;;:19;:23;;;;;;;;11526:52;11522:1484;;;-1:-1:-1;11602:1:0;11522:1484;;;11642:16;;;;;:21;11638:239;;-1:-1:-1;;;;;11719:14:0;;;;;;:8;:14;;;;;:24;;11737:6;;11719:14;:24;;11737:6;;11719:24;:::i;:::-;;;;-1:-1:-1;;;;;;;11762:12:0;;;;;;:8;:12;;;;;:22;;11778:6;;11762:12;:22;;11778:6;;11762:22;:::i;:::-;;;;;;;;11825:2;-1:-1:-1;;;;;11810:26:0;11819:4;-1:-1:-1;;;;;11810:26:0;;11829:6;11810:26;;;;1533:25:1;;1521:2;1506:18;;1387:177;11810:26:0;;;;;;;;11855:7;11059:2616;;;:::o;11638:239::-;11905:13;-1:-1:-1;;;;;11897:21:0;:4;-1:-1:-1;;;;;11897:21:0;;11893:1102;;11976:14;;11947:25;11965:6;11947:13;11957:2;-1:-1:-1;;;;;8335:17:0;8308:7;8335:17;;;:8;:17;;;;;;;8242:118;11947:13;:17;;:25::i;:::-;:43;;11939:52;;;;;;12028:10;;12018:6;:20;;12010:76;;;;-1:-1:-1;;;12010:76:0;;7713:2:1;12010:76:0;;;7695:21:1;7752:2;7732:18;;;7725:30;7791:34;7771:18;;;7764:62;-1:-1:-1;;;7842:18:1;;;7835:41;7893:19;;12010:76:0;7511:407:1;12010:76:0;-1:-1:-1;12112:6:0;;11893:1102;;;12150:13;-1:-1:-1;;;;;12144:19:0;:2;-1:-1:-1;;;;;12144:19:0;;12140:855;;12224:4;12184:20;12207:23;;;:8;:23;;;;;;12268:7;;12253:22;;:47;;;;-1:-1:-1;12279:16:0;;;;:21;12253:47;12249:649;;;12325:16;:20;;-1:-1:-1;;12325:20:0;12344:1;12325:20;;;12392:16;;;12406:1;12392:16;;;;;;;;-1:-1:-1;;12392:16:0;;;;;;;;;;-1:-1:-1;12392:16:0;12368:40;;12449:4;12431;12436:1;12431:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;12431:23:0;;;-1:-1:-1;;;;;12431:23:0;;;;;12487:4;12477;12482:1;12477:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12477:14:0;;;:7;;;;;;;;;:14;12747:15;;;12514:321;;-1:-1:-1;;;12514:321:0;;:15;:92;;;;;:321;;12637:12;;12680:1;;12712:4;;12747:15;;;12793;;12514:321;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12858:16:0;:20;;-1:-1:-1;;12858:20:0;;;-1:-1:-1;;;12249:649:0;-1:-1:-1;;12923:7:0;;12140:855;;;-1:-1:-1;12978:1:0;12140:855;13079:9;;13075:593;;13133:17;13171:3;13154:13;13163:4;13154:6;:13;:::i;:::-;13153:21;;;;:::i;:::-;13133:41;-1:-1:-1;13189:22:0;13214:18;13133:41;13214:6;:18;:::i;:::-;-1:-1:-1;;;;;13249:14:0;;;;;;:8;:14;;;;;:24;;13189:43;;-1:-1:-1;13267:6:0;;13249:14;;;:24;;13267:6;;13249:24;:::i;:::-;;;;-1:-1:-1;;;;;;;13288:12:0;;;;;;:8;:12;;;;;:30;;13304:14;;13288:12;:30;;13304:14;;13288:30;:::i;:::-;;;;-1:-1:-1;;13350:4:0;13333:23;;;;:8;:23;;;;;:36;;13360:9;;13333:23;:36;;13360:9;;13333:36;:::i;:::-;;;;-1:-1:-1;;13389:40:0;;1533:25:1;;;13412:4:0;;-1:-1:-1;;;;;13389:40:0;;;;;1521:2:1;1506:18;13389:40:0;;;;;;;13464:2;-1:-1:-1;;;;;13449:34:0;13458:4;-1:-1:-1;;;;;13449:34:0;;13468:14;13449:34;;;;1533:25:1;;1521:2;1506:18;;1387:177;13449:34:0;;;;;;;;13090:405;;13075:593;;;-1:-1:-1;;;;;13547:14:0;;;;;;:8;:14;;;;;:24;;13565:6;;13547:14;:24;;13565:6;;13547:24;:::i;13075:593::-;11162:2513;11059:2616;;;:::o;4867:187::-;-1:-1:-1;;;;;4941:22:0;;4933:31;;;;;;5001:6;;;4980:38;;-1:-1:-1;;;;;4980:38:0;;;;5001:6;;;4980:38;;;5029:6;:17;;-1:-1:-1;;;;;;5029:17:0;-1:-1:-1;;;;;5029:17:0;;;;;;;;;;4867:187::o;5087:181::-;5145:7;;5177:5;5181:1;5177;:5;:::i;:::-;5165:17;;5206:1;5201;:6;;5193:46;;;;-1:-1:-1;;;5193:46:0;;9472:2:1;5193:46:0;;;9454:21:1;9511:2;9491:18;;;9484:30;9550:29;9530:18;;;9523:57;9597:18;;5193:46:0;9270:351:1;5193:46:0;5259:1;5087:181;-1:-1:-1;;;5087:181:0: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;383:548::-;495:4;524:2;553;542:9;535:21;585:6;579:13;628:6;623:2;612:9;608:18;601:34;653:1;663:140;677:6;674:1;671:13;663:140;;;772:14;;;768:23;;762:30;738:17;;;757:2;734:26;727:66;692:10;;663:140;;;667:3;852:1;847:2;838:6;827:9;823:22;819:31;812:42;922:2;915;911:7;906:2;898:6;894:15;890:29;879:9;875:45;871:54;863:62;;;;383:548;;;;:::o;936:254::-;1004:6;1012;1065:2;1053:9;1044:7;1040:23;1036:32;1033:52;;;1081:1;1078;1071:12;1033:52;1104:29;1123:9;1104:29;:::i;:::-;1094:39;1180:2;1165:18;;;;1152:32;;-1:-1:-1;;;936:254:1:o;1569:328::-;1646:6;1654;1662;1715:2;1703:9;1694:7;1690:23;1686:32;1683:52;;;1731:1;1728;1721:12;1683:52;1754:29;1773:9;1754:29;:::i;:::-;1744:39;;1802:38;1836:2;1825:9;1821:18;1802:38;:::i;:::-;1792:48;;1887:2;1876:9;1872:18;1859:32;1849:42;;1569:328;;;;;:::o;1902:248::-;1970:6;1978;2031:2;2019:9;2010:7;2006:23;2002:32;1999:52;;;2047:1;2044;2037:12;1999:52;-1:-1:-1;;2070:23:1;;;2140:2;2125:18;;;2112:32;;-1:-1:-1;1902:248:1:o;2344:615::-;2430:6;2438;2491:2;2479:9;2470:7;2466:23;2462:32;2459:52;;;2507:1;2504;2497:12;2459:52;2547:9;2534:23;2576:18;2617:2;2609:6;2606:14;2603:34;;;2633:1;2630;2623:12;2603:34;2671:6;2660:9;2656:22;2646:32;;2716:7;2709:4;2705:2;2701:13;2697:27;2687:55;;2738:1;2735;2728:12;2687:55;2778:2;2765:16;2804:2;2796:6;2793:14;2790:34;;;2820:1;2817;2810:12;2790:34;2873:7;2868:2;2858:6;2855:1;2851:14;2847:2;2843:23;2839:32;2836:45;2833:65;;;2894:1;2891;2884:12;2833:65;2925:2;2917:11;;;;;2947:6;;-1:-1:-1;2344:615:1;;-1:-1:-1;;;;2344:615:1:o;2964:180::-;3023:6;3076:2;3064:9;3055:7;3051:23;3047:32;3044:52;;;3092:1;3089;3082:12;3044:52;-1:-1:-1;3115:23:1;;2964:180;-1:-1:-1;2964:180:1:o;3581:347::-;3646:6;3654;3707:2;3695:9;3686:7;3682:23;3678:32;3675:52;;;3723:1;3720;3713:12;3675:52;3746:29;3765:9;3746:29;:::i;:::-;3736:39;;3825:2;3814:9;3810:18;3797:32;3872:5;3865:13;3858:21;3851:5;3848:32;3838:60;;3894:1;3891;3884:12;3838:60;3917:5;3907:15;;;3581:347;;;;;:::o;3933:260::-;4001:6;4009;4062:2;4050:9;4041:7;4037:23;4033:32;4030:52;;;4078:1;4075;4068:12;4030:52;4101:29;4120:9;4101:29;:::i;:::-;4091:39;;4149:38;4183:2;4172:9;4168:18;4149:38;:::i;:::-;4139:48;;3933:260;;;;;:::o;4198:127::-;4259:10;4254:3;4250:20;4247:1;4240:31;4290:4;4287:1;4280:15;4314:4;4311:1;4304:15;4330:128;4397:9;;;4418:11;;;4415:37;;;4432:18;;:::i;4821:127::-;4882:10;4877:3;4873:20;4870:1;4863:31;4913:4;4910:1;4903:15;4937:4;4934:1;4927:15;4953:168;5026:9;;;5057;;5074:15;;;5068:22;;5054:37;5044:71;;5095:18;;:::i;7381:125::-;7446:9;;;7467:10;;;7464:36;;;7480:18;;:::i;8055:988::-;8325:4;8373:3;8362:9;8358:19;8404:6;8393:9;8386:25;8430:2;8468:6;8463:2;8452:9;8448:18;8441:34;8511:3;8506:2;8495:9;8491:18;8484:31;8535:6;8570;8564:13;8601:6;8593;8586:22;8639:3;8628:9;8624:19;8617:26;;8678:2;8670:6;8666:15;8652:29;;8699:1;8709:195;8723:6;8720:1;8717:13;8709:195;;;8788:13;;-1:-1:-1;;;;;8784:39:1;8772:52;;8879:15;;;;8844:12;;;;8820:1;8738:9;8709:195;;;-1:-1:-1;;;;;;;8960:32:1;;;;8955:2;8940:18;;8933:60;-1:-1:-1;;;9024:3:1;9009:19;9002:35;8921:3;8055:988;-1:-1:-1;;;8055:988:1:o;9048:217::-;9088:1;9114;9104:132;;9158:10;9153:3;9149:20;9146:1;9139:31;9193:4;9190:1;9183:15;9221:4;9218:1;9211:15;9104:132;-1:-1:-1;9250:9:1;;9048:217::o

Swarm Source

ipfs://8e7ee46f3cc7eb643cde12ab9fdc6b1ba7e81551826c587ea194399b095a2237
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.