ETH Price: $1,792.21 (+10.26%)
 

Overview

ETH Balance

Scroll LogoScroll LogoScroll Logo0.1411947525 ETH

ETH Value

$253.05 (@ $1,792.21/ETH)

Multichain Info

No addresses found
Amount:Between 1-10
Reset Filter

Transaction Hash
Method
Block
From
To

There are no matching entries

> 10 Internal Transactions and > 10 Token Transfers found.

Latest 25 internal transactions (View All)

Parent Transaction Hash Block From To
141981602025-03-24 8:02:5030 days ago1742803370
0x7B56Af65...6C0bE771D
0.00081474 ETH
139813832025-03-12 5:44:1142 days ago1741758251
0x7B56Af65...6C0bE771D
0.00081474 ETH
139600582025-03-11 3:44:3743 days ago1741664677
0x7B56Af65...6C0bE771D
0.00081474 ETH
133967462025-02-13 10:41:2468 days ago1739443284
0x7B56Af65...6C0bE771D
0.00081474 ETH
130872692025-01-31 2:16:0182 days ago1738289761
0x7B56Af65...6C0bE771D
0.00076763 ETH
130872692025-01-31 2:16:0182 days ago1738289761
0x7B56Af65...6C0bE771D
0.025 ETH
130872692025-01-31 2:16:0182 days ago1738289761
0x7B56Af65...6C0bE771D
0.025 ETH
130872532025-01-31 2:13:5282 days ago1738289632
0x7B56Af65...6C0bE771D
0.025 ETH
130349852025-01-28 18:01:1884 days ago1738087278
0x7B56Af65...6C0bE771D
0.00081474 ETH
129901692025-01-26 21:13:2886 days ago1737926008
0x7B56Af65...6C0bE771D
0.00081474 ETH
127576852025-01-17 2:26:2096 days ago1737080780
0x7B56Af65...6C0bE771D
0.00081474 ETH
125158102025-01-07 9:16:46105 days ago1736241406
0x7B56Af65...6C0bE771D
0.00081474 ETH
124547012025-01-04 20:21:54108 days ago1736022114
0x7B56Af65...6C0bE771D
0.00081474 ETH
124545922025-01-04 20:15:44108 days ago1736021744
0x7B56Af65...6C0bE771D
0.00081474 ETH
124541012025-01-04 19:44:22108 days ago1736019862
0x7B56Af65...6C0bE771D
0.00081474 ETH
124538662025-01-04 19:29:52108 days ago1736018992
0x7B56Af65...6C0bE771D
0.00081474 ETH
124538112025-01-04 19:26:07108 days ago1736018767
0x7B56Af65...6C0bE771D
0.00081474 ETH
122568462024-12-27 18:52:39116 days ago1735325559
0x7B56Af65...6C0bE771D
0.00081474 ETH
122165092024-12-26 7:23:46118 days ago1735197826
0x7B56Af65...6C0bE771D
0.0038 ETH
115914022024-12-02 18:51:10141 days ago1733165470
0x7B56Af65...6C0bE771D
0.00081474 ETH
115742012024-12-02 4:12:03142 days ago1733112723
0x7B56Af65...6C0bE771D
0.00076763 ETH
115742012024-12-02 4:12:03142 days ago1733112723
0x7B56Af65...6C0bE771D
0.02646146 ETH
115742012024-12-02 4:12:03142 days ago1733112723
0x7B56Af65...6C0bE771D
0.02646146 ETH
115742012024-12-02 4:12:03142 days ago1733112723
0x7B56Af65...6C0bE771D
0.02647387 ETH
115742012024-12-02 4:12:03142 days ago1733112723
0x7B56Af65...6C0bE771D
0.02647387 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Gateway

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
paris EvmVersion
File 1 of 5 : Gateway.sol
// SPDX-License-Identifier: MIT

pragma solidity >=0.8.0 <0.9.0;

import './GatewayStorage.sol';

contract Gateway is GatewayStorage {

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

    receive() external payable {}

}

File 2 of 5 : GatewayStorage.sol
// SPDX-License-Identifier: MIT

pragma solidity >=0.8.0 <0.9.0;

import '../../utils/Admin.sol';
import '../../utils/Implementation.sol';
import '../../utils/ReentryLock.sol';

abstract contract GatewayStorage is Admin, Implementation, ReentryLock {

    // stateId => value
    mapping(uint8 => bytes32) internal _gatewayStates;

    // bToken => stateId => value
    mapping(address => mapping(uint8 => bytes32)) internal _bTokenStates;

    // dTokenId => stateId => value
    mapping(uint256 => mapping(uint8 => bytes32)) internal _dTokenStates;

    // actionId => executionFee
    mapping(uint256 => uint256) internal _executionFees;

}

File 3 of 5 : Admin.sol
// SPDX-License-Identifier: MIT

