ETH Price: $2,493.17 (-0.44%)

Token

EL DORADO (DORADO)
 

Overview

Max Total Supply

1,000,000,000 DORADO

Holders

9

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
27,377.502501189528542635 DORADO

Value
$0.00
0x352295f8944Cf86E3393958FaC9D9092D6740275
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:
DORADO

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-11-19
*/

/*
    ________       ____  ____  ____  ___    ____  ____ 
   / ____/ /      / __ \/ __ \/ __ \/   |  / __ \/ __ \
  / __/ / /      / / / / / / / /_/ / /| | / / / / / / /
 / /___/ /___   / /_/ / /_/ / _, _/ ___ |/ /_/ / /_/ / 
/_____/_____/  /_____/\____/_/ |_/_/  |_/_____/\____/                                                  
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣟⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠏⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⠀⠈⠙⢿⣿⣿⣿⣿⠟⢁⣠⣀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠈⠻⣿⣧⡾⠟⠉⠙⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣷⠀⣀⣤⡶⠟⠋⠁⠀⠀⠀⠀⣀⣄⡉⠛⠿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⡿⠞⠋⠁⠀⠀⠀⠀⣀⣤⣶⠿⠛⢉⣠⡴⠾⠛⣿⣤⣿⣿
⣿⣛⠋⢩⣷⠟⠋⢁⣤⣄⡀⠀⣀⣤⣶⠿⠛⠉⣠⣴⠾⠛⠁⠀⠀⠀⠸⣿⣿⣿
⣿⣿⣿⣾⠛⠷⣦⣄⡈⠙⠿⡿⠟⠋⣀⣤⡶⠟⠋⠀⠀⠀⠀⠀⠀⢀⣤⣿⣿⣿
⣿⣿⣿⠇⠀⠀⠀⠉⠛⠷⣦⣤⡶⠟⠋⠁⠀⠀⠀⠀⠀⢀⣠⣴⣾⣿⣿⣿⣿⣿
⣿⣿⣿⡀⠀⠀⠀⠀⠀⠀⢸⡏⠀⠀⠀⠀⠀⢀⣠⣴⠾⠛⠉⠀⠙⢿⣿⣿⣿⣿
⣿⣿⣿⣿⣷⣦⣄⡀⠀⠀⢸⡇⠀⢀⣠⣴⠾⠛⠉⣤⣤⣀⣀⡀⠀⠈⢻⣿⣿⣿
⣿⣿⣿⣿⣿⡿⠉⠻⢷⣤⣼⣧⣶⣟⠋⠁⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣶⣿⣿⣿
⣿⣿⣿⣿⣿⣧⣶⣿⣿⣿⣿⣿⣿⣿⣆⠀⠀⠀⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿  
Website: https://Dorado.wtf                                                                                                                                                                                                                                                                            
*/

// SPDX-License-Identifier: MIT
pragma solidity 0.8.20;

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

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), _owner);
    }

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

    modifier onlyOwner() {
        require(isOwner());
        _;
    }

    function isOwner() private view returns (bool) {
        return msg.sender == _owner;
    }

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

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

    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0));
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

