ETH Price: $3,347.83 (-1.21%)

Token

GrokForce1 (GF1)
 

Overview

Max Total Supply

100,000,000 GF1

Holders

25

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
778,020.883540363850472073 GF1

Value
$0.00
0xdd58292b1a5d2245a14ebfed06fbee8fa35bc827
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:
GrokForce1

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-11-16
*/

// SPDX-License-Identifier: MIT

// Chat Entry - https://t.me/GrokForceOne

pragma solidity 0.8.19;

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

    function _msgData() internal view virtual returns (bytes calldata) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

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

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

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);
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract ERC20 is Context, IERC20 {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    uint256 private _totalSupply;
    string private _name;
    string private _symbol;

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

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

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

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

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

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

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, 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) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

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

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

        return true;
    }

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

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

        return true;
    }

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

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

        emit Transfer(sender, recipient, amount);
    }

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

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

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

contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    
    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

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

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

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

interface IUniswapV3Router {
    function factory() external view returns (address);
}

interface IUniswapV3Factory {
    function createPool(
        address tokenA,
        address tokenB,
        uint24 fee
    ) external returns (address pool);
}

contract GrokForce1 is Ownable, ERC20 {

    IUniswapV3Router public immutable v3Router;
    address public pool;
    IERC20 public immutable WETH;

    mapping (address => bool) public isPool;
    mapping (address => bool) public isFeeExempt;
    mapping (address => bool) public isMaxTxExempt;


    uint256 public maxTransactionAmt;
    uint256 public maxWallet;

    bool public limitsInEffect = true;
    bool public tradingActive = false;

    receive() payable external{}

    constructor() ERC20("GrokForce1", "GF1"){
        address newOwner = msg.sender;
        address wethContract;
        address _v3Router;
        
        wethContract = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
        _v3Router = 0xE592427A0AEce92De3Edee1F18E0157C05861564;
    
        WETH = IERC20(wethContract);
        v3Router = IUniswapV3Router(_v3Router);
        pool = IUniswapV3Factory(v3Router.factory()).createPool(address(this), address(WETH), 10000);
        isPool[pool] = true;

        isFeeExempt[newOwner] = true;
        isFeeExempt[address(v3Router)] = true;
        isFeeExempt[address(0xdead)] = true;

        isMaxTxExempt[newOwner] = true;
        isMaxTxExempt[address(v3Router)] = true;
        isMaxTxExempt[address(0xdead)] = true;

        uint256 totalSupply = 100000000 * 1e18;
        
        maxTransactionAmt = totalSupply;
        maxWallet = totalSupply;

        _createInitialSupply(newOwner, totalSupply);
        transferOwnership(newOwner);
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal override {
        if(limitsInEffect && !isFeeExempt[to] && !isFeeExempt[from]) {
            require(tradingActive, "Trading not active");
            //when buy
            if (isPool[from] && !isMaxTxExempt[to]) {
                require(amount <= maxTransactionAmt, "Buy transfer amt exceeds the max buy.");
                require(amount + balanceOf(to) <= maxWallet, "Cannot Exceed max wallet");
            } 
            //when sell
            else if (isPool[to] && !isMaxTxExempt[from]) {
                require(amount <= maxTransactionAmt, "Sell transfer amt exceeds the max sell.");
            }
            //when transfer
            else if (!isMaxTxExempt[to]){
                require(amount + balanceOf(to) <= maxWallet, "Cannot Exceed max wallet");
            }
        }
        super._transfer(from, to, amount);
    }

    function enableTrading() external onlyOwner {
        tradingActive = true;
    }

    function removeLimits() external onlyOwner {
        limitsInEffect = false;
    }

    function updateMaxAmt(uint256 newNum) external onlyOwner {
        require(newNum > (totalSupply() / 50)/1e18, "Cannot set maxTransactionAmount lower than 2%");
        maxTransactionAmt = newNum * (10**18);
    }
    
    function updateMaxWalletAmt(uint256 newNum) external onlyOwner {
        require(newNum > (totalSupply() / 50)/1e18, "Cannot set maxWallet lower than 1%");
        maxWallet = newNum * (10**18);
    }

    function setIsFeeEx(address account, bool exempt) external onlyOwner {
        isFeeExempt[account] = exempt;
    }

    function setIsMaxTxEx(address account, bool exempt) external onlyOwner {
        require(!isPool[account], "Cannot remove exemption from pool");
        isMaxTxExempt[account] = exempt;
    }

    function setIsPool(address _pool, bool _isPool) external onlyOwner {
        require(_pool != address(pool), "Cannot remove original pool");
        isPool[_pool] = _isPool;
    }

    function sendEth() external onlyOwner {
        bool success;
        (success, ) = msg.sender.call{value: address(this).balance}("");
        require(success, "withdraw unsuccessful");
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"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":"WETH","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"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":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMaxTxExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isPool","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limitsInEffect","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTransactionAmt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pool","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sendEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeEx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsMaxTxEx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_pool","type":"address"},{"internalType":"bool","name":"_isPool","type":"bool"}],"name":"setIsPool","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":"tradingActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[{"internalType":"uint256","name":"newNum","type":"uint256"}],"name":"updateMaxAmt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newNum","type":"uint256"}],"name":"updateMaxWalletAmt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"v3Router","outputs":[{"internalType":"contract IUniswapV3Router","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c0604052600c805461ffff191660011790553480156200001f57600080fd5b506040518060400160405280600a81526020016947726f6b466f7263653160b01b8152506040518060400160405280600381526020016247463160e81b815250600062000071620002fd60201b60201c565b600080546001600160a01b0319166001600160a01b03831690811782556040519293509160008051602062001dfd833981519152908290a3506004620000b883826200059c565b506005620000c782826200059c565b505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc260a081905273e592427a0aece92de3edee1f18e0157c0586156460808190526040805163c45a015560e01b81529051339450829163c45a01559160048083019260209291908290030181865afa1580156200013d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000163919062000668565b60a05160405163a167129560e01b81523060048201526001600160a01b039182166024820152612710604482015291169063a1671295906064016020604051808303816000875af1158015620001bd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001e3919062000668565b600680546001600160a01b0319166001600160a01b039283169081179091556000908152600760209081526040808320805460ff19908116600190811790925588861680865260088552838620805483168417905560805190961680865283862080548316841790557f046fee3d77c34a6c5e10c3be6dc4b132c30449dbf4f0bc07684896dd093342998054831684179055958552600990935281842080548416821790559383528220805482168417905561dead9091527f960b1051749987b45b5679007fff577a1c2f763ec21c15a6c5eb193075003785805490911690911790556a52b7d2dcc80cd2e4000000600a819055600b819055620002e8848262000301565b620002f384620003ea565b50505050620006c2565b3390565b6001600160a01b0382166200035d5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064015b60405180910390fd5b80600360008282546200037191906200069a565b90915550506001600160a01b03821660009081526001602052604081208054839290620003a09084906200069a565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6000546001600160a01b03163314620004465760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000354565b6001600160a01b038116620004ad5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000354565b600080546040516001600160a01b038085169392169160008051602062001dfd83398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200052257607f821691505b6020821081036200054357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200059757600081815260208120601f850160051c81016020861015620005725750805b601f850160051c820191505b8181101562000593578281556001016200057e565b5050505b505050565b81516001600160401b03811115620005b857620005b8620004f7565b620005d081620005c984546200050d565b8462000549565b602080601f831160018114620006085760008415620005ef5750858301515b600019600386901b1c1916600185901b17855562000593565b600085815260208120601f198616915b82811015620006395788860151825594840194600190910190840162000618565b5085821015620006585787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200067b57600080fd5b81516001600160a01b03811681146200069357600080fd5b9392505050565b80820180821115620006bc57634e487b7160e01b600052601160045260246000fd5b92915050565b60805160a051611715620006e860003960006105560152600061027701526117156000f3fe6080604052600436106101e75760003560e01c8063657f644b11610102578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e146105c7578063f01c75e11461060d578063f2fde38b1461062d578063f8b45b051461064d57600080fd5b8063a9059cbb14610524578063ad5c464814610544578063bbc0c74214610578578063c1ec8d4b1461059757600080fd5b80638a8c523c116100d15780638a8c523c146104bc5780638da5cb5b146104d157806395d89b41146104ef578063a457c2d71461050457600080fd5b8063657f644b1461043c57806370a082311461045c578063715018a614610492578063751039fc146104a757600080fd5b806323b872dd1161017a5780634221b508116101495780634221b508146103b257806343befc12146103d25780634a62bb65146103f25780635b16ebb71461040c57600080fd5b806323b872dd14610326578063313ce5671461034657806339509351146103625780633f4218e01461038257600080fd5b806316f0115b116101b657806316f0115b146102b157806318160ddd146102d15780631cb5a549146102f057806320d830551461031057600080fd5b806306e99fef146101f357806306fdde031461020a578063095ea7b3146102355780630dc913061461026557600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b50610208610663565b005b34801561021657600080fd5b5061021f61072b565b60405161022c9190611494565b60405180910390f35b34801561024157600080fd5b506102556102503660046114fe565b6107bd565b604051901515815260200161022c565b34801561027157600080fd5b506102997f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161022c565b3480156102bd57600080fd5b50600654610299906001600160a01b031681565b3480156102dd57600080fd5b506003545b60405190815260200161022c565b3480156102fc57600080fd5b5061020861030b366004611528565b6107d4565b34801561031c57600080fd5b506102e2600a5481565b34801561033257600080fd5b50610255610341366004611564565b610887565b34801561035257600080fd5b506040516012815260200161022c565b34801561036e57600080fd5b5061025561037d3660046114fe565b610931565b34801561038e57600080fd5b5061025561039d3660046115a0565b60086020526000908152604090205460ff1681565b3480156103be57600080fd5b506102086103cd366004611528565b61096d565b3480156103de57600080fd5b506102086103ed366004611528565b610a35565b3480156103fe57600080fd5b50600c546102559060ff1681565b34801561041857600080fd5b506102556104273660046115a0565b60076020526000908152604090205460ff1681565b34801561044857600080fd5b506102086104573660046115c2565b610a8a565b34801561046857600080fd5b506102e26104773660046115a0565b6001600160a01b031660009081526001602052604090205490565b34801561049e57600080fd5b50610208610b4d565b3480156104b357600080fd5b50610208610bc1565b3480156104c857600080fd5b50610208610bf7565b3480156104dd57600080fd5b506000546001600160a01b0316610299565b3480156104fb57600080fd5b5061021f610c32565b34801561051057600080fd5b5061025561051f3660046114fe565b610c41565b34801561053057600080fd5b5061025561053f3660046114fe565b610cda565b34801561055057600080fd5b506102997f000000000000000000000000000000000000000000000000000000000000000081565b34801561058457600080fd5b50600c5461025590610100900460ff1681565b3480156105a357600080fd5b506102556105b23660046115a0565b60096020526000908152604090205460ff1681565b3480156105d357600080fd5b506102e26105e23660046115db565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561061957600080fd5b506102086106283660046115c2565b610ce7565b34801561063957600080fd5b506102086106483660046115a0565b610db5565b34801561065957600080fd5b506102e2600b5481565b6000546001600160a01b031633146106965760405162461bcd60e51b815260040161068d9061160e565b60405180910390fd5b604051600090339047908381818185875af1925050503d80600081146106d8576040519150601f19603f3d011682016040523d82523d6000602084013e6106dd565b606091505b505080915050806107285760405162461bcd60e51b81526020600482015260156024820152741dda5d1a191c985dc81d5b9cdd58d8d95cdcd99d5b605a1b604482015260640161068d565b50565b60606004805461073a90611643565b80601f016020809104026020016040519081016040528092919081815260200182805461076690611643565b80156107b35780601f10610788576101008083540402835291602001916107b3565b820191906000526020600020905b81548152906001019060200180831161079657829003601f168201915b5050505050905090565b60006107ca338484610e9f565b5060015b92915050565b6000546001600160a01b031633146107fe5760405162461bcd60e51b815260040161068d9061160e565b6006546001600160a01b039081169083160361085c5760405162461bcd60e51b815260206004820152601b60248201527f43616e6e6f742072656d6f7665206f726967696e616c20706f6f6c0000000000604482015260640161068d565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6000610894848484610fc3565b6001600160a01b0384166000908152600260209081526040808320338452909152902054828110156109195760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b606482015260840161068d565b6109268533858403610e9f565b506001949350505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916107ca918590610968908690611693565b610e9f565b6000546001600160a01b031633146109975760405162461bcd60e51b815260040161068d9061160e565b6001600160a01b03821660009081526007602052604090205460ff1615610a0a5760405162461bcd60e51b815260206004820152602160248201527f43616e6e6f742072656d6f7665206578656d7074696f6e2066726f6d20706f6f6044820152601b60fa1b606482015260840161068d565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610a5f5760405162461bcd60e51b815260040161068d9061160e565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610ab45760405162461bcd60e51b815260040161068d9061160e565b670de0b6b3a76400006032610ac860035490565b610ad291906116a6565b610adc91906116a6565b8111610b355760405162461bcd60e51b815260206004820152602260248201527f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e20604482015261312560f01b606482015260840161068d565b610b4781670de0b6b3a76400006116c8565b600b5550565b6000546001600160a01b03163314610b775760405162461bcd60e51b815260040161068d9061160e565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610beb5760405162461bcd60e51b815260040161068d9061160e565b600c805460ff19169055565b6000546001600160a01b03163314610c215760405162461bcd60e51b815260040161068d9061160e565b600c805461ff001916610100179055565b60606005805461073a90611643565b3360009081526002602090815260408083206001600160a01b038616845290915281205482811015610cc35760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161068d565b610cd03385858403610e9f565b5060019392505050565b60006107ca338484610fc3565b6000546001600160a01b03163314610d115760405162461bcd60e51b815260040161068d9061160e565b670de0b6b3a76400006032610d2560035490565b610d2f91906116a6565b610d3991906116a6565b8111610d9d5760405162461bcd60e51b815260206004820152602d60248201527f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060448201526c6c6f776572207468616e20322560981b606482015260840161068d565b610daf81670de0b6b3a76400006116c8565b600a5550565b6000546001600160a01b03163314610ddf5760405162461bcd60e51b815260040161068d9061160e565b6001600160a01b038116610e445760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161068d565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610f015760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161068d565b6001600160a01b038216610f625760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161068d565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600c5460ff168015610fee57506001600160a01b03821660009081526008602052604090205460ff16155b801561101357506001600160a01b03831660009081526008602052604090205460ff16155b156112b557600c54610100900460ff166110645760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f742061637469766560701b604482015260640161068d565b6001600160a01b03831660009081526007602052604090205460ff1680156110a557506001600160a01b03821660009081526009602052604090205460ff16155b1561117e57600a5481111561110a5760405162461bcd60e51b815260206004820152602560248201527f427579207472616e7366657220616d74206578636565647320746865206d617860448201526410313abc9760d91b606482015260840161068d565b600b546001600160a01b0383166000908152600160205260409020546111309083611693565b11156111795760405162461bcd60e51b815260206004820152601860248201527710d85b9b9bdd08115e18d95959081b585e081dd85b1b195d60421b604482015260640161068d565b6112b5565b6001600160a01b03821660009081526007602052604090205460ff1680156111bf57506001600160a01b03831660009081526009602052604090205460ff16155b1561122657600a548111156111795760405162461bcd60e51b815260206004820152602760248201527f53656c6c207472616e7366657220616d74206578636565647320746865206d616044820152663c1039b2b6361760c91b606482015260840161068d565b6001600160a01b03821660009081526009602052604090205460ff166112b557600b546001600160a01b03831660009081526001602052604090205461126c9083611693565b11156112b55760405162461bcd60e51b815260206004820152601860248201527710d85b9b9bdd08115e18d95959081b585e081dd85b1b195d60421b604482015260640161068d565b6112c08383836112c5565b505050565b6001600160a01b0383166113295760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161068d565b6001600160a01b03821661138b5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161068d565b6001600160a01b038316600090815260016020526040902054818110156114035760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161068d565b6001600160a01b0380851660009081526001602052604080822085850390559185168152908120805484929061143a908490611693565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161148691815260200190565b60405180910390a350505050565b600060208083528351808285015260005b818110156114c1578581018301518582016040015282016114a5565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146114f957600080fd5b919050565b6000806040838503121561151157600080fd5b61151a836114e2565b946020939093013593505050565b6000806040838503121561153b57600080fd5b611544836114e2565b91506020830135801515811461155957600080fd5b809150509250929050565b60008060006060848603121561157957600080fd5b611582846114e2565b9250611590602085016114e2565b9150604084013590509250925092565b6000602082840312156115b257600080fd5b6115bb826114e2565b9392505050565b6000602082840312156115d457600080fd5b5035919050565b600080604083850312156115ee57600080fd5b6115f7836114e2565b9150611605602084016114e2565b90509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061165757607f821691505b60208210810361167757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156107ce576107ce61167d565b6000826116c357634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176107ce576107ce61167d56fea264697066735822122029a926caaa201c11f215d0eac5783a6404fc75f5ad398324a93888d036f42a6e64736f6c634300081300338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0

Deployed Bytecode

0x6080604052600436106101e75760003560e01c8063657f644b11610102578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e146105c7578063f01c75e11461060d578063f2fde38b1461062d578063f8b45b051461064d57600080fd5b8063a9059cbb14610524578063ad5c464814610544578063bbc0c74214610578578063c1ec8d4b1461059757600080fd5b80638a8c523c116100d15780638a8c523c146104bc5780638da5cb5b146104d157806395d89b41146104ef578063a457c2d71461050457600080fd5b8063657f644b1461043c57806370a082311461045c578063715018a614610492578063751039fc146104a757600080fd5b806323b872dd1161017a5780634221b508116101495780634221b508146103b257806343befc12146103d25780634a62bb65146103f25780635b16ebb71461040c57600080fd5b806323b872dd14610326578063313ce5671461034657806339509351146103625780633f4218e01461038257600080fd5b806316f0115b116101b657806316f0115b146102b157806318160ddd146102d15780631cb5a549146102f057806320d830551461031057600080fd5b806306e99fef146101f357806306fdde031461020a578063095ea7b3146102355780630dc913061461026557600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b50610208610663565b005b34801561021657600080fd5b5061021f61072b565b60405161022c9190611494565b60405180910390f35b34801561024157600080fd5b506102556102503660046114fe565b6107bd565b604051901515815260200161022c565b34801561027157600080fd5b506102997f000000000000000000000000e592427a0aece92de3edee1f18e0157c0586156481565b6040516001600160a01b03909116815260200161022c565b3480156102bd57600080fd5b50600654610299906001600160a01b031681565b3480156102dd57600080fd5b506003545b60405190815260200161022c565b3480156102fc57600080fd5b5061020861030b366004611528565b6107d4565b34801561031c57600080fd5b506102e2600a5481565b34801561033257600080fd5b50610255610341366004611564565b610887565b34801561035257600080fd5b506040516012815260200161022c565b34801561036e57600080fd5b5061025561037d3660046114fe565b610931565b34801561038e57600080fd5b5061025561039d3660046115a0565b60086020526000908152604090205460ff1681565b3480156103be57600080fd5b506102086103cd366004611528565b61096d565b3480156103de57600080fd5b506102086103ed366004611528565b610a35565b3480156103fe57600080fd5b50600c546102559060ff1681565b34801561041857600080fd5b506102556104273660046115a0565b60076020526000908152604090205460ff1681565b34801561044857600080fd5b506102086104573660046115c2565b610a8a565b34801561046857600080fd5b506102e26104773660046115a0565b6001600160a01b031660009081526001602052604090205490565b34801561049e57600080fd5b50610208610b4d565b3480156104b357600080fd5b50610208610bc1565b3480156104c857600080fd5b50610208610bf7565b3480156104dd57600080fd5b506000546001600160a01b0316610299565b3480156104fb57600080fd5b5061021f610c32565b34801561051057600080fd5b5061025561051f3660046114fe565b610c41565b34801561053057600080fd5b5061025561053f3660046114fe565b610cda565b34801561055057600080fd5b506102997f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281565b34801561058457600080fd5b50600c5461025590610100900460ff1681565b3480156105a357600080fd5b506102556105b23660046115a0565b60096020526000908152604090205460ff1681565b3480156105d357600080fd5b506102e26105e23660046115db565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561061957600080fd5b506102086106283660046115c2565b610ce7565b34801561063957600080fd5b506102086106483660046115a0565b610db5565b34801561065957600080fd5b506102e2600b5481565b6000546001600160a01b031633146106965760405162461bcd60e51b815260040161068d9061160e565b60405180910390fd5b604051600090339047908381818185875af1925050503d80600081146106d8576040519150601f19603f3d011682016040523d82523d6000602084013e6106dd565b606091505b505080915050806107285760405162461bcd60e51b81526020600482015260156024820152741dda5d1a191c985dc81d5b9cdd58d8d95cdcd99d5b605a1b604482015260640161068d565b50565b60606004805461073a90611643565b80601f016020809104026020016040519081016040528092919081815260200182805461076690611643565b80156107b35780601f10610788576101008083540402835291602001916107b3565b820191906000526020600020905b81548152906001019060200180831161079657829003601f168201915b5050505050905090565b60006107ca338484610e9f565b5060015b92915050565b6000546001600160a01b031633146107fe5760405162461bcd60e51b815260040161068d9061160e565b6006546001600160a01b039081169083160361085c5760405162461bcd60e51b815260206004820152601b60248201527f43616e6e6f742072656d6f7665206f726967696e616c20706f6f6c0000000000604482015260640161068d565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6000610894848484610fc3565b6001600160a01b0384166000908152600260209081526040808320338452909152902054828110156109195760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b606482015260840161068d565b6109268533858403610e9f565b506001949350505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916107ca918590610968908690611693565b610e9f565b6000546001600160a01b031633146109975760405162461bcd60e51b815260040161068d9061160e565b6001600160a01b03821660009081526007602052604090205460ff1615610a0a5760405162461bcd60e51b815260206004820152602160248201527f43616e6e6f742072656d6f7665206578656d7074696f6e2066726f6d20706f6f6044820152601b60fa1b606482015260840161068d565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610a5f5760405162461bcd60e51b815260040161068d9061160e565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610ab45760405162461bcd60e51b815260040161068d9061160e565b670de0b6b3a76400006032610ac860035490565b610ad291906116a6565b610adc91906116a6565b8111610b355760405162461bcd60e51b815260206004820152602260248201527f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e20604482015261312560f01b606482015260840161068d565b610b4781670de0b6b3a76400006116c8565b600b5550565b6000546001600160a01b03163314610b775760405162461bcd60e51b815260040161068d9061160e565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610beb5760405162461bcd60e51b815260040161068d9061160e565b600c805460ff19169055565b6000546001600160a01b03163314610c215760405162461bcd60e51b815260040161068d9061160e565b600c805461ff001916610100179055565b60606005805461073a90611643565b3360009081526002602090815260408083206001600160a01b038616845290915281205482811015610cc35760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161068d565b610cd03385858403610e9f565b5060019392505050565b60006107ca338484610fc3565b6000546001600160a01b03163314610d115760405162461bcd60e51b815260040161068d9061160e565b670de0b6b3a76400006032610d2560035490565b610d2f91906116a6565b610d3991906116a6565b8111610d9d5760405162461bcd60e51b815260206004820152602d60248201527f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060448201526c6c6f776572207468616e20322560981b606482015260840161068d565b610daf81670de0b6b3a76400006116c8565b600a5550565b6000546001600160a01b03163314610ddf5760405162461bcd60e51b815260040161068d9061160e565b6001600160a01b038116610e445760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161068d565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610f015760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161068d565b6001600160a01b038216610f625760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161068d565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600c5460ff168015610fee57506001600160a01b03821660009081526008602052604090205460ff16155b801561101357506001600160a01b03831660009081526008602052604090205460ff16155b156112b557600c54610100900460ff166110645760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f742061637469766560701b604482015260640161068d565b6001600160a01b03831660009081526007602052604090205460ff1680156110a557506001600160a01b03821660009081526009602052604090205460ff16155b1561117e57600a5481111561110a5760405162461bcd60e51b815260206004820152602560248201527f427579207472616e7366657220616d74206578636565647320746865206d617860448201526410313abc9760d91b606482015260840161068d565b600b546001600160a01b0383166000908152600160205260409020546111309083611693565b11156111795760405162461bcd60e51b815260206004820152601860248201527710d85b9b9bdd08115e18d95959081b585e081dd85b1b195d60421b604482015260640161068d565b6112b5565b6001600160a01b03821660009081526007602052604090205460ff1680156111bf57506001600160a01b03831660009081526009602052604090205460ff16155b1561122657600a548111156111795760405162461bcd60e51b815260206004820152602760248201527f53656c6c207472616e7366657220616d74206578636565647320746865206d616044820152663c1039b2b6361760c91b606482015260840161068d565b6001600160a01b03821660009081526009602052604090205460ff166112b557600b546001600160a01b03831660009081526001602052604090205461126c9083611693565b11156112b55760405162461bcd60e51b815260206004820152601860248201527710d85b9b9bdd08115e18d95959081b585e081dd85b1b195d60421b604482015260640161068d565b6112c08383836112c5565b505050565b6001600160a01b0383166113295760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161068d565b6001600160a01b03821661138b5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161068d565b6001600160a01b038316600090815260016020526040902054818110156114035760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161068d565b6001600160a01b0380851660009081526001602052604080822085850390559185168152908120805484929061143a908490611693565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161148691815260200190565b60405180910390a350505050565b600060208083528351808285015260005b818110156114c1578581018301518582016040015282016114a5565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146114f957600080fd5b919050565b6000806040838503121561151157600080fd5b61151a836114e2565b946020939093013593505050565b6000806040838503121561153b57600080fd5b611544836114e2565b91506020830135801515811461155957600080fd5b809150509250929050565b60008060006060848603121561157957600080fd5b611582846114e2565b9250611590602085016114e2565b9150604084013590509250925092565b6000602082840312156115b257600080fd5b6115bb826114e2565b9392505050565b6000602082840312156115d457600080fd5b5035919050565b600080604083850312156115ee57600080fd5b6115f7836114e2565b9150611605602084016114e2565b90509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061165757607f821691505b60208210810361167757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156107ce576107ce61167d565b6000826116c357634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176107ce576107ce61167d56fea264697066735822122029a926caaa201c11f215d0eac5783a6404fc75f5ad398324a93888d036f42a6e64736f6c63430008130033

Deployed Bytecode Sourcemap

6641:3844:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10287:195;;;;;;;;;;;;;:::i;:::-;;1989:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2903:169;;;;;;;;;;-1:-1:-1;2903:169:0;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;2903:169:0;1004:187:1;6688:42:0;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1384:32:1;;;1366:51;;1354:2;1339:18;6688:42:0;1196:227:1;6737:19:0;;;;;;;;;;-1:-1:-1;6737:19:0;;;;-1:-1:-1;;;;;6737:19:0;;;2310:108;;;;;;;;;;-1:-1:-1;2398:12:0;;2310:108;;;1782:25:1;;;1770:2;1755:18;2310:108:0;1636:177:1;10097:182:0;;;;;;;;;;-1:-1:-1;10097:182:0;;;;;:::i;:::-;;:::i;6954:32::-;;;;;;;;;;;;;;;;3080:458;;;;;;;;;;-1:-1:-1;3080:458:0;;;;;:::i;:::-;;:::i;2209:93::-;;;;;;;;;;-1:-1:-1;2209:93:0;;2292:2;2645:36:1;;2633:2;2618:18;2209:93:0;2503:184:1;3546:215:0;;;;;;;;;;-1:-1:-1;3546:215:0;;;;;:::i;:::-;;:::i;6846:44::-;;;;;;;;;;-1:-1:-1;6846:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;9895:194;;;;;;;;;;-1:-1:-1;9895:194:0;;;;;:::i;:::-;;:::i;9770:117::-;;;;;;;;;;-1:-1:-1;9770:117:0;;;;;:::i;:::-;;:::i;7026:33::-;;;;;;;;;;-1:-1:-1;7026:33:0;;;;;;;;6800:39;;;;;;;;;;-1:-1:-1;6800:39:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;9559:203;;;;;;;;;;-1:-1:-1;9559:203:0;;;;;:::i;:::-;;:::i;2426:127::-;;;;;;;;;;-1:-1:-1;2426:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;2527:18:0;2500:7;2527:18;;;:9;:18;;;;;;;2426:127;5968:150;;;;;;;;;;;;;:::i;9239:84::-;;;;;;;;;;;;;:::i;9148:83::-;;;;;;;;;;;;;:::i;5754:79::-;;;;;;;;;;-1:-1:-1;5792:7:0;5819:6;-1:-1:-1;;;;;5819:6:0;5754:79;;2097:104;;;;;;;;;;;;;:::i;3769:413::-;;;;;;;;;;-1:-1:-1;3769:413:0;;;;;:::i;:::-;;:::i;2561:175::-;;;;;;;;;;-1:-1:-1;2561:175:0;;;;;:::i;:::-;;:::i;6763:28::-;;;;;;;;;;;;;;;7066:33;;;;;;;;;;-1:-1:-1;7066:33:0;;;;;;;;;;;6897:46;;;;;;;;;;-1:-1:-1;6897:46:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;2744:151;;;;;;;;;;-1:-1:-1;2744:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;2860:18:0;;;2833:7;2860:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2744:151;9331:216;;;;;;;;;;-1:-1:-1;9331:216:0;;;;;:::i;:::-;;:::i;6126:244::-;;;;;;;;;;-1:-1:-1;6126:244:0;;;;;:::i;:::-;;:::i;6993:24::-;;;;;;;;;;;;;;;;10287:195;5881:6;;-1:-1:-1;;;;;5881:6:0;220:10;5881:22;5873:67;;;;-1:-1:-1;;;5873:67:0;;;;;;;:::i;:::-;;;;;;;;;10373:49:::1;::::0;10336:12:::1;::::0;10373:10:::1;::::0;10396:21:::1;::::0;10336:12;10373:49;10336:12;10373:49;10396:21;10373:10;:49:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10359:63;;;;;10441:7;10433:41;;;::::0;-1:-1:-1;;;10433:41:0;;4328:2:1;10433:41:0::1;::::0;::::1;4310:21:1::0;4367:2;4347:18;;;4340:30;-1:-1:-1;;;4386:18:1;;;4379:51;4447:18;;10433:41:0::1;4126:345:1::0;10433:41:0::1;10325:157;10287:195::o:0;1989:100::-;2043:13;2076:5;2069:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1989:100;:::o;2903:169::-;2986:4;3003:39;220:10;3026:7;3035:6;3003:8;:39::i;:::-;-1:-1:-1;3060:4:0;2903:169;;;;;:::o;10097:182::-;5881:6;;-1:-1:-1;;;;;5881:6:0;220:10;5881:22;5873:67;;;;-1:-1:-1;;;5873:67:0;;;;;;;:::i;:::-;10200:4:::1;::::0;-1:-1:-1;;;;;10200:4:0;;::::1;10183:22:::0;;::::1;::::0;10175:62:::1;;;::::0;-1:-1:-1;;;10175:62:0;;5063:2:1;10175:62:0::1;::::0;::::1;5045:21:1::0;5102:2;5082:18;;;5075:30;5141:29;5121:18;;;5114:57;5188:18;;10175:62:0::1;4861:351:1::0;10175:62:0::1;-1:-1:-1::0;;;;;10248:13:0;;;::::1;;::::0;;;:6:::1;:13;::::0;;;;:23;;-1:-1:-1;;10248:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10097:182::o;3080:458::-;3186:4;3203:36;3213:6;3221:9;3232:6;3203:9;:36::i;:::-;-1:-1:-1;;;;;3279:19:0;;3252:24;3279:19;;;:11;:19;;;;;;;;220:10;3279:33;;;;;;;;3331:26;;;;3323:79;;;;-1:-1:-1;;;3323:79:0;;5419:2:1;3323:79:0;;;5401:21:1;5458:2;5438:18;;;5431:30;5497:34;5477:18;;;5470:62;-1:-1:-1;;;5548:18:1;;;5541:38;5596:19;;3323:79:0;5217:404:1;3323:79:0;3438:57;3447:6;220:10;3488:6;3469:16;:25;3438:8;:57::i;:::-;-1:-1:-1;3526:4:0;;3080:458;-1:-1:-1;;;;3080:458:0:o;3546:215::-;220:10;3634:4;3683:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;3683:34:0;;;;;;;;;;3634:4;;3651:80;;3674:7;;3683:47;;3720:10;;3683:47;:::i;:::-;3651:8;:80::i;9895:194::-;5881:6;;-1:-1:-1;;;;;5881:6:0;220:10;5881:22;5873:67;;;;-1:-1:-1;;;5873:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9986:15:0;::::1;;::::0;;;:6:::1;:15;::::0;;;;;::::1;;9985:16;9977:62;;;::::0;-1:-1:-1;;;9977:62:0;;6090:2:1;9977:62:0::1;::::0;::::1;6072:21:1::0;6129:2;6109:18;;;6102:30;6168:34;6148:18;;;6141:62;-1:-1:-1;;;6219:18:1;;;6212:31;6260:19;;9977:62:0::1;5888:397:1::0;9977:62:0::1;-1:-1:-1::0;;;;;10050:22:0;;;::::1;;::::0;;;:13:::1;:22;::::0;;;;:31;;-1:-1:-1;;10050:31:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9895:194::o;9770:117::-;5881:6;;-1:-1:-1;;;;;5881:6:0;220:10;5881:22;5873:67;;;;-1:-1:-1;;;5873:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9850:20:0;;;::::1;;::::0;;;:11:::1;:20;::::0;;;;:29;;-1:-1:-1;;9850:29:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9770:117::o;9559:203::-;5881:6;;-1:-1:-1;;;;;5881:6:0;220:10;5881:22;5873:67;;;;-1:-1:-1;;;5873:67:0;;;;;;;:::i;:::-;9671:4:::1;9667:2;9651:13;2398:12:::0;;;2310:108;9651:13:::1;:18;;;;:::i;:::-;9650:25;;;;:::i;:::-;9641:6;:34;9633:81;;;::::0;-1:-1:-1;;;9633:81:0;;6714:2:1;9633:81:0::1;::::0;::::1;6696:21:1::0;6753:2;6733:18;;;6726:30;6792:34;6772:18;;;6765:62;-1:-1:-1;;;6843:18:1;;;6836:32;6885:19;;9633:81:0::1;6512:398:1::0;9633:81:0::1;9737:17;:6:::0;9747::::1;9737:17;:::i;:::-;9725:9;:29:::0;-1:-1:-1;9559:203:0:o;5968:150::-;5881:6;;-1:-1:-1;;;;;5881:6:0;220:10;5881:22;5873:67;;;;-1:-1:-1;;;5873:67:0;;;;;;;:::i;:::-;6077:1:::1;6061:6:::0;;6040:40:::1;::::0;-1:-1:-1;;;;;6061:6:0;;::::1;::::0;6040:40:::1;::::0;6077:1;;6040:40:::1;6108:1;6091:19:::0;;-1:-1:-1;;;;;;6091:19:0::1;::::0;;5968:150::o;9239:84::-;5881:6;;-1:-1:-1;;;;;5881:6:0;220:10;5881:22;5873:67;;;;-1:-1:-1;;;5873:67:0;;;;;;;:::i;:::-;9293:14:::1;:22:::0;;-1:-1:-1;;9293:22:0::1;::::0;;9239:84::o;9148:83::-;5881:6;;-1:-1:-1;;;;;5881:6:0;220:10;5881:22;5873:67;;;;-1:-1:-1;;;5873:67:0;;;;;;;:::i;:::-;9203:13:::1;:20:::0;;-1:-1:-1;;9203:20:0::1;;;::::0;;9148:83::o;2097:104::-;2153:13;2186:7;2179:14;;;;;:::i;3769:413::-;220:10;3862:4;3906:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;3906:34:0;;;;;;;;;;3959:35;;;;3951:85;;;;-1:-1:-1;;;3951:85:0;;7290:2:1;3951:85:0;;;7272:21:1;7329:2;7309:18;;;7302:30;7368:34;7348:18;;;7341:62;-1:-1:-1;;;7419:18:1;;;7412:35;7464:19;;3951:85:0;7088:401:1;3951:85:0;4072:67;220:10;4095:7;4123:15;4104:16;:34;4072:8;:67::i;:::-;-1:-1:-1;4170:4:0;;3769:413;-1:-1:-1;;;3769:413:0:o;2561:175::-;2647:4;2664:42;220:10;2688:9;2699:6;2664:9;:42::i;9331:216::-;5881:6;;-1:-1:-1;;;;;5881:6:0;220:10;5881:22;5873:67;;;;-1:-1:-1;;;5873:67:0;;;;;;;:::i;:::-;9437:4:::1;9433:2;9417:13;2398:12:::0;;;2310:108;9417:13:::1;:18;;;;:::i;:::-;9416:25;;;;:::i;:::-;9407:6;:34;9399:92;;;::::0;-1:-1:-1;;;9399:92:0;;7696:2:1;9399:92:0::1;::::0;::::1;7678:21:1::0;7735:2;7715:18;;;7708:30;7774:34;7754:18;;;7747:62;-1:-1:-1;;;7825:18:1;;;7818:43;7878:19;;9399:92:0::1;7494:409:1::0;9399:92:0::1;9522:17;:6:::0;9532::::1;9522:17;:::i;:::-;9502;:37:::0;-1:-1:-1;9331:216:0:o;6126:244::-;5881:6;;-1:-1:-1;;;;;5881:6:0;220:10;5881:22;5873:67;;;;-1:-1:-1;;;5873:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6215:22:0;::::1;6207:73;;;::::0;-1:-1:-1;;;6207:73:0;;8110:2:1;6207:73:0::1;::::0;::::1;8092:21:1::0;8149:2;8129:18;;;8122:30;8188:34;8168:18;;;8161:62;-1:-1:-1;;;8239:18:1;;;8232:36;8285:19;;6207:73:0::1;7908:402:1::0;6207:73:0::1;6317:6;::::0;;6296:38:::1;::::0;-1:-1:-1;;;;;6296:38:0;;::::1;::::0;6317:6;::::1;::::0;6296:38:::1;::::0;::::1;6345:6;:17:::0;;-1:-1:-1;;;;;;6345:17:0::1;-1:-1:-1::0;;;;;6345:17:0;;;::::1;::::0;;;::::1;::::0;;6126:244::o;5077:346::-;-1:-1:-1;;;;;5179:19:0;;5171:68;;;;-1:-1:-1;;;5171:68:0;;8517:2:1;5171:68:0;;;8499:21:1;8556:2;8536:18;;;8529:30;8595:34;8575:18;;;8568:62;-1:-1:-1;;;8646:18:1;;;8639:34;8690:19;;5171:68:0;8315:400:1;5171:68:0;-1:-1:-1;;;;;5258:21:0;;5250:68;;;;-1:-1:-1;;;5250:68:0;;8922:2:1;5250:68:0;;;8904:21:1;8961:2;8941:18;;;8934:30;9000:34;8980:18;;;8973:62;-1:-1:-1;;;9051:18:1;;;9044:32;9093:19;;5250:68:0;8720:398:1;5250:68:0;-1:-1:-1;;;;;5331:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5383:32;;1782:25:1;;;5383:32:0;;1755:18:1;5383:32:0;;;;;;;5077:346;;;:::o;8175:965::-;8302:14;;;;:34;;;;-1:-1:-1;;;;;;8321:15:0;;;;;;:11;:15;;;;;;;;8320:16;8302:34;:56;;;;-1:-1:-1;;;;;;8341:17:0;;;;;;:11;:17;;;;;;;;8340:18;8302:56;8299:790;;;8383:13;;;;;;;8375:44;;;;-1:-1:-1;;;8375:44:0;;9325:2:1;8375:44:0;;;9307:21:1;9364:2;9344:18;;;9337:30;-1:-1:-1;;;9383:18:1;;;9376:48;9441:18;;8375:44:0;9123:342:1;8375:44:0;-1:-1:-1;;;;;8462:12:0;;;;;;:6;:12;;;;;;;;:34;;;;-1:-1:-1;;;;;;8479:17:0;;;;;;:13;:17;;;;;;;;8478:18;8462:34;8458:620;;;8535:17;;8525:6;:27;;8517:77;;;;-1:-1:-1;;;8517:77:0;;9672:2:1;8517:77:0;;;9654:21:1;9711:2;9691:18;;;9684:30;9750:34;9730:18;;;9723:62;-1:-1:-1;;;9801:18:1;;;9794:35;9846:19;;8517:77:0;9470:401:1;8517:77:0;8647:9;;-1:-1:-1;;;;;2527:18:0;;2500:7;2527:18;;;:9;:18;;;;;;8621:22;;:6;:22;:::i;:::-;:35;;8613:72;;;;-1:-1:-1;;;8613:72:0;;10078:2:1;8613:72:0;;;10060:21:1;10117:2;10097:18;;;10090:30;-1:-1:-1;;;10136:18:1;;;10129:54;10200:18;;8613:72:0;9876:348:1;8613:72:0;8458:620;;;-1:-1:-1;;;;;8750:10:0;;;;;;:6;:10;;;;;;;;:34;;;;-1:-1:-1;;;;;;8765:19:0;;;;;;:13;:19;;;;;;;;8764:20;8750:34;8746:332;;;8823:17;;8813:6;:27;;8805:79;;;;-1:-1:-1;;;8805:79:0;;10431:2:1;8805:79:0;;;10413:21:1;10470:2;10450:18;;;10443:30;10509:34;10489:18;;;10482:62;-1:-1:-1;;;10560:18:1;;;10553:37;10607:19;;8805:79:0;10229:403:1;8746:332:0;-1:-1:-1;;;;;8953:17:0;;;;;;:13;:17;;;;;;;;8948:130;;9024:9;;-1:-1:-1;;;;;2527:18:0;;2500:7;2527:18;;;:9;:18;;;;;;8998:22;;:6;:22;:::i;:::-;:35;;8990:72;;;;-1:-1:-1;;;8990:72:0;;10078:2:1;8990:72:0;;;10060:21:1;10117:2;10097:18;;;10090:30;-1:-1:-1;;;10136:18:1;;;10129:54;10200:18;;8990:72:0;9876:348:1;8990:72:0;9099:33;9115:4;9121:2;9125:6;9099:15;:33::i;:::-;8175:965;;;:::o;4190:580::-;-1:-1:-1;;;;;4296:20:0;;4288:70;;;;-1:-1:-1;;;4288:70:0;;10839:2:1;4288:70:0;;;10821:21:1;10878:2;10858:18;;;10851:30;10917:34;10897:18;;;10890:62;-1:-1:-1;;;10968:18:1;;;10961:35;11013:19;;4288:70:0;10637:401:1;4288:70:0;-1:-1:-1;;;;;4377:23:0;;4369:71;;;;-1:-1:-1;;;4369:71:0;;11245:2:1;4369:71:0;;;11227:21:1;11284:2;11264:18;;;11257:30;11323:34;11303:18;;;11296:62;-1:-1:-1;;;11374:18:1;;;11367:33;11417:19;;4369:71:0;11043:399:1;4369:71:0;-1:-1:-1;;;;;4477:17:0;;4453:21;4477:17;;;:9;:17;;;;;;4513:23;;;;4505:74;;;;-1:-1:-1;;;4505:74:0;;11649:2:1;4505:74:0;;;11631:21:1;11688:2;11668:18;;;11661:30;11727:34;11707:18;;;11700:62;-1:-1:-1;;;11778:18:1;;;11771:36;11824:19;;4505:74:0;11447:402:1;4505:74:0;-1:-1:-1;;;;;4615:17:0;;;;;;;:9;:17;;;;;;4635:22;;;4615:42;;4679:20;;;;;;;;:30;;4651:6;;4615:17;4679:30;;4651:6;;4679:30;:::i;:::-;;;;;;;;4744:9;-1:-1:-1;;;;;4727:35:0;4736:6;-1:-1:-1;;;;;4727:35:0;;4755:6;4727:35;;;;1782:25:1;;1770:2;1755:18;;1636:177;4727:35:0;;;;;;;;4277:493;4190:580;;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1818:347::-;1883:6;1891;1944:2;1932:9;1923:7;1919:23;1915:32;1912:52;;;1960:1;1957;1950:12;1912:52;1983:29;2002:9;1983:29;:::i;:::-;1973:39;;2062:2;2051:9;2047:18;2034:32;2109:5;2102:13;2095:21;2088:5;2085:32;2075:60;;2131:1;2128;2121:12;2075:60;2154:5;2144:15;;;1818:347;;;;;:::o;2170:328::-;2247:6;2255;2263;2316:2;2304:9;2295:7;2291:23;2287:32;2284:52;;;2332:1;2329;2322:12;2284:52;2355:29;2374:9;2355:29;:::i;:::-;2345:39;;2403:38;2437:2;2426:9;2422:18;2403:38;:::i;:::-;2393:48;;2488:2;2477:9;2473:18;2460:32;2450:42;;2170:328;;;;;:::o;2692:186::-;2751:6;2804:2;2792:9;2783:7;2779:23;2775:32;2772:52;;;2820:1;2817;2810:12;2772:52;2843:29;2862:9;2843:29;:::i;:::-;2833:39;2692:186;-1:-1:-1;;;2692:186:1:o;2883:180::-;2942:6;2995:2;2983:9;2974:7;2970:23;2966:32;2963:52;;;3011:1;3008;3001:12;2963:52;-1:-1:-1;3034:23:1;;2883:180;-1:-1:-1;2883:180:1:o;3290:260::-;3358:6;3366;3419:2;3407:9;3398:7;3394:23;3390:32;3387:52;;;3435:1;3432;3425:12;3387:52;3458:29;3477:9;3458:29;:::i;:::-;3448:39;;3506:38;3540:2;3529:9;3525:18;3506:38;:::i;:::-;3496:48;;3290:260;;;;;:::o;3555:356::-;3757:2;3739:21;;;3776:18;;;3769:30;3835:34;3830:2;3815:18;;3808:62;3902:2;3887:18;;3555:356::o;4476:380::-;4555:1;4551:12;;;;4598;;;4619:61;;4673:4;4665:6;4661:17;4651:27;;4619:61;4726:2;4718:6;4715:14;4695:18;4692:38;4689:161;;4772:10;4767:3;4763:20;4760:1;4753:31;4807:4;4804:1;4797:15;4835:4;4832:1;4825:15;4689:161;;4476:380;;;:::o;5626:127::-;5687:10;5682:3;5678:20;5675:1;5668:31;5718:4;5715:1;5708:15;5742:4;5739:1;5732:15;5758:125;5823:9;;;5844:10;;;5841:36;;;5857:18;;:::i;6290:217::-;6330:1;6356;6346:132;;6400:10;6395:3;6391:20;6388:1;6381:31;6435:4;6432:1;6425:15;6463:4;6460:1;6453:15;6346:132;-1:-1:-1;6492:9:1;;6290:217::o;6915:168::-;6988:9;;;7019;;7036:15;;;7030:22;;7016:37;7006:71;;7057:18;;:::i

Swarm Source

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