ETH Price: $2,612.00 (-1.87%)

Contract

0x1DA74e8BEcEaa94D4dC6020e4f2ffe3c6EA7176d
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve174153532023-06-05 15:58:59483 days ago1685980739IN
0x1DA74e8B...c6EA7176d
0 ETH0.0043943794.99917206
Approve174148332023-06-05 14:12:59483 days ago1685974379IN
0x1DA74e8B...c6EA7176d
0 ETH0.0021457246.37494491
Approve174148282023-06-05 14:11:59483 days ago1685974319IN
0x1DA74e8B...c6EA7176d
0 ETH0.002314150.01423461
Approve174147812023-06-05 14:02:23483 days ago1685973743IN
0x1DA74e8B...c6EA7176d
0 ETH0.0036516378.39316374
Approve174147102023-06-05 13:48:11483 days ago1685972891IN
0x1DA74e8B...c6EA7176d
0 ETH0.0020743344.58921304
Approve174147082023-06-05 13:47:47483 days ago1685972867IN
0x1DA74e8B...c6EA7176d
0 ETH0.0020596144.2157011
Approve174147032023-06-05 13:46:47483 days ago1685972807IN
0x1DA74e8B...c6EA7176d
0 ETH0.0017890338.40694449
Renounce Ownersh...174146612023-06-05 13:38:11483 days ago1685972291IN
0x1DA74e8B...c6EA7176d
0 ETH0.0009007438.55603538
Reduce Fee174146592023-06-05 13:37:47483 days ago1685972267IN
0x1DA74e8B...c6EA7176d
0 ETH0.0010474538.75299795
Approve174146592023-06-05 13:37:47483 days ago1685972267IN
0x1DA74e8B...c6EA7176d
0 ETH0.0019309241.45299795
Approve174146502023-06-05 13:35:59483 days ago1685972159IN
0x1DA74e8B...c6EA7176d
0 ETH0.001820439.34388622
Approve174146502023-06-05 13:35:59483 days ago1685972159IN
0x1DA74e8B...c6EA7176d
0 ETH0.0019677642.24388622
Approve174146462023-06-05 13:35:11483 days ago1685972111IN
0x1DA74e8B...c6EA7176d
0 ETH0.0019133941.07676069
Remove Limits174146462023-06-05 13:35:11483 days ago1685972111IN
0x1DA74e8B...c6EA7176d
0 ETH0.0016804541.27676069
Approve174146452023-06-05 13:34:59483 days ago1685972099IN
0x1DA74e8B...c6EA7176d
0 ETH0.0038005481.59000989
Approve174146442023-06-05 13:34:47483 days ago1685972087IN
0x1DA74e8B...c6EA7176d
0 ETH0.0018618239.96968801
Approve174146432023-06-05 13:34:23483 days ago1685972063IN
0x1DA74e8B...c6EA7176d
0 ETH0.0017420437.39809745
Approve174146422023-06-05 13:34:11483 days ago1685972051IN
0x1DA74e8B...c6EA7176d
0 ETH0.0018999840.78882438
Approve174146412023-06-05 13:33:59483 days ago1685972039IN
0x1DA74e8B...c6EA7176d
0 ETH0.0018794440.34784808
Approve174146402023-06-05 13:33:47483 days ago1685972027IN
0x1DA74e8B...c6EA7176d
0 ETH0.001823439.14491747
Approve174146402023-06-05 13:33:47483 days ago1685972027IN
0x1DA74e8B...c6EA7176d
0 ETH0.0018243439.16491747
Approve174146402023-06-05 13:33:47483 days ago1685972027IN
0x1DA74e8B...c6EA7176d
0 ETH0.001824839.17491747
Approve174146402023-06-05 13:33:47483 days ago1685972027IN
0x1DA74e8B...c6EA7176d
0 ETH0.001824839.17491747
Approve174146402023-06-05 13:33:47483 days ago1685972027IN
0x1DA74e8B...c6EA7176d
0 ETH0.0018331939.35491747
Approve174146402023-06-05 13:33:47483 days ago1685972027IN
0x1DA74e8B...c6EA7176d
0 ETH0.0018331939.35491747
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
174161842023-06-05 18:47:35483 days ago1685990855
0x1DA74e8B...c6EA7176d
0.01109028 ETH
174161842023-06-05 18:47:35483 days ago1685990855
0x1DA74e8B...c6EA7176d
0.01109028 ETH
174153552023-06-05 15:59:23483 days ago1685980763
0x1DA74e8B...c6EA7176d
0.00923617 ETH
174153552023-06-05 15:59:23483 days ago1685980763
0x1DA74e8B...c6EA7176d
0.00923617 ETH
174151972023-06-05 15:27:35483 days ago1685978855
0x1DA74e8B...c6EA7176d
0.01226334 ETH
174151972023-06-05 15:27:35483 days ago1685978855
0x1DA74e8B...c6EA7176d
0.01226334 ETH
174150432023-06-05 14:56:35483 days ago1685976995
0x1DA74e8B...c6EA7176d
0.01308246 ETH
174150432023-06-05 14:56:35483 days ago1685976995
0x1DA74e8B...c6EA7176d
0.01308246 ETH
174150432023-06-05 14:56:35483 days ago1685976995
0x1DA74e8B...c6EA7176d
0.01398652 ETH
174150432023-06-05 14:56:35483 days ago1685976995
0x1DA74e8B...c6EA7176d
0.01398652 ETH
174150432023-06-05 14:56:35483 days ago1685976995
0x1DA74e8B...c6EA7176d
0.01498768 ETH
174150432023-06-05 14:56:35483 days ago1685976995
0x1DA74e8B...c6EA7176d
0.01498768 ETH
174150432023-06-05 14:56:35483 days ago1685976995
0x1DA74e8B...c6EA7176d
0.01610039 ETH
174150432023-06-05 14:56:35483 days ago1685976995
0x1DA74e8B...c6EA7176d
0.01610039 ETH
174148342023-06-05 14:13:11483 days ago1685974391
0x1DA74e8B...c6EA7176d
0.0174159 ETH
174148342023-06-05 14:13:11483 days ago1685974391
0x1DA74e8B...c6EA7176d
0.0174159 ETH
174148302023-06-05 14:12:23483 days ago1685974343
0x1DA74e8B...c6EA7176d
0.01928291 ETH
174148302023-06-05 14:12:23483 days ago1685974343
0x1DA74e8B...c6EA7176d
0.01928291 ETH
174147922023-06-05 14:04:35483 days ago1685973875
0x1DA74e8B...c6EA7176d
0.02283011 ETH
174147922023-06-05 14:04:35483 days ago1685973875
0x1DA74e8B...c6EA7176d
0.02283011 ETH
174147832023-06-05 14:02:47483 days ago1685973767
0x1DA74e8B...c6EA7176d
0.02496634 ETH
174147832023-06-05 14:02:47483 days ago1685973767
0x1DA74e8B...c6EA7176d
0.02496634 ETH
174147782023-06-05 14:01:47483 days ago1685973707
0x1DA74e8B...c6EA7176d
0.0280192 ETH
174147782023-06-05 14:01:47483 days ago1685973707
0x1DA74e8B...c6EA7176d
0.0280192 ETH
174147092023-06-05 13:47:59483 days ago1685972879
0x1DA74e8B...c6EA7176d
0.02846138 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Dumplings

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : Dumplings.sol
/**
Telegram: https://t.me/Dumplings_Erc

Website: https://dumplingerc.com/

Twitter: https://mobile.twitter.com/Dumpling_Erc
**/
// SPDX-License-Identifier: UNLICENSED


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 Dumplings  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 = true;
    address payable private _taxWallet;

    uint256 private _initialBuyTax=20;
    uint256 private _initialSellTax=20;
    uint256 private _finalBuyTax=1;
    uint256 private _finalSellTax=1;
    uint256 private _reduceBuyTaxAt=20;
    uint256 private _reduceSellTaxAt=20;
    uint256 private _preventSwapBefore=20;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000 * 10**_decimals;
    string private constant _name = unicode"Dumplings";
    string private constant _symbol = unicode"饺子";
    uint256 public _maxTxAmount =   20000 * 10**_decimals;
    uint256 public _maxWalletSize = 20000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 10000 * 10**_decimals;
    uint256 public _maxTaxSwap= 10000 * 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)?_finalBuyTax:_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)?_finalSellTax:_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);
                }
            }
        }

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


    function 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);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;
    }

    
    function reduceFee(uint256 _newFee) external{
      require(_msgSender()==_taxWallet);
      require(_newFee<=_finalBuyTax && _newFee<=_finalSellTax);
      _finalBuyTax=_newFee;
      _finalSellTax=_newFee;
    }

    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
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  }
}

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":[{"internalType":"uint256","name":"_newFee","type":"uint256"}],"name":"reduceFee","outputs":[],"stateMutability":"nonpayable","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"}]

