ETH Price: $1,607.92 (+11.70%)
Gas: 0.44 Gwei
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Submit Rate222295152025-04-09 6:20:1122 hrs ago1744179611IN
0x0f22dC9b...c8f22C15C
0.00000367 ETH0.000578063.50086377
Submit Rate222223142025-04-08 6:13:2346 hrs ago1744092803IN
0x0f22dC9b...c8f22C15C
0.00000367 ETH0.000582033.52493914
Submit Rate222152082025-04-07 6:22:232 days ago1744006943IN
0x0f22dC9b...c8f22C15C
0.00000371 ETH0.000817284.94962329
Submit Rate222080322025-04-06 6:18:113 days ago1743920291IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000564973.42163234
Submit Rate222008672025-04-05 6:16:354 days ago1743833795IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000568383.44224284
Submit Rate221937082025-04-04 6:17:115 days ago1743747431IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000570753.45658524
Submit Rate221865562025-04-03 6:19:476 days ago1743661187IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000556013.3673239
Submit Rate221794082025-04-02 6:22:597 days ago1743574979IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000597023.61569866
Submit Rate221722252025-04-01 6:20:118 days ago1743488411IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000554633.35895872
Submit Rate221650502025-03-31 6:17:239 days ago1743401843IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000554133.35594473
Submit Rate221578662025-03-30 6:14:2310 days ago1743315263IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000556143.36813712
Submit Rate221507192025-03-29 6:16:3511 days ago1743228995IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000560393.39387961
Submit Rate221435422025-03-28 6:12:1112 days ago1743142331IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000549143.32572228
Submit Rate221364412025-03-27 6:25:3513 days ago1743056735IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000560583.39500138
Submit Rate221292092025-03-26 6:13:2314 days ago1742969603IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000551653.34093851
Submit Rate221220952025-03-25 6:21:4715 days ago1742883707IN
0x0f22dC9b...c8f22C15C
0.00000353 ETH0.000560883.39682867
Submit Rate221149092025-03-24 6:16:1116 days ago1742796971IN
0x0f22dC9b...c8f22C15C
0.00000364 ETH0.000564813.42066142
Submit Rate221077812025-03-23 6:24:3517 days ago1742711075IN
0x0f22dC9b...c8f22C15C
0.00000364 ETH0.000553313.35099362
Submit Rate221005752025-03-22 6:17:1118 days ago1742624231IN
0x0f22dC9b...c8f22C15C
0.00000364 ETH0.000557053.37364851
Submit Rate220934052025-03-21 6:19:2319 days ago1742537963IN
0x0f22dC9b...c8f22C15C
0.00000364 ETH0.000558893.38478697
Submit Rate220862542025-03-20 6:22:4720 days ago1742451767IN
0x0f22dC9b...c8f22C15C
0.00000364 ETH0.000574963.48210824
Submit Rate220790682025-03-19 6:16:2321 days ago1742364983IN
0x0f22dC9b...c8f22C15C
0.00000364 ETH0.000564233.41714522
Submit Rate220719282025-03-18 6:18:3522 days ago1742278715IN
0x0f22dC9b...c8f22C15C
0.00000364 ETH0.000564873.42099689
Submit Rate220647652025-03-17 6:17:2323 days ago1742192243IN
0x0f22dC9b...c8f22C15C
0.00000364 ETH0.000564833.42076061
Submit Rate220575972025-03-16 6:16:5924 days ago1742105819IN
0x0f22dC9b...c8f22C15C
0.00000364 ETH0.000562923.40919118
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Send Message222295152025-04-09 6:20:1122 hrs ago1744179611
0x0f22dC9b...c8f22C15C
0.00000367 ETH
Send Message222223142025-04-08 6:13:2346 hrs ago1744092803
0x0f22dC9b...c8f22C15C
0.00000367 ETH
Send Message222152082025-04-07 6:22:232 days ago1744006943
0x0f22dC9b...c8f22C15C
0.00000371 ETH
Send Message222080322025-04-06 6:18:113 days ago1743920291
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message222008672025-04-05 6:16:354 days ago1743833795
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message221937082025-04-04 6:17:115 days ago1743747431
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message221865562025-04-03 6:19:476 days ago1743661187
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message221794082025-04-02 6:22:597 days ago1743574979
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message221722252025-04-01 6:20:118 days ago1743488411
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message221650502025-03-31 6:17:239 days ago1743401843
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message221578662025-03-30 6:14:2310 days ago1743315263
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message221507192025-03-29 6:16:3511 days ago1743228995
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message221435422025-03-28 6:12:1112 days ago1743142331
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message221364412025-03-27 6:25:3513 days ago1743056735
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message221292092025-03-26 6:13:2314 days ago1742969603
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message221220952025-03-25 6:21:4715 days ago1742883707
0x0f22dC9b...c8f22C15C
0.00000353 ETH
Send Message221149092025-03-24 6:16:1116 days ago1742796971
0x0f22dC9b...c8f22C15C
0.00000364 ETH
Send Message221077812025-03-23 6:24:3517 days ago1742711075
0x0f22dC9b...c8f22C15C
0.00000364 ETH
Send Message221005752025-03-22 6:17:1118 days ago1742624231
0x0f22dC9b...c8f22C15C
0.00000364 ETH
Send Message220934052025-03-21 6:19:2319 days ago1742537963
0x0f22dC9b...c8f22C15C
0.00000364 ETH
Send Message220862542025-03-20 6:22:4720 days ago1742451767
0x0f22dC9b...c8f22C15C
0.00000364 ETH
Send Message220790682025-03-19 6:16:2321 days ago1742364983
0x0f22dC9b...c8f22C15C
0.00000364 ETH
Send Message220719282025-03-18 6:18:3522 days ago1742278715
0x0f22dC9b...c8f22C15C
0.00000364 ETH
Send Message220647652025-03-17 6:17:2323 days ago1742192243
0x0f22dC9b...c8f22C15C
0.00000364 ETH
Send Message220575972025-03-16 6:16:5924 days ago1742105819
0x0f22dC9b...c8f22C15C
0.00000364 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
RocketScrollPriceMessenger

