ETH Price: $3,267.00 (+4.60%)
Gas: 2 Gwei

Token

Dejitaru Ponpu (dPONPU)
 

Overview

Max Total Supply

100,000,000 dPONPU

Holders

71

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.000000000000000001 dPONPU

Value
$0.00
0xfda784d84f7be38438f3dbcadc8d6fd2f9f22d4d
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:
DejitaruPonpu

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-12-26
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;

abstract contract Ownable {
    address private _owner;

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

    constructor() {
        _transferOwnership(msg.sender);
    }

    modifier onlyOwner() {
        require(owner() == msg.sender, "Ownable: caller is not the owner");
        _;
    }

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }

    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

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

}

interface IERC20 {

    function allowance(address owner, address spender) external view returns (uint256);
    event Transfer(address indexed from, address indexed to, uint256 value);

    event Approval(address indexed owner, address indexed spender, uint256 value);
    function approve(address spender, uint256 amount) external returns (bool);
    function totalSupply() external view returns (uint256);

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

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

}

interface IERC20Metadata is IERC20 {

    function decimals() external view returns (uint8);
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);

}

contract ERC20 is IERC20, IERC20Metadata {

    mapping(address => mapping(address => uint256)) private _allowances;
    string private _name;
    mapping(address => uint256) private _balances;

    uint256 private _totalSupply;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[msg.sender][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(msg.sender, spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender] + addedValue);
        return true;
    }

    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][msg.sender];
        require(currentAllowance >= amount, "ERC20: transfer amount greater than allowance");
        unchecked {
            _approve(sender, msg.sender, currentAllowance - amount);
        }

        return true;
    }

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

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

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(msg.sender, recipient, amount);
        return true;
    }

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

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "ERC20: transfer from zero address");
        require(recipient != address(0), "ERC20: transfer to zero address");

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount greater than balance");
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);

    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        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 name() public view virtual override returns (string memory) {
        return _name;
    }

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

}

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

interface IUniswapV2Router02 {
    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 swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;
}

