ETH Price: $3,434.88 (+3.63%)

Token

EtherOS (ETHOS)
 

Overview

Max Total Supply

1,000,000 ETHOS

Holders

55

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
2,125 ETHOS

Value
$0.00
0x1462847baabfd707f4677d7faa9f417a7253bd56
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:
ETHEROS

Compiler Version
v0.8.27+commit.40a35a09

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

//SPDX-License-Identifier: MIT

/*

    [ Telegram ]: https://t.me/EtherOsPortal
    [ Twitter ]: https://x.com/ether_os
    [ Website ]: https://etheros.app

    A groundbreaking standard for decentralized exchanges - Designed for Ethereum and Layer 2 solutions.
*/
pragma solidity 0.8.27;

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

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

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

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

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

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

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

}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract ETHEROS is Context, IERC20, Ownable {
    uint8 private constant _decimals = 18;
    uint256 private constant _tTotal = 1000000 * 10 ** _decimals;
    string private constant _name = unicode"EtherOS";
    string private constant _symbol = unicode"ETHOS";

    mapping (address => bool) private _excludedFromFee;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => uint256) private _balances;
    uint256 private _swapTokensAtAmount = _tTotal / 1000;
    uint256 private _maxTaxSwap = _tTotal * 1 / 100;
    bool private inSwap;
    IUniswapV2Router02 uniswapV2Router;
    address public uniswapV2Pair;
    uint256 public _buyFees = 15;
    uint256 public _sellFees = 15;
    uint256 public _maxWallet = _tTotal * 2 / 100;
    address payable public _taxWallet;
    bool public tradingOpen;
    bool private swapEnabled = true;
    address public stakingContract;
    address public developmentWallet;
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    event proposalVote(uint, bool);

    constructor() {
        _taxWallet = payable(msg.sender);
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _excludedFromFee[address(uniswapV2Router)] = true;
        _excludedFromFee[address(this)] = true;
        _excludedFromFee[owner()] = true;
        _balances[owner()] = _tTotal;
        emit Transfer(address(0), msg.sender, _tTotal);
    }

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

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[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 {
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        uint256 taxAmount=0;
        if (_excludedFromFee[from] == false && !_excludedFromFee[to]) {
            require(tradingOpen == true, "Trade isn't open!");

            taxAmount = amount * _buyFees / 100;

            if (to != uniswapV2Pair) {
                require(balanceOf(to) + amount <= _maxWallet, "Max wallet!");
            }

            if(to == uniswapV2Pair){
                taxAmount = amount * _sellFees / 100;
                require(_swapTokensAtAmount < _tTotal);
            }

            if (from == uniswapV2Pair) {
                require(balanceOf(to) + amount <= _maxWallet);
            }

            uint256 contractBalance = balanceOf(address(this));
            if (!inSwap && to == uniswapV2Pair && swapEnabled && contractBalance>_swapTokensAtAmount) {
                swapTokensForEth(min(amount,min(contractBalance,_maxTaxSwap)));
            }
        }

        if(taxAmount > 0){
          _balances[address(this)] += (taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from] -= amount;
        _balances[to] += amount - taxAmount;
        emit Transfer(from, to, amount - (taxAmount));
    }

    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            _taxWallet,
            block.timestamp
        );
    }

    function launchOperatingSystem() external onlyOwner {
        tradingOpen = true;
    }

    function setStakingContract(address newContract) external onlyOwner {
        stakingContract = newContract;
    }

    function setOSDevelopmentWallet(address newDevWallet) external onlyOwner {
        developmentWallet = newDevWallet;
    }
    
    function setMaxWalletSize(uint amount) external onlyOwner {
        require(amount >= _tTotal / 500);
        _maxWallet = amount;
    }

    function setSwapTokensAtAmount(uint amount) external onlyOwner {
        _swapTokensAtAmount = amount;
    }

    function excludeFromFee(address account, bool status) external onlyOwner {
        _excludedFromFee[account] = status;
    }

    function setFees(uint newBuyFee, uint newSellFee) external onlyOwner {
        _buyFees = newBuyFee;
        _sellFees  = newSellFee;
        require(newBuyFee <= 25, "too high!");
        require(newSellFee <= 25, "too high!");
    }

    function addLiquidity() external onlyOwner() {
        swapEnabled = true;
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        _approve(address(this), address(uniswapV2Router), totalSupply());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            msg.sender,
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }

    function voteForProposal(uint _id, bool status) external {
        emit proposalVote(_id, status);
    }

    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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"","type":"uint256"},{"indexed":false,"internalType":"bool","name":"","type":"bool"}],"name":"proposalVote","type":"event"},{"inputs":[],"name":"_buyFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"addLiquidity","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"developmentWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"status","type":"bool"}],"name":"excludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"launchOperatingSystem","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"uint256","name":"newBuyFee","type":"uint256"},{"internalType":"uint256","name":"newSellFee","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newDevWallet","type":"address"}],"name":"setOSDevelopmentWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newContract","type":"address"}],"name":"setStakingContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setSwapTokensAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stakingContract","outputs":[{"internalType":"address","name":"","type":"address"}],"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":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_id","type":"uint256"},{"internalType":"bool","name":"status","type":"bool"}],"name":"voteForProposal","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526103e86100136012600a610345565b61002090620f424061035a565b61002a9190610371565b600455606461003b6012600a610345565b61004890620f424061035a565b61005390600161035a565b61005d9190610371565b600555600f600881905560095560646100786012600a610345565b61008590620f424061035a565b61009090600261035a565b61009a9190610371565b600a55600b805460ff60a81b1916600160a81b1790553480156100bb575f5ffd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b80546001600160a01b0319163317905560068054747a250d5630b4cf539739df2c5dacb4c659f2488d00610100600160a81b0319909116179081905561010090046001600160a01b03165f908152600160208190526040808320805460ff1990811684179091553084529083208054909116821790559081906101885f546001600160a01b031690565b6001600160a01b0316815260208101919091526040015f20805460ff19169115159190911790556101bb6012600a610345565b6101c890620f424061035a565b60035f6101dc5f546001600160a01b031690565b6001600160a01b0316815260208101919091526040015f9081209190915533907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6102296012600a610345565b61023690620f424061035a565b60405190815260200160405180910390a3610390565b634e487b7160e01b5f52601160045260245ffd5b6001815b600184111561029b5780850481111561027f5761027f61024c565b600184161561028d57908102905b60019390931c928002610264565b935093915050565b5f826102b15750600161033f565b816102bd57505f61033f565b81600181146102d357600281146102dd576102f9565b600191505061033f565b60ff8411156102ee576102ee61024c565b50506001821b61033f565b5060208310610133831016604e8410600b841016171561031c575081810a61033f565b6103285f198484610260565b805f190482111561033b5761033b61024c565b0290505b92915050565b5f61035360ff8416836102a3565b9392505050565b808202811582820484141761033f5761033f61024c565b5f8261038b57634e487b7160e01b5f52601260045260245ffd5b500490565b6115d88061039d5f395ff3fe6080604052600436106101b2575f3560e01c80638da5cb5b116100e7578063de7cf79911610087578063e8078d9411610062578063e8078d9414610501578063ea1644d514610515578063ee99205c14610534578063ffb54a9914610553575f5ffd5b8063de7cf799146104b8578063df8408fe146104cd578063e4d1a874146104ec575f5ffd5b8063a9059cbb116100c2578063a9059cbb14610417578063afa4f3b214610436578063c04a541414610455578063dd62ed3e14610474575f5ffd5b80638da5cb5b146103af57806395d89b41146103cb5780639dd373b9146103f8575f5ffd5b806349bd5a5e116101525780636f268a991161012d5780636f268a991461033357806370a0823114610352578063715018a61461038657806382247ec01461039a575f5ffd5b806349bd5a5e146102be57806355ae02ea146102f55780636505e8e814610314575f5ffd5b806318160ddd1161018d57806318160ddd1461024e5780631a7afdb21461027057806323b872dd14610284578063313ce567146102a3575f5ffd5b806306fdde03146101bd578063095ea7b3146101fe5780630b78f9c01461022d575f5ffd5b366101b957005b5f5ffd5b3480156101c8575f5ffd5b5060408051808201909152600781526645746865724f5360c81b60208201525b6040516101f59190611191565b60405180910390f35b348015610209575f5ffd5b5061021d6102183660046111da565b610573565b60405190151581526020016101f5565b348015610238575f5ffd5b5061024c610247366004611204565b610589565b005b348015610259575f5ffd5b50610262610643565b6040519081526020016101f5565b34801561027b575f5ffd5b5061024c610662565b34801561028f575f5ffd5b5061021d61029e366004611224565b6106a0565b3480156102ae575f5ffd5b50604051601281526020016101f5565b3480156102c9575f5ffd5b506007546102dd906001600160a01b031681565b6040516001600160a01b0390911681526020016101f5565b348015610300575f5ffd5b5061024c61030f366004611262565b6106f0565b34801561031f575f5ffd5b5061024c61032e36600461128a565b61073b565b34801561033e575f5ffd5b50600b546102dd906001600160a01b031681565b34801561035d575f5ffd5b5061026261036c366004611262565b6001600160a01b03165f9081526003602052604090205490565b348015610391575f5ffd5b5061024c610779565b3480156103a5575f5ffd5b50610262600a5481565b3480156103ba575f5ffd5b505f546001600160a01b03166102dd565b3480156103d6575f5ffd5b506040805180820190915260058152644554484f5360d81b60208201526101e8565b348015610403575f5ffd5b5061024c610412366004611262565b6107ea565b348015610422575f5ffd5b5061021d6104313660046111da565b610835565b348015610441575f5ffd5b5061024c6104503660046112b8565b610841565b348015610460575f5ffd5b50600d546102dd906001600160a01b031681565b34801561047f575f5ffd5b5061026261048e3660046112cf565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156104c3575f5ffd5b5061026260095481565b3480156104d8575f5ffd5b5061024c6104e73660046112fb565b61086f565b3480156104f7575f5ffd5b5061026260085481565b34801561050c575f5ffd5b5061024c6108c2565b348015610520575f5ffd5b5061024c61052f3660046112b8565b610bc6565b34801561053f575f5ffd5b50600c546102dd906001600160a01b031681565b34801561055e575f5ffd5b50600b5461021d90600160a01b900460ff1681565b5f61057f338484610c25565b5060015b92915050565b5f546001600160a01b031633146105bb5760405162461bcd60e51b81526004016105b290611327565b60405180910390fd5b6008829055600981905560198211156106025760405162461bcd60e51b8152602060048201526009602482015268746f6f20686967682160b81b60448201526064016105b2565b601981111561063f5760405162461bcd60e51b8152602060048201526009602482015268746f6f20686967682160b81b60448201526064016105b2565b5050565b5f6106506012600a611453565b61065d90620f4240611461565b905090565b5f546001600160a01b0316331461068b5760405162461bcd60e51b81526004016105b290611327565b600b805460ff60a01b1916600160a01b179055565b5f6106ac848484610c85565b6001600160a01b0384165f908152600260209081526040808320338085529252909120546106e69186916106e1908690611478565b610c25565b5060019392505050565b5f546001600160a01b031633146107195760405162461bcd60e51b81526004016105b290611327565b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6040805183815282151560208201527fd91a336e86ce8eb7d6208fac3b04c8deb28ba931663197d15054ac3a90a81139910160405180910390a15050565b5f546001600160a01b031633146107a25760405162461bcd60e51b81526004016105b290611327565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146108135760405162461bcd60e51b81526004016105b290611327565b600c80546001600160a01b0319166001600160a01b0392909216919091179055565b5f61057f338484610c85565b5f546001600160a01b0316331461086a5760405162461bcd60e51b81526004016105b290611327565b600455565b5f546001600160a01b031633146108985760405162461bcd60e51b81526004016105b290611327565b6001600160a01b03919091165f908152600160205260409020805460ff1916911515919091179055565b5f546001600160a01b031633146108eb5760405162461bcd60e51b81526004016105b290611327565b600b8054600160a81b60ff60a81b199091161790556006546040805163c45a015560e01b815290516101009092046001600160a01b03169163c45a0155916004808201926020929091908290030181865afa15801561094c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610970919061148b565b6001600160a01b031663c9c6539630600660019054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109d0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109f4919061148b565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610a3e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a62919061148b565b600780546001600160a01b0319166001600160a01b03928316179055600654610a959130916101009004166106e1610643565b600654305f818152600360205260409020546101009092046001600160a01b03169163f305d7199147916040516001600160e01b031960e086901b1681526001600160a01b03909216600483015260248201525f6044820181905260648201523360848201524260a482015260c40160606040518083038185885af1158015610b20573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610b4591906114a6565b505060075460065460405163095ea7b360e01b81526001600160a01b03610100909204821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610b9f573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bc391906114d1565b50565b5f546001600160a01b03163314610bef5760405162461bcd60e51b81526004016105b290611327565b6101f4610bfe6012600a611453565b610c0b90620f4240611461565b610c1591906114ec565b811015610c20575f5ffd5b600a55565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383165f9081526001602052604081205460ff16158015610cc557506001600160a01b0383165f9081526001602052604090205460ff16155b15610ece57600b54600160a01b900460ff161515600114610d1c5760405162461bcd60e51b815260206004820152601160248201527054726164652069736e2774206f70656e2160781b60448201526064016105b2565b606460085483610d2c9190611461565b610d3691906114ec565b6007549091506001600160a01b03848116911614610db657600a5482610d70856001600160a01b03165f9081526003602052604090205490565b610d7a919061150b565b1115610db65760405162461bcd60e51b815260206004820152600b60248201526a4d61782077616c6c65742160a81b60448201526064016105b2565b6007546001600160a01b0390811690841603610e0d57606460095483610ddc9190611461565b610de691906114ec565b9050610df46012600a611453565b610e0190620f4240611461565b60045410610e0d575f5ffd5b6007546001600160a01b0390811690851603610e5957600a5482610e45856001600160a01b03165f9081526003602052604090205490565b610e4f919061150b565b1115610e59575f5ffd5b305f9081526003602052604090205460065460ff16158015610e8857506007546001600160a01b038581169116145b8015610e9d5750600b54600160a81b900460ff165b8015610eaa575060045481115b15610ecc57610ecc610ec784610ec284600554610feb565b610feb565b611002565b505b8015610f3857305f9081526003602052604081208054839290610ef290849061150b565b909155505060405181815230906001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b6001600160a01b0384165f9081526003602052604081208054849290610f5f908490611478565b90915550610f6f90508183611478565b6001600160a01b0384165f9081526003602052604081208054909190610f9690849061150b565b90915550506001600160a01b038084169085167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610fd48486611478565b60405190815260200160405180910390a350505050565b5f818311610ff95782610ffb565b815b9392505050565b6006805460ff191660011790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106110425761104261151e565b60200260200101906001600160a01b031690816001600160a01b031681525050600660019054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110b3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110d7919061148b565b816001815181106110ea576110ea61151e565b6001600160a01b03928316602091820292909201015260065461111591309161010090041684610c25565b600654600b5460405163791ac94760e01b81526001600160a01b0361010090930483169263791ac947926111569287925f9288929116904290600401611532565b5f604051808303815f87803b15801561116d575f5ffd5b505af115801561117f573d5f5f3e3d5ffd5b50506006805460ff1916905550505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610bc3575f5ffd5b5f5f604083850312156111eb575f5ffd5b82356111f6816111c6565b946020939093013593505050565b5f5f60408385031215611215575f5ffd5b50508035926020909101359150565b5f5f5f60608486031215611236575f5ffd5b8335611241816111c6565b92506020840135611251816111c6565b929592945050506040919091013590565b5f60208284031215611272575f5ffd5b8135610ffb816111c6565b8015158114610bc3575f5ffd5b5f5f6040838503121561129b575f5ffd5b8235915060208301356112ad8161127d565b809150509250929050565b5f602082840312156112c8575f5ffd5b5035919050565b5f5f604083850312156112e0575f5ffd5b82356112eb816111c6565b915060208301356112ad816111c6565b5f5f6040838503121561130c575f5ffd5b8235611317816111c6565b915060208301356112ad8161127d565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156113ab5780850481111561138f5761138f61135c565b600184161561139d57908102905b60019390931c928002611374565b935093915050565b5f826113c157506001610583565b816113cd57505f610583565b81600181146113e357600281146113ed57611409565b6001915050610583565b60ff8411156113fe576113fe61135c565b50506001821b610583565b5060208310610133831016604e8410600b841016171561142c575081810a610583565b6114385f198484611370565b805f190482111561144b5761144b61135c565b029392505050565b5f610ffb60ff8416836113b3565b80820281158282048414176105835761058361135c565b818103818111156105835761058361135c565b5f6020828403121561149b575f5ffd5b8151610ffb816111c6565b5f5f5f606084860312156114b8575f5ffd5b5050815160208301516040909301519094929350919050565b5f602082840312156114e1575f5ffd5b8151610ffb8161127d565b5f8261150657634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156105835761058361135c565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156115825783516001600160a01b031683526020938401939092019160010161155b565b50506001600160a01b03959095166060840152505060800152939250505056fea26469706673582212200d331e1a2d74723deda5cf4bd45268cd9686741674c5b73f0ff7cb26fe1c646e64736f6c634300081b0033

