ETH Price: $2,522.03 (+3.32%)

Token

a·non·y·mous (anon)
 

Overview

Max Total Supply

1,000,000,000 anon

Holders

83

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
11,867,656.446083532 anon

Value
$0.00
0xe5c2848385a52eca290dedf0aae8b26338b83b2b
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:
Anonymous

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-02-02
*/

/**
* WEBSITE  |  https://4n0nym0u8.pro
*/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.21;

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

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 Ownable {
    address internal _owner;

    constructor(address owner) {
        _owner = owner;
    }

    modifier onlyOwner() {
        require(_isOwner(msg.sender), "!OWNER");
        _;
    }

    function _isOwner(address account) internal view returns (bool) {
        return account == _owner;
    }

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

    event OwnershipTransferred(address owner);
}

interface IUniswapV2Router {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);

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

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

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;

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

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

contract Anonymous is IERC20, Ownable {
    using SafeMath for uint256;

    string private constant _name = unicode"a·non·y·mous";
    string private constant _symbol = "anon";

    uint8 private constant _decimals = 9;
    uint256 private total_supply = 10 ** 9 * (10 ** _decimals);

    uint256 private constant _tax_liq = 0;
    uint256 private constant _tax_market = 0;
    uint256 private constant _tax_total = _tax_liq + _tax_market;
    uint256 private denominator = 100;

    modifier lock_swap() { swapping = true; _; swapping = false; }

    uint256 private max_tx_amount = (total_supply * 2) / 100;
    address private _tax_wallet = address(0xAA58d8faf7e10Fb0C9307885D66F5525ecc998e8);
    IUniswapV2Router private uniswap_router;
    address private uniswap_pair;

    bool private swap_enabled = true;
    uint256 private min_swap_threshold = total_supply / 100000; // 0.1%
    bool private swapping;

    address private router_addr = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    address private dead_address = 0x000000000000000000000000000000000000dEaD;

    mapping (address => uint256) private balances;
    mapping (address => mapping (address => uint256)) private allowances;
    mapping (address => bool) private _no_tax_address;
    mapping (address => bool) private no_max_tx_address;

    constructor () Ownable(msg.sender) {
        uniswap_router = IUniswapV2Router(router_addr);
        uniswap_pair = IUniswapV2Factory(uniswap_router.factory()).createPair(uniswap_router.WETH(), address(this));
        allowances[address(this)][address(uniswap_router)] = type(uint256).max;
        _no_tax_address[_tax_wallet] = true;
        no_max_tx_address[_owner] = true;
        no_max_tx_address[_tax_wallet] = true;
        no_max_tx_address[dead_address] = true;
        no_max_tx_address[address(this)] = true;
        balances[_owner] = total_supply;
        emit Transfer(address(0), _owner, total_supply);
    }

    function _verify_swap_back(address sender, address recipient, uint256 amount) private view returns (bool) {
        return _check_if_swap() &&
        _should_charge_tax(sender) &&
        _check_if_sell_tx(recipient) &&
        amount > min_swap_threshold;
    }

    function _check_if_sell_tx(address recipient) private view returns (bool){
        return recipient == uniswap_pair;
    }

    function _check_if_swap() internal view returns (bool) {
        return !swapping
        && swap_enabled
        && balances[address(this)] >= min_swap_threshold;
    }

    function adjust_wallet_size(uint256 percent) external onlyOwner {
        max_tx_amount = (total_supply * percent) / 100;
    }

    function _transfer_basic(address sender, address recipient, uint256 amount) internal returns (bool) {
        balances[sender] = balances[sender].sub(amount, "Insufficient Balance");
        balances[recipient] = balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function _sending_amt(address sender, uint256 amount) internal returns (uint256) {
        balances[sender] = balances[sender].sub(amount, "Insufficient Balance");
        uint256 fee_tokens = amount.mul(_tax_total).div(denominator);
        bool has_no_fee = sender == _owner;
        if (has_no_fee) {
            fee_tokens = 0;
        }

        balances[address(this)] = balances[address(this)].add(fee_tokens);
        emit Transfer(sender, address(this), fee_tokens);
        return amount.sub(fee_tokens);
    }

    function totalSupply() external view override returns (uint256) { return total_supply; }
    function decimals() external pure override returns (uint8) { return _decimals; }

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        if(allowances[sender][msg.sender] != type(uint256).max){
            allowances[sender][msg.sender] = allowances[sender][msg.sender].sub(amount, "Insufficient Allowance");
        }

        return _transfer_from(sender, recipient, amount);
    }

    function _should_charge_tax(address sender) internal view returns (bool) {
        return !_no_tax_address[sender];
    }

    function perform_swap() internal lock_swap {
        uint256 contract_token_balance = balanceOf(address(this));
        uint256 tokens_to_lp = contract_token_balance.mul(_tax_liq).div(_tax_total).div(2);
        uint256 amount_to_swap = contract_token_balance.sub(tokens_to_lp);

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswap_router.WETH();

        uniswap_router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amount_to_swap,
            0,
            path,
            address(this),
            block.timestamp
        );
        uint256 amount_eth = address(this).balance;
        uint256 total_tax_tokens = _tax_total.sub(_tax_liq.div(2));
        uint256 eth_to_lp = amount_eth.mul(_tax_liq).div(total_tax_tokens).div(2);
        uint256 eth_to_marketing = amount_eth.mul(_tax_market).div(total_tax_tokens);

        payable(_tax_wallet).transfer(eth_to_marketing);
        if(tokens_to_lp > 0){
            uniswap_router.addLiquidityETH{value: eth_to_lp}(
                address(this),
                tokens_to_lp,
                0,
                0,
                _tax_wallet,
                block.timestamp
            );
        }
    }

    function _transfer_from(address sender, address recipient, uint256 amount) internal returns (bool) {
        if(swapping){ return _transfer_basic(sender, recipient, amount); }

        if (recipient != uniswap_pair && recipient != dead_address) {
            require(no_max_tx_address[recipient] || balances[recipient] + amount <= max_tx_amount, "Transfer amount exceeds the bag size.");
        }
        if(_verify_swap_back(sender, recipient, amount)){
            perform_swap();
        }
        bool should_tax = _should_charge_tax(sender);
        if (should_tax) {
            balances[recipient] = balances[recipient].add(_sending_amt(sender, amount));
        } else {
            balances[recipient] = balances[recipient].add(amount);
        }

        emit Transfer(sender, recipient, amount);
        return true;
    }

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

    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 transfer(address recipient, uint256 amount) external override returns (bool) {
        return _transfer_from(msg.sender, recipient, amount);
    }

    receive() external payable { }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"adjust_wallet_size","outputs":[],"stateMutability":"nonpayable","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":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126009600a62000471565b6200002290633b9aca0062000488565b6001556064600255606460015460026200003d919062000488565b620000499190620004a2565b600355600480546001600160a01b03191673aa58d8faf7e10fb0c9307885d66f5525ecc998e81790556006805460ff60a01b1916600160a01b1790556001546200009890620186a090620004a2565b60075560088054747a250d5630b4cf539739df2c5dacb4c659f2488d00610100600160a81b0319909116179055600980546001600160a01b03191661dead179055348015620000e5575f80fd5b505f80546001600160a01b03199081163317909155600854600580549092166101009091046001600160a01b03169081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000153573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001799190620004c2565b6001600160a01b031663c9c6539660055f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001d8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001fe9190620004c2565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201523060248201526044016020604051808303815f875af115801562000248573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200026e9190620004c2565b600680546001600160a01b0319166001600160a01b03928316179055305f818152600b602090815260408083206005548616845282528083205f1990556004805486168452600c8352818420805460ff199081166001908117909255855488168652600d8552838620805482168317905591548716855282852080548316821790556009548716855282852080548316821790559484528184208054909116851790559254825485168352600a825283832081905582549351908152929093169290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3620004ea565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620003b657815f19048211156200039a576200039a62000362565b80851615620003a857918102915b93841c93908002906200037b565b509250929050565b5f82620003ce575060016200046b565b81620003dc57505f6200046b565b8160018114620003f55760028114620004005762000420565b60019150506200046b565b60ff84111562000414576200041462000362565b50506001821b6200046b565b5060208310610133831016604e8410600b841016171562000445575081810a6200046b565b62000451838362000376565b805f190482111562000467576200046762000362565b0290505b92915050565b5f6200048160ff841683620003be565b9392505050565b80820281158282048414176200046b576200046b62000362565b5f82620004bd57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215620004d3575f80fd5b81516001600160a01b038116811462000481575f80fd5b61105380620004f85f395ff3fe60806040526004361061009d575f3560e01c806370a082311161006257806370a0823114610178578063715018a6146101ac57806395d89b41146101c2578063a9059cbb146101ee578063c9a251de1461020d578063dd62ed3e1461022c575f80fd5b806306fdde03146100a8578063095ea7b3146100f157806318160ddd1461012057806323b872dd1461013e578063313ce5671461015d575f80fd5b366100a457005b5f80fd5b3480156100b3575f80fd5b5060408051808201909152600f81526e61c2b76e6f6ec2b779c2b76d6f757360881b60208201525b6040516100e89190610db1565b60405180910390f35b3480156100fc575f80fd5b5061011061010b366004610e13565b610270565b60405190151581526020016100e8565b34801561012b575f80fd5b506001545b6040519081526020016100e8565b348015610149575f80fd5b50610110610158366004610e3d565b6102dc565b348015610168575f80fd5b50604051600981526020016100e8565b348015610183575f80fd5b50610130610192366004610e7b565b6001600160a01b03165f908152600a602052604090205490565b3480156101b7575f80fd5b506101c061039a565b005b3480156101cd575f80fd5b5060408051808201909152600481526330b737b760e11b60208201526100db565b3480156101f9575f80fd5b50610110610208366004610e13565b610425565b348015610218575f80fd5b506101c0610227366004610e96565b610431565b348015610237575f80fd5b50610130610246366004610ead565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205490565b335f818152600b602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906102ca9086815260200190565b60405180910390a35060015b92915050565b6001600160a01b0383165f908152600b602090815260408083203384529091528120545f1914610385576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387165f908152600b82528381203382529091529190912054610361918490610493565b6001600160a01b0385165f908152600b602090815260408083203384529091529020555b6103908484846104cb565b90505b9392505050565b5f546001600160a01b031633146103e15760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b5f80546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b5f6103933384846104cb565b5f546001600160a01b031633146104735760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064016103d8565b6064816001546104839190610ef8565b61048d9190610f0f565b60035550565b5f81848411156104b65760405162461bcd60e51b81526004016103d89190610db1565b505f6104c28486610f2e565b95945050505050565b6008545f9060ff16156104ea576104e38484846106d4565b9050610393565b6006546001600160a01b0384811691161480159061051657506009546001600160a01b03848116911614155b156105bf576001600160a01b0383165f908152600d602052604090205460ff168061056557506003546001600160a01b0384165f908152600a6020526040902054610562908490610f41565b11155b6105bf5760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b60648201526084016103d8565b6105ca8484846107b7565b156105d7576105d761080f565b6001600160a01b0384165f908152600c602052604090205460ff16158015610641576106246106068685610aca565b6001600160a01b0386165f908152600a602052604090205490610be8565b6001600160a01b0385165f908152600a602052604090205561067c565b6001600160a01b0384165f908152600a60205260409020546106639084610be8565b6001600160a01b0385165f908152600a60205260409020555b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516106c191815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386165f908152600a90915291822054610724918490610493565b6001600160a01b038086165f908152600a602052604080822093909355908516815220546107529083610be8565b6001600160a01b038085165f818152600a602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906107a59086815260200190565b60405180910390a35060019392505050565b5f6107c0610c46565b80156107e457506001600160a01b0384165f908152600c602052604090205460ff16155b80156107fd57506006546001600160a01b038481169116145b80156103905750506007541092915050565b6008805460ff19166001179055305f908152600a602052604081205490505f610850600261084a6108408480610f41565b61084a865f610c85565b90610d03565b90505f61085d8383610d44565b6040805160028082526060820183529293505f92909160208301908036833701905050905030815f8151811061089557610895610f54565b6001600160a01b03928316602091820292909201810191909152600554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156108ec573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109109190610f68565b8160018151811061092357610923610f54565b6001600160a01b03928316602091820292909201015260055460405163791ac94760e01b815291169063791ac947906109689085905f90869030904290600401610f83565b5f604051808303815f87803b15801561097f575f80fd5b505af1158015610991573d5f803e3d5ffd5b504792505f91506109b890506109a8826002610d03565b6109b25f80610f41565b90610d44565b90505f6109cc600261084a84818786610c85565b90505f6109dd8361084a8684610c85565b6004546040519192506001600160a01b03169082156108fc029083905f818181858888f19350505050158015610a15573d5f803e3d5ffd5b508615610ab6576005546004805460405163f305d71960e01b81523092810192909252602482018a90525f6044830181905260648301526001600160a01b0390811660848301524260a48301529091169063f305d71990849060c40160606040518083038185885af1158015610a8d573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ab29190610ff2565b5050505b50506008805460ff19169055505050505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0385165f908152600a90915291822054610b1a918490610493565b6001600160a01b0384165f908152600a6020526040812091909155600254610b509061084a610b498480610f41565b8690610c85565b5f549091506001600160a01b038581169116148015610b6d575f91505b305f908152600a6020526040902054610b869083610be8565b305f818152600a6020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610bd69086815260200190565b60405180910390a36104c28483610d44565b5f80610bf48385610f41565b9050838110156103935760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103d8565b6008545f9060ff16158015610c645750600654600160a01b900460ff165b8015610c805750600754305f908152600a602052604090205410155b905090565b5f825f03610c9457505f6102d6565b5f610c9f8385610ef8565b905082610cac8583610f0f565b146103935760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103d8565b5f61039383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610d85565b5f61039383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610493565b5f8183610da55760405162461bcd60e51b81526004016103d89190610db1565b505f6104c28486610f0f565b5f6020808352835180828501525f5b81811015610ddc57858101830151858201604001528201610dc0565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610e10575f80fd5b50565b5f8060408385031215610e24575f80fd5b8235610e2f81610dfc565b946020939093013593505050565b5f805f60608486031215610e4f575f80fd5b8335610e5a81610dfc565b92506020840135610e6a81610dfc565b929592945050506040919091013590565b5f60208284031215610e8b575f80fd5b813561039381610dfc565b5f60208284031215610ea6575f80fd5b5035919050565b5f8060408385031215610ebe575f80fd5b8235610ec981610dfc565b91506020830135610ed981610dfc565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176102d6576102d6610ee4565b5f82610f2957634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156102d6576102d6610ee4565b808201808211156102d6576102d6610ee4565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610f78575f80fd5b815161039381610dfc565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b81811015610fd15784516001600160a01b031683529383019391830191600101610fac565b50506001600160a01b03969096166060850152505050608001529392505050565b5f805f60608486031215611004575f80fd5b835192506020840151915060408401519050925092509256fea2646970667358221220f5a9b8c48cff9374227b912f02ff7395acfd08c3969f78d32a910f28ffbe4f8c64736f6c63430008150033

