ETH Price: $3,382.01 (-1.69%)
Gas: 2 Gwei

Token

更适合中国人体质的比特币 THE CHINESE BITCOIN IS 比特币 (比特币)
 

Overview

Max Total Supply

1,300,000,000 比特币

Holders

36

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
OKX DEX: Aggregation Router
Balance
1,077.720638350471337876 比特币

Value
$0.00
0x3b3ae790df4f312e745d270119c6052904fb6790
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:
ERC20

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-08-05
*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.4;

/*

更适合中国宝宝体质的比特币
THE CHINESE BITCOIN IS 比特币


 * Twitter : https://twitter.com/ChineseBITCOINE
 * Telegram : https://t.me/chinesebitcoinerc
*/

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

    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;

    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

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

abstract contract Ownable {
    address internal _owner;

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

    constructor () {
        address msgSender = msg.sender;
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

    modifier onlyOwner() {
        require(_owner == msg.sender, "you are not owner");
        _;
    }

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

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

contract ERC20 is IERC20, Ownable {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;

    address private fundAddress;

    string private _name;
    string private _symbol;
    uint8 private _decimals;

    mapping(address => bool) public _isExcludeFromFee;
    
    uint256 private _totalSupply;

    IUniswapRouter public _uniswapRouter;

    mapping(address => bool) public isMarketPair;
    bool private inSwap;

    uint256 private constant MAX = ~uint256(0);

    address public _uniswapPair;

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor (){

        _name = unicode"更适合中国人体质的比特币 THE CHINESE BITCOIN IS 比特币";
        _symbol = unicode"比特币";
        _decimals = 18;
        uint256 Supply = 1300000000;

        _totalSupply = Supply * 10 ** _decimals;

        address receiveAddr = msg.sender;
        _balances[receiveAddr] = _totalSupply;
        emit Transfer(address(0), receiveAddr, _totalSupply);

        fundAddress = msg.sender;

        _isExcludeFromFee[address(this)] = true;
        _isExcludeFromFee[receiveAddr] = true;
        _isExcludeFromFee[fundAddress] = true;

        IUniswapRouter swapRouter = IUniswapRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _uniswapRouter = swapRouter;
        _allowances[address(this)][address(swapRouter)] = MAX;

        IUniswapFactory swapFactory = IUniswapFactory(swapRouter.factory());
        _uniswapPair = swapFactory.createPair(address(this), swapRouter.WETH());

        isMarketPair[_uniswapPair] = true;
        IERC20(_uniswapRouter.WETH()).approve(
            address(address(_uniswapRouter)),
            ~uint256(0)
        );
        _isExcludeFromFee[address(swapRouter)] = true;

    }

    function setFundAddr(
        address newAddr
    ) public onlyOwner{
        fundAddress = newAddr;
    }

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

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

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

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

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        if (_allowances[sender][msg.sender] != MAX) {
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender] - amount;
        }
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] -= amount;
        _balances[recipient] += amount;
        emit Transfer(sender, recipient, amount);
        return true;
    }

    uint256 public _buyCount=0;
    uint256 private _initialBuyTax=20;
    uint256 private _initialSellTax=20;
    uint256 private _finalBuyTax=1;
    uint256 private _finalSellTax=1;
    uint256 private _reduceBuyTaxAt=10;
    uint256 private _reduceSellTaxAt=10;
    uint256 private _preventSwapBefore=10;

    function recuseTax(
        uint256 newBuy,
        uint256 newSell,
        uint256 newReduceBuy,
        uint256 newReduceSell,
        uint256 newPreventSwapBefore
    ) public onlyOwner {
        _finalBuyTax = newBuy;
        _finalSellTax = newSell;
        _reduceBuyTaxAt = newReduceBuy;
        _reduceSellTaxAt = newReduceSell;
        _preventSwapBefore = newPreventSwapBefore;
    }

    bool public remainHolder = true;
    function changeRemain() public onlyOwner{
        remainHolder = !remainHolder;
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        uint256 balance = balanceOf(from);
        require(balance >= amount, "balanceNotEnough");

        if (inSwap){
            _basicTransfer(from, to, amount);
            return;
        }

        bool takeFee;

        if (isMarketPair[to] && !inSwap && !_isExcludeFromFee[from] && !_isExcludeFromFee[to] && _buyCount > _preventSwapBefore) {
            uint256 _numSellToken = amount;
            if (_numSellToken > balanceOf(address(this))){
                _numSellToken = _balances[address(this)];
            }
            if (_numSellToken > 0){
                swapTokenForETH(_numSellToken);
            }
        }

        if (!_isExcludeFromFee[from] && !_isExcludeFromFee[to] && !inSwap) {
            takeFee = true;
            
            // buyCount
            if (isMarketPair[from] && to != address(_uniswapRouter) && !_isExcludeFromFee[to]) {
                _buyCount++;
            }

            // remainHolder
            if (remainHolder && amount == balance) {
                amount = amount - (amount / 10000);
            }

        }

        _transferToken(from, to, amount, takeFee);
    }

    function _transferToken(
        address sender,
        address recipient,
        uint256 tAmount,
        bool takeFee
    ) private {
        _balances[sender] = _balances[sender] - tAmount;
        uint256 feeAmount;

        if (takeFee) {
            uint256 taxFee;
            if (isMarketPair[recipient]) {
                taxFee = _buyCount > _reduceSellTaxAt ? _finalSellTax : _initialSellTax;
            } else if (isMarketPair[sender]) {
                taxFee = _buyCount > _reduceBuyTaxAt ? _finalBuyTax : _initialBuyTax;
            }
            uint256 swapAmount = tAmount * taxFee / 100;
            if (swapAmount > 0) {
                feeAmount += swapAmount;
                _balances[address(this)] = _balances[address(this)] + swapAmount;
                emit Transfer(sender, address(this), swapAmount);
            }
        }

        _balances[recipient] = _balances[recipient] + (tAmount - feeAmount);
        emit Transfer(sender, recipient, tAmount - feeAmount);

    }

    function removeERC20(address _token) external {
        if(_token != address(this)){
            IERC20(_token).transfer(fundAddress, IERC20(_token).balanceOf(address(this)));
            payable(fundAddress).transfer(address(this).balance);
        }
    }

    function swapTokenForETH(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = _uniswapRouter.WETH();
        try _uniswapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        ) {} catch {}

        uint256 _bal = address(this).balance;
        if (_bal > 0){
            payable(fundAddress).transfer(_bal);
        }
    }

    function setFeeExclude(address account, bool value) public onlyOwner{
        _isExcludeFromFee[account] = value;
    }

    receive() external payable {}
}

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":"_buyCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludeFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_uniswapRouter","outputs":[{"internalType":"contract IUniswapRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"changeRemain","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuy","type":"uint256"},{"internalType":"uint256","name":"newSell","type":"uint256"},{"internalType":"uint256","name":"newReduceBuy","type":"uint256"},{"internalType":"uint256","name":"newReduceSell","type":"uint256"},{"internalType":"uint256","name":"newPreventSwapBefore","type":"uint256"}],"name":"recuseTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"remainHolder","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"name":"removeERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setFeeExclude","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddr","type":"address"}],"name":"setFundAddr","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526000600c556014600d819055600e8190556001600f8190556010819055600a60118190556012819055601355815460ff19161790553480156200004657600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060405180608001604052806045815260200162001bca604591398051620000b891600491602090910190620004ec565b5060408051808201909152600980825268e6af94e789b9e5b88160b81b6020909201918252620000eb91600591620004ec565b506006805460ff19166012908117909155634d7c6d00906200010f90600a6200062d565b6200011b9082620006ee565b600881905533600081815260016020908152604080832085905551938452919283927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a360038054336001600160a01b0319918216178255306000818152600760209081526040808320805460ff1990811660019081179092556001600160a01b03898116865283862080548316841790559754909716845281842080549097161790955560098054737a250d5630b4cf539739df2c5dacb4c659f2488d9516851790559181526002825283812083825282528381206000199055835163c45a015560e01b8152935192939092849263c45a01559260048082019391829003018186803b1580156200023557600080fd5b505afa1580156200024a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000270919062000592565b9050806001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620002bc57600080fd5b505afa158015620002d1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002f7919062000592565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b1580156200034057600080fd5b505af115801562000355573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200037b919062000592565b600b8054610100600160a81b0319166101006001600160a01b0393841681029190911791829055900481166000908152600a6020908152604091829020805460ff1916600117905560095482516315ab88c960e31b8152925193169263ad5c4648926004808201939291829003018186803b158015620003fa57600080fd5b505afa1580156200040f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000435919062000592565b60095460405163095ea7b360e01b81526001600160a01b039182166004820152600019602482015291169063095ea7b390604401602060405180830381600087803b1580156200048457600080fd5b505af115801562000499573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004bf9190620005c2565b50506001600160a01b03166000908152600760205260409020805460ff1916600117905550620007639050565b828054620004fa9062000710565b90600052602060002090601f0160209004810192826200051e576000855562000569565b82601f106200053957805160ff191683800117855562000569565b8280016001018555821562000569579182015b82811115620005695782518255916020019190600101906200054c565b50620005779291506200057b565b5090565b5b808211156200057757600081556001016200057c565b600060208284031215620005a4578081fd5b81516001600160a01b0381168114620005bb578182fd5b9392505050565b600060208284031215620005d4578081fd5b81518015158114620005bb578182fd5b600181815b80851115620006255781600019048211156200060957620006096200074d565b808516156200061757918102915b93841c9390800290620005e9565b509250929050565b6000620005bb60ff8416836000826200064957506001620006e8565b816200065857506000620006e8565b81600181146200067157600281146200067c576200069c565b6001915050620006e8565b60ff8411156200069057620006906200074d565b50506001821b620006e8565b5060208310610133831016604e8410600b8410161715620006c1575081810a620006e8565b620006cd8383620005e4565b8060001904821115620006e457620006e46200074d565b0290505b92915050565b60008160001904831182151516156200070b576200070b6200074d565b500290565b600181811c908216806200072557607f821691505b602082108114156200074757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b61145780620007736000396000f3fe6080604052600436106101445760003560e01c80636f39cfcd116100b6578063a67755c21161006f578063a67755c2146103bf578063a9059cbb146103df578063bc76c052146103ff578063cefab2af14610414578063dd62ed3e1461042e578063f2fde38b1461047457600080fd5b80636f39cfcd1461030157806370a0823114610321578063715018a6146103575780638da5cb5b1461036c578063936c044b1461038a57806395d89b41146103aa57600080fd5b8063313ce56711610108578063313ce5671461020057806336b2e027146102225780633ecad271146102525780633f80b6d7146102825780634bf28fd0146102a457806365b61b77146102e157600080fd5b806306fdde0314610150578063095ea7b31461017b57806318160ddd146101ab57806323b872dd146101ca57806327b1a8e9146101ea57600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b50610165610494565b6040516101729190611236565b60405180910390f35b34801561018757600080fd5b5061019b61019636600461119d565b610526565b6040519015158152602001610172565b3480156101b757600080fd5b506008545b604051908152602001610172565b3480156101d657600080fd5b5061019b6101e5366004611130565b61053c565b3480156101f657600080fd5b506101bc600c5481565b34801561020c57600080fd5b5060065460405160ff9091168152602001610172565b34801561022e57600080fd5b5061019b61023d3660046110b9565b60076020526000908152604090205460ff1681565b34801561025e57600080fd5b5061019b61026d3660046110b9565b600a6020526000908152604090205460ff1681565b34801561028e57600080fd5b506102a261029d3660046111fc565b6105d3565b005b3480156102b057600080fd5b50600b546102c99061010090046001600160a01b031681565b6040516001600160a01b039091168152602001610172565b3480156102ed57600080fd5b506009546102c9906001600160a01b031681565b34801561030d57600080fd5b506102a261031c3660046110b9565b61061d565b34801561032d57600080fd5b506101bc61033c3660046110b9565b6001600160a01b031660009081526001602052604090205490565b34801561036357600080fd5b506102a2610669565b34801561037857600080fd5b506000546001600160a01b03166102c9565b34801561039657600080fd5b506102a26103a5366004611170565b6106dd565b3480156103b657600080fd5b50610165610732565b3480156103cb57600080fd5b506102a26103da3660046110b9565b610741565b3480156103eb57600080fd5b5061019b6103fa36600461119d565b610894565b34801561040b57600080fd5b506102a26108a1565b34801561042057600080fd5b5060145461019b9060ff1681565b34801561043a57600080fd5b506101bc6104493660046110f8565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561048057600080fd5b506102a261048f3660046110b9565b6108df565b6060600480546104a390611392565b80601f01602080910402602001604051908101604052809291908181526020018280546104cf90611392565b801561051c5780601f106104f15761010080835404028352916020019161051c565b820191906000526020600020905b8154815290600101906020018083116104ff57829003601f168201915b5050505050905090565b60006105333384846109a5565b50600192915050565b6000610549848484610a06565b6001600160a01b0384166000908152600260209081526040808320338452909152902054600019146105c9576001600160a01b03841660009081526002602090815260408083203384529091529020546105a490839061137b565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b5060019392505050565b6000546001600160a01b031633146106065760405162461bcd60e51b81526004016105fd90611289565b60405180910390fd5b600f94909455601092909255601155601255601355565b6000546001600160a01b031633146106475760405162461bcd60e51b81526004016105fd90611289565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146106935760405162461bcd60e51b81526004016105fd90611289565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107075760405162461bcd60e51b81526004016105fd90611289565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6060600580546104a390611392565b6001600160a01b0381163014610891576003546040516370a0823160e01b81523060048201526001600160a01b038381169263a9059cbb9291169083906370a082319060240160206040518083038186803b15801561079f57600080fd5b505afa1580156107b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107d791906111e4565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401602060405180830381600087803b15801561081d57600080fd5b505af1158015610831573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085591906111c8565b506003546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561088f573d6000803e3d6000fd5b505b50565b6000610533338484610a06565b6000546001600160a01b031633146108cb5760405162461bcd60e51b81526004016105fd90611289565b6014805460ff19811660ff90911615179055565b6000546001600160a01b031633146109095760405162461bcd60e51b81526004016105fd90611289565b6001600160a01b03811661094a5760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b60448201526064016105fd565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526001602052604090205481811015610a625760405162461bcd60e51b815260206004820152601060248201526f0c4c2d8c2dcc6ca9cdee88adcdeeaced60831b60448201526064016105fd565b600b5460ff1615610a7f57610a78848484610c4f565b5050505050565b6001600160a01b0383166000908152600a602052604081205460ff168015610aaa5750600b5460ff16155b8015610acf57506001600160a01b03851660009081526007602052604090205460ff16155b8015610af457506001600160a01b03841660009081526007602052604090205460ff16155b8015610b035750601354600c54115b15610b4457306000908152600160205260409020548390811115610b335750306000908152600160205260409020545b8015610b4257610b4281610d04565b505b6001600160a01b03851660009081526007602052604090205460ff16158015610b8657506001600160a01b03841660009081526007602052604090205460ff16155b8015610b955750600b5460ff16155b15610c4357506001600160a01b0384166000908152600a602052604090205460019060ff168015610bd457506009546001600160a01b03858116911614155b8015610bf957506001600160a01b03841660009081526007602052604090205460ff16155b15610c1457600c8054906000610c0e836113cd565b91905055505b60145460ff168015610c2557508183145b15610c4357610c366127108461133c565b610c40908461137b565b92505b610a7885858584610ec5565b6001600160a01b038316600090815260016020526040812080548391908390610c7990849061137b565b90915550506001600160a01b03831660009081526001602052604081208054849290610ca6908490611324565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610cf291815260200190565b60405180910390a35060019392505050565b600b805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610d5457634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015610da857600080fd5b505afa158015610dbc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610de091906110dc565b81600181518110610e0157634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201015260095460405163791ac94760e01b815291169063791ac94790610e479085906000908690309042906004016112b4565b600060405180830381600087803b158015610e6157600080fd5b505af1925050508015610e72575060015b50478015610eb6576003546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610eb4573d6000803e3d6000fd5b505b5050600b805460ff1916905550565b6001600160a01b038416600090815260016020526040902054610ee990839061137b565b6001600160a01b038516600090815260016020526040812091909155811561102a576001600160a01b0384166000908152600a602052604081205460ff1615610f4a57601254600c5411610f3f57600e54610f43565b6010545b9050610f85565b6001600160a01b0386166000908152600a602052604090205460ff1615610f8557601154600c5411610f7e57600d54610f82565b600f545b90505b60006064610f93838761135c565b610f9d919061133c565b9050801561102757610faf8184611324565b30600090815260016020526040902054909350610fcd908290611324565b30600081815260016020526040908190209290925590516001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061101e9085815260200190565b60405180910390a35b50505b611034818461137b565b6001600160a01b0385166000908152600160205260409020546110579190611324565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6110a1848761137b565b60405190815260200160405180910390a35050505050565b6000602082840312156110ca578081fd5b81356110d5816113fe565b9392505050565b6000602082840312156110ed578081fd5b81516110d5816113fe565b6000806040838503121561110a578081fd5b8235611115816113fe565b91506020830135611125816113fe565b809150509250929050565b600080600060608486031215611144578081fd5b833561114f816113fe565b9250602084013561115f816113fe565b929592945050506040919091013590565b60008060408385031215611182578182fd5b823561118d816113fe565b9150602083013561112581611413565b600080604083850312156111af578182fd5b82356111ba816113fe565b946020939093013593505050565b6000602082840312156111d9578081fd5b81516110d581611413565b6000602082840312156111f5578081fd5b5051919050565b600080600080600060a08688031215611213578081fd5b505083359560208501359550604085013594606081013594506080013592509050565b6000602080835283518082850152825b8181101561126257858101830151858201604001528201611246565b818111156112735783604083870101525b50601f01601f1916929092016040019392505050565b6020808252601190820152703cb7ba9030b932903737ba1037bbb732b960791b604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b818110156113035784516001600160a01b0316835293830193918301916001016112de565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611337576113376113e8565b500190565b60008261135757634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615611376576113766113e8565b500290565b60008282101561138d5761138d6113e8565b500390565b600181811c908216806113a657607f821691505b602082108114156113c757634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156113e1576113e16113e8565b5060010190565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b038116811461089157600080fd5b801515811461089157600080fdfea2646970667358221220fd96f9b48594abf3cd85869d8141405425f66624f1d39605e0ee8aa0f9beae4564736f6c63430008040033e69bb4e98082e59088e4b8ade59bbde4babae4bd93e8b4a8e79a84e6af94e789b9e5b88120544845204348494e45534520424954434f494e20495320e6af94e789b9e5b881

