ETH Price: $2,545.52 (-2.51%)

Contract

0xFbA6eDD7bAa01b634A2e749899D8DB302747123f
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Manualsend172856172023-05-18 9:43:23502 days ago1684403003IN
0xFbA6eDD7...02747123f
0 ETH0.0010817135.6226057
Approve170422762023-04-14 1:44:11536 days ago1681436651IN
0xFbA6eDD7...02747123f
0 ETH0.0015044432.50674154
Approve170070892023-04-09 0:03:35541 days ago1680998615IN
0xFbA6eDD7...02747123f
0 ETH0.0010405722.51309377
Transfer169442642023-03-31 2:38:47550 days ago1680230327IN
0xFbA6eDD7...02747123f
0 ETH0.0022877424.93618487
Approve168610232023-03-19 9:57:59562 days ago1679219879IN
0xFbA6eDD7...02747123f
0 ETH0.0006157713.23659921
Approve168567062023-03-18 19:25:35562 days ago1679167535IN
0xFbA6eDD7...02747123f
0 ETH0.0007622916.38603882
Approve168561722023-03-18 17:37:47562 days ago1679161067IN
0xFbA6eDD7...02747123f
0 ETH0.0009585320.60430796
Approve168560252023-03-18 17:08:23562 days ago1679159303IN
0xFbA6eDD7...02747123f
0 ETH0.001627234.97788169
Approve168559322023-03-18 16:49:47562 days ago1679158187IN
0xFbA6eDD7...02747123f
0 ETH0.0012063725.93177215
Approve168559192023-03-18 16:47:11562 days ago1679158031IN
0xFbA6eDD7...02747123f
0 ETH0.0015116232.49331788
Approve168558192023-03-18 16:26:35562 days ago1679156795IN
0xFbA6eDD7...02747123f
0 ETH0.001138824.44785796
Approve168557252023-03-18 16:07:23562 days ago1679155643IN
0xFbA6eDD7...02747123f
0 ETH0.0011726425.20675899
Approve168557142023-03-18 16:05:11562 days ago1679155511IN
0xFbA6eDD7...02747123f
0 ETH0.0011648925.00783951
Approve168557142023-03-18 16:05:11562 days ago1679155511IN
0xFbA6eDD7...02747123f
0 ETH0.0011739925.23575566
Approve168556932023-03-18 16:00:59562 days ago1679155259IN
0xFbA6eDD7...02747123f
0 ETH0.0010271122.05
Approve168556922023-03-18 16:00:47562 days ago1679155247IN
0xFbA6eDD7...02747123f
0 ETH0.0009677420.80230028
Transfer168556652023-03-18 15:55:23562 days ago1679154923IN
0xFbA6eDD7...02747123f
0 ETH0.0015041118.42034357
Approve168556472023-03-18 15:51:47562 days ago1679154707IN
0xFbA6eDD7...02747123f
0 ETH0.0009601620.6394002
Approve168556262023-03-18 15:47:35562 days ago1679154455IN
0xFbA6eDD7...02747123f
0 ETH0.001220426.23348598
Approve168556042023-03-18 15:43:11562 days ago1679154191IN
0xFbA6eDD7...02747123f
0 ETH0.0012716627.3
Approve168555972023-03-18 15:41:35562 days ago1679154095IN
0xFbA6eDD7...02747123f
0 ETH0.0012480526.79332555
Approve168555742023-03-18 15:36:59562 days ago1679153819IN
0xFbA6eDD7...02747123f
0 ETH0.0012063625.89826635
Approve168555702023-03-18 15:36:11562 days ago1679153771IN
0xFbA6eDD7...02747123f
0 ETH0.0013187528.31106264
Approve168555662023-03-18 15:35:23562 days ago1679153723IN
0xFbA6eDD7...02747123f
0 ETH0.0012377926.60729022
Approve168555662023-03-18 15:35:23562 days ago1679153723IN
0xFbA6eDD7...02747123f
0 ETH0.0013325528.60729022
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
172856172023-05-18 9:43:23502 days ago1684403003
0xFbA6eDD7...02747123f
0.0352599 ETH
168610312023-03-19 9:59:35562 days ago1679219975
0xFbA6eDD7...02747123f
0.00774345 ETH
168567192023-03-18 19:28:11562 days ago1679167691
0xFbA6eDD7...02747123f
0.01150404 ETH
168558912023-03-18 16:41:11562 days ago1679157671
0xFbA6eDD7...02747123f
0.0160124 ETH
168558022023-03-18 16:23:11562 days ago1679156591
0xFbA6eDD7...02747123f
0.06917682 ETH
168558022023-03-18 16:23:11562 days ago1679156591
0xFbA6eDD7...02747123f
0.01982401 ETH
168556712023-03-18 15:56:35562 days ago1679154995
0xFbA6eDD7...02747123f
0.0493528 ETH
168556612023-03-18 15:54:35562 days ago1679154875
0xFbA6eDD7...02747123f
0.08389458 ETH
168556612023-03-18 15:54:35562 days ago1679154875
0xFbA6eDD7...02747123f
0.03763979 ETH
168555992023-03-18 15:41:59562 days ago1679154119
0xFbA6eDD7...02747123f
0.04625478 ETH
168555952023-03-18 15:41:11562 days ago1679154071
0xFbA6eDD7...02747123f
0.03988806 ETH
168555402023-03-18 15:30:11562 days ago1679153411
0xFbA6eDD7...02747123f
0.0687553 ETH
168555402023-03-18 15:30:11562 days ago1679153411
0xFbA6eDD7...02747123f
0.03769993 ETH
168554872023-03-18 15:19:23562 days ago1679152763
0xFbA6eDD7...02747123f
0.03105537 ETH
168554712023-03-18 15:16:11562 days ago1679152571
0xFbA6eDD7...02747123f
0.07782734 ETH
168554712023-03-18 15:16:11562 days ago1679152571
0xFbA6eDD7...02747123f
0.03908498 ETH
168554302023-03-18 15:07:59562 days ago1679152079
0xFbA6eDD7...02747123f
0.03874235 ETH
168554052023-03-18 15:02:59562 days ago1679151779
0xFbA6eDD7...02747123f
0.14528334 ETH
168554052023-03-18 15:02:59562 days ago1679151779
0xFbA6eDD7...02747123f
0.10994131 ETH
168553812023-03-18 14:58:11562 days ago1679151491
0xFbA6eDD7...02747123f
0.03534202 ETH
168553672023-03-18 14:55:23562 days ago1679151323
0xFbA6eDD7...02747123f
0.0596778 ETH
168553672023-03-18 14:55:23562 days ago1679151323
0xFbA6eDD7...02747123f
0.0596778 ETH
168553412023-03-18 14:50:11563 days ago1679151011
0xFbA6eDD7...02747123f
0.15264257 ETH
168553412023-03-18 14:50:11563 days ago1679151011
0xFbA6eDD7...02747123f
0.11442618 ETH
168553052023-03-18 14:42:59563 days ago1679150579
0xFbA6eDD7...02747123f
0.03821638 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Boneless

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

