ETH Price: $3,109.17 (-0.06%)
Gas: 2 Gwei

Contract

0x3154Cf16ccdb4C6d922629664174b904d80F2C35
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Transaction Hash
Method
Block
From
To
Value
0xf3e8af0199afd9654f0e5dd0ff960b5018f6d6a0060fef9c3a773573dd7ccd45Bridge ETH To(pending)2024-05-20 6:00:1631 mins ago1716184816IN
Base: Base Bridge
0.0032 ETH(Pending)(Pending)
0x083eaa134f3d83d0ffe6e4e3511f9b6edcd8a1e7771ad785ac4132eb7af06c4bDeposit ETH(pending)2024-05-20 5:30:161 hr ago1716183016IN
Base: Base Bridge
0.0001 ETH(Pending)(Pending)
0x285cbba5c3679f4de3f6e031ad3f662f411f65893090297929d666721d563997Deposit ETH To(pending)2024-05-20 2:32:383 hrs ago1716172358IN
Base: Base Bridge
0.01 ETH(Pending)(Pending)
0xe2c706ac6b61b61ad560f818414c5bc1e92442ea90239741555837ca545d7359Bridge ETH To(pending)2024-05-19 12:41:4117 hrs ago1716122501IN
Base: Base Bridge
0.0035 ETH(Pending)(Pending)
0xef5b21087b11749771384c267f5f12376459130de084c2251126ad4342a8acf0Deposit ETH To(pending)2024-05-19 8:57:0621 hrs ago1716109026IN
Base: Base Bridge
0.007 ETH(Pending)(Pending)
0x5d08a610e8ee83b87b6e882e10d3fd7dc9e92c666457cc4ec2a9549c4d38b221Deposit ETH To(pending)2024-05-19 8:31:4122 hrs ago1716107501IN
Base: Base Bridge
0.004 ETH(Pending)(Pending)
0xad844b7c91d11199d5362215ae324fd2890816903e6e0632bd41209d0412affbDeposit ETH(pending)2024-05-19 7:25:2323 hrs ago1716103523IN
Base: Base Bridge
0.0005 ETH(Pending)(Pending)
0x6275be4cb2fd5160a950c7e1ab9b7abdecc0ecf3a566db3bb96104840aac7ed1Deposit ETH To(pending)2024-05-19 5:48:1024 hrs ago1716097690IN
Base: Base Bridge
0.0003 ETH(Pending)(Pending)
0x89d432e938ad2387785c23a0021bff1e88f7174b8d6682c1c566e05c4fe8b077Deposit ETH(pending)2024-05-19 5:41:3524 hrs ago1716097295IN
Base: Base Bridge
0.0006 ETH(Pending)(Pending)
0x9c0035e7a8f30b79eeacaf9b719546b7a1460ec00d8dda422a0b9fc52fbcb76fDeposit ETH To(pending)2024-05-19 5:31:5424 hrs ago1716096714IN
Base: Base Bridge
0.002 ETH(Pending)(Pending)
0xeb46971df6981c65299a960e2b3fccdedb3fc948e54cc778ca3b030285f2143fDeposit ETH(pending)2024-05-19 2:56:0427 hrs ago1716087364IN
Base: Base Bridge
0.001 ETH(Pending)(Pending)
0x18e877b38d84869a5a7f4369127ab05491377cc63305ae0cda2b74ea0be866b0Deposit ETH(pending)2024-05-19 2:29:0228 hrs ago1716085742IN
Base: Base Bridge
0.0006 ETH(Pending)(Pending)
0xc7d17a04ce91d1983566a43ab2e85be84365e528995f600221542180c1978334Deposit ETH To(pending)2024-05-19 2:21:3428 hrs ago1716085294IN
Base: Base Bridge
0.012 ETH(Pending)(Pending)
0xaf802a9bb96c3e31ee6cf0898cf0a48c0e5b9919dd39a8709212a582759e1844Deposit ETH To(pending)2024-05-19 2:21:1128 hrs ago1716085271IN
Base: Base Bridge
0.0010846657 ETH(Pending)(Pending)
0xb563d15251b3fc0b96b1f0b78f90a2b52556164b8e14de474fb68ba089971d5aDeposit ETH(pending)2024-05-19 2:01:0128 hrs ago1716084061IN
Base: Base Bridge
0.0014 ETH(Pending)(Pending)
Deposit ETH199093662024-05-20 6:31:3516 secs ago1716186695IN
Base: Base Bridge
0.01 ETH0.000751042.72475361
Bridge ETH To199090792024-05-20 5:33:5957 mins ago1716183239IN
Base: Base Bridge
0.066 ETH0.000740422.54415856
Bridge ETH To199090792024-05-20 5:33:5957 mins ago1716183239IN
Base: Base Bridge
0.039 ETH0.000740422.54415856
Bridge ETH To199090792024-05-20 5:33:5957 mins ago1716183239IN
Base: Base Bridge
0.0435 ETH0.000740642.54415856
Bridge ETH To199090662024-05-20 5:31:231 hr ago1716183083IN
Base: Base Bridge
0.0654 ETH0.000768782.83938169
Bridge ETH To199090652024-05-20 5:31:111 hr ago1716183071IN
Base: Base Bridge
0.0874 ETH0.000747062.61174858
Bridge ETH To199090602024-05-20 5:30:111 hr ago1716183011IN
Base: Base Bridge
0.033 ETH0.000742162.55995126
Bridge ETH To199090582024-05-20 5:29:471 hr ago1716182987IN
Base: Base Bridge
0.0775 ETH0.000750572.6460436
Bridge ETH To199090572024-05-20 5:29:351 hr ago1716182975IN
Base: Base Bridge
0.045 ETH0.000762172.76860158
Bridge ETH To199090542024-05-20 5:28:591 hr ago1716182939IN
Base: Base Bridge
0.08 ETH0.000769422.84355622
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
199093662024-05-20 6:31:3516 secs ago1716186695
Base: Base Bridge
0.01 ETH
199091212024-05-20 5:42:2349 mins ago1716183743
Base: Base Bridge
0.09359 ETH
199091212024-05-20 5:42:2349 mins ago1716183743
Base: Base Bridge
0.09359 ETH
199090792024-05-20 5:33:5957 mins ago1716183239
Base: Base Bridge
0.066 ETH
199090792024-05-20 5:33:5957 mins ago1716183239
Base: Base Bridge
0.039 ETH
199090792024-05-20 5:33:5957 mins ago1716183239
Base: Base Bridge
0.0435 ETH
199090662024-05-20 5:31:231 hr ago1716183083
Base: Base Bridge
0.0654 ETH
199090652024-05-20 5:31:111 hr ago1716183071
Base: Base Bridge
0.0874 ETH
199090602024-05-20 5:30:111 hr ago1716183011
Base: Base Bridge
0.033 ETH
199090582024-05-20 5:29:471 hr ago1716182987
Base: Base Bridge
0.0775 ETH
199090572024-05-20 5:29:351 hr ago1716182975
Base: Base Bridge
0.045 ETH
199090542024-05-20 5:28:591 hr ago1716182939
Base: Base Bridge
0.08 ETH
199090512024-05-20 5:28:231 hr ago1716182903
Base: Base Bridge
0.049 ETH
199088742024-05-20 4:52:111 hr ago1716180731
Base: Base Bridge
9.622 ETH
199087962024-05-20 4:36:351 hr ago1716179795
Base: Base Bridge
3.163 ETH
199087962024-05-20 4:36:351 hr ago1716179795
Base: Base Bridge
3.163 ETH
199087312024-05-20 4:23:352 hrs ago1716179015
Base: Base Bridge
0.1 ETH
199086902024-05-20 4:15:232 hrs ago1716178523
Base: Base Bridge
0.82 ETH
199086732024-05-20 4:11:592 hrs ago1716178319
Base: Base Bridge
0.01 ETH
199085672024-05-20 3:50:472 hrs ago1716177047
Base: Base Bridge
0.01 ETH
199084792024-05-20 3:33:112 hrs ago1716175991
Base: Base Bridge
9.98 ETH
199084732024-05-20 3:31:592 hrs ago1716175919
Base: Base Bridge
9.611 ETH
199083642024-05-20 3:09:593 hrs ago1716174599
Base: Base Bridge
0.7619 ETH
199082852024-05-20 2:54:113 hrs ago1716173651
Base: Base Bridge
0.0864 ETH
199082022024-05-20 2:37:353 hrs ago1716172655
Base: Base Bridge
0.00585 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
L1ChugSplashProxy

