ETH Price: $3,372.38 (+5.36%)

Contract

0x80d8eD263Eb30137F7D5598c033e34252Eb4d288
 

Overview

ETH Balance

0.11043313648 ETH

Eth Value

$372.42 (@ $3,372.38/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve216252952025-01-14 21:05:115 days ago1736888711IN
0x80d8eD26...52Eb4d288
0 ETH0.000313266.73341027
Approve216071912025-01-12 8:23:238 days ago1736670203IN
0x80d8eD26...52Eb4d288
0 ETH0.00008761.89282326
Approve215597832025-01-05 17:30:5914 days ago1736098259IN
0x80d8eD26...52Eb4d288
0 ETH0.0004994510.74926176
Approve214968752024-12-27 22:46:5923 days ago1735339619IN
0x80d8eD26...52Eb4d288
0 ETH0.000291536.27450868
Approve214791482024-12-25 11:19:4726 days ago1735125587IN
0x80d8eD26...52Eb4d288
0 ETH0.000162553.51658821
Approve214552772024-12-22 3:13:2329 days ago1734837203IN
0x80d8eD26...52Eb4d288
0 ETH0.000295226.34565146
Approve214462552024-12-20 20:55:3530 days ago1734728135IN
0x80d8eD26...52Eb4d288
0 ETH0.0006510513.99398836
Approve214276852024-12-18 6:39:3533 days ago1734503975IN
0x80d8eD26...52Eb4d288
0 ETH0.000460099.9021293
Approve214114922024-12-16 0:27:1135 days ago1734308831IN
0x80d8eD26...52Eb4d288
0 ETH0.0005385811.59142002
Approve214017492024-12-14 15:48:5936 days ago1734191339IN
0x80d8eD26...52Eb4d288
0 ETH0.0004930310.59740886
Approve213876772024-12-12 16:39:4738 days ago1734021587IN
0x80d8eD26...52Eb4d288
0 ETH0.0018709140.21403949
Approve213876772024-12-12 16:39:4738 days ago1734021587IN
0x80d8eD26...52Eb4d288
0 ETH0.0018709140.21403949
Approve213847392024-12-12 6:49:4739 days ago1733986187IN
0x80d8eD26...52Eb4d288
0 ETH0.0007356715.83320248
Approve213822772024-12-11 22:34:4739 days ago1733956487IN
0x80d8eD26...52Eb4d288
0 ETH0.0005802123.99579316
Approve213617112024-12-09 1:39:1142 days ago1733708351IN
0x80d8eD26...52Eb4d288
0 ETH0.0006431213.84139746
Approve213616182024-12-09 1:20:3542 days ago1733707235IN
0x80d8eD26...52Eb4d288
0 ETH0.0006396313.82344768
Approve213568112024-12-08 9:15:2343 days ago1733649323IN
0x80d8eD26...52Eb4d288
0 ETH0.00043789.422366
Approve213475722024-12-07 2:16:2344 days ago1733537783IN
0x80d8eD26...52Eb4d288
0 ETH0.0007081415.22104807
Approve213304372024-12-04 16:50:2346 days ago1733331023IN
0x80d8eD26...52Eb4d288
0 ETH0.0019773742.50221571
Approve213266072024-12-04 3:59:4747 days ago1733284787IN
0x80d8eD26...52Eb4d288
0 ETH0.0007035515.12231689
Approve213256372024-12-04 0:44:3547 days ago1733273075IN
0x80d8eD26...52Eb4d288
0 ETH0.0010214921.98469336
Approve213230832024-12-03 16:10:4747 days ago1733242247IN
0x80d8eD26...52Eb4d288
0 ETH0.002215347.62859511
Approve213211382024-12-03 9:39:3548 days ago1733218775IN
0x80d8eD26...52Eb4d288
0 ETH0.0012717527.33553495
Approve213210842024-12-03 9:28:3548 days ago1733218115IN
0x80d8eD26...52Eb4d288
0 ETH0.0008938119.23668235
Approve213196292024-12-03 4:36:2348 days ago1733200583IN
0x80d8eD26...52Eb4d288
0 ETH0.0010043421.59314604
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block
From
To
211963292024-11-15 23:19:2365 days ago1731712763  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"Jason Furie";
    _symbol = unicode"JASON";
    _decimals = 18;
    _totalSupply = 420690000000000000000000000000; // 420,690,000,000 JASON
    _transferOwnership(0x0b9a2314615c2358D589610488C8bd189e7ACe51);
    _transferInitialSupply(0x0b9a2314615c2358D589610488C8bd189e7ACe51, 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"}]

60c060405234801561000f575f80fd5b5060408051808201909152600b81526a4a61736f6e20467572696560a81b6020820152600a9061003f9082610470565b506040805180820190915260058152642520a9a7a760d91b6020820152600b906100699082610470565b50601260a0526c054f529ca52576bc689200000060035561009d730b9a2314615c2358d589610488c8bd189e7ace516100fa565b6100be730b9a2314615c2358d589610488c8bd189e7ace51620186a061014b565b6100f0737a250d5630b4cf539739df2c5dacb4c659f2488d73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26101c5565b600160805261055c565b600980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b60805115610157575f80fd5b5f61016f6003548362ffffff166103ce60201b60201c565b6001600160a01b0384165f8181526020818152604080832085905551848152939450919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b5f8290505f816001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610206573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061022a919061052f565b6040516364e329cb60e11b81523060048201526001600160a01b0385811660248301529192505f9183169063c9c65396906044016020604051808303815f875af115801561027a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061029e919061052f565b90506040518060800160405280866001600160a01b03168152602001826001600160a01b03168152602001856001600160a01b03168152602001846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610314573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610338919061052f565b6001600160a01b039081169091528151600580549183166001600160a01b031992831617905560208301516006805491841691831682179055604080850151600780549186169185169190911790556060909401516008805491851691909316179091559151908716907f068ccb581b10310dd98c3f0999214bce7660c126ffa63a399df0287144582d57905f90a35050505050565b620186a091020490565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061040057607f821691505b60208210810361041e57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561046b57805f5260205f20601f840160051c810160208510156104495750805b601f840160051c820191505b81811015610468575f8155600101610455565b50505b505050565b81516001600160401b03811115610489576104896103d8565b61049d8161049784546103ec565b84610424565b602080601f8311600181146104d0575f84156104b95750858301515b5f19600386901b1c1916600185901b178555610527565b5f85815260208120601f198616915b828110156104fe578886015182559484019460019091019084016104df565b508582101561051b57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b5f6020828403121561053f575f80fd5b81516001600160a01b0381168114610555575f80fd5b9392505050565b60805160a051610d556105815f395f81816101fd015261050b01525f5050610d555ff3fe608060405260043610610137575f3560e01c80638a8c523c116100af578063c29215831161006b578063c292158314610394578063c78fe0d4146103b1578063d232c220146103c5578063dd62ed3e146103dc578063f2fde38b146103fb578063f7de0e571461041a57005b80638a8c523c146102e15780638da5cb5b146102f557806395d89b411461032657806396ce07951461033a578063a457c2d714610356578063a9059cbb1461037557005b8063313ce567116100fe578063313ce567146101ea578063370158ea14610227578063395093511461024d57806354fd4d501461026c57806370a0823114610299578063715018a6146102cd57005b8063064a59d01461014057806306fdde031461016d578063095ea7b31461018e57806318160ddd146101ad57806323b872dd146101cb57005b3661013e57005b005b34801561014b575f80fd5b5060025463ffffffff1615155b60405190151581526020015b60405180910390f35b348015610178575f80fd5b50610181610437565b6040516101649190610b7e565b348015610199575f80fd5b506101586101a8366004610bb2565b6104c7565b3480156101b8575f80fd5b506003545b604051908152602001610164565b3480156101d6575f80fd5b506101586101e5366004610bda565b6104dc565b3480156101f5575f80fd5b5060405160ff7f0000000000000000000000000000000000000000000000000000000000000000168152602001610164565b348015610232575f80fd5b5061023b6104fd565b60405161016496959493929190610c13565b348015610258575f80fd5b50610158610267366004610bb2565b610688565b348015610277575f80fd5b50604080518082019091526005815264312e302e3360d81b6020820152610181565b3480156102a4575f80fd5b506101bd6102b3366004610c77565b6001600160a01b03165f9081526020819052604090205490565b3480156102d8575f80fd5b5061013e61069f565b3480156102ec575f80fd5b5061013e6106ea565b348015610300575f80fd5b506009546001600160a01b03165b6040516001600160a01b039091168152602001610164565b348015610331575f80fd5b506101816107aa565b348015610345575f80fd5b506040516103e88152602001610164565b348015610361575f80fd5b50610158610370366004610bb2565b6107b9565b348015610380575f80fd5b5061015861038f366004610bb2565b610819565b34801561039f575f80fd5b506006546001600160a01b031661030e565b3480156103bc575f80fd5b5061013e610825565b3480156103d0575f80fd5b5060045460ff16610158565b3480156103e7575f80fd5b506101bd6103f6366004610c90565b610886565b348015610406575f80fd5b5061013e610415366004610c77565b6108b0565b348015610425575f80fd5b506005546001600160a01b031661030e565b6060600a805461044690610cc1565b80601f016020809104026020016040519081016040528092919081815260200182805461047290610cc1565b80156104bd5780601f10610494576101008083540402835291602001916104bd565b820191905f5260205f20905b8154815290600101906020018083116104a057829003601f168201915b5050505050905090565b5f6104d33384846108f8565b50600192915050565b5f6104e8843384610959565b6104f38484846109c2565b5060019392505050565b6060805f805f6060600a600b7f000000000000000000000000000000000000000000000000000000000000000060095f9054906101000a90046001600160a01b031660035460405180604001604052806005815260200164312e302e3360d81b81525085805461056c90610cc1565b80601f016020809104026020016040519081016040528092919081815260200182805461059890610cc1565b80156105e35780601f106105ba576101008083540402835291602001916105e3565b820191905f5260205f20905b8154815290600101906020018083116105c657829003601f168201915b505050505095508480546105f690610cc1565b80601f016020809104026020016040519081016040528092919081815260200182805461062290610cc1565b801561066d5780601f106106445761010080835404028352916020019161066d565b820191905f5260205f20905b81548152906001019060200180831161065057829003601f168201915b50505050509450955095509550955095509550909192939495565b5f6104d33384846106993388610886565b016108f8565b6009546001600160a01b031633146106d25760405162461bcd60e51b81526004016106c990610cf9565b60405180910390fd5b6004805460ff191660011790556106e85f610aff565b565b6009546001600160a01b031633146107145760405162461bcd60e51b81526004016106c990610cf9565b60045460ff1615610723575f80fd5b60025463ffffffff161561076b5760405162461bcd60e51b815260206004820152600f60248201526e105b1c9958591e48195b98589b1959608a1b60448201526064016106c9565b6002805463ffffffff191663ffffffff42161790556040517f799663458a5ef2936f7fa0c99b3336c69c25890f82974f04e811e5bb359186c7905f90a1565b6060600b805461044690610cc1565b5f806107c53385610886565b90508281101561080c5760405162461bcd60e51b81526020600482015260126024820152714e6567617469766520616c6c6f77616e636560701b60448201526064016106c9565b6104f333858584036108f8565b5f6104d33384846109c2565b6009546001600160a01b0316331461084f5760405162461bcd60e51b81526004016106c990610cf9565b6004805460ff191660011790556040517ff7f7205ed48f7a35df9b5857667bdee0189d5d7cd80588f217a82641c3b4d08c905f90a1565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6009546001600160a01b031633146108da5760405162461bcd60e51b81526004016106c990610cf9565b6001600160a01b0381166108ec575f80fd5b6108f581610aff565b50565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b5f6109648484610886565b9050818110156109af5760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b60448201526064016106c9565b6109bc84848484036108f8565b50505050565b6001600160a01b038316158015906109e257506001600160a01b03821615155b610a2e5760405162461bcd60e51b815260206004820152601d60248201527f5472616e736665722066726f6d2f746f207a65726f206164647265737300000060448201526064016106c9565b6001600160a01b0383165f90815260208190526040902054811115610a875760405162461bcd60e51b815260206004820152600f60248201526e457863656564732062616c616e636560881b60448201526064016106c9565b8015610aba576001600160a01b038084165f90815260208190526040808220805485900390559184168152208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161094c91815260200190565b600980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610b906020830184610b50565b9392505050565b80356001600160a01b0381168114610bad575f80fd5b919050565b5f8060408385031215610bc3575f80fd5b610bcc83610b97565b946020939093013593505050565b5f805f60608486031215610bec575f80fd5b610bf584610b97565b9250610c0360208501610b97565b9150604084013590509250925092565b60c081525f610c2560c0830189610b50565b8281036020840152610c378189610b50565b60ff881660408501526001600160a01b03871660608501526080840186905283810360a08501529050610c6a8185610b50565b9998505050505050505050565b5f60208284031215610c87575f80fd5b610b9082610b97565b5f8060408385031215610ca1575f80fd5b610caa83610b97565b9150610cb860208401610b97565b90509250929050565b600181811c90821680610cd557607f821691505b602082108103610cf357634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b60408201526060019056fea2646970667358221220d14c2cdafbf23ff3848708f437d737b57ab9e87ceb4fb57153394fd6ffc5e2bd64736f6c63430008190033

Deployed Bytecode

0x608060405260043610610137575f3560e01c80638a8c523c116100af578063c29215831161006b578063c292158314610394578063c78fe0d4146103b1578063d232c220146103c5578063dd62ed3e146103dc578063f2fde38b146103fb578063f7de0e571461041a57005b80638a8c523c146102e15780638da5cb5b146102f557806395d89b411461032657806396ce07951461033a578063a457c2d714610356578063a9059cbb1461037557005b8063313ce567116100fe578063313ce567146101ea578063370158ea14610227578063395093511461024d57806354fd4d501461026c57806370a0823114610299578063715018a6146102cd57005b8063064a59d01461014057806306fdde031461016d578063095ea7b31461018e57806318160ddd146101ad57806323b872dd146101cb57005b3661013e57005b005b34801561014b575f80fd5b5060025463ffffffff1615155b60405190151581526020015b60405180910390f35b348015610178575f80fd5b50610181610437565b6040516101649190610b7e565b348015610199575f80fd5b506101586101a8366004610bb2565b6104c7565b3480156101b8575f80fd5b506003545b604051908152602001610164565b3480156101d6575f80fd5b506101586101e5366004610bda565b6104dc565b3480156101f5575f80fd5b5060405160ff7f0000000000000000000000000000000000000000000000000000000000000012168152602001610164565b348015610232575f80fd5b5061023b6104fd565b60405161016496959493929190610c13565b348015610258575f80fd5b50610158610267366004610bb2565b610688565b348015610277575f80fd5b50604080518082019091526005815264312e302e3360d81b6020820152610181565b3480156102a4575f80fd5b506101bd6102b3366004610c77565b6001600160a01b03165f9081526020819052604090205490565b3480156102d8575f80fd5b5061013e61069f565b3480156102ec575f80fd5b5061013e6106ea565b348015610300575f80fd5b506009546001600160a01b03165b6040516001600160a01b039091168152602001610164565b348015610331575f80fd5b506101816107aa565b348015610345575f80fd5b506040516103e88152602001610164565b348015610361575f80fd5b50610158610370366004610bb2565b6107b9565b348015610380575f80fd5b5061015861038f366004610bb2565b610819565b34801561039f575f80fd5b506006546001600160a01b031661030e565b3480156103bc575f80fd5b5061013e610825565b3480156103d0575f80fd5b5060045460ff16610158565b3480156103e7575f80fd5b506101bd6103f6366004610c90565b610886565b348015610406575f80fd5b5061013e610415366004610c77565b6108b0565b348015610425575f80fd5b506005546001600160a01b031661030e565b6060600a805461044690610cc1565b80601f016020809104026020016040519081016040528092919081815260200182805461047290610cc1565b80156104bd5780601f10610494576101008083540402835291602001916104bd565b820191905f5260205f20905b8154815290600101906020018083116104a057829003601f168201915b5050505050905090565b5f6104d33384846108f8565b50600192915050565b5f6104e8843384610959565b6104f38484846109c2565b5060019392505050565b6060805f805f6060600a600b7f000000000000000000000000000000000000000000000000000000000000001260095f9054906101000a90046001600160a01b031660035460405180604001604052806005815260200164312e302e3360d81b81525085805461056c90610cc1565b80601f016020809104026020016040519081016040528092919081815260200182805461059890610cc1565b80156105e35780601f106105ba576101008083540402835291602001916105e3565b820191905f5260205f20905b8154815290600101906020018083116105c657829003601f168201915b505050505095508480546105f690610cc1565b80601f016020809104026020016040519081016040528092919081815260200182805461062290610cc1565b801561066d5780601f106106445761010080835404028352916020019161066d565b820191905f5260205f20905b81548152906001019060200180831161065057829003601f168201915b50505050509450955095509550955095509550909192939495565b5f6104d33384846106993388610886565b016108f8565b6009546001600160a01b031633146106d25760405162461bcd60e51b81526004016106c990610cf9565b60405180910390fd5b6004805460ff191660011790556106e85f610aff565b565b6009546001600160a01b031633146107145760405162461bcd60e51b81526004016106c990610cf9565b60045460ff1615610723575f80fd5b60025463ffffffff161561076b5760405162461bcd60e51b815260206004820152600f60248201526e105b1c9958591e48195b98589b1959608a1b60448201526064016106c9565b6002805463ffffffff191663ffffffff42161790556040517f799663458a5ef2936f7fa0c99b3336c69c25890f82974f04e811e5bb359186c7905f90a1565b6060600b805461044690610cc1565b5f806107c53385610886565b90508281101561080c5760405162461bcd60e51b81526020600482015260126024820152714e6567617469766520616c6c6f77616e636560701b60448201526064016106c9565b6104f333858584036108f8565b5f6104d33384846109c2565b6009546001600160a01b0316331461084f5760405162461bcd60e51b81526004016106c990610cf9565b6004805460ff191660011790556040517ff7f7205ed48f7a35df9b5857667bdee0189d5d7cd80588f217a82641c3b4d08c905f90a1565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6009546001600160a01b031633146108da5760405162461bcd60e51b81526004016106c990610cf9565b6001600160a01b0381166108ec575f80fd5b6108f581610aff565b50565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b5f6109648484610886565b9050818110156109af5760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b60448201526064016106c9565b6109bc84848484036108f8565b50505050565b6001600160a01b038316158015906109e257506001600160a01b03821615155b610a2e5760405162461bcd60e51b815260206004820152601d60248201527f5472616e736665722066726f6d2f746f207a65726f206164647265737300000060448201526064016106c9565b6001600160a01b0383165f90815260208190526040902054811115610a875760405162461bcd60e51b815260206004820152600f60248201526e457863656564732062616c616e636560881b60448201526064016106c9565b8015610aba576001600160a01b038084165f90815260208190526040808220805485900390559184168152208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161094c91815260200190565b600980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610b906020830184610b50565b9392505050565b80356001600160a01b0381168114610bad575f80fd5b919050565b5f8060408385031215610bc3575f80fd5b610bcc83610b97565b946020939093013593505050565b5f805f60608486031215610bec575f80fd5b610bf584610b97565b9250610c0360208501610b97565b9150604084013590509250925092565b60c081525f610c2560c0830189610b50565b8281036020840152610c378189610b50565b60ff881660408501526001600160a01b03871660608501526080840186905283810360a08501529050610c6a8185610b50565b9998505050505050505050565b5f60208284031215610c87575f80fd5b610b9082610b97565b5f8060408385031215610ca1575f80fd5b610caa83610b97565b9150610cb860208401610b97565b90509250929050565b600181811c90821680610cd557607f821691505b602082108103610cf357634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252600c908201526b155b985d5d1a1bdc9a5e995960a21b60408201526060019056fea2646970667358221220d14c2cdafbf23ff3848708f437d737b57ab9e87ceb4fb57153394fd6ffc5e2bd64736f6c63430008190033

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.