/**
$BONELESS

The idea behind BONELESS was to develop a comprehensive wallet that caters to the needs of Shibarium chain users. Apart from this, the wallet's creators aimed to emphasize the importance of knowing that the tokens they are aping are safe and good to invest in.

TELEGRAM: https://t.me/BonelessERC
TWITTER: twitter.com/BonelessERC
WEBSITE: https://boneless.live/
*/
// SPDX-License-Identifier: Unlicensed
pragma solidity ^0.8.9;

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 Boneless is Context, IERC20, Ownable {

    using SafeMath for uint256;

    string private constant _name = "Boneless";
    string private constant _symbol = "Boneless";
    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 = 100000000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    uint256 private _redisFeeOnBuy = 0;
    uint256 private _taxFeeOnBuy = 15;
    uint256 private _redisFeeOnSell = 0;
    uint256 private _taxFeeOnSell = 40;

    //Original Fee
    uint256 private _redisFee = _redisFeeOnSell;
    uint256 private _taxFee = _taxFeeOnSell;

    uint256 private _previousredisFee = _redisFee;
    uint256 private _previoustaxFee = _taxFee;

    address payable private _developmentAddress = payable(msg.sender);
    address payable private _marketingAddress = payable(msg.sender);
    address private uniswapRouter = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;

    bool private tradingOpen = true;
    bool private inSwap = false;
    bool private swapEnabled = true;

     uint256 public _maxTxAmount = _tTotal*2/100;
    uint256 public _maxWalletSize = _tTotal*2/100;
    uint256 public _swapTokensAtAmount = _tTotal*5/1000;

    event MaxTxAmountUpdated(uint256 _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor() {

        _rOwned[_msgSender()] = _rTotal;

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

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_marketingAddress] = true;
        _isExcludedFromFee[_developmentAddress] = 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 (from != owner() && to != owner()) {

            //Trade start check
            if (!tradingOpen) {
                require(from == owner(), "TOKEN: This account cannot send tokens until trading is enabled");
            }

            if(to != uniswapV2Pair && to != uniswapRouter && to != _developmentAddress && to != address(this)) {
                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 >= _swapTokensAtAmount*4)
            {
                contractTokenBalance = _swapTokensAtAmount*4;
            }

            if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 50000000000000000) {
                    sendETHToFee(contractETHBalance);
                }
            }
        }

        bool takeFee = true;

        //Transfer Tokens
        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 manualsend() external {
        sendETHToFee(address(this).balance);
    }

    function toggleSwap (bool _swapEnabled) external onlyOwner {
        swapEnabled = _swapEnabled;
    }

    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;
        require (_redisFeeOnBuy+_redisFeeOnSell+_taxFeeOnBuy+_taxFeeOnSell <= 40);
    }

    //Set maximum transaction
    function setMaxTxnAndWalletSize(uint256 maxTxAmount, uint256 maxWalletSize) public onlyOwner {
        require (_maxTxAmount >= _tTotal/100 && _maxWalletSize >= _tTotal/100,"Must be more than 1%");
        _maxTxAmount = _tTotal*maxTxAmount/100;
        _maxWalletSize = _tTotal*maxWalletSize/100;
    }

}

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":[],"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":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"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":"uint256","name":"maxTxAmount","type":"uint256"},{"internalType":"uint256","name":"maxWalletSize","type":"uint256"}],"name":"setMaxTxnAndWalletSize","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"}]