Compiler Version
v0.8.15+commit.e14f2714

Optimization Enabled:
Yes with 999999 runs

Other Settings:
default evmVersion
File 1 of 1 : L1ChugSplashProxy.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.15;

/**
 * @title IL1ChugSplashDeployer
 */
interface IL1ChugSplashDeployer {
    function isUpgrading() external view returns (bool);
}

/**
 * @custom:legacy
 * @title L1ChugSplashProxy
 * @notice Basic ChugSplash proxy contract for L1. Very close to being a normal proxy but has added
 *         functions `setCode` and `setStorage` for changing the code or storage of the contract.
 *
 *         Note for future developers: do NOT make anything in this contract 'public' unless you
 *         know what you're doing. Anything public can potentially have a function signature that
 *         conflicts with a signature attached to the implementation contract. Public functions
 *         SHOULD always have the `proxyCallIfNotOwner` modifier unless there's some *really* good
 *         reason not to have that modifier. And there almost certainly is not a good reason to not
 *         have that modifier. Beware!
 */
contract L1ChugSplashProxy {
    /**
     * @notice "Magic" prefix. When prepended to some arbitrary bytecode and used to create a
     *         contract, the appended bytecode will be deployed as given.
     */
    bytes13 internal constant DEPLOY_CODE_PREFIX = 0x600D380380600D6000396000f3;

    /**
     * @notice bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)
     */
    bytes32 internal constant IMPLEMENTATION_KEY =
        0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;

    /**
     * @notice bytes32(uint256(keccak256('eip1967.proxy.admin')) - 1)
     */
    bytes32 internal constant OWNER_KEY =
        0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103;

    /**
     * @notice Blocks a function from being called when the parent signals that the system should
     *         be paused via an isUpgrading function.
     */
    modifier onlyWhenNotPaused() {
        address owner = _getOwner();

        // We do a low-level call because there's no guarantee that the owner actually *is* an
        // L1ChugSplashDeployer contract and Solidity will throw errors if we do a normal call and
        // it turns out that it isn't the right type of contract.
        (bool success, bytes memory returndata) = owner.staticcall(
            abi.encodeWithSelector(IL1ChugSplashDeployer.isUpgrading.selector)
        );

        // If the call was unsuccessful then we assume that there's no "isUpgrading" method and we
        // can just continue as normal. We also expect that the return value is exactly 32 bytes
        // long. If this isn't the case then we can safely ignore the result.
        if (success && returndata.length == 32) {
            // Although the expected value is a *boolean*, it's safer to decode as a uint256 in the
            // case that the isUpgrading function returned something other than 0 or 1. But we only
            // really care about the case where this value is 0 (= false).
            uint256 ret = abi.decode(returndata, (uint256));
            require(ret == 0, "L1ChugSplashProxy: system is currently being upgraded");
        }

        _;
    }

    /**
     * @notice Makes a proxy call instead of triggering the given function when the caller is
     *         either the owner or the zero address. Caller can only ever be the zero address if
     *         this function is being called off-chain via eth_call, which is totally fine and can
     *         be convenient for client-side tooling. Avoids situations where the proxy and
     *         implementation share a sighash and the proxy function ends up being called instead
     *         of the implementation one.
     *
     *         Note: msg.sender == address(0) can ONLY be triggered off-chain via eth_call. If
     *         there's a way for someone to send a transaction with msg.sender == address(0) in any
     *         real context then we have much bigger problems. Primary reason to include this
     *         additional allowed sender is because the owner address can be changed dynamically
     *         and we do not want clients to have to keep track of the current owner in order to
     *         make an eth_call that doesn't trigger the proxied contract.
     */
    // slither-disable-next-line incorrect-modifier
    modifier proxyCallIfNotOwner() {
        if (msg.sender == _getOwner() || msg.sender == address(0)) {
            _;
        } else {
            // This WILL halt the call frame on completion.
            _doProxyCall();
        }
    }

    /**
     * @param _owner Address of the initial contract owner.
     */
    constructor(address _owner) {
        _setOwner(_owner);
    }

    // slither-disable-next-line locked-ether
    receive() external payable {
        // Proxy call by default.
        _doProxyCall();
    }

    // slither-disable-next-line locked-ether
    fallback() external payable {
        // Proxy call by default.
        _doProxyCall();
    }

    /**
     * @notice Sets the code that should be running behind this proxy.
     *
     *         Note: This scheme is a bit different from the standard proxy scheme where one would
     *         typically deploy the code separately and then set the implementation address. We're
     *         doing it this way because it gives us a lot more freedom on the client side. Can
     *         only be triggered by the contract owner.
     *
     * @param _code New contract code to run inside this contract.
     */
    function setCode(bytes memory _code) external proxyCallIfNotOwner {
        // Get the code hash of the current implementation.
        address implementation = _getImplementation();

        // If the code hash matches the new implementation then we return early.
        if (keccak256(_code) == _getAccountCodeHash(implementation)) {
            return;
        }

        // Create the deploycode by appending the magic prefix.
        bytes memory deploycode = abi.encodePacked(DEPLOY_CODE_PREFIX, _code);

        // Deploy the code and set the new implementation address.
        address newImplementation;
        assembly {
            newImplementation := create(0x0, add(deploycode, 0x20), mload(deploycode))
        }

        // Check that the code was actually deployed correctly. I'm not sure if you can ever
        // actually fail this check. Should only happen if the contract creation from above runs
        // out of gas but this parent execution thread does NOT run out of gas. Seems like we
        // should be doing this check anyway though.
        require(
            _getAccountCodeHash(newImplementation) == keccak256(_code),
            "L1ChugSplashProxy: code was not correctly deployed"
        );

        _setImplementation(newImplementation);
    }

    /**
     * @notice Modifies some storage slot within the proxy contract. Gives us a lot of power to
     *         perform upgrades in a more transparent way. Only callable by the owner.
     *
     * @param _key   Storage key to modify.
     * @param _value New value for the storage key.
     */
    function setStorage(bytes32 _key, bytes32 _value) external proxyCallIfNotOwner {
        assembly {
            sstore(_key, _value)
        }
    }

    /**
     * @notice Changes the owner of the proxy contract. Only callable by the owner.
     *
     * @param _owner New owner of the proxy contract.
     */
    function setOwner(address _owner) external proxyCallIfNotOwner {
        _setOwner(_owner);
    }

    /**
     * @notice Queries the owner of the proxy contract. Can only be called by the owner OR by
     *         making an eth_call and setting the "from" address to address(0).
     *
     * @return Owner address.
     */
    function getOwner() external proxyCallIfNotOwner returns (address) {
        return _getOwner();
    }

    /**
     * @notice Queries the implementation address. Can only be called by the owner OR by making an
     *         eth_call and setting the "from" address to address(0).
     *
     * @return Implementation address.
     */
    function getImplementation() external proxyCallIfNotOwner returns (address) {
        return _getImplementation();
    }

    /**
     * @notice Sets the implementation address.
     *
     * @param _implementation New implementation address.
     */
    function _setImplementation(address _implementation) internal {
        assembly {
            sstore(IMPLEMENTATION_KEY, _implementation)
        }
    }

    /**
     * @notice Changes the owner of the proxy contract.
     *
     * @param _owner New owner of the proxy contract.
     */
    function _setOwner(address _owner) internal {
        assembly {
            sstore(OWNER_KEY, _owner)
        }
    }

    /**
     * @notice Performs the proxy call via a delegatecall.
     */
    function _doProxyCall() internal onlyWhenNotPaused {
        address implementation = _getImplementation();

        require(implementation != address(0), "L1ChugSplashProxy: implementation is not set yet");

        assembly {
            // Copy calldata into memory at 0x0....calldatasize.
            calldatacopy(0x0, 0x0, calldatasize())

            // Perform the delegatecall, make sure to pass all available gas.
            let success := delegatecall(gas(), implementation, 0x0, calldatasize(), 0x0, 0x0)

            // Copy returndata into memory at 0x0....returndatasize. Note that this *will*
            // overwrite the calldata that we just copied into memory but that doesn't really
            // matter because we'll be returning in a second anyway.
            returndatacopy(0x0, 0x0, returndatasize())

            // Success == 0 means a revert. We'll revert too and pass the data up.
            if iszero(success) {
                revert(0x0, returndatasize())
            }

            // Otherwise we'll just return and pass the data up.
            return(0x0, returndatasize())
        }
    }

    /**
     * @notice Queries the implementation address.
     *
     * @return Implementation address.
     */
    function _getImplementation() internal view returns (address) {
        address implementation;
        assembly {
            implementation := sload(IMPLEMENTATION_KEY)
        }
        return implementation;
    }

    /**
     * @notice Queries the owner of the proxy contract.
     *
     * @return Owner address.
     */
    function _getOwner() internal view returns (address) {
        address owner;
        assembly {
            owner := sload(OWNER_KEY)
        }
        return owner;
    }

    /**
     * @notice Gets the code hash for a given account.
     *
     * @param _account Address of the account to get a code hash for.
     *
     * @return Code hash for the account.
     */
    function _getAccountCodeHash(address _account) internal view returns (bytes32) {
        bytes32 codeHash;
        assembly {
            codeHash := extcodehash(_account)
        }
        return codeHash;
    }
}

