Source Code
Overview
ETH Balance
0 ETH
More Info
ContractCreator
Multichain Info
N/A
Latest 25 from a total of 3,252 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
0x0002a281 | 6679899 | 155 days ago | IN | 0.1 ETH | 0.00017502 | ||||
0x0002a259 | 6679810 | 155 days ago | IN | 0.04 ETH | 0.0000528 | ||||
0x0002a254 | 6679801 | 155 days ago | IN | 0.01 ETH | 0.00001231 | ||||
0x0002a241 | 6679776 | 155 days ago | IN | 0.00052555 ETH | 0.00004513 | ||||
0x0002a232 | 6679770 | 155 days ago | IN | 0.00052559 ETH | 0.00003814 | ||||
0x0002a230 | 6679767 | 155 days ago | IN | 0.0005252 ETH | 0.00003613 | ||||
0x0002a22f | 6679766 | 155 days ago | IN | 0.00052523 ETH | 0.0000357 | ||||
0x0002a22d | 6679764 | 155 days ago | IN | 0.00050735 ETH | 0.00003929 | ||||
0x0002a22b | 6679762 | 155 days ago | IN | 0.0005252 ETH | 0.00001346 | ||||
0x0002a229 | 6679483 | 155 days ago | IN | 0.069 ETH | 0.000165 | ||||
0x0002a226 | 6679458 | 155 days ago | IN | 0.05 ETH | 0.00001744 | ||||
0x0002a048 | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a047 | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a046 | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a045 | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a044 | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a040 | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a03c | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a035 | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a02e | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a02d | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a02c | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a02b | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a02a | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 | ||||
0x0002a026 | 6679160 | 155 days ago | IN | 0.001 ETH | 0.00003219 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
6679899 | 155 days ago | 0.1 ETH | ||||
6679810 | 155 days ago | 0.04 ETH | ||||
6679801 | 155 days ago | 0.01 ETH | ||||
6679776 | 155 days ago | 0.00052555 ETH | ||||
6679770 | 155 days ago | 0.00052559 ETH | ||||
6679767 | 155 days ago | 0.0005252 ETH | ||||
6679766 | 155 days ago | 0.00052523 ETH | ||||
6679764 | 155 days ago | 0.00050735 ETH | ||||
6679762 | 155 days ago | 0.0005252 ETH | ||||
6679483 | 155 days ago | 0.069 ETH | ||||
6679458 | 155 days ago | 0.05 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH | ||||
6679160 | 155 days ago | 0.001 ETH |
Loading...
Loading
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0x777cD806...d2a01DD97 The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
RelayReceiver
Compiler Version
v0.8.23+commit.f704f362
Optimization Enabled:
Yes with 200 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.23; contract RelayReceiver { // --- Structs --- struct Call { address to; bytes data; uint256 value; } // --- Errors --- error CallFailed(); error NativeTransferFailed(); error Unauthorized(); // --- Events --- event FundsForwardedWithData(bytes data); // --- Fields --- address private immutable SOLVER; // --- Constructor --- constructor(address solver) { SOLVER = solver; } // --- Public methods --- fallback() external payable { send(SOLVER, msg.value); emit FundsForwardedWithData(msg.data); } function forward(bytes calldata data) external payable { send(SOLVER, msg.value); emit FundsForwardedWithData(data); } // --- Restricted methods --- function makeCalls(Call[] calldata calls) external payable { if (msg.sender != SOLVER) { revert Unauthorized(); } unchecked { uint256 length = calls.length; for (uint256 i; i < length; i++) { Call memory c = calls[i]; (bool success, ) = c.to.call{value: c.value}(c.data); if (!success) { revert CallFailed(); } } } } // --- Internal methods --- function send(address to, uint256 value) internal { bool success; assembly { // Save gas by avoiding copying the return data to memory. // Provide at most 100k gas to the internal call, which is // more than enough to cover common use-cases of logic for // receiving native tokens (eg. SCW payable fallbacks). success := call(100000, to, value, 0, 0, 0, 0) } if (!success) { revert NativeTransferFailed(); } } }
{ "remappings": [ "@openzeppelin/=lib/openzeppelin-contracts/contracts/", "solady/=lib/solady/", "@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/", "ds-test/=lib/forge-std/lib/ds-test/src/", "erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/", "forge-std/=lib/forge-std/src/", "openzeppelin-contracts/=lib/openzeppelin-contracts/" ], "optimizer": { "enabled": true, "runs": 200 }, "metadata": { "useLiteralContent": false, "bytecodeHash": "ipfs", "appendCBOR": true }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "evmVersion": "paris", "viaIR": true, "libraries": {} }
[{"inputs":[{"internalType":"address","name":"solver","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"CallFailed","type":"error"},{"inputs":[],"name":"NativeTransferFailed","type":"error"},{"inputs":[],"name":"Unauthorized","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes","name":"data","type":"bytes"}],"name":"FundsForwardedWithData","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"}],"name":"forward","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"to","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint256","name":"value","type":"uint256"}],"internalType":"struct RelayReceiver.Call[]","name":"calls","type":"tuple[]"}],"name":"makeCalls","outputs":[],"stateMutability":"payable","type":"function"}]
Deployed Bytecode
0x60806040526004361015610018575b610016610377565b005b6000803560e01c908163d948d4681461003b575063dd4ed8370361000e576100e9565b60203660031901126100e65760043567ffffffffffffffff8082116100e257366023830112156100e25781600401359081116100e25736602482840101116100e2577f936c2ca3b35d2d0b24057b0675c459e4515f48fe132d138e213ae59ffab7f53e916100dc6024926100cf347f0000000000000000000000003e34b27a9bf37d8424e1a58ac7fc4d06914b76b96103f3565b60405193849301836101e7565b0390a180f35b8280fd5b80fd5b6020806003193601126101e25760049067ffffffffffffffff9082358281116101e257366023820112156101e25780600401359283116101e2576024810190602436918560051b0101116101e2577f0000000000000000000000003e34b27a9bf37d8424e1a58ac7fc4d06914b76b96001600160a01b031633036101d15760005b83811061017357005b61018661018182868561020f565b6102c4565b805160009081906001600160a01b0316926040938785830151920151918883519301915af16101b3610351565b50156101c2575060010161016a565b51633204506f60e01b81528590fd5b6040516282b42960e81b8152600490fd5b600080fd5b90918060409360208452816020850152848401376000828201840152601f01601f1916010190565b91908110156102315760051b81013590605e19813603018212156101e2570190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b604051906060820182811067ffffffffffffffff82111761027d57604052565b610247565b6040519190601f01601f1916820167ffffffffffffffff81118382101761027d57604052565b67ffffffffffffffff811161027d57601f01601f191660200190565b6060813603126101e2576102d661025d565b9080356001600160a01b03811681036101e25782526020908181013567ffffffffffffffff81116101e25781019136601f840112156101e25782359061032361031e836102a8565b610282565b91808352368282870101116101e2578181600092826040980183870137840101528401520135604082015290565b3d15610372573d9061036561031e836102a8565b9182523d6000602084013e565b606090565b6103a1347f0000000000000000000000003e34b27a9bf37d8424e1a58ac7fc4d06914b76b96103f3565b7f936c2ca3b35d2d0b24057b0675c459e4515f48fe132d138e213ae59ffab7f53e604051602081523660208201523660006040830137600060403683010152604081601f19601f3601168101030190a1565b60008080938193620186a0f11561040657565b604051633d2cec6f60e21b8152600490fdfea2646970667358221220caf02629fd057cfee0cb6731c8eded184dc558da485e5cc6ee0bccec8e65dd0564736f6c63430008170033
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.