ETH Price: $2,400.71 (-3.28%)
Gas: 3.56 Gwei
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve205086892024-08-11 23:35:1185 days ago1723419311IN
0xA980aAd9...4eD6F96c1
0 ETH0.000069781.5
Transfer205083262024-08-11 22:22:3585 days ago1723414955IN
0xA980aAd9...4eD6F96c1
0 ETH0.000071930.98046821
Approve164654432023-01-22 22:52:23652 days ago1674427943IN
0xA980aAd9...4eD6F96c1
0 ETH0.0009337120.07078548
Approve164654112023-01-22 22:45:59652 days ago1674427559IN
0xA980aAd9...4eD6F96c1
0 ETH0.0008216317.63886191
Approve164491022023-01-20 16:05:59654 days ago1674230759IN
0xA980aAd9...4eD6F96c1
0 ETH0.0021637546.51142954
Approve164365612023-01-18 22:05:23656 days ago1674079523IN
0xA980aAd9...4eD6F96c1
0 ETH0.001656335.60338516
Approve164238972023-01-17 3:42:47657 days ago1673926967IN
0xA980aAd9...4eD6F96c1
0 ETH0.000797117.11227404
Approve164161832023-01-16 1:50:59659 days ago1673833859IN
0xA980aAd9...4eD6F96c1
0 ETH0.000740615.89932807
Approve164161122023-01-16 1:36:23659 days ago1673832983IN
0xA980aAd9...4eD6F96c1
0 ETH0.0007181515.41742351
Approve164159182023-01-16 0:57:23659 days ago1673830643IN
0xA980aAd9...4eD6F96c1
0 ETH0.0007430515.95193901
Approve164150942023-01-15 22:10:59659 days ago1673820659IN
0xA980aAd9...4eD6F96c1
0 ETH0.0014418730.95406982
Approve164147122023-01-15 20:54:23659 days ago1673816063IN
0xA980aAd9...4eD6F96c1
0 ETH0.0012758127.38917357
Approve164143172023-01-15 19:34:23659 days ago1673811263IN
0xA980aAd9...4eD6F96c1
0 ETH0.0010224521.95003669
Approve164100622023-01-15 5:17:11659 days ago1673759831IN
0xA980aAd9...4eD6F96c1
0 ETH0.0007920917.00475129
Approve164100252023-01-15 5:09:47659 days ago1673759387IN
0xA980aAd9...4eD6F96c1
0 ETH0.000433717.85
Approve164087242023-01-15 0:47:23660 days ago1673743643IN
0xA980aAd9...4eD6F96c1
0 ETH0.0010713623
Approve164087062023-01-15 0:43:47660 days ago1673743427IN
0xA980aAd9...4eD6F96c1
0 ETH0.0008314717.85
Approve164086412023-01-15 0:30:47660 days ago1673742647IN
0xA980aAd9...4eD6F96c1
0 ETH0.0008625818.51797639
Approve164085702023-01-15 0:16:35660 days ago1673741795IN
0xA980aAd9...4eD6F96c1
0 ETH0.0008808418.91006474
Approve164085412023-01-15 0:10:47660 days ago1673741447IN
0xA980aAd9...4eD6F96c1
0 ETH0.0014046130.15432217
Approve164085342023-01-15 0:09:23660 days ago1673741363IN
0xA980aAd9...4eD6F96c1
0 ETH0.001276927.41263517
Approve164084682023-01-14 23:56:11660 days ago1673740571IN
0xA980aAd9...4eD6F96c1
0 ETH0.0010430522.39238317
Approve164083272023-01-14 23:27:59660 days ago1673738879IN
0xA980aAd9...4eD6F96c1
0 ETH0.0011138223.91148761
Approve164077212023-01-14 21:25:59660 days ago1673731559IN
0xA980aAd9...4eD6F96c1
0 ETH0.0008189117.58038701
Approve164077172023-01-14 21:25:11660 days ago1673731511IN
0xA980aAd9...4eD6F96c1
0 ETH0.0007916116.99444546
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
164491112023-01-20 16:07:47654 days ago1674230867
0xA980aAd9...4eD6F96c1
0.01161504 ETH
164491112023-01-20 16:07:47654 days ago1674230867
0xA980aAd9...4eD6F96c1
0.01161504 ETH
164161952023-01-16 1:53:23659 days ago1673834003
0xA980aAd9...4eD6F96c1
0.00703886 ETH
164161952023-01-16 1:53:23659 days ago1673834003
0xA980aAd9...4eD6F96c1
0.00703886 ETH
164150962023-01-15 22:11:23659 days ago1673820683
0xA980aAd9...4eD6F96c1
0.01875545 ETH
164150962023-01-15 22:11:23659 days ago1673820683
0xA980aAd9...4eD6F96c1
0.01875545 ETH
164122342023-01-15 12:34:35659 days ago1673786075
0xA980aAd9...4eD6F96c1
0.02012349 ETH
164122342023-01-15 12:34:35659 days ago1673786075
0xA980aAd9...4eD6F96c1
0.02012349 ETH
164093092023-01-15 2:45:23660 days ago1673750723
0xA980aAd9...4eD6F96c1
0.02568457 ETH
164093092023-01-15 2:45:23660 days ago1673750723
0xA980aAd9...4eD6F96c1
0.02568457 ETH
164085432023-01-15 0:11:11660 days ago1673741471
0xA980aAd9...4eD6F96c1
0.02674005 ETH
164085432023-01-15 0:11:11660 days ago1673741471
0xA980aAd9...4eD6F96c1
0.02674005 ETH
164084872023-01-14 23:59:59660 days ago1673740799
0xA980aAd9...4eD6F96c1
0.03538053 ETH
164084872023-01-14 23:59:59660 days ago1673740799
0xA980aAd9...4eD6F96c1
0.03538053 ETH
164082442023-01-14 23:11:23660 days ago1673737883
0xA980aAd9...4eD6F96c1
0.03111044 ETH
164082442023-01-14 23:11:23660 days ago1673737883
0xA980aAd9...4eD6F96c1
0.03111044 ETH
164075602023-01-14 20:53:23660 days ago1673729603
0xA980aAd9...4eD6F96c1
0.03820128 ETH
164075602023-01-14 20:53:23660 days ago1673729603
0xA980aAd9...4eD6F96c1
0.03820128 ETH
164074212023-01-14 20:25:35660 days ago1673727935
0xA980aAd9...4eD6F96c1
0.05231372 ETH
164074212023-01-14 20:25:35660 days ago1673727935
0xA980aAd9...4eD6F96c1
0.05231372 ETH
164071932023-01-14 19:39:47660 days ago1673725187
0xA980aAd9...4eD6F96c1
0.0376685 ETH
164071932023-01-14 19:39:47660 days ago1673725187
0xA980aAd9...4eD6F96c1
0.0376685 ETH
164070592023-01-14 19:12:59660 days ago1673723579
0xA980aAd9...4eD6F96c1
0.04084651 ETH
164070592023-01-14 19:12:59660 days ago1673723579
0xA980aAd9...4eD6F96c1
0.04084651 ETH
164069772023-01-14 18:56:23660 days ago1673722583
0xA980aAd9...4eD6F96c1
0.03965749 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
AIBUYv2

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, GNU GPLv3 license
File 1 of 1 : main
// SPDX-License-Identifier: MIT
/**



     ______     __     ______     __  __     __  __        ______   ______     ______    
    /\  __ \   /\ \   /\  == \   /\ \/\ \   /\ \_\ \      /\  == \ /\  == \   /\  __ \   
    \ \  __ \  \ \ \  \ \  __<   \ \ \_\ \  \ \____ \     \ \  _-/ \ \  __<   \ \ \/\ \  
     \ \_\ \_\  \ \_\  \ \_____\  \ \_____\  \/\_____\     \ \_\    \ \_\ \_\  \ \_____\ 
      \/_/\/_/   \/_/   \/_____/   \/_____/   \/_____/      \/_/     \/_/ /_/   \/_____/ 
                                                                                         

With our wealth of experience as high-frequency traders in this market, we have been through scenarios of buying the top and making mistakes. We’ve taken our learnings and applied them to develop AIBuy Pro, so that you can use it to your advantage and accurately time the market without having to buy at the top.

To know more about our project, please visit:
Telegram: https://t.me/AIBuyPro 
Twitter: https://twitter.com/AIBuyPro 
Website : https://www.aibuypro.site 
Medium: https://medium.com/@AIBuyPro 

**/
pragma solidity 0.8.17;

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 AIBUYv2 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;
    mapping (address => bool) private bots;
    mapping(address => uint256) private _holderLastTransferTimestamp;
    bool public transferDelayEnabled = false;
    address payable private _taxWallet;

    uint256 private _initialBuyTax=10;
    uint256 private _initialSellTax=25;
    uint256 private _finalTax=4;
    uint256 private _reduceBuyTaxAt=1;
    uint256 private _reduceSellTaxAt=20;
    uint256 private _preventSwapBefore=30;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 8;
    uint256 private constant _tTotal = 10000000 * 10**_decimals;
    string private constant _name = unicode"AIBuy Pro";
    string private constant _symbol = unicode"AIBUY";
    uint256 public _maxTxAmount =   150000 * 10**_decimals;
    uint256 public _maxWalletSize = 300000 * 10**_decimals;
    uint256 public _taxSwapThreshold=50000 * 10**_decimals;
    uint256 public _maxTaxSwap=50000 * 10**_decimals;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = 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;
        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);
            taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalTax:_initialBuyTax).div(100);

            if (transferDelayEnabled) {
                  if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) {
                      require(
                          _holderLastTransferTimestamp[tx.origin] <
                              block.number,
                          "_transfer:: Transfer Delay enabled.  Only one purchase per block allowed."
                      );
                      _holderLastTransferTimestamp[tx.origin] = block.number;
                  }
              }

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

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalTax:_initialSellTax).div(100);
            }

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

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


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

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

    function removeLimits() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        transferDelayEnabled=false;
        emit MaxTxAmountUpdated(_tTotal);
    }

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

    function addBots(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }

    function delBots(address[] memory notbot) public onlyOwner {
      for (uint i = 0; i < notbot.length; i++) {
          bots[notbot[i]] = false;
      }
    }

    function isBot(address a) public view returns (bool){
      return bots[a];
    }

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

    

    receive() external payable {}

    function manualSwap() external {
        require(_msgSender()==_taxWallet);
        uint256 tokenBalance=balanceOf(address(this));
        if(tokenBalance>0){
          swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
          sendETHToFee(ethBalance);
        }
    }
}

