Sepolia Testnet

Contract

0x5B4909cE6Ca82d2CE23BD46738953c7959E710Cd

Overview

ETH Balance

0 ETH

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Value
Send Token53952302024-03-01 15:46:362 days ago1709307996IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000271242.55006713
Send Token53924982024-03-01 6:04:002 days ago1709273040IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000107271.00000004
Send Token53914942024-03-01 2:33:002 days ago1709260380IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000161011.50000007
Send Token53870132024-02-29 10:47:363 days ago1709203656IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000947278.90174212
Send Token53662222024-02-26 9:35:126 days ago1708940112IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.0055705454.81360983
Submit V153649182024-02-26 5:00:246 days ago1708923624IN
0x5B4909cE...959E710Cd
0 ETH0.0126468486.25120135
Send Token53641162024-02-26 2:10:367 days ago1708913436IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.0077924276.70384671
Send Token53444832024-02-23 2:07:1210 days ago1708654032IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000163481.53645097
Send Token53408612024-02-22 12:30:2410 days ago1708605024IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000403023.78776593
Send Token53408312024-02-22 12:24:0010 days ago1708604640IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000218564.83472518
Send Token53402802024-02-22 10:21:4810 days ago1708597308IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000337033.31717257
Send Token53196832024-02-19 9:29:4813 days ago1708334988IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.0036034433.87745419
Send Token53196022024-02-19 9:11:4813 days ago1708333908IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.0046069443.31181629
Send Token53195072024-02-19 8:50:3613 days ago1708332636IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.0023948922.51536572
Send Token52975392024-02-16 1:31:2417 days ago1708047084IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000182741.71801536
Send Token52967162024-02-15 22:36:2417 days ago1708036584IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000162171.52470385
Send Token52966822024-02-15 22:29:1217 days ago1708036152IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000162611.52877266
Send Token52966752024-02-15 22:27:4817 days ago1708036068IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.00016251.52778469
Send Token52964522024-02-15 21:40:4817 days ago1708033248IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000177451.66830042
Send Token52898732024-02-14 22:22:1218 days ago1707949332IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000159841.50277422
Send Token52857862024-02-14 8:42:0018 days ago1707900120IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000376243.5372327
Send Token52840212024-02-14 2:48:4818 days ago1707878928IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.0013783812.95875606
Send Token52506412024-02-09 8:46:0023 days ago1707468360IN
0x5B4909cE...959E710Cd
0.0000005 ETH0.000485664.77890642
Send Token52506222024-02-09 8:42:1223 days ago1707468132IN
0x5B4909cE...959E710Cd
0 ETH0.000656947.32607868
Send Token52505832024-02-09 8:34:2423 days ago1707467664IN
0x5B4909cE...959E710Cd
0 ETH0.000613856.84556683
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Txn Hash Block From To Value
53952302024-03-01 15:46:362 days ago1709307996
0x5B4909cE...959E710Cd
0.0000005 ETH
53924982024-03-01 6:04:002 days ago1709273040
0x5B4909cE...959E710Cd
0.0000005 ETH
53914942024-03-01 2:33:002 days ago1709260380
0x5B4909cE...959E710Cd
0.0000005 ETH
53870132024-02-29 10:47:363 days ago1709203656
0x5B4909cE...959E710Cd
0.0000005 ETH
53662222024-02-26 9:35:126 days ago1708940112
0x5B4909cE...959E710Cd
0.0000005 ETH
53641162024-02-26 2:10:367 days ago1708913436
0x5B4909cE...959E710Cd
0.0000005 ETH
53444832024-02-23 2:07:1210 days ago1708654032
0x5B4909cE...959E710Cd
0.0000005 ETH
53408612024-02-22 12:30:2410 days ago1708605024
0x5B4909cE...959E710Cd
0.0000005 ETH
53402802024-02-22 10:21:4810 days ago1708597308
0x5B4909cE...959E710Cd
0.0000005 ETH
53196832024-02-19 9:29:4813 days ago1708334988
0x5B4909cE...959E710Cd
0.0000005 ETH
53196022024-02-19 9:11:4813 days ago1708333908
0x5B4909cE...959E710Cd
0.0000005 ETH
53195072024-02-19 8:50:3613 days ago1708332636
0x5B4909cE...959E710Cd
0.0000005 ETH
52975392024-02-16 1:31:2417 days ago1708047084
0x5B4909cE...959E710Cd
0.0000005 ETH
52967162024-02-15 22:36:2417 days ago1708036584
0x5B4909cE...959E710Cd
0.0000005 ETH
52966822024-02-15 22:29:1217 days ago1708036152
0x5B4909cE...959E710Cd
0.0000005 ETH
52966752024-02-15 22:27:4817 days ago1708036068
0x5B4909cE...959E710Cd
0.0000005 ETH
52964522024-02-15 21:40:4817 days ago1708033248
0x5B4909cE...959E710Cd
0.0000005 ETH
52898732024-02-14 22:22:1218 days ago1707949332
0x5B4909cE...959E710Cd
0.0000005 ETH
52857862024-02-14 8:42:0018 days ago1707900120
0x5B4909cE...959E710Cd
0.0000005 ETH
52840212024-02-14 2:48:4818 days ago1707878928
0x5B4909cE...959E710Cd
0.0000005 ETH
52506412024-02-09 8:46:0023 days ago1707468360
0x5B4909cE...959E710Cd
0.0000005 ETH
52495132024-02-09 4:50:3623 days ago1707454236
0x5B4909cE...959E710Cd
0.0000005 ETH
52494762024-02-09 4:43:0023 days ago1707453780
0x5B4909cE...959E710Cd
5.0000005 ETH
52474102024-02-08 21:20:1224 days ago1707427212
0x5B4909cE...959E710Cd
0.0000005 ETH
52448532024-02-08 12:21:1224 days ago1707394872
0x5B4909cE...959E710Cd
0.0000255 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
GatewayProxy

