ETH Price: $3,819.52 (+23.43%)
Gas: 19 Gwei

Contract

0xbEb5Fc579115071764c7423A4f12eDde41f106Ed
 
Transaction Hash
Method
Block
From
To
Value
0xa9c29ba7c2e30a13b36a1393730accf0fe8f7b40e1722ed54945c3301d91d3f1Finalize Withdra...(pending)2024-05-21 11:44:556 mins ago1716291895IN
0xbEb5Fc57...e41f106Ed
0 ETH(Pending)(Pending)
0x646adb07f4e4302f5d3b8ca91fffba32d3d29978ad48157591b66ece12a77595Prove Withdrawal...(pending)2024-05-21 11:32:5618 mins ago1716291176IN
0xbEb5Fc57...e41f106Ed
0 ETH(Pending)(Pending)
0xd33e7180cca67ecdfcb02d751c9066275cec999b5977145a50720515d4223031Finalize Withdra...(pending)2024-05-21 11:16:1434 mins ago1716290174IN
0xbEb5Fc57...e41f106Ed
0 ETH(Pending)(Pending)
0x7c3be0b9d5917b566aff3a9fa9029801edb2e11349a5b2259dc86a137d424f6cFinalize Withdra...(pending)2024-05-19 2:21:272 days ago1716085287IN
0xbEb5Fc57...e41f106Ed
0 ETH(Pending)(Pending)
Prove Withdrawal...199175782024-05-21 10:06:351 hr ago1716285995IN
0xbEb5Fc57...e41f106Ed
0 ETH0.002823018.84557
Prove Withdrawal...199175292024-05-21 9:56:351 hr ago1716285395IN
0xbEb5Fc57...e41f106Ed
0 ETH0.002248457.78323034
Prove Withdrawal...199175222024-05-21 9:55:111 hr ago1716285311IN
0xbEb5Fc57...e41f106Ed
0 ETH0.00253667.94786291
Prove Withdrawal...199175122024-05-21 9:53:111 hr ago1716285191IN
0xbEb5Fc57...e41f106Ed
0 ETH0.002808938.76004754
Prove Withdrawal...199175122024-05-21 9:53:111 hr ago1716285191IN
0xbEb5Fc57...e41f106Ed
0 ETH0.002776658.76004754
Prove Withdrawal...199171722024-05-21 8:44:353 hrs ago1716281075IN
0xbEb5Fc57...e41f106Ed
0 ETH0.002538347.9144045
Prove Withdrawal...199171002024-05-21 8:30:113 hrs ago1716280211IN
0xbEb5Fc57...e41f106Ed
0 ETH0.002252367.06963532
Prove Withdrawal...199169052024-05-21 7:50:594 hrs ago1716277859IN
0xbEb5Fc57...e41f106Ed
0 ETH0.0032029710.08155037
Finalize Withdra...199163032024-05-21 5:49:596 hrs ago1716270599IN
0xbEb5Fc57...e41f106Ed
0 ETH0.0025578911.05479443
Finalize Withdra...199162912024-05-21 5:47:356 hrs ago1716270455IN
0xbEb5Fc57...e41f106Ed
0 ETH0.001837519.3962956
Prove Withdrawal...199160492024-05-21 4:59:116 hrs ago1716267551IN
0xbEb5Fc57...e41f106Ed
0 ETH0.002532868.74582783
Finalize Withdra...199160012024-05-21 4:49:357 hrs ago1716266975IN
0xbEb5Fc57...e41f106Ed
0 ETH0.00227097.15766628
Finalize Withdra...199157532024-05-21 3:59:477 hrs ago1716263987IN
0xbEb5Fc57...e41f106Ed
0 ETH0.0038494411.51257172
Prove Withdrawal...199157302024-05-21 3:55:117 hrs ago1716263711IN
0xbEb5Fc57...e41f106Ed
0 ETH0.0037840111.90069346
Finalize Withdra...199156592024-05-21 3:40:598 hrs ago1716262859IN
0xbEb5Fc57...e41f106Ed
0 ETH0.0021468710.02112152
Finalize Withdra...199156572024-05-21 3:40:358 hrs ago1716262835IN
0xbEb5Fc57...e41f106Ed
0 ETH0.0022377310.44522795
Prove Withdrawal...199151492024-05-21 1:58:119 hrs ago1716256691IN
0xbEb5Fc57...e41f106Ed
0 ETH0.0037004211.57629969
Prove Withdrawal...199151402024-05-21 1:56:239 hrs ago1716256583IN
0xbEb5Fc57...e41f106Ed
0 ETH0.0038289111.97917046
Prove Withdrawal...199151402024-05-21 1:56:239 hrs ago1716256583IN
0xbEb5Fc57...e41f106Ed
0 ETH0.0038091111.97917046
Prove Withdrawal...199147442024-05-21 0:36:2311 hrs ago1716251783IN
0xbEb5Fc57...e41f106Ed
0 ETH0.0050456415.80991698
Prove Withdrawal...199145892024-05-21 0:04:5911 hrs ago1716249899IN
0xbEb5Fc57...e41f106Ed
0 ETH0.0049503215.54022678
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
199180152024-05-21 11:34:3516 mins ago1716291275
0xbEb5Fc57...e41f106Ed
33.19229749 ETH
199179542024-05-21 11:22:2328 mins ago1716290543
0xbEb5Fc57...e41f106Ed
0.04 ETH
199178872024-05-21 11:08:4742 mins ago1716289727
0xbEb5Fc57...e41f106Ed
0.002 ETH
199178242024-05-21 10:56:1154 mins ago1716288971
0xbEb5Fc57...e41f106Ed
0.15 ETH
199177602024-05-21 10:43:231 hr ago1716288203
0xbEb5Fc57...e41f106Ed
0.02 ETH
199176412024-05-21 10:19:111 hr ago1716286751
0xbEb5Fc57...e41f106Ed
0.05 ETH
199176122024-05-21 10:13:231 hr ago1716286403
0xbEb5Fc57...e41f106Ed
1 ETH
199174832024-05-21 9:47:112 hrs ago1716284831
0xbEb5Fc57...e41f106Ed
1.01 ETH
199174602024-05-21 9:42:352 hrs ago1716284555
0xbEb5Fc57...e41f106Ed
0.45 ETH
199174212024-05-21 9:34:472 hrs ago1716284087
0xbEb5Fc57...e41f106Ed
6.33 ETH
199173062024-05-21 9:11:472 hrs ago1716282707
0xbEb5Fc57...e41f106Ed
32.39118432 ETH
199171452024-05-21 8:39:113 hrs ago1716280751
0xbEb5Fc57...e41f106Ed
0.02 ETH
199171012024-05-21 8:30:233 hrs ago1716280223
0xbEb5Fc57...e41f106Ed
0.01 ETH
199170132024-05-21 8:12:473 hrs ago1716279167
0xbEb5Fc57...e41f106Ed
0.005 ETH
199169352024-05-21 7:56:593 hrs ago1716278219
0xbEb5Fc57...e41f106Ed
0.02 ETH
199169192024-05-21 7:53:473 hrs ago1716278027
0xbEb5Fc57...e41f106Ed
81.78204244 ETH
199168462024-05-21 7:39:114 hrs ago1716277151
0xbEb5Fc57...e41f106Ed
0.001 ETH
199168462024-05-21 7:39:114 hrs ago1716277151
0xbEb5Fc57...e41f106Ed
0.001 ETH
199166962024-05-21 7:08:474 hrs ago1716275327
0xbEb5Fc57...e41f106Ed
0.003972 ETH
199166392024-05-21 6:57:114 hrs ago1716274631
0xbEb5Fc57...e41f106Ed
1 ETH
199165522024-05-21 6:39:475 hrs ago1716273587
0xbEb5Fc57...e41f106Ed
30.17187318 ETH
199165082024-05-21 6:30:595 hrs ago1716273059
0xbEb5Fc57...e41f106Ed
0.006 ETH
199163112024-05-21 5:51:355 hrs ago1716270695
0xbEb5Fc57...e41f106Ed
0.0015 ETH
199162802024-05-21 5:45:236 hrs ago1716270323
0xbEb5Fc57...e41f106Ed
0.00053907 ETH
199162352024-05-21 5:36:236 hrs ago1716269783
0xbEb5Fc57...e41f106Ed
13.6 ETH
View All Internal Transactions
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xeFDd8B58...A5871e0d7
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
Proxy

