ETH Price: $2,424.57 (+2.69%)

Token

The Ryoshi Koan (TRK)
 

Overview

Max Total Supply

100,000,000 TRK

Holders

14

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
tehrugger.eth
Balance
1.475432720632472856 TRK

Value
$0.00
0xee56df31d7bd574e81cb7c82956547c57c642dee
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:
TheRyoshiKoan

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-29
*/

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

/*

The Zen master sat quietly in the garden, tending to the plants with gentle hands. A student approached and asked, "Master, what is the meaning of patience?"

The master replied, "It is like the roots of a tree, deep and unseen, but essential for growth and stability."

The student asked, "And what is the meaning of wealth?"

The master replied, "It is like the branches of a tree, reaching towards the sky and bearing fruit. But it is not the branches alone that bring abundance, it is the harmony between the roots and the branches, the balance between stillness and action."

The student nodded and sat in silence, contemplating the words of the Zen master.

*/

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

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

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

}

interface IERC20 {

    event Transfer(address indexed from, address indexed to, uint256 value);
    function approve(address spender, uint256 amount) external returns (bool);
    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);

    event Approval(address indexed owner, address indexed spender, uint256 value);

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

}

interface IERC20Metadata is IERC20 {

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

}

contract ERC20 is IERC20, IERC20Metadata {

    mapping(address => uint256) private _balances;
    string private _symbol;

    uint256 private _totalSupply;

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

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

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

    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 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 increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender] + addedValue);
        return true;
    }

    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 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 approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }

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

    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 allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

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

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

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

}

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 TheRyoshiKoan is ERC20, Ownable {

    uint256 public tokensForLiquidity;
    address public devWallet;
    uint256 public sellLiquidityFee;

    uint256 public buyTotalFees;
    uint256 public maxTransactionAmount;
    uint256 public buyLiquidityFee;
    mapping(address => bool) public isExcludedMaxTxn;
    uint256 public tokensForDev;
    uint256 public sellDevFee;


    uint256 public buyDevFee;
    uint256 public sellTotalFees;
    IUniswapV2Router02 public immutable router;
    uint256 public maxWallet;

    address public LpReceiver;
    address public immutable ethPair;
    bool private swapping;

    uint256 public feeDenominator = 1000;
    bool public limitsInEffect = true;
    mapping(address => bool) private noFee;

    constructor(address router_, address devWallet_, address LpReceiver_) ERC20("The Ryoshi Koan", "TRK") {

        router = IUniswapV2Router02(router_);

        LpReceiver = LpReceiver_;
        ethPair = IUniswapV2Factory(
                router.factory()
        ).createPair(
            address(this),
            router.WETH()
        );
        isExcludedMaxTxn[address(router)] = true;

        isExcludedMaxTxn[address(ethPair)] = true;
        devWallet = devWallet_;

        uint256 totalSupply = 100_000_000 * 1e18;

        uint256 _sellLiquidityFee = 10;
        uint256 _sellDevFee = 30;
        uint256 _buyLiquidityFee = 10;
        uint256 _buyDevFee = 30;

        sellLiquidityFee = _sellLiquidityFee;
        isExcludedMaxTxn[address(this)] = true;
        noFee[address(this)] = true;
        buyLiquidityFee = _buyLiquidityFee;
        isExcludedMaxTxn[address(0xdead)] = true;
        sellDevFee = _sellDevFee;
        buyDevFee = _buyDevFee;

        noFee[address(0xdead)] = true;

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

        maxTransactionAmount = totalSupply * 20 / 1000;
        maxWallet = totalSupply * 20 / 1000;


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

    function _addAMMLiquidity(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 removeLimits() external onlyOwner returns (bool) {
        limitsInEffect = false;
        return true;
    }

    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 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 liquidity = (contractBalance * tokensForLiquidity) / totalTokensToSwap / 2;
        uint256 amountToSwapForETH = contractBalance - liquidity;
        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 (liquidity > 0 && ethForLiquidity > 0) {
            _addAMMLiquidity(liquidity, ethForLiquidity, LpReceiver);
        }

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

    receive() external payable {}

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

    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 == ethPair &&
                    !isExcludedMaxTxn[to]
                ) {
                    require(
                        amount <= maxTransactionAmount,
                        "!maxTransactionAmount."
                    );
                    require(
                        amount + balanceOf(to) <= maxWallet,
                        "!maxWallet"
                    );
                }

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

        if (
            !swapping &&
            from != ethPair &&
            !noFee[from] &&
            !noFee[to]
        ) {
            swapping = true;

            swapBack();

            swapping = false;
        }

        bool takeFee = !swapping;

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

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

            else if (from == ethPair && 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);
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"router_","type":"address"},{"internalType":"address","name":"devWallet_","type":"address"},{"internalType":"address","name":"LpReceiver_","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":"LpReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"addInitialLiquidityAndStartTrading","outputs":[],"stateMutability":"payable","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":"ethPair","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":"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":"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"}]

60c06040526103e86013556014805460ff191660011790553480156200002457600080fd5b506040516200225f3803806200225f833981016040819052620000479162000500565b6040518060400160405280600f81526020016e2a343290293cb7b9b4349025b7b0b760891b8152506040518060400160405280600381526020016254524b60e81b81525081600390816200009c9190620005ef565b506001620000ab8282620005ef565b505050620000bf33620003a960201b60201c565b6001600160a01b038381166080819052601280546001600160a01b031916928416929092179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000123573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001499190620006bb565b6001600160a01b031663c9c65396306080516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000199573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001bf9190620006bb565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200020d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002339190620006bb565b6001600160a01b0390811660a081905260805182166000908152600c602090815260408083208054600160ff1991821681179092559484528184208054861682179055600780546001600160a01b03191696891696909617909555600a60088190553084528184208054861687179055601590925282208054841685179055600b81905561dead9091527f45117a726ea4f344045dc210793664a28d2d320b7e03f6bffdae553d24c3586c8054831684179055601e600e819055600f8190557f7ed1dca03d96f947ab02d66053f47073699eb6287021936c92f54972932767e580549093169093179091556a52b7d2dcc80cd2e4000000918181620003398183620006f6565b600955600e546008546200034e9190620006f6565b6010556103e86200036186601462000712565b6200036d91906200072c565b600a556103e86200038086601462000712565b6200038c91906200072c565b6011556200039b3086620003fb565b50505050505050506200074f565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216620004565760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b80600260008282546200046a9190620006f6565b90915550506001600160a01b0382166000908152602081905260408120805483929062000499908490620006f6565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b80516001600160a01b0381168114620004fb57600080fd5b919050565b6000806000606084860312156200051657600080fd5b6200052184620004e3565b92506200053160208501620004e3565b91506200054160408501620004e3565b90509250925092565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200057557607f821691505b6020821081036200059657634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620005ea57600081815260208120601f850160051c81016020861015620005c55750805b601f850160051c820191505b81811015620005e657828155600101620005d1565b5050505b505050565b81516001600160401b038111156200060b576200060b6200054a565b62000623816200061c845462000560565b846200059c565b602080601f8311600181146200065b5760008415620006425750858301515b600019600386901b1c1916600185901b178555620005e6565b600085815260208120601f198616915b828110156200068c578886015182559484019460019091019084016200066b565b5085821015620006ab5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620006ce57600080fd5b620006d982620004e3565b9392505050565b634e487b7160e01b600052601160045260246000fd5b808201808211156200070c576200070c620006e0565b92915050565b80820281158282048414176200070c576200070c620006e0565b6000826200074a57634e487b7160e01b600052601260045260246000fd5b500490565b60805160a051611aa4620007bb600039600081816102ba01528181610c6d01528181610d7d01528181610ebd01528181610fcb01526110960152600081816105df01528181611190015281816111f50152818161162a015281816116e3015261171f0152611aa46000f3fe6080604052600436106101f25760003560e01c80638ea5220f1161010d578063a9059cbb116100a0578063f11a24d31161006f578063f11a24d314610581578063f2fde38b14610597578063f6374342146105b7578063f887ea40146105cd578063f8b45b051461060157600080fd5b8063a9059cbb146104ef578063c8c8ebe41461050f578063d85ba06314610525578063dd62ed3e1461053b57600080fd5b80639fccce32116100dc5780639fccce3214610483578063a0d82dc514610499578063a457c2d7146104af578063a802cc6b146104cf57600080fd5b80638ea5220f1461040857806391c756f71461042857806395d89b41146104585780639c3b4fdc1461046d57600080fd5b8063395093511161018557806370a082311161015457806370a082311461038a578063715018a6146103c0578063751039fc146103d55780638da5cb5b146103ea57600080fd5b806339509351146103305780634a62bb651461035057806351c202b11461036a5780636a486a8e1461037457600080fd5b80631a8145bb116101c15780631a8145bb1461029257806322d0c30d146102a857806323b872dd146102f4578063313ce5671461031457600080fd5b806306fdde03146101fe578063095ea7b314610229578063180b0d7e1461025957806318160ddd1461027d57600080fd5b366101f957005b600080fd5b34801561020a57600080fd5b50610213610617565b604051610220919061178b565b60405180910390f35b34801561023557600080fd5b506102496102443660046117ee565b6106a9565b6040519015158152602001610220565b34801561026557600080fd5b5061026f60135481565b604051908152602001610220565b34801561028957600080fd5b5060025461026f565b34801561029e57600080fd5b5061026f60065481565b3480156102b457600080fd5b506102dc7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610220565b34801561030057600080fd5b5061024961030f36600461181a565b6106c0565b34801561032057600080fd5b5060405160128152602001610220565b34801561033c57600080fd5b5061024961034b3660046117ee565b610774565b34801561035c57600080fd5b506014546102499060ff1681565b6103726107b0565b005b34801561038057600080fd5b5061026f60105481565b34801561039657600080fd5b5061026f6103a536600461185b565b6001600160a01b031660009081526020819052604090205490565b3480156103cc57600080fd5b50610372610812565b3480156103e157600080fd5b50610249610855565b3480156103f657600080fd5b506005546001600160a01b03166102dc565b34801561041457600080fd5b506007546102dc906001600160a01b031681565b34801561043457600080fd5b5061024961044336600461185b565b600c6020526000908152604090205460ff1681565b34801561046457600080fd5b506102136108a0565b34801561047957600080fd5b5061026f600f5481565b34801561048f57600080fd5b5061026f600d5481565b3480156104a557600080fd5b5061026f600e5481565b3480156104bb57600080fd5b506102496104ca3660046117ee565b6108af565b3480156104db57600080fd5b506012546102dc906001600160a01b031681565b3480156104fb57600080fd5b5061024961050a3660046117ee565b610948565b34801561051b57600080fd5b5061026f600a5481565b34801561053157600080fd5b5061026f60095481565b34801561054757600080fd5b5061026f61055636600461187f565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561058d57600080fd5b5061026f600b5481565b3480156105a357600080fd5b506103726105b236600461185b565b610955565b3480156105c357600080fd5b5061026f60085481565b3480156105d957600080fd5b506102dc7f000000000000000000000000000000000000000000000000000000000000000081565b34801561060d57600080fd5b5061026f60115481565b606060038054610626906118b8565b80601f0160208091040260200160405190810160405280929190818152602001828054610652906118b8565b801561069f5780601f106106745761010080835404028352916020019161069f565b820191906000526020600020905b81548152906001019060200180831161068257829003601f168201915b5050505050905090565b60006106b63384846109ff565b5060015b92915050565b60006106cd848484610b23565b6001600160a01b03841660009081526004602090815260408083203384529091529020548281101561075c5760405162461bcd60e51b815260206004820152602d60248201527f45524332303a207472616e7366657220616d6f756e742067726561746572207460448201526c68616e20616c6c6f77616e636560981b60648201526084015b60405180910390fd5b61076985338584036109ff565b506001949350505050565b3360008181526004602090815260408083206001600160a01b038716845290915281205490916106b69185906107ab908690611908565b6109ff565b336107c36005546001600160a01b031690565b6001600160a01b0316146107e95760405162461bcd60e51b81526004016107539061191b565b306000908152602081905260409020546108109060075434906001600160a01b031661118a565b565b336108256005546001600160a01b031690565b6001600160a01b03161461084b5760405162461bcd60e51b81526004016107539061191b565b610810600061126c565b60003361086a6005546001600160a01b031690565b6001600160a01b0316146108905760405162461bcd60e51b81526004016107539061191b565b506014805460ff19169055600190565b606060018054610626906118b8565b3360009081526004602090815260408083206001600160a01b0386168452909152812054828110156109315760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610753565b61093e33858584036109ff565b5060019392505050565b60006106b6338484610b23565b336109686005546001600160a01b031690565b6001600160a01b03161461098e5760405162461bcd60e51b81526004016107539061191b565b6001600160a01b0381166109f35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610753565b6109fc8161126c565b50565b6001600160a01b038316610a615760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610753565b6001600160a01b038216610ac25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610753565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b875760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610753565b6001600160a01b038216610be95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610753565b80600003610c0257610bfd838360006112be565b505050565b60145460ff1615610ea6576005546001600160a01b03848116911614801590610c3957506005546001600160a01b03838116911614155b8015610c5057506001600160a01b03821661dead14155b8015610c665750601254600160a01b900460ff16155b15610ea6577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b0316148015610cc557506001600160a01b0382166000908152600c602052604090205460ff16155b15610d7b57600a54811115610d155760405162461bcd60e51b815260206004820152601660248201527510b6b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b6044820152606401610753565b6011546001600160a01b038316600090815260208190526040902054610d3b9083611908565b1115610d765760405162461bcd60e51b815260206004820152600a602482015269085b585e15d85b1b195d60b21b6044820152606401610753565b610ea6565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316148015610dd557506001600160a01b0383166000908152600c602052604090205460ff16155b15610e2557600a54811115610d765760405162461bcd60e51b815260206004820152601660248201527510b6b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b6044820152606401610753565b6001600160a01b0382166000908152600c602052604090205460ff16610ea6576011546001600160a01b038316600090815260208190526040902054610e6b9083611908565b1115610ea65760405162461bcd60e51b815260206004820152600a602482015269085b585e15d85b1b195d60b21b6044820152606401610753565b601254600160a01b900460ff16158015610ef257507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b8015610f1757506001600160a01b03831660009081526015602052604090205460ff16155b8015610f3c57506001600160a01b03821660009081526015602052604090205460ff16155b15610f6a576012805460ff60a01b1916600160a01b179055610f5c611482565b6012805460ff60a01b191690555b6012546001600160a01b03841660009081526015602052604090205460ff600160a01b909204821615911680610fb857506001600160a01b03831660009081526015602052604090205460ff165b15610fc1575060005b60008115611178577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b031614801561100c57506000601054115b15611094576013546010546110219085611950565b61102b9190611967565b90506010546008548261103e9190611950565b6110489190611967565b600660008282546110599190611908565b9091555050601054600e5461106e9083611950565b6110789190611967565b600d60008282546110899190611908565b9091555061115a9050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b03161480156110d757506000600954115b1561115a576013546009546110ec9085611950565b6110f69190611967565b9050600954600b54826111099190611950565b6111139190611967565b600660008282546111249190611908565b9091555050600954600f546111399083611950565b6111439190611967565b600d60008282546111549190611908565b90915550505b801561116b5761116b8530836112be565b6111758184611989565b92505b6111838585856112be565b5050505050565b6111b5307f0000000000000000000000000000000000000000000000000000000000000000856109ff565b60405163f305d71960e01b81523060048201526024810184905260006044820181905260648201526001600160a01b0382811660848301524260a48301527f0000000000000000000000000000000000000000000000000000000000000000169063f305d71990849060c40160606040518083038185885af115801561123f573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611264919061199c565b505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03831661131e5760405162461bcd60e51b815260206004820152602160248201527f45524332303a207472616e736665722066726f6d207a65726f206164647265736044820152607360f81b6064820152608401610753565b6001600160a01b0382166113745760405162461bcd60e51b815260206004820152601f60248201527f45524332303a207472616e7366657220746f207a65726f2061646472657373006044820152606401610753565b6001600160a01b038316600090815260208190526040902054818110156113f15760405162461bcd60e51b815260206004820152602b60248201527f45524332303a207472616e7366657220616d6f756e742067726561746572207460448201526a68616e2062616c616e636560a81b6064820152608401610753565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611428908490611908565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161147491815260200190565b60405180910390a350505050565b6000600d546006546114949190611908565b306000908152602081905260409020549091508015806114b2575081155b156114bb575050565b6000600283600654846114ce9190611950565b6114d89190611967565b6114e29190611967565b905060006114f08284611989565b9050476114fc826115d3565b60006115088247611989565b9050600086600d548361151b9190611950565b6115259190611967565b905060006115338284611989565b6000600d8190556006559050851580159061154e5750600081115b1561156c5760125461156c90879083906001600160a01b031661118a565b47156115c9576007546040516000916001600160a01b03169047908381818185875af1925050503d80600081146115bf576040519150601f19603f3d011682016040523d82523d6000602084013e6115c4565b606091505b505050505b5050505050505050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611608576116086119ca565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611686573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116aa91906119e0565b816001815181106116bd576116bd6119ca565b60200260200101906001600160a01b031690816001600160a01b031681525050611708307f0000000000000000000000000000000000000000000000000000000000000000846109ff565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac9479061175d9085906000908690309042906004016119fd565b600060405180830381600087803b15801561177757600080fd5b505af1158015611264573d6000803e3d6000fd5b600060208083528351808285015260005b818110156117b85785810183015185820160400152820161179c565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146109fc57600080fd5b6000806040838503121561180157600080fd5b823561180c816117d9565b946020939093013593505050565b60008060006060848603121561182f57600080fd5b833561183a816117d9565b9250602084013561184a816117d9565b929592945050506040919091013590565b60006020828403121561186d57600080fd5b8135611878816117d9565b9392505050565b6000806040838503121561189257600080fd5b823561189d816117d9565b915060208301356118ad816117d9565b809150509250929050565b600181811c908216806118cc57607f821691505b6020821081036118ec57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156106ba576106ba6118f2565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b80820281158282048414176106ba576106ba6118f2565b60008261198457634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106ba576106ba6118f2565b6000806000606084860312156119b157600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156119f257600080fd5b8151611878816117d9565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a4d5784516001600160a01b031683529383019391830191600101611a28565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212205cbb6cf40a07cf9b1bb5473382610885b3e9ab1ae2a3ee612cccb31d2ec3c3f964736f6c634300081100330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000001336fef3a18544c1196d78d2fe0c2d0064bbdfaf0000000000000000000000001336fef3a18544c1196d78d2fe0c2d0064bbdfaf

Deployed Bytecode

0x6080604052600436106101f25760003560e01c80638ea5220f1161010d578063a9059cbb116100a0578063f11a24d31161006f578063f11a24d314610581578063f2fde38b14610597578063f6374342146105b7578063f887ea40146105cd578063f8b45b051461060157600080fd5b8063a9059cbb146104ef578063c8c8ebe41461050f578063d85ba06314610525578063dd62ed3e1461053b57600080fd5b80639fccce32116100dc5780639fccce3214610483578063a0d82dc514610499578063a457c2d7146104af578063a802cc6b146104cf57600080fd5b80638ea5220f1461040857806391c756f71461042857806395d89b41146104585780639c3b4fdc1461046d57600080fd5b8063395093511161018557806370a082311161015457806370a082311461038a578063715018a6146103c0578063751039fc146103d55780638da5cb5b146103ea57600080fd5b806339509351146103305780634a62bb651461035057806351c202b11461036a5780636a486a8e1461037457600080fd5b80631a8145bb116101c15780631a8145bb1461029257806322d0c30d146102a857806323b872dd146102f4578063313ce5671461031457600080fd5b806306fdde03146101fe578063095ea7b314610229578063180b0d7e1461025957806318160ddd1461027d57600080fd5b366101f957005b600080fd5b34801561020a57600080fd5b50610213610617565b604051610220919061178b565b60405180910390f35b34801561023557600080fd5b506102496102443660046117ee565b6106a9565b6040519015158152602001610220565b34801561026557600080fd5b5061026f60135481565b604051908152602001610220565b34801561028957600080fd5b5060025461026f565b34801561029e57600080fd5b5061026f60065481565b3480156102b457600080fd5b506102dc7f0000000000000000000000003e32d67885ca740e0dd611c31295d1649a63114181565b6040516001600160a01b039091168152602001610220565b34801561030057600080fd5b5061024961030f36600461181a565b6106c0565b34801561032057600080fd5b5060405160128152602001610220565b34801561033c57600080fd5b5061024961034b3660046117ee565b610774565b34801561035c57600080fd5b506014546102499060ff1681565b6103726107b0565b005b34801561038057600080fd5b5061026f60105481565b34801561039657600080fd5b5061026f6103a536600461185b565b6001600160a01b031660009081526020819052604090205490565b3480156103cc57600080fd5b50610372610812565b3480156103e157600080fd5b50610249610855565b3480156103f657600080fd5b506005546001600160a01b03166102dc565b34801561041457600080fd5b506007546102dc906001600160a01b031681565b34801561043457600080fd5b5061024961044336600461185b565b600c6020526000908152604090205460ff1681565b34801561046457600080fd5b506102136108a0565b34801561047957600080fd5b5061026f600f5481565b34801561048f57600080fd5b5061026f600d5481565b3480156104a557600080fd5b5061026f600e5481565b3480156104bb57600080fd5b506102496104ca3660046117ee565b6108af565b3480156104db57600080fd5b506012546102dc906001600160a01b031681565b3480156104fb57600080fd5b5061024961050a3660046117ee565b610948565b34801561051b57600080fd5b5061026f600a5481565b34801561053157600080fd5b5061026f60095481565b34801561054757600080fd5b5061026f61055636600461187f565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561058d57600080fd5b5061026f600b5481565b3480156105a357600080fd5b506103726105b236600461185b565b610955565b3480156105c357600080fd5b5061026f60085481565b3480156105d957600080fd5b506102dc7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b34801561060d57600080fd5b5061026f60115481565b606060038054610626906118b8565b80601f0160208091040260200160405190810160405280929190818152602001828054610652906118b8565b801561069f5780601f106106745761010080835404028352916020019161069f565b820191906000526020600020905b81548152906001019060200180831161068257829003601f168201915b5050505050905090565b60006106b63384846109ff565b5060015b92915050565b60006106cd848484610b23565b6001600160a01b03841660009081526004602090815260408083203384529091529020548281101561075c5760405162461bcd60e51b815260206004820152602d60248201527f45524332303a207472616e7366657220616d6f756e742067726561746572207460448201526c68616e20616c6c6f77616e636560981b60648201526084015b60405180910390fd5b61076985338584036109ff565b506001949350505050565b3360008181526004602090815260408083206001600160a01b038716845290915281205490916106b69185906107ab908690611908565b6109ff565b336107c36005546001600160a01b031690565b6001600160a01b0316146107e95760405162461bcd60e51b81526004016107539061191b565b306000908152602081905260409020546108109060075434906001600160a01b031661118a565b565b336108256005546001600160a01b031690565b6001600160a01b03161461084b5760405162461bcd60e51b81526004016107539061191b565b610810600061126c565b60003361086a6005546001600160a01b031690565b6001600160a01b0316146108905760405162461bcd60e51b81526004016107539061191b565b506014805460ff19169055600190565b606060018054610626906118b8565b3360009081526004602090815260408083206001600160a01b0386168452909152812054828110156109315760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610753565b61093e33858584036109ff565b5060019392505050565b60006106b6338484610b23565b336109686005546001600160a01b031690565b6001600160a01b03161461098e5760405162461bcd60e51b81526004016107539061191b565b6001600160a01b0381166109f35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610753565b6109fc8161126c565b50565b6001600160a01b038316610a615760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610753565b6001600160a01b038216610ac25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610753565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b875760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610753565b6001600160a01b038216610be95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610753565b80600003610c0257610bfd838360006112be565b505050565b60145460ff1615610ea6576005546001600160a01b03848116911614801590610c3957506005546001600160a01b03838116911614155b8015610c5057506001600160a01b03821661dead14155b8015610c665750601254600160a01b900460ff16155b15610ea6577f0000000000000000000000003e32d67885ca740e0dd611c31295d1649a6311416001600160a01b0316836001600160a01b0316148015610cc557506001600160a01b0382166000908152600c602052604090205460ff16155b15610d7b57600a54811115610d155760405162461bcd60e51b815260206004820152601660248201527510b6b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b6044820152606401610753565b6011546001600160a01b038316600090815260208190526040902054610d3b9083611908565b1115610d765760405162461bcd60e51b815260206004820152600a602482015269085b585e15d85b1b195d60b21b6044820152606401610753565b610ea6565b7f0000000000000000000000003e32d67885ca740e0dd611c31295d1649a6311416001600160a01b0316826001600160a01b0316148015610dd557506001600160a01b0383166000908152600c602052604090205460ff16155b15610e2557600a54811115610d765760405162461bcd60e51b815260206004820152601660248201527510b6b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b6044820152606401610753565b6001600160a01b0382166000908152600c602052604090205460ff16610ea6576011546001600160a01b038316600090815260208190526040902054610e6b9083611908565b1115610ea65760405162461bcd60e51b815260206004820152600a602482015269085b585e15d85b1b195d60b21b6044820152606401610753565b601254600160a01b900460ff16158015610ef257507f0000000000000000000000003e32d67885ca740e0dd611c31295d1649a6311416001600160a01b0316836001600160a01b031614155b8015610f1757506001600160a01b03831660009081526015602052604090205460ff16155b8015610f3c57506001600160a01b03821660009081526015602052604090205460ff16155b15610f6a576012805460ff60a01b1916600160a01b179055610f5c611482565b6012805460ff60a01b191690555b6012546001600160a01b03841660009081526015602052604090205460ff600160a01b909204821615911680610fb857506001600160a01b03831660009081526015602052604090205460ff165b15610fc1575060005b60008115611178577f0000000000000000000000003e32d67885ca740e0dd611c31295d1649a6311416001600160a01b0316846001600160a01b031614801561100c57506000601054115b15611094576013546010546110219085611950565b61102b9190611967565b90506010546008548261103e9190611950565b6110489190611967565b600660008282546110599190611908565b9091555050601054600e5461106e9083611950565b6110789190611967565b600d60008282546110899190611908565b9091555061115a9050565b7f0000000000000000000000003e32d67885ca740e0dd611c31295d1649a6311416001600160a01b0316856001600160a01b03161480156110d757506000600954115b1561115a576013546009546110ec9085611950565b6110f69190611967565b9050600954600b54826111099190611950565b6111139190611967565b600660008282546111249190611908565b9091555050600954600f546111399083611950565b6111439190611967565b600d60008282546111549190611908565b90915550505b801561116b5761116b8530836112be565b6111758184611989565b92505b6111838585856112be565b5050505050565b6111b5307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d856109ff565b60405163f305d71960e01b81523060048201526024810184905260006044820181905260648201526001600160a01b0382811660848301524260a48301527f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063f305d71990849060c40160606040518083038185885af115801561123f573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611264919061199c565b505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03831661131e5760405162461bcd60e51b815260206004820152602160248201527f45524332303a207472616e736665722066726f6d207a65726f206164647265736044820152607360f81b6064820152608401610753565b6001600160a01b0382166113745760405162461bcd60e51b815260206004820152601f60248201527f45524332303a207472616e7366657220746f207a65726f2061646472657373006044820152606401610753565b6001600160a01b038316600090815260208190526040902054818110156113f15760405162461bcd60e51b815260206004820152602b60248201527f45524332303a207472616e7366657220616d6f756e742067726561746572207460448201526a68616e2062616c616e636560a81b6064820152608401610753565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611428908490611908565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161147491815260200190565b60405180910390a350505050565b6000600d546006546114949190611908565b306000908152602081905260409020549091508015806114b2575081155b156114bb575050565b6000600283600654846114ce9190611950565b6114d89190611967565b6114e29190611967565b905060006114f08284611989565b9050476114fc826115d3565b60006115088247611989565b9050600086600d548361151b9190611950565b6115259190611967565b905060006115338284611989565b6000600d8190556006559050851580159061154e5750600081115b1561156c5760125461156c90879083906001600160a01b031661118a565b47156115c9576007546040516000916001600160a01b03169047908381818185875af1925050503d80600081146115bf576040519150601f19603f3d011682016040523d82523d6000602084013e6115c4565b606091505b505050505b5050505050505050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611608576116086119ca565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611686573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116aa91906119e0565b816001815181106116bd576116bd6119ca565b60200260200101906001600160a01b031690816001600160a01b031681525050611708307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d846109ff565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac9479061175d9085906000908690309042906004016119fd565b600060405180830381600087803b15801561177757600080fd5b505af1158015611264573d6000803e3d6000fd5b600060208083528351808285015260005b818110156117b85785810183015185820160400152820161179c565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146109fc57600080fd5b6000806040838503121561180157600080fd5b823561180c816117d9565b946020939093013593505050565b60008060006060848603121561182f57600080fd5b833561183a816117d9565b9250602084013561184a816117d9565b929592945050506040919091013590565b60006020828403121561186d57600080fd5b8135611878816117d9565b9392505050565b6000806040838503121561189257600080fd5b823561189d816117d9565b915060208301356118ad816117d9565b809150509250929050565b600181811c908216806118cc57607f821691505b6020821081036118ec57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156106ba576106ba6118f2565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b80820281158282048414176106ba576106ba6118f2565b60008261198457634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106ba576106ba6118f2565b6000806000606084860312156119b157600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156119f257600080fd5b8151611878816117d9565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a4d5784516001600160a01b031683529383019391830191600101611a28565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212205cbb6cf40a07cf9b1bb5473382610885b3e9ab1ae2a3ee612cccb31d2ec3c3f964736f6c63430008110033

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

0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000001336fef3a18544c1196d78d2fe0c2d0064bbdfaf0000000000000000000000001336fef3a18544c1196d78d2fe0c2d0064bbdfaf

-----Decoded View---------------
Arg [0] : router_ (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
Arg [1] : devWallet_ (address): 0x1336fef3a18544C1196D78d2fe0c2d0064bbdfAf
Arg [2] : LpReceiver_ (address): 0x1336fef3a18544C1196D78d2fe0c2d0064bbdfAf

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Arg [1] : 0000000000000000000000001336fef3a18544c1196d78d2fe0c2d0064bbdfaf
Arg [2] : 0000000000000000000000001336fef3a18544c1196d78d2fe0c2d0064bbdfaf


Deployed Bytecode Sourcemap

7370:7417:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5900:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5077:167;;;;;;;;;;-1:-1:-1;5077:167:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;5077:167:0;1023:187:1;8018:36:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;8018:36:0;1215:177:1;6008:108:0;;;;;;;;;;-1:-1:-1;6096:12:0;;6008:108;;7420:33;;;;;;;;;;;;;;;;7949:32;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1561:32:1;;;1543:51;;1531:2;1516:18;7949:32:0;1397:203:1;4576:493:0;;;;;;;;;;-1:-1:-1;4576:493:0;;;;;:::i;:::-;;:::i;5252:93::-;;;;;;;;;;-1:-1:-1;5252:93:0;;5335:2;2208:36:1;;2196:2;2181:18;5252:93:0;2066:184:1;3736:211:0;;;;;;;;;;-1:-1:-1;3736:211:0;;;;;:::i;:::-;;:::i;8061:33::-;;;;;;;;;;-1:-1:-1;8061:33:0;;;;;;;;11836:156;;;:::i;:::-;;7800:28;;;;;;;;;;;;;;;;3024:127;;;;;;;;;;-1:-1:-1;3024:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;3125:18:0;3098:7;3125:18;;;;;;;;;;;;3024:127;1603:103;;;;;;;;;;;;;:::i;10001:121::-;;;;;;;;;;;;;:::i;1309:87::-;;;;;;;;;;-1:-1:-1;1382:6:0;;-1:-1:-1;;;;;1382:6:0;1309:87;;7460:24;;;;;;;;;;-1:-1:-1;7460:24:0;;;;-1:-1:-1;;;;;7460:24:0;;;7644:48;;;;;;;;;;-1:-1:-1;7644:48:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;3624:104;;;;;;;;;;;;;:::i;7769:24::-;;;;;;;;;;;;;;;;7699:27;;;;;;;;;;;;;;;;7733:25;;;;;;;;;;;;;;;;6124:409;;;;;;;;;;-1:-1:-1;6124:409:0;;;;;:::i;:::-;;:::i;7917:25::-;;;;;;;;;;-1:-1:-1;7917:25:0;;;;-1:-1:-1;;;;;7917:25:0;;;3443:173;;;;;;;;;;-1:-1:-1;3443:173:0;;;;;:::i;:::-;;:::i;7565:35::-;;;;;;;;;;;;;;;;7531:27;;;;;;;;;;;;;;;;5741:151;;;;;;;;;;-1:-1:-1;5741:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;5857:18:0;;;5830:7;5857:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5741:151;7607:30;;;;;;;;;;;;;;;;1100:201;;;;;;;;;;-1:-1:-1;1100:201:0;;;;;:::i;:::-;;:::i;7491:31::-;;;;;;;;;;;;;;;;7835:42;;;;;;;;;;;;;;;7884:24;;;;;;;;;;;;;;;;5900:100;5954:13;5987:5;5980:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5900:100;:::o;5077:167::-;5160:4;5177:37;5186:10;5198:7;5207:6;5177:8;:37::i;:::-;-1:-1:-1;5232:4:0;5077:167;;;;;:::o;4576:493::-;4716:4;4733:36;4743:6;4751:9;4762:6;4733:9;:36::i;:::-;-1:-1:-1;;;;;4809:19:0;;4782:24;4809:19;;;:11;:19;;;;;;;;4829:10;4809:31;;;;;;;;4859:26;;;;4851:84;;;;-1:-1:-1;;;4851:84:0;;3721:2:1;4851: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;;4851:84:0;;;;;;;;;4971:55;4980:6;4988:10;5019:6;5000:16;:25;4971:8;:55::i;:::-;-1:-1:-1;5057:4:0;;4576:493;-1:-1:-1;;;;4576:493:0:o;3736:211::-;3850:10;3824:4;3871:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;3871:32:0;;;;;;;;;;3824:4;;3841:76;;3862:7;;3871:45;;3906:10;;3871:45;:::i;:::-;3841:8;:76::i;11836:156::-;1025:10;1014:7;1382:6;;-1:-1:-1;;;;;1382:6:0;;1309:87;1014:7;-1:-1:-1;;;;;1014:21:0;;1006:66;;;;-1:-1:-1;;;1006:66:0;;;;;;;:::i;:::-;11955:4:::1;3098:7:::0;3125:18;;;;;;;;;;;11920:64:::1;::::0;11974:9:::1;::::0;11963::::1;::::0;-1:-1:-1;;;;;11974:9:0::1;11920:16;:64::i;:::-;11836:156::o:0;1603:103::-;1025:10;1014:7;1382:6;;-1:-1:-1;;;;;1382:6:0;;1309:87;1014:7;-1:-1:-1;;;;;1014:21:0;;1006:66;;;;-1:-1:-1;;;1006:66:0;;;;;;;:::i;:::-;1668:30:::1;1695:1;1668:18;:30::i;10001:121::-:0;10053:4;1025:10;1014:7;1382:6;;-1:-1:-1;;;;;1382:6:0;;1309:87;1014:7;-1:-1:-1;;;;;1014:21:0;;1006:66;;;;-1:-1:-1;;;1006:66:0;;;;;;;:::i;:::-;-1:-1:-1;10070:14:0::1;:22:::0;;-1:-1:-1;;10070:22:0::1;::::0;;;10001:121;:::o;3624:104::-;3680:13;3713:7;3706:14;;;;;:::i;6124:409::-;6273:10;6217:4;6261:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;6261:32:0;;;;;;;;;;6312:35;;;;6304:85;;;;-1:-1:-1;;;6304:85:0;;4758:2:1;6304: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;;6304:85:0;4556:401:1;6304:85:0;6425:65;6434:10;6446:7;6474:15;6455:16;:34;6425:8;:65::i;:::-;-1:-1:-1;6521:4:0;;6124:409;-1:-1:-1;;;6124:409:0:o;3443:173::-;3529:4;3546:40;3556:10;3568:9;3579:6;3546:9;:40::i;1100:201::-;1025:10;1014:7;1382:6;;-1:-1:-1;;;;;1382:6:0;;1309:87;1014:7;-1:-1:-1;;;;;1014:21:0;;1006:66;;;;-1:-1:-1;;;1006:66:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1189:22:0;::::1;1181:73;;;::::0;-1:-1:-1;;;1181:73:0;;5164:2:1;1181: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;;1181:73:0::1;4962:402:1::0;1181:73:0::1;1265:28;1284:8;1265:18;:28::i;:::-;1100:201:::0;:::o;5353:380::-;-1:-1:-1;;;;;5489:19:0;;5481:68;;;;-1:-1:-1;;;5481:68:0;;5571:2:1;5481: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;;5481:68:0;5369:400:1;5481:68:0;-1:-1:-1;;;;;5568:21:0;;5560:68;;;;-1:-1:-1;;;5560:68:0;;5976:2:1;5560: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;;5560:68:0;5774:398:1;5560:68:0;-1:-1:-1;;;;;5641:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5693:32;;1361:25:1;;;5693:32:0;;1334:18:1;5693:32:0;;;;;;;5353:380;;;:::o;12000:2782::-;-1:-1:-1;;;;;12132:18:0;;12124:68;;;;-1:-1:-1;;;12124:68:0;;6379:2:1;12124: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;;12124:68:0;6177:401:1;12124:68:0;-1:-1:-1;;;;;12211:16:0;;12203:64;;;;-1:-1:-1;;;12203:64:0;;6785:2:1;12203: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;;12203:64:0;6583:399:1;12203:64:0;12284:6;12294:1;12284:11;12280:93;;12312:28;12328:4;12334:2;12338:1;12312:15;:28::i;:::-;12000:2782;;;:::o;12280:93::-;12389:14;;;;12385:1203;;;1382:6;;-1:-1:-1;;;;;12442:15:0;;;1382:6;;12442:15;;;;:49;;-1:-1:-1;1382:6:0;;-1:-1:-1;;;;;12478:13:0;;;1382:6;;12478:13;;12442:49;:91;;;;-1:-1:-1;;;;;;12512:21:0;;12526:6;12512:21;;12442:91;:121;;;;-1:-1:-1;12555:8:0;;-1:-1:-1;;;12555:8:0;;;;12554:9;12442:121;12420:1157;;;12634:7;-1:-1:-1;;;;;12626:15:0;:4;-1:-1:-1;;;;;12626:15:0;;:61;;;;-1:-1:-1;;;;;;12667:20:0;;;;;;:16;:20;;;;;;;;12666:21;12626:61;12600:962;;;12774:20;;12764:6;:30;;12730:138;;;;-1:-1:-1;;;12730:138:0;;7189:2:1;12730:138:0;;;7171:21:1;7228:2;7208:18;;;7201:30;-1:-1:-1;;;7247:18:1;;;7240:52;7309:18;;12730:138:0;6987:346:1;12730:138:0;12951:9;;-1:-1:-1;;;;;3125:18:0;;3098:7;3125:18;;;;;;;;;;;12925:22;;:6;:22;:::i;:::-;:35;;12891:131;;;;-1:-1:-1;;;12891:131:0;;7540:2:1;12891:131:0;;;7522:21:1;7579:2;7559:18;;;7552:30;-1:-1:-1;;;7598:18:1;;;7591:40;7648:18;;12891:131:0;7338:334:1;12891:131:0;12600:962;;;13099:7;-1:-1:-1;;;;;13093:13:0;:2;-1:-1:-1;;;;;13093:13:0;;:61;;;;-1:-1:-1;;;;;;13132:22:0;;;;;;:16;:22;;;;;;;;13131:23;13093:61;13067:495;;;13241:20;;13231:6;:30;;13197:138;;;;-1:-1:-1;;;13197:138:0;;7189:2:1;13197:138:0;;;7171:21:1;7228:2;7208:18;;;7201:30;-1:-1:-1;;;7247:18:1;;;7240:52;7309:18;;13197:138:0;6987:346:1;13067:495:0;-1:-1:-1;;;;;13366:20:0;;;;;;:16;:20;;;;;;;;13361:201;;13471:9;;-1:-1:-1;;;;;3125:18:0;;3098:7;3125:18;;;;;;;;;;;13445:22;;:6;:22;:::i;:::-;:35;;13411:131;;;;-1:-1:-1;;;13411:131:0;;7540:2:1;13411:131:0;;;7522:21:1;7579:2;7559:18;;;7552:30;-1:-1:-1;;;7598:18:1;;;7591:40;7648:18;;13411:131:0;7338:334:1;13411:131:0;13619:8;;-1:-1:-1;;;13619:8:0;;;;13618:9;:41;;;;;13652:7;-1:-1:-1;;;;;13644:15:0;:4;-1:-1:-1;;;;;13644:15:0;;;13618:41;:70;;;;-1:-1:-1;;;;;;13677:11:0;;;;;;:5;:11;;;;;;;;13676:12;13618:70;:97;;;;-1:-1:-1;;;;;;13706:9:0;;;;;;:5;:9;;;;;;;;13705:10;13618:97;13600:229;;;13742:8;:15;;-1:-1:-1;;;;13742:15:0;-1:-1:-1;;;13742:15:0;;;13774:10;:8;:10::i;:::-;13801:8;:16;;-1:-1:-1;;;;13801:16:0;;;13600:229;13857:8;;-1:-1:-1;;;;;13882:11:0;;13841:12;13882:11;;;:5;:11;;;;;;13857:8;-1:-1:-1;;;13857:8:0;;;;;13856:9;;13882:11;;:24;;-1:-1:-1;;;;;;13897:9:0;;;;;;:5;:9;;;;;;;;13882:24;13878:72;;;-1:-1:-1;13933:5:0;13878:72;13962:12;13993:7;13989:740;;;14027:7;-1:-1:-1;;;;;14021:13:0;:2;-1:-1:-1;;;;;14021:13:0;;:34;;;;;14054:1;14038:13;;:17;14021:34;14017:563;;;14108:14;;14092:13;;14083:22;;:6;:22;:::i;:::-;:39;;;;:::i;:::-;14076:46;;14191:13;;14171:16;;14164:4;:23;;;;:::i;:::-;14163:41;;;;:::i;:::-;14141:18;;:63;;;;;;;:::i;:::-;;;;-1:-1:-1;;14261:13:0;;14247:10;;14240:17;;:4;:17;:::i;:::-;14239:35;;;;:::i;:::-;14223:12;;:51;;;;;;;:::i;:::-;;;;-1:-1:-1;14017:563:0;;-1:-1:-1;14017:563:0;;14323:7;-1:-1:-1;;;;;14315:15:0;:4;-1:-1:-1;;;;;14315:15:0;;:35;;;;;14349:1;14334:12;;:16;14315:35;14311:269;;;14402:14;;14387:12;;14378:21;;:6;:21;:::i;:::-;:38;;;;:::i;:::-;14371:45;;14484:12;;14465:15;;14458:4;:22;;;;:::i;:::-;14457:39;;;;:::i;:::-;14435:18;;:61;;;;;;;:::i;:::-;;;;-1:-1:-1;;14552:12:0;;14539:9;;14532:16;;:4;:16;:::i;:::-;14531:33;;;;:::i;:::-;14515:12;;:49;;;;;;;:::i;:::-;;;;-1:-1:-1;;14311:269:0;14600:8;;14596:91;;14629:42;14645:4;14659;14666;14629:15;:42::i;:::-;14703:14;14713:4;14703:14;;:::i;:::-;;;13989:740;14741:33;14757:4;14763:2;14767:6;14741:15;:33::i;:::-;12113:2669;;12000:2782;;;:::o;9614:379::-;9724:53;9741:4;9756:6;9765:11;9724:8;:53::i;:::-;9788:197;;-1:-1:-1;;;9788:197:0;;9852:4;9788:197;;;8546:34:1;8596:18;;;8589:34;;;9898:1:0;8639:18:1;;;8632:34;;;8682:18;;;8675:34;-1:-1:-1;;;;;8746:15:1;;;8725:19;;;8718:44;9959:15:0;8778:19:1;;;8771:35;9788:6:0;:22;;;;9818:9;;8480:19:1;;9788:197:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;9614:379;;;:::o;1404:191::-;1497:6;;;-1:-1:-1;;;;;1514:17:0;;;-1:-1:-1;;;;;;1514:17:0;;;;;;;1547:40;;1497:6;;;1514:17;1497:6;;1547:40;;1478:16;;1547:40;1467:128;1404:191;:::o;3955:613::-;-1:-1:-1;;;;;4095:20:0;;4087:66;;;;-1:-1:-1;;;4087:66:0;;9330:2:1;4087: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;;4087:66:0;9128:397:1;4087:66:0;-1:-1:-1;;;;;4172:23:0;;4164:67;;;;-1:-1:-1;;;4164:67:0;;9732:2:1;4164:67:0;;;9714:21:1;9771:2;9751:18;;;9744:30;9810:33;9790:18;;;9783:61;9861:18;;4164:67:0;9530:355:1;4164:67:0;-1:-1:-1;;;;;4268:17:0;;4244:21;4268:17;;;;;;;;;;;4304:23;;;;4296:79;;;;-1:-1:-1;;;4296:79:0;;10092:2:1;4296: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;;4296:79:0;9890:407:1;4296:79:0;-1:-1:-1;;;;;4411:17:0;;;:9;:17;;;;;;;;;;;4431:22;;;4411:42;;4475:20;;;;;;;;:30;;4447:6;;4411:9;4475:30;;4447:6;;4475:30;:::i;:::-;;;;;;;;4540:9;-1:-1:-1;;;;;4523:35:0;4532:6;-1:-1:-1;;;;;4523:35:0;;4551:6;4523:35;;;;1361:25:1;;1349:2;1334:18;;1215:177;4523:35:0;;;;;;;;4076:492;3955:613;;;:::o;10583:1208::-;10623:25;10672:12;;10651:18;;:33;;;;:::i;:::-;10739:4;10695:23;3125:18;;;;;;;;;;;10623:61;;-1:-1:-1;10762:20:0;;;:46;;-1:-1:-1;10786:22:0;;10762:46;10758:182;;;-1:-1:-1;;10583:1208:0:o;10758:182::-;10952:17;11033:1;11013:17;10991:18;;10973:15;:36;;;;:::i;:::-;10972:58;;;;:::i;:::-;:62;;;;:::i;:::-;10952:82;-1:-1:-1;11045:26:0;11074:27;10952:82;11074:15;:27;:::i;:::-;11045:56;-1:-1:-1;11140:21:0;11172:36;11045:56;11172:16;:36::i;:::-;11219:18;11240:43;11266:17;11241:21;11240:43;:::i;:::-;11219:64;;11294:17;11342;11327:12;;11314:10;:25;;;;:::i;:::-;:45;;;;:::i;:::-;11294:65;-1:-1:-1;11370:23:0;11396:22;11294:65;11396:10;:22;:::i;:::-;11444:1;11429:12;:16;;;11456:18;:22;11370:48;-1:-1:-1;11495:13:0;;;;;:36;;;11530:1;11512:15;:19;11495:36;11491:125;;;11593:10;;11548:56;;11565:9;;11576:15;;-1:-1:-1;;;;;11593:10:0;11548:16;:56::i;:::-;11632:21;:25;11628:156;;11723:9;;11715:57;;11674:12;;-1:-1:-1;;;;;11723:9:0;;11746:21;;11674:12;11715:57;11674:12;11715:57;11746:21;11723:9;11715:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;11628:156:0;10612:1179;;;;;;;;10583:1208::o;10130:445::-;10221:16;;;10235:1;10221:16;;;;;;;;10197:21;;10221:16;;;;;;;;;;-1:-1:-1;10221:16:0;10197:40;;10266:4;10248;10253:1;10248:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;10248:23:0;;;-1:-1:-1;;;;;10248:23:0;;;;;10292:6;-1:-1:-1;;;;;10292:11:0;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10282:4;10287:1;10282:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;10282:23:0;;;-1:-1:-1;;;;;10282:23:0;;;;;10316:53;10333:4;10348:6;10357:11;10316:8;:53::i;:::-;10380:187;;-1:-1:-1;;;10380:187:0;;-1:-1:-1;;;;;10380:6:0;:57;;;;:187;;10452:11;;10478:1;;10494:4;;10521;;10541:15;;10380: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;1605:456::-;1682:6;1690;1698;1751:2;1739:9;1730:7;1726:23;1722:32;1719:52;;;1767:1;1764;1757:12;1719:52;1806:9;1793:23;1825:31;1850:5;1825:31;:::i;:::-;1875:5;-1:-1:-1;1932:2:1;1917:18;;1904:32;1945:33;1904:32;1945:33;:::i;:::-;1605:456;;1997:7;;-1:-1:-1;;;2051:2:1;2036:18;;;;2023:32;;1605: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:127::-;3994:10;3989:3;3985:20;3982:1;3975:31;4025:4;4022:1;4015:15;4049:4;4046:1;4039:15;4065:125;4130:9;;;4151:10;;;4148:36;;;4164:18;;:::i;4195:356::-;4397:2;4379:21;;;4416:18;;;4409:30;4475:34;4470:2;4455:18;;4448:62;4542:2;4527:18;;4195:356::o;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://5cbb6cf40a07cf9b1bb5473382610885b3e9ab1ae2a3ee612cccb31d2ec3c3f9
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.