ETH Price: $2,905.59 (-1.11%)
 

Overview

Max Total Supply

10,000,000,000 HOLO

Holders

63

Transfers

-
0

Market

Onchain Market Cap

-

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

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:
MicroCloudHologram

Compiler Version
v0.8.26+commit.8a97fa7a

Optimization Enabled:
Yes with 200 runs

Other Settings:
shanghai EvmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2025-06-03
*/

// SPDX-License-Identifier: MIT
/*
https://t.me/holoERC20
https://x.com/TheTradeXchange/status/1929928725941878973

MicroCloud Hologram Inc. Announces It Has Purchased Up to $200 Million in Bitcoin and Cryptocurrency-Related Securities Derivatives, with a Current Cumulative Investment Income of $19.08 Million.
*/
pragma solidity 0.8.26;

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

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

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

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

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

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

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

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

}

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

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

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

}

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 factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract MicroCloudHologram is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    mapping(address => uint256) private _holderLastTransferTimestamp;
    bool public transferDelayEnabled = true;
    address payable private _taxWallet;

    uint256 private _initialBuyTax=20;
    uint256 private _initialSellTax=20;
    uint256 private _finalBuyTax=0;
    uint256 private _finalSellTax=0;
    uint256 private _reduceBuyTaxAt=15;
    uint256 private _reduceSellTaxAt=15;
    uint256 private _preventSwapBefore=11;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 10000000000  * 10**_decimals;
    string private constant _name = unicode"MicroCloud Hologram Inc";
    string private constant _symbol = unicode"HOLO";
    uint256 public _maxTxAmount = 200000000 * 10**_decimals;
    uint256 public _maxWalletSize = 200000000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 1000000 * 10**_decimals;
    uint256 public _maxTaxSwap= 200000000 * 10**_decimals;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = true;

        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

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

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

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

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

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

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

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

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {
            taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);

            if (transferDelayEnabled) {
                  if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) {
                      require(
                          _holderLastTransferTimestamp[tx.origin] <
                              block.number,
                          "_transfer:: Transfer Delay enabled.  Only one purchase per block allowed."
                      );
                      _holderLastTransferTimestamp[tx.origin] = block.number;
                  }
              }

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _buyCount++;
            }

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to   == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold && _buyCount>_preventSwapBefore) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }


    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

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

    function removebuyandselllimits() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        transferDelayEnabled=false;
        emit MaxTxAmountUpdated(_tTotal);
    }

    function sendETHToFee(uint256 amount) private {
        _taxWallet.transfer(amount);
    }


    function openTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;
    }

    receive() external payable {}

    function manualsend() external {
        require(_msgSender()==_taxWallet);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }

    function manualSwap() external {
        require(_msgSender()==_taxWallet);
        uint256 tokenBalance=balanceOf(address(this));
        if(tokenBalance>0){
          swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
          sendETHToFee(ethBalance);
        }
    }
}

Contract Security Audit

Contract ABI

API
[{"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":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","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":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removebuyandselllimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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"}]