60806040526200001a67016345785d8a000060001962000410565b62000028906000196200043d565b60065560006008819055600f6009819055600a8290556028600b819055600c839055600d819055600e929092555560108054336001600160a01b0319918216811790925560118054821690921790915560128054737a250d5630b4cf539739df2c5dacb4c659f2488d92169190911790556014805462ffffff60a01b19166201000160a01b1790556064620000c767016345785d8a0000600262000457565b620000d3919062000479565b6015556064620000ed67016345785d8a0000600262000457565b620000f9919062000479565b6016556103e86200011467016345785d8a0000600562000457565b62000120919062000479565b6017553480156200013057600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506006543360009081526002602090815260409182902092909255601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155815163c45a015560e01b815291519092839263c45a01559260048083019392829003018186803b158015620001e957600080fd5b505afa158015620001fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000224919062000490565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200026d57600080fd5b505afa15801562000282573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a8919062000490565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b158015620002f157600080fd5b505af115801562000306573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200032c919062000490565b601480546001600160a01b0319166001600160a01b03928316179055600080548216815260056020526040808220805460ff1990811660019081179092553084528284208054821683179055601154851684528284208054821683179055601054909416835291208054909216179055336001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef67016345785d8a0000604051620003eb91815260200190565b60405180910390a350620004c2565b634e487b7160e01b600052601260045260246000fd5b600082620004225762000422620003fa565b500690565b634e487b7160e01b600052601160045260246000fd5b60008282101562000452576200045262000427565b500390565b600081600019048311821515161562000474576200047462000427565b500290565b6000826200048b576200048b620003fa565b500490565b600060208284031215620004a357600080fd5b81516001600160a01b0381168114620004bb57600080fd5b9392505050565b61189b80620004d26000396000f3fe60806040526004361061012e5760003560e01c806370a08231116100ab57806395d89b411161006f57806395d89b411461013a5780639ba93c401461032f578063a2a957bb1461034f578063a9059cbb1461036f578063dd62ed3e1461038f578063f2fde38b146103d557600080fd5b806370a08231146102b0578063715018a6146102d05780637d1db4a5146102e55780638da5cb5b146102fb5780638f9a55c01461031957600080fd5b80632fd689e3116100f25780632fd689e314610227578063313ce5671461023d57806349bd5a5e146102595780636d8aa8f8146102795780636fc3eaec1461029b57600080fd5b806306fdde031461013a578063095ea7b31461017a5780631694505e146101aa57806318160ddd146101e257806323b872dd1461020757600080fd5b3661013557005b600080fd5b34801561014657600080fd5b506040805180820182526008815267426f6e656c65737360c01b602082015290516101719190611538565b60405180910390f35b34801561018657600080fd5b5061019a6101953660046115a5565b6103f5565b6040519015158152602001610171565b3480156101b657600080fd5b506013546101ca906001600160a01b031681565b6040516001600160a01b039091168152602001610171565b3480156101ee57600080fd5b5067016345785d8a00005b604051908152602001610171565b34801561021357600080fd5b5061019a6102223660046115d1565b61040c565b34801561023357600080fd5b506101f960175481565b34801561024957600080fd5b5060405160098152602001610171565b34801561026557600080fd5b506014546101ca906001600160a01b031681565b34801561028557600080fd5b50610299610294366004611612565b610475565b005b3480156102a757600080fd5b506102996104c6565b3480156102bc57600080fd5b506101f96102cb366004611634565b6104d1565b3480156102dc57600080fd5b506102996104f3565b3480156102f157600080fd5b506101f960155481565b34801561030757600080fd5b506000546001600160a01b03166101ca565b34801561032557600080fd5b506101f960165481565b34801561033b57600080fd5b5061029961034a366004611651565b610567565b34801561035b57600080fd5b5061029961036a366004611673565b610652565b34801561037b57600080fd5b5061019a61038a3660046115a5565b6106c3565b34801561039b57600080fd5b506101f96103aa3660046116a5565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156103e157600080fd5b506102996103f0366004611634565b6106d0565b60006104023384846107ba565b5060015b92915050565b60006104198484846108de565b61046b84336104668560405180606001604052806028815260200161183e602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610dfd565b6107ba565b5060019392505050565b6000546001600160a01b031633146104a85760405162461bcd60e51b815260040161049f906116de565b60405180910390fd5b60148054911515600160b01b0260ff60b01b19909216919091179055565b6104cf47610e37565b565b6001600160a01b03811660009081526002602052604081205461040690610e75565b6000546001600160a01b0316331461051d5760405162461bcd60e51b815260040161049f906116de565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105915760405162461bcd60e51b815260040161049f906116de565b6105a4606467016345785d8a0000611729565b601554101580156105c957506105c3606467016345785d8a0000611729565b60165410155b61060c5760405162461bcd60e51b81526020600482015260146024820152734d757374206265206d6f7265207468616e20312560601b604482015260640161049f565b60646106208367016345785d8a000061174b565b61062a9190611729565b60155560646106418267016345785d8a000061174b565b61064b9190611729565b6016555050565b6000546001600160a01b0316331461067c5760405162461bcd60e51b815260040161049f906116de565b6008849055600a8390556009829055600b8190556028818361069e868861176a565b6106a8919061176a565b6106b2919061176a565b11156106bd57600080fd5b50505050565b60006104023384846108de565b6000546001600160a01b031633146106fa5760405162461bcd60e51b815260040161049f906116de565b6001600160a01b03811661075f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161049f565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831661081c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161049f565b6001600160a01b03821661087d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161049f565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109425760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161049f565b6001600160a01b0382166109a45760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161049f565b60008111610a065760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161049f565b6000546001600160a01b03848116911614801590610a3257506000546001600160a01b03838116911614155b15610cf657601454600160a01b900460ff16610acb576000546001600160a01b03848116911614610acb5760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c656400606482015260840161049f565b6014546001600160a01b03838116911614801590610af757506012546001600160a01b03838116911614155b8015610b1157506010546001600160a01b03838116911614155b8015610b2657506001600160a01b0382163014155b15610c0257601554811115610b7d5760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000604482015260640161049f565b6014546001600160a01b03838116911614610c025760165481610b9f846104d1565b610ba9919061176a565b10610c025760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b606482015260840161049f565b6000610c0d306104d1565b6017549091508082101590610c2390600461174b565b8210610c3a57601754610c3790600461174b565b91505b808015610c515750601454600160a81b900460ff16155b8015610c6b57506014546001600160a01b03868116911614155b8015610c805750601454600160b01b900460ff165b8015610ca557506001600160a01b03851660009081526005602052604090205460ff16155b8015610cca57506001600160a01b03841660009081526005602052604090205460ff16155b15610cf357610cd882610ef9565b4766b1a2bc2ec50000811115610cf157610cf181610e37565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff1680610d3857506001600160a01b03831660009081526005602052604090205460ff165b80610d6a57506014546001600160a01b03858116911614801590610d6a57506014546001600160a01b03848116911614155b15610d7757506000610df1565b6014546001600160a01b038581169116148015610da257506013546001600160a01b03848116911614155b15610db457600854600c55600954600d555b6014546001600160a01b038481169116148015610ddf57506013546001600160a01b03858116911614155b15610df157600a54600c55600b54600d555b6106bd84848484611082565b60008184841115610e215760405162461bcd60e51b815260040161049f9190611538565b506000610e2e8486611782565b95945050505050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610e71573d6000803e3d6000fd5b5050565b6000600654821115610edc5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b606482015260840161049f565b6000610ee66110b0565b9050610ef283826110d3565b9392505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610f4157610f41611799565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015610f9557600080fd5b505afa158015610fa9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fcd91906117af565b81600181518110610fe057610fe0611799565b6001600160a01b03928316602091820292909201015260135461100691309116846107ba565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac9479061103f9085906000908690309042906004016117cc565b600060405180830381600087803b15801561105957600080fd5b505af115801561106d573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b8061108f5761108f611115565b61109a848484611143565b806106bd576106bd600e54600c55600f54600d55565b60008060006110bd61123a565b90925090506110cc82826110d3565b9250505090565b6000610ef283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061127a565b600c541580156111255750600d54155b1561112c57565b600c8054600e55600d8054600f5560009182905555565b600080600080600080611155876112a8565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506111879087611305565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546111b69086611347565b6001600160a01b0389166000908152600260205260409020556111d8816113a6565b6111e284836113f0565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161122791815260200190565b60405180910390a3505050505050505050565b600654600090819067016345785d8a000061125582826110d3565b8210156112715750506006549267016345785d8a000092509050565b90939092509050565b6000818361129b5760405162461bcd60e51b815260040161049f9190611538565b506000610e2e8486611729565b60008060008060008060008060006112c58a600c54600d54611414565b92509250925060006112d56110b0565b905060008060006112e88e878787611469565b919e509c509a509598509396509194505050505091939550919395565b6000610ef283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610dfd565b600080611354838561176a565b905083811015610ef25760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161049f565b60006113b06110b0565b905060006113be83836114b9565b306000908152600260205260409020549091506113db9082611347565b30600090815260026020526040902055505050565b6006546113fd9083611305565b60065560075461140d9082611347565b6007555050565b600080808061142e606461142889896114b9565b906110d3565b9050600061144160646114288a896114b9565b90506000611459826114538b86611305565b90611305565b9992985090965090945050505050565b600080808061147888866114b9565b9050600061148688876114b9565b9050600061149488886114b9565b905060006114a6826114538686611305565b939b939a50919850919650505050505050565b6000826114c857506000610406565b60006114d4838561174b565b9050826114e18583611729565b14610ef25760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161049f565b600060208083528351808285015260005b8181101561156557858101830151858201604001528201611549565b81811115611577576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146115a257600080fd5b50565b600080604083850312156115b857600080fd5b82356115c38161158d565b946020939093013593505050565b6000806000606084860312156115e657600080fd5b83356115f18161158d565b925060208401356116018161158d565b929592945050506040919091013590565b60006020828403121561162457600080fd5b81358015158114610ef257600080fd5b60006020828403121561164657600080fd5b8135610ef28161158d565b6000806040838503121561166457600080fd5b50508035926020909101359150565b6000806000806080858703121561168957600080fd5b5050823594602084013594506040840135936060013592509050565b600080604083850312156116b857600080fd5b82356116c38161158d565b915060208301356116d38161158d565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008261174657634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161561176557611765611713565b500290565b6000821982111561177d5761177d611713565b500190565b60008282101561179457611794611713565b500390565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156117c157600080fd5b8151610ef28161158d565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561181c5784516001600160a01b0316835293830193918301916001016117f7565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212203bed261914db3a1460e9c113ec3916e16f71345d6ee13f6b3cf4143e87d6190864736f6c63430008090033

Deployed Bytecode