Deployed Bytecode

0x6080604052600436106101b2575f3560e01c80638da5cb5b116100e7578063de7cf79911610087578063e8078d9411610062578063e8078d9414610501578063ea1644d514610515578063ee99205c14610534578063ffb54a9914610553575f5ffd5b8063de7cf799146104b8578063df8408fe146104cd578063e4d1a874146104ec575f5ffd5b8063a9059cbb116100c2578063a9059cbb14610417578063afa4f3b214610436578063c04a541414610455578063dd62ed3e14610474575f5ffd5b80638da5cb5b146103af57806395d89b41146103cb5780639dd373b9146103f8575f5ffd5b806349bd5a5e116101525780636f268a991161012d5780636f268a991461033357806370a0823114610352578063715018a61461038657806382247ec01461039a575f5ffd5b806349bd5a5e146102be57806355ae02ea146102f55780636505e8e814610314575f5ffd5b806318160ddd1161018d57806318160ddd1461024e5780631a7afdb21461027057806323b872dd14610284578063313ce567146102a3575f5ffd5b806306fdde03146101bd578063095ea7b3146101fe5780630b78f9c01461022d575f5ffd5b366101b957005b5f5ffd5b3480156101c8575f5ffd5b5060408051808201909152600781526645746865724f5360c81b60208201525b6040516101f59190611191565b60405180910390f35b348015610209575f5ffd5b5061021d6102183660046111da565b610573565b60405190151581526020016101f5565b348015610238575f5ffd5b5061024c610247366004611204565b610589565b005b348015610259575f5ffd5b50610262610643565b6040519081526020016101f5565b34801561027b575f5ffd5b5061024c610662565b34801561028f575f5ffd5b5061021d61029e366004611224565b6106a0565b3480156102ae575f5ffd5b50604051601281526020016101f5565b3480156102c9575f5ffd5b506007546102dd906001600160a01b031681565b6040516001600160a01b0390911681526020016101f5565b348015610300575f5ffd5b5061024c61030f366004611262565b6106f0565b34801561031f575f5ffd5b5061024c61032e36600461128a565b61073b565b34801561033e575f5ffd5b50600b546102dd906001600160a01b031681565b34801561035d575f5ffd5b5061026261036c366004611262565b6001600160a01b03165f9081526003602052604090205490565b348015610391575f5ffd5b5061024c610779565b3480156103a5575f5ffd5b50610262600a5481565b3480156103ba575f5ffd5b505f546001600160a01b03166102dd565b3480156103d6575f5ffd5b506040805180820190915260058152644554484f5360d81b60208201526101e8565b348015610403575f5ffd5b5061024c610412366004611262565b6107ea565b348015610422575f5ffd5b5061021d6104313660046111da565b610835565b348015610441575f5ffd5b5061024c6104503660046112b8565b610841565b348015610460575f5ffd5b50600d546102dd906001600160a01b031681565b34801561047f575f5ffd5b5061026261048e3660046112cf565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156104c3575f5ffd5b5061026260095481565b3480156104d8575f5ffd5b5061024c6104e73660046112fb565b61086f565b3480156104f7575f5ffd5b5061026260085481565b34801561050c575f5ffd5b5061024c6108c2565b348015610520575f5ffd5b5061024c61052f3660046112b8565b610bc6565b34801561053f575f5ffd5b50600c546102dd906001600160a01b031681565b34801561055e575f5ffd5b50600b5461021d90600160a01b900460ff1681565b5f61057f338484610c25565b5060015b92915050565b5f546001600160a01b031633146105bb5760405162461bcd60e51b81526004016105b290611327565b60405180910390fd5b6008829055600981905560198211156106025760405162461bcd60e51b8152602060048201526009602482015268746f6f20686967682160b81b60448201526064016105b2565b601981111561063f5760405162461bcd60e51b8152602060048201526009602482015268746f6f20686967682160b81b60448201526064016105b2565b5050565b5f6106506012600a611453565b61065d90620f4240611461565b905090565b5f546001600160a01b0316331461068b5760405162461bcd60e51b81526004016105b290611327565b600b805460ff60a01b1916600160a01b179055565b5f6106ac848484610c85565b6001600160a01b0384165f908152600260209081526040808320338085529252909120546106e69186916106e1908690611478565b610c25565b5060019392505050565b5f546001600160a01b031633146107195760405162461bcd60e51b81526004016105b290611327565b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6040805183815282151560208201527fd91a336e86ce8eb7d6208fac3b04c8deb28ba931663197d15054ac3a90a81139910160405180910390a15050565b5f546001600160a01b031633146107a25760405162461bcd60e51b81526004016105b290611327565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146108135760405162461bcd60e51b81526004016105b290611327565b600c80546001600160a01b0319166001600160a01b0392909216919091179055565b5f61057f338484610c85565b5f546001600160a01b0316331461086a5760405162461bcd60e51b81526004016105b290611327565b600455565b5f546001600160a01b031633146108985760405162461bcd60e51b81526004016105b290611327565b6001600160a01b03919091165f908152600160205260409020805460ff1916911515919091179055565b5f546001600160a01b031633146108eb5760405162461bcd60e51b81526004016105b290611327565b600b8054600160a81b60ff60a81b199091161790556006546040805163c45a015560e01b815290516101009092046001600160a01b03169163c45a0155916004808201926020929091908290030181865afa15801561094c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610970919061148b565b6001600160a01b031663c9c6539630600660019054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109d0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109f4919061148b565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610a3e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a62919061148b565b600780546001600160a01b0319166001600160a01b03928316179055600654610a959130916101009004166106e1610643565b600654305f818152600360205260409020546101009092046001600160a01b03169163f305d7199147916040516001600160e01b031960e086901b1681526001600160a01b03909216600483015260248201525f6044820181905260648201523360848201524260a482015260c40160606040518083038185885af1158015610b20573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610b4591906114a6565b505060075460065460405163095ea7b360e01b81526001600160a01b03610100909204821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610b9f573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bc391906114d1565b50565b5f546001600160a01b03163314610bef5760405162461bcd60e51b81526004016105b290611327565b6101f4610bfe6012600a611453565b610c0b90620f4240611461565b610c1591906114ec565b811015610c20575f5ffd5b600a55565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383165f9081526001602052604081205460ff16158015610cc557506001600160a01b0383165f9081526001602052604090205460ff16155b15610ece57600b54600160a01b900460ff161515600114610d1c5760405162461bcd60e51b815260206004820152601160248201527054726164652069736e2774206f70656e2160781b60448201526064016105b2565b606460085483610d2c9190611461565b610d3691906114ec565b6007549091506001600160a01b03848116911614610db657600a5482610d70856001600160a01b03165f9081526003602052604090205490565b610d7a919061150b565b1115610db65760405162461bcd60e51b815260206004820152600b60248201526a4d61782077616c6c65742160a81b60448201526064016105b2565b6007546001600160a01b0390811690841603610e0d57606460095483610ddc9190611461565b610de691906114ec565b9050610df46012600a611453565b610e0190620f4240611461565b60045410610e0d575f5ffd5b6007546001600160a01b0390811690851603610e5957600a5482610e45856001600160a01b03165f9081526003602052604090205490565b610e4f919061150b565b1115610e59575f5ffd5b305f9081526003602052604090205460065460ff16158015610e8857506007546001600160a01b038581169116145b8015610e9d5750600b54600160a81b900460ff165b8015610eaa575060045481115b15610ecc57610ecc610ec784610ec284600554610feb565b610feb565b611002565b505b8015610f3857305f9081526003602052604081208054839290610ef290849061150b565b909155505060405181815230906001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b6001600160a01b0384165f9081526003602052604081208054849290610f5f908490611478565b90915550610f6f90508183611478565b6001600160a01b0384165f9081526003602052604081208054909190610f9690849061150b565b90915550506001600160a01b038084169085167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610fd48486611478565b60405190815260200160405180910390a350505050565b5f818311610ff95782610ffb565b815b9392505050565b6006805460ff191660011790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106110425761104261151e565b60200260200101906001600160a01b031690816001600160a01b031681525050600660019054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110b3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110d7919061148b565b816001815181106110ea576110ea61151e565b6001600160a01b03928316602091820292909201015260065461111591309161010090041684610c25565b600654600b5460405163791ac94760e01b81526001600160a01b0361010090930483169263791ac947926111569287925f9288929116904290600401611532565b5f604051808303815f87803b15801561116d575f5ffd5b505af115801561117f573d5f5f3e3d5ffd5b50506006805460ff1916905550505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610bc3575f5ffd5b5f5f604083850312156111eb575f5ffd5b82356111f6816111c6565b946020939093013593505050565b5f5f60408385031215611215575f5ffd5b50508035926020909101359150565b5f5f5f60608486031215611236575f5ffd5b8335611241816111c6565b92506020840135611251816111c6565b929592945050506040919091013590565b5f60208284031215611272575f5ffd5b8135610ffb816111c6565b8015158114610bc3575f5ffd5b5f5f6040838503121561129b575f5ffd5b8235915060208301356112ad8161127d565b809150509250929050565b5f602082840312156112c8575f5ffd5b5035919050565b5f5f604083850312156112e0575f5ffd5b82356112eb816111c6565b915060208301356112ad816111c6565b5f5f6040838503121561130c575f5ffd5b8235611317816111c6565b915060208301356112ad8161127d565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156113ab5780850481111561138f5761138f61135c565b600184161561139d57908102905b60019390931c928002611374565b935093915050565b5f826113c157506001610583565b816113cd57505f610583565b81600181146113e357600281146113ed57611409565b6001915050610583565b60ff8411156113fe576113fe61135c565b50506001821b610583565b5060208310610133831016604e8410600b841016171561142c575081810a610583565b6114385f198484611370565b805f190482111561144b5761144b61135c565b029392505050565b5f610ffb60ff8416836113b3565b80820281158282048414176105835761058361135c565b818103818111156105835761058361135c565b5f6020828403121561149b575f5ffd5b8151610ffb816111c6565b5f5f5f606084860312156114b8575f5ffd5b5050815160208301516040909301519094929350919050565b5f602082840312156114e1575f5ffd5b8151610ffb8161127d565b5f8261150657634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156105835761058361135c565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156115825783516001600160a01b031683526020938401939092019160010161155b565b50506001600160a01b03959095166060840152505060800152939250505056fea26469706673582212200d331e1a2d74723deda5cf4bd45268cd9686741674c5b73f0ff7cb26fe1c646e64736f6c634300081b0033