60806040526006805460ff191660019081179091556014600781905560088190556009828155600a928355600b829055600c829055600d919091556000600e556200004a916200034d565b6200005890614e2062000365565b600f55620000696009600a6200034d565b6200007790614e2062000365565b601055620000886009600a6200034d565b620000969061271062000365565b601155620000a76009600a6200034d565b620000b59061271062000365565b6012556014805461ffff60a81b19169055348015620000d357600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b03191661010033021790556200013a6009600a6200034d565b6200014990620f424062000365565b336000908152600160208190526040822092909255600390620001746000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556006546101009004909116835291208054909216179055620001d83390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002126009600a6200034d565b6200022190620f424062000365565b60405190815260200160405180910390a36200037f565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200028f57816000190482111562000273576200027362000238565b808516156200028157918102915b93841c939080029062000253565b509250929050565b600082620002a85750600162000347565b81620002b75750600062000347565b8160018114620002d05760028114620002db57620002fb565b600191505062000347565b60ff841115620002ef57620002ef62000238565b50506001821b62000347565b5060208310610133831016604e8410600b841016171562000320575081810a62000347565b6200032c83836200024e565b806000190482111562000343576200034362000238565b0290505b92915050565b60006200035e60ff84168362000297565b9392505050565b808202811582820484141762000347576200034762000238565b611bfc806200038f6000396000f3fe6080604052600436106101445760003560e01c8063751039fc116100b6578063bf474bed1161006f578063bf474bed146103ac578063c876d0b9146103c2578063c9567bf9146103dc578063d34628cc146103f1578063dd62ed3e14610411578063ec1f3f631461045757600080fd5b8063751039fc146102f45780637d1db4a5146103095780638da5cb5b1461031f5780638f9a55c01461034757806395d89b411461035d578063a9059cbb1461038c57600080fd5b8063313ce56711610108578063313ce5671461021d57806331c2d847146102395780633bbac5791461025b57806351bc3c851461029457806370a08231146102a9578063715018a6146102df57600080fd5b806306fdde0314610150578063095ea7b3146101945780630faee56f146101c457806318160ddd146101e857806323b872dd146101fd57600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5060408051808201909152600981526844756d706c696e677360b81b60208201525b60405161018b91906116c7565b60405180910390f35b3480156101a057600080fd5b506101b46101af36600461173d565b610477565b604051901515815260200161018b565b3480156101d057600080fd5b506101da60125481565b60405190815260200161018b565b3480156101f457600080fd5b506101da61048e565b34801561020957600080fd5b506101b4610218366004611769565b6104ae565b34801561022957600080fd5b506040516009815260200161018b565b34801561024557600080fd5b506102596102543660046117c0565b610517565b005b34801561026757600080fd5b506101b4610276366004611885565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156102a057600080fd5b506102596105b6565b3480156102b557600080fd5b506101da6102c4366004611885565b6001600160a01b031660009081526001602052604090205490565b3480156102eb57600080fd5b5061025961060a565b34801561030057600080fd5b5061025961067e565b34801561031557600080fd5b506101da600f5481565b34801561032b57600080fd5b506000546040516001600160a01b03909116815260200161018b565b34801561035357600080fd5b506101da60105481565b34801561036957600080fd5b506040805180820190915260068152650e9a5bae5ad960d41b602082015261017e565b34801561039857600080fd5b506101b46103a736600461173d565b610737565b3480156103b857600080fd5b506101da60115481565b3480156103ce57600080fd5b506006546101b49060ff1681565b3480156103e857600080fd5b50610259610744565b3480156103fd57600080fd5b5061025961040c3660046117c0565b610aff565b34801561041d57600080fd5b506101da61042c3660046118a2565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561046357600080fd5b506102596104723660046118db565b610b91565b6000610484338484610bdd565b5060015b92915050565b600061049c6009600a6119ee565b6104a990620f42406119fd565b905090565b60006104bb848484610d01565b61050d843361050885604051806060016040528060288152602001611b9f602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190611326565b610bdd565b5060019392505050565b6000546001600160a01b0316331461054a5760405162461bcd60e51b815260040161054190611a14565b60405180910390fd5b60005b81518110156105b25760006004600084848151811061056e5761056e611a49565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806105aa81611a5f565b91505061054d565b5050565b60065461010090046001600160a01b0316336001600160a01b0316146105db57600080fd5b3060009081526001602052604090205480156105fa576105fa81611360565b4780156105b2576105b2816114da565b6000546001600160a01b031633146106345760405162461bcd60e51b815260040161054190611a14565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106a85760405162461bcd60e51b815260040161054190611a14565b6106b46009600a6119ee565b6106c190620f42406119fd565b600f556106d06009600a6119ee565b6106dd90620f42406119fd565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107176009600a6119ee565b61072490620f42406119fd565b60405190815260200160405180910390a1565b6000610484338484610d01565b6000546001600160a01b0316331461076e5760405162461bcd60e51b815260040161054190611a14565b601454600160a01b900460ff16156107c85760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610541565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556108109030906108036009600a6119ee565b61050890620f42406119fd565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610863573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108879190611a78565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090d9190611a78565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561095a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097e9190611a78565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d71947306109c6816001600160a01b031660009081526001602052604090205490565b6000806109db6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a43573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a689190611a95565b505060145460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610ac1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae59190611ac3565b506014805462ff00ff60a01b19166201000160a01b179055565b6000546001600160a01b03163314610b295760405162461bcd60e51b815260040161054190611a14565b60005b81518110156105b257600160046000848481518110610b4d57610b4d611a49565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610b8981611a5f565b915050610b2c565b60065461010090046001600160a01b0316336001600160a01b031614610bb657600080fd5b6009548111158015610bca5750600a548111155b610bd357600080fd5b6009819055600a55565b6001600160a01b038316610c3f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610541565b6001600160a01b038216610ca05760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610541565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d655760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610541565b6001600160a01b038216610dc75760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610541565b60008111610e295760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610541565b600080546001600160a01b03858116911614801590610e5657506000546001600160a01b03848116911614155b156111e3576001600160a01b03841660009081526004602052604090205460ff16158015610e9d57506001600160a01b03831660009081526004602052604090205460ff16155b610ea657600080fd5b610ed26064610ecc600b54600e5411610ec157600754610ec5565b6009545b8590611518565b906115a1565b60065490915060ff1615610fba576013546001600160a01b03848116911614801590610f0c57506014546001600160a01b03848116911614155b15610fba57326000908152600560205260409020544311610fa75760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610541565b3260009081526005602052604090204390555b6014546001600160a01b038581169116148015610fe557506013546001600160a01b03848116911614155b801561100a57506001600160a01b03831660009081526003602052604090205460ff16155b156110f257600f548211156110615760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610541565b60105482611084856001600160a01b031660009081526001602052604090205490565b61108e9190611ae5565b11156110dc5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610541565b600e80549060006110ec83611a5f565b91905055505b6014546001600160a01b03848116911614801561111857506001600160a01b0384163014155b15611145576111426064610ecc600c54600e541161113857600854610ec5565b600a548590611518565b90505b30600090815260016020526040902054601454600160a81b900460ff1615801561117c57506014546001600160a01b038581169116145b80156111915750601454600160b01b900460ff165b801561119e575060115481115b80156111ad5750600d54600e54115b156111e1576111cf6111ca846111c5846012546115e3565b6115e3565b611360565b4780156111df576111df476114da565b505b505b801561125d573060009081526001602052604090205461120390826115f8565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112549085815260200190565b60405180910390a35b6001600160a01b0384166000908152600160205260409020546112809083611657565b6001600160a01b0385166000908152600160205260409020556112c56112a68383611657565b6001600160a01b038516600090815260016020526040902054906115f8565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61130f8585611657565b60405190815260200160405180910390a350505050565b6000818484111561134a5760405162461bcd60e51b815260040161054191906116c7565b5060006113578486611af8565b95945050505050565b6014805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106113a8576113a8611a49565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611401573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114259190611a78565b8160018151811061143857611438611a49565b6001600160a01b03928316602091820292909201015260135461145e9130911684610bdd565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac94790611497908590600090869030904290600401611b0b565b600060405180830381600087803b1580156114b157600080fd5b505af11580156114c5573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f193505050501580156105b2573d6000803e3d6000fd5b60008260000361152a57506000610488565b600061153683856119fd565b9050826115438583611b7c565b1461159a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610541565b9392505050565b600061159a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611699565b60008183116115f2578261159a565b50919050565b6000806116058385611ae5565b90508381101561159a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610541565b600061159a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611326565b600081836116ba5760405162461bcd60e51b815260040161054191906116c7565b5060006113578486611b7c565b600060208083528351808285015260005b818110156116f4578581018301518582016040015282016116d8565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461172a57600080fd5b50565b803561173881611715565b919050565b6000806040838503121561175057600080fd5b823561175b81611715565b946020939093013593505050565b60008060006060848603121561177e57600080fd5b833561178981611715565b9250602084013561179981611715565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156117d357600080fd5b823567ffffffffffffffff808211156117eb57600080fd5b818501915085601f8301126117ff57600080fd5b813581811115611811576118116117aa565b8060051b604051601f19603f83011681018181108582111715611836576118366117aa565b60405291825284820192508381018501918883111561185457600080fd5b938501935b828510156118795761186a8561172d565b84529385019392850192611859565b98975050505050505050565b60006020828403121561189757600080fd5b813561159a81611715565b600080604083850312156118b557600080fd5b82356118c081611715565b915060208301356118d081611715565b809150509250929050565b6000602082840312156118ed57600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561194557816000190482111561192b5761192b6118f4565b8085161561193857918102915b93841c939080029061190f565b509250929050565b60008261195c57506001610488565b8161196957506000610488565b816001811461197f5760028114611989576119a5565b6001915050610488565b60ff84111561199a5761199a6118f4565b50506001821b610488565b5060208310610133831016604e8410600b84101617156119c8575081810a610488565b6119d2838361190a565b80600019048211156119e6576119e66118f4565b029392505050565b600061159a60ff84168361194d565b8082028115828204841417610488576104886118f4565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060018201611a7157611a716118f4565b5060010190565b600060208284031215611a8a57600080fd5b815161159a81611715565b600080600060608486031215611aaa57600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611ad557600080fd5b8151801515811461159a57600080fd5b80820180821115610488576104886118f4565b81810381811115610488576104886118f4565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611b5b5784516001600160a01b031683529383019391830191600101611b36565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611b9957634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a40771397933ce7b5cc2b34ddd12e4858af96362d7f5c08e99b83f599d58f8db64736f6c63430008110033

