ETH Price: $2,620.16 (+1.24%)

Token

Melody (MEL)
 

Overview

Max Total Supply

10,000,000 MEL

Holders

11

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
150,001.5 MEL

Value
$0.00
0xbb793c700425ebae556a38fd0491cfdd27413a72
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:
Melody

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: Unlicensed
pragma solidity 0.8.18;

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

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

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

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

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

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

    function transferOwnership(address newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }

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

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

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

    function factory() external pure returns (address);
    function WETH() external pure returns (address);
}

contract Melody is Context, IERC20, Ownable {
  
    mapping(address => uint256) private _balance;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _walletExcluded;
    uint8 private constant _decimals = 18;
    uint256 private constant _totalSupply = 10_000_000 * 10**_decimals;
    //Swap Threshold (0.04%)
    uint256 private constant minSwap = 4 * 10 **_decimals;
    //Define 1%
    uint256 private constant onePercent = 100_000 * 10**_decimals;
    //Max Tx at Launch
    uint256 public maxTxAmount = (onePercent * 2) + (2 * 10 ** _decimals);

    uint256 private launchBlock;
    uint256 private buyValue = 0;

    uint256 private _tax;
    uint256 public buyTax = 25;
    uint256 public sellTax = 40;
    
    string private constant _name = "Melody";
    string private constant _symbol = "MEL";

    IUniswapV2Router02 private uniswapV2Router;
    address public uniswapV2Pair;
    address payable public treasuryAddress;

    bool private launch = false;

    constructor() {
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        treasuryAddress = payable(0xC18A083f967d0479ec4812D21B2E41a2777f0648);
        _balance[msg.sender] = _totalSupply;
        _walletExcluded[0xC18A083f967d0479ec4812D21B2E41a2777f0648] = true;
        _walletExcluded[msg.sender] = true;
        _walletExcluded[address(this)] = true;
        _allowances[address(this)][address(uniswapV2Router)] = 2**256 - 1;
        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

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

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

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

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

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

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

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

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

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

    function enableTrading() external onlyOwner {
        launch = true;
        launchBlock = block.number;
    }

    function addExcludedWallet(address wallet) external onlyOwner {
        _walletExcluded[wallet] = true;
    }

    function removeLimits() external onlyOwner {
        maxTxAmount = _totalSupply;
    }

    function changeTax(uint256 newBuyTax, uint256 newSellTax) external onlyOwner {
        buyTax = newBuyTax;
        sellTax = newSellTax;
    }

    function changeBuyValue(uint256 newBuyValue) external onlyOwner {
        buyValue = newBuyValue;
    }

    function _tokenTransfer(address from, address to, uint256 amount) private {
        uint256 taxTokens = (amount * _tax) / 100;
        uint256 transferAmount = amount - taxTokens;

        _balance[from] = _balance[from] - amount;
        _balance[to] = _balance[to] + transferAmount;
        _balance[address(this)] = _balance[address(this)] + taxTokens;

        emit Transfer(from, to, transferAmount);
    }

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

        if (_walletExcluded[from] || _walletExcluded[to]) {
            _tax = 0;
        } else {
            require(launch, "Trading not open");
            require(amount <= maxTxAmount, "MaxTx Enabled at launch");
            if (block.number < launchBlock + buyValue + 2) {_tax=99;} else {
                if (from == uniswapV2Pair) {
                    _tax = buyTax;
                } else if (to == uniswapV2Pair) {
                    uint256 tokensToSwap = balanceOf(address(this));
                    if (tokensToSwap > minSwap) { //Sets Max Internal Swap
                        if (tokensToSwap > onePercent * 4) { 
                            tokensToSwap = onePercent * 4;
                        }
                        swapTokensForEth(tokensToSwap);
                    }
                    _tax = sellTax;
                } else {
                    _tax = 0;
                }
            }
        }
        _tokenTransfer(from, to, amount);
    }

    function manualSendBalance() external {
        require(_msgSender() == treasuryAddress);
        uint256 contractETHBalance = address(this).balance;
        treasuryAddress.transfer(contractETHBalance);
        uint256 contractBalance = balanceOf(address(this));
        _tokenTransfer(address(this), treasuryAddress, contractBalance);
    } 

    function manualSwapTokens() external {
        require(_msgSender() == treasuryAddress);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }

    function swapTokensForEth(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            treasuryAddress,
            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":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"addExcludedWallet","outputs":[],"stateMutability":"nonpayable","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":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyValue","type":"uint256"}],"name":"changeBuyValue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"changeTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSendBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwapTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126012600a620004a5565b6200001f906002620004bd565b6200002d6012600a620004a5565b6200003c90620186a0620004bd565b62000049906002620004bd565b620000559190620004d7565b600555600060075560196009556028600a55600d805460ff60a01b191690553480156200008157600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000128573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200014e9190620004ed565b6001600160a01b031663c9c6539630600b60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001b1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001d79190620004ed565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000225573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200024b9190620004ed565b600c80546001600160a01b03929092166001600160a01b0319928316179055600d805490911673c18a083f967d0479ec4812d21b2e41a2777f0648179055620002976012600a620004a5565b620002a69062989680620004bd565b33600090815260026020908152604080832093909355600481527fd4161b7ca5a3ecf2f2cab7ab72a185f5a7cf12a2fd97a8ebae45d58304ea97eb8054600160ff19918216811790925584842080548216831790553084528484208054909116909117905560038152828220600b546001600160a01b031683529052206000199055620003303390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200036a6012600a620004a5565b620003799062989680620004bd565b60405190815260200160405180910390a362000518565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003e7578160001904821115620003cb57620003cb62000390565b80851615620003d957918102915b93841c9390800290620003ab565b509250929050565b60008262000400575060016200049f565b816200040f575060006200049f565b8160018114620004285760028114620004335762000453565b60019150506200049f565b60ff84111562000447576200044762000390565b50506001821b6200049f565b5060208310610133831016604e8410600b841016171562000478575081810a6200049f565b620004848383620003a6565b80600019048211156200049b576200049b62000390565b0290505b92915050565b6000620004b660ff841683620003ef565b9392505050565b80820281158282048414176200049f576200049f62000390565b808201808211156200049f576200049f62000390565b6000602082840312156200050057600080fd5b81516001600160a01b0381168114620004b657600080fd5b61124680620005286000396000f3fe60806040526004361061014f5760003560e01c806389112cdb116100b6578063a9059cbb1161006f578063a9059cbb146103ba578063c5f956af146103da578063cc1776d3146103fa578063dba9d42014610410578063dd62ed3e14610430578063f2fde38b1461047657600080fd5b806389112cdb146103055780638a8c523c146103255780638c0b5e221461033a5780638da5cb5b146103505780639036ed4d1461036e57806395d89b411461038e57600080fd5b806349bd5a5e1161010857806349bd5a5e146102425780634f7041a51461027a57806370a0823114610290578063715018a6146102c6578063751039fc146102db5780637c4c75eb146102f057600080fd5b806306fdde031461015b578063095ea7b31461019c57806318160ddd146101cc57806323b872dd146101ef57806328176f891461020f578063313ce5671461022657600080fd5b3661015657005b600080fd5b34801561016757600080fd5b506040805180820190915260068152654d656c6f647960d01b60208201525b6040516101939190610e67565b60405180910390f35b3480156101a857600080fd5b506101bc6101b7366004610eca565b610496565b6040519015158152602001610193565b3480156101d857600080fd5b506101e1610558565b604051908152602001610193565b3480156101fb57600080fd5b506101bc61020a366004610ef6565b610578565b34801561021b57600080fd5b5061022461063a565b005b34801561023257600080fd5b5060405160128152602001610193565b34801561024e57600080fd5b50600c54610262906001600160a01b031681565b6040516001600160a01b039091168152602001610193565b34801561028657600080fd5b506101e160095481565b34801561029c57600080fd5b506101e16102ab366004610f37565b6001600160a01b031660009081526002602052604090205490565b3480156102d257600080fd5b506102246106c1565b3480156102e757600080fd5b50610224610735565b3480156102fc57600080fd5b5061022461077d565b34801561031157600080fd5b50610224610320366004610f5b565b6107b9565b34801561033157600080fd5b506102246107e8565b34801561034657600080fd5b506101e160055481565b34801561035c57600080fd5b506000546001600160a01b0316610262565b34801561037a57600080fd5b50610224610389366004610f74565b61082b565b34801561039a57600080fd5b5060408051808201909152600381526213515360ea1b6020820152610186565b3480156103c657600080fd5b506101bc6103d5366004610eca565b610860565b3480156103e657600080fd5b50600d54610262906001600160a01b031681565b34801561040657600080fd5b506101e1600a5481565b34801561041c57600080fd5b5061022461042b366004610f37565b610876565b34801561043c57600080fd5b506101e161044b366004610f96565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561048257600080fd5b50610224610491366004610f37565b6108c4565b60006001600160a01b0383166104f35760405162461bcd60e51b815260206004820152601c60248201527f63616e6e6f7420617070726f766520746865203020616464726573730000000060448201526064015b60405180910390fd5b3360008181526003602090815260408083206001600160a01b03881680855290835292819020869055518581529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060015b92915050565b60006105666012600a6110c9565b61057390629896806110d8565b905090565b6001600160a01b03831660009081526003602090815260408083203384529091528120546105a79083906110ef565b6001600160a01b03851660009081526003602090815260408083203384529091529020556105d68484846108f7565b6001600160a01b038416600081815260036020908152604080832033808552908352928190205490519081529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060019392505050565b600d546001600160a01b0316336001600160a01b03161461065a57600080fd5b600d5460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610694573d6000803e3d6000fd5b5030600081815260026020526040902054600d5490916106bd916001600160a01b031683610b55565b5050565b6000546001600160a01b031633146106eb5760405162461bcd60e51b81526004016104ea90611102565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461075f5760405162461bcd60e51b81526004016104ea90611102565b61076b6012600a6110c9565b61077890629896806110d8565b600555565b600d546001600160a01b0316336001600160a01b03161461079d57600080fd5b306000908152600260205260409020546107b681610c60565b50565b6000546001600160a01b031633146107e35760405162461bcd60e51b81526004016104ea90611102565b600755565b6000546001600160a01b031633146108125760405162461bcd60e51b81526004016104ea90611102565b600d805460ff60a01b1916600160a01b17905543600655565b6000546001600160a01b031633146108555760405162461bcd60e51b81526004016104ea90611102565b600991909155600a55565b600061086d3384846108f7565b50600192915050565b6000546001600160a01b031633146108a05760405162461bcd60e51b81526004016104ea90611102565b6001600160a01b03166000908152600460205260409020805460ff19166001179055565b6000546001600160a01b031633146108ee5760405162461bcd60e51b81526004016104ea90611102565b6107b681610da7565b6001600160a01b03831661095b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104ea565b6001600160a01b03831660009081526004602052604090205460ff168061099a57506001600160a01b03821660009081526004602052604090205460ff165b156109a9576000600855610b45565b600d54600160a01b900460ff166109f55760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b60448201526064016104ea565b600554811115610a475760405162461bcd60e51b815260206004820152601760248201527f4d6178547820456e61626c6564206174206c61756e636800000000000000000060448201526064016104ea565b600754600654610a579190611137565b610a62906002611137565b431015610a73576063600855610b45565b600c546001600160a01b0390811690841603610a9457600954600855610b45565b600c546001600160a01b0390811690831603610b3f5730600090815260026020526040902054610ac66012600a6110c9565b610ad19060046110d8565b811115610b3357610ae46012600a6110c9565b610af190620186a06110d8565b610afc9060046110d8565b811115610b2a57610b0f6012600a6110c9565b610b1c90620186a06110d8565b610b279060046110d8565b90505b610b3381610c60565b50600a54600855610b45565b60006008555b610b50838383610b55565b505050565b6000606460085483610b6791906110d8565b610b71919061114a565b90506000610b7f82846110ef565b6001600160a01b038616600090815260026020526040902054909150610ba69084906110ef565b6001600160a01b038087166000908152600260205260408082209390935590861681522054610bd6908290611137565b6001600160a01b038516600090815260026020526040808220929092553081522054610c03908390611137565b3060009081526002602090815260409182902092909255518281526001600160a01b0386811692908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610c9557610c9561116c565b6001600160a01b03928316602091820292909201810191909152600b54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610cee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d129190611182565b81600181518110610d2557610d2561116c565b6001600160a01b039283166020918202929092010152600b54600d5460405163791ac94760e01b81529183169263791ac94792610d71928792600092889290911690429060040161119f565b600060405180830381600087803b158015610d8b57600080fd5b505af1158015610d9f573d6000803e3d6000fd5b505050505050565b6001600160a01b038116610e0c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104ea565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600060208083528351808285015260005b81811015610e9457858101830151858201604001528201610e78565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107b657600080fd5b60008060408385031215610edd57600080fd5b8235610ee881610eb5565b946020939093013593505050565b600080600060608486031215610f0b57600080fd5b8335610f1681610eb5565b92506020840135610f2681610eb5565b929592945050506040919091013590565b600060208284031215610f4957600080fd5b8135610f5481610eb5565b9392505050565b600060208284031215610f6d57600080fd5b5035919050565b60008060408385031215610f8757600080fd5b50508035926020909101359150565b60008060408385031215610fa957600080fd5b8235610fb481610eb5565b91506020830135610fc481610eb5565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561102057816000190482111561100657611006610fcf565b8085161561101357918102915b93841c9390800290610fea565b509250929050565b60008261103757506001610552565b8161104457506000610552565b816001811461105a576002811461106457611080565b6001915050610552565b60ff84111561107557611075610fcf565b50506001821b610552565b5060208310610133831016604e8410600b84101617156110a3575081810a610552565b6110ad8383610fe5565b80600019048211156110c1576110c1610fcf565b029392505050565b6000610f5460ff841683611028565b808202811582820484141761055257610552610fcf565b8181038181111561055257610552610fcf565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8082018082111561055257610552610fcf565b60008261116757634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561119457600080fd5b8151610f5481610eb5565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156111ef5784516001600160a01b0316835293830193918301916001016111ca565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220b3a20c29805b81148974a00fd6d9e588ad9a524c7a28e4525f53e4ad257863d364736f6c63430008120033

