ETH Price: $3,857.08 (+4.33%)

Token

Kennedy Memecoin (BOBBY)
 

Overview

Max Total Supply

47,000,000,000 BOBBY

Holders

12,410

Market

Price

$0.00 @ 0.000000 ETH (+3.67%)

Onchain Market Cap

$188,940.00

Circulating Supply Market Cap

$132,698.00

Other Info

Token Contract (WITH 18 Decimals)

Balance
1,822,271.88868434 BOBBY

Value
$7.33 ( ~0.00190040254291315 Eth) [0.0039%]
0x456f440f7991bdc2621fdc718485c7c3ff98f1d5
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Kennedy Coin ($BOBBY) aims to build a better world led by the heroic Bobby. He fights for a pro-crypto future that will save the world. $BOBBY is the rallying cry for a global movement for change, gaining momentum through strong community engagement & media awareness as political interest grows.

Market

Volume (24H):$743.63
Market Capitalization:$132,698.00
Circulating Supply:32,994,000,000.00 BOBBY
Market Data Source: Coinmarketcap

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Bobby

Compiler Version
v0.8.25+commit.b61c2a91

Optimization Enabled:
Yes with 999 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
pragma experimental ABIEncoderV2;

interface IUniswapV2Router02 {
    function WETH() external pure returns (address);

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

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

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

interface IERC20 {
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);

    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(address to, 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 from, address to, uint256 amount) external returns (bool);
}

interface IERC20Metadata is IERC20 {

    function name() external view returns (string memory);

    function symbol() external view returns (string memory);

    function decimals() external view returns (uint8);
}

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

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

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

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

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

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

    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

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

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

    function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        address owner = _msgSender();
        uint256 currentAllowance = allowance(owner, spender);
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(owner, spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function _transfer(address from, address to, uint256 amount) internal virtual {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[from] = fromBalance - amount;
            _balances[to] += amount;
        }

        emit Transfer(from, to, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _totalSupply += amount;
        unchecked {
            _balances[account] += amount;
        }
        
        emit Transfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
            _totalSupply -= amount;
        }

        emit Transfer(account, address(0), amount);
    }

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        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 _spendAllowance(address owner, address spender, uint256 amount) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }
}