60806040526006805460ff19166001179055601460078190556008555f6009818155600a828155600f600b818155600c91909155600d55600e9290925561004591610317565b61005390630bebc20061032c565b600f556100626009600a610317565b61007090630bebc20061032c565b60105561007f6009600a610317565b61008c90620f424061032c565b60115561009b6009600a610317565b6100a990630bebc20061032c565b6012556014805461ffff60a81b191690553480156100c5575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b03191661010033021790556101296009600a610317565b610138906402540be40061032c565b335f9081526001602081905260408220929092556003906101605f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff19968716179055308152600390935281832080548516600190811790915560065461010090049091168352912080549092161790556101c23390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6101f96009600a610317565b610208906402540be40061032c565b60405190815260200160405180910390a3610343565b634e487b7160e01b5f52601160045260245ffd5b6001815b600184111561026d578085048111156102515761025161021e565b600184161561025f57908102905b60019390931c928002610236565b935093915050565b5f8261028357506001610311565b8161028f57505f610311565b81600181146102a557600281146102af576102cb565b6001915050610311565b60ff8411156102c0576102c061021e565b50506001821b610311565b5060208310610133831016604e8410600b84101617156102ee575081810a610311565b6102fa5f198484610232565b805f190482111561030d5761030d61021e565b0290505b92915050565b5f61032560ff841683610275565b9392505050565b80820281158282048414176103115761031161021e565b61185e806103505f395ff3fe60806040526004361061011e575f3560e01c80637d1db4a51161009d578063a955a98111610062578063a955a9811461032d578063bf474bed14610341578063c876d0b914610356578063c9567bf91461036f578063dd62ed3e14610383575f80fd5b80637d1db4a5146102925780638da5cb5b146102a75780638f9a55c0146102cd57806395d89b41146102e2578063a9059cbb1461030e575f80fd5b8063313ce567116100e3578063313ce5671461020557806351bc3c85146102205780636fc3eaec1461023657806370a082311461024a578063715018a61461027e575f80fd5b806306fdde0314610129578063095ea7b3146101805780630faee56f146101af57806318160ddd146101d257806323b872dd146101e6575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201909152601781527f4d6963726f436c6f756420486f6c6f6772616d20496e6300000000000000000060208201525b6040516101779190611450565b60405180910390f35b34801561018b575f80fd5b5061019f61019a3660046114af565b6103c7565b6040519015158152602001610177565b3480156101ba575f80fd5b506101c460125481565b604051908152602001610177565b3480156101dd575f80fd5b506101c46103dd565b3480156101f1575f80fd5b5061019f6102003660046114d9565b6103fe565b348015610210575f80fd5b5060405160098152602001610177565b34801561022b575f80fd5b50610234610465565b005b348015610241575f80fd5b506102346104bb565b348015610255575f80fd5b506101c4610264366004611517565b6001600160a01b03165f9081526001602052604090205490565b348015610289575f80fd5b506102346104ec565b34801561029d575f80fd5b506101c4600f5481565b3480156102b2575f80fd5b505f546040516001600160a01b039091168152602001610177565b3480156102d8575f80fd5b506101c460105481565b3480156102ed575f80fd5b50604080518082019091526004815263484f4c4f60e01b602082015261016a565b348015610319575f80fd5b5061019f6103283660046114af565b610566565b348015610338575f80fd5b50610234610572565b34801561034c575f80fd5b506101c460115481565b348015610361575f80fd5b5060065461019f9060ff1681565b34801561037a575f80fd5b50610234610630565b34801561038e575f80fd5b506101c461039d366004611532565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6103d33384846109da565b5060015b92915050565b5f6103ea6009600a611660565b6103f9906402540be40061166e565b905090565b5f61040a848484610afd565b61045b843361045685604051806060016040528060288152602001611801602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906110c8565b6109da565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b031614610489575f80fd5b305f9081526001602052604090205480156104a7576104a781611100565b4780156104b7576104b781611270565b5050565b60065461010090046001600160a01b0316336001600160a01b0316146104df575f80fd5b476104e981611270565b50565b5f546001600160a01b0316331461051e5760405162461bcd60e51b815260040161051590611685565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f6103d3338484610afd565b5f546001600160a01b0316331461059b5760405162461bcd60e51b815260040161051590611685565b6105a76009600a611660565b6105b6906402540be40061166e565b600f556105c56009600a611660565b6105d4906402540be40061166e565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf61060e6009600a611660565b61061d906402540be40061166e565b60405190815260200160405180910390a1565b5f546001600160a01b031633146106595760405162461bcd60e51b815260040161051590611685565b601454600160a01b900460ff16156106b35760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610515565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106fd9030906106ee6009600a611660565b610456906402540be40061166e565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561074d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061077191906116ba565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107f491906116ba565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561083e573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061086291906116ba565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d71947306108a9816001600160a01b03165f9081526001602052604090205490565b5f806108bc5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610922573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061094791906116d5565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561099c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c09190611700565b506014805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610a3c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610515565b6001600160a01b038216610a9d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610515565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b615760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610515565b6001600160a01b038216610bc35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610515565b5f8111610c245760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610515565b5f80546001600160a01b03858116911614801590610c4f57505f546001600160a01b03848116911614155b15610f8b57610c806064610c7a600b54600e5411610c6f57600754610c73565b6009545b85906112ab565b90611330565b60065490915060ff1615610d66576013546001600160a01b03848116911614801590610cba57506014546001600160a01b03848116911614155b15610d6657325f908152600560205260409020544311610d545760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610515565b325f9081526005602052604090204390555b6014546001600160a01b038581169116148015610d9157506013546001600160a01b03848116911614155b8015610db557506001600160a01b0383165f9081526003602052604090205460ff16155b15610e9b57600f54821115610e0c5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610515565b60105482610e2e856001600160a01b03165f9081526001602052604090205490565b610e38919061171f565b1115610e865760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610515565b600e8054905f610e9583611732565b91905055505b6014546001600160a01b038481169116148015610ec157506001600160a01b0384163014155b15610eee57610eeb6064610c7a600c54600e5411610ee157600854610c73565b600a5485906112ab565b90505b305f90815260016020526040902054601454600160a81b900460ff16158015610f2457506014546001600160a01b038581169116145b8015610f395750601454600160b01b900460ff165b8015610f46575060115481115b8015610f555750600d54600e54115b15610f8957610f77610f7284610f6d84601254611371565b611371565b611100565b478015610f8757610f8747611270565b505b505b801561100357305f90815260016020526040902054610faa9082611385565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ffa9085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461102590836113e3565b6001600160a01b0385165f9081526001602052604090205561106861104a83836113e3565b6001600160a01b0385165f9081526001602052604090205490611385565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6110b185856113e3565b60405190815260200160405180910390a350505050565b5f81848411156110eb5760405162461bcd60e51b81526004016105159190611450565b505f6110f7848661174a565b95945050505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106111465761114661175d565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561119d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111c191906116ba565b816001815181106111d4576111d461175d565b6001600160a01b0392831660209182029290920101526013546111fa91309116846109da565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906112329085905f90869030904290600401611771565b5f604051808303815f87803b158015611249575f80fd5b505af115801561125b573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083905f818181858888f193505050501580156104b7573d5f803e3d5ffd5b5f825f036112ba57505f6103d7565b5f6112c5838561166e565b9050826112d285836117e1565b146113295760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610515565b9392505050565b5f61132983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611424565b5f81831161137f5782611329565b50919050565b5f80611391838561171f565b9050838110156113295760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610515565b5f61132983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110c8565b5f81836114445760405162461bcd60e51b81526004016105159190611450565b505f6110f784866117e1565b602081525f82518060208401525f5b8181101561147c576020818601810151604086840101520161145f565b505f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b03811681146104e9575f80fd5b5f80604083850312156114c0575f80fd5b82356114cb8161149b565b946020939093013593505050565b5f805f606084860312156114eb575f80fd5b83356114f68161149b565b925060208401356115068161149b565b929592945050506040919091013590565b5f60208284031215611527575f80fd5b81356113298161149b565b5f8060408385031215611543575f80fd5b823561154e8161149b565b9150602083013561155e8161149b565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156115b85780850481111561159c5761159c611569565b60018416156115aa57908102905b60019390931c928002611581565b935093915050565b5f826115ce575060016103d7565b816115da57505f6103d7565b81600181146115f057600281146115fa57611616565b60019150506103d7565b60ff84111561160b5761160b611569565b50506001821b6103d7565b5060208310610133831016604e8410600b8410161715611639575081810a6103d7565b6116455f19848461157d565b805f190482111561165857611658611569565b029392505050565b5f61132960ff8416836115c0565b80820281158282048414176103d7576103d7611569565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156116ca575f80fd5b81516113298161149b565b5f805f606084860312156116e7575f80fd5b5050815160208301516040909301519094929350919050565b5f60208284031215611710575f80fd5b81518015158114611329575f80fd5b808201808211156103d7576103d7611569565b5f6001820161174357611743611569565b5060010190565b818103818111156103d7576103d7611569565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156117c15783516001600160a01b031683526020938401939092019160010161179a565b50506001600160a01b039590951660608401525050608001529392505050565b5f826117fb57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212202a2b294a77f0dadd9373f2cb69c9e41e1ef954557672b1ebdb51fe257cb1387264736f6c634300081a0033

