OP Sepolia Testnet

Contract

0x0d6697c82E5d063Dee21baF438366B86E06C1d66

Overview

ETH Balance

0 ETH

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Deploy Child226492592025-01-17 8:04:1857 days ago1737101058IN
0x0d6697c8...6E06C1d66
0 ETH0.0000001942870.00010025

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block From To
226492592025-01-17 8:04:1857 days ago1737101058
0x0d6697c8...6E06C1d66
 Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Create3Deployer

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at sepolia-optimism.etherscan.io on 2025-01-17
*/

// File: @0xsequence/create3/contracts/Create3.sol

//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.0;

/**
  @title A library for deploying contracts EIP-3171 style.
  @author Agustin Aguilar <[email protected]>
*/
library Create3 {
  error ErrorCreatingProxy();
  error ErrorCreatingContract();
  error TargetAlreadyExists();

  /**
    @notice The bytecode for a contract that proxies the creation of another contract
    @dev If this code is deployed using CREATE2 it can be used to decouple `creationCode` from the child contract address

  0x67363d3d37363d34f03d5260086018f3:
      0x00  0x67  0x67XXXXXXXXXXXXXXXX  PUSH8 bytecode  0x363d3d37363d34f0
      0x01  0x3d  0x3d                  RETURNDATASIZE  0 0x363d3d37363d34f0
      0x02  0x52  0x52                  MSTORE
      0x03  0x60  0x6008                PUSH1 08        8
      0x04  0x60  0x6018                PUSH1 18        24 8
      0x05  0xf3  0xf3                  RETURN

  0x363d3d37363d34f0:
      0x00  0x36  0x36                  CALLDATASIZE    cds
      0x01  0x3d  0x3d                  RETURNDATASIZE  0 cds
      0x02  0x3d  0x3d                  RETURNDATASIZE  0 0 cds
      0x03  0x37  0x37                  CALLDATACOPY
      0x04  0x36  0x36                  CALLDATASIZE    cds
      0x05  0x3d  0x3d                  RETURNDATASIZE  0 cds
      0x06  0x34  0x34                  CALLVALUE       val 0 cds
      0x07  0xf0  0xf0                  CREATE          addr
  */
  
  bytes internal constant PROXY_CHILD_BYTECODE = hex"67_36_3d_3d_37_36_3d_34_f0_3d_52_60_08_60_18_f3";

  //                        KECCAK256_PROXY_CHILD_BYTECODE = keccak256(PROXY_CHILD_BYTECODE);
  bytes32 internal constant KECCAK256_PROXY_CHILD_BYTECODE = 0x21c35dbe1b344a2488cf3321d6ce542f8e9f305544ff09e4993a62319a497c1f;

  /**
    @notice Returns the size of the code on a given address
    @param _addr Address that may or may not contain code
    @return size of the code on the given `_addr`
  */
  function codeSize(address _addr) internal view returns (uint256 size) {
    assembly { size := extcodesize(_addr) }
  }

  /**
    @notice Creates a new contract with given `_creationCode` and `_salt`
    @param _salt Salt of the contract creation, resulting address will be derivated from this value only
    @param _creationCode Creation code (constructor) of the contract to be deployed, this value doesn't affect the resulting address
    @return addr of the deployed contract, reverts on error
  */
  function create3(bytes32 _salt, bytes memory _creationCode) internal returns (address addr) {
    return create3(_salt, _creationCode, 0);
  }

  /**
    @notice Creates a new contract with given `_creationCode` and `_salt`
    @param _salt Salt of the contract creation, resulting address will be derivated from this value only
    @param _creationCode Creation code (constructor) of the contract to be deployed, this value doesn't affect the resulting address
    @param _value In WEI of ETH to be forwarded to child contract
    @return addr of the deployed contract, reverts on error
  */
  function create3(bytes32 _salt, bytes memory _creationCode, uint256 _value) internal returns (address addr) {
    // Creation code
    bytes memory creationCode = PROXY_CHILD_BYTECODE;

    // Get target final address
    addr = addressOf(_salt);
    if (codeSize(addr) != 0) revert TargetAlreadyExists();

    // Create CREATE2 proxy
    address proxy; assembly { proxy := create2(0, add(creationCode, 32), mload(creationCode), _salt)}
    if (proxy == address(0)) revert ErrorCreatingProxy();

    // Call proxy with final init code
    (bool success,) = proxy.call{ value: _value }(_creationCode);
    if (!success || codeSize(addr) == 0) revert ErrorCreatingContract();
  }

  /**
    @notice Computes the resulting address of a contract deployed using address(this) and the given `_salt`
    @param _salt Salt of the contract creation, resulting address will be derivated from this value only
    @return addr of the deployed contract, reverts on error

    @dev The address creation formula is: keccak256(rlp([keccak256(0xff ++ address(this) ++ _salt ++ keccak256(childBytecode))[12:], 0x01]))
  */
  function addressOf(bytes32 _salt) internal view returns (address) {
    address proxy = address(
      uint160(
        uint256(
          keccak256(
            abi.encodePacked(
              hex'ff',
              address(this),
              _salt,
              KECCAK256_PROXY_CHILD_BYTECODE
            )
          )
        )
      )
    );

    return address(
      uint160(
        uint256(
          keccak256(
            abi.encodePacked(
              hex"d6_94",
              proxy,
              hex"01"
            )
          )
        )
      )
    );
  }
}

