ETH Price: $2,383.46 (-1.08%)

Token

Hackerville (HACK)
 

Overview

Max Total Supply

137,000,000 HACK

Holders

30

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

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:
HACK

Compiler Version
v0.8.16+commit.07a7930e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-08-06
*/

/*
https://www.hackerville.co/

https://t.me/hackervilleuniverse

Welcome to Hackerville!
In a hidden corner of the digital world, there existed a place called Hackerville.
A haven for curious minds and coding prodigies, it was a sanctuary where lines of
code formed constellations in the virtual night sky.

▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▓▓▒▒▒▓▓▓▓▓▓▓▓▒▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▓▒▒▓▓▓▓▓▓▓▓▓▒▒▓▒▒▒▒▒▓▓▒▒▒▒▒▒▒▒▒▒▒▒▓▓▓▒▒▒▒▓▒
▒▒▒▒░▒▒▒▒░▒▒▒▒░▒▒▒▒░▒▒▒▒▒▒▒▒▒░▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▓▓▓▓▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██████████████████████████████████████████████████
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓███████████▓█████████████████████████████████████
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▒▒▒▒▒▒▒▒▒▓▓▓▓▓▓▓▓▓▓▓▓▓█▓█▓▓▓▓██▓████████████████████████████████████
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▒▒░░░░▒▓▒░░░░▒▒█▓▓▓▓▓█████████▓████▓▓██████████████████████████████████
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▒░░░░░░░▓▓▓▒░░░▒▓▓▓▓▓▓███████████▓██▓▓▓███▓██████████████████████████████
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▒░░░░░░░░▒▓▓▓▒░░▒▓▓▓▓▓▓███████████████▓▓█▓███▓█████████████████████████████
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░▒▒▒▒▒▒▒▒▓▓▓▓▓▒▒▓▓▓▓▓██████████████████████████████████████████████████████
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▒░▒▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█████████████████████▓▓█▓█▓████████████████████████████
▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░▒▒▓▓▓▓▓▓▓▓▓▓▓▓▓▓██▓▓▓▓██████████▓▓▓▓████████████████████████████████████
▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░▒▓▓▓▓▓▓▓█▓▓▓▓██▒░░░░▒▒█████▓░░░░░▒████▓██████████████████████████████
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▒░░░░░░▒▓▓▓▓▓▓▓▓▓▓█████▓▒▒▒▒▓█▓▓██▓▒▒▒▒▓█████▓▓█████████████████████████████
██▓▓▓▓▓▓▓▓▓▓█▓▓▒░░░░▒▓█▓▓▒▒▒▓▓▓███▒▒▓▓▓▓▒░░░░░░░░░▓▓▓▒▒░▒███▓▓▓███████████████████████████
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▒░░░▓▓▒▒░░░▒▓▓█████░░░░░░░░░░░░░░░░░░░░░▓███▓███▓█████████████████████████
███▓▓▓▓▓▓▓▓▓▓▓▓█▓▓▒▒▒░░░░▒▒▓▓▓▓█▓███▒░░░░░░░░░░░░░░░░░░▓███▓▓▓▓▓▓█████████████████████████
████▓████▓▓▓▓█▓███▓▓▓▒▒▓▓▓██████████▓▒▒░░░░░░░░░░░░░▒▒▓▓▓▓▓▓██████████████████████████████
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓███▓▓▓▓▓██▓▓▓▓▓█▓██▓▓▒░░░░░░░░░▒▓▓█▓▓▓▓▓▓▓███▓█████████████████████████
█████████████████▓▓▓▓▓▓▓▓▓▓▓▓▓▓█▓▓▓▓▓█▓▓▓▓▒▒░░░▒▒██▓█▓▓▓███▓██████████████████████████████
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▓▓▒▒▓▒▓▒▒▓▒▓▒▒▓▓▓▒▒▒▒▓▓▒▓▓▓▓▒▓▒▒▓███▓▓█████▓▓█████████████▓▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
▒▒▒▒▒▒▒▒▒▒▒▒▒▓███▒▒▓▒▓▒▒▓▒▓▒▒▓▒▓▒▒▒▒▓▓▒▓▓▓▓▒▓▒▒██▓██▓▓█▓███▓▓██████████▓▓██▓▒▒▒▒▒▒▒▒▒▒▒▒▒▒
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█▓▓█▓▓▓█▓▓█▓▓█▓▓▓▓▓▓▓▓▓███▓▓████████████████████████▓▓▓▓▓▓▓▓▓▓▓▓▓▓

*/


// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.8.16;
 
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 renounceOwnership() public virtual onlyOwner {
    //    emit OwnershipTransferred(_owner, address(0));
    //     _owner = address(0);
    }
 
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
 
}
 
library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }
 
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }
 
    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }
 
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }
 
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }
 
    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }
}
 
interface IUniswapV2Factory {
    function createPair(address tokenA, address tokenB)
        external
        returns (address pair);
}
 
interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;
 
    function factory() external pure returns (address);
 
    function WETH() external pure returns (address);
 
    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );
}
 
