ETH Price: $3,866.73 (-3.58%)

Contract

0xe2e17bF1FC8BFB639c2a7d45aEFBDEBCE139962B
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve205450392024-08-17 1:23:35123 days ago1723857815IN
0xe2e17bF1...CE139962B
0 ETH0.000061551.32978639
Approve205450392024-08-17 1:23:35123 days ago1723857815IN
0xe2e17bF1...CE139962B
0 ETH0.000061551.32978639
Approve205450392024-08-17 1:23:35123 days ago1723857815IN
0xe2e17bF1...CE139962B
0 ETH0.000063431.37026927
Approve205450382024-08-17 1:23:23123 days ago1723857803IN
0xe2e17bF1...CE139962B
0 ETH0.000061551.32978639
Approve205450382024-08-17 1:23:23123 days ago1723857803IN
0xe2e17bF1...CE139962B
0 ETH0.000061551.32978639
Approve205450382024-08-17 1:23:23123 days ago1723857803IN
0xe2e17bF1...CE139962B
0 ETH0.000061551.32978639
Approve205450382024-08-17 1:23:23123 days ago1723857803IN
0xe2e17bF1...CE139962B
0 ETH0.000061551.32978639
Approve205450382024-08-17 1:23:23123 days ago1723857803IN
0xe2e17bF1...CE139962B
0 ETH0.000061551.32978639
Approve205450382024-08-17 1:23:23123 days ago1723857803IN
0xe2e17bF1...CE139962B
0 ETH0.000061551.32978639
Approve205450062024-08-17 1:16:35123 days ago1723857395IN
0xe2e17bF1...CE139962B
0 ETH0.000225844.87890814
Approve205449962024-08-17 1:14:35123 days ago1723857275IN
0xe2e17bF1...CE139962B
0 ETH0.000226344.88956468
Approve205449792024-08-17 1:11:11123 days ago1723857071IN
0xe2e17bF1...CE139962B
0 ETH0.000223834.83543122
Approve205449662024-08-17 1:08:35123 days ago1723856915IN
0xe2e17bF1...CE139962B
0 ETH0.000229814.96458992
Approve205449602024-08-17 1:07:23123 days ago1723856843IN
0xe2e17bF1...CE139962B
0 ETH0.000225784.87752949
Approve205449492024-08-17 1:05:11123 days ago1723856711IN
0xe2e17bF1...CE139962B
0 ETH0.000225994.88208575
Approve205449402024-08-17 1:03:23123 days ago1723856603IN
0xe2e17bF1...CE139962B
0 ETH0.000225464.87062918
Approve205449252024-08-17 1:00:23123 days ago1723856423IN
0xe2e17bF1...CE139962B
0 ETH0.000227134.90663763
Approve205449182024-08-17 0:58:59123 days ago1723856339IN
0xe2e17bF1...CE139962B
0 ETH0.000224794.85602868
Approve205449162024-08-17 0:58:35123 days ago1723856315IN
0xe2e17bF1...CE139962B
0 ETH0.000180643.87633281
Approve205449152024-08-17 0:58:23123 days ago1723856303IN
0xe2e17bF1...CE139962B
0 ETH0.000132552.84805578
Approve205448932024-08-17 0:53:47123 days ago1723856027IN
0xe2e17bF1...CE139962B
0 ETH0.000226024.88275146
Approve205448852024-08-17 0:52:11123 days ago1723855931IN
0xe2e17bF1...CE139962B
0 ETH0.00003980.85441184
Approve205448822024-08-17 0:51:35123 days ago1723855895IN
0xe2e17bF1...CE139962B
0 ETH0.000226294.88849441
Approve205448742024-08-17 0:49:59123 days ago1723855799IN
0xe2e17bF1...CE139962B
0 ETH0.000224294.8452815
Approve205448702024-08-17 0:49:11123 days ago1723855751IN
0xe2e17bF1...CE139962B
0 ETH0.000226034.88296515
View all transactions

Latest 19 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
205448542024-08-17 0:45:59123 days ago1723855559
0xe2e17bF1...CE139962B
0.95569883 ETH
205448542024-08-17 0:45:59123 days ago1723855559
0xe2e17bF1...CE139962B
0.95569883 ETH
205448532024-08-17 0:45:47123 days ago1723855547
0xe2e17bF1...CE139962B
0.01531138 ETH
205448532024-08-17 0:45:47123 days ago1723855547
0xe2e17bF1...CE139962B
0.01531138 ETH
205448512024-08-17 0:45:23123 days ago1723855523
0xe2e17bF1...CE139962B
0.87119333 ETH
205448512024-08-17 0:45:23123 days ago1723855523
0xe2e17bF1...CE139962B
0.87119333 ETH
205448482024-08-17 0:44:47123 days ago1723855487
0xe2e17bF1...CE139962B
0.96382251 ETH
205448482024-08-17 0:44:47123 days ago1723855487
0xe2e17bF1...CE139962B
0.96382251 ETH
205448422024-08-17 0:43:23123 days ago1723855403
0xe2e17bF1...CE139962B
0.83786921 ETH
205448422024-08-17 0:43:23123 days ago1723855403
0xe2e17bF1...CE139962B
0.83786921 ETH
205448402024-08-17 0:42:59123 days ago1723855379
0xe2e17bF1...CE139962B
0.01343693 ETH
205448402024-08-17 0:42:59123 days ago1723855379
0xe2e17bF1...CE139962B
0.01343693 ETH
205448392024-08-17 0:42:47123 days ago1723855367
0xe2e17bF1...CE139962B
0.95318293 ETH
205448392024-08-17 0:42:47123 days ago1723855367
0xe2e17bF1...CE139962B
0.95318293 ETH
205448342024-08-17 0:41:47123 days ago1723855307
0xe2e17bF1...CE139962B
0.75499599 ETH
205448342024-08-17 0:41:47123 days ago1723855307
0xe2e17bF1...CE139962B
0.75499599 ETH
205448312024-08-17 0:41:11123 days ago1723855271
0xe2e17bF1...CE139962B
0.62978128 ETH
205448312024-08-17 0:41:11123 days ago1723855271
0xe2e17bF1...CE139962B
0.62978128 ETH
205448262024-08-17 0:40:11123 days ago1723855211
0xe2e17bF1...CE139962B
1 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MUMU

Compiler Version
v0.8.26+commit.8a97fa7a

Optimization Enabled:
Yes with 200 runs

Other Settings:
paris EvmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-08-17
*/

/**
Web : https://www.mumuerc20.xyz
TG :    https://t.me/mumucoin_erc
X :       https://x.com/mumucoin_erc
*/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.26;

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

library SafeMath {
    function tryAdd(
        uint256 a,
        uint256 b
    ) internal pure returns (bool, uint256) {
        unchecked {
            uint256 c = a + b;
            if (c < a) return (false, 0);
            return (true, c);
        }
    }

    function trySub(
        uint256 a,
        uint256 b
    ) internal pure returns (bool, uint256) {
        unchecked {
            if (b > a) return (false, 0);
            return (true, a - b);
        }
    }

    function tryMul(
        uint256 a,
        uint256 b
    ) internal pure returns (bool, uint256) {
        unchecked {
            if (a == 0) return (true, 0);
            uint256 c = a * b;
            if (c / a != b) return (false, 0);
            return (true, c);
        }
    }

    function tryDiv(
        uint256 a,
        uint256 b
    ) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a / b);
        }
    }

    function tryMod(
        uint256 a,
        uint256 b
    ) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a % b);
        }
    }

    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 mod(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;
        }
    }

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

interface IERC20 {
    function decimals() external view returns (uint8);

    function symbol() external view returns (string memory);

    function name() external view returns (string memory);

    function getOwner() external view returns (address);

    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;
    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);
    }

}

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

    function getPair(
        address tokenA,
        address tokenB
    ) external view returns (address pair);
}