Settings
{
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "optimizer": {
    "enabled": true,
    "runs": 200
  }
}

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":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","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":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBots","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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"}]

60806040526006805460ff19169055600a6007819055601960089081556004600955600182556014600b55601e600c556000600d556200003f9162000344565b6200004e90620249f06200035c565b600e556200005f6008600a62000344565b6200006e90620493e06200035c565b600f556200007f6008600a62000344565b6200008d9061c3506200035c565b6010556200009e6008600a62000344565b620000ac9061c3506200035c565b6011556013805461ffff60a81b19169055348015620000ca57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b0319166101003302179055620001316008600a62000344565b6200014090629896806200035c565b3360009081526001602081905260408220929092556003906200016b6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556006546101009004909116835291208054909216179055620001cf3390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002096008600a62000344565b6200021890629896806200035c565b60405190815260200160405180910390a362000376565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002865781600019048211156200026a576200026a6200022f565b808516156200027857918102915b93841c93908002906200024a565b509250929050565b6000826200029f575060016200033e565b81620002ae575060006200033e565b8160018114620002c75760028114620002d257620002f2565b60019150506200033e565b60ff841115620002e657620002e66200022f565b50506001821b6200033e565b5060208310610133831016604e8410600b841016171562000317575081810a6200033e565b62000323838362000245565b80600019048211156200033a576200033a6200022f565b0290505b92915050565b60006200035560ff8416836200028e565b9392505050565b80820281158282048414176200033e576200033e6200022f565b611b5d80620003866000396000f3fe6080604052600436106101395760003560e01c8063751039fc116100ab578063a9059cbb1161006f578063a9059cbb14610380578063bf474bed146103a0578063c876d0b9146103b6578063c9567bf9146103d0578063d34628cc146103e5578063dd62ed3e1461040557600080fd5b8063751039fc146102e95780637d1db4a5146102fe5780638da5cb5b146103145780638f9a55c01461033c57806395d89b411461035257600080fd5b8063313ce567116100fd578063313ce5671461021257806331c2d8471461022e5780633bbac5791461025057806351bc3c851461028957806370a082311461029e578063715018a6146102d457600080fd5b806306fdde0314610145578063095ea7b3146101895780630faee56f146101b957806318160ddd146101dd57806323b872dd146101f257600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5060408051808201909152600981526841494275792050726f60b81b60208201525b6040516101809190611644565b60405180910390f35b34801561019557600080fd5b506101a96101a43660046116b7565b61044b565b6040519015158152602001610180565b3480156101c557600080fd5b506101cf60115481565b604051908152602001610180565b3480156101e957600080fd5b506101cf610462565b3480156101fe57600080fd5b506101a961020d3660046116e3565b610482565b34801561021e57600080fd5b5060405160088152602001610180565b34801561023a57600080fd5b5061024e61024936600461173a565b6104eb565b005b34801561025c57600080fd5b506101a961026b3660046117ff565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561029557600080fd5b5061024e61058a565b3480156102aa57600080fd5b506101cf6102b93660046117ff565b6001600160a01b031660009081526001602052604090205490565b3480156102e057600080fd5b5061024e6105de565b3480156102f557600080fd5b5061024e610652565b34801561030a57600080fd5b506101cf600e5481565b34801561032057600080fd5b506000546040516001600160a01b039091168152602001610180565b34801561034857600080fd5b506101cf600f5481565b34801561035e57600080fd5b50604080518082019091526005815264414942555960d81b6020820152610173565b34801561038c57600080fd5b506101a961039b3660046116b7565b61070b565b3480156103ac57600080fd5b506101cf60105481565b3480156103c257600080fd5b506006546101a99060ff1681565b3480156103dc57600080fd5b5061024e610718565b3480156103f157600080fd5b5061024e61040036600461173a565b610ad2565b34801561041157600080fd5b506101cf61042036600461181c565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6000610458338484610b64565b5060015b92915050565b60006104706008600a61194f565b61047d906298968061195e565b905090565b600061048f848484610c88565b6104e184336104dc85604051806060016040528060288152602001611b00602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906112a3565b610b64565b5060019392505050565b6000546001600160a01b0316331461051e5760405162461bcd60e51b815260040161051590611975565b60405180910390fd5b60005b815181101561058657600060046000848481518110610542576105426119aa565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061057e816119c0565b915050610521565b5050565b60065461010090046001600160a01b0316336001600160a01b0316146105af57600080fd5b3060009081526001602052604090205480156105ce576105ce816112dd565b4780156105865761058681611457565b6000546001600160a01b031633146106085760405162461bcd60e51b815260040161051590611975565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461067c5760405162461bcd60e51b815260040161051590611975565b6106886008600a61194f565b610695906298968061195e565b600e556106a46008600a61194f565b6106b1906298968061195e565b600f556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106eb6008600a61194f565b6106f8906298968061195e565b60405190815260200160405180910390a1565b6000610458338484610c88565b6000546001600160a01b031633146107425760405162461bcd60e51b815260040161051590611975565b601354600160a01b900460ff161561079c5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610515565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107e49030906107d76008600a61194f565b6104dc906298968061195e565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610837573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085b91906119d9565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e191906119d9565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561092e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061095291906119d9565b601380546001600160a01b039283166001600160a01b03199091161790556012541663f305d719473061099a816001600160a01b031660009081526001602052604090205490565b6000806109af6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a3c91906119f6565b50506013805462ff00ff60a01b1981166201000160a01b1790915560125460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610aab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610acf9190611a24565b50565b6000546001600160a01b03163314610afc5760405162461bcd60e51b815260040161051590611975565b60005b815181101561058657600160046000848481518110610b2057610b206119aa565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610b5c816119c0565b915050610aff565b6001600160a01b038316610bc65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610515565b6001600160a01b038216610c275760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610515565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610cec5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610515565b6001600160a01b038216610d4e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610515565b60008111610db05760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610515565b600080546001600160a01b03858116911614801590610ddd57506000546001600160a01b03848116911614155b15611160576001600160a01b03841660009081526004602052604090205460ff16158015610e2457506001600160a01b03831660009081526004602052604090205460ff16155b610e2d57600080fd5b610e596064610e53600a54600d5411610e4857600754610e4c565b6009545b8590611495565b9061151e565b60065490915060ff1615610f41576012546001600160a01b03848116911614801590610e9357506013546001600160a01b03848116911614155b15610f4157326000908152600560205260409020544311610f2e5760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610515565b3260009081526005602052604090204390555b6013546001600160a01b038581169116148015610f6c57506012546001600160a01b03848116911614155b8015610f9157506001600160a01b03831660009081526003602052604090205460ff16155b1561107957600e54821115610fe85760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610515565b600f548261100b856001600160a01b031660009081526001602052604090205490565b6110159190611a46565b11156110635760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610515565b600d8054906000611073836119c0565b91905055505b6013546001600160a01b03848116911614801561109f57506001600160a01b0384163014155b156110c2576110bf6064610e53600b54600d5411610e4857600854610e4c565b90505b30600090815260016020526040902054601354600160a81b900460ff161580156110f957506013546001600160a01b038581169116145b801561110e5750601354600160b01b900460ff165b801561111b575060105481115b801561112a5750600c54600d54115b1561115e5761114c6111478461114284601154611560565b611560565b6112dd565b47801561115c5761115c47611457565b505b505b6001600160a01b0384166000908152600160205260409020546111839083611575565b6001600160a01b0385166000908152600160205260409020556111c86111a98383611575565b6001600160a01b038516600090815260016020526040902054906115b7565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6112128585611575565b60405190815260200160405180910390a3801561129d573060009081526001602052604090205461124390826115b7565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112949085815260200190565b60405180910390a35b50505050565b600081848411156112c75760405162461bcd60e51b81526004016105159190611644565b5060006112d48486611a59565b95945050505050565b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611325576113256119aa565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561137e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a291906119d9565b816001815181106113b5576113b56119aa565b6001600160a01b0392831660209182029290920101526012546113db9130911684610b64565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac94790611414908590600090869030904290600401611a6c565b600060405180830381600087803b15801561142e57600080fd5b505af1158015611442573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f19350505050158015610586573d6000803e3d6000fd5b6000826000036114a75750600061045c565b60006114b3838561195e565b9050826114c08583611add565b146115175760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610515565b9392505050565b600061151783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611616565b600081831161156f5782611517565b50919050565b600061151783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506112a3565b6000806115c48385611a46565b9050838110156115175760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610515565b600081836116375760405162461bcd60e51b81526004016105159190611644565b5060006112d48486611add565b600060208083528351808285015260005b8181101561167157858101830151858201604001528201611655565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610acf57600080fd5b80356116b281611692565b919050565b600080604083850312156116ca57600080fd5b82356116d581611692565b946020939093013593505050565b6000806000606084860312156116f857600080fd5b833561170381611692565b9250602084013561171381611692565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561174d57600080fd5b823567ffffffffffffffff8082111561176557600080fd5b818501915085601f83011261177957600080fd5b81358181111561178b5761178b611724565b8060051b604051601f19603f830116810181811085821117156117b0576117b0611724565b6040529182528482019250838101850191888311156117ce57600080fd5b938501935b828510156117f3576117e4856116a7565b845293850193928501926117d3565b98975050505050505050565b60006020828403121561181157600080fd5b813561151781611692565b6000806040838503121561182f57600080fd5b823561183a81611692565b9150602083013561184a81611692565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156118a657816000190482111561188c5761188c611855565b8085161561189957918102915b93841c9390800290611870565b509250929050565b6000826118bd5750600161045c565b816118ca5750600061045c565b81600181146118e057600281146118ea57611906565b600191505061045c565b60ff8411156118fb576118fb611855565b50506001821b61045c565b5060208310610133831016604e8410600b8410161715611929575081810a61045c565b611933838361186b565b806000190482111561194757611947611855565b029392505050565b600061151760ff8416836118ae565b808202811582820484141761045c5761045c611855565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b6000600182016119d2576119d2611855565b5060010190565b6000602082840312156119eb57600080fd5b815161151781611692565b600080600060608486031215611a0b57600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611a3657600080fd5b8151801515811461151757600080fd5b8082018082111561045c5761045c611855565b8181038181111561045c5761045c611855565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611abc5784516001600160a01b031683529383019391830191600101611a97565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611afa57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f9ee254395b0d93d5fd26bb938acf75246339e0aa82433d2152c86b1433f6eb064736f6c63430008110033

