ETH Price: $3,416.80 (+4.19%)

Contract

0xeF8615f7A79Df5E7Baad4D8442deD27cF78faEE8
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve216197802025-01-14 2:36:596 days ago1736822219IN
0xeF8615f7...cF78faEE8
0 ETH0.000245915.2926623
Approve216108712025-01-12 20:43:117 days ago1736714591IN
0xeF8615f7...cF78faEE8
0 ETH0.000107192.3160697
Approve216095332025-01-12 16:13:477 days ago1736698427IN
0xeF8615f7...cF78faEE8
0 ETH0.000098744.08384737
Approve216095192025-01-12 16:10:597 days ago1736698259IN
0xeF8615f7...cF78faEE8
0 ETH0.000104314.31410256
Approve215962362025-01-10 19:42:239 days ago1736538143IN
0xeF8615f7...cF78faEE8
0 ETH0.000276015.94048289
Approve215894092025-01-09 20:48:4710 days ago1736455727IN
0xeF8615f7...cF78faEE8
0 ETH0.0005886912.65347518
Approve215819432025-01-08 19:46:5911 days ago1736365619IN
0xeF8615f7...cF78faEE8
0 ETH0.0004791410.31214584
Approve215243942024-12-31 18:59:2319 days ago1735671563IN
0xeF8615f7...cF78faEE8
0 ETH0.000377238.11885417
Approve215014432024-12-28 14:04:5922 days ago1735394699IN
0xeF8615f7...cF78faEE8
0 ETH0.000262245.66589522
Approve214904342024-12-27 1:11:4724 days ago1735261907IN
0xeF8615f7...cF78faEE8
0 ETH0.000167923.62809116
Approve214895862024-12-26 22:20:4724 days ago1735251647IN
0xeF8615f7...cF78faEE8
0 ETH0.000217884.68938551
Approve214827682024-12-25 23:28:4725 days ago1735169327IN
0xeF8615f7...cF78faEE8
0 ETH0.000166433.59681575
Approve214552662024-12-22 3:11:1129 days ago1734837071IN
0xeF8615f7...cF78faEE8
0 ETH0.000307816.61629687
Approve214526132024-12-21 18:15:5929 days ago1734804959IN
0xeF8615f7...cF78faEE8
0 ETH0.000334997.21172128
Approve214061682024-12-15 6:35:4736 days ago1734244547IN
0xeF8615f7...cF78faEE8
0 ETH0.000354847.63696348
Approve214051552024-12-15 3:12:1136 days ago1734232331IN
0xeF8615f7...cF78faEE8
0 ETH0.000309456.68590565
Approve213991122024-12-14 6:58:2336 days ago1734159503IN
0xeF8615f7...cF78faEE8
0 ETH0.000378438.17637387
Approve213966922024-12-13 22:52:1137 days ago1734130331IN
0xeF8615f7...cF78faEE8
0 ETH0.0006140513.21562912
Approve213856512024-12-12 9:52:3538 days ago1733997155IN
0xeF8615f7...cF78faEE8
0 ETH0.0007163215.47667371
Transfer213856422024-12-12 9:50:4738 days ago1733997047IN
0xeF8615f7...cF78faEE8
0 ETH0.000844517.99496229
Transfer213855952024-12-12 9:41:2338 days ago1733996483IN
0xeF8615f7...cF78faEE8
0 ETH0.0008486118.08251613
Approve213826632024-12-11 23:52:1139 days ago1733961131IN
0xeF8615f7...cF78faEE8
0 ETH0.0007318515.7510163
Approve213626862024-12-09 4:54:5942 days ago1733720099IN
0xeF8615f7...cF78faEE8
0 ETH0.0005286611.37804881
Approve213555582024-12-08 5:02:4743 days ago1733634167IN
0xeF8615f7...cF78faEE8
0 ETH0.000399078.5890142
Approve213462382024-12-06 21:47:2344 days ago1733521643IN
0xeF8615f7...cF78faEE8
0 ETH0.001236526.57787018
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block
From
To
211684532024-11-12 1:54:2369 days ago1731376463  Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ChainFactory_ERC20

Compiler Version
v0.8.25+commit.b61c2a91

Optimization Enabled:
Yes with 200 runs

