ETH Price: $2,508.15 (+0.39%)

Token

BYTE2.0 (BYTE2.0)
 

Overview

Max Total Supply

1,000,000,000,000 BYTE2.0

Holders

27

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
6,000,000,000 BYTE2.0

Value
$0.00
0xdd6da46a6043241afe6a2e21f5f9e5b81cb815be
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:
BYTE2

Compiler Version
v0.8.23+commit.f704f362

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

/*
BYTE2.0 - Grok's dog

 *   Tg:      https://t.me/BYTE2ERC
 *   Twitter: https://twitter.com/byte2_erc
 *   Website: https://byte2-erc.com
 */

//SPDX-License-Identifier: MIT

pragma solidity 0.8.23;

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

abstract contract Auth {
    address internal _owner;
    event OwnershipTransferred(address _owner);
    constructor(address creatorOwner) { _owner = creatorOwner; }
    modifier onlyOwner() { require(msg.sender == _owner, "Only owner can call this"); _; }
    function owner() public view returns (address) { return _owner; }
    function renounceOwnership() external onlyOwner { 
        _owner = address(0); 
        emit OwnershipTransferred(address(0)); 
    }
}

contract BYTE2 is IERC20, Auth {
    string private constant _name         = "BYTE2.0";
    string private constant _symbol       = "BYTE2.0";
    uint8  private constant _decimals     = 9;
    uint256 private constant _totalSupply = 1000_000_000_000 * (10**_decimals);
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    uint32 private _launchTime;
    address payable private constant _walletMarketing = payable(0xd0bD4CD852E47fd6AB665C7BF92b85935Ba9EECc);
    uint256 private constant _taxSwapMin = _totalSupply / 200000;
    uint256 private constant _taxSwapMax = _totalSupply / 1000;
    mapping (address => bool) private _excluded;
    mapping (address => bool) private _isLP;
    address private _primaryLP;
    address private constant _swapRouterAddress = address(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    IUniswapV2Router02 private _primarySwapRouter = IUniswapV2Router02(_swapRouterAddress);
    bool private _tradingOpen;
    bool private _zeroTaxMode;
    bool private _inTaxSwap = false;
    modifier lockTaxSwap { 
        _inTaxSwap = true; 
        _; 
        _inTaxSwap = false; 
    }

    constructor() Auth(msg.sender) {
        _balances[_owner] = _totalSupply * 5 / 100;
        emit Transfer(address(0), _owner, _balances[_owner]);
        _balances[address(this)] = _totalSupply - _balances[_owner];
        emit Transfer(address(0), address(this), _balances[address(this)]);
        _excluded[_owner] = true;
        _excluded[address(this)] = true;
        _excluded[_swapRouterAddress] = true;
        _excluded[_walletMarketing] = true;
        _launchTime = uint32(block.timestamp)*2;
    }

    receive() external payable {}
    
    function totalSupply() external pure override returns (uint256) { return _totalSupply; }
    function decimals() external pure override returns (uint8) { return _decimals; }
    function symbol() external pure override returns (string memory) { return _symbol; }
    function name() external pure override returns (string memory) { return _name; }
    function balanceOf(address account) public view override returns (uint256) { return _balances[account]; }
    function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function transfer(address recipient, uint256 amount) external override returns (bool) {
        require(_checkTradingOpen(msg.sender), "Trading not open");
        return _transferFrom(msg.sender, recipient, amount);
    }

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        require(_checkTradingOpen(sender), "Trading not open");
        if(_allowances[sender][msg.sender] != type(uint256).max){
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender] - amount;
        }
        return _transferFrom(sender, recipient, amount);
    }

    function addLiquidity() external payable onlyOwner lockTaxSwap {
        require(_primaryLP == address(0), "LP exists");
        require(!_tradingOpen, "trading is open");
        require(msg.value > 0 || address(this).balance>0, "No ETH in contract or message");
        require(_balances[address(this)]>0, "No tokens in contract");
        _primaryLP = IUniswapV2Factory(_primarySwapRouter.factory()).createPair(address(this), _primarySwapRouter.WETH());
        _addLiquidity(_balances[address(this)], address(this).balance);
        _isLP[_primaryLP] = true;
        _tradingOpen = true;
        _launchTime = uint32(block.timestamp);
    }

    function _addLiquidity(uint256 _tokenAmount, uint256 _ethAmountWei) internal {
        _allowances[address(this)][_swapRouterAddress] = type(uint256).max;
        _primarySwapRouter.addLiquidityETH{value: _ethAmountWei} ( address(this), _tokenAmount, 0, 0, _owner, block.timestamp );
    }

    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        require(sender != address(0), "No transfers from Zero wallet");
        require(checkLimits(sender, recipient, amount), "Limits exceeded");
        if (!_tradingOpen) { require(_excluded[sender], "Trading not open"); }        
        if ( !_inTaxSwap && _isLP[recipient] ) { _swapTaxAndLiquify(); }
        uint256 _taxAmount = _calculateTax(sender, recipient, amount);
        uint256 _transferAmount = amount - _taxAmount;
        _balances[sender] -= amount;
        if ( _taxAmount > 0 ) { _balances[address(this)] += _taxAmount; }
        _balances[recipient] += _transferAmount;
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function _checkTradingOpen(address sender) private view returns (bool){
        bool checkResult = false;
        if ( _tradingOpen ) { checkResult = true; } 
        else if (_excluded[sender]) { checkResult = true; } 
        return checkResult;
    }

    function checkLimits(address sender, address recipient, uint256 amount) private view returns (bool result) {
        result = true;
        if (!_excluded[recipient] && !_excluded[sender]) {            
            (uint256 maxTx, uint256 maxWallet) = limits();
            if (amount > maxTx) { result = false; }
            if (!_isLP[recipient] && _balances[recipient] + amount > maxWallet) { result = false; }
        }
    }
    function limits() public view returns (uint256 maxTxAmount, uint256 maxWalletAmount) {
        maxTxAmount = _totalSupply; 
        maxWalletAmount = _totalSupply;
        if (block.timestamp > _launchTime + 900) {
            maxTxAmount = _totalSupply; // unlimited forever (limited by max wallet anyway)
            maxWalletAmount = _totalSupply * 30 / 1000; // 3.0% forever
        } else if (block.timestamp > _launchTime + 600) {
            maxTxAmount = _totalSupply * 25 / 1000; // 2.5% for minutes 10-15
            maxWalletAmount = _totalSupply * 25 / 1000; // 2.5% for minutes 10-15
        } else {
            maxTxAmount = _totalSupply * 20 / 1000; //2.0% for first 10 minutes
            maxWalletAmount = _totalSupply * 20 / 1000; //2.0% for first 10 minutes
        }
    }

    function removeAllFees() external onlyOwner {
        _zeroTaxMode = true;
    }

    function _tax() private view returns(uint8) {
        uint8 taxPercentage;
        if (_zeroTaxMode) {
            taxPercentage = 0; //after "removeAllFees()" is called, permanent.
        } else if (block.timestamp > _launchTime + 900) {
            taxPercentage = 0; //0% tax after 15 minutes
        } else if (block.timestamp > _launchTime + 600) {
            taxPercentage = 100; //10% tax minutes 10-15
        } else if (block.timestamp > _launchTime + 180) {
            taxPercentage = 150; //15% tax minutes 3-10
        } else {
            taxPercentage = 250; //25% tax minutes 0-3
        }
        return taxPercentage;
    }

    function tax() external view returns (uint8) {
        return _tax()/10;
    }

    function _calculateTax(address sender, address recipient, uint256 amount) internal view returns (uint256 taxAmount) {
        if ( _tradingOpen && !_excluded[sender] && !_excluded[recipient] ) { 
            if ( _isLP[sender] || _isLP[recipient] ) {
                taxAmount = amount * _tax() / 1000;
            }
        }
    }

    function marketingWallet() external pure returns (address) {
        return _walletMarketing;
    }

    function _swapTaxAndLiquify() private lockTaxSwap {
        uint256 _taxTokensAvailable = balanceOf(address(this));
        if ( _taxTokensAvailable >= _taxSwapMin && _tradingOpen ) {
            if ( _taxTokensAvailable >= _taxSwapMax ) { _taxTokensAvailable = _taxSwapMax; }
            _swapTaxTokensForEth(_taxTokensAvailable);
            uint256 _contractETHBalance = address(this).balance;
            if(_contractETHBalance > 0) { 
                (bool sent, bytes memory data) = _walletMarketing.call{value: _contractETHBalance}("");
                sent = true; data = bytes("");
            }
        }
    }

    function _swapTaxTokensForEth(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = _primarySwapRouter.WETH();
        _primarySwapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp);
    }
}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external;
    function WETH() external pure returns (address);
    function factory() 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);
}

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":false,"internalType":"address","name":"_owner","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":"addLiquidity","outputs":[],"stateMutability":"payable","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"limits","outputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"},{"internalType":"uint256","name":"maxWalletAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"pure","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":"removeAllFees","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":"tax","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405260078054600162ff000160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d17905534801562000038575f80fd5b505f80546001600160a01b0319163317905560646200005a6009600a6200032a565b6200006b9064e8d4a5100062000341565b6200007890600562000341565b6200008491906200035b565b5f80546001600160a01b039081168252600160205260408083209390935581541680825282822054925190925f8051602062001a3383398151915291620000cd91815260200190565b60405180910390a35f80546001600160a01b0316815260016020526040902054620000fb6009600a6200032a565b6200010c9064e8d4a5100062000341565b6200011891906200037b565b305f81815260016020908152604080832085905551938452919290915f8051602062001a33833981519152910160405180910390a35f80546001600160a01b03168152600460205260408082208054600160ff19918216811790925530845291832080548316821790557f1fc5acd025f7cc5cf2691b667dba808b5a149bf27192c208fc66f1f0ec4222d7805483168217905573d0bd4cd852e47fd6ab665c7bf92b85935ba9eecc9092527f16b67c2c92d3b97f3c03e3055fd46a92c472aab2f168ea7018ea19ec4fcf4ec780549091169091179055620001fb42600262000391565b6003805463ffffffff191663ffffffff92909216919091179055620003bc565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200026f57815f19048211156200025357620002536200021b565b808516156200026157918102915b93841c939080029062000234565b509250929050565b5f82620002875750600162000324565b816200029557505f62000324565b8160018114620002ae5760028114620002b957620002d9565b600191505062000324565b60ff841115620002cd57620002cd6200021b565b50506001821b62000324565b5060208310610133831016604e8410600b8410161715620002fe575081810a62000324565b6200030a83836200022f565b805f19048211156200032057620003206200021b565b0290505b92915050565b5f6200033a60ff84168362000277565b9392505050565b80820281158282048414176200032457620003246200021b565b5f826200037657634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156200032457620003246200021b565b63ffffffff818116838216028082169190828114620003b457620003b46200021b565b505092915050565b61166980620003ca5f395ff3fe6080604052600436106100f2575f3560e01c806375f0a8741161008757806399c8d5561161005757806399c8d556146102a9578063a9059cbb146102bd578063dd62ed3e146102dc578063e8078d9414610320575f80fd5b806375f0a8741461022a578063860aefcf146102645780638da5cb5b1461028d57806395d89b41146100fd575f80fd5b8063313ce567116100c2578063313ce567146101ab5780636b130f9a146101cc57806370a08231146101e2578063715018a614610216575f80fd5b806306fdde03146100fd578063095ea7b31461013b57806318160ddd1461016a57806323b872dd1461018c575f80fd5b366100f957005b5f80fd5b348015610108575f80fd5b506040805180820182526007815266042595445322e360cc1b60208201529051610132919061123f565b60405180910390f35b348015610146575f80fd5b5061015a6101553660046112a2565b610328565b6040519015158152602001610132565b348015610175575f80fd5b5061017e610394565b604051908152602001610132565b348015610197575f80fd5b5061015a6101a63660046112cc565b6103b5565b3480156101b6575f80fd5b5060095b60405160ff9091168152602001610132565b3480156101d7575f80fd5b506101e0610475565b005b3480156101ed575f80fd5b5061017e6101fc36600461130a565b6001600160a01b03165f9081526001602052604090205490565b348015610221575f80fd5b506101e06104b3565b348015610235575f80fd5b5073d0bd4cd852e47fd6ab665c7bf92b85935ba9eecc5b6040516001600160a01b039091168152602001610132565b34801561026f575f80fd5b50610278610520565b60408051928352602083019190915201610132565b348015610298575f80fd5b505f546001600160a01b031661024c565b3480156102b4575f80fd5b506101ba6106b3565b3480156102c8575f80fd5b5061015a6102d73660046112a2565b6106c8565b3480156102e7575f80fd5b5061017e6102f6366004611325565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b6101e06106f9565b335f8181526002602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103829086815260200190565b60405180910390a35060015b92915050565b5f6103a16009600a611450565b6103b09064e8d4a5100061145e565b905090565b5f6103bf84610a62565b6103e45760405162461bcd60e51b81526004016103db90611475565b60405180910390fd5b6001600160a01b0384165f9081526002602090815260408083203384529091529020545f1914610460576001600160a01b0384165f90815260026020908152604080832033845290915290205461043c90839061149f565b6001600160a01b0385165f9081526002602090815260408083203384529091529020555b61046b848484610aa9565b90505b9392505050565b5f546001600160a01b0316331461049e5760405162461bcd60e51b81526004016103db906114b2565b6007805460ff60a81b1916600160a81b179055565b5f546001600160a01b031633146104dc5760405162461bcd60e51b81526004016103db906114b2565b5f80546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b5f8061052e6009600a611450565b61053d9064e8d4a5100061145e565b915061054b6009600a611450565b61055a9064e8d4a5100061145e565b6003549091506105729063ffffffff166103846114e9565b63ffffffff164211156105d55761058b6009600a611450565b61059a9064e8d4a5100061145e565b91506103e86105ab6009600a611450565b6105ba9064e8d4a5100061145e565b6105c590601e61145e565b6105cf9190611521565b90509091565b6003546105ea9063ffffffff166102586114e9565b63ffffffff16421115610655576103e86106066009600a611450565b6106159064e8d4a5100061145e565b61062090601961145e565b61062a9190611521565b91506103e861063b6009600a611450565b61064a9064e8d4a5100061145e565b6105c590601961145e565b6103e86106646009600a611450565b6106739064e8d4a5100061145e565b61067e90601461145e565b6106889190611521565b91506103e86106996009600a611450565b6106a89064e8d4a5100061145e565b6105c590601461145e565b5f600a6106be610cca565b6103b09190611534565b5f6106d233610a62565b6106ee5760405162461bcd60e51b81526004016103db90611475565b61046e338484610aa9565b5f546001600160a01b031633146107225760405162461bcd60e51b81526004016103db906114b2565b6007805460ff60b01b1916600160b01b1790556006546001600160a01b03161561077a5760405162461bcd60e51b81526020600482015260096024820152684c502065786973747360b81b60448201526064016103db565b600754600160a01b900460ff16156107c65760405162461bcd60e51b815260206004820152600f60248201526e3a3930b234b7339034b99037b832b760891b60448201526064016103db565b5f3411806107d357505f47115b61081f5760405162461bcd60e51b815260206004820152601d60248201527f4e6f2045544820696e20636f6e7472616374206f72206d65737361676500000060448201526064016103db565b305f908152600160205260409020546108725760405162461bcd60e51b8152602060048201526015602482015274139bc81d1bdad95b9cc81a5b8818dbdb9d1c9858dd605a1b60448201526064016103db565b60075f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e69190611555565b6001600160a01b031663c9c653963060075f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610945573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109699190611555565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156109b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109d79190611555565b600680546001600160a01b0319166001600160a01b0392909216919091179055305f90815260016020526040902054610a109047610d6b565b6006546001600160a01b03165f908152600560205260409020805460ff19166001179055600780546003805463ffffffff421663ffffffff1990911617905562ff00ff60a01b1916600160a01b179055565b6007545f908190600160a01b900460ff1615610a805750600161038e565b6001600160a01b0383165f9081526004602052604090205460ff161561038e5750600192915050565b5f6001600160a01b038416610b005760405162461bcd60e51b815260206004820152601d60248201527f4e6f207472616e73666572732066726f6d205a65726f2077616c6c657400000060448201526064016103db565b610b0b848484610e37565b610b495760405162461bcd60e51b815260206004820152600f60248201526e131a5b5a5d1cc8195e18d959591959608a1b60448201526064016103db565b600754600160a01b900460ff16610b91576001600160a01b0384165f9081526004602052604090205460ff16610b915760405162461bcd60e51b81526004016103db90611475565b600754600160b01b900460ff16158015610bc257506001600160a01b0383165f9081526005602052604090205460ff165b15610bcf57610bcf610ef5565b5f610bdb858585611048565b90505f610be8828561149f565b6001600160a01b0387165f90815260016020526040812080549293508692909190610c1490849061149f565b90915550508115610c4357305f9081526001602052604081208054849290610c3d908490611570565b90915550505b6001600160a01b0385165f9081526001602052604081208054839290610c6a908490611570565b92505081905550846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef86604051610cb691815260200190565b60405180910390a350600195945050505050565b6007545f908190600160a81b900460ff1615610ce757505f919050565b600354610cfc9063ffffffff166103846114e9565b63ffffffff16421115610d1057505f919050565b600354610d259063ffffffff166102586114e9565b63ffffffff16421115610d3a57506064919050565b600354610d4e9063ffffffff1660b46114e9565b63ffffffff16421115610d6357506096919050565b5060fa919050565b305f818152600260209081526040808320737a250d5630b4cf539739df2c5dacb4c659f2488d84529091528082205f1990556007548254915163f305d71960e01b81526004810194909452602484018690526044840183905260648401929092526001600160a01b0390811660848401524260a4840152169063f305d71990839060c40160606040518083038185885af1158015610e0b573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610e309190611583565b5050505050565b6001600160a01b0382165f9081526004602052604090205460019060ff16158015610e7a57506001600160a01b0384165f9081526004602052604090205460ff16155b1561046e575f80610e89610520565b9150915081841115610e99575f92505b6001600160a01b0385165f9081526005602052604090205460ff16158015610ee357506001600160a01b0385165f908152600160205260409020548190610ee1908690611570565b115b15610eec575f92505b50509392505050565b6007805460ff60b01b1916600160b01b179055305f90815260016020526040812054905062030d40610f296009600a611450565b610f389064e8d4a5100061145e565b610f429190611521565b8110158015610f5a5750600754600160a01b900460ff165b15611038576103e8610f6e6009600a611450565b610f7d9064e8d4a5100061145e565b610f879190611521565b8110610fb8576103e8610f9c6009600a611450565b610fab9064e8d4a5100061145e565b610fb59190611521565b90505b610fc181611108565b478015611036576040515f90819073d0bd4cd852e47fd6ab665c7bf92b85935ba9eecc9084908381818185875af1925050503d805f811461101d576040519150601f19603f3d011682016040523d82523d5f602084013e611022565b606091505b505060408051602081019091525f90525050505b505b506007805460ff60b01b19169055565b6007545f90600160a01b900460ff16801561107b57506001600160a01b0384165f9081526004602052604090205460ff16155b801561109f57506001600160a01b0383165f9081526004602052604090205460ff16155b1561046e576001600160a01b0384165f9081526005602052604090205460ff16806110e157506001600160a01b0383165f9081526005602052604090205460ff165b1561046e576103e86110f1610cca565b6110fe9060ff168461145e565b61046b9190611521565b6040805160028082526060820183525f9260208301908036833701905050905030815f8151811061113b5761113b6115ae565b6001600160a01b03928316602091820292909201810191909152600754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611192573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111b69190611555565b816001815181106111c9576111c96115ae565b6001600160a01b03928316602091820292909201015260075460405163791ac94760e01b815291169063791ac9479061120e9085905f908690309042906004016115c2565b5f604051808303815f87803b158015611225575f80fd5b505af1158015611237573d5f803e3d5ffd5b505050505050565b5f602080835283518060208501525f5b8181101561126b5785810183015185820160400152820161124f565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461129f575f80fd5b50565b5f80604083850312156112b3575f80fd5b82356112be8161128b565b946020939093013593505050565b5f805f606084860312156112de575f80fd5b83356112e98161128b565b925060208401356112f98161128b565b929592945050506040919091013590565b5f6020828403121561131a575f80fd5b813561046e8161128b565b5f8060408385031215611336575f80fd5b82356113418161128b565b915060208301356113518161128b565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156113aa57815f19048211156113905761139061135c565b8085161561139d57918102915b93841c9390800290611375565b509250929050565b5f826113c05750600161038e565b816113cc57505f61038e565b81600181146113e257600281146113ec57611408565b600191505061038e565b60ff8411156113fd576113fd61135c565b50506001821b61038e565b5060208310610133831016604e8410600b841016171561142b575081810a61038e565b6114358383611370565b805f19048211156114485761144861135c565b029392505050565b5f61046e60ff8416836113b2565b808202811582820484141761038e5761038e61135c565b60208082526010908201526f2a3930b234b733903737ba1037b832b760811b604082015260600190565b8181038181111561038e5761038e61135c565b60208082526018908201527f4f6e6c79206f776e65722063616e2063616c6c20746869730000000000000000604082015260600190565b63ffffffff8181168382160190808211156115065761150661135c565b5092915050565b634e487b7160e01b5f52601260045260245ffd5b5f8261152f5761152f61150d565b500490565b5f60ff8316806115465761154661150d565b8060ff84160491505092915050565b5f60208284031215611565575f80fd5b815161046e8161128b565b8082018082111561038e5761038e61135c565b5f805f60608486031215611595575f80fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156116125784516001600160a01b0316835293830193918301916001016115ed565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220224cede3dae6127728c26ad3a27e9cf2177a6b8702e1abb1b173216e92fda36564736f6c63430008170033ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef

Deployed Bytecode

0x6080604052600436106100f2575f3560e01c806375f0a8741161008757806399c8d5561161005757806399c8d556146102a9578063a9059cbb146102bd578063dd62ed3e146102dc578063e8078d9414610320575f80fd5b806375f0a8741461022a578063860aefcf146102645780638da5cb5b1461028d57806395d89b41146100fd575f80fd5b8063313ce567116100c2578063313ce567146101ab5780636b130f9a146101cc57806370a08231146101e2578063715018a614610216575f80fd5b806306fdde03146100fd578063095ea7b31461013b57806318160ddd1461016a57806323b872dd1461018c575f80fd5b366100f957005b5f80fd5b348015610108575f80fd5b506040805180820182526007815266042595445322e360cc1b60208201529051610132919061123f565b60405180910390f35b348015610146575f80fd5b5061015a6101553660046112a2565b610328565b6040519015158152602001610132565b348015610175575f80fd5b5061017e610394565b604051908152602001610132565b348015610197575f80fd5b5061015a6101a63660046112cc565b6103b5565b3480156101b6575f80fd5b5060095b60405160ff9091168152602001610132565b3480156101d7575f80fd5b506101e0610475565b005b3480156101ed575f80fd5b5061017e6101fc36600461130a565b6001600160a01b03165f9081526001602052604090205490565b348015610221575f80fd5b506101e06104b3565b348015610235575f80fd5b5073d0bd4cd852e47fd6ab665c7bf92b85935ba9eecc5b6040516001600160a01b039091168152602001610132565b34801561026f575f80fd5b50610278610520565b60408051928352602083019190915201610132565b348015610298575f80fd5b505f546001600160a01b031661024c565b3480156102b4575f80fd5b506101ba6106b3565b3480156102c8575f80fd5b5061015a6102d73660046112a2565b6106c8565b3480156102e7575f80fd5b5061017e6102f6366004611325565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b6101e06106f9565b335f8181526002602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103829086815260200190565b60405180910390a35060015b92915050565b5f6103a16009600a611450565b6103b09064e8d4a5100061145e565b905090565b5f6103bf84610a62565b6103e45760405162461bcd60e51b81526004016103db90611475565b60405180910390fd5b6001600160a01b0384165f9081526002602090815260408083203384529091529020545f1914610460576001600160a01b0384165f90815260026020908152604080832033845290915290205461043c90839061149f565b6001600160a01b0385165f9081526002602090815260408083203384529091529020555b61046b848484610aa9565b90505b9392505050565b5f546001600160a01b0316331461049e5760405162461bcd60e51b81526004016103db906114b2565b6007805460ff60a81b1916600160a81b179055565b5f546001600160a01b031633146104dc5760405162461bcd60e51b81526004016103db906114b2565b5f80546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b5f8061052e6009600a611450565b61053d9064e8d4a5100061145e565b915061054b6009600a611450565b61055a9064e8d4a5100061145e565b6003549091506105729063ffffffff166103846114e9565b63ffffffff164211156105d55761058b6009600a611450565b61059a9064e8d4a5100061145e565b91506103e86105ab6009600a611450565b6105ba9064e8d4a5100061145e565b6105c590601e61145e565b6105cf9190611521565b90509091565b6003546105ea9063ffffffff166102586114e9565b63ffffffff16421115610655576103e86106066009600a611450565b6106159064e8d4a5100061145e565b61062090601961145e565b61062a9190611521565b91506103e861063b6009600a611450565b61064a9064e8d4a5100061145e565b6105c590601961145e565b6103e86106646009600a611450565b6106739064e8d4a5100061145e565b61067e90601461145e565b6106889190611521565b91506103e86106996009600a611450565b6106a89064e8d4a5100061145e565b6105c590601461145e565b5f600a6106be610cca565b6103b09190611534565b5f6106d233610a62565b6106ee5760405162461bcd60e51b81526004016103db90611475565b61046e338484610aa9565b5f546001600160a01b031633146107225760405162461bcd60e51b81526004016103db906114b2565b6007805460ff60b01b1916600160b01b1790556006546001600160a01b03161561077a5760405162461bcd60e51b81526020600482015260096024820152684c502065786973747360b81b60448201526064016103db565b600754600160a01b900460ff16156107c65760405162461bcd60e51b815260206004820152600f60248201526e3a3930b234b7339034b99037b832b760891b60448201526064016103db565b5f3411806107d357505f47115b61081f5760405162461bcd60e51b815260206004820152601d60248201527f4e6f2045544820696e20636f6e7472616374206f72206d65737361676500000060448201526064016103db565b305f908152600160205260409020546108725760405162461bcd60e51b8152602060048201526015602482015274139bc81d1bdad95b9cc81a5b8818dbdb9d1c9858dd605a1b60448201526064016103db565b60075f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e69190611555565b6001600160a01b031663c9c653963060075f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610945573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109699190611555565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156109b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109d79190611555565b600680546001600160a01b0319166001600160a01b0392909216919091179055305f90815260016020526040902054610a109047610d6b565b6006546001600160a01b03165f908152600560205260409020805460ff19166001179055600780546003805463ffffffff421663ffffffff1990911617905562ff00ff60a01b1916600160a01b179055565b6007545f908190600160a01b900460ff1615610a805750600161038e565b6001600160a01b0383165f9081526004602052604090205460ff161561038e5750600192915050565b5f6001600160a01b038416610b005760405162461bcd60e51b815260206004820152601d60248201527f4e6f207472616e73666572732066726f6d205a65726f2077616c6c657400000060448201526064016103db565b610b0b848484610e37565b610b495760405162461bcd60e51b815260206004820152600f60248201526e131a5b5a5d1cc8195e18d959591959608a1b60448201526064016103db565b600754600160a01b900460ff16610b91576001600160a01b0384165f9081526004602052604090205460ff16610b915760405162461bcd60e51b81526004016103db90611475565b600754600160b01b900460ff16158015610bc257506001600160a01b0383165f9081526005602052604090205460ff165b15610bcf57610bcf610ef5565b5f610bdb858585611048565b90505f610be8828561149f565b6001600160a01b0387165f90815260016020526040812080549293508692909190610c1490849061149f565b90915550508115610c4357305f9081526001602052604081208054849290610c3d908490611570565b90915550505b6001600160a01b0385165f9081526001602052604081208054839290610c6a908490611570565b92505081905550846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef86604051610cb691815260200190565b60405180910390a350600195945050505050565b6007545f908190600160a81b900460ff1615610ce757505f919050565b600354610cfc9063ffffffff166103846114e9565b63ffffffff16421115610d1057505f919050565b600354610d259063ffffffff166102586114e9565b63ffffffff16421115610d3a57506064919050565b600354610d4e9063ffffffff1660b46114e9565b63ffffffff16421115610d6357506096919050565b5060fa919050565b305f818152600260209081526040808320737a250d5630b4cf539739df2c5dacb4c659f2488d84529091528082205f1990556007548254915163f305d71960e01b81526004810194909452602484018690526044840183905260648401929092526001600160a01b0390811660848401524260a4840152169063f305d71990839060c40160606040518083038185885af1158015610e0b573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610e309190611583565b5050505050565b6001600160a01b0382165f9081526004602052604090205460019060ff16158015610e7a57506001600160a01b0384165f9081526004602052604090205460ff16155b1561046e575f80610e89610520565b9150915081841115610e99575f92505b6001600160a01b0385165f9081526005602052604090205460ff16158015610ee357506001600160a01b0385165f908152600160205260409020548190610ee1908690611570565b115b15610eec575f92505b50509392505050565b6007805460ff60b01b1916600160b01b179055305f90815260016020526040812054905062030d40610f296009600a611450565b610f389064e8d4a5100061145e565b610f429190611521565b8110158015610f5a5750600754600160a01b900460ff165b15611038576103e8610f6e6009600a611450565b610f7d9064e8d4a5100061145e565b610f879190611521565b8110610fb8576103e8610f9c6009600a611450565b610fab9064e8d4a5100061145e565b610fb59190611521565b90505b610fc181611108565b478015611036576040515f90819073d0bd4cd852e47fd6ab665c7bf92b85935ba9eecc9084908381818185875af1925050503d805f811461101d576040519150601f19603f3d011682016040523d82523d5f602084013e611022565b606091505b505060408051602081019091525f90525050505b505b506007805460ff60b01b19169055565b6007545f90600160a01b900460ff16801561107b57506001600160a01b0384165f9081526004602052604090205460ff16155b801561109f57506001600160a01b0383165f9081526004602052604090205460ff16155b1561046e576001600160a01b0384165f9081526005602052604090205460ff16806110e157506001600160a01b0383165f9081526005602052604090205460ff165b1561046e576103e86110f1610cca565b6110fe9060ff168461145e565b61046b9190611521565b6040805160028082526060820183525f9260208301908036833701905050905030815f8151811061113b5761113b6115ae565b6001600160a01b03928316602091820292909201810191909152600754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611192573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111b69190611555565b816001815181106111c9576111c96115ae565b6001600160a01b03928316602091820292909201015260075460405163791ac94760e01b815291169063791ac9479061120e9085905f908690309042906004016115c2565b5f604051808303815f87803b158015611225575f80fd5b505af1158015611237573d5f803e3d5ffd5b505050505050565b5f602080835283518060208501525f5b8181101561126b5785810183015185820160400152820161124f565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461129f575f80fd5b50565b5f80604083850312156112b3575f80fd5b82356112be8161128b565b946020939093013593505050565b5f805f606084860312156112de575f80fd5b83356112e98161128b565b925060208401356112f98161128b565b929592945050506040919091013590565b5f6020828403121561131a575f80fd5b813561046e8161128b565b5f8060408385031215611336575f80fd5b82356113418161128b565b915060208301356113518161128b565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156113aa57815f19048211156113905761139061135c565b8085161561139d57918102915b93841c9390800290611375565b509250929050565b5f826113c05750600161038e565b816113cc57505f61038e565b81600181146113e257600281146113ec57611408565b600191505061038e565b60ff8411156113fd576113fd61135c565b50506001821b61038e565b5060208310610133831016604e8410600b841016171561142b575081810a61038e565b6114358383611370565b805f19048211156114485761144861135c565b029392505050565b5f61046e60ff8416836113b2565b808202811582820484141761038e5761038e61135c565b60208082526010908201526f2a3930b234b733903737ba1037b832b760811b604082015260600190565b8181038181111561038e5761038e61135c565b60208082526018908201527f4f6e6c79206f776e65722063616e2063616c6c20746869730000000000000000604082015260600190565b63ffffffff8181168382160190808211156115065761150661135c565b5092915050565b634e487b7160e01b5f52601260045260245ffd5b5f8261152f5761152f61150d565b500490565b5f60ff8316806115465761154661150d565b8060ff84160491505092915050565b5f60208284031215611565575f80fd5b815161046e8161128b565b8082018082111561038e5761038e61135c565b5f805f60608486031215611595575f80fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156116125784516001600160a01b0316835293830193918301916001016115ed565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220224cede3dae6127728c26ad3a27e9cf2177a6b8702e1abb1b173216e92fda36564736f6c63430008170033

Deployed Bytecode Sourcemap

1553:8810:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3614:80;;;;;;;;;;-1:-1:-1;3686:5:0;;;;;;;;;;;-1:-1:-1;;;3686:5:0;;;;3614:80;;;;3686:5;3614:80;:::i;:::-;;;;;;;;3952:216;;;;;;;;;;-1:-1:-1;3952:216:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;3952:216:0;1023:187:1;3344:88:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;3344:88:0;1215:177:1;4409:404:0;;;;;;;;;;-1:-1:-1;4409:404:0;;;;;:::i;:::-;;:::i;3438:80::-;;;;;;;;;;-1:-1:-1;1743:1:0;3438:80;;;2030:4:1;2018:17;;;2000:36;;1988:2;1973:18;3438:80:0;1858:184:1;8095:82:0;;;;;;;;;;;;;:::i;:::-;;3700:105;;;;;;;;;;-1:-1:-1;3700:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;3784:18:0;3766:7;3784:18;;;:9;:18;;;;;;;3700:105;1409:137;;;;;;;;;;;;;:::i;9284:101::-;;;;;;;;;;-1:-1:-1;2054:42:0;9284:101;;;-1:-1:-1;;;;;2463:32:1;;;2445:51;;2433:2;2418:18;9284:101:0;2299:203:1;7281:806:0;;;;;;;;;;;;;:::i;:::-;;;;2681:25:1;;;2737:2;2722:18;;2715:34;;;;2654:18;7281:806:0;2507:248:1;1338:65:0;;;;;;;;;;-1:-1:-1;1376:7:0;1394:6;-1:-1:-1;;;;;1394:6:0;1338:65;;8850:80;;;;;;;;;;;;;:::i;4176:225::-;;;;;;;;;;-1:-1:-1;4176:225:0;;;;;:::i;:::-;;:::i;3811:133::-;;;;;;;;;;-1:-1:-1;3811:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;3913:19:0;;;3895:7;3913:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;3811:133;4821:654;;;:::i;3952:216::-;4056:10;4027:4;4044:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;4044:32:0;;;;;;;;;;:41;;;4101:37;4027:4;;4044:32;;4101:37;;;;4079:6;1361:25:1;;1349:2;1334:18;;1215:177;4101:37:0;;;;;;;;-1:-1:-1;4156:4:0;3952:216;;;;;:::o;3344:88::-;3399:7;1811:13;1743:1;1811:2;:13;:::i;:::-;1791:34;;:16;:34;:::i;:::-;3410:19;;3344:88;:::o;4409:404::-;4509:4;4534:25;4552:6;4534:17;:25::i;:::-;4526:54;;;;-1:-1:-1;;;4526:54:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;4594:19:0;;;;;;:11;:19;;;;;;;;4614:10;4594:31;;;;;;;;-1:-1:-1;;4594:52:0;4591:157;;-1:-1:-1;;;;;4696:19:0;;;;;;:11;:19;;;;;;;;4716:10;4696:31;;;;;;;;:40;;4730:6;;4696:40;:::i;:::-;-1:-1:-1;;;;;4662:19:0;;;;;;:11;:19;;;;;;;;4682:10;4662:31;;;;;;;:74;4591:157;4765:40;4779:6;4787:9;4798:6;4765:13;:40::i;:::-;4758:47;;4409:404;;;;;;:::o;8095:82::-;1291:6;;-1:-1:-1;;;;;1291:6:0;1277:10;:20;1269:57;;;;-1:-1:-1;;;1269:57:0;;;;;;;:::i;:::-;8150:12:::1;:19:::0;;-1:-1:-1;;;;8150:19:0::1;-1:-1:-1::0;;;8150:19:0::1;::::0;;8095:82::o;1409:137::-;1291:6;;-1:-1:-1;;;;;1291:6:0;1277:10;:20;1269:57;;;;-1:-1:-1;;;1269:57:0;;;;;;;:::i;:::-;1486:1:::1;1469:19:::0;;-1:-1:-1;;;;;;1469:19:0::1;::::0;;1505:32:::1;::::0;2445:51:1;;;1505:32:0::1;::::0;2433:2:1;2418:18;1505:32:0::1;;;;;;;1409:137::o:0;7281:806::-;7320:19;;1811:13;1743:1;1811:2;:13;:::i;:::-;1791:34;;:16;:34;:::i;:::-;7377:26;-1:-1:-1;1811:13:0;1743:1;1811:2;:13;:::i;:::-;1791:34;;:16;:34;:::i;:::-;7478:11;;7415:30;;-1:-1:-1;7478:17:0;;:11;;7492:3;7478:17;:::i;:::-;7460:35;;:15;:35;7456:624;;;1811:13;1743:1;1811:2;:13;:::i;:::-;1791:34;;:16;:34;:::i;:::-;7512:26;-1:-1:-1;7643:4:0;1811:13;1743:1;1811:2;:13;:::i;:::-;1791:34;;:16;:34;:::i;:::-;7623:17;;7638:2;7623:17;:::i;:::-;:24;;;;:::i;:::-;7605:42;;7281:806;;:::o;7456:624::-;7703:11;;:17;;:11;;7717:3;7703:17;:::i;:::-;7685:35;;:15;:35;7681:399;;;7771:4;1811:13;1743:1;1811:2;:13;:::i;:::-;1791:34;;:16;:34;:::i;:::-;7751:17;;7766:2;7751:17;:::i;:::-;:24;;;;:::i;:::-;7737:38;-1:-1:-1;7854:4:0;1811:13;1743:1;1811:2;:13;:::i;:::-;1791:34;;:16;:34;:::i;:::-;7834:17;;7849:2;7834:17;:::i;7681:399::-;7951:4;1811:13;1743:1;1811:2;:13;:::i;:::-;1791:34;;:16;:34;:::i;:::-;7931:17;;7946:2;7931:17;:::i;:::-;:24;;;;:::i;:::-;7917:38;-1:-1:-1;8036:4:0;1811:13;1743:1;1811:2;:13;:::i;:::-;1791:34;;:16;:34;:::i;:::-;8016:17;;8031:2;8016:17;:::i;8850:80::-;8888:5;8920:2;8913:6;:4;:6::i;:::-;:9;;;;:::i;4176:225::-;4256:4;4281:29;4299:10;4281:17;:29::i;:::-;4273:58;;;;-1:-1:-1;;;4273:58:0;;;;;;;:::i;:::-;4349:44;4363:10;4375:9;4386:6;4349:13;:44::i;4821:654::-;1291:6;;-1:-1:-1;;;;;1291:6:0;1277:10;:20;1269:57;;;;-1:-1:-1;;;1269:57:0;;;;;;;:::i;:::-;2697:10:::1;:17:::0;;-1:-1:-1;;;;2697:17:0::1;-1:-1:-1::0;;;2697:17:0::1;::::0;;4903:10:::2;::::0;-1:-1:-1;;;;;4903:10:0::2;:24:::0;4895:46:::2;;;::::0;-1:-1:-1;;;4895:46:0;;6472:2:1;4895:46:0::2;::::0;::::2;6454:21:1::0;6511:1;6491:18;;;6484:29;-1:-1:-1;;;6529:18:1;;;6522:39;6578:18;;4895:46:0::2;6270:332:1::0;4895:46:0::2;4961:12;::::0;-1:-1:-1;;;4961:12:0;::::2;;;4960:13;4952:41;;;::::0;-1:-1:-1;;;4952:41:0;;6809:2:1;4952:41:0::2;::::0;::::2;6791:21:1::0;6848:2;6828:18;;;6821:30;-1:-1:-1;;;6867:18:1;;;6860:45;6922:18;;4952:41:0::2;6607:339:1::0;4952:41:0::2;5024:1;5012:9;:13;:40;;;;5051:1;5029:21;:23;5012:40;5004:82;;;::::0;-1:-1:-1;;;5004:82:0;;7153:2:1;5004:82:0::2;::::0;::::2;7135:21:1::0;7192:2;7172:18;;;7165:30;7231:31;7211:18;;;7204:59;7280:18;;5004:82:0::2;6951:353:1::0;5004:82:0::2;5123:4;5130:1;5105:24:::0;;;:9:::2;:24;::::0;;;;;5097:60:::2;;;::::0;-1:-1:-1;;;5097:60:0;;7511:2:1;5097:60:0::2;::::0;::::2;7493:21:1::0;7550:2;7530:18;;;7523:30;-1:-1:-1;;;7569:18:1;;;7562:51;7630:18;;5097:60:0::2;7309:345:1::0;5097:60:0::2;5199:18;;;;;;;;;-1:-1:-1::0;;;;;5199:18:0::2;-1:-1:-1::0;;;;;5199:26:0::2;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;5181:58:0::2;;5248:4;5255:18;;;;;;;;;-1:-1:-1::0;;;;;5255:18:0::2;-1:-1:-1::0;;;;;5255:23:0::2;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5181:100;::::0;-1:-1:-1;;;;;;5181:100:0::2;::::0;;;;;;-1:-1:-1;;;;;8145:15:1;;;5181:100:0::2;::::0;::::2;8127:34:1::0;8197:15;;8177:18;;;8170:43;8062:18;;5181:100:0::2;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5168:10;:113:::0;;-1:-1:-1;;;;;;5168:113:0::2;-1:-1:-1::0;;;;;5168:113:0;;;::::2;::::0;;;::::2;::::0;;5324:4:::2;-1:-1:-1::0;5306:24:0;;;-1:-1:-1;5306:24:0::2;::::0;;;;;5292:62:::2;::::0;5332:21:::2;5292:13;:62::i;:::-;5371:10;::::0;-1:-1:-1;;;;;5371:10:0::2;5365:17;::::0;;;:5:::2;:17;::::0;;;;:24;;-1:-1:-1;;5365:24:0::2;5385:4;5365:24;::::0;;5400:12:::2;:19:::0;;5430:11:::2;:37:::0;;::::2;5451:15;5430:37;-1:-1:-1::0;;5430:37:0;;::::2;;::::0;;-1:-1:-1;;;;2739:18:0;-1:-1:-1;;;2739:18:0;;;4821:654::o;6573:258::-;6694:12;;6638:4;;;;-1:-1:-1;;;6694:12:0;;;;6689:105;;;-1:-1:-1;6725:4:0;6689:105;;;-1:-1:-1;;;;;6752:17:0;;;;;;:9;:17;;;;;;;;6748:46;;;-1:-1:-1;6787:4:0;6812:11;6573:258;-1:-1:-1;;6573:258:0:o;5783:782::-;5875:4;-1:-1:-1;;;;;5900:20:0;;5892:62;;;;-1:-1:-1;;;5892:62:0;;8426:2:1;5892:62:0;;;8408:21:1;8465:2;8445:18;;;8438:30;8504:31;8484:18;;;8477:59;8553:18;;5892:62:0;8224:353:1;5892:62:0;5973:38;5985:6;5993:9;6004:6;5973:11;:38::i;:::-;5965:66;;;;-1:-1:-1;;;5965:66:0;;8784:2:1;5965:66:0;;;8766:21:1;8823:2;8803:18;;;8796:30;-1:-1:-1;;;8842:18:1;;;8835:45;8897:18;;5965:66:0;8582:339:1;5965:66:0;6047:12;;-1:-1:-1;;;6047:12:0;;;;6042:70;;-1:-1:-1;;;;;6071:17:0;;;;;;:9;:17;;;;;;;;6063:46;;;;-1:-1:-1;;;6063:46:0;;;;;;;:::i;:::-;6136:10;;-1:-1:-1;;;6136:10:0;;;;6135:11;:31;;;;-1:-1:-1;;;;;;6150:16:0;;;;;;:5;:16;;;;;;;;6135:31;6130:64;;;6171:20;:18;:20::i;:::-;6204:18;6225:40;6239:6;6247:9;6258:6;6225:13;:40::i;:::-;6204:61;-1:-1:-1;6276:23:0;6302:19;6204:61;6302:6;:19;:::i;:::-;-1:-1:-1;;;;;6332:17:0;;;;;;:9;:17;;;;;:27;;6276:45;;-1:-1:-1;6353:6:0;;6332:17;;;:27;;6353:6;;6332:27;:::i;:::-;;;;-1:-1:-1;;6375:14:0;;6370:65;;6412:4;6394:24;;;;:9;:24;;;;;:38;;6422:10;;6394:24;:38;;6422:10;;6394:38;:::i;:::-;;;;-1:-1:-1;;6370:65:0;-1:-1:-1;;;;;6445:20:0;;;;;;:9;:20;;;;;:39;;6469:15;;6445:20;:39;;6469:15;;6445:39;:::i;:::-;;;;;;;;6517:9;-1:-1:-1;;;;;6500:35:0;6509:6;-1:-1:-1;;;;;6500:35:0;;6528:6;6500:35;;;;1361:25:1;;1349:2;1334:18;;1215:177;6500:35:0;;;;;;;;-1:-1:-1;6553:4:0;;5783:782;-1:-1:-1;;;;;5783:782:0:o;8185:657::-;8274:12;;8222:5;;;;-1:-1:-1;;;8274:12:0;;;;8270:534;;;-1:-1:-1;8319:1:0;8821:13;8185:657;-1:-1:-1;8185:657:0:o;8270:534::-;8408:11;;:17;;:11;;8422:3;8408:17;:::i;:::-;8390:35;;:15;:35;8386:418;;;-1:-1:-1;8458:1:0;8821:13;8185:657;-1:-1:-1;8185:657:0:o;8386:418::-;8525:11;;:17;;:11;;8539:3;8525:17;:::i;:::-;8507:35;;:15;:35;8503:301;;;-1:-1:-1;8575:3:0;8821:13;8185:657;-1:-1:-1;8185:657:0:o;8503:301::-;8642:11;;:17;;:11;;8656:3;8642:17;:::i;:::-;8624:35;;:15;:35;8620:184;;;-1:-1:-1;8692:3:0;8821:13;8185:657;-1:-1:-1;8185:657:0:o;8620:184::-;-1:-1:-1;8767:3:0;8821:13;8185:657;-1:-1:-1;8185:657:0:o;5483:292::-;5591:4;5571:26;;;;:11;:26;;;;;;;;2419:42;5571:46;;;;;;;;-1:-1:-1;;5571:66:0;;5648:18;;5742:6;;5648:119;;-1:-1:-1;;;5648:119:0;;;;;9397:34:1;;;;9447:18;;;9440:34;;;9490:18;;;9483:34;;;9533:18;;;9526:34;;;;-1:-1:-1;;;;;5742:6:0;;;9576:19:1;;;9569:44;5750:15:0;9629:19:1;;;9622:35;5648:18:0;;:34;;5690:13;;9331:19:1;;5648:119:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;5483:292;;:::o;6839:436::-;-1:-1:-1;;;;;6986:20:0;;6933:11;6986:20;;;:9;:20;;;;;;6966:4;;6986:20;;6985:21;:43;;;;-1:-1:-1;;;;;;7011:17:0;;;;;;:9;:17;;;;;;;;7010:18;6985:43;6981:287;;;7058:13;7073:17;7094:8;:6;:8::i;:::-;7057:45;;;;7130:5;7121:6;:14;7117:39;;;7148:5;7139:14;;7117:39;-1:-1:-1;;;;;7175:16:0;;;;;;:5;:16;;;;;;;;7174:17;:62;;;;-1:-1:-1;;;;;;7195:20:0;;;;;;:9;:20;;;;;;7227:9;;7195:29;;7218:6;;7195:29;:::i;:::-;:41;7174:62;7170:87;;;7249:5;7240:14;;7170:87;7030:238;;6839:436;;;;;:::o;9393:631::-;2697:10;:17;;-1:-1:-1;;;;2697:17:0;-1:-1:-1;;;2697:17:0;;;9502:4:::1;-1:-1:-1::0;3784:18:0;;;-1:-1:-1;3784:18:0;;;;;;9454:54;-1:-1:-1;2158:6:0::1;1811:13;1743:1;1811:2;:13;:::i;:::-;1791:34;::::0;:16:::1;:34;:::i;:::-;2143:21;;;;:::i;:::-;9524:19;:34;;:50;;;;-1:-1:-1::0;9562:12:0::1;::::0;-1:-1:-1;;;9562:12:0;::::1;;;9524:50;9519:498;;;2225:4;1811:13;1743:1;1811:2;:13;:::i;:::-;1791:34;::::0;:16:::1;:34;:::i;:::-;2210:19;;;;:::i;:::-;9597;:34;9592:80;;2225:4;1811:13;1743:1;1811:2;:13;:::i;:::-;1791:34;::::0;:16:::1;:34;:::i;:::-;2210:19;;;;:::i;:::-;9636:33;;9592:80;9686:41;9707:19;9686:20;:41::i;:::-;9772:21;9811:23:::0;;9808:198:::1;;9889:53;::::0;9857:9:::1;::::0;;;2054:42:::1;::::0;9918:19;;9857:9;9889:53;9857:9;9889:53;9918:19;2054:42;9889:53:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;9981:9:0::1;::::0;;::::1;::::0;::::1;::::0;;;-1:-1:-1;9981:9:0;;-1:-1:-1;;;9808:198:0::1;9577:440;9519:498;-1:-1:-1::0;2739:10:0;:18;;-1:-1:-1;;;;2739:18:0;;;9393:631::o;8938:338::-;9070:12;;9035:17;;-1:-1:-1;;;9070:12:0;;;;:34;;;;-1:-1:-1;;;;;;9087:17:0;;;;;;:9;:17;;;;;;;;9086:18;9070:34;:59;;;;-1:-1:-1;;;;;;9109:20:0;;;;;;:9;:20;;;;;;;;9108:21;9070:59;9065:204;;;-1:-1:-1;;;;;9153:13:0;;;;;;:5;:13;;;;;;;;;:33;;-1:-1:-1;;;;;;9170:16:0;;;;;;:5;:16;;;;;;;;9153:33;9148:110;;;9238:4;9229:6;:4;:6::i;:::-;9220:15;;;;:6;:15;:::i;:::-;:22;;;;:::i;10032:328::-;10126:16;;;10140:1;10126:16;;;;;;;;10102:21;;10126:16;;;;;;;;;;-1:-1:-1;10126:16:0;10102:40;;10171:4;10153;10158:1;10153:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10153:23:0;;;:7;;;;;;;;;;:23;;;;10197:18;;:25;;;-1:-1:-1;;;10197:25:0;;;;:18;;;;;:23;;:25;;;;;10153:7;;10197:25;;;;;:18;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10187:4;10192:1;10187:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10187:35:0;;;:7;;;;;;;;;:35;10233:18;;:119;;-1:-1:-1;;;10233:119:0;;:18;;;:69;;:119;;10303:11;;10233:18;;10317:4;;10330;;10336:15;;10233:119;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10091:269;10032:328;:::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;622:70;567:131;:::o;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;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2760:388::-;2828:6;2836;2889:2;2877:9;2868:7;2864:23;2860:32;2857:52;;;2905:1;2902;2895:12;2857:52;2944:9;2931:23;2963:31;2988:5;2963:31;:::i;:::-;3013:5;-1:-1:-1;3070:2:1;3055:18;;3042:32;3083:33;3042:32;3083:33;:::i;:::-;3135:7;3125:17;;;2760:388;;;;;:::o;3153:127::-;3214:10;3209:3;3205:20;3202:1;3195:31;3245:4;3242:1;3235:15;3269:4;3266:1;3259:15;3285:416;3374:1;3411:5;3374:1;3425:270;3446:7;3436:8;3433:21;3425:270;;;3505:4;3501:1;3497:6;3493:17;3487:4;3484:27;3481:53;;;3514:18;;:::i;:::-;3564:7;3554:8;3550:22;3547:55;;;3584:16;;;;3547:55;3663:22;;;;3623:15;;;;3425:270;;;3429:3;3285:416;;;;;:::o;3706:806::-;3755:5;3785:8;3775:80;;-1:-1:-1;3826:1:1;3840:5;;3775:80;3874:4;3864:76;;-1:-1:-1;3911:1:1;3925:5;;3864:76;3956:4;3974:1;3969:59;;;;4042:1;4037:130;;;;3949:218;;3969:59;3999:1;3990:10;;4013:5;;;4037:130;4074:3;4064:8;4061:17;4058:43;;;4081:18;;:::i;:::-;-1:-1:-1;;4137:1:1;4123:16;;4152:5;;3949:218;;4251:2;4241:8;4238:16;4232:3;4226:4;4223:13;4219:36;4213:2;4203:8;4200:16;4195:2;4189:4;4186:12;4182:35;4179:77;4176:159;;;-1:-1:-1;4288:19:1;;;4320:5;;4176:159;4367:34;4392:8;4386:4;4367:34;:::i;:::-;4437:6;4433:1;4429:6;4425:19;4416:7;4413:32;4410:58;;;4448:18;;:::i;:::-;4486:20;;3706:806;-1:-1:-1;;;3706:806:1:o;4517:140::-;4575:5;4604:47;4645:4;4635:8;4631:19;4625:4;4604:47;:::i;4662:168::-;4735:9;;;4766;;4783:15;;;4777:22;;4763:37;4753:71;;4804:18;;:::i;4835:340::-;5037:2;5019:21;;;5076:2;5056:18;;;5049:30;-1:-1:-1;;;5110:2:1;5095:18;;5088:46;5166:2;5151:18;;4835:340::o;5180:128::-;5247:9;;;5268:11;;;5265:37;;;5282:18;;:::i;5313:348::-;5515:2;5497:21;;;5554:2;5534:18;;;5527:30;5593:26;5588:2;5573:18;;5566:54;5652:2;5637:18;;5313:348::o;5666:172::-;5733:10;5763;;;5775;;;5759:27;;5798:11;;;5795:37;;;5812:18;;:::i;:::-;5795:37;5666:172;;;;:::o;5843:127::-;5904:10;5899:3;5895:20;5892:1;5885:31;5935:4;5932:1;5925:15;5959:4;5956:1;5949:15;5975:120;6015:1;6041;6031:35;;6046:18;;:::i;:::-;-1:-1:-1;6080:9:1;;5975:120::o;6100:165::-;6138:1;6172:4;6169:1;6165:12;6196:3;6186:37;;6203:18;;:::i;:::-;6255:3;6248:4;6245:1;6241:12;6237:22;6232:27;;;6100:165;;;;:::o;7659:251::-;7729:6;7782:2;7770:9;7761:7;7757:23;7753:32;7750:52;;;7798:1;7795;7788:12;7750:52;7830:9;7824:16;7849:31;7874:5;7849:31;:::i;8926:125::-;8991:9;;;9012:10;;;9009:36;;;9025:18;;:::i;9668:306::-;9756:6;9764;9772;9825:2;9813:9;9804:7;9800:23;9796:32;9793:52;;;9841:1;9838;9831:12;9793:52;9870:9;9864:16;9854:26;;9920:2;9909:9;9905:18;9899:25;9889:35;;9964:2;9953:9;9949:18;9943:25;9933:35;;9668:306;;;;;:::o;10321:127::-;10382:10;10377:3;10373:20;10370:1;10363:31;10413:4;10410:1;10403:15;10437:4;10434:1;10427:15;10453:980;10715:4;10763:3;10752:9;10748:19;10794:6;10783:9;10776:25;10820:2;10858:6;10853:2;10842:9;10838:18;10831:34;10901:3;10896:2;10885:9;10881:18;10874:31;10925:6;10960;10954:13;10991:6;10983;10976:22;11029:3;11018:9;11014:19;11007:26;;11068:2;11060:6;11056:15;11042:29;;11089:1;11099:195;11113:6;11110:1;11107:13;11099:195;;;11178:13;;-1:-1:-1;;;;;11174:39:1;11162:52;;11269:15;;;;11234:12;;;;11210:1;11128:9;11099:195;;;-1:-1:-1;;;;;;;11350:32:1;;;;11345:2;11330:18;;11323:60;-1:-1:-1;;;11414:3:1;11399:19;11392:35;11311:3;10453:980;-1:-1:-1;;;10453:980:1:o

Swarm Source

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