ETH Price: $2,483.99 (-1.53%)

Token

Shigoku (SGOKU)
 

Overview

Max Total Supply

100,000,000 SGOKU

Holders

186

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.000000000000000511 SGOKU

Value
$0.00
0xa0f527f425d8f4f24690fe585002e915d5984ae3
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:
Shigoku

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-09-06
*/

/*
https://shigoku.io/

https://twitter.com/ShigokuToken

https://t.me/ShigokuToken

*/

// SPDX-License-Identifier: Unlicensed
pragma solidity 0.8.18;

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

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

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

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

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, " multiplication overflow");
        return c;
    }

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

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

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(), "caller is not the owner");
        _;
    }

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

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

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

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);
    function WETH() external pure returns (address);
}

contract Shigoku is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping(address => uint256) private _balance;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFeeWallet;
    uint8 private constant _decimals = 18;
    uint256 private constant _totalSupply = 100000000 * 10**_decimals;
    //burn 60%
    uint256 private constant onePercent = 400000 * 10**_decimals; //1%

    uint256 public maxWalletAmount = _totalSupply / 100 * 2; //2% from total supply / 5% from circulation

    uint256 public buyTax = 2;
    uint256 public sellTax = 2;

    string private constant _name = "Shigoku";
    string private constant _symbol = "SGOKU";

    IUniswapV2Router02 private uniswapV2Router;
    address public uniswapV2Pair;
    address payable public tW;
        
    uint256 private launchedAt;
    uint256 private launchDelay = 0;
    bool private launch = false;

    uint256 private constant minSwap = onePercent / 20; //0.05% from circulation
    bool private inSwapAndLiquify;
    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }

    constructor() {
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        
        tW = payable(0x33DF7cAfb30A8A088Fc092d370eABeee13338ee7);

        _isExcludedFromFeeWallet[msg.sender] = true;
        _isExcludedFromFeeWallet[tW] = true;
        _isExcludedFromFeeWallet[address(this)] = true;

        _allowances[owner()][address(uniswapV2Router)] = _totalSupply;
        _balance[owner()] = _totalSupply;
        emit Transfer(address(0), address(owner()), _totalSupply);
    }

    function createLP() external onlyOwner {
         uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
    }
    
    function name() public pure returns (string memory) {
        return _name;
    }

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

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

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

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

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

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

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

    function newDelay(uint256 delay) external onlyOwner {
         launchDelay = delay;
    }

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

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0) && spender != address(0), "approve zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function enableTrading() external onlyOwner {
        launch = true;
        launchedAt = block.number;
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "transfer zero address");
        uint256 _tax = 0;
        if (_isExcludedFromFeeWallet[from] || _isExcludedFromFeeWallet[to]) {
            _tax = 0;
        } else {
            require(launch, "Wait till launch");
            if (block.number < launchedAt + launchDelay) {_tax=99;} else {
                if (from == uniswapV2Pair) {
                    require(balanceOf(to) + amount <= maxWalletAmount);
                    _tax = buyTax;
                } else if (to == uniswapV2Pair) {
                    uint256 tokensToSwap = balanceOf(address(this));
                    if (tokensToSwap > minSwap && !inSwapAndLiquify) {
                        if (tokensToSwap > onePercent) {
                            tokensToSwap = onePercent;
                        }
                        swapTokensForEth(tokensToSwap);
                    }
                    _tax = sellTax;
                } else {
                    _tax = 0;
                }
            }
        }
        uint256 taxTokens;
        if(_tax == 99){
            taxTokens = (amount * 9999) / 10000;
        }else{
            taxTokens = (amount * _tax) / 100;
        }
        uint256 transferAmount = amount - taxTokens;

        _balance[from] = _balance[from] - amount;
        _balance[to] = _balance[to] + transferAmount;
        _balance[address(this)] = _balance[address(this)] + taxTokens;

        emit Transfer(from, to, transferAmount);
    }

    function removeAllLimits() external onlyOwner {
        maxWalletAmount = _totalSupply;
    }

    function newTax(uint256 newBuyTax, uint256 newSellTax) external onlyOwner {
        buyTax = newBuyTax;
        sellTax = newSellTax;
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            tW,
            block.timestamp
        );
    }
    function setExcludeWFromLimits(address newWallet, bool exclude) external onlyOwner {
        _isExcludedFromFeeWallet[newWallet] = exclude;
    }

    function sendEthToWwallet() external {
        tW.transfer(address(this).balance);
    }

    receive() external payable {}
}
//NFA

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":[{"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":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"createLP","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"delay","type":"uint256"}],"name":"newDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"newTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeAllLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sendEthToWwallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newWallet","type":"address"},{"internalType":"bool","name":"exclude","type":"bool"}],"name":"setExcludeWFromLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"tW","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526064620000146012600a6200036f565b62000024906305f5e10062000387565b620000309190620003a1565b6200003d90600262000387565b600455600260058190556006556000600b55600c805460ff191690553480156200006657600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600780546001600160a01b0319908116737a250d5630b4cf539739df2c5dacb4c659f2488d17909155600980549091167333df7cafb30a8a088fc092d370eabeee13338ee717815533600090815260036020526040808220805460ff19908116600190811790925593546001600160a01b03168352818320805485168217905530835291208054909216179055620001436012600a6200036f565b62000153906305f5e10062000387565b600260006200016a6000546001600160a01b031690565b6001600160a01b0390811682526020808301939093526040918201600090812060075490921681529252902055620001a56012600a6200036f565b620001b5906305f5e10062000387565b60016000620001cc6000546001600160a01b031690565b6001600160a01b03168152602081019190915260400160002055620001f96000546001600160a01b031690565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002336012600a6200036f565b62000243906305f5e10062000387565b60405190815260200160405180910390a3620003c4565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002b15781600019048211156200029557620002956200025a565b80851615620002a357918102915b93841c939080029062000275565b509250929050565b600082620002ca5750600162000369565b81620002d95750600062000369565b8160018114620002f25760028114620002fd576200031d565b600191505062000369565b60ff8411156200031157620003116200025a565b50506001821b62000369565b5060208310610133831016604e8410600b841016171562000342575081810a62000369565b6200034e838362000270565b80600019048211156200036557620003656200025a565b0290505b92915050565b60006200038060ff841683620002b9565b9392505050565b80820281158282048414176200036957620003696200025a565b600082620003bf57634e487b7160e01b600052601260045260246000fd5b500490565b61137680620003d46000396000f3fe60806040526004361061014f5760003560e01c80638da5cb5b116100b6578063d10a08911161006f578063d10a0891146103c9578063db05e5cb146103e9578063dd62ed3e146103fe578063e3f9a30114610444578063f2fde38b14610464578063f7f23a0c1461048457600080fd5b80638da5cb5b1461031c57806395d89b411461033a578063a9059cbb14610368578063a97f731514610388578063aa4bde281461039d578063cc1776d3146103b357600080fd5b80634f7041a5116101085780634f7041a51461026457806370a082311461027a578063715018a6146102b057806375946bad146102c757806385a68ae7146102e75780638a8c523c1461030757600080fd5b806306fdde031461015b578063095ea7b31461019d57806318160ddd146101cd57806323b872dd146101f0578063313ce5671461021057806349bd5a5e1461022c57600080fd5b3661015657005b600080fd5b34801561016757600080fd5b50604080518082019091526007815266536869676f6b7560c81b60208201525b6040516101949190610f62565b60405180910390f35b3480156101a957600080fd5b506101bd6101b8366004610fc5565b610499565b6040519015158152602001610194565b3480156101d957600080fd5b506101e26104b0565b604051908152602001610194565b3480156101fc57600080fd5b506101bd61020b366004610ff1565b6104d1565b34801561021c57600080fd5b5060405160128152602001610194565b34801561023857600080fd5b5060085461024c906001600160a01b031681565b6040516001600160a01b039091168152602001610194565b34801561027057600080fd5b506101e260055481565b34801561028657600080fd5b506101e2610295366004611032565b6001600160a01b031660009081526001602052604090205490565b3480156102bc57600080fd5b506102c561056b565b005b3480156102d357600080fd5b506102c56102e2366004611056565b6105e8565b3480156102f357600080fd5b5060095461024c906001600160a01b031681565b34801561031357600080fd5b506102c561061d565b34801561032857600080fd5b506000546001600160a01b031661024c565b34801561034657600080fd5b5060408051808201909152600581526453474f4b5560d81b6020820152610187565b34801561037457600080fd5b506101bd610383366004610fc5565b61065a565b34801561039457600080fd5b506102c5610667565b3480156103a957600080fd5b506101e260045481565b3480156103bf57600080fd5b506101e260065481565b3480156103d557600080fd5b506102c56103e4366004611078565b6106a3565b3480156103f557600080fd5b506102c56106d2565b34801561040a57600080fd5b506101e2610419366004611091565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561045057600080fd5b506102c561045f3660046110ca565b61071b565b34801561047057600080fd5b506102c561047f366004611032565b610770565b34801561049057600080fd5b506102c561083b565b60006104a63384846109f5565b5060015b92915050565b60006104be6012600a6111f7565b6104cc906305f5e100611206565b905090565b60006104de848484610ab9565b610561843361055c856040518060400160405280600d81526020016c6c6f7720616c6c6f77616e636560981b815250600260008b6001600160a01b03166001600160a01b03168152602001908152602001600020600061053b3390565b6001600160a01b031681526020810191909152604001600020549190610df8565b6109f5565b5060019392505050565b6000546001600160a01b0316331461059e5760405162461bcd60e51b81526004016105959061121d565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106125760405162461bcd60e51b81526004016105959061121d565b600591909155600655565b6000546001600160a01b031633146106475760405162461bcd60e51b81526004016105959061121d565b600c805460ff1916600117905543600a55565b60006104a6338484610ab9565b6009546040516001600160a01b03909116904780156108fc02916000818181858888f193505050501580156106a0573d6000803e3d6000fd5b50565b6000546001600160a01b031633146106cd5760405162461bcd60e51b81526004016105959061121d565b600b55565b6000546001600160a01b031633146106fc5760405162461bcd60e51b81526004016105959061121d565b6107086012600a6111f7565b610716906305f5e100611206565b600455565b6000546001600160a01b031633146107455760405162461bcd60e51b81526004016105959061121d565b6001600160a01b03919091166000908152600360205260409020805460ff1916911515919091179055565b6000546001600160a01b0316331461079a5760405162461bcd60e51b81526004016105959061121d565b6001600160a01b0381166107f05760405162461bcd60e51b815260206004820152601d60248201527f6e6577206f776e657220697320746865207a65726f20616464726573730000006044820152606401610595565b600080546001600160a01b0319166001600160a01b0383169081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6000546001600160a01b031633146108655760405162461bcd60e51b81526004016105959061121d565b600760009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108dc9190611254565b6001600160a01b031663c9c6539630600760009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561093e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109629190611254565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156109af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d39190611254565b600880546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831615801590610a1557506001600160a01b03821615155b610a585760405162461bcd60e51b8152602060048201526014602482015273617070726f7665207a65726f206164647265737360601b6044820152606401610595565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b075760405162461bcd60e51b81526020600482015260156024820152747472616e73666572207a65726f206164647265737360581b6044820152606401610595565b6001600160a01b03831660009081526003602052604081205460ff1680610b4657506001600160a01b03831660009081526003602052604090205460ff165b15610b5357506000610cc7565b600c5460ff16610b985760405162461bcd60e51b815260206004820152601060248201526f0aec2d2e840e8d2d8d840d8c2eadcc6d60831b6044820152606401610595565b600b54600a54610ba89190611271565b431015610bb757506063610cc7565b6008546001600160a01b0390811690851603610c0e5760045482610bf0856001600160a01b031660009081526001602052604090205490565b610bfa9190611271565b1115610c0557600080fd5b50600554610cc7565b6008546001600160a01b0390811690841603610cc357306000908152600160205260409020546014610c426012600a6111f7565b610c4f9062061a80611206565b610c599190611284565b81118015610c6f5750600c54610100900460ff16155b15610cb957610c806012600a6111f7565b610c8d9062061a80611206565b811115610cb057610ca06012600a6111f7565b610cad9062061a80611206565b90505b610cb981610e32565b5050600654610cc7565b5060005b600081606303610cf157612710610ce08461270f611206565b610cea9190611284565b9050610d0a565b6064610cfd8385611206565b610d079190611284565b90505b6000610d1682856112a6565b6001600160a01b038716600090815260016020526040902054909150610d3d9085906112a6565b6001600160a01b038088166000908152600160205260408082209390935590871681522054610d6d908290611271565b6001600160a01b038616600090815260016020526040808220929092553081522054610d9a908390611271565b3060009081526001602090815260409182902092909255518281526001600160a01b0387811692908916917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050505050565b60008184841115610e1c5760405162461bcd60e51b81526004016105959190610f62565b506000610e2984866112a6565b95945050505050565b600c805461ff0019166101001790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610e7657610e766112b9565b60200260200101906001600160a01b031690816001600160a01b03168152505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610ebe57610ebe6112b9565b6001600160a01b039283166020918202929092010152600754610ee491309116846109f5565b60075460095460405163791ac94760e01b81526001600160a01b039283169263791ac94792610f21928792600092889291169042906004016112cf565b600060405180830381600087803b158015610f3b57600080fd5b505af1158015610f4f573d6000803e3d6000fd5b5050600c805461ff001916905550505050565b600060208083528351808285015260005b81811015610f8f57858101830151858201604001528201610f73565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146106a057600080fd5b60008060408385031215610fd857600080fd5b8235610fe381610fb0565b946020939093013593505050565b60008060006060848603121561100657600080fd5b833561101181610fb0565b9250602084013561102181610fb0565b929592945050506040919091013590565b60006020828403121561104457600080fd5b813561104f81610fb0565b9392505050565b6000806040838503121561106957600080fd5b50508035926020909101359150565b60006020828403121561108a57600080fd5b5035919050565b600080604083850312156110a457600080fd5b82356110af81610fb0565b915060208301356110bf81610fb0565b809150509250929050565b600080604083850312156110dd57600080fd5b82356110e881610fb0565b9150602083013580151581146110bf57600080fd5b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561114e578160001904821115611134576111346110fd565b8085161561114157918102915b93841c9390800290611118565b509250929050565b600082611165575060016104aa565b81611172575060006104aa565b81600181146111885760028114611192576111ae565b60019150506104aa565b60ff8411156111a3576111a36110fd565b50506001821b6104aa565b5060208310610133831016604e8410600b84101617156111d1575081810a6104aa565b6111db8383611113565b80600019048211156111ef576111ef6110fd565b029392505050565b600061104f60ff841683611156565b80820281158282048414176104aa576104aa6110fd565b60208082526017908201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604082015260600190565b60006020828403121561126657600080fd5b815161104f81610fb0565b808201808211156104aa576104aa6110fd565b6000826112a157634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156104aa576104aa6110fd565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561131f5784516001600160a01b0316835293830193918301916001016112fa565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212209dd1c947f64ee69e66da73f681de2c871c1dc258796688dc780157d83a91b4dc64736f6c63430008120033

