ETH Price: $3,314.87 (+1.35%)
Gas: 10 Gwei

Token

Telepathy (TELEPATHY)
 

Overview

Max Total Supply

1,000,000,000 TELEPATHY

Holders

61

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
32,159,900.334486366 TELEPATHY

Value
$0.00
0x1029898f7d7f8cef3a347a6d7342cdf42f11532e
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:
TPATHY

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 2024-01-30
*/

// SPDX-License-Identifier: Unlicensed

/**
https://t.me/telepathy_eth
 */

pragma solidity = 0.8.19;

//--- Interface for ERC20 ---//
interface IERC20 {
    function totalSupply() external view returns (uint256);
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    function getOwner() external view returns (address);
    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);
}

//--- Context ---//
abstract contract Context {
    constructor() {
    }

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

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

//--- Ownable ---//
abstract contract Ownable is Context {
    address private _owner;

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

    constructor() {
        _setOwner(_msgSender());
    }

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

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

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

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

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

interface IRouter01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);
    function swapExactETHForTokens(
        uint amountOutMin, 
        address[] calldata path, 
        address to, uint deadline
    ) external payable returns (uint[] memory amounts);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts);
}

interface IRouter02 is IRouter01 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
}

interface IUniswapFactoryV2 {
    event PairCreated(address indexed token0, address indexed token1, address _pairAddress, uint);
    function getPair(address tokenA, address tokenB) external view returns (address _pairAddress);
    function createPair(address tokenA, address tokenB) external returns (address _pairAddress);
}

//--- Contract ---//

contract TPATHY is Context, Ownable, IERC20 {

    string private constant _name = "Telepathy";
    string private constant _symbol = "TELEPATHY";
    uint8 private constant _decimals = 9;

    uint256 public constant _total_supply = 10 ** 18;

    bool private _is_limit_deactive = false;
    uint256 private _buy_fees = 200;
    uint256 private _sell_fees = 200;

    address private _pair_address;
    IRouter02 private _uniswap_router;
    bool private _is_trading_opened = false;
    bool private _swapping;

    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _wallets_with_no_fee;
    mapping (address => bool) private _wallets_lp_provide;
    mapping (address => bool) private _wallets_liq_pairs;
    mapping (address => uint256) private _balances;

    uint256 private constant transfer_fee_ = 0;
    uint256 private constant _denominator = 1_000;
    uint256 private maxwallet_amount_ = 30 * _total_supply / 1000;

    uint256 private constant _swap_threshold = _total_supply / 100_000;
    address payable private _fee_receipient = payable(address(0x543c18D91b238985F4DB2000d7F7CF2B107358a6));
    address public constant dead = 0x000000000000000000000000000000000000dEaD;

    bool private _swap_enabled = true;

    modifier in_swaps() {
        _swapping = true;
        _;
        _swapping = false;
    }

    constructor () {
        _wallets_with_no_fee[msg.sender] = true;
        _wallets_with_no_fee[_fee_receipient] = true;

        if (block.chainid == 56) {
            _uniswap_router = IRouter02(0x10ED43C718714eb63d5aA57B78B54704E256024E);
        } else if (block.chainid == 97) {
            _uniswap_router = IRouter02(0xD99D1c33F9fC3444f8101754aBC46c52416550D1);
        } else if (block.chainid == 1 || block.chainid == 4 || block.chainid == 3) {
            _uniswap_router = IRouter02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        } else if (block.chainid == 42161) {
            _uniswap_router = IRouter02(0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506);
        } else if (block.chainid == 5) {
            _uniswap_router = IRouter02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        } else {
            revert("Chain not valid");
        }
        _wallets_lp_provide[msg.sender] = true;
        _balances[msg.sender] = _total_supply;
        emit Transfer(address(0), msg.sender, _total_supply);

        _pair_address = IUniswapFactoryV2(_uniswap_router.factory()).createPair(_uniswap_router.WETH(), address(this));
        _wallets_liq_pairs[_pair_address] = true;
        _approve(msg.sender, address(_uniswap_router), type(uint256).max);
        _approve(address(this), address(_uniswap_router), type(uint256).max);
    }

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

    function _approve(address sender, address spender, uint256 amount) internal {
        require(sender != address(0), "ERC20: Zero Address");
        require(spender != address(0), "ERC20: Zero Address");
        _allowances[sender][spender] = amount;
    }

    function _transfer(address from, address to, uint256 amount) internal returns (bool) {
        bool take_fee = true;
        require(to != address(0), "ERC20: transfer to the zero address");
        require(from != address(0), "ERC20: transfer from the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");

        if (has_transfer_limits(from, to)) {
            require(_is_trading_opened, "Trading is not enabled");
            if (!_wallets_liq_pairs[to] && from != address(this) && to != address(this) || is_transferring(from, to) && !_is_limit_deactive) {
                require(_balances[to] + amount <= maxwallet_amount_, "maxwallet_amount_ exceed");
            }
        }

        if (is_selling(from, to) && !_swapping && _verify_to_swap_back(from)) {
            uint256 contract_token_balance = _balances[address(this)];
            if (contract_token_balance >= _swap_threshold) {
                if (amount > _swap_threshold) swap_back(contract_token_balance);
            }
        }

        if (_wallets_with_no_fee[from] || _wallets_with_no_fee[to]) {
            take_fee = false;
        }
        uint256 amount_after_fee = (take_fee) ? get_recipient_amount(from, is_buying(from, to), is_selling(from, to), amount) : amount;
        uint256 amount_before_fee = (take_fee) ? amount : (!_is_trading_opened ? amount : 0);
        _balances[from] -= amount_before_fee;
        _balances[to] += amount_after_fee;
        emit Transfer(from, to, amount_after_fee);

        return true;
    }

    function enable_trading() external onlyOwner {
        require(!_is_trading_opened, "Trading already enabled");
        _is_trading_opened = true;
    }

    function remove_taxes_and_limits() external onlyOwner {
        require(!_is_limit_deactive, "Already initialized");
        maxwallet_amount_ = _total_supply;
        _is_limit_deactive = true;
        _buy_fees = 0;
        _sell_fees = 0;
    }

    receive() external payable {}

    function _verify_to_swap_back(address ins) internal view returns (bool) {
        bool can_swap = _swap_enabled && !_wallets_with_no_fee[ins];
        return can_swap;
    }

    function is_buying(address ins, address out) internal view returns (bool) {
        return !_wallets_liq_pairs[out] && _wallets_liq_pairs[ins];
    }

    function is_selling(address ins, address out) internal view returns (bool) {
        return _wallets_liq_pairs[out] && !_wallets_liq_pairs[ins];
    }

    function is_transferring(address ins, address out) internal view returns (bool) {
        return !_wallets_liq_pairs[out] && !_wallets_liq_pairs[ins];
    }

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        if (_allowances[sender][msg.sender] != type(uint256).max) {
            _allowances[sender][msg.sender] -= amount;
        }

        return _transfer(sender, recipient, amount);
    }

    function has_transfer_limits(address ins, address out) internal view returns (bool) {
        return ins != owner() && out != owner() && msg.sender != owner() && !_wallets_lp_provide[ins] && !_wallets_lp_provide[out] && out != address(0) && out != address(this);
    }

    function swap_back(uint256 contract_token_balance) internal in_swaps {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = _uniswap_router.WETH();

        if (_allowances[address(this)][address(_uniswap_router)] != type(uint256).max) {
            _allowances[address(this)][address(_uniswap_router)] = type(uint256).max;
        }

        try _uniswap_router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            contract_token_balance,
            0,
            path,
            address(this),
            block.timestamp
        ) {} catch {
            return;
        }

        if (address(this).balance > 0) {
            _fee_receipient.transfer(address(this).balance);
        }
    }

    function totalSupply() external pure override returns (uint256) {
        if (_total_supply == 0) {
            revert();
        }
        return _total_supply;
    }

    function decimals() external pure override returns (uint8) {
        if (_total_supply == 0) {
            revert();
        }
        return _decimals;
    }

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

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

    function getOwner() external view override returns (address) {
        return owner();
    }

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

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

    function get_recipient_amount(address from, bool is_buy, bool is_sell, uint256 amount) internal returns (uint256) {
        uint256 fee;
        if (is_buy) {
            fee = _buy_fees;
        } else if (is_sell) {
            fee = _sell_fees;
        } else {
            fee = transfer_fee_;
        }
        if (fee == 0) {
            return amount;
        }
        uint256 fee_amount = (amount * fee) / _denominator;
        if (fee_amount > 0) {
            _balances[address(this)] += fee_amount;
            emit Transfer(from, address(this), fee_amount);
        }
        return amount - fee_amount;
    }

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

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":"_total_supply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"dead","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enable_trading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"remove_taxes_and_limits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"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"},{"stateMutability":"payable","type":"receive"}]