Deployed Bytecode

0x6080604052600436106101445760003560e01c80636f39cfcd116100b6578063a67755c21161006f578063a67755c2146103bf578063a9059cbb146103df578063bc76c052146103ff578063cefab2af14610414578063dd62ed3e1461042e578063f2fde38b1461047457600080fd5b80636f39cfcd1461030157806370a0823114610321578063715018a6146103575780638da5cb5b1461036c578063936c044b1461038a57806395d89b41146103aa57600080fd5b8063313ce56711610108578063313ce5671461020057806336b2e027146102225780633ecad271146102525780633f80b6d7146102825780634bf28fd0146102a457806365b61b77146102e157600080fd5b806306fdde0314610150578063095ea7b31461017b57806318160ddd146101ab57806323b872dd146101ca57806327b1a8e9146101ea57600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b50610165610494565b6040516101729190611236565b60405180910390f35b34801561018757600080fd5b5061019b61019636600461119d565b610526565b6040519015158152602001610172565b3480156101b757600080fd5b506008545b604051908152602001610172565b3480156101d657600080fd5b5061019b6101e5366004611130565b61053c565b3480156101f657600080fd5b506101bc600c5481565b34801561020c57600080fd5b5060065460405160ff9091168152602001610172565b34801561022e57600080fd5b5061019b61023d3660046110b9565b60076020526000908152604090205460ff1681565b34801561025e57600080fd5b5061019b61026d3660046110b9565b600a6020526000908152604090205460ff1681565b34801561028e57600080fd5b506102a261029d3660046111fc565b6105d3565b005b3480156102b057600080fd5b50600b546102c99061010090046001600160a01b031681565b6040516001600160a01b039091168152602001610172565b3480156102ed57600080fd5b506009546102c9906001600160a01b031681565b34801561030d57600080fd5b506102a261031c3660046110b9565b61061d565b34801561032d57600080fd5b506101bc61033c3660046110b9565b6001600160a01b031660009081526001602052604090205490565b34801561036357600080fd5b506102a2610669565b34801561037857600080fd5b506000546001600160a01b03166102c9565b34801561039657600080fd5b506102a26103a5366004611170565b6106dd565b3480156103b657600080fd5b50610165610732565b3480156103cb57600080fd5b506102a26103da3660046110b9565b610741565b3480156103eb57600080fd5b5061019b6103fa36600461119d565b610894565b34801561040b57600080fd5b506102a26108a1565b34801561042057600080fd5b5060145461019b9060ff1681565b34801561043a57600080fd5b506101bc6104493660046110f8565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561048057600080fd5b506102a261048f3660046110b9565b6108df565b6060600480546104a390611392565b80601f01602080910402602001604051908101604052809291908181526020018280546104cf90611392565b801561051c5780601f106104f15761010080835404028352916020019161051c565b820191906000526020600020905b8154815290600101906020018083116104ff57829003601f168201915b5050505050905090565b60006105333384846109a5565b50600192915050565b6000610549848484610a06565b6001600160a01b0384166000908152600260209081526040808320338452909152902054600019146105c9576001600160a01b03841660009081526002602090815260408083203384529091529020546105a490839061137b565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b5060019392505050565b6000546001600160a01b031633146106065760405162461bcd60e51b81526004016105fd90611289565b60405180910390fd5b600f94909455601092909255601155601255601355565b6000546001600160a01b031633146106475760405162461bcd60e51b81526004016105fd90611289565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146106935760405162461bcd60e51b81526004016105fd90611289565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107075760405162461bcd60e51b81526004016105fd90611289565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6060600580546104a390611392565b6001600160a01b0381163014610891576003546040516370a0823160e01b81523060048201526001600160a01b038381169263a9059cbb9291169083906370a082319060240160206040518083038186803b15801561079f57600080fd5b505afa1580156107b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107d791906111e4565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401602060405180830381600087803b15801561081d57600080fd5b505af1158015610831573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085591906111c8565b506003546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561088f573d6000803e3d6000fd5b505b50565b6000610533338484610a06565b6000546001600160a01b031633146108cb5760405162461bcd60e51b81526004016105fd90611289565b6014805460ff19811660ff90911615179055565b6000546001600160a01b031633146109095760405162461bcd60e51b81526004016105fd90611289565b6001600160a01b03811661094a5760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b60448201526064016105fd565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526001602052604090205481811015610a625760405162461bcd60e51b815260206004820152601060248201526f0c4c2d8c2dcc6ca9cdee88adcdeeaced60831b60448201526064016105fd565b600b5460ff1615610a7f57610a78848484610c4f565b5050505050565b6001600160a01b0383166000908152600a602052604081205460ff168015610aaa5750600b5460ff16155b8015610acf57506001600160a01b03851660009081526007602052604090205460ff16155b8015610af457506001600160a01b03841660009081526007602052604090205460ff16155b8015610b035750601354600c54115b15610b4457306000908152600160205260409020548390811115610b335750306000908152600160205260409020545b8015610b4257610b4281610d04565b505b6001600160a01b03851660009081526007602052604090205460ff16158015610b8657506001600160a01b03841660009081526007602052604090205460ff16155b8015610b955750600b5460ff16155b15610c4357506001600160a01b0384166000908152600a602052604090205460019060ff168015610bd457506009546001600160a01b03858116911614155b8015610bf957506001600160a01b03841660009081526007602052604090205460ff16155b15610c1457600c8054906000610c0e836113cd565b91905055505b60145460ff168015610c2557508183145b15610c4357610c366127108461133c565b610c40908461137b565b92505b610a7885858584610ec5565b6001600160a01b038316600090815260016020526040812080548391908390610c7990849061137b565b90915550506001600160a01b03831660009081526001602052604081208054849290610ca6908490611324565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610cf291815260200190565b60405180910390a35060019392505050565b600b805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610d5457634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015610da857600080fd5b505afa158015610dbc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610de091906110dc565b81600181518110610e0157634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201015260095460405163791ac94760e01b815291169063791ac94790610e479085906000908690309042906004016112b4565b600060405180830381600087803b158015610e6157600080fd5b505af1925050508015610e72575060015b50478015610eb6576003546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610eb4573d6000803e3d6000fd5b505b5050600b805460ff1916905550565b6001600160a01b038416600090815260016020526040902054610ee990839061137b565b6001600160a01b038516600090815260016020526040812091909155811561102a576001600160a01b0384166000908152600a602052604081205460ff1615610f4a57601254600c5411610f3f57600e54610f43565b6010545b9050610f85565b6001600160a01b0386166000908152600a602052604090205460ff1615610f8557601154600c5411610f7e57600d54610f82565b600f545b90505b60006064610f93838761135c565b610f9d919061133c565b9050801561102757610faf8184611324565b30600090815260016020526040902054909350610fcd908290611324565b30600081815260016020526040908190209290925590516001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061101e9085815260200190565b60405180910390a35b50505b611034818461137b565b6001600160a01b0385166000908152600160205260409020546110579190611324565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6110a1848761137b565b60405190815260200160405180910390a35050505050565b6000602082840312156110ca578081fd5b81356110d5816113fe565b9392505050565b6000602082840312156110ed578081fd5b81516110d5816113fe565b6000806040838503121561110a578081fd5b8235611115816113fe565b91506020830135611125816113fe565b809150509250929050565b600080600060608486031215611144578081fd5b833561114f816113fe565b9250602084013561115f816113fe565b929592945050506040919091013590565b60008060408385031215611182578182fd5b823561118d816113fe565b9150602083013561112581611413565b600080604083850312156111af578182fd5b82356111ba816113fe565b946020939093013593505050565b6000602082840312156111d9578081fd5b81516110d581611413565b6000602082840312156111f5578081fd5b5051919050565b600080600080600060a08688031215611213578081fd5b505083359560208501359550604085013594606081013594506080013592509050565b6000602080835283518082850152825b8181101561126257858101830151858201604001528201611246565b818111156112735783604083870101525b50601f01601f1916929092016040019392505050565b6020808252601190820152703cb7ba9030b932903737ba1037bbb732b960791b604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b818110156113035784516001600160a01b0316835293830193918301916001016112de565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611337576113376113e8565b500190565b60008261135757634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615611376576113766113e8565b500290565b60008282101561138d5761138d6113e8565b500390565b600181811c908216806113a657607f821691505b602082108114156113c757634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156113e1576113e16113e8565b5060010190565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b038116811461089157600080fd5b801515811461089157600080fdfea2646970667358221220fd96f9b48594abf3cd85869d8141405425f66624f1d39605e0ee8aa0f9beae4564736f6c63430008040033