Other Settings:
cancun EvmVersion, MIT license
File 1 of 6 : ChainFactory_ERC20.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.25;

import "./CF_Common.sol";
import "./CF_Ownable.sol";
import "./CF_ERC20.sol";
import "./CF_DEXRouterV2.sol";

contract ChainFactory_ERC20 is CF_Common, CF_Ownable, CF_ERC20, CF_DEXRouterV2 {
  constructor() {
    _name = unicode"Spotty";
    _symbol = unicode"SPOTTY";
    _decimals = 18;
    _totalSupply = 420690000000000000000000000000; // 420,690,000,000 SPOTTY
    _transferOwnership(0x93df09AE36A2E3c3915d085cac98Ba3De409a521);
    _transferInitialSupply(0x93df09AE36A2E3c3915d085cac98Ba3De409a521, 100000); // 100%
    _setDEXRouterV2(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D, 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2);

    _initialized = true;
  }

  function _transferInitialSupply(address account, uint24 percent) private {
    require(!_initialized);

    uint256 amount = _percentage(_totalSupply, uint256(percent));

    _balance[account] = amount;

    emit Transfer(address(0), account, amount);
  }

  /// @notice Returns a list specifying the renounce status of each feature
  function renounced() external view returns (bool DEXRouterV2) {
    return (_renounced.DEXRouterV2);
  }

  /// @notice Returns basic information about this Smart-Contract
  function info() external view returns (string memory name, string memory symbol, uint8 decimals, address owner, uint256 totalSupply, string memory version) {
    return (_name, _symbol, _decimals, _owner, _totalSupply, _version);
  }

  receive() external payable { }
  fallback() external payable { }
}

File 2 of 6 : IDEXV2.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.25;

interface IDEXRouterV2 {
  function factory() external pure returns (address);
  function WETH() external pure returns (address);
}

interface IDEXFactoryV2 {
  function createPair(address tokenA, address tokenB) external returns (address pair);
  function getPair(address tokenA, address tokenB) external returns (address pair);
}

File 3 of 6 : CF_ERC20.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.25;

import "./CF_Common.sol";

abstract contract CF_ERC20 is CF_Common {
  string internal _name;
  string internal _symbol;

  event Transfer(address indexed from, address indexed to, uint256 value);
  event Approval(address indexed owner, address indexed spender, uint256 value);

  function name() external view returns (string memory) {
    return _name;
  }

  function symbol() external view returns (string memory) {
    return _symbol;
  }

  function decimals() external view returns (uint8) {
    return _decimals;
  }

  function totalSupply() external view returns (uint256) {
    return _totalSupply;
  }

  function balanceOf(address account) external view returns (uint256) {
    return _balance[account];
  }

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

  function approve(address spender, uint256 amount) external returns (bool) {
    _approve(msg.sender, spender, amount);

    return true;
  }

  function transfer(address to, uint256 amount) external returns (bool) {
    _transfer(msg.sender, to, amount);

    return true;
  }

  function transferFrom(address from, address to, uint256 amount) external returns (bool) {
    _spendAllowance(from, msg.sender, amount);
    _transfer(from, to, amount);

    return true;
  }

  function increaseAllowance(address spender, uint256 addedValue) external returns (bool) {
    unchecked {
      _approve(msg.sender, spender, allowance(msg.sender, spender) + addedValue);
    }

    return true;
  }

  function decreaseAllowance(address spender, uint256 subtractedValue) external returns (bool) {
    uint256 currentAllowance = allowance(msg.sender, spender);

    require(currentAllowance >= subtractedValue, "Negative allowance");

    unchecked {
      _approve(msg.sender, spender, currentAllowance - subtractedValue);
    }

    return true;
  }

  function _approve(address owner, address spender, uint256 amount) internal {
    _allowance[owner][spender] = amount;

    emit Approval(owner, spender, amount);
  }

  function _spendAllowance(address owner, address spender, uint256 amount) internal {
    uint256 currentAllowance = allowance(owner, spender);

    require(currentAllowance >= amount, "Insufficient allowance");

    unchecked {
      _approve(owner, spender, currentAllowance - amount);
    }
  }

  function _transfer(address from, address to, uint256 amount) internal virtual {
    require(from != address(0) && to != address(0), "Transfer from/to zero address");
    require(_balance[from] >= amount, "Exceeds balance");

    if (amount > 0) {
      unchecked {
        _balance[from] -= amount;
        _balance[to] += amount;
      }
    }

    emit Transfer(from, to, amount);
  }
}