Deployed Bytecode

0x60806040526004361061009d575f3560e01c806370a082311161006257806370a0823114610178578063715018a6146101ac57806395d89b41146101c2578063a9059cbb146101ee578063c9a251de1461020d578063dd62ed3e1461022c575f80fd5b806306fdde03146100a8578063095ea7b3146100f157806318160ddd1461012057806323b872dd1461013e578063313ce5671461015d575f80fd5b366100a457005b5f80fd5b3480156100b3575f80fd5b5060408051808201909152600f81526e61c2b76e6f6ec2b779c2b76d6f757360881b60208201525b6040516100e89190610db1565b60405180910390f35b3480156100fc575f80fd5b5061011061010b366004610e13565b610270565b60405190151581526020016100e8565b34801561012b575f80fd5b506001545b6040519081526020016100e8565b348015610149575f80fd5b50610110610158366004610e3d565b6102dc565b348015610168575f80fd5b50604051600981526020016100e8565b348015610183575f80fd5b50610130610192366004610e7b565b6001600160a01b03165f908152600a602052604090205490565b3480156101b7575f80fd5b506101c061039a565b005b3480156101cd575f80fd5b5060408051808201909152600481526330b737b760e11b60208201526100db565b3480156101f9575f80fd5b50610110610208366004610e13565b610425565b348015610218575f80fd5b506101c0610227366004610e96565b610431565b348015610237575f80fd5b50610130610246366004610ead565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205490565b335f818152600b602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906102ca9086815260200190565b60405180910390a35060015b92915050565b6001600160a01b0383165f908152600b602090815260408083203384529091528120545f1914610385576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387165f908152600b82528381203382529091529190912054610361918490610493565b6001600160a01b0385165f908152600b602090815260408083203384529091529020555b6103908484846104cb565b90505b9392505050565b5f546001600160a01b031633146103e15760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b5f80546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b5f6103933384846104cb565b5f546001600160a01b031633146104735760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064016103d8565b6064816001546104839190610ef8565b61048d9190610f0f565b60035550565b5f81848411156104b65760405162461bcd60e51b81526004016103d89190610db1565b505f6104c28486610f2e565b95945050505050565b6008545f9060ff16156104ea576104e38484846106d4565b9050610393565b6006546001600160a01b0384811691161480159061051657506009546001600160a01b03848116911614155b156105bf576001600160a01b0383165f908152600d602052604090205460ff168061056557506003546001600160a01b0384165f908152600a6020526040902054610562908490610f41565b11155b6105bf5760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b60648201526084016103d8565b6105ca8484846107b7565b156105d7576105d761080f565b6001600160a01b0384165f908152600c602052604090205460ff16158015610641576106246106068685610aca565b6001600160a01b0386165f908152600a602052604090205490610be8565b6001600160a01b0385165f908152600a602052604090205561067c565b6001600160a01b0384165f908152600a60205260409020546106639084610be8565b6001600160a01b0385165f908152600a60205260409020555b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516106c191815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386165f908152600a90915291822054610724918490610493565b6001600160a01b038086165f908152600a602052604080822093909355908516815220546107529083610be8565b6001600160a01b038085165f818152600a602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906107a59086815260200190565b60405180910390a35060019392505050565b5f6107c0610c46565b80156107e457506001600160a01b0384165f908152600c602052604090205460ff16155b80156107fd57506006546001600160a01b038481169116145b80156103905750506007541092915050565b6008805460ff19166001179055305f908152600a602052604081205490505f610850600261084a6108408480610f41565b61084a865f610c85565b90610d03565b90505f61085d8383610d44565b6040805160028082526060820183529293505f92909160208301908036833701905050905030815f8151811061089557610895610f54565b6001600160a01b03928316602091820292909201810191909152600554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156108ec573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109109190610f68565b8160018151811061092357610923610f54565b6001600160a01b03928316602091820292909201015260055460405163791ac94760e01b815291169063791ac947906109689085905f90869030904290600401610f83565b5f604051808303815f87803b15801561097f575f80fd5b505af1158015610991573d5f803e3d5ffd5b504792505f91506109b890506109a8826002610d03565b6109b25f80610f41565b90610d44565b90505f6109cc600261084a84818786610c85565b90505f6109dd8361084a8684610c85565b6004546040519192506001600160a01b03169082156108fc029083905f818181858888f19350505050158015610a15573d5f803e3d5ffd5b508615610ab6576005546004805460405163f305d71960e01b81523092810192909252602482018a90525f6044830181905260648301526001600160a01b0390811660848301524260a48301529091169063f305d71990849060c40160606040518083038185885af1158015610a8d573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ab29190610ff2565b5050505b50506008805460ff19169055505050505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0385165f908152600a90915291822054610b1a918490610493565b6001600160a01b0384165f908152600a6020526040812091909155600254610b509061084a610b498480610f41565b8690610c85565b5f549091506001600160a01b038581169116148015610b6d575f91505b305f908152600a6020526040902054610b869083610be8565b305f818152600a6020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610bd69086815260200190565b60405180910390a36104c28483610d44565b5f80610bf48385610f41565b9050838110156103935760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103d8565b6008545f9060ff16158015610c645750600654600160a01b900460ff165b8015610c805750600754305f908152600a602052604090205410155b905090565b5f825f03610c9457505f6102d6565b5f610c9f8385610ef8565b905082610cac8583610f0f565b146103935760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103d8565b5f61039383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610d85565b5f61039383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610493565b5f8183610da55760405162461bcd60e51b81526004016103d89190610db1565b505f6104c28486610f0f565b5f6020808352835180828501525f5b81811015610ddc57858101830151858201604001528201610dc0565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610e10575f80fd5b50565b5f8060408385031215610e24575f80fd5b8235610e2f81610dfc565b946020939093013593505050565b5f805f60608486031215610e4f575f80fd5b8335610e5a81610dfc565b92506020840135610e6a81610dfc565b929592945050506040919091013590565b5f60208284031215610e8b575f80fd5b813561039381610dfc565b5f60208284031215610ea6575f80fd5b5035919050565b5f8060408385031215610ebe575f80fd5b8235610ec981610dfc565b91506020830135610ed981610dfc565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176102d6576102d6610ee4565b5f82610f2957634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156102d6576102d6610ee4565b808201808211156102d6576102d6610ee4565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610f78575f80fd5b815161039381610dfc565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b81811015610fd15784516001600160a01b031683529383019391830191600101610fac565b50506001600160a01b03969096166060850152505050608001529392505050565b5f805f60608486031215611004575f80fd5b835192506020840151915060408401519050925092509256fea2646970667358221220f5a9b8c48cff9374227b912f02ff7395acfd08c3969f78d32a910f28ffbe4f8c64736f6c63430008150033