Compiler Version
v0.8.23+commit.f704f362

Optimization Enabled:
Yes with 20000 runs

Other Settings:
paris EvmVersion

Contract Source Code (Solidity Standard Json-Input format)

File 1 of 4 : GatewayProxy.sol
// SPDX-License-Identifier: Apache-2.0
// SPDX-FileCopyrightText: 2023 Snowfork <[email protected]>
pragma solidity 0.8.23;

import {ERC1967} from "./utils/ERC1967.sol";
import {Call} from "./utils/Call.sol";
import {IInitializable} from "./interfaces/IInitializable.sol";

contract GatewayProxy is IInitializable {
    error Unauthorized();
    error NativeCurrencyNotAccepted();

    constructor(address implementation, bytes memory params) {
        // Store the address of the implementation contract
        ERC1967.store(implementation);
        // Initialize storage by calling the implementation's `initialize(bytes)` function
        // using `delegatecall`.
        (bool success, bytes memory returndata) =
            implementation.delegatecall(abi.encodeCall(IInitializable.initialize, params));
        Call.verifyResult(success, returndata);
    }

    // Prevent fallback() from calling `IInitializable.initialize(bytes)` on the implementation contract
    function initialize(bytes calldata) external pure {
        revert Unauthorized();
    }

    fallback() external payable {
        address implementation = ERC1967.load();
        assembly {
            calldatacopy(0, 0, calldatasize())
            let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)
            returndatacopy(0, 0, returndatasize())
            switch result
            case 0 { revert(0, returndatasize()) }
            default { return(0, returndatasize()) }
        }
    }

    // Prevent users from unwittingly sending ether to the gateway, as these funds
    // would otherwise be lost forever.
    receive() external payable {
        revert NativeCurrencyNotAccepted();
    }
}

File 2 of 4 : ERC1967.sol
// SPDX-License-Identifier: Apache-2.0
// SPDX-FileCopyrightText: 2023 Snowfork <[email protected]>
pragma solidity 0.8.23;

/// @title Minimal implementation of ERC1967 storage slot
library ERC1967 {
    // bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)
    bytes32 public constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;

    function load() internal view returns (address implementation) {
        assembly {
            implementation := sload(_IMPLEMENTATION_SLOT)
        }
    }

    function store(address implementation) internal {
        assembly {
            sstore(_IMPLEMENTATION_SLOT, implementation)
        }
    }
}

File 3 of 4 : Call.sol
// SPDX-License-Identifier: MIT
// SPDX-FileCopyrightText: 2023 OpenZeppelin
// SPDX-FileCopyrightText: 2023 Snowfork <[email protected]>
pragma solidity 0.8.23;

// Derived from OpenZeppelin Contracts (last updated v4.9.0) (utils/Address.sol)
library Call {
    function verifyResult(bool success, bytes memory returndata) internal pure returns (bytes memory) {
        if (success) {
            return returndata;
        } else {
            // Look for revert reason and bubble it up if present
            if (returndata.length > 0) {
                // The easiest way to bubble the revert reason is using memory via assembly
                /// @solidity memory-safe-assembly
                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert();
            }
        }
    }
}

File 4 of 4 : IInitializable.sol
// SPDX-License-Identifier: Apache-2.0
// SPDX-FileCopyrightText: 2023 Snowfork <[email protected]>
pragma solidity 0.8.23;

/**
 * @title Initialization of gateway logic contracts
 */
interface IInitializable {
    function initialize(bytes calldata data) external;
}