Deployed Bytecode

0x60806040526004361061014f5760003560e01c806389112cdb116100b6578063a9059cbb1161006f578063a9059cbb146103ba578063c5f956af146103da578063cc1776d3146103fa578063dba9d42014610410578063dd62ed3e14610430578063f2fde38b1461047657600080fd5b806389112cdb146103055780638a8c523c146103255780638c0b5e221461033a5780638da5cb5b146103505780639036ed4d1461036e57806395d89b411461038e57600080fd5b806349bd5a5e1161010857806349bd5a5e146102425780634f7041a51461027a57806370a0823114610290578063715018a6146102c6578063751039fc146102db5780637c4c75eb146102f057600080fd5b806306fdde031461015b578063095ea7b31461019c57806318160ddd146101cc57806323b872dd146101ef57806328176f891461020f578063313ce5671461022657600080fd5b3661015657005b600080fd5b34801561016757600080fd5b506040805180820190915260068152654d656c6f647960d01b60208201525b6040516101939190610e67565b60405180910390f35b3480156101a857600080fd5b506101bc6101b7366004610eca565b610496565b6040519015158152602001610193565b3480156101d857600080fd5b506101e1610558565b604051908152602001610193565b3480156101fb57600080fd5b506101bc61020a366004610ef6565b610578565b34801561021b57600080fd5b5061022461063a565b005b34801561023257600080fd5b5060405160128152602001610193565b34801561024e57600080fd5b50600c54610262906001600160a01b031681565b6040516001600160a01b039091168152602001610193565b34801561028657600080fd5b506101e160095481565b34801561029c57600080fd5b506101e16102ab366004610f37565b6001600160a01b031660009081526002602052604090205490565b3480156102d257600080fd5b506102246106c1565b3480156102e757600080fd5b50610224610735565b3480156102fc57600080fd5b5061022461077d565b34801561031157600080fd5b50610224610320366004610f5b565b6107b9565b34801561033157600080fd5b506102246107e8565b34801561034657600080fd5b506101e160055481565b34801561035c57600080fd5b506000546001600160a01b0316610262565b34801561037a57600080fd5b50610224610389366004610f74565b61082b565b34801561039a57600080fd5b5060408051808201909152600381526213515360ea1b6020820152610186565b3480156103c657600080fd5b506101bc6103d5366004610eca565b610860565b3480156103e657600080fd5b50600d54610262906001600160a01b031681565b34801561040657600080fd5b506101e1600a5481565b34801561041c57600080fd5b5061022461042b366004610f37565b610876565b34801561043c57600080fd5b506101e161044b366004610f96565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561048257600080fd5b50610224610491366004610f37565b6108c4565b60006001600160a01b0383166104f35760405162461bcd60e51b815260206004820152601c60248201527f63616e6e6f7420617070726f766520746865203020616464726573730000000060448201526064015b60405180910390fd5b3360008181526003602090815260408083206001600160a01b03881680855290835292819020869055518581529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060015b92915050565b60006105666012600a6110c9565b61057390629896806110d8565b905090565b6001600160a01b03831660009081526003602090815260408083203384529091528120546105a79083906110ef565b6001600160a01b03851660009081526003602090815260408083203384529091529020556105d68484846108f7565b6001600160a01b038416600081815260036020908152604080832033808552908352928190205490519081529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060019392505050565b600d546001600160a01b0316336001600160a01b03161461065a57600080fd5b600d5460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610694573d6000803e3d6000fd5b5030600081815260026020526040902054600d5490916106bd916001600160a01b031683610b55565b5050565b6000546001600160a01b031633146106eb5760405162461bcd60e51b81526004016104ea90611102565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461075f5760405162461bcd60e51b81526004016104ea90611102565b61076b6012600a6110c9565b61077890629896806110d8565b600555565b600d546001600160a01b0316336001600160a01b03161461079d57600080fd5b306000908152600260205260409020546107b681610c60565b50565b6000546001600160a01b031633146107e35760405162461bcd60e51b81526004016104ea90611102565b600755565b6000546001600160a01b031633146108125760405162461bcd60e51b81526004016104ea90611102565b600d805460ff60a01b1916600160a01b17905543600655565b6000546001600160a01b031633146108555760405162461bcd60e51b81526004016104ea90611102565b600991909155600a55565b600061086d3384846108f7565b50600192915050565b6000546001600160a01b031633146108a05760405162461bcd60e51b81526004016104ea90611102565b6001600160a01b03166000908152600460205260409020805460ff19166001179055565b6000546001600160a01b031633146108ee5760405162461bcd60e51b81526004016104ea90611102565b6107b681610da7565b6001600160a01b03831661095b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104ea565b6001600160a01b03831660009081526004602052604090205460ff168061099a57506001600160a01b03821660009081526004602052604090205460ff165b156109a9576000600855610b45565b600d54600160a01b900460ff166109f55760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b60448201526064016104ea565b600554811115610a475760405162461bcd60e51b815260206004820152601760248201527f4d6178547820456e61626c6564206174206c61756e636800000000000000000060448201526064016104ea565b600754600654610a579190611137565b610a62906002611137565b431015610a73576063600855610b45565b600c546001600160a01b0390811690841603610a9457600954600855610b45565b600c546001600160a01b0390811690831603610b3f5730600090815260026020526040902054610ac66012600a6110c9565b610ad19060046110d8565b811115610b3357610ae46012600a6110c9565b610af190620186a06110d8565b610afc9060046110d8565b811115610b2a57610b0f6012600a6110c9565b610b1c90620186a06110d8565b610b279060046110d8565b90505b610b3381610c60565b50600a54600855610b45565b60006008555b610b50838383610b55565b505050565b6000606460085483610b6791906110d8565b610b71919061114a565b90506000610b7f82846110ef565b6001600160a01b038616600090815260026020526040902054909150610ba69084906110ef565b6001600160a01b038087166000908152600260205260408082209390935590861681522054610bd6908290611137565b6001600160a01b038516600090815260026020526040808220929092553081522054610c03908390611137565b3060009081526002602090815260409182902092909255518281526001600160a01b0386811692908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610c9557610c9561116c565b6001600160a01b03928316602091820292909201810191909152600b54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610cee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d129190611182565b81600181518110610d2557610d2561116c565b6001600160a01b039283166020918202929092010152600b54600d5460405163791ac94760e01b81529183169263791ac94792610d71928792600092889290911690429060040161119f565b600060405180830381600087803b158015610d8b57600080fd5b505af1158015610d9f573d6000803e3d6000fd5b505050505050565b6001600160a01b038116610e0c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104ea565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600060208083528351808285015260005b81811015610e9457858101830151858201604001528201610e78565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107b657600080fd5b60008060408385031215610edd57600080fd5b8235610ee881610eb5565b946020939093013593505050565b600080600060608486031215610f0b57600080fd5b8335610f1681610eb5565b92506020840135610f2681610eb5565b929592945050506040919091013590565b600060208284031215610f4957600080fd5b8135610f5481610eb5565b9392505050565b600060208284031215610f6d57600080fd5b5035919050565b60008060408385031215610f8757600080fd5b50508035926020909101359150565b60008060408385031215610fa957600080fd5b8235610fb481610eb5565b91506020830135610fc481610eb5565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561102057816000190482111561100657611006610fcf565b8085161561101357918102915b93841c9390800290610fea565b509250929050565b60008261103757506001610552565b8161104457506000610552565b816001811461105a576002811461106457611080565b6001915050610552565b60ff84111561107557611075610fcf565b50506001821b610552565b5060208310610133831016604e8410600b84101617156110a3575081810a610552565b6110ad8383610fe5565b80600019048211156110c1576110c1610fcf565b029392505050565b6000610f5460ff841683611028565b808202811582820484141761055257610552610fcf565b8181038181111561055257610552610fcf565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8082018082111561055257610552610fcf565b60008261116757634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561119457600080fd5b8151610f5481610eb5565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156111ef5784516001600160a01b0316835293830193918301916001016111ca565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220b3a20c29805b81148974a00fd6d9e588ad9a524c7a28e4525f53e4ad257863d364736f6c63430008120033