interface IRouter {
    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 MUMU is IERC20, Ownable {
    using SafeMath for uint256;
    string private constant _name = "MUMU";
    string private constant _symbol = "MUMU";
    uint8 private constant _decimals = 9;
    uint256 private _totalSupply = 1_000_000_000 * (10 ** _decimals);
    mapping(address => uint256) _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) public isFeeExempt;
    mapping(address => bool) public isMaxTxLimit;
    mapping(address => bool) private isBot;
    IRouter router;
    address public pair;
    bool private tradingAllowed = false;
    bool private swapEnabled = true;
    bool private swapping;
    uint256 _buyCount = 0;
    uint256 reduceFeeAtTx = 40;
    uint256 preventSwapBefore = 40;
    uint256 private swapThreshold = (_totalSupply * 1) / 100;
    modifier lockTheSwap() {
        swapping = true;
        _;
        swapping = false;
    }
    uint256 private initBuyFee = 11;
    uint256 private initSellFee = 11;
    uint256 private finalBuyFee = 0;
    uint256 private finalSellFee = 0;
    address internal constant DEAD = 0x000000000000000000000000000000000000dEaD;
    address payable internal treasury;
    uint256 public _maxTxAmount = (_totalSupply * 2 ) / 100;
    uint256 public _maxWalletSize = (_totalSupply * 2) / 100;

    constructor(address _taxWallet) {
        router = IRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        treasury = payable(_taxWallet);
        isFeeExempt[address(this)] = true;
        isFeeExempt[treasury] = true;
        isFeeExempt[owner()] = true;
        isMaxTxLimit[treasury] = true;
        isMaxTxLimit[pair] = true;
        _balances[owner()] = _totalSupply;
        emit Transfer(address(0), owner(), _totalSupply);
    }

    receive() external payable {}

    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 enableTrade() external onlyOwner {
        tradingAllowed = true;
    }

    function getOwner() external view override returns (address) {
        return owner();
    }

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

    function transfer(
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(msg.sender, 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(msg.sender, spender, amount);
        return true;
    }

    function totalSupply() public view override returns (uint256) {
        return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(address(0)));
    }

    function shouldContractSwap(
        address sender,
        address recipient
    ) internal view returns (bool) {
        return
            !swapping &&
            swapEnabled &&
            !isFeeExempt[sender] &&
            recipient == pair &&
            _buyCount > preventSwapBefore;
    }

    function setBBot(
        address[] calldata addresses,
        bool _enabled
    ) external onlyOwner {
        for (uint i = 0; i < addresses.length; i++) {
            isBot[addresses[i]] = _enabled;
        }
    }

    function manualSwap() external onlyOwner {
        swapTokensForETH(swapThreshold);
    }

    function rescueERC20(address _address, uint256 percent) external onlyOwner {
        uint256 _amount = IERC20(_address)
            .balanceOf(address(this))
            .mul(percent)
            .div(100);
        IERC20(_address).transfer(owner(), _amount);
    }

    function rescueETH() external onlyOwner {
        require(address(this).balance > 0);
        payable(owner()).transfer(address(this).balance);
    }

    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 shouldTakeFee(
        address sender,
        address recipient
    ) internal view returns (bool) {
        return !isFeeExempt[sender] && !isFeeExempt[recipient];
    }

    function getTotalFee(
        address sender,
        address recipient
    ) internal returns (uint256) {
        if (isBot[sender] || isBot[recipient]) {
            return 100;
        }
        if (sender == pair) {
            _buyCount++;
            return _buyCount < reduceFeeAtTx ? initBuyFee : finalBuyFee;
        }
        if (recipient == pair) {
            return _buyCount < reduceFeeAtTx ? initSellFee : finalSellFee;
        }
        return 0;
    }

    function takeFee(
        address sender,
        address recipient,
        uint256 amount
    ) internal returns (uint256) {
        uint256 feeAmount = amount.mul(
            getTotalFee(sender, recipient)
        ).div(100);
   
        if(shouldTakeFee(sender, recipient))
            _balances[address(this)] = _balances[address(this)].add(feeAmount);
        else if(sender != pair)
        {
            if(shouldMaxTx(sender))
                _balances[sender] = _balances[sender].add(amount);
        }
        emit Transfer(sender, address(this), feeAmount);
        return amount.sub(feeAmount);
    }

    function shouldMaxTx (address addr) internal view returns(bool){
        return isMaxTxLimit[addr];
    }

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) private {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(amount != 0, "ERC20: transfer to the zero address");
        if (sender != owner() && recipient != owner()) {
            if (!isFeeExempt[sender] && !isFeeExempt[recipient]) {
                require(tradingAllowed, "tradingAllowed");
            }

            if( sender == address(pair) && recipient != address(router) && !isFeeExempt[recipient])
            {
                require(
                    (_balances[recipient] + amount) <= _maxWalletSize,
                    "Exceeds maximum wallet amount."
                );
                require(
                    amount <= _maxTxAmount,
                    "TX Limit Exceeded"
                );
            }

            if (shouldContractSwap(sender, recipient)) {
                uint256 contractTokenBalance = balanceOf(address(this));
                bool aboveThreshold = contractTokenBalance >= swapThreshold;
                if (aboveThreshold)          
                    swapTokensForETH(min(amount, min(contractTokenBalance, swapThreshold)));
                sendETHToFee(address(this).balance);
            }
        }
        
        uint256 amountReceived = takeFee(sender, recipient, amount);
        _balances[sender] = _balances[sender].sub(amount);
        _balances[recipient] = _balances[recipient].add(amountReceived);
        emit Transfer(sender, recipient, amountReceived);
    }
    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }
    function sendETHToFee(uint256 amount) private {
        treasury.transfer(amount);
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            msg.sender,
            _allowances[sender][msg.sender].sub(
                amount,
                "ERC20: transfer amount exceeds allowance"
            )
        );
        return true;
    }

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

    function removeLimits() external onlyOwner{
        _maxTxAmount = _totalSupply;
        _maxWalletSize=_totalSupply;
    }

    function startMumu() external onlyOwner {
        require(!tradingAllowed, "trading is already open");
        _approve(address(this), address(router), _totalSupply);
        pair = IFactory(router.factory()).createPair(
            address(this),
            router.WETH()
        );
        router.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            owner(),
            block.timestamp
        );
        IERC20(pair).approve(address(router), type(uint).max);
        swapEnabled = true;
        tradingAllowed = true;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_taxWallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_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":[{"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":"enableTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMaxTxLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"rescueERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rescueETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setBBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startMumu","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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"},{"stateMutability":"payable","type":"receive"}]