Compiler Version
v0.8.22+commit.4fc1097e

Optimization Enabled:
Yes with 20000 runs

Other Settings:
shanghai EvmVersion, GNU GPLv3 license
File 1 of 5 : RocketScrollPriceMessenger.sol
// SPDX-License-Identifier: GPL-3.0
pragma solidity ^0.8.13;

import "../lib/rocketpool/contracts/interface/RocketStorageInterface.sol";
import "../lib/rocketpool/contracts/interface/network/RocketNetworkBalancesInterface.sol";
import "./interfaces/scroll/IScrollMessenger.sol";

import "./RocketScrollPriceOracle.sol";

/// @author Kane Wallmann (Rocket Pool)
/// @notice Retrieves the rETH exchange rate from Rocket Pool and submits it to the oracle contract on Scroll
contract RocketScrollPriceMessenger {
    // Immutables
    IScrollMessenger immutable l1ScrollMessenger;
    RocketStorageInterface immutable rocketStorage;
    RocketScrollPriceOracle immutable rocketL2ScrollPriceOracle;
    bytes32 immutable rocketNetworkBalancesKey;

    /// @notice The most recently submitted rate
    uint256 lastRate;

    constructor(RocketStorageInterface _rocketStorage, RocketScrollPriceOracle _rocketL2ScrollPriceOracle, IScrollMessenger _l1ScrollMessenger) {
        rocketStorage = _rocketStorage;
        rocketL2ScrollPriceOracle = _rocketL2ScrollPriceOracle;
        l1ScrollMessenger = _l1ScrollMessenger;
        // Precompute storage key for RocketNetworkBalances address
        rocketNetworkBalancesKey = keccak256(abi.encodePacked("contract.address", "rocketNetworkBalances"));
    }

    /// @notice Returns whether the rate has changed since it was last submitted
    function rateStale() external view returns (bool) {
        return rate() != lastRate;
    }

    /// @notice Returns the calculated rETH exchange rate
    function rate() public view returns (uint256) {
        // Retrieve the inputs from RocketNetworkBalances and calculate the rate
        RocketNetworkBalancesInterface rocketNetworkBalances = RocketNetworkBalancesInterface(rocketStorage.getAddress(rocketNetworkBalancesKey));
        uint256 supply = rocketNetworkBalances.getTotalRETHSupply();
        if (supply == 0) {
            return 0;
        }
        return 1 ether * rocketNetworkBalances.getTotalETHBalance() / supply;
    }

    /// @notice Submits the current rETH exchange rate to the Scroll cross domain messenger contract
    function submitRate(uint256 _gasLimit) external payable {
        lastRate = rate();
        // Create message payload
        bytes memory message = abi.encodeWithSelector(
            rocketL2ScrollPriceOracle.updateRate.selector,
            lastRate
        );
        // Send the cross chain message
        l1ScrollMessenger.sendMessage{ value: msg.value }(
            address(rocketL2ScrollPriceOracle),
            0,
            message,
            _gasLimit,
            msg.sender
        );
    }
}

