Overview
ETH Balance
ETH Value
$0.00Latest 25 from a total of 281,490 transactions
| Transaction Hash |
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
| Sponsored Call V... | 427476360 | 2 hrs ago | IN | 0 ETH | 0.00000752 | ||||
| Sponsored Call V... | 427475870 | 2 hrs ago | IN | 0 ETH | 0.00000665 | ||||
| Sponsored Call V... | 427472498 | 2 hrs ago | IN | 0 ETH | 0.00000572 | ||||
| Sponsored Call V... | 427366508 | 9 hrs ago | IN | 0 ETH | 0.00000566 | ||||
| Sponsored Call V... | 427335508 | 12 hrs ago | IN | 0 ETH | 0.00000575 | ||||
| Sponsored Call V... | 427275610 | 16 hrs ago | IN | 0 ETH | 0.00000623 | ||||
| Sponsored Call V... | 427273447 | 16 hrs ago | IN | 0 ETH | 0.00000614 | ||||
| Sponsored Call V... | 427253718 | 17 hrs ago | IN | 0 ETH | 0.00000699 | ||||
| Sponsored Call V... | 427252275 | 17 hrs ago | IN | 0 ETH | 0.00000703 | ||||
| Sponsored Call V... | 427251298 | 17 hrs ago | IN | 0 ETH | 0.00000754 | ||||
| Sponsored Call V... | 427248163 | 18 hrs ago | IN | 0 ETH | 0.0000076 | ||||
| Sponsored Call V... | 427232896 | 19 hrs ago | IN | 0 ETH | 0.00000795 | ||||
| Sponsored Call V... | 427219051 | 20 hrs ago | IN | 0 ETH | 0.00001064 | ||||
| Sponsored Call V... | 427216395 | 20 hrs ago | IN | 0 ETH | 0.00002124 | ||||
| Sponsored Call V... | 427172811 | 23 hrs ago | IN | 0 ETH | 0.00000569 | ||||
| Sponsored Call V... | 427100587 | 28 hrs ago | IN | 0 ETH | 0.00000566 | ||||
| Sponsored Call V... | 427088510 | 29 hrs ago | IN | 0 ETH | 0.00000567 | ||||
| Sponsored Call V... | 427086580 | 29 hrs ago | IN | 0 ETH | 0.00000569 | ||||
| Sponsored Call V... | 426987487 | 36 hrs ago | IN | 0 ETH | 0.00000577 | ||||
| Sponsored Call V... | 426984115 | 36 hrs ago | IN | 0 ETH | 0.00000572 | ||||
| Sponsored Call V... | 426982672 | 36 hrs ago | IN | 0 ETH | 0.0000066 | ||||
| Sponsored Call V... | 426970894 | 37 hrs ago | IN | 0 ETH | 0.00000574 | ||||
| Sponsored Call V... | 426929967 | 40 hrs ago | IN | 0 ETH | 0.00000602 | ||||
| Sponsored Call V... | 426914054 | 41 hrs ago | IN | 0 ETH | 0.00000578 | ||||
| Sponsored Call V... | 426903197 | 41 hrs ago | IN | 0 ETH | 0.00000582 |
Latest 1 internal transaction
| Parent Transaction Hash | Block | From | To | |||
|---|---|---|---|---|---|---|
| 316596602 | 321 days ago | Contract Creation | 0 ETH |
Cross-Chain Transactions
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT
pragma solidity 0.8.20;
import {IGelatoRelay1BalanceV2} from "./interfaces/IGelatoRelay1BalanceV2.sol";
import {IGelato1BalanceV2} from "./interfaces/IGelato1BalanceV2.sol";
import {GelatoCallUtils} from "./lib/GelatoCallUtils.sol";
/// @title Gelato Relay V2 contract
/// @notice This contract deals with Gelato 1Balance payments
/// @dev This contract must NEVER hold funds!
/// @dev Maliciously crafted transaction payloads could wipe out any funds left here
// solhint-disable-next-line max-states-count
contract GelatoRelay1BalanceV2 is IGelatoRelay1BalanceV2, IGelato1BalanceV2 {
using GelatoCallUtils for address;
/// @notice Relay call + One Balance payment - with sponsor authentication
/// @dev This method can be called directly without passing through the diamond
/// @dev The validity of the emitted LogUseGelato1BalanceV2 event must be verified off-chain
/// @dev Payment is handled with off-chain accounting using Gelato's 1Balance system
/// @param _target Relay call target
/// @param _data Relay call data
/// @param _correlationId Unique task identifier generated by gelato
/// Signature is split into `r` and `vs` - See https://eips.ethereum.org/EIPS/eip-2098
/// @param _r Checker signature
/// @param _vs Checker signature
function sponsoredCallV2(
address _target,
bytes calldata _data,
bytes32 _correlationId,
bytes32 _r,
bytes32 _vs
) external {
// These parameters are decoded from calldata
(_correlationId);
(_r);
(_vs);
// INTERACTIONS
_target.revertingContractCallNoCopy(
_data,
"GelatoRelay.sponsoredCallV2:"
);
emit LogUseGelato1BalanceV2();
}
}// SPDX-License-Identifier: MIT
pragma solidity 0.8.20;
interface IGelato1BalanceV2 {
event LogUseGelato1BalanceV2();
}// SPDX-License-Identifier: MIT
pragma solidity 0.8.20;
interface IGelatoRelay1BalanceV2 {
function sponsoredCallV2(
address _target,
bytes calldata _data,
bytes32 _correlationId,
bytes32 _r,
bytes32 _vs
) external;
}// SPDX-License-Identifier: MIT
pragma solidity 0.8.20;
library GelatoBytes {
function calldataSliceSelector(
bytes calldata _bytes
) internal pure returns (bytes4 selector) {
selector =
_bytes[0] |
(bytes4(_bytes[1]) >> 8) |
(bytes4(_bytes[2]) >> 16) |
(bytes4(_bytes[3]) >> 24);
}
function memorySliceSelector(
bytes memory _bytes
) internal pure returns (bytes4 selector) {
selector =
_bytes[0] |
(bytes4(_bytes[1]) >> 8) |
(bytes4(_bytes[2]) >> 16) |
(bytes4(_bytes[3]) >> 24);
}
function revertWithError(
bytes memory _bytes,
string memory _tracingInfo
) internal pure {
// 68: 32-location, 32-length, 4-ErrorSelector, UTF-8 err
if (_bytes.length % 32 == 4) {
bytes4 selector;
assembly {
selector := mload(add(0x20, _bytes))
}
if (selector == 0x08c379a0) {
// Function selector for Error(string)
assembly {
_bytes := add(_bytes, 68)
}
revert(string(abi.encodePacked(_tracingInfo, string(_bytes))));
}
}
// Bubble up unrecognised errors directly
assembly {
revert(add(_bytes, 0x20), mload(_bytes))
}
}
}// SPDX-License-Identifier: MIT
pragma solidity 0.8.20;
import {GelatoBytes} from "./GelatoBytes.sol";
library GelatoCallUtils {
using GelatoBytes for bytes;
function revertingContractCall(
address _contract,
bytes memory _data,
string memory _errorMsg
) internal returns (bytes memory returndata) {
bool success;
(success, returndata) = _contract.call(_data);
// solhint-disable-next-line max-line-length
// https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable/blob/f9b6fc3fdab7aca33a9cfa8837c5cd7f67e176be/contracts/utils/AddressUpgradeable.sol#L177
if (success) {
if (returndata.length == 0) {
// only check isContract if the call was successful and the return data is empty
// otherwise we already know that it was a contract
require(
isContract(_contract),
string(abi.encodePacked(_errorMsg, "Call to non contract"))
);
}
} else {
returndata.revertWithError(_errorMsg);
}
}
function revertingContractCallNoCopy(
address _contract,
bytes calldata _data,
string memory _errorMsg
) internal returns (bytes memory returndata) {
bool success;
(success, returndata) = _contract.call(_data);
// solhint-disable-next-line max-line-length
// https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable/blob/f9b6fc3fdab7aca33a9cfa8837c5cd7f67e176be/contracts/utils/AddressUpgradeable.sol#L177
if (success) {
if (returndata.length == 0) {
// only check isContract if the call was successful and the return data is empty
// otherwise we already know that it was a contract
require(
isContract(_contract),
string(abi.encodePacked(_errorMsg, "Call to non contract"))
);
}
} else {
returndata.revertWithError(_errorMsg);
}
}
// solhint-disable-next-line max-line-length
// https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable/blob/f9b6fc3fdab7aca33a9cfa8837c5cd7f67e176be/contracts/utils/AddressUpgradeable.sol#L36
function isContract(address account) internal view returns (bool) {
// This method relies on extcodesize/address.code.length, which returns 0
// for contracts in construction, since the code is only stored at the end
// of the constructor execution.
return account.code.length > 0;
}
}{
"evmVersion": "paris",
"libraries": {},
"metadata": {
"bytecodeHash": "ipfs",
"useLiteralContent": true
},
"optimizer": {
"enabled": true,
"runs": 999999
},
"remappings": [],
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"anonymous":false,"inputs":[],"name":"LogUseGelato1BalanceV2","type":"event"},{"inputs":[{"internalType":"address","name":"_target","type":"address"},{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"bytes32","name":"_correlationId","type":"bytes32"},{"internalType":"bytes32","name":"_r","type":"bytes32"},{"internalType":"bytes32","name":"_vs","type":"bytes32"}],"name":"sponsoredCallV2","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
608060405234801561001057600080fd5b506104e5806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063ad718d2a14610030575b600080fd5b61004361003e3660046102ca565b610045565b005b60408051808201909152601c81527f47656c61746f52656c61792e73706f6e736f72656443616c6c56323a00000000602082015261009e9073ffffffffffffffffffffffffffffffffffffffff881690879087906100d0565b506040517f8e4f8b7f1299a63a6b46587ec357933d2006e5697cd46d99297e670cee1dbeb190600090a1505050505050565b606060008573ffffffffffffffffffffffffffffffffffffffff1685856040516100fb92919061037f565b6000604051808303816000865af19150503d8060008114610138576040519150601f19603f3d011682016040523d82523d6000602084013e61013d565b606091505b509250905080156101d35781516000036101ce5773ffffffffffffffffffffffffffffffffffffffff86163b15158360405160200161017c91906103b3565b604051602081830303815290604052906101cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101c391906103f4565b60405180910390fd5b505b6101dd565b6101dd82846101e6565b50949350505050565b602082516101f49190610445565b6004036102c25760208201517fffffffff0000000000000000000000000000000000000000000000000000000081167f08c379a000000000000000000000000000000000000000000000000000000000036102c0576044830192508183604051602001610262929190610480565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290527f08c379a00000000000000000000000000000000000000000000000000000000082526101c3916004016103f4565b505b815160208301fd5b60008060008060008060a087890312156102e357600080fd5b863573ffffffffffffffffffffffffffffffffffffffff8116811461030757600080fd5b9550602087013567ffffffffffffffff8082111561032457600080fd5b818901915089601f83011261033857600080fd5b81358181111561034757600080fd5b8a602082850101111561035957600080fd5b979a60209290920199509697604081013597506060810135965060800135945092505050565b8183823760009101908152919050565b60005b838110156103aa578181015183820152602001610392565b50506000910152565b600082516103c581846020870161038f565b7f43616c6c20746f206e6f6e20636f6e7472616374000000000000000000000000920191825250601401919050565b602081526000825180602084015261041381604085016020870161038f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60008261047b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500690565b6000835161049281846020880161038f565b8351908301906104a681836020880161038f565b0194935050505056fea2646970667358221220db14341cd5dc3b9436bdac3c021e2866bfe4f04219cb79808b7163e0ab4b055164736f6c63430008140033
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063ad718d2a14610030575b600080fd5b61004361003e3660046102ca565b610045565b005b60408051808201909152601c81527f47656c61746f52656c61792e73706f6e736f72656443616c6c56323a00000000602082015261009e9073ffffffffffffffffffffffffffffffffffffffff881690879087906100d0565b506040517f8e4f8b7f1299a63a6b46587ec357933d2006e5697cd46d99297e670cee1dbeb190600090a1505050505050565b606060008573ffffffffffffffffffffffffffffffffffffffff1685856040516100fb92919061037f565b6000604051808303816000865af19150503d8060008114610138576040519150601f19603f3d011682016040523d82523d6000602084013e61013d565b606091505b509250905080156101d35781516000036101ce5773ffffffffffffffffffffffffffffffffffffffff86163b15158360405160200161017c91906103b3565b604051602081830303815290604052906101cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101c391906103f4565b60405180910390fd5b505b6101dd565b6101dd82846101e6565b50949350505050565b602082516101f49190610445565b6004036102c25760208201517fffffffff0000000000000000000000000000000000000000000000000000000081167f08c379a000000000000000000000000000000000000000000000000000000000036102c0576044830192508183604051602001610262929190610480565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290527f08c379a00000000000000000000000000000000000000000000000000000000082526101c3916004016103f4565b505b815160208301fd5b60008060008060008060a087890312156102e357600080fd5b863573ffffffffffffffffffffffffffffffffffffffff8116811461030757600080fd5b9550602087013567ffffffffffffffff8082111561032457600080fd5b818901915089601f83011261033857600080fd5b81358181111561034757600080fd5b8a602082850101111561035957600080fd5b979a60209290920199509697604081013597506060810135965060800135945092505050565b8183823760009101908152919050565b60005b838110156103aa578181015183820152602001610392565b50506000910152565b600082516103c581846020870161038f565b7f43616c6c20746f206e6f6e20636f6e7472616374000000000000000000000000920191825250601401919050565b602081526000825180602084015261041381604085016020870161038f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60008261047b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500690565b6000835161049281846020880161038f565b8351908301906104a681836020880161038f565b0194935050505056fea2646970667358221220db14341cd5dc3b9436bdac3c021e2866bfe4f04219cb79808b7163e0ab4b055164736f6c63430008140033
Net Worth in USD
Net Worth in ETH
Multichain Portfolio | 35 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
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.