File 4 of 6 : CF_Common.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.25;

import "./IDEXV2.sol";

abstract contract CF_Common {
  string internal constant _version = "1.0.3";

  mapping(address => uint256) internal _balance;
  mapping(address => mapping(address => uint256)) internal _allowance;

  bool internal immutable _initialized;

  uint8 internal immutable _decimals;
  uint24 internal constant _denominator = 1000;
  uint32 internal _tradingEnabled;
  uint256 internal _totalSupply;

  struct Renounced {
    bool DEXRouterV2;
  }

  struct DEXRouterV2 {
    address router;
    address pair;
    address token0;
    address WETH;
  }

  Renounced internal _renounced;
  DEXRouterV2 internal _dex;

  function _percentage(uint256 amount, uint256 bps) internal pure returns (uint256) {
    unchecked {
      return (amount * bps) / (100 * uint256(_denominator));
    }
  }

  function _timestamp() internal view returns (uint32) {
    unchecked {
      return uint32(block.timestamp % 2**32);
    }
  }

  function denominator() external pure returns (uint24) {
    return _denominator;
  }

  function version() external pure returns (string memory) {
    return _version;
  }
}

File 5 of 6 : CF_Ownable.sol
// SPDX-License-Identifier: MIT

import "./CF_Common.sol";

pragma solidity 0.8.25;

abstract contract CF_Ownable is CF_Common {
  address internal _owner;

  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

  modifier onlyOwner() {
    require(_owner == msg.sender, "Unauthorized");

    _;
  }

  function owner() external view returns (address) {
    return _owner;
  }

  function renounceOwnership() external onlyOwner {
    _renounced.DEXRouterV2 = true;

    _transferOwnership(address(0));
  }

  function transferOwnership(address newOwner) external onlyOwner {
    require(newOwner != address(0));

    _transferOwnership(newOwner);
  }

  function _transferOwnership(address newOwner) internal {
    address oldOwner = _owner;
    _owner = newOwner;

    emit OwnershipTransferred(oldOwner, newOwner);
  }
}

File 6 of 6 : CF_DEXRouterV2.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.25;

import "./CF_Common.sol";
import "./CF_Ownable.sol";
import "./CF_ERC20.sol";