Compiler Version
v0.8.15+commit.e14f2714

Optimization Enabled:
Yes with 999999 runs

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

/**
 * @title Proxy
 * @notice Proxy is a transparent proxy that passes through the call if the caller is the owner or
 *         if the caller is address(0), meaning that the call originated from an off-chain
 *         simulation.
 */
contract Proxy {
    /**
     * @notice The storage slot that holds the address of the implementation.
     *         bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)
     */
    bytes32 internal constant IMPLEMENTATION_KEY =
        0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;

    /**
     * @notice The storage slot that holds the address of the owner.
     *         bytes32(uint256(keccak256('eip1967.proxy.admin')) - 1)
     */
    bytes32 internal constant OWNER_KEY =
        0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103;

    /**
     * @notice An event that is emitted each time the implementation is changed. This event is part
     *         of the EIP-1967 specification.
     *
     * @param implementation The address of the implementation contract
     */
    event Upgraded(address indexed implementation);

    /**
     * @notice An event that is emitted each time the owner is upgraded. This event is part of the
     *         EIP-1967 specification.
     *
     * @param previousAdmin The previous owner of the contract
     * @param newAdmin      The new owner of the contract
     */
    event AdminChanged(address previousAdmin, address newAdmin);

    /**
     * @notice A modifier that reverts if not called by the owner or by address(0) to allow
     *         eth_call to interact with this proxy without needing to use low-level storage
     *         inspection. We assume that nobody is able to trigger calls from address(0) during
     *         normal EVM execution.
     */
    modifier proxyCallIfNotAdmin() {
        if (msg.sender == _getAdmin() || msg.sender == address(0)) {
            _;
        } else {
            // This WILL halt the call frame on completion.
            _doProxyCall();
        }
    }

    /**
     * @notice Sets the initial admin during contract deployment. Admin address is stored at the
     *         EIP-1967 admin storage slot so that accidental storage collision with the
     *         implementation is not possible.
     *
     * @param _admin Address of the initial contract admin. Admin as the ability to access the
     *               transparent proxy interface.
     */
    constructor(address _admin) {
        _changeAdmin(_admin);
    }

    // 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 Set the implementation contract address. The code at the given address will execute
     *         when this contract is called.
     *
     * @param _implementation Address of the implementation contract.
     */
    function upgradeTo(address _implementation) public virtual proxyCallIfNotAdmin {
        _setImplementation(_implementation);
    }

    /**
     * @notice Set the implementation and call a function in a single transaction. Useful to ensure
     *         atomic execution of initialization-based upgrades.
     *
     * @param _implementation Address of the implementation contract.
     * @param _data           Calldata to delegatecall the new implementation with.
     */
    function upgradeToAndCall(address _implementation, bytes calldata _data)
        public
        payable
        virtual
        proxyCallIfNotAdmin
        returns (bytes memory)
    {
        _setImplementation(_implementation);
        (bool success, bytes memory returndata) = _implementation.delegatecall(_data);
        require(success, "Proxy: delegatecall to new implementation contract failed");
        return returndata;
    }

    /**
     * @notice Changes the owner of the proxy contract. Only callable by the owner.
     *
     * @param _admin New owner of the proxy contract.
     */
    function changeAdmin(address _admin) public virtual proxyCallIfNotAdmin {
        _changeAdmin(_admin);
    }

    /**
     * @notice Gets the owner of the proxy contract.
     *
     * @return Owner address.
     */
    function admin() public virtual proxyCallIfNotAdmin returns (address) {
        return _getAdmin();
    }

    /**
     * @notice Queries the implementation address.
     *
     * @return Implementation address.
     */
    function implementation() public virtual proxyCallIfNotAdmin returns (address) {
        return _getImplementation();
    }

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

    /**
     * @notice Changes the owner of the proxy contract.
     *
     * @param _admin New owner of the proxy contract.
     */
    function _changeAdmin(address _admin) internal {
        address previous = _getAdmin();
        assembly {
            sstore(OWNER_KEY, _admin)
        }
        emit AdminChanged(previous, _admin);
    }

    /**
     * @notice Performs the proxy call via a delegatecall.
     */
    function _doProxyCall() internal {
        address impl = _getImplementation();
        require(impl != address(0), "Proxy: implementation not initialized");

        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(), impl, 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 impl;
        assembly {
            impl := sload(IMPLEMENTATION_KEY)
        }
        return impl;
    }

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

Settings
{
  "remappings": [
    "@openzeppelin/=node_modules/@openzeppelin/",
    "@openzeppelin/contracts-upgradeable/=node_modules/@openzeppelin/contracts-upgradeable/",
    "@openzeppelin/contracts/=node_modules/@openzeppelin/contracts/",
    "@rari-capital/=node_modules/@rari-capital/",
    "@rari-capital/solmate/=node_modules/@rari-capital/solmate/",
    "ds-test/=node_modules/ds-test/src/",
    "forge-std/=node_modules/forge-std/src/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 999999
  },
  "metadata": {
    "bytecodeHash": "none"
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "london",
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_admin","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_admin","type":"address"}],"name":"changeAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_implementation","type":"address"}],"name":"upgradeTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_implementation","type":"address"},{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"payable","type":"function"},{"stateMutability":"payable","type":"receive"}]

Deployed Bytecode

0x60806040526004361061005e5760003560e01c80635c60da1b116100435780635c60da1b146100be5780638f283970146100f8578063f851a440146101185761006d565b80633659cfe6146100755780634f1ef286146100955761006d565b3661006d5761006b61012d565b005b61006b61012d565b34801561008157600080fd5b5061006b6100903660046106d9565b610224565b6100a86100a33660046106f4565b610296565b6040516100b59190610777565b60405180910390f35b3480156100ca57600080fd5b506100d3610419565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100b5565b34801561010457600080fd5b5061006b6101133660046106d9565b6104b0565b34801561012457600080fd5b506100d3610517565b60006101577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905073ffffffffffffffffffffffffffffffffffffffff8116610201576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f50726f78793a20696d706c656d656e746174696f6e206e6f7420696e6974696160448201527f6c697a656400000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b3660008037600080366000845af43d6000803e8061021e573d6000fd5b503d6000f35b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061027d575033155b1561028e5761028b816105a3565b50565b61028b61012d565b60606102c07fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806102f7575033155b1561040a57610305846105a3565b6000808573ffffffffffffffffffffffffffffffffffffffff16858560405161032f9291906107ea565b600060405180830381855af49150503d806000811461036a576040519150601f19603f3d011682016040523d82523d6000602084013e61036f565b606091505b509150915081610401576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f50726f78793a2064656c656761746563616c6c20746f206e657720696d706c6560448201527f6d656e746174696f6e20636f6e7472616374206661696c65640000000000000060648201526084016101f8565b91506104129050565b61041261012d565b9392505050565b60006104437fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061047a575033155b156104a557507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6104ad61012d565b90565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610509575033155b1561028e5761028b8161060b565b60006105417fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610578575033155b156104a557507fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc81905560405173ffffffffffffffffffffffffffffffffffffffff8216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60006106357fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61038390556040805173ffffffffffffffffffffffffffffffffffffffff8084168252851660208201529192507f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f910160405180910390a15050565b803573ffffffffffffffffffffffffffffffffffffffff811681146106d457600080fd5b919050565b6000602082840312156106eb57600080fd5b610412826106b0565b60008060006040848603121561070957600080fd5b610712846106b0565b9250602084013567ffffffffffffffff8082111561072f57600080fd5b818601915086601f83011261074357600080fd5b81358181111561075257600080fd5b87602082850101111561076457600080fd5b6020830194508093505050509250925092565b600060208083528351808285015260005b818110156107a457858101830151858201604001528201610788565b818111156107b6576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b818382376000910190815291905056fea164736f6c634300080f000a

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
Chain Token Portfolio % Price Amount Value
ETH
Ether (ETH)
100.00%$3,815.23469,508.8513$1,791,285,788.33
ETH<0.01%$13.8103$3.81
OP<0.01%$3,816.530.00100037$3.82
ZKSYNC<0.01%$3,815.230.00031256$1.19
LINEA<0.01%$3,819.520.00000975$0.037255
ARBNOVA<0.01%$3,818.770.000000169333$0.000647
ARB<0.01%$3,815.120.000000005751$0.000022
BLAST<0.01%$3,815.120.000000001198$0.000005
OPBNB<0.01%$620.490.00000000376$0.000002
SCROLL<0.01%$3,815.230.0000000000551<$0.000001
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.