ETH Price: $3,097.56 (+0.82%)
Gas: 5 Gwei

Token

Fable Of The Dawgon (TYRANT GOLD)
 

Overview

Max Total Supply

10,000,000 TYRANT GOLD

Holders

96

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
27,440.333926101575939404 TYRANT GOLD

Value
$0.00
0x32f3895ede4de3601c9e8fab0e88e8c4a7ba16ab
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:
TYRANTGOLD

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

// SPDX-License-Identifier: MIT

/*
The most luxurious TYRANT

Join Our Community:
https://t.me/fotdGOLD
*/
pragma solidity ^0.8.17;

interface IBEP20 {

    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

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

        return c;
    }

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

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

        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

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

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

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

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

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

    function _msgData() internal view virtual returns (bytes memory) {
        this;
        return msg.data;
    }
}

contract Ownable is Context {
    address private _owner;

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

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

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

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

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

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

interface IUniswapV2Factory {
    event PairCreated(address indexed token0, address indexed token1, address pair, uint);

    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,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    )
        external payable;
}

interface IUniswapV2Pair {
    function sync() external;
}

contract TYRANTGOLD is Context, IBEP20, Ownable {
    using SafeMath for uint256;
    IUniswapV2Router02 public uniswapV2Router;

    address public uniswapV2Pair;
    
    mapping (address => uint256) private balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;

    string private constant _name = "Fable Of The Dawgon";
    string private constant _symbol = "TYRANT GOLD";
    uint8 private constant _decimals = 18;
    uint256 private _tTotal =  10_000_000  * 10**_decimals;

    uint256 public _maxWalletAmount = 10_000_000 * 10**_decimals;
    uint256 public _maxTxAmount = 200_000 * 10**_decimals;
    uint256 public _maxSellAmount = 200_000 * 10**_decimals;
    uint256 public swapTokenAtAmount = 20_000 * 10**_decimals;
    uint256 public forceSwapCount;

    address public liquidityReceiver;
    address public marketingWallet;

    struct BuyFees{
        uint256 liquidity;
        uint256 marketing;
    }

    struct SellFees{
        uint256 liquidity;
        uint256 marketing;
    }

    BuyFees public buyFee;
    SellFees public sellFee;

    uint256 private liquidityFee;
    uint256 private marketingFee;

    bool public launched;
    uint256 public launchEpoch;
    bool public launchComplete;

    bool private swapping;
    event SwapAndLiquify(uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiquidity);

    constructor (address marketingAddress, address liquidityAddress) {
        marketingWallet = marketingAddress;
        liquidityReceiver = liquidityAddress;

        balances[_msgSender()] = _tTotal;
        
        buyFee.liquidity = 1;
        buyFee.marketing = 3;

        sellFee.liquidity = 1;
        sellFee.marketing = 3;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        address _uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());

        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = _uniswapV2Pair;
        
        _isExcludedFromFee[msg.sender] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[address(0x00)] = true;
        _isExcludedFromFee[address(0xdead)] = true;

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

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

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

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

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

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

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

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

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

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

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

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] - subtractedValue);
        return true;
    }
    
    function excludeFromFees(address account, bool excluded) public onlyOwner {
        _isExcludedFromFee[address(account)] = excluded;
    }

    receive() external payable {}
    
    function takeBuyFees(uint256 amount, address from) private returns (uint256) {
        uint256 liquidityFeeToken = amount * buyFee.liquidity / 100; 
        uint256 marketingFeeTokens = amount * buyFee.marketing / 100;

        balances[address(this)] += liquidityFeeToken + marketingFeeTokens;
        emit Transfer (from, address(this), marketingFeeTokens + liquidityFeeToken);
        return (amount -liquidityFeeToken -marketingFeeTokens);
    }

    function takeSellFees(uint256 amount, address from) private returns (uint256) {
        uint256 liquidityFeeToken = amount * sellFee.liquidity / 100; 
        uint256 marketingFeeTokens = amount * sellFee.marketing / 100;

        balances[address(this)] += liquidityFeeToken + marketingFeeTokens;
        emit Transfer (from, address(this), marketingFeeTokens + liquidityFeeToken );
        return (amount -liquidityFeeToken -marketingFeeTokens);
    }

    function isExcludedFromFee(address account) public view returns(bool) {
        return _isExcludedFromFee[account];
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "BEP20: approve from the zero address");
        require(spender != address(0), "BEP20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        require(from != address(0), "BEP20: transfer from the zero address");
        require(to != address(0), "BEP20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        
        balances[from] -= amount;
        uint256 transferAmount = amount;
        
        bool takeFee;

        if(!_isExcludedFromFee[from] && !_isExcludedFromFee[to]){
            takeFee = true;
        }

        if(from == liquidityReceiver && to == uniswapV2Pair) {
            launchEpoch = block.timestamp;
            launched = true;
        }

        if(launched && block.timestamp > launchEpoch + 1200 && !launchComplete) {
            _maxWalletAmount = _tTotal;
            _maxTxAmount = _tTotal;
            _maxSellAmount = 200_000 * 10**_decimals;
            launchComplete = true;
        }


        if(takeFee){
            if(to != uniswapV2Pair){
                require(amount <= _maxTxAmount, "Transfer Amount exceeds the maxTxnsAmount");
                require(balanceOf(to) + amount <= _maxWalletAmount, "Transfer amount exceeds the maxWalletAmount.");
                transferAmount = takeBuyFees(amount, to);
            }

            if(from != uniswapV2Pair){
                require(amount <= _maxSellAmount, "Transfer Amount exceeds the maxTxnsAmount");
                transferAmount = takeSellFees(amount, from);
                forceSwapCount += 1;

               if (balanceOf(address(this)) >= swapTokenAtAmount && !swapping) {
                    swapping = true;
                    swapBack(swapTokenAtAmount);
                    swapping = false;
                    forceSwapCount = 0;
              }

                if (forceSwapCount > 5 && !swapping) {
                    swapping = true;
                    swapBack(balanceOf(address(this)));
                    swapping = false;
                    forceSwapCount = 0;
              }
            }

            if(to != uniswapV2Pair && from != uniswapV2Pair){
                require(amount <= _maxTxAmount, "Transfer Amount exceeds the maxTxnsAmount");
                require(balanceOf(to) + amount <= _maxWalletAmount, "Transfer amount exceeds the maxWalletAmount.");
            }
        }
        
        balances[to] += transferAmount;
        emit Transfer(from, to, transferAmount);
    }
   
    function swapBack(uint256 amount) private {
        uint256 contractBalance = amount;
        uint256 liquidityTokens = contractBalance * (buyFee.liquidity + sellFee.liquidity) / (buyFee.marketing + buyFee.liquidity + sellFee.marketing + sellFee.liquidity);
        uint256 marketingTokens = contractBalance * (buyFee.marketing + sellFee.marketing) / (buyFee.marketing + buyFee.liquidity + sellFee.marketing + sellFee.liquidity);
        uint256 totalTokensToSwap = liquidityTokens + marketingTokens;
        
        uint256 tokensForLiquidity = liquidityTokens.div(2);
        uint256 amountToSwapForETH = contractBalance.sub(tokensForLiquidity);
        uint256 initialETHBalance = address(this).balance;
        swapTokensForEth(amountToSwapForETH); 
        uint256 ethBalance = address(this).balance.sub(initialETHBalance);
        
        uint256 ethForLiquidity = ethBalance.mul(liquidityTokens).div(totalTokensToSwap);
        addLiquidity(tokensForLiquidity, ethForLiquidity);
        payable(marketingWallet).transfer(address(this).balance);
    }

    function swapTokensForEth(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();

        _approve(address(this), address(uniswapV2Router), tokenAmount);

        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
        _approve(address(this), address(uniswapV2Router), tokenAmount);

        uniswapV2Router.addLiquidityETH {value: ethAmount} (
            address(this),
            tokenAmount,
            0,
            0,
            liquidityReceiver,
            block.timestamp
        );
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"marketingAddress","type":"address"},{"internalType":"address","name":"liquidityAddress","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":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiquidity","type":"uint256"}],"name":"SwapAndLiquify","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":"_maxSellAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"buyFee","outputs":[{"internalType":"uint256","name":"liquidity","type":"uint256"},{"internalType":"uint256","name":"marketing","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","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":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"forceSwapCount","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":"account","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchComplete","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchEpoch","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launched","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"liquidity","type":"uint256"},{"internalType":"uint256","name":"marketing","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTokenAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"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"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126012600a62000512565b6200002190629896806200052a565b600655620000326012600a62000512565b6200004190629896806200052a565b600755620000526012600a62000512565b620000619062030d406200052a565b600855620000726012600a62000512565b620000819062030d406200052a565b600955620000926012600a62000512565b620000a090614e206200052a565b600a55348015620000b057600080fd5b5060405162001f2d38038062001f2d833981016040819052620000d39162000561565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600d80546001600160a01b038085166001600160a01b031992831617909255600c80549284169290911691909117905560065460036000620001533390565b6001600160a01b0316815260208082019290925260409081016000908120939093556001600e8190556003600f819055601091909155601155805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9392849263c45a015592600480830193928290030181865afa158015620001da573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000200919062000599565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200024e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000274919062000599565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002c2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002e8919062000599565b600180546001600160a01b038086166001600160a01b0319928316178355600280549185169190921617905533600090815260056020526040808220805460ff19908116851790915530835290822080548216841790557f05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc805482168417905561dead9091527f7d509c07f0d4edcc2dd1b53aae68677132eb562dcba78e36381b63ccaf66e6ba805490911690911790559050620003a33390565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600654604051620003eb91815260200190565b60405180910390a350505050620005b7565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000454578160001904821115620004385762000438620003fd565b808516156200044657918102915b93841c939080029062000418565b509250929050565b6000826200046d575060016200050c565b816200047c575060006200050c565b8160018114620004955760028114620004a057620004c0565b60019150506200050c565b60ff841115620004b457620004b4620003fd565b50506001821b6200050c565b5060208310610133831016604e8410600b8410161715620004e5575081810a6200050c565b620004f1838362000413565b8060001904821115620005085762000508620003fd565b0290505b92915050565b60006200052360ff8416836200045c565b9392505050565b80820281158282048414176200050c576200050c620003fd565b80516001600160a01b03811681146200055c57600080fd5b919050565b600080604083850312156200057557600080fd5b620005808362000544565b9150620005906020840162000544565b90509250929050565b600060208284031215620005ac57600080fd5b620005238262000544565b61196680620005c76000396000f3fe6080604052600436106101d15760003560e01c8063715018a6116100f7578063a3aa748711610095578063c589829d11610064578063c589829d14610579578063dd62ed3e1461058f578063e65ea96a146105d5578063f2fde38b146105ef57600080fd5b8063a3aa748714610503578063a457c2d714610519578063a9059cbb14610539578063c02466681461055957600080fd5b80637d1db4a5116100d15780637d1db4a5146104815780638091f3bf146104975780638da5cb5b146104b157806395d89b41146104cf57600080fd5b8063715018a61461043457806375f0a8741461044b5780637cca52fe1461046b57600080fd5b80632b14ca561161016f57806349bd5a5e1161013e57806349bd5a5e1461038f5780635342acb4146103af5780636c0a24eb146103e857806370a08231146103fe57600080fd5b80632b14ca5614610308578063313ce567146103385780633950935114610354578063470624021461037457600080fd5b80631694505e116101ab5780631694505e1461027b57806318160ddd146102b357806323b872dd146102c8578063264d26dd146102e857600080fd5b806303e403b0146101dd57806306fdde0314610206578063095ea7b31461024b57600080fd5b366101d857005b600080fd5b3480156101e957600080fd5b506101f3600a5481565b6040519081526020015b60405180910390f35b34801561021257600080fd5b506040805180820190915260138152722330b136329027b3102a3432902230bbb3b7b760691b60208201525b6040516101fd91906114d0565b34801561025757600080fd5b5061026b610266366004611536565b61060f565b60405190151581526020016101fd565b34801561028757600080fd5b5060015461029b906001600160a01b031681565b6040516001600160a01b0390911681526020016101fd565b3480156102bf57600080fd5b506006546101f3565b3480156102d457600080fd5b5061026b6102e3366004611562565b610626565b3480156102f457600080fd5b50600c5461029b906001600160a01b031681565b34801561031457600080fd5b50601054601154610323919082565b604080519283526020830191909152016101fd565b34801561034457600080fd5b50604051601281526020016101fd565b34801561036057600080fd5b5061026b61036f366004611536565b610678565b34801561038057600080fd5b50600e54600f54610323919082565b34801561039b57600080fd5b5060025461029b906001600160a01b031681565b3480156103bb57600080fd5b5061026b6103ca3660046115a3565b6001600160a01b031660009081526005602052604090205460ff1690565b3480156103f457600080fd5b506101f360075481565b34801561040a57600080fd5b506101f36104193660046115a3565b6001600160a01b031660009081526003602052604090205490565b34801561044057600080fd5b506104496106af565b005b34801561045757600080fd5b50600d5461029b906001600160a01b031681565b34801561047757600080fd5b506101f360095481565b34801561048d57600080fd5b506101f360085481565b3480156104a357600080fd5b5060145461026b9060ff1681565b3480156104bd57600080fd5b506000546001600160a01b031661029b565b3480156104db57600080fd5b5060408051808201909152600b81526a1516549053950811d3d31160aa1b602082015261023e565b34801561050f57600080fd5b506101f360155481565b34801561052557600080fd5b5061026b610534366004611536565b61072c565b34801561054557600080fd5b5061026b610554366004611536565b610763565b34801561056557600080fd5b506104496105743660046115c0565b610770565b34801561058557600080fd5b506101f3600b5481565b34801561059b57600080fd5b506101f36105aa3660046115fe565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156105e157600080fd5b5060165461026b9060ff1681565b3480156105fb57600080fd5b5061044961060a3660046115a3565b6107c5565b600061061c3384846108af565b5060015b92915050565b60006106338484846109d3565b6001600160a01b03841660009081526004602090815260408083203380855292529091205461066e918691610669908690611642565b6108af565b5060019392505050565b3360008181526004602090815260408083206001600160a01b0387168452909152812054909161061c918590610669908690611655565b6000546001600160a01b031633146106e25760405162461bcd60e51b81526004016106d990611668565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b3360008181526004602090815260408083206001600160a01b0387168452909152812054909161061c918590610669908690611642565b600061061c3384846109d3565b6000546001600160a01b0316331461079a5760405162461bcd60e51b81526004016106d990611668565b6001600160a01b03919091166000908152600560205260409020805460ff1916911515919091179055565b6000546001600160a01b031633146107ef5760405162461bcd60e51b81526004016106d990611668565b6001600160a01b0381166108545760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106d9565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166109115760405162461bcd60e51b8152602060048201526024808201527f42455032303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106d9565b6001600160a01b0382166109725760405162461bcd60e51b815260206004820152602260248201527f42455032303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106d9565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a375760405162461bcd60e51b815260206004820152602560248201527f42455032303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106d9565b6001600160a01b038216610a995760405162461bcd60e51b815260206004820152602360248201527f42455032303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106d9565b60008111610afb5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016106d9565b6001600160a01b03831660009081526003602052604081208054839290610b23908490611642565b90915550506001600160a01b03831660009081526005602052604081205482919060ff16158015610b6d57506001600160a01b03841660009081526005602052604090205460ff16155b15610b76575060015b600c546001600160a01b038681169116148015610ba057506002546001600160a01b038581169116145b15610bb757426015556014805460ff191660011790555b60145460ff168015610bd65750601554610bd3906104b0611655565b42115b8015610be5575060165460ff16155b15610c1f576006546007819055600855610c016012600a611781565b610c0e9062030d40611790565b6009556016805460ff191660011790555b8015610e6d576002546001600160a01b03858116911614610cb457600854831115610c5c5760405162461bcd60e51b81526004016106d9906117a7565b60075483610c7f866001600160a01b031660009081526003602052604090205490565b610c899190611655565b1115610ca75760405162461bcd60e51b81526004016106d9906117f0565b610cb18385610ef0565b91505b6002546001600160a01b03868116911614610dcf57600954831115610ceb5760405162461bcd60e51b81526004016106d9906117a7565b610cf58386610fc7565b91506001600b6000828254610d0a9190611655565b9091555050600a543060009081526003602052604090205410158015610d385750601654610100900460ff16155b15610d69576016805461ff001916610100179055600a54610d5890610ffe565b6016805461ff00191690556000600b555b6005600b54118015610d835750601654610100900460ff16155b15610dcf576016805461ff001916610100179055610dbe610db9306001600160a01b031660009081526003602052604090205490565b610ffe565b6016805461ff00191690556000600b555b6002546001600160a01b03858116911614801590610dfb57506002546001600160a01b03868116911614155b15610e6d57600854831115610e225760405162461bcd60e51b81526004016106d9906117a7565b60075483610e45866001600160a01b031660009081526003602052604090205490565b610e4f9190611655565b1115610e6d5760405162461bcd60e51b81526004016106d9906117f0565b6001600160a01b03841660009081526003602052604081208054849290610e95908490611655565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610ee191815260200190565b60405180910390a35050505050565b6000806064600e6000015485610f069190611790565b610f10919061183c565b905060006064600e6001015486610f279190611790565b610f31919061183c565b9050610f3d8183611655565b3060009081526003602052604081208054909190610f5c908490611655565b909155503090506001600160a01b0385167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610f988585611655565b60405190815260200160405180910390a380610fb48387611642565b610fbe9190611642565b95945050505050565b600080606460106000015485610fdd9190611790565b610fe7919061183c565b90506000606460106001015486610f279190611790565b601054601154600e54600f5484936000939092909161101d9190611655565b6110279190611655565b6110319190611655565b601054600e546110419190611655565b61104b9084611790565b611055919061183c565b601054601154600e54600f549394506000936110719190611655565b61107b9190611655565b6110859190611655565b601154600f546110959190611655565b61109f9085611790565b6110a9919061183c565b905060006110b78284611655565b905060006110c6846002611156565b905060006110d4868361119f565b9050476110e0826111e1565b60006110ec478361119f565b90506000611104866110fe848b61133b565b90611156565b905061111085826113bd565b600d546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611149573d6000803e3d6000fd5b5050505050505050505050565b600061119883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611471565b9392505050565b600061119883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061149f565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106112165761121661185e565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561126f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112939190611874565b816001815181106112a6576112a661185e565b6001600160a01b0392831660209182029290920101526001546112cc91309116846108af565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac94790611305908590600090869030904290600401611891565b600060405180830381600087803b15801561131f57600080fd5b505af1158015611333573d6000803e3d6000fd5b505050505050565b60008260000361134d57506000610620565b60006113598385611790565b905082611366858361183c565b146111985760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016106d9565b6001546113d59030906001600160a01b0316846108af565b600154600c5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015611445573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061146a9190611902565b5050505050565b600081836114925760405162461bcd60e51b81526004016106d991906114d0565b506000610fbe848661183c565b600081848411156114c35760405162461bcd60e51b81526004016106d991906114d0565b506000610fbe8486611642565b600060208083528351808285015260005b818110156114fd578581018301518582016040015282016114e1565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461153357600080fd5b50565b6000806040838503121561154957600080fd5b82356115548161151e565b946020939093013593505050565b60008060006060848603121561157757600080fd5b83356115828161151e565b925060208401356115928161151e565b929592945050506040919091013590565b6000602082840312156115b557600080fd5b81356111988161151e565b600080604083850312156115d357600080fd5b82356115de8161151e565b9150602083013580151581146115f357600080fd5b809150509250929050565b6000806040838503121561161157600080fd5b823561161c8161151e565b915060208301356115f38161151e565b634e487b7160e01b600052601160045260246000fd5b818103818111156106205761062061162c565b808201808211156106205761062061162c565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181815b808511156116d85781600019048211156116be576116be61162c565b808516156116cb57918102915b93841c93908002906116a2565b509250929050565b6000826116ef57506001610620565b816116fc57506000610620565b8160018114611712576002811461171c57611738565b6001915050610620565b60ff84111561172d5761172d61162c565b50506001821b610620565b5060208310610133831016604e8410600b841016171561175b575081810a610620565b611765838361169d565b80600019048211156117795761177961162c565b029392505050565b600061119860ff8416836116e0565b80820281158282048414176106205761062061162c565b60208082526029908201527f5472616e7366657220416d6f756e74206578636565647320746865206d6178546040820152681e1b9cd05b5bdd5b9d60ba1b606082015260800190565b6020808252602c908201527f5472616e7366657220616d6f756e74206578636565647320746865206d61785760408201526b30b63632ba20b6b7bab73a1760a11b606082015260800190565b60008261185957634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561188657600080fd5b81516111988161151e565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156118e15784516001600160a01b0316835293830193918301916001016118bc565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561191757600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220627918d53d8a0d13e67419bcf68bd160b62f8ca280ff22167a53c662611a365f64736f6c63430008110033000000000000000000000000709d91c0d69232a7fd191096a8a07bca5c0de0200000000000000000000000003539dc9872fde38457dc2c0695a25db1a00852e0

Deployed Bytecode

0x6080604052600436106101d15760003560e01c8063715018a6116100f7578063a3aa748711610095578063c589829d11610064578063c589829d14610579578063dd62ed3e1461058f578063e65ea96a146105d5578063f2fde38b146105ef57600080fd5b8063a3aa748714610503578063a457c2d714610519578063a9059cbb14610539578063c02466681461055957600080fd5b80637d1db4a5116100d15780637d1db4a5146104815780638091f3bf146104975780638da5cb5b146104b157806395d89b41146104cf57600080fd5b8063715018a61461043457806375f0a8741461044b5780637cca52fe1461046b57600080fd5b80632b14ca561161016f57806349bd5a5e1161013e57806349bd5a5e1461038f5780635342acb4146103af5780636c0a24eb146103e857806370a08231146103fe57600080fd5b80632b14ca5614610308578063313ce567146103385780633950935114610354578063470624021461037457600080fd5b80631694505e116101ab5780631694505e1461027b57806318160ddd146102b357806323b872dd146102c8578063264d26dd146102e857600080fd5b806303e403b0146101dd57806306fdde0314610206578063095ea7b31461024b57600080fd5b366101d857005b600080fd5b3480156101e957600080fd5b506101f3600a5481565b6040519081526020015b60405180910390f35b34801561021257600080fd5b506040805180820190915260138152722330b136329027b3102a3432902230bbb3b7b760691b60208201525b6040516101fd91906114d0565b34801561025757600080fd5b5061026b610266366004611536565b61060f565b60405190151581526020016101fd565b34801561028757600080fd5b5060015461029b906001600160a01b031681565b6040516001600160a01b0390911681526020016101fd565b3480156102bf57600080fd5b506006546101f3565b3480156102d457600080fd5b5061026b6102e3366004611562565b610626565b3480156102f457600080fd5b50600c5461029b906001600160a01b031681565b34801561031457600080fd5b50601054601154610323919082565b604080519283526020830191909152016101fd565b34801561034457600080fd5b50604051601281526020016101fd565b34801561036057600080fd5b5061026b61036f366004611536565b610678565b34801561038057600080fd5b50600e54600f54610323919082565b34801561039b57600080fd5b5060025461029b906001600160a01b031681565b3480156103bb57600080fd5b5061026b6103ca3660046115a3565b6001600160a01b031660009081526005602052604090205460ff1690565b3480156103f457600080fd5b506101f360075481565b34801561040a57600080fd5b506101f36104193660046115a3565b6001600160a01b031660009081526003602052604090205490565b34801561044057600080fd5b506104496106af565b005b34801561045757600080fd5b50600d5461029b906001600160a01b031681565b34801561047757600080fd5b506101f360095481565b34801561048d57600080fd5b506101f360085481565b3480156104a357600080fd5b5060145461026b9060ff1681565b3480156104bd57600080fd5b506000546001600160a01b031661029b565b3480156104db57600080fd5b5060408051808201909152600b81526a1516549053950811d3d31160aa1b602082015261023e565b34801561050f57600080fd5b506101f360155481565b34801561052557600080fd5b5061026b610534366004611536565b61072c565b34801561054557600080fd5b5061026b610554366004611536565b610763565b34801561056557600080fd5b506104496105743660046115c0565b610770565b34801561058557600080fd5b506101f3600b5481565b34801561059b57600080fd5b506101f36105aa3660046115fe565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156105e157600080fd5b5060165461026b9060ff1681565b3480156105fb57600080fd5b5061044961060a3660046115a3565b6107c5565b600061061c3384846108af565b5060015b92915050565b60006106338484846109d3565b6001600160a01b03841660009081526004602090815260408083203380855292529091205461066e918691610669908690611642565b6108af565b5060019392505050565b3360008181526004602090815260408083206001600160a01b0387168452909152812054909161061c918590610669908690611655565b6000546001600160a01b031633146106e25760405162461bcd60e51b81526004016106d990611668565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b3360008181526004602090815260408083206001600160a01b0387168452909152812054909161061c918590610669908690611642565b600061061c3384846109d3565b6000546001600160a01b0316331461079a5760405162461bcd60e51b81526004016106d990611668565b6001600160a01b03919091166000908152600560205260409020805460ff1916911515919091179055565b6000546001600160a01b031633146107ef5760405162461bcd60e51b81526004016106d990611668565b6001600160a01b0381166108545760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106d9565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166109115760405162461bcd60e51b8152602060048201526024808201527f42455032303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106d9565b6001600160a01b0382166109725760405162461bcd60e51b815260206004820152602260248201527f42455032303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106d9565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a375760405162461bcd60e51b815260206004820152602560248201527f42455032303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106d9565b6001600160a01b038216610a995760405162461bcd60e51b815260206004820152602360248201527f42455032303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106d9565b60008111610afb5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016106d9565b6001600160a01b03831660009081526003602052604081208054839290610b23908490611642565b90915550506001600160a01b03831660009081526005602052604081205482919060ff16158015610b6d57506001600160a01b03841660009081526005602052604090205460ff16155b15610b76575060015b600c546001600160a01b038681169116148015610ba057506002546001600160a01b038581169116145b15610bb757426015556014805460ff191660011790555b60145460ff168015610bd65750601554610bd3906104b0611655565b42115b8015610be5575060165460ff16155b15610c1f576006546007819055600855610c016012600a611781565b610c0e9062030d40611790565b6009556016805460ff191660011790555b8015610e6d576002546001600160a01b03858116911614610cb457600854831115610c5c5760405162461bcd60e51b81526004016106d9906117a7565b60075483610c7f866001600160a01b031660009081526003602052604090205490565b610c899190611655565b1115610ca75760405162461bcd60e51b81526004016106d9906117f0565b610cb18385610ef0565b91505b6002546001600160a01b03868116911614610dcf57600954831115610ceb5760405162461bcd60e51b81526004016106d9906117a7565b610cf58386610fc7565b91506001600b6000828254610d0a9190611655565b9091555050600a543060009081526003602052604090205410158015610d385750601654610100900460ff16155b15610d69576016805461ff001916610100179055600a54610d5890610ffe565b6016805461ff00191690556000600b555b6005600b54118015610d835750601654610100900460ff16155b15610dcf576016805461ff001916610100179055610dbe610db9306001600160a01b031660009081526003602052604090205490565b610ffe565b6016805461ff00191690556000600b555b6002546001600160a01b03858116911614801590610dfb57506002546001600160a01b03868116911614155b15610e6d57600854831115610e225760405162461bcd60e51b81526004016106d9906117a7565b60075483610e45866001600160a01b031660009081526003602052604090205490565b610e4f9190611655565b1115610e6d5760405162461bcd60e51b81526004016106d9906117f0565b6001600160a01b03841660009081526003602052604081208054849290610e95908490611655565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610ee191815260200190565b60405180910390a35050505050565b6000806064600e6000015485610f069190611790565b610f10919061183c565b905060006064600e6001015486610f279190611790565b610f31919061183c565b9050610f3d8183611655565b3060009081526003602052604081208054909190610f5c908490611655565b909155503090506001600160a01b0385167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610f988585611655565b60405190815260200160405180910390a380610fb48387611642565b610fbe9190611642565b95945050505050565b600080606460106000015485610fdd9190611790565b610fe7919061183c565b90506000606460106001015486610f279190611790565b601054601154600e54600f5484936000939092909161101d9190611655565b6110279190611655565b6110319190611655565b601054600e546110419190611655565b61104b9084611790565b611055919061183c565b601054601154600e54600f549394506000936110719190611655565b61107b9190611655565b6110859190611655565b601154600f546110959190611655565b61109f9085611790565b6110a9919061183c565b905060006110b78284611655565b905060006110c6846002611156565b905060006110d4868361119f565b9050476110e0826111e1565b60006110ec478361119f565b90506000611104866110fe848b61133b565b90611156565b905061111085826113bd565b600d546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611149573d6000803e3d6000fd5b5050505050505050505050565b600061119883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611471565b9392505050565b600061119883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061149f565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106112165761121661185e565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561126f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112939190611874565b816001815181106112a6576112a661185e565b6001600160a01b0392831660209182029290920101526001546112cc91309116846108af565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac94790611305908590600090869030904290600401611891565b600060405180830381600087803b15801561131f57600080fd5b505af1158015611333573d6000803e3d6000fd5b505050505050565b60008260000361134d57506000610620565b60006113598385611790565b905082611366858361183c565b146111985760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016106d9565b6001546113d59030906001600160a01b0316846108af565b600154600c5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015611445573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061146a9190611902565b5050505050565b600081836114925760405162461bcd60e51b81526004016106d991906114d0565b506000610fbe848661183c565b600081848411156114c35760405162461bcd60e51b81526004016106d991906114d0565b506000610fbe8486611642565b600060208083528351808285015260005b818110156114fd578581018301518582016040015282016114e1565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461153357600080fd5b50565b6000806040838503121561154957600080fd5b82356115548161151e565b946020939093013593505050565b60008060006060848603121561157757600080fd5b83356115828161151e565b925060208401356115928161151e565b929592945050506040919091013590565b6000602082840312156115b557600080fd5b81356111988161151e565b600080604083850312156115d357600080fd5b82356115de8161151e565b9150602083013580151581146115f357600080fd5b809150509250929050565b6000806040838503121561161157600080fd5b823561161c8161151e565b915060208301356115f38161151e565b634e487b7160e01b600052601160045260246000fd5b818103818111156106205761062061162c565b808201808211156106205761062061162c565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181815b808511156116d85781600019048211156116be576116be61162c565b808516156116cb57918102915b93841c93908002906116a2565b509250929050565b6000826116ef57506001610620565b816116fc57506000610620565b8160018114611712576002811461171c57611738565b6001915050610620565b60ff84111561172d5761172d61162c565b50506001821b610620565b5060208310610133831016604e8410600b841016171561175b575081810a610620565b611765838361169d565b80600019048211156117795761177961162c565b029392505050565b600061119860ff8416836116e0565b80820281158282048414176106205761062061162c565b60208082526029908201527f5472616e7366657220416d6f756e74206578636565647320746865206d6178546040820152681e1b9cd05b5bdd5b9d60ba1b606082015260800190565b6020808252602c908201527f5472616e7366657220616d6f756e74206578636565647320746865206d61785760408201526b30b63632ba20b6b7bab73a1760a11b606082015260800190565b60008261185957634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561188657600080fd5b81516111988161151e565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156118e15784516001600160a01b0316835293830193918301916001016118bc565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561191757600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220627918d53d8a0d13e67419bcf68bd160b62f8ca280ff22167a53c662611a365f64736f6c63430008110033

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

000000000000000000000000709d91c0d69232a7fd191096a8a07bca5c0de0200000000000000000000000003539dc9872fde38457dc2c0695a25db1a00852e0

-----Decoded View---------------
Arg [0] : marketingAddress (address): 0x709D91c0D69232A7Fd191096A8a07BcA5C0DE020
Arg [1] : liquidityAddress (address): 0x3539dC9872Fde38457dc2C0695A25dB1a00852e0

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000709d91c0d69232a7fd191096a8a07bca5c0de020
Arg [1] : 0000000000000000000000003539dc9872fde38457dc2c0695a25db1a00852e0


Deployed Bytecode Sourcemap

4725:10260:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5503:57;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;5503:57:0;;;;;;;;7186:83;;;;;;;;;;-1:-1:-1;7256:5:0;;;;;;;;;;;;-1:-1:-1;;;7256:5:0;;;;7186:83;;;;;;;:::i;8018:161::-;;;;;;;;;;-1:-1:-1;8018:161:0;;;;;:::i;:::-;;:::i;:::-;;;1370:14:1;;1363:22;1345:41;;1333:2;1318:18;8018:161:0;1205:187:1;4813:41:0;;;;;;;;;;-1:-1:-1;4813:41:0;;;;-1:-1:-1;;;;;4813:41:0;;;;;;-1:-1:-1;;;;;1587:32:1;;;1569:51;;1557:2;1542:18;4813:41:0;1397:229:1;7463:95:0;;;;;;;;;;-1:-1:-1;7543:7:0;;7463:95;;8187:266;;;;;;;;;;-1:-1:-1;8187:266:0;;;;;:::i;:::-;;:::i;5605:32::-;;;;;;;;;;-1:-1:-1;5605:32:0;;;;-1:-1:-1;;;;;5605:32:0;;;5884:23;;;;;;;;;;-1:-1:-1;5884:23:0;;;;;;;;;;;;;2474:25:1;;;2530:2;2515:18;;2508:34;;;;2447:18;5884:23:0;2300:248:1;7372:83:0;;;;;;;;;;-1:-1:-1;7372:83:0;;5242:2;2695:36:1;;2683:2;2668:18;7372:83:0;2553:184:1;8461:215:0;;;;;;;;;;-1:-1:-1;8461:215:0;;;;;:::i;:::-;;:::i;5856:21::-;;;;;;;;;;-1:-1:-1;5856:21:0;;;;;;;;;4863:28;;;;;;;;;;-1:-1:-1;4863:28:0;;;;-1:-1:-1;;;;;4863:28:0;;;10042:123;;;;;;;;;;-1:-1:-1;10042:123:0;;;;;:::i;:::-;-1:-1:-1;;;;;10130:27:0;10106:4;10130:27;;;:18;:27;;;;;;;;;10042:123;5314:60;;;;;;;;;;;;;;;;7566:118;;;;;;;;;;-1:-1:-1;7566:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;7659:17:0;7632:7;7659:17;;;:8;:17;;;;;;;7566:118;3186:148;;;;;;;;;;;;;:::i;:::-;;5644:30;;;;;;;;;;-1:-1:-1;5644:30:0;;;;-1:-1:-1;;;;;5644:30:0;;;5441:55;;;;;;;;;;;;;;;;5381:53;;;;;;;;;;;;;;;;5988:20;;;;;;;;;;-1:-1:-1;5988:20:0;;;;;;;;2972:79;;;;;;;;;;-1:-1:-1;3010:7:0;3037:6;-1:-1:-1;;;;;3037:6:0;2972:79;;7277:87;;;;;;;;;;-1:-1:-1;7349:7:0;;;;;;;;;;;;-1:-1:-1;;;7349:7:0;;;;7277:87;;6015:26;;;;;;;;;;;;;;;;8684:225;;;;;;;;;;-1:-1:-1;8684:225:0;;;;;:::i;:::-;;:::i;7692:167::-;;;;;;;;;;-1:-1:-1;7692:167:0;;;;;:::i;:::-;;:::i;8921:140::-;;;;;;;;;;-1:-1:-1;8921:140:0;;;;;:::i;:::-;;:::i;5567:29::-;;;;;;;;;;;;;;;;7867:143;;;;;;;;;;-1:-1:-1;7867:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;7975:18:0;;;7948:7;7975:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7867:143;6048:26;;;;;;;;;;-1:-1:-1;6048:26:0;;;;;;;;3342:244;;;;;;;;;;-1:-1:-1;3342:244:0;;;;;:::i;:::-;;:::i;8018:161::-;8093:4;8110:39;2504:10;8133:7;8142:6;8110:8;:39::i;:::-;-1:-1:-1;8167:4:0;8018:161;;;;;:::o;8187:266::-;8285:4;8302:36;8312:6;8320:9;8331:6;8302:9;:36::i;:::-;-1:-1:-1;;;;;8380:19:0;;;;;;:11;:19;;;;;;;;2504:10;8380:33;;;;;;;;;8349:74;;8358:6;;8380:42;;8416:6;;8380:42;:::i;:::-;8349:8;:74::i;:::-;-1:-1:-1;8441:4:0;8187:266;;;;;:::o;8461:215::-;2504:10;8549:4;8598:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;8598:34:0;;;;;;;;;;8549:4;;8566:80;;8589:7;;8598:47;;8635:10;;8598:47;:::i;3186:148::-;3099:6;;-1:-1:-1;;;;;3099:6:0;2504:10;3099:22;3091:67;;;;-1:-1:-1;;;3091:67:0;;;;;;;:::i;:::-;;;;;;;;;3293:1:::1;3277:6:::0;;3256:40:::1;::::0;-1:-1:-1;;;;;3277:6:0;;::::1;::::0;3256:40:::1;::::0;3293:1;;3256:40:::1;3324:1;3307:19:::0;;-1:-1:-1;;;;;;3307:19:0::1;::::0;;3186:148::o;8684:225::-;2504:10;8777:4;8826:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;8826:34:0;;;;;;;;;;8777:4;;8794:85;;8817:7;;8826:52;;8863:15;;8826:52;:::i;7692:167::-;7770:4;7787:42;2504:10;7811:9;7822:6;7787:9;:42::i;8921:140::-;3099:6;;-1:-1:-1;;;;;3099:6:0;2504:10;3099:22;3091:67;;;;-1:-1:-1;;;3091:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9006:36:0;;;::::1;;::::0;;;:18:::1;:36;::::0;;;;:47;;-1:-1:-1;;9006:47:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8921:140::o;3342:244::-;3099:6;;-1:-1:-1;;;;;3099:6:0;2504:10;3099:22;3091:67;;;;-1:-1:-1;;;3091:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3431:22:0;::::1;3423:73;;;::::0;-1:-1:-1;;;3423:73:0;;4766:2:1;3423:73:0::1;::::0;::::1;4748:21:1::0;4805:2;4785:18;;;4778:30;4844:34;4824:18;;;4817:62;-1:-1:-1;;;4895:18:1;;;4888:36;4941:19;;3423:73:0::1;4564:402:1::0;3423:73:0::1;3533:6;::::0;;3512:38:::1;::::0;-1:-1:-1;;;;;3512:38:0;;::::1;::::0;3533:6;::::1;::::0;3512:38:::1;::::0;::::1;3561:6;:17:::0;;-1:-1:-1;;;;;;3561:17:0::1;-1:-1:-1::0;;;;;3561:17:0;;;::::1;::::0;;;::::1;::::0;;3342:244::o;10173:337::-;-1:-1:-1;;;;;10266:19:0;;10258:68;;;;-1:-1:-1;;;10258:68:0;;5173:2:1;10258:68:0;;;5155:21:1;5212:2;5192:18;;;5185:30;5251:34;5231:18;;;5224:62;-1:-1:-1;;;5302:18:1;;;5295:34;5346:19;;10258:68:0;4971:400:1;10258:68:0;-1:-1:-1;;;;;10345:21:0;;10337:68;;;;-1:-1:-1;;;10337:68:0;;5578:2:1;10337:68:0;;;5560:21:1;5617:2;5597:18;;;5590:30;5656:34;5636:18;;;5629:62;-1:-1:-1;;;5707:18:1;;;5700:32;5749:19;;10337:68:0;5376:398:1;10337:68:0;-1:-1:-1;;;;;10418:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;10470:32;;160:25:1;;;10470:32:0;;133:18:1;10470:32:0;;;;;;;10173:337;;;:::o;10518:2514::-;-1:-1:-1;;;;;10640:18:0;;10632:68;;;;-1:-1:-1;;;10632:68:0;;5981:2:1;10632:68:0;;;5963:21:1;6020:2;6000:18;;;5993:30;6059:34;6039:18;;;6032:62;-1:-1:-1;;;6110:18:1;;;6103:35;6155:19;;10632:68:0;5779:401:1;10632:68:0;-1:-1:-1;;;;;10719:16:0;;10711:64;;;;-1:-1:-1;;;10711:64:0;;6387:2:1;10711:64:0;;;6369:21:1;6426:2;6406:18;;;6399:30;6465:34;6445:18;;;6438:62;-1:-1:-1;;;6516:18:1;;;6509:33;6559:19;;10711:64:0;6185:399:1;10711:64:0;10803:1;10794:6;:10;10786:64;;;;-1:-1:-1;;;10786:64:0;;6791:2:1;10786:64:0;;;6773:21:1;6830:2;6810:18;;;6803:30;6869:34;6849:18;;;6842:62;-1:-1:-1;;;6920:18:1;;;6913:39;6969:19;;10786:64:0;6589:405:1;10786:64:0;-1:-1:-1;;;;;10871:14:0;;;;;;:8;:14;;;;;:24;;10889:6;;10871:14;:24;;10889:6;;10871:24;:::i;:::-;;;;-1:-1:-1;;;;;;;10987:24:0;;10906:22;10987:24;;;:18;:24;;;;;;10931:6;;10906:22;10987:24;;10986:25;:52;;;;-1:-1:-1;;;;;;11016:22:0;;;;;;:18;:22;;;;;;;;11015:23;10986:52;10983:97;;;-1:-1:-1;11064:4:0;10983:97;11103:17;;-1:-1:-1;;;;;11095:25:0;;;11103:17;;11095:25;:48;;;;-1:-1:-1;11130:13:0;;-1:-1:-1;;;;;11124:19:0;;;11130:13;;11124:19;11095:48;11092:139;;;11174:15;11160:11;:29;11204:8;:15;;-1:-1:-1;;11204:15:0;11215:4;11204:15;;;11092:139;11246:8;;;;:48;;;;-1:-1:-1;11276:11:0;;:18;;11290:4;11276:18;:::i;:::-;11258:15;:36;11246:48;:67;;;;-1:-1:-1;11299:14:0;;;;11298:15;11246:67;11243:253;;;11349:7;;11330:16;:26;;;11371:12;:22;11435:13;5242:2;11435;:13;:::i;:::-;11425:23;;:7;:23;:::i;:::-;11408:14;:40;11463:14;:21;;-1:-1:-1;;11463:21:0;11480:4;11463:21;;;11243:253;11513:7;11510:1414;;;11545:13;;-1:-1:-1;;;;;11539:19:0;;;11545:13;;11539:19;11536:311;;11596:12;;11586:6;:22;;11578:76;;;;-1:-1:-1;;;11578:76:0;;;;;;;:::i;:::-;11707:16;;11697:6;11681:13;11691:2;-1:-1:-1;;;;;7659:17:0;7632:7;7659:17;;;:8;:17;;;;;;;7566:118;11681:13;:22;;;;:::i;:::-;:42;;11673:99;;;;-1:-1:-1;;;11673:99:0;;;;;;;:::i;:::-;11808:23;11820:6;11828:2;11808:11;:23::i;:::-;11791:40;;11536:311;11874:13;;-1:-1:-1;;;;;11866:21:0;;;11874:13;;11866:21;11863:757;;11925:14;;11915:6;:24;;11907:78;;;;-1:-1:-1;;;11907:78:0;;;;;;;:::i;:::-;12021:26;12034:6;12042:4;12021:12;:26::i;:::-;12004:43;;12084:1;12066:14;;:19;;;;;;;:::i;:::-;;;;-1:-1:-1;;12137:17:0;;12127:4;7632:7;7659:17;;;:8;:17;;;;;;12109:45;;:58;;;;-1:-1:-1;12159:8:0;;;;;;;12158:9;12109:58;12105:250;;;12192:8;:15;;-1:-1:-1;;12192:15:0;;;;;12239:17;;12230:27;;:8;:27::i;:::-;12280:8;:16;;-1:-1:-1;;12280:16:0;;;12291:5;12319:14;:18;12105:250;12396:1;12379:14;;:18;:31;;;;-1:-1:-1;12402:8:0;;;;;;;12401:9;12379:31;12375:230;;;12435:8;:15;;-1:-1:-1;;12435:15:0;;;;;12473:34;12482:24;12500:4;-1:-1:-1;;;;;7659:17:0;7632:7;7659:17;;;:8;:17;;;;;;;7566:118;12482:24;12473:8;:34::i;:::-;12530:8;:16;;-1:-1:-1;;12530:16:0;;;12541:5;12569:14;:18;12375:230;12645:13;;-1:-1:-1;;;;;12639:19:0;;;12645:13;;12639:19;;;;:44;;-1:-1:-1;12670:13:0;;-1:-1:-1;;;;;12662:21:0;;;12670:13;;12662:21;;12639:44;12636:277;;;12721:12;;12711:6;:22;;12703:76;;;;-1:-1:-1;;;12703:76:0;;;;;;;:::i;:::-;12832:16;;12822:6;12806:13;12816:2;-1:-1:-1;;;;;7659:17:0;7632:7;7659:17;;;:8;:17;;;;;;;7566:118;12806:13;:22;;;;:::i;:::-;:42;;12798:99;;;;-1:-1:-1;;;12798:99:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12944:12:0;;;;;;:8;:12;;;;;:30;;12960:14;;12944:12;:30;;12960:14;;12944:30;:::i;:::-;;;;;;;;13005:2;-1:-1:-1;;;;;12990:34:0;12999:4;-1:-1:-1;;;;;12990:34:0;;13009:14;12990:34;;;;160:25:1;;148:2;133:18;;14:177;12990:34:0;;;;;;;;10621:2411;;10518:2514;;;:::o;9110:456::-;9178:7;9198:25;9254:3;9235:6;:16;;;9226:6;:25;;;;:::i;:::-;:31;;;;:::i;:::-;9198:59;;9269:26;9326:3;9307:6;:16;;;9298:6;:25;;;;:::i;:::-;:31;;;;:::i;:::-;9269:60;-1:-1:-1;9369:38:0;9269:60;9369:17;:38;:::i;:::-;9359:4;9342:23;;;;:8;:23;;;;;:65;;:23;;;:65;;;;;:::i;:::-;;;;-1:-1:-1;9447:4:0;;-1:-1:-1;;;;;;9423:70:0;;;9454:38;9475:17;9454:18;:38;:::i;:::-;9423:70;;160:25:1;;;148:2;133:18;9423:70:0;;;;;;;9539:18;9512:25;9520:17;9512:6;:25;:::i;:::-;:45;;;;:::i;:::-;9504:54;9110:456;-1:-1:-1;;;;;9110:456:0:o;9574:460::-;9643:7;9663:25;9720:3;9700:7;:17;;;9691:6;:26;;;;:::i;:::-;:32;;;;:::i;:::-;9663:60;;9735:26;9793:3;9773:7;:17;;;9764:6;:26;;;;:::i;13043:1074::-;13283:7;:17;13263;;13244:6;:16;13225;;13122:6;;13096:23;;13283:17;;13263;;13225:35;;13244:16;13225:35;:::i;:::-;:55;;;;:::i;:::-;:75;;;;:::i;:::-;13203:7;:17;13184:6;:16;:36;;13203:17;13184:36;:::i;:::-;13165:56;;:15;:56;:::i;:::-;:136;;;;:::i;:::-;13456:7;:17;13436;;13417:6;:16;13398;;13139:162;;-1:-1:-1;13312:23:0;;13398:35;;13417:16;13398:35;:::i;:::-;:55;;;;:::i;:::-;:75;;;;:::i;:::-;13376:17;;13357:16;;:36;;13376:17;13357:36;:::i;:::-;13338:56;;:15;:56;:::i;:::-;:136;;;;:::i;:::-;13312:162;-1:-1:-1;13485:25:0;13513:33;13312:162;13513:15;:33;:::i;:::-;13485:61;-1:-1:-1;13567:26:0;13596:22;:15;13616:1;13596:19;:22::i;:::-;13567:51;-1:-1:-1;13629:26:0;13658:39;:15;13567:51;13658:19;:39::i;:::-;13629:68;-1:-1:-1;13736:21:0;13768:36;13629:68;13768:16;:36::i;:::-;13816:18;13837:44;:21;13863:17;13837:25;:44::i;:::-;13816:65;-1:-1:-1;13902:23:0;13928:54;13964:17;13928:31;13816:65;13943:15;13928:14;:31::i;:::-;:35;;:54::i;:::-;13902:80;;13993:49;14006:18;14026:15;13993:12;:49::i;:::-;14061:15;;14053:56;;-1:-1:-1;;;;;14061:15:0;;;;14087:21;14053:56;;;;;14061:15;14053:56;14061:15;14053:56;14087:21;14061:15;14053:56;;;;;;;;;;;;;;;;;;;;;13085:1032;;;;;;;;;13043:1074;:::o;1638:132::-;1696:7;1723:39;1727:1;1730;1723:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1716:46;1638:132;-1:-1:-1;;;1638:132:0:o;1036:136::-;1094:7;1121:43;1125:1;1128;1121:43;;;;;;;;;;;;;;;;;:3;:43::i;14125:475::-;14215:16;;;14229:1;14215:16;;;;;;;;14191:21;;14215:16;;;;;;;;;;-1:-1:-1;14215:16:0;14191:40;;14260:4;14242;14247:1;14242:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14242:23:0;;;:7;;;;;;;;;;:23;;;;14286:15;;:22;;;-1:-1:-1;;;14286:22:0;;;;:15;;;;;:20;;:22;;;;;14242:7;;14286:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14276:4;14281:1;14276:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14276:32:0;;;:7;;;;;;;;;:32;14353:15;;14321:62;;14338:4;;14353:15;14371:11;14321:8;:62::i;:::-;14396:15;;:196;;-1:-1:-1;;;14396:196:0;;-1:-1:-1;;;;;14396:15:0;;;;:66;;:196;;14477:11;;14396:15;;14519:4;;14546;;14566:15;;14396:196;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14180:420;14125:475;:::o;1380:250::-;1438:7;1462:1;1467;1462:6;1458:47;;-1:-1:-1;1492:1:0;1485:8;;1458:47;1517:9;1529:5;1533:1;1529;:5;:::i;:::-;1517:17;-1:-1:-1;1562:1:0;1553:5;1557:1;1517:17;1553:5;:::i;:::-;:10;1545:56;;;;-1:-1:-1;;;1545:56:0;;11307:2:1;1545:56:0;;;11289:21:1;11346:2;11326:18;;;11319:30;11385:34;11365:18;;;11358:62;-1:-1:-1;;;11436:18:1;;;11429:31;11477:19;;1545:56:0;11105:397:1;14608:374:0;14721:15;;14689:62;;14706:4;;-1:-1:-1;;;;;14721:15:0;14739:11;14689:8;:62::i;:::-;14764:15;;14916:17;;14764:210;;-1:-1:-1;;;14764:210:0;;14838:4;14764:210;;;11848:34:1;11898:18;;;11891:34;;;14764:15:0;11941:18:1;;;11934:34;;;11984:18;;;11977:34;-1:-1:-1;;;;;14916:17:0;;;12027:19:1;;;12020:44;14948:15:0;12080:19:1;;;12073:35;14764:15:0;;;:31;;14804:9;;11782:19:1;;14764:210:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;14608:374;;:::o;1778:278::-;1864:7;1899:12;1892:5;1884:28;;;;-1:-1:-1;;;1884:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1923:9:0;1935:5;1939:1;1935;:5;:::i;1180:192::-;1266:7;1302:12;1294:6;;;;1286:29;;;;-1:-1:-1;;;1286:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1326:9:0;1338:5;1342:1;1338;:5;:::i;196:548:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;749:131::-;-1:-1:-1;;;;;824:31:1;;814:42;;804:70;;870:1;867;860:12;804:70;749:131;:::o;885:315::-;953:6;961;1014:2;1002:9;993:7;989:23;985:32;982:52;;;1030:1;1027;1020:12;982:52;1069:9;1056:23;1088:31;1113:5;1088:31;:::i;:::-;1138:5;1190:2;1175:18;;;;1162:32;;-1:-1:-1;;;885:315:1:o;1631:456::-;1708:6;1716;1724;1777:2;1765:9;1756:7;1752:23;1748:32;1745:52;;;1793:1;1790;1783:12;1745:52;1832:9;1819:23;1851:31;1876:5;1851:31;:::i;:::-;1901:5;-1:-1:-1;1958:2:1;1943:18;;1930:32;1971:33;1930:32;1971:33;:::i;:::-;1631:456;;2023:7;;-1:-1:-1;;;2077:2:1;2062:18;;;;2049:32;;1631:456::o;2742:247::-;2801:6;2854:2;2842:9;2833:7;2829:23;2825:32;2822:52;;;2870:1;2867;2860:12;2822:52;2909:9;2896:23;2928:31;2953:5;2928:31;:::i;2994:416::-;3059:6;3067;3120:2;3108:9;3099:7;3095:23;3091:32;3088:52;;;3136:1;3133;3126:12;3088:52;3175:9;3162:23;3194:31;3219:5;3194:31;:::i;:::-;3244:5;-1:-1:-1;3301:2:1;3286:18;;3273:32;3343:15;;3336:23;3324:36;;3314:64;;3374:1;3371;3364:12;3314:64;3397:7;3387:17;;;2994:416;;;;;:::o;3415:388::-;3483:6;3491;3544:2;3532:9;3523:7;3519:23;3515:32;3512:52;;;3560:1;3557;3550:12;3512:52;3599:9;3586:23;3618:31;3643:5;3618:31;:::i;:::-;3668:5;-1:-1:-1;3725:2:1;3710:18;;3697:32;3738:33;3697:32;3738:33;:::i;3808:127::-;3869:10;3864:3;3860:20;3857:1;3850:31;3900:4;3897:1;3890:15;3924:4;3921:1;3914:15;3940:128;4007:9;;;4028:11;;;4025:37;;;4042:18;;:::i;4073:125::-;4138:9;;;4159:10;;;4156:36;;;4172:18;;:::i;4203:356::-;4405:2;4387:21;;;4424:18;;;4417:30;4483:34;4478:2;4463:18;;4456:62;4550:2;4535:18;;4203:356::o;6999:422::-;7088:1;7131:5;7088:1;7145:270;7166:7;7156:8;7153:21;7145:270;;;7225:4;7221:1;7217:6;7213:17;7207:4;7204:27;7201:53;;;7234:18;;:::i;:::-;7284:7;7274:8;7270:22;7267:55;;;7304:16;;;;7267:55;7383:22;;;;7343:15;;;;7145:270;;;7149:3;6999:422;;;;;:::o;7426:806::-;7475:5;7505:8;7495:80;;-1:-1:-1;7546:1:1;7560:5;;7495:80;7594:4;7584:76;;-1:-1:-1;7631:1:1;7645:5;;7584:76;7676:4;7694:1;7689:59;;;;7762:1;7757:130;;;;7669:218;;7689:59;7719:1;7710:10;;7733:5;;;7757:130;7794:3;7784:8;7781:17;7778:43;;;7801:18;;:::i;:::-;-1:-1:-1;;7857:1:1;7843:16;;7872:5;;7669:218;;7971:2;7961:8;7958:16;7952:3;7946:4;7943:13;7939:36;7933:2;7923:8;7920:16;7915:2;7909:4;7906:12;7902:35;7899:77;7896:159;;;-1:-1:-1;8008:19:1;;;8040:5;;7896:159;8087:34;8112:8;8106:4;8087:34;:::i;:::-;8157:6;8153:1;8149:6;8145:19;8136:7;8133:32;8130:58;;;8168:18;;:::i;:::-;8206:20;;7426:806;-1:-1:-1;;;7426:806:1:o;8237:140::-;8295:5;8324:47;8365:4;8355:8;8351:19;8345:4;8324:47;:::i;8382:168::-;8455:9;;;8486;;8503:15;;;8497:22;;8483:37;8473:71;;8524:18;;:::i;8555:405::-;8757:2;8739:21;;;8796:2;8776:18;;;8769:30;8835:34;8830:2;8815:18;;8808:62;-1:-1:-1;;;8901:2:1;8886:18;;8879:39;8950:3;8935:19;;8555:405::o;8965:408::-;9167:2;9149:21;;;9206:2;9186:18;;;9179:30;9245:34;9240:2;9225:18;;9218:62;-1:-1:-1;;;9311:2:1;9296:18;;9289:42;9363:3;9348:19;;8965:408::o;9378:217::-;9418:1;9444;9434:132;;9488:10;9483:3;9479:20;9476:1;9469:31;9523:4;9520:1;9513:15;9551:4;9548:1;9541:15;9434:132;-1:-1:-1;9580:9:1;;9378:217::o;9732:127::-;9793:10;9788:3;9784:20;9781:1;9774:31;9824:4;9821:1;9814:15;9848:4;9845:1;9838:15;9864:251;9934:6;9987:2;9975:9;9966:7;9962:23;9958:32;9955:52;;;10003:1;10000;9993:12;9955:52;10035:9;10029:16;10054:31;10079:5;10054:31;:::i;10120:980::-;10382:4;10430:3;10419:9;10415:19;10461:6;10450:9;10443:25;10487:2;10525:6;10520:2;10509:9;10505:18;10498:34;10568:3;10563:2;10552:9;10548:18;10541:31;10592:6;10627;10621:13;10658:6;10650;10643:22;10696:3;10685:9;10681:19;10674:26;;10735:2;10727:6;10723:15;10709:29;;10756:1;10766:195;10780:6;10777:1;10774:13;10766:195;;;10845:13;;-1:-1:-1;;;;;10841:39:1;10829:52;;10936:15;;;;10901:12;;;;10877:1;10795:9;10766:195;;;-1:-1:-1;;;;;;;11017:32:1;;;;11012:2;10997:18;;10990:60;-1:-1:-1;;;11081:3:1;11066:19;11059:35;10978:3;10120:980;-1:-1:-1;;;10120:980:1:o;12119:306::-;12207:6;12215;12223;12276:2;12264:9;12255:7;12251:23;12247:32;12244:52;;;12292:1;12289;12282:12;12244:52;12321:9;12315:16;12305:26;;12371:2;12360:9;12356:18;12350:25;12340:35;;12415:2;12404:9;12400:18;12394:25;12384:35;;12119:306;;;;;:::o

Swarm Source

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