abstract contract CF_DEXRouterV2 is CF_Common, CF_Ownable, CF_ERC20 {
  event SetDEXRouterV2(address indexed router, address indexed pair);
  event TradingEnabled();
  event RenouncedDEXRouterV2();

  /// @notice Permanently renounce and prevent the owner from being able to update the DEX features
  /// @dev Existing settings will continue to be effective
  function renounceDEXRouterV2() external onlyOwner {
    _renounced.DEXRouterV2 = true;

    emit RenouncedDEXRouterV2();
  }

  function _setDEXRouterV2(address router, address token0) internal {
    IDEXRouterV2 _router = IDEXRouterV2(router);
    IDEXFactoryV2 factory = IDEXFactoryV2(_router.factory());
    address pair = factory.createPair(address(this), token0);

    _dex = DEXRouterV2(router, pair, token0, _router.WETH());

    emit SetDEXRouterV2(router, _dex.pair);
  }

  /// @notice Returns the DEX router currently in use
  function getDEXRouterV2() external view returns (address) {
    return _dex.router;
  }

  /// @notice Returns the trading pair
  function getDEXPairV2() external view returns (address) {
    return _dex.pair;
  }

  /// @notice Checks whether the token can be traded through the assigned DEX
  function isTradingEnabled() external view returns (bool) {
    return _tradingEnabled > 0;
  }

  /// @notice Enables the trading capability via the DEX set up
  /// @dev Once enabled, it cannot be reverted
  function enableTrading() external onlyOwner {
    require(!_renounced.DEXRouterV2);
    require(_tradingEnabled == 0, "Already enabled");

    _tradingEnabled = _timestamp();

    emit TradingEnabled();
  }
}

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[],"name":"RenouncedDEXRouterV2","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"router","type":"address"},{"indexed":true,"internalType":"address","name":"pair","type":"address"}],"name":"SetDEXRouterV2","type":"event"},{"anonymous":false,"inputs":[],"name":"TradingEnabled","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"},{"stateMutability":"payable","type":"fallback"},{"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":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"denominator","outputs":[{"internalType":"uint24","name":"","type":"uint24"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getDEXPairV2","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDEXRouterV2","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"info","outputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint8","name":"decimals","type":"uint8"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"totalSupply","type":"uint256"},{"internalType":"string","name":"version","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isTradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceDEXRouterV2","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounced","outputs":[{"internalType":"bool","name":"DEXRouterV2","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c060405234801561000f575f80fd5b5060408051808201909152600681526553706f74747960d01b6020820152600a9061003a908261046c565b5060408051808201909152600681526553504f54545960d01b6020820152600b90610065908261046c565b50601260a0526c054f529ca52576bc68920000006003556100997393df09ae36a2e3c3915d085cac98ba3de409a5216100f6565b6100ba7393df09ae36a2e3c3915d085cac98ba3de409a521620186a0610147565b6100ec737a250d5630b4cf539739df2c5dacb4c659f2488d73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26101c1565b6001608052610558565b600980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b60805115610153575f80fd5b5f61016b6003548362ffffff166103ca60201b60201c565b6001600160a01b0384165f8181526020818152604080832085905551848152939450919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b5f8290505f816001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610202573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610226919061052b565b6040516364e329cb60e11b81523060048201526001600160a01b0385811660248301529192505f9183169063c9c65396906044016020604051808303815f875af1158015610276573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061029a919061052b565b90506040518060800160405280866001600160a01b03168152602001826001600160a01b03168152602001856001600160a01b03168152602001846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610334919061052b565b6001600160a01b039081169091528151600580549183166001600160a01b031992831617905560208301516006805491841691831682179055604080850151600780549186169185169190911790556060909401516008805491851691909316179091559151908716907f068ccb581b10310dd98c3f0999214bce7660c126ffa63a399df0287144582d57905f90a35050505050565b620186a091020490565b634e487b7160e01b5f52604160045260245ffd5b600181811c908216806103fc57607f821691505b60208210810361041a57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561046757805f5260205f20601f840160051c810160208510156104455750805b601f840160051c820191505b81811015610464575f8155600101610451565b50505b505050565b81516001600160401b03811115610485576104856103d4565b6104998161049384546103e8565b84610420565b602080601f8311600181146104cc575f84156104b55750858301515b5f19600386901b1c1916600185901b178555610523565b5f85815260208120601f198616915b828110156104fa578886015182559484019460019091019084016104db565b508582101561051757878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b5f6020828403121561053b575f80fd5b81516001600160a01b0381168114610551575f80fd5b9392505050565b60805160a051610d5561057d5f395f81816101fd015261050b01525f5050610d555ff3fe608060405260043610610137575f3560e01c80638a8c523c116100af578063c29215831161006b578063c292158314610394578063c78fe0d4146103b1578063d232c220146103c5578063dd62ed3e146103dc578063f2fde38b146103fb578063f7de0e571461041a57005b80638a8c523c146102e15780638da5cb5b146102f557806395d89b411461032657806396ce07951461033a578063a457c2d714610356578063a9059cbb1461037557005b8063313ce567116100fe578063313ce567146101ea578063370158ea14610227578063395093511461024d57806354fd4d501461026c57806370a0823114610299578063715018a6146102cd57005b8063064a59d01461014057806306fdde031461016d578063095ea7b31461018e57806318160ddd146101ad57806323b872dd146101cb57005b3661013e57005b005b34801561014b575f80fd5b5060025463ffffffff1615155b60405190151581526020015b60405180910390f35b348015610178575f80fd5b50610181610437565b6040516101649190610b7e565b348015610199575f80fd5b506101586101a8366004610bb2565b6104c7565b3480156101b8575f80fd5b506003545b604051908152602001610164565b3480156101d6575f80fd5b506101586101e5366004610bda565b6104dc565b3480156101f5575f80fd5b5060405160ff7f0000000000000000000000000000000000000000000000000000000000000000168152602001610164565b348015610232575f80fd5b5061023b6104fd565b60405161016496959493929190610c13565b348015610258575f80fd5b50610158610267366004610bb2565b610688565b348015610277575f80fd5b50604080518082019091526005815264312e302e3360d81b6020820152610181565b3480156102a4575f80fd5b506101bd6102b3366004610c77565b6001600160a01b03165f9081526020819052604090205490565b3480156102d8575f80fd5b5061013e61069f565b3480156102ec575f80fd5b5061013e6106ea565b348015610300575f80fd5b506009546001600160a01b03165b6040516001600160a01b039091168152602001610164565b348015610331575f80fd5b506101816107aa565b348015610345575f80fd5b506040516103e88152602001610164565b348015610361575f80fd5b50610158610370366004610bb2565b6107b9565b348015610380575f80fd5b5061015861038f366004610bb2565b610819565b34801561039f575f80fd5b506006546001600160a01b031661030e565b3480156103bc575f80fd5b5061013e610825565b3480156103d0575f80fd5b5060045460ff16610158565b3480156103e7575f80fd5b506101bd6103f6366004610c90565b610886565b348015610406575f80fd5b5061013e610415366004610c77565b6108b0565b348015610425575f80fd5b506005546001600160a01b031661030e565b6060600a805461044690610cc1565b80601f016020809104026020016040519081016040528092919081815260200182805461047290610cc1565b80156104bd5780601f10610494576101008083540402835291602001916104bd565b820191905f5260205f20905b8154815290600101906020018083116104a057829003601f168201915b5050505050905090565b5f6104d33384846108f8565b50600192915050565b5f6104e8843384610959565b6104f38484846109c2565b5060019392505050565b6060805f805f6060600a600b7f000000000000000000000000000000000000000000000000000000000000000060095f9054906101000a90046001600160a01b031660035460405180604001604052806005815260200164312e302e3360d81b81525085805461056c90610cc1565b80601f016020809104026020016040519081016040528092919081815260200182805461059890610cc1565b80156105e35780601f106105ba576101008083540402835291602001916105e3565b820191905f5260205f20905b8154815290600101906020018083116105c657829003601f168201915b505050505095508480546105f690610cc1565b80601f016020809104026020016040519081016040528092919081815260200182805461062290610cc1565b801561066d5780601f106106445761010080835404028352916020019161066d565b820191905f5260205f20905b81548152906001019060200180831161065057829003601f168201915b50505050509450955095509550955095509550909192939495565b5f6104d33384846106993388610886565b016108f8565b6009546001600160a01b031633146106d25760405162461bcd60e51b81526004016106c990610cf9565b60405180910390fd5b6004805460ff191660011790556106e85f610aff565b565b6009546001600160a01b031633146107145760405162461bcd60e51b81526004016106c990610cf9565b60045460ff1615610723575f80fd5b60025463ffffffff161561076b5760405162461bcd60e51b815260206004820152600f60248201526e105b1c9958591e48195b98589b1959608a1b60448201526064016106c9565b6002805463ffffffff191663ffffffff42161790556040517f799663458a5ef2936f7fa0c99b3336c69c25890f82974f04e811e5bb359186c7905f90a1565b6060600b805461044690610cc1565b5f806107c53385610886565b90508281101561080c5760405162461bcd60e51b81526020600482015260126024820152714e6567617469766520616c6c6f77616e636560701b60448201526064016106c9565b6104f333858584036108f8565b5f6104d33384846109c2565b6009546001600160a01b0316331461084f5760405162461bcd60e51b81526004016106c990610cf9565b6004805460ff191660011790556040517ff7f7205ed48f7a35df9b5857667bdee0189d5d7cd80588f217a82641c3b4d08c905f90a1565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6009546001600160a01b031633146108da5760405162461bcd60e51b81526004016106c990610cf9565b6001600160a01b0381166108ec575f80fd5b6108f581610aff565b50565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b5f6109648484610886565b9050818110156109af5760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b60448201526064016106c9565b6109bc84848484036108f8565b50505050565b6001600160a01b038316158015906109e257506001600160a01b03821615155b610a2e5760405162461bcd60e51b815260206004820152601d60248201527f5472616e736665722066726f6d2f746f207a65726f206164647265737300000060448201526064016106c9565b6001600160a01b0383165f90815260208190526040902054811115610a875760405162461bcd60e51b815260206004820152600f60248201526e457863656564732062616c616e636560881b60448201526064016106c9565b8015610aba576001600160a01b038084165f90815260208190526040808220805485900390559184168152208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161094c91815260200190565b600980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610b906020830184610b50565b9392505050565b80356001600160a01b0381168114610bad575f80fd5b919050565b5f8060408385031215610bc3575f80fd5b610bcc83610b97565b946020939093013593505050565b5f805f60608486031215610bec575f80fd5b610bf584610b97565b9250610c0360208501610b97565b9150604084013590509250925092565b60c081525f610c2560c0830189610b50565b8281036020840152610c378189610b50565b60ff881660408501526001600160a01b03871660608501526080840186905283810360a08501529050610c6a8185610b50565b9998505050505050505050565b5f60208284031215610c87575f80fd5b610b9082610b97565b5f8060408385031215610ca1575f80fd5b610caa83610b97565b9150610cb860208401610b97565b90509250929050565b600181811c90821680610cd557607f821691505b602082108103610cf357634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b60408201526060019056fea26469706673582212201d9ef5c9f4a93c9eb6a941c865a17dadb8a72fdba169c9d3a40a68907e14fec264736f6c63430008190033

