ETH Price: $3,487.68 (+3.45%)
Gas: 3 Gwei

Contract

0x014468d231C5d94115D3f28EaDc643e420aDC445
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Approve200873702024-06-14 3:30:1117 days ago1718335811IN
0x014468d2...420aDC445
0 ETH0.000337087.23336792
Transfer200838132024-06-13 15:31:5917 days ago1718292719IN
0x014468d2...420aDC445
0 ETH0.0011948920.07578915
Approve200473782024-06-08 13:21:5922 days ago1717852919IN
0x014468d2...420aDC445
0 ETH0.000361157.81021305
Transfer200213062024-06-04 22:00:3526 days ago1717538435IN
0x014468d2...420aDC445
0 ETH0.00055879.38702794
Transfer200176932024-06-04 9:54:4726 days ago1717494887IN
0x014468d2...420aDC445
0 ETH0.000434677.30451973
Transfer200174292024-06-04 9:01:3526 days ago1717491695IN
0x014468d2...420aDC445
0 ETH0.000421547.0839361
Approve200104112024-06-03 9:30:1127 days ago1717407011IN
0x014468d2...420aDC445
0 ETH0.0010162921.8364761
Approve200076092024-06-03 0:06:3528 days ago1717373195IN
0x014468d2...420aDC445
0 ETH0.000319756.87032415
Approve200043552024-06-02 13:12:2328 days ago1717333943IN
0x014468d2...420aDC445
0 ETH0.000319916.87387418
Approve200031412024-06-02 9:07:5928 days ago1717319279IN
0x014468d2...420aDC445
0 ETH0.000300516.45700701
Approve200027332024-06-02 7:46:1128 days ago1717314371IN
0x014468d2...420aDC445
0 ETH0.000382088.19906332
Approve199945432024-06-01 4:20:3530 days ago1717215635IN
0x014468d2...420aDC445
0 ETH0.000283096.07481837
Approve199768912024-05-29 17:05:3532 days ago1717002335IN
0x014468d2...420aDC445
0 ETH0.000867818.64598058
Approve199632862024-05-27 19:26:5934 days ago1716838019IN
0x014468d2...420aDC445
0 ETH0.0018149938.99774053
Transfer199286852024-05-22 23:24:4739 days ago1716420287IN
0x014468d2...420aDC445
0 ETH0.000486888.18040813
Approve199264582024-05-22 15:57:2339 days ago1716393443IN
0x014468d2...420aDC445
0 ETH0.0034157673.29819013
Approve199264582024-05-22 15:57:2339 days ago1716393443IN
0x014468d2...420aDC445
0 ETH0.0034157673.29819013
Approve199264582024-05-22 15:57:2339 days ago1716393443IN
0x014468d2...420aDC445
0 ETH0.0034157673.29819013
Approve198788192024-05-15 23:59:4746 days ago1715817587IN
0x014468d2...420aDC445
0 ETH0.000206334.43349853
Approve198757432024-05-15 13:40:5946 days ago1715780459IN
0x014468d2...420aDC445
0 ETH0.0007450216.00790304
Approve198557232024-05-12 18:27:3549 days ago1715538455IN
0x014468d2...420aDC445
0 ETH0.000264815.6898956
Approve198281042024-05-08 21:45:5953 days ago1715204759IN
0x014468d2...420aDC445
0 ETH0.0002665.71542532
Approve198168032024-05-07 7:49:3554 days ago1715068175IN
0x014468d2...420aDC445
0 ETH0.000446379.59108485
Approve198125042024-05-06 17:23:2355 days ago1715016203IN
0x014468d2...420aDC445
0 ETH0.000369997.94986835
Approve198117242024-05-06 14:45:4755 days ago1715006747IN
0x014468d2...420aDC445
0 ETH0.0005231411.24055874
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
200076112024-06-03 0:06:5928 days ago1717373219
0x014468d2...420aDC445
0.01427456 ETH
200076112024-06-03 0:06:5928 days ago1717373219
0x014468d2...420aDC445
0.01427456 ETH
199945432024-06-01 4:20:3530 days ago1717215635
0x014468d2...420aDC445
0.02250084 ETH
199945432024-06-01 4:20:3530 days ago1717215635
0x014468d2...420aDC445
0.02250084 ETH
199768922024-05-29 17:05:4732 days ago1717002347
0x014468d2...420aDC445
0.00427157 ETH
199768922024-05-29 17:05:4732 days ago1717002347
0x014468d2...420aDC445
0.00427157 ETH
199633002024-05-27 19:29:4734 days ago1716838187
0x014468d2...420aDC445
0.04171691 ETH
199633002024-05-27 19:29:4734 days ago1716838187
0x014468d2...420aDC445
0.04171691 ETH
199169122024-05-21 7:52:2340 days ago1716277943
0x014468d2...420aDC445
0.008378 ETH
199169122024-05-21 7:52:2340 days ago1716277943
0x014468d2...420aDC445
0.008378 ETH
198557342024-05-12 18:29:4749 days ago1715538587
0x014468d2...420aDC445
0.01549223 ETH
198557342024-05-12 18:29:4749 days ago1715538587
0x014468d2...420aDC445
0.01549223 ETH
197985052024-05-04 18:23:1157 days ago1714846991
0x014468d2...420aDC445
0.01530229 ETH
197985052024-05-04 18:23:1157 days ago1714846991
0x014468d2...420aDC445
0.01530229 ETH
197757182024-05-01 13:56:3560 days ago1714571795
0x014468d2...420aDC445
0.0233323 ETH
197757182024-05-01 13:56:3560 days ago1714571795
0x014468d2...420aDC445
0.0233323 ETH
197722412024-05-01 2:16:3561 days ago1714529795
0x014468d2...420aDC445
0.01515487 ETH
197722412024-05-01 2:16:3561 days ago1714529795
0x014468d2...420aDC445
0.01515487 ETH
197584822024-04-29 4:07:4763 days ago1714363667
0x014468d2...420aDC445
0.032039 ETH
197584822024-04-29 4:07:4763 days ago1714363667
0x014468d2...420aDC445
0.032039 ETH
197568182024-04-28 22:32:5963 days ago1714343579
0x014468d2...420aDC445
0.0779227 ETH
197568182024-04-28 22:32:5963 days ago1714343579
0x014468d2...420aDC445
0.0779227 ETH
197566882024-04-28 22:06:5963 days ago1714342019
0x014468d2...420aDC445
0.0779227 ETH
197566882024-04-28 22:06:5963 days ago1714342019
0x014468d2...420aDC445
0.0779227 ETH
197566792024-04-28 22:05:1163 days ago1714341911
0x014468d2...420aDC445
0.0779227 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
HashAI

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-03-18
*/

/**

    Website: https://hash-ai.net/
    Telegram: https://t.me/HashAI_Portal
    Twitter:  https://twitter.com/HashAIOfficial
    Bot: @Hash_AiBot


**/


// SPDX-License-Identifier: MIT

pragma solidity 0.8.19;

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

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

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

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

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

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 IUniswapV2Factory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    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);
}