Settings
{
  "remappings": [
    "@base-contracts/=lib/base-contracts/",
    "@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/",
    "@gnosissafe/contracts/=lib/safe-contracts/contracts/",
    "@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/",
    "@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/",
    "@rari-capital/solmate/=lib/solmate/",
    "base-contracts/=lib/base-contracts/",
    "ds-test/=lib/forge-std/lib/ds-test/src/",
    "forge-std/=lib/forge-std/src/",
    "openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/",
    "openzeppelin-contracts/=lib/openzeppelin-contracts/",
    "optimism/=lib/optimism/",
    "safe-contracts/=lib/safe-contracts/contracts/",
    "solmate/=lib/solmate/src/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 999999
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "ipfs"
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "london",
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"getImplementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"_code","type":"bytes"}],"name":"setCode","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"setOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_key","type":"bytes32"},{"internalType":"bytes32","name":"_value","type":"bytes32"}],"name":"setStorage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b50604051610a6d380380610a6d83398101604081905261002f9161005d565b610057817fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b5061008d565b60006020828403121561006f57600080fd5b81516001600160a01b038116811461008657600080fd5b9392505050565b6109d18061009c6000396000f3fe60806040526004361061005e5760003560e01c8063893d20e811610043578063893d20e8146100b55780639b0b0fda146100f3578063aaf10f42146101135761006d565b806313af4035146100755780636c5d4ad0146100955761006d565b3661006d5761006b610128565b005b61006b610128565b34801561008157600080fd5b5061006b6100903660046107a2565b6103cb565b3480156100a157600080fd5b5061006b6100b036600461080e565b61045c565b3480156100c157600080fd5b506100ca610611565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b3480156100ff57600080fd5b5061006b61010e3660046108dd565b6106a8565b34801561011f57600080fd5b506100ca610716565b60006101527fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60408051600481526024810182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb7947262000000000000000000000000000000000000000000000000000000001790529051919250600091829173ffffffffffffffffffffffffffffffffffffffff8516916101d4919061093a565b600060405180830381855afa9150503d806000811461020f576040519150601f19603f3d011682016040523d82523d6000602084013e610214565b606091505b5091509150818015610227575080516020145b156102d9576000818060200190518101906102429190610946565b905080156102d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f4c314368756753706c61736850726f78793a2073797374656d2069732063757260448201527f72656e746c79206265696e67207570677261646564000000000000000000000060648201526084015b60405180910390fd5b505b60006103037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905073ffffffffffffffffffffffffffffffffffffffff81166103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4c314368756753706c61736850726f78793a20696d706c656d656e746174696f60448201527f6e206973206e6f7420736574207965740000000000000000000000000000000060648201526084016102ce565b3660008037600080366000845af43d6000803e806103c5573d6000fd5b503d6000f35b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610424575033155b1561045457610451817fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b50565b610451610128565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806104b5575033155b156104545760006104e47f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b9050803f82516020840120036104f8575050565b60405160009061052e907f600d380380600d6000396000f30000000000000000000000000000000000000090859060200161095f565b604051602081830303815290604052905060008151602083016000f084516020860120909150813f146105e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f4c314368756753706c61736850726f78793a20636f646520776173206e6f742060448201527f636f72726563746c79206465706c6f796564000000000000000000000000000060648201526084016102ce565b61060b817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b50505050565b600061063b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610672575033155b1561069d57507fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b6106a5610128565b90565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610701575033155b1561070a579055565b610712610128565b5050565b60006107407fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610777575033155b1561069d57507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000602082840312156107b457600080fd5b813573ffffffffffffffffffffffffffffffffffffffff811681146107d857600080fd5b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121561082057600080fd5b813567ffffffffffffffff8082111561083857600080fd5b818401915084601f83011261084c57600080fd5b81358181111561085e5761085e6107df565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156108a4576108a46107df565b816040528281528760208487010111156108bd57600080fd5b826020860160208301376000928101602001929092525095945050505050565b600080604083850312156108f057600080fd5b50508035926020909101359150565b6000815160005b818110156109205760208185018101518683015201610906565b8181111561092f576000828601525b509290920192915050565b60006107d882846108ff565b60006020828403121561095857600080fd5b5051919050565b7fffffffffffffffffffffffffff00000000000000000000000000000000000000831681526000610993600d8301846108ff565b94935050505056fea26469706673582212202e8688fd522b1880ecda99fda6860018f0662d133db01c0bb7e3410d30926c6564736f6c634300080f00330000000000000000000000006606d3c20cc94cc7aa1d430c0e83a5129976153a