Deployed Bytecode

0x608060405260043610610137575f3560e01c80638a8c523c116100af578063c29215831161006b578063c292158314610394578063c78fe0d4146103b1578063d232c220146103c5578063dd62ed3e146103dc578063f2fde38b146103fb578063f7de0e571461041a57005b80638a8c523c146102e15780638da5cb5b146102f557806395d89b411461032657806396ce07951461033a578063a457c2d714610356578063a9059cbb1461037557005b8063313ce567116100fe578063313ce567146101ea578063370158ea14610227578063395093511461024d57806354fd4d501461026c57806370a0823114610299578063715018a6146102cd57005b8063064a59d01461014057806306fdde031461016d578063095ea7b31461018e57806318160ddd146101ad57806323b872dd146101cb57005b3661013e57005b005b34801561014b575f80fd5b5060025463ffffffff1615155b60405190151581526020015b60405180910390f35b348015610178575f80fd5b50610181610437565b6040516101649190610b7e565b348015610199575f80fd5b506101586101a8366004610bb2565b6104c7565b3480156101b8575f80fd5b506003545b604051908152602001610164565b3480156101d6575f80fd5b506101586101e5366004610bda565b6104dc565b3480156101f5575f80fd5b5060405160ff7f0000000000000000000000000000000000000000000000000000000000000012168152602001610164565b348015610232575f80fd5b5061023b6104fd565b60405161016496959493929190610c13565b348015610258575f80fd5b50610158610267366004610bb2565b610688565b348015610277575f80fd5b50604080518082019091526005815264312e302e3360d81b6020820152610181565b3480156102a4575f80fd5b506101bd6102b3366004610c77565b6001600160a01b03165f9081526020819052604090205490565b3480156102d8575f80fd5b5061013e61069f565b3480156102ec575f80fd5b5061013e6106ea565b348015610300575f80fd5b506009546001600160a01b03165b6040516001600160a01b039091168152602001610164565b348015610331575f80fd5b506101816107aa565b348015610345575f80fd5b506040516103e88152602001610164565b348015610361575f80fd5b50610158610370366004610bb2565b6107b9565b348015610380575f80fd5b5061015861038f366004610bb2565b610819565b34801561039f575f80fd5b506006546001600160a01b031661030e565b3480156103bc575f80fd5b5061013e610825565b3480156103d0575f80fd5b5060045460ff16610158565b3480156103e7575f80fd5b506101bd6103f6366004610c90565b610886565b348015610406575f80fd5b5061013e610415366004610c77565b6108b0565b348015610425575f80fd5b506005546001600160a01b031661030e565b6060600a805461044690610cc1565b80601f016020809104026020016040519081016040528092919081815260200182805461047290610cc1565b80156104bd5780601f10610494576101008083540402835291602001916104bd565b820191905f5260205f20905b8154815290600101906020018083116104a057829003601f168201915b5050505050905090565b5f6104d33384846108f8565b50600192915050565b5f6104e8843384610959565b6104f38484846109c2565b5060019392505050565b6060805f805f6060600a600b7f000000000000000000000000000000000000000000000000000000000000001260095f9054906101000a90046001600160a01b031660035460405180604001604052806005815260200164312e302e3360d81b81525085805461056c90610cc1565b80601f016020809104026020016040519081016040528092919081815260200182805461059890610cc1565b80156105e35780601f106105ba576101008083540402835291602001916105e3565b820191905f5260205f20905b8154815290600101906020018083116105c657829003601f168201915b505050505095508480546105f690610cc1565b80601f016020809104026020016040519081016040528092919081815260200182805461062290610cc1565b801561066d5780601f106106445761010080835404028352916020019161066d565b820191905f5260205f20905b81548152906001019060200180831161065057829003601f168201915b50505050509450955095509550955095509550909192939495565b5f6104d33384846106993388610886565b016108f8565b6009546001600160a01b031633146106d25760405162461bcd60e51b81526004016106c990610cf9565b60405180910390fd5b6004805460ff191660011790556106e85f610aff565b565b6009546001600160a01b031633146107145760405162461bcd60e51b81526004016106c990610cf9565b60045460ff1615610723575f80fd5b60025463ffffffff161561076b5760405162461bcd60e51b815260206004820152600f60248201526e105b1c9958591e48195b98589b1959608a1b60448201526064016106c9565b6002805463ffffffff191663ffffffff42161790556040517f799663458a5ef2936f7fa0c99b3336c69c25890f82974f04e811e5bb359186c7905f90a1565b6060600b805461044690610cc1565b5f806107c53385610886565b90508281101561080c5760405162461bcd60e51b81526020600482015260126024820152714e6567617469766520616c6c6f77616e636560701b60448201526064016106c9565b6104f333858584036108f8565b5f6104d33384846109c2565b6009546001600160a01b0316331461084f5760405162461bcd60e51b81526004016106c990610cf9565b6004805460ff191660011790556040517ff7f7205ed48f7a35df9b5857667bdee0189d5d7cd80588f217a82641c3b4d08c905f90a1565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6009546001600160a01b031633146108da5760405162461bcd60e51b81526004016106c990610cf9565b6001600160a01b0381166108ec575f80fd5b6108f581610aff565b50565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b5f6109648484610886565b9050818110156109af5760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b60448201526064016106c9565b6109bc84848484036108f8565b50505050565b6001600160a01b038316158015906109e257506001600160a01b03821615155b610a2e5760405162461bcd60e51b815260206004820152601d60248201527f5472616e736665722066726f6d2f746f207a65726f206164647265737300000060448201526064016106c9565b6001600160a01b0383165f90815260208190526040902054811115610a875760405162461bcd60e51b815260206004820152600f60248201526e457863656564732062616c616e636560881b60448201526064016106c9565b8015610aba576001600160a01b038084165f90815260208190526040808220805485900390559184168152208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161094c91815260200190565b600980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610b906020830184610b50565b9392505050565b80356001600160a01b0381168114610bad575f80fd5b919050565b5f8060408385031215610bc3575f80fd5b610bcc83610b97565b946020939093013593505050565b5f805f60608486031215610bec575f80fd5b610bf584610b97565b9250610c0360208501610b97565b9150604084013590509250925092565b60c081525f610c2560c0830189610b50565b8281036020840152610c378189610b50565b60ff881660408501526001600160a01b03871660608501526080840186905283810360a08501529050610c6a8185610b50565b9998505050505050505050565b5f60208284031215610c87575f80fd5b610b9082610b97565b5f8060408385031215610ca1575f80fd5b610caa83610b97565b9150610cb860208401610b97565b90509250929050565b600181811c90821680610cd557607f821691505b602082108103610cf357634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b60408201526060019056fea26469706673582212201d9ef5c9f4a93c9eb6a941c865a17dadb8a72fdba169c9d3a40a68907e14fec264736f6c63430008190033

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.