60806040526100106009600a610397565b61001e90633b9aca006103ad565b60018181556008805461ffff60a01b1916600160a81b17905560006009556028600a819055600b55606491610052916103ad565b61005c91906103c4565b600c55600b600d55600b600e556000600f5560006010556064600154600261008491906103ad565b61008e91906103c4565b601255606460015460026100a291906103ad565b6100ac91906103c4565b6013553480156100bb57600080fd5b50604051611e41380380611e418339810160408190526100da916103e6565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600780546001600160a01b0319908116737a250d5630b4cf539739df2c5dacb4c659f2488d17909155601180546001600160a01b0384811691909316178155306000908152600460208190526040808320805460ff199081166001908117909255945490951683528220805490931684179092556101a16000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790556011548216815260059093528183208054851660019081179091556008549091168352908220805490931681179092559054906002906102176000546001600160a01b031690565b6001600160a01b031681526020810191909152604001600020556102436000546001600160a01b031690565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60015460405161028a91815260200190565b60405180910390a35061040f565b634e487b7160e01b600052601160045260246000fd5b6001815b60018411156102e9578085048111156102cd576102cd610298565b60018416156102db57908102905b60019390931c9280026102b2565b935093915050565b60008261030057506001610391565b8161030d57506000610391565b8160018114610323576002811461032d57610349565b6001915050610391565b60ff84111561033e5761033e610298565b50506001821b610391565b5060208310610133831016604e8410600b841016171561036c575081810a610391565b61037960001984846102ae565b806000190482111561038d5761038d610298565b0290505b92915050565b60006103a660ff8416836102f1565b9392505050565b808202811582820484141761039157610391610298565b6000826103e157634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156103f857600080fd5b81516001600160a01b03811681146103a657600080fd5b611a238061041e6000396000f3fe60806040526004361061014e5760003560e01c8063715018a6116100b65780638f9a55c01161006f5780638f9a55c0146103b157806395d89b41146101715780639f5834f9146103c7578063a8aa1b31146103f7578063a9059cbb14610417578063dd62ed3e1461043757600080fd5b8063715018a614610301578063751039fc146103165780637d1db4a51461032b578063893d20e8146103415780638cd4426d146103735780638da5cb5b1461039357600080fd5b806320800a001161010857806320800a001461023557806323b872dd1461024a578063313ce5671461026a5780633f4218e01461028657806351bc3c85146102b657806370a08231146102cb57600080fd5b806299d3861461015a57806306fdde0314610171578063095ea7b3146101ad5780630dcb066e146101dd5780630edc39d8146101f257806318160ddd1461021257600080fd5b3661015557005b600080fd5b34801561016657600080fd5b5061016f61047d565b005b34801561017d57600080fd5b5060408051808201825260048152634d554d5560e01b602082015290516101a491906115f9565b60405180910390f35b3480156101b957600080fd5b506101cd6101c836600461165c565b6104c5565b60405190151581526020016101a4565b3480156101e957600080fd5b5061016f6104dc565b3480156101fe57600080fd5b5061016f61020d366004611696565b61086a565b34801561021e57600080fd5b50610227610901565b6040519081526020016101a4565b34801561024157600080fd5b5061016f610972565b34801561025657600080fd5b506101cd61026536600461171f565b6109e6565b34801561027657600080fd5b50604051600981526020016101a4565b34801561029257600080fd5b506101cd6102a1366004611760565b60046020526000908152604090205460ff1681565b3480156102c257600080fd5b5061016f610a4f565b3480156102d757600080fd5b506102276102e6366004611760565b6001600160a01b031660009081526002602052604090205490565b34801561030d57600080fd5b5061016f610a86565b34801561032257600080fd5b5061016f610afa565b34801561033757600080fd5b5061022760125481565b34801561034d57600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101a4565b34801561037f57600080fd5b5061016f61038e36600461165c565b610b31565b34801561039f57600080fd5b506000546001600160a01b031661035b565b3480156103bd57600080fd5b5061022760135481565b3480156103d357600080fd5b506101cd6103e2366004611760565b60056020526000908152604090205460ff1681565b34801561040357600080fd5b5060085461035b906001600160a01b031681565b34801561042357600080fd5b506101cd61043236600461165c565b610c73565b34801561044357600080fd5b5061022761045236600461177d565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b6000546001600160a01b031633146104b05760405162461bcd60e51b81526004016104a7906117b6565b60405180910390fd5b6008805460ff60a01b1916600160a01b179055565b60006104d2338484610c80565b5060015b92915050565b6000546001600160a01b031633146105065760405162461bcd60e51b81526004016104a7906117b6565b600854600160a01b900460ff16156105605760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104a7565b60075460015461057d9130916001600160a01b0390911690610c80565b600760009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f491906117eb565b6001600160a01b031663c9c6539630600760009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610656573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067a91906117eb565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156106c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106eb91906117eb565b600880546001600160a01b039283166001600160a01b03199091161790556007541663f305d7194730610733816001600160a01b031660009081526002602052604090205490565b6000806107486000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156107b0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906107d59190611808565b505060085460075460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af115801561082e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108529190611836565b506008805461ffff60a01b191661010160a01b179055565b6000546001600160a01b031633146108945760405162461bcd60e51b81526004016104a7906117b6565b60005b828110156108fb5781600660008686858181106108b6576108b6611853565b90506020020160208101906108cb9190611760565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055600101610897565b50505050565b60026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b5461dead60009081527f6a9609baa168169acaea398c4407efea4be641bb08e21e88806d9836fd9333cc54600154919261096d9290916109679190610da4565b90610da4565b905090565b6000546001600160a01b0316331461099c5760405162461bcd60e51b81526004016104a7906117b6565b600047116109a957600080fd5b600080546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156109e3573d6000803e3d6000fd5b50565b60006109f3848484610db7565b610a458433610a40856040518060600160405280602881526020016119c6602891396001600160a01b038a166000908152600360209081526040808320338452909152902054919061114b565b610c80565b5060019392505050565b6000546001600160a01b03163314610a795760405162461bcd60e51b81526004016104a7906117b6565b610a84600c54611177565b565b6000546001600160a01b03163314610ab05760405162461bcd60e51b81526004016104a7906117b6565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610b245760405162461bcd60e51b81526004016104a7906117b6565b6001546012819055601355565b6000546001600160a01b03163314610b5b5760405162461bcd60e51b81526004016104a7906117b6565b6040516370a0823160e01b8152306004820152600090610bdf90606490610bd99085906001600160a01b038816906370a0823190602401602060405180830381865afa158015610baf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd39190611869565b906112d1565b906112dd565b9050826001600160a01b031663a9059cbb610c026000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af1158015610c4f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108fb9190611836565b60006104d2338484610db7565b6001600160a01b038316610ce25760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104a7565b6001600160a01b038216610d435760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104a7565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000610db08284611898565b9392505050565b6001600160a01b038316610e1b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104a7565b6001600160a01b038216610e415760405162461bcd60e51b81526004016104a7906118ab565b80600003610e615760405162461bcd60e51b81526004016104a7906118ab565b6000546001600160a01b03848116911614801590610e8d57506000546001600160a01b03838116911614155b15611087576001600160a01b03831660009081526004602052604090205460ff16158015610ed457506001600160a01b03821660009081526004602052604090205460ff16155b15610f2357600854600160a01b900460ff16610f235760405162461bcd60e51b815260206004820152600e60248201526d1d1c98591a5b99d05b1b1bddd95960921b60448201526064016104a7565b6008546001600160a01b038481169116148015610f4e57506007546001600160a01b03838116911614155b8015610f7357506001600160a01b03821660009081526004602052604090205460ff16155b15611033576013546001600160a01b038316600090815260026020526040902054610f9f9083906118ee565b1115610fed5760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e000060448201526064016104a7565b6012548111156110335760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b60448201526064016104a7565b61103d83836112e9565b156110875730600090815260026020526040902054600c54811080159061107b5761107b6110768461107185600c54611362565b611362565b611177565b61108447611377565b50505b60006110948484846113b5565b6001600160a01b0385166000908152600260205260409020549091506110ba9083610da4565b6001600160a01b0380861660009081526002602052604080822093909355908516815220546110e990826114d7565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061113d9085815260200190565b60405180910390a350505050565b6000818484111561116f5760405162461bcd60e51b81526004016104a791906115f9565b505050900390565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106111ac576111ac611853565b6001600160a01b03928316602091820292909201810191909152600754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611205573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061122991906117eb565b8160018151811061123c5761123c611853565b6001600160a01b0392831660209182029290920101526007546112629130911684610c80565b60075460405163791ac94760e01b81526001600160a01b039091169063791ac9479061129b908590600090869030904290600401611901565b600060405180830381600087803b1580156112b557600080fd5b505af11580156112c9573d6000803e3d6000fd5b505050505050565b6000610db08284611973565b6000610db0828461198a565b600854600090600160b01b900460ff1615801561130f5750600854600160a81b900460ff165b801561133457506001600160a01b03831660009081526004602052604090205460ff16155b801561134d57506008546001600160a01b038381169116145b8015610db0575050600b546009541192915050565b60008183116113715782610db0565b50919050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156113b1573d6000803e3d6000fd5b5050565b6000806113d16064610bd96113ca88886114e3565b86906112d1565b90506113dd85856115b3565b1561141157306000908152600260205260409020546113fc90826114d7565b30600090815260026020526040902055611484565b6008546001600160a01b03868116911614611484576001600160a01b03851660009081526005602052604090205460ff1615611484576001600160a01b03851660009081526002602052604090205461146a90846114d7565b6001600160a01b0386166000908152600260205260409020555b60405181815230906001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a36114ce8382610da4565b95945050505050565b6000610db082846118ee565b6001600160a01b03821660009081526006602052604081205460ff168061152257506001600160a01b03821660009081526006602052604090205460ff165b1561152f575060646104d6565b6008546001600160a01b03908116908416036115785760098054906000611555836119ac565b9190505550600a546009541061156d57600f54611571565b600d545b90506104d6565b6008546001600160a01b03908116908316036115aa57600a54600954106115a157601054611571565b50600e546104d6565b50600092915050565b6001600160a01b03821660009081526004602052604081205460ff16158015610db05750506001600160a01b031660009081526004602052604090205460ff1615919050565b602081526000825180602084015260005b81811015611627576020818601810151604086840101520161160a565b506000604082850101526040601f19601f83011684010191505092915050565b6001600160a01b03811681146109e357600080fd5b6000806040838503121561166f57600080fd5b823561167a81611647565b946020939093013593505050565b80151581146109e357600080fd5b6000806000604084860312156116ab57600080fd5b833567ffffffffffffffff8111156116c257600080fd5b8401601f810186136116d357600080fd5b803567ffffffffffffffff8111156116ea57600080fd5b8660208260051b84010111156116ff57600080fd5b60209182019450925084013561171481611688565b809150509250925092565b60008060006060848603121561173457600080fd5b833561173f81611647565b9250602084013561174f81611647565b929592945050506040919091013590565b60006020828403121561177257600080fd5b8135610db081611647565b6000806040838503121561179057600080fd5b823561179b81611647565b915060208301356117ab81611647565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156117fd57600080fd5b8151610db081611647565b60008060006060848603121561181d57600080fd5b5050815160208301516040909301519094929350919050565b60006020828403121561184857600080fd5b8151610db081611688565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561187b57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b818103818111156104d6576104d6611882565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b808201808211156104d6576104d6611882565b600060a0820187835286602084015260a0604084015280865180835260c08501915060208801925060005b818110156119535783516001600160a01b031683526020938401939092019160010161192c565b50506001600160a01b039590951660608401525050608001529392505050565b80820281158282048414176104d6576104d6611882565b6000826119a757634e487b7160e01b600052601260045260246000fd5b500490565b6000600182016119be576119be611882565b506001019056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122010f02bc2ca5ec89c0221a62a4853cad101d641fe96b299d48aa1e0495fc3d03964736f6c634300081a00330000000000000000000000005b98aa831614cd851b9b47c0aeff738d75e9039d