Deployed Bytecode

0x60806040526004361061014f5760003560e01c80638da5cb5b116100b6578063d10a08911161006f578063d10a0891146103c9578063db05e5cb146103e9578063dd62ed3e146103fe578063e3f9a30114610444578063f2fde38b14610464578063f7f23a0c1461048457600080fd5b80638da5cb5b1461031c57806395d89b411461033a578063a9059cbb14610368578063a97f731514610388578063aa4bde281461039d578063cc1776d3146103b357600080fd5b80634f7041a5116101085780634f7041a51461026457806370a082311461027a578063715018a6146102b057806375946bad146102c757806385a68ae7146102e75780638a8c523c1461030757600080fd5b806306fdde031461015b578063095ea7b31461019d57806318160ddd146101cd57806323b872dd146101f0578063313ce5671461021057806349bd5a5e1461022c57600080fd5b3661015657005b600080fd5b34801561016757600080fd5b50604080518082019091526007815266536869676f6b7560c81b60208201525b6040516101949190610f62565b60405180910390f35b3480156101a957600080fd5b506101bd6101b8366004610fc5565b610499565b6040519015158152602001610194565b3480156101d957600080fd5b506101e26104b0565b604051908152602001610194565b3480156101fc57600080fd5b506101bd61020b366004610ff1565b6104d1565b34801561021c57600080fd5b5060405160128152602001610194565b34801561023857600080fd5b5060085461024c906001600160a01b031681565b6040516001600160a01b039091168152602001610194565b34801561027057600080fd5b506101e260055481565b34801561028657600080fd5b506101e2610295366004611032565b6001600160a01b031660009081526001602052604090205490565b3480156102bc57600080fd5b506102c561056b565b005b3480156102d357600080fd5b506102c56102e2366004611056565b6105e8565b3480156102f357600080fd5b5060095461024c906001600160a01b031681565b34801561031357600080fd5b506102c561061d565b34801561032857600080fd5b506000546001600160a01b031661024c565b34801561034657600080fd5b5060408051808201909152600581526453474f4b5560d81b6020820152610187565b34801561037457600080fd5b506101bd610383366004610fc5565b61065a565b34801561039457600080fd5b506102c5610667565b3480156103a957600080fd5b506101e260045481565b3480156103bf57600080fd5b506101e260065481565b3480156103d557600080fd5b506102c56103e4366004611078565b6106a3565b3480156103f557600080fd5b506102c56106d2565b34801561040a57600080fd5b506101e2610419366004611091565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561045057600080fd5b506102c561045f3660046110ca565b61071b565b34801561047057600080fd5b506102c561047f366004611032565b610770565b34801561049057600080fd5b506102c561083b565b60006104a63384846109f5565b5060015b92915050565b60006104be6012600a6111f7565b6104cc906305f5e100611206565b905090565b60006104de848484610ab9565b610561843361055c856040518060400160405280600d81526020016c6c6f7720616c6c6f77616e636560981b815250600260008b6001600160a01b03166001600160a01b03168152602001908152602001600020600061053b3390565b6001600160a01b031681526020810191909152604001600020549190610df8565b6109f5565b5060019392505050565b6000546001600160a01b0316331461059e5760405162461bcd60e51b81526004016105959061121d565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106125760405162461bcd60e51b81526004016105959061121d565b600591909155600655565b6000546001600160a01b031633146106475760405162461bcd60e51b81526004016105959061121d565b600c805460ff1916600117905543600a55565b60006104a6338484610ab9565b6009546040516001600160a01b03909116904780156108fc02916000818181858888f193505050501580156106a0573d6000803e3d6000fd5b50565b6000546001600160a01b031633146106cd5760405162461bcd60e51b81526004016105959061121d565b600b55565b6000546001600160a01b031633146106fc5760405162461bcd60e51b81526004016105959061121d565b6107086012600a6111f7565b610716906305f5e100611206565b600455565b6000546001600160a01b031633146107455760405162461bcd60e51b81526004016105959061121d565b6001600160a01b03919091166000908152600360205260409020805460ff1916911515919091179055565b6000546001600160a01b0316331461079a5760405162461bcd60e51b81526004016105959061121d565b6001600160a01b0381166107f05760405162461bcd60e51b815260206004820152601d60248201527f6e6577206f776e657220697320746865207a65726f20616464726573730000006044820152606401610595565b600080546001600160a01b0319166001600160a01b0383169081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6000546001600160a01b031633146108655760405162461bcd60e51b81526004016105959061121d565b600760009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108dc9190611254565b6001600160a01b031663c9c6539630600760009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561093e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109629190611254565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156109af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d39190611254565b600880546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831615801590610a1557506001600160a01b03821615155b610a585760405162461bcd60e51b8152602060048201526014602482015273617070726f7665207a65726f206164647265737360601b6044820152606401610595565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b075760405162461bcd60e51b81526020600482015260156024820152747472616e73666572207a65726f206164647265737360581b6044820152606401610595565b6001600160a01b03831660009081526003602052604081205460ff1680610b4657506001600160a01b03831660009081526003602052604090205460ff165b15610b5357506000610cc7565b600c5460ff16610b985760405162461bcd60e51b815260206004820152601060248201526f0aec2d2e840e8d2d8d840d8c2eadcc6d60831b6044820152606401610595565b600b54600a54610ba89190611271565b431015610bb757506063610cc7565b6008546001600160a01b0390811690851603610c0e5760045482610bf0856001600160a01b031660009081526001602052604090205490565b610bfa9190611271565b1115610c0557600080fd5b50600554610cc7565b6008546001600160a01b0390811690841603610cc357306000908152600160205260409020546014610c426012600a6111f7565b610c4f9062061a80611206565b610c599190611284565b81118015610c6f5750600c54610100900460ff16155b15610cb957610c806012600a6111f7565b610c8d9062061a80611206565b811115610cb057610ca06012600a6111f7565b610cad9062061a80611206565b90505b610cb981610e32565b5050600654610cc7565b5060005b600081606303610cf157612710610ce08461270f611206565b610cea9190611284565b9050610d0a565b6064610cfd8385611206565b610d079190611284565b90505b6000610d1682856112a6565b6001600160a01b038716600090815260016020526040902054909150610d3d9085906112a6565b6001600160a01b038088166000908152600160205260408082209390935590871681522054610d6d908290611271565b6001600160a01b038616600090815260016020526040808220929092553081522054610d9a908390611271565b3060009081526001602090815260409182902092909255518281526001600160a01b0387811692908916917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050505050565b60008184841115610e1c5760405162461bcd60e51b81526004016105959190610f62565b506000610e2984866112a6565b95945050505050565b600c805461ff0019166101001790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610e7657610e766112b9565b60200260200101906001600160a01b031690816001600160a01b03168152505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610ebe57610ebe6112b9565b6001600160a01b039283166020918202929092010152600754610ee491309116846109f5565b60075460095460405163791ac94760e01b81526001600160a01b039283169263791ac94792610f21928792600092889291169042906004016112cf565b600060405180830381600087803b158015610f3b57600080fd5b505af1158015610f4f573d6000803e3d6000fd5b5050600c805461ff001916905550505050565b600060208083528351808285015260005b81811015610f8f57858101830151858201604001528201610f73565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146106a057600080fd5b60008060408385031215610fd857600080fd5b8235610fe381610fb0565b946020939093013593505050565b60008060006060848603121561100657600080fd5b833561101181610fb0565b9250602084013561102181610fb0565b929592945050506040919091013590565b60006020828403121561104457600080fd5b813561104f81610fb0565b9392505050565b6000806040838503121561106957600080fd5b50508035926020909101359150565b60006020828403121561108a57600080fd5b5035919050565b600080604083850312156110a457600080fd5b82356110af81610fb0565b915060208301356110bf81610fb0565b809150509250929050565b600080604083850312156110dd57600080fd5b82356110e881610fb0565b9150602083013580151581146110bf57600080fd5b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561114e578160001904821115611134576111346110fd565b8085161561114157918102915b93841c9390800290611118565b509250929050565b600082611165575060016104aa565b81611172575060006104aa565b81600181146111885760028114611192576111ae565b60019150506104aa565b60ff8411156111a3576111a36110fd565b50506001821b6104aa565b5060208310610133831016604e8410600b84101617156111d1575081810a6104aa565b6111db8383611113565b80600019048211156111ef576111ef6110fd565b029392505050565b600061104f60ff841683611156565b80820281158282048414176104aa576104aa6110fd565b60208082526017908201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604082015260600190565b60006020828403121561126657600080fd5b815161104f81610fb0565b808201808211156104aa576104aa6110fd565b6000826112a157634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156104aa576104aa6110fd565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561131f5784516001600160a01b0316835293830193918301916001016112fa565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212209dd1c947f64ee69e66da73f681de2c871c1dc258796688dc780157d83a91b4dc64736f6c63430008120033