contract Bobby is ERC20 {
    uint256 public constant initialTotalSupply = 47 * 1e9 * 1e18;
    IUniswapV2Router02 public constant _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    
    address public marketingWallet;
    uint256 public swapTokensAtAmount;

    bool private swapping;

    uint256 public transferFee = 2;
    uint256 public buyFee = 2;
    uint256 public sellFee = 2;

    mapping(address => bool) private _isExcludedFromFees;
    mapping(address => bool) private automatedMarketMakerPairs;


    modifier onlyMarketing() {
        require(msg.sender == marketingWallet, "Only Marketing Wallet!");
        _;
    }

    constructor() ERC20("Kennedy Memecoin", "BOBBY") {
        _approve(address(this), address(_uniswapV2Router), type(uint256).max);
        _isExcludedFromFees[address(this)] = true;
        _setMarketingWallet(msg.sender);
        _mint(marketingWallet, initialTotalSupply);
    }

    function _transfer(address from, address to, uint256 amount) internal override {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        if (!swapping && automatedMarketMakerPairs[to] && !_isExcludedFromFees[from] && balanceOf(address(this)) > swapTokensAtAmount) {
            swapping = true;
            swapBack();
            swapping = false;
        }

        if (!swapping && !_isExcludedFromFees[from] && !_isExcludedFromFees[to]) {
            uint256 fee = automatedMarketMakerPairs[to] ? sellFee : (automatedMarketMakerPairs[from] ? buyFee: transferFee);
            uint256 fees = amount * fee / 100;
            if (fees > 0) {
                super._transfer(from, address(this), fees);
                amount -= fees;
            }
        }
        super._transfer(from, to, amount);
    }

    function lowerFees(uint256 _transferFee, uint256 _buyFee, uint256 _sellFee) external onlyMarketing {
        require(_transferFee <= transferFee && _buyFee <= buyFee && _sellFee <= sellFee, "Can only lower fees!");
        transferFee = _transferFee;
        buyFee = _buyFee;
        sellFee = _sellFee;
    }

    function retrieveStuckEth() external onlyMarketing {
        payable(marketingWallet).transfer(address(this).balance);
    }

    function retrieveStuckToken(address tokenAddress) external onlyMarketing {
        IERC20(tokenAddress).transfer(marketingWallet, IERC20(tokenAddress).balanceOf(address(this)));
    }

    function setAutomatedMarketMakerPair(address pair, bool value) public onlyMarketing {
        automatedMarketMakerPairs[pair] = value;
    }

    function excludeFromFees(address account, bool excluded) external onlyMarketing {
        _isExcludedFromFees[account] = excluded;
    }

    function setSwapTokensAtAmount(uint256 _amount) external onlyMarketing {
        swapTokensAtAmount = _amount;
    }

    function setMarketingWallet(address _marketingWallet) external onlyMarketing {
        _setMarketingWallet(_marketingWallet);
    }

    function _setMarketingWallet(address _marketingWallet) private {
        marketingWallet = _marketingWallet;
        _isExcludedFromFees[marketingWallet] = true;
    }

    function swapBack() private {
        if (swapTokensAtAmount > 0) {
            address[] memory path = new address[](2);
            path[0] = address(this);
            path[1] = _uniswapV2Router.WETH();
            _uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
                swapTokensAtAmount,
                0,
                path,
                marketingWallet,
                block.timestamp
            );
        }
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"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":"_uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_transferFee","type":"uint256"},{"internalType":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"lowerFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"retrieveStuckEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"}],"name":"retrieveStuckToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingWallet","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapTokensAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600260085560026009556002600a5534801561001e575f80fd5b506040518060400160405280601081526020016f25b2b73732b23c9026b2b6b2b1b7b4b760811b81525060405180604001604052806005815260200164424f42425960d81b8152508160039081610075919061038e565b506004610082828261038e565b5050506100ab30737a250d5630b4cf539739df2c5dacb4c659f2488d5f1961011160201b60201c565b305f908152600b60205260408082208054600160ff199182168117909255600580546001600160a01b0319163390811782558552929093208054909316179091555461010c906001600160a01b03166b97dd7d2157478b2e98000000610239565b610472565b6001600160a01b0383166101785760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b0382166101d95760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161016f565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03821661028f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161016f565b8060025f8282546102a0919061044d565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061031e57607f821691505b60208210810361033c57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561038957805f5260205f20601f840160051c810160208510156103675750805b601f840160051c820191505b81811015610386575f8155600101610373565b50505b505050565b81516001600160401b038111156103a7576103a76102f6565b6103bb816103b5845461030a565b84610342565b602080601f8311600181146103ee575f84156103d75750858301515b5f19600386901b1c1916600185901b178555610445565b5f85815260208120601f198616915b8281101561041c578886015182559484019460019091019084016103fd565b508582101561043957878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b8082018082111561046c57634e487b7160e01b5f52601160045260245ffd5b92915050565b6116068061047f5f395ff3fe608060405260043610610191575f3560e01c806370a08231116100dc578063acb2ad6f11610087578063c024666811610062578063c024666814610440578063d289dbe21461045f578063dd62ed3e1461047e578063e2f45605146104c2575f80fd5b8063acb2ad6f146103ed578063af74296714610402578063afa4f3b214610421575f80fd5b80639a7a23d6116100b75780639a7a23d614610390578063a457c2d7146103af578063a9059cbb146103ce575f80fd5b806370a082311461032957806375f0a8741461035d57806395d89b411461037c575f80fd5b8063313ce5671161013c5780634d54557f116101175780634d54557f146102b5578063583e0568146102cb5780635d098b381461030a575f80fd5b8063313ce56714610266578063395093511461028157806347062402146102a0575f80fd5b806323b872dd1161016c57806323b872dd146102135780632b14ca5614610232578063311028af14610247575f80fd5b806306fdde031461019c578063095ea7b3146101c657806318160ddd146101f5575f80fd5b3661019857005b5f80fd5b3480156101a7575f80fd5b506101b06104d7565b6040516101bd91906112d3565b60405180910390f35b3480156101d1575f80fd5b506101e56101e036600461131c565b610567565b60405190151581526020016101bd565b348015610200575f80fd5b506002545b6040519081526020016101bd565b34801561021e575f80fd5b506101e561022d366004611346565b610580565b34801561023d575f80fd5b50610205600a5481565b348015610252575f80fd5b506102056b97dd7d2157478b2e9800000081565b348015610271575f80fd5b50604051601281526020016101bd565b34801561028c575f80fd5b506101e561029b36600461131c565b6105a3565b3480156102ab575f80fd5b5061020560095481565b3480156102c0575f80fd5b506102c96105e1565b005b3480156102d6575f80fd5b506102f2737a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b0390911681526020016101bd565b348015610315575f80fd5b506102c9610324366004611384565b610672565b348015610334575f80fd5b50610205610343366004611384565b6001600160a01b03165f9081526020819052604090205490565b348015610368575f80fd5b506005546102f2906001600160a01b031681565b348015610387575f80fd5b506101b0610716565b34801561039b575f80fd5b506102c96103aa3660046113b3565b610725565b3480156103ba575f80fd5b506101e56103c936600461131c565b6107a2565b3480156103d9575f80fd5b506101e56103e836600461131c565b61084b565b3480156103f8575f80fd5b5061020560085481565b34801561040d575f80fd5b506102c961041c366004611384565b610858565b34801561042c575f80fd5b506102c961043b3660046113ea565b6109c1565b34801561044b575f80fd5b506102c961045a3660046113b3565b610a19565b34801561046a575f80fd5b506102c9610479366004611401565b610a96565b348015610489575f80fd5b5061020561049836600461142a565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b3480156104cd575f80fd5b5061020560065481565b6060600380546104e690611456565b80601f016020809104026020016040519081016040528092919081815260200182805461051290611456565b801561055d5780601f106105345761010080835404028352916020019161055d565b820191905f5260205f20905b81548152906001019060200180831161054057829003601f168201915b5050505050905090565b5f33610574818585610b65565b60019150505b92915050565b5f3361058d858285610cbc565b610598858585610d4c565b506001949350505050565b335f8181526001602090815260408083206001600160a01b038716845290915281205490919061057490829086906105dc9087906114a2565b610b65565b6005546001600160a01b031633146106395760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b60448201526064015b60405180910390fd5b6005546040516001600160a01b03909116904780156108fc02915f818181858888f1935050505015801561066f573d5f803e3d5ffd5b50565b6005546001600160a01b031633146106c55760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b6044820152606401610630565b600580547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383169081179091555f908152600b60205260409020805460ff1916600117905550565b6060600480546104e690611456565b6005546001600160a01b031633146107785760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b6044820152606401610630565b6001600160a01b03919091165f908152600c60205260409020805460ff1916911515919091179055565b335f8181526001602090815260408083206001600160a01b03871684529091528120549091908381101561083e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152608401610630565b6105988286868403610b65565b5f33610574818585610d4c565b6005546001600160a01b031633146108ab5760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b6044820152606401610630565b6005546040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201526001600160a01b038381169263a9059cbb9291169083906370a0823190602401602060405180830381865afa158015610915573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093991906114b5565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af1158015610999573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109bd91906114cc565b5050565b6005546001600160a01b03163314610a145760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b6044820152606401610630565b600655565b6005546001600160a01b03163314610a6c5760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b6044820152606401610630565b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b6005546001600160a01b03163314610ae95760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b6044820152606401610630565b6008548311158015610afd57506009548211155b8015610b0b5750600a548111155b610b575760405162461bcd60e51b815260206004820152601460248201527f43616e206f6e6c79206c6f7765722066656573210000000000000000000000006044820152606401610630565b600892909255600955600a55565b6001600160a01b038316610be05760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610630565b6001600160a01b038216610c5c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610630565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f198114610d465781811015610d395760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610630565b610d468484848403610b65565b50505050565b6001600160a01b038316610db05760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610630565b6001600160a01b038216610e125760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610630565b60075460ff16158015610e3c57506001600160a01b0382165f908152600c602052604090205460ff165b8015610e6057506001600160a01b0383165f908152600b602052604090205460ff16155b8015610e7b5750600654305f90815260208190526040902054115b15610ea0576007805460ff19166001179055610e95610f92565b6007805460ff191690555b60075460ff16158015610ecb57506001600160a01b0383165f908152600b602052604090205460ff16155b8015610eef57506001600160a01b0382165f908152600b602052604090205460ff16155b15610f82576001600160a01b0382165f908152600c602052604081205460ff16610f42576001600160a01b0384165f908152600c602052604090205460ff16610f3a57600854610f46565b600954610f46565b600a545b90505f6064610f5583856114e7565b610f5f91906114fe565b90508015610f7f57610f72853083611119565b610f7c818461151d565b92505b50505b610f8d838383611119565b505050565b60065415611117576040805160028082526060820183525f9260208301908036833701905050905030815f81518110610fcd57610fcd611530565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561103d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110619190611544565b8160018151811061107457611074611530565b6001600160a01b0392831660209182029290920101526006546005546040517f791ac947000000000000000000000000000000000000000000000000000000008152737a250d5630b4cf539739df2c5dacb4c659f2488d9363791ac947936110e89390925f9288921690429060040161155f565b5f604051808303815f87803b1580156110ff575f80fd5b505af1158015611111573d5f803e3d5ffd5b50505050505b565b6001600160a01b03831661117d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610630565b6001600160a01b0382166111df5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610630565b6001600160a01b0383165f908152602081905260409020548181101561126d5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152608401610630565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b038116811461066f575f80fd5b5f806040838503121561132d575f80fd5b823561133881611308565b946020939093013593505050565b5f805f60608486031215611358575f80fd5b833561136381611308565b9250602084013561137381611308565b929592945050506040919091013590565b5f60208284031215611394575f80fd5b813561139f81611308565b9392505050565b801515811461066f575f80fd5b5f80604083850312156113c4575f80fd5b82356113cf81611308565b915060208301356113df816113a6565b809150509250929050565b5f602082840312156113fa575f80fd5b5035919050565b5f805f60608486031215611413575f80fd5b505081359360208301359350604090920135919050565b5f806040838503121561143b575f80fd5b823561144681611308565b915060208301356113df81611308565b600181811c9082168061146a57607f821691505b60208210810361148857634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561057a5761057a61148e565b5f602082840312156114c5575f80fd5b5051919050565b5f602082840312156114dc575f80fd5b815161139f816113a6565b808202811582820484141761057a5761057a61148e565b5f8261151857634e487b7160e01b5f52601260045260245ffd5b500490565b8181038181111561057a5761057a61148e565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611554575f80fd5b815161139f81611308565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156115af5784516001600160a01b03168352938301939183019160010161158a565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212200629ecba05cbd7fd295752e3db431110bf6fb9439ee32ef59b966d38fd74e05364736f6c63430008190033

Deployed Bytecode

0x608060405260043610610191575f3560e01c806370a08231116100dc578063acb2ad6f11610087578063c024666811610062578063c024666814610440578063d289dbe21461045f578063dd62ed3e1461047e578063e2f45605146104c2575f80fd5b8063acb2ad6f146103ed578063af74296714610402578063afa4f3b214610421575f80fd5b80639a7a23d6116100b75780639a7a23d614610390578063a457c2d7146103af578063a9059cbb146103ce575f80fd5b806370a082311461032957806375f0a8741461035d57806395d89b411461037c575f80fd5b8063313ce5671161013c5780634d54557f116101175780634d54557f146102b5578063583e0568146102cb5780635d098b381461030a575f80fd5b8063313ce56714610266578063395093511461028157806347062402146102a0575f80fd5b806323b872dd1161016c57806323b872dd146102135780632b14ca5614610232578063311028af14610247575f80fd5b806306fdde031461019c578063095ea7b3146101c657806318160ddd146101f5575f80fd5b3661019857005b5f80fd5b3480156101a7575f80fd5b506101b06104d7565b6040516101bd91906112d3565b60405180910390f35b3480156101d1575f80fd5b506101e56101e036600461131c565b610567565b60405190151581526020016101bd565b348015610200575f80fd5b506002545b6040519081526020016101bd565b34801561021e575f80fd5b506101e561022d366004611346565b610580565b34801561023d575f80fd5b50610205600a5481565b348015610252575f80fd5b506102056b97dd7d2157478b2e9800000081565b348015610271575f80fd5b50604051601281526020016101bd565b34801561028c575f80fd5b506101e561029b36600461131c565b6105a3565b3480156102ab575f80fd5b5061020560095481565b3480156102c0575f80fd5b506102c96105e1565b005b3480156102d6575f80fd5b506102f2737a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b0390911681526020016101bd565b348015610315575f80fd5b506102c9610324366004611384565b610672565b348015610334575f80fd5b50610205610343366004611384565b6001600160a01b03165f9081526020819052604090205490565b348015610368575f80fd5b506005546102f2906001600160a01b031681565b348015610387575f80fd5b506101b0610716565b34801561039b575f80fd5b506102c96103aa3660046113b3565b610725565b3480156103ba575f80fd5b506101e56103c936600461131c565b6107a2565b3480156103d9575f80fd5b506101e56103e836600461131c565b61084b565b3480156103f8575f80fd5b5061020560085481565b34801561040d575f80fd5b506102c961041c366004611384565b610858565b34801561042c575f80fd5b506102c961043b3660046113ea565b6109c1565b34801561044b575f80fd5b506102c961045a3660046113b3565b610a19565b34801561046a575f80fd5b506102c9610479366004611401565b610a96565b348015610489575f80fd5b5061020561049836600461142a565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b3480156104cd575f80fd5b5061020560065481565b6060600380546104e690611456565b80601f016020809104026020016040519081016040528092919081815260200182805461051290611456565b801561055d5780601f106105345761010080835404028352916020019161055d565b820191905f5260205f20905b81548152906001019060200180831161054057829003601f168201915b5050505050905090565b5f33610574818585610b65565b60019150505b92915050565b5f3361058d858285610cbc565b610598858585610d4c565b506001949350505050565b335f8181526001602090815260408083206001600160a01b038716845290915281205490919061057490829086906105dc9087906114a2565b610b65565b6005546001600160a01b031633146106395760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b60448201526064015b60405180910390fd5b6005546040516001600160a01b03909116904780156108fc02915f818181858888f1935050505015801561066f573d5f803e3d5ffd5b50565b6005546001600160a01b031633146106c55760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b6044820152606401610630565b600580547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383169081179091555f908152600b60205260409020805460ff1916600117905550565b6060600480546104e690611456565b6005546001600160a01b031633146107785760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b6044820152606401610630565b6001600160a01b03919091165f908152600c60205260409020805460ff1916911515919091179055565b335f8181526001602090815260408083206001600160a01b03871684529091528120549091908381101561083e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152608401610630565b6105988286868403610b65565b5f33610574818585610d4c565b6005546001600160a01b031633146108ab5760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b6044820152606401610630565b6005546040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201526001600160a01b038381169263a9059cbb9291169083906370a0823190602401602060405180830381865afa158015610915573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093991906114b5565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af1158015610999573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109bd91906114cc565b5050565b6005546001600160a01b03163314610a145760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b6044820152606401610630565b600655565b6005546001600160a01b03163314610a6c5760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b6044820152606401610630565b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b6005546001600160a01b03163314610ae95760405162461bcd60e51b81526020600482015260166024820152754f6e6c79204d61726b6574696e672057616c6c65742160501b6044820152606401610630565b6008548311158015610afd57506009548211155b8015610b0b5750600a548111155b610b575760405162461bcd60e51b815260206004820152601460248201527f43616e206f6e6c79206c6f7765722066656573210000000000000000000000006044820152606401610630565b600892909255600955600a55565b6001600160a01b038316610be05760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610630565b6001600160a01b038216610c5c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610630565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f198114610d465781811015610d395760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610630565b610d468484848403610b65565b50505050565b6001600160a01b038316610db05760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610630565b6001600160a01b038216610e125760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610630565b60075460ff16158015610e3c57506001600160a01b0382165f908152600c602052604090205460ff165b8015610e6057506001600160a01b0383165f908152600b602052604090205460ff16155b8015610e7b5750600654305f90815260208190526040902054115b15610ea0576007805460ff19166001179055610e95610f92565b6007805460ff191690555b60075460ff16158015610ecb57506001600160a01b0383165f908152600b602052604090205460ff16155b8015610eef57506001600160a01b0382165f908152600b602052604090205460ff16155b15610f82576001600160a01b0382165f908152600c602052604081205460ff16610f42576001600160a01b0384165f908152600c602052604090205460ff16610f3a57600854610f46565b600954610f46565b600a545b90505f6064610f5583856114e7565b610f5f91906114fe565b90508015610f7f57610f72853083611119565b610f7c818461151d565b92505b50505b610f8d838383611119565b505050565b60065415611117576040805160028082526060820183525f9260208301908036833701905050905030815f81518110610fcd57610fcd611530565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561103d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110619190611544565b8160018151811061107457611074611530565b6001600160a01b0392831660209182029290920101526006546005546040517f791ac947000000000000000000000000000000000000000000000000000000008152737a250d5630b4cf539739df2c5dacb4c659f2488d9363791ac947936110e89390925f9288921690429060040161155f565b5f604051808303815f87803b1580156110ff575f80fd5b505af1158015611111573d5f803e3d5ffd5b50505050505b565b6001600160a01b03831661117d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610630565b6001600160a01b0382166111df5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610630565b6001600160a01b0383165f908152602081905260409020548181101561126d5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152608401610630565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b038116811461066f575f80fd5b5f806040838503121561132d575f80fd5b823561133881611308565b946020939093013593505050565b5f805f60608486031215611358575f80fd5b833561136381611308565b9250602084013561137381611308565b929592945050506040919091013590565b5f60208284031215611394575f80fd5b813561139f81611308565b9392505050565b801515811461066f575f80fd5b5f80604083850312156113c4575f80fd5b82356113cf81611308565b915060208301356113df816113a6565b809150509250929050565b5f602082840312156113fa575f80fd5b5035919050565b5f805f60608486031215611413575f80fd5b505081359360208301359350604090920135919050565b5f806040838503121561143b575f80fd5b823561144681611308565b915060208301356113df81611308565b600181811c9082168061146a57607f821691505b60208210810361148857634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561057a5761057a61148e565b5f602082840312156114c5575f80fd5b5051919050565b5f602082840312156114dc575f80fd5b815161139f816113a6565b808202811582820484141761057a5761057a61148e565b5f8261151857634e487b7160e01b5f52601260045260245ffd5b500490565b8181038181111561057a5761057a61148e565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611554575f80fd5b815161139f81611308565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156115af5784516001600160a01b03168352938301939183019160010161158a565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212200629ecba05cbd7fd295752e3db431110bf6fb9439ee32ef59b966d38fd74e05364736f6c63430008190033

Deployed Bytecode Sourcemap

6200:3830:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1962:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2894:201;;;;;;;;;;-1:-1:-1;2894:201:0;;;;;:::i;:::-;;:::i;:::-;;;1081:14:1;;1074:22;1056:41;;1044:2;1029:18;2894:201:0;916:187:1;2283:108:0;;;;;;;;;;-1:-1:-1;2371:12:0;;2283:108;;;1254:25:1;;;1242:2;1227:18;2283:108:0;1108:177:1;3103:261:0;;;;;;;;;;-1:-1:-1;3103:261:0;;;;;:::i;:::-;;:::i;6605:26::-;;;;;;;;;;;;;;;;6231:60;;;;;;;;;;;;6276:15;6231:60;;2182:93;;;;;;;;;;-1:-1:-1;2182:93:0;;2265:2;1893:36:1;;1881:2;1866:18;2182:93:0;1751:184:1;3372:238:0;;;;;;;;;;-1:-1:-1;3372:238:0;;;;;:::i;:::-;;:::i;6573:25::-;;;;;;;;;;;;;;;;8450:126;;;;;;;;;;;;;:::i;:::-;;6298:116;;;;;;;;;;;;6371:42;6298:116;;;;;-1:-1:-1;;;;;2129:55:1;;;2111:74;;2099:2;2084:18;6298:116:0;1940:251:1;9199:133:0;;;;;;;;;;-1:-1:-1;9199:133:0;;;;;:::i;:::-;;:::i;2399:127::-;;;;;;;;;;-1:-1:-1;2399:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;2500:18:0;2473:7;2500:18;;;;;;;;;;;;2399:127;6427:30;;;;;;;;;;-1:-1:-1;6427:30:0;;;;-1:-1:-1;;;;;6427:30:0;;;2070:104;;;;;;;;;;;;;:::i;8777:142::-;;;;;;;;;;-1:-1:-1;8777:142:0;;;;;:::i;:::-;;:::i;3618:436::-;;;;;;;;;;-1:-1:-1;3618:436:0;;;;;:::i;:::-;;:::i;2534:193::-;;;;;;;;;;-1:-1:-1;2534:193:0;;;;;:::i;:::-;;:::i;6536:30::-;;;;;;;;;;;;;;;;8584:185;;;;;;;;;;-1:-1:-1;8584:185:0;;;;;:::i;:::-;;:::i;9073:118::-;;;;;;;;;;-1:-1:-1;9073:118:0;;;;;:::i;:::-;;:::i;8927:138::-;;;;;;;;;;-1:-1:-1;8927:138:0;;;;;:::i;:::-;;:::i;8127:315::-;;;;;;;;;;-1:-1:-1;8127:315:0;;;;;:::i;:::-;;:::i;2735:151::-;;;;;;;;;;-1:-1:-1;2735:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;2851:18:0;;;2824:7;2851:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2735:151;6464:33;;;;;;;;;;;;;;;;1962:100;2016:13;2049:5;2042:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1962:100;:::o;2894:201::-;2977:4;524:10;3033:32;524:10;3049:7;3058:6;3033:8;:32::i;:::-;3083:4;3076:11;;;2894:201;;;;;:::o;3103:261::-;3200:4;524:10;3258:38;3274:4;524:10;3289:6;3258:15;:38::i;:::-;3307:27;3317:4;3323:2;3327:6;3307:9;:27::i;:::-;-1:-1:-1;3352:4:0;;3103:261;-1:-1:-1;;;;3103:261:0:o;3372:238::-;524:10;3460:4;2851:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;2851:27:0;;;;;;;;;;3460:4;;524:10;3516:64;;524:10;;2851:27;;3541:38;;3569:10;;3541:38;:::i;:::-;3516:8;:64::i;8450:126::-;6826:15;;-1:-1:-1;;;;;6826:15:0;6812:10;:29;6804:64;;;;-1:-1:-1;;;6804:64:0;;5051:2:1;6804:64:0;;;5033:21:1;5090:2;5070:18;;;5063:30;-1:-1:-1;;;5109:18:1;;;5102:52;5171:18;;6804:64:0;;;;;;;;;8520:15:::1;::::0;8512:56:::1;::::0;-1:-1:-1;;;;;8520:15:0;;::::1;::::0;8546:21:::1;8512:56:::0;::::1;;;::::0;8520:15:::1;8512:56:::0;8520:15;8512:56;8546:21;8520:15;8512:56;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;8450:126::o:0;9199:133::-;6826:15;;-1:-1:-1;;;;;6826:15:0;6812:10;:29;6804:64;;;;-1:-1:-1;;;6804:64:0;;5051:2:1;6804:64:0;;;5033:21:1;5090:2;5070:18;;;5063:30;-1:-1:-1;;;5109:18:1;;;5102:52;5171:18;;6804:64:0;4849:346:1;6804:64:0;9414:15;:34;;;;-1:-1:-1;;;;;9414:34:0;;;;;;;;-1:-1:-1;9459:36:0;;;:19;:36;;;;;:43;;-1:-1:-1;;9459:43:0;-1:-1:-1;9459:43:0;;;8512:56:::1;8450:126::o:0;2070:104::-;2126:13;2159:7;2152:14;;;;;:::i;8777:142::-;6826:15;;-1:-1:-1;;;;;6826:15:0;6812:10;:29;6804:64;;;;-1:-1:-1;;;6804:64:0;;5051:2:1;6804:64:0;;;5033:21:1;5090:2;5070:18;;;5063:30;-1:-1:-1;;;5109:18:1;;;5102:52;5171:18;;6804:64:0;4849:346:1;6804:64:0;-1:-1:-1;;;;;8872:31:0;;;::::1;;::::0;;;:25:::1;:31;::::0;;;;:39;;-1:-1:-1;;8872:39:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8777:142::o;3618:436::-;524:10;3711:4;2851:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;2851:27:0;;;;;;;;;;3711:4;;524:10;3858:15;3838:16;:35;;3830:85;;;;-1:-1:-1;;;3830:85:0;;5402:2:1;3830:85:0;;;5384:21:1;5441:2;5421:18;;;5414:30;5480:34;5460:18;;;5453:62;5551:7;5531:18;;;5524:35;5576:19;;3830:85:0;5200:401:1;3830:85:0;3951:60;3960:5;3967:7;3995:15;3976:16;:34;3951:8;:60::i;2534:193::-;2613:4;524:10;2669:28;524:10;2686:2;2690:6;2669:9;:28::i;8584:185::-;6826:15;;-1:-1:-1;;;;;6826:15:0;6812:10;:29;6804:64;;;;-1:-1:-1;;;6804:64:0;;5051:2:1;6804:64:0;;;5033:21:1;5090:2;5070:18;;;5063:30;-1:-1:-1;;;5109:18:1;;;5102:52;5171:18;;6804:64:0;4849:346:1;6804:64:0;8698:15:::1;::::0;8715:45:::1;::::0;;;;8754:4:::1;8715:45;::::0;::::1;2111:74:1::0;-1:-1:-1;;;;;8668:29:0;;::::1;::::0;::::1;::::0;8698:15;::::1;::::0;8668:29;;8715:30:::1;::::0;2084:18:1;;8715:45:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8668:93;::::0;;::::1;::::0;;;;;;-1:-1:-1;;;;;5987:55:1;;;8668:93:0::1;::::0;::::1;5969:74:1::0;6059:18;;;6052:34;5942:18;;8668:93:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8584:185:::0;:::o;9073:118::-;6826:15;;-1:-1:-1;;;;;6826:15:0;6812:10;:29;6804:64;;;;-1:-1:-1;;;6804:64:0;;5051:2:1;6804:64:0;;;5033:21:1;5090:2;5070:18;;;5063:30;-1:-1:-1;;;5109:18:1;;;5102:52;5171:18;;6804:64:0;4849:346:1;6804:64:0;9155:18:::1;:28:::0;9073:118::o;8927:138::-;6826:15;;-1:-1:-1;;;;;6826:15:0;6812:10;:29;6804:64;;;;-1:-1:-1;;;6804:64:0;;5051:2:1;6804:64:0;;;5033:21:1;5090:2;5070:18;;;5063:30;-1:-1:-1;;;5109:18:1;;;5102:52;5171:18;;6804:64:0;4849:346:1;6804:64:0;-1:-1:-1;;;;;9018:28:0;;;::::1;;::::0;;;:19:::1;:28;::::0;;;;:39;;-1:-1:-1;;9018:39:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8927:138::o;8127:315::-;6826:15;;-1:-1:-1;;;;;6826:15:0;6812:10;:29;6804:64;;;;-1:-1:-1;;;6804:64:0;;5051:2:1;6804:64:0;;;5033:21:1;5090:2;5070:18;;;5063:30;-1:-1:-1;;;5109:18:1;;;5102:52;5171:18;;6804:64:0;4849:346:1;6804:64:0;8261:11:::1;;8245:12;:27;;:48;;;;;8287:6;;8276:7;:17;;8245:48;:71;;;;;8309:7;;8297:8;:19;;8245:71;8237:104;;;::::0;-1:-1:-1;;;8237:104:0;;6549:2:1;8237:104:0::1;::::0;::::1;6531:21:1::0;6588:2;6568:18;;;6561:30;6627:22;6607:18;;;6600:50;6667:18;;8237:104:0::1;6347:344:1::0;8237:104:0::1;8352:11;:26:::0;;;;8389:6:::1;:16:::0;8416:7:::1;:18:::0;8127:315::o;5420:346::-;-1:-1:-1;;;;;5522:19:0;;5514:68;;;;-1:-1:-1;;;5514:68:0;;6898:2:1;5514:68:0;;;6880:21:1;6937:2;6917:18;;;6910:30;6976:34;6956:18;;;6949:62;7047:6;7027:18;;;7020:34;7071:19;;5514:68:0;6696:400:1;5514:68:0;-1:-1:-1;;;;;5601:21:0;;5593:68;;;;-1:-1:-1;;;5593:68:0;;7303:2:1;5593:68:0;;;7285:21:1;7342:2;7322:18;;;7315:30;7381:34;7361:18;;;7354:62;7452:4;7432:18;;;7425:32;7474:19;;5593:68:0;7101:398:1;5593:68:0;-1:-1:-1;;;;;5674:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5726:32;;1254:25:1;;;5726:32:0;;1227:18:1;5726:32:0;;;;;;;5420:346;;;:::o;5774:419::-;-1:-1:-1;;;;;2851:18:0;;;5875:24;2851:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;-1:-1:-1;;5942:37:0;;5938:248;;6024:6;6004:16;:26;;5996:68;;;;-1:-1:-1;;;5996:68:0;;7706:2:1;5996:68:0;;;7688:21:1;7745:2;7725:18;;;7718:30;7784:31;7764:18;;;7757:59;7833:18;;5996:68:0;7504:353:1;5996:68:0;6108:51;6117:5;6124:7;6152:6;6133:16;:25;6108:8;:51::i;:::-;5864:329;5774:419;;;:::o;7188:931::-;-1:-1:-1;;;;;7286:18:0;;7278:68;;;;-1:-1:-1;;;7278:68:0;;8064:2:1;7278:68:0;;;8046:21:1;8103:2;8083:18;;;8076:30;8142:34;8122:18;;;8115:62;-1:-1:-1;;;8193:18:1;;;8186:35;8238:19;;7278:68:0;7862:401:1;7278:68:0;-1:-1:-1;;;;;7365:16:0;;7357:64;;;;-1:-1:-1;;;7357:64:0;;8470:2:1;7357:64:0;;;8452:21:1;8509:2;8489:18;;;8482:30;8548:34;8528:18;;;8521:62;-1:-1:-1;;;8599:18:1;;;8592:33;8642:19;;7357:64:0;8268:399:1;7357:64:0;7439:8;;;;7438:9;:42;;;;-1:-1:-1;;;;;;7451:29:0;;;;;;:25;:29;;;;;;;;7438:42;:72;;;;-1:-1:-1;;;;;;7485:25:0;;;;;;:19;:25;;;;;;;;7484:26;7438:72;:121;;;;-1:-1:-1;7541:18:0;;7532:4;2473:7;2500:18;;;;;;;;;;;7514:45;7438:121;7434:225;;;7576:8;:15;;-1:-1:-1;;7576:15:0;7587:4;7576:15;;;7606:10;:8;:10::i;:::-;7631:8;:16;;-1:-1:-1;;7631:16:0;;;7434:225;7676:8;;;;7675:9;:39;;;;-1:-1:-1;;;;;;7689:25:0;;;;;;:19;:25;;;;;;;;7688:26;7675:39;:67;;;;-1:-1:-1;;;;;;7719:23:0;;;;;;:19;:23;;;;;;;;7718:24;7675:67;7671:397;;;-1:-1:-1;;;;;7773:29:0;;7759:11;7773:29;;;:25;:29;;;;;;;;:97;;-1:-1:-1;;;;;7816:31:0;;;;;;:25;:31;;;;;;;;:53;;7858:11;;7773:97;;7816:53;7850:6;;7773:97;;;7805:7;;7773:97;7759:111;-1:-1:-1;7885:12:0;7915:3;7900:12;7759:111;7900:6;:12;:::i;:::-;:18;;;;:::i;:::-;7885:33;-1:-1:-1;7937:8:0;;7933:124;;7966:42;7982:4;7996;8003;7966:15;:42::i;:::-;8027:14;8037:4;8027:14;;:::i;:::-;;;7933:124;7744:324;;7671:397;8078:33;8094:4;8100:2;8104:6;8078:15;:33::i;:::-;7188:931;;;:::o;9518:472::-;9561:18;;:22;9557:426;;9624:16;;;9638:1;9624:16;;;;;;;;9600:21;;9624:16;;;;;;;;;;-1:-1:-1;9624:16:0;9600:40;;9673:4;9655;9660:1;9655:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;9655:23:0;;;-1:-1:-1;;;;;9655:23:0;;;;;6371:42;-1:-1:-1;;;;;9703:21:0;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9693:4;9698:1;9693:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;9693:33:0;;;:7;;;;;;;;;:33;9827:18;;9907:15;;9741:230;;;;;6371:42;;9741:67;;:230;;9827:18;;9864:1;;9884:4;;9907:15;;9941;;9741:230;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9585:398;9557:426;9518:472::o;4062:540::-;-1:-1:-1;;;;;4159:18:0;;4151:68;;;;-1:-1:-1;;;4151:68:0;;8064:2:1;4151:68:0;;;8046:21:1;8103:2;8083:18;;;8076:30;8142:34;8122:18;;;8115:62;-1:-1:-1;;;8193:18:1;;;8186:35;8238:19;;4151:68:0;7862:401:1;4151:68:0;-1:-1:-1;;;;;4238:16:0;;4230:64;;;;-1:-1:-1;;;4230:64:0;;8470:2:1;4230:64:0;;;8452:21:1;8509:2;8489:18;;;8482:30;8548:34;8528:18;;;8521:62;-1:-1:-1;;;8599:18:1;;;8592:33;8642:19;;4230:64:0;8268:399:1;4230:64:0;-1:-1:-1;;;;;4329:15:0;;4307:19;4329:15;;;;;;;;;;;4363:21;;;;4355:72;;;;-1:-1:-1;;;4355:72:0;;11124:2:1;4355:72:0;;;11106:21:1;11163:2;11143:18;;;11136:30;11202:34;11182:18;;;11175:62;11273:8;11253:18;;;11246:36;11299:19;;4355:72:0;10922:402:1;4355:72:0;-1:-1:-1;;;;;4463:15:0;;;:9;:15;;;;;;;;;;;4481:20;;;4463:38;;4516:13;;;;;;;;;;:23;;;;;;4568:26;;1254:25:1;;;4516:13:0;;4568:26;;1227:18:1;4568:26:0;;;;;;;4140:462;4062:540;;;:::o;14:418:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;297:6;292:2;284:6;280:15;275:2;264:9;260:18;254:50;353:1;348:2;339:6;328:9;324:22;320:31;313:42;423:2;416;412:7;407:2;399:6;395:15;391:29;380:9;376:45;372:54;364:62;;;14:418;;;;:::o;437:154::-;-1:-1:-1;;;;;516:5:1;512:54;505:5;502:65;492:93;;581:1;578;571:12;596:315;664:6;672;725:2;713:9;704:7;700:23;696:32;693:52;;;741:1;738;731:12;693:52;780:9;767:23;799:31;824:5;799:31;:::i;:::-;849:5;901:2;886:18;;;;873:32;;-1:-1:-1;;;596:315:1:o;1290:456::-;1367:6;1375;1383;1436:2;1424:9;1415:7;1411:23;1407:32;1404:52;;;1452:1;1449;1442:12;1404:52;1491:9;1478:23;1510:31;1535:5;1510:31;:::i;:::-;1560:5;-1:-1:-1;1617:2:1;1602:18;;1589:32;1630:33;1589:32;1630:33;:::i;:::-;1290:456;;1682:7;;-1:-1:-1;;;1736:2:1;1721:18;;;;1708:32;;1290:456::o;2196:247::-;2255:6;2308:2;2296:9;2287:7;2283:23;2279:32;2276:52;;;2324:1;2321;2314:12;2276:52;2363:9;2350:23;2382:31;2407:5;2382:31;:::i;:::-;2432:5;2196:247;-1:-1:-1;;;2196:247:1:o;2679:118::-;2765:5;2758:13;2751:21;2744:5;2741:32;2731:60;;2787:1;2784;2777:12;2802:382;2867:6;2875;2928:2;2916:9;2907:7;2903:23;2899:32;2896:52;;;2944:1;2941;2934:12;2896:52;2983:9;2970:23;3002:31;3027:5;3002:31;:::i;:::-;3052:5;-1:-1:-1;3109:2:1;3094:18;;3081:32;3122:30;3081:32;3122:30;:::i;:::-;3171:7;3161:17;;;2802:382;;;;;:::o;3189:180::-;3248:6;3301:2;3289:9;3280:7;3276:23;3272:32;3269:52;;;3317:1;3314;3307:12;3269:52;-1:-1:-1;3340:23:1;;3189:180;-1:-1:-1;3189:180:1:o;3374:316::-;3451:6;3459;3467;3520:2;3508:9;3499:7;3495:23;3491:32;3488:52;;;3536:1;3533;3526:12;3488:52;-1:-1:-1;;3559:23:1;;;3629:2;3614:18;;3601:32;;-1:-1:-1;3680:2:1;3665:18;;;3652:32;;3374:316;-1:-1:-1;3374:316:1:o;3695:388::-;3763:6;3771;3824:2;3812:9;3803:7;3799:23;3795:32;3792:52;;;3840:1;3837;3830:12;3792:52;3879:9;3866:23;3898:31;3923:5;3898:31;:::i;:::-;3948:5;-1:-1:-1;4005:2:1;3990:18;;3977:32;4018:33;3977:32;4018:33;:::i;4088:437::-;4167:1;4163:12;;;;4210;;;4231:61;;4285:4;4277:6;4273:17;4263:27;;4231:61;4338:2;4330:6;4327:14;4307:18;4304:38;4301:218;;-1:-1:-1;;;4372:1:1;4365:88;4476:4;4473:1;4466:15;4504:4;4501:1;4494:15;4301:218;;4088:437;;;:::o;4530:184::-;-1:-1:-1;;;4579:1:1;4572:88;4679:4;4676:1;4669:15;4703:4;4700:1;4693:15;4719:125;4784:9;;;4805:10;;;4802:36;;;4818:18;;:::i;5606:184::-;5676:6;5729:2;5717:9;5708:7;5704:23;5700:32;5697:52;;;5745:1;5742;5735:12;5697:52;-1:-1:-1;5768:16:1;;5606:184;-1:-1:-1;5606:184:1:o;6097:245::-;6164:6;6217:2;6205:9;6196:7;6192:23;6188:32;6185:52;;;6233:1;6230;6223:12;6185:52;6265:9;6259:16;6284:28;6306:5;6284:28;:::i;8672:168::-;8745:9;;;8776;;8793:15;;;8787:22;;8773:37;8763:71;;8814:18;;:::i;8845:274::-;8885:1;8911;8901:189;;-1:-1:-1;;;8943:1:1;8936:88;9047:4;9044:1;9037:15;9075:4;9072:1;9065:15;8901:189;-1:-1:-1;9104:9:1;;8845:274::o;9124:128::-;9191:9;;;9212:11;;;9209:37;;;9226:18;;:::i;9446:184::-;-1:-1:-1;;;9495:1:1;9488:88;9595:4;9592:1;9585:15;9619:4;9616:1;9609:15;9635:251;9705:6;9758:2;9746:9;9737:7;9733:23;9729:32;9726:52;;;9774:1;9771;9764:12;9726:52;9806:9;9800:16;9825:31;9850:5;9825:31;:::i;9891:1026::-;10153:4;10201:3;10190:9;10186:19;10232:6;10221:9;10214:25;10258:2;10296:6;10291:2;10280:9;10276:18;10269:34;10339:3;10334:2;10323:9;10319:18;10312:31;10363:6;10398;10392:13;10429:6;10421;10414:22;10467:3;10456:9;10452:19;10445:26;;10506:2;10498:6;10494:15;10480:29;;10527:1;10537:218;10551:6;10548:1;10545:13;10537:218;;;10616:13;;-1:-1:-1;;;;;10612:62:1;10600:75;;10730:15;;;;10695:12;;;;10573:1;10566:9;10537:218;;;-1:-1:-1;;;;;;;10811:55:1;;;;10806:2;10791:18;;10784:83;-1:-1:-1;;;10898:3:1;10883:19;10876:35;10772:3;9891:1026;-1:-1:-1;;;9891:1026:1:o

Swarm Source

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