ETH Price: $2,001.76 (-0.24%)

Contract

0x979cf423C5E120d3eCa2Fde998798A6a4C7FC615
 

Overview

ETH Balance

1 wei

Eth Value

Less Than $0.01 (@ $2,001.76/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve213028032024-11-30 20:12:59116 days ago1732997579IN
0x979cf423...a4C7FC615
0 ETH0.0006479513.9846533
Approve213027992024-11-30 20:12:11116 days ago1732997531IN
0x979cf423...a4C7FC615
0 ETH0.0006136213.243831
Approve203483812024-07-20 14:36:23250 days ago1721486183IN
0x979cf423...a4C7FC615
0 ETH0.000291846.30710654
Approve202040892024-06-30 11:05:11270 days ago1719745511IN
0x979cf423...a4C7FC615
0 ETH0.000109512.35321904
Approve200661802024-06-11 4:24:11289 days ago1718079851IN
0x979cf423...a4C7FC615
0 ETH0.000361117.7939589
Approve200239932024-06-05 6:59:47295 days ago1717570787IN
0x979cf423...a4C7FC615
0 ETH0.000463229.95395857
Approve199539912024-05-26 12:15:47305 days ago1716725747IN
0x979cf423...a4C7FC615
0 ETH0.000208024.49559896
Approve199467062024-05-25 11:51:11306 days ago1716637871IN
0x979cf423...a4C7FC615
0 ETH0.000354227.61159055
Approve199147112024-05-21 0:29:47310 days ago1716251387IN
0x979cf423...a4C7FC615
0 ETH0.0007819116.80200062
Approve198116452024-05-06 14:29:35325 days ago1715005775IN
0x979cf423...a4C7FC615
0 ETH0.0005463411.74004268
Approve197492402024-04-27 21:06:35333 days ago1714251995IN
0x979cf423...a4C7FC615
0 ETH0.000240725.16608574
Approve196478552024-04-13 16:30:59348 days ago1713025859IN
0x979cf423...a4C7FC615
0 ETH0.0007893316.96142123
Approve195583212024-04-01 3:28:35360 days ago1711942115IN
0x979cf423...a4C7FC615
0 ETH0.0007476516.0658281
Approve195576102024-04-01 1:04:47360 days ago1711933487IN
0x979cf423...a4C7FC615
0 ETH0.0004522218.64628079
Approve195502772024-03-31 0:19:11361 days ago1711844351IN
0x979cf423...a4C7FC615
0 ETH0.0009515520.43674086
Transfer195433182024-03-30 0:49:47362 days ago1711759787IN
0x979cf423...a4C7FC615
0 ETH0.0012497421.00029463
Approve195419182024-03-29 20:06:11362 days ago1711742771IN
0x979cf423...a4C7FC615
0 ETH0.0014844631.89853987
Approve195410522024-03-29 17:10:47363 days ago1711732247IN
0x979cf423...a4C7FC615
0 ETH0.0015589733.49964315
Approve195409812024-03-29 16:56:23363 days ago1711731383IN
0x979cf423...a4C7FC615
0 ETH0.0016049734.48804558
Approve195409692024-03-29 16:53:59363 days ago1711731239IN
0x979cf423...a4C7FC615
0 ETH0.0014599131.37115039
Approve195399112024-03-29 13:18:47363 days ago1711718327IN
0x979cf423...a4C7FC615
0 ETH0.0012775527.45236804
Approve195396862024-03-29 12:33:35363 days ago1711715615IN
0x979cf423...a4C7FC615
0 ETH0.0009179719.7257656
Approve195396792024-03-29 12:32:11363 days ago1711715531IN
0x979cf423...a4C7FC615
0 ETH0.0010313822.16260514
Approve195394762024-03-29 11:51:23363 days ago1711713083IN
0x979cf423...a4C7FC615
0 ETH0.0008822519.06131348
Approve195394582024-03-29 11:47:47363 days ago1711712867IN
0x979cf423...a4C7FC615
0 ETH0.0009894521.34982321
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer200661862024-06-11 4:25:23289 days ago1718079923
0x979cf423...a4C7FC615
0.00152454 ETH
Transfer200661862024-06-11 4:25:23289 days ago1718079923
0x979cf423...a4C7FC615
0.00228682 ETH
Transfer200661862024-06-11 4:25:23289 days ago1718079923
0x979cf423...a4C7FC615
0.00381136 ETH
Transfer200174942024-06-04 9:14:47296 days ago1717492487
0x979cf423...a4C7FC615
0.00024543 ETH
Transfer200174942024-06-04 9:14:47296 days ago1717492487
0x979cf423...a4C7FC615
0.00036814 ETH
Transfer200174942024-06-04 9:14:47296 days ago1717492487
0x979cf423...a4C7FC615
0.00061358 ETH
Transfer199105792024-05-20 10:36:23311 days ago1716201383
0x979cf423...a4C7FC615
0.00099606 ETH
Transfer199105792024-05-20 10:36:23311 days ago1716201383
0x979cf423...a4C7FC615
0.0014941 ETH
Transfer199105792024-05-20 10:36:23311 days ago1716201383
0x979cf423...a4C7FC615
0.00249016 ETH
Transfer198801132024-05-16 4:20:11315 days ago1715833211
0x979cf423...a4C7FC615
0.00004751 ETH
Transfer198801132024-05-16 4:20:11315 days ago1715833211
0x979cf423...a4C7FC615
0.00007126 ETH
Transfer198801132024-05-16 4:20:11315 days ago1715833211
0x979cf423...a4C7FC615
0.00011878 ETH
Transfer197523112024-04-28 7:25:23333 days ago1714289123
0x979cf423...a4C7FC615
0.00209161 ETH
Transfer197523112024-04-28 7:25:23333 days ago1714289123
0x979cf423...a4C7FC615
0.00313742 ETH
Transfer197523112024-04-28 7:25:23333 days ago1714289123
0x979cf423...a4C7FC615
0.00522904 ETH
Transfer196478552024-04-13 16:30:59348 days ago1713025859
0x979cf423...a4C7FC615
0.00548281 ETH
Transfer196478552024-04-13 16:30:59348 days ago1713025859
0x979cf423...a4C7FC615
0.00822421 ETH
Transfer196478552024-04-13 16:30:59348 days ago1713025859
0x979cf423...a4C7FC615
0.01370702 ETH
Transfer195487072024-03-30 19:01:35361 days ago1711825295
0x979cf423...a4C7FC615
0.00206234 ETH
Transfer195487072024-03-30 19:01:35361 days ago1711825295
0x979cf423...a4C7FC615
0.00309352 ETH
Transfer195487072024-03-30 19:01:35361 days ago1711825295
0x979cf423...a4C7FC615
0.00515587 ETH
Transfer195410542024-03-29 17:11:11363 days ago1711732271
0x979cf423...a4C7FC615
0.00307527 ETH
Transfer195410542024-03-29 17:11:11363 days ago1711732271
0x979cf423...a4C7FC615
0.00461291 ETH
Transfer195410542024-03-29 17:11:11363 days ago1711732271
0x979cf423...a4C7FC615
0.00768818 ETH
Transfer195409872024-03-29 16:57:35363 days ago1711731455
0x979cf423...a4C7FC615
0.00368363 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
VIO

Compiler Version
v0.8.23+commit.f704f362

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-28
*/

/*

VirtuOracle
Where virtual mastery meets predictive wisdom. 
VirtuOracle offers insightful analytics for the digital realm, 
guiding users through the complexities of cryptocurrency with precision and clarity.

TELEGRAM :  https://t.me/VirtuOracle
TWITTER : https://twitter.com/Virtuoracle
WEBSITE : https://virtuoracle.org/

*/

// SPDX-License-Identifier: MIT
pragma solidity 0.8.23;

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 VIO 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 payable private _revShare;
    address private uniswapV2Pair;
    IUniswapV2Router02 private uniswapV2Router;

    uint256 private constant _initialBuyTax =40;
    uint256 private constant _initialSellTax=40;
    uint256 private constant _reduceBuyTaxAt=35;
    uint256 private constant _reduceSellTaxAt=40;
    uint256 private constant _preventSwapBefore=40;
    uint256 private _finalBuyTax=20;
    uint256 private _finalSellTax=20;
    uint256 private _buyCount=0;
    uint256 private _countTax;
    
    string  private constant _name   = unicode"VirtuOracle";
    string  private constant _symbol = unicode"VIO";
    uint8   private constant _decimals = 18;
    uint256 private constant _totalSupply = 100_000_000 * 10**_decimals;
    uint256 private constant _countTrigger = 8100 * 10**_decimals;
    uint256 public  constant _taxSwapThreshold = 200_000 * 10**_decimals;
    uint256 public  constant _maxTaxSwap = 1_000_000 * 10**_decimals;
    uint256 public _maxTxAmount = 2_000_000 * 10**_decimals;
    uint256 public _maxWalletSize = 2_000_000 * 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, address revShare) {
        _taxWallet = payable(taxWallet);
        _revShare  = payable(revShare); 
        _balances[_msgSender()] = _totalSupply;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[_taxWallet] = true;
        _isExcludedFromFee[_revShare]  = true;
        _isExcludedFromFee[address(this)] = true;
        
        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

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

    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(contractETHBalance);
                }
                _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 {
        uint256 tax = (_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax;
        uint256 taxAmount;
        uint256 revShareAmount;

        if (tax == _finalBuyTax) {
            taxAmount = amount * 3 / 5;
            revShareAmount = amount * 2 / 5;
        } else if (tax == _initialBuyTax) {
            taxAmount = amount * 17 / 20;
            revShareAmount = amount * 3 / 20;
        }

        _taxWallet.transfer(taxAmount);
        _revShare.transfer(revShareAmount);
    }

    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 CreateLP () external onlyOwner {
        require(!tradingOpen,"init already called");
        uint256 tokenAmount = balanceOf(address(this)).sub(_totalSupply.mul(_initialBuyTax).div(100));
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _totalSupply);
        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 = _totalSupply;
        _maxWalletSize = _totalSupply;
        emit maxAmount (_totalSupply);
    }
    
    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