Deployed Bytecode Sourcemap

3538:6360:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5484:83;;;;;;;;;;-1:-1:-1;5554:5:0;;;;;;;;;;;;-1:-1:-1;;;5554:5:0;;;;5484:83;;;;;;;:::i;:::-;;;;;;;;6318:160;;;;;;;;;;-1:-1:-1;6318:160:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6318:160:0;1023:187:1;5761:100:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;5761:100:0;1215:177:1;6585:283:0;;;;;;;;;;-1:-1:-1;6585:283:0;;;;;:::i;:::-;;:::i;5670:83::-;;;;;;;;;;-1:-1:-1;5670:83:0;;3847:2;2000:36:1;;1988:2;1973:18;5670:83:0;1858:184:1;4341:28:0;;;;;;;;;;-1:-1:-1;4341:28:0;;;;-1:-1:-1;;;;;4341:28:0;;;;;;-1:-1:-1;;;;;2211:32:1;;;2193:51;;2181:2;2166:18;4341:28:0;2047:203:1;4127:25:0;;;;;;;;;;;;;;;;5869:118;;;;;;;;;;-1:-1:-1;5869:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;5962:17:0;5935:7;5962:17;;;:8;:17;;;;;;;5869:118;2189:148;;;;;;;;;;;;;:::i;:::-;;8965:142;;;;;;;;;;-1:-1:-1;8965:142:0;;;;;:::i;:::-;;:::i;4376:25::-;;;;;;;;;;-1:-1:-1;4376:25:0;;;;-1:-1:-1;;;;;4376:25:0;;;7149:112;;;;;;;;;;;;;:::i;1749:79::-;;;;;;;;;;-1:-1:-1;1787:7:0;1814:6;-1:-1:-1;;;;;1814:6:0;1749:79;;5575:87;;;;;;;;;;-1:-1:-1;5647:7:0;;;;;;;;;;;;-1:-1:-1;;;5647:7:0;;;;5575:87;;5995:165;;;;;;;;;;-1:-1:-1;5995:165:0;;;;;:::i;:::-;;:::i;9768:90::-;;;;;;;;;;;;;:::i;4018:55::-;;;;;;;;;;;;;;;;4159:26;;;;;;;;;;;;;;;;6486:91;;;;;;;;;;-1:-1:-1;6486:91:0;;;;;:::i;:::-;;:::i;8862:95::-;;;;;;;;;;;;;:::i;6168:142::-;;;;;;;;;;-1:-1:-1;6168:142:0;;;;;:::i;:::-;-1:-1:-1;;;;;6275:18:0;;;6249:7;6275:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6168:142;9613:147;;;;;;;;;;-1:-1:-1;9613:147:0;;;;;:::i;:::-;;:::i;1954:227::-;;;;;;;;;;-1:-1:-1;1954:227:0;;;;;:::i;:::-;;:::i;5303:169::-;;;;;;;;;;;;;:::i;6318:160::-;6393:4;6409:39;278:10;6432:7;6441:6;6409:8;:39::i;:::-;-1:-1:-1;6466:4:0;6318:160;;;;;:::o;5761:100::-;5814:7;3908:13;3847:2;3908;:13;:::i;:::-;3896:25;;:9;:25;:::i;:::-;5834:19;;5761:100;:::o;6585:283::-;6683:4;6700:36;6710:6;6718:9;6729:6;6700:9;:36::i;:::-;6747:91;6756:6;278:10;6776:61;6814:6;6776:61;;;;;;;;;;;;;-1:-1:-1;;;6776:61:0;;;:11;:19;6788:6;-1:-1:-1;;;;;6776:19:0;-1:-1:-1;;;;;6776:19:0;;;;;;;;;;;;:33;6796:12;278:10;;198:98;6796:12;-1:-1:-1;;;;;6776:33:0;;;;;;;;;;;;-1:-1:-1;6776:33:0;;;:61;:37;:61::i;:::-;6747:8;:91::i;:::-;-1:-1:-1;6856:4:0;6585:283;;;;;:::o;2189:148::-;1876:6;;-1:-1:-1;;;;;1876:6:0;278:10;1876:22;1868:58;;;;-1:-1:-1;;;1868:58:0;;;;;;;:::i;:::-;;;;;;;;;2296:1:::1;2280:6:::0;;2259:40:::1;::::0;-1:-1:-1;;;;;2280:6:0;;::::1;::::0;2259:40:::1;::::0;2296:1;;2259:40:::1;2327:1;2310:19:::0;;-1:-1:-1;;;;;;2310:19:0::1;::::0;;2189:148::o;8965:142::-;1876:6;;-1:-1:-1;;;;;1876:6:0;278:10;1876:22;1868:58;;;;-1:-1:-1;;;1868:58:0;;;;;;;:::i;:::-;9050:6:::1;:18:::0;;;;9079:7:::1;:20:::0;8965:142::o;7149:112::-;1876:6;;-1:-1:-1;;;;;1876:6:0;278:10;1876:22;1868:58;;;;-1:-1:-1;;;1868:58:0;;;;;;;:::i;:::-;7204:6:::1;:13:::0;;-1:-1:-1;;7204:13:0::1;7213:4;7204:13;::::0;;7241:12:::1;7228:10;:25:::0;7149:112::o;5995:165::-;6072:4;6088:42;278:10;6112:9;6123:6;6088:9;:42::i;9768:90::-;9816:2;;:34;;-1:-1:-1;;;;;9816:2:0;;;;9828:21;9816:34;;;;;:2;:34;:2;:34;9828:21;9816:2;:34;;;;;;;;;;;;;;;;;;;;;9768:90::o;6486:91::-;1876:6;;-1:-1:-1;;;;;1876:6:0;278:10;1876:22;1868:58;;;;-1:-1:-1;;;1868:58:0;;;;;;;:::i;:::-;6550:11:::1;:19:::0;6486:91::o;8862:95::-;1876:6;;-1:-1:-1;;;;;1876:6:0;278:10;1876:22;1868:58;;;;-1:-1:-1;;;1868:58:0;;;;;;;:::i;:::-;3908:13:::1;3847:2;3908;:13;:::i;:::-;3896:25;::::0;:9:::1;:25;:::i;:::-;8919:15;:30:::0;8862:95::o;9613:147::-;1876:6;;-1:-1:-1;;;;;1876:6:0;278:10;1876:22;1868:58;;;;-1:-1:-1;;;1868:58:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9707:35:0;;;::::1;;::::0;;;:24:::1;:35;::::0;;;;:45;;-1:-1:-1;;9707:45:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9613:147::o;1954:227::-;1876:6;;-1:-1:-1;;;;;1876:6:0;278:10;1876:22;1868:58;;;;-1:-1:-1;;;1868:58:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2035:22:0;::::1;2027:64;;;::::0;-1:-1:-1;;;2027:64:0;;6225:2:1;2027:64:0::1;::::0;::::1;6207:21:1::0;6264:2;6244:18;;;6237:30;6303:31;6283:18;;;6276:59;6352:18;;2027:64:0::1;6023:353:1::0;2027:64:0::1;2102:6;:17:::0;;-1:-1:-1;;;;;;2102:17:0::1;-1:-1:-1::0;;;;;2102:17:0;::::1;::::0;;::::1;::::0;;2135:38:::1;::::0;2102:17;;;;2135:38:::1;::::0;2102:6;2135:38:::1;1954:227:::0;:::o;5303:169::-;1876:6;;-1:-1:-1;;;;;1876:6:0;278:10;1876:22;1868:58;;;;-1:-1:-1;;;1868:58:0;;;;;;;:::i;:::-;5388:15:::1;;;;;;;;;-1:-1:-1::0;;;;;5388:15:0::1;-1:-1:-1::0;;;;;5388:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;5370:55:0::1;;5434:4;5441:15;;;;;;;;;-1:-1:-1::0;;;;;5441:15:0::1;-1:-1:-1::0;;;;;5441:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5370:94;::::0;-1:-1:-1;;;;;;5370:94:0::1;::::0;;;;;;-1:-1:-1;;;;;6867:15:1;;;5370:94:0::1;::::0;::::1;6849:34:1::0;6919:15;;6899:18;;;6892:43;6784:18;;5370:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5354:13;:110:::0;;-1:-1:-1;;;;;;5354:110:0::1;-1:-1:-1::0;;;;;5354:110:0;;;::::1;::::0;;;::::1;::::0;;5303:169::o;6876:265::-;-1:-1:-1;;;;;6969:19:0;;;;;;:44;;-1:-1:-1;;;;;;6992:21:0;;;;6969:44;6961:77;;;;-1:-1:-1;;;6961:77:0;;7148:2:1;6961:77:0;;;7130:21:1;7187:2;7167:18;;;7160:30;-1:-1:-1;;;7206:18:1;;;7199:50;7266:18;;6961:77:0;6946:344:1;6961:77:0;-1:-1:-1;;;;;7049:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7101:32;;1361:25:1;;;7101:32:0;;1334:18:1;7101:32:0;;;;;;;6876:265;;;:::o;7269:1585::-;-1:-1:-1;;;;;7357:18:0;;7349:52;;;;-1:-1:-1;;;7349:52:0;;7497:2:1;7349:52:0;;;7479:21:1;7536:2;7516:18;;;7509:30;-1:-1:-1;;;7555:18:1;;;7548:51;7616:18;;7349:52:0;7295:345:1;7349:52:0;-1:-1:-1;;;;;7443:30:0;;7412:12;7443:30;;;:24;:30;;;;;;;;;:62;;-1:-1:-1;;;;;;7477:28:0;;;;;;:24;:28;;;;;;;;7443:62;7439:944;;;-1:-1:-1;7529:1:0;7439:944;;;7571:6;;;;7563:35;;;;-1:-1:-1;;;7563:35:0;;7847:2:1;7563:35:0;;;7829:21:1;7886:2;7866:18;;;7859:30;-1:-1:-1;;;7905:18:1;;;7898:46;7961:18;;7563:35:0;7645:340:1;7563:35:0;7645:11;;7632:10;;:24;;;;:::i;:::-;7617:12;:39;7613:759;;;-1:-1:-1;7664:2:0;7613:759;;;7705:13;;-1:-1:-1;;;;;7705:13:0;;;7697:21;;;;7693:664;;7777:15;;7767:6;7751:13;7761:2;-1:-1:-1;;;;;5962:17:0;5935:7;5962:17;;;:8;:17;;;;;;;5869:118;7751:13;:22;;;;:::i;:::-;:41;;7743:50;;;;;;-1:-1:-1;7823:6:0;;7693:664;;;7865:13;;-1:-1:-1;;;;;7865:13:0;;;7859:19;;;;7855:502;;7944:4;7903:20;5962:17;;;:8;:17;;;;;;4573:2;3991:13;3847:2;3991;:13;:::i;:::-;3982:22;;:6;:22;:::i;:::-;4560:15;;;;:::i;:::-;7977:12;:22;:43;;;;-1:-1:-1;8004:16:0;;;;;;;8003:17;7977:43;7973:271;;;3991:13;3847:2;3991;:13;:::i;:::-;3982:22;;:6;:22;:::i;:::-;8053:12;:25;8049:115;;;3991:13;3847:2;3991;:13;:::i;:::-;3982:22;;:6;:22;:::i;:::-;8111:25;;8049:115;8190:30;8207:12;8190:16;:30::i;:::-;-1:-1:-1;;8273:7:0;;7855:502;;;-1:-1:-1;8336:1:0;7855:502;8393:17;8424:4;8432:2;8424:10;8421:140;;8480:5;8463:13;:6;8472:4;8463:13;:::i;:::-;8462:23;;;;:::i;:::-;8450:35;;8421:140;;;8546:3;8529:13;8538:4;8529:6;:13;:::i;:::-;8528:21;;;;:::i;:::-;8516:33;;8421:140;8571:22;8596:18;8605:9;8596:6;:18;:::i;:::-;-1:-1:-1;;;;;8644:14:0;;;;;;:8;:14;;;;;;8571:43;;-1:-1:-1;8644:23:0;;8661:6;;8644:23;:::i;:::-;-1:-1:-1;;;;;8627:14:0;;;;;;;:8;:14;;;;;;:40;;;;8693:12;;;;;;;:29;;8708:14;;8693:29;:::i;:::-;-1:-1:-1;;;;;8678:12:0;;;;;;:8;:12;;;;;;:44;;;;8776:4;8759:23;;;;:35;;8785:9;;8759:35;:::i;:::-;8750:4;8733:23;;;;:8;:23;;;;;;;;;:61;;;;8812:34;1361:25:1;;;-1:-1:-1;;;;;8812:34:0;;;;;;;;;;1334:18:1;8812:34:0;;;;;;;7338:1516;;;7269:1585;;;:::o;638:190::-;724:7;760:12;752:6;;;;744:29;;;;-1:-1:-1;;;744:29:0;;;;;;;;:::i;:::-;-1:-1:-1;784:9:0;796:5;800:1;796;:5;:::i;:::-;784:17;638:190;-1:-1:-1;;;;;638:190:0:o;9115:492::-;4675:16;:23;;-1:-1:-1;;4675:23:0;;;;;9217:16:::1;::::0;;9231:1:::1;9217:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9217:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9217:16:0::1;9193:40;;9262:4;9244;9249:1;9244:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;9244:23:0::1;;;-1:-1:-1::0;;;;;9244:23:0::1;;;::::0;::::1;9288:42;9278:4;9283:1;9278:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9278:52:0;;::::1;:7;::::0;;::::1;::::0;;;;;:52;9373:15:::1;::::0;9341:62:::1;::::0;9358:4:::1;::::0;9373:15:::1;9391:11:::0;9341:8:::1;:62::i;:::-;9414:15;::::0;9556:2:::1;::::0;9414:185:::1;::::0;-1:-1:-1;;;9414:185:0;;-1:-1:-1;;;;;9414:15:0;;::::1;::::0;:66:::1;::::0;:185:::1;::::0;9495:11;;9414:15:::1;::::0;9537:4;;9556:2;::::1;::::0;9573:15:::1;::::0;9414:185:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4721:16:0;:24;;-1:-1:-1;;4721:24:0;;;-1:-1:-1;;;;9115:492:0: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: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:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2255:247::-;2314:6;2367:2;2355:9;2346:7;2342:23;2338:32;2335:52;;;2383:1;2380;2373:12;2335:52;2422:9;2409:23;2441:31;2466:5;2441:31;:::i;:::-;2491:5;2255:247;-1:-1:-1;;;2255:247:1:o;2507:248::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;-1:-1:-1;;2675:23:1;;;2745:2;2730:18;;;2717:32;;-1:-1:-1;2507:248:1:o;2984:180::-;3043:6;3096:2;3084:9;3075:7;3071:23;3067:32;3064:52;;;3112:1;3109;3102:12;3064:52;-1:-1:-1;3135:23:1;;2984:180;-1:-1:-1;2984:180:1:o;3169:388::-;3237:6;3245;3298:2;3286:9;3277:7;3273:23;3269:32;3266:52;;;3314:1;3311;3304:12;3266:52;3353:9;3340:23;3372:31;3397:5;3372:31;:::i;:::-;3422:5;-1:-1:-1;3479:2:1;3464:18;;3451:32;3492:33;3451:32;3492:33;:::i;:::-;3544:7;3534:17;;;3169:388;;;;;:::o;3562:416::-;3627:6;3635;3688:2;3676:9;3667:7;3663:23;3659:32;3656:52;;;3704:1;3701;3694:12;3656:52;3743:9;3730:23;3762:31;3787:5;3762:31;:::i;:::-;3812:5;-1:-1:-1;3869:2:1;3854:18;;3841:32;3911:15;;3904:23;3892:36;;3882:64;;3942:1;3939;3932:12;3983:127;4044:10;4039:3;4035:20;4032:1;4025:31;4075:4;4072:1;4065:15;4099:4;4096:1;4089:15;4115:422;4204:1;4247:5;4204:1;4261:270;4282:7;4272:8;4269:21;4261:270;;;4341:4;4337:1;4333:6;4329:17;4323:4;4320:27;4317:53;;;4350:18;;:::i;:::-;4400:7;4390:8;4386:22;4383:55;;;4420:16;;;;4383:55;4499:22;;;;4459:15;;;;4261:270;;;4265:3;4115:422;;;;;:::o;4542:806::-;4591:5;4621:8;4611:80;;-1:-1:-1;4662:1:1;4676:5;;4611:80;4710:4;4700:76;;-1:-1:-1;4747:1:1;4761:5;;4700:76;4792:4;4810:1;4805:59;;;;4878:1;4873:130;;;;4785:218;;4805:59;4835:1;4826:10;;4849:5;;;4873:130;4910:3;4900:8;4897:17;4894:43;;;4917:18;;:::i;:::-;-1:-1:-1;;4973:1:1;4959:16;;4988:5;;4785:218;;5087:2;5077:8;5074:16;5068:3;5062:4;5059:13;5055:36;5049:2;5039:8;5036:16;5031:2;5025:4;5022:12;5018:35;5015:77;5012:159;;;-1:-1:-1;5124:19:1;;;5156:5;;5012:159;5203:34;5228:8;5222:4;5203:34;:::i;:::-;5273:6;5269:1;5265:6;5261:19;5252:7;5249:32;5246:58;;;5284:18;;:::i;:::-;5322:20;;4542:806;-1:-1:-1;;;4542:806:1:o;5353:140::-;5411:5;5440:47;5481:4;5471:8;5467:19;5461:4;5440:47;:::i;5498:168::-;5571:9;;;5602;;5619:15;;;5613:22;;5599:37;5589:71;;5640:18;;:::i;5671:347::-;5873:2;5855:21;;;5912:2;5892:18;;;5885:30;5951:25;5946:2;5931:18;;5924:53;6009:2;5994:18;;5671:347::o;6381:251::-;6451:6;6504:2;6492:9;6483:7;6479:23;6475:32;6472:52;;;6520:1;6517;6510:12;6472:52;6552:9;6546:16;6571:31;6596:5;6571:31;:::i;7990:125::-;8055:9;;;8076:10;;;8073:36;;;8089:18;;:::i;8120:217::-;8160:1;8186;8176:132;;8230:10;8225:3;8221:20;8218:1;8211:31;8265:4;8262:1;8255:15;8293:4;8290:1;8283:15;8176:132;-1:-1:-1;8322:9:1;;8120:217::o;8342:128::-;8409:9;;;8430:11;;;8427:37;;;8444:18;;:::i;8607:127::-;8668:10;8663:3;8659:20;8656:1;8649:31;8699:4;8696:1;8689:15;8723:4;8720:1;8713:15;8739:988;9009:4;9057:3;9046:9;9042:19;9088:6;9077:9;9070:25;9114:2;9152:6;9147:2;9136:9;9132:18;9125:34;9195:3;9190:2;9179:9;9175:18;9168:31;9219:6;9254;9248:13;9285:6;9277;9270:22;9323:3;9312:9;9308:19;9301:26;;9362:2;9354:6;9350:15;9336:29;;9383:1;9393:195;9407:6;9404:1;9401:13;9393:195;;;9472:13;;-1:-1:-1;;;;;9468:39:1;9456:52;;9563:15;;;;9528:12;;;;9504:1;9422:9;9393:195;;;-1:-1:-1;;;;;;;9644:32:1;;;;9639:2;9624:18;;9617:60;-1:-1:-1;;;9708:3:1;9693:19;9686:35;9605:3;8739:988;-1:-1:-1;;;8739:988:1:o

Swarm Source

ipfs://9dd1c947f64ee69e66da73f681de2c871c1dc258796688dc780157d83a91b4dc
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.