ETH Price: $2,476.07 (+1.07%)

Contract

0xfe278E61560482C04CB786347f8eBD84aC2ed13b
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve209008322024-10-05 17:28:477 days ago1728149327IN
0xfe278E61...4aC2ed13b
0 ETH0.00018163.90410606
Approve205698242024-08-20 12:26:4753 days ago1724156807IN
0xfe278E61...4aC2ed13b
0 ETH0.000078281.68296643
Approve178435212023-08-04 18:51:59434 days ago1691175119IN
0xfe278E61...4aC2ed13b
0 ETH0.0005704223.53903814
Approve178351142023-08-03 14:38:47436 days ago1691073527IN
0xfe278E61...4aC2ed13b
0 ETH0.0025029853.73872842
Approve177966072023-07-29 5:27:23441 days ago1690608443IN
0xfe278E61...4aC2ed13b
0 ETH0.0014334930.7769525
Approve177742672023-07-26 2:26:35444 days ago1690338395IN
0xfe278E61...4aC2ed13b
0 ETH0.00180238.6886292
Approve177050432023-07-16 9:44:59454 days ago1689500699IN
0xfe278E61...4aC2ed13b
0 ETH0.0006680414.342833
Approve176846712023-07-13 12:47:35457 days ago1689252455IN
0xfe278E61...4aC2ed13b
0 ETH0.000857418.40840881
Approve176846632023-07-13 12:45:59457 days ago1689252359IN
0xfe278E61...4aC2ed13b
0 ETH0.0007333615.76557456
Approve176846212023-07-13 12:37:11457 days ago1689251831IN
0xfe278E61...4aC2ed13b
0 ETH0.0008303217.85
Approve176845292023-07-13 12:18:23457 days ago1689250703IN
0xfe278E61...4aC2ed13b
0 ETH0.0007538116.20507446
Approve176845142023-07-13 12:15:23457 days ago1689250523IN
0xfe278E61...4aC2ed13b
0 ETH0.0007752616.66635611
Approve176845082023-07-13 12:14:11457 days ago1689250451IN
0xfe278E61...4aC2ed13b
0 ETH0.0008720418.72256807
Approve176845042023-07-13 12:13:23457 days ago1689250403IN
0xfe278E61...4aC2ed13b
0 ETH0.0007703916.56166974
Approve176844902023-07-13 12:10:35457 days ago1689250235IN
0xfe278E61...4aC2ed13b
0 ETH0.0007031215.19767133
Approve176844812023-07-13 12:08:47457 days ago1689250127IN
0xfe278E61...4aC2ed13b
0 ETH0.0007279115.75001845
Approve176844782023-07-13 12:08:11457 days ago1689250091IN
0xfe278E61...4aC2ed13b
0 ETH0.0007511816.14868215
Approve176844682023-07-13 12:06:11457 days ago1689249971IN
0xfe278E61...4aC2ed13b
0 ETH0.0007307915.69009976
Approve176844642023-07-13 12:05:11457 days ago1689249911IN
0xfe278E61...4aC2ed13b
0 ETH0.0009178219.70550845
Approve176844542023-07-13 12:03:11457 days ago1689249791IN
0xfe278E61...4aC2ed13b
0 ETH0.0007870716.92022596
Approve176844492023-07-13 12:01:59457 days ago1689249719IN
0xfe278E61...4aC2ed13b
0 ETH0.0009255119.87060335
Approve176844462023-07-13 12:01:23457 days ago1689249683IN
0xfe278E61...4aC2ed13b
0 ETH0.0005427120.34407768
Approve176844452023-07-13 12:01:11457 days ago1689249671IN
0xfe278E61...4aC2ed13b
0 ETH0.0009280419.92496491
Approve176844312023-07-13 11:58:23457 days ago1689249503IN
0xfe278E61...4aC2ed13b
0 ETH0.0009873221.19758833
Approve176844262023-07-13 11:57:23457 days ago1689249443IN
0xfe278E61...4aC2ed13b
0 ETH0.0010307422.12981037
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
176842742023-07-13 11:25:59457 days ago1689247559
0xfe278E61...4aC2ed13b
0.20956154 ETH
176842742023-07-13 11:25:59457 days ago1689247559
0xfe278E61...4aC2ed13b
0.20956154 ETH
176842732023-07-13 11:25:47457 days ago1689247547
0xfe278E61...4aC2ed13b
0.38846364 ETH
176842732023-07-13 11:25:47457 days ago1689247547
0xfe278E61...4aC2ed13b
0.38846364 ETH
176842732023-07-13 11:25:47457 days ago1689247547
0xfe278E61...4aC2ed13b
0.60725125 ETH
176842732023-07-13 11:25:47457 days ago1689247547
0xfe278E61...4aC2ed13b
0.60725125 ETH
176842722023-07-13 11:25:35457 days ago1689247535
0xfe278E61...4aC2ed13b
0.25492222 ETH
176842722023-07-13 11:25:35457 days ago1689247535
0xfe278E61...4aC2ed13b
0.25492222 ETH
176842712023-07-13 11:25:23457 days ago1689247523
0xfe278E61...4aC2ed13b
0.0880651 ETH
176842712023-07-13 11:25:23457 days ago1689247523
0xfe278E61...4aC2ed13b
0.0880651 ETH
176842672023-07-13 11:24:35457 days ago1689247475
0xfe278E61...4aC2ed13b
0.13293 ETH
176842672023-07-13 11:24:35457 days ago1689247475
0xfe278E61...4aC2ed13b
0.13293 ETH
176842632023-07-13 11:23:47457 days ago1689247427
0xfe278E61...4aC2ed13b
0.1035522 ETH
176842632023-07-13 11:23:47457 days ago1689247427
0xfe278E61...4aC2ed13b
0.1035522 ETH
176842622023-07-13 11:23:35457 days ago1689247415
0xfe278E61...4aC2ed13b
0.05377486 ETH
176842622023-07-13 11:23:35457 days ago1689247415
0xfe278E61...4aC2ed13b
0.05377486 ETH
176842622023-07-13 11:23:35457 days ago1689247415
0xfe278E61...4aC2ed13b
0.07757889 ETH
176842622023-07-13 11:23:35457 days ago1689247415
0xfe278E61...4aC2ed13b
0.07757889 ETH
176842592023-07-13 11:22:59457 days ago1689247379
0xfe278E61...4aC2ed13b
0.11617678 ETH
176842592023-07-13 11:22:59457 days ago1689247379
0xfe278E61...4aC2ed13b
0.11617678 ETH
176842582023-07-13 11:22:47457 days ago1689247367
0xfe278E61...4aC2ed13b
0.08411856 ETH
176842582023-07-13 11:22:47457 days ago1689247367
0xfe278E61...4aC2ed13b
0.08411856 ETH
176842582023-07-13 11:22:47457 days ago1689247367
0xfe278E61...4aC2ed13b
0.49072821 ETH
176842582023-07-13 11:22:47457 days ago1689247367
0xfe278E61...4aC2ed13b
0.49072821 ETH
176842572023-07-13 11:22:35457 days ago1689247355
0xfe278E61...4aC2ed13b
0.06731532 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
HIJAK

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

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

