ETH Price: $2,523.01 (-0.11%)

Token

666 (666)
 

Overview

Max Total Supply

666 666

Holders

23

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 6 Decimals)

Filtered by Token Holder
*🖕️😡️🖕️.eth
Balance
0.874353 666

Value
$0.00
0x490153538858038009b964931d35b2e1ad823c7c
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:
_666_

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity Multiple files format)

File 3 of 3: _666_.sol
// https://t.me/sixsixsixtokeneth
// https://www.666token.rocks/

pragma solidity ^0.8.7;

import "./ERC20.sol";
import "./IUniswapV2Router02.sol";

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

contract _666_ is ERC20 {
    address _owner;
    IUniswapV2Router02 internal constant _uniswapV2Router =
        IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    address public uniswapV2Pair;
    bool public tradingEnable;
    mapping(address => bool) public isBot;
    mapping(address => bool) _isExcludedFromFee;
    mapping(address => uint256) _unblockTime;
    uint256 public blockSeconds = 666;
    uint256 _startTradingBlock;
    bool _inSwap;
    uint256 public maxBuy;

    uint256 constant maxBuyIncrementMinutesTimer = 2; // increment maxbuy minutes
    uint256 constant maxByyIncrementPercentil = 1; // increment maxbyu percentil 1000=100%
    uint256 public maxBuyIncrementValue; // value for increment maxBuy
    uint256 public incrementTime; // last increment time

    modifier onlyOwner() {
        require(msg.sender == _owner);
        _;
    }

    modifier lockTheSwap() {
        _inSwap = true;
        _;
        _inSwap = false;
    }

    constructor()
        ERC20("666", "666")
    {
        _owner = msg.sender;
        _isExcludedFromFee[address(0)] = true;
        _setMaxBuy(2);
    }

    receive() external payable {}

    function makeLiquidity() public onlyOwner {
        require(uniswapV2Pair == address(0));
        address pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(
            address(this),
            _uniswapV2Router.WETH()
        );
        _balances[address(this)] = _totalSupply;
        _allowances[address(this)][address(_uniswapV2Router)] = _totalSupply;
        _isExcludedFromFee[pair] = true;
        _uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            _totalSupply,
            0,
            0,
            msg.sender,
            block.timestamp
        );

        uniswapV2Pair = pair;
        tradingEnable = true;

        incrementTime = block.timestamp;
        maxBuyIncrementValue = (_totalSupply * maxByyIncrementPercentil) / 1000;
        _startTradingBlock = block.number;
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal override {
        require(!isBot[from] && !isBot[to]);

        // buy
        if (from == uniswapV2Pair && !_isExcludedFromFee[to]) {
            // increment maxBuy
            uint256 incrementCount = (block.timestamp - incrementTime) /
                (maxBuyIncrementMinutesTimer * 1 minutes);
            if (incrementCount > 0) {
                if (maxBuy < _totalSupply)
                    maxBuy += maxBuyIncrementValue * incrementCount;
                incrementTime = block.timestamp;
            }
            // trading enable
            require(tradingEnable);
            // antibot
            bool autoban = getAutoBanBots();
            if (!autoban) require(_balances[to] + amount <= maxBuy);
            if (autoban) isBot[to] = true;
            amount = _getFeeBuy(amount);
        }
        // sell
        else if (
            !_inSwap && uniswapV2Pair != address(0) && to == uniswapV2Pair
        ) {
            // block
            uint256 unblockTime = _unblockTime[from];
            require(block.timestamp >= unblockTime);
            _unblockTime[from] = block.timestamp + blockSeconds * 1 seconds;
        } else {
            // block
            uint256 unblockTime = _unblockTime[from];
            require(block.timestamp >= unblockTime);
            _unblockTime[from] = block.timestamp + blockSeconds * 1 seconds;
        }

        // transfer
        super._transfer(from, to, amount);
    }

    function getBlockedSeconds(address account) external view returns (uint256) {
        if (block.timestamp >= _unblockTime[account]) return 0;
        return (_unblockTime[account] - block.timestamp) / (1 seconds);
    }

    function _getFeeBuy(uint256 amount) private returns (uint256) {
        uint256 fee = amount / 10; // 10%
        amount -= fee;
        emit Transfer(address(this), address(0), fee);
        return amount;
    }

    function getSellDynamicBurnCount(uint256 amount)
        internal
        view
        returns (uint256)
    {
        // calculate fee percent
        uint256 value = _balances[uniswapV2Pair];
        uint256 vMax = (value * 6) / 100; // max additive tax amount (6%)
        if (amount > vMax) return amount / 5; // 20% tax

        // additive tax, that in intervat 0-20%
        return ((amount * amount) / vMax) / 5;
    }

    function _getFeeSell(uint256 amount, address account)
        private
        returns (uint256)
    {
        // get burn count
        uint256 burnCount = amount / 5; // 20% constant tax
        burnCount += getSellDynamicBurnCount(amount); // burn count

        amount -= burnCount;
        _balances[account] -= burnCount;
        _totalSupply -= burnCount;
        emit Transfer(address(this), address(0), burnCount);
        return amount;
    }

    function setMaxBuy(uint256 percent) external onlyOwner {
        _setMaxBuy(percent);
    }

    function _setMaxBuy(uint256 percentil) internal {
        maxBuy = (percentil * _totalSupply) / 1000;
    }

    function getMaxBuy() external view returns (uint256) {
        uint256 incrementCount = (block.timestamp - incrementTime) /
            (maxBuyIncrementMinutesTimer * 1 minutes);
        if (incrementCount == 0) return maxBuy;

        return maxBuy + maxBuyIncrementValue * incrementCount;
    }

    function setBots(address[] memory accounts, bool value) external onlyOwner {
        for (uint256 i = 0; i < accounts.length; ++i) {
            isBot[accounts[i]] = value;
        }
    }

    function setExcludeFromFee(address[] memory accounts, bool value)
        external
        onlyOwner
    {
        for (uint256 i = 0; i < accounts.length; ++i) {
            _isExcludedFromFee[accounts[i]] = value;
        }
    }

    function setTradingEnable(bool value) external onlyOwner {
        tradingEnable = value;
    }

    function getAutoBanBots() public view returns (bool) {
        return block.number < _startTradingBlock + 1;
    }

    function transferOwnership(address newOwner) external onlyOwner {
        _owner = newOwner;
    }
}