60806040526000805460ff60a01b1990811690915560c860018190556002556004805490911690556103e86200003f670de0b6b3a7640000601e6200057b565b6200004b9190620005a7565b600a55600b80546001600160a81b0319167401543c18d91b238985f4db2000d7f7cf2b107358a61790553480156200008257600080fd5b506200008e3362000463565b336000908152600660205260408082208054600160ff199182168117909255600b546001600160a01b03168452919092208054909116909117905546603803620000fe57600480546001600160a01b0319167310ed43c718714eb63d5aa57b78b54704e256024e1790556200022b565b466061036200013357600480546001600160a01b03191673d99d1c33f9fc3444f8101754abc46c52416550d11790556200022b565b4660011480620001435750466004145b806200014f5750466003145b156200018157600480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d1790556200022b565b4661a4b103620001b757600480546001600160a01b031916731b02da8cb0d097eb8d57a175b88c7d8b479975061790556200022b565b46600503620001ec57600480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d1790556200022b565b60405162461bcd60e51b815260206004820152600f60248201526e10da185a5b881b9bdd081d985b1a59608a1b60448201526064015b60405180910390fd5b336000818152600760209081526040808320805460ff1916600117905560098252808320670de0b6b3a76400009081905590519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3600480546040805163c45a015560e01b815290516001600160a01b039092169263c45a01559282820192602092908290030181865afa158015620002d4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002fa9190620005ca565b6001600160a01b031663c9c65396600460009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200035c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003829190620005ca565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201523060248201526044016020604051808303816000875af1158015620003cf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003f59190620005ca565b600380546001600160a01b0319166001600160a01b039283169081179091556000908152600860205260409020805460ff191660011790556004546200044191339116600019620004b3565b6004546200045d9030906001600160a01b0316600019620004b3565b620005fc565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038316620005015760405162461bcd60e51b815260206004820152601360248201527245524332303a205a65726f204164647265737360681b604482015260640162000222565b6001600160a01b0382166200054f5760405162461bcd60e51b815260206004820152601360248201527245524332303a205a65726f204164647265737360681b604482015260640162000222565b6001600160a01b0392831660009081526005602090815260408083209490951682529290925291902055565b8082028115828204841417620005a157634e487b7160e01b600052601160045260246000fd5b92915050565b600082620005c557634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620005dd57600080fd5b81516001600160a01b0381168114620005f557600080fd5b9392505050565b6112f9806200060c6000396000f3fe6080604052600436106101025760003560e01c8063715018a611610095578063a9059cbb11610064578063a9059cbb146102ca578063beb51b57146102ea578063cb3bc15f146102ff578063dd62ed3e14610314578063f2fde38b1461035a57600080fd5b8063715018a614610263578063893d20e81461027a5780638da5cb5b1461027a57806395d89b411461029857600080fd5b8063313ce567116100d1578063313ce567146101c757806336cf7c87146101e35780634d3cfc831461021157806370a082311461022d57600080fd5b806306fdde031461010e578063095ea7b31461015257806318160ddd1461018257806323b872dd146101a757600080fd5b3661010957005b600080fd5b34801561011a57600080fd5b5060408051808201909152600981526854656c65706174687960b81b60208201525b604051610149919061104f565b60405180910390f35b34801561015e57600080fd5b5061017261016d3660046110b2565b61037a565b6040519015158152602001610149565b34801561018e57600080fd5b50670de0b6b3a76400005b604051908152602001610149565b3480156101b357600080fd5b506101726101c23660046110de565b610391565b3480156101d357600080fd5b5060405160098152602001610149565b3480156101ef57600080fd5b506101f961dead81565b6040516001600160a01b039091168152602001610149565b34801561021d57600080fd5b50610199670de0b6b3a764000081565b34801561023957600080fd5b5061019961024836600461111f565b6001600160a01b031660009081526009602052604090205490565b34801561026f57600080fd5b50610278610409565b005b34801561028657600080fd5b506000546001600160a01b03166101f9565b3480156102a457600080fd5b5060408051808201909152600981526854454c45504154485960b81b602082015261013c565b3480156102d657600080fd5b506101726102e53660046110b2565b610448565b3480156102f657600080fd5b5061027861045f565b34801561030b57600080fd5b50610278610502565b34801561032057600080fd5b5061019961032f36600461113c565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561036657600080fd5b5061027861037536600461111f565b61059b565b6000610387338484610636565b5060015b92915050565b6001600160a01b0383166000908152600560209081526040808320338452909152812054600019146103f6576001600160a01b0384166000908152600560209081526040808320338452909152812080548492906103f090849061118b565b90915550505b6104018484846106fa565b949350505050565b6000546001600160a01b0316331461043c5760405162461bcd60e51b81526004016104339061119e565b60405180910390fd5b6104466000610b4d565b565b60006104553384846106fa565b5060019392505050565b6000546001600160a01b031633146104895760405162461bcd60e51b81526004016104339061119e565b600054600160a01b900460ff16156104d95760405162461bcd60e51b8152602060048201526013602482015272105b1c9958591e481a5b9a5d1a585b1a5e9959606a1b6044820152606401610433565b670de0b6b3a7640000600a556000805460ff60a01b1916600160a01b1781556001819055600255565b6000546001600160a01b0316331461052c5760405162461bcd60e51b81526004016104339061119e565b600454600160a01b900460ff16156105865760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720616c726561647920656e61626c65640000000000000000006044820152606401610433565b6004805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146105c55760405162461bcd60e51b81526004016104339061119e565b6001600160a01b03811661062a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610433565b61063381610b4d565b50565b6001600160a01b0383166106825760405162461bcd60e51b815260206004820152601360248201527245524332303a205a65726f204164647265737360681b6044820152606401610433565b6001600160a01b0382166106ce5760405162461bcd60e51b815260206004820152601360248201527245524332303a205a65726f204164647265737360681b6044820152606401610433565b6001600160a01b0392831660009081526005602090815260408083209490951682529290925291902055565b600060016001600160a01b0384166107605760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610433565b6001600160a01b0385166107c45760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610433565b600083116108265760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610433565b6108308585610b9d565b1561096e57600454600160a01b900460ff166108875760405162461bcd60e51b8152602060048201526016602482015275151c98591a5b99c81a5cc81b9bdd08195b98589b195960521b6044820152606401610433565b6001600160a01b03841660009081526008602052604090205460ff161580156108b957506001600160a01b0385163014155b80156108ce57506001600160a01b0384163014155b806108f457506108de8585610c5b565b80156108f45750600054600160a01b900460ff16155b1561096e57600a546001600160a01b0385166000908152600960205260409020546109209085906111d3565b111561096e5760405162461bcd60e51b815260206004820152601860248201527f6d617877616c6c65745f616d6f756e745f2065786365656400000000000000006044820152606401610433565b6109788585610ca0565b801561098e5750600454600160a81b900460ff16155b801561099e575061099e85610ce4565b156109f557306000908152600960205260409020546109c8620186a0670de0b6b3a76400006111e6565b81106109f3576109e3620186a0670de0b6b3a76400006111e6565b8411156109f3576109f381610d1e565b505b6001600160a01b03851660009081526006602052604090205460ff1680610a3457506001600160a01b03841660009081526006602052604090205460ff165b15610a3d575060005b600081610a4a5783610a68565b610a6886610a588888610f3a565b610a628989610ca0565b87610f7e565b9050600082610a9057600454600160a01b900460ff1615610a8a576000610a92565b84610a92565b845b6001600160a01b038816600090815260096020526040812080549293508392909190610abf90849061118b565b90915550506001600160a01b03861660009081526009602052604081208054849290610aec9084906111d3565b92505081905550856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610b3891815260200190565b60405180910390a35060019695505050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600080546001600160a01b03848116911614801590610bca57506000546001600160a01b03838116911614155b8015610be157506000546001600160a01b03163314155b8015610c0657506001600160a01b03831660009081526007602052604090205460ff16155b8015610c2b57506001600160a01b03821660009081526007602052604090205460ff16155b8015610c3f57506001600160a01b03821615155b8015610c5457506001600160a01b0382163014155b9392505050565b6001600160a01b03811660009081526008602052604081205460ff16158015610c54575050506001600160a01b031660009081526008602052604090205460ff161590565b6001600160a01b03811660009081526008602052604081205460ff168015610c54575050506001600160a01b031660009081526008602052604090205460ff161590565b600b546000908190600160a01b900460ff168015610c54575050506001600160a01b031660009081526006602052604090205460ff161590565b6004805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610d6657610d66611208565b60200260200101906001600160a01b031690816001600160a01b031681525050600460009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dfd919061121e565b81600181518110610e1057610e10611208565b6001600160a01b03928316602091820292909201810191909152306000908152600582526040808220600454909416825292909152205460001914610e7a573060009081526005602090815260408083206004546001600160a01b03168452909152902060001990555b6004805460405163791ac94760e01b81526001600160a01b039091169163791ac94791610eb29186916000918791309142910161123b565b600060405180830381600087803b158015610ecc57600080fd5b505af1925050508015610edd575060015b610ee75750610f2a565b4715610f2857600b546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015610f26573d6000803e3d6000fd5b505b505b506004805460ff60a81b19169055565b6001600160a01b03811660009081526008602052604081205460ff16158015610c54575050506001600160a01b031660009081526008602052604090205460ff1690565b6000808415610f905750600154610fa3565b8315610f9f5750600254610fa3565b5060005b80600003610fb45782915050610401565b60006103e8610fc383866112ac565b610fcd91906111e6565b9050801561103a573060009081526009602052604081208054839290610ff49084906111d3565b909155505060405181815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b611044818561118b565b979650505050505050565b600060208083528351808285015260005b8181101561107c57858101830151858201604001528201611060565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461063357600080fd5b600080604083850312156110c557600080fd5b82356110d08161109d565b946020939093013593505050565b6000806000606084860312156110f357600080fd5b83356110fe8161109d565b9250602084013561110e8161109d565b929592945050506040919091013590565b60006020828403121561113157600080fd5b8135610c548161109d565b6000806040838503121561114f57600080fd5b823561115a8161109d565b9150602083013561116a8161109d565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561038b5761038b611175565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8082018082111561038b5761038b611175565b60008261120357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561123057600080fd5b8151610c548161109d565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561128b5784516001600160a01b031683529383019391830191600101611266565b50506001600160a01b03969096166060850152505050608001529392505050565b808202811582820484141761038b5761038b61117556fea264697066735822122008e6b22304ba677506c847280a1d4934dfa847ff1c8edf08d5ba7c016f6c695364736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101025760003560e01c8063715018a611610095578063a9059cbb11610064578063a9059cbb146102ca578063beb51b57146102ea578063cb3bc15f146102ff578063dd62ed3e14610314578063f2fde38b1461035a57600080fd5b8063715018a614610263578063893d20e81461027a5780638da5cb5b1461027a57806395d89b411461029857600080fd5b8063313ce567116100d1578063313ce567146101c757806336cf7c87146101e35780634d3cfc831461021157806370a082311461022d57600080fd5b806306fdde031461010e578063095ea7b31461015257806318160ddd1461018257806323b872dd146101a757600080fd5b3661010957005b600080fd5b34801561011a57600080fd5b5060408051808201909152600981526854656c65706174687960b81b60208201525b604051610149919061104f565b60405180910390f35b34801561015e57600080fd5b5061017261016d3660046110b2565b61037a565b6040519015158152602001610149565b34801561018e57600080fd5b50670de0b6b3a76400005b604051908152602001610149565b3480156101b357600080fd5b506101726101c23660046110de565b610391565b3480156101d357600080fd5b5060405160098152602001610149565b3480156101ef57600080fd5b506101f961dead81565b6040516001600160a01b039091168152602001610149565b34801561021d57600080fd5b50610199670de0b6b3a764000081565b34801561023957600080fd5b5061019961024836600461111f565b6001600160a01b031660009081526009602052604090205490565b34801561026f57600080fd5b50610278610409565b005b34801561028657600080fd5b506000546001600160a01b03166101f9565b3480156102a457600080fd5b5060408051808201909152600981526854454c45504154485960b81b602082015261013c565b3480156102d657600080fd5b506101726102e53660046110b2565b610448565b3480156102f657600080fd5b5061027861045f565b34801561030b57600080fd5b50610278610502565b34801561032057600080fd5b5061019961032f36600461113c565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561036657600080fd5b5061027861037536600461111f565b61059b565b6000610387338484610636565b5060015b92915050565b6001600160a01b0383166000908152600560209081526040808320338452909152812054600019146103f6576001600160a01b0384166000908152600560209081526040808320338452909152812080548492906103f090849061118b565b90915550505b6104018484846106fa565b949350505050565b6000546001600160a01b0316331461043c5760405162461bcd60e51b81526004016104339061119e565b60405180910390fd5b6104466000610b4d565b565b60006104553384846106fa565b5060019392505050565b6000546001600160a01b031633146104895760405162461bcd60e51b81526004016104339061119e565b600054600160a01b900460ff16156104d95760405162461bcd60e51b8152602060048201526013602482015272105b1c9958591e481a5b9a5d1a585b1a5e9959606a1b6044820152606401610433565b670de0b6b3a7640000600a556000805460ff60a01b1916600160a01b1781556001819055600255565b6000546001600160a01b0316331461052c5760405162461bcd60e51b81526004016104339061119e565b600454600160a01b900460ff16156105865760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720616c726561647920656e61626c65640000000000000000006044820152606401610433565b6004805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146105c55760405162461bcd60e51b81526004016104339061119e565b6001600160a01b03811661062a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610433565b61063381610b4d565b50565b6001600160a01b0383166106825760405162461bcd60e51b815260206004820152601360248201527245524332303a205a65726f204164647265737360681b6044820152606401610433565b6001600160a01b0382166106ce5760405162461bcd60e51b815260206004820152601360248201527245524332303a205a65726f204164647265737360681b6044820152606401610433565b6001600160a01b0392831660009081526005602090815260408083209490951682529290925291902055565b600060016001600160a01b0384166107605760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610433565b6001600160a01b0385166107c45760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610433565b600083116108265760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610433565b6108308585610b9d565b1561096e57600454600160a01b900460ff166108875760405162461bcd60e51b8152602060048201526016602482015275151c98591a5b99c81a5cc81b9bdd08195b98589b195960521b6044820152606401610433565b6001600160a01b03841660009081526008602052604090205460ff161580156108b957506001600160a01b0385163014155b80156108ce57506001600160a01b0384163014155b806108f457506108de8585610c5b565b80156108f45750600054600160a01b900460ff16155b1561096e57600a546001600160a01b0385166000908152600960205260409020546109209085906111d3565b111561096e5760405162461bcd60e51b815260206004820152601860248201527f6d617877616c6c65745f616d6f756e745f2065786365656400000000000000006044820152606401610433565b6109788585610ca0565b801561098e5750600454600160a81b900460ff16155b801561099e575061099e85610ce4565b156109f557306000908152600960205260409020546109c8620186a0670de0b6b3a76400006111e6565b81106109f3576109e3620186a0670de0b6b3a76400006111e6565b8411156109f3576109f381610d1e565b505b6001600160a01b03851660009081526006602052604090205460ff1680610a3457506001600160a01b03841660009081526006602052604090205460ff165b15610a3d575060005b600081610a4a5783610a68565b610a6886610a588888610f3a565b610a628989610ca0565b87610f7e565b9050600082610a9057600454600160a01b900460ff1615610a8a576000610a92565b84610a92565b845b6001600160a01b038816600090815260096020526040812080549293508392909190610abf90849061118b565b90915550506001600160a01b03861660009081526009602052604081208054849290610aec9084906111d3565b92505081905550856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610b3891815260200190565b60405180910390a35060019695505050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600080546001600160a01b03848116911614801590610bca57506000546001600160a01b03838116911614155b8015610be157506000546001600160a01b03163314155b8015610c0657506001600160a01b03831660009081526007602052604090205460ff16155b8015610c2b57506001600160a01b03821660009081526007602052604090205460ff16155b8015610c3f57506001600160a01b03821615155b8015610c5457506001600160a01b0382163014155b9392505050565b6001600160a01b03811660009081526008602052604081205460ff16158015610c54575050506001600160a01b031660009081526008602052604090205460ff161590565b6001600160a01b03811660009081526008602052604081205460ff168015610c54575050506001600160a01b031660009081526008602052604090205460ff161590565b600b546000908190600160a01b900460ff168015610c54575050506001600160a01b031660009081526006602052604090205460ff161590565b6004805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610d6657610d66611208565b60200260200101906001600160a01b031690816001600160a01b031681525050600460009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dfd919061121e565b81600181518110610e1057610e10611208565b6001600160a01b03928316602091820292909201810191909152306000908152600582526040808220600454909416825292909152205460001914610e7a573060009081526005602090815260408083206004546001600160a01b03168452909152902060001990555b6004805460405163791ac94760e01b81526001600160a01b039091169163791ac94791610eb29186916000918791309142910161123b565b600060405180830381600087803b158015610ecc57600080fd5b505af1925050508015610edd575060015b610ee75750610f2a565b4715610f2857600b546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015610f26573d6000803e3d6000fd5b505b505b506004805460ff60a81b19169055565b6001600160a01b03811660009081526008602052604081205460ff16158015610c54575050506001600160a01b031660009081526008602052604090205460ff1690565b6000808415610f905750600154610fa3565b8315610f9f5750600254610fa3565b5060005b80600003610fb45782915050610401565b60006103e8610fc383866112ac565b610fcd91906111e6565b9050801561103a573060009081526009602052604081208054839290610ff49084906111d3565b909155505060405181815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b611044818561118b565b979650505050505050565b600060208083528351808285015260005b8181101561107c57858101830151858201604001528201611060565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461063357600080fd5b600080604083850312156110c557600080fd5b82356110d08161109d565b946020939093013593505050565b6000806000606084860312156110f357600080fd5b83356110fe8161109d565b9250602084013561110e8161109d565b929592945050506040919091013590565b60006020828403121561113157600080fd5b8135610c548161109d565b6000806040838503121561114f57600080fd5b823561115a8161109d565b9150602083013561116a8161109d565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561038b5761038b611175565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8082018082111561038b5761038b611175565b60008261120357634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561123057600080fd5b8151610c548161109d565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561128b5784516001600160a01b031683529383019391830191600101611266565b50506001600160a01b03969096166060850152505050608001529392505050565b808202811582820484141761038b5761038b61117556fea264697066735822122008e6b22304ba677506c847280a1d4934dfa847ff1c8edf08d5ba7c016f6c695364736f6c63430008130033