Deployed Bytecode

0x6080604052600436106101445760003560e01c8063751039fc116100b6578063bf474bed1161006f578063bf474bed146103ac578063c876d0b9146103c2578063c9567bf9146103dc578063d34628cc146103f1578063dd62ed3e14610411578063ec1f3f631461045757600080fd5b8063751039fc146102f45780637d1db4a5146103095780638da5cb5b1461031f5780638f9a55c01461034757806395d89b411461035d578063a9059cbb1461038c57600080fd5b8063313ce56711610108578063313ce5671461021d57806331c2d847146102395780633bbac5791461025b57806351bc3c851461029457806370a08231146102a9578063715018a6146102df57600080fd5b806306fdde0314610150578063095ea7b3146101945780630faee56f146101c457806318160ddd146101e857806323b872dd146101fd57600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5060408051808201909152600981526844756d706c696e677360b81b60208201525b60405161018b91906116c7565b60405180910390f35b3480156101a057600080fd5b506101b46101af36600461173d565b610477565b604051901515815260200161018b565b3480156101d057600080fd5b506101da60125481565b60405190815260200161018b565b3480156101f457600080fd5b506101da61048e565b34801561020957600080fd5b506101b4610218366004611769565b6104ae565b34801561022957600080fd5b506040516009815260200161018b565b34801561024557600080fd5b506102596102543660046117c0565b610517565b005b34801561026757600080fd5b506101b4610276366004611885565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156102a057600080fd5b506102596105b6565b3480156102b557600080fd5b506101da6102c4366004611885565b6001600160a01b031660009081526001602052604090205490565b3480156102eb57600080fd5b5061025961060a565b34801561030057600080fd5b5061025961067e565b34801561031557600080fd5b506101da600f5481565b34801561032b57600080fd5b506000546040516001600160a01b03909116815260200161018b565b34801561035357600080fd5b506101da60105481565b34801561036957600080fd5b506040805180820190915260068152650e9a5bae5ad960d41b602082015261017e565b34801561039857600080fd5b506101b46103a736600461173d565b610737565b3480156103b857600080fd5b506101da60115481565b3480156103ce57600080fd5b506006546101b49060ff1681565b3480156103e857600080fd5b50610259610744565b3480156103fd57600080fd5b5061025961040c3660046117c0565b610aff565b34801561041d57600080fd5b506101da61042c3660046118a2565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561046357600080fd5b506102596104723660046118db565b610b91565b6000610484338484610bdd565b5060015b92915050565b600061049c6009600a6119ee565b6104a990620f42406119fd565b905090565b60006104bb848484610d01565b61050d843361050885604051806060016040528060288152602001611b9f602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190611326565b610bdd565b5060019392505050565b6000546001600160a01b0316331461054a5760405162461bcd60e51b815260040161054190611a14565b60405180910390fd5b60005b81518110156105b25760006004600084848151811061056e5761056e611a49565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806105aa81611a5f565b91505061054d565b5050565b60065461010090046001600160a01b0316336001600160a01b0316146105db57600080fd5b3060009081526001602052604090205480156105fa576105fa81611360565b4780156105b2576105b2816114da565b6000546001600160a01b031633146106345760405162461bcd60e51b815260040161054190611a14565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106a85760405162461bcd60e51b815260040161054190611a14565b6106b46009600a6119ee565b6106c190620f42406119fd565b600f556106d06009600a6119ee565b6106dd90620f42406119fd565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107176009600a6119ee565b61072490620f42406119fd565b60405190815260200160405180910390a1565b6000610484338484610d01565b6000546001600160a01b0316331461076e5760405162461bcd60e51b815260040161054190611a14565b601454600160a01b900460ff16156107c85760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610541565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556108109030906108036009600a6119ee565b61050890620f42406119fd565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610863573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108879190611a78565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090d9190611a78565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561095a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097e9190611a78565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d71947306109c6816001600160a01b031660009081526001602052604090205490565b6000806109db6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a43573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a689190611a95565b505060145460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610ac1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae59190611ac3565b506014805462ff00ff60a01b19166201000160a01b179055565b6000546001600160a01b03163314610b295760405162461bcd60e51b815260040161054190611a14565b60005b81518110156105b257600160046000848481518110610b4d57610b4d611a49565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610b8981611a5f565b915050610b2c565b60065461010090046001600160a01b0316336001600160a01b031614610bb657600080fd5b6009548111158015610bca5750600a548111155b610bd357600080fd5b6009819055600a55565b6001600160a01b038316610c3f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610541565b6001600160a01b038216610ca05760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610541565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d655760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610541565b6001600160a01b038216610dc75760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610541565b60008111610e295760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610541565b600080546001600160a01b03858116911614801590610e5657506000546001600160a01b03848116911614155b156111e3576001600160a01b03841660009081526004602052604090205460ff16158015610e9d57506001600160a01b03831660009081526004602052604090205460ff16155b610ea657600080fd5b610ed26064610ecc600b54600e5411610ec157600754610ec5565b6009545b8590611518565b906115a1565b60065490915060ff1615610fba576013546001600160a01b03848116911614801590610f0c57506014546001600160a01b03848116911614155b15610fba57326000908152600560205260409020544311610fa75760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610541565b3260009081526005602052604090204390555b6014546001600160a01b038581169116148015610fe557506013546001600160a01b03848116911614155b801561100a57506001600160a01b03831660009081526003602052604090205460ff16155b156110f257600f548211156110615760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610541565b60105482611084856001600160a01b031660009081526001602052604090205490565b61108e9190611ae5565b11156110dc5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610541565b600e80549060006110ec83611a5f565b91905055505b6014546001600160a01b03848116911614801561111857506001600160a01b0384163014155b15611145576111426064610ecc600c54600e541161113857600854610ec5565b600a548590611518565b90505b30600090815260016020526040902054601454600160a81b900460ff1615801561117c57506014546001600160a01b038581169116145b80156111915750601454600160b01b900460ff165b801561119e575060115481115b80156111ad5750600d54600e54115b156111e1576111cf6111ca846111c5846012546115e3565b6115e3565b611360565b4780156111df576111df476114da565b505b505b801561125d573060009081526001602052604090205461120390826115f8565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112549085815260200190565b60405180910390a35b6001600160a01b0384166000908152600160205260409020546112809083611657565b6001600160a01b0385166000908152600160205260409020556112c56112a68383611657565b6001600160a01b038516600090815260016020526040902054906115f8565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61130f8585611657565b60405190815260200160405180910390a350505050565b6000818484111561134a5760405162461bcd60e51b815260040161054191906116c7565b5060006113578486611af8565b95945050505050565b6014805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106113a8576113a8611a49565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611401573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114259190611a78565b8160018151811061143857611438611a49565b6001600160a01b03928316602091820292909201015260135461145e9130911684610bdd565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac94790611497908590600090869030904290600401611b0b565b600060405180830381600087803b1580156114b157600080fd5b505af11580156114c5573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f193505050501580156105b2573d6000803e3d6000fd5b60008260000361152a57506000610488565b600061153683856119fd565b9050826115438583611b7c565b1461159a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610541565b9392505050565b600061159a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611699565b60008183116115f2578261159a565b50919050565b6000806116058385611ae5565b90508381101561159a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610541565b600061159a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611326565b600081836116ba5760405162461bcd60e51b815260040161054191906116c7565b5060006113578486611b7c565b600060208083528351808285015260005b818110156116f4578581018301518582016040015282016116d8565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461172a57600080fd5b50565b803561173881611715565b919050565b6000806040838503121561175057600080fd5b823561175b81611715565b946020939093013593505050565b60008060006060848603121561177e57600080fd5b833561178981611715565b9250602084013561179981611715565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156117d357600080fd5b823567ffffffffffffffff808211156117eb57600080fd5b818501915085601f8301126117ff57600080fd5b813581811115611811576118116117aa565b8060051b604051601f19603f83011681018181108582111715611836576118366117aa565b60405291825284820192508381018501918883111561185457600080fd5b938501935b828510156118795761186a8561172d565b84529385019392850192611859565b98975050505050505050565b60006020828403121561189757600080fd5b813561159a81611715565b600080604083850312156118b557600080fd5b82356118c081611715565b915060208301356118d081611715565b809150509250929050565b6000602082840312156118ed57600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561194557816000190482111561192b5761192b6118f4565b8085161561193857918102915b93841c939080029061190f565b509250929050565b60008261195c57506001610488565b8161196957506000610488565b816001811461197f5760028114611989576119a5565b6001915050610488565b60ff84111561199a5761199a6118f4565b50506001821b610488565b5060208310610133831016604e8410600b84101617156119c8575081810a610488565b6119d2838361190a565b80600019048211156119e6576119e66118f4565b029392505050565b600061159a60ff84168361194d565b8082028115828204841417610488576104886118f4565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060018201611a7157611a716118f4565b5060010190565b600060208284031215611a8a57600080fd5b815161159a81611715565b600080600060608486031215611aaa57600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611ad557600080fd5b8151801515811461159a57600080fd5b80820180821115610488576104886118f4565b81810381811115610488576104886118f4565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611b5b5784516001600160a01b031683529383019391830191600101611b36565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611b9957634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a40771397933ce7b5cc2b34ddd12e4858af96362d7f5c08e99b83f599d58f8db64736f6c63430008110033

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.