Deployed Bytecode

0x6080604052600436106101395760003560e01c8063751039fc116100ab578063a9059cbb1161006f578063a9059cbb14610380578063bf474bed146103a0578063c876d0b9146103b6578063c9567bf9146103d0578063d34628cc146103e5578063dd62ed3e1461040557600080fd5b8063751039fc146102e95780637d1db4a5146102fe5780638da5cb5b146103145780638f9a55c01461033c57806395d89b411461035257600080fd5b8063313ce567116100fd578063313ce5671461021257806331c2d8471461022e5780633bbac5791461025057806351bc3c851461028957806370a082311461029e578063715018a6146102d457600080fd5b806306fdde0314610145578063095ea7b3146101895780630faee56f146101b957806318160ddd146101dd57806323b872dd146101f257600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5060408051808201909152600981526841494275792050726f60b81b60208201525b6040516101809190611644565b60405180910390f35b34801561019557600080fd5b506101a96101a43660046116b7565b61044b565b6040519015158152602001610180565b3480156101c557600080fd5b506101cf60115481565b604051908152602001610180565b3480156101e957600080fd5b506101cf610462565b3480156101fe57600080fd5b506101a961020d3660046116e3565b610482565b34801561021e57600080fd5b5060405160088152602001610180565b34801561023a57600080fd5b5061024e61024936600461173a565b6104eb565b005b34801561025c57600080fd5b506101a961026b3660046117ff565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561029557600080fd5b5061024e61058a565b3480156102aa57600080fd5b506101cf6102b93660046117ff565b6001600160a01b031660009081526001602052604090205490565b3480156102e057600080fd5b5061024e6105de565b3480156102f557600080fd5b5061024e610652565b34801561030a57600080fd5b506101cf600e5481565b34801561032057600080fd5b506000546040516001600160a01b039091168152602001610180565b34801561034857600080fd5b506101cf600f5481565b34801561035e57600080fd5b50604080518082019091526005815264414942555960d81b6020820152610173565b34801561038c57600080fd5b506101a961039b3660046116b7565b61070b565b3480156103ac57600080fd5b506101cf60105481565b3480156103c257600080fd5b506006546101a99060ff1681565b3480156103dc57600080fd5b5061024e610718565b3480156103f157600080fd5b5061024e61040036600461173a565b610ad2565b34801561041157600080fd5b506101cf61042036600461181c565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6000610458338484610b64565b5060015b92915050565b60006104706008600a61194f565b61047d906298968061195e565b905090565b600061048f848484610c88565b6104e184336104dc85604051806060016040528060288152602001611b00602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906112a3565b610b64565b5060019392505050565b6000546001600160a01b0316331461051e5760405162461bcd60e51b815260040161051590611975565b60405180910390fd5b60005b815181101561058657600060046000848481518110610542576105426119aa565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061057e816119c0565b915050610521565b5050565b60065461010090046001600160a01b0316336001600160a01b0316146105af57600080fd5b3060009081526001602052604090205480156105ce576105ce816112dd565b4780156105865761058681611457565b6000546001600160a01b031633146106085760405162461bcd60e51b815260040161051590611975565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461067c5760405162461bcd60e51b815260040161051590611975565b6106886008600a61194f565b610695906298968061195e565b600e556106a46008600a61194f565b6106b1906298968061195e565b600f556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106eb6008600a61194f565b6106f8906298968061195e565b60405190815260200160405180910390a1565b6000610458338484610c88565b6000546001600160a01b031633146107425760405162461bcd60e51b815260040161051590611975565b601354600160a01b900460ff161561079c5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610515565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107e49030906107d76008600a61194f565b6104dc906298968061195e565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610837573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085b91906119d9565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e191906119d9565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561092e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061095291906119d9565b601380546001600160a01b039283166001600160a01b03199091161790556012541663f305d719473061099a816001600160a01b031660009081526001602052604090205490565b6000806109af6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a3c91906119f6565b50506013805462ff00ff60a01b1981166201000160a01b1790915560125460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610aab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610acf9190611a24565b50565b6000546001600160a01b03163314610afc5760405162461bcd60e51b815260040161051590611975565b60005b815181101561058657600160046000848481518110610b2057610b206119aa565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610b5c816119c0565b915050610aff565b6001600160a01b038316610bc65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610515565b6001600160a01b038216610c275760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610515565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610cec5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610515565b6001600160a01b038216610d4e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610515565b60008111610db05760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610515565b600080546001600160a01b03858116911614801590610ddd57506000546001600160a01b03848116911614155b15611160576001600160a01b03841660009081526004602052604090205460ff16158015610e2457506001600160a01b03831660009081526004602052604090205460ff16155b610e2d57600080fd5b610e596064610e53600a54600d5411610e4857600754610e4c565b6009545b8590611495565b9061151e565b60065490915060ff1615610f41576012546001600160a01b03848116911614801590610e9357506013546001600160a01b03848116911614155b15610f4157326000908152600560205260409020544311610f2e5760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610515565b3260009081526005602052604090204390555b6013546001600160a01b038581169116148015610f6c57506012546001600160a01b03848116911614155b8015610f9157506001600160a01b03831660009081526003602052604090205460ff16155b1561107957600e54821115610fe85760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610515565b600f548261100b856001600160a01b031660009081526001602052604090205490565b6110159190611a46565b11156110635760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610515565b600d8054906000611073836119c0565b91905055505b6013546001600160a01b03848116911614801561109f57506001600160a01b0384163014155b156110c2576110bf6064610e53600b54600d5411610e4857600854610e4c565b90505b30600090815260016020526040902054601354600160a81b900460ff161580156110f957506013546001600160a01b038581169116145b801561110e5750601354600160b01b900460ff165b801561111b575060105481115b801561112a5750600c54600d54115b1561115e5761114c6111478461114284601154611560565b611560565b6112dd565b47801561115c5761115c47611457565b505b505b6001600160a01b0384166000908152600160205260409020546111839083611575565b6001600160a01b0385166000908152600160205260409020556111c86111a98383611575565b6001600160a01b038516600090815260016020526040902054906115b7565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6112128585611575565b60405190815260200160405180910390a3801561129d573060009081526001602052604090205461124390826115b7565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112949085815260200190565b60405180910390a35b50505050565b600081848411156112c75760405162461bcd60e51b81526004016105159190611644565b5060006112d48486611a59565b95945050505050565b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611325576113256119aa565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561137e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a291906119d9565b816001815181106113b5576113b56119aa565b6001600160a01b0392831660209182029290920101526012546113db9130911684610b64565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac94790611414908590600090869030904290600401611a6c565b600060405180830381600087803b15801561142e57600080fd5b505af1158015611442573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f19350505050158015610586573d6000803e3d6000fd5b6000826000036114a75750600061045c565b60006114b3838561195e565b9050826114c08583611add565b146115175760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610515565b9392505050565b600061151783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611616565b600081831161156f5782611517565b50919050565b600061151783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506112a3565b6000806115c48385611a46565b9050838110156115175760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610515565b600081836116375760405162461bcd60e51b81526004016105159190611644565b5060006112d48486611add565b600060208083528351808285015260005b8181101561167157858101830151858201604001528201611655565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610acf57600080fd5b80356116b281611692565b919050565b600080604083850312156116ca57600080fd5b82356116d581611692565b946020939093013593505050565b6000806000606084860312156116f857600080fd5b833561170381611692565b9250602084013561171381611692565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561174d57600080fd5b823567ffffffffffffffff8082111561176557600080fd5b818501915085601f83011261177957600080fd5b81358181111561178b5761178b611724565b8060051b604051601f19603f830116810181811085821117156117b0576117b0611724565b6040529182528482019250838101850191888311156117ce57600080fd5b938501935b828510156117f3576117e4856116a7565b845293850193928501926117d3565b98975050505050505050565b60006020828403121561181157600080fd5b813561151781611692565b6000806040838503121561182f57600080fd5b823561183a81611692565b9150602083013561184a81611692565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156118a657816000190482111561188c5761188c611855565b8085161561189957918102915b93841c9390800290611870565b509250929050565b6000826118bd5750600161045c565b816118ca5750600061045c565b81600181146118e057600281146118ea57611906565b600191505061045c565b60ff8411156118fb576118fb611855565b50506001821b61045c565b5060208310610133831016604e8410600b8410161715611929575081810a61045c565b611933838361186b565b806000190482111561194757611947611855565b029392505050565b600061151760ff8416836118ae565b808202811582820484141761045c5761045c611855565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b6000600182016119d2576119d2611855565b5060010190565b6000602082840312156119eb57600080fd5b815161151781611692565b600080600060608486031215611a0b57600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611a3657600080fd5b8151801515811461151757600080fd5b8082018082111561045c5761045c611855565b8181038181111561045c5761045c611855565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611abc5784516001600160a01b031683529383019391830191600101611a97565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611afa57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f9ee254395b0d93d5fd26bb938acf75246339e0aa82433d2152c86b1433f6eb064736f6c63430008110033

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.