ETH Price: $2,524.88 (+0.31%)
Gas: 0.61 Gwei

Token

GuardianAI (GuardianAI)
 

Overview

Max Total Supply

1,000,000 GuardianAI

Holders

197

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
556.734743173747463707 GuardianAI

Value
$0.00
0x34ab84fc3eae56904d1933f97863abc397511aab
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:
GuardianAI

Compiler Version
v0.8.12+commit.f00d7308

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license
/**
 *Submitted for verification at Etherscan.io on 2023-12-07
*/

// SPDX-License-Identifier: Unlicensed
/**

    $GuardianAI | GuardianAI
    TG: t.me/GuardianAIGroup
    WEB: guardianai.xyz
    BOT: t.me/Guardians_AI_BOT

 ██████╗ ██╗   ██╗ █████╗ ██████╗ ██████╗ ██╗ █████╗ ███╗   ██╗     █████╗ ██╗
██╔════╝ ██║   ██║██╔══██╗██╔══██╗██╔══██╗██║██╔══██╗████╗  ██║    ██╔══██╗██║
██║  ███╗██║   ██║███████║██████╔╝██║  ██║██║███████║██╔██╗ ██║    ███████║██║
██║   ██║██║   ██║██╔══██║██╔══██╗██║  ██║██║██╔══██║██║╚██╗██║    ██╔══██║██║
╚██████╔╝╚██████╔╝██║  ██║██║  ██║██████╔╝██║██║  ██║██║ ╚████║    ██║  ██║██║
    
**/

pragma solidity 0.8.12;

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

interface IERC20 {
    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(
        address recipient,
        uint256 amount
    ) external returns (bool);

    function allowance(
        address owner,
        address spender
    ) external view returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

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

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

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

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

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

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

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

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

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

    function withdrawStuckEther() public onlyOwner {
        require(address(this).balance > 0, "No Ether left to withdraw");
        payable(owner()).transfer(address(this).balance);
    }
}

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

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

    function factory() external pure returns (address);

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