// File: @openzeppelin/contracts/proxy/Clones.sol



pragma solidity ^0.8.0;

/**
 * @dev https://eips.ethereum.org/EIPS/eip-1167[EIP 1167] is a standard for
 * deploying minimal proxy contracts, also known as "clones".
 *
 * > To simply and cheaply clone contract functionality in an immutable way, this standard specifies
 * > a minimal bytecode implementation that delegates all calls to a known, fixed address.
 *
 * The library includes functions to deploy a proxy using either `create` (traditional deployment) or `create2`
 * (salted deterministic deployment). It also includes functions to predict the addresses of clones deployed using the
 * deterministic method.
 *
 * _Available since v3.4._
 */
library Clones {
    /**
     * @dev Deploys and returns the address of a clone that mimics the behaviour of `implementation`.
     *
     * This function uses the create opcode, which should never revert.
     */
    function clone(address implementation) internal returns (address instance) {
        assembly {
            let ptr := mload(0x40)
            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)
            mstore(add(ptr, 0x14), shl(0x60, implementation))
            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)
            instance := create(0, ptr, 0x37)
        }
        require(instance != address(0), "ERC1167: create failed");
    }

    /**
     * @dev Deploys and returns the address of a clone that mimics the behaviour of `implementation`.
     *
     * This function uses the create2 opcode and a `salt` to deterministically deploy
     * the clone. Using the same `implementation` and `salt` multiple time will revert, since
     * the clones cannot be deployed twice at the same address.
     */
    function cloneDeterministic(address implementation, bytes32 salt) internal returns (address instance) {
        assembly {
            let ptr := mload(0x40)
            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)
            mstore(add(ptr, 0x14), shl(0x60, implementation))
            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)
            instance := create2(0, ptr, 0x37, salt)
        }
        require(instance != address(0), "ERC1167: create2 failed");
    }

    /**
     * @dev Computes the address of a clone deployed using {Clones-cloneDeterministic}.
     */
    function predictDeterministicAddress(
        address implementation,
        bytes32 salt,
        address deployer
    ) internal pure returns (address predicted) {
        assembly {
            let ptr := mload(0x40)
            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)
            mstore(add(ptr, 0x14), shl(0x60, implementation))
            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf3ff00000000000000000000000000000000)
            mstore(add(ptr, 0x38), shl(0x60, deployer))
            mstore(add(ptr, 0x4c), salt)
            mstore(add(ptr, 0x6c), keccak256(ptr, 0x37))
            predicted := keccak256(add(ptr, 0x37), 0x55)
        }
    }

    /**
     * @dev Computes the address of a clone deployed using {Clones-cloneDeterministic}.
     */
    function predictDeterministicAddress(address implementation, bytes32 salt)
        internal
        view
        returns (address predicted)
    {
        return predictDeterministicAddress(implementation, salt, address(this));
    }
}

// File: contracts/Implementation.sol


pragma solidity 0.8.4;

interface IERC20 {
    function transfer(address recipient, uint256 amount) external returns (bool);
    function balanceOf(address account) external view returns (uint256);
}