Deployed Bytecode

0x60806040526004361061011e575f3560e01c80637d1db4a51161009d578063a955a98111610062578063a955a9811461032d578063bf474bed14610341578063c876d0b914610356578063c9567bf91461036f578063dd62ed3e14610383575f80fd5b80637d1db4a5146102925780638da5cb5b146102a75780638f9a55c0146102cd57806395d89b41146102e2578063a9059cbb1461030e575f80fd5b8063313ce567116100e3578063313ce5671461020557806351bc3c85146102205780636fc3eaec1461023657806370a082311461024a578063715018a61461027e575f80fd5b806306fdde0314610129578063095ea7b3146101805780630faee56f146101af57806318160ddd146101d257806323b872dd146101e6575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201909152601781527f4d6963726f436c6f756420486f6c6f6772616d20496e6300000000000000000060208201525b6040516101779190611450565b60405180910390f35b34801561018b575f80fd5b5061019f61019a3660046114af565b6103c7565b6040519015158152602001610177565b3480156101ba575f80fd5b506101c460125481565b604051908152602001610177565b3480156101dd575f80fd5b506101c46103dd565b3480156101f1575f80fd5b5061019f6102003660046114d9565b6103fe565b348015610210575f80fd5b5060405160098152602001610177565b34801561022b575f80fd5b50610234610465565b005b348015610241575f80fd5b506102346104bb565b348015610255575f80fd5b506101c4610264366004611517565b6001600160a01b03165f9081526001602052604090205490565b348015610289575f80fd5b506102346104ec565b34801561029d575f80fd5b506101c4600f5481565b3480156102b2575f80fd5b505f546040516001600160a01b039091168152602001610177565b3480156102d8575f80fd5b506101c460105481565b3480156102ed575f80fd5b50604080518082019091526004815263484f4c4f60e01b602082015261016a565b348015610319575f80fd5b5061019f6103283660046114af565b610566565b348015610338575f80fd5b50610234610572565b34801561034c575f80fd5b506101c460115481565b348015610361575f80fd5b5060065461019f9060ff1681565b34801561037a575f80fd5b50610234610630565b34801561038e575f80fd5b506101c461039d366004611532565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6103d33384846109da565b5060015b92915050565b5f6103ea6009600a611660565b6103f9906402540be40061166e565b905090565b5f61040a848484610afd565b61045b843361045685604051806060016040528060288152602001611801602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906110c8565b6109da565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b031614610489575f80fd5b305f9081526001602052604090205480156104a7576104a781611100565b4780156104b7576104b781611270565b5050565b60065461010090046001600160a01b0316336001600160a01b0316146104df575f80fd5b476104e981611270565b50565b5f546001600160a01b0316331461051e5760405162461bcd60e51b815260040161051590611685565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f6103d3338484610afd565b5f546001600160a01b0316331461059b5760405162461bcd60e51b815260040161051590611685565b6105a76009600a611660565b6105b6906402540be40061166e565b600f556105c56009600a611660565b6105d4906402540be40061166e565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf61060e6009600a611660565b61061d906402540be40061166e565b60405190815260200160405180910390a1565b5f546001600160a01b031633146106595760405162461bcd60e51b815260040161051590611685565b601454600160a01b900460ff16156106b35760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610515565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106fd9030906106ee6009600a611660565b610456906402540be40061166e565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561074d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061077191906116ba565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107f491906116ba565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561083e573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061086291906116ba565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d71947306108a9816001600160a01b03165f9081526001602052604090205490565b5f806108bc5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610922573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061094791906116d5565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561099c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c09190611700565b506014805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610a3c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610515565b6001600160a01b038216610a9d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610515565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b615760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610515565b6001600160a01b038216610bc35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610515565b5f8111610c245760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610515565b5f80546001600160a01b03858116911614801590610c4f57505f546001600160a01b03848116911614155b15610f8b57610c806064610c7a600b54600e5411610c6f57600754610c73565b6009545b85906112ab565b90611330565b60065490915060ff1615610d66576013546001600160a01b03848116911614801590610cba57506014546001600160a01b03848116911614155b15610d6657325f908152600560205260409020544311610d545760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610515565b325f9081526005602052604090204390555b6014546001600160a01b038581169116148015610d9157506013546001600160a01b03848116911614155b8015610db557506001600160a01b0383165f9081526003602052604090205460ff16155b15610e9b57600f54821115610e0c5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610515565b60105482610e2e856001600160a01b03165f9081526001602052604090205490565b610e38919061171f565b1115610e865760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610515565b600e8054905f610e9583611732565b91905055505b6014546001600160a01b038481169116148015610ec157506001600160a01b0384163014155b15610eee57610eeb6064610c7a600c54600e5411610ee157600854610c73565b600a5485906112ab565b90505b305f90815260016020526040902054601454600160a81b900460ff16158015610f2457506014546001600160a01b038581169116145b8015610f395750601454600160b01b900460ff165b8015610f46575060115481115b8015610f555750600d54600e54115b15610f8957610f77610f7284610f6d84601254611371565b611371565b611100565b478015610f8757610f8747611270565b505b505b801561100357305f90815260016020526040902054610faa9082611385565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ffa9085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461102590836113e3565b6001600160a01b0385165f9081526001602052604090205561106861104a83836113e3565b6001600160a01b0385165f9081526001602052604090205490611385565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6110b185856113e3565b60405190815260200160405180910390a350505050565b5f81848411156110eb5760405162461bcd60e51b81526004016105159190611450565b505f6110f7848661174a565b95945050505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106111465761114661175d565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561119d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111c191906116ba565b816001815181106111d4576111d461175d565b6001600160a01b0392831660209182029290920101526013546111fa91309116846109da565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906112329085905f90869030904290600401611771565b5f604051808303815f87803b158015611249575f80fd5b505af115801561125b573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083905f818181858888f193505050501580156104b7573d5f803e3d5ffd5b5f825f036112ba57505f6103d7565b5f6112c5838561166e565b9050826112d285836117e1565b146113295760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610515565b9392505050565b5f61132983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611424565b5f81831161137f5782611329565b50919050565b5f80611391838561171f565b9050838110156113295760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610515565b5f61132983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110c8565b5f81836114445760405162461bcd60e51b81526004016105159190611450565b505f6110f784866117e1565b602081525f82518060208401525f5b8181101561147c576020818601810151604086840101520161145f565b505f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b03811681146104e9575f80fd5b5f80604083850312156114c0575f80fd5b82356114cb8161149b565b946020939093013593505050565b5f805f606084860312156114eb575f80fd5b83356114f68161149b565b925060208401356115068161149b565b929592945050506040919091013590565b5f60208284031215611527575f80fd5b81356113298161149b565b5f8060408385031215611543575f80fd5b823561154e8161149b565b9150602083013561155e8161149b565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156115b85780850481111561159c5761159c611569565b60018416156115aa57908102905b60019390931c928002611581565b935093915050565b5f826115ce575060016103d7565b816115da57505f6103d7565b81600181146115f057600281146115fa57611616565b60019150506103d7565b60ff84111561160b5761160b611569565b50506001821b6103d7565b5060208310610133831016604e8410600b8410161715611639575081810a6103d7565b6116455f19848461157d565b805f190482111561165857611658611569565b029392505050565b5f61132960ff8416836115c0565b80820281158282048414176103d7576103d7611569565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156116ca575f80fd5b81516113298161149b565b5f805f606084860312156116e7575f80fd5b5050815160208301516040909301519094929350919050565b5f60208284031215611710575f80fd5b81518015158114611329575f80fd5b808201808211156103d7576103d7611569565b5f6001820161174357611743611569565b5060010190565b818103818111156103d7576103d7611569565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156117c15783516001600160a01b031683526020938401939092019160010161179a565b50506001600160a01b039590951660608401525050608001529392505050565b5f826117fb57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212202a2b294a77f0dadd9373f2cb69c9e41e1ef954557672b1ebdb51fe257cb1387264736f6c634300081a0033