Deployed Bytecode Sourcemap

2570:6638:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4100:83;;;;;;;;;;-1:-1:-1;4170:5:0;;;;;;;;;;;;-1:-1:-1;;;4170:5:0;;;;4100:83;;;;;;;:::i;:::-;;;;;;;;4933:161;;;;;;;;;;-1:-1:-1;4933:161:0;;;;;:::i;:::-;;:::i;:::-;;;1110:14:1;;1103:22;1085:41;;1073:2;1058:18;4933:161:0;945:187:1;8210:239:0;;;;;;;;;;-1:-1:-1;8210:239:0;;;;;:::i;:::-;;:::i;:::-;;4377:95;;;;;;;;;;;;;:::i;:::-;;;1634:25:1;;;1622:2;1607:18;4377:95:0;1488:177:1;7454:89:0;;;;;;;;;;;;;:::i;5102:268::-;;;;;;;;;;-1:-1:-1;5102:268:0;;;;;:::i;:::-;;:::i;4286:83::-;;;;;;;;;;-1:-1:-1;4286:83:0;;2657:2;2325:36:1;;2313:2;2298:18;4286:83:0;2183:184:1;3211:28:0;;;;;;;;;;-1:-1:-1;3211:28:0;;;;-1:-1:-1;;;;;3211:28:0;;;;;;-1:-1:-1;;;;;2536:32:1;;;2518:51;;2506:2;2491:18;3211:28:0;2372:203:1;7675:124:0;;;;;;;;;;-1:-1:-1;7675:124:0;;;;;:::i;:::-;;:::i;9062:106::-;;;;;;;;;;-1:-1:-1;9062:106:0;;;;;:::i;:::-;;:::i;3369:33::-;;;;;;;;;;-1:-1:-1;3369:33:0;;;;-1:-1:-1;;;;;3369:33:0;;;4480:119;;;;;;;;;;-1:-1:-1;4480:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;4573:18:0;4546:7;4573:18;;;:9;:18;;;;;;;4480:119;1651:148;;;;;;;;;;;;;:::i;3317:45::-;;;;;;;;;;;;;;;;1437:79;;;;;;;;;;-1:-1:-1;1475:7:0;1502:6;-1:-1:-1;;;;;1502:6:0;1437:79;;4191:87;;;;;;;;;;-1:-1:-1;4263:7:0;;;;;;;;;;;;-1:-1:-1;;;4263:7:0;;;;4191:87;;7551:116;;;;;;;;;;-1:-1:-1;7551:116:0;;;;;:::i;:::-;;:::i;4607:167::-;;;;;;;;;;-1:-1:-1;4607:167:0;;;;;:::i;:::-;;:::i;7958:110::-;;;;;;;;;;-1:-1:-1;7958:110:0;;;;;:::i;:::-;;:::i;3514:32::-;;;;;;;;;;-1:-1:-1;3514:32:0;;;;-1:-1:-1;;;;;3514:32:0;;;4782:143;;;;;;;;;;-1:-1:-1;4782:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;4890:18:0;;;4863:7;4890:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4782:143;3281:29;;;;;;;;;;;;;;;;8076:126;;;;;;;;;;-1:-1:-1;8076:126:0;;;;;:::i;:::-;;:::i;3246:28::-;;;;;;;;;;;;;;;;8457:597;;;;;;;;;;;;;:::i;7811:139::-;;;;;;;;;;-1:-1:-1;7811:139:0;;;;;:::i;:::-;;:::i;3477:30::-;;;;;;;;;;-1:-1:-1;3477:30:0;;;;-1:-1:-1;;;;;3477:30:0;;;3409:23;;;;;;;;;;-1:-1:-1;3409:23:0;;;;-1:-1:-1;;;3409:23:0;;;;;;4933:161;5008:4;5025:39;417:10;5048:7;5057:6;5025:8;:39::i;:::-;-1:-1:-1;5082:4:0;4933:161;;;;;:::o;8210:239::-;1564:6;;-1:-1:-1;;;;;1564:6:0;417:10;1564:22;1556:67;;;;-1:-1:-1;;;1556:67:0;;;;;;;:::i;:::-;;;;;;;;;8290:8:::1;:20:::0;;;8321:9:::1;:23:::0;;;8376:2:::1;8363:15:::0;::::1;;8355:37;;;::::0;-1:-1:-1;;;8355:37:0;;5119:2:1;8355:37:0::1;::::0;::::1;5101:21:1::0;5158:1;5138:18;;;5131:29;-1:-1:-1;;;5176:18:1;;;5169:39;5225:18;;8355:37:0::1;4917:332:1::0;8355:37:0::1;8425:2;8411:10;:16;;8403:38;;;::::0;-1:-1:-1;;;8403:38:0;;5119:2:1;8403:38:0::1;::::0;::::1;5101:21:1::0;5158:1;5138:18;;;5131:29;-1:-1:-1;;;5176:18:1;;;5169:39;5225:18;;8403:38:0::1;4917:332:1::0;8403:38:0::1;8210:239:::0;;:::o;4377:95::-;4430:7;2711:15;2657:2;2711;:15;:::i;:::-;2701:25;;:7;:25;:::i;:::-;4450:14;;4377:95;:::o;7454:89::-;1564:6;;-1:-1:-1;;;;;1564:6:0;417:10;1564:22;1556:67;;;;-1:-1:-1;;;1556:67:0;;;;;;;:::i;:::-;7517:11:::1;:18:::0;;-1:-1:-1;;;;7517:18:0::1;-1:-1:-1::0;;;7517:18:0::1;::::0;;7454:89::o;5102:268::-;5200:4;5217:36;5227:6;5235:9;5246:6;5217:9;:36::i;:::-;-1:-1:-1;;;;;5295:19:0;;;;;;:11;:19;;;;;;;;417:10;5295:33;;;;;;;;;5264:76;;5273:6;;5295:44;;5332:6;;5295:44;:::i;:::-;5264:8;:76::i;:::-;-1:-1:-1;5358:4:0;5102:268;;;;;:::o;7675:124::-;1564:6;;-1:-1:-1;;;;;1564:6:0;417:10;1564:22;1556:67;;;;-1:-1:-1;;;1556:67:0;;;;;;;:::i;:::-;7759:17:::1;:32:::0;;-1:-1:-1;;;;;;7759:32:0::1;-1:-1:-1::0;;;;;7759:32:0;;;::::1;::::0;;;::::1;::::0;;7675:124::o;9062:106::-;9135:25;;;7292::1;;;7360:14;;7353:22;7348:2;7333:18;;7326:50;9135:25:0;;7265:18:1;9135:25:0;;;;;;;9062:106;;:::o;1651:148::-;1564:6;;-1:-1:-1;;;;;1564:6:0;417:10;1564:22;1556:67;;;;-1:-1:-1;;;1556:67:0;;;;;;;:::i;:::-;1758:1:::1;1742:6:::0;;1721:40:::1;::::0;-1:-1:-1;;;;;1742:6:0;;::::1;::::0;1721:40:::1;::::0;1758:1;;1721:40:::1;1789:1;1772:19:::0;;-1:-1:-1;;;;;;1772:19:0::1;::::0;;1651:148::o;7551:116::-;1564:6;;-1:-1:-1;;;;;1564:6:0;417:10;1564:22;1556:67;;;;-1:-1:-1;;;1556:67:0;;;;;;;:::i;:::-;7630:15:::1;:29:::0;;-1:-1:-1;;;;;;7630:29:0::1;-1:-1:-1::0;;;;;7630:29:0;;;::::1;::::0;;;::::1;::::0;;7551:116::o;4607:167::-;4685:4;4702:42;417:10;4726:9;4737:6;4702:9;:42::i;7958:110::-;1564:6;;-1:-1:-1;;;;;1564:6:0;417:10;1564:22;1556:67;;;;-1:-1:-1;;;1556:67:0;;;;;;;:::i;:::-;8032:19:::1;:28:::0;7958:110::o;8076:126::-;1564:6;;-1:-1:-1;;;;;1564:6:0;417:10;1564:22;1556:67;;;;-1:-1:-1;;;1556:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8160:25:0;;;::::1;;::::0;;;:16:::1;:25;::::0;;;;:34;;-1:-1:-1;;8160:34:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8076:126::o;8457:597::-;1564:6;;-1:-1:-1;;;;;1564:6:0;417:10;1564:22;1556:67;;;;-1:-1:-1;;;1556:67:0;;;;;;;:::i;:::-;8513:11:::1;:18:::0;;-1:-1:-1;;;;;;;8513:18:0;;::::1;;::::0;;8576:15:::1;::::0;:25:::1;::::0;;-1:-1:-1;;;8576:25:0;;;;8513:18:::1;8576:15:::0;;::::1;-1:-1:-1::0;;;;;8576:15:0::1;::::0;:23:::1;::::0;:25:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;:15;:25:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8558:55:0::1;;8622:4;8629:15;;;;;;;;;-1:-1:-1::0;;;;;8629:15:0::1;-1:-1:-1::0;;;;;8629:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8558:94;::::0;-1:-1:-1;;;;;;8558:94:0::1;::::0;;;;;;-1:-1:-1;;;;;7835:32:1;;;8558:94:0::1;::::0;::::1;7817:51:1::0;7904:32;;7884:18;;;7877:60;7790:18;;8558:94:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8542:13;:110:::0;;-1:-1:-1;;;;;;8542:110:0::1;-1:-1:-1::0;;;;;8542:110:0;;::::1;;::::0;;8695:15:::1;::::0;8663:64:::1;::::0;8680:4:::1;::::0;8542:110:::1;8695:15:::0;::::1;;8713:13;:11;:13::i;8663:64::-;8738:15;::::0;8822:4:::1;4546:7:::0;4573:18;;;:9;:18;;;;;;8738:15:::1;::::0;;::::1;-1:-1:-1::0;;;;;8738:15:0::1;::::0;:31:::1;::::0;8777:21:::1;::::0;8738:226:::1;::::0;-1:-1:-1;;;;;;8738:226:0::1;::::0;;;;;;-1:-1:-1;;;;;8269:32:1;;;8738:226:0::1;::::0;::::1;8251:51:1::0;8318:18;;;8311:34;8881:1:0::1;8361:18:1::0;;;8354:34;;;8404:18;;;8397:34;8913:10:0::1;8447:19:1::0;;;8440:61;8938:15:0::1;8517:19:1::0;;;8510:35;8223:19;;8738:226:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;8982:13:0::1;::::0;9013:15:::1;::::0;8975:71:::1;::::0;-1:-1:-1;;;8975:71:0;;-1:-1:-1;;;;;8982:13:0::1;9013:15:::0;;::::1;::::0;::::1;8975:71;::::0;::::1;9191:51:1::0;-1:-1:-1;;9258:18:1;;;9251:34;8982:13:0;::::1;::::0;-1:-1:-1;8975:29:0::1;::::0;9164:18:1;;8975:71:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8457:597::o:0;7811:139::-;1564:6;;-1:-1:-1;;;;;1564:6:0;417:10;1564:22;1556:67;;;;-1:-1:-1;;;1556:67:0;;;;;;;:::i;:::-;7908:3:::1;2711:15;2657:2;2711;:15;:::i;:::-;2701:25;::::0;:7:::1;:25;:::i;:::-;7898:13;;;;:::i;:::-;7888:6;:23;;7880:32;;;;;;7923:10;:19:::0;7811:139::o;5378:177::-;-1:-1:-1;;;;;5463:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5515:32;;1634:25:1;;;5515:32:0;;1607:18:1;5515:32:0;;;;;;;5378:177;;;:::o;5563:1289::-;-1:-1:-1;;;;;5677:22:0;;5643:17;5677:22;;;:16;:22;;;;;;;;:31;;;:56;;-1:-1:-1;;;;;;5713:20:0;;;;;;:16;:20;;;;;;;;5712:21;5677:56;5673:884;;;5758:11;;-1:-1:-1;;;5758:11:0;;;;:19;;5773:4;5758:19;5750:49;;;;-1:-1:-1;;;5750:49:0;;9970:2:1;5750:49:0;;;9952:21:1;10009:2;9989:18;;;9982:30;-1:-1:-1;;;10028:18:1;;;10021:47;10085:18;;5750:49:0;9768:341:1;5750:49:0;5848:3;5837:8;;5828:6;:17;;;;:::i;:::-;:23;;;;:::i;:::-;5878:13;;5816:35;;-1:-1:-1;;;;;;5872:19:0;;;5878:13;;5872:19;5868:120;;5946:10;;5936:6;5920:13;5930:2;-1:-1:-1;;;;;4573:18:0;4546:7;4573:18;;;:9;:18;;;;;;;4480:119;5920:13;:22;;;;:::i;:::-;:36;;5912:60;;;;-1:-1:-1;;;5912:60:0;;10446:2:1;5912:60:0;;;10428:21:1;10485:2;10465:18;;;10458:30;-1:-1:-1;;;10504:18:1;;;10497:41;10555:18;;5912:60:0;10244:335:1;5912:60:0;6013:13;;-1:-1:-1;;;;;6013:13:0;;;6007:19;;;;6004:151;;6079:3;6067:9;;6058:6;:18;;;;:::i;:::-;:24;;;;:::i;:::-;6046:36;-1:-1:-1;2711:15:0;2657:2;2711;:15;:::i;:::-;2701:25;;:7;:25;:::i;:::-;6109:19;;:29;6101:38;;;;;;6183:13;;-1:-1:-1;;;;;6183:13:0;;;6175:21;;;;6171:107;;6251:10;;6241:6;6225:13;6235:2;-1:-1:-1;;;;;4573:18:0;4546:7;4573:18;;;:9;:18;;;;;;;4480:119;6225:13;:22;;;;:::i;:::-;:36;;6217:45;;;;;;6338:4;6294:23;4573:18;;;:9;:18;;;;;;6364:6;;;;6363:7;:30;;;;-1:-1:-1;6380:13:0;;-1:-1:-1;;;;;6374:19:0;;;6380:13;;6374:19;6363:30;:45;;;;-1:-1:-1;6397:11:0;;-1:-1:-1;;;6397:11:0;;;;6363:45;:84;;;;;6428:19;;6412:15;:35;6363:84;6359:187;;;6468:62;6485:44;6489:6;6496:32;6500:15;6516:11;;6496:3;:32::i;:::-;6485:3;:44::i;:::-;6468:16;:62::i;:::-;5735:822;5673:884;6572:13;;6569:138;;6617:4;6599:24;;;;:9;:24;;;;;:39;;6628:9;;6599:24;:39;;6628:9;;6599:39;:::i;:::-;;;;-1:-1:-1;;6656:39:0;;1634:25:1;;;6679:4:0;;-1:-1:-1;;;;;6656:39:0;;;;;1622:2:1;1607:18;6656:39:0;;;;;;;6569:138;-1:-1:-1;;;;;6717:15:0;;;;;;:9;:15;;;;;:25;;6736:6;;6717:15;:25;;6736:6;;6717:25;:::i;:::-;;;;-1:-1:-1;6770:18:0;;-1:-1:-1;6779:9:0;6770:6;:18;:::i;:::-;-1:-1:-1;;;;;6753:13:0;;;;;;:9;:13;;;;;:35;;:13;;;:35;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;6804:40:0;;;;;;;6823:20;6833:9;6823:6;:20;:::i;:::-;6804:40;;1634:25:1;;;1622:2;1607:18;6804:40:0;;;;;;;5632:1220;5563:1289;;;:::o;6860:98::-;6917:7;6944:1;6942;:3;6941:9;;6949:1;6941:9;;;6947:1;6941:9;6934:16;6860:98;-1:-1:-1;;;6860:98:0:o;6966:480::-;3585:6;:13;;-1:-1:-1;;3585:13:0;3594:4;3585:13;;;7068:16:::1;::::0;;7082:1:::1;7068:16:::0;;;;;::::1;::::0;;-1:-1:-1;;7068:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;7068:16:0::1;7044:40;;7113:4;7095;7100:1;7095:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;7095:23:0::1;;;-1:-1:-1::0;;;;;7095:23:0::1;;;::::0;::::1;7139:15;;;;;;;;;-1:-1:-1::0;;;;;7139:15:0::1;-1:-1:-1::0;;;;;7139:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7129:4;7134:1;7129:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7129:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;7204:15:::1;::::0;7172:62:::1;::::0;7189:4:::1;::::0;7204:15:::1;::::0;::::1;;7222:11:::0;7172:8:::1;:62::i;:::-;7245:15;::::0;7387:10:::1;::::0;7245:193:::1;::::0;-1:-1:-1;;;7245:193:0;;-1:-1:-1;;;;;7245:15:0::1;::::0;;::::1;::::0;::::1;::::0;:66:::1;::::0;:193:::1;::::0;7326:11;;7352:1:::1;::::0;7368:4;;7387:10;::::1;::::0;7412:15:::1;::::0;7245:193:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;3621:6:0;:14;;-1:-1:-1;;3621:14:0;;;-1:-1:-1;;;;6966:480:0:o;14:418:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;297:6;292:2;284:6;280:15;275:2;264:9;260:18;254:50;353:1;348:2;339:6;328:9;324:22;320:31;313:42;423:2;416;412:7;407:2;399:6;395:15;391:29;380:9;376:45;372:54;364:62;;;14:418;;;;:::o;437:131::-;-1:-1:-1;;;;;512:31:1;;502:42;;492:70;;558:1;555;548:12;573:367;641:6;649;702:2;690:9;681:7;677:23;673:32;670:52;;;718:1;715;708:12;670:52;757:9;744:23;776:31;801:5;776:31;:::i;:::-;826:5;904:2;889:18;;;;876:32;;-1:-1:-1;;;573:367:1:o;1137:346::-;1205:6;1213;1266:2;1254:9;1245:7;1241:23;1237:32;1234:52;;;1282:1;1279;1272:12;1234:52;-1:-1:-1;;1327:23:1;;;1447:2;1432:18;;;1419:32;;-1:-1:-1;1137:346:1:o;1670:508::-;1747:6;1755;1763;1816:2;1804:9;1795:7;1791:23;1787:32;1784:52;;;1832:1;1829;1822:12;1784:52;1871:9;1858:23;1890:31;1915:5;1890:31;:::i;:::-;1940:5;-1:-1:-1;1997:2:1;1982:18;;1969:32;2010:33;1969:32;2010:33;:::i;:::-;1670:508;;2062:7;;-1:-1:-1;;;2142:2:1;2127:18;;;;2114:32;;1670:508::o;2580:247::-;2639:6;2692:2;2680:9;2671:7;2667:23;2663:32;2660:52;;;2708:1;2705;2698:12;2660:52;2747:9;2734:23;2766:31;2791:5;2766:31;:::i;2832:118::-;2918:5;2911:13;2904:21;2897:5;2894:32;2884:60;;2940:1;2937;2930:12;2955:361;3020:6;3028;3081:2;3069:9;3060:7;3056:23;3052:32;3049:52;;;3097:1;3094;3087:12;3049:52;3142:23;;;-1:-1:-1;3241:2:1;3226:18;;3213:32;3254:30;3213:32;3254:30;:::i;:::-;3303:7;3293:17;;;2955:361;;;;;:::o;3545:226::-;3604:6;3657:2;3645:9;3636:7;3632:23;3628:32;3625:52;;;3673:1;3670;3663:12;3625:52;-1:-1:-1;3718:23:1;;3545:226;-1:-1:-1;3545:226:1:o;3776:388::-;3844:6;3852;3905:2;3893:9;3884:7;3880:23;3876:32;3873:52;;;3921:1;3918;3911:12;3873:52;3960:9;3947:23;3979:31;4004:5;3979:31;:::i;:::-;4029:5;-1:-1:-1;4086:2:1;4071:18;;4058:32;4099:33;4058:32;4099:33;:::i;4169:382::-;4234:6;4242;4295:2;4283:9;4274:7;4270:23;4266:32;4263:52;;;4311:1;4308;4301:12;4263:52;4350:9;4337:23;4369:31;4394:5;4369:31;:::i;:::-;4419:5;-1:-1:-1;4476:2:1;4461:18;;4448:32;4489:30;4448:32;4489:30;:::i;4556:356::-;4758:2;4740:21;;;4777:18;;;4770:30;4836:34;4831:2;4816:18;;4809:62;4903:2;4888:18;;4556:356::o;5254:127::-;5315:10;5310:3;5306:20;5303:1;5296:31;5346:4;5343:1;5336:15;5370:4;5367:1;5360:15;5386:375;5474:1;5492:5;5506:249;5527:1;5517:8;5514:15;5506:249;;;5577:4;5572:3;5568:14;5562:4;5559:24;5556:50;;;5586:18;;:::i;:::-;5636:1;5626:8;5622:16;5619:49;;;5650:16;;;;5619:49;5733:1;5729:16;;;;;5689:15;;5506:249;;;5386:375;;;;;;:::o;5766:902::-;5815:5;5845:8;5835:80;;-1:-1:-1;5886:1:1;5900:5;;5835:80;5934:4;5924:76;;-1:-1:-1;5971:1:1;5985:5;;5924:76;6016:4;6034:1;6029:59;;;;6102:1;6097:174;;;;6009:262;;6029:59;6059:1;6050:10;;6073:5;;;6097:174;6134:3;6124:8;6121:17;6118:43;;;6141:18;;:::i;:::-;-1:-1:-1;;6197:1:1;6183:16;;6256:5;;6009:262;;6355:2;6345:8;6342:16;6336:3;6330:4;6327:13;6323:36;6317:2;6307:8;6304:16;6299:2;6293:4;6290:12;6286:35;6283:77;6280:203;;;-1:-1:-1;6392:19:1;;;6468:5;;6280:203;6515:42;-1:-1:-1;;6540:8:1;6534:4;6515:42;:::i;:::-;6593:6;6589:1;6585:6;6581:19;6572:7;6569:32;6566:58;;;6604:18;;:::i;:::-;6642:20;;5766:902;-1:-1:-1;;;5766:902:1:o;6673:140::-;6731:5;6760:47;6801:4;6791:8;6787:19;6781:4;6760:47;:::i;6818:168::-;6891:9;;;6922;;6939:15;;;6933:22;;6919:37;6909:71;;6960:18;;:::i;6991:128::-;7058:9;;;7079:11;;;7076:37;;;7093:18;;:::i;7387:251::-;7457:6;7510:2;7498:9;7489:7;7485:23;7481:32;7478:52;;;7526:1;7523;7516:12;7478:52;7558:9;7552:16;7577:31;7602:5;7577:31;:::i;8556:456::-;8644:6;8652;8660;8713:2;8701:9;8692:7;8688:23;8684:32;8681:52;;;8729:1;8726;8719:12;8681:52;-1:-1:-1;;8774:16:1;;8880:2;8865:18;;8859:25;8976:2;8961:18;;;8955:25;8774:16;;8859:25;;-1:-1:-1;8955:25:1;8556:456;-1:-1:-1;8556:456:1:o;9296:245::-;9363:6;9416:2;9404:9;9395:7;9391:23;9387:32;9384:52;;;9432:1;9429;9422:12;9384:52;9464:9;9458:16;9483:28;9505:5;9483:28;:::i;9546:217::-;9586:1;9612;9602:132;;9656:10;9651:3;9647:20;9644:1;9637:31;9691:4;9688:1;9681:15;9719:4;9716:1;9709:15;9602:132;-1:-1:-1;9748:9:1;;9546:217::o;10114:125::-;10179:9;;;10200:10;;;10197:36;;;10213:18;;:::i;10716:127::-;10777:10;10772:3;10768:20;10765:1;10758:31;10808:4;10805:1;10798:15;10832:4;10829:1;10822:15;10848:967;11118:4;11166:3;11155:9;11151:19;11197:6;11186:9;11179:25;11240:6;11235:2;11224:9;11220:18;11213:34;11283:3;11278:2;11267:9;11263:18;11256:31;11307:6;11342;11336:13;11373:6;11365;11358:22;11411:3;11400:9;11396:19;11389:26;;11450:2;11442:6;11438:15;11424:29;;11471:1;11481:195;11495:6;11492:1;11489:13;11481:195;;;11560:13;;-1:-1:-1;;;;;11556:39:1;11544:52;;11625:2;11651:15;;;;11616:12;;;;11592:1;11510:9;11481:195;;;-1:-1:-1;;;;;;;11732:32:1;;;;11727:2;11712:18;;11705:60;-1:-1:-1;;11796:3:1;11781:19;11774:35;11693:3;10848:967;-1:-1:-1;;;10848:967:1:o

Swarm Source

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