library SafeMath {

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

        return c;
    }
}

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 DORADO is Context, IERC20, Ownable {
    using SafeMath for uint256;
    
    string private constant _name = "EL DORADO";
    string private constant _symbol = "DORADO";
    uint256 private constant _totalSupply = 1_000_000_000 * 10**18;
    uint256 public MinTaxSwapLimit = 1_000_000 * 10**18;
    uint256 public maxWalletlimit = 50_000_001 * 10**18;
    uint256 public maxTxLimit = 50_000_001 * 10**18;
    uint8 private constant _decimals = 18;

    IUniswapV2Router02 immutable uniswapV2Router;
    address immutable uniswapV2Pair;
    address immutable WETH;
    address payable public marketingWallet;

    uint256 public buyTax;
    uint256 public sellTax;
    uint8 private inSwapAndLiquify;
    uint256 private launchedAt;
    uint256 private launchedTime;
    uint256 public deadBlocks;

    mapping(address => uint256) private _balance;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFees;
    
    bool public isOpen = false;
    mapping(address => bool) private _whiteList;
    modifier open(address from, address to) {
        require(isOpen || _whiteList[from] || _whiteList[to], "Not Open");
        _;
    }

    constructor() {
        uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        WETH = uniswapV2Router.WETH();

        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            WETH
        );

        buyTax = 0;
        sellTax = 0;
        
        _whiteList[msg.sender] = true;
        _whiteList[address(this)] = true;

        marketingWallet = payable(0xe4c3087CDa1265fC6F8742b84c0D5dD71Ed064f0);
        _balance[msg.sender] = _totalSupply;
        _isExcludedFromFees[marketingWallet] = true;
        _isExcludedFromFees[msg.sender] = true;
        _isExcludedFromFees[address(this)] = true;
        _isExcludedFromFees[address(uniswapV2Router)] = true;
        _allowances[address(this)][address(uniswapV2Router)] = type(uint256)
            .max;
        _allowances[msg.sender][address(uniswapV2Router)] = type(uint256).max;
        _allowances[marketingWallet][address(uniswapV2Router)] = type(uint256)
            .max;

        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)
    {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()] - amount
        );
        return true;
    }

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

    function RemoveLimits() external onlyOwner {
        maxWalletlimit = _totalSupply;
        maxTxLimit = _totalSupply;
    }
    
    function ChangeMarketingWalletAddress(address newAddress) external onlyOwner() {
        marketingWallet = payable(newAddress);
    }

    function ChangeTax(uint256 newBuyTax, uint256 newSellTax) external onlyOwner {
        require(newBuyTax <= 10, "Must keep fees at 10% or less");
        require(newSellTax <= 10, "Must keep fees at 10% or less");
        buyTax = newBuyTax;
        sellTax = newSellTax;
    }
    
    function EnableTrading(uint256 _deadBlocks) external onlyOwner {
        isOpen = true;
        
        launchedAt = block.number;
        deadBlocks = _deadBlocks;
        launchedTime = block.timestamp;
    }



    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(amount > 1e9, "Min transfer amt");
        require(isOpen || _whiteList[from] || _whiteList[to], "Not Open");

        

        uint256 blockNum = block.number;
              if
                  ((launchedAt + deadBlocks) >= blockNum)
              {
                  buyTax = 70;
                  sellTax = 70;

              } else if(blockNum > (launchedAt + deadBlocks) && blockNum <= launchedAt + 8)
              {
                  buyTax = 60;
                  sellTax = 60;
              }
              else
              {
                  buyTax = 0;
                  sellTax = 0;
              }

        uint256 _tax;
        if (_isExcludedFromFees[from] || _isExcludedFromFees[to]) {
            _tax = 0;
        } else {

            if (inSwapAndLiquify == 1) {
                //No tax transfer
                _balance[from] -= amount;
                _balance[to] += amount;

                emit Transfer(from, to, amount);
                return;
            }

            if (from == uniswapV2Pair) {
                _tax = buyTax;
                require(balanceOf(to).add(amount) <= maxWalletlimit);
                require(amount <= maxTxLimit, "Buy transfer amount exceeds the maxTxLimit.");
            } else if (to == uniswapV2Pair) {
                uint256 tokensToSwap = _balance[address(this)];
                if (tokensToSwap > MinTaxSwapLimit && inSwapAndLiquify == 0) {
                    inSwapAndLiquify = 1;
                    address[] memory path = new address[](2);
                    path[0] = address(this);
                    path[1] = WETH;
                    uniswapV2Router
                        .swapExactTokensForETHSupportingFeeOnTransferTokens(
                            tokensToSwap,
                            0,
                            path,
                            marketingWallet,
                            block.timestamp
                        );
                    inSwapAndLiquify = 0;
                }
                _tax = sellTax;
            } else {
                _tax = 0;
            }
        }
        


        //Is there tax for sender|receiver?
        if (_tax != 0) {
            //Tax transfer
            uint256 taxTokens = (amount * _tax) / 100;
            uint256 transferAmount = amount - taxTokens;

            _balance[from] -= amount;
            _balance[to] += transferAmount;
            _balance[address(this)] += taxTokens;
            emit Transfer(from, address(this), taxTokens);
            emit Transfer(from, to, transferAmount);
        } else {
            //No tax transfer
            _balance[from] -= amount;
            _balance[to] += amount;

            emit Transfer(from, to, amount);
        }
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":"newAddress","type":"address"}],"name":"ChangeMarketingWalletAddress","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":[{"internalType":"uint256","name":"_deadBlocks","type":"uint256"}],"name":"EnableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"ExcludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"MinTaxSwapLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"RemoveLimits","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":[],"name":"deadBlocks","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"isOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletlimit","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":"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"},{"stateMutability":"payable","type":"receive"}]