contract HACK is Context, IERC20, Ownable {
 
    using SafeMath for uint256;
 
    string private constant _name = "Hackerville";
    string private constant _symbol = "HACK";
    uint8 private constant _decimals = 9;
 
    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;

    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 137000000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));

    uint256 private _tFeeTotal;
    uint256 private _redisFeeOnBuy = 0;  
    uint256 private _taxFeeOnBuy = 21;
    uint256 private _redisFeeOnSell = 0;
    uint256 private _taxFeeOnSell = 33;
    
    uint256 private _redisFee = _redisFeeOnSell;
    uint256 private _taxFee = _taxFeeOnSell;
 
    uint256 private _previousredisFee = _redisFee;
    uint256 private _previoustaxFee = _taxFee;
 
    mapping (address => uint256) public _buyMap; 
    address payable private _marketingAddress = payable(0x58AE490aCA4e5500cc087A3330ffA115eDd0B168);
 
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
 
    bool private swapEnabled = true;
    bool private limitsInEffect = true;
    bool private tradingOpen = false;
    bool private inSwap = false;
 
    uint256 public _maxTxAmount = 4110000 * 10**9; 
    uint256 public _maxWalletSize = 4110000 * 10**9; 
    uint256 public _swapTokensAtAmount = 274000 * 10**9;
    uint256 public _maxSwapAmount = 1370000 * 10**9;
 
    event MaxTxAmountUpdated(uint256 _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
 
    constructor() {
        
        // set owner
        _rOwned[_msgSender()] = _rTotal;

        // set router address
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        // exclude from fees owner & contract
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_marketingAddress] = true;

        // create & mine coin
        emit Transfer(address(0), _msgSender(), _tTotal);
    }
 
    function name() public pure returns (string memory) {
        return _name;
    }
 
    function symbol() public pure returns (string memory) {
        return _symbol;
    }
 
    function decimals() public pure returns (uint8) {
        return _decimals;
    }
 
    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }
 
    function balanceOf(address account) public view override returns (uint256) {
        return tokenFromReflection(_rOwned[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()].sub(
                amount,
                "ERC20: transfer amount exceeds allowance"
            )
        );
        return true;
    }
 
    function tokenFromReflection(uint256 rAmount)
        private
        view
        returns (uint256)
    {
        require(
            rAmount <= _rTotal,
            "Amount must be less than total reflections"
        );
        uint256 currentRate = _getRate();
        return rAmount.div(currentRate);
    }
 
    function removeAllFee() private {
        if (_redisFee == 0 && _taxFee == 0) return;
 
        _previousredisFee = _redisFee;
        _previoustaxFee = _taxFee;
 
        _redisFee = 0;
        _taxFee = 0;
    }
 
    function restoreAllFee() private {
        _redisFee = _previousredisFee;
        _taxFee = _previoustaxFee;
    }
 
    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
 
    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
 
        if (from != owner() && to != owner()) {
 
            // Check if trading has started
            if (!tradingOpen) {
                require(from == owner(), "TOKEN: This account cannot send tokens until trading is enabled");
            }

            // Check if limits are required
            if(limitsInEffect) {
                require(amount <= _maxTxAmount, "TOKEN: Max Transaction Limit");
 
                if(to != uniswapV2Pair) {
                    require(balanceOf(to) + amount < _maxWalletSize, "TOKEN: Balance exceeds wallet size!");
                }
            }
 
            uint256 contractTokenBalance = balanceOf(address(this));
            bool canSwap = contractTokenBalance >= _swapTokensAtAmount;
 
            if(contractTokenBalance >= _maxSwapAmount)
            {
                contractTokenBalance = _maxSwapAmount;
            }
 
            if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
 
        bool takeFee = true;
 
        // Set fee to false if it's a transfer only
        if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) {
            takeFee = false;
        } else {
            //Set Fee for Buys
            if(from == uniswapV2Pair && to != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnBuy;
                _taxFee = _taxFeeOnBuy;
            }
 
            //Set Fee for Sells
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnSell;
                _taxFee = _taxFeeOnSell;
            }
 
        }
 
        _tokenTransfer(from, to, amount, takeFee);
    }
 
    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
 
    function sendETHToFee(uint256 amount) private {
        _marketingAddress.transfer(amount);
    }
 
    function setTrading(bool _tradingOpen) public onlyOwner {
        tradingOpen = _tradingOpen;
    }
 
    function manualswap() external {
        require(_msgSender() == _marketingAddress);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }
 
    function manualsend() external {
        require(_msgSender() == _marketingAddress);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }
 
    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        bool takeFee
    ) private {
        if (!takeFee) removeAllFee();
        _transferStandard(sender, recipient, amount);
        if (!takeFee) restoreAllFee();
    }
 
    function _transferStandard(
        address sender,
        address recipient,
        uint256 tAmount
    ) private {
        (
            uint256 rAmount,
            uint256 rTransferAmount,
            uint256 rFee,
            uint256 tTransferAmount,
            uint256 tFee,
            uint256 tTeam
        ) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }
 
    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate = _getRate();
        uint256 rTeam = tTeam.mul(currentRate);
        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }
 
    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }
 
    receive() external payable {}
 
    function _getValues(uint256 tAmount)
        private
        view
        returns (
            uint256,
            uint256,
            uint256,
            uint256,
            uint256,
            uint256
        )
    {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) =
            _getTValues(tAmount, _redisFee, _taxFee);
        uint256 currentRate = _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) =
            _getRValues(tAmount, tFee, tTeam, currentRate);
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }
 
    function _getTValues(
        uint256 tAmount,
        uint256 redisFee,
        uint256 taxFee
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 tFee = tAmount.mul(redisFee).div(100);
        uint256 tTeam = tAmount.mul(taxFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
        return (tTransferAmount, tFee, tTeam);
    }
 
    function _getRValues(
        uint256 tAmount,
        uint256 tFee,
        uint256 tTeam,
        uint256 currentRate
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
        return (rAmount, rTransferAmount, rFee);
    }
 
    function _getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }
 
    function _getCurrentSupply() private view returns (uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }
 
    function setFee(uint256 redisFeeOnBuy, uint256 redisFeeOnSell, uint256 taxFeeOnBuy, uint256 taxFeeOnSell) public onlyOwner {
        _redisFeeOnBuy = redisFeeOnBuy;
        _redisFeeOnSell = redisFeeOnSell;
        _taxFeeOnBuy = taxFeeOnBuy;
        _taxFeeOnSell = taxFeeOnSell;

    }

    function removeHackLimits() public onlyOwner {
        limitsInEffect = false;
    }

    function enableHackTrading() public onlyOwner {
        tradingOpen = true;
    }
 
    function toggleSwap(bool _swapEnabled) public onlyOwner {
        swapEnabled = _swapEnabled;
    }
}

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":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","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":"","type":"address"}],"name":"_buyMap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxSwapAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableHackTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeHackLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"redisFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"redisFeeOnSell","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_tradingOpen","type":"bool"}],"name":"setTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","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":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526200001a6701e6b8c62e3a800060001962000351565b620000289060001962000374565b6006556000600881905560156009819055600a8290556021600b819055600c839055600d819055600e92909255600f91909155601180546001600160a01b0319167358ae490aca4e5500cc087a3330ffa115edd0b1681790556013805463ffffffff60a01b191661010160a01b179055660e9a05f206e0006014819055905565f93398ab20006016556604de01fb57a000601755348015620000c957600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506006543360009081526002602090815260409182902092909255601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155815163c45a015560e01b815291519092839263c45a015592600480830193928290030181865afa15801562000187573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001ad91906200039c565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001fb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200022191906200039c565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200026f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200029591906200039c565b601380546001600160a01b0319166001600160a01b03928316179055600080548216815260056020526040808220805460ff1990811660019081179092553084528284208054821683179055601154909416835291208054909216179055336001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6701e6b8c62e3a80006040516200034291815260200190565b60405180910390a350620003ce565b6000826200036f57634e487b7160e01b600052601260045260246000fd5b500690565b818103818111156200039657634e487b7160e01b600052601160045260246000fd5b92915050565b600060208284031215620003af57600080fd5b81516001600160a01b0381168114620003c757600080fd5b9392505050565b6118b380620003de6000396000f3fe6080604052600436106101855760003560e01c80637d1db4a5116100d1578063975f305d1161008a578063c3c8cd8011610064578063c3c8cd8014610470578063dd62ed3e14610485578063e06bd4a5146104cb578063f2fde38b146104e157600080fd5b8063975f305d1461041b578063a2a957bb14610430578063a9059cbb1461045057600080fd5b80637d1db4a5146103575780637f2feddc1461036d5780638da5cb5b1461039a5780638f70ccf7146103b85780638f9a55c0146103d857806395d89b41146103ee57600080fd5b8063313ce5671161013e5780636d8aa8f8116101185780636d8aa8f8146102ed5780636fc3eaec1461030d57806370a0823114610322578063715018a61461034257600080fd5b8063313ce5671461029a57806349bd5a5e146102b65780636beece2f146102d657600080fd5b806306fdde0314610191578063095ea7b3146101d75780631694505e1461020757806318160ddd1461023f57806323b872dd146102645780632fd689e31461028457600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b5060408051808201909152600b81526a4861636b657276696c6c6560a81b60208201525b6040516101ce9190611585565b60405180910390f35b3480156101e357600080fd5b506101f76101f23660046115e8565b610501565b60405190151581526020016101ce565b34801561021357600080fd5b50601254610227906001600160a01b031681565b6040516001600160a01b0390911681526020016101ce565b34801561024b57600080fd5b506701e6b8c62e3a80005b6040519081526020016101ce565b34801561027057600080fd5b506101f761027f366004611614565b610518565b34801561029057600080fd5b5061025660165481565b3480156102a657600080fd5b50604051600981526020016101ce565b3480156102c257600080fd5b50601354610227906001600160a01b031681565b3480156102e257600080fd5b506102eb610581565b005b3480156102f957600080fd5b506102eb610308366004611655565b6105c9565b34801561031957600080fd5b506102eb610611565b34801561032e57600080fd5b5061025661033d366004611677565b61063e565b34801561034e57600080fd5b506102eb610660565b34801561036357600080fd5b5061025660145481565b34801561037957600080fd5b50610256610388366004611677565b60106020526000908152604090205481565b3480156103a657600080fd5b506000546001600160a01b0316610227565b3480156103c457600080fd5b506102eb6103d3366004611655565b61068c565b3480156103e457600080fd5b5061025660155481565b3480156103fa57600080fd5b506040805180820190915260048152634841434b60e01b60208201526101c1565b34801561042757600080fd5b506102eb6106d4565b34801561043c57600080fd5b506102eb61044b366004611694565b61070d565b34801561045c57600080fd5b506101f761046b3660046115e8565b61074b565b34801561047c57600080fd5b506102eb610758565b34801561049157600080fd5b506102566104a03660046116c6565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156104d757600080fd5b5061025660175481565b3480156104ed57600080fd5b506102eb6104fc366004611677565b61078e565b600061050e338484610878565b5060015b92915050565b600061052584848461099c565b610577843361057285604051806060016040528060288152602001611856602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610e56565b610878565b5060019392505050565b6000546001600160a01b031633146105b45760405162461bcd60e51b81526004016105ab906116ff565b60405180910390fd5b6013805460ff60b01b1916600160b01b179055565b6000546001600160a01b031633146105f35760405162461bcd60e51b81526004016105ab906116ff565b60138054911515600160a01b0260ff60a01b19909216919091179055565b6011546001600160a01b0316336001600160a01b03161461063157600080fd5b4761063b81610e90565b50565b6001600160a01b03811660009081526002602052604081205461051290610ece565b6000546001600160a01b0316331461068a5760405162461bcd60e51b81526004016105ab906116ff565b565b6000546001600160a01b031633146106b65760405162461bcd60e51b81526004016105ab906116ff565b60138054911515600160b01b0260ff60b01b19909216919091179055565b6000546001600160a01b031633146106fe5760405162461bcd60e51b81526004016105ab906116ff565b6013805460ff60a81b19169055565b6000546001600160a01b031633146107375760405162461bcd60e51b81526004016105ab906116ff565b600893909355600a91909155600955600b55565b600061050e33848461099c565b6011546001600160a01b0316336001600160a01b03161461077857600080fd5b60006107833061063e565b905061063b81610f52565b6000546001600160a01b031633146107b85760405162461bcd60e51b81526004016105ab906116ff565b6001600160a01b03811661081d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105ab565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166108da5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105ab565b6001600160a01b03821661093b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105ab565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a005760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105ab565b6001600160a01b038216610a625760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105ab565b60008111610ac45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105ab565b6000546001600160a01b03848116911614801590610af057506000546001600160a01b03838116911614155b15610d4957601354600160b01b900460ff16610b89576000546001600160a01b03848116911614610b895760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c65640060648201526084016105ab565b601354600160a81b900460ff1615610c7257601454811115610bed5760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016105ab565b6013546001600160a01b03838116911614610c725760155481610c0f8461063e565b610c19919061174a565b10610c725760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016105ab565b6000610c7d3061063e565b601654601754919250821015908210610c965760175491505b808015610cad5750601354600160b81b900460ff16155b8015610cc757506013546001600160a01b03868116911614155b8015610cdc5750601354600160a01b900460ff165b8015610d0157506001600160a01b03851660009081526005602052604090205460ff16155b8015610d2657506001600160a01b03841660009081526005602052604090205460ff16155b15610d4657610d3482610f52565b478015610d4457610d4447610e90565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff1680610d8b57506001600160a01b03831660009081526005602052604090205460ff165b80610dbd57506013546001600160a01b03858116911614801590610dbd57506013546001600160a01b03848116911614155b15610dca57506000610e44565b6013546001600160a01b038581169116148015610df557506012546001600160a01b03848116911614155b15610e0757600854600c55600954600d555b6013546001600160a01b038481169116148015610e3257506012546001600160a01b03858116911614155b15610e4457600a54600c55600b54600d555b610e50848484846110cc565b50505050565b60008184841115610e7a5760405162461bcd60e51b81526004016105ab9190611585565b506000610e87848661175d565b95945050505050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610eca573d6000803e3d6000fd5b5050565b6000600654821115610f355760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016105ab565b6000610f3f6110fa565b9050610f4b838261111d565b9392505050565b6013805460ff60b81b1916600160b81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610f9a57610f9a611770565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610ff3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110179190611786565b8160018151811061102a5761102a611770565b6001600160a01b0392831660209182029290920101526012546110509130911684610878565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906110899085906000908690309042906004016117a3565b600060405180830381600087803b1580156110a357600080fd5b505af11580156110b7573d6000803e3d6000fd5b50506013805460ff60b81b1916905550505050565b806110d9576110d961115f565b6110e484848461118d565b80610e5057610e50600e54600c55600f54600d55565b6000806000611107611284565b9092509050611116828261111d565b9250505090565b6000610f4b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506112c4565b600c5415801561116f5750600d54155b1561117657565b600c8054600e55600d8054600f5560009182905555565b60008060008060008061119f876112f2565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506111d1908761134f565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546112009086611391565b6001600160a01b038916600090815260026020526040902055611222816113f0565b61122c848361143a565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161127191815260200190565b60405180910390a3505050505050505050565b60065460009081906701e6b8c62e3a800061129f828261111d565b8210156112bb575050600654926701e6b8c62e3a800092509050565b90939092509050565b600081836112e55760405162461bcd60e51b81526004016105ab9190611585565b506000610e878486611814565b600080600080600080600080600061130f8a600c54600d5461145e565b925092509250600061131f6110fa565b905060008060006113328e8787876114b3565b919e509c509a509598509396509194505050505091939550919395565b6000610f4b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e56565b60008061139e838561174a565b905083811015610f4b5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105ab565b60006113fa6110fa565b905060006114088383611503565b306000908152600260205260409020549091506114259082611391565b30600090815260026020526040902055505050565b600654611447908361134f565b6006556007546114579082611391565b6007555050565b600080808061147860646114728989611503565b9061111d565b9050600061148b60646114728a89611503565b905060006114a38261149d8b8661134f565b9061134f565b9992985090965090945050505050565b60008080806114c28886611503565b905060006114d08887611503565b905060006114de8888611503565b905060006114f08261149d868661134f565b939b939a50919850919650505050505050565b60008260000361151557506000610512565b60006115218385611836565b90508261152e8583611814565b14610f4b5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016105ab565b600060208083528351808285015260005b818110156115b257858101830151858201604001528201611596565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461063b57600080fd5b600080604083850312156115fb57600080fd5b8235611606816115d3565b946020939093013593505050565b60008060006060848603121561162957600080fd5b8335611634816115d3565b92506020840135611644816115d3565b929592945050506040919091013590565b60006020828403121561166757600080fd5b81358015158114610f4b57600080fd5b60006020828403121561168957600080fd5b8135610f4b816115d3565b600080600080608085870312156116aa57600080fd5b5050823594602084013594506040840135936060013592509050565b600080604083850312156116d957600080fd5b82356116e4816115d3565b915060208301356116f4816115d3565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561051257610512611734565b8181038181111561051257610512611734565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561179857600080fd5b8151610f4b816115d3565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156117f35784516001600160a01b0316835293830193918301916001016117ce565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261183157634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161561185057611850611734565b50029056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220cf9cc577c7855de2e97e9969b3a0858b7a0766c60c586fa454f0001123c1e3d064736f6c63430008100033