contract HashAI is Context, IERC20, Ownable {
    using SafeMath for uint256;

    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    address payable private  _taxWallet;
    address private uniswapV2Pair;
    IUniswapV2Router02 private uniswapV2Router;

    uint256 private constant _initialBuyTax =25;
    uint256 private constant _initialSellTax=25;
    uint256 private constant _reduceBuyTaxAt=35;
    uint256 private constant _reduceSellTaxAt=40;
    uint256 private constant _preventSwapBefore=35;
    uint256 private _finalBuyTax=5;
    uint256 private _finalSellTax=5;
    uint256 private _buyCount=0;
    uint256 private _countTax;
    
    string  private constant _name   = unicode"Hash AI";
    string  private constant _symbol = unicode"HASH";
    uint8   private constant _decimals = 9;
    uint256 private constant _tTotal = 100000000 * 10**_decimals;
    uint256 private constant _countTrigger = 81000 * 10**_decimals;
    uint256 public  constant _taxSwapThreshold = 200000 * 10**_decimals;
    uint256 public  constant _maxTaxSwap = 1000000 * 10**_decimals;
    uint256 public _maxTxAmount = 1000000 * 10**_decimals;
    uint256 public _maxWalletSize = 1000000 * 10**_decimals;   

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

    event FinalTax (uint256 _valueBuy, uint256 _valueSell);
    event TradingActive (bool _tradingOpen,bool _swapEnabled);
    event maxAmount(uint256 _value);

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor (address taxWallet) {
         _taxWallet = payable(taxWallet);
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[_taxWallet] = true;
        _isExcludedFromFee[address(this)] = true;
        
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    function name() public pure returns (string memory) {
        return _name;
    }

    function symbol() public pure returns (string memory) {
        return _symbol;
    }

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

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

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

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

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

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

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

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0) && to != address(0), "ERC20: transfer the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;

        if (from != owner() && to != owner()) { 

            if(!tradingOpen){
                require(
                    _isExcludedFromFee[to] || _isExcludedFromFee[from],
                    "trading not yet open"
                );
            }

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _buyCount++;
            }
            
            if ( to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax)/100;    
            } 
            else if (from == uniswapV2Pair && to!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax)/100;
            }

            _countTax += taxAmount;
            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap && 
                to == uniswapV2Pair && 
                swapEnabled && 
                contractTokenBalance > _taxSwapThreshold && 
                _buyCount > _preventSwapBefore &&
                _countTax > _countTrigger
            ){
                uint256 getMinValue = (contractTokenBalance > _maxTaxSwap)?_maxTaxSwap:contractTokenBalance;
                swapTokensForEth((amount > getMinValue)?getMinValue:amount);
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
                _countTax = 0;
            }
        }

        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }

    function sendETHToFee(uint256 amount) private {
        _taxWallet.transfer(amount);
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function _initialize () external onlyOwner {
        require(!tradingOpen,"init already called");
        uint256 tokenAmount = balanceOf(address(this)).sub(_tTotal.mul(_initialBuyTax).div(100));
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(
            uniswapV2Router.factory())
            .createPair(address(this), 
            uniswapV2Router.WETH()
        );
        uniswapV2Router.addLiquidityETH{value: address(this).balance} (
            address(this),
            tokenAmount,
            0,
            0,
            _msgSender(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); 
    }

    function _openTrading () external onlyOwner {
        require(!tradingOpen,"trading already open");
        swapEnabled = true;
        tradingOpen = true;
        emit TradingActive (tradingOpen,swapEnabled);
    }

    function _removeLimits () external onlyOwner {
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
        emit maxAmount (_tTotal);
    }
    
    function _setFinalTax (uint256 _valueBuy, uint256 _valueSell) external onlyOwner {
        require(_valueBuy <= 30 && _valueSell <= 30 && tradingOpen, "Exceeds value");
        _finalBuyTax = _valueBuy;
        _finalSellTax = _valueSell;
        emit FinalTax(_valueBuy, _valueSell);
    }

    receive() external payable {}
}

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":false,"internalType":"uint256","name":"_valueBuy","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_valueSell","type":"uint256"}],"name":"FinalTax","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":false,"internalType":"bool","name":"_tradingOpen","type":"bool"},{"indexed":false,"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"TradingActive","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"maxAmount","type":"event"},{"inputs":[],"name":"_initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_valueBuy","type":"uint256"},{"internalType":"uint256","name":"_valueSell","type":"uint256"}],"name":"_setFinalTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","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":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526005600755600560085560006009556009600a6200002391906200030c565b6200003290620f424062000324565b600b55620000436009600a6200030c565b6200005290620f424062000324565b600c55600d805462ffff00191690553480156200006e57600080fd5b5060405162001d1238038062001d1283398101604081905262000091916200033e565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b0319166001600160a01b038316179055620000fb6009600a6200030c565b6200010b906305f5e10062000324565b336000908152600160208190526040822092909255600390620001366000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790556004549091168152600390925280822080548416600190811790915530835291208054909216179055620001953390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001cf6009600a6200030c565b620001df906305f5e10062000324565b60405190815260200160405180910390a35062000369565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200024e578160001904821115620002325762000232620001f7565b808516156200024057918102915b93841c939080029062000212565b509250929050565b600082620002675750600162000306565b81620002765750600062000306565b81600181146200028f57600281146200029a57620002ba565b600191505062000306565b60ff841115620002ae57620002ae620001f7565b50506001821b62000306565b5060208310610133831016604e8410600b8410161715620002df575081810a62000306565b620002eb83836200020d565b8060001904821115620003025762000302620001f7565b0290505b92915050565b60006200031d60ff84168362000256565b9392505050565b8082028115828204841417620003065762000306620001f7565b6000602082840312156200035157600080fd5b81516001600160a01b03811681146200031d57600080fd5b61199980620003796000396000f3fe6080604052600436106101185760003560e01c806370a08231116100a05780638f9a55c0116100645780638f9a55c0146102f457806395d89b411461030a578063a9059cbb14610337578063bf474bed14610357578063dd62ed3e1461036c57600080fd5b806370a0823114610256578063715018a61461028c5780637d1db4a5146102a157806380ae4ebc146102b75780638da5cb5b146102cc57600080fd5b80631c1702f3116100e75780631c1702f3146101ce57806323b872dd146101e5578063313ce567146102055780634a30b3861461022157806361df9f981461023657600080fd5b806306fdde0314610124578063095ea7b3146101665780630faee56f1461019657806318160ddd146101b957600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b506040805180820190915260078152664861736820414960c81b60208201525b60405161015d9190611546565b60405180910390f35b34801561017257600080fd5b506101866101813660046115ac565b6103b2565b604051901515815260200161015d565b3480156101a257600080fd5b506101ab6103c9565b60405190815260200161015d565b3480156101c557600080fd5b506101ab6103e5565b3480156101da57600080fd5b506101e3610406565b005b3480156101f157600080fd5b506101866102003660046115d8565b6104df565b34801561021157600080fd5b506040516009815260200161015d565b34801561022d57600080fd5b506101e3610548565b34801561024257600080fd5b506101e3610251366004611619565b6105f5565b34801561026257600080fd5b506101ab61027136600461163b565b6001600160a01b031660009081526001602052604090205490565b34801561029857600080fd5b506101e36106c2565b3480156102ad57600080fd5b506101ab600b5481565b3480156102c357600080fd5b506101e3610736565b3480156102d857600080fd5b506000546040516001600160a01b03909116815260200161015d565b34801561030057600080fd5b506101ab600c5481565b34801561031657600080fd5b5060408051808201909152600481526309082a6960e31b6020820152610150565b34801561034357600080fd5b506101866103523660046115ac565b610ae8565b34801561036357600080fd5b506101ab610af5565b34801561037857600080fd5b506101ab610387366004611658565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006103bf338484610b0e565b5060015b92915050565b6103d56009600a61178b565b6103e290620f424061179a565b81565b60006103f36009600a61178b565b610401906305f5e10061179a565b905090565b6000546001600160a01b031633146104395760405162461bcd60e51b8152600401610430906117b1565b60405180910390fd5b600d5460ff16156104835760405162461bcd60e51b81526020600482015260146024820152733a3930b234b7339030b63932b0b23c9037b832b760611b6044820152606401610430565b600d80546201000162ff00ff19909116179081905560408051600181526201000090920460ff16151560208301527f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c91015b60405180910390a1565b60006104ec848484610bdb565b61053e84336105398560405180606001604052806028815260200161193c602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906111c4565b610b0e565b5060019392505050565b6000546001600160a01b031633146105725760405162461bcd60e51b8152600401610430906117b1565b61057e6009600a61178b565b61058c906305f5e10061179a565b600b5561059b6009600a61178b565b6105a9906305f5e10061179a565b600c557f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96105d96009600a61178b565b6105e7906305f5e10061179a565b6040519081526020016104d5565b6000546001600160a01b0316331461061f5760405162461bcd60e51b8152600401610430906117b1565b601e82111580156106315750601e8111155b801561063f5750600d5460ff165b61067b5760405162461bcd60e51b815260206004820152600d60248201526c457863656564732076616c756560981b6044820152606401610430565b6007829055600881905560408051838152602081018390527f78009e5656a5c60b3c047015fb856b2efbc6f42beed76119406d7d4e3fc161f4910160405180910390a15050565b6000546001600160a01b031633146106ec5760405162461bcd60e51b8152600401610430906117b1565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107605760405162461bcd60e51b8152600401610430906117b1565b600d5460ff16156107a95760405162461bcd60e51b81526020600482015260136024820152721a5b9a5d08185b1c9958591e4818d85b1b1959606a1b6044820152606401610430565b60006107f46107de60646107d860196107c46009600a61178b565b6107d2906305f5e10061179a565b906111fe565b90611287565b30600090815260016020526040902054906112c9565b600680546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091559091506108409030906108326009600a61178b565b610539906305f5e10061179a565b600660009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610893573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b791906117e6565b6001600160a01b031663c9c6539630600660009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610919573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061093d91906117e6565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561098a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ae91906117e6565b600580546001600160a01b0319166001600160a01b039283161790556006541663f305d7194730846000803360405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a42573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a679190611803565b505060055460065460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610ac0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae49190611831565b5050565b60006103bf338484610bdb565b610b016009600a61178b565b6103e29062030d4061179a565b6001600160a01b03831615801590610b2e57506001600160a01b03821615155b610b7a5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f2061646472657373006044820152606401610430565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831615801590610bfb57506001600160a01b03821615155b610c475760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f20616464726573736044820152606401610430565b60008111610ca95760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610430565b600080546001600160a01b03858116911614801590610cd657506000546001600160a01b03848116911614155b1561108157600d5460ff16610d67576001600160a01b03831660009081526003602052604090205460ff1680610d2457506001600160a01b03841660009081526003602052604090205460ff165b610d675760405162461bcd60e51b81526020600482015260146024820152733a3930b234b733903737ba103cb2ba1037b832b760611b6044820152606401610430565b6005546001600160a01b038581169116148015610d9257506006546001600160a01b03848116911614155b8015610db757506001600160a01b03831660009081526003602052604090205460ff16155b15610e9f57600b54821115610e0e5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610430565b600c5482610e31856001600160a01b031660009081526001602052604090205490565b610e3b9190611853565b1115610e895760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610430565b60098054906000610e9983611866565b91905055505b6005546001600160a01b038481169116148015610ec557506001600160a01b0384163014155b15610efc576064610eeb602860095411610ee0576019610ee4565b6008545b84906111fe565b610ef5919061187f565b9050610f54565b6005546001600160a01b038581169116148015610f2257506001600160a01b0383163014155b15610f54576064610f47602360095411610f3d576019610ee4565b60075484906111fe565b610f51919061187f565b90505b80600a6000828254610f669190611853565b909155505030600090815260016020526040902054600d54610100900460ff16158015610fa057506005546001600160a01b038581169116145b8015610fb45750600d5462010000900460ff165b8015610fd75750610fc76009600a61178b565b610fd49062030d4061179a565b81115b8015610fe557506023600954115b801561100a5750610ff86009600a61178b565b6110059062013c6861179a565b600a54115b1561107f57600061101d6009600a61178b565b61102a90620f424061179a565b8211611036578161104f565b6110426009600a61178b565b61104f90620f424061179a565b9050611067818511611061578461130b565b8161130b565b478015611077576110774761147f565b50506000600a555b505b80156110fb57306000908152600160205260409020546110a190826114b9565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110f29085815260200190565b60405180910390a35b6001600160a01b03841660009081526001602052604090205461111e90836112c9565b6001600160a01b03851660009081526001602052604090205561116361114483836112c9565b6001600160a01b038516600090815260016020526040902054906114b9565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111ad85856112c9565b60405190815260200160405180910390a350505050565b600081848411156111e85760405162461bcd60e51b81526004016104309190611546565b5060006111f584866118a1565b95945050505050565b600082600003611210575060006103c3565b600061121c838561179a565b905082611229858361187f565b146112805760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610430565b9392505050565b600061128083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611518565b600061128083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111c4565b600d805461ff001916610100179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061134f5761134f6118b4565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156113a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113cc91906117e6565b816001815181106113df576113df6118b4565b6001600160a01b0392831660209182029290920101526006546114059130911684610b0e565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac9479061143e9085906000908690309042906004016118ca565b600060405180830381600087803b15801561145857600080fd5b505af115801561146c573d6000803e3d6000fd5b5050600d805461ff001916905550505050565b6004546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610ae4573d6000803e3d6000fd5b6000806114c68385611853565b9050838110156112805760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610430565b600081836115395760405162461bcd60e51b81526004016104309190611546565b5060006111f5848661187f565b600060208083528351808285015260005b8181101561157357858101830151858201604001528201611557565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115a957600080fd5b50565b600080604083850312156115bf57600080fd5b82356115ca81611594565b946020939093013593505050565b6000806000606084860312156115ed57600080fd5b83356115f881611594565b9250602084013561160881611594565b929592945050506040919091013590565b6000806040838503121561162c57600080fd5b50508035926020909101359150565b60006020828403121561164d57600080fd5b813561128081611594565b6000806040838503121561166b57600080fd5b823561167681611594565b9150602083013561168681611594565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116e25781600019048211156116c8576116c8611691565b808516156116d557918102915b93841c93908002906116ac565b509250929050565b6000826116f9575060016103c3565b81611706575060006103c3565b816001811461171c576002811461172657611742565b60019150506103c3565b60ff84111561173757611737611691565b50506001821b6103c3565b5060208310610133831016604e8410600b8410161715611765575081810a6103c3565b61176f83836116a7565b806000190482111561178357611783611691565b029392505050565b600061128060ff8416836116ea565b80820281158282048414176103c3576103c3611691565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156117f857600080fd5b815161128081611594565b60008060006060848603121561181857600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561184357600080fd5b8151801515811461128057600080fd5b808201808211156103c3576103c3611691565b60006001820161187857611878611691565b5060010190565b60008261189c57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156103c3576103c3611691565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561191a5784516001600160a01b0316835293830193918301916001016118f5565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220740a7d2e33df853d8be038d8e2e3daaae61d72265f336bbb8d8391d63041f81564736f6c63430008130033000000000000000000000000020e2a7925cd5cb43ec968e4a0c987ad8a9cb3f6

Deployed Bytecode

0x6080604052600436106101185760003560e01c806370a08231116100a05780638f9a55c0116100645780638f9a55c0146102f457806395d89b411461030a578063a9059cbb14610337578063bf474bed14610357578063dd62ed3e1461036c57600080fd5b806370a0823114610256578063715018a61461028c5780637d1db4a5146102a157806380ae4ebc146102b75780638da5cb5b146102cc57600080fd5b80631c1702f3116100e75780631c1702f3146101ce57806323b872dd146101e5578063313ce567146102055780634a30b3861461022157806361df9f981461023657600080fd5b806306fdde0314610124578063095ea7b3146101665780630faee56f1461019657806318160ddd146101b957600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b506040805180820190915260078152664861736820414960c81b60208201525b60405161015d9190611546565b60405180910390f35b34801561017257600080fd5b506101866101813660046115ac565b6103b2565b604051901515815260200161015d565b3480156101a257600080fd5b506101ab6103c9565b60405190815260200161015d565b3480156101c557600080fd5b506101ab6103e5565b3480156101da57600080fd5b506101e3610406565b005b3480156101f157600080fd5b506101866102003660046115d8565b6104df565b34801561021157600080fd5b506040516009815260200161015d565b34801561022d57600080fd5b506101e3610548565b34801561024257600080fd5b506101e3610251366004611619565b6105f5565b34801561026257600080fd5b506101ab61027136600461163b565b6001600160a01b031660009081526001602052604090205490565b34801561029857600080fd5b506101e36106c2565b3480156102ad57600080fd5b506101ab600b5481565b3480156102c357600080fd5b506101e3610736565b3480156102d857600080fd5b506000546040516001600160a01b03909116815260200161015d565b34801561030057600080fd5b506101ab600c5481565b34801561031657600080fd5b5060408051808201909152600481526309082a6960e31b6020820152610150565b34801561034357600080fd5b506101866103523660046115ac565b610ae8565b34801561036357600080fd5b506101ab610af5565b34801561037857600080fd5b506101ab610387366004611658565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006103bf338484610b0e565b5060015b92915050565b6103d56009600a61178b565b6103e290620f424061179a565b81565b60006103f36009600a61178b565b610401906305f5e10061179a565b905090565b6000546001600160a01b031633146104395760405162461bcd60e51b8152600401610430906117b1565b60405180910390fd5b600d5460ff16156104835760405162461bcd60e51b81526020600482015260146024820152733a3930b234b7339030b63932b0b23c9037b832b760611b6044820152606401610430565b600d80546201000162ff00ff19909116179081905560408051600181526201000090920460ff16151560208301527f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c91015b60405180910390a1565b60006104ec848484610bdb565b61053e84336105398560405180606001604052806028815260200161193c602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906111c4565b610b0e565b5060019392505050565b6000546001600160a01b031633146105725760405162461bcd60e51b8152600401610430906117b1565b61057e6009600a61178b565b61058c906305f5e10061179a565b600b5561059b6009600a61178b565b6105a9906305f5e10061179a565b600c557f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96105d96009600a61178b565b6105e7906305f5e10061179a565b6040519081526020016104d5565b6000546001600160a01b0316331461061f5760405162461bcd60e51b8152600401610430906117b1565b601e82111580156106315750601e8111155b801561063f5750600d5460ff165b61067b5760405162461bcd60e51b815260206004820152600d60248201526c457863656564732076616c756560981b6044820152606401610430565b6007829055600881905560408051838152602081018390527f78009e5656a5c60b3c047015fb856b2efbc6f42beed76119406d7d4e3fc161f4910160405180910390a15050565b6000546001600160a01b031633146106ec5760405162461bcd60e51b8152600401610430906117b1565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107605760405162461bcd60e51b8152600401610430906117b1565b600d5460ff16156107a95760405162461bcd60e51b81526020600482015260136024820152721a5b9a5d08185b1c9958591e4818d85b1b1959606a1b6044820152606401610430565b60006107f46107de60646107d860196107c46009600a61178b565b6107d2906305f5e10061179a565b906111fe565b90611287565b30600090815260016020526040902054906112c9565b600680546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091559091506108409030906108326009600a61178b565b610539906305f5e10061179a565b600660009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610893573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b791906117e6565b6001600160a01b031663c9c6539630600660009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610919573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061093d91906117e6565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561098a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ae91906117e6565b600580546001600160a01b0319166001600160a01b039283161790556006541663f305d7194730846000803360405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a42573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a679190611803565b505060055460065460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610ac0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae49190611831565b5050565b60006103bf338484610bdb565b610b016009600a61178b565b6103e29062030d4061179a565b6001600160a01b03831615801590610b2e57506001600160a01b03821615155b610b7a5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f2061646472657373006044820152606401610430565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831615801590610bfb57506001600160a01b03821615155b610c475760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f20616464726573736044820152606401610430565b60008111610ca95760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610430565b600080546001600160a01b03858116911614801590610cd657506000546001600160a01b03848116911614155b1561108157600d5460ff16610d67576001600160a01b03831660009081526003602052604090205460ff1680610d2457506001600160a01b03841660009081526003602052604090205460ff165b610d675760405162461bcd60e51b81526020600482015260146024820152733a3930b234b733903737ba103cb2ba1037b832b760611b6044820152606401610430565b6005546001600160a01b038581169116148015610d9257506006546001600160a01b03848116911614155b8015610db757506001600160a01b03831660009081526003602052604090205460ff16155b15610e9f57600b54821115610e0e5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610430565b600c5482610e31856001600160a01b031660009081526001602052604090205490565b610e3b9190611853565b1115610e895760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610430565b60098054906000610e9983611866565b91905055505b6005546001600160a01b038481169116148015610ec557506001600160a01b0384163014155b15610efc576064610eeb602860095411610ee0576019610ee4565b6008545b84906111fe565b610ef5919061187f565b9050610f54565b6005546001600160a01b038581169116148015610f2257506001600160a01b0383163014155b15610f54576064610f47602360095411610f3d576019610ee4565b60075484906111fe565b610f51919061187f565b90505b80600a6000828254610f669190611853565b909155505030600090815260016020526040902054600d54610100900460ff16158015610fa057506005546001600160a01b038581169116145b8015610fb45750600d5462010000900460ff165b8015610fd75750610fc76009600a61178b565b610fd49062030d4061179a565b81115b8015610fe557506023600954115b801561100a5750610ff86009600a61178b565b6110059062013c6861179a565b600a54115b1561107f57600061101d6009600a61178b565b61102a90620f424061179a565b8211611036578161104f565b6110426009600a61178b565b61104f90620f424061179a565b9050611067818511611061578461130b565b8161130b565b478015611077576110774761147f565b50506000600a555b505b80156110fb57306000908152600160205260409020546110a190826114b9565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110f29085815260200190565b60405180910390a35b6001600160a01b03841660009081526001602052604090205461111e90836112c9565b6001600160a01b03851660009081526001602052604090205561116361114483836112c9565b6001600160a01b038516600090815260016020526040902054906114b9565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111ad85856112c9565b60405190815260200160405180910390a350505050565b600081848411156111e85760405162461bcd60e51b81526004016104309190611546565b5060006111f584866118a1565b95945050505050565b600082600003611210575060006103c3565b600061121c838561179a565b905082611229858361187f565b146112805760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610430565b9392505050565b600061128083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611518565b600061128083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111c4565b600d805461ff001916610100179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061134f5761134f6118b4565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156113a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113cc91906117e6565b816001815181106113df576113df6118b4565b6001600160a01b0392831660209182029290920101526006546114059130911684610b0e565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac9479061143e9085906000908690309042906004016118ca565b600060405180830381600087803b15801561145857600080fd5b505af115801561146c573d6000803e3d6000fd5b5050600d805461ff001916905550505050565b6004546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610ae4573d6000803e3d6000fd5b6000806114c68385611853565b9050838110156112805760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610430565b600081836115395760405162461bcd60e51b81526004016104309190611546565b5060006111f5848661187f565b600060208083528351808285015260005b8181101561157357858101830151858201604001528201611557565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115a957600080fd5b50565b600080604083850312156115bf57600080fd5b82356115ca81611594565b946020939093013593505050565b6000806000606084860312156115ed57600080fd5b83356115f881611594565b9250602084013561160881611594565b929592945050506040919091013590565b6000806040838503121561162c57600080fd5b50508035926020909101359150565b60006020828403121561164d57600080fd5b813561128081611594565b6000806040838503121561166b57600080fd5b823561167681611594565b9150602083013561168681611594565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116e25781600019048211156116c8576116c8611691565b808516156116d557918102915b93841c93908002906116ac565b509250929050565b6000826116f9575060016103c3565b81611706575060006103c3565b816001811461171c576002811461172657611742565b60019150506103c3565b60ff84111561173757611737611691565b50506001821b6103c3565b5060208310610133831016604e8410600b8410161715611765575081810a6103c3565b61176f83836116a7565b806000190482111561178357611783611691565b029392505050565b600061128060ff8416836116ea565b80820281158282048414176103c3576103c3611691565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156117f857600080fd5b815161128081611594565b60008060006060848603121561181857600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561184357600080fd5b8151801515811461128057600080fd5b808201808211156103c3576103c3611691565b60006001820161187857611878611691565b5060010190565b60008261189c57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156103c3576103c3611691565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561191a5784516001600160a01b0316835293830193918301916001016118f5565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220740a7d2e33df853d8be038d8e2e3daaae61d72265f336bbb8d8391d63041f81564736f6c63430008130033

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

000000000000000000000000020e2a7925cd5cb43ec968e4a0c987ad8a9cb3f6

-----Decoded View---------------
Arg [0] : taxWallet (address): 0x020E2a7925cd5CB43ec968e4a0C987Ad8A9Cb3F6

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000020e2a7925cd5cb43ec968e4a0c987ad8a9cb3f6


Deployed Bytecode Sourcemap

3638:8324:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5723:83;;;;;;;;;;-1:-1:-1;5793:5:0;;;;;;;;;;;;-1:-1:-1;;;5793:5:0;;;;5723:83;;;;;;;:::i;:::-;;;;;;;;6556:161;;;;;;;;;;-1:-1:-1;6556:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6556:161:0;1023:187:1;4810:62:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;4810:62:0;1215:177:1;6000:95:0;;;;;;;;;;;;;:::i;11231:220::-;;;;;;;;;;;;;:::i;:::-;;6725:313;;;;;;;;;;-1:-1:-1;6725:313:0;;;;;:::i;:::-;;:::i;5909:83::-;;;;;;;;;;-1:-1:-1;5909:83:0;;4592:1;2000:36:1;;1988:2;1973:18;5909:83:0;1858:184:1;11459:156:0;;;;;;;;;;;;;:::i;11627:295::-;;;;;;;;;;-1:-1:-1;11627:295:0;;;;;:::i;:::-;;:::i;6103:119::-;;;;;;;;;;-1:-1:-1;6103:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6196:18:0;6169:7;6196:18;;;:9;:18;;;;;;;6103:119;2721:148;;;;;;;;;;;;;:::i;4879:53::-;;;;;;;;;;;;;;;;10376:847;;;;;;;;;;;;;:::i;2507:79::-;;;;;;;;;;-1:-1:-1;2545:7:0;2572:6;2507:79;;-1:-1:-1;;;;;2572:6:0;;;2698:51:1;;2686:2;2671:18;2507:79:0;2552:203:1;4939:55:0;;;;;;;;;;;;;;;;5814:87;;;;;;;;;;-1:-1:-1;5886:7:0;;;;;;;;;;;;-1:-1:-1;;;5886:7:0;;;;5814:87;;6230:167;;;;;;;;;;-1:-1:-1;6230:167:0;;;;;:::i;:::-;;:::i;4736:67::-;;;;;;;;;;;;;:::i;6405:143::-;;;;;;;;;;-1:-1:-1;6405:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6513:18:0;;;6486:7;6513:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6405:143;6556:161;6631:4;6648:39;344:10;6671:7;6680:6;6648:8;:39::i;:::-;-1:-1:-1;6705:4:0;6556:161;;;;;:::o;4810:62::-;4859:13;4592:1;4859:2;:13;:::i;:::-;4849:23;;:7;:23;:::i;:::-;4810:62;:::o;6000:95::-;6053:7;4647:13;4592:1;4647:2;:13;:::i;:::-;4635:25;;:9;:25;:::i;:::-;6073:14;;6000:95;:::o;11231:220::-;2634:6;;-1:-1:-1;;;;;2634:6:0;344:10;2634:22;2626:67;;;;-1:-1:-1;;;2626:67:0;;;;;;;:::i;:::-;;;;;;;;;11295:11:::1;::::0;::::1;;11294:12;11286:44;;;::::0;-1:-1:-1;;;11286:44:0;;5404:2:1;11286:44:0::1;::::0;::::1;5386:21:1::0;5443:2;5423:18;;;5416:30;-1:-1:-1;;;5462:18:1;;;5455:50;5522:18;;11286:44:0::1;5202:344:1::0;11286:44:0::1;11341:11;:18:::0;;11370;-1:-1:-1;;11370:18:0;;;;;;;;11404:39:::1;::::0;;-1:-1:-1;5713:41:1;;11341:18:0;11431:11;;::::1;11341:18;11431:11;5797:14:1::0;5790:22;5785:2;5770:18;;5763:50;11404:39:0::1;::::0;5686:18:1;11404:39:0::1;;;;;;;;11231:220::o:0;6725:313::-;6823:4;6840:36;6850:6;6858:9;6869:6;6840:9;:36::i;:::-;6887:121;6896:6;344:10;6918:89;6956:6;6918:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6918:19:0;;;;;;:11;:19;;;;;;;;344:10;6918:33;;;;;;;;;;:37;:89::i;:::-;6887:8;:121::i;:::-;-1:-1:-1;7026:4:0;6725:313;;;;;:::o;11459:156::-;2634:6;;-1:-1:-1;;;;;2634:6:0;344:10;2634:22;2626:67;;;;-1:-1:-1;;;2626:67:0;;;;;;;:::i;:::-;4647:13:::1;4592:1;4647:2;:13;:::i;:::-;4635:25;::::0;:9:::1;:25;:::i;:::-;11515:12;:22:::0;4647:13:::1;4592:1;4647:2;:13;:::i;:::-;4635:25;::::0;:9:::1;:25;:::i;:::-;11548:14;:24:::0;11588:19:::1;4647:13;4592:1;4647:2;:13;:::i;:::-;4635:25;::::0;:9:::1;:25;:::i;:::-;11588:19;::::0;1361:25:1;;;1349:2;1334:18;11588:19:0::1;1215:177:1::0;11627:295:0;2634:6;;-1:-1:-1;;;;;2634:6:0;344:10;2634:22;2626:67;;;;-1:-1:-1;;;2626:67:0;;;;;;;:::i;:::-;11740:2:::1;11727:9;:15;;:35;;;;;11760:2;11746:10;:16;;11727:35;:50;;;;-1:-1:-1::0;11766:11:0::1;::::0;::::1;;11727:50;11719:76;;;::::0;-1:-1:-1;;;11719:76:0;;6026:2:1;11719:76:0::1;::::0;::::1;6008:21:1::0;6065:2;6045:18;;;6038:30;-1:-1:-1;;;6084:18:1;;;6077:43;6137:18;;11719:76:0::1;5824:337:1::0;11719:76:0::1;11806:12;:24:::0;;;11841:13:::1;:26:::0;;;11883:31:::1;::::0;;6340:25:1;;;6396:2;6381:18;;6374:34;;;11883:31:0::1;::::0;6313:18:1;11883:31:0::1;;;;;;;11627:295:::0;;:::o;2721:148::-;2634:6;;-1:-1:-1;;;;;2634:6:0;344:10;2634:22;2626:67;;;;-1:-1:-1;;;2626:67:0;;;;;;;:::i;:::-;2828:1:::1;2812:6:::0;;2791:40:::1;::::0;-1:-1:-1;;;;;2812:6:0;;::::1;::::0;2791:40:::1;::::0;2828:1;;2791:40:::1;2859:1;2842:19:::0;;-1:-1:-1;;;;;;2842:19:0::1;::::0;;2721:148::o;10376:847::-;2634:6;;-1:-1:-1;;;;;2634:6:0;344:10;2634:22;2626:67;;;;-1:-1:-1;;;2626:67:0;;;;;;;:::i;:::-;10439:11:::1;::::0;::::1;;10438:12;10430:43;;;::::0;-1:-1:-1;;;10430:43:0;;6621:2:1;10430:43:0::1;::::0;::::1;6603:21:1::0;6660:2;6640:18;;;6633:30;-1:-1:-1;;;6679:18:1;;;6672:49;6738:18;;10430:43:0::1;6419:343:1::0;10430:43:0::1;10484:19;10506:66;10535:36;10567:3;10535:27;4082:2;4647:13;4592:1;4647:2;:13;:::i;:::-;4635:25;::::0;:9:::1;:25;:::i;:::-;10535:11:::0;::::1;:27::i;:::-;:31:::0;::::1;:36::i;:::-;10524:4;6169:7:::0;6196:18;;;:9;:18;;;;;;10506:28;::::1;:66::i;:::-;10583:15;:80:::0;;-1:-1:-1;;;;;;10583:80:0::1;10620:42;10583:80:::0;;::::1;::::0;;;10484:88;;-1:-1:-1;10674:58:0::1;::::0;10691:4:::1;::::0;4647:13:::1;4592:1;4647:2;:13;:::i;:::-;4635:25;::::0;:9:::1;:25;:::i;10674:58::-;10791:15;;;;;;;;;-1:-1:-1::0;;;;;10791:15:0::1;-1:-1:-1::0;;;;;10791:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10759:83:0::1;;10851:4;10872:15;;;;;;;;;-1:-1:-1::0;;;;;10872:15:0::1;-1:-1:-1::0;;;;;10872:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10759:146;::::0;-1:-1:-1;;;;;;10759:146:0::1;::::0;;;;;;-1:-1:-1;;;;;7253:15:1;;;10759:146:0::1;::::0;::::1;7235:34:1::0;7305:15;;7285:18;;;7278:43;7170:18;;10759:146:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10743:13;:162:::0;;-1:-1:-1;;;;;;10743:162:0::1;-1:-1:-1::0;;;;;10743:162:0;;::::1;;::::0;;10916:15:::1;::::0;::::1;:31;10955:21;11001:4;11021:11:::0;-1:-1:-1;;344:10:0;10916:216:::1;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10916:216:0;;;-1:-1:-1;;;;;7691:15:1;;;10916:216:0::1;::::0;::::1;7673:34:1::0;7723:18;;;7716:34;;;;7766:18;;;7759:34;;;;7809:18;;;7802:34;7873:15;;;7852:19;;;7845:44;11106:15:0::1;7905:19:1::0;;;7898:35;7607:19;;10916:216:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11150:13:0::1;::::0;11181:15:::1;::::0;11143:71:::1;::::0;-1:-1:-1;;;11143:71:0;;-1:-1:-1;;;;;11181:15:0;;::::1;11143:71;::::0;::::1;8429:51:1::0;-1:-1:-1;;8496:18:1;;;8489:34;11150:13:0;::::1;::::0;-1:-1:-1;11143:29:0::1;::::0;8402:18:1;;11143:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10419:804;10376:847::o:0;6230:167::-;6308:4;6325:42;344:10;6349:9;6360:6;6325:9;:42::i;4736:67::-;4790:13;4592:1;4790:2;:13;:::i;:::-;4781:22;;:6;:22;:::i;7046:276::-;-1:-1:-1;;;;;7139:19:0;;;;;;:44;;-1:-1:-1;;;;;;7162:21:0;;;;7139:44;7131:88;;;;-1:-1:-1;;;7131:88:0;;9018:2:1;7131:88:0;;;9000:21:1;9057:2;9037:18;;;9030:30;9096:33;9076:18;;;9069:61;9147:18;;7131:88:0;8816:355:1;7131:88:0;-1:-1:-1;;;;;7230:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7282:32;;1361:25:1;;;7282:32:0;;1334:18:1;7282:32:0;;;;;;;7046:276;;;:::o;7330:2447::-;-1:-1:-1;;;;;7418:18:0;;;;;;:38;;-1:-1:-1;;;;;;7440:16:0;;;;7418:38;7410:83;;;;-1:-1:-1;;;7410:83:0;;9378:2:1;7410:83:0;;;9360:21:1;;;9397:18;;;9390:30;9456:34;9436:18;;;9429:62;9508:18;;7410:83:0;9176:356:1;7410:83:0;7521:1;7512:6;:10;7504:64;;;;-1:-1:-1;;;7504:64:0;;9739:2:1;7504:64:0;;;9721:21:1;9778:2;9758:18;;;9751:30;9817:34;9797:18;;;9790:62;-1:-1:-1;;;9868:18:1;;;9861:39;9917:19;;7504:64:0;9537:405:1;7504:64:0;7579:17;2572:6;;-1:-1:-1;;;;;7615:15:0;;;2572:6;;7615:15;;;;:32;;-1:-1:-1;2545:7:0;2572:6;-1:-1:-1;;;;;7634:13:0;;;2572:6;;7634:13;;7615:32;7611:1810;;;7671:11;;;;7667:195;;-1:-1:-1;;;;;7732:22:0;;;;;;:18;:22;;;;;;;;;:50;;-1:-1:-1;;;;;;7758:24:0;;;;;;:18;:24;;;;;;;;7732:50;7702:144;;;;-1:-1:-1;;;7702:144:0;;10149:2:1;7702:144:0;;;10131:21:1;10188:2;10168:18;;;10161:30;-1:-1:-1;;;10207:18:1;;;10200:50;10267:18;;7702:144:0;9947:344:1;7702:144:0;7890:13;;-1:-1:-1;;;;;7882:21:0;;;7890:13;;7882:21;:55;;;;-1:-1:-1;7921:15:0;;-1:-1:-1;;;;;7907:30:0;;;7921:15;;7907:30;;7882:55;:83;;;;-1:-1:-1;;;;;;7943:22:0;;;;;;:18;:22;;;;;;;;7941:24;7882:83;7878:313;;;8005:12;;7995:6;:22;;7987:60;;;;-1:-1:-1;;;7987:60:0;;10498:2:1;7987:60:0;;;10480:21:1;10537:2;10517:18;;;10510:30;10576:27;10556:18;;;10549:55;10621:18;;7987:60:0;10296:349:1;7987:60:0;8100:14;;8090:6;8074:13;8084:2;-1:-1:-1;;;;;6196:18:0;6169:7;6196:18;;;:9;:18;;;;;;;6103:119;8074:13;:22;;;;:::i;:::-;:40;;8066:79;;;;-1:-1:-1;;;8066:79:0;;10982:2:1;8066:79:0;;;10964:21:1;11021:2;11001:18;;;10994:30;11060:28;11040:18;;;11033:56;11106:18;;8066:79:0;10780:350:1;8066:79:0;8164:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7878:313;8230:13;;-1:-1:-1;;;;;8224:19:0;;;8230:13;;8224:19;:43;;;;-1:-1:-1;;;;;;8247:20:0;;8262:4;8247:20;;8224:43;8219:362;;;8371:3;8300:70;4233:2;8312:9;;:26;8311:58;;4132:2;8311:58;;;8340:13;;8311:58;8300:6;;:10;:70::i;:::-;:74;;;;:::i;:::-;8288:86;;8219:362;;;8426:13;;-1:-1:-1;;;;;8418:21:0;;;8426:13;;8418:21;:43;;;;-1:-1:-1;;;;;;8443:18:0;;8456:4;8443:18;;8418:43;8414:167;;;8562:3;8494:67;4182:2;8506:9;;:25;8505:55;;4082:2;8505:55;;;8533:12;;8494:6;;:10;:67::i;:::-;:71;;;;:::i;:::-;8482:83;;8414:167;8610:9;8597;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;;8683:4:0;8634:28;6196:18;;;:9;:18;;;;;;8727:6;;;;;;;8726:7;:48;;;;-1:-1:-1;8761:13:0;;-1:-1:-1;;;;;8755:19:0;;;8761:13;;8755:19;8726:48;:81;;;;-1:-1:-1;8796:11:0;;;;;;;8726:81;:143;;;;-1:-1:-1;4790:13:0;4592:1;4790:2;:13;:::i;:::-;4781:22;;:6;:22;:::i;:::-;8829:20;:40;8726:143;:195;;;;;4286:2;8891:9;;:30;8726:195;:241;;;;-1:-1:-1;4716:13:0;4592:1;4716:2;:13;:::i;:::-;4708:21;;:5;:21;:::i;:::-;8942:9;;:25;8726:241;8704:706;;;9001:19;4859:13;4592:1;4859:2;:13;:::i;:::-;4849:23;;:7;:23;:::i;:::-;9024:20;:34;9023:69;;9072:20;9023:69;;;4859:13;4592:1;4859:2;:13;:::i;:::-;4849:23;;:7;:23;:::i;:::-;9001:91;;9111:59;9138:11;9129:6;:20;9128:41;;9163:6;9111:16;:59::i;9128:41::-;9151:11;9111:16;:59::i;:::-;9218:21;9261:22;;9258:105;;9308:35;9321:21;9308:12;:35::i;:::-;-1:-1:-1;;9393:1:0;9381:9;:13;8704:706;7649:1772;7611:1810;9436:11;;9433:161;;9504:4;9486:24;;;;:9;:24;;;;;;:39;;9515:9;9486:28;:39::i;:::-;9479:4;9461:24;;;;:9;:24;;;;;;;:64;;;;9543:39;;-1:-1:-1;;;;;9543:39:0;;;;;;;9572:9;1361:25:1;;1349:2;1334:18;;1215:177;9543:39:0;;;;;;;;9433:161;-1:-1:-1;;;;;9620:15:0;;;;;;:9;:15;;;;;;:27;;9640:6;9620:19;:27::i;:::-;-1:-1:-1;;;;;9604:15:0;;;;;;:9;:15;;;;;:43;9672:40;9690:21;:6;9701:9;9690:10;:21::i;:::-;-1:-1:-1;;;;;9672:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9658:13:0;;;;;;;:9;:13;;;;;:54;;;;9728:41;;;9747:21;:6;9758:9;9747:10;:21::i;:::-;9728:41;;1361:25:1;;;1349:2;1334:18;9728:41:0;;;;;;;7399:2378;7330:2447;;;:::o;1401:190::-;1487:7;1523:12;1515:6;;;;1507:29;;;;-1:-1:-1;;;1507:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1547:9:0;1559:5;1563:1;1559;:5;:::i;:::-;1547:17;1401:190;-1:-1:-1;;;;;1401:190:0:o;1599:246::-;1657:7;1681:1;1686;1681:6;1677:47;;-1:-1:-1;1711:1:0;1704:8;;1677:47;1734:9;1746:5;1750:1;1746;:5;:::i;:::-;1734:17;-1:-1:-1;1779:1:0;1770:5;1774:1;1734:17;1770:5;:::i;:::-;:10;1762:56;;;;-1:-1:-1;;;1762:56:0;;11832:2:1;1762:56:0;;;11814:21:1;11871:2;11851:18;;;11844:30;11910:34;11890:18;;;11883:62;-1:-1:-1;;;11961:18:1;;;11954:31;12002:19;;1762:56:0;11630:397:1;1762:56:0;1836:1;1599:246;-1:-1:-1;;;1599:246:0:o;1853:132::-;1911:7;1938:39;1942:1;1945;1938:39;;;;;;;;;;;;;;;;;:3;:39::i;1257:136::-;1315:7;1342:43;1346:1;1349;1342:43;;;;;;;;;;;;;;;;;:3;:43::i;9885:483::-;5309:6;:13;;-1:-1:-1;;5309:13:0;;;;;9987:16:::1;::::0;;10001:1:::1;9987:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9987:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9987:16:0::1;9963:40;;10032:4;10014;10019:1;10014:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10014:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10058:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10058:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10014:7;;10058:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10048:4;10053:1;10048:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10048:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10123:15:::1;::::0;10091:62:::1;::::0;10108:4:::1;::::0;10123:15:::1;10141:11:::0;10091:8:::1;:62::i;:::-;10164:15;::::0;:196:::1;::::0;-1:-1:-1;;;10164:196:0;;-1:-1:-1;;;;;10164:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10245:11;;10164:15:::1;::::0;10287:4;;10314::::1;::::0;10334:15:::1;::::0;10164:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5345:6:0;:14;;-1:-1:-1;;5345:14:0;;;-1:-1:-1;;;;9885:483:0:o;9785:92::-;9842:10;;:27;;-1:-1:-1;;;;;9842:10:0;;;;:27;;;;;9862:6;;9842:10;:27;:10;:27;9862:6;9842:10;:27;;;;;;;;;;;;;;;;;;;1070:179;1128:7;;1160:5;1164:1;1160;:5;:::i;:::-;1148:17;;1189:1;1184;:6;;1176:46;;;;-1:-1:-1;;;1176:46:0;;13483:2:1;1176:46:0;;;13465:21:1;13522:2;13502:18;;;13495:30;13561:29;13541:18;;;13534:57;13608:18;;1176:46:0;13281:351:1;1993:189:0;2079:7;2114:12;2107:5;2099:28;;;;-1:-1:-1;;;2099:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2138:9:0;2150:5;2154:1;2150;:5;:::i;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;622:70;567:131;:::o;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;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:248::-;2115:6;2123;2176:2;2164:9;2155:7;2151:23;2147:32;2144:52;;;2192:1;2189;2182:12;2144:52;-1:-1:-1;;2215:23:1;;;2285:2;2270:18;;;2257:32;;-1:-1:-1;2047:248:1:o;2300:247::-;2359:6;2412:2;2400:9;2391:7;2387:23;2383:32;2380:52;;;2428:1;2425;2418:12;2380:52;2467:9;2454:23;2486:31;2511:5;2486:31;:::i;2760:388::-;2828:6;2836;2889:2;2877:9;2868:7;2864:23;2860:32;2857:52;;;2905:1;2902;2895:12;2857:52;2944:9;2931:23;2963:31;2988:5;2963:31;:::i;:::-;3013:5;-1:-1:-1;3070:2:1;3055:18;;3042:32;3083:33;3042:32;3083:33;:::i;:::-;3135:7;3125:17;;;2760:388;;;;;:::o;3153:127::-;3214:10;3209:3;3205:20;3202:1;3195:31;3245:4;3242:1;3235:15;3269:4;3266:1;3259:15;3285:422;3374:1;3417:5;3374:1;3431:270;3452:7;3442:8;3439:21;3431:270;;;3511:4;3507:1;3503:6;3499:17;3493:4;3490:27;3487:53;;;3520:18;;:::i;:::-;3570:7;3560:8;3556:22;3553:55;;;3590:16;;;;3553:55;3669:22;;;;3629:15;;;;3431:270;;;3435:3;3285:422;;;;;:::o;3712:806::-;3761:5;3791:8;3781:80;;-1:-1:-1;3832:1:1;3846:5;;3781:80;3880:4;3870:76;;-1:-1:-1;3917:1:1;3931:5;;3870:76;3962:4;3980:1;3975:59;;;;4048:1;4043:130;;;;3955:218;;3975:59;4005:1;3996:10;;4019:5;;;4043:130;4080:3;4070:8;4067:17;4064:43;;;4087:18;;:::i;:::-;-1:-1:-1;;4143:1:1;4129:16;;4158:5;;3955:218;;4257:2;4247:8;4244:16;4238:3;4232:4;4229:13;4225:36;4219:2;4209:8;4206:16;4201:2;4195:4;4192:12;4188:35;4185:77;4182:159;;;-1:-1:-1;4294:19:1;;;4326:5;;4182:159;4373:34;4398:8;4392:4;4373:34;:::i;:::-;4443:6;4439:1;4435:6;4431:19;4422:7;4419:32;4416:58;;;4454:18;;:::i;:::-;4492:20;;3712:806;-1:-1:-1;;;3712:806:1:o;4523:140::-;4581:5;4610:47;4651:4;4641:8;4637:19;4631:4;4610:47;:::i;4668:168::-;4741:9;;;4772;;4789:15;;;4783:22;;4769:37;4759:71;;4810:18;;:::i;4841:356::-;5043:2;5025:21;;;5062:18;;;5055:30;5121:34;5116:2;5101:18;;5094:62;5188:2;5173:18;;4841:356::o;6767:251::-;6837:6;6890:2;6878:9;6869:7;6865:23;6861:32;6858:52;;;6906:1;6903;6896:12;6858:52;6938:9;6932:16;6957:31;6982:5;6957:31;:::i;7944:306::-;8032:6;8040;8048;8101:2;8089:9;8080:7;8076:23;8072:32;8069:52;;;8117:1;8114;8107:12;8069:52;8146:9;8140:16;8130:26;;8196:2;8185:9;8181:18;8175:25;8165:35;;8240:2;8229:9;8225:18;8219:25;8209:35;;7944:306;;;;;:::o;8534:277::-;8601:6;8654:2;8642:9;8633:7;8629:23;8625:32;8622:52;;;8670:1;8667;8660:12;8622:52;8702:9;8696:16;8755:5;8748:13;8741:21;8734:5;8731:32;8721:60;;8777:1;8774;8767:12;10650:125;10715:9;;;10736:10;;;10733:36;;;10749:18;;:::i;11135:135::-;11174:3;11195:17;;;11192:43;;11215:18;;:::i;:::-;-1:-1:-1;11262:1:1;11251:13;;11135:135::o;11275:217::-;11315:1;11341;11331:132;;11385:10;11380:3;11376:20;11373:1;11366:31;11420:4;11417:1;11410:15;11448:4;11445:1;11438:15;11331:132;-1:-1:-1;11477:9:1;;11275:217::o;11497:128::-;11564:9;;;11585:11;;;11582:37;;;11599:18;;:::i;12164:127::-;12225:10;12220:3;12216:20;12213:1;12206:31;12256:4;12253:1;12246:15;12280:4;12277:1;12270:15;12296:980;12558:4;12606:3;12595:9;12591:19;12637:6;12626:9;12619:25;12663:2;12701:6;12696:2;12685:9;12681:18;12674:34;12744:3;12739:2;12728:9;12724:18;12717:31;12768:6;12803;12797:13;12834:6;12826;12819:22;12872:3;12861:9;12857:19;12850:26;;12911:2;12903:6;12899:15;12885:29;;12932:1;12942:195;12956:6;12953:1;12950:13;12942:195;;;13021:13;;-1:-1:-1;;;;;13017:39:1;13005:52;;13112:15;;;;13077:12;;;;13053:1;12971:9;12942:195;;;-1:-1:-1;;;;;;;13193:32:1;;;;13188:2;13173:18;;13166:60;-1:-1:-1;;;13257:3:1;13242:19;13235:35;13154:3;12296:980;-1:-1:-1;;;12296:980:1:o

Swarm Source

ipfs://740a7d2e33df853d8be038d8e2e3daaae61d72265f336bbb8d8391d63041f815

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.