60e060405269d3c21bcecceda10000006001556a295be97c44bd1d196400006002819055600355600e805460ff191690553480156200003c575f80fd5b505f80546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3737a250d5630b4cf539739df2c5dacb4c659f2488d6080819052604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa158015620000cf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620000f5919062000360565b6001600160a01b031660c0816001600160a01b0316815250506080516001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200014d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000173919062000360565b60c0516040516364e329cb60e11b81523060048201526001600160a01b03918216602482015291169063c9c65396906044016020604051808303815f875af1158015620001c2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001e8919062000360565b6001600160a01b0390811660a0525f6005819055600681905533808252600f60209081526040808420805460ff199081166001908117909255308087528387208054831684179055600480546001600160a01b03191673e4c3087cda1265fc6f8742b84c0d5dd71ed064f0178155868852600b86528488206b033b2e3c9fd0803ce80000009055805489168852600d8652848820805484168517905586885284882080548416851790558188528488208054841685179055608051891680895285892080549094169094179092558652600c80855283872083885285528387205f199081905595875280855283872083885285528387208690559054909616855294825280842094845293905291902055620003013390565b6001600160a01b03165f6001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6b033b2e3c9fd0803ce80000006040516200035291815260200190565b60405180910390a36200038f565b5f6020828403121562000371575f80fd5b81516001600160a01b038116811462000388575f80fd5b9392505050565b60805160a05160c051611265620003c15f395f610ca101525f8181610b030152610be001525f610cfc01526112655ff3fe608060405260043610610164575f3560e01c806370a08231116100cd57806395d89b4111610087578063cc1776d311610062578063cc1776d31461042a578063dd62ed3e1461043f578063f2fde38b14610483578063fabb0b4f146104a2575f80fd5b806395d89b41146103be5780639d8f7706146103ec578063a9059cbb1461040b575f80fd5b806370a08231146102f9578063715018a61461032d57806375f0a874146103415780638036d5901461037857806389e40cf91461038d5780638da5cb5b146103a2575f80fd5b80632f6bc9e71161011e5780632f6bc9e71461025e578063313ce5671461027d57806347535d7b146102985780634f7041a5146102b157806356cd40e7146102c657806368a240f9146102da575f80fd5b806301a072fb1461016f57806305d2743f1461019757806306fdde03146101b8578063095ea7b3146101f257806318160ddd1461022157806323b872dd1461023f575f80fd5b3661016b57005b5f80fd5b34801561017a575f80fd5b5061018460015481565b6040519081526020015b60405180910390f35b3480156101a2575f80fd5b506101b66101b1366004610fd6565b6104b7565b005b3480156101c3575f80fd5b50604080518082019091526009815268454c20444f5241444f60b81b60208201525b60405161018e9190610fef565b3480156101fd575f80fd5b5061021161020c36600461103a565b6104ee565b604051901515815260200161018e565b34801561022c575f80fd5b506b033b2e3c9fd0803ce8000000610184565b34801561024a575f80fd5b50610211610259366004611062565b610504565b348015610269575f80fd5b506101b661027836600461109b565b610554565b348015610288575f80fd5b506040516012815260200161018e565b3480156102a3575f80fd5b50600e546102119060ff1681565b3480156102bc575f80fd5b5061018460055481565b3480156102d1575f80fd5b506101b661061b565b3480156102e5575f80fd5b506101b66102f43660046110bb565b610647565b348015610304575f80fd5b50610184610313366004610fd6565b6001600160a01b03165f908152600b602052604090205490565b348015610338575f80fd5b506101b6610676565b34801561034c575f80fd5b50600454610360906001600160a01b031681565b6040516001600160a01b03909116815260200161018e565b348015610383575f80fd5b5061018460035481565b348015610398575f80fd5b5061018460025481565b3480156103ad575f80fd5b505f546001600160a01b0316610360565b3480156103c9575f80fd5b50604080518082019091526006815265444f5241444f60d01b60208201526101e5565b3480156103f7575f80fd5b506101b66104063660046110d2565b6106d3565b348015610416575f80fd5b5061021161042536600461103a565b610712565b348015610435575f80fd5b5061018460065481565b34801561044a575f80fd5b5061018461045936600461110b565b6001600160a01b039182165f908152600c6020908152604080832093909416825291909152205490565b34801561048e575f80fd5b506101b661049d366004610fd6565b61071e565b3480156104ad575f80fd5b50610184600a5481565b5f546001600160a01b031633146104cc575f80fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b5f6104fa33848461073f565b5060015b92915050565b5f610510848484610862565b6001600160a01b0384165f908152600c602090815260408083203380855292529091205461054a918691610545908690611150565b61073f565b5060019392505050565b5f546001600160a01b03163314610569575f80fd5b600a8211156105bf5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064015b60405180910390fd5b600a8111156106105760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064016105b6565b600591909155600655565b5f546001600160a01b03163314610630575f80fd5b6b033b2e3c9fd0803ce80000006002819055600355565b5f546001600160a01b0316331461065c575f80fd5b600e805460ff1916600117905543600855600a5542600955565b5f546001600160a01b0316331461068b575f80fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106e8575f80fd5b6001600160a01b03919091165f908152600d60205260409020805460ff1916911515919091179055565b5f6104fa338484610862565b5f546001600160a01b03163314610733575f80fd5b61073c81610eeb565b50565b6001600160a01b0383166107a15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105b6565b6001600160a01b0382166108025760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105b6565b6001600160a01b038381165f818152600c602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166108c65760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105b6565b633b9aca00811161090c5760405162461bcd60e51b815260206004820152601060248201526f135a5b881d1c985b9cd9995c88185b5d60821b60448201526064016105b6565b600e5460ff168061093457506001600160a01b0383165f908152600f602052604090205460ff165b8061095657506001600160a01b0382165f908152600f602052604090205460ff165b61098d5760405162461bcd60e51b81526020600482015260086024820152672737ba1027b832b760c11b60448201526064016105b6565b600a54600854439182916109a19190611163565b106109b557604660058190556006556109fd565b600a546008546109c59190611163565b811180156109df5750600880546109db91611163565b8111155b156109f357603c60058190556006556109fd565b5f60058190556006555b6001600160a01b0384165f908152600d602052604081205460ff1680610a3a57506001600160a01b0384165f908152600d602052604090205460ff165b15610a4657505f610d7f565b60075460ff16600103610b01576001600160a01b0385165f908152600b602052604081208054859290610a7a908490611150565b90915550506001600160a01b0384165f908152600b602052604081208054859290610aa6908490611163565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610af291815260200190565b60405180910390a35050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b031603610bde5750600554600254610b6984610b63876001600160a01b03165f908152600b602052604090205490565b90610f56565b1115610b73575f80fd5b600354831115610bd95760405162461bcd60e51b815260206004820152602b60248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201526a36b0bc2a3c2634b6b4ba1760a91b60648201526084016105b6565b610d7f565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b031603610d7c57305f908152600b602052604090205460015481118015610c3a575060075460ff16155b15610d72576007805460ff191660011790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610c7f57610c7f611176565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110610cd357610cd3611176565b6001600160a01b0392831660209182029290920101526004805460405163791ac94760e01b81527f000000000000000000000000000000000000000000000000000000000000000084169363791ac94793610d399388935f93899392169142910161118a565b5f604051808303815f87803b158015610d50575f80fd5b505af1158015610d62573d5f803e3d5ffd5b50506007805460ff191690555050505b5050600654610d7f565b505f5b8015610ebd575f6064610d9283866111f9565b610d9c9190611210565b90505f610da98286611150565b6001600160a01b0388165f908152600b6020526040812080549293508792909190610dd5908490611150565b90915550506001600160a01b0386165f908152600b602052604081208054839290610e01908490611163565b9091555050305f908152600b602052604081208054849290610e24908490611163565b909155505060405182815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610eae91815260200190565b60405180910390a35050610ee4565b6001600160a01b0385165f908152600b602052604081208054859290610a7a908490611150565b5050505050565b6001600160a01b038116610efd575f80fd5b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f80610f628385611163565b905083811015610fb45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105b6565b9392505050565b80356001600160a01b0381168114610fd1575f80fd5b919050565b5f60208284031215610fe6575f80fd5b610fb482610fbb565b5f6020808352835180828501525f5b8181101561101a57858101830151858201604001528201610ffe565b505f604082860101526040601f19601f8301168501019250505092915050565b5f806040838503121561104b575f80fd5b61105483610fbb565b946020939093013593505050565b5f805f60608486031215611074575f80fd5b61107d84610fbb565b925061108b60208501610fbb565b9150604084013590509250925092565b5f80604083850312156110ac575f80fd5b50508035926020909101359150565b5f602082840312156110cb575f80fd5b5035919050565b5f80604083850312156110e3575f80fd5b6110ec83610fbb565b915060208301358015158114611100575f80fd5b809150509250929050565b5f806040838503121561111c575f80fd5b61112583610fbb565b915061113360208401610fbb565b90509250929050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156104fe576104fe61113c565b808201808211156104fe576104fe61113c565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156111d85784516001600160a01b0316835293830193918301916001016111b3565b50506001600160a01b03969096166060850152505050608001529392505050565b80820281158282048414176104fe576104fe61113c565b5f8261122a57634e487b7160e01b5f52601260045260245ffd5b50049056fea2646970667358221220106480d44aeb0b236956c9cdf9005607679088e49d20fdf153a2b743a044450c64736f6c63430008140033