File 1 of 3: ERC20.sol
pragma solidity ^0.8.7;

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 ERC20 is IERC20 {
    uint256 internal _totalSupply = 666e6;
    string _name;
    string _symbol;
    uint8 constant _decimals = 6;
    mapping(address => uint256) internal _balances;
    mapping(address => mapping(address => uint256)) internal _allowances;

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

    function name() external view returns (string memory) {
        return _name;
    }

    function symbol() external view returns (string memory) {
        return _symbol;
    }

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

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

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

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

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {
        _beforeTokenTransfer(from, to, amount);

        uint256 senderBalance = _balances[from];
        require(senderBalance >= amount);
        unchecked {
            _balances[from] = senderBalance - amount;
        }
        _balances[to] += amount;
        emit Transfer(from, to, amount);
        _afterTokenTransfer(from, to, amount);
    }

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

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

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][msg.sender];
        require(currentAllowance >= amount);
        unchecked {
            _approve(sender, msg.sender, currentAllowance - amount);
        }

        return true;
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0));

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount);
        unchecked {
            _balances[account] = accountBalance - amount;
        }
        _totalSupply -= amount;

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

    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}

File 2 of 3: IUniswapV2Router02.sol
pragma solidity ^0.8.7;

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

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"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":"blockSeconds","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":"getAutoBanBots","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getBlockedSeconds","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getMaxBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"incrementTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"makeLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxBuyIncrementValue","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setExcludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"setMaxBuy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"value","type":"bool"}],"name":"setTradingEnable","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnable","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":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526327b25a8060005561029a600a553480156200001f57600080fd5b506040805180820182526003808252621b1b1b60e91b6020808401828152855180870190965292855284015281519192916200005e91600191620000f5565b50805162000074906002906020840190620000f5565b5050600580546001600160a01b03191633179055506000805260086020527f5eff886ea0ce6ca488a3d6e336d6c0f75f46d19b42c06ce5ee98e42c96d256c7805460ff19166001179055620000ca6002620000d0565b62000229565b6103e860005482620000e39190620001be565b620000ef91906200019b565b600d5550565b8280546200010390620001ec565b90600052602060002090601f01602090048101928262000127576000855562000172565b82601f106200014257805160ff191683800117855562000172565b8280016001018555821562000172579182015b828111156200017257825182559160200191906001019062000155565b506200018092915062000184565b5090565b5b8082111562000180576000815560010162000185565b600082620001b957634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615620001e757634e487b7160e01b600052601160045260246000fd5b500290565b600181811c908216806200020157607f821691505b602082108114156200022357634e487b7160e01b600052602260045260246000fd5b50919050565b61134480620002396000396000f3fe60806040526004361061016a5760003560e01c806370a08231116100d15780639c0db5f31161008a578063b203919e11610064578063b203919e14610428578063dd62ed3e1461043d578063f2fde38b14610483578063f53bc835146104a357600080fd5b80639c0db5f3146103d2578063a9059cbb146103f2578063aff41b7b1461041257600080fd5b806370a082311461032657806370db69d61461035c5780637439c2361461037257806395d89b411461039257806396790d4a146103a757806399bf3266146103bc57600080fd5b8063200f67a511610123578063200f67a51461024b57806323b872dd14610260578063313ce567146102805780633bbac5791461029c57806349bd5a5e146102cc5780636c90b57f1461030457600080fd5b806306fdde0314610176578063095ea7b3146101a1578063168e859d146101d15780631693e8d4146101f557806318160ddd146102165780631bde47dc1461022b57600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5061018b6104c3565b604051610198919061119c565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc366004611030565b610555565b6040519015158152602001610198565b3480156101dd57600080fd5b506101e7600a5481565b604051908152602001610198565b34801561020157600080fd5b506006546101c190600160a01b900460ff1681565b34801561022257600080fd5b506000546101e7565b34801561023757600080fd5b506101e7610246366004610f75565b61056b565b34801561025757600080fd5b506101c16105c9565b34801561026c57600080fd5b506101c161027b366004610fef565b6105e1565b34801561028c57600080fd5b5060405160068152602001610198565b3480156102a857600080fd5b506101c16102b7366004610f75565b60076020526000908152604090205460ff1681565b3480156102d857600080fd5b506006546102ec906001600160a01b031681565b6040516001600160a01b039091168152602001610198565b34801561031057600080fd5b5061032461031f36600461105c565b610637565b005b34801561033257600080fd5b506101e7610341366004610f75565b6001600160a01b031660009081526003602052604090205490565b34801561036857600080fd5b506101e7600d5481565b34801561037e57600080fd5b5061032461038d36600461113a565b6106b8565b34801561039e57600080fd5b5061018b6106ed565b3480156103b357600080fd5b506101e76106fc565b3480156103c857600080fd5b506101e7600f5481565b3480156103de57600080fd5b506103246103ed36600461105c565b610752565b3480156103fe57600080fd5b506101c161040d366004611030565b6107ce565b34801561041e57600080fd5b506101e7600e5481565b34801561043457600080fd5b506103246107db565b34801561044957600080fd5b506101e7610458366004610fb6565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561048f57600080fd5b5061032461049e366004610f75565b610aea565b3480156104af57600080fd5b506103246104be366004611155565b610b23565b6060600180546104d290611261565b80601f01602080910402602001604051908101604052809291908181526020018280546104fe90611261565b801561054b5780601f106105205761010080835404028352916020019161054b565b820191906000526020600020905b81548152906001019060200180831161052e57829003601f168201915b5050505050905090565b6000610562338484610b46565b50600192915050565b6001600160a01b038116600090815260096020526040812054421061059257506000919050565b6001600160a01b0382166000908152600960205260409020546001906105b990429061124a565b6105c39190611209565b92915050565b6000600b5460016105da91906111f1565b4310905090565b60006105ee848484610ba7565b6001600160a01b03841660009081526004602090815260408083203384529091529020548281101561061f57600080fd5b61062c8533858403610b46565b506001949350505050565b6005546001600160a01b0316331461064e57600080fd5b60005b82518110156106b3578160086000858481518110610671576106716112cd565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556106ac8161129c565b9050610651565b505050565b6005546001600160a01b031633146106cf57600080fd5b60068054911515600160a01b0260ff60a01b19909216919091179055565b6060600280546104d290611261565b60008061070b6002603c61122b565b600f54610718904261124a565b6107229190611209565b905080610731575050600d5490565b80600e5461073f919061122b565b600d5461074c91906111f1565b91505090565b6005546001600160a01b0316331461076957600080fd5b60005b82518110156106b357816007600085848151811061078c5761078c6112cd565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556107c78161129c565b905061076c565b6000610562338484610ba7565b6005546001600160a01b031633146107f257600080fd5b6006546001600160a01b03161561080857600080fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561085757600080fd5b505afa15801561086b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088f9190610f99565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156108eb57600080fd5b505afa1580156108ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109239190610f99565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561096b57600080fd5b505af115801561097f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109a39190610f99565b60008054308083526003602090815260408085208490556004808352818620737a250d5630b4cf539739df2c5dacb4c659f2488d808852908452828720959095556001600160a01b03871686526008909252808520805460ff191660011790558454905163f305d71960e01b81529182019290925260248101919091526044810183905260648101929092523360848301524260a483015291925063f305d71990479060c4016060604051808303818588803b158015610a6257600080fd5b505af1158015610a76573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a9b919061116e565b5050600680546001600160a81b0319166001600160a01b03841617600160a01b1790555042600f556000546103e890610ad69060019061122b565b610ae09190611209565b600e555043600b55565b6005546001600160a01b03163314610b0157600080fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610b3a57600080fd5b610b4381610e21565b50565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526007602052604090205460ff16158015610be957506001600160a01b03821660009081526007602052604090205460ff16155b610bf257600080fd5b6006546001600160a01b038481169116148015610c2857506001600160a01b03821660009081526008602052604090205460ff16155b15610d25576000610c3b6002603c61122b565b600f54610c48904261124a565b610c529190611209565b90508015610c9057600054600d541015610c8b5780600e54610c74919061122b565b600d6000828254610c8591906111f1565b90915550505b42600f555b600654600160a01b900460ff16610ca657600080fd5b6000610cb06105c9565b905080610ce957600d546001600160a01b038516600090815260036020526040902054610cde9085906111f1565b1115610ce957600080fd5b8015610d13576001600160a01b0384166000908152600760205260409020805460ff191660011790555b610d1c83610e42565b92505050610e16565b600c5460ff16158015610d4257506006546001600160a01b031615155b8015610d5b57506006546001600160a01b038381169116145b15610dbd576001600160a01b03831660009081526009602052604090205442811115610d8657600080fd5b600a54610d9490600161122b565b610d9e90426111f1565b6001600160a01b03851660009081526009602052604090205550610e16565b6001600160a01b03831660009081526009602052604090205442811115610de357600080fd5b600a54610df190600161122b565b610dfb90426111f1565b6001600160a01b038516600090815260096020526040902055505b6106b3838383610e9e565b6103e860005482610e32919061122b565b610e3c9190611209565b600d5550565b600080610e50600a84611209565b9050610e5c818461124a565b60405182815290935060009030907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35090919050565b6001600160a01b03831660009081526003602052604090205481811015610ec457600080fd5b6001600160a01b03808516600090815260036020526040808220858503905591851681529081208054849290610efb9084906111f1565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610f4791815260200190565b60405180910390a350505050565b8035610f60816112f9565b919050565b80358015158114610f6057600080fd5b600060208284031215610f8757600080fd5b8135610f92816112f9565b9392505050565b600060208284031215610fab57600080fd5b8151610f92816112f9565b60008060408385031215610fc957600080fd5b8235610fd4816112f9565b91506020830135610fe4816112f9565b809150509250929050565b60008060006060848603121561100457600080fd5b833561100f816112f9565b9250602084013561101f816112f9565b929592945050506040919091013590565b6000806040838503121561104357600080fd5b823561104e816112f9565b946020939093013593505050565b6000806040838503121561106f57600080fd5b823567ffffffffffffffff8082111561108757600080fd5b818501915085601f83011261109b57600080fd5b81356020828211156110af576110af6112e3565b8160051b604051601f19603f830116810181811086821117156110d4576110d46112e3565b604052838152828101945085830182870184018b10156110f357600080fd5b600096505b8487101561111d5761110981610f55565b8652600196909601959483019483016110f8565b50965061112d9050878201610f65565b9450505050509250929050565b60006020828403121561114c57600080fd5b610f9282610f65565b60006020828403121561116757600080fd5b5035919050565b60008060006060848603121561118357600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b818110156111c9578581018301518582016040015282016111ad565b818111156111db576000604083870101525b50601f01601f1916929092016040019392505050565b60008219821115611204576112046112b7565b500190565b60008261122657634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611245576112456112b7565b500290565b60008282101561125c5761125c6112b7565b500390565b600181811c9082168061127557607f821691505b6020821081141561129657634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156112b0576112b06112b7565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610b4357600080fdfea26469706673582212201917f6999b7ad130163c41380f344d3cb8507a809ae0d81a0ede772eec469b6364736f6c63430008070033