pragma solidity >=0.8.0 <0.9.0;

abstract contract Admin {

    error OnlyAdmin();

    event NewAdmin(address newAdmin);

    address public admin;

    modifier _onlyAdmin_() {
        if (msg.sender != admin) {
            revert OnlyAdmin();
        }
        _;
    }

    constructor () {
        admin = msg.sender;
        emit NewAdmin(admin);
    }

    /**
     * @notice Set a new admin for the contract.
     * @dev This function allows the current admin to assign a new admin address without performing any explicit verification.
     *      It's the current admin's responsibility to ensure that the 'newAdmin' address is correct and secure.
     * @param newAdmin The address of the new admin.
     */
    function setAdmin(address newAdmin) external _onlyAdmin_ {
        admin = newAdmin;
        emit NewAdmin(newAdmin);
    }

}

File 4 of 5 : Implementation.sol
// SPDX-License-Identifier: MIT

pragma solidity >=0.8.0 <0.9.0;

import './Admin.sol';

abstract contract Implementation is Admin {

    event NewImplementation(address newImplementation);

    address public implementation;

    // @notice Set a new implementation address for the contract
    function setImplementation(address newImplementation) external _onlyAdmin_ {
        implementation = newImplementation;
        emit NewImplementation(newImplementation);
    }

}

File 5 of 5 : ReentryLock.sol
// SPDX-License-Identifier: MIT

pragma solidity >=0.8.0 <0.9.0;

abstract contract ReentryLock {

    error Reentry();

    bool internal _mutex;

    // @notice Lock for preventing reentrancy attacks
    modifier _reentryLock_() {
        if (_mutex) {
            revert Reentry();
        }
        _mutex = true;
        _;
        _mutex = false;
    }

}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "evmVersion": "paris",
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"name":"OnlyAdmin","type":"error"},{"inputs":[],"name":"Reentry","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"NewAdmin","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newImplementation","type":"address"}],"name":"NewImplementation","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"setAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"name":"setImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b50600080546001600160a01b031916339081179091556040519081527f71614071b88dee5e0b2ae578a9dd7b2ebbe9ae832ba419dc0242cd065a290b6c9060200160405180910390a1610277806100686000396000f3fe6080604052600436106100435760003560e01c80635c60da1b1461007c578063704b6c02146100b8578063d784d426146100d8578063f851a440146100f85761004a565b3661004a57005b6001546001600160a01b03163660008037600080366000845af43d6000803e808015610075573d6000f35b3d6000fd5b005b34801561008857600080fd5b5060015461009c906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c457600080fd5b5061007a6100d3366004610211565b610118565b3480156100e457600080fd5b5061007a6100f3366004610211565b610198565b34801561010457600080fd5b5060005461009c906001600160a01b031681565b6000546001600160a01b0316331461014357604051634755657960e01b815260040160405180910390fd5b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f71614071b88dee5e0b2ae578a9dd7b2ebbe9ae832ba419dc0242cd065a290b6c906020015b60405180910390a150565b6000546001600160a01b031633146101c357604051634755657960e01b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040519081527f6b70829fcbe4891157f7a7496f9870927de3c8237adbe9cd39bae09b7382c4099060200161018d565b60006020828403121561022357600080fd5b81356001600160a01b038116811461023a57600080fd5b939250505056fea2646970667358221220a36016174573433d4ab15d1c63e4e02728ef5f1843757ad7552a59bf1a1206c264736f6c63430008140033

Deployed Bytecode

0x6080604052600436106100435760003560e01c80635c60da1b1461007c578063704b6c02146100b8578063d784d426146100d8578063f851a440146100f85761004a565b3661004a57005b6001546001600160a01b03163660008037600080366000845af43d6000803e808015610075573d6000f35b3d6000fd5b005b34801561008857600080fd5b5060015461009c906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c457600080fd5b5061007a6100d3366004610211565b610118565b3480156100e457600080fd5b5061007a6100f3366004610211565b610198565b34801561010457600080fd5b5060005461009c906001600160a01b031681565b6000546001600160a01b0316331461014357604051634755657960e01b815260040160405180910390fd5b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f71614071b88dee5e0b2ae578a9dd7b2ebbe9ae832ba419dc0242cd065a290b6c906020015b60405180910390a150565b6000546001600160a01b031633146101c357604051634755657960e01b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040519081527f6b70829fcbe4891157f7a7496f9870927de3c8237adbe9cd39bae09b7382c4099060200161018d565b60006020828403121561022357600080fd5b81356001600160a01b038116811461023a57600080fd5b939250505056fea2646970667358221220a36016174573433d4ab15d1c63e4e02728ef5f1843757ad7552a59bf1a1206c264736f6c63430008140033

Block Transaction Gas Used Reward
view all blocks sequenced

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

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
[ Download: CSV Export  ]

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.