contract DejitaruPonpu is ERC20, Ownable {

    address public lpTokenReceiver;
    uint256 public tokensForDev;
    address public devWallet;
    uint256 public feeDenominator = 1000;


    bool private swapping;
    uint256 public sellDevFee;
    uint256 public buyDevFee;
    uint256 public sellTotalFees;
    mapping(address => bool) public isExcludedMaxTxn;

    bool public limitsInEffect = true;
    uint256 public buyTotalFees;
    uint256 public sellLiquidityFee;
    uint256 public maxTransactionAmount;
    mapping(address => bool) private isFeeExcluded;
    IUniswapV2Router02 public immutable router;
    uint256 public maxWallet;
    address public immutable AMM;


    uint256 public buyLiquidityFee;
    uint256 public tokensForLiquidity;

    constructor(address router_, address devWallet_, address lpTokenReceiver_) ERC20("Dejitaru Ponpu", "dPONPU") {

        router = IUniswapV2Router02(router_);

        lpTokenReceiver = lpTokenReceiver_;

        devWallet = devWallet_;

        AMM = IUniswapV2Factory(
                router.factory()
        ).createPair(
            address(this),
            router.WETH()
        );

        isExcludedMaxTxn[address(router)] = true;
        isExcludedMaxTxn[address(AMM)] = true;
        uint256 totalSupply = 100_000_000 * 1e18;

        uint256 _sellLiquidityFee = 20;
        uint256 _sellDevFee = 20;
        uint256 _buyLiquidityFee = 20;
        uint256 _buyDevFee = 20;

        buyDevFee = _buyDevFee;
        sellDevFee = _sellDevFee;

        buyLiquidityFee = _buyLiquidityFee;
        sellLiquidityFee = _sellLiquidityFee;
        isExcludedMaxTxn[address(0xdead)] = true;

        isExcludedMaxTxn[address(this)] = true;
        isFeeExcluded[address(this)] = true;
        isFeeExcluded[address(0xdead)] = true;

        buyTotalFees = buyLiquidityFee + buyDevFee;
        sellTotalFees = sellLiquidityFee + sellDevFee;

        maxTransactionAmount = totalSupply / 100;
        maxWallet = totalSupply / 100;


        /*
            _mint is an internal function in ERC20.sol that is only called here,
            and CANNOT be called ever again
        */
        _mint(address(this), totalSupply);
    }

    function swapBack() internal {
        uint256 totalTokensToSwap = tokensForLiquidity + tokensForDev;
        uint256 contractBalance = balanceOf(address(this));

        if (contractBalance == 0 || totalTokensToSwap == 0) {
            // Reset to 0
            contractBalance = 0;
            totalTokensToSwap = 0;
            return;
        }

        uint256 LP = (contractBalance * tokensForLiquidity) / totalTokensToSwap / 2;
        uint256 amountToSwapForETH = contractBalance - LP;
        uint256 initialETHBalance = address(this).balance;
        swapTokensForEth(amountToSwapForETH);
        uint256 ethBalance = (address(this).balance) - initialETHBalance;
        uint256 ethForDev = ethBalance * tokensForDev / totalTokensToSwap;
        uint256 ethForLiquidity = ethBalance - ethForDev;
        tokensForDev = 0;
        tokensForLiquidity = 0;

        if (LP > 0 && ethForLiquidity > 0) {
            _addLiquidityETH(LP, ethForLiquidity, lpTokenReceiver);
        }

        if (address(this).balance > 0) {
            bool success;
            (success, ) = address(devWallet).call{value: address(this).balance}("");
        }
    }

    function swapTokensForEth(uint256 tokenAmount) internal {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = router.WETH();
        _approve(address(this), address(router), tokenAmount);
        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function startTrading() external payable onlyOwner {
        _addLiquidityETH(balanceOf(address(this)), msg.value, devWallet);
    }

    function _addLiquidityETH(uint256 tokenAmount, uint256 ethAmount, address tokenRecipient) internal {
        _approve(address(this), address(router), tokenAmount);
        router.addLiquidityETH{value: ethAmount} (
            address(this),
            tokenAmount,
            0,
            0,
            tokenRecipient,
            block.timestamp
        );
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal override {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        if (amount == 0) {
            super._transfer(from, to, 0);
            return;
        }

        if (limitsInEffect) {
            if (
                from != owner() &&
                to != owner() &&
                to != address(0xdead) &&
                !swapping
            ) {

                if (
                    from == AMM &&
                    !isExcludedMaxTxn[to]
                ) {
                    require(
                        amount <= maxTransactionAmount,
                        "!maxTransactionAmount."
                    );
                    require(
                        amount + balanceOf(to) <= maxWallet,
                        "!maxWallet"
                    );
                }

                else if (
                    to == AMM &&
                    !isExcludedMaxTxn[from]
                ) {
                    require(
                        amount <= maxTransactionAmount,
                        "!maxTransactionAmount."
                    );
                } else if (!isExcludedMaxTxn[to]) {
                    require(
                        amount + balanceOf(to) <= maxWallet,
                        "!maxWallet"
                    );
                }
            }
        }

        if (
            !swapping &&
            from != AMM &&
            !isFeeExcluded[from] &&
            !isFeeExcluded[to]
        ) {
            swapping = true;

            swapBack();

            swapping = false;
        }

        bool takeFee = !swapping;

        if (isFeeExcluded[from] || isFeeExcluded[to]) {
            takeFee = false;
        }

        uint256 fees = 0;
        if (takeFee) {
            if (to == AMM && sellTotalFees > 0) {
                fees = amount * sellTotalFees / feeDenominator;
                tokensForLiquidity += (fees * sellLiquidityFee) / sellTotalFees;
                tokensForDev += (fees * sellDevFee) / sellTotalFees;
            }

            else if (from == AMM && buyTotalFees > 0) {
                fees = amount * buyTotalFees / feeDenominator;
                tokensForLiquidity += (fees * buyLiquidityFee) / buyTotalFees;
                tokensForDev += (fees * buyDevFee) / buyTotalFees;
            }

            if (fees > 0) {
                super._transfer(from, address(this), fees);
            }

            amount -= fees;
        }

        super._transfer(from, to, amount);
    }

    receive() external payable {}

    function removeLimits() external onlyOwner returns (bool) {
        limitsInEffect = false;
        return true;
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"router_","type":"address"},{"internalType":"address","name":"devWallet_","type":"address"},{"internalType":"address","name":"lpTokenReceiver_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"AMM","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyDevFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTotalFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"devWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeDenominator","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedMaxTxn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limitsInEffect","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lpTokenReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTransactionAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellDevFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellTotalFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"startTrading","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensForDev","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensForLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c06040526103e8600955600f805460ff191660011790553480156200002457600080fd5b50604051620021f5380380620021f58339810160408190526200004791620004e2565b6040518060400160405280600e81526020016d44656a697461727520506f6e707560901b8152506040518060400160405280600681526020016564504f4e505560d01b81525081600190816200009e9190620005d1565b506004620000ad8282620005d1565b505050620000c1336200038b60201b60201c565b6001600160a01b038381166080819052600680546001600160a01b03199081168585161790915560088054909116928516929092179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000135573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200015b91906200069d565b6001600160a01b031663c9c65396306080516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001d191906200069d565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200021f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200024591906200069d565b6001600160a01b0390811660a08190526080519091166000908152600e602090815260408083208054600160ff19918216811790925594845281842080548616821790556014600c818155600b829055601582815560118390557ff77e91909e61d18f67b875b2bfcae1f683a8d555e55382e3a6b082e2c59ea57a805489168517905530875284872080548916851790556013909552928520805487168317905561dead9094527f2264e2d7bacabe6058f5009f42467b9be28015e7760f87409562384c94ac271c805490951617909355915491546a52b7d2dcc80cd2e400000092829182918291620003399190620006c2565b601055600b546011546200034e9190620006c2565b600d556200035e606486620006ea565b6012556200036e606486620006ea565b6014556200037d3086620003dd565b50505050505050506200070d565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216620004385760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b80600360008282546200044c9190620006c2565b90915550506001600160a01b038216600090815260026020526040812080548392906200047b908490620006c2565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b80516001600160a01b0381168114620004dd57600080fd5b919050565b600080600060608486031215620004f857600080fd5b6200050384620004c5565b92506200051360208501620004c5565b91506200052360408501620004c5565b90509250925092565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200055757607f821691505b6020821081036200057857634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620005cc57600081815260208120601f850160051c81016020861015620005a75750805b601f850160051c820191505b81811015620005c857828155600101620005b3565b5050505b505050565b81516001600160401b03811115620005ed57620005ed6200052c565b6200060581620005fe845462000542565b846200057e565b602080601f8311600181146200063d5760008415620006245750858301515b600019600386901b1c1916600185901b178555620005c8565b600085815260208120601f198616915b828110156200066e578886015182559484019460019091019084016200064d565b50858210156200068d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620006b057600080fd5b620006bb82620004c5565b9392505050565b80820180821115620006e457634e487b7160e01b600052601160045260246000fd5b92915050565b6000826200070857634e487b7160e01b600052601260045260246000fd5b500490565b60805160a051611a7c620007796000396000818161032001528181610c5c01528181610d6c01528181610ea501528181610fa3015261106e0152600081816105dd01528181611168015281816111cd01528181611602015281816116bb01526116f70152611a7c6000f3fe6080604052600436106101f25760003560e01c80638ea5220f1161010d578063c8c8ebe4116100a0578063f2fde38b1161006f578063f2fde38b14610575578063f3f7338e14610595578063f6374342146105b5578063f887ea40146105cb578063f8b45b05146105ff57600080fd5b8063c8c8ebe4146104ef578063d85ba06314610505578063dd62ed3e1461051b578063f11a24d31461055f57600080fd5b80639fccce32116100dc5780639fccce3214610483578063a0d82dc514610499578063a457c2d7146104af578063a9059cbb146104cf57600080fd5b80638ea5220f1461040857806391c756f71461042857806395d89b41146104585780639c3b4fdc1461046d57600080fd5b8063395093511161018557806370a082311161015457806370a082311461038a578063715018a6146103c0578063751039fc146103d55780638da5cb5b146103ea57600080fd5b806339509351146102ee57806344a706861461030e5780634a62bb651461035a5780636a486a8e1461037457600080fd5b80631a8145bb116101c15780631a8145bb1461029257806323b872dd146102a8578063293230b8146102c8578063313ce567146102d257600080fd5b806306fdde03146101fe578063095ea7b314610229578063180b0d7e1461025957806318160ddd1461027d57600080fd5b366101f957005b600080fd5b34801561020a57600080fd5b50610213610615565b6040516102209190611763565b60405180910390f35b34801561023557600080fd5b506102496102443660046117c6565b6106a7565b6040519015158152602001610220565b34801561026557600080fd5b5061026f60095481565b604051908152602001610220565b34801561028957600080fd5b5060035461026f565b34801561029e57600080fd5b5061026f60165481565b3480156102b457600080fd5b506102496102c33660046117f2565b6106be565b6102d0610770565b005b3480156102de57600080fd5b5060405160128152602001610220565b3480156102fa57600080fd5b506102496103093660046117c6565b6107d2565b34801561031a57600080fd5b506103427f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610220565b34801561036657600080fd5b50600f546102499060ff1681565b34801561038057600080fd5b5061026f600d5481565b34801561039657600080fd5b5061026f6103a5366004611833565b6001600160a01b031660009081526002602052604090205490565b3480156103cc57600080fd5b506102d061080c565b3480156103e157600080fd5b5061024961084f565b3480156103f657600080fd5b506005546001600160a01b0316610342565b34801561041457600080fd5b50600854610342906001600160a01b031681565b34801561043457600080fd5b50610249610443366004611833565b600e6020526000908152604090205460ff1681565b34801561046457600080fd5b5061021361089a565b34801561047957600080fd5b5061026f600c5481565b34801561048f57600080fd5b5061026f60075481565b3480156104a557600080fd5b5061026f600b5481565b3480156104bb57600080fd5b506102496104ca3660046117c6565b6108a9565b3480156104db57600080fd5b506102496104ea3660046117c6565b610940565b3480156104fb57600080fd5b5061026f60125481565b34801561051157600080fd5b5061026f60105481565b34801561052757600080fd5b5061026f610536366004611857565b6001600160a01b0391821660009081526020818152604080832093909416825291909152205490565b34801561056b57600080fd5b5061026f60155481565b34801561058157600080fd5b506102d0610590366004611833565b61094d565b3480156105a157600080fd5b50600654610342906001600160a01b031681565b3480156105c157600080fd5b5061026f60115481565b3480156105d757600080fd5b506103427f000000000000000000000000000000000000000000000000000000000000000081565b34801561060b57600080fd5b5061026f60145481565b60606001805461062490611890565b80601f016020809104026020016040519081016040528092919081815260200182805461065090611890565b801561069d5780601f106106725761010080835404028352916020019161069d565b820191906000526020600020905b81548152906001019060200180831161068057829003601f168201915b5050505050905090565b60006106b43384846109f7565b5060015b92915050565b60006106cb848484610b19565b6001600160a01b038416600090815260208181526040808320338452909152902054828110156107585760405162461bcd60e51b815260206004820152602d60248201527f45524332303a207472616e7366657220616d6f756e742067726561746572207460448201526c68616e20616c6c6f77616e636560981b60648201526084015b60405180910390fd5b61076585338584036109f7565b506001949350505050565b336107836005546001600160a01b031690565b6001600160a01b0316146107a95760405162461bcd60e51b815260040161074f906118ca565b306000908152600260205260409020546107d09060085434906001600160a01b0316611162565b565b336000818152602081815260408083206001600160a01b038716845290915281205490916106b4918590610807908690611915565b6109f7565b3361081f6005546001600160a01b031690565b6001600160a01b0316146108455760405162461bcd60e51b815260040161074f906118ca565b6107d06000611244565b6000336108646005546001600160a01b031690565b6001600160a01b03161461088a5760405162461bcd60e51b815260040161074f906118ca565b50600f805460ff19169055600190565b60606004805461062490611890565b336000908152602081815260408083206001600160a01b0386168452909152812054828110156109295760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161074f565b61093633858584036109f7565b5060019392505050565b60006106b4338484610b19565b336109606005546001600160a01b031690565b6001600160a01b0316146109865760405162461bcd60e51b815260040161074f906118ca565b6001600160a01b0381166109eb5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161074f565b6109f481611244565b50565b6001600160a01b038316610a595760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161074f565b6001600160a01b038216610aba5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161074f565b6001600160a01b038381166000818152602081815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b7d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161074f565b6001600160a01b038216610bdf5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161074f565b80600003610bf857610bf383836000611296565b505050565b600f5460ff1615610e95576005546001600160a01b03848116911614801590610c2f57506005546001600160a01b03838116911614155b8015610c4657506001600160a01b03821661dead14155b8015610c555750600a5460ff16155b15610e95577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b0316148015610cb457506001600160a01b0382166000908152600e602052604090205460ff16155b15610d6a57601254811115610d045760405162461bcd60e51b815260206004820152601660248201527510b6b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b604482015260640161074f565b6014546001600160a01b038316600090815260026020526040902054610d2a9083611915565b1115610d655760405162461bcd60e51b815260206004820152600a602482015269085b585e15d85b1b195d60b21b604482015260640161074f565b610e95565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316148015610dc457506001600160a01b0383166000908152600e602052604090205460ff16155b15610e1457601254811115610d655760405162461bcd60e51b815260206004820152601660248201527510b6b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b604482015260640161074f565b6001600160a01b0382166000908152600e602052604090205460ff16610e95576014546001600160a01b038316600090815260026020526040902054610e5a9083611915565b1115610e955760405162461bcd60e51b815260206004820152600a602482015269085b585e15d85b1b195d60b21b604482015260640161074f565b600a5460ff16158015610eda57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b8015610eff57506001600160a01b03831660009081526013602052604090205460ff16155b8015610f2457506001600160a01b03821660009081526013602052604090205460ff16155b15610f4957600a805460ff19166001179055610f3e61145a565b600a805460ff191690555b600a546001600160a01b03841660009081526013602052604090205460ff91821615911680610f9057506001600160a01b03831660009081526013602052604090205460ff165b15610f99575060005b60008115611150577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b0316148015610fe457506000600d54115b1561106c57600954600d54610ff99085611928565b611003919061193f565b9050600d54601154826110169190611928565b611020919061193f565b601660008282546110319190611915565b9091555050600d54600b546110469083611928565b611050919061193f565b600760008282546110619190611915565b909155506111329050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b03161480156110af57506000601054115b15611132576009546010546110c49085611928565b6110ce919061193f565b9050601054601554826110e19190611928565b6110eb919061193f565b601660008282546110fc9190611915565b9091555050601054600c546111119083611928565b61111b919061193f565b6007600082825461112c9190611915565b90915550505b801561114357611143853083611296565b61114d8184611961565b92505b61115b858585611296565b5050505050565b61118d307f0000000000000000000000000000000000000000000000000000000000000000856109f7565b60405163f305d71960e01b81523060048201526024810184905260006044820181905260648201526001600160a01b0382811660848301524260a48301527f0000000000000000000000000000000000000000000000000000000000000000169063f305d71990849060c40160606040518083038185885af1158015611217573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061123c9190611974565b505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0383166112f65760405162461bcd60e51b815260206004820152602160248201527f45524332303a207472616e736665722066726f6d207a65726f206164647265736044820152607360f81b606482015260840161074f565b6001600160a01b03821661134c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a207472616e7366657220746f207a65726f206164647265737300604482015260640161074f565b6001600160a01b038316600090815260026020526040902054818110156113c95760405162461bcd60e51b815260206004820152602b60248201527f45524332303a207472616e7366657220616d6f756e742067726561746572207460448201526a68616e2062616c616e636560a81b606482015260840161074f565b6001600160a01b03808516600090815260026020526040808220858503905591851681529081208054849290611400908490611915565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161144c91815260200190565b60405180910390a350505050565b600060075460165461146c9190611915565b3060009081526002602052604090205490915080158061148a575081155b15611493575050565b6000600283601654846114a69190611928565b6114b0919061193f565b6114ba919061193f565b905060006114c88284611961565b9050476114d4826115ab565b60006114e08247611961565b9050600086600754836114f39190611928565b6114fd919061193f565b9050600061150b8284611961565b60006007819055601655905085158015906115265750600081115b156115445760065461154490879083906001600160a01b0316611162565b47156115a1576008546040516000916001600160a01b03169047908381818185875af1925050503d8060008114611597576040519150601f19603f3d011682016040523d82523d6000602084013e61159c565b606091505b505050505b5050505050505050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106115e0576115e06119a2565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561165e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061168291906119b8565b81600181518110611695576116956119a2565b60200260200101906001600160a01b031690816001600160a01b0316815250506116e0307f0000000000000000000000000000000000000000000000000000000000000000846109f7565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac947906117359085906000908690309042906004016119d5565b600060405180830381600087803b15801561174f57600080fd5b505af115801561123c573d6000803e3d6000fd5b600060208083528351808285015260005b8181101561179057858101830151858201604001528201611774565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146109f457600080fd5b600080604083850312156117d957600080fd5b82356117e4816117b1565b946020939093013593505050565b60008060006060848603121561180757600080fd5b8335611812816117b1565b92506020840135611822816117b1565b929592945050506040919091013590565b60006020828403121561184557600080fd5b8135611850816117b1565b9392505050565b6000806040838503121561186a57600080fd5b8235611875816117b1565b91506020830135611885816117b1565b809150509250929050565b600181811c908216806118a457607f821691505b6020821081036118c457634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808201808211156106b8576106b86118ff565b80820281158282048414176106b8576106b86118ff565b60008261195c57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106b8576106b86118ff565b60008060006060848603121561198957600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156119ca57600080fd5b8151611850816117b1565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a255784516001600160a01b031683529383019391830191600101611a00565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220d2e16d1e05ab3458b3d1472305899672b1ff54c2438c0252090abe34443f52dd64736f6c634300081100330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000c2decc41b36c25fe0d7f3bd22d9d3939609992d7000000000000000000000000000000000000000000000000000000000000dead

Deployed Bytecode

0x6080604052600436106101f25760003560e01c80638ea5220f1161010d578063c8c8ebe4116100a0578063f2fde38b1161006f578063f2fde38b14610575578063f3f7338e14610595578063f6374342146105b5578063f887ea40146105cb578063f8b45b05146105ff57600080fd5b8063c8c8ebe4146104ef578063d85ba06314610505578063dd62ed3e1461051b578063f11a24d31461055f57600080fd5b80639fccce32116100dc5780639fccce3214610483578063a0d82dc514610499578063a457c2d7146104af578063a9059cbb146104cf57600080fd5b80638ea5220f1461040857806391c756f71461042857806395d89b41146104585780639c3b4fdc1461046d57600080fd5b8063395093511161018557806370a082311161015457806370a082311461038a578063715018a6146103c0578063751039fc146103d55780638da5cb5b146103ea57600080fd5b806339509351146102ee57806344a706861461030e5780634a62bb651461035a5780636a486a8e1461037457600080fd5b80631a8145bb116101c15780631a8145bb1461029257806323b872dd146102a8578063293230b8146102c8578063313ce567146102d257600080fd5b806306fdde03146101fe578063095ea7b314610229578063180b0d7e1461025957806318160ddd1461027d57600080fd5b366101f957005b600080fd5b34801561020a57600080fd5b50610213610615565b6040516102209190611763565b60405180910390f35b34801561023557600080fd5b506102496102443660046117c6565b6106a7565b6040519015158152602001610220565b34801561026557600080fd5b5061026f60095481565b604051908152602001610220565b34801561028957600080fd5b5060035461026f565b34801561029e57600080fd5b5061026f60165481565b3480156102b457600080fd5b506102496102c33660046117f2565b6106be565b6102d0610770565b005b3480156102de57600080fd5b5060405160128152602001610220565b3480156102fa57600080fd5b506102496103093660046117c6565b6107d2565b34801561031a57600080fd5b506103427f000000000000000000000000537a3cf5d34e71b3801a5d68122b7ca4da400d1881565b6040516001600160a01b039091168152602001610220565b34801561036657600080fd5b50600f546102499060ff1681565b34801561038057600080fd5b5061026f600d5481565b34801561039657600080fd5b5061026f6103a5366004611833565b6001600160a01b031660009081526002602052604090205490565b3480156103cc57600080fd5b506102d061080c565b3480156103e157600080fd5b5061024961084f565b3480156103f657600080fd5b506005546001600160a01b0316610342565b34801561041457600080fd5b50600854610342906001600160a01b031681565b34801561043457600080fd5b50610249610443366004611833565b600e6020526000908152604090205460ff1681565b34801561046457600080fd5b5061021361089a565b34801561047957600080fd5b5061026f600c5481565b34801561048f57600080fd5b5061026f60075481565b3480156104a557600080fd5b5061026f600b5481565b3480156104bb57600080fd5b506102496104ca3660046117c6565b6108a9565b3480156104db57600080fd5b506102496104ea3660046117c6565b610940565b3480156104fb57600080fd5b5061026f60125481565b34801561051157600080fd5b5061026f60105481565b34801561052757600080fd5b5061026f610536366004611857565b6001600160a01b0391821660009081526020818152604080832093909416825291909152205490565b34801561056b57600080fd5b5061026f60155481565b34801561058157600080fd5b506102d0610590366004611833565b61094d565b3480156105a157600080fd5b50600654610342906001600160a01b031681565b3480156105c157600080fd5b5061026f60115481565b3480156105d757600080fd5b506103427f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b34801561060b57600080fd5b5061026f60145481565b60606001805461062490611890565b80601f016020809104026020016040519081016040528092919081815260200182805461065090611890565b801561069d5780601f106106725761010080835404028352916020019161069d565b820191906000526020600020905b81548152906001019060200180831161068057829003601f168201915b5050505050905090565b60006106b43384846109f7565b5060015b92915050565b60006106cb848484610b19565b6001600160a01b038416600090815260208181526040808320338452909152902054828110156107585760405162461bcd60e51b815260206004820152602d60248201527f45524332303a207472616e7366657220616d6f756e742067726561746572207460448201526c68616e20616c6c6f77616e636560981b60648201526084015b60405180910390fd5b61076585338584036109f7565b506001949350505050565b336107836005546001600160a01b031690565b6001600160a01b0316146107a95760405162461bcd60e51b815260040161074f906118ca565b306000908152600260205260409020546107d09060085434906001600160a01b0316611162565b565b336000818152602081815260408083206001600160a01b038716845290915281205490916106b4918590610807908690611915565b6109f7565b3361081f6005546001600160a01b031690565b6001600160a01b0316146108455760405162461bcd60e51b815260040161074f906118ca565b6107d06000611244565b6000336108646005546001600160a01b031690565b6001600160a01b03161461088a5760405162461bcd60e51b815260040161074f906118ca565b50600f805460ff19169055600190565b60606004805461062490611890565b336000908152602081815260408083206001600160a01b0386168452909152812054828110156109295760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161074f565b61093633858584036109f7565b5060019392505050565b60006106b4338484610b19565b336109606005546001600160a01b031690565b6001600160a01b0316146109865760405162461bcd60e51b815260040161074f906118ca565b6001600160a01b0381166109eb5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161074f565b6109f481611244565b50565b6001600160a01b038316610a595760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161074f565b6001600160a01b038216610aba5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161074f565b6001600160a01b038381166000818152602081815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b7d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161074f565b6001600160a01b038216610bdf5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161074f565b80600003610bf857610bf383836000611296565b505050565b600f5460ff1615610e95576005546001600160a01b03848116911614801590610c2f57506005546001600160a01b03838116911614155b8015610c4657506001600160a01b03821661dead14155b8015610c555750600a5460ff16155b15610e95577f000000000000000000000000537a3cf5d34e71b3801a5d68122b7ca4da400d186001600160a01b0316836001600160a01b0316148015610cb457506001600160a01b0382166000908152600e602052604090205460ff16155b15610d6a57601254811115610d045760405162461bcd60e51b815260206004820152601660248201527510b6b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b604482015260640161074f565b6014546001600160a01b038316600090815260026020526040902054610d2a9083611915565b1115610d655760405162461bcd60e51b815260206004820152600a602482015269085b585e15d85b1b195d60b21b604482015260640161074f565b610e95565b7f000000000000000000000000537a3cf5d34e71b3801a5d68122b7ca4da400d186001600160a01b0316826001600160a01b0316148015610dc457506001600160a01b0383166000908152600e602052604090205460ff16155b15610e1457601254811115610d655760405162461bcd60e51b815260206004820152601660248201527510b6b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b604482015260640161074f565b6001600160a01b0382166000908152600e602052604090205460ff16610e95576014546001600160a01b038316600090815260026020526040902054610e5a9083611915565b1115610e955760405162461bcd60e51b815260206004820152600a602482015269085b585e15d85b1b195d60b21b604482015260640161074f565b600a5460ff16158015610eda57507f000000000000000000000000537a3cf5d34e71b3801a5d68122b7ca4da400d186001600160a01b0316836001600160a01b031614155b8015610eff57506001600160a01b03831660009081526013602052604090205460ff16155b8015610f2457506001600160a01b03821660009081526013602052604090205460ff16155b15610f4957600a805460ff19166001179055610f3e61145a565b600a805460ff191690555b600a546001600160a01b03841660009081526013602052604090205460ff91821615911680610f9057506001600160a01b03831660009081526013602052604090205460ff165b15610f99575060005b60008115611150577f000000000000000000000000537a3cf5d34e71b3801a5d68122b7ca4da400d186001600160a01b0316846001600160a01b0316148015610fe457506000600d54115b1561106c57600954600d54610ff99085611928565b611003919061193f565b9050600d54601154826110169190611928565b611020919061193f565b601660008282546110319190611915565b9091555050600d54600b546110469083611928565b611050919061193f565b600760008282546110619190611915565b909155506111329050565b7f000000000000000000000000537a3cf5d34e71b3801a5d68122b7ca4da400d186001600160a01b0316856001600160a01b03161480156110af57506000601054115b15611132576009546010546110c49085611928565b6110ce919061193f565b9050601054601554826110e19190611928565b6110eb919061193f565b601660008282546110fc9190611915565b9091555050601054600c546111119083611928565b61111b919061193f565b6007600082825461112c9190611915565b90915550505b801561114357611143853083611296565b61114d8184611961565b92505b61115b858585611296565b5050505050565b61118d307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d856109f7565b60405163f305d71960e01b81523060048201526024810184905260006044820181905260648201526001600160a01b0382811660848301524260a48301527f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063f305d71990849060c40160606040518083038185885af1158015611217573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061123c9190611974565b505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0383166112f65760405162461bcd60e51b815260206004820152602160248201527f45524332303a207472616e736665722066726f6d207a65726f206164647265736044820152607360f81b606482015260840161074f565b6001600160a01b03821661134c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a207472616e7366657220746f207a65726f206164647265737300604482015260640161074f565b6001600160a01b038316600090815260026020526040902054818110156113c95760405162461bcd60e51b815260206004820152602b60248201527f45524332303a207472616e7366657220616d6f756e742067726561746572207460448201526a68616e2062616c616e636560a81b606482015260840161074f565b6001600160a01b03808516600090815260026020526040808220858503905591851681529081208054849290611400908490611915565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161144c91815260200190565b60405180910390a350505050565b600060075460165461146c9190611915565b3060009081526002602052604090205490915080158061148a575081155b15611493575050565b6000600283601654846114a69190611928565b6114b0919061193f565b6114ba919061193f565b905060006114c88284611961565b9050476114d4826115ab565b60006114e08247611961565b9050600086600754836114f39190611928565b6114fd919061193f565b9050600061150b8284611961565b60006007819055601655905085158015906115265750600081115b156115445760065461154490879083906001600160a01b0316611162565b47156115a1576008546040516000916001600160a01b03169047908381818185875af1925050503d8060008114611597576040519150601f19603f3d011682016040523d82523d6000602084013e61159c565b606091505b505050505b5050505050505050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106115e0576115e06119a2565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561165e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061168291906119b8565b81600181518110611695576116956119a2565b60200260200101906001600160a01b031690816001600160a01b0316815250506116e0307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d846109f7565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac947906117359085906000908690309042906004016119d5565b600060405180830381600087803b15801561174f57600080fd5b505af115801561123c573d6000803e3d6000fd5b600060208083528351808285015260005b8181101561179057858101830151858201604001528201611774565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146109f457600080fd5b600080604083850312156117d957600080fd5b82356117e4816117b1565b946020939093013593505050565b60008060006060848603121561180757600080fd5b8335611812816117b1565b92506020840135611822816117b1565b929592945050506040919091013590565b60006020828403121561184557600080fd5b8135611850816117b1565b9392505050565b6000806040838503121561186a57600080fd5b8235611875816117b1565b91506020830135611885816117b1565b809150509250929050565b600181811c908216806118a457607f821691505b6020821081036118c457634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808201808211156106b8576106b86118ff565b80820281158282048414176106b8576106b86118ff565b60008261195c57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106b8576106b86118ff565b60008060006060848603121561198957600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156119ca57600080fd5b8151611850816117b1565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a255784516001600160a01b031683529383019391830191600101611a00565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220d2e16d1e05ab3458b3d1472305899672b1ff54c2438c0252090abe34443f52dd64736f6c63430008110033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000c2decc41b36c25fe0d7f3bd22d9d3939609992d7000000000000000000000000000000000000000000000000000000000000dead

-----Decoded View---------------
Arg [0] : router_ (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
Arg [1] : devWallet_ (address): 0xc2deCc41B36c25FE0d7F3bD22d9D3939609992d7
Arg [2] : lpTokenReceiver_ (address): 0x000000000000000000000000000000000000dEaD

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Arg [1] : 000000000000000000000000c2decc41b36c25fe0d7f3bd22d9d3939609992d7
Arg [2] : 000000000000000000000000000000000000000000000000000000000000dead


Deployed Bytecode Sourcemap

6682:7410:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5586:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3357:167;;;;;;;;;;-1:-1:-1;3357:167:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;3357:167:0;1023:187:1;6834:36:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;6834:36:0;1215:177:1;4033:108:0;;;;;;;;;;-1:-1:-1;4121:12:0;;4033:108;;7427:33;;;;;;;;;;;;;;;;3532:493;;;;;;;;;;-1:-1:-1;3532:493:0;;;;;:::i;:::-;;:::i;10598:134::-;;;:::i;:::-;;2753:93;;;;;;;;;;-1:-1:-1;2753:93:0;;2836:2;2000:36:1;;1988:2;1973:18;2753:93:0;1858:184:1;3138:211:0;;;;;;;;;;-1:-1:-1;3138:211:0;;;;;:::i;:::-;;:::i;7351:28::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2211:32:1;;;2193:51;;2181:2;2166:18;7351:28:0;2047:203:1;7064:33:0;;;;;;;;;;-1:-1:-1;7064:33:0;;;;;;;;6972:28;;;;;;;;;;;;;;;;4149:127;;;;;;;;;;-1:-1:-1;4149:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;4250:18:0;4223:7;4250:18;;;:9;:18;;;;;;;4149:127;613:103;;;;;;;;;;;;;:::i;13966:121::-;;;;;;;;;;;;;:::i;933:87::-;;;;;;;;;;-1:-1:-1;1006:6:0;;-1:-1:-1;;;;;1006:6:0;933:87;;6803:24;;;;;;;;;;-1:-1:-1;6803:24:0;;;;-1:-1:-1;;;;;6803:24:0;;;7007:48;;;;;;;;;;-1:-1:-1;7007:48:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;4465:104;;;;;;;;;;;;;:::i;6941:24::-;;;;;;;;;;;;;;;;6769:27;;;;;;;;;;;;;;;;6909:25;;;;;;;;;;;;;;;;2336:409;;;;;;;;;;-1:-1:-1;2336:409:0;;;;;:::i;:::-;;:::i;4284:173::-;;;;;;;;;;-1:-1:-1;4284:173:0;;;;;:::i;:::-;;:::i;7176:35::-;;;;;;;;;;;;;;;;7104:27;;;;;;;;;;;;;;;;5694:151;;;;;;;;;;-1:-1:-1;5694:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;5810:18:0;;;5783:7;5810:18;;;;;;;;;;;:27;;;;;;;;;;;;;5694:151;7390:30;;;;;;;;;;;;;;;;724:201;;;;;;;;;;-1:-1:-1;724:201:0;;;;;:::i;:::-;;:::i;6732:30::-;;;;;;;;;;-1:-1:-1;6732:30:0;;;;-1:-1:-1;;;;;6732:30:0;;;7138:31;;;;;;;;;;;;;;;;7271:42;;;;;;;;;;;;;;;7320:24;;;;;;;;;;;;;;;;5586:100;5640:13;5673:5;5666:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5586:100;:::o;3357:167::-;3440:4;3457:37;3466:10;3478:7;3487:6;3457:8;:37::i;:::-;-1:-1:-1;3512:4:0;3357:167;;;;;:::o;3532:493::-;3672:4;3689:36;3699:6;3707:9;3718:6;3689:9;:36::i;:::-;-1:-1:-1;;;;;3765:19:0;;3738:24;3765:19;;;;;;;;;;;3785:10;3765:31;;;;;;;;3815:26;;;;3807:84;;;;-1:-1:-1;;;3807:84:0;;3721:2:1;3807:84:0;;;3703:21:1;3760:2;3740:18;;;3733:30;3799:34;3779:18;;;3772:62;-1:-1:-1;;;3850:18:1;;;3843:43;3903:19;;3807:84:0;;;;;;;;;3927:55;3936:6;3944:10;3975:6;3956:16;:25;3927:8;:55::i;:::-;-1:-1:-1;4013:4:0;;3532:493;-1:-1:-1;;;;3532:493:0:o;10598:134::-;339:10;328:7;1006:6;;-1:-1:-1;;;;;1006:6:0;;933:87;328:7;-1:-1:-1;;;;;328:21:0;;320:66;;;;-1:-1:-1;;;320:66:0;;;;;;;:::i;:::-;10695:4:::1;4223:7:::0;4250:18;;;:9;:18;;;;;;10660:64:::1;::::0;10714:9:::1;::::0;10703::::1;::::0;-1:-1:-1;;;;;10714:9:0::1;10660:16;:64::i;:::-;10598:134::o:0;3138:211::-;3252:10;3226:4;3273:23;;;;;;;;;;;-1:-1:-1;;;;;3273:32:0;;;;;;;;;;3226:4;;3243:76;;3264:7;;3273:45;;3308:10;;3273:45;:::i;:::-;3243:8;:76::i;613:103::-;339:10;328:7;1006:6;;-1:-1:-1;;;;;1006:6:0;;933:87;328:7;-1:-1:-1;;;;;328:21:0;;320:66;;;;-1:-1:-1;;;320:66:0;;;;;;;:::i;:::-;678:30:::1;705:1;678:18;:30::i;13966:121::-:0;14018:4;339:10;328:7;1006:6;;-1:-1:-1;;;;;1006:6:0;;933:87;328:7;-1:-1:-1;;;;;328:21:0;;320:66;;;;-1:-1:-1;;;320:66:0;;;;;;;:::i;:::-;-1:-1:-1;14035:14:0::1;:22:::0;;-1:-1:-1;;14035:22:0::1;::::0;;;13966:121;:::o;4465:104::-;4521:13;4554:7;4547:14;;;;;:::i;2336:409::-;2485:10;2429:4;2473:23;;;;;;;;;;;-1:-1:-1;;;;;2473:32:0;;;;;;;;;;2524:35;;;;2516:85;;;;-1:-1:-1;;;2516:85:0;;4758:2:1;2516:85:0;;;4740:21:1;4797:2;4777:18;;;4770:30;4836:34;4816:18;;;4809:62;-1:-1:-1;;;4887:18:1;;;4880:35;4932:19;;2516:85:0;4556:401:1;2516:85:0;2637:65;2646:10;2658:7;2686:15;2667:16;:34;2637:8;:65::i;:::-;-1:-1:-1;2733:4:0;;2336:409;-1:-1:-1;;;2336:409:0:o;4284:173::-;4370:4;4387:40;4397:10;4409:9;4420:6;4387:9;:40::i;724:201::-;339:10;328:7;1006:6;;-1:-1:-1;;;;;1006:6:0;;933:87;328:7;-1:-1:-1;;;;;328:21:0;;320:66;;;;-1:-1:-1;;;320:66:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;813:22:0;::::1;805:73;;;::::0;-1:-1:-1;;;805:73:0;;5164:2:1;805:73:0::1;::::0;::::1;5146:21:1::0;5203:2;5183:18;;;5176:30;5242:34;5222:18;;;5215:62;-1:-1:-1;;;5293:18:1;;;5286:36;5339:19;;805:73:0::1;4962:402:1::0;805:73:0::1;889:28;908:8;889:18;:28::i;:::-;724:201:::0;:::o;5198:380::-;-1:-1:-1;;;;;5334:19:0;;5326:68;;;;-1:-1:-1;;;5326:68:0;;5571:2:1;5326:68:0;;;5553:21:1;5610:2;5590:18;;;5583:30;5649:34;5629:18;;;5622:62;-1:-1:-1;;;5700:18:1;;;5693:34;5744:19;;5326:68:0;5369:400:1;5326:68:0;-1:-1:-1;;;;;5413:21:0;;5405:68;;;;-1:-1:-1;;;5405:68:0;;5976:2:1;5405:68:0;;;5958:21:1;6015:2;5995:18;;;5988:30;6054:34;6034:18;;;6027:62;-1:-1:-1;;;6105:18:1;;;6098:32;6147:19;;5405:68:0;5774:398:1;5405:68:0;-1:-1:-1;;;;;5486:18:0;;;:11;:18;;;;;;;;;;;:27;;;;;;;;;;;;;:36;;;5538:32;;1361:25:1;;;5538:32:0;;1334:18:1;5538:32:0;;;;;;;5198:380;;;:::o;11127:2794::-;-1:-1:-1;;;;;11259:18:0;;11251:68;;;;-1:-1:-1;;;11251:68:0;;6379:2:1;11251:68:0;;;6361:21:1;6418:2;6398:18;;;6391:30;6457:34;6437:18;;;6430:62;-1:-1:-1;;;6508:18:1;;;6501:35;6553:19;;11251:68:0;6177:401:1;11251:68:0;-1:-1:-1;;;;;11338:16:0;;11330:64;;;;-1:-1:-1;;;11330:64:0;;6785:2:1;11330:64:0;;;6767:21:1;6824:2;6804:18;;;6797:30;6863:34;6843:18;;;6836:62;-1:-1:-1;;;6914:18:1;;;6907:33;6957:19;;11330:64:0;6583:399:1;11330:64:0;11411:6;11421:1;11411:11;11407:93;;11439:28;11455:4;11461:2;11465:1;11439:15;:28::i;:::-;11127:2794;;;:::o;11407:93::-;11516:14;;;;11512:1195;;;1006:6;;-1:-1:-1;;;;;11569:15:0;;;1006:6;;11569:15;;;;:49;;-1:-1:-1;1006:6:0;;-1:-1:-1;;;;;11605:13:0;;;1006:6;;11605:13;;11569:49;:91;;;;-1:-1:-1;;;;;;11639:21:0;;11653:6;11639:21;;11569:91;:121;;;;-1:-1:-1;11682:8:0;;;;11681:9;11569:121;11547:1149;;;11761:3;-1:-1:-1;;;;;11753:11:0;:4;-1:-1:-1;;;;;11753:11:0;;:57;;;;-1:-1:-1;;;;;;11790:20:0;;;;;;:16;:20;;;;;;;;11789:21;11753:57;11727:954;;;11897:20;;11887:6;:30;;11853:138;;;;-1:-1:-1;;;11853:138:0;;7189:2:1;11853:138:0;;;7171:21:1;7228:2;7208:18;;;7201:30;-1:-1:-1;;;7247:18:1;;;7240:52;7309:18;;11853:138:0;6987:346:1;11853:138:0;12074:9;;-1:-1:-1;;;;;4250:18:0;;4223:7;4250:18;;;:9;:18;;;;;;12048:22;;:6;:22;:::i;:::-;:35;;12014:131;;;;-1:-1:-1;;;12014:131:0;;7540:2:1;12014:131:0;;;7522:21:1;7579:2;7559:18;;;7552:30;-1:-1:-1;;;7598:18:1;;;7591:40;7648:18;;12014:131:0;7338:334:1;12014:131:0;11727:954;;;12222:3;-1:-1:-1;;;;;12216:9:0;:2;-1:-1:-1;;;;;12216:9:0;;:57;;;;-1:-1:-1;;;;;;12251:22:0;;;;;;:16;:22;;;;;;;;12250:23;12216:57;12190:491;;;12360:20;;12350:6;:30;;12316:138;;;;-1:-1:-1;;;12316:138:0;;7189:2:1;12316:138:0;;;7171:21:1;7228:2;7208:18;;;7201:30;-1:-1:-1;;;7247:18:1;;;7240:52;7309:18;;12316:138:0;6987:346:1;12190:491:0;-1:-1:-1;;;;;12485:20:0;;;;;;:16;:20;;;;;;;;12480:201;;12590:9;;-1:-1:-1;;;;;4250:18:0;;4223:7;4250:18;;;:9;:18;;;;;;12564:22;;:6;:22;:::i;:::-;:35;;12530:131;;;;-1:-1:-1;;;12530:131:0;;7540:2:1;12530:131:0;;;7522:21:1;7579:2;7559:18;;;7552:30;-1:-1:-1;;;7598:18:1;;;7591:40;7648:18;;12530:131:0;7338:334:1;12530:131:0;12738:8;;;;12737:9;:37;;;;;12771:3;-1:-1:-1;;;;;12763:11:0;:4;-1:-1:-1;;;;;12763:11:0;;;12737:37;:74;;;;-1:-1:-1;;;;;;12792:19:0;;;;;;:13;:19;;;;;;;;12791:20;12737:74;:109;;;;-1:-1:-1;;;;;;12829:17:0;;;;;;:13;:17;;;;;;;;12828:18;12737:109;12719:241;;;12873:8;:15;;-1:-1:-1;;12873:15:0;12884:4;12873:15;;;12905:10;:8;:10::i;:::-;12932:8;:16;;-1:-1:-1;;12932:16:0;;;12719:241;12988:8;;-1:-1:-1;;;;;13013:19:0;;12972:12;13013:19;;;:13;:19;;;;;;12988:8;;;;12987:9;;13013:19;;:40;;-1:-1:-1;;;;;;13036:17:0;;;;;;:13;:17;;;;;;;;13013:40;13009:88;;;-1:-1:-1;13080:5:0;13009:88;13109:12;13140:7;13136:732;;;13174:3;-1:-1:-1;;;;;13168:9:0;:2;-1:-1:-1;;;;;13168:9:0;;:30;;;;;13197:1;13181:13;;:17;13168:30;13164:555;;;13251:14;;13235:13;;13226:22;;:6;:22;:::i;:::-;:39;;;;:::i;:::-;13219:46;;13334:13;;13314:16;;13307:4;:23;;;;:::i;:::-;13306:41;;;;:::i;:::-;13284:18;;:63;;;;;;;:::i;:::-;;;;-1:-1:-1;;13404:13:0;;13390:10;;13383:17;;:4;:17;:::i;:::-;13382:35;;;;:::i;:::-;13366:12;;:51;;;;;;;:::i;:::-;;;;-1:-1:-1;13164:555:0;;-1:-1:-1;13164:555:0;;13466:3;-1:-1:-1;;;;;13458:11:0;:4;-1:-1:-1;;;;;13458:11:0;;:31;;;;;13488:1;13473:12;;:16;13458:31;13454:265;;;13541:14;;13526:12;;13517:21;;:6;:21;:::i;:::-;:38;;;;:::i;:::-;13510:45;;13623:12;;13604:15;;13597:4;:22;;;;:::i;:::-;13596:39;;;;:::i;:::-;13574:18;;:61;;;;;;;:::i;:::-;;;;-1:-1:-1;;13691:12:0;;13678:9;;13671:16;;:4;:16;:::i;:::-;13670:33;;;;:::i;:::-;13654:12;;:49;;;;;;;:::i;:::-;;;;-1:-1:-1;;13454:265:0;13739:8;;13735:91;;13768:42;13784:4;13798;13805;13768:15;:42::i;:::-;13842:14;13852:4;13842:14;;:::i;:::-;;;13136:732;13880:33;13896:4;13902:2;13906:6;13880:15;:33::i;:::-;11240:2681;;11127:2794;;;:::o;10740:379::-;10850:53;10867:4;10882:6;10891:11;10850:8;:53::i;:::-;10914:197;;-1:-1:-1;;;10914:197:0;;10978:4;10914:197;;;8546:34:1;8596:18;;;8589:34;;;11024:1:0;8639:18:1;;;8632:34;;;8682:18;;;8675:34;-1:-1:-1;;;;;8746:15:1;;;8725:19;;;8718:44;11085:15:0;8778:19:1;;;8771:35;10914:6:0;:22;;;;10944:9;;8480:19:1;;10914:197:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;10740:379;;;:::o;414:191::-;507:6;;;-1:-1:-1;;;;;524:17:0;;;-1:-1:-1;;;;;;524:17:0;;;;;;;557:40;;507:6;;;524:17;507:6;;557:40;;488:16;;557:40;477:128;414:191;:::o;4577:613::-;-1:-1:-1;;;;;4717:20:0;;4709:66;;;;-1:-1:-1;;;4709:66:0;;9330:2:1;4709:66:0;;;9312:21:1;9369:2;9349:18;;;9342:30;9408:34;9388:18;;;9381:62;-1:-1:-1;;;9459:18:1;;;9452:31;9500:19;;4709:66:0;9128:397:1;4709:66:0;-1:-1:-1;;;;;4794:23:0;;4786:67;;;;-1:-1:-1;;;4786:67:0;;9732:2:1;4786:67:0;;;9714:21:1;9771:2;9751:18;;;9744:30;9810:33;9790:18;;;9783:61;9861:18;;4786:67:0;9530:355:1;4786:67:0;-1:-1:-1;;;;;4890:17:0;;4866:21;4890:17;;;:9;:17;;;;;;4926:23;;;;4918:79;;;;-1:-1:-1;;;4918:79:0;;10092:2:1;4918:79:0;;;10074:21:1;10131:2;10111:18;;;10104:30;10170:34;10150:18;;;10143:62;-1:-1:-1;;;10221:18:1;;;10214:41;10272:19;;4918:79:0;9890:407:1;4918:79:0;-1:-1:-1;;;;;5033:17:0;;;;;;;:9;:17;;;;;;5053:22;;;5033:42;;5097:20;;;;;;;;:30;;5069:6;;5033:17;5097:30;;5069:6;;5097:30;:::i;:::-;;;;;;;;5162:9;-1:-1:-1;;;;;5145:35:0;5154:6;-1:-1:-1;;;;;5145:35:0;;5173:6;5145:35;;;;1361:25:1;;1349:2;1334:18;;1215:177;5145:35:0;;;;;;;;4698:492;4577:613;;;:::o;8952:1185::-;8992:25;9041:12;;9020:18;;:33;;;;:::i;:::-;9108:4;9064:23;4250:18;;;:9;:18;;;;;;8992:61;;-1:-1:-1;9131:20:0;;;:46;;-1:-1:-1;9155:22:0;;9131:46;9127:182;;;-1:-1:-1;;8952:1185:0:o;9127:182::-;9321:10;9395:1;9375:17;9353:18;;9335:15;:36;;;;:::i;:::-;9334:58;;;;:::i;:::-;:62;;;;:::i;:::-;9321:75;-1:-1:-1;9407:26:0;9436:20;9321:75;9436:15;:20;:::i;:::-;9407:49;-1:-1:-1;9495:21:0;9527:36;9407:49;9527:16;:36::i;:::-;9574:18;9595:43;9621:17;9596:21;9595:43;:::i;:::-;9574:64;;9649:17;9697;9682:12;;9669:10;:25;;;;:::i;:::-;:45;;;;:::i;:::-;9649:65;-1:-1:-1;9725:23:0;9751:22;9649:65;9751:10;:22;:::i;:::-;9799:1;9784:12;:16;;;9811:18;:22;9725:48;-1:-1:-1;9850:6:0;;;;;:29;;;9878:1;9860:15;:19;9850:29;9846:116;;;9934:15;;9896:54;;9913:2;;9917:15;;-1:-1:-1;;;;;9934:15:0;9896:16;:54::i;:::-;9978:21;:25;9974:156;;10069:9;;10061:57;;10020:12;;-1:-1:-1;;;;;10069:9:0;;10092:21;;10020:12;10061:57;10020:12;10061:57;10092:21;10069:9;10061:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;9974:156:0;8981:1156;;;;;;;;8952:1185::o;10145:445::-;10236:16;;;10250:1;10236:16;;;;;;;;10212:21;;10236:16;;;;;;;;;;-1:-1:-1;10236:16:0;10212:40;;10281:4;10263;10268:1;10263:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;10263:23:0;;;-1:-1:-1;;;;;10263:23:0;;;;;10307:6;-1:-1:-1;;;;;10307:11:0;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10297:4;10302:1;10297:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;10297:23:0;;;-1:-1:-1;;;;;10297:23:0;;;;;10331:53;10348:4;10363:6;10372:11;10331:8;:53::i;:::-;10395:187;;-1:-1:-1;;;10395:187:0;;-1:-1:-1;;;;;10395:6:0;:57;;;;:187;;10467:11;;10493:1;;10509:4;;10536;;10556:15;;10395:187;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:548:1;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2255:247::-;2314:6;2367:2;2355:9;2346:7;2342:23;2338:32;2335:52;;;2383:1;2380;2373:12;2335:52;2422:9;2409:23;2441:31;2466:5;2441:31;:::i;:::-;2491:5;2255:247;-1:-1:-1;;;2255:247:1:o;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;3134:380::-;3213:1;3209:12;;;;3256;;;3277:61;;3331:4;3323:6;3319:17;3309:27;;3277:61;3384:2;3376:6;3373:14;3353:18;3350:38;3347:161;;3430:10;3425:3;3421:20;3418:1;3411:31;3465:4;3462:1;3455:15;3493:4;3490:1;3483:15;3347:161;;3134:380;;;:::o;3933:356::-;4135:2;4117:21;;;4154:18;;;4147:30;4213:34;4208:2;4193:18;;4186:62;4280:2;4265:18;;3933:356::o;4294:127::-;4355:10;4350:3;4346:20;4343:1;4336:31;4386:4;4383:1;4376:15;4410:4;4407:1;4400:15;4426:125;4491:9;;;4512:10;;;4509:36;;;4525:18;;:::i;7677:168::-;7750:9;;;7781;;7798:15;;;7792:22;;7778:37;7768:71;;7819:18;;:::i;7850:217::-;7890:1;7916;7906:132;;7960:10;7955:3;7951:20;7948:1;7941:31;7995:4;7992:1;7985:15;8023:4;8020:1;8013:15;7906:132;-1:-1:-1;8052:9:1;;7850:217::o;8072:128::-;8139:9;;;8160:11;;;8157:37;;;8174:18;;:::i;8817:306::-;8905:6;8913;8921;8974:2;8962:9;8953:7;8949:23;8945:32;8942:52;;;8990:1;8987;8980:12;8942:52;9019:9;9013:16;9003:26;;9069:2;9058:9;9054:18;9048:25;9038:35;;9113:2;9102:9;9098:18;9092:25;9082:35;;8817:306;;;;;:::o;10644:127::-;10705:10;10700:3;10696:20;10693:1;10686:31;10736:4;10733:1;10726:15;10760:4;10757:1;10750:15;10776:251;10846:6;10899:2;10887:9;10878:7;10874:23;10870:32;10867:52;;;10915:1;10912;10905:12;10867:52;10947:9;10941:16;10966:31;10991:5;10966:31;:::i;11032:980::-;11294:4;11342:3;11331:9;11327:19;11373:6;11362:9;11355:25;11399:2;11437:6;11432:2;11421:9;11417:18;11410:34;11480:3;11475:2;11464:9;11460:18;11453:31;11504:6;11539;11533:13;11570:6;11562;11555:22;11608:3;11597:9;11593:19;11586:26;;11647:2;11639:6;11635:15;11621:29;;11668:1;11678:195;11692:6;11689:1;11686:13;11678:195;;;11757:13;;-1:-1:-1;;;;;11753:39:1;11741:52;;11848:15;;;;11813:12;;;;11789:1;11707:9;11678:195;;;-1:-1:-1;;;;;;;11929:32:1;;;;11924:2;11909:18;;11902:60;-1:-1:-1;;;11993:3:1;11978:19;11971:35;11890:3;11032:980;-1:-1:-1;;;11032:980:1:o

Swarm Source

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