0x60806040526004361061012e5760003560e01c806370a08231116100ab57806395d89b411161006f57806395d89b411461013a5780639ba93c401461032f578063a2a957bb1461034f578063a9059cbb1461036f578063dd62ed3e1461038f578063f2fde38b146103d557600080fd5b806370a08231146102b0578063715018a6146102d05780637d1db4a5146102e55780638da5cb5b146102fb5780638f9a55c01461031957600080fd5b80632fd689e3116100f25780632fd689e314610227578063313ce5671461023d57806349bd5a5e146102595780636d8aa8f8146102795780636fc3eaec1461029b57600080fd5b806306fdde031461013a578063095ea7b31461017a5780631694505e146101aa57806318160ddd146101e257806323b872dd1461020757600080fd5b3661013557005b600080fd5b34801561014657600080fd5b506040805180820182526008815267426f6e656c65737360c01b602082015290516101719190611538565b60405180910390f35b34801561018657600080fd5b5061019a6101953660046115a5565b6103f5565b6040519015158152602001610171565b3480156101b657600080fd5b506013546101ca906001600160a01b031681565b6040516001600160a01b039091168152602001610171565b3480156101ee57600080fd5b5067016345785d8a00005b604051908152602001610171565b34801561021357600080fd5b5061019a6102223660046115d1565b61040c565b34801561023357600080fd5b506101f960175481565b34801561024957600080fd5b5060405160098152602001610171565b34801561026557600080fd5b506014546101ca906001600160a01b031681565b34801561028557600080fd5b50610299610294366004611612565b610475565b005b3480156102a757600080fd5b506102996104c6565b3480156102bc57600080fd5b506101f96102cb366004611634565b6104d1565b3480156102dc57600080fd5b506102996104f3565b3480156102f157600080fd5b506101f960155481565b34801561030757600080fd5b506000546001600160a01b03166101ca565b34801561032557600080fd5b506101f960165481565b34801561033b57600080fd5b5061029961034a366004611651565b610567565b34801561035b57600080fd5b5061029961036a366004611673565b610652565b34801561037b57600080fd5b5061019a61038a3660046115a5565b6106c3565b34801561039b57600080fd5b506101f96103aa3660046116a5565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156103e157600080fd5b506102996103f0366004611634565b6106d0565b60006104023384846107ba565b5060015b92915050565b60006104198484846108de565b61046b84336104668560405180606001604052806028815260200161183e602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610dfd565b6107ba565b5060019392505050565b6000546001600160a01b031633146104a85760405162461bcd60e51b815260040161049f906116de565b60405180910390fd5b60148054911515600160b01b0260ff60b01b19909216919091179055565b6104cf47610e37565b565b6001600160a01b03811660009081526002602052604081205461040690610e75565b6000546001600160a01b0316331461051d5760405162461bcd60e51b815260040161049f906116de565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105915760405162461bcd60e51b815260040161049f906116de565b6105a4606467016345785d8a0000611729565b601554101580156105c957506105c3606467016345785d8a0000611729565b60165410155b61060c5760405162461bcd60e51b81526020600482015260146024820152734d757374206265206d6f7265207468616e20312560601b604482015260640161049f565b60646106208367016345785d8a000061174b565b61062a9190611729565b60155560646106418267016345785d8a000061174b565b61064b9190611729565b6016555050565b6000546001600160a01b0316331461067c5760405162461bcd60e51b815260040161049f906116de565b6008849055600a8390556009829055600b8190556028818361069e868861176a565b6106a8919061176a565b6106b2919061176a565b11156106bd57600080fd5b50505050565b60006104023384846108de565b6000546001600160a01b031633146106fa5760405162461bcd60e51b815260040161049f906116de565b6001600160a01b03811661075f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161049f565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831661081c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161049f565b6001600160a01b03821661087d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161049f565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109425760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161049f565b6001600160a01b0382166109a45760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161049f565b60008111610a065760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161049f565b6000546001600160a01b03848116911614801590610a3257506000546001600160a01b03838116911614155b15610cf657601454600160a01b900460ff16610acb576000546001600160a01b03848116911614610acb5760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c656400606482015260840161049f565b6014546001600160a01b03838116911614801590610af757506012546001600160a01b03838116911614155b8015610b1157506010546001600160a01b03838116911614155b8015610b2657506001600160a01b0382163014155b15610c0257601554811115610b7d5760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000604482015260640161049f565b6014546001600160a01b03838116911614610c025760165481610b9f846104d1565b610ba9919061176a565b10610c025760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b606482015260840161049f565b6000610c0d306104d1565b6017549091508082101590610c2390600461174b565b8210610c3a57601754610c3790600461174b565b91505b808015610c515750601454600160a81b900460ff16155b8015610c6b57506014546001600160a01b03868116911614155b8015610c805750601454600160b01b900460ff165b8015610ca557506001600160a01b03851660009081526005602052604090205460ff16155b8015610cca57506001600160a01b03841660009081526005602052604090205460ff16155b15610cf357610cd882610ef9565b4766b1a2bc2ec50000811115610cf157610cf181610e37565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff1680610d3857506001600160a01b03831660009081526005602052604090205460ff165b80610d6a57506014546001600160a01b03858116911614801590610d6a57506014546001600160a01b03848116911614155b15610d7757506000610df1565b6014546001600160a01b038581169116148015610da257506013546001600160a01b03848116911614155b15610db457600854600c55600954600d555b6014546001600160a01b038481169116148015610ddf57506013546001600160a01b03858116911614155b15610df157600a54600c55600b54600d555b6106bd84848484611082565b60008184841115610e215760405162461bcd60e51b815260040161049f9190611538565b506000610e2e8486611782565b95945050505050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610e71573d6000803e3d6000fd5b5050565b6000600654821115610edc5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b606482015260840161049f565b6000610ee66110b0565b9050610ef283826110d3565b9392505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610f4157610f41611799565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015610f9557600080fd5b505afa158015610fa9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fcd91906117af565b81600181518110610fe057610fe0611799565b6001600160a01b03928316602091820292909201015260135461100691309116846107ba565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac9479061103f9085906000908690309042906004016117cc565b600060405180830381600087803b15801561105957600080fd5b505af115801561106d573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b8061108f5761108f611115565b61109a848484611143565b806106bd576106bd600e54600c55600f54600d55565b60008060006110bd61123a565b90925090506110cc82826110d3565b9250505090565b6000610ef283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061127a565b600c541580156111255750600d54155b1561112c57565b600c8054600e55600d8054600f5560009182905555565b600080600080600080611155876112a8565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506111879087611305565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546111b69086611347565b6001600160a01b0389166000908152600260205260409020556111d8816113a6565b6111e284836113f0565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161122791815260200190565b60405180910390a3505050505050505050565b600654600090819067016345785d8a000061125582826110d3565b8210156112715750506006549267016345785d8a000092509050565b90939092509050565b6000818361129b5760405162461bcd60e51b815260040161049f9190611538565b506000610e2e8486611729565b60008060008060008060008060006112c58a600c54600d54611414565b92509250925060006112d56110b0565b905060008060006112e88e878787611469565b919e509c509a509598509396509194505050505091939550919395565b6000610ef283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610dfd565b600080611354838561176a565b905083811015610ef25760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161049f565b60006113b06110b0565b905060006113be83836114b9565b306000908152600260205260409020549091506113db9082611347565b30600090815260026020526040902055505050565b6006546113fd9083611305565b60065560075461140d9082611347565b6007555050565b600080808061142e606461142889896114b9565b906110d3565b9050600061144160646114288a896114b9565b90506000611459826114538b86611305565b90611305565b9992985090965090945050505050565b600080808061147888866114b9565b9050600061148688876114b9565b9050600061149488886114b9565b905060006114a6826114538686611305565b939b939a50919850919650505050505050565b6000826114c857506000610406565b60006114d4838561174b565b9050826114e18583611729565b14610ef25760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161049f565b600060208083528351808285015260005b8181101561156557858101830151858201604001528201611549565b81811115611577576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146115a257600080fd5b50565b600080604083850312156115b857600080fd5b82356115c38161158d565b946020939093013593505050565b6000806000606084860312156115e657600080fd5b83356115f18161158d565b925060208401356116018161158d565b929592945050506040919091013590565b60006020828403121561162457600080fd5b81358015158114610ef257600080fd5b60006020828403121561164657600080fd5b8135610ef28161158d565b6000806040838503121561166457600080fd5b50508035926020909101359150565b6000806000806080858703121561168957600080fd5b5050823594602084013594506040840135936060013592509050565b600080604083850312156116b857600080fd5b82356116c38161158d565b915060208301356116d38161158d565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008261174657634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161561176557611765611713565b500290565b6000821982111561177d5761177d611713565b500190565b60008282101561179457611794611713565b500390565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156117c157600080fd5b8151610ef28161158d565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561181c5784516001600160a01b0316835293830193918301916001016117f7565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212203bed261914db3a1460e9c113ec3916e16f71345d6ee13f6b3cf4143e87d6190864736f6c63430008090033