Deployed Bytecode Sourcemap

3184:8057:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5332:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6095:159;;;;;;;;;;-1:-1:-1;6095:159:0;;;;;:::i;:::-;;:::i;:::-;;;3723:14:1;;3716:22;3698:41;;3686:2;3671:18;6095:159:0;3653:92:1;5536:100:0;;;;;;;;;;-1:-1:-1;5616:12:0;;5536:100;;;5761:25:1;;;5749:2;5734:18;5536:100:0;5716:76:1;6262:336:0;;;;;;;;;;-1:-1:-1;6262:336:0;;;;;:::i;:::-;;:::i;7058:26::-;;;;;;;;;;;;;;;;5434:94;;;;;;;;;;-1:-1:-1;5511:9:0;;5434:94;;5511:9;;;;6927:36:1;;6915:2;6900:18;5434:94:0;6882:87:1;3477:49:0;;;;;;;;;;-1:-1:-1;3477:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;3621:44;;;;;;;;;;-1:-1:-1;3621:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;7376:406;;;;;;;;;;-1:-1:-1;7376:406:0;;;;;:::i;:::-;;:::i;:::-;;3751:27;;;;;;;;;;-1:-1:-1;3751:27:0;;;;;;;-1:-1:-1;;;;;3751:27:0;;;;;;-1:-1:-1;;;;;3235:32:1;;;3217:51;;3205:2;3190:18;3751:27:0;3172:102:1;3576:36:0;;;;;;;;;;-1:-1:-1;3576:36:0;;;;-1:-1:-1;;;;;3576:36:0;;;5108:110;;;;;;;;;;-1:-1:-1;5108:110:0;;;;;:::i;:::-;;:::i;5644:119::-;;;;;;;;;;-1:-1:-1;5644:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5737:18:0;5710:7;5737:18;;;:9;:18;;;;;;;5644:119;2807:148;;;;;;;;;;;;;:::i;2610:79::-;;;;;;;;;;-1:-1:-1;2648:7:0;2675:6;-1:-1:-1;;;;;2675:6:0;2610:79;;11080:121;;;;;;;;;;-1:-1:-1;11080:121:0;;;;;:::i;:::-;;:::i;5226:98::-;;;;;;;;;;;;;:::i;10246:262::-;;;;;;;;;;-1:-1:-1;10246:262:0;;;;;:::i;:::-;;:::i;5771:165::-;;;;;;;;;;-1:-1:-1;5771:165:0;;;;;:::i;:::-;;:::i;7828:87::-;;;;;;;;;;;;;:::i;7790:31::-;;;;;;;;;;-1:-1:-1;7790:31:0;;;;;;;;5944:143;;;;;;;;;;-1:-1:-1;5944:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6052:18:0;;;6025:7;6052:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5944:143;2963:214;;;;;;;;;;-1:-1:-1;2963:214:0;;;;;:::i;:::-;;:::i;5332:94::-;5380:13;5413:5;5406:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5332:94;:::o;6095:159::-;6170:4;6187:37;6196:10;6208:7;6217:6;6187:8;:37::i;:::-;-1:-1:-1;6242:4:0;6095:159;;;;:::o;6262:336::-;6360:4;6377:36;6387:6;6395:9;6406:6;6377:9;:36::i;:::-;-1:-1:-1;;;;;6428:19:0;;3740:1;6428:19;;;:11;:19;;;;;;;;6448:10;6428:31;;;;;;;;-1:-1:-1;;6428:38:0;6424:145;;-1:-1:-1;;;;;6517:19:0;;;;;;:11;:19;;;;;;;;6537:10;6517:31;;;;;;;;:40;;6551:6;;6517:40;:::i;:::-;-1:-1:-1;;;;;6483:19:0;;;;;;:11;:19;;;;;;;;6503:10;6483:31;;;;;;;:74;6424:145;-1:-1:-1;6586:4:0;6262:336;;;;;:::o;7376:406::-;2737:6;;-1:-1:-1;;;;;2737:6:0;2747:10;2737:20;2729:50;;;;-1:-1:-1;;;2729:50:0;;;;;;;:::i;:::-;;;;;;;;;7583:12:::1;:21:::0;;;;7615:13:::1;:23:::0;;;;7649:15:::1;:30:::0;7690:16:::1;:32:::0;7733:18:::1;:41:::0;7376:406::o;5108:110::-;2737:6;;-1:-1:-1;;;;;2737:6:0;2747:10;2737:20;2729:50;;;;-1:-1:-1;;;2729:50:0;;;;;;;:::i;:::-;5189:11:::1;:21:::0;;-1:-1:-1;;;;;;5189:21:0::1;-1:-1:-1::0;;;;;5189:21:0;;;::::1;::::0;;;::::1;::::0;;5108:110::o;2807:148::-;2737:6;;-1:-1:-1;;;;;2737:6:0;2747:10;2737:20;2729:50;;;;-1:-1:-1;;;2729:50:0;;;;;;;:::i;:::-;2914:1:::1;2898:6:::0;;2877:40:::1;::::0;-1:-1:-1;;;;;2898:6:0;;::::1;::::0;2877:40:::1;::::0;2914:1;;2877:40:::1;2945:1;2928:19:::0;;-1:-1:-1;;;;;;2928:19:0::1;::::0;;2807:148::o;11080:121::-;2737:6;;-1:-1:-1;;;;;2737:6:0;2747:10;2737:20;2729:50;;;;-1:-1:-1;;;2729:50:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11159:26:0;;;::::1;;::::0;;;:17:::1;:26;::::0;;;;:34;;-1:-1:-1;;11159:34:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11080:121::o;5226:98::-;5276:13;5309:7;5302:14;;;;;:::i;10246:262::-;-1:-1:-1;;;;;10306:23:0;;10324:4;10306:23;10303:198;;10369:11;;10382:39;;-1:-1:-1;;;10382:39:0;;10415:4;10382:39;;;3217:51:1;-1:-1:-1;;;;;10345:23:0;;;;;;10369:11;;;10345:23;;10382:24;;3190:18:1;;10382:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10345:77;;-1:-1:-1;;;;;;10345:77:0;;;;;;;-1:-1:-1;;;;;3471:32:1;;;10345:77:0;;;3453:51:1;3520:18;;;3513:34;3426:18;;10345:77:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;10445:11:0;;10437:52;;-1:-1:-1;;;;;10445:11:0;;;;10467:21;10437:52;;;;;10445:11;10437:52;10445:11;10437:52;10467:21;10445:11;10437:52;;;;;;;;;;;;;;;;;;;;;10303:198;10246:262;:::o;5771:165::-;5849:4;5866:40;5876:10;5888:9;5899:6;5866:9;:40::i;7828:87::-;2737:6;;-1:-1:-1;;;;;2737:6:0;2747:10;2737:20;2729:50;;;;-1:-1:-1;;;2729:50:0;;;;;;;:::i;:::-;7895:12:::1;::::0;;-1:-1:-1;;7879:28:0;::::1;7895:12;::::0;;::::1;7894:13;7879:28;::::0;;7828:87::o;2963:214::-;2737:6;;-1:-1:-1;;;;;2737:6:0;2747:10;2737:20;2729:50;;;;-1:-1:-1;;;2729:50:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3052:22:0;::::1;3044:43;;;::::0;-1:-1:-1;;;3044:43:0;;5135:2:1;3044:43:0::1;::::0;::::1;5117:21:1::0;5174:1;5154:18;;;5147:29;-1:-1:-1;;;5192:18:1;;;5185:38;5240:18;;3044:43:0::1;5107:157:1::0;3044:43:0::1;3124:6;::::0;;3103:38:::1;::::0;-1:-1:-1;;;;;3103:38:0;;::::1;::::0;3124:6;::::1;::::0;3103:38:::1;::::0;::::1;3152:6;:17:::0;;-1:-1:-1;;;;;;3152:17:0::1;-1:-1:-1::0;;;;;3152:17:0;;;::::1;::::0;;;::::1;::::0;;2963:214::o;6606:177::-;-1:-1:-1;;;;;6691:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6743:32;;5761:25:1;;;6743:32:0;;5734:18:1;6743:32:0;;;;;;;6606:177;;;:::o;7923:1276::-;-1:-1:-1;;;;;5737:18:0;;8037:15;5737:18;;;:9;:18;;;;;;8089:17;;;;8081:46;;;;-1:-1:-1;;;8081:46:0;;4790:2:1;8081:46:0;;;4772:21:1;4829:2;4809:18;;;4802:30;-1:-1:-1;;;4848:18:1;;;4841:46;4904:18;;8081:46:0;4762:166:1;8081:46:0;8144:6;;;;8140:91;;;8166:32;8181:4;8187:2;8191:6;8166:14;:32::i;:::-;;8213:7;7923:1276;;;:::o;8140:91::-;-1:-1:-1;;;;;8272:16:0;;8243:12;8272:16;;;:12;:16;;;;;;;;:27;;;;-1:-1:-1;8293:6:0;;;;8292:7;8272:27;:55;;;;-1:-1:-1;;;;;;8304:23:0;;;;;;:17;:23;;;;;;;;8303:24;8272:55;:81;;;;-1:-1:-1;;;;;;8332:21:0;;;;;;:17;:21;;;;;;;;8331:22;8272:81;:115;;;;;8369:18;;8357:9;;:30;8272:115;8268:413;;;8487:4;5710:7;5737:18;;;:9;:18;;;;;;8428:6;;8453:13;:40;8449:120;;;-1:-1:-1;8547:4:0;8529:24;;;;:9;:24;;;;;;8449:120;8587:17;;8583:87;;8624:30;8640:13;8624:15;:30::i;:::-;8268:413;;-1:-1:-1;;;;;8698:23:0;;;;;;:17;:23;;;;;;;;8697:24;:50;;;;-1:-1:-1;;;;;;8726:21:0;;;;;;:17;:21;;;;;;;;8725:22;8697:50;:61;;;;-1:-1:-1;8752:6:0;;;;8751:7;8697:61;8693:445;;;-1:-1:-1;;;;;;8847:18:0;;;;;;:12;:18;;;;;;8785:4;;8847:18;;:51;;;;-1:-1:-1;8883:14:0;;-1:-1:-1;;;;;8869:29:0;;;8883:14;;8869:29;;8847:51;:77;;;;-1:-1:-1;;;;;;8903:21:0;;;;;;:17;:21;;;;;;;;8902:22;8847:77;8843:129;;;8945:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8843:129;9021:12;;;;:33;;;;;9047:7;9037:6;:17;9021:33;9017:108;;;9094:14;9103:5;9094:6;:14;:::i;:::-;9084:25;;:6;:25;:::i;:::-;9075:34;;9017:108;9150:41;9165:4;9171:2;9175:6;9183:7;9150:14;:41::i;6791:259::-;-1:-1:-1;;;;;6901:17:0;;6884:4;6901:17;;;:9;:17;;;;;:27;;6922:6;;6901:17;6884:4;;6901:27;;6922:6;;6901:27;:::i;:::-;;;;-1:-1:-1;;;;;;;6939:20:0;;;;;;:9;:20;;;;;:30;;6963:6;;6939:20;:30;;6963:6;;6939:30;:::i;:::-;;;;;;;;7002:9;-1:-1:-1;;;;;6985:35:0;6994:6;-1:-1:-1;;;;;6985:35:0;;7013:6;6985:35;;;;5761:25:1;;5749:2;5734:18;;5716:76;6985:35:0;;;;;;;;-1:-1:-1;7038:4:0;6791:259;;;;;:::o;10516:556::-;3819:6;:13;;-1:-1:-1;;3819:13:0;3828:4;3819:13;;;10617:16:::1;::::0;;10631:1:::1;10617:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10617:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10617:16:0::1;10593:40;;10662:4;10644;10649:1;10644:7;;;;;;-1:-1:-1::0;;;10644:7:0::1;;;;;;;;;-1:-1:-1::0;;;;;10644:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10688:14:::1;::::0;:21:::1;::::0;;-1:-1:-1;;;10688:21:0;;;;:14;;;::::1;::::0;:19:::1;::::0;:21:::1;::::0;;::::1;::::0;10644:7;;10688:21;;;;;:14;:21;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10678:4;10683:1;10678:7;;;;;;-1:-1:-1::0;;;10678:7:0::1;;;;;;;;;-1:-1:-1::0;;;;;10678:31:0;;::::1;:7;::::0;;::::1;::::0;;;;;:31;10724:14:::1;::::0;:195:::1;::::0;-1:-1:-1;;;10724:195:0;;:14;::::1;::::0;:65:::1;::::0;:195:::1;::::0;10804:11;;10724:14:::1;::::0;10846:4;;10873::::1;::::0;10893:15:::1;::::0;10724:195:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;10720:211:::0;10958:21:::1;10994:8:::0;;10990:75:::1;;11026:11;::::0;11018:35:::1;::::0;-1:-1:-1;;;;;11026:11:0;;::::1;::::0;11018:35;::::1;;;::::0;11048:4;;11026:11:::1;11018:35:::0;11026:11;11018:35;11048:4;11026:11;11018:35;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;10990:75;-1:-1:-1::0;;3855:6:0;:14;;-1:-1:-1;;3855:14:0;;;-1:-1:-1;10516:556:0:o;9207:1031::-;-1:-1:-1;;;;;9379:17:0;;;;;;:9;:17;;;;;;:27;;9399:7;;9379:27;:::i;:::-;-1:-1:-1;;;;;9359:17:0;;;;;;:9;:17;;;;;:47;;;;9447:638;;;;-1:-1:-1;;;;;9508:23:0;;9475:14;9508:23;;;:12;:23;;;;;;;;9504:270;;;9573:16;;9561:9;;:28;:62;;9608:15;;9561:62;;;9592:13;;9561:62;9552:71;;9504:270;;;-1:-1:-1;;;;;9649:20:0;;;;;;:12;:20;;;;;;;;9645:129;;;9711:15;;9699:9;;:27;:59;;9744:14;;9699:59;;;9729:12;;9699:59;9690:68;;9645:129;9788:18;9828:3;9809:16;9819:6;9809:7;:16;:::i;:::-;:22;;;;:::i;:::-;9788:43;-1:-1:-1;9850:14:0;;9846:228;;9885:23;9898:10;9885:23;;:::i;:::-;9972:4;9954:24;;;;:9;:24;;;;;;9885:23;;-1:-1:-1;9954:37:0;;9981:10;;9954:37;:::i;:::-;9945:4;9927:24;;;;:9;:24;;;;;;;:64;;;;10015:43;;-1:-1:-1;;;;;10015:43:0;;;;;;;10047:10;5761:25:1;;5749:2;5734:18;;5716:76;10015:43:0;;;;;;;;9846:228;9447:638;;;10144:19;10154:9;10144:7;:19;:::i;:::-;-1:-1:-1;;;;;10120:20:0;;;;;;:9;:20;;;;;;:44;;;;:::i;:::-;-1:-1:-1;;;;;10097:20:0;;;;;;;:9;:20;;;;;:67;;;;10180:48;;;10208:19;10218:9;10208:7;:19;:::i;:::-;10180:48;;5761:25:1;;;5749:2;5734:18;10180:48:0;;;;;;;9207:1031;;;;;:::o;14:257:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:2;;;147:6;139;132:22;94:2;191:9;178:23;210:31;235:5;210:31;:::i;:::-;260:5;84:187;-1:-1:-1;;;84:187:1:o;276:261::-;346:6;399:2;387:9;378:7;374:23;370:32;367:2;;;420:6;412;405:22;367:2;457:9;451:16;476:31;501:5;476:31;:::i;542:398::-;610:6;618;671:2;659:9;650:7;646:23;642:32;639:2;;;692:6;684;677:22;639:2;736:9;723:23;755:31;780:5;755:31;:::i;:::-;805:5;-1:-1:-1;862:2:1;847:18;;834:32;875:33;834:32;875:33;:::i;:::-;927:7;917:17;;;629:311;;;;;:::o;945:466::-;1022:6;1030;1038;1091:2;1079:9;1070:7;1066:23;1062:32;1059:2;;;1112:6;1104;1097:22;1059:2;1156:9;1143:23;1175:31;1200:5;1175:31;:::i;:::-;1225:5;-1:-1:-1;1282:2:1;1267:18;;1254:32;1295:33;1254:32;1295:33;:::i;:::-;1049:362;;1347:7;;-1:-1:-1;;;1401:2:1;1386:18;;;;1373:32;;1049:362::o;1416:392::-;1481:6;1489;1542:2;1530:9;1521:7;1517:23;1513:32;1510:2;;;1563:6;1555;1548:22;1510:2;1607:9;1594:23;1626:31;1651:5;1626:31;:::i;:::-;1676:5;-1:-1:-1;1733:2:1;1718:18;;1705:32;1746:30;1705:32;1746:30;:::i;1813:325::-;1881:6;1889;1942:2;1930:9;1921:7;1917:23;1913:32;1910:2;;;1963:6;1955;1948:22;1910:2;2007:9;1994:23;2026:31;2051:5;2026:31;:::i;:::-;2076:5;2128:2;2113:18;;;;2100:32;;-1:-1:-1;;;1900:238:1:o;2143:255::-;2210:6;2263:2;2251:9;2242:7;2238:23;2234:32;2231:2;;;2284:6;2276;2269:22;2231:2;2321:9;2315:16;2340:28;2362:5;2340:28;:::i;2403:194::-;2473:6;2526:2;2514:9;2505:7;2501:23;2497:32;2494:2;;;2547:6;2539;2532:22;2494:2;-1:-1:-1;2575:16:1;;2484:113;-1:-1:-1;2484:113:1:o;2602:464::-;2697:6;2705;2713;2721;2729;2782:3;2770:9;2761:7;2757:23;2753:33;2750:2;;;2804:6;2796;2789:22;2750:2;-1:-1:-1;;2832:23:1;;;2902:2;2887:18;;2874:32;;-1:-1:-1;2953:2:1;2938:18;;2925:32;;3004:2;2989:18;;2976:32;;-1:-1:-1;3055:3:1;3040:19;3027:33;;-1:-1:-1;2740:326:1;-1:-1:-1;2740:326:1:o;3980:603::-;4092:4;4121:2;4150;4139:9;4132:21;4182:6;4176:13;4225:6;4220:2;4209:9;4205:18;4198:34;4250:4;4263:140;4277:6;4274:1;4271:13;4263:140;;;4372:14;;;4368:23;;4362:30;4338:17;;;4357:2;4334:26;4327:66;4292:10;;4263:140;;;4421:6;4418:1;4415:13;4412:2;;;4491:4;4486:2;4477:6;4466:9;4462:22;4458:31;4451:45;4412:2;-1:-1:-1;4567:2:1;4546:15;-1:-1:-1;;4542:29:1;4527:45;;;;4574:2;4523:54;;4101:482;-1:-1:-1;;;4101:482:1:o;5269:341::-;5471:2;5453:21;;;5510:2;5490:18;;;5483:30;-1:-1:-1;;;5544:2:1;5529:18;;5522:47;5601:2;5586:18;;5443:167::o;5797:983::-;6059:4;6107:3;6096:9;6092:19;6138:6;6127:9;6120:25;6164:2;6202:6;6197:2;6186:9;6182:18;6175:34;6245:3;6240:2;6229:9;6225:18;6218:31;6269:6;6304;6298:13;6335:6;6327;6320:22;6373:3;6362:9;6358:19;6351:26;;6412:2;6404:6;6400:15;6386:29;;6433:4;6446:195;6460:6;6457:1;6454:13;6446:195;;;6525:13;;-1:-1:-1;;;;;6521:39:1;6509:52;;6616:15;;;;6581:12;;;;6557:1;6475:9;6446:195;;;-1:-1:-1;;;;;;;6697:32:1;;;;6692:2;6677:18;;6670:60;-1:-1:-1;;;6761:3:1;6746:19;6739:35;6658:3;6068:712;-1:-1:-1;;;6068:712:1:o;6974:128::-;7014:3;7045:1;7041:6;7038:1;7035:13;7032:2;;;7051:18;;:::i;:::-;-1:-1:-1;7087:9:1;;7022:80::o;7107:217::-;7147:1;7173;7163:2;;-1:-1:-1;;;7198:31:1;;7252:4;7249:1;7242:15;7280:4;7205:1;7270:15;7163:2;-1:-1:-1;7309:9:1;;7153:171::o;7329:168::-;7369:7;7435:1;7431;7427:6;7423:14;7420:1;7417:21;7412:1;7405:9;7398:17;7394:45;7391:2;;;7442:18;;:::i;:::-;-1:-1:-1;7482:9:1;;7381:116::o;7502:125::-;7542:4;7570:1;7567;7564:8;7561:2;;;7575:18;;:::i;:::-;-1:-1:-1;7612:9:1;;7551:76::o;7632:380::-;7711:1;7707:12;;;;7754;;;7775:2;;7829:4;7821:6;7817:17;7807:27;;7775:2;7882;7874:6;7871:14;7851:18;7848:38;7845:2;;;7928:10;7923:3;7919:20;7916:1;7909:31;7963:4;7960:1;7953:15;7991:4;7988:1;7981:15;7845:2;;7687:325;;;:::o;8017:135::-;8056:3;-1:-1:-1;;8077:17:1;;8074:2;;;8097:18;;:::i;:::-;-1:-1:-1;8144:1:1;8133:13;;8064:88::o;8157:127::-;8218:10;8213:3;8209:20;8206:1;8199:31;8249:4;8246:1;8239:15;8273:4;8270:1;8263:15;8289:131;-1:-1:-1;;;;;8364:31:1;;8354:42;;8344:2;;8410:1;8407;8400:12;8425:118;8511:5;8504:13;8497:21;8490:5;8487:32;8477:2;;8533:1;8530;8523:12

Swarm Source

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