Settings
{
  "remappings": [
    "canonical-weth/=lib/canonical-weth/contracts/",
    "ds-test/=lib/ds-test/src/",
    "forge-std/=lib/forge-std/src/",
    "openzeppelin-contracts/=lib/openzeppelin-contracts/",
    "openzeppelin/=lib/openzeppelin-contracts/contracts/",
    "prb/math/=lib/prb-math/",
    "@prb/test/=lib/prb-math/lib/prb-test/src/",
    "erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/",
    "prb-math/=lib/prb-math/src/",
    "prb-test/=lib/prb-math/lib/prb-test/src/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 20000
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "ipfs",
    "appendCBOR": true
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "paris",
  "viaIR": true,
  "libraries": {
    "src/Assets.sol": {
      "Assets": "0x83dd4b153b90402962a1ae4c9f09c7a0c4922064"
    },
    "src/Verification.sol": {
      "Verification": "0xc00e4148d294e77abf8ce74e67b6770b082c74bb"
    }
  }
}

Contract ABI

[{"inputs":[{"internalType":"address","name":"implementation","type":"address"},{"internalType":"bytes","name":"params","type":"bytes"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"NativeCurrencyNotAccepted","type":"error"},{"inputs":[],"name":"Unauthorized","type":"error"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"pure","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604090808252346101525761034a803803809161001e8285610157565b833981019082818303126101525780516001600160a01b03811681036101525760208281015190926001600160401b03821161015257019083601f830112156101525781519061006d82610190565b61007987519182610157565b82815284810195858486010111610152578561009f6000959461013b98888897016101ab565b827f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5561010b6064895180936100f48a83019663439fab9160e01b88528b6024850152518092816044860152858501906101ab565b601f80199101168101036044810184520182610157565b51915af43d15610149573d61011f81610190565b9061012c86519283610157565b8152600081933d92013e6101ce565b505161016590816101e58239f35b606091506101ce565b600080fd5b601f909101601f19168101906001600160401b0382119082101761017a57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161017a57601f01601f191660200190565b60005b8381106101be5750506000910152565b81810151838201526020016101ae565b156101d65790565b805190811561015257602001fdfe60806040526004361015610018575b366100ee576100c4565b6000803560e01c63439fab911461002f575061000e565b346100bd5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100bd5760043567ffffffffffffffff8082116100c057366023830112156100c05781600401359081116100c057369101602401116100bd577f82b429000000000000000000000000000000000000000000000000000000000060805260046080fd5b80fd5b8280fd5b60046040517f858d70bd000000000000000000000000000000000000000000000000000000008152fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546000808092368280378136915af43d82803e1561012b573d90f35b3d90fdfea26469706673582212207f2027f894d3e8a2f161f4a24cefbf3e1bf108ac61a9e4aca1bcd9e14e0e2b9164736f6c63430008170033000000000000000000000000978fa670674b3bec78aed9bfebb1d271aa57cc6a00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000002540be400000000000000000000000000000000000000000000000000000016bcc41e900000000000000000000000000000000000000000000000000000000000000003e881c5ab2571199e3188135178f3c2c8e2d268be1313d029b30f534fa579b69b7900000000000000000000000000000000000000000000000000000002540be40000000000000000000000000000000000000000000000000000000002540be4000000000000000000000000000000000000000000000000004563918244f40000

Deployed Bytecode

0x60806040526004361015610018575b366100ee576100c4565b6000803560e01c63439fab911461002f575061000e565b346100bd5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100bd5760043567ffffffffffffffff8082116100c057366023830112156100c05781600401359081116100c057369101602401116100bd577f82b429000000000000000000000000000000000000000000000000000000000060805260046080fd5b80fd5b8280fd5b60046040517f858d70bd000000000000000000000000000000000000000000000000000000008152fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546000808092368280378136915af43d82803e1561012b573d90f35b3d90fdfea26469706673582212207f2027f894d3e8a2f161f4a24cefbf3e1bf108ac61a9e4aca1bcd9e14e0e2b9164736f6c63430008170033

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

000000000000000000000000978fa670674b3bec78aed9bfebb1d271aa57cc6a00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000002540be400000000000000000000000000000000000000000000000000000016bcc41e900000000000000000000000000000000000000000000000000000000000000003e881c5ab2571199e3188135178f3c2c8e2d268be1313d029b30f534fa579b69b7900000000000000000000000000000000000000000000000000000002540be40000000000000000000000000000000000000000000000000000000002540be4000000000000000000000000000000000000000000000000004563918244f40000

-----Decoded View---------------
Arg [0] : implementation (address): 0x978fa670674b3Bec78AEd9BFeBB1d271aa57CC6a
Arg [1] : params (bytes): 0x000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000002540be400000000000000000000000000000000000000000000000000000016bcc41e900000000000000000000000000000000000000000000000000000000000000003e881c5ab2571199e3188135178f3c2c8e2d268be1313d029b30f534fa579b69b7900000000000000000000000000000000000000000000000000000002540be40000000000000000000000000000000000000000000000000000000002540be4000000000000000000000000000000000000000000000000004563918244f40000

-----Encoded View---------------
11 Constructor Arguments found :
Arg [0] : 000000000000000000000000978fa670674b3bec78aed9bfebb1d271aa57cc6a
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000100
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [4] : 00000000000000000000000000000000000000000000000000000002540be400
Arg [5] : 000000000000000000000000000000000000000000000000000016bcc41e9000
Arg [6] : 00000000000000000000000000000000000000000000000000000000000003e8
Arg [7] : 81c5ab2571199e3188135178f3c2c8e2d268be1313d029b30f534fa579b69b79
Arg [8] : 00000000000000000000000000000000000000000000000000000002540be400
Arg [9] : 00000000000000000000000000000000000000000000000000000002540be400
Arg [10] : 0000000000000000000000000000000000000000000000004563918244f40000


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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