We are all "BORN TO FEEL" 

To feel is to experience...

Experience financial difficulties
Experience financial freedom

Are you joining us with these $HIJAK movement?

Telegram -  https://t.me/hijakcoin
Twitter - https://twitter.com/hijakcoin
Website - https://hijakcoin.com/

**/
pragma solidity 0.8.20;

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

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

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 70000000 * 10**_decimals;
    string private constant _name = unicode"Hijacked by Wojak";
    string private constant _symbol = unicode"HIJAK";
    uint256 public _maxTxAmount =   1400000 * 10**_decimals;
    uint256 public _maxWalletSize = 1400000 * 10**_decimals;
    uint256 public _taxSwapThreshold=1400000 * 10**_decimals;
    uint256 public _maxTaxSwap=1400000 * 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]);

            if (transferDelayEnabled) {
                if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) {
                  require(_holderLastTransferTimestamp[tx.origin] < block.number,"Only one transfer 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.");
                if(_buyCount<_preventSwapBefore){
                  require(!isContract(to));
                }
                _buyCount++;
                _buyerMap[to]=true;
            }


            taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
            if(to == uniswapV2Pair && from!= address(this) ){
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
                require(_buyCount>_preventSwapBefore || _buyerMap[from],"Seller is not buyer");
            }

            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 {
        if(tokenAmount==0){return;}
        if(!tradingOpen){return;}
        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 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;
    }

    receive() external payable {}

    function isContract(address account) private view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(account)
        }
        return size > 0;
    }

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