contract  Implementation{
    function withdraw(address erc20TokenAddress, address recipient) external {
        // the target erc20 token address
        IERC20 erc20Token = IERC20(erc20TokenAddress);

        // get balance
        uint256 balance = erc20Token.balanceOf(address(this));

        // transfer
        if (balance > 0) {
            require(erc20Token.transfer(recipient, balance), "Transfer failed");
        }
    }
}

// File: contracts/FactoryClones.sol


pragma solidity 0.8.4;


contract FactoryClones {
    using Clones for address;

    function cloneDeterministic(address implementation, bytes32 salt) external returns (address) {
        return implementation.cloneDeterministic(salt);
    }

    function newCreate() external returns (address) {
        address wallet = address(new Implementation());
        return wallet;
    }

    function predictDeterministicAddress(
        address implementation,
        bytes32 salt,
        address deployer
    ) external pure returns (address){
        return implementation.predictDeterministicAddress(salt, deployer);
    }

    function predictDeterministicAddress(
        address implementation,
        bytes32 salt
    ) external view returns (address){
        return implementation.predictDeterministicAddress(salt);
    }
}

// File: contracts/Create3Deployer.sol


pragma solidity 0.8.4;


contract Create3Deployer {
  function deployChild(string calldata _salt) external {
    Create3.create3(
      keccak256(bytes(_salt)), 
      abi.encodePacked(
        type(FactoryClones).creationCode,
        abi.encode(
          42,
          msg.sender
        )
      )
    );
  }

  function addressOfChild(string calldata _salt) external view returns (address) {
    return Create3.addressOf(keccak256(bytes(_salt)));
  }
}

Contract ABI