Deployed Bytecode

0x60806040526004361061005e5760003560e01c8063893d20e811610043578063893d20e8146100b55780639b0b0fda146100f3578063aaf10f42146101135761006d565b806313af4035146100755780636c5d4ad0146100955761006d565b3661006d5761006b610128565b005b61006b610128565b34801561008157600080fd5b5061006b6100903660046107a2565b6103cb565b3480156100a157600080fd5b5061006b6100b036600461080e565b61045c565b3480156100c157600080fd5b506100ca610611565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b3480156100ff57600080fd5b5061006b61010e3660046108dd565b6106a8565b34801561011f57600080fd5b506100ca610716565b60006101527fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60408051600481526024810182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb7947262000000000000000000000000000000000000000000000000000000001790529051919250600091829173ffffffffffffffffffffffffffffffffffffffff8516916101d4919061093a565b600060405180830381855afa9150503d806000811461020f576040519150601f19603f3d011682016040523d82523d6000602084013e610214565b606091505b5091509150818015610227575080516020145b156102d9576000818060200190518101906102429190610946565b905080156102d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f4c314368756753706c61736850726f78793a2073797374656d2069732063757260448201527f72656e746c79206265696e67207570677261646564000000000000000000000060648201526084015b60405180910390fd5b505b60006103037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905073ffffffffffffffffffffffffffffffffffffffff81166103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f4c314368756753706c61736850726f78793a20696d706c656d656e746174696f60448201527f6e206973206e6f7420736574207965740000000000000000000000000000000060648201526084016102ce565b3660008037600080366000845af43d6000803e806103c5573d6000fd5b503d6000f35b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610424575033155b1561045457610451817fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b50565b610451610128565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806104b5575033155b156104545760006104e47f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b9050803f82516020840120036104f8575050565b60405160009061052e907f600d380380600d6000396000f30000000000000000000000000000000000000090859060200161095f565b604051602081830303815290604052905060008151602083016000f084516020860120909150813f146105e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f4c314368756753706c61736850726f78793a20636f646520776173206e6f742060448201527f636f72726563746c79206465706c6f796564000000000000000000000000000060648201526084016102ce565b61060b817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b50505050565b600061063b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610672575033155b1561069d57507fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b6106a5610128565b90565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610701575033155b1561070a579055565b610712610128565b5050565b60006107407fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610777575033155b1561069d57507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000602082840312156107b457600080fd5b813573ffffffffffffffffffffffffffffffffffffffff811681146107d857600080fd5b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121561082057600080fd5b813567ffffffffffffffff8082111561083857600080fd5b818401915084601f83011261084c57600080fd5b81358181111561085e5761085e6107df565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156108a4576108a46107df565b816040528281528760208487010111156108bd57600080fd5b826020860160208301376000928101602001929092525095945050505050565b600080604083850312156108f057600080fd5b50508035926020909101359150565b6000815160005b818110156109205760208185018101518683015201610906565b8181111561092f576000828601525b509290920192915050565b60006107d882846108ff565b60006020828403121561095857600080fd5b5051919050565b7fffffffffffffffffffffffffff00000000000000000000000000000000000000831681526000610993600d8301846108ff565b94935050505056fea26469706673582212202e8688fd522b1880ecda99fda6860018f0662d133db01c0bb7e3410d30926c6564736f6c634300080f0033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000006606d3c20cc94cc7aa1d430c0e83a5129976153a