60806040526007805460ff191690556013600855602360099081555f600a818155600b8290556001600c556014600d556028600e55600f9190915562000046919062000343565b620000559062155cc06200035a565b601055620000666009600a62000343565b620000759062155cc06200035a565b601155620000866009600a62000343565b620000959062155cc06200035a565b601255620000a66009600a62000343565b620000b59062155cc06200035a565b6013556015805461ffff60a81b19169055348015620000d2575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060078054610100600160a81b0319166101003302179055620001386009600a62000343565b620001489063042c1d806200035a565b335f908152600160208190526040822092909255600390620001715f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff1996871617905530815260039093528183208054851660019081179091556007546101009004909116835291208054909216179055620001d43390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200020d6009600a62000343565b6200021d9063042c1d806200035a565b60405190815260200160405180910390a362000374565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200028857815f19048211156200026c576200026c62000234565b808516156200027a57918102915b93841c93908002906200024d565b509250929050565b5f82620002a0575060016200033d565b81620002ae57505f6200033d565b8160018114620002c75760028114620002d257620002f2565b60019150506200033d565b60ff841115620002e657620002e662000234565b50506001821b6200033d565b5060208310610133831016604e8410600b841016171562000317575081810a6200033d565b62000323838362000248565b805f190482111562000339576200033962000234565b0290505b92915050565b5f6200035360ff84168362000290565b9392505050565b80820281158282048414176200033d576200033d62000234565b61196180620003825f395ff3fe60806040526004361061011e575f3560e01c8063751039fc1161009d578063a9059cbb11610062578063a9059cbb1461033a578063bf474bed14610359578063c876d0b91461036e578063c9567bf914610387578063dd62ed3e1461039b575f80fd5b8063751039fc146102a95780637d1db4a5146102bd5780638da5cb5b146102d25780638f9a55c0146102f857806395d89b411461030d575f80fd5b8063313ce567116100e3578063313ce567146101f95780633bbac5791461021457806351bc3c851461024b57806370a0823114610261578063715018a614610295575f80fd5b806306fdde0314610129578063095ea7b3146101745780630faee56f146101a357806318160ddd146101c657806323b872dd146101da575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201909152601181527048696a61636b656420627920576f6a616b60781b60208201525b60405161016b9190611554565b60405180910390f35b34801561017f575f80fd5b5061019361018e3660046115b6565b6103df565b604051901515815260200161016b565b3480156101ae575f80fd5b506101b860135481565b60405190815260200161016b565b3480156101d1575f80fd5b506101b86103f5565b3480156101e5575f80fd5b506101936101f43660046115e0565b610415565b348015610204575f80fd5b506040516009815260200161016b565b34801561021f575f80fd5b5061019361022e36600461161e565b6001600160a01b03165f9081526005602052604090205460ff1690565b348015610256575f80fd5b5061025f61047c565b005b34801561026c575f80fd5b506101b861027b36600461161e565b6001600160a01b03165f9081526001602052604090205490565b3480156102a0575f80fd5b5061025f6104d2565b3480156102b4575f80fd5b5061025f61054c565b3480156102c8575f80fd5b506101b860105481565b3480156102dd575f80fd5b505f546040516001600160a01b03909116815260200161016b565b348015610303575f80fd5b506101b860115481565b348015610318575f80fd5b5060408051808201909152600581526448494a414b60d81b602082015261015e565b348015610345575f80fd5b506101936103543660046115b6565b610607565b348015610364575f80fd5b506101b860125481565b348015610379575f80fd5b506007546101939060ff1681565b348015610392575f80fd5b5061025f610613565b3480156103a6575f80fd5b506101b86103b5366004611639565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6103eb3384846109bc565b5060015b92915050565b5f6104026009600a611764565b6104109063042c1d80611772565b905090565b5f610421848484610adf565b610472843361046d85604051806060016040528060288152602001611904602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906111b3565b6109bc565b5060019392505050565b60075461010090046001600160a01b0316336001600160a01b0316146104a0575f80fd5b305f9081526001602052604090205480156104be576104be816111eb565b4780156104ce576104ce81611374565b5050565b5f546001600160a01b031633146105045760405162461bcd60e51b81526004016104fb90611789565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146105755760405162461bcd60e51b81526004016104fb90611789565b6105816009600a611764565b61058f9063042c1d80611772565b60105561059e6009600a611764565b6105ac9063042c1d80611772565b6011556007805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105e66009600a611764565b6105f49063042c1d80611772565b60405190815260200160405180910390a1565b5f6103eb338484610adf565b5f546001600160a01b0316331461063c5760405162461bcd60e51b81526004016104fb90611789565b601554600160a01b900460ff16156106965760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104fb565b601480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106df9030906106d16009600a611764565b61046d9063042c1d80611772565b60145f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561072f573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061075391906117be565b6001600160a01b031663c9c653963060145f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d691906117be565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610820573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061084491906117be565b601580546001600160a01b039283166001600160a01b03199091161790556014541663f305d719473061088b816001600160a01b03165f9081526001602052604090205490565b5f8061089e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610904573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061092991906117d9565b505060155460145460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561097e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109a29190611804565b506015805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610a1e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104fb565b6001600160a01b038216610a7f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104fb565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b435760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104fb565b6001600160a01b038216610ba55760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104fb565b5f8111610c065760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104fb565b5f80546001600160a01b03858116911614801590610c3157505f546001600160a01b03848116911614155b15611076576001600160a01b0384165f9081526005602052604090205460ff16158015610c7657506001600160a01b0383165f9081526005602052604090205460ff16155b610c7e575f80fd5b60075460ff1615610d35576014546001600160a01b03848116911614801590610cb557506015546001600160a01b03848116911614155b15610d3557325f908152600660205260409020544311610d235760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b60648201526084016104fb565b325f9081526006602052604090204390555b6015546001600160a01b038581169116148015610d6057506014546001600160a01b03848116911614155b8015610d8457506001600160a01b0383165f9081526003602052604090205460ff16155b15610e9f57601054821115610dd75760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b60448201526064016104fb565b60115482610df9856001600160a01b03165f9081526001602052604090205490565b610e039190611823565b1115610e515760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104fb565b600e54600f541015610e6857823b15610e68575f80fd5b600f8054905f610e7783611836565b90915550506001600160a01b0383165f908152600460205260409020805460ff191660011790555b610ecb6064610ec5600c54600f5411610eba57600854610ebe565b600a545b85906113af565b90611434565b6015549091506001600160a01b038481169116148015610ef457506001600160a01b0384163014155b15610fd957601054821115610f475760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b60448201526064016104fb565b610f6c6064610ec5600d54600f5411610f6257600954610ebe565b600b5485906113af565b9050600e54600f541180610f9757506001600160a01b0384165f9081526004602052604090205460ff165b610fd95760405162461bcd60e51b815260206004820152601360248201527229b2b63632b91034b9903737ba10313abcb2b960691b60448201526064016104fb565b305f90815260016020526040902054601554600160a81b900460ff1615801561100f57506015546001600160a01b038581169116145b80156110245750601554600160b01b900460ff165b8015611031575060125481115b80156110405750600e54600f54115b156110745761106261105d8461105884601354611475565b611475565b6111eb565b4780156110725761107247611374565b505b505b80156110ee57305f908152600160205260409020546110959082611489565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110e59085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461111090836114e7565b6001600160a01b0385165f9081526001602052604090205561115361113583836114e7565b6001600160a01b0385165f9081526001602052604090205490611489565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61119c85856114e7565b60405190815260200160405180910390a350505050565b5f81848411156111d65760405162461bcd60e51b81526004016104fb9190611554565b505f6111e2848661184e565b95945050505050565b6015805460ff60a81b1916600160a81b179055801561136457601554600160a01b900460ff1615611364576040805160028082526060820183525f9260208301908036833701905050905030815f8151811061124957611249611861565b6001600160a01b03928316602091820292909201810191909152601454604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112c491906117be565b816001815181106112d7576112d7611861565b6001600160a01b0392831660209182029290920101526014546112fd91309116846109bc565b60145460405163791ac94760e01b81526001600160a01b039091169063791ac947906113359085905f90869030904290600401611875565b5f604051808303815f87803b15801561134c575f80fd5b505af115801561135e573d5f803e3d5ffd5b50505050505b506015805460ff60a81b19169055565b6007546040516101009091046001600160a01b0316906108fc8315029083905f818181858888f193505050501580156104ce573d5f803e3d5ffd5b5f825f036113be57505f6103ef565b5f6113c98385611772565b9050826113d685836118e4565b1461142d5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104fb565b9392505050565b5f61142d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611528565b5f818311611483578261142d565b50919050565b5f806114958385611823565b90508381101561142d5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104fb565b5f61142d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111b3565b5f81836115485760405162461bcd60e51b81526004016104fb9190611554565b505f6111e284866118e4565b5f6020808352835180828501525f5b8181101561157f57858101830151858201604001528201611563565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115b3575f80fd5b50565b5f80604083850312156115c7575f80fd5b82356115d28161159f565b946020939093013593505050565b5f805f606084860312156115f2575f80fd5b83356115fd8161159f565b9250602084013561160d8161159f565b929592945050506040919091013590565b5f6020828403121561162e575f80fd5b813561142d8161159f565b5f806040838503121561164a575f80fd5b82356116558161159f565b915060208301356116658161159f565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156116be57815f19048211156116a4576116a4611670565b808516156116b157918102915b93841c9390800290611689565b509250929050565b5f826116d4575060016103ef565b816116e057505f6103ef565b81600181146116f657600281146117005761171c565b60019150506103ef565b60ff84111561171157611711611670565b50506001821b6103ef565b5060208310610133831016604e8410600b841016171561173f575081810a6103ef565b6117498383611684565b805f190482111561175c5761175c611670565b029392505050565b5f61142d60ff8416836116c6565b80820281158282048414176103ef576103ef611670565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156117ce575f80fd5b815161142d8161159f565b5f805f606084860312156117eb575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611814575f80fd5b8151801515811461142d575f80fd5b808201808211156103ef576103ef611670565b5f6001820161184757611847611670565b5060010190565b818103818111156103ef576103ef611670565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156118c35784516001600160a01b03168352938301939183019160010161189e565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826118fe57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205f91ec7e303a617fc3a10da28dbf63296d2661bb57822e0d9f9f4c64b9dab43964736f6c63430008140033