Deployed Bytecode Sourcemap

4137:7267:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10870:80;;;;;;;;;;-1:-1:-1;10942:5:0;;;;;;;;;;;;-1:-1:-1;;;10942:5:0;;;;10870:80;;;;;;;:::i;:::-;;;;;;;;10557:215;;;;;;;;;;-1:-1:-1;10557:215:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;10557:215:0;1023:187:1;7732:88:0;;;;;;;;;;-1:-1:-1;7805:12:0;;7732:88;;;1361:25:1;;;1349:2;1334:18;7732:88:0;1215:177:1;7914:368:0;;;;;;;;;;-1:-1:-1;7914:368:0;;;;;:::i;:::-;;:::i;7826:80::-;;;;;;;;;;-1:-1:-1;7826:80:0;;4364:1;2000:36:1;;1988:2;1973:18;7826:80:0;1858:184:1;10956:104:0;;;;;;;;;;-1:-1:-1;10956:104:0;;;;;:::i;:::-;-1:-1:-1;;;;;11040:17:0;11022:7;11040:17;;;:8;:17;;;;;;;10956:104;2455:132;;;;;;;;;;;;;:::i;:::-;;10780:84;;;;;;;;;;-1:-1:-1;10854:7:0;;;;;;;;;;;;-1:-1:-1;;;10854:7:0;;;;10780:84;;11206:157;;;;;;;;;;-1:-1:-1;11206:157:0;;;;;:::i;:::-;;:::i;6721:129::-;;;;;;;;;;-1:-1:-1;6721:129:0;;;;;:::i;:::-;;:::i;11066:132::-;;;;;;;;;;-1:-1:-1;11066:132:0;;;;;:::i;:::-;-1:-1:-1;;;;;11168:18:0;;;11150:7;11168:18;;;:10;:18;;;;;;;;:27;;;;;;;;;;;;;11066:132;10557:215;10660:10;10632:4;10649:22;;;:10;:22;;;;;;;;-1:-1:-1;;;;;10649:31:0;;;;;;;;;;:40;;;10705:37;10632:4;;10649:31;;10705:37;;;;10683:6;1361:25:1;;1349:2;1334:18;;1215:177;10705:37:0;;;;;;;;-1:-1:-1;10760:4:0;10557:215;;;;;:::o;7914:368::-;-1:-1:-1;;;;;8034:18:0;;8014:4;8034:18;;;:10;:18;;;;;;;;8053:10;8034:30;;;;;;;;-1:-1:-1;;8034:51:0;8031:183;;8134:68;;;;;;;;;;;-1:-1:-1;;;8134:68:0;;;;;;;;-1:-1:-1;;;;;8134:18:0;;-1:-1:-1;8134:18:0;;;:10;:18;;;;;8153:10;8134:30;;;;;;;;;;:68;;8169:6;;8134:34;:68::i;:::-;-1:-1:-1;;;;;8101:18:0;;;;;;:10;:18;;;;;;;;8120:10;8101:30;;;;;;;:101;8031:183;8233:41;8248:6;8256:9;8267:6;8233:14;:41::i;:::-;8226:48;;7914:368;;;;;;:::o;2455:132::-;2398:4;2433:6;-1:-1:-1;;;;;2433:6:0;2290:10;2422:17;2273:39;;;;-1:-1:-1;;;2273:39:0;;3079:2:1;2273:39:0;;;3061:21:1;3118:1;3098:18;;;3091:29;-1:-1:-1;;;3136:18:1;;;3129:36;3182:18;;2273:39:0;;;;;;;;;2529:1:::1;2512:19:::0;;-1:-1:-1;;;;;;2512:19:0::1;::::0;;2547:32:::1;::::0;3357:51:1;;;2547:32:0::1;::::0;3345:2:1;3330:18;2547:32:0::1;;;;;;;2455:132::o:0;11206:157::-;11286:4;11310:45;11325:10;11337:9;11348:6;11310:14;:45::i;6721:129::-;2398:4;2433:6;-1:-1:-1;;;;;2433:6:0;2290:10;2422:17;2273:39;;;;-1:-1:-1;;;2273:39:0;;3079:2:1;2273:39:0;;;3061:21:1;3118:1;3098:18;;;3091:29;-1:-1:-1;;;3136:18:1;;;3129:36;3182:18;;2273:39:0;2877:329:1;2273:39:0;6839:3:::1;6828:7;6813:12;;:22;;;;:::i;:::-;6812:30;;;;:::i;:::-;6796:13;:46:::0;-1:-1:-1;6721:129:0:o;465:190::-;551:7;587:12;579:6;;;;571:29;;;;-1:-1:-1;;;571:29:0;;;;;;;;:::i;:::-;-1:-1:-1;611:9:0;623:5;627:1;623;:5;:::i;:::-;611:17;465:190;-1:-1:-1;;;;;465:190:0:o;9697:852::-;9810:8;;9790:4;;9810:8;;9807:66;;;9828:42;9844:6;9852:9;9863:6;9828:15;:42::i;:::-;9821:49;;;;9807:66;9902:12;;-1:-1:-1;;;;;9889:25:0;;;9902:12;;9889:25;;;;:54;;-1:-1:-1;9931:12:0;;-1:-1:-1;;;;;9918:25:0;;;9931:12;;9918:25;;9889:54;9885:214;;;-1:-1:-1;;;;;9968:28:0;;;;;;:17;:28;;;;;;;;;:77;;-1:-1:-1;10032:13:0;;-1:-1:-1;;;;;10000:19:0;;;;;;:8;:19;;;;;;:28;;10022:6;;10000:28;:::i;:::-;:45;;9968:77;9960:127;;;;-1:-1:-1;;;9960:127:0;;4411:2:1;9960:127:0;;;4393:21:1;4450:2;4430:18;;;4423:30;4489:34;4469:18;;;4462:62;-1:-1:-1;;;4540:18:1;;;4533:35;4585:19;;9960:127:0;4209:401:1;9960:127:0;10112:44;10130:6;10138:9;10149:6;10112:17;:44::i;:::-;10109:89;;;10172:14;:12;:14::i;:::-;-1:-1:-1;;;;;8382:23:0;;10208:15;8382:23;;;:15;:23;;;;;;;;8381:24;10263:204;;;;10316:53;10340:28;10353:6;10361;10340:12;:28::i;:::-;-1:-1:-1;;;;;10316:19:0;;;;;;:8;:19;;;;;;;:23;:53::i;:::-;-1:-1:-1;;;;;10294:19:0;;;;;;:8;:19;;;;;:75;10263:204;;;-1:-1:-1;;;;;10424:19:0;;;;;;:8;:19;;;;;;:31;;10448:6;10424:23;:31::i;:::-;-1:-1:-1;;;;;10402:19:0;;;;;;:8;:19;;;;;:53;10263:204;10501:9;-1:-1:-1;;;;;10484:35:0;10493:6;-1:-1:-1;;;;;10484:35:0;;10512:6;10484:35;;;;1361:25:1;;1349:2;1334:18;;1215:177;10484:35:0;;;;;;;;-1:-1:-1;10537:4:0;;9697:852;-1:-1:-1;;;;9697:852:0:o;6858:327::-;6988:52;;;;;;;;;;;-1:-1:-1;;;6988:52:0;;;;;;;;-1:-1:-1;;;;;6988:16:0;;6952:4;6988:16;;;:8;:16;;;;;;;:52;;7009:6;;6988:20;:52::i;:::-;-1:-1:-1;;;;;6969:16:0;;;;;;;:8;:16;;;;;;:71;;;;7073:19;;;;;;;:31;;7097:6;7073:23;:31::i;:::-;-1:-1:-1;;;;;7051:19:0;;;;;;;:8;:19;;;;;;;:53;;;;7120:35;;;;;;;;;;7148:6;1361:25:1;;1349:2;1334:18;;1215:177;7120:35:0;;;;;;;;-1:-1:-1;7173:4:0;6858:327;;;;;:::o;6132:268::-;6232:4;6256:16;:14;:16::i;:::-;:55;;;;-1:-1:-1;;;;;;8382:23:0;;8357:4;8382:23;;;:15;:23;;;;;;;;8381:24;6285:26;6256:96;;;;-1:-1:-1;6512:12:0;;-1:-1:-1;;;;;6499:25:0;;;6512:12;;6499:25;6324:28;6256:136;;;;-1:-1:-1;;6374:18:0;;-1:-1:-1;6365:27:0;6132:268;-1:-1:-1;;6132:268:0:o;8421:1268::-;4662:8;:15;;-1:-1:-1;;4662:15:0;4673:4;4662:15;;;8526:4:::1;-1:-1:-1::0;11040:17:0;;;:8;:17;;;;;;8475:57;-1:-1:-1;8543:20:0::1;8566:59;8623:1;8566:52;4568:22;8543:20:::0;;4568:22:::1;:::i;:::-;8566:36;:22:::0;4475:1:::1;8566:26;:36::i;:::-;:40:::0;::::1;:52::i;:59::-;8543:82:::0;-1:-1:-1;8636:22:0::1;8661:40;:22:::0;8543:82;8661:26:::1;:40::i;:::-;8738:16;::::0;;8752:1:::1;8738:16:::0;;;;;::::1;::::0;;8636:65;;-1:-1:-1;8714:21:0::1;::::0;8738:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8738:16:0::1;8714:40;;8783:4;8765;8770:1;8765:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8765:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;8809:14:::1;::::0;:21:::1;::::0;;-1:-1:-1;;;8809:21:0;;;;:14;;;::::1;::::0;:19:::1;::::0;:21:::1;::::0;;::::1;::::0;8765:7;;8809:21;;;;;:14;:21:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8799:4;8804:1;8799:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8799:31:0;;::::1;:7;::::0;;::::1;::::0;;;;;:31;8843:14:::1;::::0;:198:::1;::::0;-1:-1:-1;;;8843:198:0;;:14;::::1;::::0;:65:::1;::::0;:198:::1;::::0;8923:14;;8843::::1;::::0;8968:4;;8995::::1;::::0;9015:15:::1;::::0;8843:198:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;9073:21:0::1;::::0;-1:-1:-1;9052:18:0::1;::::0;-1:-1:-1;9132:31:0::1;::::0;-1:-1:-1;9147:15:0::1;9052:18:::0;9160:1:::1;9147:12;:15::i;:::-;4568:22;4522:1;::::0;4568:22:::1;:::i;:::-;9132:14:::0;::::1;:31::i;:::-;9105:58:::0;-1:-1:-1;9174:17:0::1;9194:53;9245:1;9194:46;9105:58:::0;9194:46;:10;9174:17;9194:14:::1;:24::i;:53::-;9174:73:::0;-1:-1:-1;9258:24:0::1;9285:49;9317:16:::0;9285:27:::1;:10:::0;9258:24;9285:14:::1;:27::i;:49::-;9355:11;::::0;9347:47:::1;::::0;9258:76;;-1:-1:-1;;;;;;9355:11:0::1;::::0;9347:47;::::1;;;::::0;9258:76;;9355:11:::1;9347:47:::0;9355:11;9347:47;9258:76;9355:11;9347:47;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;9408:16:0;;9405:277:::1;;9440:14;::::0;9610:11:::1;::::0;;9440:230:::1;::::0;-1:-1:-1;;;9440:230:0;;9515:4:::1;9440:230:::0;;::::1;6461:34:1::0;;;;6511:18;;;6504:34;;;9440:14:0::1;6554:18:1::0;;;6547:34;;;6597:18;;;6590:34;-1:-1:-1;;;;;9610:11:0;;::::1;6640:19:1::0;;;6633:44;9640:15:0::1;6693:19:1::0;;;6686:35;9440:14:0;;::::1;::::0;:30:::1;::::0;9478:9;;6395:19:1;;9440:230:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;9405:277;-1:-1:-1::0;;4682:8:0;:16;;-1:-1:-1;;4682:16:0;;;-1:-1:-1;;;;;;8421:1268:0:o;7193:531::-;7304:52;;;;;;;;;;;-1:-1:-1;;;7304:52:0;;;;;;;;-1:-1:-1;;;;;7304:16:0;;7265:7;7304:16;;;:8;:16;;;;;;;:52;;7325:6;;7304:20;:52::i;:::-;-1:-1:-1;;;;;7285:16:0;;;;;;:8;:16;;;;;:71;;;;7415:11;;7388:39;;:22;4568;7285:16;;4568:22;:::i;:::-;7388:6;;:10;:22::i;:39::-;7438:15;7466:6;7367:60;;-1:-1:-1;;;;;;7456:16:0;;;7466:6;;7456:16;7483:57;;;;7527:1;7514:14;;7483:57;7595:4;7578:23;;;;:8;:23;;;;;;:39;;7606:10;7578:27;:39::i;:::-;7569:4;7552:23;;;;:8;:23;;;;;;;:65;;;;7633:43;;-1:-1:-1;;;;;7633:43:0;;;;;;;7665:10;1361:25:1;;1349:2;1334:18;;1215:177;7633:43:0;;;;;;;;7694:22;:6;7705:10;7694;:22::i;134:179::-;192:7;;224:5;228:1;224;:5;:::i;:::-;212:17;;253:1;248;:6;;240:46;;;;-1:-1:-1;;;240:46:0;;7245:2:1;240:46:0;;;7227:21:1;7284:2;7264:18;;;7257:30;7323:29;7303:18;;;7296:57;7370:18;;240:46:0;7043:351:1;6540:173:0;6614:8;;6589:4;;6614:8;;6613:9;:34;;;;-1:-1:-1;6635:12:0;;-1:-1:-1;;;6635:12:0;;;;6613:34;:92;;;;-1:-1:-1;6687:18:0;;6677:4;6660:23;;;;:8;:23;;;;;;:45;;6613:92;6606:99;;6540:173;:::o;663:246::-;721:7;745:1;750;745:6;741:47;;-1:-1:-1;775:1:0;768:8;;741:47;798:9;810:5;814:1;810;:5;:::i;:::-;798:17;-1:-1:-1;843:1:0;834:5;838:1;798:17;834:5;:::i;:::-;:10;826:56;;;;-1:-1:-1;;;826:56:0;;7601:2:1;826:56:0;;;7583:21:1;7640:2;7620:18;;;7613:30;7679:34;7659:18;;;7652:62;-1:-1:-1;;;7730:18:1;;;7723:31;7771:19;;826:56:0;7399:397:1;917:132:0;975:7;1002:39;1006:1;1009;1002:39;;;;;;;;;;;;;;;;;:3;:39::i;321:136::-;379:7;406:43;410:1;413;406:43;;;;;;;;;;;;;;;;;:3;:43::i;1057:189::-;1143:7;1178:12;1171:5;1163:28;;;;-1:-1:-1;;;1163:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1202:9:0;1214:5;1218:1;1214;:5;:::i;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;2299:180::-;2358:6;2411:2;2399:9;2390:7;2386:23;2382:32;2379:52;;;2427:1;2424;2417:12;2379:52;-1:-1:-1;2450:23:1;;2299:180;-1:-1:-1;2299:180:1:o;2484:388::-;2552:6;2560;2613:2;2601:9;2592:7;2588:23;2584:32;2581:52;;;2629:1;2626;2619:12;2581:52;2668:9;2655:23;2687:31;2712:5;2687:31;:::i;:::-;2737:5;-1:-1:-1;2794:2:1;2779:18;;2766:32;2807:33;2766:32;2807:33;:::i;:::-;2859:7;2849:17;;;2484:388;;;;;:::o;3419:127::-;3480:10;3475:3;3471:20;3468:1;3461:31;3511:4;3508:1;3501:15;3535:4;3532:1;3525:15;3551:168;3624:9;;;3655;;3672:15;;;3666:22;;3652:37;3642:71;;3693:18;;:::i;3724:217::-;3764:1;3790;3780:132;;3834:10;3829:3;3825:20;3822:1;3815:31;3869:4;3866:1;3859:15;3897:4;3894:1;3887:15;3780:132;-1:-1:-1;3926:9:1;;3724:217::o;3946:128::-;4013:9;;;4034:11;;;4031:37;;;4048:18;;:::i;4079:125::-;4144:9;;;4165:10;;;4162:36;;;4178:18;;:::i;4747:127::-;4808:10;4803:3;4799:20;4796:1;4789:31;4839:4;4836:1;4829:15;4863:4;4860:1;4853:15;4879:251;4949:6;5002:2;4990:9;4981:7;4977:23;4973:32;4970:52;;;5018:1;5015;5008:12;4970:52;5050:9;5044:16;5069:31;5094:5;5069:31;:::i;5135:980::-;5397:4;5445:3;5434:9;5430:19;5476:6;5465:9;5458:25;5502:2;5540:6;5535:2;5524:9;5520:18;5513:34;5583:3;5578:2;5567:9;5563:18;5556:31;5607:6;5642;5636:13;5673:6;5665;5658:22;5711:3;5700:9;5696:19;5689:26;;5750:2;5742:6;5738:15;5724:29;;5771:1;5781:195;5795:6;5792:1;5789:13;5781:195;;;5860:13;;-1:-1:-1;;;;;5856:39:1;5844:52;;5951:15;;;;5916:12;;;;5892:1;5810:9;5781:195;;;-1:-1:-1;;;;;;;6032:32:1;;;;6027:2;6012:18;;6005:60;-1:-1:-1;;;6096:3:1;6081:19;6074:35;5993:3;5135:980;-1:-1:-1;;;5135:980:1:o;6732:306::-;6820:6;6828;6836;6889:2;6877:9;6868:7;6864:23;6860:32;6857:52;;;6905:1;6902;6895:12;6857:52;6934:9;6928:16;6918:26;;6984:2;6973:9;6969:18;6963:25;6953:35;;7028:2;7017:9;7013:18;7007:25;6997:35;;6732:306;;;;;:::o

Swarm Source

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