API
[{"inputs":[],"name":"ErrorCreatingContract","type":"error"},{"inputs":[],"name":"ErrorCreatingProxy","type":"error"},{"inputs":[],"name":"TargetAlreadyExists","type":"error"},{"inputs":[{"internalType":"string","name":"_salt","type":"string"}],"name":"addressOfChild","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"_salt","type":"string"}],"name":"deployChild","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b50610a0c806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80631125d0291461003b578063808c4b4f1461006a575b600080fd5b61004e610049366004610314565b61007f565b6040516001600160a01b03909116815260200160405180910390f35b61007d610078366004610314565b6100a8565b005b60006100a183836040516100949291906103ba565b604051809103902061012c565b9392505050565b61012782826040516100bb9291906103ba565b604051908190038120906100d160208201610307565b601f1982820381018352601f909101166040818152602a6020830152339082015260600160408051601f198184030181529082905261011392916020016103d6565b6040516020818303038152906040526101df565b505050565b604080516001600160f81b031960208083019190915230606090811b6bffffffffffffffffffffffff19908116602185015260358401959095527f21c35dbe1b344a2488cf3321d6ce542f8e9f305544ff09e4993a62319a497c1f605580850191909152845180850390910181526075840185528051908301206135a560f21b6095850152901b9093166097820152600160f81b60ab8201528151608c81830301815260ac909101909152805191012090565b60006100a18383600060408051808201909152601081526f67363d3d37363d34f03d5260086018f360801b602082015260009061021b8561012c565b9150813b1561023d5760405163cd43efa160e01b815260040160405180910390fd5b6000858251602084016000f590506001600160a01b0381166102725760405163bbd2fe8760e01b815260040160405180910390fd5b6000816001600160a01b0316858760405161028d91906103ca565b60006040518083038185875af1925050503d80600081146102ca576040519150601f19603f3d011682016040523d82523d6000602084013e6102cf565b606091505b505090508015806102df5750833b155b156102fd576040516353de54b960e01b815260040160405180910390fd5b5050509392505050565b6105e3806103f483390190565b60008060208385031215610326578182fd5b823567ffffffffffffffff8082111561033d578384fd5b818501915085601f830112610350578384fd5b81358181111561035e578485fd5b86602082850101111561036f578485fd5b60209290920196919550909350505050565b60008151815b818110156103a15760208185018101518683015201610387565b818111156103af5782828601525b509290920192915050565b8183823760009101908152919050565b60006100a18284610381565b60006103eb6103e58386610381565b84610381565b94935050505056fe608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063360d0fad1461005157806389aa88f41461008057806393a7e71114610088578063b86b2ceb1461009b575b600080fd5b61006461005f3660046102b3565b6100ae565b6040516001600160a01b03909116815260200160405180910390f35b61006461012d565b6100646100963660046102dc565b61015f565b6100646100a93660046102b3565b6101d6565b60006101246001600160a01b038416836000610124838330604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b8152606093841b60148201526f5af43d82803e903d91602b57fd5bf3ff60801b6028820152921b6038830152604c8201526037808220606c830152605591012090565b90505b92915050565b60008060405161013c9061028a565b604051809103906000f080158015610158573d6000803e3d6000fd5b5092915050565b60006101ce6001600160a01b0385168484604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b8152606093841b60148201526f5af43d82803e903d91602b57fd5bf3ff60801b6028820152921b6038830152604c8201526037808220606c830152605591012090565b949350505050565b60006101246001600160a01b038416836000604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b81528360601b60148201526e5af43d82803e903d91602b57fd5bf360881b6028820152826037826000f59150506001600160a01b0381166101275760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c6564000000000000000000604482015260640160405180910390fd5b6102768061031883390190565b80356001600160a01b03811681146102ae57600080fd5b919050565b600080604083850312156102c5578182fd5b6102ce83610297565b946020939093013593505050565b6000806000606084860312156102f0578081fd5b6102f984610297565b92506020840135915061030e60408501610297565b9050925092509256fe608060405234801561001057600080fd5b50610256806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f940e38514610030575b600080fd5b61004361003e3660046101af565b610045565b005b6040516370a0823160e01b815230600482015282906000906001600160a01b038316906370a082319060240160206040518083038186803b15801561008957600080fd5b505afa15801561009d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100c19190610208565b9050801561018d5760405163a9059cbb60e01b81526001600160a01b0384811660048301526024820183905283169063a9059cbb90604401602060405180830381600087803b15801561011357600080fd5b505af1158015610127573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014b91906101e1565b61018d5760405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b604482015260640160405180910390fd5b50505050565b80356001600160a01b03811681146101aa57600080fd5b919050565b600080604083850312156101c1578182fd5b6101ca83610193565b91506101d860208401610193565b90509250929050565b6000602082840312156101f2578081fd5b81518015158114610201578182fd5b9392505050565b600060208284031215610219578081fd5b505191905056fea264697066735822122054e3415d13998c7b2b4e1bf4c97ede2ba2dcd98ebe6cf1d4e2cd54437e50933c64736f6c63430008040033a2646970667358221220426a1d8aaf4697ade8cdb95f52d1dbf8209b87e113c0be7c9d00eee703a7533a64736f6c63430008040033a2646970667358221220de65be441bfa7b58679a80cdc37f741fcec1e4ebfff8c10b8e44df8a981aaf4364736f6c63430008040033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100365760003560e01c80631125d0291461003b578063808c4b4f1461006a575b600080fd5b61004e610049366004610314565b61007f565b6040516001600160a01b03909116815260200160405180910390f35b61007d610078366004610314565b6100a8565b005b60006100a183836040516100949291906103ba565b604051809103902061012c565b9392505050565b61012782826040516100bb9291906103ba565b604051908190038120906100d160208201610307565b601f1982820381018352601f909101166040818152602a6020830152339082015260600160408051601f198184030181529082905261011392916020016103d6565b6040516020818303038152906040526101df565b505050565b604080516001600160f81b031960208083019190915230606090811b6bffffffffffffffffffffffff19908116602185015260358401959095527f21c35dbe1b344a2488cf3321d6ce542f8e9f305544ff09e4993a62319a497c1f605580850191909152845180850390910181526075840185528051908301206135a560f21b6095850152901b9093166097820152600160f81b60ab8201528151608c81830301815260ac909101909152805191012090565b60006100a18383600060408051808201909152601081526f67363d3d37363d34f03d5260086018f360801b602082015260009061021b8561012c565b9150813b1561023d5760405163cd43efa160e01b815260040160405180910390fd5b6000858251602084016000f590506001600160a01b0381166102725760405163bbd2fe8760e01b815260040160405180910390fd5b6000816001600160a01b0316858760405161028d91906103ca565b60006040518083038185875af1925050503d80600081146102ca576040519150601f19603f3d011682016040523d82523d6000602084013e6102cf565b606091505b505090508015806102df5750833b155b156102fd576040516353de54b960e01b815260040160405180910390fd5b5050509392505050565b6105e3806103f483390190565b60008060208385031215610326578182fd5b823567ffffffffffffffff8082111561033d578384fd5b818501915085601f830112610350578384fd5b81358181111561035e578485fd5b86602082850101111561036f578485fd5b60209290920196919550909350505050565b60008151815b818110156103a15760208185018101518683015201610387565b818111156103af5782828601525b509290920192915050565b8183823760009101908152919050565b60006100a18284610381565b60006103eb6103e58386610381565b84610381565b94935050505056fe608060405234801561001057600080fd5b506105c3806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063360d0fad1461005157806389aa88f41461008057806393a7e71114610088578063b86b2ceb1461009b575b600080fd5b61006461005f3660046102b3565b6100ae565b6040516001600160a01b03909116815260200160405180910390f35b61006461012d565b6100646100963660046102dc565b61015f565b6100646100a93660046102b3565b6101d6565b60006101246001600160a01b038416836000610124838330604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b8152606093841b60148201526f5af43d82803e903d91602b57fd5bf3ff60801b6028820152921b6038830152604c8201526037808220606c830152605591012090565b90505b92915050565b60008060405161013c9061028a565b604051809103906000f080158015610158573d6000803e3d6000fd5b5092915050565b60006101ce6001600160a01b0385168484604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b8152606093841b60148201526f5af43d82803e903d91602b57fd5bf3ff60801b6028820152921b6038830152604c8201526037808220606c830152605591012090565b949350505050565b60006101246001600160a01b038416836000604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b81528360601b60148201526e5af43d82803e903d91602b57fd5bf360881b6028820152826037826000f59150506001600160a01b0381166101275760405162461bcd60e51b815260206004820152601760248201527f455243313136373a2063726561746532206661696c6564000000000000000000604482015260640160405180910390fd5b6102768061031883390190565b80356001600160a01b03811681146102ae57600080fd5b919050565b600080604083850312156102c5578182fd5b6102ce83610297565b946020939093013593505050565b6000806000606084860312156102f0578081fd5b6102f984610297565b92506020840135915061030e60408501610297565b9050925092509256fe608060405234801561001057600080fd5b50610256806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f940e38514610030575b600080fd5b61004361003e3660046101af565b610045565b005b6040516370a0823160e01b815230600482015282906000906001600160a01b038316906370a082319060240160206040518083038186803b15801561008957600080fd5b505afa15801561009d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100c19190610208565b9050801561018d5760405163a9059cbb60e01b81526001600160a01b0384811660048301526024820183905283169063a9059cbb90604401602060405180830381600087803b15801561011357600080fd5b505af1158015610127573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014b91906101e1565b61018d5760405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b604482015260640160405180910390fd5b50505050565b80356001600160a01b03811681146101aa57600080fd5b919050565b600080604083850312156101c1578182fd5b6101ca83610193565b91506101d860208401610193565b90509250929050565b6000602082840312156101f2578081fd5b81518015158114610201578182fd5b9392505050565b600060208284031215610219578081fd5b505191905056fea264697066735822122054e3415d13998c7b2b4e1bf4c97ede2ba2dcd98ebe6cf1d4e2cd54437e50933c64736f6c63430008040033a2646970667358221220426a1d8aaf4697ade8cdb95f52d1dbf8209b87e113c0be7c9d00eee703a7533a64736f6c63430008040033a2646970667358221220de65be441bfa7b58679a80cdc37f741fcec1e4ebfff8c10b8e44df8a981aaf4364736f6c63430008040033

Deployed Bytecode Sourcemap

10187:448:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10491:141;;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;;;;2939:32:1;;;2921:51;;2909:2;2894:18;10491:141:0;;;;;;;10217:268;;;;;;:::i;:::-;;:::i;:::-;;10491:141;10561:7;10584:42;10618:5;;10602:23;;;;;;;:::i;:::-;;;;;;;;10584:17;:42::i;:::-;10577:49;10491:141;-1:-1:-1;;;10491:141:0:o;10217:268::-;10277:202;10317:5;;10301:23;;;;;;;:::i;:::-;;;;;;;;;;10361:32;;;;;:::i;:::-;-1:-1:-1;;10361:32:0;;;;;;;;;;;;;;;;10427:2;10361:32;10404:59;;3164:36:1;10442:10:0;3216:18:1;;;3209:60;3137:18;;10404:59:0;;;-1:-1:-1;;10404:59:0;;;;;;;;;;10334:138;;;10404:59;10334:138;;:::i;:::-;;;;;;;;;;;;;10277:15;:202::i;:::-;;10217:268;;:::o;4281:605::-;4448:154;;;-1:-1:-1;;;;;;4448:154:0;;;;2553:26:1;;;;4513:4:0;2616:2:1;2612:15;;;-1:-1:-1;;2608:53:1;;;2595:11;;;2588:74;2678:12;;;2671:28;;;;1771:66:0;2715:12:1;;;;2708:28;;;;4448:154:0;;;;;;;;;;2752:12:1;;;4448:154:0;;4424:191;;;;;;-1:-1:-1;;;4736:104:0;;;2075:28:1;2136:15;;2132:53;;;2119:11;;;2112:74;-1:-1:-1;;;2202:12:1;;;2195:33;4736:104:0;;;;;;;;;2244:12:1;;;;4736:104:0;;;4712:141;;;;;;4281:605::o;2544:144::-;2622:12;2650:32;2658:5;2665:13;2680:1;3315:20;;;;;;;;;;;;-1:-1:-1;;;3315:20:0;;;;3244:12;;3384:16;3394:5;3384:9;:16::i;:::-;3377:23;-1:-1:-1;2124:18:0;;3411:19;3407:53;;3439:21;;-1:-1:-1;;;3439:21:0;;;;;;;;;;;3407:53;3498:13;3588:5;3573:12;3567:19;3562:2;3548:12;3544:21;3541:1;3533:61;3524:70;-1:-1:-1;;;;;;3605:19:0;;3601:52;;3633:20;;-1:-1:-1;;;3633:20:0;;;;;;;;;;;3601:52;3703:12;3720:5;-1:-1:-1;;;;;3720:10:0;3739:6;3748:13;3720:42;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3702:60;;;3774:7;3773:8;:31;;;-1:-1:-1;2124:18:0;;3785:19;3773:31;3769:67;;;3813:23;;-1:-1:-1;;;3813:23:0;;;;;;;;;;;3769:67;3150:692;;;;;;;;:::o;-1:-1:-1:-;;;;;;;;:::o;14:642:1:-;85:6;93;146:2;134:9;125:7;121:23;117:32;114:2;;;167:6;159;152:22;114:2;212:9;199:23;241:18;282:2;274:6;271:14;268:2;;;303:6;295;288:22;268:2;346:6;335:9;331:22;321:32;;391:7;384:4;380:2;376:13;372:27;362:2;;418:6;410;403:22;362:2;463;450:16;489:2;481:6;478:14;475:2;;;510:6;502;495:22;475:2;560:7;555:2;546:6;542:2;538:15;534:24;531:37;528:2;;;586:6;578;571:22;528:2;622;614:11;;;;;644:6;;-1:-1:-1;104:552:1;;-1:-1:-1;;;;104:552:1:o;661:340::-;702:3;740:5;734:12;764:3;776:128;790:6;787:1;784:13;776:128;;;887:4;872:13;;;868:24;;862:31;849:11;;;842:52;805:12;776:128;;;922:6;919:1;916:13;913:2;;;957:3;948:6;943:3;939:16;932:29;913:2;-1:-1:-1;979:16:1;;;;;710:291;-1:-1:-1;;710:291:1:o;1006:273::-;1189:6;1181;1176:3;1163:33;1145:3;1215:16;;1240:15;;;1215:16;1153:126;-1:-1:-1;1153:126:1:o;1284:189::-;1413:3;1438:29;1463:3;1455:6;1438:29;:::i;1478:261::-;1653:3;1678:55;1703:29;1728:3;1720:6;1703:29;:::i;:::-;1695:6;1678:55;:::i;:::-;1671:62;1661:78;-1:-1:-1;;;;1661:78:1:o

Swarm Source

ipfs://de65be441bfa7b58679a80cdc37f741fcec1e4ebfff8c10b8e44df8a981aaf43

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
[ 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.