Deployed Bytecode

0x608060405260043610610164575f3560e01c806370a08231116100cd57806395d89b4111610087578063cc1776d311610062578063cc1776d31461042a578063dd62ed3e1461043f578063f2fde38b14610483578063fabb0b4f146104a2575f80fd5b806395d89b41146103be5780639d8f7706146103ec578063a9059cbb1461040b575f80fd5b806370a08231146102f9578063715018a61461032d57806375f0a874146103415780638036d5901461037857806389e40cf91461038d5780638da5cb5b146103a2575f80fd5b80632f6bc9e71161011e5780632f6bc9e71461025e578063313ce5671461027d57806347535d7b146102985780634f7041a5146102b157806356cd40e7146102c657806368a240f9146102da575f80fd5b806301a072fb1461016f57806305d2743f1461019757806306fdde03146101b8578063095ea7b3146101f257806318160ddd1461022157806323b872dd1461023f575f80fd5b3661016b57005b5f80fd5b34801561017a575f80fd5b5061018460015481565b6040519081526020015b60405180910390f35b3480156101a2575f80fd5b506101b66101b1366004610fd6565b6104b7565b005b3480156101c3575f80fd5b50604080518082019091526009815268454c20444f5241444f60b81b60208201525b60405161018e9190610fef565b3480156101fd575f80fd5b5061021161020c36600461103a565b6104ee565b604051901515815260200161018e565b34801561022c575f80fd5b506b033b2e3c9fd0803ce8000000610184565b34801561024a575f80fd5b50610211610259366004611062565b610504565b348015610269575f80fd5b506101b661027836600461109b565b610554565b348015610288575f80fd5b506040516012815260200161018e565b3480156102a3575f80fd5b50600e546102119060ff1681565b3480156102bc575f80fd5b5061018460055481565b3480156102d1575f80fd5b506101b661061b565b3480156102e5575f80fd5b506101b66102f43660046110bb565b610647565b348015610304575f80fd5b50610184610313366004610fd6565b6001600160a01b03165f908152600b602052604090205490565b348015610338575f80fd5b506101b6610676565b34801561034c575f80fd5b50600454610360906001600160a01b031681565b6040516001600160a01b03909116815260200161018e565b348015610383575f80fd5b5061018460035481565b348015610398575f80fd5b5061018460025481565b3480156103ad575f80fd5b505f546001600160a01b0316610360565b3480156103c9575f80fd5b50604080518082019091526006815265444f5241444f60d01b60208201526101e5565b3480156103f7575f80fd5b506101b66104063660046110d2565b6106d3565b348015610416575f80fd5b5061021161042536600461103a565b610712565b348015610435575f80fd5b5061018460065481565b34801561044a575f80fd5b5061018461045936600461110b565b6001600160a01b039182165f908152600c6020908152604080832093909416825291909152205490565b34801561048e575f80fd5b506101b661049d366004610fd6565b61071e565b3480156104ad575f80fd5b50610184600a5481565b5f546001600160a01b031633146104cc575f80fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b5f6104fa33848461073f565b5060015b92915050565b5f610510848484610862565b6001600160a01b0384165f908152600c602090815260408083203380855292529091205461054a918691610545908690611150565b61073f565b5060019392505050565b5f546001600160a01b03163314610569575f80fd5b600a8211156105bf5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064015b60405180910390fd5b600a8111156106105760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064016105b6565b600591909155600655565b5f546001600160a01b03163314610630575f80fd5b6b033b2e3c9fd0803ce80000006002819055600355565b5f546001600160a01b0316331461065c575f80fd5b600e805460ff1916600117905543600855600a5542600955565b5f546001600160a01b0316331461068b575f80fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106e8575f80fd5b6001600160a01b03919091165f908152600d60205260409020805460ff1916911515919091179055565b5f6104fa338484610862565b5f546001600160a01b03163314610733575f80fd5b61073c81610eeb565b50565b6001600160a01b0383166107a15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105b6565b6001600160a01b0382166108025760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105b6565b6001600160a01b038381165f818152600c602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166108c65760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105b6565b633b9aca00811161090c5760405162461bcd60e51b815260206004820152601060248201526f135a5b881d1c985b9cd9995c88185b5d60821b60448201526064016105b6565b600e5460ff168061093457506001600160a01b0383165f908152600f602052604090205460ff165b8061095657506001600160a01b0382165f908152600f602052604090205460ff165b61098d5760405162461bcd60e51b81526020600482015260086024820152672737ba1027b832b760c11b60448201526064016105b6565b600a54600854439182916109a19190611163565b106109b557604660058190556006556109fd565b600a546008546109c59190611163565b811180156109df5750600880546109db91611163565b8111155b156109f357603c60058190556006556109fd565b5f60058190556006555b6001600160a01b0384165f908152600d602052604081205460ff1680610a3a57506001600160a01b0384165f908152600d602052604090205460ff165b15610a4657505f610d7f565b60075460ff16600103610b01576001600160a01b0385165f908152600b602052604081208054859290610a7a908490611150565b90915550506001600160a01b0384165f908152600b602052604081208054859290610aa6908490611163565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610af291815260200190565b60405180910390a35050505050565b7f0000000000000000000000006b16d5de0d9989ee6c78fba5b9c3bd9d85f089386001600160a01b0316856001600160a01b031603610bde5750600554600254610b6984610b63876001600160a01b03165f908152600b602052604090205490565b90610f56565b1115610b73575f80fd5b600354831115610bd95760405162461bcd60e51b815260206004820152602b60248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201526a36b0bc2a3c2634b6b4ba1760a91b60648201526084016105b6565b610d7f565b7f0000000000000000000000006b16d5de0d9989ee6c78fba5b9c3bd9d85f089386001600160a01b0316846001600160a01b031603610d7c57305f908152600b602052604090205460015481118015610c3a575060075460ff16155b15610d72576007805460ff191660011790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610c7f57610c7f611176565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610cd357610cd3611176565b6001600160a01b0392831660209182029290920101526004805460405163791ac94760e01b81527f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84169363791ac94793610d399388935f93899392169142910161118a565b5f604051808303815f87803b158015610d50575f80fd5b505af1158015610d62573d5f803e3d5ffd5b50506007805460ff191690555050505b5050600654610d7f565b505f5b8015610ebd575f6064610d9283866111f9565b610d9c9190611210565b90505f610da98286611150565b6001600160a01b0388165f908152600b6020526040812080549293508792909190610dd5908490611150565b90915550506001600160a01b0386165f908152600b602052604081208054839290610e01908490611163565b9091555050305f908152600b602052604081208054849290610e24908490611163565b909155505060405182815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610eae91815260200190565b60405180910390a35050610ee4565b6001600160a01b0385165f908152600b602052604081208054859290610a7a908490611150565b5050505050565b6001600160a01b038116610efd575f80fd5b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f80610f628385611163565b905083811015610fb45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105b6565b9392505050565b80356001600160a01b0381168114610fd1575f80fd5b919050565b5f60208284031215610fe6575f80fd5b610fb482610fbb565b5f6020808352835180828501525f5b8181101561101a57858101830151858201604001528201610ffe565b505f604082860101526040601f19601f8301168501019250505092915050565b5f806040838503121561104b575f80fd5b61105483610fbb565b946020939093013593505050565b5f805f60608486031215611074575f80fd5b61107d84610fbb565b925061108b60208501610fbb565b9150604084013590509250925092565b5f80604083850312156110ac575f80fd5b50508035926020909101359150565b5f602082840312156110cb575f80fd5b5035919050565b5f80604083850312156110e3575f80fd5b6110ec83610fbb565b915060208301358015158114611100575f80fd5b809150509250929050565b5f806040838503121561111c575f80fd5b61112583610fbb565b915061113360208401610fbb565b90509250929050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156104fe576104fe61113c565b808201808211156104fe576104fe61113c565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156111d85784516001600160a01b0316835293830193918301916001016111b3565b50506001600160a01b03969096166060850152505050608001529392505050565b80820281158282048414176104fe576104fe61113c565b5f8261122a57634e487b7160e01b5f52601260045260245ffd5b50049056fea2646970667358221220106480d44aeb0b236956c9cdf9005607679088e49d20fdf153a2b743a044450c64736f6c63430008140033