contract GuardianAI is Context, IERC20, Ownable {
    uint256 private constant _totalSupply = 1_000_000e18;
    uint256 private constant onePercent = 10_000e18;
    uint256 private constant minSwap = 2_500e18;
    uint8 private constant _decimals = 18;

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

    uint256 public buyTax;
    uint256 public sellTax;

    uint8 private launch;
    uint8 private inSwapAndLiquify;

    uint256 private launchBlock;
    uint256 public maxTxAmount = 10_000e18; 

    string private constant _name = "GuardianAI";
    string private constant _symbol = "GuardianAI";

    mapping(address => uint256) private _balance;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFeeWallet;

    constructor() {
        uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D // eth mainnet
        );
        WETH = uniswapV2Router.WETH();
        buyTax = 10; // launch tax block 0 1 2
        sellTax = 10; // launch tax block 0 1 2

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

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

        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

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

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

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

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

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

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

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

    function approve(
        address spender,
        uint256 amount
    ) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

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

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

    function openTrading() external onlyOwner {
        launch = 1;
        launchBlock = block.number;
    }

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

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

    function changeTax(
        uint256 newBuyTax,
        uint256 newSellTax
    ) external onlyOwner {
        require(
            newBuyTax <= 30 && newBuyTax > 0,
            "Cannot set buy tax greater than 30% or less than 1%"
        );
        require(
            newSellTax <= 30 && newSellTax > 0,
            "Cannot set sell tax greater than 30% or less than 1%"
        );
        buyTax = newBuyTax;
        sellTax = newSellTax;
    }

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

        uint256 _tax;
        if (_isExcludedFromFeeWallet[from] || _isExcludedFromFeeWallet[to]) {
            _tax = 0;
        } else {
            require(
                launch != 0 && amount <= maxTxAmount,
                "Launch / Max TxAmount 1% at launch"
            );

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

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

            if (from == uniswapV2Pair) {
                _tax = buyTax;
            } else if (to == uniswapV2Pair) {
                uint256 tokensToSwap = _balance[address(this)];
                if (tokensToSwap > minSwap && inSwapAndLiquify == 0) {
                    if (tokensToSwap > onePercent) {
                        tokensToSwap = onePercent;
                    }
                    inSwapAndLiquify = 1;
                    address[] memory path = new address[](2);
                    path[0] = address(this);
                    path[1] = WETH;
                    uniswapV2Router
                        .swapExactTokensForETHSupportingFeeOnTransferTokens(
                            tokensToSwap,
                            0,
                            path,
                            marketingWallet,
                            block.timestamp
                        );
                    inSwapAndLiquify = 0;
                }
                _tax = sellTax;
            } else {
                _tax = 0;
            }
        }

        if (_tax != 0) {
            uint256 taxTokens = (amount * _tax) / 100;
            uint256 transferAmount = amount - taxTokens;

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

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

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"addExcludedWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"changeTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawStuckEther","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

61010060405269021e19e0c9bab24000006006553480156200002057600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350737a250d5630b4cf539739df2c5dacb4c659f2488d6080819052604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa158015620000b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000de9190620002c6565b6001600160a01b0390811660c052600a60028190556003556080516040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa15801562000139573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200015f9190620002c6565b60c0516040516364e329cb60e11b81523060048201526001600160a01b03918216602482015291169063c9c65396906044016020604051808303816000875af1158015620001b1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001d79190620002c6565b6001600160a01b0390811660a0523360e0819052600081815260076020908152604080832069d3c21bcecceda10000009055600982528083208054600160ff1991821681179092553085528285208054909116909117905560088083528184206080519096168085529583528184206000199081905594845282528083209483529390529190912055620002683390565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef69d3c21bcecceda1000000604051620002b891815260200190565b60405180910390a3620002f8565b600060208284031215620002d957600080fd5b81516001600160a01b0381168114620002f157600080fd5b9392505050565b60805160a05160c05160e051611205620003396000396000610c9701526000610c0a015260008181610ad50152610b1801526000610c6101526112056000f3fe6080604052600436106101235760003560e01c80638da5cb5b116100a0578063c9567bf911610064578063c9567bf91461030f578063cc1776d314610324578063dba9d4201461033a578063dd62ed3e1461035a578063f2fde38b146103a057600080fd5b80638da5cb5b146102925780639036ed4d146102ba57806395d89b411461012f578063a32b9e18146102da578063a9059cbb146102ef57600080fd5b80634f7041a5116100e75780634f7041a51461020457806370a082311461021a578063715018a614610250578063751039fc146102675780638c0b5e221461027c57600080fd5b806306fdde031461012f578063095ea7b31461017157806318160ddd146101a157806323b872dd146101c8578063313ce567146101e857600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b50604080518082018252600a815269477561726469616e414960b01b602082015290516101689190610f3f565b60405180910390f35b34801561017d57600080fd5b5061019161018c366004610fb0565b6103c0565b6040519015158152602001610168565b3480156101ad57600080fd5b5069d3c21bcecceda10000005b604051908152602001610168565b3480156101d457600080fd5b506101916101e3366004610fda565b6103d6565b3480156101f457600080fd5b5060405160128152602001610168565b34801561021057600080fd5b506101ba60025481565b34801561022657600080fd5b506101ba610235366004611016565b6001600160a01b031660009081526007602052604090205490565b34801561025c57600080fd5b50610265610428565b005b34801561027357600080fd5b506102656104a5565b34801561028857600080fd5b506101ba60065481565b34801561029e57600080fd5b506000546040516001600160a01b039091168152602001610168565b3480156102c657600080fd5b506102656102d5366004611038565b6104df565b3480156102e657600080fd5b50610265610607565b3480156102fb57600080fd5b5061019161030a366004610fb0565b6106be565b34801561031b57600080fd5b506102656106cb565b34801561033057600080fd5b506101ba60035481565b34801561034657600080fd5b50610265610355366004611016565b610708565b34801561036657600080fd5b506101ba61037536600461105a565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b3480156103ac57600080fd5b506102656103bb366004611016565b610756565b60006103cd338484610789565b50600192915050565b60006103e38484846108ad565b6001600160a01b03841660009081526008602090815260408083203380855292529091205461041e9186916104199086906110a3565b610789565b5060019392505050565b6000546001600160a01b0316331461045b5760405162461bcd60e51b8152600401610452906110ba565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104cf5760405162461bcd60e51b8152600401610452906110ba565b69d3c21bcecceda1000000600655565b6000546001600160a01b031633146105095760405162461bcd60e51b8152600401610452906110ba565b601e821115801561051a5750600082115b6105825760405162461bcd60e51b815260206004820152603360248201527f43616e6e6f742073657420627579207461782067726561746572207468616e20604482015272333025206f72206c657373207468616e20312560681b6064820152608401610452565b601e81111580156105935750600081115b6105fc5760405162461bcd60e51b815260206004820152603460248201527f43616e6e6f74207365742073656c6c207461782067726561746572207468616e60448201527320333025206f72206c657373207468616e20312560601b6064820152608401610452565b600291909155600355565b6000546001600160a01b031633146106315760405162461bcd60e51b8152600401610452906110ba565b600047116106815760405162461bcd60e51b815260206004820152601960248201527f4e6f204574686572206c65667420746f207769746864726177000000000000006044820152606401610452565b600080546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156106bb573d6000803e3d6000fd5b50565b60006103cd3384846108ad565b6000546001600160a01b031633146106f55760405162461bcd60e51b8152600401610452906110ba565b6004805460ff1916600117905543600555565b6000546001600160a01b031633146107325760405162461bcd60e51b8152600401610452906110ba565b6001600160a01b03166000908152600960205260409020805460ff19166001179055565b6000546001600160a01b031633146107805760405162461bcd60e51b8152600401610452906110ba565b6106bb81610e7f565b6001600160a01b0383166107eb5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610452565b6001600160a01b03821661084c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610452565b6001600160a01b0383811660008181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109115760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610452565b633b9aca0081116109575760405162461bcd60e51b815260206004820152601060248201526f135a5b881d1c985b9cd9995c88185b5d60821b6044820152606401610452565b6001600160a01b03831660009081526009602052604081205460ff168061099657506001600160a01b03831660009081526009602052604090205460ff165b156109a357506000610d0e565b60045460ff16158015906109b957506006548211155b610a105760405162461bcd60e51b815260206004820152602260248201527f4c61756e6368202f204d6178205478416d6f756e74203125206174206c61756e6044820152610c6d60f31b6064820152608401610452565b60045460ff6101009091041660011415610ad3576001600160a01b03841660009081526007602052604081208054849290610a4c9084906110a3565b90915550506001600160a01b03831660009081526007602052604081208054849290610a799084906110ef565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610ac591815260200190565b60405180910390a350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b03161415610b165750600254610d0e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b03161415610d0a573060009081526007602052604090205468878678326eac90000081118015610b805750600454610100900460ff16155b15610d005769021e19e0c9bab2400000811115610ba4575069021e19e0c9bab24000005b6004805461ff0019166101001790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610be857610be8611107565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110610c3c57610c3c611107565b6001600160a01b03928316602091820292909201015260405163791ac94760e01b81527f00000000000000000000000000000000000000000000000000000000000000009091169063791ac94790610cc190859060009086907f000000000000000000000000000000000000000000000000000000000000000090429060040161111d565b600060405180830381600087803b158015610cdb57600080fd5b505af1158015610cef573d6000803e3d6000fd5b50506004805461ff00191690555050505b5050600354610d0e565b5060005b8015610e515760006064610d22838561118e565b610d2c91906111ad565b90506000610d3a82856110a3565b6001600160a01b038716600090815260076020526040812080549293508692909190610d679084906110a3565b90915550506001600160a01b03851660009081526007602052604081208054839290610d949084906110ef565b90915550503060009081526007602052604081208054849290610db89084906110ef565b909155505060405182815230906001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610e4291815260200190565b60405180910390a35050610e79565b6001600160a01b03841660009081526007602052604081208054849290610a4c9084906110a3565b50505050565b6001600160a01b038116610ee45760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610452565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600060208083528351808285015260005b81811015610f6c57858101830151858201604001528201610f50565b81811115610f7e576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b0381168114610fab57600080fd5b919050565b60008060408385031215610fc357600080fd5b610fcc83610f94565b946020939093013593505050565b600080600060608486031215610fef57600080fd5b610ff884610f94565b925061100660208501610f94565b9150604084013590509250925092565b60006020828403121561102857600080fd5b61103182610f94565b9392505050565b6000806040838503121561104b57600080fd5b50508035926020909101359150565b6000806040838503121561106d57600080fd5b61107683610f94565b915061108460208401610f94565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6000828210156110b5576110b561108d565b500390565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600082198211156111025761110261108d565b500190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561116d5784516001600160a01b031683529383019391830191600101611148565b50506001600160a01b03969096166060850152505050608001529392505050565b60008160001904831182151516156111a8576111a861108d565b500290565b6000826111ca57634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212205d253b9703c91acc37d184e094f984b47287321b43201ebe78f036b02c44d07a64736f6c634300080c0033

Deployed Bytecode

0x6080604052600436106101235760003560e01c80638da5cb5b116100a0578063c9567bf911610064578063c9567bf91461030f578063cc1776d314610324578063dba9d4201461033a578063dd62ed3e1461035a578063f2fde38b146103a057600080fd5b80638da5cb5b146102925780639036ed4d146102ba57806395d89b411461012f578063a32b9e18146102da578063a9059cbb146102ef57600080fd5b80634f7041a5116100e75780634f7041a51461020457806370a082311461021a578063715018a614610250578063751039fc146102675780638c0b5e221461027c57600080fd5b806306fdde031461012f578063095ea7b31461017157806318160ddd146101a157806323b872dd146101c8578063313ce567146101e857600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b50604080518082018252600a815269477561726469616e414960b01b602082015290516101689190610f3f565b60405180910390f35b34801561017d57600080fd5b5061019161018c366004610fb0565b6103c0565b6040519015158152602001610168565b3480156101ad57600080fd5b5069d3c21bcecceda10000005b604051908152602001610168565b3480156101d457600080fd5b506101916101e3366004610fda565b6103d6565b3480156101f457600080fd5b5060405160128152602001610168565b34801561021057600080fd5b506101ba60025481565b34801561022657600080fd5b506101ba610235366004611016565b6001600160a01b031660009081526007602052604090205490565b34801561025c57600080fd5b50610265610428565b005b34801561027357600080fd5b506102656104a5565b34801561028857600080fd5b506101ba60065481565b34801561029e57600080fd5b506000546040516001600160a01b039091168152602001610168565b3480156102c657600080fd5b506102656102d5366004611038565b6104df565b3480156102e657600080fd5b50610265610607565b3480156102fb57600080fd5b5061019161030a366004610fb0565b6106be565b34801561031b57600080fd5b506102656106cb565b34801561033057600080fd5b506101ba60035481565b34801561034657600080fd5b50610265610355366004611016565b610708565b34801561036657600080fd5b506101ba61037536600461105a565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b3480156103ac57600080fd5b506102656103bb366004611016565b610756565b60006103cd338484610789565b50600192915050565b60006103e38484846108ad565b6001600160a01b03841660009081526008602090815260408083203380855292529091205461041e9186916104199086906110a3565b610789565b5060019392505050565b6000546001600160a01b0316331461045b5760405162461bcd60e51b8152600401610452906110ba565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104cf5760405162461bcd60e51b8152600401610452906110ba565b69d3c21bcecceda1000000600655565b6000546001600160a01b031633146105095760405162461bcd60e51b8152600401610452906110ba565b601e821115801561051a5750600082115b6105825760405162461bcd60e51b815260206004820152603360248201527f43616e6e6f742073657420627579207461782067726561746572207468616e20604482015272333025206f72206c657373207468616e20312560681b6064820152608401610452565b601e81111580156105935750600081115b6105fc5760405162461bcd60e51b815260206004820152603460248201527f43616e6e6f74207365742073656c6c207461782067726561746572207468616e60448201527320333025206f72206c657373207468616e20312560601b6064820152608401610452565b600291909155600355565b6000546001600160a01b031633146106315760405162461bcd60e51b8152600401610452906110ba565b600047116106815760405162461bcd60e51b815260206004820152601960248201527f4e6f204574686572206c65667420746f207769746864726177000000000000006044820152606401610452565b600080546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156106bb573d6000803e3d6000fd5b50565b60006103cd3384846108ad565b6000546001600160a01b031633146106f55760405162461bcd60e51b8152600401610452906110ba565b6004805460ff1916600117905543600555565b6000546001600160a01b031633146107325760405162461bcd60e51b8152600401610452906110ba565b6001600160a01b03166000908152600960205260409020805460ff19166001179055565b6000546001600160a01b031633146107805760405162461bcd60e51b8152600401610452906110ba565b6106bb81610e7f565b6001600160a01b0383166107eb5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610452565b6001600160a01b03821661084c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610452565b6001600160a01b0383811660008181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109115760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610452565b633b9aca0081116109575760405162461bcd60e51b815260206004820152601060248201526f135a5b881d1c985b9cd9995c88185b5d60821b6044820152606401610452565b6001600160a01b03831660009081526009602052604081205460ff168061099657506001600160a01b03831660009081526009602052604090205460ff165b156109a357506000610d0e565b60045460ff16158015906109b957506006548211155b610a105760405162461bcd60e51b815260206004820152602260248201527f4c61756e6368202f204d6178205478416d6f756e74203125206174206c61756e6044820152610c6d60f31b6064820152608401610452565b60045460ff6101009091041660011415610ad3576001600160a01b03841660009081526007602052604081208054849290610a4c9084906110a3565b90915550506001600160a01b03831660009081526007602052604081208054849290610a799084906110ef565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610ac591815260200190565b60405180910390a350505050565b7f0000000000000000000000003ff873a8ddae1d205059bfe2fb89df606d2b04ee6001600160a01b0316846001600160a01b03161415610b165750600254610d0e565b7f0000000000000000000000003ff873a8ddae1d205059bfe2fb89df606d2b04ee6001600160a01b0316836001600160a01b03161415610d0a573060009081526007602052604090205468878678326eac90000081118015610b805750600454610100900460ff16155b15610d005769021e19e0c9bab2400000811115610ba4575069021e19e0c9bab24000005b6004805461ff0019166101001790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610be857610be8611107565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610c3c57610c3c611107565b6001600160a01b03928316602091820292909201015260405163791ac94760e01b81527f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d9091169063791ac94790610cc190859060009086907f0000000000000000000000009f0021ac711d18891466363f362a81cbd5743a8e90429060040161111d565b600060405180830381600087803b158015610cdb57600080fd5b505af1158015610cef573d6000803e3d6000fd5b50506004805461ff00191690555050505b5050600354610d0e565b5060005b8015610e515760006064610d22838561118e565b610d2c91906111ad565b90506000610d3a82856110a3565b6001600160a01b038716600090815260076020526040812080549293508692909190610d679084906110a3565b90915550506001600160a01b03851660009081526007602052604081208054839290610d949084906110ef565b90915550503060009081526007602052604081208054849290610db89084906110ef565b909155505060405182815230906001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610e4291815260200190565b60405180910390a35050610e79565b6001600160a01b03841660009081526007602052604081208054849290610a4c9084906110a3565b50505050565b6001600160a01b038116610ee45760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610452565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600060208083528351808285015260005b81811015610f6c57858101830151858201604001528201610f50565b81811115610f7e576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b0381168114610fab57600080fd5b919050565b60008060408385031215610fc357600080fd5b610fcc83610f94565b946020939093013593505050565b600080600060608486031215610fef57600080fd5b610ff884610f94565b925061100660208501610f94565b9150604084013590509250925092565b60006020828403121561102857600080fd5b61103182610f94565b9392505050565b6000806040838503121561104b57600080fd5b50508035926020909101359150565b6000806040838503121561106d57600080fd5b61107683610f94565b915061108460208401610f94565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6000828210156110b5576110b561108d565b500390565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600082198211156111025761110261108d565b500190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561116d5784516001600160a01b031683529383019391830191600101611148565b50506001600160a01b03969096166060850152505050608001529392505050565b60008160001904831182151516156111a8576111a861108d565b500290565b6000826111ca57634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212205d253b9703c91acc37d184e094f984b47287321b43201ebe78f036b02c44d07a64736f6c634300080c0033

Deployed Bytecode Sourcemap

4057:6972:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6040:83;;;;;;;;;;-1:-1:-1;6110:5:0;;;;;;;;;;;-1:-1:-1;;;6110:5:0;;;;6040:83;;;;6110:5;6040:83;:::i;:::-;;;;;;;;6927:186;;;;;;;;;;-1:-1:-1;6927:186:0;;;;;:::i;:::-;;:::i;:::-;;;1218:14:1;;1211:22;1193:41;;1181:2;1166:18;6927:186:0;1053:187:1;6317:100:0;;;;;;;;;;-1:-1:-1;4152:12:0;6317:100;;;1391:25:1;;;1379:2;1364:18;6317:100:0;1245:177:1;7121:350:0;;;;;;;;;;-1:-1:-1;7121:350:0;;;;;:::i;:::-;;:::i;6226:83::-;;;;;;;;;;-1:-1:-1;6226:83:0;;4310:2;1902:36:1;;1890:2;1875:18;6226:83:0;1760:184:1;4489:21:0;;;;;;;;;;;;;;;;6425:118;;;;;;;;;;-1:-1:-1;6425:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;6518:17:0;6491:7;6518:17;;;:8;:17;;;;;;;6425:118;3181:148;;;;;;;;;;;;;:::i;:::-;;8066:88;;;;;;;;;;;;;:::i;4648:38::-;;;;;;;;;;;;;;;;2576:79;;;;;;;;;;-1:-1:-1;2614:7:0;2641:6;2576:79;;-1:-1:-1;;;;;2641:6:0;;;2286:51:1;;2274:2;2259:18;2576:79:0;2140:203:1;8162:461:0;;;;;;;;;;-1:-1:-1;8162:461:0;;;;;:::i;:::-;;:::i;3337:188::-;;;;;;;;;;;;;:::i;6551:192::-;;;;;;;;;;-1:-1:-1;6551:192:0;;;;;:::i;:::-;;:::i;7822:108::-;;;;;;;;;;;;;:::i;4517:22::-;;;;;;;;;;;;;;;;7938:120;;;;;;;;;;-1:-1:-1;7938:120:0;;;;;:::i;:::-;;:::i;6751:168::-;;;;;;;;;;-1:-1:-1;6751:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;6884:18:0;;;6857:7;6884:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6751:168;2790:109;;;;;;;;;;-1:-1:-1;2790:109:0;;;;;:::i;:::-;;:::i;6927:186::-;7027:4;7044:39;1365:10;7067:7;7076:6;7044:8;:39::i;:::-;-1:-1:-1;7101:4:0;6927:186;;;;:::o;7121:350::-;7253:4;7270:36;7280:6;7288:9;7299:6;7270:9;:36::i;:::-;-1:-1:-1;;;;;7388:19:0;;;;;;:11;:19;;;;;;;;1365:10;7388:33;;;;;;;;;7317:124;;7340:6;;7388:42;;7424:6;;7388:42;:::i;:::-;7317:8;:124::i;:::-;-1:-1:-1;7459:4:0;7121:350;;;;;:::o;3181:148::-;2703:6;;-1:-1:-1;;;;;2703:6:0;1365:10;2703:22;2695:67;;;;-1:-1:-1;;;2695:67:0;;;;;;;:::i;:::-;;;;;;;;;3288:1:::1;3272:6:::0;;3251:40:::1;::::0;-1:-1:-1;;;;;3272:6:0;;::::1;::::0;3251:40:::1;::::0;3288:1;;3251:40:::1;3319:1;3302:19:::0;;-1:-1:-1;;;;;;3302:19:0::1;::::0;;3181:148::o;8066:88::-;2703:6;;-1:-1:-1;;;;;2703:6:0;1365:10;2703:22;2695:67;;;;-1:-1:-1;;;2695:67:0;;;;;;;:::i;:::-;4152:12:::1;8120:11;:26:::0;8066:88::o;8162:461::-;2703:6;;-1:-1:-1;;;;;2703:6:0;1365:10;2703:22;2695:67;;;;-1:-1:-1;;;2695:67:0;;;;;;;:::i;:::-;8310:2:::1;8297:9;:15;;:32;;;;;8328:1;8316:9;:13;8297:32;8275:133;;;::::0;-1:-1:-1;;;8275:133:0;;3691:2:1;8275:133:0::1;::::0;::::1;3673:21:1::0;3730:2;3710:18;;;3703:30;3769:34;3749:18;;;3742:62;-1:-1:-1;;;3820:18:1;;;3813:49;3879:19;;8275:133:0::1;3489:415:1::0;8275:133:0::1;8455:2;8441:10;:16;;:34;;;;;8474:1;8461:10;:14;8441:34;8419:136;;;::::0;-1:-1:-1;;;8419:136:0;;4111:2:1;8419:136:0::1;::::0;::::1;4093:21:1::0;4150:2;4130:18;;;4123:30;4189:34;4169:18;;;4162:62;-1:-1:-1;;;4240:18:1;;;4233:50;4300:19;;8419:136:0::1;3909:416:1::0;8419:136:0::1;8566:6;:18:::0;;;;8595:7:::1;:20:::0;8162:461::o;3337:188::-;2703:6;;-1:-1:-1;;;;;2703:6:0;1365:10;2703:22;2695:67;;;;-1:-1:-1;;;2695:67:0;;;;;;;:::i;:::-;3427:1:::1;3403:21;:25;3395:63;;;::::0;-1:-1:-1;;;3395:63:0;;4532:2:1;3395:63:0::1;::::0;::::1;4514:21:1::0;4571:2;4551:18;;;4544:30;4610:27;4590:18;;;4583:55;4655:18;;3395:63:0::1;4330:349:1::0;3395:63:0::1;2614:7:::0;2641:6;;3469:48:::1;::::0;-1:-1:-1;;;;;2641:6:0;;;;3495:21:::1;3469:48:::0;::::1;;;::::0;3495:21;;3469:48;2614:7;3469:48;3495:21;2641:6;3469:48;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;3337:188::o:0;6551:192::-;6654:4;6671:42;1365:10;6695:9;6706:6;6671:9;:42::i;7822:108::-;2703:6;;-1:-1:-1;;;;;2703:6:0;1365:10;2703:22;2695:67;;;;-1:-1:-1;;;2695:67:0;;;;;;;:::i;:::-;7875:6:::1;:10:::0;;-1:-1:-1;;7875:10:0::1;7884:1;7875:10;::::0;;7910:12:::1;7896:11;:26:::0;7822:108::o;7938:120::-;2703:6;;-1:-1:-1;;;;;2703:6:0;1365:10;2703:22;2695:67;;;;-1:-1:-1;;;2695:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8011:32:0::1;;::::0;;;:24:::1;:32;::::0;;;;:39;;-1:-1:-1;;8011:39:0::1;8046:4;8011:39;::::0;;7938:120::o;2790:109::-;2703:6;;-1:-1:-1;;;;;2703:6:0;1365:10;2703:22;2695:67;;;;-1:-1:-1;;;2695:67:0;;;;;;;:::i;:::-;2863:28:::1;2882:8;2863:18;:28::i;7479:335::-:0;-1:-1:-1;;;;;7572:19:0;;7564:68;;;;-1:-1:-1;;;7564:68:0;;4886:2:1;7564:68:0;;;4868:21:1;4925:2;4905:18;;;4898:30;4964:34;4944:18;;;4937:62;-1:-1:-1;;;5015:18:1;;;5008:34;5059:19;;7564:68:0;4684:400:1;7564:68:0;-1:-1:-1;;;;;7651:21:0;;7643:68;;;;-1:-1:-1;;;7643:68:0;;5291:2:1;7643:68:0;;;5273:21:1;5330:2;5310:18;;;5303:30;5369:34;5349:18;;;5342:62;-1:-1:-1;;;5420:18:1;;;5413:32;5462:19;;7643:68:0;5089:398:1;7643:68:0;-1:-1:-1;;;;;7722:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7774:32;;1391:25:1;;;7774:32:0;;1364:18:1;7774:32:0;;;;;;;7479:335;;;:::o;8631:2358::-;-1:-1:-1;;;;;8719:18:0;;8711:68;;;;-1:-1:-1;;;8711:68:0;;5694:2:1;8711:68:0;;;5676:21:1;5733:2;5713:18;;;5706:30;5772:34;5752:18;;;5745:62;-1:-1:-1;;;5823:18:1;;;5816:35;5868:19;;8711:68:0;5492:401:1;8711:68:0;8807:3;8798:6;:12;8790:41;;;;-1:-1:-1;;;8790:41:0;;6100:2:1;8790:41:0;;;6082:21:1;6139:2;6119:18;;;6112:30;-1:-1:-1;;;6158:18:1;;;6151:46;6214:18;;8790:41:0;5898:340:1;8790:41:0;-1:-1:-1;;;;;8871:30:0;;8844:12;8871:30;;;:24;:30;;;;;;;;;:62;;-1:-1:-1;;;;;;8905:28:0;;;;;;:24;:28;;;;;;;;8871:62;8867:1569;;;-1:-1:-1;8957:1:0;8867:1569;;;9017:6;;;;:11;;;;:36;;;9042:11;;9032:6;:21;;9017:36;8991:132;;;;-1:-1:-1;;;8991:132:0;;6445:2:1;8991:132:0;;;6427:21:1;6484:2;6464:18;;;6457:30;6523:34;6503:18;;;6496:62;-1:-1:-1;;;6574:18:1;;;6567:32;6616:19;;8991:132:0;6243:398:1;8991:132:0;9144:16;;;;;;;;;:21;9140:204;;;-1:-1:-1;;;;;9186:14:0;;;;;;:8;:14;;;;;:24;;9204:6;;9186:14;:24;;9204:6;;9186:24;:::i;:::-;;;;-1:-1:-1;;;;;;;9229:12:0;;;;;;:8;:12;;;;;:22;;9245:6;;9229:12;:22;;9245:6;;9229:22;:::i;:::-;;;;;;;;9292:2;-1:-1:-1;;;;;9277:26:0;9286:4;-1:-1:-1;;;;;9277:26:0;;9296:6;9277:26;;;;1391:25:1;;1379:2;1364:18;;1245:177;9277:26:0;;;;;;;;9322:7;8631:2358;;;:::o;9140:204::-;9372:13;-1:-1:-1;;;;;9364:21:0;:4;-1:-1:-1;;;;;9364:21:0;;9360:1065;;;-1:-1:-1;9413:6:0;;9360:1065;;;9451:13;-1:-1:-1;;;;;9445:19:0;:2;-1:-1:-1;;;;;9445:19:0;;9441:984;;;9525:4;9485:20;9508:23;;;:8;:23;;;;;;4260:8;9554:22;;:47;;;;-1:-1:-1;9580:16:0;;;;;;;:21;9554:47;9550:778;;;4209:9;9630:12;:25;9626:107;;;-1:-1:-1;4209:9:0;9626:107;9755:16;:20;;-1:-1:-1;;9755:20:0;;;;;9822:16;;;9836:1;9822:16;;;;;;;;-1:-1:-1;;9822:16:0;;;;;;;;;;-1:-1:-1;9822:16:0;9798:40;;9879:4;9861;9866:1;9861:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;9861:23:0;;;-1:-1:-1;;;;;9861:23:0;;;;;9917:4;9907;9912:1;9907:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;9907:14:0;;;:7;;;;;;;;;:14;9944:321;;-1:-1:-1;;;9944:321:0;;:15;:92;;;;;;:321;;10067:12;;10110:1;;10142:4;;10177:15;;10223;;9944:321;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10288:16:0;:20;;-1:-1:-1;;10288:20:0;;;-1:-1:-1;;;9550:778:0;-1:-1:-1;;10353:7:0;;9441:984;;;-1:-1:-1;10408:1:0;9441:984;10452:9;;10448:534;;10478:17;10516:3;10499:13;10508:4;10499:6;:13;:::i;:::-;10498:21;;;;:::i;:::-;10478:41;-1:-1:-1;10534:22:0;10559:18;10478:41;10559:6;:18;:::i;:::-;-1:-1:-1;;;;;10594:14:0;;;;;;:8;:14;;;;;:24;;10534:43;;-1:-1:-1;10612:6:0;;10594:14;;;:24;;10612:6;;10594:24;:::i;:::-;;;;-1:-1:-1;;;;;;;10633:12:0;;;;;;:8;:12;;;;;:30;;10649:14;;10633:12;:30;;10649:14;;10633:30;:::i;:::-;;;;-1:-1:-1;;10695:4:0;10678:23;;;;:8;:23;;;;;:36;;10705:9;;10678:23;:36;;10705:9;;10678:36;:::i;:::-;;;;-1:-1:-1;;10734:40:0;;1391:25:1;;;10757:4:0;;-1:-1:-1;;;;;10734:40:0;;;;;1379:2:1;1364:18;10734:40:0;;;;;;;10809:2;-1:-1:-1;;;;;10794:34:0;10803:4;-1:-1:-1;;;;;10794:34:0;;10813:14;10794:34;;;;1391:25:1;;1379:2;1364:18;;1245:177;10794:34:0;;;;;;;;10463:377;;10448:534;;;-1:-1:-1;;;;;10861:14:0;;;;;;:8;:14;;;;;:24;;10879:6;;10861:14;:24;;10879:6;;10861:24;:::i;10448:534::-;8700:2289;8631:2358;;;:::o;2907:266::-;-1:-1:-1;;;;;2995:22:0;;2973:110;;;;-1:-1:-1;;;2973:110:0;;8633:2:1;2973:110:0;;;8615:21:1;8672:2;8652:18;;;8645:30;8711:34;8691:18;;;8684:62;-1:-1:-1;;;8762:18:1;;;8755:36;8808:19;;2973:110:0;8431:402:1;2973:110:0;3120:6;;;3099:38;;-1:-1:-1;;;;;3099:38:0;;;;3120:6;;;3099:38;;;3148:6;:17;;-1:-1:-1;;;;;;3148:17:0;-1:-1:-1;;;;;3148:17:0;;;;;;;;;;2907:266::o;14:597:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:173::-;684:20;;-1:-1:-1;;;;;733:31:1;;723:42;;713:70;;779:1;776;769:12;713:70;616:173;;;:::o;794:254::-;862:6;870;923:2;911:9;902:7;898:23;894:32;891:52;;;939:1;936;929:12;891:52;962:29;981:9;962:29;:::i;:::-;952:39;1038:2;1023:18;;;;1010:32;;-1:-1:-1;;;794:254:1:o;1427:328::-;1504:6;1512;1520;1573:2;1561:9;1552:7;1548:23;1544:32;1541:52;;;1589:1;1586;1579:12;1541:52;1612:29;1631:9;1612:29;:::i;:::-;1602:39;;1660:38;1694:2;1683:9;1679:18;1660:38;:::i;:::-;1650:48;;1745:2;1734:9;1730:18;1717:32;1707:42;;1427:328;;;;;:::o;1949:186::-;2008:6;2061:2;2049:9;2040:7;2036:23;2032:32;2029:52;;;2077:1;2074;2067:12;2029:52;2100:29;2119:9;2100:29;:::i;:::-;2090:39;1949:186;-1:-1:-1;;;1949:186:1:o;2348:248::-;2416:6;2424;2477:2;2465:9;2456:7;2452:23;2448:32;2445:52;;;2493:1;2490;2483:12;2445:52;-1:-1:-1;;2516:23:1;;;2586:2;2571:18;;;2558:32;;-1:-1:-1;2348:248:1:o;2601:260::-;2669:6;2677;2730:2;2718:9;2709:7;2705:23;2701:32;2698:52;;;2746:1;2743;2736:12;2698:52;2769:29;2788:9;2769:29;:::i;:::-;2759:39;;2817:38;2851:2;2840:9;2836:18;2817:38;:::i;:::-;2807:48;;2601:260;;;;;:::o;2866:127::-;2927:10;2922:3;2918:20;2915:1;2908:31;2958:4;2955:1;2948:15;2982:4;2979:1;2972:15;2998:125;3038:4;3066:1;3063;3060:8;3057:34;;;3071:18;;:::i;:::-;-1:-1:-1;3108:9:1;;2998:125::o;3128:356::-;3330:2;3312:21;;;3349:18;;;3342:30;3408:34;3403:2;3388:18;;3381:62;3475:2;3460:18;;3128:356::o;6646:128::-;6686:3;6717:1;6713:6;6710:1;6707:13;6704:39;;;6723:18;;:::i;:::-;-1:-1:-1;6759:9:1;;6646:128::o;6911:127::-;6972:10;6967:3;6963:20;6960:1;6953:31;7003:4;7000:1;6993:15;7027:4;7024:1;7017:15;7043:988;7313:4;7361:3;7350:9;7346:19;7392:6;7381:9;7374:25;7418:2;7456:6;7451:2;7440:9;7436:18;7429:34;7499:3;7494:2;7483:9;7479:18;7472:31;7523:6;7558;7552:13;7589:6;7581;7574:22;7627:3;7616:9;7612:19;7605:26;;7666:2;7658:6;7654:15;7640:29;;7687:1;7697:195;7711:6;7708:1;7705:13;7697:195;;;7776:13;;-1:-1:-1;;;;;7772:39:1;7760:52;;7867:15;;;;7832:12;;;;7808:1;7726:9;7697:195;;;-1:-1:-1;;;;;;;7948:32:1;;;;7943:2;7928:18;;7921:60;-1:-1:-1;;;8012:3:1;7997:19;7990:35;7909:3;7043:988;-1:-1:-1;;;7043:988:1:o;8036:168::-;8076:7;8142:1;8138;8134:6;8130:14;8127:1;8124:21;8119:1;8112:9;8105:17;8101:45;8098:71;;;8149:18;;:::i;:::-;-1:-1:-1;8189:9:1;;8036:168::o;8209:217::-;8249:1;8275;8265:132;;8319:10;8314:3;8310:20;8307:1;8300:31;8354:4;8351:1;8344:15;8382:4;8379:1;8372:15;8265:132;-1:-1:-1;8411:9:1;;8209:217::o

Swarm Source

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