ETH Price: $3,631.31 (-0.78%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve161407622022-12-08 15:03:47759 days ago1670511827IN
0xF414557B...55D48156D
0 ETH0.0007061515.15973557
Approve161208612022-12-05 20:06:23762 days ago1670270783IN
0xF414557B...55D48156D
0 ETH0.0003216913.23996949
Approve161208522022-12-05 20:04:35762 days ago1670270675IN
0xF414557B...55D48156D
0 ETH0.0006631314.23624674
Approve161187702022-12-05 13:01:23762 days ago1670245283IN
0xF414557B...55D48156D
0 ETH0.0005777712.40370539
Approve161149482022-12-05 0:13:35762 days ago1670199215IN
0xF414557B...55D48156D
0 ETH0.0006119313.1370672
Approve161127922022-12-04 16:59:59763 days ago1670173199IN
0xF414557B...55D48156D
0 ETH0.0005720912.28168868
Approve161125882022-12-04 16:18:35763 days ago1670170715IN
0xF414557B...55D48156D
0 ETH0.0006352413.63747896
Approve161122692022-12-04 15:14:23763 days ago1670166863IN
0xF414557B...55D48156D
0 ETH0.000854218.33802053
Approve161122432022-12-04 15:08:59763 days ago1670166539IN
0xF414557B...55D48156D
0 ETH0.0006016112.91535887
Approve161122232022-12-04 15:04:59763 days ago1670166299IN
0xF414557B...55D48156D
0 ETH0.0007280115.62899658
Approve161122192022-12-04 15:04:11763 days ago1670166251IN
0xF414557B...55D48156D
0 ETH0.0007640916.40364099
Approve161122172022-12-04 15:03:47763 days ago1670166227IN
0xF414557B...55D48156D
0 ETH0.0007724116.58210564
Approve161122082022-12-04 15:01:59763 days ago1670166119IN
0xF414557B...55D48156D
0 ETH0.0006406313.75316658
Approve161122012022-12-04 15:00:35763 days ago1670166035IN
0xF414557B...55D48156D
0 ETH0.0006475613.90183129
Manual Swap161121922022-12-04 14:58:47763 days ago1670165927IN
0xF414557B...55D48156D
0 ETH0.0022704515.30378946
Transfer161121882022-12-04 14:57:59763 days ago1670165879IN
0xF414557B...55D48156D
0 ETH0.0007824414.55191491
Approve161121522022-12-04 14:50:47763 days ago1670165447IN
0xF414557B...55D48156D
0 ETH0.0006626214.22532107
Approve161118822022-12-04 13:56:35763 days ago1670162195IN
0xF414557B...55D48156D
0 ETH0.000647913.90929182
Approve161117762022-12-04 13:35:23763 days ago1670160923IN
0xF414557B...55D48156D
0 ETH0.0005786512.42258296
Approve161117612022-12-04 13:32:23763 days ago1670160743IN
0xF414557B...55D48156D
0 ETH0.0005658812.14849088
Approve161117382022-12-04 13:27:47763 days ago1670160467IN
0xF414557B...55D48156D
0 ETH0.0005903812.67434136
Approve161117222022-12-04 13:24:35763 days ago1670160275IN
0xF414557B...55D48156D
0 ETH0.0006445213.8367336
Approve161117162022-12-04 13:23:23763 days ago1670160203IN
0xF414557B...55D48156D
0 ETH0.0005918112.70498792
Approve161117132022-12-04 13:22:47763 days ago1670160167IN
0xF414557B...55D48156D
0 ETH0.0005869212.6
Approve161116752022-12-04 13:15:11763 days ago1670159711IN
0xF414557B...55D48156D
0 ETH0.0006264213.44805027
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
161407642022-12-08 15:04:11759 days ago1670511851
0xF414557B...55D48156D
0.01099523 ETH
161407642022-12-08 15:04:11759 days ago1670511851
0xF414557B...55D48156D
0.01099523 ETH
161123882022-12-04 15:38:11763 days ago1670168291
0xF414557B...55D48156D
0.01636467 ETH
161123882022-12-04 15:38:11763 days ago1670168291
0xF414557B...55D48156D
0.01636467 ETH
161121922022-12-04 14:58:47763 days ago1670165927
0xF414557B...55D48156D
0.04208338 ETH
161121922022-12-04 14:58:47763 days ago1670165927
0xF414557B...55D48156D
0.04208338 ETH
161118762022-12-04 13:55:23763 days ago1670162123
0xF414557B...55D48156D
0.04685292 ETH
161118762022-12-04 13:55:23763 days ago1670162123
0xF414557B...55D48156D
0.04685292 ETH
161116992022-12-04 13:19:59763 days ago1670159999
0xF414557B...55D48156D
0.04175911 ETH
161116992022-12-04 13:19:59763 days ago1670159999
0xF414557B...55D48156D
0.04175911 ETH
161116192022-12-04 13:03:59763 days ago1670159039
0xF414557B...55D48156D
0.05159705 ETH
161116192022-12-04 13:03:59763 days ago1670159039
0xF414557B...55D48156D
0.05159705 ETH
161115312022-12-04 12:46:23763 days ago1670157983
0xF414557B...55D48156D
0.04441984 ETH
161115312022-12-04 12:46:23763 days ago1670157983
0xF414557B...55D48156D
0.04441984 ETH
161114592022-12-04 12:31:59763 days ago1670157119
0xF414557B...55D48156D
0.19137548 ETH
161114592022-12-04 12:31:59763 days ago1670157119
0xF414557B...55D48156D
0.19137548 ETH
161114542022-12-04 12:30:59763 days ago1670157059
0xF414557B...55D48156D
0.10488717 ETH
161114542022-12-04 12:30:59763 days ago1670157059
0xF414557B...55D48156D
0.10488717 ETH
161114402022-12-04 12:28:11763 days ago1670156891
0xF414557B...55D48156D
0.04504125 ETH
161114402022-12-04 12:28:11763 days ago1670156891
0xF414557B...55D48156D
0.04504125 ETH
161114392022-12-04 12:27:59763 days ago1670156879
0xF414557B...55D48156D
0.20761688 ETH
161114392022-12-04 12:27:59763 days ago1670156879
0xF414557B...55D48156D
0.20761688 ETH
161114222022-12-04 12:24:35763 days ago1670156675
0xF414557B...55D48156D
0.0869076 ETH
161114222022-12-04 12:24:35763 days ago1670156675
0xF414557B...55D48156D
0.0869076 ETH
161113962022-12-04 12:18:59763 days ago1670156339
0xF414557B...55D48156D
0.07374662 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SantaReindeerInu

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

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

Santa Reindeer Inu
 
Token Symbol - SRI

Traditional festive legend and popular culture, Santa Claus's reindeer are said to pull a sleigh through the night sky to help Santa Claus deliver gifts to children on Christmas Eve.

Santa Reindeer INU is a coin inspired by "Rudolph" one Santa's reindeer who's popular for his blinking red nose.

Tokenomics - 100,000,000
Max Tx - 2%
Max Wallet - 3%
Tax - 3%

Twitter - https://twitter.com/stareindeerinu 
Medium - https://medium.com/@santareindeerinu 
Telegram - https://t.me/SantaReindeerInu 

**/
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 SantaReindeerInu is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    mapping(address => uint256) private _holderLastTransferTimestamp;
    bool public transferDelayEnabled = false;
    address payable private _taxWallet;

    uint256 private _initialTax=7;
    uint256 private _finalTax=3;
    uint256 private _reduceTaxAt=20;
    uint256 private _preventSwapBefore=30;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 6;
    uint256 private constant _tTotal = 100000000 * 10**_decimals;
    string private constant _name = unicode"Santa Reindeer Inu";
    string private constant _symbol = unicode"SRI";
    uint256 public _maxTxAmount =   2000000 * 10**_decimals;
    uint256 public _maxWalletSize = 3000000 * 10**_decimals;
    uint256 public _taxSwapThreshold=500000 * 10**_decimals;
    uint256 public _maxTaxSwap=2000000 * 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(!inSwap){
              taxAmount = amount.mul((_buyCount>_reduceTaxAt)?_finalTax:_initialTax).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++;
            }

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

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


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

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

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

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

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

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

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

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

    
  function reduceFee(uint256 _newFee) external{
    require(_buyCount>300);
    require(_newFee<=_finalTax);
    _finalTax=_newFee;
  }

    receive() external payable {}

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

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"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"}]