-----Decoded View---------------
Arg [0] : _owner (address): 0x6606D3c20CC94cc7aA1D430C0E83a5129976153A

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000006606d3c20cc94cc7aa1d430c0e83a5129976153a


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

OVERVIEW

A contract to bridge ETH from Ethereum to Base

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Chain Token Portfolio % Price Amount Value
ETH18.49%$0.99956573,427,667.857$73,395,726.82
ETH18.47%$0.99639973,607,465.1208$73,342,428.25
ETH17.91%$3,324.2421,387.6462$71,097,668.97
ETH10.70%$0.11947355,708,323.7492$42,496,473.44
ETH8.39%$0.00034197,710,939,893$33,313,567.85
ETH3.66%$2.455,933,102.789$14,536,101.83
ETH3.26%$0.02441530,356,089.2798$12,945,827.73
ETH2.48%$3,438.192,864.7405$9,849,522.26
ETH2.06%$0.0081461,004,604,036.4693$8,183,900.51
ETH1.82%$0.8044838,974,262.2993$7,219,641.46
ETH1.00%$0.7646655,180,486.5244$3,961,336.73
ETH0.99%$0.9998333,944,394.7933$3,943,736.08
ETH0.97%$0.0000016,671,259,168,777.31$3,834,597.48
ETH0.80%$0.01463216,269,628.5972$3,163,916.53
ETH0.62%$0.008682285,689,845.6822$2,480,227.82
ETH0.49%$0.9985911,956,898.3362$1,954,141.07
ETH0.48%$0.2858046,624,820$1,893,400.06
ETH0.46%$0.435634,212,419.7004$1,835,056.39
ETH0.45%$0.012164146,102,109.5422$1,777,155.38
ETH0.44%$2.25785,127.9954$1,766,537.99
ETH0.44%$2.63659,481.4127$1,734,436.12
ETH0.42%$1.67995,473.0941$1,665,565.26
ETH0.38%$1.351,124,660.8844$1,518,292.19
ETH0.36%$0.01443100,000,000$1,443,027
ETH0.34%$28.1747,997.5518$1,352,091.03
ETH0.25%$0.03317830,255,937.3941$1,003,816.48
ETH0.25%$0.1337677,449,506.2891$996,498.11
ETH0.21%$0.7666041,093,303.7379$838,131.02
ETH0.20%$3.46233,031.1362$806,287.73
ETH0.20%$0.3543632,241,250.2789$794,216.17
ETH0.20%$0.999743774,793.5198$774,594.4
ETH0.18%$0.00154476,398,921.7719$733,625.76
ETH0.17%$2.29297,317.4986$680,857.07
ETH0.15%<$0.0000013,298,203,640,213,100$610,081.92
ETH0.15%$0.03688116,504,980.7274$608,722.17
ETH0.13%$0.0309117,184,689.6556$531,177.04
ETH0.13%$1521,437.2153$523,531.83
ETH0.13%$0.0929645,586,239.9442$519,319.21
ETH0.13%$76.786,532.2728$501,568.08
ETH0.12%$55.988,727.9478$488,590.52
ETH0.12%$7.7761,531.0929$478,096.59
ETH0.10%$0.00059640,722,491.274$377,782.8
ETH0.09%$0.01943517,782,559.1226$345,612.39
ETH0.08%$0.427857751,475.6569$321,524.39
ETH0.08%$0.02180914,494,358.0381$316,110.77
ETH0.06%$2.9286,952.7083$253,901.91
ETH0.06%$0.00000927,726,679,208.279$250,149.5
ETH0.06%$0.02449910,170,000$249,151.67
ETH0.06%$0.2237421,020,688.4503$228,370.88
ETH0.05%$0.0001931,104,731,779.2627$213,688.27
ETH0.05%$0.000368566,755,191.8416$208,809.42
ETH0.05%$0.0406915,129,697.7156$208,733.2
ETH0.05%$0.00983320,666,323.3836$203,216.92
ETH0.05%$40.445,000$202,200
ETH0.05%$0.1529811,205,336.8508$184,393.64
ETH0.05%$1.2151,187.701$181,425.24
ETH0.05%$0.0308925,854,535.0816$180,858.47
ETH0.04%$3,637.848.3883$176,026.97
ETH0.04%$0.000782192,121,335.9678$150,146.67
ETH0.03%$0.00592221,160,835.7027$125,310.45
ETH0.03%$0.498894239,552.908$119,511.51
ETH0.03%$0.688373161,452.2902$111,139.4
ETH0.03%$203.47504.499$102,650.42
ETH0.02%$6,900.6212.8978$89,003.1
ETH0.02%$0.00519913,883,504.8898$72,177.98
ETH0.02%$0.00450114,631,362.7972$65,854.96
ETH0.01%$0.119896477,408.5229$57,239.37
ETH0.01%$0.058257806,000$46,955.5
ETH0.01%$0.092011480,066$44,171.35
ETH0.01%$0.41375100,500$41,581.83
ETH<0.01%$0.0212611,795,898.585$38,182.96
ETH<0.01%$0.052918616,824.2952$32,641.11
ETH<0.01%$114.93258.1291$29,666.78
ETH<0.01%$0.000069337,861,088.5708$23,278.63
ETH<0.01%$12.931,765.61$22,829.34
ETH<0.01%$1.0720,792.9524$22,269.25
ETH<0.01%$0.030135500,010$15,067.58
ETH<0.01%<$0.000001176,664,247,298.218$13,805.96
ETH<0.01%$0.38785128,160.6541$10,922.14
ETH<0.01%$0.069572128,000$8,905.2
ETH<0.01%$0.055834157,026.5399$8,767.45
ETH<0.01%$0.6819911,127.5443$7,588.87
ETH<0.01%$0.57400910,979.1175$6,302.11
ETH<0.01%$0.0029872,050,000$6,122.59
ETH<0.01%$18.69227.9296$4,260
ETH<0.01%$0.005843500,000$2,921.5
ETH<0.01%$0.00005746,022,285.9824$2,643.98
ETH<0.01%$0.711952888$632.21
ETH<0.01%$0.423061,000$423.06
ETH<0.01%$0.1303351,874.224$244.28
ETH<0.01%$9.315.5$144.15
ETH<0.01%$119.221$119.22
ETH<0.01%$0.0000096,699,604$63.24
ETH<0.01%$0.99758235.7697$35.68
ETH<0.01%$3,067.930.0102$31.26
ETH<0.01%$0.0246731,000$24.67
ETH<0.01%$0.22046486$18.96
ETH<0.01%$0.175687100$17.57
ETH<0.01%$16.911$16.91
ETH<0.01%$0.99887714$13.98
ETH<0.01%$0.19983430$6
ETH<0.01%$1.085$5.42
ETH<0.01%$0.9894614.8952$4.84
ETH<0.01%$0.0029091,000$2.91
ETH<0.01%$0.0740$2.8
ETH<0.01%$0.5459241.001$0.5464
ETH<0.01%$0.1973891$0.1973
ETH<0.01%$0.0433014$0.1732
ETH<0.01%$0.01133710$0.1133
ETH<0.01%$0.1103961$0.1103
BASE<0.01%$3,106.221.6318$5,068.78
BASE<0.01%$0.0081484,324.6182$35.24
BASE<0.01%<$0.000001306,885,758$6.26
BASE<0.01%$3,111.930.0001$0.3111
ARB<0.01%$3,105.640.1023$317.71
OP<0.01%$3,106.220.0155$48.21
OP<0.01%$2.548.4151$21.34
BSC<0.01%$577.480.0133$7.66
ZKSYNC<0.01%$3,109.170.001$3.11
AVAX<0.01%$36.220.01$0.362162
OPBNB<0.01%$577.490.0001$0.057749
MATIC<0.01%$0.6908630.0145$0.010018
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.