File 2 of 5 : RocketStorageInterface.sol
pragma solidity >0.5.0 <0.9.0;

// SPDX-License-Identifier: GPL-3.0-only

interface RocketStorageInterface {

    // Deploy status
    function getDeployedStatus() external view returns (bool);

    // Guardian
    function getGuardian() external view returns(address);
    function setGuardian(address _newAddress) external;
    function confirmGuardian() external;

    // Getters
    function getAddress(bytes32 _key) external view returns (address);
    function getUint(bytes32 _key) external view returns (uint);
    function getString(bytes32 _key) external view returns (string memory);
    function getBytes(bytes32 _key) external view returns (bytes memory);
    function getBool(bytes32 _key) external view returns (bool);
    function getInt(bytes32 _key) external view returns (int);
    function getBytes32(bytes32 _key) external view returns (bytes32);

    // Setters
    function setAddress(bytes32 _key, address _value) external;
    function setUint(bytes32 _key, uint _value) external;
    function setString(bytes32 _key, string calldata _value) external;
    function setBytes(bytes32 _key, bytes calldata _value) external;
    function setBool(bytes32 _key, bool _value) external;
    function setInt(bytes32 _key, int _value) external;
    function setBytes32(bytes32 _key, bytes32 _value) external;

    // Deleters
    function deleteAddress(bytes32 _key) external;
    function deleteUint(bytes32 _key) external;
    function deleteString(bytes32 _key) external;
    function deleteBytes(bytes32 _key) external;
    function deleteBool(bytes32 _key) external;
    function deleteInt(bytes32 _key) external;
    function deleteBytes32(bytes32 _key) external;

    // Arithmetic
    function addUint(bytes32 _key, uint256 _amount) external;
    function subUint(bytes32 _key, uint256 _amount) external;

    // Protected storage
    function getNodeWithdrawalAddress(address _nodeAddress) external view returns (address);
    function getNodePendingWithdrawalAddress(address _nodeAddress) external view returns (address);
    function setWithdrawalAddress(address _nodeAddress, address _newWithdrawalAddress, bool _confirm) external;
    function confirmWithdrawalAddress(address _nodeAddress) external;
}

File 3 of 5 : RocketNetworkBalancesInterface.sol
pragma solidity >0.5.0 <0.9.0;

// SPDX-License-Identifier: GPL-3.0-only