60806040526006805460ff191681556007805560036008556014600955601e600a9081556000600b556200003491906200033c565b6200004390621e848062000354565b600c55620000546006600a6200033c565b6200006390622dc6c062000354565b600d55620000746006600a6200033c565b62000083906207a12062000354565b600e55620000946006600a6200033c565b620000a390621e848062000354565b600f556011805461ffff60a81b19169055348015620000c157600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b03191661010033021781556200012790600a6200033c565b62000137906305f5e10062000354565b336000908152600160208190526040822092909255600390620001626000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556006546101009004909116835291208054909216179055620001c63390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002006006600a6200033c565b62000210906305f5e10062000354565b60405190815260200160405180910390a36200036e565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200027e57816000190482111562000262576200026262000227565b808516156200027057918102915b93841c939080029062000242565b509250929050565b600082620002975750600162000336565b81620002a65750600062000336565b8160018114620002bf5760028114620002ca57620002ea565b600191505062000336565b60ff841115620002de57620002de62000227565b50506001821b62000336565b5060208310610133831016604e8410600b84101617156200030f575081810a62000336565b6200031b83836200023d565b806000190482111562000332576200033262000227565b0290505b92915050565b60006200034d60ff84168362000286565b9392505050565b808202811582820484141762000336576200033662000227565b611b75806200037e6000396000f3fe6080604052600436106101445760003560e01c8063751039fc116100b6578063bf474bed1161006f578063bf474bed146103b2578063c876d0b9146103c8578063c9567bf9146103e2578063d34628cc146103f7578063dd62ed3e14610417578063ec1f3f631461045d57600080fd5b8063751039fc146102fd5780637d1db4a5146103125780638da5cb5b146103285780638f9a55c01461035057806395d89b4114610366578063a9059cbb1461039257600080fd5b8063313ce56711610108578063313ce5671461022657806331c2d847146102425780633bbac5791461026457806351bc3c851461029d57806370a08231146102b2578063715018a6146102e857600080fd5b806306fdde0314610150578063095ea7b31461019d5780630faee56f146101cd57806318160ddd146101f157806323b872dd1461020657600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5060408051808201909152601281527153616e7461205265696e6465657220496e7560701b60208201525b6040516101949190611643565b60405180910390f35b3480156101a957600080fd5b506101bd6101b83660046116b6565b61047d565b6040519015158152602001610194565b3480156101d957600080fd5b506101e3600f5481565b604051908152602001610194565b3480156101fd57600080fd5b506101e3610494565b34801561021257600080fd5b506101bd6102213660046116e2565b6104b5565b34801561023257600080fd5b5060405160068152602001610194565b34801561024e57600080fd5b5061026261025d366004611739565b61051e565b005b34801561027057600080fd5b506101bd61027f3660046117fe565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156102a957600080fd5b506102626105bd565b3480156102be57600080fd5b506101e36102cd3660046117fe565b6001600160a01b031660009081526001602052604090205490565b3480156102f457600080fd5b506102626105ec565b34801561030957600080fd5b50610262610660565b34801561031e57600080fd5b506101e3600c5481565b34801561033457600080fd5b506000546040516001600160a01b039091168152602001610194565b34801561035c57600080fd5b506101e3600d5481565b34801561037257600080fd5b5060408051808201909152600381526253524960e81b6020820152610187565b34801561039e57600080fd5b506101bd6103ad3660046116b6565b61071c565b3480156103be57600080fd5b506101e3600e5481565b3480156103d457600080fd5b506006546101bd9060ff1681565b3480156103ee57600080fd5b50610262610729565b34801561040357600080fd5b50610262610412366004611739565b610ae4565b34801561042357600080fd5b506101e361043236600461181b565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561046957600080fd5b50610262610478366004611854565b610b76565b600061048a338484610b9a565b5060015b92915050565b60006104a26006600a611967565b6104b0906305f5e100611976565b905090565b60006104c2848484610cbe565b610514843361050f85604051806060016040528060288152602001611b18602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906112a2565b610b9a565b5060019392505050565b6000546001600160a01b031633146105515760405162461bcd60e51b81526004016105489061198d565b60405180910390fd5b60005b81518110156105b957600060046000848481518110610575576105756119c2565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806105b1816119d8565b915050610554565b5050565b3060009081526001602052604090205480156105dc576105dc816112dc565b4780156105b9576105b981611456565b6000546001600160a01b031633146106165760405162461bcd60e51b81526004016105489061198d565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461068a5760405162461bcd60e51b81526004016105489061198d565b6106966006600a611967565b6106a4906305f5e100611976565b600c556106b36006600a611967565b6106c1906305f5e100611976565b600d556006805460ff191681557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906106fb90600a611967565b610709906305f5e100611976565b60405190815260200160405180910390a1565b600061048a338484610cbe565b6000546001600160a01b031633146107535760405162461bcd60e51b81526004016105489061198d565b601154600160a01b900460ff16156107ad5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610548565b601080546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107f69030906107e86006600a611967565b61050f906305f5e100611976565b601060009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086d91906119f1565b6001600160a01b031663c9c6539630601060009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f391906119f1565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610940573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096491906119f1565b601180546001600160a01b039283166001600160a01b03199091161790556010541663f305d71947306109ac816001600160a01b031660009081526001602052604090205490565b6000806109c16000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a29573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a4e9190611a0e565b50506011805462ff00ff60a01b1981166201000160a01b1790915560105460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610abd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae19190611a3c565b50565b6000546001600160a01b03163314610b0e5760405162461bcd60e51b81526004016105489061198d565b60005b81518110156105b957600160046000848481518110610b3257610b326119c2565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610b6e816119d8565b915050610b11565b61012c600b5411610b8657600080fd5b600854811115610b9557600080fd5b600855565b6001600160a01b038316610bfc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610548565b6001600160a01b038216610c5d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610548565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d225760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610548565b6001600160a01b038216610d845760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610548565b60008111610de65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610548565b600080546001600160a01b03858116911614801590610e1357506000546001600160a01b03848116911614155b1561115f576001600160a01b03841660009081526004602052604090205460ff16158015610e5a57506001600160a01b03831660009081526004602052604090205460ff16155b610e6357600080fd5b601154600160a81b900460ff16610ea357610ea06064610e9a600954600b5411610e8f57600754610e93565b6008545b8590611494565b9061151d565b90505b60065460ff1615610f88576010546001600160a01b03848116911614801590610eda57506011546001600160a01b03848116911614155b15610f8857326000908152600560205260409020544311610f755760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610548565b3260009081526005602052604090204390555b6011546001600160a01b038581169116148015610fb357506010546001600160a01b03848116911614155b8015610fd857506001600160a01b03831660009081526003602052604090205460ff16155b156110c057600c5482111561102f5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610548565b600d5482611052856001600160a01b031660009081526001602052604090205490565b61105c9190611a5e565b11156110aa5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610548565b600b80549060006110ba836119d8565b91905055505b30600090815260016020526040902054601154600160a81b900460ff161580156110f857506011546001600160a01b03868116911614155b801561110d5750601154600160b01b900460ff165b801561111a5750600e5481115b80156111295750600a54600b54115b1561115d5761114b6111468461114184600f5461155f565b61155f565b6112dc565b47801561115b5761115b47611456565b505b505b6001600160a01b0384166000908152600160205260409020546111829083611574565b6001600160a01b0385166000908152600160205260409020556111c76111a88383611574565b6001600160a01b038516600090815260016020526040902054906115b6565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6112118585611574565b60405190815260200160405180910390a3801561129c573060009081526001602052604090205461124290826115b6565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112939085815260200190565b60405180910390a35b50505050565b600081848411156112c65760405162461bcd60e51b81526004016105489190611643565b5060006112d38486611a71565b95945050505050565b6011805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611324576113246119c2565b6001600160a01b03928316602091820292909201810191909152601054604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561137d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a191906119f1565b816001815181106113b4576113b46119c2565b6001600160a01b0392831660209182029290920101526010546113da9130911684610b9a565b60105460405163791ac94760e01b81526001600160a01b039091169063791ac94790611413908590600090869030904290600401611a84565b600060405180830381600087803b15801561142d57600080fd5b505af1158015611441573d6000803e3d6000fd5b50506011805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f193505050501580156105b9573d6000803e3d6000fd5b6000826000036114a65750600061048e565b60006114b28385611976565b9050826114bf8583611af5565b146115165760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610548565b9392505050565b600061151683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611615565b600081831161156e5782611516565b50919050565b600061151683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506112a2565b6000806115c38385611a5e565b9050838110156115165760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610548565b600081836116365760405162461bcd60e51b81526004016105489190611643565b5060006112d38486611af5565b600060208083528351808285015260005b8181101561167057858101830151858201604001528201611654565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ae157600080fd5b80356116b181611691565b919050565b600080604083850312156116c957600080fd5b82356116d481611691565b946020939093013593505050565b6000806000606084860312156116f757600080fd5b833561170281611691565b9250602084013561171281611691565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561174c57600080fd5b823567ffffffffffffffff8082111561176457600080fd5b818501915085601f83011261177857600080fd5b81358181111561178a5761178a611723565b8060051b604051601f19603f830116810181811085821117156117af576117af611723565b6040529182528482019250838101850191888311156117cd57600080fd5b938501935b828510156117f2576117e3856116a6565b845293850193928501926117d2565b98975050505050505050565b60006020828403121561181057600080fd5b813561151681611691565b6000806040838503121561182e57600080fd5b823561183981611691565b9150602083013561184981611691565b809150509250929050565b60006020828403121561186657600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156118be5781600019048211156118a4576118a461186d565b808516156118b157918102915b93841c9390800290611888565b509250929050565b6000826118d55750600161048e565b816118e25750600061048e565b81600181146118f857600281146119025761191e565b600191505061048e565b60ff8411156119135761191361186d565b50506001821b61048e565b5060208310610133831016604e8410600b8410161715611941575081810a61048e565b61194b8383611883565b806000190482111561195f5761195f61186d565b029392505050565b600061151660ff8416836118c6565b808202811582820484141761048e5761048e61186d565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b6000600182016119ea576119ea61186d565b5060010190565b600060208284031215611a0357600080fd5b815161151681611691565b600080600060608486031215611a2357600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611a4e57600080fd5b8151801515811461151657600080fd5b8082018082111561048e5761048e61186d565b8181038181111561048e5761048e61186d565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611ad45784516001600160a01b031683529383019391830191600101611aaf565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611b1257634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200b8e064c145345135843cc69baaf33a68d8446b3ba6808c8de6ded45e591877c64736f6c63430008110033