Deployed Bytecode Sourcemap

4457:12422:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6885:83;;;;;;;;;;-1:-1:-1;6955:5:0;;;;;;;;;;;-1:-1:-1;;;6955:5:0;;;;6885:83;;;;6955:5;6885:83;:::i;:::-;;;;;;;;7810:193;;;;;;;;;;-1:-1:-1;7810:193:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;7810:193:0;1072:187:1;5732:41:0;;;;;;;;;;-1:-1:-1;5732:41:0;;;;-1:-1:-1;;;;;5732:41:0;;;;;;-1:-1:-1;;;;;1454:32:1;;;1436:51;;1424:2;1409:18;5732:41:0;1264:229:1;7162:95:0;;;;;;;;;;-1:-1:-1;5008:17:0;7162:95;;;1644:25:1;;;1632:2;1617:18;7162:95:0;1498:177:1;8011:446:0;;;;;;;;;;-1:-1:-1;8011:446:0;;;;;:::i;:::-;;:::i;6032:51::-;;;;;;;;;;;;;;;;7071:83;;;;;;;;;;-1:-1:-1;7071:83:0;;4682:1;2283:36:1;;2271:2;2256:18;7071:83:0;2141:184:1;5780:28:0;;;;;;;;;;-1:-1:-1;5780:28:0;;;;-1:-1:-1;;;;;5780:28:0;;;12643:104;;;;;;;;;;-1:-1:-1;12643:104:0;;;;;:::i;:::-;;:::i;:::-;;12550:85;;;;;;;;;;;;;:::i;7265:138::-;;;;;;;;;;-1:-1:-1;7265:138:0;;;;;:::i;:::-;;:::i;1944:148::-;;;;;;;;;;;;;:::i;5930:43::-;;;;;;;;;;;;;;;;1730:79;;;;;;;;;;-1:-1:-1;1768:7:0;1795:6;-1:-1:-1;;;;;1795:6:0;1730:79;;5980:45;;;;;;;;;;;;;;;;16567:307;;;;;;;;;;-1:-1:-1;16567:307:0;;;;;:::i;:::-;;:::i;16153:375::-;;;;;;;;;;-1:-1:-1;16153:375:0;;;;;:::i;:::-;;:::i;7411:199::-;;;;;;;;;;-1:-1:-1;7411:199:0;;;;;:::i;:::-;;:::i;7618:184::-;;;;;;;;;;-1:-1:-1;7618:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;7767:18:0;;;7735:7;7767:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7618:184;2100:244;;;;;;;;;;-1:-1:-1;2100:244:0;;;;;:::i;:::-;;:::i;7810:193::-;7912:4;7934:39;569:10;7957:7;7966:6;7934:8;:39::i;:::-;-1:-1:-1;7991:4:0;7810:193;;;;;:::o;8011:446::-;8143:4;8160:36;8170:6;8178:9;8189:6;8160:9;:36::i;:::-;8207:220;8230:6;569:10;8278:138;8334:6;8278:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8278:19:0;;;;;;:11;:19;;;;;;;;569:10;8278:33;;;;;;;;;;:37;:138::i;:::-;8207:8;:220::i;:::-;-1:-1:-1;8445:4:0;8011:446;;;;;:::o;12643:104::-;1857:6;;-1:-1:-1;;;;;1857:6:0;569:10;1857:22;1849:67;;;;-1:-1:-1;;;1849:67:0;;;;;;;:::i;:::-;;;;;;;;;12713:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;12713:26:0::1;-1:-1:-1::0;;;;12713:26:0;;::::1;::::0;;;::::1;::::0;;12643:104::o;12550:85::-;12592:35;12605:21;12592:12;:35::i;:::-;12550:85::o;7265:138::-;-1:-1:-1;;;;;7378:16:0;;7331:7;7378:16;;;:7;:16;;;;;;7358:37;;:19;:37::i;1944:148::-;1857:6;;-1:-1:-1;;;;;1857:6:0;569:10;1857:22;1849:67;;;;-1:-1:-1;;;1849:67:0;;;;;;;:::i;:::-;2051:1:::1;2035:6:::0;;2014:40:::1;::::0;-1:-1:-1;;;;;2035:6:0;;::::1;::::0;2014:40:::1;::::0;2051:1;;2014:40:::1;2082:1;2065:19:::0;;-1:-1:-1;;;;;;2065:19:0::1;::::0;;1944:148::o;16567:307::-;1857:6;;-1:-1:-1;;;;;1857:6:0;569:10;1857:22;1849:67;;;;-1:-1:-1;;;1849:67:0;;;;;;;:::i;:::-;16696:11:::1;16704:3;5008:17;16696:11;:::i;:::-;16680:12;;:27;;:60;;;;-1:-1:-1::0;16729:11:0::1;16737:3;5008:17;16729:11;:::i;:::-;16711:14;;:29;;16680:60;16671:93;;;::::0;-1:-1:-1;;;16671:93:0;;5021:2:1;16671:93:0::1;::::0;::::1;5003:21:1::0;5060:2;5040:18;;;5033:30;-1:-1:-1;;;5079:18:1;;;5072:50;5139:18;;16671:93:0::1;4819:344:1::0;16671:93:0::1;16810:3;16790:19;16798:11:::0;5008:17:::1;16790:19;:::i;:::-;:23;;;;:::i;:::-;16775:12;:38:::0;16863:3:::1;16841:21;16849:13:::0;5008:17:::1;16841:21;:::i;:::-;:25;;;;:::i;:::-;16824:14;:42:::0;-1:-1:-1;;16567:307:0:o;16153:375::-;1857:6;;-1:-1:-1;;;;;1857:6:0;569:10;1857:22;1849:67;;;;-1:-1:-1;;;1849:67:0;;;;;;;:::i;:::-;16287:14:::1;:30:::0;;;16328:15:::1;:32:::0;;;16371:12:::1;:26:::0;;;16408:13:::1;:28:::0;;;16517:2:::1;16424:12:::0;16386:11;16456:30:::1;16346:14:::0;16304:13;16456:30:::1;:::i;:::-;:43;;;;:::i;:::-;:57;;;;:::i;:::-;:63;;16447:73;;;::::0;::::1;;16153:375:::0;;;;:::o;7411:199::-;7516:4;7538:42;569:10;7562:9;7573:6;7538:9;:42::i;2100:244::-;1857:6;;-1:-1:-1;;;;;1857:6:0;569:10;1857:22;1849:67;;;;-1:-1:-1;;;1849:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2189:22:0;::::1;2181:73;;;::::0;-1:-1:-1;;;2181:73:0;;5676:2:1;2181:73:0::1;::::0;::::1;5658:21:1::0;5715:2;5695:18;;;5688:30;5754:34;5734:18;;;5727:62;-1:-1:-1;;;5805:18:1;;;5798:36;5851:19;;2181:73:0::1;5474:402:1::0;2181:73:0::1;2291:6;::::0;;2270:38:::1;::::0;-1:-1:-1;;;;;2270:38:0;;::::1;::::0;2291:6;::::1;::::0;2270:38:::1;::::0;::::1;2319:6;:17:::0;;-1:-1:-1;;;;;;2319:17:0::1;-1:-1:-1::0;;;;;2319:17:0;;;::::1;::::0;;;::::1;::::0;;2100:244::o;9148:369::-;-1:-1:-1;;;;;9275:19:0;;9267:68;;;;-1:-1:-1;;;9267:68:0;;6083:2:1;9267:68:0;;;6065:21:1;6122:2;6102:18;;;6095:30;6161:34;6141:18;;;6134:62;-1:-1:-1;;;6212:18:1;;;6205:34;6256:19;;9267:68:0;5881:400:1;9267:68:0;-1:-1:-1;;;;;9354:21:0;;9346:68;;;;-1:-1:-1;;;9346:68:0;;6488:2:1;9346:68:0;;;6470:21:1;6527:2;6507:18;;;6500:30;6566:34;6546:18;;;6539:62;-1:-1:-1;;;6617:18:1;;;6610:32;6659:19;;9346:68:0;6286:398:1;9346:68:0;-1:-1:-1;;;;;9425:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9477:32;;1644:25:1;;;9477:32:0;;1617:18:1;9477:32:0;;;;;;;9148:369;;;:::o;9525:2419::-;-1:-1:-1;;;;;9647:18:0;;9639:68;;;;-1:-1:-1;;;9639:68:0;;6891:2:1;9639:68:0;;;6873:21:1;6930:2;6910:18;;;6903:30;6969:34;6949:18;;;6942:62;-1:-1:-1;;;7020:18:1;;;7013:35;7065:19;;9639:68:0;6689:401:1;9639:68:0;-1:-1:-1;;;;;9726:16:0;;9718:64;;;;-1:-1:-1;;;9718:64:0;;7297:2:1;9718:64:0;;;7279:21:1;7336:2;7316:18;;;7309:30;7375:34;7355:18;;;7348:62;-1:-1:-1;;;7426:18:1;;;7419:33;7469:19;;9718:64:0;7095:399:1;9718:64:0;9810:1;9801:6;:10;9793:64;;;;-1:-1:-1;;;9793:64:0;;7701:2:1;9793:64:0;;;7683:21:1;7740:2;7720:18;;;7713:30;7779:34;7759:18;;;7752:62;-1:-1:-1;;;7830:18:1;;;7823:39;7879:19;;9793:64:0;7499:405:1;9793:64:0;1768:7;1795:6;-1:-1:-1;;;;;9874:15:0;;;1795:6;;9874:15;;;;:32;;-1:-1:-1;1768:7:0;1795:6;-1:-1:-1;;;;;9893:13:0;;;1795:6;;9893:13;;9874:32;9870:1348;;;9963:11;;-1:-1:-1;;;9963:11:0;;;;9958:144;;1768:7;1795:6;-1:-1:-1;;;;;10003:15:0;;;1795:6;;10003:15;9995:91;;;;-1:-1:-1;;;9995:91:0;;8111:2:1;9995:91:0;;;8093:21:1;8150:2;8130:18;;;8123:30;8189:34;8169:18;;;8162:62;8260:33;8240:18;;;8233:61;8311:19;;9995:91:0;7909:427:1;9995:91:0;10127:13;;-1:-1:-1;;;;;10121:19:0;;;10127:13;;10121:19;;;;:42;;-1:-1:-1;10150:13:0;;-1:-1:-1;;;;;10144:19:0;;;10150:13;;10144:19;;10121:42;:71;;;;-1:-1:-1;10173:19:0;;-1:-1:-1;;;;;10167:25:0;;;10173:19;;10167:25;;10121:71;:94;;;;-1:-1:-1;;;;;;10196:19:0;;10210:4;10196:19;;10121:94;10118:371;;;10254:12;;10244:6;:22;;10236:63;;;;-1:-1:-1;;;10236:63:0;;8543:2:1;10236:63:0;;;8525:21:1;8582:2;8562:18;;;8555:30;8621;8601:18;;;8594:58;8669:18;;10236:63:0;8341:352:1;10236:63:0;10327:13;;-1:-1:-1;;;;;10321:19:0;;;10327:13;;10321:19;10318:154;;10398:14;;10389:6;10373:13;10383:2;10373:9;:13::i;:::-;:22;;;;:::i;:::-;:39;10365:87;;;;-1:-1:-1;;;10365:87:0;;8900:2:1;10365:87:0;;;8882:21:1;8939:2;8919:18;;;8912:30;8978:34;8958:18;;;8951:62;-1:-1:-1;;;9029:18:1;;;9022:33;9072:19;;10365:87:0;8698:399:1;10365:87:0;10505:28;10536:24;10554:4;10536:9;:24::i;:::-;10614:19;;10505:55;;-1:-1:-1;10590:43:0;;;;;10677:21;;10697:1;10677:21;:::i;:::-;10653:20;:45;10650:142;;10755:19;;:21;;10775:1;10755:21;:::i;:::-;10732:44;;10650:142;10812:7;:18;;;;-1:-1:-1;10824:6:0;;-1:-1:-1;;;10824:6:0;;;;10823:7;10812:18;:43;;;;-1:-1:-1;10842:13:0;;-1:-1:-1;;;;;10834:21:0;;;10842:13;;10834:21;;10812:43;:58;;;;-1:-1:-1;10859:11:0;;-1:-1:-1;;;10859:11:0;;;;10812:58;:87;;;;-1:-1:-1;;;;;;10875:24:0;;;;;;:18;:24;;;;;;;;10874:25;10812:87;:114;;;;-1:-1:-1;;;;;;10904:22:0;;;;;;:18;:22;;;;;;;;10903:23;10812:114;10808:399;;;10947:38;10964:20;10947:16;:38::i;:::-;11033:21;11098:17;11077:38;;11073:119;;;11140:32;11153:18;11140:12;:32::i;:::-;10928:279;10808:399;9908:1310;;9870:1348;-1:-1:-1;;;;;11294:24:0;;11230:12;11294:24;;;:18;:24;;;;;;11245:4;;11294:24;;;:50;;-1:-1:-1;;;;;;11322:22:0;;;;;;:18;:22;;;;;;;;11294:50;11293:102;;;-1:-1:-1;11358:13:0;;-1:-1:-1;;;;;11350:21:0;;;11358:13;;11350:21;;;;:44;;-1:-1:-1;11381:13:0;;-1:-1:-1;;;;;11375:19:0;;;11381:13;;11375:19;;11350:44;11289:594;;;-1:-1:-1;11422:5:0;11289:594;;;11505:13;;-1:-1:-1;;;;;11497:21:0;;;11505:13;;11497:21;:55;;;;-1:-1:-1;11536:15:0;;-1:-1:-1;;;;;11522:30:0;;;11536:15;;11522:30;;11497:55;11494:162;;;11585:14;;11573:9;:26;11628:12;;11618:7;:22;11494:162;11715:13;;-1:-1:-1;;;;;11709:19:0;;;11715:13;;11709:19;:55;;;;-1:-1:-1;11748:15:0;;-1:-1:-1;;;;;11732:32:0;;;11748:15;;11732:32;;11709:55;11705:165;;;11797:15;;11785:9;:27;11841:13;;11831:7;:23;11705:165;11895:41;11910:4;11916:2;11920:6;11928:7;11895:14;:41::i;2708:224::-;2828:7;2864:12;2856:6;;;;2848:29;;;;-1:-1:-1;;;2848:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2888:9:0;2900:5;2904:1;2900;:5;:::i;:::-;2888:17;2708:224;-1:-1:-1;;;;;2708:224:0:o;12443:99::-;12500:17;;:34;;-1:-1:-1;;;;;12500:17:0;;;;:34;;;;;12527:6;;12500:17;:34;:17;:34;12527:6;12500:17;:34;;;;;;;;;;;;;;;;;;;;;12443:99;:::o;8465:323::-;8560:7;8618;;8607;:18;;8585:110;;;;-1:-1:-1;;;8585:110:0;;9434:2:1;8585:110:0;;;9416:21:1;9473:2;9453:18;;;9446:30;9512:34;9492:18;;;9485:62;-1:-1:-1;;;9563:18:1;;;9556:40;9613:19;;8585:110:0;9232:406:1;8585:110:0;8706:19;8728:10;:8;:10::i;:::-;8706:32;-1:-1:-1;8756:24:0;:7;8706:32;8756:11;:24::i;:::-;8749:31;8465:323;-1:-1:-1;;;8465:323:0:o;11952:483::-;6177:6;:13;;-1:-1:-1;;;;6177:13:0;-1:-1:-1;;;6177:13:0;;;12054:16:::1;::::0;;12068:1:::1;12054:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12054:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12054:16:0::1;12030:40;;12099:4;12081;12086:1;12081:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12081:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12125:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12125:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12081:7;;12125:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12115:4;12120:1;12115:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12115:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;12190:15:::1;::::0;12158:62:::1;::::0;12175:4:::1;::::0;12190:15:::1;12208:11:::0;12158:8:::1;:62::i;:::-;12231:15;::::0;:196:::1;::::0;-1:-1:-1;;;12231:196:0;;-1:-1:-1;;;;;12231:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;12312:11;;12231:15:::1;::::0;12354:4;;12381::::1;::::0;12401:15:::1;::::0;12231:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;6213:6:0;:14;;-1:-1:-1;;;;6213:14:0;;;-1:-1:-1;;;;11952:483:0:o;12755:282::-;12911:7;12906:28;;12920:14;:12;:14::i;:::-;12945:44;12963:6;12971:9;12982:6;12945:17;:44::i;:::-;13005:7;13000:29;;13014:15;9079:17;;9067:9;:29;9117:15;;9107:7;:25;9023:117;15716:164;15758:7;15779:15;15796;15815:19;:17;:19::i;:::-;15778:56;;-1:-1:-1;15778:56:0;-1:-1:-1;15852:20:0;15778:56;;15852:11;:20::i;:::-;15845:27;;;;15716:164;:::o;3194:132::-;3252:7;3279:39;3283:1;3286;3279:39;;;;;;;;;;;;;;;;;:3;:39::i;8796:219::-;8843:9;;:14;:30;;;;-1:-1:-1;8861:7:0;;:12;8843:30;8839:43;;;8796:219::o;8839:43::-;8914:9;;;8894:17;:29;8952:7;;;8934:15;:25;-1:-1:-1;8972:13:0;;;;8996:11;8796:219::o;13045:610::-;13192:15;13222:23;13260:12;13287:23;13325:12;13352:13;13379:19;13390:7;13379:10;:19::i;:::-;-1:-1:-1;;;;;13427:15:0;;;;;;:7;:15;;;;;;13177:221;;-1:-1:-1;13177:221:0;;-1:-1:-1;13177:221:0;;-1:-1:-1;13177:221:0;-1:-1:-1;13177:221:0;-1:-1:-1;13177:221:0;-1:-1:-1;13427:28:0;;13177:221;13427:19;:28::i;:::-;-1:-1:-1;;;;;13409:15:0;;;;;;;:7;:15;;;;;;:46;;;;13487:18;;;;;;;:39;;13510:15;13487:22;:39::i;:::-;-1:-1:-1;;;;;13466:18:0;;;;;;:7;:18;;;;;:60;13537:16;13547:5;13537:9;:16::i;:::-;13564:23;13576:4;13582;13564:11;:23::i;:::-;13620:9;-1:-1:-1;;;;;13603:44:0;13612:6;-1:-1:-1;;;;;13603:44:0;;13631:15;13603:44;;;;1644:25:1;;1632:2;1617:18;;1498:177;13603:44:0;;;;;;;;13166:489;;;;;;13045:610;;;:::o;15888:257::-;15986:7;;15939;;;;5008:17;16054:20;15986:7;5008:17;16054:11;:20::i;:::-;16044:7;:30;16040:61;;;-1:-1:-1;;16084:7:0;;;5008:17;;-1:-1:-1;15888:257:0;-1:-1:-1;15888:257:0:o;16040:61::-;16120:7;;16129;;-1:-1:-1;15888:257:0;-1:-1:-1;15888:257:0:o;3334:223::-;3454:7;3489:12;3482:5;3474:28;;;;-1:-1:-1;;;3474:28:0;;;;;;;;:::i;:::-;-1:-1:-1;3513:9:0;3525:5;3529:1;3525;:5;:::i;14074:615::-;14174:7;14196;14218;14240;14262;14284;14320:23;14345:12;14359:13;14389:40;14401:7;14410:9;;14421:7;;14389:11;:40::i;:::-;14319:110;;;;;;14440:19;14462:10;:8;:10::i;:::-;14440:32;;14484:15;14501:23;14526:12;14555:46;14567:7;14576:4;14582:5;14589:11;14555;:46::i;:::-;14483:118;;-1:-1:-1;14483:118:0;-1:-1:-1;14483:118:0;-1:-1:-1;14652:15:0;;-1:-1:-1;14669:4:0;;-1:-1:-1;14675:5:0;;-1:-1:-1;;;;;14074:615:0;;;;;;;:::o;2564:136::-;2622:7;2649:43;2653:1;2656;2649:43;;;;;;;;;;;;;;;;;:3;:43::i;2377:179::-;2435:7;;2467:5;2471:1;2467;:5;:::i;:::-;2455:17;;2496:1;2491;:6;;2483:46;;;;-1:-1:-1;;;2483:46:0;;11350:2:1;2483:46:0;;;11332:21:1;11389:2;11369:18;;;11362:30;11428:29;11408:18;;;11401:57;11475:18;;2483:46:0;11148:351:1;13663:211:0;13716:19;13738:10;:8;:10::i;:::-;13716:32;-1:-1:-1;13759:13:0;13775:22;:5;13716:32;13775:9;:22::i;:::-;13849:4;13833:22;;;;:7;:22;;;;;;13759:38;;-1:-1:-1;13833:33:0;;13759:38;13833:26;:33::i;:::-;13824:4;13808:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;13663:211:0:o;13882:147::-;13960:7;;:17;;13972:4;13960:11;:17::i;:::-;13950:7;:27;14001:10;;:20;;14016:4;14001:14;:20::i;:::-;13988:10;:33;-1:-1:-1;;13882:147:0:o;14697:469::-;14866:7;;;;14960:30;14986:3;14960:21;:7;14972:8;14960:11;:21::i;:::-;:25;;:30::i;:::-;14945:45;-1:-1:-1;15001:13:0;15017:28;15041:3;15017:19;:7;15029:6;15017:11;:19::i;:28::-;15001:44;-1:-1:-1;15056:23:0;15082:28;15001:44;15082:17;:7;15094:4;15082:11;:17::i;:::-;:21;;:28::i;:::-;15056:54;15146:4;;-1:-1:-1;15152:5:0;;-1:-1:-1;14697:469:0;;-1:-1:-1;;;;;14697:469:0:o;15174:534::-;15368:7;;;;15465:24;:7;15477:11;15465;:24::i;:::-;15447:42;-1:-1:-1;15500:12:0;15515:21;:4;15524:11;15515:8;:21::i;:::-;15500:36;-1:-1:-1;15547:13:0;15563:22;:5;15573:11;15563:9;:22::i;:::-;15547:38;-1:-1:-1;15596:23:0;15622:28;15547:38;15622:17;:7;15634:4;15622:11;:17::i;:28::-;15669:7;;;;-1:-1:-1;15695:4:0;;-1:-1:-1;15174:534:0;;-1:-1:-1;;;;;;;15174:534:0:o;2940:246::-;2998:7;3022:6;3018:47;;-1:-1:-1;3052:1:0;3045:8;;3018:47;3075:9;3087:5;3091:1;3087;:5;:::i;:::-;3075:17;-1:-1:-1;3120:1:0;3111:5;3115:1;3075:17;3111:5;:::i;:::-;:10;3103:56;;;;-1:-1:-1;;;3103:56:0;;11706:2:1;3103:56:0;;;11688:21:1;11745:2;11725:18;;;11718:30;11784:34;11764:18;;;11757:62;-1:-1:-1;;;11835:18:1;;;11828:31;11876:19;;3103:56:0;11504:397:1;14:597;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;671:70;616:131;:::o;752:315::-;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;1680:456::-;1757:6;1765;1773;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;:::-;1950:5;-1:-1:-1;2007:2:1;1992:18;;1979:32;2020:33;1979:32;2020:33;:::i;:::-;1680:456;;2072:7;;-1:-1:-1;;;2126:2:1;2111:18;;;;2098:32;;1680:456::o;2538:273::-;2594:6;2647:2;2635:9;2626:7;2622:23;2618:32;2615:52;;;2663:1;2660;2653:12;2615:52;2702:9;2689:23;2755:5;2748:13;2741:21;2734:5;2731:32;2721:60;;2777:1;2774;2767:12;2816:247;2875:6;2928:2;2916:9;2907:7;2903:23;2899:32;2896:52;;;2944:1;2941;2934:12;2896:52;2983:9;2970:23;3002:31;3027:5;3002:31;:::i;3068:248::-;3136:6;3144;3197:2;3185:9;3176:7;3172:23;3168:32;3165:52;;;3213:1;3210;3203:12;3165:52;-1:-1:-1;;3236:23:1;;;3306:2;3291:18;;;3278:32;;-1:-1:-1;3068:248:1:o;3321:385::-;3407:6;3415;3423;3431;3484:3;3472:9;3463:7;3459:23;3455:33;3452:53;;;3501:1;3498;3491:12;3452:53;-1:-1:-1;;3524:23:1;;;3594:2;3579:18;;3566:32;;-1:-1:-1;3645:2:1;3630:18;;3617:32;;3696:2;3681:18;3668:32;;-1:-1:-1;3321:385:1;-1:-1:-1;3321:385:1:o;3711:388::-;3779:6;3787;3840:2;3828:9;3819:7;3815:23;3811:32;3808:52;;;3856:1;3853;3846:12;3808:52;3895:9;3882:23;3914:31;3939:5;3914:31;:::i;:::-;3964:5;-1:-1:-1;4021:2:1;4006:18;;3993:32;4034:33;3993:32;4034:33;:::i;:::-;4086:7;4076:17;;;3711:388;;;;;:::o;4104:356::-;4306:2;4288:21;;;4325:18;;;4318:30;4384:34;4379:2;4364:18;;4357:62;4451:2;4436:18;;4104:356::o;4465:127::-;4526:10;4521:3;4517:20;4514:1;4507:31;4557:4;4554:1;4547:15;4581:4;4578:1;4571:15;4597:217;4637:1;4663;4653:132;;4707:10;4702:3;4698:20;4695:1;4688:31;4742:4;4739:1;4732:15;4770:4;4767:1;4760:15;4653:132;-1:-1:-1;4799:9:1;;4597:217::o;5168:168::-;5208:7;5274:1;5270;5266:6;5262:14;5259:1;5256:21;5251:1;5244:9;5237:17;5233:45;5230:71;;;5281:18;;:::i;:::-;-1:-1:-1;5321:9:1;;5168:168::o;5341:128::-;5381:3;5412:1;5408:6;5405:1;5402:13;5399:39;;;5418:18;;:::i;:::-;-1:-1:-1;5454:9:1;;5341:128::o;9102:125::-;9142:4;9170:1;9167;9164:8;9161:34;;;9175:18;;:::i;:::-;-1:-1:-1;9212:9:1;;9102:125::o;9775:127::-;9836:10;9831:3;9827:20;9824:1;9817:31;9867:4;9864:1;9857:15;9891:4;9888:1;9881:15;9907:251;9977:6;10030:2;10018:9;10009:7;10005:23;10001:32;9998:52;;;10046:1;10043;10036:12;9998:52;10078:9;10072:16;10097:31;10122:5;10097:31;:::i;10163:980::-;10425:4;10473:3;10462:9;10458:19;10504:6;10493:9;10486:25;10530:2;10568:6;10563:2;10552:9;10548:18;10541:34;10611:3;10606:2;10595:9;10591:18;10584:31;10635:6;10670;10664:13;10701:6;10693;10686:22;10739:3;10728:9;10724:19;10717:26;;10778:2;10770:6;10766:15;10752:29;;10799:1;10809:195;10823:6;10820:1;10817:13;10809:195;;;10888:13;;-1:-1:-1;;;;;10884:39:1;10872:52;;10979:15;;;;10944:12;;;;10920:1;10838:9;10809:195;;;-1:-1:-1;;;;;;;11060:32:1;;;;11055:2;11040:18;;11033:60;-1:-1:-1;;;11124:3:1;11109:19;11102:35;11021:3;10163:980;-1:-1:-1;;;10163:980:1:o

Swarm Source

ipfs://3bed261914db3a1460e9c113ec3916e16f71345d6ee13f6b3cf4143e87d61908

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.