interface RocketNetworkBalancesInterface {
    function getBalancesBlock() external view returns (uint256);
    function getLatestReportableBlock() external view returns (uint256);
    function getTotalETHBalance() external view returns (uint256);
    function getStakingETHBalance() external view returns (uint256);
    function getTotalRETHSupply() external view returns (uint256);
    function getETHUtilizationRate() external view returns (uint256);
    function submitBalances(uint256 _block, uint256 _total, uint256 _staking, uint256 _rethSupply) external;
    function executeUpdateBalances(uint256 _block, uint256 _totalEth, uint256 _stakingEth, uint256 _rethSupply) external;
}

File 4 of 5 : IScrollMessenger.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

interface IScrollMessenger {
    /**********
     * Events *
     **********/

    /// @notice Emitted when a cross domain message is sent.
    /// @param sender The address of the sender who initiates the message.
    /// @param target The address of target contract to call.
    /// @param value The amount of value passed to the target contract.
    /// @param messageNonce The nonce of the message.
    /// @param gasLimit The optional gas limit passed to L1 or L2.
    /// @param message The calldata passed to the target contract.
    event SentMessage(
        address indexed sender,
        address indexed target,
        uint256 value,
        uint256 messageNonce,
        uint256 gasLimit,
        bytes message
    );

    /// @notice Emitted when a cross domain message is relayed successfully.
    /// @param messageHash The hash of the message.
    event RelayedMessage(bytes32 indexed messageHash);

    /// @notice Emitted when a cross domain message is failed to relay.
    /// @param messageHash The hash of the message.
    event FailedRelayedMessage(bytes32 indexed messageHash);

    /*************************
     * Public View Functions *
     *************************/

    /// @notice Return the sender of a cross domain message.
    function xDomainMessageSender() external view returns (address);

    /****************************
     * Public Mutated Functions *
     ****************************/

    /// @notice Send cross chain message from L1 to L2 or L2 to L1.
    /// @param target The address of account who recieve the message.
    /// @param value The amount of ether passed when call target contract.
    /// @param message The content of the message.
    /// @param gasLimit Gas limit required to complete the message relay on corresponding chain.
    function sendMessage(
        address target,
        uint256 value,
        bytes calldata message,
        uint256 gasLimit
    ) external payable;

    /// @notice Send cross chain message from L1 to L2 or L2 to L1.
    /// @param target The address of account who receive the message.
    /// @param value The amount of ether passed when call target contract.
    /// @param message The content of the message.
    /// @param gasLimit Gas limit required to complete the message relay on corresponding chain.
    /// @param refundAddress The address of account who will receive the refunded fee.
    function sendMessage(
        address target,
        uint256 value,
        bytes calldata message,
        uint256 gasLimit,
        address refundAddress
    ) external payable;
}

File 5 of 5 : RocketScrollPriceOracle.sol
// SPDX-License-Identifier: GPL-3.0
pragma solidity ^0.8.13;

import "./interfaces/scroll/IScrollMessenger.sol";

/// @author Kane Wallmann (Rocket Pool)
/// @notice Receives updates from L1 on the canonical rETH exchange rate
contract RocketScrollPriceOracle {
    // Events
    event RateUpdated(uint256 rate);

    // Immutables
    IScrollMessenger internal immutable scrollMessenger;

    /// @notice The rETH exchange rate in the form of how much ETH 1 rETH is worth
    uint256 public rate;

    /// @notice The timestamp of the block in which the rate was last updated
    uint256 public lastUpdated;

    /// @notice Set to the contract on L1 that has permission to update the rate
    address public owner;

    constructor(address _scrollMessenger) {
        scrollMessenger = IScrollMessenger(_scrollMessenger);
        owner = msg.sender;
    }

    /// @notice Hands ownership to the L1 price messenger contract
    function setOwner(address _newOwner) external {
        require(msg.sender == owner, "Only owner");
        owner = _newOwner;
    }

    /// @notice Called by the messenger contract on L1 to update the exchange rate
    function updateRate(uint256 _newRate) external {
        // Only calls originating from L1 owner can update the rate
        require(
            msg.sender == address(scrollMessenger)
            && scrollMessenger.xDomainMessageSender() == owner,
            "Only owner"
        );
        // Set rate and last updated timestamp
        rate = _newRate;
        lastUpdated = block.timestamp;
        // Emit event
        emit RateUpdated(_newRate);
    }
}