Deployed Bytecode

0x6080604052600436106101445760003560e01c8063751039fc116100b6578063bf474bed1161006f578063bf474bed146103b2578063c876d0b9146103c8578063c9567bf9146103e2578063d34628cc146103f7578063dd62ed3e14610417578063ec1f3f631461045d57600080fd5b8063751039fc146102fd5780637d1db4a5146103125780638da5cb5b146103285780638f9a55c01461035057806395d89b4114610366578063a9059cbb1461039257600080fd5b8063313ce56711610108578063313ce5671461022657806331c2d847146102425780633bbac5791461026457806351bc3c851461029d57806370a08231146102b2578063715018a6146102e857600080fd5b806306fdde0314610150578063095ea7b31461019d5780630faee56f146101cd57806318160ddd146101f157806323b872dd1461020657600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5060408051808201909152601281527153616e7461205265696e6465657220496e7560701b60208201525b6040516101949190611643565b60405180910390f35b3480156101a957600080fd5b506101bd6101b83660046116b6565b61047d565b6040519015158152602001610194565b3480156101d957600080fd5b506101e3600f5481565b604051908152602001610194565b3480156101fd57600080fd5b506101e3610494565b34801561021257600080fd5b506101bd6102213660046116e2565b6104b5565b34801561023257600080fd5b5060405160068152602001610194565b34801561024e57600080fd5b5061026261025d366004611739565b61051e565b005b34801561027057600080fd5b506101bd61027f3660046117fe565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156102a957600080fd5b506102626105bd565b3480156102be57600080fd5b506101e36102cd3660046117fe565b6001600160a01b031660009081526001602052604090205490565b3480156102f457600080fd5b506102626105ec565b34801561030957600080fd5b50610262610660565b34801561031e57600080fd5b506101e3600c5481565b34801561033457600080fd5b506000546040516001600160a01b039091168152602001610194565b34801561035c57600080fd5b506101e3600d5481565b34801561037257600080fd5b5060408051808201909152600381526253524960e81b6020820152610187565b34801561039e57600080fd5b506101bd6103ad3660046116b6565b61071c565b3480156103be57600080fd5b506101e3600e5481565b3480156103d457600080fd5b506006546101bd9060ff1681565b3480156103ee57600080fd5b50610262610729565b34801561040357600080fd5b50610262610412366004611739565b610ae4565b34801561042357600080fd5b506101e361043236600461181b565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561046957600080fd5b50610262610478366004611854565b610b76565b600061048a338484610b9a565b5060015b92915050565b60006104a26006600a611967565b6104b0906305f5e100611976565b905090565b60006104c2848484610cbe565b610514843361050f85604051806060016040528060288152602001611b18602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906112a2565b610b9a565b5060019392505050565b6000546001600160a01b031633146105515760405162461bcd60e51b81526004016105489061198d565b60405180910390fd5b60005b81518110156105b957600060046000848481518110610575576105756119c2565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806105b1816119d8565b915050610554565b5050565b3060009081526001602052604090205480156105dc576105dc816112dc565b4780156105b9576105b981611456565b6000546001600160a01b031633146106165760405162461bcd60e51b81526004016105489061198d565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461068a5760405162461bcd60e51b81526004016105489061198d565b6106966006600a611967565b6106a4906305f5e100611976565b600c556106b36006600a611967565b6106c1906305f5e100611976565b600d556006805460ff191681557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906106fb90600a611967565b610709906305f5e100611976565b60405190815260200160405180910390a1565b600061048a338484610cbe565b6000546001600160a01b031633146107535760405162461bcd60e51b81526004016105489061198d565b601154600160a01b900460ff16156107ad5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610548565b601080546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107f69030906107e86006600a611967565b61050f906305f5e100611976565b601060009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086d91906119f1565b6001600160a01b031663c9c6539630601060009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f391906119f1565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610940573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096491906119f1565b601180546001600160a01b039283166001600160a01b03199091161790556010541663f305d71947306109ac816001600160a01b031660009081526001602052604090205490565b6000806109c16000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a29573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a4e9190611a0e565b50506011805462ff00ff60a01b1981166201000160a01b1790915560105460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610abd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae19190611a3c565b50565b6000546001600160a01b03163314610b0e5760405162461bcd60e51b81526004016105489061198d565b60005b81518110156105b957600160046000848481518110610b3257610b326119c2565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610b6e816119d8565b915050610b11565b61012c600b5411610b8657600080fd5b600854811115610b9557600080fd5b600855565b6001600160a01b038316610bfc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610548565b6001600160a01b038216610c5d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610548565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d225760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610548565b6001600160a01b038216610d845760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610548565b60008111610de65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610548565b600080546001600160a01b03858116911614801590610e1357506000546001600160a01b03848116911614155b1561115f576001600160a01b03841660009081526004602052604090205460ff16158015610e5a57506001600160a01b03831660009081526004602052604090205460ff16155b610e6357600080fd5b601154600160a81b900460ff16610ea357610ea06064610e9a600954600b5411610e8f57600754610e93565b6008545b8590611494565b9061151d565b90505b60065460ff1615610f88576010546001600160a01b03848116911614801590610eda57506011546001600160a01b03848116911614155b15610f8857326000908152600560205260409020544311610f755760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610548565b3260009081526005602052604090204390555b6011546001600160a01b038581169116148015610fb357506010546001600160a01b03848116911614155b8015610fd857506001600160a01b03831660009081526003602052604090205460ff16155b156110c057600c5482111561102f5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610548565b600d5482611052856001600160a01b031660009081526001602052604090205490565b61105c9190611a5e565b11156110aa5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610548565b600b80549060006110ba836119d8565b91905055505b30600090815260016020526040902054601154600160a81b900460ff161580156110f857506011546001600160a01b03868116911614155b801561110d5750601154600160b01b900460ff165b801561111a5750600e5481115b80156111295750600a54600b54115b1561115d5761114b6111468461114184600f5461155f565b61155f565b6112dc565b47801561115b5761115b47611456565b505b505b6001600160a01b0384166000908152600160205260409020546111829083611574565b6001600160a01b0385166000908152600160205260409020556111c76111a88383611574565b6001600160a01b038516600090815260016020526040902054906115b6565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6112118585611574565b60405190815260200160405180910390a3801561129c573060009081526001602052604090205461124290826115b6565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112939085815260200190565b60405180910390a35b50505050565b600081848411156112c65760405162461bcd60e51b81526004016105489190611643565b5060006112d38486611a71565b95945050505050565b6011805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611324576113246119c2565b6001600160a01b03928316602091820292909201810191909152601054604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561137d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a191906119f1565b816001815181106113b4576113b46119c2565b6001600160a01b0392831660209182029290920101526010546113da9130911684610b9a565b60105460405163791ac94760e01b81526001600160a01b039091169063791ac94790611413908590600090869030904290600401611a84565b600060405180830381600087803b15801561142d57600080fd5b505af1158015611441573d6000803e3d6000fd5b50506011805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f193505050501580156105b9573d6000803e3d6000fd5b6000826000036114a65750600061048e565b60006114b28385611976565b9050826114bf8583611af5565b146115165760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610548565b9392505050565b600061151683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611615565b600081831161156e5782611516565b50919050565b600061151683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506112a2565b6000806115c38385611a5e565b9050838110156115165760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610548565b600081836116365760405162461bcd60e51b81526004016105489190611643565b5060006112d38486611af5565b600060208083528351808285015260005b8181101561167057858101830151858201604001528201611654565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ae157600080fd5b80356116b181611691565b919050565b600080604083850312156116c957600080fd5b82356116d481611691565b946020939093013593505050565b6000806000606084860312156116f757600080fd5b833561170281611691565b9250602084013561171281611691565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561174c57600080fd5b823567ffffffffffffffff8082111561176457600080fd5b818501915085601f83011261177857600080fd5b81358181111561178a5761178a611723565b8060051b604051601f19603f830116810181811085821117156117af576117af611723565b6040529182528482019250838101850191888311156117cd57600080fd5b938501935b828510156117f2576117e3856116a6565b845293850193928501926117d2565b98975050505050505050565b60006020828403121561181057600080fd5b813561151681611691565b6000806040838503121561182e57600080fd5b823561183981611691565b9150602083013561184981611691565b809150509250929050565b60006020828403121561186657600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156118be5781600019048211156118a4576118a461186d565b808516156118b157918102915b93841c9390800290611888565b509250929050565b6000826118d55750600161048e565b816118e25750600061048e565b81600181146118f857600281146119025761191e565b600191505061048e565b60ff8411156119135761191361186d565b50506001821b61048e565b5060208310610133831016604e8410600b8410161715611941575081810a61048e565b61194b8383611883565b806000190482111561195f5761195f61186d565b029392505050565b600061151660ff8416836118c6565b808202811582820484141761048e5761048e61186d565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b6000600182016119ea576119ea61186d565b5060010190565b600060208284031215611a0357600080fd5b815161151681611691565b600080600060608486031215611a2357600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611a4e57600080fd5b8151801515811461151657600080fd5b8082018082111561048e5761048e61186d565b8181038181111561048e5761048e61186d565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611ad45784516001600160a01b031683529383019391830191600101611aaf565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611b1257634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200b8e064c145345135843cc69baaf33a68d8446b3ba6808c8de6ded45e591877c64736f6c63430008110033

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.