Deployed Bytecode

0x60806040526004361061016a5760003560e01c806370a08231116100d15780639c0db5f31161008a578063b203919e11610064578063b203919e14610428578063dd62ed3e1461043d578063f2fde38b14610483578063f53bc835146104a357600080fd5b80639c0db5f3146103d2578063a9059cbb146103f2578063aff41b7b1461041257600080fd5b806370a082311461032657806370db69d61461035c5780637439c2361461037257806395d89b411461039257806396790d4a146103a757806399bf3266146103bc57600080fd5b8063200f67a511610123578063200f67a51461024b57806323b872dd14610260578063313ce567146102805780633bbac5791461029c57806349bd5a5e146102cc5780636c90b57f1461030457600080fd5b806306fdde0314610176578063095ea7b3146101a1578063168e859d146101d15780631693e8d4146101f557806318160ddd146102165780631bde47dc1461022b57600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5061018b6104c3565b604051610198919061119c565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc366004611030565b610555565b6040519015158152602001610198565b3480156101dd57600080fd5b506101e7600a5481565b604051908152602001610198565b34801561020157600080fd5b506006546101c190600160a01b900460ff1681565b34801561022257600080fd5b506000546101e7565b34801561023757600080fd5b506101e7610246366004610f75565b61056b565b34801561025757600080fd5b506101c16105c9565b34801561026c57600080fd5b506101c161027b366004610fef565b6105e1565b34801561028c57600080fd5b5060405160068152602001610198565b3480156102a857600080fd5b506101c16102b7366004610f75565b60076020526000908152604090205460ff1681565b3480156102d857600080fd5b506006546102ec906001600160a01b031681565b6040516001600160a01b039091168152602001610198565b34801561031057600080fd5b5061032461031f36600461105c565b610637565b005b34801561033257600080fd5b506101e7610341366004610f75565b6001600160a01b031660009081526003602052604090205490565b34801561036857600080fd5b506101e7600d5481565b34801561037e57600080fd5b5061032461038d36600461113a565b6106b8565b34801561039e57600080fd5b5061018b6106ed565b3480156103b357600080fd5b506101e76106fc565b3480156103c857600080fd5b506101e7600f5481565b3480156103de57600080fd5b506103246103ed36600461105c565b610752565b3480156103fe57600080fd5b506101c161040d366004611030565b6107ce565b34801561041e57600080fd5b506101e7600e5481565b34801561043457600080fd5b506103246107db565b34801561044957600080fd5b506101e7610458366004610fb6565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561048f57600080fd5b5061032461049e366004610f75565b610aea565b3480156104af57600080fd5b506103246104be366004611155565b610b23565b6060600180546104d290611261565b80601f01602080910402602001604051908101604052809291908181526020018280546104fe90611261565b801561054b5780601f106105205761010080835404028352916020019161054b565b820191906000526020600020905b81548152906001019060200180831161052e57829003601f168201915b5050505050905090565b6000610562338484610b46565b50600192915050565b6001600160a01b038116600090815260096020526040812054421061059257506000919050565b6001600160a01b0382166000908152600960205260409020546001906105b990429061124a565b6105c39190611209565b92915050565b6000600b5460016105da91906111f1565b4310905090565b60006105ee848484610ba7565b6001600160a01b03841660009081526004602090815260408083203384529091529020548281101561061f57600080fd5b61062c8533858403610b46565b506001949350505050565b6005546001600160a01b0316331461064e57600080fd5b60005b82518110156106b3578160086000858481518110610671576106716112cd565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556106ac8161129c565b9050610651565b505050565b6005546001600160a01b031633146106cf57600080fd5b60068054911515600160a01b0260ff60a01b19909216919091179055565b6060600280546104d290611261565b60008061070b6002603c61122b565b600f54610718904261124a565b6107229190611209565b905080610731575050600d5490565b80600e5461073f919061122b565b600d5461074c91906111f1565b91505090565b6005546001600160a01b0316331461076957600080fd5b60005b82518110156106b357816007600085848151811061078c5761078c6112cd565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556107c78161129c565b905061076c565b6000610562338484610ba7565b6005546001600160a01b031633146107f257600080fd5b6006546001600160a01b03161561080857600080fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561085757600080fd5b505afa15801561086b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088f9190610f99565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156108eb57600080fd5b505afa1580156108ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109239190610f99565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561096b57600080fd5b505af115801561097f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109a39190610f99565b60008054308083526003602090815260408085208490556004808352818620737a250d5630b4cf539739df2c5dacb4c659f2488d808852908452828720959095556001600160a01b03871686526008909252808520805460ff191660011790558454905163f305d71960e01b81529182019290925260248101919091526044810183905260648101929092523360848301524260a483015291925063f305d71990479060c4016060604051808303818588803b158015610a6257600080fd5b505af1158015610a76573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a9b919061116e565b5050600680546001600160a81b0319166001600160a01b03841617600160a01b1790555042600f556000546103e890610ad69060019061122b565b610ae09190611209565b600e555043600b55565b6005546001600160a01b03163314610b0157600080fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610b3a57600080fd5b610b4381610e21565b50565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526007602052604090205460ff16158015610be957506001600160a01b03821660009081526007602052604090205460ff16155b610bf257600080fd5b6006546001600160a01b038481169116148015610c2857506001600160a01b03821660009081526008602052604090205460ff16155b15610d25576000610c3b6002603c61122b565b600f54610c48904261124a565b610c529190611209565b90508015610c9057600054600d541015610c8b5780600e54610c74919061122b565b600d6000828254610c8591906111f1565b90915550505b42600f555b600654600160a01b900460ff16610ca657600080fd5b6000610cb06105c9565b905080610ce957600d546001600160a01b038516600090815260036020526040902054610cde9085906111f1565b1115610ce957600080fd5b8015610d13576001600160a01b0384166000908152600760205260409020805460ff191660011790555b610d1c83610e42565b92505050610e16565b600c5460ff16158015610d4257506006546001600160a01b031615155b8015610d5b57506006546001600160a01b038381169116145b15610dbd576001600160a01b03831660009081526009602052604090205442811115610d8657600080fd5b600a54610d9490600161122b565b610d9e90426111f1565b6001600160a01b03851660009081526009602052604090205550610e16565b6001600160a01b03831660009081526009602052604090205442811115610de357600080fd5b600a54610df190600161122b565b610dfb90426111f1565b6001600160a01b038516600090815260096020526040902055505b6106b3838383610e9e565b6103e860005482610e32919061122b565b610e3c9190611209565b600d5550565b600080610e50600a84611209565b9050610e5c818461124a565b60405182815290935060009030907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35090919050565b6001600160a01b03831660009081526003602052604090205481811015610ec457600080fd5b6001600160a01b03808516600090815260036020526040808220858503905591851681529081208054849290610efb9084906111f1565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610f4791815260200190565b60405180910390a350505050565b8035610f60816112f9565b919050565b80358015158114610f6057600080fd5b600060208284031215610f8757600080fd5b8135610f92816112f9565b9392505050565b600060208284031215610fab57600080fd5b8151610f92816112f9565b60008060408385031215610fc957600080fd5b8235610fd4816112f9565b91506020830135610fe4816112f9565b809150509250929050565b60008060006060848603121561100457600080fd5b833561100f816112f9565b9250602084013561101f816112f9565b929592945050506040919091013590565b6000806040838503121561104357600080fd5b823561104e816112f9565b946020939093013593505050565b6000806040838503121561106f57600080fd5b823567ffffffffffffffff8082111561108757600080fd5b818501915085601f83011261109b57600080fd5b81356020828211156110af576110af6112e3565b8160051b604051601f19603f830116810181811086821117156110d4576110d46112e3565b604052838152828101945085830182870184018b10156110f357600080fd5b600096505b8487101561111d5761110981610f55565b8652600196909601959483019483016110f8565b50965061112d9050878201610f65565b9450505050509250929050565b60006020828403121561114c57600080fd5b610f9282610f65565b60006020828403121561116757600080fd5b5035919050565b60008060006060848603121561118357600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b818110156111c9578581018301518582016040015282016111ad565b818111156111db576000604083870101525b50601f01601f1916929092016040019392505050565b60008219821115611204576112046112b7565b500190565b60008261122657634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611245576112456112b7565b500290565b60008282101561125c5761125c6112b7565b500390565b600181811c9082168061127557607f821691505b6020821081141561129657634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156112b0576112b06112b7565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610b4357600080fdfea26469706673582212201917f6999b7ad130163c41380f344d3cb8507a809ae0d81a0ede772eec469b6364736f6c63430008070033