Deployed Bytecode

0x60806040526004361061014e5760003560e01c8063715018a6116100b65780638f9a55c01161006f5780638f9a55c0146103b157806395d89b41146101715780639f5834f9146103c7578063a8aa1b31146103f7578063a9059cbb14610417578063dd62ed3e1461043757600080fd5b8063715018a614610301578063751039fc146103165780637d1db4a51461032b578063893d20e8146103415780638cd4426d146103735780638da5cb5b1461039357600080fd5b806320800a001161010857806320800a001461023557806323b872dd1461024a578063313ce5671461026a5780633f4218e01461028657806351bc3c85146102b657806370a08231146102cb57600080fd5b806299d3861461015a57806306fdde0314610171578063095ea7b3146101ad5780630dcb066e146101dd5780630edc39d8146101f257806318160ddd1461021257600080fd5b3661015557005b600080fd5b34801561016657600080fd5b5061016f61047d565b005b34801561017d57600080fd5b5060408051808201825260048152634d554d5560e01b602082015290516101a491906115f9565b60405180910390f35b3480156101b957600080fd5b506101cd6101c836600461165c565b6104c5565b60405190151581526020016101a4565b3480156101e957600080fd5b5061016f6104dc565b3480156101fe57600080fd5b5061016f61020d366004611696565b61086a565b34801561021e57600080fd5b50610227610901565b6040519081526020016101a4565b34801561024157600080fd5b5061016f610972565b34801561025657600080fd5b506101cd61026536600461171f565b6109e6565b34801561027657600080fd5b50604051600981526020016101a4565b34801561029257600080fd5b506101cd6102a1366004611760565b60046020526000908152604090205460ff1681565b3480156102c257600080fd5b5061016f610a4f565b3480156102d757600080fd5b506102276102e6366004611760565b6001600160a01b031660009081526002602052604090205490565b34801561030d57600080fd5b5061016f610a86565b34801561032257600080fd5b5061016f610afa565b34801561033757600080fd5b5061022760125481565b34801561034d57600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101a4565b34801561037f57600080fd5b5061016f61038e36600461165c565b610b31565b34801561039f57600080fd5b506000546001600160a01b031661035b565b3480156103bd57600080fd5b5061022760135481565b3480156103d357600080fd5b506101cd6103e2366004611760565b60056020526000908152604090205460ff1681565b34801561040357600080fd5b5060085461035b906001600160a01b031681565b34801561042357600080fd5b506101cd61043236600461165c565b610c73565b34801561044357600080fd5b5061022761045236600461177d565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b6000546001600160a01b031633146104b05760405162461bcd60e51b81526004016104a7906117b6565b60405180910390fd5b6008805460ff60a01b1916600160a01b179055565b60006104d2338484610c80565b5060015b92915050565b6000546001600160a01b031633146105065760405162461bcd60e51b81526004016104a7906117b6565b600854600160a01b900460ff16156105605760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104a7565b60075460015461057d9130916001600160a01b0390911690610c80565b600760009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f491906117eb565b6001600160a01b031663c9c6539630600760009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610656573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067a91906117eb565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156106c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106eb91906117eb565b600880546001600160a01b039283166001600160a01b03199091161790556007541663f305d7194730610733816001600160a01b031660009081526002602052604090205490565b6000806107486000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156107b0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906107d59190611808565b505060085460075460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af115801561082e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108529190611836565b506008805461ffff60a01b191661010160a01b179055565b6000546001600160a01b031633146108945760405162461bcd60e51b81526004016104a7906117b6565b60005b828110156108fb5781600660008686858181106108b6576108b6611853565b90506020020160208101906108cb9190611760565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055600101610897565b50505050565b60026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b5461dead60009081527f6a9609baa168169acaea398c4407efea4be641bb08e21e88806d9836fd9333cc54600154919261096d9290916109679190610da4565b90610da4565b905090565b6000546001600160a01b0316331461099c5760405162461bcd60e51b81526004016104a7906117b6565b600047116109a957600080fd5b600080546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156109e3573d6000803e3d6000fd5b50565b60006109f3848484610db7565b610a458433610a40856040518060600160405280602881526020016119c6602891396001600160a01b038a166000908152600360209081526040808320338452909152902054919061114b565b610c80565b5060019392505050565b6000546001600160a01b03163314610a795760405162461bcd60e51b81526004016104a7906117b6565b610a84600c54611177565b565b6000546001600160a01b03163314610ab05760405162461bcd60e51b81526004016104a7906117b6565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610b245760405162461bcd60e51b81526004016104a7906117b6565b6001546012819055601355565b6000546001600160a01b03163314610b5b5760405162461bcd60e51b81526004016104a7906117b6565b6040516370a0823160e01b8152306004820152600090610bdf90606490610bd99085906001600160a01b038816906370a0823190602401602060405180830381865afa158015610baf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd39190611869565b906112d1565b906112dd565b9050826001600160a01b031663a9059cbb610c026000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af1158015610c4f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108fb9190611836565b60006104d2338484610db7565b6001600160a01b038316610ce25760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104a7565b6001600160a01b038216610d435760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104a7565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000610db08284611898565b9392505050565b6001600160a01b038316610e1b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104a7565b6001600160a01b038216610e415760405162461bcd60e51b81526004016104a7906118ab565b80600003610e615760405162461bcd60e51b81526004016104a7906118ab565b6000546001600160a01b03848116911614801590610e8d57506000546001600160a01b03838116911614155b15611087576001600160a01b03831660009081526004602052604090205460ff16158015610ed457506001600160a01b03821660009081526004602052604090205460ff16155b15610f2357600854600160a01b900460ff16610f235760405162461bcd60e51b815260206004820152600e60248201526d1d1c98591a5b99d05b1b1bddd95960921b60448201526064016104a7565b6008546001600160a01b038481169116148015610f4e57506007546001600160a01b03838116911614155b8015610f7357506001600160a01b03821660009081526004602052604090205460ff16155b15611033576013546001600160a01b038316600090815260026020526040902054610f9f9083906118ee565b1115610fed5760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e000060448201526064016104a7565b6012548111156110335760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b60448201526064016104a7565b61103d83836112e9565b156110875730600090815260026020526040902054600c54811080159061107b5761107b6110768461107185600c54611362565b611362565b611177565b61108447611377565b50505b60006110948484846113b5565b6001600160a01b0385166000908152600260205260409020549091506110ba9083610da4565b6001600160a01b0380861660009081526002602052604080822093909355908516815220546110e990826114d7565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061113d9085815260200190565b60405180910390a350505050565b6000818484111561116f5760405162461bcd60e51b81526004016104a791906115f9565b505050900390565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106111ac576111ac611853565b6001600160a01b03928316602091820292909201810191909152600754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611205573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061122991906117eb565b8160018151811061123c5761123c611853565b6001600160a01b0392831660209182029290920101526007546112629130911684610c80565b60075460405163791ac94760e01b81526001600160a01b039091169063791ac9479061129b908590600090869030904290600401611901565b600060405180830381600087803b1580156112b557600080fd5b505af11580156112c9573d6000803e3d6000fd5b505050505050565b6000610db08284611973565b6000610db0828461198a565b600854600090600160b01b900460ff1615801561130f5750600854600160a81b900460ff165b801561133457506001600160a01b03831660009081526004602052604090205460ff16155b801561134d57506008546001600160a01b038381169116145b8015610db0575050600b546009541192915050565b60008183116113715782610db0565b50919050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156113b1573d6000803e3d6000fd5b5050565b6000806113d16064610bd96113ca88886114e3565b86906112d1565b90506113dd85856115b3565b1561141157306000908152600260205260409020546113fc90826114d7565b30600090815260026020526040902055611484565b6008546001600160a01b03868116911614611484576001600160a01b03851660009081526005602052604090205460ff1615611484576001600160a01b03851660009081526002602052604090205461146a90846114d7565b6001600160a01b0386166000908152600260205260409020555b60405181815230906001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a36114ce8382610da4565b95945050505050565b6000610db082846118ee565b6001600160a01b03821660009081526006602052604081205460ff168061152257506001600160a01b03821660009081526006602052604090205460ff165b1561152f575060646104d6565b6008546001600160a01b03908116908416036115785760098054906000611555836119ac565b9190505550600a546009541061156d57600f54611571565b600d545b90506104d6565b6008546001600160a01b03908116908316036115aa57600a54600954106115a157601054611571565b50600e546104d6565b50600092915050565b6001600160a01b03821660009081526004602052604081205460ff16158015610db05750506001600160a01b031660009081526004602052604090205460ff1615919050565b602081526000825180602084015260005b81811015611627576020818601810151604086840101520161160a565b506000604082850101526040601f19601f83011684010191505092915050565b6001600160a01b03811681146109e357600080fd5b6000806040838503121561166f57600080fd5b823561167a81611647565b946020939093013593505050565b80151581146109e357600080fd5b6000806000604084860312156116ab57600080fd5b833567ffffffffffffffff8111156116c257600080fd5b8401601f810186136116d357600080fd5b803567ffffffffffffffff8111156116ea57600080fd5b8660208260051b84010111156116ff57600080fd5b60209182019450925084013561171481611688565b809150509250925092565b60008060006060848603121561173457600080fd5b833561173f81611647565b9250602084013561174f81611647565b929592945050506040919091013590565b60006020828403121561177257600080fd5b8135610db081611647565b6000806040838503121561179057600080fd5b823561179b81611647565b915060208301356117ab81611647565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156117fd57600080fd5b8151610db081611647565b60008060006060848603121561181d57600080fd5b5050815160208301516040909301519094929350919050565b60006020828403121561184857600080fd5b8151610db081611688565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561187b57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b818103818111156104d6576104d6611882565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b808201808211156104d6576104d6611882565b600060a0820187835286602084015260a0604084015280865180835260c08501915060208801925060005b818110156119535783516001600160a01b031683526020938401939092019160010161192c565b50506001600160a01b039590951660608401525050608001529392505050565b80820281158282048414176104d6576104d6611882565b6000826119a757634e487b7160e01b600052601260045260246000fd5b500490565b6000600182016119be576119be611882565b506001019056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122010f02bc2ca5ec89c0221a62a4853cad101d641fe96b299d48aa1e0495fc3d03964736f6c634300081a0033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000005b98aa831614cd851b9b47c0aeff738d75e9039d

