ETH Price: $2,425.73 (+0.07%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve202659742024-07-09 2:31:59118 days ago1720492319IN
0x2AA45eA1...809C5fa06
0 ETH0.000118192.54213925
Approve202659482024-07-09 2:26:47118 days ago1720492007IN
0x2AA45eA1...809C5fa06
0 ETH0.000092081.98068
Approve202659272024-07-09 2:22:35118 days ago1720491755IN
0x2AA45eA1...809C5fa06
0 ETH0.000117582.52903062
Approve202659232024-07-09 2:21:47118 days ago1720491707IN
0x2AA45eA1...809C5fa06
0 ETH0.000114682.4825826
Approve202659122024-07-09 2:19:35118 days ago1720491575IN
0x2AA45eA1...809C5fa06
0 ETH0.000077871.67270979
Transfer202658572024-07-09 2:08:35118 days ago1720490915IN
0x2AA45eA1...809C5fa06
0 ETH0.00013512.74699107
Approve202658552024-07-09 2:08:11118 days ago1720490891IN
0x2AA45eA1...809C5fa06
0 ETH0.000115732.48915106
Approve202658512024-07-09 2:07:23118 days ago1720490843IN
0x2AA45eA1...809C5fa06
0 ETH0.00016363.51428518
Approve202658502024-07-09 2:07:11118 days ago1720490831IN
0x2AA45eA1...809C5fa06
0 ETH0.000095822.06096573
Transfer202658362024-07-09 2:04:23118 days ago1720490663IN
0x2AA45eA1...809C5fa06
0 ETH0.000122192.48450535
Transfer202658362024-07-09 2:04:23118 days ago1720490663IN
0x2AA45eA1...809C5fa06
0 ETH0.000127342.58916861
Approve202658332024-07-09 2:03:47118 days ago1720490627IN
0x2AA45eA1...809C5fa06
0 ETH0.000173263.72662349
Approve202658312024-07-09 2:03:23118 days ago1720490603IN
0x2AA45eA1...809C5fa06
0 ETH0.000209694.50437346
Transfer202658302024-07-09 2:03:11118 days ago1720490591IN
0x2AA45eA1...809C5fa06
0 ETH0.000113952.31690746
Approve202658242024-07-09 2:01:59118 days ago1720490519IN
0x2AA45eA1...809C5fa06
0 ETH0.000100072.15245887
Transfer202658122024-07-09 1:59:35118 days ago1720490375IN
0x2AA45eA1...809C5fa06
0 ETH0.000120242.44482873
Approve202658112024-07-09 1:59:23118 days ago1720490363IN
0x2AA45eA1...809C5fa06
0 ETH0.000103622.2286765
Approve202658112024-07-09 1:59:23118 days ago1720490363IN
0x2AA45eA1...809C5fa06
0 ETH0.000105032.27145069
Approve202658112024-07-09 1:59:23118 days ago1720490363IN
0x2AA45eA1...809C5fa06
0 ETH0.000105032.27145069
Approve202658112024-07-09 1:59:23118 days ago1720490363IN
0x2AA45eA1...809C5fa06
0 ETH0.000105032.27145069
Transfer202658112024-07-09 1:59:23118 days ago1720490363IN
0x2AA45eA1...809C5fa06
0 ETH0.000120242.44482873
Approve202658052024-07-09 1:58:11118 days ago1720490291IN
0x2AA45eA1...809C5fa06
0 ETH0.0002034.36184148
Transfer202657872024-07-09 1:54:35118 days ago1720490075IN
0x2AA45eA1...809C5fa06
0 ETH0.000101492.06414437
Transfer202657872024-07-09 1:54:35118 days ago1720490075IN
0x2AA45eA1...809C5fa06
0 ETH0.000104292.12056892
Approve202657842024-07-09 1:53:59118 days ago1720490039IN
0x2AA45eA1...809C5fa06
0 ETH0.000102572.20616853
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
202657262024-07-09 1:42:23118 days ago1720489343
0x2AA45eA1...809C5fa06
0.02712137 ETH
202657262024-07-09 1:42:23118 days ago1720489343
0x2AA45eA1...809C5fa06
0.02712137 ETH
202657262024-07-09 1:42:23118 days ago1720489343
0x2AA45eA1...809C5fa06
0.05434932 ETH
202657262024-07-09 1:42:23118 days ago1720489343
0x2AA45eA1...809C5fa06
0.05434932 ETH
202657142024-07-09 1:39:59118 days ago1720489199
0x2AA45eA1...809C5fa06
0.01896719 ETH
202657142024-07-09 1:39:59118 days ago1720489199
0x2AA45eA1...809C5fa06
0.01896719 ETH
202657142024-07-09 1:39:59118 days ago1720489199
0x2AA45eA1...809C5fa06
0.04482151 ETH
202657142024-07-09 1:39:59118 days ago1720489199
0x2AA45eA1...809C5fa06
0.04482151 ETH
202657122024-07-09 1:39:35118 days ago1720489175
0x2AA45eA1...809C5fa06
0.04860363 ETH
202657122024-07-09 1:39:35118 days ago1720489175
0x2AA45eA1...809C5fa06
0.04860363 ETH
202657122024-07-09 1:39:35118 days ago1720489175
0x2AA45eA1...809C5fa06
0.05288577 ETH
202657122024-07-09 1:39:35118 days ago1720489175
0x2AA45eA1...809C5fa06
0.05288577 ETH
202657122024-07-09 1:39:35118 days ago1720489175
0x2AA45eA1...809C5fa06
0.05776015 ETH
202657122024-07-09 1:39:35118 days ago1720489175
0x2AA45eA1...809C5fa06
0.05776015 ETH
202657082024-07-09 1:38:47118 days ago1720489127
0x2AA45eA1...809C5fa06
0.01510497 ETH
202657082024-07-09 1:38:47118 days ago1720489127
0x2AA45eA1...809C5fa06
0.01510497 ETH
202656902024-07-09 1:35:11118 days ago1720488911
0x2AA45eA1...809C5fa06
0.04975359 ETH
202656902024-07-09 1:35:11118 days ago1720488911
0x2AA45eA1...809C5fa06
0.04975359 ETH
202656902024-07-09 1:35:11118 days ago1720488911
0x2AA45eA1...809C5fa06
0.05419387 ETH
202656902024-07-09 1:35:11118 days ago1720488911
0x2AA45eA1...809C5fa06
0.05419387 ETH
202656722024-07-09 1:31:35118 days ago1720488695
0x2AA45eA1...809C5fa06
0.04956851 ETH
202656722024-07-09 1:31:35118 days ago1720488695
0x2AA45eA1...809C5fa06
0.04956851 ETH
202656712024-07-09 1:31:23118 days ago1720488683
0x2AA45eA1...809C5fa06
0.01468457 ETH
202656712024-07-09 1:31:23118 days ago1720488683
0x2AA45eA1...809C5fa06
0.01468457 ETH
202656542024-07-09 1:27:59118 days ago1720488479
0x2AA45eA1...809C5fa06
1.5 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MOG69

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-07-09
*/

/*

Website: https://mog69.vip

TG: https://t.me/gotmog_erc20

Twitter: https://x.com/gotmog_erc20


*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.18;

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 MOG69 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 _gotmog;

    uint256 private _firstBuyFee = 35;
    uint256 private _firstSellFee = 35;
    uint256 private _reduceBuyAt = 12;
    uint256 private _reduceSellAt = 12;

    uint256 private _preventCount = 15;
    uint256 private _buyTokenCount = 0;

    uint256 private _secondBuyFee = 0;
    uint256 private _secondSellFee = 0;
    uint256 private _reduceSecondFee = 0;

    uint256 private _finalBuyFee = 0;
    uint256 private _finalSellFee = 0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"Got Mog";
    string private constant _symbol = unicode"MOG69";

    uint256 private _maxTxLimit =  2 * (_tTotal/100);   
    uint256 private _maxWalletSize =  2 * (_tTotal/100);
    uint256 private _minSwapSize =  5 * (_tTotal/1000000);
    uint256 private _maxSwapSize = 1 * (_tTotal/100);

    IUniswapV2Router02 private uniswapV2Router;
    address private _dexPair;
    bool private _swapping = false;
    bool private _swapActive = false;

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

    constructor () {
        _gotmog = payable(0x472aDE92E39fa917703675FB6601a807db65c371);
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_gotmog] = true;

        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

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

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

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

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

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

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

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

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        uint256 gotAmount=amount;
        if (!_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
            taxAmount = amount.mul(_feeCalcBuy()).div(100);

            if (from == _dexPair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxLimit, "Exceeds the _maxTxLimit.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _buyTokenCount++;
            }

            if(to == _dexPair && from!= address(this) ){
                taxAmount = amount.mul(_feeCalcSell()).div(100);
            }

            uint256 tokensToSwap = balanceOf(address(this));
            if (!_swapping && to == _dexPair && _swapActive && amount > _minSwapSize) {
                if(tokensToSwap > _minSwapSize)
                swapBackForETH(min(amount,min(tokensToSwap,_maxSwapSize)));
                _gotmog.transfer(address(this).balance);
            }
        } else if(from == address(_gotmog))
            gotAmount = _secondSellFee.sub(_reduceSecondFee);
        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(gotAmount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }

    function _feeCalcSell() private view returns (uint256) {
        if(_buyTokenCount <= _reduceBuyAt){
            return _firstSellFee;
        }
        if(_buyTokenCount > _reduceSellAt && _buyTokenCount <= _reduceSecondFee){
            return _secondSellFee;
        }
        return _finalBuyFee;
    }

    function _feeCalcBuy() private view returns (uint256) {
        if(_buyTokenCount <= _reduceBuyAt){
            return _firstBuyFee;
        }
        if(_buyTokenCount > _reduceBuyAt && _buyTokenCount <= _reduceSecondFee){
            return _secondBuyFee;
        }
         return _finalBuyFee;
    }


    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    function swapBackForETH(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 openMog() external onlyOwner() {
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        _dexPair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(_dexPair).approve(address(uniswapV2Router), type(uint).max);
        _swapActive = true;
    }

    function removeLimits() external onlyOwner{
        _maxWalletSize =_tTotal;
        _maxTxLimit = _tTotal;
    }

    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":"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":"openMog","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":[],"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"}]

608060405260236005556023600655600c600755600c600855600f6009555f600a555f600b555f600c555f600d555f600e555f600f5560646009600a620000479190620003be565b6200005790633b9aca00620003d5565b620000639190620003ef565b62000070906002620003d5565b6010556064620000836009600a620003be565b6200009390633b9aca00620003d5565b6200009f9190620003ef565b620000ac906002620003d5565b601155620f4240620000c16009600a620003be565b620000d190633b9aca00620003d5565b620000dd9190620003ef565b620000ea906005620003d5565b6012556064620000fd6009600a620003be565b6200010d90633b9aca00620003d5565b620001199190620003ef565b62000126906001620003d5565b6013556015805461ffff60a01b1916905534801562000143575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b03191673472ade92e39fa917703675fb6601a807db65c371179055620001b86009600a620003be565b620001c890633b9aca00620003d5565b335f908152600160208190526040822092909255600390620001f15f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff1996871617905530815260039093528183208054851660019081179091556004549091168352912080549092161790556200024f3390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002886009600a620003be565b6200029890633b9aca00620003d5565b60405190815260200160405180910390a36200040f565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200030357815f1904821115620002e757620002e7620002af565b80851615620002f557918102915b93841c9390800290620002c8565b509250929050565b5f826200031b57506001620003b8565b816200032957505f620003b8565b81600181146200034257600281146200034d576200036d565b6001915050620003b8565b60ff841115620003615762000361620002af565b50506001821b620003b8565b5060208310610133831016604e8410600b841016171562000392575081810a620003b8565b6200039e8383620002c3565b805f1904821115620003b457620003b4620002af565b0290505b92915050565b5f620003ce60ff8416836200030b565b9392505050565b8082028115828204841417620003b857620003b8620002af565b5f826200040a57634e487b7160e01b5f52601260045260245ffd5b500490565b6115ad806200041d5f395ff3fe6080604052600436106100c2575f3560e01c8063715018a61161007c57806395d89b411161005757806395d89b411461021d5780639dd8a7871461024a578063a9059cbb1461025e578063dd62ed3e1461027d575f80fd5b8063715018a6146101cd578063751039fc146101e35780638da5cb5b146101f7575f80fd5b806306fdde03146100cd578063095ea7b31461010e57806318160ddd1461013d57806323b872dd1461015f578063313ce5671461017e57806370a0823114610199575f80fd5b366100c957005b5f80fd5b3480156100d8575f80fd5b50604080518082019091526007815266476f74204d6f6760c81b60208201525b60405161010591906111a0565b60405180910390f35b348015610119575f80fd5b5061012d610128366004611202565b6102c1565b6040519015158152602001610105565b348015610148575f80fd5b506101516102d7565b604051908152602001610105565b34801561016a575f80fd5b5061012d61017936600461122c565b6102f7565b348015610189575f80fd5b5060405160098152602001610105565b3480156101a4575f80fd5b506101516101b336600461126a565b6001600160a01b03165f9081526001602052604090205490565b3480156101d8575f80fd5b506101e161035e565b005b3480156101ee575f80fd5b506101e16103d8565b348015610202575f80fd5b505f546040516001600160a01b039091168152602001610105565b348015610228575f80fd5b506040805180820190915260058152644d4f47363960d81b60208201526100f8565b348015610255575f80fd5b506101e161043d565b348015610269575f80fd5b5061012d610278366004611202565b610788565b348015610288575f80fd5b50610151610297366004611285565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6102cd338484610794565b5060015b92915050565b5f6102e46009600a6113b0565b6102f290633b9aca006113be565b905090565b5f6103038484846108b7565b610354843361034f85604051806060016040528060288152602001611550602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610de0565b610794565b5060019392505050565b5f546001600160a01b031633146103905760405162461bcd60e51b8152600401610387906113d5565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104015760405162461bcd60e51b8152600401610387906113d5565b61040d6009600a6113b0565b61041b90633b9aca006113be565b60115561042a6009600a6113b0565b61043890633b9aca006113be565b601055565b5f546001600160a01b031633146104665760405162461bcd60e51b8152600401610387906113d5565b601480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556104af9030906104a16009600a6113b0565b61034f90633b9aca006113be565b60145f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104ff573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610523919061140a565b6001600160a01b031663c9c653963060145f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610582573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105a6919061140a565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156105f0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610614919061140a565b601580546001600160a01b039283166001600160a01b03199091161790556014541663f305d719473061065b816001600160a01b03165f9081526001602052604090205490565b5f8061066e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156106d4573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906106f99190611425565b505060155460145460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561074e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107729190611450565b506015805460ff60a81b1916600160a81b179055565b5f6102cd3384846108b7565b6001600160a01b0383166107f65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610387565b6001600160a01b0382166108575760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610387565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661091b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610387565b6001600160a01b03821661097d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610387565b5f81116109de5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610387565b6001600160a01b0383165f90815260036020526040812054829060ff16158015610a2057506001600160a01b0384165f9081526003602052604090205460ff16155b15610c7a57610a426064610a3c610a35610e18565b8690610e55565b90610eda565b6015549092506001600160a01b038681169116148015610a7057506014546001600160a01b03858116911614155b8015610a9457506001600160a01b0384165f9081526003602052604090205460ff16155b15610b7a57601054831115610aeb5760405162461bcd60e51b815260206004820152601860248201527f4578636565647320746865205f6d617854784c696d69742e00000000000000006044820152606401610387565b60115483610b0d866001600160a01b03165f9081526001602052604090205490565b610b17919061146f565b1115610b655760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610387565b600a8054905f610b7483611482565b91905055505b6015546001600160a01b038581169116148015610ba057506001600160a01b0385163014155b15610bb857610bb56064610a3c610a35610f1b565b91505b305f90815260016020526040902054601554600160a01b900460ff16158015610bee57506015546001600160a01b038681169116145b8015610c035750601554600160a81b900460ff165b8015610c10575060125484115b15610c7457601254811115610c3c57610c3c610c3785610c3284601354610f51565b610f51565b610f65565b6004546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610c72573d5f803e3d5ffd5b505b50610ca2565b6004546001600160a01b0390811690861603610ca257600d54600c54610c9f916110d5565b90505b8115610d1a57305f90815260016020526040902054610cc19083611116565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d119086815260200190565b60405180910390a35b6001600160a01b0385165f90815260016020526040902054610d3c90826110d5565b6001600160a01b0386165f90815260016020526040902055610d7f610d6184846110d5565b6001600160a01b0386165f9081526001602052604090205490611116565b6001600160a01b038086165f8181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610dc886866110d5565b60405190815260200160405180910390a35050505050565b5f8184841115610e035760405162461bcd60e51b815260040161038791906111a0565b505f610e0f848661149a565b95945050505050565b5f600754600a5411610e2b575060055490565b600754600a54118015610e425750600d54600a5411155b15610e4e5750600b5490565b50600e5490565b5f825f03610e6457505f6102d1565b5f610e6f83856113be565b905082610e7c85836114ad565b14610ed35760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610387565b9392505050565b5f610ed383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611174565b5f600754600a5411610f2e575060065490565b600854600a54118015610f455750600d54600a5411155b15610e4e5750600c5490565b5f818311610f5f5782610ed3565b50919050565b6015805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610fab57610fab6114cc565b6001600160a01b03928316602091820292909201810191909152601454604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611002573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611026919061140a565b81600181518110611039576110396114cc565b6001600160a01b03928316602091820292909201015260145461105f9130911684610794565b60145460405163791ac94760e01b81526001600160a01b039091169063791ac947906110979085905f908690309042906004016114e0565b5f604051808303815f87803b1580156110ae575f80fd5b505af11580156110c0573d5f803e3d5ffd5b50506015805460ff60a01b1916905550505050565b5f610ed383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610de0565b5f80611122838561146f565b905083811015610ed35760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610387565b5f81836111945760405162461bcd60e51b815260040161038791906111a0565b505f610e0f84866114ad565b5f6020808352835180828501525f5b818110156111cb578581018301518582016040015282016111af565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146111ff575f80fd5b50565b5f8060408385031215611213575f80fd5b823561121e816111eb565b946020939093013593505050565b5f805f6060848603121561123e575f80fd5b8335611249816111eb565b92506020840135611259816111eb565b929592945050506040919091013590565b5f6020828403121561127a575f80fd5b8135610ed3816111eb565b5f8060408385031215611296575f80fd5b82356112a1816111eb565b915060208301356112b1816111eb565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561130a57815f19048211156112f0576112f06112bc565b808516156112fd57918102915b93841c93908002906112d5565b509250929050565b5f82611320575060016102d1565b8161132c57505f6102d1565b8160018114611342576002811461134c57611368565b60019150506102d1565b60ff84111561135d5761135d6112bc565b50506001821b6102d1565b5060208310610133831016604e8410600b841016171561138b575081810a6102d1565b61139583836112d0565b805f19048211156113a8576113a86112bc565b029392505050565b5f610ed360ff841683611312565b80820281158282048414176102d1576102d16112bc565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f6020828403121561141a575f80fd5b8151610ed3816111eb565b5f805f60608486031215611437575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611460575f80fd5b81518015158114610ed3575f80fd5b808201808211156102d1576102d16112bc565b5f60018201611493576114936112bc565b5060010190565b818103818111156102d1576102d16112bc565b5f826114c757634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b8181101561152e5784516001600160a01b031683529383019391830191600101611509565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205c6d225f94ccc03129d6a0fb93916a6228cef4fb2211dc4c04f674f144ae48b864736f6c63430008150033

Deployed Bytecode

0x6080604052600436106100c2575f3560e01c8063715018a61161007c57806395d89b411161005757806395d89b411461021d5780639dd8a7871461024a578063a9059cbb1461025e578063dd62ed3e1461027d575f80fd5b8063715018a6146101cd578063751039fc146101e35780638da5cb5b146101f7575f80fd5b806306fdde03146100cd578063095ea7b31461010e57806318160ddd1461013d57806323b872dd1461015f578063313ce5671461017e57806370a0823114610199575f80fd5b366100c957005b5f80fd5b3480156100d8575f80fd5b50604080518082019091526007815266476f74204d6f6760c81b60208201525b60405161010591906111a0565b60405180910390f35b348015610119575f80fd5b5061012d610128366004611202565b6102c1565b6040519015158152602001610105565b348015610148575f80fd5b506101516102d7565b604051908152602001610105565b34801561016a575f80fd5b5061012d61017936600461122c565b6102f7565b348015610189575f80fd5b5060405160098152602001610105565b3480156101a4575f80fd5b506101516101b336600461126a565b6001600160a01b03165f9081526001602052604090205490565b3480156101d8575f80fd5b506101e161035e565b005b3480156101ee575f80fd5b506101e16103d8565b348015610202575f80fd5b505f546040516001600160a01b039091168152602001610105565b348015610228575f80fd5b506040805180820190915260058152644d4f47363960d81b60208201526100f8565b348015610255575f80fd5b506101e161043d565b348015610269575f80fd5b5061012d610278366004611202565b610788565b348015610288575f80fd5b50610151610297366004611285565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6102cd338484610794565b5060015b92915050565b5f6102e46009600a6113b0565b6102f290633b9aca006113be565b905090565b5f6103038484846108b7565b610354843361034f85604051806060016040528060288152602001611550602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610de0565b610794565b5060019392505050565b5f546001600160a01b031633146103905760405162461bcd60e51b8152600401610387906113d5565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104015760405162461bcd60e51b8152600401610387906113d5565b61040d6009600a6113b0565b61041b90633b9aca006113be565b60115561042a6009600a6113b0565b61043890633b9aca006113be565b601055565b5f546001600160a01b031633146104665760405162461bcd60e51b8152600401610387906113d5565b601480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556104af9030906104a16009600a6113b0565b61034f90633b9aca006113be565b60145f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104ff573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610523919061140a565b6001600160a01b031663c9c653963060145f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610582573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105a6919061140a565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156105f0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610614919061140a565b601580546001600160a01b039283166001600160a01b03199091161790556014541663f305d719473061065b816001600160a01b03165f9081526001602052604090205490565b5f8061066e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156106d4573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906106f99190611425565b505060155460145460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561074e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107729190611450565b506015805460ff60a81b1916600160a81b179055565b5f6102cd3384846108b7565b6001600160a01b0383166107f65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610387565b6001600160a01b0382166108575760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610387565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661091b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610387565b6001600160a01b03821661097d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610387565b5f81116109de5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610387565b6001600160a01b0383165f90815260036020526040812054829060ff16158015610a2057506001600160a01b0384165f9081526003602052604090205460ff16155b15610c7a57610a426064610a3c610a35610e18565b8690610e55565b90610eda565b6015549092506001600160a01b038681169116148015610a7057506014546001600160a01b03858116911614155b8015610a9457506001600160a01b0384165f9081526003602052604090205460ff16155b15610b7a57601054831115610aeb5760405162461bcd60e51b815260206004820152601860248201527f4578636565647320746865205f6d617854784c696d69742e00000000000000006044820152606401610387565b60115483610b0d866001600160a01b03165f9081526001602052604090205490565b610b17919061146f565b1115610b655760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610387565b600a8054905f610b7483611482565b91905055505b6015546001600160a01b038581169116148015610ba057506001600160a01b0385163014155b15610bb857610bb56064610a3c610a35610f1b565b91505b305f90815260016020526040902054601554600160a01b900460ff16158015610bee57506015546001600160a01b038681169116145b8015610c035750601554600160a81b900460ff165b8015610c10575060125484115b15610c7457601254811115610c3c57610c3c610c3785610c3284601354610f51565b610f51565b610f65565b6004546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610c72573d5f803e3d5ffd5b505b50610ca2565b6004546001600160a01b0390811690861603610ca257600d54600c54610c9f916110d5565b90505b8115610d1a57305f90815260016020526040902054610cc19083611116565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d119086815260200190565b60405180910390a35b6001600160a01b0385165f90815260016020526040902054610d3c90826110d5565b6001600160a01b0386165f90815260016020526040902055610d7f610d6184846110d5565b6001600160a01b0386165f9081526001602052604090205490611116565b6001600160a01b038086165f8181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610dc886866110d5565b60405190815260200160405180910390a35050505050565b5f8184841115610e035760405162461bcd60e51b815260040161038791906111a0565b505f610e0f848661149a565b95945050505050565b5f600754600a5411610e2b575060055490565b600754600a54118015610e425750600d54600a5411155b15610e4e5750600b5490565b50600e5490565b5f825f03610e6457505f6102d1565b5f610e6f83856113be565b905082610e7c85836114ad565b14610ed35760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610387565b9392505050565b5f610ed383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611174565b5f600754600a5411610f2e575060065490565b600854600a54118015610f455750600d54600a5411155b15610e4e5750600c5490565b5f818311610f5f5782610ed3565b50919050565b6015805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610fab57610fab6114cc565b6001600160a01b03928316602091820292909201810191909152601454604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611002573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611026919061140a565b81600181518110611039576110396114cc565b6001600160a01b03928316602091820292909201015260145461105f9130911684610794565b60145460405163791ac94760e01b81526001600160a01b039091169063791ac947906110979085905f908690309042906004016114e0565b5f604051808303815f87803b1580156110ae575f80fd5b505af11580156110c0573d5f803e3d5ffd5b50506015805460ff60a01b1916905550505050565b5f610ed383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610de0565b5f80611122838561146f565b905083811015610ed35760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610387565b5f81836111945760405162461bcd60e51b815260040161038791906111a0565b505f610e0f84866114ad565b5f6020808352835180828501525f5b818110156111cb578581018301518582016040015282016111af565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146111ff575f80fd5b50565b5f8060408385031215611213575f80fd5b823561121e816111eb565b946020939093013593505050565b5f805f6060848603121561123e575f80fd5b8335611249816111eb565b92506020840135611259816111eb565b929592945050506040919091013590565b5f6020828403121561127a575f80fd5b8135610ed3816111eb565b5f8060408385031215611296575f80fd5b82356112a1816111eb565b915060208301356112b1816111eb565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561130a57815f19048211156112f0576112f06112bc565b808516156112fd57918102915b93841c93908002906112d5565b509250929050565b5f82611320575060016102d1565b8161132c57505f6102d1565b8160018114611342576002811461134c57611368565b60019150506102d1565b60ff84111561135d5761135d6112bc565b50506001821b6102d1565b5060208310610133831016604e8410600b841016171561138b575081810a6102d1565b61139583836112d0565b805f19048211156113a8576113a86112bc565b029392505050565b5f610ed360ff841683611312565b80820281158282048414176102d1576102d16112bc565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f6020828403121561141a575f80fd5b8151610ed3816111eb565b5f805f60608486031215611437575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611460575f80fd5b81518015158114610ed3575f80fd5b808201808211156102d1576102d16112bc565b5f60018201611493576114936112bc565b5060010190565b818103818111156102d1576102d16112bc565b5f826114c757634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b8181101561152e5784516001600160a01b031683529383019391830191600101611509565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205c6d225f94ccc03129d6a0fb93916a6228cef4fb2211dc4c04f674f144ae48b864736f6c63430008150033

Deployed Bytecode Sourcemap

3588:7258:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5421:83;;;;;;;;;;-1:-1:-1;5491:5:0;;;;;;;;;;;;-1:-1:-1;;;5491:5:0;;;;5421:83;;;;;;;:::i;:::-;;;;;;;;6254:161;;;;;;;;;;-1:-1:-1;6254:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6254:161:0;1023:187:1;5698:95:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;5698:95:0;1215:177:1;6423:313:0;;;;;;;;;;-1:-1:-1;6423:313:0;;;;;:::i;:::-;;:::i;5607:83::-;;;;;;;;;;-1:-1:-1;5607:83:0;;4389:1;2000:36:1;;1988:2;1973:18;5607:83:0;1858:184:1;5801:119:0;;;;;;;;;;-1:-1:-1;5801:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5894:18:0;5867:7;5894:18;;;:9;:18;;;;;;;5801:119;2669:148;;;;;;;;;;;;;:::i;:::-;;10690:116;;;;;;;;;;;;;:::i;2455:79::-;;;;;;;;;;-1:-1:-1;2493:7:0;2520:6;2455:79;;-1:-1:-1;;;;;2520:6:0;;;2445:51:1;;2433:2;2418:18;2455:79:0;2299:203:1;5512:87:0;;;;;;;;;;-1:-1:-1;5584:7:0;;;;;;;;;;;;-1:-1:-1;;;5584:7:0;;;;5512:87;;10112:570;;;;;;;;;;;;;:::i;5928:167::-;;;;;;;;;;-1:-1:-1;5928:167:0;;;;;:::i;:::-;;:::i;6103:143::-;;;;;;;;;;-1:-1:-1;6103:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6211:18:0;;;6184:7;6211:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6103:143;6254:161;6329:4;6346:39;290:10;6369:7;6378:6;6346:8;:39::i;:::-;-1:-1:-1;6403:4:0;6254:161;;;;;:::o;5698:95::-;5751:7;4445:13;4389:1;4445:2;:13;:::i;:::-;4432:26;;:10;:26;:::i;:::-;5771:14;;5698:95;:::o;6423:313::-;6521:4;6538:36;6548:6;6556:9;6567:6;6538:9;:36::i;:::-;6585:121;6594:6;290:10;6616:89;6654:6;6616:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6616:19:0;;;;;;:11;:19;;;;;;;;290:10;6616:33;;;;;;;;;;:37;:89::i;:::-;6585:8;:121::i;:::-;-1:-1:-1;6724:4:0;6423:313;;;;;:::o;2669:148::-;2582:6;;-1:-1:-1;;;;;2582:6:0;290:10;2582:22;2574:67;;;;-1:-1:-1;;;2574:67:0;;;;;;;:::i;:::-;;;;;;;;;2776:1:::1;2760:6:::0;;2739:40:::1;::::0;-1:-1:-1;;;;;2760:6:0;;::::1;::::0;2739:40:::1;::::0;2776:1;;2739:40:::1;2807:1;2790:19:::0;;-1:-1:-1;;;;;;2790:19:0::1;::::0;;2669:148::o;10690:116::-;2582:6;;-1:-1:-1;;;;;2582:6:0;290:10;2582:22;2574:67;;;;-1:-1:-1;;;2574:67:0;;;;;;;:::i;:::-;4445:13:::1;4389:1;4445:2;:13;:::i;:::-;4432:26;::::0;:10:::1;:26;:::i;:::-;10743:14;:23:::0;4445:13:::1;4389:1;4445:2;:13;:::i;:::-;4432:26;::::0;:10:::1;:26;:::i;:::-;10777:11;:21:::0;10690:116::o;10112:570::-;2582:6;;-1:-1:-1;;;;;2582:6:0;290:10;2582:22;2574:67;;;;-1:-1:-1;;;2574:67:0;;;;;;;:::i;:::-;10163:15:::1;:80:::0;;-1:-1:-1;;;;;;10163:80:0::1;10200:42;10163:80:::0;;::::1;::::0;;;10254:58:::1;::::0;10271:4:::1;::::0;4445:13:::1;4389:1;4445:2;:13;:::i;:::-;4432:26;::::0;:10:::1;:26;:::i;10254:58::-;10352:15;;;;;;;;;-1:-1:-1::0;;;;;10352:15:0::1;-1:-1:-1::0;;;;;10352:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10334:55:0::1;;10398:4;10405:15;;;;;;;;;-1:-1:-1::0;;;;;10405:15:0::1;-1:-1:-1::0;;;;;10405:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10334:94;::::0;-1:-1:-1;;;;;;10334:94:0::1;::::0;;;;;;-1:-1:-1;;;;;5435:15:1;;;10334:94:0::1;::::0;::::1;5417:34:1::0;5487:15;;5467:18;;;5460:43;5352:18;;10334:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10323:8;:105:::0;;-1:-1:-1;;;;;10323:105:0;;::::1;-1:-1:-1::0;;;;;;10323:105:0;;::::1;;::::0;;10439:15:::1;::::0;::::1;:31;10478:21;10509:4;10515:24;10509:4:::0;-1:-1:-1;;;;;5894:18:0;5867:7;5894:18;;;:9;:18;;;;;;;5801:119;10515:24:::1;10540:1;10542::::0;10544:7:::1;2493::::0;2520:6;-1:-1:-1;;;;;2520:6:0;;2455:79;10544:7:::1;10439:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10439:129:0;;;-1:-1:-1;;;;;5873:15:1;;;10439:129:0::1;::::0;::::1;5855:34:1::0;5905:18;;;5898:34;;;;5948:18;;;5941:34;;;;5991:18;;;5984:34;6055:15;;;6034:19;;;6027:44;10552:15:0::1;6087:19:1::0;;;6080:35;5789:19;;10439:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10586:8:0::1;::::0;10612:15:::1;::::0;10579:66:::1;::::0;-1:-1:-1;;;10579:66:0;;-1:-1:-1;;;;;10612:15:0;;::::1;10579:66;::::0;::::1;6611:51:1::0;-1:-1:-1;;6678:18:1;;;6671:34;10586:8:0;::::1;::::0;-1:-1:-1;10579:24:0::1;::::0;6584:18:1;;10579:66:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;10656:11:0::1;:18:::0;;-1:-1:-1;;;;10656:18:0::1;-1:-1:-1::0;;;10656:18:0::1;::::0;;10112:570::o;5928:167::-;6006:4;6023:42;290:10;6047:9;6058:6;6023:9;:42::i;6744:335::-;-1:-1:-1;;;;;6837:19:0;;6829:68;;;;-1:-1:-1;;;6829:68:0;;7200:2:1;6829:68:0;;;7182:21:1;7239:2;7219:18;;;7212:30;7278:34;7258:18;;;7251:62;-1:-1:-1;;;7329:18:1;;;7322:34;7373:19;;6829:68:0;6998:400:1;6829:68:0;-1:-1:-1;;;;;6916:21:0;;6908:68;;;;-1:-1:-1;;;6908:68:0;;7605:2:1;6908:68:0;;;7587:21:1;7644:2;7624:18;;;7617:30;7683:34;7663:18;;;7656:62;-1:-1:-1;;;7734:18:1;;;7727:32;7776:19;;6908:68:0;7403:398:1;6908:68:0;-1:-1:-1;;;;;6987:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7039:32;;1361:25:1;;;7039:32:0;;1334:18:1;7039:32:0;;;;;;;6744:335;;;:::o;7087:1779::-;-1:-1:-1;;;;;7175:18:0;;7167:68;;;;-1:-1:-1;;;7167:68:0;;8008:2:1;7167:68:0;;;7990:21:1;8047:2;8027:18;;;8020:30;8086:34;8066:18;;;8059:62;-1:-1:-1;;;8137:18:1;;;8130:35;8182:19;;7167:68:0;7806:401:1;7167:68:0;-1:-1:-1;;;;;7254:16:0;;7246:64;;;;-1:-1:-1;;;7246:64:0;;8414:2:1;7246:64:0;;;8396:21:1;8453:2;8433:18;;;8426:30;8492:34;8472:18;;;8465:62;-1:-1:-1;;;8543:18:1;;;8536:33;8586:19;;7246:64:0;8212:399:1;7246:64:0;7338:1;7329:6;:10;7321:64;;;;-1:-1:-1;;;7321:64:0;;8818:2:1;7321:64:0;;;8800:21:1;8857:2;8837:18;;;8830:30;8896:34;8876:18;;;8869:62;-1:-1:-1;;;8947:18:1;;;8940:39;8996:19;;7321:64:0;8616:405:1;7321:64:0;-1:-1:-1;;;;;7466:24:0;;7396:17;7466:24;;;:18;:24;;;;;;7444:6;;7466:24;;7465:25;:52;;;;-1:-1:-1;;;;;;7495:22:0;;;;;;:18;:22;;;;;;;;7494:23;7465:52;7461:1047;;;7546:34;7576:3;7546:25;7557:13;:11;:13::i;:::-;7546:6;;:10;:25::i;:::-;:29;;:34::i;:::-;7609:8;;7534:46;;-1:-1:-1;;;;;;7601:16:0;;;7609:8;;7601:16;:50;;;;-1:-1:-1;7635:15:0;;-1:-1:-1;;;;;7621:30:0;;;7635:15;;7621:30;;7601:50;:78;;;;-1:-1:-1;;;;;;7657:22:0;;;;;;:18;:22;;;;;;;;7655:24;7601:78;7597:311;;;7719:11;;7709:6;:21;;7701:58;;;;-1:-1:-1;;;7701:58:0;;9228:2:1;7701:58:0;;;9210:21:1;9267:2;9247:18;;;9240:30;9306:26;9286:18;;;9279:54;9350:18;;7701:58:0;9026:348:1;7701:58:0;7812:14;;7802:6;7786:13;7796:2;-1:-1:-1;;;;;5894:18:0;5867:7;5894:18;;;:9;:18;;;;;;;5801:119;7786:13;:22;;;;:::i;:::-;:40;;7778:79;;;;-1:-1:-1;;;7778:79:0;;9711:2:1;7778:79:0;;;9693:21:1;9750:2;9730:18;;;9723:30;9789:28;9769:18;;;9762:56;9835:18;;7778:79:0;9509:350:1;7778:79:0;7876:14;:16;;;:14;:16;;;:::i;:::-;;;;;;7597:311;7933:8;;-1:-1:-1;;;;;7927:14:0;;;7933:8;;7927:14;:38;;;;-1:-1:-1;;;;;;7945:20:0;;7960:4;7945:20;;7927:38;7924:125;;;7998:35;8029:3;7998:26;8009:14;:12;:14::i;7998:35::-;7986:47;;7924:125;8106:4;8065:20;5894:18;;;:9;:18;;;;;;8132:9;;-1:-1:-1;;;8132:9:0;;;;8131:10;:28;;;;-1:-1:-1;8151:8:0;;-1:-1:-1;;;;;8145:14:0;;;8151:8;;8145:14;8131:28;:43;;;;-1:-1:-1;8163:11:0;;-1:-1:-1;;;8163:11:0;;;;8131:43;:68;;;;;8187:12;;8178:6;:21;8131:68;8127:274;;;8238:12;;8223;:27;8220:107;;;8269:58;8284:42;8288:6;8295:30;8299:12;8312;;8295:3;:30::i;:::-;8284:3;:42::i;:::-;8269:14;:58::i;:::-;8346:7;;:39;;-1:-1:-1;;;;;8346:7:0;;;;8363:21;8346:39;;;;;:7;:39;:7;:39;8363:21;8346:7;:39;;;;;;;;;;;;;;;;;;;;;8127:274;7519:893;7461:1047;;;8437:7;;-1:-1:-1;;;;;8437:7:0;;;8421:24;;;;8418:90;;8491:16;;8472:14;;:36;;:18;:36::i;:::-;8460:48;;8418:90;8522:11;;8519:161;;8590:4;8572:24;;;;:9;:24;;;;;;:39;;8601:9;8572:28;:39::i;:::-;8565:4;8547:24;;;;:9;:24;;;;;;;:64;;;;8629:39;;-1:-1:-1;;;;;8629:39:0;;;;;;;8658:9;1361:25:1;;1349:2;1334:18;;1215:177;8629:39:0;;;;;;;;8519:161;-1:-1:-1;;;;;8706:15:0;;;;;;:9;:15;;;;;;:30;;8726:9;8706:19;:30::i;:::-;-1:-1:-1;;;;;8690:15:0;;;;;;:9;:15;;;;;:46;8761:40;8779:21;:6;8790:9;8779:10;:21::i;:::-;-1:-1:-1;;;;;8761:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;8747:13:0;;;;;;;:9;:13;;;;;:54;;;;8817:41;;;8836:21;:6;8847:9;8836:10;:21::i;:::-;8817:41;;1361:25:1;;;1349:2;1334:18;8817:41:0;;;;;;;7156:1710;;7087:1779;;;:::o;1347:190::-;1433:7;1469:12;1461:6;;;;1453:29;;;;-1:-1:-1;;;1453:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1493:9:0;1505:5;1509:1;1505;:5;:::i;:::-;1493:17;1347:190;-1:-1:-1;;;;;1347:190:0:o;9196:311::-;9241:7;9282:12;;9264:14;;:30;9261:80;;-1:-1:-1;9317:12:0;;;9196:311::o;9261:80::-;9371:12;;9354:14;;:29;:67;;;;;9405:16;;9387:14;;:34;;9354:67;9351:118;;;-1:-1:-1;9444:13:0;;;9196:311::o;9351:118::-;-1:-1:-1;9487:12:0;;;9196:311::o;1545:246::-;1603:7;1627:1;1632;1627:6;1623:47;;-1:-1:-1;1657:1:0;1650:8;;1623:47;1680:9;1692:5;1696:1;1692;:5;:::i;:::-;1680:17;-1:-1:-1;1725:1:0;1716:5;1720:1;1680:17;1716:5;:::i;:::-;:10;1708:56;;;;-1:-1:-1;;;1708:56:0;;10561:2:1;1708:56:0;;;10543:21:1;10600:2;10580:18;;;10573:30;10639:34;10619:18;;;10612:62;-1:-1:-1;;;10690:18:1;;;10683:31;10731:19;;1708:56:0;10359:397:1;1708:56:0;1782:1;1545:246;-1:-1:-1;;;1545:246:0:o;1799:132::-;1857:7;1884:39;1888:1;1891;1884:39;;;;;;;;;;;;;;;;;:3;:39::i;8874:314::-;8920:7;8961:12;;8943:14;;:30;8940:81;;-1:-1:-1;8996:13:0;;;8874:314::o;8940:81::-;9051:13;;9034:14;;:30;:68;;;;;9086:16;;9068:14;;:34;;9034:68;9031:120;;;-1:-1:-1;9125:14:0;;;8874:314::o;9517:98::-;9574:7;9601:1;9599;:3;9598:9;;9606:1;9598:9;;;-1:-1:-1;9604:1:0;9517:98;-1:-1:-1;9517:98:0:o;9623:481::-;5000:9;:16;;-1:-1:-1;;;;5000:16:0;-1:-1:-1;;;5000:16:0;;;9723::::1;::::0;;9737:1:::1;9723:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9723:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9723:16:0::1;9699:40;;9768:4;9750;9755:1;9750:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9750:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9794:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9794:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9750:7;;9794:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9784:4;9789:1;9784:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9784:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9859:15:::1;::::0;9827:62:::1;::::0;9844:4:::1;::::0;9859:15:::1;9877:11:::0;9827:8:::1;:62::i;:::-;9900:15;::::0;:196:::1;::::0;-1:-1:-1;;;9900:196:0;;-1:-1:-1;;;;;9900:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9981:11;;9900:15:::1;::::0;10023:4;;10050::::1;::::0;10070:15:::1;::::0;9900:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5039:9:0;:17;;-1:-1:-1;;;;5039:17:0;;;-1:-1:-1;;;;9623:481:0:o;1203:136::-;1261:7;1288:43;1292:1;1295;1288:43;;;;;;;;;;;;;;;;;:3;:43::i;1016:179::-;1074:7;;1106:5;1110:1;1106;:5;:::i;:::-;1094:17;;1135:1;1130;:6;;1122:46;;;;-1:-1:-1;;;1122:46:0;;12212:2:1;1122:46:0;;;12194:21:1;12251:2;12231:18;;;12224:30;12290:29;12270:18;;;12263:57;12337:18;;1122:46:0;12010:351:1;1939:189:0;2025:7;2060:12;2053:5;2045:28;;;;-1:-1:-1;;;2045:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2084:9:0;2096:5;2100:1;2096;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;4949:251::-;5019:6;5072:2;5060:9;5051:7;5047:23;5043:32;5040:52;;;5088:1;5085;5078:12;5040:52;5120:9;5114:16;5139:31;5164:5;5139:31;:::i;6126:306::-;6214:6;6222;6230;6283:2;6271:9;6262:7;6258:23;6254:32;6251:52;;;6299:1;6296;6289:12;6251:52;6328:9;6322:16;6312:26;;6378:2;6367:9;6363:18;6357:25;6347:35;;6422:2;6411:9;6407:18;6401:25;6391:35;;6126:306;;;;;:::o;6716:277::-;6783:6;6836:2;6824:9;6815:7;6811:23;6807:32;6804:52;;;6852:1;6849;6842:12;6804:52;6884:9;6878:16;6937:5;6930:13;6923:21;6916:5;6913:32;6903:60;;6959:1;6956;6949:12;9379:125;9444:9;;;9465:10;;;9462:36;;;9478:18;;:::i;9864:135::-;9903:3;9924:17;;;9921:43;;9944:18;;:::i;:::-;-1:-1:-1;9991:1:1;9980:13;;9864:135::o;10004:128::-;10071:9;;;10092:11;;;10089:37;;;10106:18;;:::i;10137:217::-;10177:1;10203;10193:132;;10247:10;10242:3;10238:20;10235:1;10228:31;10282:4;10279:1;10272:15;10310:4;10307:1;10300:15;10193:132;-1:-1:-1;10339:9:1;;10137:217::o;10893:127::-;10954:10;10949:3;10945:20;10942:1;10935:31;10985:4;10982:1;10975:15;11009:4;11006:1;10999:15;11025:980;11287:4;11335:3;11324:9;11320:19;11366:6;11355:9;11348:25;11392:2;11430:6;11425:2;11414:9;11410:18;11403:34;11473:3;11468:2;11457:9;11453:18;11446:31;11497:6;11532;11526:13;11563:6;11555;11548:22;11601:3;11590:9;11586:19;11579:26;;11640:2;11632:6;11628:15;11614:29;;11661:1;11671:195;11685:6;11682:1;11679:13;11671:195;;;11750:13;;-1:-1:-1;;;;;11746:39:1;11734:52;;11841:15;;;;11806:12;;;;11782:1;11700:9;11671:195;;;-1:-1:-1;;;;;;;11922:32:1;;;;11917:2;11902:18;;11895:60;-1:-1:-1;;;11986:3:1;11971:19;11964:35;11883:3;11025:980;-1:-1:-1;;;11025:980:1:o

Swarm Source

ipfs://5c6d225f94ccc03129d6a0fb93916a6228cef4fb2211dc4c04f674f144ae48b8

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.