ETH Price: $3,389.20 (-1.55%)
Gas: 2 Gwei

Contract

0xBE4D9c8C638B5f0864017d7F6A04b66c42953847
 

Overview

ETH Balance

1 wei

Eth Value

Less Than $0.01 (@ $3,389.20/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Approve201933502024-06-28 23:04:3511 hrs ago1719615875IN
0xBE4D9c8C...c42953847
0 ETH0.000091391.97575799
Approve201933342024-06-28 23:01:2311 hrs ago1719615683IN
0xBE4D9c8C...c42953847
0 ETH0.00007691.65104145
Transfer201918962024-06-28 18:12:3516 hrs ago1719598355IN
0xBE4D9c8C...c42953847
0 ETH0.000433786.57581597
Approve201907292024-06-28 14:17:2320 hrs ago1719584243IN
0xBE4D9c8C...c42953847
0 ETH0.0004748810.20807252
Approve201905832024-06-28 13:48:1120 hrs ago1719582491IN
0xBE4D9c8C...c42953847
0 ETH0.000321836.95937808
Approve201897302024-06-28 10:56:4723 hrs ago1719572207IN
0xBE4D9c8C...c42953847
0 ETH0.000155635.34235696
Transfer201890422024-06-28 8:38:5925 hrs ago1719563939IN
0xBE4D9c8C...c42953847
0 ETH0.00028474.65547906
Approve201884902024-06-28 6:47:5927 hrs ago1719557279IN
0xBE4D9c8C...c42953847
0 ETH0.000134172.90063563
Approve201882412024-06-28 5:57:4728 hrs ago1719554267IN
0xBE4D9c8C...c42953847
0 ETH0.000114232.46966774
Approve201863392024-06-27 23:34:4734 hrs ago1719531287IN
0xBE4D9c8C...c42953847
0 ETH0.000224714.83048704
Approve201860712024-06-27 22:40:5935 hrs ago1719528059IN
0xBE4D9c8C...c42953847
0 ETH0.000196184.21712702
Approve201860282024-06-27 22:32:2335 hrs ago1719527543IN
0xBE4D9c8C...c42953847
0 ETH0.000444189.53569446
Approve201852952024-06-27 20:04:3538 hrs ago1719518675IN
0xBE4D9c8C...c42953847
0 ETH0.000327597.04184379
Approve201852812024-06-27 20:01:4738 hrs ago1719518507IN
0xBE4D9c8C...c42953847
0 ETH0.000422199.07544488
Transfer201819962024-06-27 9:01:352 days ago1719478895IN
0xBE4D9c8C...c42953847
0 ETH0.000260055.89825195
Transfer201819952024-06-27 9:01:232 days ago1719478883IN
0xBE4D9c8C...c42953847
0 ETH0.000315945.16320494
Approve201816332024-06-27 7:48:472 days ago1719474527IN
0xBE4D9c8C...c42953847
0 ETH0.000205094.43390065
Approve201804442024-06-27 3:49:472 days ago1719460187IN
0xBE4D9c8C...c42953847
0 ETH0.000375728.07636281
Approve201795292024-06-27 0:46:112 days ago1719449171IN
0xBE4D9c8C...c42953847
0 ETH0.000147243.16502568
Approve201787132024-06-26 22:02:112 days ago1719439331IN
0xBE4D9c8C...c42953847
0 ETH0.000154095.23743181
Approve201781342024-06-26 20:05:352 days ago1719432335IN
0xBE4D9c8C...c42953847
0 ETH0.0005910612.77782626
Approve201779682024-06-26 19:32:112 days ago1719430331IN
0xBE4D9c8C...c42953847
0 ETH0.0005204711.17351527
Approve201777692024-06-26 18:51:592 days ago1719427919IN
0xBE4D9c8C...c42953847
0 ETH0.000375458.07072127
Approve201763432024-06-26 14:04:232 days ago1719410663IN
0xBE4D9c8C...c42953847
0 ETH0.000384158.25769478
Approve201759902024-06-26 12:53:352 days ago1719406415IN
0xBE4D9c8C...c42953847
0 ETH0.000196074.21469402
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
201958002024-06-29 7:17:353 hrs ago1719645455
0xBE4D9c8C...c42953847
0.00733809 ETH
201958002024-06-29 7:17:353 hrs ago1719645455
0xBE4D9c8C...c42953847
0.00733809 ETH
201958002024-06-29 7:17:353 hrs ago1719645455
0xBE4D9c8C...c42953847
0.00258991 ETH
201958002024-06-29 7:17:353 hrs ago1719645455
0xBE4D9c8C...c42953847
0.0172661 ETH
201933572024-06-28 23:05:5911 hrs ago1719615959
0xBE4D9c8C...c42953847
0.00677198 ETH
201933572024-06-28 23:05:5911 hrs ago1719615959
0xBE4D9c8C...c42953847
0.00677198 ETH
201933572024-06-28 23:05:5911 hrs ago1719615959
0xBE4D9c8C...c42953847
0.00239011 ETH
201933572024-06-28 23:05:5911 hrs ago1719615959
0xBE4D9c8C...c42953847
0.01593409 ETH
201920672024-06-28 18:46:4715 hrs ago1719600407
0xBE4D9c8C...c42953847
0.00305861 ETH
201920672024-06-28 18:46:4715 hrs ago1719600407
0xBE4D9c8C...c42953847
0.00305861 ETH
201920672024-06-28 18:46:4715 hrs ago1719600407
0xBE4D9c8C...c42953847
0.0010795 ETH
201920672024-06-28 18:46:4715 hrs ago1719600407
0xBE4D9c8C...c42953847
0.00719673 ETH
201907292024-06-28 14:17:2320 hrs ago1719584243
0xBE4D9c8C...c42953847
0.00173857 ETH
201907292024-06-28 14:17:2320 hrs ago1719584243
0xBE4D9c8C...c42953847
0.00173857 ETH
201907292024-06-28 14:17:2320 hrs ago1719584243
0xBE4D9c8C...c42953847
0.00061361 ETH
201907292024-06-28 14:17:2320 hrs ago1719584243
0xBE4D9c8C...c42953847
0.00409076 ETH
201905882024-06-28 13:49:1120 hrs ago1719582551
0xBE4D9c8C...c42953847
0.01247022 ETH
201905882024-06-28 13:49:1120 hrs ago1719582551
0xBE4D9c8C...c42953847
0.01247022 ETH
201905882024-06-28 13:49:1120 hrs ago1719582551
0xBE4D9c8C...c42953847
0.00440125 ETH
201905882024-06-28 13:49:1120 hrs ago1719582551
0xBE4D9c8C...c42953847
0.0293417 ETH
201899292024-06-28 11:37:1122 hrs ago1719574631
0xBE4D9c8C...c42953847
0.00020682 ETH
201899292024-06-28 11:37:1122 hrs ago1719574631
0xBE4D9c8C...c42953847
0.00020682 ETH
201899292024-06-28 11:37:1122 hrs ago1719574631
0xBE4D9c8C...c42953847
0.00007299 ETH
201899292024-06-28 11:37:1122 hrs ago1719574631
0xBE4D9c8C...c42953847
0.00048665 ETH
201897352024-06-28 10:57:4723 hrs ago1719572267
0xBE4D9c8C...c42953847
0.00027961 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
NimbusNetwork

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-05-13
*/

// SPDX-License-Identifier: MIT

/*  Nimbus Network: Charting the New Era of Cloud-Based Distributed Computing
    Website: https://nimbusnetwork.io/
    Twitter: https://twitter.com/Nimbus_Network
    Telegram: https://t.me/nimbusnetwork
    Whitepaper: https://docs.nimbusnetwork.io/
*/

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

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 must be the owner");
        _;
    }

    function transferOwner(address newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0), "Ownable: new owner shouldn't be zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }

    function ownershipRenounce() 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(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 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 NimbusNetwork is Context, IERC20, Ownable {
    mapping(address => uint256) private _balance;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => uint256) private _IsLimitFree;
    uint256 private constant MAX = ~uint256(0);
    uint8 private constant _decimals = 18;


    uint256 public buyTax = 35;
    uint256 public sellTax = 55;

    uint256 private constant _totalSupply = 100000000 * 10**_decimals;
    uint256 private constant onePercent = (_totalSupply)/100;
    uint256 private constant minimumSwapAmount = 40000;
    uint256 private maxSwap = onePercent*5/10;
    uint256 public MaxPerTxn = onePercent*15/10;
    uint256 public MaxPerWallet = onePercent*15/10;

    
    string private constant _name = "Nimbus Network";
    string private constant _symbol = "NIMBUS";

    IUniswapV2Router02 private uniswapV2Router;
    address public uniswapV2Pair;
    address immutable public DevAddress ;
    address immutable public OperationAddress;
    address immutable public MarketingAddress;

    bool private launch = false;



    constructor() {
        OperationAddress  = 0x9bF6cD21F67672AAEA1A2A5df76dc8427684Ac03;   
        DevAddress = 0xE101e96e170FFEfbAde38C6585ACb1f7f9c516bA;        
        MarketingAddress = 0x67A3aeB4E888EfEB6659bA675671Bc756BFe5CeD;     
        _balance[msg.sender] = _totalSupply;
        _IsLimitFree[DevAddress ] = 1;
        _IsLimitFree[OperationAddress ] = 1;
        _IsLimitFree[MarketingAddress ] = 1;
        _IsLimitFree[msg.sender] = 1;
        _IsLimitFree[address(this)] = 1;

        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 _balance[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);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        if(currentAllowance != type(uint256).max) { 
            require(
                currentAllowance >= amount,
                "ERC20: transfer amount is more than allowed amount"
            );
            unchecked {
                _approve(sender, _msgSender(), currentAllowance - amount);
            }
        }
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: owner can't be zero address");
        require(spender != address(0), "ERC20: spender can't be zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }


    function startTrading() external onlyOwner {
        require(!launch,"trading already opened");
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        _approve(address(this), address(uniswapV2Router), _totalSupply);
        
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        launch = true;
    }

    function _ExcludedWallet(address wallet) external onlyOwner {
        _IsLimitFree[wallet] = 1;
    }

    function _RemoveExcludedWallet(address wallet) external onlyOwner {
        _IsLimitFree[wallet] = 0;
    }


    function RemoveLimits() external onlyOwner {
        MaxPerTxn = _totalSupply;
        MaxPerWallet = _totalSupply;
    }

    function DecreaseTax(uint256 newBuyTax, uint256 newSellTax) external onlyOwner {
        require(newBuyTax <= buyTax && newSellTax <= sellTax, "Tax cannot be increased");
        buyTax = newBuyTax;
        sellTax = newSellTax;
    }
    // Taxes can only be decreased and can never be increased.

    function _tokenTransfer(address from, address to, uint256 amount, uint256 _tax) private {
        uint256 taxTokens = (amount * _tax) / 100;
        uint256 transferAmount = amount - taxTokens;

        _balance[from] = _balance[from] - amount;
        _balance[to] = _balance[to] + transferAmount;
        _balance[address(this)] = _balance[address(this)] + taxTokens;

        emit Transfer(from, to, transferAmount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from zero address not allowed");
        require(amount > 0, "ERC20: amount should be greater than zero");
        uint256 _tax = 0;
        if (_IsLimitFree[from] == 0 && _IsLimitFree[to] == 0)
        {
            require(launch, "Trading not started yet");
            require(amount <= MaxPerTxn, "MaxPerTxn Enabled at launch");
            if (to != uniswapV2Pair && to != address(0xdead)) require(balanceOf(to) + amount <= MaxPerWallet, "MaxPerWallet Enabled at launch");
            if (from == uniswapV2Pair) {
                _tax = buyTax;
            } else if (to == uniswapV2Pair) {
                uint256 tokensToSwap = balanceOf(address(this));
                if (tokensToSwap > minimumSwapAmount) { 
                    uint256 mxSw = maxSwap;
                    if (tokensToSwap > amount) tokensToSwap = amount;
                    if (tokensToSwap > mxSw) tokensToSwap = mxSw;
                    swapTokensForEth(tokensToSwap);
                }
                _tax = sellTax;
            }
        }
        _tokenTransfer(from, to, amount, _tax);
    }

    function Weth() external onlyOwner {
        bool success;
        (success, ) = owner().call{value: address(this).balance}("");
    } 

    function ManualSwap(uint256 percent) external onlyOwner {
        uint256 contractBalance = balanceOf(address(this));
        uint256 amtswap = (percent*contractBalance)/100;
        swapTokensForEth(amtswap);
    }

    function swapTokensForEth(uint256 tokenAmount) private {
        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
        );
        bool success;
        uint256 devtax = address(this).balance *425/1000;    
        uint256 Operation = address(this).balance *425/1000;
        uint256 Marketing = address(this).balance *15/100;

        (success, ) = MarketingAddress.call{value: Marketing}("");
        (success, ) = OperationAddress.call{value: Operation}("");
        (success, ) = DevAddress .call{value: devtax}("");
    }
    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"DecreaseTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"DevAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"ManualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"MarketingAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MaxPerTxn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MaxPerWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"OperationAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"RemoveLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"Weth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"_ExcludedWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"_RemoveExcludedWallet","outputs":[],"stateMutability":"nonpayable","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":"buyTax","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":"ownershipRenounce","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"startTrading","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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60e060405260236004556037600555600a60646200001f60128362000384565b6200002f906305f5e1006200039c565b6200003b9190620003b6565b620000489060056200039c565b620000549190620003b6565b600655600a60646200006860128362000384565b62000078906305f5e1006200039c565b620000849190620003b6565b6200009190600f6200039c565b6200009d9190620003b6565b600755600a6064620000b160128362000384565b620000c1906305f5e1006200039c565b620000cd9190620003b6565b620000da90600f6200039c565b620000e69190620003b6565b600855600a805460ff60a01b191690553480156200010357600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350739bf6cd21f67672aaea1a2a5df76dc8427684ac0360a05273e101e96e170ffefbade38c6585acb1f7f9c516ba6080527367a3aeb4e888efeb6659ba675671bc756bfe5ced60c0526200019b6012600a62000384565b620001ab906305f5e1006200039c565b336000818152600160208181526040808420959095556080516001600160a01b039081168452600390915284832082905560a0518116835284832082905560c05116825283822081905591815282812082905530815291909120556200020e3390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002486012600a62000384565b62000258906305f5e1006200039c565b60405190815260200160405180910390a3620003d9565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002c6578160001904821115620002aa57620002aa6200026f565b80851615620002b857918102915b93841c93908002906200028a565b509250929050565b600082620002df575060016200037e565b81620002ee575060006200037e565b8160018114620003075760028114620003125762000332565b60019150506200037e565b60ff8411156200032657620003266200026f565b50506001821b6200037e565b5060208310610133831016604e8410600b841016171562000357575081810a6200037e565b62000363838362000285565b80600019048211156200037a576200037a6200026f565b0290505b92915050565b60006200039560ff841683620002ce565b9392505050565b80820281158282048414176200037e576200037e6200026f565b600082620003d457634e487b7160e01b600052601260045260246000fd5b500490565b60805160a05160c051611a796200041e600039600081816102c201526113d70152600081816103ef015261145701526000818161042301526114ca0152611a796000f3fe6080604052600436106101a05760003560e01c806356cd40e7116100ec578063a9059cbb1161008a578063cc1776d311610064578063cc1776d3146104fd578063d6d47e4114610513578063d7f7385814610529578063dd62ed3e1461054957600080fd5b8063a9059cbb146104a8578063ad311001146104c8578063c0267af3146104dd57600080fd5b806389a4c1a0116100c657806389a4c1a0146104115780638bec1c6d146104455780638da5cb5b1461045b57806395d89b411461047957600080fd5b806356cd40e71461039257806370a08231146103a757806384e2d578146103dd57600080fd5b8063349849a3116101595780634e23803f116101335780634e23803f1461031c5780634f7041a51461033c5780634fb2e45d1461035257806356ca8a411461037257600080fd5b8063349849a31461029b5780633936e8b9146102b057806349bd5a5e146102fc57600080fd5b806306fdde03146101ac578063095ea7b3146101f557806318160ddd1461022557806323b872dd14610248578063293230b814610268578063313ce5671461027f57600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b5060408051808201909152600e81526d4e696d627573204e6574776f726b60901b60208201525b6040516101ec919061163e565b60405180910390f35b34801561020157600080fd5b506102156102103660046116a1565b61058f565b60405190151581526020016101ec565b34801561023157600080fd5b5061023a6105a6565b6040519081526020016101ec565b34801561025457600080fd5b506102156102633660046116cd565b6105c7565b34801561027457600080fd5b5061027d610689565b005b34801561028b57600080fd5b50604051601281526020016101ec565b3480156102a757600080fd5b5061027d610a33565b3480156102bc57600080fd5b506102e47f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016101ec565b34801561030857600080fd5b50600a546102e4906001600160a01b031681565b34801561032857600080fd5b5061027d61033736600461170e565b610ab5565b34801561034857600080fd5b5061023a60045481565b34801561035e57600080fd5b5061027d61036d36600461170e565b610afc565b34801561037e57600080fd5b5061027d61038d366004611732565b610b32565b34801561039e57600080fd5b5061027d610b93565b3480156103b357600080fd5b5061023a6103c236600461170e565b6001600160a01b031660009081526001602052604090205490565b3480156103e957600080fd5b506102e47f000000000000000000000000000000000000000000000000000000000000000081565b34801561041d57600080fd5b506102e47f000000000000000000000000000000000000000000000000000000000000000081565b34801561045157600080fd5b5061023a60085481565b34801561046757600080fd5b506000546001600160a01b03166102e4565b34801561048557600080fd5b506040805180820190915260068152654e494d42555360d01b60208201526101df565b3480156104b457600080fd5b506102156104c33660046116a1565b610bf9565b3480156104d457600080fd5b5061027d610c06565b3480156104e957600080fd5b5061027d6104f836600461174b565b610c7a565b34801561050957600080fd5b5061023a60055481565b34801561051f57600080fd5b5061023a60075481565b34801561053557600080fd5b5061027d61054436600461170e565b610d0f565b34801561055557600080fd5b5061023a61056436600461176d565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b600061059c338484610d53565b5060015b92915050565b60006105b46012600a6118a0565b6105c2906305f5e1006118af565b905090565b60006105d4848484610e77565b6001600160a01b0384166000908152600260209081526040808320338452909152902054600019811461067e57828110156106715760405162461bcd60e51b815260206004820152603260248201527f45524332303a207472616e7366657220616d6f756e74206973206d6f726520746044820152711a185b88185b1b1bddd95908185b5bdd5b9d60721b60648201526084015b60405180910390fd5b61067e8533858403610d53565b506001949350505050565b6000546001600160a01b031633146106b35760405162461bcd60e51b8152600401610668906118c6565b600a54600160a01b900460ff16156107065760405162461bcd60e51b81526020600482015260166024820152751d1c98591a5b99c8185b1c9958591e481bdc195b995960521b6044820152606401610668565b600980546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801561076a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078e9190611907565b6001600160a01b031663c9c6539630600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108149190611907565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610861573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108859190611907565b600a80546001600160a01b0319166001600160a01b039283161781556009546108cc9230929116906108b9906012906118a0565b6108c7906305f5e1006118af565b610d53565b6009546001600160a01b031663f305d71947306108fe816001600160a01b031660009081526001602052604090205490565b6000806109136000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561097b573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109a09190611924565b5050600a5460095460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af11580156109f9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a1d9190611952565b50600a805460ff60a01b1916600160a01b179055565b6000546001600160a01b03163314610a5d5760405162461bcd60e51b8152600401610668906118c6565b600080546040516001600160a01b039091169047908381818185875af1925050503d8060008114610aaa576040519150601f19603f3d011682016040523d82523d6000602084013e610aaf565b606091505b50505050565b6000546001600160a01b03163314610adf5760405162461bcd60e51b8152600401610668906118c6565b6001600160a01b0316600090815260036020526040902060019055565b6000546001600160a01b03163314610b265760405162461bcd60e51b8152600401610668906118c6565b610b2f81611161565b50565b6000546001600160a01b03163314610b5c5760405162461bcd60e51b8152600401610668906118c6565b30600090815260016020526040812054906064610b7983856118af565b610b839190611974565b9050610b8e81611227565b505050565b6000546001600160a01b03163314610bbd5760405162461bcd60e51b8152600401610668906118c6565b610bc96012600a6118a0565b610bd7906305f5e1006118af565b600755610be66012600a6118a0565b610bf4906305f5e1006118af565b600855565b600061059c338484610e77565b6000546001600160a01b03163314610c305760405162461bcd60e51b8152600401610668906118c6565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610ca45760405162461bcd60e51b8152600401610668906118c6565b6004548211158015610cb857506005548111155b610d045760405162461bcd60e51b815260206004820152601760248201527f5461782063616e6e6f7420626520696e637265617365640000000000000000006044820152606401610668565b600491909155600555565b6000546001600160a01b03163314610d395760405162461bcd60e51b8152600401610668906118c6565b6001600160a01b0316600090815260036020526040812055565b6001600160a01b038316610db45760405162461bcd60e51b815260206004820152602260248201527f45524332303a206f776e65722063616e2774206265207a65726f206164647265604482015261737360f01b6064820152608401610668565b6001600160a01b038216610e165760405162461bcd60e51b8152602060048201526024808201527f45524332303a207370656e6465722063616e2774206265207a65726f206164646044820152637265737360e01b6064820152608401610668565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610ee35760405162461bcd60e51b815260206004820152602d60248201527f45524332303a207472616e736665722066726f6d207a65726f2061646472657360448201526c1cc81b9bdd08185b1b1bddd959609a1b6064820152608401610668565b60008111610f455760405162461bcd60e51b815260206004820152602960248201527f45524332303a20616d6f756e742073686f756c642062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610668565b6001600160a01b038316600090815260036020526040812054158015610f8157506001600160a01b038316600090815260036020526040902054155b1561115557600a54600160a01b900460ff16610fdf5760405162461bcd60e51b815260206004820152601760248201527f54726164696e67206e6f742073746172746564207965740000000000000000006044820152606401610668565b6007548211156110315760405162461bcd60e51b815260206004820152601b60248201527f4d617850657254786e20456e61626c6564206174206c61756e636800000000006044820152606401610668565b600a546001600160a01b0384811691161480159061105a57506001600160a01b03831661dead14155b156110da5760085482611082856001600160a01b031660009081526001602052604090205490565b61108c9190611996565b11156110da5760405162461bcd60e51b815260206004820152601e60248201527f4d617850657257616c6c657420456e61626c6564206174206c61756e636800006044820152606401610668565b600a546001600160a01b03908116908516036110f95750600454611155565b600a546001600160a01b03908116908416036111555730600090815260016020526040902054619c4081111561114f5760065483821115611138578391505b80821115611144578091505b61114d82611227565b505b50506005545b610aaf84848484611536565b6001600160a01b0381166111cc5760405162461bcd60e51b815260206004820152602c60248201527f4f776e61626c653a206e6577206f776e65722073686f756c646e27742062652060448201526b7a65726f206164647265737360a01b6064820152608401610668565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061125c5761125c6119a9565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112d99190611907565b816001815181106112ec576112ec6119a9565b6001600160a01b0392831660209182029290920101526009546113129130911684610d53565b60095460405163791ac94760e01b81526001600160a01b039091169063791ac9479061134b9085906000908690309042906004016119bf565b600060405180830381600087803b15801561136557600080fd5b505af1158015611379573d6000803e3d6000fd5b505050506000806103e8476101a961139191906118af565b61139b9190611974565b905060006103e86113ae476101a96118af565b6113b89190611974565b9050600060646113c947600f6118af565b6113d39190611974565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168160405160006040518083038185875af1925050503d8060008114611440576040519150601f19603f3d011682016040523d82523d6000602084013e611445565b606091505b50506040519094506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016908390600081818185875af1925050503d80600081146114b3576040519150601f19603f3d011682016040523d82523d6000602084013e6114b8565b606091505b50506040519094506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016908490600081818185875af1925050503d8060008114611526576040519150601f19603f3d011682016040523d82523d6000602084013e61152b565b606091505b505050505050505050565b6000606461154483856118af565b61154e9190611974565b9050600061155c8285611a30565b6001600160a01b038716600090815260016020526040902054909150611583908590611a30565b6001600160a01b0380881660009081526001602052604080822093909355908716815220546115b3908290611996565b6001600160a01b0386166000908152600160205260408082209290925530815220546115e0908390611996565b3060009081526001602090815260409182902092909255518281526001600160a01b0387811692908916917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050505050565b600060208083528351808285015260005b8181101561166b5785810183015185820160400152820161164f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610b2f57600080fd5b600080604083850312156116b457600080fd5b82356116bf8161168c565b946020939093013593505050565b6000806000606084860312156116e257600080fd5b83356116ed8161168c565b925060208401356116fd8161168c565b929592945050506040919091013590565b60006020828403121561172057600080fd5b813561172b8161168c565b9392505050565b60006020828403121561174457600080fd5b5035919050565b6000806040838503121561175e57600080fd5b50508035926020909101359150565b6000806040838503121561178057600080fd5b823561178b8161168c565b9150602083013561179b8161168c565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156117f75781600019048211156117dd576117dd6117a6565b808516156117ea57918102915b93841c93908002906117c1565b509250929050565b60008261180e575060016105a0565b8161181b575060006105a0565b8160018114611831576002811461183b57611857565b60019150506105a0565b60ff84111561184c5761184c6117a6565b50506001821b6105a0565b5060208310610133831016604e8410600b841016171561187a575081810a6105a0565b61188483836117bc565b8060001904821115611898576118986117a6565b029392505050565b600061172b60ff8416836117ff565b80820281158282048414176105a0576105a06117a6565b60208082526021908201527f4f776e61626c653a2063616c6c6572206d75737420626520746865206f776e656040820152603960f91b606082015260800190565b60006020828403121561191957600080fd5b815161172b8161168c565b60008060006060848603121561193957600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561196457600080fd5b8151801515811461172b57600080fd5b60008261199157634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156105a0576105a06117a6565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a0f5784516001600160a01b0316835293830193918301916001016119ea565b50506001600160a01b03969096166060850152505050608001529392505050565b818103818111156105a0576105a06117a656fea2646970667358221220f5eda02ec3d0658f7e2472a5075d6cf7aa6bd6f9811d771556c138fe8f2bac8b64736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101a05760003560e01c806356cd40e7116100ec578063a9059cbb1161008a578063cc1776d311610064578063cc1776d3146104fd578063d6d47e4114610513578063d7f7385814610529578063dd62ed3e1461054957600080fd5b8063a9059cbb146104a8578063ad311001146104c8578063c0267af3146104dd57600080fd5b806389a4c1a0116100c657806389a4c1a0146104115780638bec1c6d146104455780638da5cb5b1461045b57806395d89b411461047957600080fd5b806356cd40e71461039257806370a08231146103a757806384e2d578146103dd57600080fd5b8063349849a3116101595780634e23803f116101335780634e23803f1461031c5780634f7041a51461033c5780634fb2e45d1461035257806356ca8a411461037257600080fd5b8063349849a31461029b5780633936e8b9146102b057806349bd5a5e146102fc57600080fd5b806306fdde03146101ac578063095ea7b3146101f557806318160ddd1461022557806323b872dd14610248578063293230b814610268578063313ce5671461027f57600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b5060408051808201909152600e81526d4e696d627573204e6574776f726b60901b60208201525b6040516101ec919061163e565b60405180910390f35b34801561020157600080fd5b506102156102103660046116a1565b61058f565b60405190151581526020016101ec565b34801561023157600080fd5b5061023a6105a6565b6040519081526020016101ec565b34801561025457600080fd5b506102156102633660046116cd565b6105c7565b34801561027457600080fd5b5061027d610689565b005b34801561028b57600080fd5b50604051601281526020016101ec565b3480156102a757600080fd5b5061027d610a33565b3480156102bc57600080fd5b506102e47f00000000000000000000000067a3aeb4e888efeb6659ba675671bc756bfe5ced81565b6040516001600160a01b0390911681526020016101ec565b34801561030857600080fd5b50600a546102e4906001600160a01b031681565b34801561032857600080fd5b5061027d61033736600461170e565b610ab5565b34801561034857600080fd5b5061023a60045481565b34801561035e57600080fd5b5061027d61036d36600461170e565b610afc565b34801561037e57600080fd5b5061027d61038d366004611732565b610b32565b34801561039e57600080fd5b5061027d610b93565b3480156103b357600080fd5b5061023a6103c236600461170e565b6001600160a01b031660009081526001602052604090205490565b3480156103e957600080fd5b506102e47f0000000000000000000000009bf6cd21f67672aaea1a2a5df76dc8427684ac0381565b34801561041d57600080fd5b506102e47f000000000000000000000000e101e96e170ffefbade38c6585acb1f7f9c516ba81565b34801561045157600080fd5b5061023a60085481565b34801561046757600080fd5b506000546001600160a01b03166102e4565b34801561048557600080fd5b506040805180820190915260068152654e494d42555360d01b60208201526101df565b3480156104b457600080fd5b506102156104c33660046116a1565b610bf9565b3480156104d457600080fd5b5061027d610c06565b3480156104e957600080fd5b5061027d6104f836600461174b565b610c7a565b34801561050957600080fd5b5061023a60055481565b34801561051f57600080fd5b5061023a60075481565b34801561053557600080fd5b5061027d61054436600461170e565b610d0f565b34801561055557600080fd5b5061023a61056436600461176d565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b600061059c338484610d53565b5060015b92915050565b60006105b46012600a6118a0565b6105c2906305f5e1006118af565b905090565b60006105d4848484610e77565b6001600160a01b0384166000908152600260209081526040808320338452909152902054600019811461067e57828110156106715760405162461bcd60e51b815260206004820152603260248201527f45524332303a207472616e7366657220616d6f756e74206973206d6f726520746044820152711a185b88185b1b1bddd95908185b5bdd5b9d60721b60648201526084015b60405180910390fd5b61067e8533858403610d53565b506001949350505050565b6000546001600160a01b031633146106b35760405162461bcd60e51b8152600401610668906118c6565b600a54600160a01b900460ff16156107065760405162461bcd60e51b81526020600482015260166024820152751d1c98591a5b99c8185b1c9958591e481bdc195b995960521b6044820152606401610668565b600980546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801561076a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078e9190611907565b6001600160a01b031663c9c6539630600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108149190611907565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610861573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108859190611907565b600a80546001600160a01b0319166001600160a01b039283161781556009546108cc9230929116906108b9906012906118a0565b6108c7906305f5e1006118af565b610d53565b6009546001600160a01b031663f305d71947306108fe816001600160a01b031660009081526001602052604090205490565b6000806109136000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561097b573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109a09190611924565b5050600a5460095460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af11580156109f9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a1d9190611952565b50600a805460ff60a01b1916600160a01b179055565b6000546001600160a01b03163314610a5d5760405162461bcd60e51b8152600401610668906118c6565b600080546040516001600160a01b039091169047908381818185875af1925050503d8060008114610aaa576040519150601f19603f3d011682016040523d82523d6000602084013e610aaf565b606091505b50505050565b6000546001600160a01b03163314610adf5760405162461bcd60e51b8152600401610668906118c6565b6001600160a01b0316600090815260036020526040902060019055565b6000546001600160a01b03163314610b265760405162461bcd60e51b8152600401610668906118c6565b610b2f81611161565b50565b6000546001600160a01b03163314610b5c5760405162461bcd60e51b8152600401610668906118c6565b30600090815260016020526040812054906064610b7983856118af565b610b839190611974565b9050610b8e81611227565b505050565b6000546001600160a01b03163314610bbd5760405162461bcd60e51b8152600401610668906118c6565b610bc96012600a6118a0565b610bd7906305f5e1006118af565b600755610be66012600a6118a0565b610bf4906305f5e1006118af565b600855565b600061059c338484610e77565b6000546001600160a01b03163314610c305760405162461bcd60e51b8152600401610668906118c6565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610ca45760405162461bcd60e51b8152600401610668906118c6565b6004548211158015610cb857506005548111155b610d045760405162461bcd60e51b815260206004820152601760248201527f5461782063616e6e6f7420626520696e637265617365640000000000000000006044820152606401610668565b600491909155600555565b6000546001600160a01b03163314610d395760405162461bcd60e51b8152600401610668906118c6565b6001600160a01b0316600090815260036020526040812055565b6001600160a01b038316610db45760405162461bcd60e51b815260206004820152602260248201527f45524332303a206f776e65722063616e2774206265207a65726f206164647265604482015261737360f01b6064820152608401610668565b6001600160a01b038216610e165760405162461bcd60e51b8152602060048201526024808201527f45524332303a207370656e6465722063616e2774206265207a65726f206164646044820152637265737360e01b6064820152608401610668565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610ee35760405162461bcd60e51b815260206004820152602d60248201527f45524332303a207472616e736665722066726f6d207a65726f2061646472657360448201526c1cc81b9bdd08185b1b1bddd959609a1b6064820152608401610668565b60008111610f455760405162461bcd60e51b815260206004820152602960248201527f45524332303a20616d6f756e742073686f756c642062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610668565b6001600160a01b038316600090815260036020526040812054158015610f8157506001600160a01b038316600090815260036020526040902054155b1561115557600a54600160a01b900460ff16610fdf5760405162461bcd60e51b815260206004820152601760248201527f54726164696e67206e6f742073746172746564207965740000000000000000006044820152606401610668565b6007548211156110315760405162461bcd60e51b815260206004820152601b60248201527f4d617850657254786e20456e61626c6564206174206c61756e636800000000006044820152606401610668565b600a546001600160a01b0384811691161480159061105a57506001600160a01b03831661dead14155b156110da5760085482611082856001600160a01b031660009081526001602052604090205490565b61108c9190611996565b11156110da5760405162461bcd60e51b815260206004820152601e60248201527f4d617850657257616c6c657420456e61626c6564206174206c61756e636800006044820152606401610668565b600a546001600160a01b03908116908516036110f95750600454611155565b600a546001600160a01b03908116908416036111555730600090815260016020526040902054619c4081111561114f5760065483821115611138578391505b80821115611144578091505b61114d82611227565b505b50506005545b610aaf84848484611536565b6001600160a01b0381166111cc5760405162461bcd60e51b815260206004820152602c60248201527f4f776e61626c653a206e6577206f776e65722073686f756c646e27742062652060448201526b7a65726f206164647265737360a01b6064820152608401610668565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061125c5761125c6119a9565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112d99190611907565b816001815181106112ec576112ec6119a9565b6001600160a01b0392831660209182029290920101526009546113129130911684610d53565b60095460405163791ac94760e01b81526001600160a01b039091169063791ac9479061134b9085906000908690309042906004016119bf565b600060405180830381600087803b15801561136557600080fd5b505af1158015611379573d6000803e3d6000fd5b505050506000806103e8476101a961139191906118af565b61139b9190611974565b905060006103e86113ae476101a96118af565b6113b89190611974565b9050600060646113c947600f6118af565b6113d39190611974565b90507f00000000000000000000000067a3aeb4e888efeb6659ba675671bc756bfe5ced6001600160a01b03168160405160006040518083038185875af1925050503d8060008114611440576040519150601f19603f3d011682016040523d82523d6000602084013e611445565b606091505b50506040519094506001600160a01b037f0000000000000000000000009bf6cd21f67672aaea1a2a5df76dc8427684ac0316908390600081818185875af1925050503d80600081146114b3576040519150601f19603f3d011682016040523d82523d6000602084013e6114b8565b606091505b50506040519094506001600160a01b037f000000000000000000000000e101e96e170ffefbade38c6585acb1f7f9c516ba16908490600081818185875af1925050503d8060008114611526576040519150601f19603f3d011682016040523d82523d6000602084013e61152b565b606091505b505050505050505050565b6000606461154483856118af565b61154e9190611974565b9050600061155c8285611a30565b6001600160a01b038716600090815260016020526040902054909150611583908590611a30565b6001600160a01b0380881660009081526001602052604080822093909355908716815220546115b3908290611996565b6001600160a01b0386166000908152600160205260408082209290925530815220546115e0908390611996565b3060009081526001602090815260409182902092909255518281526001600160a01b0387811692908916917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050505050565b600060208083528351808285015260005b8181101561166b5785810183015185820160400152820161164f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610b2f57600080fd5b600080604083850312156116b457600080fd5b82356116bf8161168c565b946020939093013593505050565b6000806000606084860312156116e257600080fd5b83356116ed8161168c565b925060208401356116fd8161168c565b929592945050506040919091013590565b60006020828403121561172057600080fd5b813561172b8161168c565b9392505050565b60006020828403121561174457600080fd5b5035919050565b6000806040838503121561175e57600080fd5b50508035926020909101359150565b6000806040838503121561178057600080fd5b823561178b8161168c565b9150602083013561179b8161168c565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156117f75781600019048211156117dd576117dd6117a6565b808516156117ea57918102915b93841c93908002906117c1565b509250929050565b60008261180e575060016105a0565b8161181b575060006105a0565b8160018114611831576002811461183b57611857565b60019150506105a0565b60ff84111561184c5761184c6117a6565b50506001821b6105a0565b5060208310610133831016604e8410600b841016171561187a575081810a6105a0565b61188483836117bc565b8060001904821115611898576118986117a6565b029392505050565b600061172b60ff8416836117ff565b80820281158282048414176105a0576105a06117a6565b60208082526021908201527f4f776e61626c653a2063616c6c6572206d75737420626520746865206f776e656040820152603960f91b606082015260800190565b60006020828403121561191957600080fd5b815161172b8161168c565b60008060006060848603121561193957600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561196457600080fd5b8151801515811461172b57600080fd5b60008261199157634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156105a0576105a06117a6565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a0f5784516001600160a01b0316835293830193918301916001016119ea565b50506001600160a01b03969096166060850152505050608001529392505050565b818103818111156105a0576105a06117a656fea2646970667358221220f5eda02ec3d0658f7e2472a5075d6cf7aa6bd6f9811d771556c138fe8f2bac8b64736f6c63430008130033

Deployed Bytecode Sourcemap

3007:7939:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4715:83;;;;;;;;;;-1:-1:-1;4785:5:0;;;;;;;;;;;;-1:-1:-1;;;4785:5:0;;;;4715:83;;;;;;;:::i;:::-;;;;;;;;5549:160;;;;;;;;;;-1:-1:-1;5549:160:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;5549:160:0;1023:187:1;4992:100:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;4992:100:0;1215:177:1;5717:588:0;;;;;;;;;;-1:-1:-1;5717:588:0;;;;;:::i;:::-;;:::i;6658:645::-;;;;;;;;;;;;;:::i;:::-;;4901:83;;;;;;;;;;-1:-1:-1;4901:83:0;;3329:2;2000:36:1;;1988:2;1973:18;4901:83:0;1858:184:1;9658:137:0;;;;;;;;;;;;;:::i;4043:41::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2211:32:1;;;2193:51;;2181:2;2166:18;4043:41:0;2047:203:1;3917:28:0;;;;;;;;;;-1:-1:-1;3917:28:0;;;;-1:-1:-1;;;;;3917:28:0;;;7311:103;;;;;;;;;;-1:-1:-1;7311:103:0;;;;;:::i;:::-;;:::i;3342:26::-;;;;;;;;;;;;;;;;1699:105;;;;;;;;;;-1:-1:-1;1699:105:0;;;;;:::i;:::-;;:::i;9804:219::-;;;;;;;;;;-1:-1:-1;9804:219:0;;;;;:::i;:::-;;:::i;7541:124::-;;;;;;;;;;;;;:::i;5100:118::-;;;;;;;;;;-1:-1:-1;5100:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;5193:17:0;5166:7;5193:17;;;:8;:17;;;;;;;5100:118;3995:41;;;;;;;;;;;;;;;3952:35;;;;;;;;;;;;;;;3701:46;;;;;;;;;;;;;;;;1484:79;;;;;;;;;;-1:-1:-1;1522:7:0;1549:6;-1:-1:-1;;;;;1549:6:0;1484:79;;4806:87;;;;;;;;;;-1:-1:-1;4878:7:0;;;;;;;;;;;;-1:-1:-1;;;4878:7:0;;;;4806:87;;5226:165;;;;;;;;;;-1:-1:-1;5226:165:0;;;;;:::i;:::-;;:::i;2055:148::-;;;;;;;;;;;;;:::i;7673:238::-;;;;;;;;;;-1:-1:-1;7673:238:0;;;;;:::i;:::-;;:::i;3375:27::-;;;;;;;;;;;;;;;;3651:43;;;;;;;;;;;;;;;;7422:109;;;;;;;;;;-1:-1:-1;7422:109:0;;;;;:::i;:::-;;:::i;5399:142::-;;;;;;;;;;-1:-1:-1;5399:142:0;;;;;:::i;:::-;-1:-1:-1;;;;;5506:18:0;;;5480:7;5506:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5399:142;5549:160;5624:4;5640:39;439:10;5663:7;5672:6;5640:8;:39::i;:::-;-1:-1:-1;5697:4:0;5549:160;;;;;:::o;4992:100::-;5045:7;3463:13;3329:2;3463;:13;:::i;:::-;3451:25;;:9;:25;:::i;:::-;5065:19;;4992:100;:::o;5717:588::-;5815:4;5832:36;5842:6;5850:9;5861:6;5832:9;:36::i;:::-;-1:-1:-1;;;;;5908:19:0;;5881:24;5908:19;;;:11;:19;;;;;;;;439:10;5908:33;;;;;;;;-1:-1:-1;;5955:37:0;;5952:324;;6056:6;6036:16;:26;;6010:138;;;;-1:-1:-1;;;6010:138:0;;5228:2:1;6010:138:0;;;5210:21:1;5267:2;5247:18;;;5240:30;5306:34;5286:18;;;5279:62;-1:-1:-1;;;5357:18:1;;;5350:48;5415:19;;6010:138:0;;;;;;;;;6192:57;6201:6;439:10;6242:6;6223:16;:25;6192:8;:57::i;:::-;-1:-1:-1;6293:4:0;;5717:588;-1:-1:-1;;;;5717:588:0:o;6658:645::-;1611:6;;-1:-1:-1;;;;;1611:6:0;439:10;1611:22;1603:68;;;;-1:-1:-1;;;1603:68:0;;;;;;;:::i;:::-;6721:6:::1;::::0;-1:-1:-1;;;6721:6:0;::::1;;;6720:7;6712:41;;;::::0;-1:-1:-1;;;6712:41:0;;6049:2:1;6712:41:0::1;::::0;::::1;6031:21:1::0;6088:2;6068:18;;;6061:30;-1:-1:-1;;;6107:18:1;;;6100:52;6169:18;;6712:41:0::1;5847:346:1::0;6712:41:0::1;6764:15;:80:::0;;-1:-1:-1;;;;;;6764:80:0::1;6801:42;6764:80:::0;;::::1;::::0;;;6889:25:::1;::::0;;-1:-1:-1;;;6889:25:0;;;;:23:::1;::::0;:25:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;6801:42;6889:25:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;6871:55:0::1;;6935:4;6942:15;;;;;;;;;-1:-1:-1::0;;;;;6942:15:0::1;-1:-1:-1::0;;;;;6942:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6871:94;::::0;-1:-1:-1;;;;;;6871:94:0::1;::::0;;;;;;-1:-1:-1;;;;;6684:15:1;;;6871:94:0::1;::::0;::::1;6666:34:1::0;6736:15;;6716:18;;;6709:43;6601:18;;6871:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6855:13;:110:::0;;-1:-1:-1;;;;;;6855:110:0::1;-1:-1:-1::0;;;;;6855:110:0;;::::1;;::::0;;7008:15:::1;::::0;6976:63:::1;::::0;6993:4:::1;::::0;7008:15;::::1;::::0;3463:13:::1;::::0;3329:2:::1;::::0;3463:13:::1;:::i;:::-;3451:25;::::0;:9:::1;:25;:::i;:::-;6976:8;:63::i;:::-;7060:15;::::0;-1:-1:-1;;;;;7060:15:0::1;:31;7099:21;7130:4;7136:24;7130:4:::0;-1:-1:-1;;;;;5193:17:0;5166:7;5193:17;;;:8;:17;;;;;;;5100:118;7136:24:::1;7161:1;7163::::0;7165:7:::1;1522::::0;1549:6;-1:-1:-1;;;;;1549:6:0;;1484:79;7165:7:::1;7060:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;7060:129:0;;;-1:-1:-1;;;;;7122:15:1;;;7060:129:0::1;::::0;::::1;7104:34:1::0;7154:18;;;7147:34;;;;7197:18;;;7190:34;;;;7240:18;;;7233:34;7304:15;;;7283:19;;;7276:44;7173:15:0::1;7336:19:1::0;;;7329:35;7038:19;;7060:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;7207:13:0::1;::::0;7238:15:::1;::::0;7200:71:::1;::::0;-1:-1:-1;;;7200:71:0;;-1:-1:-1;;;;;7238:15:0;;::::1;7200:71;::::0;::::1;7860:51:1::0;-1:-1:-1;;7927:18:1;;;7920:34;7207:13:0;::::1;::::0;-1:-1:-1;7200:29:0::1;::::0;7833:18:1;;7200:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;7282:6:0::1;:13:::0;;-1:-1:-1;;;;7282:13:0::1;-1:-1:-1::0;;;7282:13:0::1;::::0;;6658:645::o;9658:137::-;1611:6;;-1:-1:-1;;;;;1611:6:0;439:10;1611:22;1603:68;;;;-1:-1:-1;;;1603:68:0;;;;;;;:::i;:::-;9704:12:::1;1549:6:::0;;9741:46:::1;::::0;-1:-1:-1;;;;;1549:6:0;;;;9761:21:::1;::::0;9704:12;9741:46;9704:12;9741:46;9761:21;1549:6;9741:46:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;9658:137:0:o;7311:103::-;1611:6;;-1:-1:-1;;;;;1611:6:0;439:10;1611:22;1603:68;;;;-1:-1:-1;;;1603:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7382:20:0::1;;::::0;;;:12:::1;:20;::::0;;;;7405:1:::1;7382:24:::0;;7311:103::o;1699:105::-;1611:6;;-1:-1:-1;;;;;1611:6:0;439:10;1611:22;1603:68;;;;-1:-1:-1;;;1603:68:0;;;;;;;:::i;:::-;1768:28:::1;1787:8;1768:18;:28::i;:::-;1699:105:::0;:::o;9804:219::-;1611:6;;-1:-1:-1;;;;;1611:6:0;439:10;1611:22;1603:68;;;;-1:-1:-1;;;1603:68:0;;;;;;;:::i;:::-;9915:4:::1;9871:23;5193:17:::0;;;:8;:17;;;;;;;9976:3:::1;9951:23;5193:17:::0;9951:7;:23:::1;:::i;:::-;9950:29;;;;:::i;:::-;9932:47;;9990:25;10007:7;9990:16;:25::i;:::-;9860:163;;9804:219:::0;:::o;7541:124::-;1611:6;;-1:-1:-1;;;;;1611:6:0;439:10;1611:22;1603:68;;;;-1:-1:-1;;;1603:68:0;;;;;;;:::i;:::-;3463:13:::1;3329:2;3463;:13;:::i;:::-;3451:25;::::0;:9:::1;:25;:::i;:::-;7595:9;:24:::0;3463:13:::1;3329:2;3463;:13;:::i;:::-;3451:25;::::0;:9:::1;:25;:::i;:::-;7630:12;:27:::0;7541:124::o;5226:165::-;5303:4;5319:42;439:10;5343:9;5354:6;5319:9;:42::i;2055:148::-;1611:6;;-1:-1:-1;;;;;1611:6:0;439:10;1611:22;1603:68;;;;-1:-1:-1;;;1603:68:0;;;;;;;:::i;:::-;2162:1:::1;2146:6:::0;;2125:40:::1;::::0;-1:-1:-1;;;;;2146:6:0;;::::1;::::0;2125:40:::1;::::0;2162:1;;2125:40:::1;2193:1;2176:19:::0;;-1:-1:-1;;;;;;2176:19:0::1;::::0;;2055:148::o;7673:238::-;1611:6;;-1:-1:-1;;;;;1611:6:0;439:10;1611:22;1603:68;;;;-1:-1:-1;;;1603:68:0;;;;;;;:::i;:::-;7784:6:::1;;7771:9;:19;;:44;;;;;7808:7;;7794:10;:21;;7771:44;7763:80;;;::::0;-1:-1:-1;;;7763:80:0;;8881:2:1;7763:80:0::1;::::0;::::1;8863:21:1::0;8920:2;8900:18;;;8893:30;8959:25;8939:18;;;8932:53;9002:18;;7763:80:0::1;8679:347:1::0;7763:80:0::1;7854:6;:18:::0;;;;7883:7:::1;:20:::0;7673:238::o;7422:109::-;1611:6;;-1:-1:-1;;;;;1611:6:0;439:10;1611:22;1603:68;;;;-1:-1:-1;;;1603:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7499:20:0::1;7522:1;7499:20:::0;;;:12:::1;:20;::::0;;;;:24;7422:109::o;6313:335::-;-1:-1:-1;;;;;6406:19:0;;6398:66;;;;-1:-1:-1;;;6398:66:0;;9233:2:1;6398:66:0;;;9215:21:1;9272:2;9252:18;;;9245:30;9311:34;9291:18;;;9284:62;-1:-1:-1;;;9362:18:1;;;9355:32;9404:19;;6398:66:0;9031:398:1;6398:66:0;-1:-1:-1;;;;;6483:21:0;;6475:70;;;;-1:-1:-1;;;6475:70:0;;9636:2:1;6475:70:0;;;9618:21:1;9675:2;9655:18;;;9648:30;9714:34;9694:18;;;9687:62;-1:-1:-1;;;9765:18:1;;;9758:34;9809:19;;6475:70:0;9434:400:1;6475:70:0;-1:-1:-1;;;;;6556:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6608:32;;1361:25:1;;;6608:32:0;;1334:18:1;6608:32:0;;;;;;;6313:335;;;:::o;8425:1225::-;-1:-1:-1;;;;;8513:18:0;;8505:76;;;;-1:-1:-1;;;8505:76:0;;10041:2:1;8505:76:0;;;10023:21:1;10080:2;10060:18;;;10053:30;10119:34;10099:18;;;10092:62;-1:-1:-1;;;10170:18:1;;;10163:43;10223:19;;8505:76:0;9839:409:1;8505:76:0;8609:1;8600:6;:10;8592:64;;;;-1:-1:-1;;;8592:64:0;;10455:2:1;8592:64:0;;;10437:21:1;10494:2;10474:18;;;10467:30;10533:34;10513:18;;;10506:62;-1:-1:-1;;;10584:18:1;;;10577:39;10633:19;;8592:64:0;10253:405:1;8592:64:0;-1:-1:-1;;;;;8698:18:0;;8667:12;8698:18;;;:12;:18;;;;;;:23;:48;;;;-1:-1:-1;;;;;;8725:16:0;;;;;;:12;:16;;;;;;:21;8698:48;8694:900;;;8780:6;;-1:-1:-1;;;8780:6:0;;;;8772:42;;;;-1:-1:-1;;;8772:42:0;;10865:2:1;8772:42:0;;;10847:21:1;10904:2;10884:18;;;10877:30;10943:25;10923:18;;;10916:53;10986:18;;8772:42:0;10663:347:1;8772:42:0;8847:9;;8837:6;:19;;8829:59;;;;-1:-1:-1;;;8829:59:0;;11217:2:1;8829:59:0;;;11199:21:1;11256:2;11236:18;;;11229:30;11295:29;11275:18;;;11268:57;11342:18;;8829:59:0;11015:351:1;8829:59:0;8913:13;;-1:-1:-1;;;;;8907:19:0;;;8913:13;;8907:19;;;;:44;;-1:-1:-1;;;;;;8930:21:0;;8944:6;8930:21;;8907:44;8903:131;;;8987:12;;8977:6;8961:13;8971:2;-1:-1:-1;;;;;5193:17:0;5166:7;5193:17;;;:8;:17;;;;;;;5100:118;8961:13;:22;;;;:::i;:::-;:38;;8953:81;;;;-1:-1:-1;;;8953:81:0;;11703:2:1;8953:81:0;;;11685:21:1;11742:2;11722:18;;;11715:30;11781:32;11761:18;;;11754:60;11831:18;;8953:81:0;11501:354:1;8953:81:0;9061:13;;-1:-1:-1;;;;;9061:13:0;;;9053:21;;;;9049:534;;-1:-1:-1;9102:6:0;;9049:534;;;9140:13;;-1:-1:-1;;;;;9140:13:0;;;9134:19;;;;9130:453;;9215:4;9174:20;5193:17;;;:8;:17;;;;;;3591:5;9244:32;;9240:295;;;9317:7;;9351:21;;;9347:48;;;9389:6;9374:21;;9347:48;9437:4;9422:12;:19;9418:44;;;9458:4;9443:19;;9418:44;9485:30;9502:12;9485:16;:30::i;:::-;9278:257;9240:295;-1:-1:-1;;9560:7:0;;9130:453;9604:38;9619:4;9625:2;9629:6;9637:4;9604:14;:38::i;1812:235::-;-1:-1:-1;;;;;1886:22:0;;1878:79;;;;-1:-1:-1;;;1878:79:0;;12062:2:1;1878:79:0;;;12044:21:1;12101:2;12081:18;;;12074:30;12140:34;12120:18;;;12113:62;-1:-1:-1;;;12191:18:1;;;12184:42;12243:19;;1878:79:0;11860:408:1;1878:79:0;1994:6;;;1973:38;;-1:-1:-1;;;;;1973:38:0;;;;1994:6;;;1973:38;;;2022:6;:17;;-1:-1:-1;;;;;;2022:17:0;-1:-1:-1;;;;;2022:17:0;;;;;;;;;;1812:235::o;10031:877::-;10121:16;;;10135:1;10121:16;;;;;;;;10097:21;;10121:16;;;;;;;;;;-1:-1:-1;10121:16:0;10097:40;;10166:4;10148;10153:1;10148:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10148:23:0;;;:7;;;;;;;;;;:23;;;;10192:15;;:22;;;-1:-1:-1;;;10192:22:0;;;;:15;;;;;:20;;:22;;;;;10148:7;;10192:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10182:4;10187:1;10182:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10182:32:0;;;:7;;;;;;;;;:32;10257:15;;10225:62;;10242:4;;10257:15;10275:11;10225:8;:62::i;:::-;10298:15;;:196;;-1:-1:-1;;;10298:196:0;;-1:-1:-1;;;;;10298:15:0;;;;:66;;:196;;10379:11;;10298:15;;10421:4;;10448;;10468:15;;10298:196;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10505:12;10528:14;10572:4;10545:21;10568:3;10545:26;;;;:::i;:::-;:31;;;;:::i;:::-;10528:48;-1:-1:-1;10591:17:0;10638:4;10611:26;:21;10634:3;10611:26;:::i;:::-;:31;;;;:::i;:::-;10591:51;-1:-1:-1;10653:17:0;10699:3;10673:25;:21;10696:2;10673:25;:::i;:::-;:29;;;;:::i;:::-;10653:49;;10729:16;-1:-1:-1;;;;;10729:21:0;10758:9;10729:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10797:43:0;;10715:57;;-1:-1:-1;;;;;;10797:16:0;:21;;10826:9;;10797:43;;;;10826:9;10797:21;:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10865:35:0;;10783:57;;-1:-1:-1;;;;;;10865:10:0;:16;;10889:6;;10865:35;;;;10889:6;10865:16;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;10031:877:0:o;7983:434::-;8082:17;8120:3;8103:13;8112:4;8103:6;:13;:::i;:::-;8102:21;;;;:::i;:::-;8082:41;-1:-1:-1;8134:22:0;8159:18;8082:41;8159:6;:18;:::i;:::-;-1:-1:-1;;;;;8207:14:0;;;;;;:8;:14;;;;;;8134:43;;-1:-1:-1;8207:23:0;;8224:6;;8207:23;:::i;:::-;-1:-1:-1;;;;;8190:14:0;;;;;;;:8;:14;;;;;;:40;;;;8256:12;;;;;;;:29;;8271:14;;8256:29;:::i;:::-;-1:-1:-1;;;;;8241:12:0;;;;;;:8;:12;;;;;;:44;;;;8339:4;8322:23;;;;:35;;8348:9;;8322:35;:::i;:::-;8313:4;8296:23;;;;:8;:23;;;;;;;;;:61;;;;8375:34;1361:25:1;;;-1:-1:-1;;;;;8375:34:0;;;;;;;;;;1334:18:1;8375:34:0;;;;;;;8071:346;;7983:434;;;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;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;2255:247::-;2314:6;2367:2;2355:9;2346:7;2342:23;2338:32;2335:52;;;2383:1;2380;2373:12;2335:52;2422:9;2409:23;2441:31;2466:5;2441:31;:::i;:::-;2491:5;2255:247;-1:-1:-1;;;2255:247:1:o;2507:180::-;2566:6;2619:2;2607:9;2598:7;2594:23;2590:32;2587:52;;;2635:1;2632;2625:12;2587:52;-1:-1:-1;2658:23:1;;2507:180;-1:-1:-1;2507:180:1:o;2692:248::-;2760:6;2768;2821:2;2809:9;2800:7;2796:23;2792:32;2789:52;;;2837:1;2834;2827:12;2789:52;-1:-1:-1;;2860:23:1;;;2930:2;2915:18;;;2902:32;;-1:-1:-1;2692:248:1:o;2945:388::-;3013:6;3021;3074:2;3062:9;3053:7;3049:23;3045:32;3042:52;;;3090:1;3087;3080:12;3042:52;3129:9;3116:23;3148:31;3173:5;3148:31;:::i;:::-;3198:5;-1:-1:-1;3255:2:1;3240:18;;3227:32;3268:33;3227:32;3268:33;:::i;:::-;3320:7;3310:17;;;2945:388;;;;;:::o;3338:127::-;3399:10;3394:3;3390:20;3387:1;3380:31;3430:4;3427:1;3420:15;3454:4;3451:1;3444:15;3470:422;3559:1;3602:5;3559:1;3616:270;3637:7;3627:8;3624:21;3616:270;;;3696:4;3692:1;3688:6;3684:17;3678:4;3675:27;3672:53;;;3705:18;;:::i;:::-;3755:7;3745:8;3741:22;3738:55;;;3775:16;;;;3738:55;3854:22;;;;3814:15;;;;3616:270;;;3620:3;3470:422;;;;;:::o;3897:806::-;3946:5;3976:8;3966:80;;-1:-1:-1;4017:1:1;4031:5;;3966:80;4065:4;4055:76;;-1:-1:-1;4102:1:1;4116:5;;4055:76;4147:4;4165:1;4160:59;;;;4233:1;4228:130;;;;4140:218;;4160:59;4190:1;4181:10;;4204:5;;;4228:130;4265:3;4255:8;4252:17;4249:43;;;4272:18;;:::i;:::-;-1:-1:-1;;4328:1:1;4314:16;;4343:5;;4140:218;;4442:2;4432:8;4429:16;4423:3;4417:4;4414:13;4410:36;4404:2;4394:8;4391:16;4386:2;4380:4;4377:12;4373:35;4370:77;4367:159;;;-1:-1:-1;4479:19:1;;;4511:5;;4367:159;4558:34;4583:8;4577:4;4558:34;:::i;:::-;4628:6;4624:1;4620:6;4616:19;4607:7;4604:32;4601:58;;;4639:18;;:::i;:::-;4677:20;;3897:806;-1:-1:-1;;;3897:806:1:o;4708:140::-;4766:5;4795:47;4836:4;4826:8;4822:19;4816:4;4795:47;:::i;4853:168::-;4926:9;;;4957;;4974:15;;;4968:22;;4954:37;4944:71;;4995:18;;:::i;5445:397::-;5647:2;5629:21;;;5686:2;5666:18;;;5659:30;5725:34;5720:2;5705:18;;5698:62;-1:-1:-1;;;5791:2:1;5776:18;;5769:31;5832:3;5817:19;;5445:397::o;6198:251::-;6268:6;6321:2;6309:9;6300:7;6296:23;6292:32;6289:52;;;6337:1;6334;6327:12;6289:52;6369:9;6363:16;6388:31;6413:5;6388:31;:::i;7375:306::-;7463:6;7471;7479;7532:2;7520:9;7511:7;7507:23;7503:32;7500:52;;;7548:1;7545;7538:12;7500:52;7577:9;7571:16;7561:26;;7627:2;7616:9;7612:18;7606:25;7596:35;;7671:2;7660:9;7656:18;7650:25;7640:35;;7375:306;;;;;:::o;7965:277::-;8032:6;8085:2;8073:9;8064:7;8060:23;8056:32;8053:52;;;8101:1;8098;8091:12;8053:52;8133:9;8127:16;8186:5;8179:13;8172:21;8165:5;8162:32;8152:60;;8208:1;8205;8198:12;8457:217;8497:1;8523;8513:132;;8567:10;8562:3;8558:20;8555:1;8548:31;8602:4;8599:1;8592:15;8630:4;8627:1;8620:15;8513:132;-1:-1:-1;8659:9:1;;8457:217::o;11371:125::-;11436:9;;;11457:10;;;11454:36;;;11470:18;;:::i;12405:127::-;12466:10;12461:3;12457:20;12454:1;12447:31;12497:4;12494:1;12487:15;12521:4;12518:1;12511:15;12537:980;12799:4;12847:3;12836:9;12832:19;12878:6;12867:9;12860:25;12904:2;12942:6;12937:2;12926:9;12922:18;12915:34;12985:3;12980:2;12969:9;12965:18;12958:31;13009:6;13044;13038:13;13075:6;13067;13060:22;13113:3;13102:9;13098:19;13091:26;;13152:2;13144:6;13140:15;13126:29;;13173:1;13183:195;13197:6;13194:1;13191:13;13183:195;;;13262:13;;-1:-1:-1;;;;;13258:39:1;13246:52;;13353:15;;;;13318:12;;;;13294:1;13212:9;13183:195;;;-1:-1:-1;;;;;;;13434:32:1;;;;13429:2;13414:18;;13407:60;-1:-1:-1;;;13498:3:1;13483:19;13476:35;13395:3;12537:980;-1:-1:-1;;;12537:980:1:o;13522:128::-;13589:9;;;13610:11;;;13607:37;;;13624:18;;:::i

Swarm Source

ipfs://f5eda02ec3d0658f7e2472a5075d6cf7aa6bd6f9811d771556c138fe8f2bac8b

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.