Settings
{
  "remappings": [],
  "optimizer": {
    "enabled": true,
    "runs": 20000
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "ipfs"
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  },
  "evmVersion": "shanghai",
  "libraries": {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"contract RocketStorageInterface","name":"_rocketStorage","type":"address"},{"internalType":"contract RocketScrollPriceOracle","name":"_rocketL2ScrollPriceOracle","type":"address"},{"internalType":"contract IScrollMessenger","name":"_l1ScrollMessenger","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"rate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rateStale","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_gasLimit","type":"uint256"}],"name":"submitRate","outputs":[],"stateMutability":"payable","type":"function"}]

610100604052348015610010575f80fd5b506040516106d63803806106d683398101604081905261002f916100c4565b6001600160a01b0392831660a05290821660c05216608052604080516f636f6e74726163742e6164647265737360801b6020828101919091527f726f636b65744e6574776f726b42616c616e63657300000000000000000000006030830152825160258184030181526045909201909252805191012060e05261010e565b6001600160a01b03811681146100c1575f80fd5b50565b5f805f606084860312156100d6575f80fd5b83516100e1816100ad565b60208501519093506100f2816100ad565b6040850151909250610103816100ad565b809150509250925092565b60805160a05160c05160e05161059761013f5f395f60bf01525f61035301525f60fe01525f61030f01526105975ff3fe608060405260043610610033575f3560e01c80632c4e722e14610037578063b9da15e51461005e578063ee0eb4a114610073575b5f80fd5b348015610042575f80fd5b5061004b610097565b6040519081526020015b60405180910390f35b61007161006c3660046103c6565b610279565b005b34801561007e575f80fd5b506100876103b4565b6040519015158152602001610055565b6040517f21f8a7210000000000000000000000000000000000000000000000000000000081527f000000000000000000000000000000000000000000000000000000000000000060048201525f90819073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906321f8a72190602401602060405180830381865afa158015610143573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061016791906103dd565b90505f8173ffffffffffffffffffffffffffffffffffffffff1663c4c8d0ad6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101d79190610417565b9050805f036101e8575f9250505090565b808273ffffffffffffffffffffffffffffffffffffffff1663964d042c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610232573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102569190610417565b61026890670de0b6b3a764000061042e565b6102729190610470565b9250505090565b610281610097565b5f818155604080516024808201949094528151808203909401845260440181526020830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f69ea177100000000000000000000000000000000000000000000000000000000179052517f5f7b15770000000000000000000000000000000000000000000000000000000081527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1691635f7b1577913491610382917f000000000000000000000000000000000000000000000000000000000000000091908790899033906004016104a8565b5f604051808303818588803b158015610399575f80fd5b505af11580156103ab573d5f803e3d5ffd5b50505050505050565b5f80546103bf610097565b1415905090565b5f602082840312156103d6575f80fd5b5035919050565b5f602082840312156103ed575f80fd5b815173ffffffffffffffffffffffffffffffffffffffff81168114610410575f80fd5b9392505050565b5f60208284031215610427575f80fd5b5051919050565b808202811582820484141761046a577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b92915050565b5f826104a3577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b73ffffffffffffffffffffffffffffffffffffffff861681525f602086602084015260a0604084015285518060a08501525f5b818110156104f75787810183015185820160c0015282016104db565b505f60c0828601015260c07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010192505050836060830152610557608083018473ffffffffffffffffffffffffffffffffffffffff169052565b969550505050505056fea264697066735822122053f8a18389e82330ec13ec25c97fa0e6916a5b74b2ec9ed636e660f6eb90b50764736f6c634300081600330000000000000000000000001d8f8f00cfa6758d7be78336684788fb0ee0fa4600000000000000000000000030a593876596d347fbba2b5883651b6b1dceccf70000000000000000000000006774bcbd5cecef1336b5300fb5186a12ddd8b367

Deployed Bytecode

0x608060405260043610610033575f3560e01c80632c4e722e14610037578063b9da15e51461005e578063ee0eb4a114610073575b5f80fd5b348015610042575f80fd5b5061004b610097565b6040519081526020015b60405180910390f35b61007161006c3660046103c6565b610279565b005b34801561007e575f80fd5b506100876103b4565b6040519015158152602001610055565b6040517f21f8a7210000000000000000000000000000000000000000000000000000000081527f7630e125f1c009e5fc974f6dae77c6d5b1802979b36e6d7145463c21782af01e60048201525f90819073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000001d8f8f00cfa6758d7be78336684788fb0ee0fa4616906321f8a72190602401602060405180830381865afa158015610143573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061016791906103dd565b90505f8173ffffffffffffffffffffffffffffffffffffffff1663c4c8d0ad6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101d79190610417565b9050805f036101e8575f9250505090565b808273ffffffffffffffffffffffffffffffffffffffff1663964d042c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610232573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102569190610417565b61026890670de0b6b3a764000061042e565b6102729190610470565b9250505090565b610281610097565b5f818155604080516024808201949094528151808203909401845260440181526020830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f69ea177100000000000000000000000000000000000000000000000000000000179052517f5f7b15770000000000000000000000000000000000000000000000000000000081527f0000000000000000000000006774bcbd5cecef1336b5300fb5186a12ddd8b36773ffffffffffffffffffffffffffffffffffffffff1691635f7b1577913491610382917f00000000000000000000000030a593876596d347fbba2b5883651b6b1dceccf791908790899033906004016104a8565b5f604051808303818588803b158015610399575f80fd5b505af11580156103ab573d5f803e3d5ffd5b50505050505050565b5f80546103bf610097565b1415905090565b5f602082840312156103d6575f80fd5b5035919050565b5f602082840312156103ed575f80fd5b815173ffffffffffffffffffffffffffffffffffffffff81168114610410575f80fd5b9392505050565b5f60208284031215610427575f80fd5b5051919050565b808202811582820484141761046a577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b92915050565b5f826104a3577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b73ffffffffffffffffffffffffffffffffffffffff861681525f602086602084015260a0604084015285518060a08501525f5b818110156104f75787810183015185820160c0015282016104db565b505f60c0828601015260c07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010192505050836060830152610557608083018473ffffffffffffffffffffffffffffffffffffffff169052565b969550505050505056fea264697066735822122053f8a18389e82330ec13ec25c97fa0e6916a5b74b2ec9ed636e660f6eb90b50764736f6c63430008160033

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

0000000000000000000000001d8f8f00cfa6758d7be78336684788fb0ee0fa4600000000000000000000000030a593876596d347fbba2b5883651b6b1dceccf70000000000000000000000006774bcbd5cecef1336b5300fb5186a12ddd8b367

-----Decoded View---------------
Arg [0] : _rocketStorage (address): 0x1d8f8f00cfa6758d7bE78336684788Fb0ee0Fa46
Arg [1] : _rocketL2ScrollPriceOracle (address): 0x30A593876596d347fbba2b5883651B6B1dcecCf7
Arg [2] : _l1ScrollMessenger (address): 0x6774Bcbd5ceCeF1336b5300fb5186a12DDD8b367

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000001d8f8f00cfa6758d7be78336684788fb0ee0fa46
Arg [1] : 00000000000000000000000030a593876596d347fbba2b5883651b6b1dceccf7
Arg [2] : 0000000000000000000000006774bcbd5cecef1336b5300fb5186a12ddd8b367


Deployed Bytecode Sourcemap

471:2173:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1538:487;;;;;;;;;;;;;:::i;:::-;;;160:25:5;;;148:2;133:18;1538:487:2;;;;;;;;2132:510;;;;;;:::i;:::-;;:::i;:::-;;1382:92;;;;;;;;;;;;;:::i;:::-;;;546:14:5;;539:22;521:41;;509:2;494:18;1382:92:2;381:187:5;1538:487:2;1761:50;;;;;1786:24;1761:50;;;160:25:5;1575:7:2;;;;1761:24;:13;:24;;;;133:18:5;;1761:50:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1675:137;;1822:14;1839:21;:40;;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1822:59;;1895:6;1905:1;1895:11;1891:50;;1929:1;1922:8;;;;1538:487;:::o;1891:50::-;2012:6;1967:21;:40;;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1957:52;;:7;:52;:::i;:::-;:61;;;;:::i;:::-;1950:68;;;;1538:487;:::o;2132:510::-;2209:6;:4;:6::i;:::-;2198:8;:17;;;2282:113;;;;;;;160:25:5;;;;2282:113:2;;;;;;;;;;133:18:5;;2282:113:2;;;;;;;;;2318:45;2282:113;;;2445:190;;;;:17;:29;;;;;2483:9;;2445:190;;2516:25;;2198:8;2282:113;;2592:9;;2615:10;;2445:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2188:454;2132:510;:::o;1382:92::-;1426:4;1459:8;;1449:6;:4;:6::i;:::-;:18;;1442:25;;1382:92;:::o;196:180:5:-;255:6;308:2;296:9;287:7;283:23;279:32;276:52;;;324:1;321;314:12;276:52;-1:-1:-1;347:23:5;;196:180;-1:-1:-1;196:180:5:o;755:313::-;825:6;878:2;866:9;857:7;853:23;849:32;846:52;;;894:1;891;884:12;846:52;926:9;920:16;976:42;969:5;965:54;958:5;955:65;945:93;;1034:1;1031;1024:12;945:93;1057:5;755:313;-1:-1:-1;;;755:313:5:o;1073:184::-;1143:6;1196:2;1184:9;1175:7;1171:23;1167:32;1164:52;;;1212:1;1209;1202:12;1164:52;-1:-1:-1;1235:16:5;;1073:184;-1:-1:-1;1073:184:5:o;1262:322::-;1335:9;;;1366;;1383:15;;;1377:22;;1363:37;1353:225;;1434:77;1431:1;1424:88;1535:4;1532:1;1525:15;1563:4;1560:1;1553:15;1353:225;1262:322;;;;:::o;1589:274::-;1629:1;1655;1645:189;;1690:77;1687:1;1680:88;1791:4;1788:1;1781:15;1819:4;1816:1;1809:15;1645:189;-1:-1:-1;1848:9:5;;1589:274::o;2000:964::-;2279:42;2271:6;2267:55;2256:9;2249:74;2230:4;2342:2;2380:6;2375:2;2364:9;2360:18;2353:34;2423:3;2418:2;2407:9;2403:18;2396:31;2456:6;2450:13;2500:6;2494:3;2483:9;2479:19;2472:35;2525:1;2535:141;2549:6;2546:1;2543:13;2535:141;;;2645:14;;;2641:23;;2635:30;2610:17;;;2629:3;2606:27;2599:67;2564:10;;2535:141;;;2539:3;2726:1;2720:3;2711:6;2700:9;2696:22;2692:32;2685:43;2855:3;2785:66;2780:2;2772:6;2768:15;2764:88;2753:9;2749:104;2745:114;2737:122;;;;2895:6;2890:2;2879:9;2875:18;2868:34;2911:47;2953:3;2942:9;2938:19;2930:6;1945:42;1934:54;1922:67;;1868:127;2911:47;2000:964;;;;;;;;:::o

Swarm Source

ipfs://53f8a18389e82330ec13ec25c97fa0e6916a5b74b2ec9ed636e660f6eb90b507

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.