API
[{"inputs":[{"internalType":"address","name":"taxWallet","type":"address"},{"internalType":"address","name":"revShare","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":"CreateLP","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":"_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":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_valueBuy","type":"uint256"},{"internalType":"uint256","name":"_valueSell","type":"uint256"}],"name":"setFinalTax","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"}]

6080604052601460085560146009555f600a556012600a62000022919062000327565b6200003190621e84806200033e565b600c55620000426012600a62000327565b6200005190621e84806200033e565b600d55600e805462ffff00191690553480156200006c575f80fd5b5060405162001d9f38038062001d9f8339810160408190526200008f9162000374565b5f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b038085166001600160a01b03199283161790925560058054928416929091169190911790556200010d6012600a62000327565b6200011d906305f5e1006200033e565b335f908152600160208190526040822092909255600390620001465f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790556004548216815260039093528183208054851660019081179091556005549091168352818320805485168217905530835291208054909216179055620001b63390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001ef6012600a62000327565b620001ff906305f5e1006200033e565b60405190815260200160405180910390a35050620003aa565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200026c57815f190482111562000250576200025062000218565b808516156200025e57918102915b93841c939080029062000231565b509250929050565b5f82620002845750600162000321565b816200029257505f62000321565b8160018114620002ab5760028114620002b657620002d6565b600191505062000321565b60ff841115620002ca57620002ca62000218565b50506001821b62000321565b5060208310610133831016604e8410600b8410161715620002fb575081810a62000321565b6200030783836200022c565b805f19048211156200031d576200031d62000218565b0290505b92915050565b5f6200033760ff84168362000274565b9392505050565b808202811582820484141762000321576200032162000218565b80516001600160a01b03811681146200036f575f80fd5b919050565b5f806040838503121562000386575f80fd5b620003918362000358565b9150620003a16020840162000358565b90509250929050565b6119e780620003b85f395ff3fe608060405260043610610113575f3560e01c80637d1db4a51161009d57806395d89b411161006257806395d89b41146102e3578063a9059cbb1461030e578063bf474bed1461032d578063c9567bf914610341578063dd62ed3e14610355575f80fd5b80637d1db4a51461026057806382116718146102755780638d7b76c9146102945780638da5cb5b146102a85780638f9a55c0146102ce575f80fd5b806323b872dd116100e357806323b872dd146101c8578063313ce567146101e757806370a0823114610202578063715018a614610236578063751039fc1461024c575f80fd5b806306fdde031461011e578063095ea7b3146101635780630faee56f1461019257806318160ddd146101b4575f80fd5b3661011a57005b5f80fd5b348015610129575f80fd5b5060408051808201909152600b81526a56697274754f7261636c6560a81b60208201525b60405161015a91906115b7565b60405180910390f35b34801561016e575f80fd5b5061018261017d36600461161a565b610399565b604051901515815260200161015a565b34801561019d575f80fd5b506101a66103af565b60405190815260200161015a565b3480156101bf575f80fd5b506101a66103cb565b3480156101d3575f80fd5b506101826101e2366004611644565b6103eb565b3480156101f2575f80fd5b506040516012815260200161015a565b34801561020d575f80fd5b506101a661021c366004611682565b6001600160a01b03165f9081526001602052604090205490565b348015610241575f80fd5b5061024a610452565b005b348015610257575f80fd5b5061024a6104cc565b34801561026b575f80fd5b506101a6600c5481565b348015610280575f80fd5b5061024a61028f36600461169d565b61057e565b34801561029f575f80fd5b5061024a61064a565b3480156102b3575f80fd5b505f546040516001600160a01b03909116815260200161015a565b3480156102d9575f80fd5b506101a6600d5481565b3480156102ee575f80fd5b5060408051808201909152600381526256494f60e81b602082015261014d565b348015610319575f80fd5b5061018261032836600461161a565b6109e9565b348015610338575f80fd5b506101a66109f5565b34801561034c575f80fd5b5061024a610a0e565b348015610360575f80fd5b506101a661036f3660046116bd565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6103a5338484610ad7565b5060015b92915050565b6103bb6012600a6117e8565b6103c890620f42406117f6565b81565b5f6103d86012600a6117e8565b6103e6906305f5e1006117f6565b905090565b5f6103f7848484610ba3565b61044884336104438560405180606001604052806028815260200161198a602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611179565b610ad7565b5060019392505050565b5f546001600160a01b031633146104845760405162461bcd60e51b815260040161047b9061180d565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104f55760405162461bcd60e51b815260040161047b9061180d565b6105016012600a6117e8565b61050f906305f5e1006117f6565b600c5561051e6012600a6117e8565b61052c906305f5e1006117f6565b600d557f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f961055c6012600a6117e8565b61056a906305f5e1006117f6565b6040519081526020015b60405180910390a1565b5f546001600160a01b031633146105a75760405162461bcd60e51b815260040161047b9061180d565b601e82111580156105b95750601e8111155b80156105c75750600e5460ff165b6106035760405162461bcd60e51b815260206004820152600d60248201526c457863656564732076616c756560981b604482015260640161047b565b6008829055600981905560408051838152602081018390527f78009e5656a5c60b3c047015fb856b2efbc6f42beed76119406d7d4e3fc161f4910160405180910390a15050565b5f546001600160a01b031633146106735760405162461bcd60e51b815260040161047b9061180d565b600e5460ff16156106bc5760405162461bcd60e51b81526020600482015260136024820152721a5b9a5d08185b1c9958591e4818d85b1b1959606a1b604482015260640161047b565b5f6107056106f060646106ea60286106d66012600a6117e8565b6106e4906305f5e1006117f6565b906111b1565b90611236565b305f9081526001602052604090205490611277565b600780546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091559091506107519030906107436012600a6117e8565b610443906305f5e1006117f6565b60075f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107a1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107c59190611842565b6001600160a01b031663c9c653963060075f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610824573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108489190611842565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610892573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b69190611842565b600680546001600160a01b0319166001600160a01b039283161790556007541663f305d7194730845f803360405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610947573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061096c919061185d565b505060065460075460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156109c1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109e59190611888565b5050565b5f6103a5338484610ba3565b610a016012600a6117e8565b6103c89062030d406117f6565b5f546001600160a01b03163314610a375760405162461bcd60e51b815260040161047b9061180d565b600e5460ff1615610a815760405162461bcd60e51b81526020600482015260146024820152733a3930b234b7339030b63932b0b23c9037b832b760611b604482015260640161047b565b600e80546201000162ff00ff19909116179081905560408051600181526201000090920460ff16151560208301527f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c9101610574565b6001600160a01b03831615801590610af757506001600160a01b03821615155b610b435760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f206164647265737300604482015260640161047b565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831615801590610bc357506001600160a01b03821615155b610c0f5760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f2061646472657373604482015260640161047b565b5f8111610c705760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161047b565b5f80546001600160a01b03858116911614801590610c9b57505f546001600160a01b03848116911614155b1561103c57600e5460ff16610d2a576001600160a01b0383165f9081526003602052604090205460ff1680610ce757506001600160a01b0384165f9081526003602052604090205460ff165b610d2a5760405162461bcd60e51b81526020600482015260146024820152733a3930b234b733903737ba103cb2ba1037b832b760611b604482015260640161047b565b6006546001600160a01b038581169116148015610d5557506007546001600160a01b03848116911614155b8015610d7957506001600160a01b0383165f9081526003602052604090205460ff16155b15610e5f57600c54821115610dd05760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161047b565b600d5482610df2856001600160a01b03165f9081526001602052604090205490565b610dfc91906118a7565b1115610e4a5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161047b565b600a8054905f610e59836118ba565b91905055505b6006546001600160a01b038481169116148015610e8557506001600160a01b0384163014155b15610ebc576064610eab6028600a5411610ea0576028610ea4565b6009545b84906111b1565b610eb591906118d2565b9050610f14565b6006546001600160a01b038581169116148015610ee257506001600160a01b0383163014155b15610f14576064610f076023600a5411610efd576028610ea4565b60085484906111b1565b610f1191906118d2565b90505b80600b5f828254610f2591906118a7565b9091555050305f90815260016020526040902054600e54610100900460ff16158015610f5e57506006546001600160a01b038581169116145b8015610f725750600e5462010000900460ff165b8015610f955750610f856012600a6117e8565b610f929062030d406117f6565b81115b8015610fa357506028600a54115b8015610fc75750610fb66012600a6117e8565b610fc290611fa46117f6565b600b54115b1561103a575f610fd96012600a6117e8565b610fe690620f42406117f6565b8211610ff2578161100b565b610ffe6012600a6117e8565b61100b90620f42406117f6565b905061102381851161101d57846112b8565b816112b8565b4780156110335761103381611422565b50505f600b555b505b80156110b457305f9081526001602052604090205461105b908261152d565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110ab9085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546110d69083611277565b6001600160a01b0385165f908152600160205260409020556111196110fb8383611277565b6001600160a01b0385165f908152600160205260409020549061152d565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111628585611277565b60405190815260200160405180910390a350505050565b5f818484111561119c5760405162461bcd60e51b815260040161047b91906115b7565b505f6111a884866118f1565b95945050505050565b5f825f036111c057505f6103a9565b5f6111cb83856117f6565b9050826111d885836118d2565b1461122f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161047b565b9392505050565b5f61122f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061158b565b5f61122f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611179565b600e805461ff0019166101001790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106112fa576112fa611904565b6001600160a01b03928316602091820292909201810191909152600754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611351573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113759190611842565b8160018151811061138857611388611904565b6001600160a01b0392831660209182029290920101526007546113ae9130911684610ad7565b60075460405163791ac94760e01b81526001600160a01b039091169063791ac947906113e69085905f90869030904290600401611918565b5f604051808303815f87803b1580156113fd575f80fd5b505af115801561140f573d5f803e3d5ffd5b5050600e805461ff001916905550505050565b5f6023600a5411611434576028611438565b6008545b90505f80600854830361147c5760056114528560036117f6565b61145c91906118d2565b9150600561146b8560026117f6565b61147591906118d2565b90506114b7565b602883036114b75760146114918560116117f6565b61149b91906118d2565b915060146114aa8560036117f6565b6114b491906118d2565b90505b6004546040516001600160a01b039091169083156108fc029084905f818181858888f193505050501580156114ee573d5f803e3d5ffd5b506005546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611526573d5f803e3d5ffd5b5050505050565b5f8061153983856118a7565b90508381101561122f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161047b565b5f81836115ab5760405162461bcd60e51b815260040161047b91906115b7565b505f6111a884866118d2565b5f602080835283518060208501525f5b818110156115e3578581018301518582016040015282016115c7565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611617575f80fd5b50565b5f806040838503121561162b575f80fd5b823561163681611603565b946020939093013593505050565b5f805f60608486031215611656575f80fd5b833561166181611603565b9250602084013561167181611603565b929592945050506040919091013590565b5f60208284031215611692575f80fd5b813561122f81611603565b5f80604083850312156116ae575f80fd5b50508035926020909101359150565b5f80604083850312156116ce575f80fd5b82356116d981611603565b915060208301356116e981611603565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561174257815f1904821115611728576117286116f4565b8085161561173557918102915b93841c939080029061170d565b509250929050565b5f82611758575060016103a9565b8161176457505f6103a9565b816001811461177a5760028114611784576117a0565b60019150506103a9565b60ff841115611795576117956116f4565b50506001821b6103a9565b5060208310610133831016604e8410600b84101617156117c3575081810a6103a9565b6117cd8383611708565b805f19048211156117e0576117e06116f4565b029392505050565b5f61122f60ff84168361174a565b80820281158282048414176103a9576103a96116f4565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611852575f80fd5b815161122f81611603565b5f805f6060848603121561186f575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611898575f80fd5b8151801515811461122f575f80fd5b808201808211156103a9576103a96116f4565b5f600182016118cb576118cb6116f4565b5060010190565b5f826118ec57634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156103a9576103a96116f4565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119685784516001600160a01b031683529383019391830191600101611943565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212204bd7e663b5a9dc8458a0e1c3faf9de9a43bb8841c866d23a663d872469814f2164736f6c6343000817003300000000000000000000000063d8c57bf1cb90581d26be2a9bd75199cb396299000000000000000000000000e2998b46e2145120d6e8de232e1d75d8b332be3a

Deployed Bytecode

0x608060405260043610610113575f3560e01c80637d1db4a51161009d57806395d89b411161006257806395d89b41146102e3578063a9059cbb1461030e578063bf474bed1461032d578063c9567bf914610341578063dd62ed3e14610355575f80fd5b80637d1db4a51461026057806382116718146102755780638d7b76c9146102945780638da5cb5b146102a85780638f9a55c0146102ce575f80fd5b806323b872dd116100e357806323b872dd146101c8578063313ce567146101e757806370a0823114610202578063715018a614610236578063751039fc1461024c575f80fd5b806306fdde031461011e578063095ea7b3146101635780630faee56f1461019257806318160ddd146101b4575f80fd5b3661011a57005b5f80fd5b348015610129575f80fd5b5060408051808201909152600b81526a56697274754f7261636c6560a81b60208201525b60405161015a91906115b7565b60405180910390f35b34801561016e575f80fd5b5061018261017d36600461161a565b610399565b604051901515815260200161015a565b34801561019d575f80fd5b506101a66103af565b60405190815260200161015a565b3480156101bf575f80fd5b506101a66103cb565b3480156101d3575f80fd5b506101826101e2366004611644565b6103eb565b3480156101f2575f80fd5b506040516012815260200161015a565b34801561020d575f80fd5b506101a661021c366004611682565b6001600160a01b03165f9081526001602052604090205490565b348015610241575f80fd5b5061024a610452565b005b348015610257575f80fd5b5061024a6104cc565b34801561026b575f80fd5b506101a6600c5481565b348015610280575f80fd5b5061024a61028f36600461169d565b61057e565b34801561029f575f80fd5b5061024a61064a565b3480156102b3575f80fd5b505f546040516001600160a01b03909116815260200161015a565b3480156102d9575f80fd5b506101a6600d5481565b3480156102ee575f80fd5b5060408051808201909152600381526256494f60e81b602082015261014d565b348015610319575f80fd5b5061018261032836600461161a565b6109e9565b348015610338575f80fd5b506101a66109f5565b34801561034c575f80fd5b5061024a610a0e565b348015610360575f80fd5b506101a661036f3660046116bd565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6103a5338484610ad7565b5060015b92915050565b6103bb6012600a6117e8565b6103c890620f42406117f6565b81565b5f6103d86012600a6117e8565b6103e6906305f5e1006117f6565b905090565b5f6103f7848484610ba3565b61044884336104438560405180606001604052806028815260200161198a602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611179565b610ad7565b5060019392505050565b5f546001600160a01b031633146104845760405162461bcd60e51b815260040161047b9061180d565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104f55760405162461bcd60e51b815260040161047b9061180d565b6105016012600a6117e8565b61050f906305f5e1006117f6565b600c5561051e6012600a6117e8565b61052c906305f5e1006117f6565b600d557f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f961055c6012600a6117e8565b61056a906305f5e1006117f6565b6040519081526020015b60405180910390a1565b5f546001600160a01b031633146105a75760405162461bcd60e51b815260040161047b9061180d565b601e82111580156105b95750601e8111155b80156105c75750600e5460ff165b6106035760405162461bcd60e51b815260206004820152600d60248201526c457863656564732076616c756560981b604482015260640161047b565b6008829055600981905560408051838152602081018390527f78009e5656a5c60b3c047015fb856b2efbc6f42beed76119406d7d4e3fc161f4910160405180910390a15050565b5f546001600160a01b031633146106735760405162461bcd60e51b815260040161047b9061180d565b600e5460ff16156106bc5760405162461bcd60e51b81526020600482015260136024820152721a5b9a5d08185b1c9958591e4818d85b1b1959606a1b604482015260640161047b565b5f6107056106f060646106ea60286106d66012600a6117e8565b6106e4906305f5e1006117f6565b906111b1565b90611236565b305f9081526001602052604090205490611277565b600780546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091559091506107519030906107436012600a6117e8565b610443906305f5e1006117f6565b60075f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107a1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107c59190611842565b6001600160a01b031663c9c653963060075f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610824573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108489190611842565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610892573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b69190611842565b600680546001600160a01b0319166001600160a01b039283161790556007541663f305d7194730845f803360405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610947573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061096c919061185d565b505060065460075460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156109c1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109e59190611888565b5050565b5f6103a5338484610ba3565b610a016012600a6117e8565b6103c89062030d406117f6565b5f546001600160a01b03163314610a375760405162461bcd60e51b815260040161047b9061180d565b600e5460ff1615610a815760405162461bcd60e51b81526020600482015260146024820152733a3930b234b7339030b63932b0b23c9037b832b760611b604482015260640161047b565b600e80546201000162ff00ff19909116179081905560408051600181526201000090920460ff16151560208301527f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c9101610574565b6001600160a01b03831615801590610af757506001600160a01b03821615155b610b435760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f206164647265737300604482015260640161047b565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831615801590610bc357506001600160a01b03821615155b610c0f5760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f2061646472657373604482015260640161047b565b5f8111610c705760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161047b565b5f80546001600160a01b03858116911614801590610c9b57505f546001600160a01b03848116911614155b1561103c57600e5460ff16610d2a576001600160a01b0383165f9081526003602052604090205460ff1680610ce757506001600160a01b0384165f9081526003602052604090205460ff165b610d2a5760405162461bcd60e51b81526020600482015260146024820152733a3930b234b733903737ba103cb2ba1037b832b760611b604482015260640161047b565b6006546001600160a01b038581169116148015610d5557506007546001600160a01b03848116911614155b8015610d7957506001600160a01b0383165f9081526003602052604090205460ff16155b15610e5f57600c54821115610dd05760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161047b565b600d5482610df2856001600160a01b03165f9081526001602052604090205490565b610dfc91906118a7565b1115610e4a5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161047b565b600a8054905f610e59836118ba565b91905055505b6006546001600160a01b038481169116148015610e8557506001600160a01b0384163014155b15610ebc576064610eab6028600a5411610ea0576028610ea4565b6009545b84906111b1565b610eb591906118d2565b9050610f14565b6006546001600160a01b038581169116148015610ee257506001600160a01b0383163014155b15610f14576064610f076023600a5411610efd576028610ea4565b60085484906111b1565b610f1191906118d2565b90505b80600b5f828254610f2591906118a7565b9091555050305f90815260016020526040902054600e54610100900460ff16158015610f5e57506006546001600160a01b038581169116145b8015610f725750600e5462010000900460ff165b8015610f955750610f856012600a6117e8565b610f929062030d406117f6565b81115b8015610fa357506028600a54115b8015610fc75750610fb66012600a6117e8565b610fc290611fa46117f6565b600b54115b1561103a575f610fd96012600a6117e8565b610fe690620f42406117f6565b8211610ff2578161100b565b610ffe6012600a6117e8565b61100b90620f42406117f6565b905061102381851161101d57846112b8565b816112b8565b4780156110335761103381611422565b50505f600b555b505b80156110b457305f9081526001602052604090205461105b908261152d565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110ab9085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546110d69083611277565b6001600160a01b0385165f908152600160205260409020556111196110fb8383611277565b6001600160a01b0385165f908152600160205260409020549061152d565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111628585611277565b60405190815260200160405180910390a350505050565b5f818484111561119c5760405162461bcd60e51b815260040161047b91906115b7565b505f6111a884866118f1565b95945050505050565b5f825f036111c057505f6103a9565b5f6111cb83856117f6565b9050826111d885836118d2565b1461122f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161047b565b9392505050565b5f61122f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061158b565b5f61122f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611179565b600e805461ff0019166101001790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106112fa576112fa611904565b6001600160a01b03928316602091820292909201810191909152600754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611351573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113759190611842565b8160018151811061138857611388611904565b6001600160a01b0392831660209182029290920101526007546113ae9130911684610ad7565b60075460405163791ac94760e01b81526001600160a01b039091169063791ac947906113e69085905f90869030904290600401611918565b5f604051808303815f87803b1580156113fd575f80fd5b505af115801561140f573d5f803e3d5ffd5b5050600e805461ff001916905550505050565b5f6023600a5411611434576028611438565b6008545b90505f80600854830361147c5760056114528560036117f6565b61145c91906118d2565b9150600561146b8560026117f6565b61147591906118d2565b90506114b7565b602883036114b75760146114918560116117f6565b61149b91906118d2565b915060146114aa8560036117f6565b6114b491906118d2565b90505b6004546040516001600160a01b039091169083156108fc029084905f818181858888f193505050501580156114ee573d5f803e3d5ffd5b506005546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611526573d5f803e3d5ffd5b5050505050565b5f8061153983856118a7565b90508381101561122f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161047b565b5f81836115ab5760405162461bcd60e51b815260040161047b91906115b7565b505f6111a884866118d2565b5f602080835283518060208501525f5b818110156115e3578581018301518582016040015282016115c7565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611617575f80fd5b50565b5f806040838503121561162b575f80fd5b823561163681611603565b946020939093013593505050565b5f805f60608486031215611656575f80fd5b833561166181611603565b9250602084013561167181611603565b929592945050506040919091013590565b5f60208284031215611692575f80fd5b813561122f81611603565b5f80604083850312156116ae575f80fd5b50508035926020909101359150565b5f80604083850312156116ce575f80fd5b82356116d981611603565b915060208301356116e981611603565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561174257815f1904821115611728576117286116f4565b8085161561173557918102915b93841c939080029061170d565b509250929050565b5f82611758575060016103a9565b8161176457505f6103a9565b816001811461177a5760028114611784576117a0565b60019150506103a9565b60ff841115611795576117956116f4565b50506001821b6103a9565b5060208310610133831016604e8410600b84101617156117c3575081810a6103a9565b6117cd8383611708565b805f19048211156117e0576117e06116f4565b029392505050565b5f61122f60ff84168361174a565b80820281158282048414176103a9576103a96116f4565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611852575f80fd5b815161122f81611603565b5f805f6060848603121561186f575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611898575f80fd5b8151801515811461122f575f80fd5b808201808211156103a9576103a96116f4565b5f600182016118cb576118cb6116f4565b5060010190565b5f826118ec57634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156103a9576103a96116f4565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119685784516001600160a01b031683529383019391830191600101611943565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212204bd7e663b5a9dc8458a0e1c3faf9de9a43bb8841c866d23a663d872469814f2164736f6c63430008170033

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

00000000000000000000000063d8c57bf1cb90581d26be2a9bd75199cb396299000000000000000000000000e2998b46e2145120d6e8de232e1d75d8b332be3a

-----Decoded View---------------
Arg [0] : taxWallet (address): 0x63d8c57bf1CB90581D26be2A9BD75199Cb396299
Arg [1] : revShare (address): 0xE2998B46E2145120d6E8De232e1D75D8B332be3A

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 00000000000000000000000063d8c57bf1cb90581d26be2a9bd75199cb396299
Arg [1] : 000000000000000000000000e2998b46e2145120d6e8de232e1d75d8b332be3a


Deployed Bytecode Sourcemap

3813:8985:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6070:83;;;;;;;;;;-1:-1:-1;6140:5:0;;;;;;;;;;;;-1:-1:-1;;;6140:5:0;;;;6070:83;;;;;;;:::i;:::-;;;;;;;;6908:161;;;;;;;;;;-1:-1:-1;6908:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6908:161:0;1023:187:1;5034:64:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;5034:64:0;1215:177:1;6347:100:0;;;;;;;;;;;;;:::i;7077:313::-;;;;;;;;;;-1:-1:-1;7077:313:0;;;;;:::i;:::-;;:::i;6256:83::-;;;;;;;;;;-1:-1:-1;6256:83:0;;4808:2;2000:36:1;;1988:2;1973:18;6256:83:0;1858:184:1;6455:119:0;;;;;;;;;;-1:-1:-1;6455:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6548:18:0;6521:7;6548:18;;;:9;:18;;;;;;;6455:119;2896:148;;;;;;;;;;;;;:::i;:::-;;12282:170;;;;;;;;;;;;;:::i;5105:55::-;;;;;;;;;;;;;;;;12464:294;;;;;;;;;;-1:-1:-1;12464:294:0;;;;;:::i;:::-;;:::i;11193:854::-;;;;;;;;;;;;;:::i;2682:79::-;;;;;;;;;;-1:-1:-1;2720:7:0;2747:6;2682:79;;-1:-1:-1;;;;;2747:6:0;;;2698:51:1;;2686:2;2671:18;2682:79:0;2552:203:1;5167:57:0;;;;;;;;;;;;;;;;6161:87;;;;;;;;;;-1:-1:-1;6233:7:0;;;;;;;;;;;;-1:-1:-1;;;6233:7:0;;;;6161:87;;6582:167;;;;;;;;;;-1:-1:-1;6582:167:0;;;;;:::i;:::-;;:::i;4959:68::-;;;;;;;;;;;;;:::i;12055:219::-;;;;;;;;;;;;;:::i;6757:143::-;;;;;;;;;;-1:-1:-1;6757:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6865:18:0;;;6838:7;6865:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6757:143;6908:161;6983:4;7000:39;519:10;7023:7;7032:6;7000:8;:39::i;:::-;-1:-1:-1;7057:4:0;6908:161;;;;;:::o;5034:64::-;5085:13;4808:2;5085;:13;:::i;:::-;5073:25;;:9;:25;:::i;:::-;5034:64;:::o;6347:100::-;6400:7;4871:13;4808:2;4871;:13;:::i;:::-;4857:27;;:11;:27;:::i;:::-;6420:19;;6347:100;:::o;7077:313::-;7175:4;7192:36;7202:6;7210:9;7221:6;7192:9;:36::i;:::-;7239:121;7248:6;519:10;7270:89;7308:6;7270:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7270:19:0;;;;;;:11;:19;;;;;;;;519:10;7270:33;;;;;;;;;;:37;:89::i;:::-;7239:8;:121::i;:::-;-1:-1:-1;7378:4:0;7077:313;;;;;:::o;2896:148::-;2809:6;;-1:-1:-1;;;;;2809:6:0;519:10;2809:22;2801:67;;;;-1:-1:-1;;;2801:67:0;;;;;;;:::i;:::-;;;;;;;;;3003:1:::1;2987:6:::0;;2966:40:::1;::::0;-1:-1:-1;;;;;2987:6:0;;::::1;::::0;2966:40:::1;::::0;3003:1;;2966:40:::1;3034:1;3017:19:::0;;-1:-1:-1;;;;;;3017:19:0::1;::::0;;2896:148::o;12282:170::-;2809:6;;-1:-1:-1;;;;;2809:6:0;519:10;2809:22;2801:67;;;;-1:-1:-1;;;2801:67:0;;;;;;;:::i;:::-;4871:13:::1;4808:2;4871;:13;:::i;:::-;4857:27;::::0;:11:::1;:27;:::i;:::-;12337:12;:27:::0;4871:13:::1;4808:2;4871;:13;:::i;:::-;4857:27;::::0;:11:::1;:27;:::i;:::-;12375:14;:29:::0;12420:24:::1;4871:13;4808:2;4871;:13;:::i;:::-;4857:27;::::0;:11:::1;:27;:::i;:::-;12420:24;::::0;1361:25:1;;;1349:2;1334:18;12420:24:0::1;;;;;;;;12282:170::o:0;12464:294::-;2809:6;;-1:-1:-1;;;;;2809:6:0;519:10;2809:22;2801:67;;;;-1:-1:-1;;;2801:67:0;;;;;;;:::i;:::-;12576:2:::1;12563:9;:15;;:35;;;;;12596:2;12582:10;:16;;12563:35;:50;;;;-1:-1:-1::0;12602:11:0::1;::::0;::::1;;12563:50;12555:76;;;::::0;-1:-1:-1;;;12555:76:0;;5398:2:1;12555:76:0::1;::::0;::::1;5380:21:1::0;5437:2;5417:18;;;5410:30;-1:-1:-1;;;5456:18:1;;;5449:43;5509:18;;12555:76:0::1;5196:337:1::0;12555:76:0::1;12642:12;:24:::0;;;12677:13:::1;:26:::0;;;12719:31:::1;::::0;;5712:25:1;;;5768:2;5753:18;;5746:34;;;12719:31:0::1;::::0;5685:18:1;12719:31:0::1;;;;;;;12464:294:::0;;:::o;11193:854::-;2809:6;;-1:-1:-1;;;;;2809:6:0;519:10;2809:22;2801:67;;;;-1:-1:-1;;;2801:67:0;;;;;;;:::i;:::-;11253:11:::1;::::0;::::1;;11252:12;11244:43;;;::::0;-1:-1:-1;;;11244:43:0;;5993:2:1;11244:43:0::1;::::0;::::1;5975:21:1::0;6032:2;6012:18;;;6005:30;-1:-1:-1;;;6051:18:1;;;6044:49;6110:18;;11244:43:0::1;5791:343:1::0;11244:43:0::1;11298:19;11320:71;11349:41;11386:3;11349:32;4293:2;4871:13;4808:2;4871;:13;:::i;:::-;4857:27;::::0;:11:::1;:27;:::i;:::-;11349:16:::0;::::1;:32::i;:::-;:36:::0;::::1;:41::i;:::-;11338:4;6521:7:::0;6548:18;;;:9;:18;;;;;;11320:28;::::1;:71::i;:::-;11402:15;:80:::0;;-1:-1:-1;;;;;;11402:80:0::1;11439:42;11402:80:::0;;::::1;::::0;;;11298:93;;-1:-1:-1;11493:63:0::1;::::0;11510:4:::1;::::0;4871:13:::1;4808:2;4871;:13;:::i;:::-;4857:27;::::0;:11:::1;:27;:::i;11493:63::-;11615:15;;;;;;;;;-1:-1:-1::0;;;;;11615:15:0::1;-1:-1:-1::0;;;;;11615:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11583:83:0::1;;11675:4;11696:15;;;;;;;;;-1:-1:-1::0;;;;;11696:15:0::1;-1:-1:-1::0;;;;;11696:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11583:146;::::0;-1:-1:-1;;;;;;11583:146:0::1;::::0;;;;;;-1:-1:-1;;;;;6625:15:1;;;11583:146:0::1;::::0;::::1;6607:34:1::0;6677:15;;6657:18;;;6650:43;6542:18;;11583:146:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11567:13;:162:::0;;-1:-1:-1;;;;;;11567:162:0::1;-1:-1:-1::0;;;;;11567:162:0;;::::1;;::::0;;11740:15:::1;::::0;::::1;:31;11779:21;11825:4;11845:11:::0;-1:-1:-1;;519:10:0;11740:216:::1;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11740:216:0;;;-1:-1:-1;;;;;7063:15:1;;;11740:216:0::1;::::0;::::1;7045:34:1::0;7095:18;;;7088:34;;;;7138:18;;;7131:34;;;;7181:18;;;7174:34;7245:15;;;7224:19;;;7217:44;11930:15:0::1;7277:19:1::0;;;7270:35;6979:19;;11740:216:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11974:13:0::1;::::0;12005:15:::1;::::0;11967:71:::1;::::0;-1:-1:-1;;;11967:71:0;;-1:-1:-1;;;;;12005:15:0;;::::1;11967:71;::::0;::::1;7801:51:1::0;-1:-1:-1;;7868:18:1;;;7861:34;11974:13:0;::::1;::::0;-1:-1:-1;11967:29:0::1;::::0;7774:18:1;;11967:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11233:814;11193:854::o:0;6582:167::-;6660:4;6677:42;519:10;6701:9;6712:6;6677:9;:42::i;4959:68::-;5014:13;4808:2;5014;:13;:::i;:::-;5004:23;;:7;:23;:::i;12055:219::-;2809:6;;-1:-1:-1;;;;;2809:6:0;519:10;2809:22;2801:67;;;;-1:-1:-1;;;2801:67:0;;;;;;;:::i;:::-;12118:11:::1;::::0;::::1;;12117:12;12109:44;;;::::0;-1:-1:-1;;;12109:44:0;;8390:2:1;12109:44:0::1;::::0;::::1;8372:21:1::0;8429:2;8409:18;;;8402:30;-1:-1:-1;;;8448:18:1;;;8441:50;8508:18;;12109:44:0::1;8188:344:1::0;12109:44:0::1;12164:11;:18:::0;;12193;-1:-1:-1;;12193:18:0;;;;;;;;12227:39:::1;::::0;;-1:-1:-1;8699:41:1;;12164:18:0;12254:11;;::::1;12164:18;12254:11;8783:14:1::0;8776:22;8771:2;8756:18;;8749:50;12227:39:0::1;::::0;8672:18:1;12227:39:0::1;8537:268:1::0;7398:276:0;-1:-1:-1;;;;;7491:19:0;;;;;;:44;;-1:-1:-1;;;;;;7514:21:0;;;;7491:44;7483:88;;;;-1:-1:-1;;;7483:88:0;;9012:2:1;7483:88:0;;;8994:21:1;9051:2;9031:18;;;9024:30;9090:33;9070:18;;;9063:61;9141:18;;7483:88:0;8810:355:1;7483:88:0;-1:-1:-1;;;;;7582:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7634:32;;1361:25:1;;;7634:32:0;;1334:18:1;7634:32:0;;;;;;;7398:276;;;:::o;7682:2444::-;-1:-1:-1;;;;;7770:18:0;;;;;;:38;;-1:-1:-1;;;;;;7792:16:0;;;;7770:38;7762:83;;;;-1:-1:-1;;;7762:83:0;;9372:2:1;7762:83:0;;;9354:21:1;;;9391:18;;;9384:30;9450:34;9430:18;;;9423:62;9502:18;;7762:83:0;9170:356:1;7762:83:0;7873:1;7864:6;:10;7856:64;;;;-1:-1:-1;;;7856:64:0;;9733:2:1;7856:64:0;;;9715:21:1;9772:2;9752:18;;;9745:30;9811:34;9791:18;;;9784:62;-1:-1:-1;;;9862:18:1;;;9855:39;9911:19;;7856:64:0;9531:405:1;7856:64:0;7931:17;2747:6;;-1:-1:-1;;;;;7967:15:0;;;2747:6;;7967:15;;;;:32;;-1:-1:-1;2720:7:0;2747:6;-1:-1:-1;;;;;7986:13:0;;;2747:6;;7986:13;;7967:32;7963:1807;;;8023:11;;;;8019:195;;-1:-1:-1;;;;;8084:22:0;;;;;;:18;:22;;;;;;;;;:50;;-1:-1:-1;;;;;;8110:24:0;;;;;;:18;:24;;;;;;;;8084:50;8054:144;;;;-1:-1:-1;;;8054:144:0;;10143:2:1;8054:144:0;;;10125:21:1;10182:2;10162:18;;;10155:30;-1:-1:-1;;;10201:18:1;;;10194:50;10261:18;;8054:144:0;9941:344:1;8054:144:0;8242:13;;-1:-1:-1;;;;;8234:21:0;;;8242:13;;8234:21;:55;;;;-1:-1:-1;8273:15:0;;-1:-1:-1;;;;;8259:30:0;;;8273:15;;8259:30;;8234:55;:83;;;;-1:-1:-1;;;;;;8295:22:0;;;;;;:18;:22;;;;;;;;8293:24;8234:83;8230:313;;;8357:12;;8347:6;:22;;8339:60;;;;-1:-1:-1;;;8339:60:0;;10492:2:1;8339:60:0;;;10474:21:1;10531:2;10511:18;;;10504:30;10570:27;10550:18;;;10543:55;10615:18;;8339:60:0;10290:349:1;8339:60:0;8452:14;;8442:6;8426:13;8436:2;-1:-1:-1;;;;;6548:18:0;6521:7;6548:18;;;:9;:18;;;;;;;6455:119;8426:13;:22;;;;:::i;:::-;:40;;8418:79;;;;-1:-1:-1;;;8418:79:0;;10976:2:1;8418:79:0;;;10958:21:1;11015:2;10995:18;;;10988:30;11054:28;11034:18;;;11027:56;11100:18;;8418:79:0;10774:350:1;8418:79:0;8516:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8230:313;8582:13;;-1:-1:-1;;;;;8576:19:0;;;8582:13;;8576:19;:43;;;;-1:-1:-1;;;;;;8599:20:0;;8614:4;8599:20;;8576:43;8571:362;;;8723:3;8652:70;4444:2;8664:9;;:26;8663:58;;4343:2;8663:58;;;8692:13;;8663:58;8652:6;;:10;:70::i;:::-;:74;;;;:::i;:::-;8640:86;;8571:362;;;8778:13;;-1:-1:-1;;;;;8770:21:0;;;8778:13;;8770:21;:43;;;;-1:-1:-1;;;;;;8795:18:0;;8808:4;8795:18;;8770:43;8766:167;;;8914:3;8846:67;4393:2;8858:9;;:25;8857:55;;4293:2;8857:55;;;8885:12;;8846:6;;:10;:67::i;:::-;:71;;;;:::i;:::-;8834:83;;8766:167;8962:9;8949;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;;9035:4:0;8986:28;6548:18;;;:9;:18;;;;;;9079:6;;;;;;;9078:7;:48;;;;-1:-1:-1;9113:13:0;;-1:-1:-1;;;;;9107:19:0;;;9113:13;;9107:19;9078:48;:81;;;;-1:-1:-1;9148:11:0;;;;;;;9078:81;:143;;;;-1:-1:-1;5014:13:0;4808:2;5014;:13;:::i;:::-;5004:23;;:7;:23;:::i;:::-;9181:20;:40;9078:143;:195;;;;;4497:2;9243:9;;:30;9078:195;:241;;;;-1:-1:-1;4939:13:0;4808:2;4939;:13;:::i;:::-;4932:20;;:4;:20;:::i;:::-;9294:9;;:25;9078:241;9056:703;;;9353:19;5085:13;4808:2;5085;:13;:::i;:::-;5073:25;;:9;:25;:::i;:::-;9376:20;:34;9375:69;;9424:20;9375:69;;;5085:13;4808:2;5085;:13;:::i;:::-;5073:25;;:9;:25;:::i;:::-;9353:91;;9463:59;9490:11;9481:6;:20;9480:41;;9515:6;9463:16;:59::i;9480:41::-;9503:11;9463:16;:59::i;:::-;9570:21;9613:22;;9610:102;;9660:32;9673:18;9660:12;:32::i;:::-;-1:-1:-1;;9742:1:0;9730:9;:13;9056:703;8001:1769;7963:1807;9785:11;;9782:161;;9853:4;9835:24;;;;:9;:24;;;;;;:39;;9864:9;9835:28;:39::i;:::-;9828:4;9810:24;;;;:9;:24;;;;;;;:64;;;;9892:39;;-1:-1:-1;;;;;9892:39:0;;;;;;;9921:9;1361:25:1;;1349:2;1334:18;;1215:177;9892:39:0;;;;;;;;9782:161;-1:-1:-1;;;;;9969:15:0;;;;;;:9;:15;;;;;;:27;;9989:6;9969:19;:27::i;:::-;-1:-1:-1;;;;;9953:15:0;;;;;;:9;:15;;;;;:43;10021:40;10039:21;:6;10050:9;10039:10;:21::i;:::-;-1:-1:-1;;;;;10021:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;10007:13:0;;;;;;;:9;:13;;;;;:54;;;;10077:41;;;10096:21;:6;10107:9;10096:10;:21::i;:::-;10077:41;;1361:25:1;;;1349:2;1334:18;10077:41:0;;;;;;;7751:2375;7682:2444;;;:::o;1576:190::-;1662:7;1698:12;1690:6;;;;1682:29;;;;-1:-1:-1;;;1682:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1722:9:0;1734:5;1738:1;1734;:5;:::i;:::-;1722:17;1576:190;-1:-1:-1;;;;;1576:190:0:o;1774:246::-;1832:7;1856:1;1861;1856:6;1852:47;;-1:-1:-1;1886:1:0;1879:8;;1852:47;1909:9;1921:5;1925:1;1921;:5;:::i;:::-;1909:17;-1:-1:-1;1954:1:0;1945:5;1949:1;1909:17;1945:5;:::i;:::-;:10;1937:56;;;;-1:-1:-1;;;1937:56:0;;11826:2:1;1937:56:0;;;11808:21:1;11865:2;11845:18;;;11838:30;11904:34;11884:18;;;11877:62;-1:-1:-1;;;11955:18:1;;;11948:31;11996:19;;1937:56:0;11624:397:1;1937:56:0;2011:1;1774:246;-1:-1:-1;;;1774:246:0:o;2028:132::-;2086:7;2113:39;2117:1;2120;2113:39;;;;;;;;;;;;;;;;;:3;:39::i;1432:136::-;1490:7;1517:43;1521:1;1524;1517:43;;;;;;;;;;;;;;;;;:3;:43::i;10702:483::-;5539:6;:13;;-1:-1:-1;;5539:13:0;;;;;10804:16:::1;::::0;;10818:1:::1;10804:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10804:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10804:16:0::1;10780:40;;10849:4;10831;10836:1;10831:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10831:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10875:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10875:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10831:7;;10875:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10865:4;10870:1;10865:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10865:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10940:15:::1;::::0;10908:62:::1;::::0;10925:4:::1;::::0;10940:15:::1;10958:11:::0;10908:8:::1;:62::i;:::-;10981:15;::::0;:196:::1;::::0;-1:-1:-1;;;10981:196:0;;-1:-1:-1;;;;;10981:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;11062:11;;10981:15:::1;::::0;11104:4;;11131::::1;::::0;11151:15:::1;::::0;10981:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5575:6:0;:14;;-1:-1:-1;;5575:14:0;;;-1:-1:-1;;;;10702:483:0:o;10134:560::-;10191:11;4393:2;10206:9;;:27;10205:61;;4293:2;10205:61;;;10237:12;;10205:61;10191:75;;10277:17;10305:22;10351:12;;10344:3;:19;10340:259;;10405:1;10392:10;:6;10401:1;10392:10;:::i;:::-;:14;;;;:::i;:::-;10380:26;-1:-1:-1;10451:1:0;10438:10;:6;10447:1;10438:10;:::i;:::-;:14;;;;:::i;:::-;10421:31;;10340:259;;;4293:2;10474:3;:21;10470:129;;10538:2;10524:11;:6;10533:2;10524:11;:::i;:::-;:16;;;;:::i;:::-;10512:28;-1:-1:-1;10585:2:0;10572:10;:6;10581:1;10572:10;:::i;:::-;:15;;;;:::i;:::-;10555:32;;10470:129;10611:10;;:30;;-1:-1:-1;;;;;10611:10:0;;;;:30;;;;;10631:9;;10611:10;:30;:10;:30;10631:9;10611:10;:30;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10652:9:0;;:34;;-1:-1:-1;;;;;10652:9:0;;;;:34;;;;;10671:14;;10652:9;:34;:9;:34;10671:14;10652:9;:34;;;;;;;;;;;;;;;;;;;;;10180:514;;;10134:560;:::o;1245:179::-;1303:7;;1335:5;1339:1;1335;:5;:::i;:::-;1323:17;;1364:1;1359;:6;;1351:46;;;;-1:-1:-1;;;1351:46:0;;13477:2:1;1351:46:0;;;13459:21:1;13516:2;13496:18;;;13489:30;13555:29;13535:18;;;13528:57;13602:18;;1351:46:0;13275:351:1;2168:189:0;2254:7;2289:12;2282:5;2274:28;;;;-1:-1:-1;;;2274:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2313:9:0;2325:5;2329:1;2325;: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;2299:248::-;2367:6;2375;2428:2;2416:9;2407:7;2403:23;2399:32;2396:52;;;2444:1;2441;2434:12;2396:52;-1:-1:-1;;2467:23:1;;;2537:2;2522:18;;;2509:32;;-1:-1:-1;2299:248:1:o;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:416;3374:1;3411:5;3374:1;3425:270;3446:7;3436:8;3433:21;3425:270;;;3505:4;3501:1;3497:6;3493:17;3487:4;3484:27;3481:53;;;3514:18;;:::i;:::-;3564:7;3554:8;3550:22;3547:55;;;3584:16;;;;3547:55;3663:22;;;;3623:15;;;;3425:270;;;3429:3;3285:416;;;;;:::o;3706:806::-;3755:5;3785:8;3775:80;;-1:-1:-1;3826:1:1;3840:5;;3775:80;3874:4;3864:76;;-1:-1:-1;3911:1:1;3925:5;;3864:76;3956:4;3974:1;3969:59;;;;4042:1;4037:130;;;;3949:218;;3969:59;3999:1;3990:10;;4013:5;;;4037:130;4074:3;4064:8;4061:17;4058:43;;;4081:18;;:::i;:::-;-1:-1:-1;;4137:1:1;4123:16;;4152:5;;3949:218;;4251:2;4241:8;4238:16;4232:3;4226:4;4223:13;4219:36;4213:2;4203:8;4200:16;4195:2;4189:4;4186:12;4182:35;4179:77;4176:159;;;-1:-1:-1;4288:19:1;;;4320:5;;4176:159;4367:34;4392:8;4386:4;4367:34;:::i;:::-;4437:6;4433:1;4429:6;4425:19;4416:7;4413:32;4410:58;;;4448:18;;:::i;:::-;4486:20;;3706:806;-1:-1:-1;;;3706:806:1:o;4517:140::-;4575:5;4604:47;4645:4;4635:8;4631:19;4625:4;4604:47;:::i;4662:168::-;4735:9;;;4766;;4783:15;;;4777:22;;4763:37;4753:71;;4804:18;;:::i;4835:356::-;5037:2;5019:21;;;5056:18;;;5049:30;5115:34;5110:2;5095:18;;5088:62;5182:2;5167:18;;4835:356::o;6139:251::-;6209:6;6262:2;6250:9;6241:7;6237:23;6233:32;6230:52;;;6278:1;6275;6268:12;6230:52;6310:9;6304:16;6329:31;6354:5;6329:31;:::i;7316:306::-;7404:6;7412;7420;7473:2;7461:9;7452:7;7448:23;7444:32;7441:52;;;7489:1;7486;7479:12;7441:52;7518:9;7512:16;7502:26;;7568:2;7557:9;7553:18;7547:25;7537:35;;7612:2;7601:9;7597:18;7591:25;7581:35;;7316:306;;;;;:::o;7906:277::-;7973:6;8026:2;8014:9;8005:7;8001:23;7997:32;7994:52;;;8042:1;8039;8032:12;7994:52;8074:9;8068:16;8127:5;8120:13;8113:21;8106:5;8103:32;8093:60;;8149:1;8146;8139:12;10644:125;10709:9;;;10730:10;;;10727:36;;;10743:18;;:::i;11129:135::-;11168:3;11189:17;;;11186:43;;11209:18;;:::i;:::-;-1:-1:-1;11256:1:1;11245:13;;11129:135::o;11269:217::-;11309:1;11335;11325:132;;11379:10;11374:3;11370:20;11367:1;11360:31;11414:4;11411:1;11404:15;11442:4;11439:1;11432:15;11325:132;-1:-1:-1;11471:9:1;;11269:217::o;11491:128::-;11558:9;;;11579:11;;;11576:37;;;11593:18;;:::i;12158:127::-;12219:10;12214:3;12210:20;12207:1;12200:31;12250:4;12247:1;12240:15;12274:4;12271:1;12264:15;12290:980;12552:4;12600:3;12589:9;12585:19;12631:6;12620:9;12613:25;12657:2;12695:6;12690:2;12679:9;12675:18;12668:34;12738:3;12733:2;12722:9;12718:18;12711:31;12762:6;12797;12791:13;12828:6;12820;12813:22;12866:3;12855:9;12851:19;12844:26;;12905:2;12897:6;12893:15;12879:29;;12926:1;12936:195;12950:6;12947:1;12944:13;12936:195;;;13015:13;;-1:-1:-1;;;;;13011:39:1;12999:52;;13106:15;;;;13071:12;;;;13047:1;12965:9;12936:195;;;-1:-1:-1;;;;;;;13187:32:1;;;;13182:2;13167:18;;13160:60;-1:-1:-1;;;13251:3:1;13236:19;13229:35;13148:3;12290:980;-1:-1:-1;;;12290:980:1:o

Swarm Source

ipfs://4bd7e663b5a9dc8458a0e1c3faf9de9a43bb8841c866d23a663d872469814f21

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
Loading...
Loading
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.