Deployed Bytecode Sourcemap

2501:6420:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4241:83;;;;;;;;;;-1:-1:-1;4311:5:0;;;;;;;;;;;;-1:-1:-1;;;4311:5:0;;;;4241:83;;;;;;;:::i;:::-;;;;;;;;5075:288;;;;;;;;;;-1:-1:-1;5075:288:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;5075:288:0;1023:187:1;4518:100:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;4518:100:0;1215:177:1;5371:343:0;;;;;;;;;;-1:-1:-1;5371:343:0;;;;;:::i;:::-;;:::i;7911:348::-;;;;;;;;;;;;;:::i;:::-;;4427:83;;;;;;;;;;-1:-1:-1;4427:83:0;;2771:2;2000:36:1;;1988:2;1973:18;4427:83:0;1858:184:1;3445:28:0;;;;;;;;;;-1:-1:-1;3445:28:0;;;;-1:-1:-1;;;;;3445:28:0;;;;;;-1:-1:-1;;;;;2211:32:1;;;2193:51;;2181:2;2166:18;3445:28:0;2047:203:1;3228:26:0;;;;;;;;;;;;;;;;4626:118;;;;;;;;;;-1:-1:-1;4626:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;4719:17:0;4692:7;4719:17;;;:8;:17;;;;;;;4626:118;1830:148;;;;;;;;;;;;;:::i;5962:88::-;;;;;;;;;;;;;:::i;8268:201::-;;;;;;;;;;;;;:::i;6211:105::-;;;;;;;;;;-1:-1:-1;6211:105:0;;;;;:::i;:::-;;:::i;5722:113::-;;;;;;;;;;;;;:::i;3052:69::-;;;;;;;;;;;;;;;;1262:79;;;;;;;;;;-1:-1:-1;1300:7:0;1327:6;-1:-1:-1;;;;;1327:6:0;1262:79;;6058:145;;;;;;;;;;-1:-1:-1;6058:145:0;;;;;:::i;:::-;;:::i;4332:87::-;;;;;;;;;;-1:-1:-1;4404:7:0;;;;;;;;;;;;-1:-1:-1;;;4404:7:0;;;;4332:87;;4752:165;;;;;;;;;;-1:-1:-1;4752:165:0;;;;;:::i;:::-;;:::i;3480:38::-;;;;;;;;;;-1:-1:-1;3480:38:0;;;;-1:-1:-1;;;;;3480:38:0;;;3261:27;;;;;;;;;;;;;;;;5843:111;;;;;;;;;;-1:-1:-1;5843:111:0;;;;;:::i;:::-;;:::i;4925:142::-;;;;;;;;;;-1:-1:-1;4925:142:0;;;;;:::i;:::-;-1:-1:-1;;;;;5032:18:0;;;5006:7;5032:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4925:142;1476:109;;;;;;;;;;-1:-1:-1;1476:109:0;;;;;:::i;:::-;;:::i;5075:288::-;5150:4;-1:-1:-1;;;;;5174:21:0;;5166:62;;;;-1:-1:-1;;;5166:62:0;;3764:2:1;5166:62:0;;;3746:21:1;3803:2;3783:18;;;3776:30;3842;3822:18;;;3815:58;3890:18;;5166:62:0;;;;;;;;;5251:10;5239:23;;;;:11;:23;;;;;;;;-1:-1:-1;;;;;5239:32:0;;;;;;;;;;;;:41;;;5296:37;1361:25:1;;;5239:32:0;;5251:10;5296:37;;1334:18:1;5296:37:0;;;;;;;-1:-1:-1;5351:4:0;5075:288;;;;;:::o;4518:100::-;4571:7;2833:13;2771:2;2833;:13;:::i;:::-;2820:26;;:10;:26;:::i;:::-;4591:19;;4518:100;:::o;5371:343::-;-1:-1:-1;;;;;5520:19:0;;5469:4;5520:19;;;:11;:19;;;;;;;;5540:10;5520:31;;;;;;;;:40;;5554:6;;5520:40;:::i;:::-;-1:-1:-1;;;;;5486:19:0;;;;;;:11;:19;;;;;;;;5506:10;5486:31;;;;;;;:74;5571:36;5498:6;5589:9;5600:6;5571:9;:36::i;:::-;-1:-1:-1;;;;;5623:61:0;;5652:19;;;;:11;:19;;;;;;;;5640:10;5652:31;;;;;;;;;;;5623:61;;1361:25:1;;;5640:10:0;;5623:61;;;1334:18:1;5623:61:0;;;;;;;-1:-1:-1;5702:4:0;5371:343;;;;;:::o;7911:348::-;7984:15;;-1:-1:-1;;;;;7984:15:0;180:10;-1:-1:-1;;;;;7968:31:0;;7960:40;;;;;;8072:15;;:44;;8040:21;;-1:-1:-1;;;;;8072:15:0;;:44;;;;;8040:21;;8011:26;8072:44;8011:26;8072:44;8040:21;8072:15;:44;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8171:4:0;8127:23;4719:17;;;:8;:17;;;;;;8218:15;;4719:17;;8188:63;;-1:-1:-1;;;;;8218:15:0;4719:17;8188:14;:63::i;:::-;7949:310;;7911:348::o;1830:148::-;1389:6;;-1:-1:-1;;;;;1389:6:0;180:10;1389:22;1381:67;;;;-1:-1:-1;;;1381:67:0;;;;;;;:::i;:::-;1937:1:::1;1921:6:::0;;1900:40:::1;::::0;-1:-1:-1;;;;;1921:6:0;;::::1;::::0;1900:40:::1;::::0;1937:1;;1900:40:::1;1968:1;1951:19:::0;;-1:-1:-1;;;;;;1951:19:0::1;::::0;;1830:148::o;5962:88::-;1389:6;;-1:-1:-1;;;;;1389:6:0;180:10;1389:22;1381:67;;;;-1:-1:-1;;;1381:67:0;;;;;;;:::i;:::-;2833:13:::1;2771:2;2833;:13;:::i;:::-;2820:26;::::0;:10:::1;:26;:::i;:::-;6016:11;:26:::0;5962:88::o;8268:201::-;8340:15;;-1:-1:-1;;;;;8340:15:0;180:10;-1:-1:-1;;;;;8324:31:0;;8316:40;;;;;;8411:4;8367:23;4719:17;;;:8;:17;;;;;;8428:33;4719:17;8428:16;:33::i;:::-;8305:164;8268:201::o;6211:105::-;1389:6;;-1:-1:-1;;;;;1389:6:0;180:10;1389:22;1381:67;;;;-1:-1:-1;;;1381:67:0;;;;;;;:::i;:::-;6286:8:::1;:22:::0;6211:105::o;5722:113::-;1389:6;;-1:-1:-1;;;;;1389:6:0;180:10;1389:22;1381:67;;;;-1:-1:-1;;;1381:67:0;;;;;;;:::i;:::-;5777:6:::1;:13:::0;;-1:-1:-1;;;;5777:13:0::1;-1:-1:-1::0;;;5777:13:0::1;::::0;;5815:12:::1;5801:11;:26:::0;5722:113::o;6058:145::-;1389:6;;-1:-1:-1;;;;;1389:6:0;180:10;1389:22;1381:67;;;;-1:-1:-1;;;1381:67:0;;;;;;;:::i;:::-;6146:6:::1;:18:::0;;;;6175:7:::1;:20:::0;6058:145::o;4752:165::-;4829:4;4845:42;180:10;4869:9;4880:6;4845:9;:42::i;:::-;-1:-1:-1;4905:4:0;4752:165;;;;:::o;5843:111::-;1389:6;;-1:-1:-1;;;;;1389:6:0;180:10;1389:22;1381:67;;;;-1:-1:-1;;;1381:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5916:23:0::1;;::::0;;;:15:::1;:23;::::0;;;;:30;;-1:-1:-1;;5916:30:0::1;5942:4;5916:30;::::0;;5843:111::o;1476:109::-;1389:6;;-1:-1:-1;;;;;1389:6:0;180:10;1389:22;1381:67;;;;-1:-1:-1;;;1381:67:0;;;;;;;:::i;:::-;1549:28:::1;1568:8;1549:18;:28::i;6752:1151::-:0;-1:-1:-1;;;;;6840:18:0;;6832:68;;;;-1:-1:-1;;;6832:68:0;;6303:2:1;6832:68:0;;;6285:21:1;6342:2;6322:18;;;6315:30;6381:34;6361:18;;;6354:62;-1:-1:-1;;;6432:18:1;;;6425:35;6477:19;;6832:68:0;6101:401:1;6832:68:0;-1:-1:-1;;;;;6917:21:0;;;;;;:15;:21;;;;;;;;;:44;;-1:-1:-1;;;;;;6942:19:0;;;;;;:15;:19;;;;;;;;6917:44;6913:940;;;6985:1;6978:4;:8;6913:940;;;7027:6;;-1:-1:-1;;;7027:6:0;;;;7019:35;;;;-1:-1:-1;;;7019:35:0;;6709:2:1;7019:35:0;;;6691:21:1;6748:2;6728:18;;;6721:30;-1:-1:-1;;;6767:18:1;;;6760:46;6823:18;;7019:35:0;6507:340:1;7019:35:0;7087:11;;7077:6;:21;;7069:57;;;;-1:-1:-1;;;7069:57:0;;7054:2:1;7069:57:0;;;7036:21:1;7093:2;7073:18;;;7066:30;7132:25;7112:18;;;7105:53;7175:18;;7069:57:0;6852:347:1;7069:57:0;7174:8;;7160:11;;:22;;;;:::i;:::-;:26;;7185:1;7160:26;:::i;:::-;7145:12;:41;7141:701;;;7194:2;7189:4;:7;7141:701;;;7235:13;;-1:-1:-1;;;;;7235:13:0;;;7227:21;;;;7223:604;;7280:6;;7273:4;:13;7223:604;;;7322:13;;-1:-1:-1;;;;;7322:13:0;;;7316:19;;;;7312:515;;7401:4;7360:20;4719:17;;;:8;:17;;;;;;2922:14;2771:2;2922;:14;:::i;:::-;2918:18;;:1;:18;:::i;:::-;7434:12;:22;7430:284;;;3008:13;2771:2;3008;:13;:::i;:::-;2998:23;;:7;:23;:::i;:::-;7529:14;;7542:1;7529:14;:::i;:::-;7514:12;:29;7510:124;;;3008:13;2771:2;3008;:13;:::i;:::-;2998:23;;:7;:23;:::i;:::-;7592:14;;7605:1;7592:14;:::i;:::-;7577:29;;7510:124;7660:30;7677:12;7660:16;:30::i;:::-;-1:-1:-1;7743:7:0;;7736:4;:14;7312:515;;;7806:1;7799:4;:8;7312:515;7863:32;7878:4;7884:2;7888:6;7863:14;:32::i;:::-;6752:1151;;;:::o;6324:420::-;6409:17;6447:3;6439:4;;6430:6;:13;;;;:::i;:::-;6429:21;;;;:::i;:::-;6409:41;-1:-1:-1;6461:22:0;6486:18;6409:41;6486:6;:18;:::i;:::-;-1:-1:-1;;;;;6534:14:0;;;;;;:8;:14;;;;;;6461:43;;-1:-1:-1;6534:23:0;;6551:6;;6534:23;:::i;:::-;-1:-1:-1;;;;;6517:14:0;;;;;;;:8;:14;;;;;;:40;;;;6583:12;;;;;;;:29;;6598:14;;6583:29;:::i;:::-;-1:-1:-1;;;;;6568:12:0;;;;;;:8;:12;;;;;;:44;;;;6666:4;6649:23;;;;:35;;6675:9;;6649:35;:::i;:::-;6640:4;6623:23;;;;:8;:23;;;;;;;;;:61;;;;6702:34;1361:25:1;;;-1:-1:-1;;;;;6702:34:0;;;;;;;;;;1334:18:1;6702:34:0;;;;;;;6398:346;;6324:420;;;:::o;8477:400::-;8567:16;;;8581:1;8567:16;;;;;;;;8543:21;;8567:16;;;;;;;;;;-1:-1:-1;8567:16:0;8543:40;;8612:4;8594;8599:1;8594:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;8594:23:0;;;:7;;;;;;;;;;:23;;;;8638:15;;:22;;;-1:-1:-1;;;8638:22:0;;;;:15;;;;;:20;;:22;;;;;8594:7;;8638:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8628:4;8633:1;8628:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;8628:32:0;;;:7;;;;;;;;;:32;8671:15;;8813;;8671:198;;-1:-1:-1;;;8671:198:0;;:15;;;;:66;;:198;;8752:11;;8671:15;;8794:4;;8813:15;;;;8843;;8671:198;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8532:345;8477:400;:::o;1593:229::-;-1:-1:-1;;;;;1667:22:0;;1659:73;;;;-1:-1:-1;;;1659:73:0;;9271:2:1;1659:73:0;;;9253:21:1;9310:2;9290:18;;;9283:30;9349:34;9329:18;;;9322:62;-1:-1:-1;;;9400:18:1;;;9393:36;9446:19;;1659:73:0;9069:402:1;1659:73:0;1769:6;;;1748:38;;-1:-1:-1;;;;;1748:38:0;;;;1769:6;;;1748:38;;;1797:6;:17;;-1:-1:-1;;;;;;1797:17:0;-1:-1:-1;;;;;1797:17:0;;;;;;;;;;1593:229::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;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;2255:247::-;2314:6;2367:2;2355:9;2346:7;2342:23;2338:32;2335:52;;;2383:1;2380;2373:12;2335:52;2422:9;2409:23;2441:31;2466:5;2441:31;:::i;:::-;2491:5;2255:247;-1:-1:-1;;;2255:247:1:o;2507:180::-;2566:6;2619:2;2607:9;2598:7;2594:23;2590:32;2587:52;;;2635:1;2632;2625:12;2587:52;-1:-1:-1;2658:23:1;;2507:180;-1:-1:-1;2507:180:1:o;2692:248::-;2760:6;2768;2821:2;2809:9;2800:7;2796:23;2792:32;2789:52;;;2837:1;2834;2827:12;2789:52;-1:-1:-1;;2860:23:1;;;2930:2;2915:18;;;2902:32;;-1:-1:-1;2692:248:1:o;3169:388::-;3237:6;3245;3298:2;3286:9;3277:7;3273:23;3269:32;3266:52;;;3314:1;3311;3304:12;3266:52;3353:9;3340:23;3372:31;3397:5;3372:31;:::i;:::-;3422:5;-1:-1:-1;3479:2:1;3464:18;;3451:32;3492:33;3451:32;3492:33;:::i;:::-;3544:7;3534:17;;;3169:388;;;;;:::o;3919:127::-;3980:10;3975:3;3971:20;3968:1;3961:31;4011:4;4008:1;4001:15;4035:4;4032:1;4025:15;4051:422;4140:1;4183:5;4140:1;4197:270;4218:7;4208:8;4205:21;4197:270;;;4277:4;4273:1;4269:6;4265:17;4259:4;4256:27;4253:53;;;4286:18;;:::i;:::-;4336:7;4326:8;4322:22;4319:55;;;4356:16;;;;4319:55;4435:22;;;;4395:15;;;;4197:270;;;4201:3;4051:422;;;;;:::o;4478:806::-;4527:5;4557:8;4547:80;;-1:-1:-1;4598:1:1;4612:5;;4547:80;4646:4;4636:76;;-1:-1:-1;4683:1:1;4697:5;;4636:76;4728:4;4746:1;4741:59;;;;4814:1;4809:130;;;;4721:218;;4741:59;4771:1;4762:10;;4785:5;;;4809:130;4846:3;4836:8;4833:17;4830:43;;;4853:18;;:::i;:::-;-1:-1:-1;;4909:1:1;4895:16;;4924:5;;4721:218;;5023:2;5013:8;5010:16;5004:3;4998:4;4995:13;4991:36;4985:2;4975:8;4972:16;4967:2;4961:4;4958:12;4954:35;4951:77;4948:159;;;-1:-1:-1;5060:19:1;;;5092:5;;4948:159;5139:34;5164:8;5158:4;5139:34;:::i;:::-;5209:6;5205:1;5201:6;5197:19;5188:7;5185:32;5182:58;;;5220:18;;:::i;:::-;5258:20;;4478:806;-1:-1:-1;;;4478:806:1:o;5289:140::-;5347:5;5376:47;5417:4;5407:8;5403:19;5397:4;5376:47;:::i;5434:168::-;5507:9;;;5538;;5555:15;;;5549:22;;5535:37;5525:71;;5576:18;;:::i;5607:128::-;5674:9;;;5695:11;;;5692:37;;;5709:18;;:::i;5740:356::-;5942:2;5924:21;;;5961:18;;;5954:30;6020:34;6015:2;6000:18;;5993:62;6087:2;6072:18;;5740:356::o;7204:125::-;7269:9;;;7290:10;;;7287:36;;;7303:18;;:::i;7334:217::-;7374:1;7400;7390:132;;7444:10;7439:3;7435:20;7432:1;7425:31;7479:4;7476:1;7469:15;7507:4;7504:1;7497:15;7390:132;-1:-1:-1;7536:9:1;;7334:217::o;7688:127::-;7749:10;7744:3;7740:20;7737:1;7730:31;7780:4;7777:1;7770:15;7804:4;7801:1;7794:15;7820:251;7890:6;7943:2;7931:9;7922:7;7918:23;7914:32;7911:52;;;7959:1;7956;7949:12;7911:52;7991:9;7985:16;8010:31;8035:5;8010:31;:::i;8076:988::-;8346:4;8394:3;8383:9;8379:19;8425:6;8414:9;8407:25;8451:2;8489:6;8484:2;8473:9;8469:18;8462:34;8532:3;8527:2;8516:9;8512:18;8505:31;8556:6;8591;8585:13;8622:6;8614;8607:22;8660:3;8649:9;8645:19;8638:26;;8699:2;8691:6;8687:15;8673:29;;8720:1;8730:195;8744:6;8741:1;8738:13;8730:195;;;8809:13;;-1:-1:-1;;;;;8805:39:1;8793:52;;8900:15;;;;8865:12;;;;8841:1;8759:9;8730:195;;;-1:-1:-1;;;;;;;8981:32:1;;;;8976:2;8961:18;;8954:60;-1:-1:-1;;;9045:3:1;9030:19;9023:35;8942:3;8076:988;-1:-1:-1;;;8076:988:1:o

Swarm Source

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