Deployed Bytecode Sourcemap

4712:9093:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12503:94;;;;;;;;;;-1:-1:-1;12584:5:0;;;;;;;;;;;;-1:-1:-1;;;12584:5:0;;;;12503:94;;;;;;;:::i;:::-;;;;;;;;7517:161;;;;;;;;;;-1:-1:-1;7517:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;7517:161:0;1023:187:1;12046:172:0;;;;;;;;;;-1:-1:-1;4952:8:0;12046:172;;;1361:25:1;;;1349:2;1334:18;12046:172:0;1215:177:1;10668:306:0;;;;;;;;;;-1:-1:-1;10668:306:0;;;;;:::i;:::-;;:::i;12226:163::-;;;;;;;;;;-1:-1:-1;12226:163:0;;4902:1;2000:36:1;;1988:2;1973:18;12226:163:0;1858:184:1;5911:73:0;;;;;;;;;;;;5942:42;5911:73;;;;;-1:-1:-1;;;;;2211:32:1;;;2193:51;;2181:2;2166:18;5911:73:0;2047:203:1;4912:48:0;;;;;;;;;;;;4952:8;4912:48;;12862:119;;;;;;;;;;-1:-1:-1;12862:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;12955:18:0;12928:7;12955:18;;;:9;:18;;;;;;;12862:119;1845:94;;;;;;;;;;;;;:::i;:::-;;12605;;;;;;;;;;-1:-1:-1;12657:7:0;1695:6;-1:-1:-1;;;;;1695:6:0;12605:94;;12397:98;;;;;;;;;;-1:-1:-1;12480:7:0;;;;;;;;;;;;-1:-1:-1;;;12480:7:0;;;;12397:98;;13637:165;;;;;;;;;;-1:-1:-1;13637:165:0;;;;;:::i;:::-;;:::i;9701:253::-;;;;;;;;;;;;;:::i;9538:155::-;;;;;;;;;;;;;:::i;12707:147::-;;;;;;;;;;-1:-1:-1;12707:147:0;;;;;:::i;:::-;-1:-1:-1;;;;;12818:19:0;;;12791:7;12818:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;12707:147;1947:192;;;;;;;;;;-1:-1:-1;1947:192:0;;;;;:::i;:::-;;:::i;7517:161::-;7594:4;7611:37;7620:10;7632:7;7641:6;7611:8;:37::i;:::-;-1:-1:-1;7666:4:0;7517:161;;;;;:::o;10668:306::-;-1:-1:-1;;;;;10789:19:0;;10768:4;10789:19;;;:11;:19;;;;;;;;10809:10;10789:31;;;;;;;;-1:-1:-1;;10789:52:0;10785:126;;-1:-1:-1;;;;;10858:19:0;;;;;;:11;:19;;;;;;;;10878:10;10858:31;;;;;;;:41;;10893:6;;10858:19;:41;;10893:6;;10858:41;:::i;:::-;;;;-1:-1:-1;;10785:126:0;10930:36;10940:6;10948:9;10959:6;10930:9;:36::i;:::-;10923:43;10668:306;-1:-1:-1;;;;10668:306:0:o;1845:94::-;1668:7;1695:6;-1:-1:-1;;;;;1695:6:0;1230:10;1757:23;1749:68;;;;-1:-1:-1;;;1749:68:0;;;;;;;:::i;:::-;;;;;;;;;1910:21:::1;1928:1;1910:9;:21::i;:::-;1845:94::o:0;13637:165::-;13715:4;13732:40;13742:10;13754:9;13765:6;13732:9;:40::i;:::-;-1:-1:-1;13790:4:0;;13637:165;-1:-1:-1;;;13637:165:0:o;9701:253::-;1668:7;1695:6;-1:-1:-1;;;;;1695:6:0;1230:10;1757:23;1749:68;;;;-1:-1:-1;;;1749:68:0;;;;;;;:::i;:::-;9775:18:::1;::::0;-1:-1:-1;;;9775:18:0;::::1;;;9774:19;9766:51;;;::::0;-1:-1:-1;;;9766:51:0;;3728:2:1;9766:51:0::1;::::0;::::1;3710:21:1::0;3767:2;3747:18;;;3740:30;-1:-1:-1;;;3786:18:1;;;3779:49;3845:18;;9766:51:0::1;3526:343:1::0;9766:51:0::1;4952:8;9828:17;:33:::0;9872:18:::1;:25:::0;;-1:-1:-1;;;;9872:25:0::1;-1:-1:-1::0;;;9872:25:0::1;::::0;;9893:4:::1;9908:13:::0;;;9932:10:::1;:14:::0;9701:253::o;9538:155::-;1668:7;1695:6;-1:-1:-1;;;;;1695:6:0;1230:10;1757:23;1749:68;;;;-1:-1:-1;;;1749:68:0;;;;;;;:::i;:::-;9603:18:::1;::::0;-1:-1:-1;;;9603:18:0;::::1;;;9602:19;9594:55;;;::::0;-1:-1:-1;;;9594:55:0;;4076:2:1;9594:55:0::1;::::0;::::1;4058:21:1::0;4115:2;4095:18;;;4088:30;4154:25;4134:18;;;4127:53;4197:18;;9594:55:0::1;3874:347:1::0;9594:55:0::1;9660:18;:25:::0;;-1:-1:-1;;;;9660:25:0::1;-1:-1:-1::0;;;9660:25:0::1;::::0;;9538:155::o;1947:192::-;1668:7;1695:6;-1:-1:-1;;;;;1695:6:0;1230:10;1757:23;1749:68;;;;-1:-1:-1;;;1749:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2036:22:0;::::1;2028:73;;;::::0;-1:-1:-1;;;2028:73:0;;4428:2:1;2028:73:0::1;::::0;::::1;4410:21:1::0;4467:2;4447:18;;;4440:30;4506:34;4486:18;;;4479:62;-1:-1:-1;;;4557:18:1;;;4550:36;4603:19;;2028:73:0::1;4226:402:1::0;2028:73:0::1;2112:19;2122:8;2112:9;:19::i;:::-;1947:192:::0;:::o;7686:259::-;-1:-1:-1;;;;;7781:20:0;;7773:52;;;;-1:-1:-1;;;7773:52:0;;4835:2:1;7773:52:0;;;4817:21:1;4874:2;4854:18;;;4847:30;-1:-1:-1;;;4893:18:1;;;4886:49;4952:18;;7773:52:0;4633:343:1;7773:52:0;-1:-1:-1;;;;;7844:21:0;;7836:53;;;;-1:-1:-1;;;7836:53:0;;4835:2:1;7836:53:0;;;4817:21:1;4874:2;4854:18;;;4847:30;-1:-1:-1;;;4893:18:1;;;4886:49;4952:18;;7836:53:0;4633:343:1;7836:53:0;-1:-1:-1;;;;;7900:19:0;;;;;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;:37;7686:259::o;7953:1577::-;8032:4;8065;-1:-1:-1;;;;;8088:16:0;;8080:64;;;;-1:-1:-1;;;8080:64:0;;5183:2:1;8080:64:0;;;5165:21:1;5222:2;5202:18;;;5195:30;5261:34;5241:18;;;5234:62;-1:-1:-1;;;5312:18:1;;;5305:33;5355:19;;8080:64:0;4981:399:1;8080:64:0;-1:-1:-1;;;;;8163:18:0;;8155:68;;;;-1:-1:-1;;;8155:68:0;;5587:2:1;8155:68:0;;;5569:21:1;5626:2;5606:18;;;5599:30;5665:34;5645:18;;;5638:62;-1:-1:-1;;;5716:18:1;;;5709:35;5761:19;;8155:68:0;5385:401:1;8155:68:0;8251:1;8242:6;:10;8234:64;;;;-1:-1:-1;;;8234:64:0;;5993:2:1;8234:64:0;;;5975:21:1;6032:2;6012:18;;;6005:30;6071:34;6051:18;;;6044:62;-1:-1:-1;;;6122:18:1;;;6115:39;6171:19;;8234:64:0;5791:405:1;8234:64:0;8315:29;8335:4;8341:2;8315:19;:29::i;:::-;8311:373;;;8369:18;;-1:-1:-1;;;8369:18:0;;;;8361:53;;;;-1:-1:-1;;;8361:53:0;;6403:2:1;8361:53:0;;;6385:21:1;6442:2;6422:18;;;6415:30;-1:-1:-1;;;6461:18:1;;;6454:52;6523:18;;8361:53:0;6201:346:1;8361:53:0;-1:-1:-1;;;;;8434:22:0;;;;;;:18;:22;;;;;;;;8433:23;:48;;;;-1:-1:-1;;;;;;8460:21:0;;8476:4;8460:21;;8433:48;:71;;;;-1:-1:-1;;;;;;8485:19:0;;8499:4;8485:19;;8433:71;:123;;;;8508:25;8524:4;8530:2;8508:15;:25::i;:::-;:48;;;;-1:-1:-1;8538:18:0;;-1:-1:-1;;;8538:18:0;;;;8537:19;8508:48;8429:244;;;8611:17;;-1:-1:-1;;;;;8585:13:0;;;;;;:9;:13;;;;;;:22;;8601:6;;8585:22;:::i;:::-;:43;;8577:80;;;;-1:-1:-1;;;8577:80:0;;6884:2:1;8577:80:0;;;6866:21:1;6923:2;6903:18;;;6896:30;6962:26;6942:18;;;6935:54;7006:18;;8577:80:0;6682:348:1;8577:80:0;8700:20;8711:4;8717:2;8700:10;:20::i;:::-;:34;;;;-1:-1:-1;8725:9:0;;-1:-1:-1;;;8725:9:0;;;;8724:10;8700:34;:64;;;;;8738:26;8759:4;8738:20;:26::i;:::-;8696:313;;;8832:4;8781:30;8814:24;;;:9;:24;;;;;;5772:23;5788:7;4952:8;5772:23;:::i;:::-;8857:22;:41;8853:145;;5772:23;5788:7;4952:8;5772:23;:::i;:::-;8923:6;:24;8919:63;;;8949:33;8959:22;8949:9;:33::i;:::-;8766:243;8696:313;-1:-1:-1;;;;;9025:26:0;;;;;;:20;:26;;;;;;;;;:54;;-1:-1:-1;;;;;;9055:24:0;;;;;;:20;:24;;;;;;;;9025:54;9021:103;;;-1:-1:-1;9107:5:0;9021:103;9134:24;9162:8;9161:99;;9254:6;9161:99;;;9174:77;9195:4;9201:19;9211:4;9217:2;9201:9;:19::i;:::-;9222:20;9233:4;9239:2;9222:10;:20::i;:::-;9244:6;9174:20;:77::i;:::-;9134:126;;9271:25;9300:8;9299:56;;9323:18;;-1:-1:-1;;;9323:18:0;;;;9322:19;:32;;9353:1;9299:56;;9322:32;9344:6;9299:56;;;9312:6;9299:56;-1:-1:-1;;;;;9366:15:0;;;;;;:9;:15;;;;;:36;;9271:84;;-1:-1:-1;9271:84:0;;9366:15;;;:36;;9271:84;;9366:36;:::i;:::-;;;;-1:-1:-1;;;;;;;9413:13:0;;;;;;:9;:13;;;;;:33;;9430:16;;9413:13;:33;;9430:16;;9413:33;:::i;:::-;;;;;;;;9477:2;-1:-1:-1;;;;;9462:36:0;9471:4;-1:-1:-1;;;;;9462:36:0;;9481:16;9462:36;;;;1361:25:1;;1349:2;1334:18;;1215:177;9462:36:0;;;;;;;;-1:-1:-1;9518:4:0;;7953:1577;-1:-1:-1;;;;;;7953:1577:0:o;2147:173::-;2203:16;2222:6;;-1:-1:-1;;;;;2239:17:0;;;-1:-1:-1;;;;;;2239:17:0;;;;;;2272:40;;2222:6;;;;;;;2272:40;;2203:16;2272:40;2192:128;2147:173;:::o;10982:270::-;11060:4;1695:6;;-1:-1:-1;;;;;11084:14:0;;;1695:6;;11084:14;;;;:32;;-1:-1:-1;1668:7:0;1695:6;-1:-1:-1;;;;;11102:14:0;;;1695:6;;11102:14;;11084:32;:57;;;;-1:-1:-1;1668:7:0;1695:6;-1:-1:-1;;;;;1695:6:0;11120:10;:21;;11084:57;:86;;;;-1:-1:-1;;;;;;11146:24:0;;;;;;:19;:24;;;;;;;;11145:25;11084:86;:115;;;;-1:-1:-1;;;;;;11175:24:0;;;;;;:19;:24;;;;;;;;11174:25;11084:115;:136;;;;-1:-1:-1;;;;;;11203:17:0;;;;11084:136;:160;;;;-1:-1:-1;;;;;;11224:20:0;;11239:4;11224:20;;11084:160;11077:167;10982:270;-1:-1:-1;;;10982:270:0:o;10502:158::-;-1:-1:-1;;;;;10601:23:0;;10576:4;10601:23;;;:18;:23;;;;;;;;10600:24;:52;;;;-1:-1:-1;;;;;;;;10629:23:0;;;;;:18;:23;;;;;;;;10628:24;;10502:158::o;10342:152::-;-1:-1:-1;;;;;10435:23:0;;10411:4;10435:23;;;:18;:23;;;;;;;;:51;;;;-1:-1:-1;;;;;;;;10463:23:0;;;;;:18;:23;;;;;;;;10462:24;;10342:152::o;9999:176::-;10098:13;;10065:4;;;;-1:-1:-1;;;10098:13:0;;;;:43;;;;-1:-1:-1;;;;;;;;10116:25:0;;;;;:20;:25;;;;;;;;10115:26;;9999:176::o;11260:778::-;6066:9;:16;;-1:-1:-1;;;;6066:16:0;-1:-1:-1;;;6066:16:0;;;11364::::1;::::0;;11378:1:::1;11364:16:::0;;;;;::::1;::::0;;-1:-1:-1;;11364:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11364:16:0::1;11340:40;;11409:4;11391;11396:1;11391:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;11391:23:0::1;;;-1:-1:-1::0;;;;;11391:23:0::1;;;::::0;::::1;11435:15;;;;;;;;;-1:-1:-1::0;;;;;11435:15:0::1;-1:-1:-1::0;;;;;11435:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11425:4;11430:1;11425:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11425:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:32;;;;11494:4:::1;11474:26;::::0;;;:11:::1;:26:::0;;;;;;11509:15:::1;::::0;;;::::1;11474:52:::0;;;;;;;;-1:-1:-1;;11474:73:0::1;11470:178;;11584:4;11564:26;::::0;;;:11:::1;:26;::::0;;;;;;;11599:15:::1;::::0;-1:-1:-1;;;;;11599:15:0::1;11564:52:::0;;;;;;;-1:-1:-1;;11564:72:0;;11470:178:::1;11664:15;::::0;;:207:::1;::::0;-1:-1:-1;;;11664:207:0;;-1:-1:-1;;;;;11664:15:0;;::::1;::::0;:66:::1;::::0;:207:::1;::::0;11745:22;;11664:15:::1;::::0;11798:4;;11825::::1;::::0;11845:15:::1;::::0;11664:207:::1;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;11660:254;;11896:7;;;11660:254;11930:21;:25:::0;11926:105:::1;;11972:15;::::0;:47:::1;::::0;-1:-1:-1;;;;;11972:15:0;;::::1;::::0;11997:21:::1;11972:47:::0;::::1;;;::::0;:15:::1;:47:::0;:15;:47;11997:21;11972:15;:47;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;11926:105;11329:709;6093:1;-1:-1:-1::0;6105:9:0;:17;;-1:-1:-1;;;;6105:17:0;;;11260:778::o;10183:151::-;-1:-1:-1;;;;;10276:23:0;;10251:4;10276:23;;;:18;:23;;;;;;;;10275:24;:51;;;;-1:-1:-1;;;;;;;;10303:23:0;;;;;:18;:23;;;;;;;;;10183:151::o;12989:640::-;13094:7;13114:11;13140:6;13136:168;;;-1:-1:-1;13169:9:0;;13136:168;;;13200:7;13196:108;;;-1:-1:-1;13230:10:0;;13196:108;;;-1:-1:-1;5599:1:0;13196:108;13318:3;13325:1;13318:8;13314:54;;13350:6;13343:13;;;;;13314:54;13378:18;5647:5;13400:12;13409:3;13400:6;:12;:::i;:::-;13399:29;;;;:::i;:::-;13378:50;-1:-1:-1;13443:14:0;;13439:146;;13492:4;13474:24;;;;:9;:24;;;;;:38;;13502:10;;13474:24;:38;;13502:10;;13474:38;:::i;:::-;;;;-1:-1:-1;;13532:41:0;;1361:25:1;;;13555:4:0;;-1:-1:-1;;;;;13532:41:0;;;;;1349:2:1;1334:18;13532:41:0;;;;;;;13439:146;13602:19;13611:10;13602:6;:19;:::i;:::-;13595:26;12989:640;-1:-1:-1;;;;;;;12989:640: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;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:128;3099:9;;;3120:11;;;3117:37;;;3134:18;;:::i;3165:356::-;3367:2;3349:21;;;3386:18;;;3379:30;3445:34;3440:2;3425:18;;3418:62;3512:2;3497:18;;3165:356::o;6552:125::-;6617:9;;;6638:10;;;6635:36;;;6651:18;;:::i;7035:217::-;7075:1;7101;7091:132;;7145:10;7140:3;7136:20;7133:1;7126:31;7180:4;7177:1;7170:15;7208:4;7205:1;7198:15;7091:132;-1:-1:-1;7237:9:1;;7035:217::o;7389:127::-;7450:10;7445:3;7441:20;7438:1;7431:31;7481:4;7478:1;7471:15;7505:4;7502:1;7495:15;7521:251;7591:6;7644:2;7632:9;7623:7;7619:23;7615:32;7612:52;;;7660:1;7657;7650:12;7612:52;7692:9;7686:16;7711:31;7736:5;7711:31;:::i;7777:980::-;8039:4;8087:3;8076:9;8072:19;8118:6;8107:9;8100:25;8144:2;8182:6;8177:2;8166:9;8162:18;8155:34;8225:3;8220:2;8209:9;8205:18;8198:31;8249:6;8284;8278:13;8315:6;8307;8300:22;8353:3;8342:9;8338:19;8331:26;;8392:2;8384:6;8380:15;8366:29;;8413:1;8423:195;8437:6;8434:1;8431:13;8423:195;;;8502:13;;-1:-1:-1;;;;;8498:39:1;8486:52;;8593:15;;;;8558:12;;;;8534:1;8452:9;8423:195;;;-1:-1:-1;;;;;;;8674:32:1;;;;8669:2;8654:18;;8647:60;-1:-1:-1;;;8738:3:1;8723:19;8716:35;8635:3;7777:980;-1:-1:-1;;;7777:980:1:o;8762:168::-;8835:9;;;8866;;8883:15;;;8877:22;;8863:37;8853:71;;8904:18;;:::i

Swarm Source

ipfs://08e6b22304ba677506c847280a1d4934dfa847ff1c8edf08d5ba7c016f6c6953
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.