Deployed Bytecode Sourcemap

301:6378:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1234:85:0;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2679:193;;;;;;;;;;-1:-1:-1;2679:193:0;;;;;:::i;:::-;;:::i;:::-;;;5182:14:3;;5175:22;5157:41;;5145:2;5130:18;2679:193:0;5017:187:3;695:33:2;;;;;;;;;;;;;;;;;;;5957:25:3;;;5945:2;5930:18;695:33:2;5811:177:3;522:25:2;;;;;;;;;;-1:-1:-1;522:25:2;;;;-1:-1:-1;;;522:25:2;;;;;;1517:102:0;;;;;;;;;;-1:-1:-1;1572:7:0;1599:12;1517:102;;4000:222:2;;;;;;;;;;-1:-1:-1;4000:222:2;;;;;:::i;:::-;;:::i;6452:116::-;;;;;;;;;;;;;:::i;3108:438:0:-;;;;;;;;;;-1:-1:-1;3108:438:0;;;;;:::i;:::-;;:::i;1424:85::-;;;;;;;;;;-1:-1:-1;1424:85:0;;972:1;6135:36:3;;6123:2;6108:18;1424:85:0;5993:184:3;554:37:2;;;;;;;;;;-1:-1:-1;554:37:2;;;;;:::i;:::-;;;;;;;;;;;;;;;;487:28;;;;;;;;;;-1:-1:-1;487:28:2;;;;-1:-1:-1;;;;;487:28:2;;;;;;-1:-1:-1;;;;;4052:32:3;;;4034:51;;4022:2;4007:18;487:28:2;3888:203:3;6101:238:2;;;;;;;;;;-1:-1:-1;6101:238:2;;;;;:::i;:::-;;:::i;:::-;;1627:160:0;;;;;;;;;;-1:-1:-1;1627:160:0;;;;;:::i;:::-;-1:-1:-1;;;;;1761:18:0;1729:7;1761:18;;;:9;:18;;;;;;;1627:160;787:21:2;;;;;;;;;;;;;;;;6347:97;;;;;;;;;;-1:-1:-1;6347:97:2;;;;;:::i;:::-;;:::i;1327:89:0:-;;;;;;;;;;;;;:::i;5591:302:2:-;;;;;;;;;;;;;:::i;1064:28::-;;;;;;;;;;;;;;;;5901:192;;;;;;;;;;-1:-1:-1;5901:192:2;;;;;:::i;:::-;;:::i;1795:199:0:-;;;;;;;;;;-1:-1:-1;1795:199:0;;;;;:::i;:::-;;:::i;992:35:2:-;;;;;;;;;;;;;;;;1518:887;;;;;;;;;;;;;:::i;2485:186:0:-;;;;;;;;;;-1:-1:-1;2485:186:0;;;;;:::i;:::-;-1:-1:-1;;;;;2636:18:0;;;2604:7;2636:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2485:186;6576:100:2;;;;;;;;;;-1:-1:-1;6576:100:2;;;;;:::i;:::-;;:::i;5373:93::-;;;;;;;;;;-1:-1:-1;5373:93:2;;;;;:::i;:::-;;:::i;1234:85:0:-;1273:13;1306:5;1299:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1234:85;:::o;2679:193::-;2783:4;2805:37;2814:10;2826:7;2835:6;2805:8;:37::i;:::-;-1:-1:-1;2860:4:0;2679:193;;;;:::o;4000:222:2:-;-1:-1:-1;;;;;4110:21:2;;4067:7;4110:21;;;:12;:21;;;;;;4091:15;:40;4087:54;;-1:-1:-1;4140:1:2;;4000:222;-1:-1:-1;4000:222:2:o;4087:54::-;-1:-1:-1;;;;;4160:21:2;;;;;;:12;:21;;;;;;4204:9;;4160:39;;4184:15;;4160:39;:::i;:::-;4159:55;;;;:::i;:::-;4152:62;4000:222;-1:-1:-1;;4000:222:2:o;6452:116::-;6499:4;6538:18;;6559:1;6538:22;;;;:::i;:::-;6523:12;:37;6516:44;;6452:116;:::o;3108:438:0:-;3242:4;3259:36;3269:6;3277:9;3288:6;3259:9;:36::i;:::-;-1:-1:-1;;;;;3335:19:0;;3308:24;3335:19;;;:11;:19;;;;;;;;3355:10;3335:31;;;;;;;;3385:26;;;;3377:35;;;;;;3448:55;3457:6;3465:10;3496:6;3477:16;:25;3448:8;:55::i;:::-;-1:-1:-1;3534:4:0;;3108:438;-1:-1:-1;;;;3108:438:0:o;6101:238:2:-;1178:6;;-1:-1:-1;;;;;1178:6:2;1164:10;:20;1156:29;;;;;;6225:9:::1;6220:112;6244:8;:15;6240:1;:19;6220:112;;;6315:5;6281:18;:31;6300:8;6309:1;6300:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;6281:31:2::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;6281:31:2;:39;;-1:-1:-1;;6281:39:2::1;::::0;::::1;;::::0;;;::::1;::::0;;6261:3:::1;::::0;::::1;:::i;:::-;;;6220:112;;;;6101:238:::0;;:::o;6347:97::-;1178:6;;-1:-1:-1;;;;;1178:6:2;1164:10;:20;1156:29;;;;;;6415:13:::1;:21:::0;;;::::1;;-1:-1:-1::0;;;6415:21:2::1;-1:-1:-1::0;;;;6415:21:2;;::::1;::::0;;;::::1;::::0;;6347:97::o;1327:89:0:-;1368:13;1401:7;1394:14;;;;;:::i;5591:302:2:-;5635:7;;5730:39;864:1;5760:9;5730:39;:::i;:::-;5699:13;;5681:31;;:15;:31;:::i;:::-;5680:90;;;;:::i;:::-;5655:115;-1:-1:-1;5785:19:2;5781:38;;-1:-1:-1;;5813:6:2;;;5591:302::o;5781:38::-;5871:14;5848:20;;:37;;;;:::i;:::-;5839:6;;:46;;;;:::i;:::-;5832:53;;;5591:302;:::o;5901:192::-;1178:6;;-1:-1:-1;;;;;1178:6:2;1164:10;:20;1156:29;;;;;;5992:9:::1;5987:99;6011:8;:15;6007:1;:19;5987:99;;;6069:5;6048;:18;6054:8;6063:1;6054:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;6048:18:2::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;6048:18:2;:26;;-1:-1:-1;;6048:26:2::1;::::0;::::1;;::::0;;;::::1;::::0;;6028:3:::1;::::0;::::1;:::i;:::-;;;5987:99;;1795:199:0::0;1902:4;1924:40;1934:10;1946:9;1957:6;1924:9;:40::i;1518:887:2:-;1178:6;;-1:-1:-1;;;;;1178:6:2;1164:10;:20;1156:29;;;;;;1579:13:::1;::::0;-1:-1:-1;;;;;1579:13:2::1;:27:::0;1571:36:::1;;;::::0;::::1;;1618:12;437:42;-1:-1:-1::0;;;;;1651:24:2::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;1633:56:2::1;;1712:4;437:42;-1:-1:-1::0;;;;;1732:21:2::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1633:133;::::0;-1:-1:-1;;;;;;1633:133:2::1;::::0;;;;;;-1:-1:-1;;;;;4326:15:3;;;1633:133:2::1;::::0;::::1;4308:34:3::0;4378:15;;4358:18;;;4351:43;4243:18;;1633:133:2::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1804:12;::::0;;1795:4:::1;1777:24:::0;;;:9:::1;:24;::::0;;;;;;;:39;;;1827:11:::1;:26:::0;;;;;;437:42:::1;1827:53:::0;;;;;;;;;:68;;;;-1:-1:-1;;;;;1906:24:2;::::1;::::0;;:18:::1;:24:::0;;;;;;:31;;-1:-1:-1;;1906:31:2::1;1933:4;1906:31;::::0;;2053:12;;1948:215;;-1:-1:-1;;;1948:215:2;;;;::::1;4746:34:3::0;;;;4796:18;;;4789:34;;;;4839:18;;;4832:34;;;4882:18;;;4875:34;;;;2112:10:2::1;4925:19:3::0;;;4918:44;2137:15:2::1;4978:19:3::0;;;4971:35;1906:24:2;;-1:-1:-1;1948:32:2::1;::::0;1988:21:::1;::::0;4680:19:3;;1948:215:2::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;2176:13:2::1;:20:::0;;-1:-1:-1;;;;;;2207:20:2;-1:-1:-1;;;;;2176:20:2;::::1;2207::::0;-1:-1:-1;;;2207:20:2::1;::::0;;-1:-1:-1;2256:15:2::1;2240:13;:31:::0;2176:13:::1;2306:12:::0;2349:4:::1;::::0;2306:39:::1;::::0;2176:20;;2306:39:::1;:::i;:::-;2305:48;;;;:::i;:::-;2282:20;:71:::0;-1:-1:-1;2385:12:2::1;2364:18;:33:::0;1518:887::o;6576:100::-;1178:6;;-1:-1:-1;;;;;1178:6:2;1164:10;:20;1156:29;;;;;;6651:6:::1;:17:::0;;-1:-1:-1;;;;;;6651:17:2::1;-1:-1:-1::0;;;;;6651:17:2;;;::::1;::::0;;;::::1;::::0;;6576:100::o;5373:93::-;1178:6;;-1:-1:-1;;;;;1178:6:2;1164:10;:20;1156:29;;;;;;5439:19:::1;5450:7;5439:10;:19::i;:::-;5373:93:::0;:::o;2880:220:0:-;-1:-1:-1;;;;;3008:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;3060:32;;5957:25:3;;;3060:32:0;;5930:18:3;3060:32:0;;;;;;;2880:220;;;:::o;2413:1579:2:-;-1:-1:-1;;;;;2546:11:2;;;;;;:5;:11;;;;;;;;2545:12;:26;;;;-1:-1:-1;;;;;;2562:9:2;;;;;;:5;:9;;;;;;;;2561:10;2545:26;2537:35;;;;;;2613:13;;-1:-1:-1;;;;;2605:21:2;;;2613:13;;2605:21;:48;;;;-1:-1:-1;;;;;;2631:22:2;;;;;;:18;:22;;;;;;;;2630:23;2605:48;2601:1317;;;2703:22;2782:39;864:1;2812:9;2782:39;:::i;:::-;2747:13;;2729:31;;:15;:31;:::i;:::-;2728:94;;;;:::i;:::-;2703:119;-1:-1:-1;2841:18:2;;2837:204;;2893:12;;2884:6;;:21;2880:95;;;2961:14;2938:20;;:37;;;;:::i;:::-;2928:6;;:47;;;;;;;:::i;:::-;;;;-1:-1:-1;;2880:95:2;3010:15;2994:13;:31;2837:204;3094:13;;-1:-1:-1;;;3094:13:2;;;;3086:22;;;;;;3147:12;3162:16;:14;:16::i;:::-;3147:31;;3198:7;3193:55;;3241:6;;-1:-1:-1;;;;;3215:13:2;;;;;;:9;:13;;;;;;:22;;3231:6;;3215:22;:::i;:::-;:32;;3207:41;;;;;;3267:7;3263:29;;;-1:-1:-1;;;;;3276:9:2;;;;;;:5;:9;;;;;:16;;-1:-1:-1;;3276:16:2;3288:4;3276:16;;;3263:29;3316:18;3327:6;3316:10;:18::i;:::-;3307:27;;2655:691;;2601:1317;;;3397:7;;;;3396:8;:39;;;;-1:-1:-1;3408:13:2;;-1:-1:-1;;;;;3408:13:2;:27;;3396:39;:62;;;;-1:-1:-1;3445:13:2;;-1:-1:-1;;;;;3439:19:2;;;3445:13;;3439:19;3396:62;3378:540;;;-1:-1:-1;;;;;3529:18:2;;3507:19;3529:18;;;:12;:18;;;;;;3570:15;:30;-1:-1:-1;3570:30:2;3562:39;;;;;;3655:12;;:24;;3670:9;3655:24;:::i;:::-;3637:42;;:15;:42;:::i;:::-;-1:-1:-1;;;;;3616:18:2;;;;;;:12;:18;;;;;:63;-1:-1:-1;3378:540:2;;;-1:-1:-1;;;;;3756:18:2;;3734:19;3756:18;;;:12;:18;;;;;;3797:15;:30;-1:-1:-1;3797:30:2;3789:39;;;;;;3882:12;;:24;;3897:9;3882:24;:::i;:::-;3864:42;;:15;:42;:::i;:::-;-1:-1:-1;;;;;3843:18:2;;;;;;:12;:18;;;;;:63;-1:-1:-1;3378:540:2;3951:33;3967:4;3973:2;3977:6;3951:15;:33::i;5474:109::-;5571:4;5555:12;;5543:9;:24;;;;:::i;:::-;5542:33;;;;:::i;:::-;5533:6;:42;-1:-1:-1;5474:109:2:o;4230:217::-;4283:7;;4317:11;4326:2;4317:6;:11;:::i;:::-;4303:25;-1:-1:-1;4346:13:2;4303:25;4346:13;;:::i;:::-;4375:40;;5957:25:3;;;4346:13:2;;-1:-1:-1;4407:1:2;;4392:4;;4375:40;;5945:2:3;5930:18;4375:40:2;;;;;;;-1:-1:-1;4433:6:2;;4230:217;-1:-1:-1;4230:217:2:o;2002:475:0:-;-1:-1:-1;;;;;2200:15:0;;2176:21;2200:15;;;:9;:15;;;;;;2234:23;;;;2226:32;;;;;;-1:-1:-1;;;;;2294:15:0;;;;;;;:9;:15;;;;;;2312:22;;;2294:40;;2356:13;;;;;;;;:23;;2328:6;;2294:15;2356:23;;2328:6;;2356:23;:::i;:::-;;;;;;;;2410:2;-1:-1:-1;;;;;2395:26:0;2404:4;-1:-1:-1;;;;;2395:26:0;;2414:6;2395:26;;;;5957:25:3;;5945:2;5930:18;;5811:177;2395:26:0;;;;;;;;2114:363;2002:475;;;:::o;14:134:3:-;82:20;;111:31;82:20;111:31;:::i;:::-;14:134;;;:::o;153:160::-;218:20;;274:13;;267:21;257:32;;247:60;;303:1;300;293:12;318:247;377:6;430:2;418:9;409:7;405:23;401:32;398:52;;;446:1;443;436:12;398:52;485:9;472:23;504:31;529:5;504:31;:::i;:::-;554:5;318:247;-1:-1:-1;;;318:247:3:o;570:251::-;640:6;693:2;681:9;672:7;668:23;664:32;661:52;;;709:1;706;699:12;661:52;741:9;735:16;760:31;785:5;760:31;:::i;826:388::-;894:6;902;955:2;943:9;934:7;930:23;926:32;923:52;;;971:1;968;961:12;923:52;1010:9;997:23;1029:31;1054:5;1029:31;:::i;:::-;1079:5;-1:-1:-1;1136:2:3;1121:18;;1108:32;1149:33;1108:32;1149:33;:::i;:::-;1201:7;1191:17;;;826:388;;;;;:::o;1219:456::-;1296:6;1304;1312;1365:2;1353:9;1344:7;1340:23;1336:32;1333:52;;;1381:1;1378;1371:12;1333:52;1420:9;1407:23;1439:31;1464:5;1439:31;:::i;:::-;1489:5;-1:-1:-1;1546:2:3;1531:18;;1518:32;1559:33;1518:32;1559:33;:::i;:::-;1219:456;;1611:7;;-1:-1:-1;;;1665:2:3;1650:18;;;;1637:32;;1219:456::o;1680:315::-;1748:6;1756;1809:2;1797:9;1788:7;1784:23;1780:32;1777:52;;;1825:1;1822;1815:12;1777:52;1864:9;1851:23;1883:31;1908:5;1883:31;:::i;:::-;1933:5;1985:2;1970:18;;;;1957:32;;-1:-1:-1;;;1680:315:3:o;2000:1202::-;2090:6;2098;2151:2;2139:9;2130:7;2126:23;2122:32;2119:52;;;2167:1;2164;2157:12;2119:52;2207:9;2194:23;2236:18;2277:2;2269:6;2266:14;2263:34;;;2293:1;2290;2283:12;2263:34;2331:6;2320:9;2316:22;2306:32;;2376:7;2369:4;2365:2;2361:13;2357:27;2347:55;;2398:1;2395;2388:12;2347:55;2434:2;2421:16;2456:4;2479:2;2475;2472:10;2469:36;;;2485:18;;:::i;:::-;2531:2;2528:1;2524:10;2563:2;2557:9;2626:2;2622:7;2617:2;2613;2609:11;2605:25;2597:6;2593:38;2681:6;2669:10;2666:22;2661:2;2649:10;2646:18;2643:46;2640:72;;;2692:18;;:::i;:::-;2728:2;2721:22;2778:18;;;2812:15;;;;-1:-1:-1;2847:11:3;;;2877;;;2873:20;;2870:33;-1:-1:-1;2867:53:3;;;2916:1;2913;2906:12;2867:53;2938:1;2929:10;;2948:169;2962:2;2959:1;2956:9;2948:169;;;3019:23;3038:3;3019:23;:::i;:::-;3007:36;;2980:1;2973:9;;;;;3063:12;;;;3095;;2948:169;;;-1:-1:-1;3136:6:3;-1:-1:-1;3161:35:3;;-1:-1:-1;3177:18:3;;;3161:35;:::i;:::-;3151:45;;;;;;2000:1202;;;;;:::o;3207:180::-;3263:6;3316:2;3304:9;3295:7;3291:23;3287:32;3284:52;;;3332:1;3329;3322:12;3284:52;3355:26;3371:9;3355:26;:::i;3392:180::-;3451:6;3504:2;3492:9;3483:7;3479:23;3475:32;3472:52;;;3520:1;3517;3510:12;3472:52;-1:-1:-1;3543:23:3;;3392:180;-1:-1:-1;3392:180:3:o;3577:306::-;3665:6;3673;3681;3734:2;3722:9;3713:7;3709:23;3705:32;3702:52;;;3750:1;3747;3740:12;3702:52;3779:9;3773:16;3763:26;;3829:2;3818:9;3814:18;3808:25;3798:35;;3873:2;3862:9;3858:18;3852:25;3842:35;;3577:306;;;;;:::o;5209:597::-;5321:4;5350:2;5379;5368:9;5361:21;5411:6;5405:13;5454:6;5449:2;5438:9;5434:18;5427:34;5479:1;5489:140;5503:6;5500:1;5497:13;5489:140;;;5598:14;;;5594:23;;5588:30;5564:17;;;5583:2;5560:26;5553:66;5518:10;;5489:140;;;5647:6;5644:1;5641:13;5638:91;;;5717:1;5712:2;5703:6;5692:9;5688:22;5684:31;5677:42;5638:91;-1:-1:-1;5790:2:3;5769:15;-1:-1:-1;;5765:29:3;5750:45;;;;5797:2;5746:54;;5209:597;-1:-1:-1;;;5209:597:3:o;6182:128::-;6222:3;6253:1;6249:6;6246:1;6243:13;6240:39;;;6259:18;;:::i;:::-;-1:-1:-1;6295:9:3;;6182:128::o;6315:217::-;6355:1;6381;6371:132;;6425:10;6420:3;6416:20;6413:1;6406:31;6460:4;6457:1;6450:15;6488:4;6485:1;6478:15;6371:132;-1:-1:-1;6517:9:3;;6315:217::o;6537:168::-;6577:7;6643:1;6639;6635:6;6631:14;6628:1;6625:21;6620:1;6613:9;6606:17;6602:45;6599:71;;;6650:18;;:::i;:::-;-1:-1:-1;6690:9:3;;6537:168::o;6710:125::-;6750:4;6778:1;6775;6772:8;6769:34;;;6783:18;;:::i;:::-;-1:-1:-1;6820:9:3;;6710:125::o;6840:380::-;6919:1;6915:12;;;;6962;;;6983:61;;7037:4;7029:6;7025:17;7015:27;;6983:61;7090:2;7082:6;7079:14;7059:18;7056:38;7053:161;;;7136:10;7131:3;7127:20;7124:1;7117:31;7171:4;7168:1;7161:15;7199:4;7196:1;7189:15;7053:161;;6840:380;;;:::o;7225:135::-;7264:3;-1:-1:-1;;7285:17:3;;7282:43;;;7305:18;;:::i;:::-;-1:-1:-1;7352:1:3;7341:13;;7225:135::o;7365:127::-;7426:10;7421:3;7417:20;7414:1;7407:31;7457:4;7454:1;7447:15;7481:4;7478:1;7471:15;7497:127;7558:10;7553:3;7549:20;7546:1;7539:31;7589:4;7586:1;7579:15;7613:4;7610:1;7603:15;7629:127;7690:10;7685:3;7681:20;7678:1;7671:31;7721:4;7718:1;7711:15;7745:4;7742:1;7735:15;7761:131;-1:-1:-1;;;;;7836:31:3;;7826:42;;7816:70;;7882:1;7879;7872:12

Swarm Source

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