Deployed Bytecode Sourcemap

4743:8269:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5001:51;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;5001:51:0;;;;;;;;9273:135;;;;;;;;;;-1:-1:-1;9273:135:0;;;;;:::i;:::-;;:::i;:::-;;7148:83;;;;;;;;;;-1:-1:-1;7218:5:0;;;;;;;;;;;;-1:-1:-1;;;7218:5:0;;;;7148:83;;;;;;;:::i;8058:193::-;;;;;;;;;;-1:-1:-1;8058:193:0;;;;;:::i;:::-;;:::i;:::-;;;1542:14:1;;1535:22;1517:41;;1505:2;1490:18;8058:193:0;1377:187:1;7425:100:0;;;;;;;;;;-1:-1:-1;4972:22:0;7425:100;;8259:350;;;;;;;;;;-1:-1:-1;8259:350:0;;;;;:::i;:::-;;:::i;9416:282::-;;;;;;;;;;-1:-1:-1;9416:282:0;;;;;:::i;:::-;;:::i;7334:83::-;;;;;;;;;;-1:-1:-1;7334:83:0;;5206:2;2297:36:1;;2285:2;2270:18;7334:83:0;2155:184:1;5768:26:0;;;;;;;;;;-1:-1:-1;5768:26:0;;;;;;;;5382:21;;;;;;;;;;;;;;;;9134:127;;;;;;;;;;;;;:::i;9710:217::-;;;;;;;;;;-1:-1:-1;9710:217:0;;;;;:::i;:::-;;:::i;7533:118::-;;;;;;;;;;-1:-1:-1;7533:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;7626:17:0;7599:7;7626:17;;;:8;:17;;;;;;;7533:118;3552:140;;;;;;;;;;;;;:::i;5335:38::-;;;;;;;;;;-1:-1:-1;5335:38:0;;;;-1:-1:-1;;;;;5335:38:0;;;;;;-1:-1:-1;;;;;2709:32:1;;;2691:51;;2679:2;2664:18;5335:38:0;2529:219:1;5117:47:0;;;;;;;;;;;;;;;;5059:51;;;;;;;;;;;;;;;;3286:79;;;;;;;;;;-1:-1:-1;3324:7:0;3351:6;-1:-1:-1;;;;;3351:6:0;3286:79;;7239:87;;;;;;;;;;-1:-1:-1;7311:7:0;;;;;;;;;;;;-1:-1:-1;;;7311:7:0;;;;7239:87;;8998:128;;;;;;;;;;-1:-1:-1;8998:128:0;;;;;:::i;:::-;;:::i;7659:199::-;;;;;;;;;;-1:-1:-1;7659:199:0;;;;;:::i;:::-;;:::i;5410:22::-;;;;;;;;;;;;;;;;7866:184;;;;;;;;;;-1:-1:-1;7866:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;8015:18:0;;;7983:7;8015:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7866:184;3700:109;;;;;;;;;;-1:-1:-1;3700:109:0;;;;;:::i;:::-;;:::i;5544:25::-;;;;;;;;;;;;;;;;9273:135;3492:4;3530:6;-1:-1:-1;;;;;3530:6:0;3516:10;:20;3405:18;;;;;;9363:15:::1;:37:::0;;-1:-1:-1;;;;;;9363:37:0::1;-1:-1:-1::0;;;;;9363:37:0;;;::::1;::::0;;;::::1;::::0;;9273:135::o;8058:193::-;8160:4;8182:39;2195:10;8205:7;8214:6;8182:8;:39::i;:::-;-1:-1:-1;8239:4:0;8058:193;;;;;:::o;8259:350::-;8391:4;8408:36;8418:6;8426:9;8437:6;8408:9;:36::i;:::-;-1:-1:-1;;;;;8526:19:0;;;;;;:11;:19;;;;;;;;2195:10;8526:33;;;;;;;;;8455:124;;8478:6;;8526:42;;8562:6;;8526:42;:::i;:::-;8455:8;:124::i;:::-;-1:-1:-1;8597:4:0;8259:350;;;;;:::o;9416:282::-;3492:4;3530:6;-1:-1:-1;;;;;3530:6:0;3516:10;:20;3405:18;;;;;;9525:2:::1;9512:9;:15;;9504:57;;;::::0;-1:-1:-1;;;9504:57:0;;4045:2:1;9504:57:0::1;::::0;::::1;4027:21:1::0;4084:2;4064:18;;;4057:30;4123:31;4103:18;;;4096:59;4172:18;;9504:57:0::1;;;;;;;;;9594:2;9580:10;:16;;9572:58;;;::::0;-1:-1:-1;;;9572:58:0;;4045:2:1;9572:58:0::1;::::0;::::1;4027:21:1::0;4084:2;4064:18;;;4057:30;4123:31;4103:18;;;4096:59;4172:18;;9572:58:0::1;3843:353:1::0;9572:58:0::1;9641:6;:18:::0;;;;9670:7:::1;:20:::0;9416:282::o;9134:127::-;3492:4;3530:6;-1:-1:-1;;;;;3530:6:0;3516:10;:20;3405:18;;;;;;4972:22:::1;9188:14;:29:::0;;;9228:10:::1;:25:::0;9134:127::o;9710:217::-;3492:4;3530:6;-1:-1:-1;;;;;3530:6:0;3516:10;:20;3405:18;;;;;;9784:6:::1;:13:::0;;-1:-1:-1;;9784:13:0::1;9793:4;9784:13;::::0;;9831:12:::1;9818:10;:25:::0;9854:10:::1;:24:::0;9904:15:::1;9889:12;:30:::0;9710:217::o;3552:140::-;3492:4;3530:6;-1:-1:-1;;;;;3530:6:0;3516:10;:20;3405:18;;;;;;3651:1:::1;3635:6:::0;;3614:40:::1;::::0;-1:-1:-1;;;;;3635:6:0;;::::1;::::0;3614:40:::1;::::0;3651:1;;3614:40:::1;3682:1;3665:19:::0;;-1:-1:-1;;;;;;3665:19:0::1;::::0;;3552:140::o;8998:128::-;3492:4;3530:6;-1:-1:-1;;;;;3530:6:0;3516:10;:20;3405:18;;;;;;-1:-1:-1;;;;;9082:27:0;;;::::1;;::::0;;;:19:::1;:27;::::0;;;;:36;;-1:-1:-1;;9082:36:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8998:128::o;7659:199::-;7764:4;7786:42;2195:10;7810:9;7821:6;7786:9;:42::i;3700:109::-;3492:4;3530:6;-1:-1:-1;;;;;3530:6:0;3516:10;:20;3405:18;;;;;;3773:28:::1;3792:8;3773:18;:28::i;:::-;3700:109:::0;:::o;8617:369::-;-1:-1:-1;;;;;8744:19:0;;8736:68;;;;-1:-1:-1;;;8736:68:0;;4403:2:1;8736:68:0;;;4385:21:1;4442:2;4422:18;;;4415:30;4481:34;4461:18;;;4454:62;-1:-1:-1;;;4532:18:1;;;4525:34;4576:19;;8736:68:0;4201:400:1;8736:68:0;-1:-1:-1;;;;;8823:21:0;;8815:68;;;;-1:-1:-1;;;8815:68:0;;4808:2:1;8815:68:0;;;4790:21:1;4847:2;4827:18;;;4820:30;4886:34;4866:18;;;4859:62;-1:-1:-1;;;4937:18:1;;;4930:32;4979:19;;8815:68:0;4606:398:1;8815:68:0;-1:-1:-1;;;;;8894:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8946:32;;160:25:1;;;8946:32:0;;133:18:1;8946:32:0;;;;;;;8617:369;;;:::o;9939:3033::-;-1:-1:-1;;;;;10061:18:0;;10053:68;;;;-1:-1:-1;;;10053:68:0;;5211:2:1;10053:68:0;;;5193:21:1;5250:2;5230:18;;;5223:30;5289:34;5269:18;;;5262:62;-1:-1:-1;;;5340:18:1;;;5333:35;5385:19;;10053:68:0;5009:401:1;10053:68:0;10149:3;10140:6;:12;10132:41;;;;-1:-1:-1;;;10132:41:0;;5617:2:1;10132:41:0;;;5599:21:1;5656:2;5636:18;;;5629:30;-1:-1:-1;;;5675:18:1;;;5668:46;5731:18;;10132:41:0;5415:340:1;10132:41:0;10192:6;;;;;:26;;-1:-1:-1;;;;;;10202:16:0;;;;;;:10;:16;;;;;;;;10192:26;:44;;;-1:-1:-1;;;;;;10222:14:0;;;;;;:10;:14;;;;;;;;10192:44;10184:65;;;;-1:-1:-1;;;10184:65:0;;5962:2:1;10184:65:0;;;5944:21:1;6001:1;5981:18;;;5974:29;-1:-1:-1;;;6019:18:1;;;6012:38;6067:18;;10184:65:0;5760:331:1;10184:65:0;10359:10;;10346;;10293:12;;;;10346:23;;10359:10;10346:23;:::i;:::-;10345:37;10322:454;;10429:2;10420:6;:11;;;10452:7;:12;10322:454;;;10518:10;;10505;;:23;;;;:::i;:::-;10493:8;:36;:66;;;;-1:-1:-1;10545:10:0;;;:14;;;:::i;:::-;10533:8;:26;;10493:66;10490:286;;;10606:2;10597:6;:11;;;10629:7;:12;10490:286;;;10725:1;10716:6;:10;;;10747:7;:11;10490:286;-1:-1:-1;;;;;10815:25:0;;10788:12;10815:25;;;:19;:25;;;;;;;;;:52;;-1:-1:-1;;;;;;10844:23:0;;;;;;:19;:23;;;;;;;;10815:52;10811:1492;;;-1:-1:-1;10891:1:0;10811:1492;;;10931:16;;;;;:21;10927:239;;-1:-1:-1;;;;;11008:14:0;;;;;;:8;:14;;;;;:24;;11026:6;;11008:14;:24;;11026:6;;11008:24;:::i;:::-;;;;-1:-1:-1;;;;;;;11051:12:0;;;;;;:8;:12;;;;;:22;;11067:6;;11051:12;:22;;11067:6;;11051:22;:::i;:::-;;;;;;;;11114:2;-1:-1:-1;;;;;11099:26:0;11108:4;-1:-1:-1;;;;;11099:26:0;;11118:6;11099:26;;;;160:25:1;;148:2;133:18;;14:177;11099:26:0;;;;;;;;11144:7;;9939:3033;;;:::o;10927:239::-;11194:13;-1:-1:-1;;;;;11186:21:0;:4;-1:-1:-1;;;;;11186:21:0;;11182:1110;;-1:-1:-1;11235:6:0;;11297:14;;11268:25;11286:6;11268:13;11278:2;-1:-1:-1;;;;;7626:17:0;7599:7;7626:17;;;:8;:17;;;;;;;7533:118;11268:13;:17;;:25::i;:::-;:43;;11260:52;;;;;;11349:10;;11339:6;:20;;11331:76;;;;-1:-1:-1;;;11331:76:0;;6428:2:1;11331:76:0;;;6410:21:1;6467:2;6447:18;;;6440:30;6506:34;6486:18;;;6479:62;-1:-1:-1;;;6557:18:1;;;6550:41;6608:19;;11331:76:0;6226:407:1;11331:76:0;11182:1110;;;11439:13;-1:-1:-1;;;;;11433:19:0;:2;-1:-1:-1;;;;;11433:19:0;;11429:863;;11513:4;11473:20;11496:23;;;:8;:23;;;;;;11557:15;;11542:30;;:55;;;;-1:-1:-1;11576:16:0;;;;:21;11542:55;11538:657;;;11622:16;:20;;-1:-1:-1;;11622:20:0;11641:1;11622:20;;;11689:16;;;11703:1;11689:16;;;;;;;;-1:-1:-1;;11689:16:0;;;;;;;;;;-1:-1:-1;11689:16:0;11665:40;;11746:4;11728;11733:1;11728:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;11728:23:0;;;-1:-1:-1;;;;;11728:23:0;;;;;11784:4;11774;11779:1;11774:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;11774:14:0;;;:7;;;;;;;;;:14;12044:15;;;11811:321;;-1:-1:-1;;;11811:321:0;;:15;:92;;;;;:321;;11934:12;;11977:1;;12009:4;;12044:15;;;12090;;11811:321;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12155:16:0;:20;;-1:-1:-1;;12155:20:0;;;-1:-1:-1;;;11538:657:0;-1:-1:-1;;12220:7:0;;11429:863;;;-1:-1:-1;12275:1:0;11429:863;12376:9;;12372:593;;12430:17;12468:3;12451:13;12460:4;12451:6;:13;:::i;:::-;12450:21;;;;:::i;:::-;12430:41;-1:-1:-1;12486:22:0;12511:18;12430:41;12511:6;:18;:::i;:::-;-1:-1:-1;;;;;12546:14:0;;;;;;:8;:14;;;;;:24;;12486:43;;-1:-1:-1;12564:6:0;;12546:14;;;:24;;12564:6;;12546:24;:::i;:::-;;;;-1:-1:-1;;;;;;;12585:12:0;;;;;;:8;:12;;;;;:30;;12601:14;;12585:12;:30;;12601:14;;12585:30;:::i;:::-;;;;-1:-1:-1;;12647:4:0;12630:23;;;;:8;:23;;;;;:36;;12657:9;;12630:23;:36;;12657:9;;12630:36;:::i;:::-;;;;-1:-1:-1;;12686:40:0;;160:25:1;;;12709:4:0;;-1:-1:-1;;;;;12686:40:0;;;;;148:2:1;133:18;12686:40:0;;;;;;;12761:2;-1:-1:-1;;;;;12746:34:0;12755:4;-1:-1:-1;;;;;12746:34:0;;12765:14;12746:34;;;;160:25:1;;148:2;133:18;;14:177;12746:34:0;;;;;;;;12387:405;;12372:593;;;-1:-1:-1;;;;;12844:14:0;;;;;;:8;:14;;;;;:24;;12862:6;;12844:14;:24;;12862:6;;12844:24;:::i;12372:593::-;10042:2930;;9939:3033;;;:::o;3817:187::-;-1:-1:-1;;;;;3891:22:0;;3883:31;;;;;;3951:6;;;3930:38;;-1:-1:-1;;;;;3930:38:0;;;;3951:6;;;3930:38;;;3979:6;:17;;-1:-1:-1;;;;;;3979:17:0;-1:-1:-1;;;;;3979:17:0;;;;;;;;;;3817:187::o;4037:181::-;4095:7;;4127:5;4131:1;4127;:5;:::i;:::-;4115:17;;4156:1;4151;:6;;4143:46;;;;-1:-1:-1;;;4143:46:0;;8492:2:1;4143:46:0;;;8474:21:1;8531:2;8511:18;;;8504:30;8570:29;8550:18;;;8543:57;8617:18;;4143:46:0;8290:351:1;4143:46:0;4209:1;4037:181;-1:-1:-1;;;4037:181:0:o;196:173:1:-;264:20;;-1:-1:-1;;;;;313:31:1;;303:42;;293:70;;359:1;356;349:12;293:70;196:173;;;:::o;374:186::-;433:6;486:2;474:9;465:7;461:23;457:32;454:52;;;502:1;499;492:12;454:52;525:29;544:9;525:29;:::i;565:548::-;677:4;706:2;735;724:9;717:21;767:6;761:13;810:6;805:2;794:9;790:18;783:34;835:1;845:140;859:6;856:1;853:13;845:140;;;954:14;;;950:23;;944:30;920:17;;;939:2;916:26;909:66;874:10;;845:140;;;849:3;1034:1;1029:2;1020:6;1009:9;1005:22;1001:31;994:42;1104:2;1097;1093:7;1088:2;1080:6;1076:15;1072:29;1061:9;1057:45;1053:54;1045:62;;;;565:548;;;;:::o;1118:254::-;1186:6;1194;1247:2;1235:9;1226:7;1222:23;1218:32;1215:52;;;1263:1;1260;1253:12;1215:52;1286:29;1305:9;1286:29;:::i;:::-;1276:39;1362:2;1347:18;;;;1334:32;;-1:-1:-1;;;1118:254:1:o;1569:328::-;1646:6;1654;1662;1715:2;1703:9;1694:7;1690:23;1686:32;1683:52;;;1731:1;1728;1721:12;1683:52;1754:29;1773:9;1754:29;:::i;:::-;1744:39;;1802:38;1836:2;1825:9;1821:18;1802:38;:::i;:::-;1792:48;;1887:2;1876:9;1872:18;1859:32;1849:42;;1569:328;;;;;:::o;1902:248::-;1970:6;1978;2031:2;2019:9;2010:7;2006:23;2002:32;1999:52;;;2047:1;2044;2037:12;1999:52;-1:-1:-1;;2070:23:1;;;2140:2;2125:18;;;2112:32;;-1:-1:-1;1902:248:1:o;2344:180::-;2403:6;2456:2;2444:9;2435:7;2431:23;2427:32;2424:52;;;2472:1;2469;2462:12;2424:52;-1:-1:-1;2495:23:1;;2344:180;-1:-1:-1;2344:180:1:o;2961:347::-;3026:6;3034;3087:2;3075:9;3066:7;3062:23;3058:32;3055:52;;;3103:1;3100;3093:12;3055:52;3126:29;3145:9;3126:29;:::i;:::-;3116:39;;3205:2;3194:9;3190:18;3177:32;3252:5;3245:13;3238:21;3231:5;3228:32;3218:60;;3274:1;3271;3264:12;3218:60;3297:5;3287:15;;;2961:347;;;;;:::o;3313:260::-;3381:6;3389;3442:2;3430:9;3421:7;3417:23;3413:32;3410:52;;;3458:1;3455;3448:12;3410:52;3481:29;3500:9;3481:29;:::i;:::-;3471:39;;3529:38;3563:2;3552:9;3548:18;3529:38;:::i;:::-;3519:48;;3313:260;;;;;:::o;3578:127::-;3639:10;3634:3;3630:20;3627:1;3620:31;3670:4;3667:1;3660:15;3694:4;3691:1;3684:15;3710:128;3777:9;;;3798:11;;;3795:37;;;3812:18;;:::i;6096:125::-;6161:9;;;6182:10;;;6179:36;;;6195:18;;:::i;6770:127::-;6831:10;6826:3;6822:20;6819:1;6812:31;6862:4;6859:1;6852:15;6886:4;6883:1;6876:15;6902:988;7172:4;7220:3;7209:9;7205:19;7251:6;7240:9;7233:25;7277:2;7315:6;7310:2;7299:9;7295:18;7288:34;7358:3;7353:2;7342:9;7338:18;7331:31;7382:6;7417;7411:13;7448:6;7440;7433:22;7486:3;7475:9;7471:19;7464:26;;7525:2;7517:6;7513:15;7499:29;;7546:1;7556:195;7570:6;7567:1;7564:13;7556:195;;;7635:13;;-1:-1:-1;;;;;7631:39:1;7619:52;;7726:15;;;;7691:12;;;;7667:1;7585:9;7556:195;;;-1:-1:-1;;;;;;;7807:32:1;;;;7802:2;7787:18;;7780:60;-1:-1:-1;;;7871:3:1;7856:19;7849:35;7768:3;6902:988;-1:-1:-1;;;6902:988:1:o;7895:168::-;7968:9;;;7999;;8016:15;;;8010:22;;7996:37;7986:71;;8037:18;;:::i;8068:217::-;8108:1;8134;8124:132;;8178:10;8173:3;8169:20;8166:1;8159:31;8213:4;8210:1;8203:15;8241:4;8238:1;8231:15;8124:132;-1:-1:-1;8270:9:1;;8068:217::o

Swarm Source

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