Deployed Bytecode

0x6080604052600436106101855760003560e01c80637d1db4a5116100d1578063975f305d1161008a578063c3c8cd8011610064578063c3c8cd8014610470578063dd62ed3e14610485578063e06bd4a5146104cb578063f2fde38b146104e157600080fd5b8063975f305d1461041b578063a2a957bb14610430578063a9059cbb1461045057600080fd5b80637d1db4a5146103575780637f2feddc1461036d5780638da5cb5b1461039a5780638f70ccf7146103b85780638f9a55c0146103d857806395d89b41146103ee57600080fd5b8063313ce5671161013e5780636d8aa8f8116101185780636d8aa8f8146102ed5780636fc3eaec1461030d57806370a0823114610322578063715018a61461034257600080fd5b8063313ce5671461029a57806349bd5a5e146102b65780636beece2f146102d657600080fd5b806306fdde0314610191578063095ea7b3146101d75780631694505e1461020757806318160ddd1461023f57806323b872dd146102645780632fd689e31461028457600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b5060408051808201909152600b81526a4861636b657276696c6c6560a81b60208201525b6040516101ce9190611585565b60405180910390f35b3480156101e357600080fd5b506101f76101f23660046115e8565b610501565b60405190151581526020016101ce565b34801561021357600080fd5b50601254610227906001600160a01b031681565b6040516001600160a01b0390911681526020016101ce565b34801561024b57600080fd5b506701e6b8c62e3a80005b6040519081526020016101ce565b34801561027057600080fd5b506101f761027f366004611614565b610518565b34801561029057600080fd5b5061025660165481565b3480156102a657600080fd5b50604051600981526020016101ce565b3480156102c257600080fd5b50601354610227906001600160a01b031681565b3480156102e257600080fd5b506102eb610581565b005b3480156102f957600080fd5b506102eb610308366004611655565b6105c9565b34801561031957600080fd5b506102eb610611565b34801561032e57600080fd5b5061025661033d366004611677565b61063e565b34801561034e57600080fd5b506102eb610660565b34801561036357600080fd5b5061025660145481565b34801561037957600080fd5b50610256610388366004611677565b60106020526000908152604090205481565b3480156103a657600080fd5b506000546001600160a01b0316610227565b3480156103c457600080fd5b506102eb6103d3366004611655565b61068c565b3480156103e457600080fd5b5061025660155481565b3480156103fa57600080fd5b506040805180820190915260048152634841434b60e01b60208201526101c1565b34801561042757600080fd5b506102eb6106d4565b34801561043c57600080fd5b506102eb61044b366004611694565b61070d565b34801561045c57600080fd5b506101f761046b3660046115e8565b61074b565b34801561047c57600080fd5b506102eb610758565b34801561049157600080fd5b506102566104a03660046116c6565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156104d757600080fd5b5061025660175481565b3480156104ed57600080fd5b506102eb6104fc366004611677565b61078e565b600061050e338484610878565b5060015b92915050565b600061052584848461099c565b610577843361057285604051806060016040528060288152602001611856602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610e56565b610878565b5060019392505050565b6000546001600160a01b031633146105b45760405162461bcd60e51b81526004016105ab906116ff565b60405180910390fd5b6013805460ff60b01b1916600160b01b179055565b6000546001600160a01b031633146105f35760405162461bcd60e51b81526004016105ab906116ff565b60138054911515600160a01b0260ff60a01b19909216919091179055565b6011546001600160a01b0316336001600160a01b03161461063157600080fd5b4761063b81610e90565b50565b6001600160a01b03811660009081526002602052604081205461051290610ece565b6000546001600160a01b0316331461068a5760405162461bcd60e51b81526004016105ab906116ff565b565b6000546001600160a01b031633146106b65760405162461bcd60e51b81526004016105ab906116ff565b60138054911515600160b01b0260ff60b01b19909216919091179055565b6000546001600160a01b031633146106fe5760405162461bcd60e51b81526004016105ab906116ff565b6013805460ff60a81b19169055565b6000546001600160a01b031633146107375760405162461bcd60e51b81526004016105ab906116ff565b600893909355600a91909155600955600b55565b600061050e33848461099c565b6011546001600160a01b0316336001600160a01b03161461077857600080fd5b60006107833061063e565b905061063b81610f52565b6000546001600160a01b031633146107b85760405162461bcd60e51b81526004016105ab906116ff565b6001600160a01b03811661081d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105ab565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166108da5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105ab565b6001600160a01b03821661093b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105ab565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a005760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105ab565b6001600160a01b038216610a625760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105ab565b60008111610ac45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105ab565b6000546001600160a01b03848116911614801590610af057506000546001600160a01b03838116911614155b15610d4957601354600160b01b900460ff16610b89576000546001600160a01b03848116911614610b895760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c65640060648201526084016105ab565b601354600160a81b900460ff1615610c7257601454811115610bed5760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016105ab565b6013546001600160a01b03838116911614610c725760155481610c0f8461063e565b610c19919061174a565b10610c725760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016105ab565b6000610c7d3061063e565b601654601754919250821015908210610c965760175491505b808015610cad5750601354600160b81b900460ff16155b8015610cc757506013546001600160a01b03868116911614155b8015610cdc5750601354600160a01b900460ff165b8015610d0157506001600160a01b03851660009081526005602052604090205460ff16155b8015610d2657506001600160a01b03841660009081526005602052604090205460ff16155b15610d4657610d3482610f52565b478015610d4457610d4447610e90565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff1680610d8b57506001600160a01b03831660009081526005602052604090205460ff165b80610dbd57506013546001600160a01b03858116911614801590610dbd57506013546001600160a01b03848116911614155b15610dca57506000610e44565b6013546001600160a01b038581169116148015610df557506012546001600160a01b03848116911614155b15610e0757600854600c55600954600d555b6013546001600160a01b038481169116148015610e3257506012546001600160a01b03858116911614155b15610e4457600a54600c55600b54600d555b610e50848484846110cc565b50505050565b60008184841115610e7a5760405162461bcd60e51b81526004016105ab9190611585565b506000610e87848661175d565b95945050505050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610eca573d6000803e3d6000fd5b5050565b6000600654821115610f355760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016105ab565b6000610f3f6110fa565b9050610f4b838261111d565b9392505050565b6013805460ff60b81b1916600160b81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610f9a57610f9a611770565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610ff3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110179190611786565b8160018151811061102a5761102a611770565b6001600160a01b0392831660209182029290920101526012546110509130911684610878565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906110899085906000908690309042906004016117a3565b600060405180830381600087803b1580156110a357600080fd5b505af11580156110b7573d6000803e3d6000fd5b50506013805460ff60b81b1916905550505050565b806110d9576110d961115f565b6110e484848461118d565b80610e5057610e50600e54600c55600f54600d55565b6000806000611107611284565b9092509050611116828261111d565b9250505090565b6000610f4b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506112c4565b600c5415801561116f5750600d54155b1561117657565b600c8054600e55600d8054600f5560009182905555565b60008060008060008061119f876112f2565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506111d1908761134f565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546112009086611391565b6001600160a01b038916600090815260026020526040902055611222816113f0565b61122c848361143a565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161127191815260200190565b60405180910390a3505050505050505050565b60065460009081906701e6b8c62e3a800061129f828261111d565b8210156112bb575050600654926701e6b8c62e3a800092509050565b90939092509050565b600081836112e55760405162461bcd60e51b81526004016105ab9190611585565b506000610e878486611814565b600080600080600080600080600061130f8a600c54600d5461145e565b925092509250600061131f6110fa565b905060008060006113328e8787876114b3565b919e509c509a509598509396509194505050505091939550919395565b6000610f4b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e56565b60008061139e838561174a565b905083811015610f4b5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105ab565b60006113fa6110fa565b905060006114088383611503565b306000908152600260205260409020549091506114259082611391565b30600090815260026020526040902055505050565b600654611447908361134f565b6006556007546114579082611391565b6007555050565b600080808061147860646114728989611503565b9061111d565b9050600061148b60646114728a89611503565b905060006114a38261149d8b8661134f565b9061134f565b9992985090965090945050505050565b60008080806114c28886611503565b905060006114d08887611503565b905060006114de8888611503565b905060006114f08261149d868661134f565b939b939a50919850919650505050505050565b60008260000361151557506000610512565b60006115218385611836565b90508261152e8583611814565b14610f4b5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016105ab565b600060208083528351808285015260005b818110156115b257858101830151858201604001528201611596565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461063b57600080fd5b600080604083850312156115fb57600080fd5b8235611606816115d3565b946020939093013593505050565b60008060006060848603121561162957600080fd5b8335611634816115d3565b92506020840135611644816115d3565b929592945050506040919091013590565b60006020828403121561166757600080fd5b81358015158114610f4b57600080fd5b60006020828403121561168957600080fd5b8135610f4b816115d3565b600080600080608085870312156116aa57600080fd5b5050823594602084013594506040840135936060013592509050565b600080604083850312156116d957600080fd5b82356116e4816115d3565b915060208301356116f4816115d3565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561051257610512611734565b8181038181111561051257610512611734565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561179857600080fd5b8151610f4b816115d3565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156117f35784516001600160a01b0316835293830193918301916001016117ce565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261183157634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161561185057611850611734565b50029056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220cf9cc577c7855de2e97e9969b3a0858b7a0766c60c586fa454f0001123c1e3d064736f6c63430008100033