-----Decoded View---------------
Arg [0] : _taxWallet (address): 0x5b98aa831614CD851b9B47c0Aeff738d75e9039d

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000005b98aa831614cd851b9b47c0aeff738d75e9039d


Deployed Bytecode Sourcemap

5513:9642:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7651:82;;;;;;;;;;;;;:::i;:::-;;7374:83;;;;;;;;;;-1:-1:-1;7444:5:0;;;;;;;;;;;-1:-1:-1;;;7444:5:0;;;;7374:83;;;;7444:5;7374:83;:::i;:::-;;;;;;;;8344:184;;;;;;;;;;-1:-1:-1;8344:184:0;;;;;:::i;:::-;;:::i;:::-;;;1219:14:1;;1212:22;1194:41;;1182:2;1167:18;8344:184:0;1054:187:1;14505:647:0;;;;;;;;;;;;;:::i;9010:225::-;;;;;;;;;;-1:-1:-1;9010:225:0;;;;;:::i;:::-;;:::i;8536:148::-;;;;;;;;;;;;;:::i;:::-;;;2265:25:1;;;2253:2;2238:18;8536:148:0;2119:177:1;9621:152:0;;;;;;;;;;;;;:::i;13578:442::-;;;;;;;;;;-1:-1:-1;13578:442:0;;;;;:::i;:::-;;:::i;7560:83::-;;;;;;;;;;-1:-1:-1;7560:83:0;;5713:1;2956:36:1;;2944:2;2929:18;7560:83:0;2814:184:1;5910:43:0;;;;;;;;;;-1:-1:-1;5910:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;9243:91;;;;;;;;;;;;;:::i;7843:119::-;;;;;;;;;;-1:-1:-1;7843:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;7936:18:0;7909:7;7936:18;;;:9;:18;;;;;;;7843:119;4437:148;;;;;;;;;;;;;:::i;14371:126::-;;;;;;;;;;;;;:::i;6750:55::-;;;;;;;;;;;;;;;;7741:94;;;;;;;;;;-1:-1:-1;7793:7:0;4288:6;-1:-1:-1;;;;;4288:6:0;7741:94;;;-1:-1:-1;;;;;3419:32:1;;;3401:51;;3389:2;3374:18;7741:94:0;3255:203:1;9342:271:0;;;;;;;;;;-1:-1:-1;9342:271:0;;;;;:::i;:::-;;:::i;4223:79::-;;;;;;;;;;-1:-1:-1;4261:7:0;4288:6;-1:-1:-1;;;;;4288:6:0;4223:79;;6812:56;;;;;;;;;;;;;;;;5960:44;;;;;;;;;;-1:-1:-1;5960:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;6077:19;;;;;;;;;;-1:-1:-1;6077:19:0;;;;-1:-1:-1;;;;;6077:19:0;;;7970:190;;;;;;;;;;-1:-1:-1;7970:190:0;;;;;:::i;:::-;;:::i;8168:168::-;;;;;;;;;;-1:-1:-1;8168:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;8301:18:0;;;8274:7;8301:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;8168:168;7651:82;4350:6;;-1:-1:-1;;;;;4350:6:0;292:10;4350:22;4342:67;;;;-1:-1:-1;;;4342:67:0;;;;;;;:::i;:::-;;;;;;;;;7704:14:::1;:21:::0;;-1:-1:-1;;;;7704:21:0::1;-1:-1:-1::0;;;7704:21:0::1;::::0;;7651:82::o;8344:184::-;8444:4;8461:37;8470:10;8482:7;8491:6;8461:8;:37::i;:::-;-1:-1:-1;8516:4:0;8344:184;;;;;:::o;14505:647::-;4350:6;;-1:-1:-1;;;;;4350:6:0;292:10;4350:22;4342:67;;;;-1:-1:-1;;;4342:67:0;;;;;;;:::i;:::-;14565:14:::1;::::0;-1:-1:-1;;;14565:14:0;::::1;;;14564:15;14556:51;;;::::0;-1:-1:-1;;;14556:51:0;;4419:2:1;14556:51:0::1;::::0;::::1;4401:21:1::0;4458:2;4438:18;;;4431:30;4497:25;4477:18;;;4470:53;4540:18;;14556:51:0::1;4217:347:1::0;14556:51:0::1;14650:6;::::0;;14659:12;14618:54:::1;::::0;14635:4:::1;::::0;-1:-1:-1;;;;;14650:6:0;;::::1;::::0;14618:8:::1;:54::i;:::-;14699:6;;;;;;;;;-1:-1:-1::0;;;;;14699:6:0::1;-1:-1:-1::0;;;;;14699:14:0::1;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14690:37:0::1;;14750:4;14770:6;;;;;;;;;-1:-1:-1::0;;;;;14770:6:0::1;-1:-1:-1::0;;;;;14770:11:0::1;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14690:104;::::0;-1:-1:-1;;;;;;14690:104:0::1;::::0;;;;;;-1:-1:-1;;;;;5017:32:1;;;14690:104:0::1;::::0;::::1;4999:51:1::0;5086:32;;5066:18;;;5059:60;4972:18;;14690:104:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14683:4;:111:::0;;-1:-1:-1;;;;;14683:111:0;;::::1;-1:-1:-1::0;;;;;;14683:111:0;;::::1;;::::0;;14805:6:::1;::::0;::::1;:22;14835:21;14880:4;14900:24;14880:4:::0;-1:-1:-1;;;;;7936:18:0;7909:7;7936:18;;;:9;:18;;;;;;;7843:119;14900:24:::1;14939:1;14955::::0;14971:7:::1;4261::::0;4288:6;-1:-1:-1;;;;;4288:6:0;;4223:79;14971:7:::1;14805:214;::::0;::::1;::::0;;;-1:-1:-1;;;;;;14805:214:0;;;-1:-1:-1;;;;;5451:32:1;;;14805:214:0::1;::::0;::::1;5433:51:1::0;5500:18;;;5493:34;;;;5543:18;;;5536:34;;;;5586:18;;;5579:34;5650:32;;;5629:19;;;5622:61;14993:15:0::1;5699:19:1::0;;;5692:35;5405:19;;14805:214:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;15037:4:0::1;::::0;15059:6:::1;::::0;15030:53:::1;::::0;-1:-1:-1;;;15030:53:0;;-1:-1:-1;;;;;15059:6:0;;::::1;15030:53;::::0;::::1;6373:51:1::0;-1:-1:-1;;6440:18:1;;;6433:34;15037:4:0;::::1;::::0;-1:-1:-1;15030:20:0::1;::::0;6346:18:1;;15030:53:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;15094:11:0::1;:18:::0;;-1:-1:-1;;;;15123:21:0;-1:-1:-1;;;15123:21:0;;;14505:647::o;9010:225::-;4350:6;;-1:-1:-1;;;;;4350:6:0;292:10;4350:22;4342:67;;;;-1:-1:-1;;;4342:67:0;;;;;;;:::i;:::-;9132:6:::1;9127:101;9144:20:::0;;::::1;9127:101;;;9208:8;9186:5;:19;9192:9;;9202:1;9192:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9186:19:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;9186:19:0;:30;;-1:-1:-1;;9186:30:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;9166:3:0::1;9127:101;;;;9010:225:::0;;;:::o;8536:148::-;7936:9;:18;;;;6661:42;8589:7;7936:18;;;;;8616:12;;8589:7;;8616:60;;7936:18;;8616:33;;:12;:16;:33::i;:::-;:37;;:60::i;:::-;8609:67;;8536:148;:::o;9621:152::-;4350:6;;-1:-1:-1;;;;;4350:6:0;292:10;4350:22;4342:67;;;;-1:-1:-1;;;4342:67:0;;;;;;;:::i;:::-;9704:1:::1;9680:21;:25;9672:34;;;::::0;::::1;;4261:7:::0;4288:6;;9717:48:::1;::::0;-1:-1:-1;;;;;4288:6:0;;;;9743:21:::1;9717:48:::0;::::1;;;::::0;9743:21;;9717:48;4261:7;9717:48;9743:21;4288:6;9717:48;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;9621:152::o:0;13578:442::-;13710:4;13727:36;13737:6;13745:9;13756:6;13727:9;:36::i;:::-;13774:216;13797:6;13818:10;13843:136;13897:6;13843:136;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13843:19:0;;;;;;:11;:19;;;;;;;;13863:10;13843:31;;;;;;;;;:136;:35;:136::i;:::-;13774:8;:216::i;:::-;-1:-1:-1;14008:4:0;13578:442;;;;;:::o;9243:91::-;4350:6;;-1:-1:-1;;;;;4350:6:0;292:10;4350:22;4342:67;;;;-1:-1:-1;;;4342:67:0;;;;;;;:::i;:::-;9295:31:::1;9312:13;;9295:16;:31::i;:::-;9243:91::o:0;4437:148::-;4350:6;;-1:-1:-1;;;;;4350:6:0;292:10;4350:22;4342:67;;;;-1:-1:-1;;;4342:67:0;;;;;;;:::i;:::-;4544:1:::1;4528:6:::0;;4507:40:::1;::::0;-1:-1:-1;;;;;4528:6:0;;::::1;::::0;4507:40:::1;::::0;4544:1;;4507:40:::1;4575:1;4558:19:::0;;-1:-1:-1;;;;;;4558:19:0::1;::::0;;4437:148::o;14371:126::-;4350:6;;-1:-1:-1;;;;;4350:6:0;292:10;4350:22;4342:67;;;;-1:-1:-1;;;4342:67:0;;;;;;;:::i;:::-;14439:12:::1;::::0;14424::::1;:27:::0;;;14462:14:::1;:27:::0;14371:126::o;9342:271::-;4350:6;;-1:-1:-1;;;;;4350:6:0;292:10;4350:22;4342:67;;;;-1:-1:-1;;;4342:67:0;;;;;;;:::i;:::-;9446:55:::1;::::0;-1:-1:-1;;;9446:55:0;;9495:4:::1;9446:55;::::0;::::1;3401:51:1::0;9428:15:0::1;::::0;9446:105:::1;::::0;9547:3:::1;::::0;9446:82:::1;::::0;9520:7;;-1:-1:-1;;;;;9446:40:0;::::1;::::0;::::1;::::0;3374:18:1;;9446:55:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:73:::0;::::1;:82::i;:::-;:100:::0;::::1;:105::i;:::-;9428:123;;9569:8;-1:-1:-1::0;;;;;9562:25:0::1;;9588:7;4261::::0;4288:6;-1:-1:-1;;;;;4288:6:0;;4223:79;9588:7:::1;9562:43;::::0;-1:-1:-1;;;;;;9562:43:0::1;::::0;;;;;;-1:-1:-1;;;;;6391:32:1;;;9562:43:0::1;::::0;::::1;6373:51:1::0;6440:18;;;6433:34;;;6346:18;;9562:43:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;7970:190::-:0;8073:4;8090:40;8100:10;8112:9;8123:6;8090:9;:40::i;14028:335::-;-1:-1:-1;;;;;14121:19:0;;14113:68;;;;-1:-1:-1;;;14113:68:0;;7297:2:1;14113:68:0;;;7279:21:1;7336:2;7316:18;;;7309:30;7375:34;7355:18;;;7348:62;-1:-1:-1;;;7426:18:1;;;7419:34;7470:19;;14113:68:0;7095:400:1;14113:68:0;-1:-1:-1;;;;;14200:21:0;;14192:68;;;;-1:-1:-1;;;14192:68:0;;7702:2:1;14192:68:0;;;7684:21:1;7741:2;7721:18;;;7714:30;7780:34;7760:18;;;7753:62;-1:-1:-1;;;7831:18:1;;;7824:32;7873:19;;14192:68:0;7500:398:1;14192:68:0;-1:-1:-1;;;;;14271:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;14323:32;;2265:25:1;;;14323:32:0;;2238:18:1;14323:32:0;;;;;;;14028:335;;;:::o;1688:98::-;1746:7;1773:5;1777:1;1773;:5;:::i;:::-;1766:12;1688:98;-1:-1:-1;;;1688:98:0:o;11673:1697::-;-1:-1:-1;;;;;11804:20:0;;11796:70;;;;-1:-1:-1;;;11796:70:0;;8370:2:1;11796:70:0;;;8352:21:1;8409:2;8389:18;;;8382:30;8448:34;8428:18;;;8421:62;-1:-1:-1;;;8499:18:1;;;8492:35;8544:19;;11796:70:0;8168:401:1;11796:70:0;-1:-1:-1;;;;;11885:23:0;;11877:71;;;;-1:-1:-1;;;11877:71:0;;;;;;;:::i;:::-;11967:6;11977:1;11967:11;11959:59;;;;-1:-1:-1;;;11959:59:0;;;;;;;:::i;:::-;4261:7;4288:6;-1:-1:-1;;;;;12033:17:0;;;4288:6;;12033:17;;;;:41;;-1:-1:-1;4261:7:0;4288:6;-1:-1:-1;;;;;12054:20:0;;;4288:6;;12054:20;;12033:41;12029:1061;;;-1:-1:-1;;;;;12096:19:0;;;;;;:11;:19;;;;;;;;12095:20;:47;;;;-1:-1:-1;;;;;;12120:22:0;;;;;;:11;:22;;;;;;;;12119:23;12095:47;12091:129;;;12171:14;;-1:-1:-1;;;12171:14:0;;;;12163:41;;;;-1:-1:-1;;;12163:41:0;;9180:2:1;12163:41:0;;;9162:21:1;9219:2;9199:18;;;9192:30;-1:-1:-1;;;9238:18:1;;;9231:44;9292:18;;12163:41:0;8978:338:1;12163:41:0;12258:4;;-1:-1:-1;;;;;12240:23:0;;;12258:4;;12240:23;:55;;;;-1:-1:-1;12288:6:0;;-1:-1:-1;;;;;12267:28:0;;;12288:6;;12267:28;;12240:55;:82;;;;-1:-1:-1;;;;;;12300:22:0;;;;;;:11;:22;;;;;;;;12299:23;12240:82;12236:421;;;12421:14;;-1:-1:-1;;;;;12387:20:0;;;;;;:9;:20;;;;;;:29;;12410:6;;12387:29;:::i;:::-;12386:49;;12356:153;;;;-1:-1:-1;;;12356:153:0;;9653:2:1;12356:153:0;;;9635:21:1;9692:2;9672:18;;;9665:30;9731:32;9711:18;;;9704:60;9781:18;;12356:153:0;9451:354:1;12356:153:0;12568:12;;12558:6;:22;;12528:113;;;;-1:-1:-1;;;12528:113:0;;10012:2:1;12528:113:0;;;9994:21:1;10051:2;10031:18;;;10024:30;-1:-1:-1;;;10070:18:1;;;10063:47;10127:18;;12528:113:0;9810:341:1;12528:113:0;12677:37;12696:6;12704:9;12677:18;:37::i;:::-;12673:406;;;12784:4;12735:28;7936:18;;;:9;:18;;;;;;12855:13;;12831:37;;;;;12887:122;;12938:71;12955:53;12959:6;12967:40;12971:20;12993:13;;12967:3;:40::i;:::-;12955:3;:53::i;:::-;12938:16;:71::i;:::-;13028:35;13041:21;13028:12;:35::i;:::-;12716:363;;12673:406;13110:22;13135:34;13143:6;13151:9;13162:6;13135:7;:34::i;:::-;-1:-1:-1;;;;;13200:17:0;;;;;;:9;:17;;;;;;13110:59;;-1:-1:-1;13200:29:0;;13222:6;13200:21;:29::i;:::-;-1:-1:-1;;;;;13180:17:0;;;;;;;:9;:17;;;;;;:49;;;;13263:20;;;;;;;:40;;13288:14;13263:24;:40::i;:::-;-1:-1:-1;;;;;13240:20:0;;;;;;;:9;:20;;;;;;;:63;;;;13319:43;;;;;;;;;;13347:14;2265:25:1;;2253:2;2238:18;;2119:177;13319:43:0;;;;;;;;11785:1585;11673:1697;;;:::o;2112:240::-;2232:7;2293:12;2285:6;;;;2277:29;;;;-1:-1:-1;;;2277:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;2328:5:0;;;2112:240::o;9781:444::-;9871:16;;;9885:1;9871:16;;;;;;;;9847:21;;9871:16;;;;;;;;;;-1:-1:-1;9871:16:0;9847:40;;9916:4;9898;9903:1;9898:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;9898:23:0;;;:7;;;;;;;;;;:23;;;;9942:6;;:13;;;-1:-1:-1;;;9942:13:0;;;;:6;;;;;:11;;:13;;;;;9898:7;;9942:13;;;;;:6;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9932:4;9937:1;9932:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;9932:23:0;;;:7;;;;;;;;;:23;9998:6;;9966:53;;9983:4;;9998:6;10007:11;9966:8;:53::i;:::-;10030:6;;:187;;-1:-1:-1;;;10030:187:0;;-1:-1:-1;;;;;10030:6:0;;;;:57;;:187;;10102:11;;10030:6;;10144:4;;10171;;10191:15;;10030:187;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9836:389;9781:444;:::o;1794:98::-;1852:7;1879:5;1883:1;1879;:5;:::i;1900:98::-;1958:7;1985:5;1989:1;1985;:5;:::i;8692:310::-;8841:8;;8803:4;;-1:-1:-1;;;8841:8:0;;;;8840:9;:37;;;;-1:-1:-1;8866:11:0;;-1:-1:-1;;;8866:11:0;;;;8840:37;:74;;;;-1:-1:-1;;;;;;8895:19:0;;;;;;:11;:19;;;;;;;;8894:20;8840:74;:108;;;;-1:-1:-1;8944:4:0;;-1:-1:-1;;;;;8931:17:0;;;8944:4;;8931:17;8840:108;:154;;;;-1:-1:-1;;8977:17:0;;8965:9;;:29;;8692:310;-1:-1:-1;;8692:310:0:o;13376:98::-;13433:7;13460:1;13458;:3;13457:9;;13465:1;13457:9;;;-1:-1:-1;13463:1:0;13376:98;-1:-1:-1;13376:98:0:o;13480:90::-;13537:8;;:25;;-1:-1:-1;;;;;13537:8:0;;;;:25;;;;;13555:6;;13537:8;:25;:8;:25;13555:6;13537:8;:25;;;;;;;;;;;;;;;;;;;;;13480:90;:::o;10918:632::-;11038:7;11058:17;11078:75;11149:3;11078:66;11103:30;11115:6;11123:9;11103:11;:30::i;:::-;11078:6;;:10;:66::i;:75::-;11058:95;;11172:32;11186:6;11194:9;11172:13;:32::i;:::-;11169:277;;;11264:4;11246:24;;;;:9;:24;;;;;;:39;;11275:9;11246:28;:39::i;:::-;11237:4;11219:24;;;;:9;:24;;;;;:66;11169:277;;;11314:4;;-1:-1:-1;;;;;11304:14:0;;;11314:4;;11304:14;11301:145;;-1:-1:-1;;;;;11639:18:0;;11616:4;11639:18;;;:12;:18;;;;;;;;11344:90;;;-1:-1:-1;;;;;11405:17:0;;;;;;:9;:17;;;;;;:29;;11427:6;11405:21;:29::i;:::-;-1:-1:-1;;;;;11385:17:0;;;;;;:9;:17;;;;;:49;11344:90;11461:42;;2265:25:1;;;11486:4:0;;-1:-1:-1;;;;;11461:42:0;;;;;2253:2:1;2238:18;11461:42:0;;;;;;;11521:21;:6;11532:9;11521:10;:21::i;:::-;11514:28;10918:632;-1:-1:-1;;;;;10918:632:0:o;1582:98::-;1640:7;1667:5;1671:1;1667;:5;:::i;10426:484::-;-1:-1:-1;;;;;10549:13:0;;10525:7;10549:13;;;:5;:13;;;;;;;;;:33;;-1:-1:-1;;;;;;10566:16:0;;;;;;:5;:16;;;;;;;;10549:33;10545:76;;;-1:-1:-1;10606:3:0;10599:10;;10545:76;10645:4;;-1:-1:-1;;;;;10645:4:0;;;10635:14;;;;10631:132;;10666:9;:11;;;:9;:11;;;:::i;:::-;;;;;;10711:13;;10699:9;;:25;:52;;10740:11;;10699:52;;;10727:10;;10699:52;10692:59;;;;10631:132;10790:4;;-1:-1:-1;;;;;10790:4:0;;;10777:17;;;;10773:111;;10830:13;;10818:9;;:25;:54;;10860:12;;10818:54;;;-1:-1:-1;10846:11:0;;10811:61;;10773:111;-1:-1:-1;10901:1:0;10426:484;;;;:::o;10233:185::-;-1:-1:-1;;;;;10364:19:0;;10339:4;10364:19;;;:11;:19;;;;;;;;10363:20;:47;;;;-1:-1:-1;;;;;;;10388:22:0;;;;;:11;:22;;;;;;;;10387:23;;10233:185;-1:-1:-1;10233:185:0:o;14:527:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;263:1;273:140;287:6;284:1;281:13;273:140;;;398:2;382:14;;;378:23;;372:30;367:2;348:17;;;344:26;337:66;302:10;273:140;;;277:3;462:1;457:2;448:6;437:9;433:22;429:31;422:42;532:2;525;521:7;516:2;508:6;504:15;500:29;489:9;485:45;481:54;473:62;;;14:527;;;;:::o;546:131::-;-1:-1:-1;;;;;621:31:1;;611:42;;601:70;;667:1;664;657:12;682:367;750:6;758;811:2;799:9;790:7;786:23;782:32;779:52;;;827:1;824;817:12;779:52;866:9;853:23;885:31;910:5;885:31;:::i;:::-;935:5;1013:2;998:18;;;;985:32;;-1:-1:-1;;;682:367:1:o;1246:118::-;1332:5;1325:13;1318:21;1311:5;1308:32;1298:60;;1354:1;1351;1344:12;1369:745;1461:6;1469;1477;1530:2;1518:9;1509:7;1505:23;1501:32;1498:52;;;1546:1;1543;1536:12;1498:52;1586:9;1573:23;1619:18;1611:6;1608:30;1605:50;;;1651:1;1648;1641:12;1605:50;1674:22;;1727:4;1719:13;;1715:27;-1:-1:-1;1705:55:1;;1756:1;1753;1746:12;1705:55;1796:2;1783:16;1822:18;1814:6;1811:30;1808:50;;;1854:1;1851;1844:12;1808:50;1909:7;1902:4;1892:6;1889:1;1885:14;1881:2;1877:23;1873:34;1870:47;1867:67;;;1930:1;1927;1920:12;1867:67;1961:4;1953:13;;;;-1:-1:-1;1985:6:1;-1:-1:-1;2026:20:1;;2013:34;2056:28;2013:34;2056:28;:::i;:::-;2103:5;2093:15;;;1369:745;;;;;:::o;2301:508::-;2378:6;2386;2394;2447:2;2435:9;2426:7;2422:23;2418:32;2415:52;;;2463:1;2460;2453:12;2415:52;2502:9;2489:23;2521:31;2546:5;2521:31;:::i;:::-;2571:5;-1:-1:-1;2628:2:1;2613:18;;2600:32;2641:33;2600:32;2641:33;:::i;:::-;2301:508;;2693:7;;-1:-1:-1;;;2773:2:1;2758:18;;;;2745:32;;2301:508::o;3003:247::-;3062:6;3115:2;3103:9;3094:7;3090:23;3086:32;3083:52;;;3131:1;3128;3121:12;3083:52;3170:9;3157:23;3189:31;3214:5;3189:31;:::i;3463:388::-;3531:6;3539;3592:2;3580:9;3571:7;3567:23;3563:32;3560:52;;;3608:1;3605;3598:12;3560:52;3647:9;3634:23;3666:31;3691:5;3666:31;:::i;:::-;3716:5;-1:-1:-1;3773:2:1;3758:18;;3745:32;3786:33;3745:32;3786:33;:::i;:::-;3838:7;3828:17;;;3463:388;;;;;:::o;3856:356::-;4058:2;4040:21;;;4077:18;;;4070:30;4136:34;4131:2;4116:18;;4109:62;4203:2;4188:18;;3856:356::o;4569:251::-;4639:6;4692:2;4680:9;4671:7;4667:23;4663:32;4660:52;;;4708:1;4705;4698:12;4660:52;4740:9;4734:16;4759:31;4784:5;4759:31;:::i;5738:456::-;5826:6;5834;5842;5895:2;5883:9;5874:7;5870:23;5866:32;5863:52;;;5911:1;5908;5901:12;5863:52;-1:-1:-1;;5956:16:1;;6062:2;6047:18;;6041:25;6158:2;6143:18;;;6137:25;5956:16;;6041:25;;-1:-1:-1;6137:25:1;5738:456;-1:-1:-1;5738:456:1:o;6478:245::-;6545:6;6598:2;6586:9;6577:7;6573:23;6569:32;6566:52;;;6614:1;6611;6604:12;6566:52;6646:9;6640:16;6665:28;6687:5;6665:28;:::i;6728:127::-;6789:10;6784:3;6780:20;6777:1;6770:31;6820:4;6817:1;6810:15;6844:4;6841:1;6834:15;6860:230;6930:6;6983:2;6971:9;6962:7;6958:23;6954:32;6951:52;;;6999:1;6996;6989:12;6951:52;-1:-1:-1;7044:16:1;;6860:230;-1:-1:-1;6860:230:1:o;7903:127::-;7964:10;7959:3;7955:20;7952:1;7945:31;7995:4;7992:1;7985:15;8019:4;8016:1;8009:15;8035:128;8102:9;;;8123:11;;;8120:37;;;8137:18;;:::i;8574:399::-;8776:2;8758:21;;;8815:2;8795:18;;;8788:30;8854:34;8849:2;8834:18;;8827:62;-1:-1:-1;;;8920:2:1;8905:18;;8898:33;8963:3;8948:19;;8574:399::o;9321:125::-;9386:9;;;9407:10;;;9404:36;;;9420:18;;:::i;10288:959::-;10550:4;10598:3;10587:9;10583:19;10629:6;10618:9;10611:25;10672:6;10667:2;10656:9;10652:18;10645:34;10715:3;10710:2;10699:9;10695:18;10688:31;10739:6;10774;10768:13;10805:6;10797;10790:22;10843:3;10832:9;10828:19;10821:26;;10882:2;10874:6;10870:15;10856:29;;10903:1;10913:195;10927:6;10924:1;10921:13;10913:195;;;10992:13;;-1:-1:-1;;;;;10988:39:1;10976:52;;11057:2;11083:15;;;;11048:12;;;;11024:1;10942:9;10913:195;;;-1:-1:-1;;;;;;;11164:32:1;;;;11159:2;11144:18;;11137:60;-1:-1:-1;;11228:3:1;11213:19;11206:35;11125:3;10288:959;-1:-1:-1;;;10288:959:1:o;11252:168::-;11325:9;;;11356;;11373:15;;;11367:22;;11353:37;11343:71;;11394:18;;:::i;11425:217::-;11465:1;11491;11481:132;;11535:10;11530:3;11526:20;11523:1;11516:31;11570:4;11567:1;11560:15;11598:4;11595:1;11588:15;11481:132;-1:-1:-1;11627:9:1;;11425:217::o;11647:135::-;11686:3;11707:17;;;11704:43;;11727:18;;:::i;:::-;-1:-1:-1;11774:1:1;11763:13;;11647:135::o

Swarm Source

ipfs://10f02bc2ca5ec89c0221a62a4853cad101d641fe96b299d48aa1e0495fc3d039

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.