Deployed Bytecode Sourcemap

3760:8211:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5722:83;;;;;;;;;;-1:-1:-1;5792:5:0;;;;;;;;;;;;;;;;;5722:83;;;;;;;:::i;:::-;;;;;;;;6555:161;;;;;;;;;;-1:-1:-1;6555:161:0;;;;;:::i;:::-;;:::i;:::-;;;1219:14:1;;1212:22;1194:41;;1182:2;1167:18;6555:161:0;1054:187:1;4996:53:0;;;;;;;;;;;;;;;;;;;1392:25:1;;;1380:2;1365:18;4996:53:0;1246:177:1;5999:95:0;;;;;;;;;;;;;:::i;6724:313::-;;;;;;;;;;-1:-1:-1;6724:313:0;;;;;:::i;:::-;;:::i;5908:83::-;;;;;;;;;;-1:-1:-1;5908:83:0;;4603:1;2083:36:1;;2071:2;2056:18;5908:83:0;1941:184:1;11620:348:0;;;;;;;;;;;;;:::i;:::-;;11425:187;;;;;;;;;;;;;:::i;6102:119::-;;;;;;;;;;-1:-1:-1;6102:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6195:18:0;6168:7;6195:18;;;:9;:18;;;;;;;6102:119;2841:148;;;;;;;;;;;;;:::i;4806:55::-;;;;;;;;;;;;;;;;2627:79;;;;;;;;;;-1:-1:-1;2665:7:0;2692:6;2627:79;;-1:-1:-1;;;;;2692:6:0;;;2528:51:1;;2516:2;2501:18;2627:79:0;2382:203:1;4868:57:0;;;;;;;;;;;;;;;;5813:87;;;;;;;;;;-1:-1:-1;5885:7:0;;;;;;;;;;;;-1:-1:-1;;;5885:7:0;;;;5813:87;;6229:167;;;;;;;;;;-1:-1:-1;6229:167:0;;;;;:::i;:::-;;:::i;10393:206::-;;;;;;;;;;;;;:::i;4932:57::-;;;;;;;;;;;;;;;;4160:39;;;;;;;;;;-1:-1:-1;4160:39:0;;;;;;;;10709:671;;;;;;;;;;;;;:::i;6404:143::-;;;;;;;;;;-1:-1:-1;6404:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6512:18:0;;;6485:7;6512:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6404:143;6555:161;6630:4;6647:39;462:10;6670:7;6679:6;6647:8;:39::i;:::-;-1:-1:-1;6704:4:0;6555:161;;;;;:::o;5999:95::-;6052:7;4661:13;4603:1;4661:2;:13;:::i;:::-;4646:28;;:11;:28;:::i;:::-;6072:14;;5999:95;:::o;6724:313::-;6822:4;6839:36;6849:6;6857:9;6868:6;6839:9;:36::i;:::-;6886:121;6895:6;462:10;6917:89;6955:6;6917:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6917:19:0;;;;;;:11;:19;;;;;;;;462:10;6917:33;;;;;;;;;;:37;:89::i;:::-;6886:8;:121::i;:::-;-1:-1:-1;7025:4:0;6724:313;;;;;:::o;11620:348::-;11684:10;;;;;-1:-1:-1;;;;;11684:10:0;462;-1:-1:-1;;;;;11670:24:0;;11662:33;;;;;;11745:4;11706:20;6195:18;;;:9;:18;;;;;;11765:14;;11762:73;;11793:30;11810:12;11793:16;:30::i;:::-;11864:21;11899:12;;11896:65;;11925:24;11938:10;11925:12;:24::i;:::-;11651:317;;11620:348::o;11425:187::-;11489:10;;;;;-1:-1:-1;;;;;11489:10:0;462;-1:-1:-1;;;;;11475:24:0;;11467:33;;;;;;11540:21;11572:32;11540:21;11572:12;:32::i;:::-;11456:156;11425:187::o;2841:148::-;2754:6;;-1:-1:-1;;;;;2754:6:0;462:10;2754:22;2746:67;;;;-1:-1:-1;;;2746:67:0;;;;;;;:::i;:::-;;;;;;;;;2948:1:::1;2932:6:::0;;2911:40:::1;::::0;-1:-1:-1;;;;;2932:6:0;;::::1;::::0;2911:40:::1;::::0;2948:1;;2911:40:::1;2979:1;2962:19:::0;;-1:-1:-1;;;;;;2962:19:0::1;::::0;;2841:148::o;6229:167::-;6307:4;6324:42;462:10;6348:9;6359:6;6324:9;:42::i;10393:206::-;2754:6;;-1:-1:-1;;;;;2754:6:0;462:10;2754:22;2746:67;;;;-1:-1:-1;;;2746:67:0;;;;;;;:::i;:::-;4661:13:::1;4603:1;4661:2;:13;:::i;:::-;4646:28;::::0;:11:::1;:28;:::i;:::-;10456:12;:22:::0;4661:13:::1;4603:1;4661:2;:13;:::i;:::-;4646:28;::::0;:11:::1;:28;:::i;:::-;10489:14;:22:::0;10522:20:::1;:26:::0;;-1:-1:-1;;10522:26:0::1;::::0;;10564:27:::1;4661:13;4603:1;-1:-1:-1::0;4661:13:0::1;:::i;:::-;4646:28;::::0;:11:::1;:28;:::i;:::-;10564:27;::::0;1392:25:1;;;1380:2;1365:18;10564:27:0::1;;;;;;;10393:206::o:0;10709:671::-;2754:6;;-1:-1:-1;;;;;2754:6:0;462:10;2754:22;2746:67;;;;-1:-1:-1;;;2746:67:0;;;;;;;:::i;:::-;10773:11:::1;::::0;-1:-1:-1;;;10773:11:0;::::1;;;10772:12;10764:47;;;::::0;-1:-1:-1;;;10764:47:0;;5283:2:1;10764:47:0::1;::::0;::::1;5265:21:1::0;5322:2;5302:18;;;5295:30;5361:25;5341:18;;;5334:53;5404:18;;10764:47:0::1;5081:347:1::0;10764:47:0::1;10822:15;:80:::0;;-1:-1:-1;;;;;;10822:80:0::1;10859:42;10822:80:::0;;::::1;::::0;;;10913:58:::1;::::0;10930:4:::1;::::0;4661:13:::1;4603:1;4661:2;:13;:::i;:::-;4646:28;::::0;:11:::1;:28;:::i;10913:58::-;11016:15;;;;;;;;;-1:-1:-1::0;;;;;11016:15:0::1;-1:-1:-1::0;;;;;11016:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10998:55:0::1;;11062:4;11069:15;;;;;;;;;-1:-1:-1::0;;;;;11069:15:0::1;-1:-1:-1::0;;;;;11069:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10998:94;::::0;-1:-1:-1;;;;;;10998:94:0::1;::::0;;;;;;-1:-1:-1;;;;;5881:32:1;;;10998:94:0::1;::::0;::::1;5863:51:1::0;5950:32;;5930:18;;;5923:60;5836:18;;10998:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10982:13;:110:::0;;-1:-1:-1;;;;;10982:110:0;;::::1;-1:-1:-1::0;;;;;;10982:110:0;;::::1;;::::0;;11103:15:::1;::::0;::::1;:31;11142:21;11173:4;11179:24;11173:4:::0;-1:-1:-1;;;;;6195:18:0;6168:7;6195:18;;;:9;:18;;;;;;;6102:119;11179:24:::1;11204:1;11206::::0;11208:7:::1;2665::::0;2692:6;-1:-1:-1;;;;;2692:6:0;;2627:79;11208:7:::1;11103:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11103:129:0;;;-1:-1:-1;;;;;6315:32:1;;;11103:129:0::1;::::0;::::1;6297:51:1::0;6364:18;;;6357:34;;;;6407:18;;;6400:34;;;;6450:18;;;6443:34;6514:32;;;6493:19;;;6486:61;11216:15:0::1;6563:19:1::0;;;6556:35;6269:19;;11103:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11250:13:0::1;::::0;11281:15:::1;::::0;11243:71:::1;::::0;-1:-1:-1;;;11243:71:0;;-1:-1:-1;;;;;11281:15:0;;::::1;11243:71;::::0;::::1;7237:51:1::0;-1:-1:-1;;7304:18:1;;;7297:34;11250:13:0;::::1;::::0;-1:-1:-1;11243:29:0::1;::::0;7210:18:1;;11243:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;11325:11:0::1;:18:::0;;-1:-1:-1;;;;11354:18:0;-1:-1:-1;;;11354:18:0;;;10709:671::o;7045:335::-;-1:-1:-1;;;;;7138:19:0;;7130:68;;;;-1:-1:-1;;;7130:68:0;;7826:2:1;7130:68:0;;;7808:21:1;7865:2;7845:18;;;7838:30;7904:34;7884:18;;;7877:62;-1:-1:-1;;;7955:18:1;;;7948:34;7999:19;;7130:68:0;7624:400:1;7130:68:0;-1:-1:-1;;;;;7217:21:0;;7209:68;;;;-1:-1:-1;;;7209:68:0;;8231:2:1;7209:68:0;;;8213:21:1;8270:2;8250:18;;;8243:30;8309:34;8289:18;;;8282:62;-1:-1:-1;;;8360:18:1;;;8353:32;8402:19;;7209:68:0;8029:398:1;7209:68:0;-1:-1:-1;;;;;7288:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7340:32;;1392:25:1;;;7340:32:0;;1365:18:1;7340:32:0;;;;;;;7045:335;;;:::o;7388:2398::-;-1:-1:-1;;;;;7476:18:0;;7468:68;;;;-1:-1:-1;;;7468:68:0;;8634:2:1;7468:68:0;;;8616:21:1;8673:2;8653:18;;;8646:30;8712:34;8692:18;;;8685:62;-1:-1:-1;;;8763:18:1;;;8756:35;8808:19;;7468:68:0;8432:401:1;7468:68:0;-1:-1:-1;;;;;7555:16:0;;7547:64;;;;-1:-1:-1;;;7547:64:0;;9040:2:1;7547:64:0;;;9022:21:1;9079:2;9059:18;;;9052:30;9118:34;9098:18;;;9091:62;-1:-1:-1;;;9169:18:1;;;9162:33;9212:19;;7547:64:0;8838:399:1;7547:64:0;7639:1;7630:6;:10;7622:64;;;;-1:-1:-1;;;7622:64:0;;9444:2:1;7622:64:0;;;9426:21:1;9483:2;9463:18;;;9456:30;9522:34;9502:18;;;9495:62;-1:-1:-1;;;9573:18:1;;;9566:39;9622:19;;7622:64:0;9242:405:1;7622:64:0;7697:17;2692:6;;-1:-1:-1;;;;;7731:15:0;;;2692:6;;7731:15;;;;:32;;-1:-1:-1;2665:7:0;2692:6;-1:-1:-1;;;;;7750:13:0;;;2692:6;;7750:13;;7731:32;7727:1703;;;7792:76;7864:3;7792:67;7814:15;;7804:9;;:25;7803:55;;7844:14;;7803:55;;;7831:12;;7803:55;7792:6;;:10;:67::i;:::-;:71;;:76::i;:::-;7889:20;;7780:88;;-1:-1:-1;7889:20:0;;7885:508;;;7950:15;;-1:-1:-1;;;;;7936:30:0;;;7950:15;;7936:30;;;;:62;;-1:-1:-1;7984:13:0;;-1:-1:-1;;;;;7970:28:0;;;7984:13;;7970:28;;7936:62;7932:444;;;8090:9;8061:39;;;;:28;:39;;;;;;8134:12;-1:-1:-1;8025:250:0;;;;-1:-1:-1;;;8025:250:0;;9854:2:1;8025:250:0;;;9836:21:1;9893:2;9873:18;;;9866:30;9932:34;9912:18;;;9905:62;10003:34;9983:18;;;9976:62;-1:-1:-1;;;10054:19:1;;;10047:40;10104:19;;8025:250:0;9652:477:1;8025:250:0;8329:9;8300:39;;;;:28;:39;;;;;8342:12;8300:54;;7932:444;8421:13;;-1:-1:-1;;;;;8413:21:0;;;8421:13;;8413:21;:55;;;;-1:-1:-1;8452:15:0;;-1:-1:-1;;;;;8438:30:0;;;8452:15;;8438:30;;8413:55;:83;;;;-1:-1:-1;;;;;;8474:22:0;;;;;;:18;:22;;;;;;;;8472:24;8413:83;8409:313;;;8536:12;;8526:6;:22;;8518:60;;;;-1:-1:-1;;;8518:60:0;;10336:2:1;8518:60:0;;;10318:21:1;10375:2;10355:18;;;10348:30;10414:27;10394:18;;;10387:55;10459:18;;8518:60:0;10134:349:1;8518:60:0;8631:14;;8621:6;8605:13;8615:2;-1:-1:-1;;;;;6195:18:0;6168:7;6195:18;;;:9;:18;;;;;;;6102:119;8605:13;:22;;;;:::i;:::-;:40;;8597:79;;;;-1:-1:-1;;;8597:79:0;;10820:2:1;8597:79:0;;;10802:21:1;10859:2;10839:18;;;10832:30;10898:28;10878:18;;;10871:56;10944:18;;8597:79:0;10618:350:1;8597:79:0;8695:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8409:313;8747:13;;-1:-1:-1;;;;;8741:19:0;;;8747:13;;8741:19;:43;;;;-1:-1:-1;;;;;;8764:20:0;;8779:4;8764:20;;8741:43;8738:174;;;8817:79;8892:3;8817:70;8839:16;;8829:9;;:26;8828:58;;8871:15;;8828:58;;;8857:13;;8817:6;;:10;:70::i;:79::-;8805:91;;8738:174;8977:4;8928:28;6195:18;;;:9;:18;;;;;;9003:6;;-1:-1:-1;;;9003:6:0;;;;9002:7;:32;;;;-1:-1:-1;9021:13:0;;-1:-1:-1;;;;;9013:21:0;;;9021:13;;9013:21;9002:32;:47;;;;-1:-1:-1;9038:11:0;;-1:-1:-1;;;9038:11:0;;;;9002:47;:89;;;;;9074:17;;9053:20;:38;9002:89;:121;;;;;9105:18;;9095:9;;:28;9002:121;8998:421;;;9144:67;9161:49;9165:6;9172:37;9176:20;9197:11;;9172:3;:37::i;:::-;9161:3;:49::i;:::-;9144:16;:67::i;:::-;9259:21;9302:22;;9299:105;;9349:35;9362:21;9349:12;:35::i;:::-;9125:294;8998:421;7765:1665;7727:1703;9445:11;;9442:161;;9513:4;9495:24;;;;:9;:24;;;;;;:39;;9524:9;9495:28;:39::i;:::-;9488:4;9470:24;;;;:9;:24;;;;;;;:64;;;;9552:39;;-1:-1:-1;;;;;9552:39:0;;;;;;;9581:9;1392:25:1;;1380:2;1365:18;;1246:177;9552:39:0;;;;;;;;9442:161;-1:-1:-1;;;;;9629:15:0;;;;;;:9;:15;;;;;;:27;;9649:6;9629:19;:27::i;:::-;-1:-1:-1;;;;;9613:15:0;;;;;;:9;:15;;;;;:43;9681:40;9699:21;:6;9710:9;9699:10;:21::i;:::-;-1:-1:-1;;;;;9681:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9667:13:0;;;;;;;:9;:13;;;;;:54;;;;9737:41;;;9756:21;:6;9767:9;9756:10;:21::i;:::-;9737:41;;1392:25:1;;;1380:2;1365:18;9737:41:0;;;;;;;7457:2329;7388:2398;;;:::o;1519:190::-;1605:7;1641:12;1633:6;;;;1625:29;;;;-1:-1:-1;;;1625:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1665:9:0;1677:5;1681:1;1677;:5;:::i;:::-;1665:17;1519:190;-1:-1:-1;;;;;1519:190:0:o;9902:483::-;5331:6;:13;;-1:-1:-1;;;;5331:13:0;-1:-1:-1;;;5331:13:0;;;10004:16:::1;::::0;;10018:1:::1;10004:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10004:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10004:16:0::1;9980:40;;10049:4;10031;10036:1;10031:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10031:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10075:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10075:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10031:7;;10075:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10065:4;10070:1;10065:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10065:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10140:15:::1;::::0;10108:62:::1;::::0;10125:4:::1;::::0;10140:15:::1;10158:11:::0;10108:8:::1;:62::i;:::-;10181:15;::::0;:196:::1;::::0;-1:-1:-1;;;10181:196:0;;-1:-1:-1;;;;;10181:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10262:11;;10181:15:::1;::::0;10304:4;;10331::::1;::::0;10351:15:::1;::::0;10181:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5367:6:0;:14;;-1:-1:-1;;;;5367:14:0;;;-1:-1:-1;;;;9902:483:0:o;10607:92::-;10664:10;;:27;;:10;;;;-1:-1:-1;;;;;10664:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;1717:246;1775:7;1799:1;1804;1799:6;1795:47;;-1:-1:-1;1829:1:0;1822:8;;1795:47;1852:9;1864:5;1868:1;1864;:5;:::i;:::-;1852:17;-1:-1:-1;1897:1:0;1888:5;1892:1;1852:17;1888:5;:::i;:::-;:10;1880:56;;;;-1:-1:-1;;;1880:56:0;;12898:2:1;1880:56:0;;;12880:21:1;12937:2;12917:18;;;12910:30;12976:34;12956:18;;;12949:62;-1:-1:-1;;;13027:18:1;;;13020:31;13068:19;;1880:56:0;12696:397:1;1880:56:0;1954:1;1717:246;-1:-1:-1;;;1717:246:0:o;1971:132::-;2029:7;2056:39;2060:1;2063;2056:39;;;;;;;;;;;;;;;;;:3;:39::i;9796:98::-;9853:7;9880:1;9878;:3;9877:9;;9885:1;9877:9;;;-1:-1:-1;9883:1:0;9796:98;-1:-1:-1;9796:98:0:o;1188:179::-;1246:7;;1278:5;1282:1;1278;:5;:::i;:::-;1266:17;;1307:1;1302;:6;;1294:46;;;;-1:-1:-1;;;1294:46:0;;13300:2:1;1294:46:0;;;13282:21:1;13339:2;13319:18;;;13312:30;13378:29;13358:18;;;13351:57;13425:18;;1294:46:0;13098:351:1;1375:136:0;1433:7;1460:43;1464:1;1467;1460:43;;;;;;;;;;;;;;;;;:3;:43::i;2111:189::-;2197:7;2232:12;2225:5;2217:28;;;;-1:-1:-1;;;2217:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2256:9:0;2268:5;2272:1;2268;:5;:::i;14:527:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;263:1;273:140;287:6;284:1;281:13;273:140;;;398:2;382:14;;;378:23;;372:30;367:2;348:17;;;344:26;337:66;302:10;273:140;;;277:3;462:1;457:2;448:6;437:9;433:22;429:31;422:42;532:2;525;521:7;516:2;508:6;504:15;500:29;489:9;485:45;481:54;473:62;;;14:527;;;;:::o;546:131::-;-1:-1:-1;;;;;621:31:1;;611:42;;601:70;;667:1;664;657:12;682:367;750:6;758;811:2;799:9;790:7;786:23;782:32;779:52;;;827:1;824;817:12;779:52;866:9;853:23;885:31;910:5;885:31;:::i;:::-;935:5;1013:2;998:18;;;;985:32;;-1:-1:-1;;;682:367:1:o;1428:508::-;1505:6;1513;1521;1574:2;1562:9;1553:7;1549:23;1545:32;1542:52;;;1590:1;1587;1580:12;1542:52;1629:9;1616:23;1648:31;1673:5;1648:31;:::i;:::-;1698:5;-1:-1:-1;1755:2:1;1740:18;;1727:32;1768:33;1727:32;1768:33;:::i;:::-;1428:508;;1820:7;;-1:-1:-1;;;1900:2:1;1885:18;;;;1872:32;;1428:508::o;2130:247::-;2189:6;2242:2;2230:9;2221:7;2217:23;2213:32;2210:52;;;2258:1;2255;2248:12;2210:52;2297:9;2284:23;2316:31;2341:5;2316:31;:::i;2590:388::-;2658:6;2666;2719:2;2707:9;2698:7;2694:23;2690:32;2687:52;;;2735:1;2732;2725:12;2687:52;2774:9;2761:23;2793:31;2818:5;2793:31;:::i;:::-;2843:5;-1:-1:-1;2900:2:1;2885:18;;2872:32;2913:33;2872:32;2913:33;:::i;:::-;2965:7;2955:17;;;2590:388;;;;;:::o;2983:127::-;3044:10;3039:3;3035:20;3032:1;3025:31;3075:4;3072:1;3065:15;3099:4;3096:1;3089:15;3115:375;3203:1;3221:5;3235:249;3256:1;3246:8;3243:15;3235:249;;;3306:4;3301:3;3297:14;3291:4;3288:24;3285:50;;;3315:18;;:::i;:::-;3365:1;3355:8;3351:16;3348:49;;;3379:16;;;;3348:49;3462:1;3458:16;;;;;3418:15;;3235:249;;;3115:375;;;;;;:::o;3495:902::-;3544:5;3574:8;3564:80;;-1:-1:-1;3615:1:1;3629:5;;3564:80;3663:4;3653:76;;-1:-1:-1;3700:1:1;3714:5;;3653:76;3745:4;3763:1;3758:59;;;;3831:1;3826:174;;;;3738:262;;3758:59;3788:1;3779:10;;3802:5;;;3826:174;3863:3;3853:8;3850:17;3847:43;;;3870:18;;:::i;:::-;-1:-1:-1;;3926:1:1;3912:16;;3985:5;;3738:262;;4084:2;4074:8;4071:16;4065:3;4059:4;4056:13;4052:36;4046:2;4036:8;4033:16;4028:2;4022:4;4019:12;4015:35;4012:77;4009:203;;;-1:-1:-1;4121:19:1;;;4197:5;;4009:203;4244:42;-1:-1:-1;;4269:8:1;4263:4;4244:42;:::i;:::-;4322:6;4318:1;4314:6;4310:19;4301:7;4298:32;4295:58;;;4333:18;;:::i;:::-;4371:20;;3495:902;-1:-1:-1;;;3495:902:1:o;4402:140::-;4460:5;4489:47;4530:4;4520:8;4516:19;4510:4;4489:47;:::i;4547:168::-;4620:9;;;4651;;4668:15;;;4662:22;;4648:37;4638:71;;4689:18;;:::i;4720:356::-;4922:2;4904:21;;;4941:18;;;4934:30;5000:34;4995:2;4980:18;;4973:62;5067:2;5052:18;;4720:356::o;5433:251::-;5503:6;5556:2;5544:9;5535:7;5531:23;5527:32;5524:52;;;5572:1;5569;5562:12;5524:52;5604:9;5598:16;5623:31;5648:5;5623:31;:::i;6602:456::-;6690:6;6698;6706;6759:2;6747:9;6738:7;6734:23;6730:32;6727:52;;;6775:1;6772;6765:12;6727:52;-1:-1:-1;;6820:16:1;;6926:2;6911:18;;6905:25;7022:2;7007:18;;;7001:25;6820:16;;6905:25;;-1:-1:-1;7001:25:1;6602:456;-1:-1:-1;6602:456:1:o;7342:277::-;7409:6;7462:2;7450:9;7441:7;7437:23;7433:32;7430:52;;;7478:1;7475;7468:12;7430:52;7510:9;7504:16;7563:5;7556:13;7549:21;7542:5;7539:32;7529:60;;7585:1;7582;7575:12;10488:125;10553:9;;;10574:10;;;10571:36;;;10587:18;;:::i;10973:135::-;11012:3;11033:17;;;11030:43;;11053:18;;:::i;:::-;-1:-1:-1;11100:1:1;11089:13;;10973:135::o;11113:128::-;11180:9;;;11201:11;;;11198:37;;;11215:18;;:::i;11378:127::-;11439:10;11434:3;11430:20;11427:1;11420:31;11470:4;11467:1;11460:15;11494:4;11491:1;11484:15;11510:959;11772:4;11820:3;11809:9;11805:19;11851:6;11840:9;11833:25;11894:6;11889:2;11878:9;11874:18;11867:34;11937:3;11932:2;11921:9;11917:18;11910:31;11961:6;11996;11990:13;12027:6;12019;12012:22;12065:3;12054:9;12050:19;12043:26;;12104:2;12096:6;12092:15;12078:29;;12125:1;12135:195;12149:6;12146:1;12143:13;12135:195;;;12214:13;;-1:-1:-1;;;;;12210:39:1;12198:52;;12279:2;12305:15;;;;12270:12;;;;12246:1;12164:9;12135:195;;;-1:-1:-1;;;;;;;12386:32:1;;;;12381:2;12366:18;;12359:60;-1:-1:-1;;12450:3:1;12435:19;12428:35;12347:3;11510:959;-1:-1:-1;;;11510:959:1:o;12474:217::-;12514:1;12540;12530:132;;12584:10;12579:3;12575:20;12572:1;12565:31;12619:4;12616:1;12609:15;12647:4;12644:1;12637:15;12530:132;-1:-1:-1;12676:9:1;;12474:217::o

Swarm Source

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