Deployed Bytecode Sourcemap

10690:12723:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13225:83;;;;;;;;;;-1:-1:-1;13295:5:0;;;;;;;;;;;;-1:-1:-1;;;13295:5:0;;;;13225:83;;;;;;;:::i;:::-;;;;;;;;14157:193;;;;;;;;;;-1:-1:-1;14157:193:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;14157:193:0;1023:187:1;11886:41:0;;;;;;;;;;-1:-1:-1;11886:41:0;;;;-1:-1:-1;;;;;11886:41:0;;;;;;-1:-1:-1;;;;;1405:32:1;;;1387:51;;1375:2;1360:18;11886:41:0;1215:229:1;13505:95:0;;;;;;;;;;-1:-1:-1;11241:17:0;13505:95;;;1595:25:1;;;1583:2;1568:18;13505:95:0;1449:177:1;14359:446:0;;;;;;;;;;-1:-1:-1;14359:446:0;;;;;:::i;:::-;;:::i;12235:51::-;;;;;;;;;;;;;;;;13413:83;;;;;;;;;;-1:-1:-1;13413:83:0;;10912:1;2234:36:1;;2222:2;2207:18;13413:83:0;2092:184:1;11934:28:0;;;;;;;;;;-1:-1:-1;11934:28:0;;;;-1:-1:-1;;;;;11934:28:0;;;23217:83;;;;;;;;;;;;;:::i;:::-;;23309:101;;;;;;;;;;-1:-1:-1;23309:101:0;;;;;:::i;:::-;;:::i;19209:196::-;;;;;;;;;;;;;:::i;13609:138::-;;;;;;;;;;-1:-1:-1;13609:138:0;;;;;:::i;:::-;;:::i;8158:153::-;;;;;;;;;;;;;:::i;12127:45::-;;;;;;;;;;;;;;;;11730:43;;;;;;;;;;-1:-1:-1;11730:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;7942:79;;;;;;;;;;-1:-1:-1;7980:7:0;8007:6;-1:-1:-1;;;;;8007:6:0;7942:79;;18893:101;;;;;;;;;;-1:-1:-1;18893:101:0;;;;;:::i;:::-;;:::i;12180:47::-;;;;;;;;;;;;;;;;13317:87;;;;;;;;;;-1:-1:-1;13389:7:0;;;;;;;;;;;;-1:-1:-1;;;13389:7:0;;;;13317:87;;23123:86;;;;;;;;;;;;;:::i;22822:293::-;;;;;;;;;;-1:-1:-1;22822:293:0;;;;;:::i;:::-;;:::i;13756:199::-;;;;;;;;;;-1:-1:-1;13756:199:0;;;;;:::i;:::-;;:::i;19003:197::-;;;;;;;;;;;;;:::i;13964:184::-;;;;;;;;;;-1:-1:-1;13964:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;14113:18:0;;;14081:7;14113:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;13964:184;12293:47;;;;;;;;;;;;;;;;8320:244;;;;;;;;;;-1:-1:-1;8320:244:0;;;;;:::i;:::-;;:::i;14157:193::-;14259:4;14281:39;6769:10;14304:7;14313:6;14281:8;:39::i;:::-;-1:-1:-1;14338:4:0;14157:193;;;;;:::o;14359:446::-;14491:4;14508:36;14518:6;14526:9;14537:6;14508:9;:36::i;:::-;14555:220;14578:6;6769:10;14626:138;14682:6;14626:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14626:19:0;;;;;;:11;:19;;;;;;;;6769:10;14626:33;;;;;;;;;;:37;:138::i;:::-;14555:8;:220::i;:::-;-1:-1:-1;14793:4:0;14359:446;;;;;:::o;23217:83::-;8070:6;;-1:-1:-1;;;;;8070:6:0;6769:10;8070:22;8062:67;;;;-1:-1:-1;;;8062:67:0;;;;;;;:::i;:::-;;;;;;;;;23274:11:::1;:18:::0;;-1:-1:-1;;;;23274:18:0::1;-1:-1:-1::0;;;23274:18:0::1;::::0;;23217:83::o;23309:101::-;8070:6;;-1:-1:-1;;;;;8070:6:0;6769:10;8070:22;8062:67;;;;-1:-1:-1;;;8062:67:0;;;;;;;:::i;:::-;23376:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;23376:26:0::1;-1:-1:-1::0;;;;23376:26:0;;::::1;::::0;;;::::1;::::0;;23309:101::o;19209:196::-;19275:17;;-1:-1:-1;;;;;19275:17:0;6769:10;-1:-1:-1;;;;;19259:33:0;;19251:42;;;;;;19333:21;19365:32;19333:21;19365:12;:32::i;:::-;19240:165;19209:196::o;13609:138::-;-1:-1:-1;;;;;13722:16:0;;13675:7;13722:16;;;:7;:16;;;;;;13702:37;;:19;:37::i;8158:153::-;8070:6;;-1:-1:-1;;;;;8070:6:0;6769:10;8070:22;8062:67;;;;-1:-1:-1;;;8062:67:0;;;;;;;:::i;:::-;8158:153::o;18893:101::-;8070:6;;-1:-1:-1;;;;;8070:6:0;6769:10;8070:22;8062:67;;;;-1:-1:-1;;;8062:67:0;;;;;;;:::i;:::-;18960:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;18960:26:0::1;-1:-1:-1::0;;;;18960:26:0;;::::1;::::0;;;::::1;::::0;;18893:101::o;23123:86::-;8070:6;;-1:-1:-1;;;;;8070:6:0;6769:10;8070:22;8062:67;;;;-1:-1:-1;;;8062:67:0;;;;;;;:::i;:::-;23179:14:::1;:22:::0;;-1:-1:-1;;;;23179:22:0::1;::::0;;23123:86::o;22822:293::-;8070:6;;-1:-1:-1;;;;;8070:6:0;6769:10;8070:22;8062:67;;;;-1:-1:-1;;;8062:67:0;;;;;;;:::i;:::-;22956:14:::1;:30:::0;;;;22997:15:::1;:32:::0;;;;23040:12:::1;:26:::0;23077:13:::1;:28:::0;22822:293::o;13756:199::-;13861:4;13883:42;6769:10;13907:9;13918:6;13883:9;:42::i;19003:197::-;19069:17;;-1:-1:-1;;;;;19069:17:0;6769:10;-1:-1:-1;;;;;19053:33:0;;19045:42;;;;;;19098:23;19124:24;19142:4;19124:9;:24::i;:::-;19098:50;;19159:33;19176:15;19159:16;:33::i;8320:244::-;8070:6;;-1:-1:-1;;;;;8070:6:0;6769:10;8070:22;8062:67;;;;-1:-1:-1;;;8062:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8409:22:0;::::1;8401:73;;;::::0;-1:-1:-1;;;8401:73:0;;4365:2:1;8401:73:0::1;::::0;::::1;4347:21:1::0;4404:2;4384:18;;;4377:30;4443:34;4423:18;;;4416:62;-1:-1:-1;;;4494:18:1;;;4487:36;4540:19;;8401:73:0::1;4163:402:1::0;8401:73:0::1;8511:6;::::0;;8490:38:::1;::::0;-1:-1:-1;;;;;8490:38:0;;::::1;::::0;8511:6;::::1;::::0;8490:38:::1;::::0;::::1;8539:6;:17:::0;;-1:-1:-1;;;;;;8539:17:0::1;-1:-1:-1::0;;;;;8539:17:0;;;::::1;::::0;;;::::1;::::0;;8320:244::o;15502:369::-;-1:-1:-1;;;;;15629:19:0;;15621:68;;;;-1:-1:-1;;;15621:68:0;;4772:2:1;15621:68:0;;;4754:21:1;4811:2;4791:18;;;4784:30;4850:34;4830:18;;;4823:62;-1:-1:-1;;;4901:18:1;;;4894:34;4945:19;;15621:68:0;4570:400:1;15621:68:0;-1:-1:-1;;;;;15708:21:0;;15700:68;;;;-1:-1:-1;;;15700:68:0;;5177:2:1;15700:68:0;;;5159:21:1;5216:2;5196:18;;;5189:30;5255:34;5235:18;;;5228:62;-1:-1:-1;;;5306:18:1;;;5299:32;5348:19;;15700:68:0;4975:398:1;15700:68:0;-1:-1:-1;;;;;15779:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;15831:32;;1595:25:1;;;15831:32:0;;1568:18:1;15831:32:0;;;;;;;15502:369;;;:::o;15880:2404::-;-1:-1:-1;;;;;16002:18:0;;15994:68;;;;-1:-1:-1;;;15994:68:0;;5580:2:1;15994:68:0;;;5562:21:1;5619:2;5599:18;;;5592:30;5658:34;5638:18;;;5631:62;-1:-1:-1;;;5709:18:1;;;5702:35;5754:19;;15994:68:0;5378:401:1;15994:68:0;-1:-1:-1;;;;;16081:16:0;;16073:64;;;;-1:-1:-1;;;16073:64:0;;5986:2:1;16073:64:0;;;5968:21:1;6025:2;6005:18;;;5998:30;6064:34;6044:18;;;6037:62;-1:-1:-1;;;6115:18:1;;;6108:33;6158:19;;16073:64:0;5784:399:1;16073:64:0;16165:1;16156:6;:10;16148:64;;;;-1:-1:-1;;;16148:64:0;;6390:2:1;16148:64:0;;;6372:21:1;6429:2;6409:18;;;6402:30;6468:34;6448:18;;;6441:62;-1:-1:-1;;;6519:18:1;;;6512:39;6568:19;;16148:64:0;6188:405:1;16148:64:0;7980:7;8007:6;-1:-1:-1;;;;;16230:15:0;;;8007:6;;16230:15;;;;:32;;-1:-1:-1;7980:7:0;8007:6;-1:-1:-1;;;;;16249:13:0;;;8007:6;;16249:13;;16230:32;16226:1303;;;16332:11;;-1:-1:-1;;;16332:11:0;;;;16327:144;;7980:7;8007:6;-1:-1:-1;;;;;16372:15:0;;;8007:6;;16372:15;16364:91;;;;-1:-1:-1;;;16364:91:0;;6800:2:1;16364:91:0;;;6782:21:1;6839:2;6819:18;;;6812:30;6878:34;6858:18;;;6851:62;6949:33;6929:18;;;6922:61;7000:19;;16364:91:0;6598:427:1;16364:91:0;16535:14;;-1:-1:-1;;;16535:14:0;;;;16532:292;;;16588:12;;16578:6;:22;;16570:63;;;;-1:-1:-1;;;16570:63:0;;7232:2:1;16570:63:0;;;7214:21:1;7271:2;7251:18;;;7244:30;7310;7290:18;;;7283:58;7358:18;;16570:63:0;7030:352:1;16570:63:0;16664:13;;-1:-1:-1;;;;;16658:19:0;;;16664:13;;16658:19;16655:154;;16735:14;;16726:6;16710:13;16720:2;16710:9;:13::i;:::-;:22;;;;:::i;:::-;:39;16702:87;;;;-1:-1:-1;;;16702:87:0;;7851:2:1;16702:87:0;;;7833:21:1;7890:2;7870:18;;;7863:30;7929:34;7909:18;;;7902:62;-1:-1:-1;;;7980:18:1;;;7973:33;8023:19;;16702:87:0;7649:399:1;16702:87:0;16841:28;16872:24;16890:4;16872:9;:24::i;:::-;16950:19;;17014:14;;16841:55;;-1:-1:-1;16926:43:0;;;;16990:38;;16987:128;;17085:14;;17062:37;;16987:128;17136:7;:18;;;;-1:-1:-1;17148:6:0;;-1:-1:-1;;;17148:6:0;;;;17147:7;17136:18;:43;;;;-1:-1:-1;17166:13:0;;-1:-1:-1;;;;;17158:21:0;;;17166:13;;17158:21;;17136:43;:58;;;;-1:-1:-1;17183:11:0;;-1:-1:-1;;;17183:11:0;;;;17136:58;:87;;;;-1:-1:-1;;;;;;17199:24:0;;;;;;:18;:24;;;;;;;;17198:25;17136:87;:114;;;;-1:-1:-1;;;;;;17228:22:0;;;;;;:18;:22;;;;;;;;17227:23;17136:114;17132:386;;;17271:38;17288:20;17271:16;:38::i;:::-;17357:21;17401:22;;17397:106;;17448:35;17461:21;17448:12;:35::i;:::-;17252:266;17132:386;16264:1265;;16226:1303;-1:-1:-1;;;;;17633:24:0;;17542:12;17633:24;;;:18;:24;;;;;;17557:4;;17633:24;;;:50;;-1:-1:-1;;;;;;17661:22:0;;;;;;:18;:22;;;;;;;;17633:50;17632:102;;;-1:-1:-1;17697:13:0;;-1:-1:-1;;;;;17689:21:0;;;17697:13;;17689:21;;;;:44;;-1:-1:-1;17720:13:0;;-1:-1:-1;;;;;17714:19:0;;;17720:13;;17714:19;;17689:44;17628:594;;;-1:-1:-1;17761:5:0;17628:594;;;17842:13;;-1:-1:-1;;;;;17834:21:0;;;17842:13;;17834:21;:55;;;;-1:-1:-1;17873:15:0;;-1:-1:-1;;;;;17859:30:0;;;17873:15;;17859:30;;17834:55;17831:162;;;17922:14;;17910:9;:26;17965:12;;17955:7;:22;17831:162;18053:13;;-1:-1:-1;;;;;18047:19:0;;;18053:13;;18047:19;:55;;;;-1:-1:-1;18086:15:0;;-1:-1:-1;;;;;18070:32:0;;;18086:15;;18070:32;;18047:55;18043:165;;;18135:15;;18123:9;:27;18179:13;;18169:7;:23;18043:165;18235:41;18250:4;18256:2;18260:6;18268:7;18235:14;:41::i;:::-;15983:2301;15880:2404;;;:::o;8932:224::-;9052:7;9088:12;9080:6;;;;9072:29;;;;-1:-1:-1;;;9072:29:0;;;;;;;;:::i;:::-;-1:-1:-1;9112:9:0;9124:5;9128:1;9124;:5;:::i;:::-;9112:17;8932:224;-1:-1:-1;;;;;8932:224:0:o;18785:99::-;18842:17;;:34;;-1:-1:-1;;;;;18842:17:0;;;;:34;;;;;18869:6;;18842:17;:34;:17;:34;18869:6;18842:17;:34;;;;;;;;;;;;;;;;;;;;;18785:99;:::o;14814:323::-;14909:7;14967;;14956;:18;;14934:110;;;;-1:-1:-1;;;14934:110:0;;8388:2:1;14934:110:0;;;8370:21:1;8427:2;8407:18;;;8400:30;8466:34;8446:18;;;8439:62;-1:-1:-1;;;8517:18:1;;;8510:40;8567:19;;14934:110:0;8186:406:1;14934:110:0;15055:19;15077:10;:8;:10::i;:::-;15055:32;-1:-1:-1;15105:24:0;:7;15055:32;15105:11;:24::i;:::-;15098:31;14814:323;-1:-1:-1;;;14814:323:0:o;18293:483::-;12435:6;:13;;-1:-1:-1;;;;12435:13:0;-1:-1:-1;;;12435:13:0;;;18395:16:::1;::::0;;18409:1:::1;18395:16:::0;;;;;::::1;::::0;;-1:-1:-1;;18395:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;18395:16:0::1;18371:40;;18440:4;18422;18427:1;18422:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18422:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;18466:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;18466:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;18422:7;;18466:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18456:4;18461:1;18456:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18456:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;18531:15:::1;::::0;18499:62:::1;::::0;18516:4:::1;::::0;18531:15:::1;18549:11:::0;18499:8:::1;:62::i;:::-;18572:15;::::0;:196:::1;::::0;-1:-1:-1;;;18572:196:0;;-1:-1:-1;;;;;18572:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;18653:11;;18572:15:::1;::::0;18695:4;;18722::::1;::::0;18742:15:::1;::::0;18572:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;12471:6:0;:14;;-1:-1:-1;;;;12471:14:0;;;-1:-1:-1;;;;18293:483:0:o;19414:282::-;19570:7;19565:28;;19579:14;:12;:14::i;:::-;19604:44;19622:6;19630:9;19641:6;19604:17;:44::i;:::-;19664:7;19659:29;;19673:15;15432:17;;15420:9;:29;15470:15;;15460:7;:25;15376:117;22383:164;22425:7;22446:15;22463;22482:19;:17;:19::i;:::-;22445:56;;-1:-1:-1;22445:56:0;-1:-1:-1;22519:20:0;22445:56;;22519:11;:20::i;:::-;22512:27;;;;22383:164;:::o;9420:132::-;9478:7;9505:39;9509:1;9512;9505:39;;;;;;;;;;;;;;;;;:3;:39::i;15146:221::-;15193:9;;:14;:30;;;;-1:-1:-1;15211:7:0;;:12;15193:30;15189:43;;;15146:221::o;15189:43::-;15265:9;;;15245:17;:29;15303:7;;;15285:15;:25;-1:-1:-1;15324:13:0;;;;15348:11;15146:221::o;19705:610::-;19852:15;19882:23;19920:12;19947:23;19985:12;20012:13;20039:19;20050:7;20039:10;:19::i;:::-;-1:-1:-1;;;;;20087:15:0;;;;;;:7;:15;;;;;;19837:221;;-1:-1:-1;19837:221:0;;-1:-1:-1;19837:221:0;;-1:-1:-1;19837:221:0;-1:-1:-1;19837:221:0;-1:-1:-1;19837:221:0;-1:-1:-1;20087:28:0;;19837:221;20087:19;:28::i;:::-;-1:-1:-1;;;;;20069:15:0;;;;;;;:7;:15;;;;;;:46;;;;20147:18;;;;;;;:39;;20170:15;20147:22;:39::i;:::-;-1:-1:-1;;;;;20126:18:0;;;;;;:7;:18;;;;;:60;20197:16;20207:5;20197:9;:16::i;:::-;20224:23;20236:4;20242;20224:11;:23::i;:::-;20280:9;-1:-1:-1;;;;;20263:44:0;20272:6;-1:-1:-1;;;;;20263:44:0;;20291:15;20263:44;;;;1595:25:1;;1583:2;1568:18;;1449:177;20263:44:0;;;;;;;;19826:489;;;;;;19705:610;;;:::o;22556:257::-;22654:7;;22607;;;;11241:17;22722:20;22654:7;11241:17;22722:11;:20::i;:::-;22712:7;:30;22708:61;;;-1:-1:-1;;22752:7:0;;;11241:17;;-1:-1:-1;22556:257:0;-1:-1:-1;22556:257:0:o;22708:61::-;22788:7;;22797;;-1:-1:-1;22556:257:0;-1:-1:-1;22556:257:0:o;9561:223::-;9681:7;9716:12;9709:5;9701:28;;;;-1:-1:-1;;;9701:28:0;;;;;;;;:::i;:::-;-1:-1:-1;9740:9:0;9752:5;9756:1;9752;:5;:::i;20738:615::-;20838:7;20860;20882;20904;20926;20948;20984:23;21009:12;21023:13;21053:40;21065:7;21074:9;;21085:7;;21053:11;:40::i;:::-;20983:110;;;;;;21104:19;21126:10;:8;:10::i;:::-;21104:32;;21148:15;21165:23;21190:12;21219:46;21231:7;21240:4;21246:5;21253:11;21219;:46::i;:::-;21147:118;;-1:-1:-1;21147:118:0;-1:-1:-1;21147:118:0;-1:-1:-1;21316:15:0;;-1:-1:-1;21333:4:0;;-1:-1:-1;21339:5:0;;-1:-1:-1;;;;;20738:615:0;;;;;;;:::o;8787:136::-;8845:7;8872:43;8876:1;8879;8872:43;;;;;;;;;;;;;;;;;:3;:43::i;8599:179::-;8657:7;;8689:5;8693:1;8689;:5;:::i;:::-;8677:17;;8718:1;8713;:6;;8705:46;;;;-1:-1:-1;;;8705:46:0;;10526:2:1;8705:46:0;;;10508:21:1;10565:2;10545:18;;;10538:30;10604:29;10584:18;;;10577:57;10651:18;;8705:46:0;10324:351:1;20324:211:0;20377:19;20399:10;:8;:10::i;:::-;20377:32;-1:-1:-1;20420:13:0;20436:22;:5;20377:32;20436:9;:22::i;:::-;20510:4;20494:22;;;;:7;:22;;;;;;20420:38;;-1:-1:-1;20494:33:0;;20420:38;20494:26;:33::i;:::-;20485:4;20469:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;20324:211:0:o;20544:147::-;20622:7;;:17;;20634:4;20622:11;:17::i;:::-;20612:7;:27;20663:10;;:20;;20678:4;20663:14;:20::i;:::-;20650:10;:33;-1:-1:-1;;20544:147:0:o;21362:469::-;21531:7;;;;21625:30;21651:3;21625:21;:7;21637:8;21625:11;:21::i;:::-;:25;;:30::i;:::-;21610:45;-1:-1:-1;21666:13:0;21682:28;21706:3;21682:19;:7;21694:6;21682:11;:19::i;:28::-;21666:44;-1:-1:-1;21721:23:0;21747:28;21666:44;21747:17;:7;21759:4;21747:11;:17::i;:::-;:21;;:28::i;:::-;21721:54;21811:4;;-1:-1:-1;21817:5:0;;-1:-1:-1;21362:469:0;;-1:-1:-1;;;;;21362:469:0:o;21840:534::-;22034:7;;;;22131:24;:7;22143:11;22131;:24::i;:::-;22113:42;-1:-1:-1;22166:12:0;22181:21;:4;22190:11;22181:8;:21::i;:::-;22166:36;-1:-1:-1;22213:13:0;22229:22;:5;22239:11;22229:9;:22::i;:::-;22213:38;-1:-1:-1;22262:23:0;22288:28;22213:38;22288:17;:7;22300:4;22288:11;:17::i;:28::-;22335:7;;;;-1:-1:-1;22361:4:0;;-1:-1:-1;21840:534:0;;-1:-1:-1;;;;;;;21840:534:0:o;9165:246::-;9223:7;9247:1;9252;9247:6;9243:47;;-1:-1:-1;9277:1:0;9270:8;;9243:47;9300:9;9312:5;9316:1;9312;:5;:::i;:::-;9300:17;-1:-1:-1;9345:1:0;9336:5;9340:1;9300:17;9336:5;:::i;:::-;:10;9328:56;;;;-1:-1:-1;;;9328:56:0;;11055:2:1;9328:56:0;;;11037:21:1;11094:2;11074:18;;;11067:30;11133:34;11113:18;;;11106:62;-1:-1:-1;;;11184:18:1;;;11177:31;11225:19;;9328:56:0;10853:397:1;14:548;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1631:456::-;1708:6;1716;1724;1777:2;1765:9;1756:7;1752:23;1748:32;1745:52;;;1793:1;1790;1783:12;1745:52;1832:9;1819:23;1851:31;1876:5;1851:31;:::i;:::-;1901:5;-1:-1:-1;1958:2:1;1943:18;;1930:32;1971:33;1930:32;1971:33;:::i;:::-;1631:456;;2023:7;;-1:-1:-1;;;2077:2:1;2062:18;;;;2049:32;;1631:456::o;2489:273::-;2545:6;2598:2;2586:9;2577:7;2573:23;2569:32;2566:52;;;2614:1;2611;2604:12;2566:52;2653:9;2640:23;2706:5;2699:13;2692:21;2685:5;2682:32;2672:60;;2728:1;2725;2718:12;2767:247;2826:6;2879:2;2867:9;2858:7;2854:23;2850:32;2847:52;;;2895:1;2892;2885:12;2847:52;2934:9;2921:23;2953:31;2978:5;2953:31;:::i;3019:385::-;3105:6;3113;3121;3129;3182:3;3170:9;3161:7;3157:23;3153:33;3150:53;;;3199:1;3196;3189:12;3150:53;-1:-1:-1;;3222:23:1;;;3292:2;3277:18;;3264:32;;-1:-1:-1;3343:2:1;3328:18;;3315:32;;3394:2;3379:18;3366:32;;-1:-1:-1;3019:385:1;-1:-1:-1;3019:385:1:o;3409:388::-;3477:6;3485;3538:2;3526:9;3517:7;3513:23;3509:32;3506:52;;;3554:1;3551;3544:12;3506:52;3593:9;3580:23;3612:31;3637:5;3612:31;:::i;:::-;3662:5;-1:-1:-1;3719:2:1;3704:18;;3691:32;3732:33;3691:32;3732:33;:::i;:::-;3784:7;3774:17;;;3409:388;;;;;:::o;3802:356::-;4004:2;3986:21;;;4023:18;;;4016:30;4082:34;4077:2;4062:18;;4055:62;4149:2;4134:18;;3802:356::o;7387:127::-;7448:10;7443:3;7439:20;7436:1;7429:31;7479:4;7476:1;7469:15;7503:4;7500:1;7493:15;7519:125;7584:9;;;7605:10;;;7602:36;;;7618:18;;:::i;8053:128::-;8120:9;;;8141:11;;;8138:37;;;8155:18;;:::i;8729:127::-;8790:10;8785:3;8781:20;8778:1;8771:31;8821:4;8818:1;8811:15;8845:4;8842:1;8835:15;8861:251;8931:6;8984:2;8972:9;8963:7;8959:23;8955:32;8952:52;;;9000:1;8997;8990:12;8952:52;9032:9;9026:16;9051:31;9076:5;9051:31;:::i;9117:980::-;9379:4;9427:3;9416:9;9412:19;9458:6;9447:9;9440:25;9484:2;9522:6;9517:2;9506:9;9502:18;9495:34;9565:3;9560:2;9549:9;9545:18;9538:31;9589:6;9624;9618:13;9655:6;9647;9640:22;9693:3;9682:9;9678:19;9671:26;;9732:2;9724:6;9720:15;9706:29;;9753:1;9763:195;9777:6;9774:1;9771:13;9763:195;;;9842:13;;-1:-1:-1;;;;;9838:39:1;9826:52;;9933:15;;;;9898:12;;;;9874:1;9792:9;9763:195;;;-1:-1:-1;;;;;;;10014:32:1;;;;10009:2;9994:18;;9987:60;-1:-1:-1;;;10078:3:1;10063:19;10056:35;9975:3;9117:980;-1:-1:-1;;;9117:980:1:o;10102:217::-;10142:1;10168;10158:132;;10212:10;10207:3;10203:20;10200:1;10193:31;10247:4;10244:1;10237:15;10275:4;10272:1;10265:15;10158:132;-1:-1:-1;10304:9:1;;10102:217::o;10680:168::-;10720:7;10786:1;10782;10778:6;10774:14;10771:1;10768:21;10763:1;10756:9;10749:17;10745:45;10742:71;;;10793:18;;:::i;:::-;-1:-1:-1;10833:9:1;;10680:168::o

Swarm Source

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