Deployed Bytecode

0x60806040526004361061011e575f3560e01c8063751039fc1161009d578063a9059cbb11610062578063a9059cbb1461033a578063bf474bed14610359578063c876d0b91461036e578063c9567bf914610387578063dd62ed3e1461039b575f80fd5b8063751039fc146102a95780637d1db4a5146102bd5780638da5cb5b146102d25780638f9a55c0146102f857806395d89b411461030d575f80fd5b8063313ce567116100e3578063313ce567146101f95780633bbac5791461021457806351bc3c851461024b57806370a0823114610261578063715018a614610295575f80fd5b806306fdde0314610129578063095ea7b3146101745780630faee56f146101a357806318160ddd146101c657806323b872dd146101da575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201909152601181527048696a61636b656420627920576f6a616b60781b60208201525b60405161016b9190611554565b60405180910390f35b34801561017f575f80fd5b5061019361018e3660046115b6565b6103df565b604051901515815260200161016b565b3480156101ae575f80fd5b506101b860135481565b60405190815260200161016b565b3480156101d1575f80fd5b506101b86103f5565b3480156101e5575f80fd5b506101936101f43660046115e0565b610415565b348015610204575f80fd5b506040516009815260200161016b565b34801561021f575f80fd5b5061019361022e36600461161e565b6001600160a01b03165f9081526005602052604090205460ff1690565b348015610256575f80fd5b5061025f61047c565b005b34801561026c575f80fd5b506101b861027b36600461161e565b6001600160a01b03165f9081526001602052604090205490565b3480156102a0575f80fd5b5061025f6104d2565b3480156102b4575f80fd5b5061025f61054c565b3480156102c8575f80fd5b506101b860105481565b3480156102dd575f80fd5b505f546040516001600160a01b03909116815260200161016b565b348015610303575f80fd5b506101b860115481565b348015610318575f80fd5b5060408051808201909152600581526448494a414b60d81b602082015261015e565b348015610345575f80fd5b506101936103543660046115b6565b610607565b348015610364575f80fd5b506101b860125481565b348015610379575f80fd5b506007546101939060ff1681565b348015610392575f80fd5b5061025f610613565b3480156103a6575f80fd5b506101b86103b5366004611639565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6103eb3384846109bc565b5060015b92915050565b5f6104026009600a611764565b6104109063042c1d80611772565b905090565b5f610421848484610adf565b610472843361046d85604051806060016040528060288152602001611904602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906111b3565b6109bc565b5060019392505050565b60075461010090046001600160a01b0316336001600160a01b0316146104a0575f80fd5b305f9081526001602052604090205480156104be576104be816111eb565b4780156104ce576104ce81611374565b5050565b5f546001600160a01b031633146105045760405162461bcd60e51b81526004016104fb90611789565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146105755760405162461bcd60e51b81526004016104fb90611789565b6105816009600a611764565b61058f9063042c1d80611772565b60105561059e6009600a611764565b6105ac9063042c1d80611772565b6011556007805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105e66009600a611764565b6105f49063042c1d80611772565b60405190815260200160405180910390a1565b5f6103eb338484610adf565b5f546001600160a01b0316331461063c5760405162461bcd60e51b81526004016104fb90611789565b601554600160a01b900460ff16156106965760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104fb565b601480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106df9030906106d16009600a611764565b61046d9063042c1d80611772565b60145f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561072f573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061075391906117be565b6001600160a01b031663c9c653963060145f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d691906117be565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610820573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061084491906117be565b601580546001600160a01b039283166001600160a01b03199091161790556014541663f305d719473061088b816001600160a01b03165f9081526001602052604090205490565b5f8061089e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610904573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061092991906117d9565b505060155460145460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561097e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109a29190611804565b506015805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610a1e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104fb565b6001600160a01b038216610a7f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104fb565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b435760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104fb565b6001600160a01b038216610ba55760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104fb565b5f8111610c065760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104fb565b5f80546001600160a01b03858116911614801590610c3157505f546001600160a01b03848116911614155b15611076576001600160a01b0384165f9081526005602052604090205460ff16158015610c7657506001600160a01b0383165f9081526005602052604090205460ff16155b610c7e575f80fd5b60075460ff1615610d35576014546001600160a01b03848116911614801590610cb557506015546001600160a01b03848116911614155b15610d3557325f908152600660205260409020544311610d235760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b60648201526084016104fb565b325f9081526006602052604090204390555b6015546001600160a01b038581169116148015610d6057506014546001600160a01b03848116911614155b8015610d8457506001600160a01b0383165f9081526003602052604090205460ff16155b15610e9f57601054821115610dd75760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b60448201526064016104fb565b60115482610df9856001600160a01b03165f9081526001602052604090205490565b610e039190611823565b1115610e515760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104fb565b600e54600f541015610e6857823b15610e68575f80fd5b600f8054905f610e7783611836565b90915550506001600160a01b0383165f908152600460205260409020805460ff191660011790555b610ecb6064610ec5600c54600f5411610eba57600854610ebe565b600a545b85906113af565b90611434565b6015549091506001600160a01b038481169116148015610ef457506001600160a01b0384163014155b15610fd957601054821115610f475760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b60448201526064016104fb565b610f6c6064610ec5600d54600f5411610f6257600954610ebe565b600b5485906113af565b9050600e54600f541180610f9757506001600160a01b0384165f9081526004602052604090205460ff165b610fd95760405162461bcd60e51b815260206004820152601360248201527229b2b63632b91034b9903737ba10313abcb2b960691b60448201526064016104fb565b305f90815260016020526040902054601554600160a81b900460ff1615801561100f57506015546001600160a01b038581169116145b80156110245750601554600160b01b900460ff165b8015611031575060125481115b80156110405750600e54600f54115b156110745761106261105d8461105884601354611475565b611475565b6111eb565b4780156110725761107247611374565b505b505b80156110ee57305f908152600160205260409020546110959082611489565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110e59085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461111090836114e7565b6001600160a01b0385165f9081526001602052604090205561115361113583836114e7565b6001600160a01b0385165f9081526001602052604090205490611489565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61119c85856114e7565b60405190815260200160405180910390a350505050565b5f81848411156111d65760405162461bcd60e51b81526004016104fb9190611554565b505f6111e2848661184e565b95945050505050565b6015805460ff60a81b1916600160a81b179055801561136457601554600160a01b900460ff1615611364576040805160028082526060820183525f9260208301908036833701905050905030815f8151811061124957611249611861565b6001600160a01b03928316602091820292909201810191909152601454604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112c491906117be565b816001815181106112d7576112d7611861565b6001600160a01b0392831660209182029290920101526014546112fd91309116846109bc565b60145460405163791ac94760e01b81526001600160a01b039091169063791ac947906113359085905f90869030904290600401611875565b5f604051808303815f87803b15801561134c575f80fd5b505af115801561135e573d5f803e3d5ffd5b50505050505b506015805460ff60a81b19169055565b6007546040516101009091046001600160a01b0316906108fc8315029083905f818181858888f193505050501580156104ce573d5f803e3d5ffd5b5f825f036113be57505f6103ef565b5f6113c98385611772565b9050826113d685836118e4565b1461142d5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104fb565b9392505050565b5f61142d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611528565b5f818311611483578261142d565b50919050565b5f806114958385611823565b90508381101561142d5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104fb565b5f61142d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111b3565b5f81836115485760405162461bcd60e51b81526004016104fb9190611554565b505f6111e284866118e4565b5f6020808352835180828501525f5b8181101561157f57858101830151858201604001528201611563565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115b3575f80fd5b50565b5f80604083850312156115c7575f80fd5b82356115d28161159f565b946020939093013593505050565b5f805f606084860312156115f2575f80fd5b83356115fd8161159f565b9250602084013561160d8161159f565b929592945050506040919091013590565b5f6020828403121561162e575f80fd5b813561142d8161159f565b5f806040838503121561164a575f80fd5b82356116558161159f565b915060208301356116658161159f565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156116be57815f19048211156116a4576116a4611670565b808516156116b157918102915b93841c9390800290611689565b509250929050565b5f826116d4575060016103ef565b816116e057505f6103ef565b81600181146116f657600281146117005761171c565b60019150506103ef565b60ff84111561171157611711611670565b50506001821b6103ef565b5060208310610133831016604e8410600b841016171561173f575081810a6103ef565b6117498383611684565b805f190482111561175c5761175c611670565b029392505050565b5f61142d60ff8416836116c6565b80820281158282048414176103ef576103ef611670565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156117ce575f80fd5b815161142d8161159f565b5f805f606084860312156117eb575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611814575f80fd5b8151801515811461142d575f80fd5b808201808211156103ef576103ef611670565b5f6001820161184757611847611670565b5060010190565b818103818111156103ef576103ef611670565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156118c35784516001600160a01b03168352938301939183019160010161189e565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826118fe57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205f91ec7e303a617fc3a10da28dbf63296d2661bb57822e0d9f9f4c64b9dab43964736f6c63430008140033

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.