Source Code
Overview
ETH Balance
1.4 ETH
More Info
ContractCreator
Multichain Info
N/A
Latest 9 from a total of 9 transactions
| Transaction Hash |
Method
|
Block
|
From
|
To
|
Amount
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Exec Transaction | 19467302 | 354 days ago | IN | 0 ETH | 0.00000382 | ||||
| Exec Transaction | 18816067 | 369 days ago | IN | 0 ETH | 0.00000007 | ||||
| Exec Transaction | 18731353 | 371 days ago | IN | 0 ETH | 0.00000101 | ||||
| Exec Transaction | 18731215 | 371 days ago | IN | 0 ETH | 0.00000137 | ||||
| Exec Transaction | 18731149 | 371 days ago | IN | 0 ETH | 0.00000037 | ||||
| Exec Transaction | 18717003 | 371 days ago | IN | 0 ETH | 0.00000053 | ||||
| Exec Transaction | 18689248 | 372 days ago | IN | 0 ETH | 0.00000038 | ||||
| Exec Transaction | 18252508 | 382 days ago | IN | 0 ETH | 0.00001247 | ||||
| Setup | 16658161 | 419 days ago | IN | 0 ETH | 0.00033665 |
Latest 2 Deposits
| L2 Txn Hash | L1 Deposit Txn | Value | Token | |
|---|---|---|---|---|
| 0x8b67cc531c6226d4202abe5c589809472c885b80f525d292f22ed297b54411ba | 371 days ago | 1 | ||
| 0xa3c97910c2a6406ee53a85dbc41301f96d0b0cf79bd20161d9dbfb632f466857 | 382 days ago | 1 |
Loading...
Loading
Contract Name:
SafeProxy
Compiler Version
v0.7.6+commit.7338295f
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: LGPL-3.0-only
/* solhint-disable one-contract-per-file */
pragma solidity >=0.7.0 <0.9.0;
/**
* @title IProxy - Helper interface to access the singleton address of the Proxy on-chain.
* @author Richard Meissner - @rmeissner
*/
interface IProxy {
function masterCopy() external view returns (address);
}
/**
* @title SafeProxy - Generic proxy contract allows to execute all transactions applying the code of a master contract.
* @author Stefan George - <[email protected]>
* @author Richard Meissner - <[email protected]>
*/
contract SafeProxy {
// Singleton always needs to be first declared variable, to ensure that it is at the same location in the contracts to which calls are delegated.
// To reduce deployment costs this variable is internal and needs to be retrieved via `getStorageAt`
address internal singleton;
/**
* @notice Constructor function sets address of singleton contract.
* @param _singleton Singleton address.
*/
constructor(address _singleton) {
require(_singleton != address(0), "Invalid singleton address provided");
singleton = _singleton;
}
/// @dev Fallback function forwards all transactions and returns all received return data.
fallback() external payable {
// solhint-disable-next-line no-inline-assembly
assembly {
let _singleton := sload(0)
// 0xa619486e == keccak("masterCopy()"). The value is right padded to 32-bytes with 0s
if eq(calldataload(0), 0xa619486e00000000000000000000000000000000000000000000000000000000) {
mstore(0, shr(12, shl(12, _singleton)))
return(0, 0x20)
}
calldatacopy(0, 0, calldatasize())
let success := delegatecall(gas(), _singleton, 0, calldatasize(), 0, 0)
returndatacopy(0, 0, returndatasize())
if eq(success, 0) {
revert(0, returndatasize())
}
return(0, returndatasize())
}
}
}{
"evmVersion": "istanbul",
"libraries": {},
"metadata": {
"bytecodeHash": "ipfs",
"useLiteralContent": true
},
"optimizer": {
"enabled": false,
"runs": 200
},
"remappings": [],
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
}
}Contract ABI
API[{"inputs":[{"internalType":"address","name":"_singleton","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"}]Contract Creation Code
608060405234801561001057600080fd5b506040516101d63803806101d68339818101604052602081101561003357600080fd5b8101908080519060200190929190505050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156100ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806101b46022913960400191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050609b806101196000396000f3fe60806040526000547fa619486e00000000000000000000000000000000000000000000000000000000600035141560405780600c1b600c1c60005260206000f35b3660008037600080366000845af43d6000803e60008114156060573d6000fd5b3d6000f3fea2646970667358221220bfbe5e66dfccd59d80684323ec36a561ddc5ef3b39a33a941f25cabefff21eb964736f6c63430007060033496e76616c69642073696e676c65746f6e20616464726573732070726f7669646564000000000000000000000000d063b02a3d48819b6c8d3389d3c8e023d265141f
Deployed Bytecode
0x60806040526000547fa619486e00000000000000000000000000000000000000000000000000000000600035141560405780600c1b600c1c60005260206000f35b3660008037600080366000845af43d6000803e60008114156060573d6000fd5b3d6000f3fea2646970667358221220bfbe5e66dfccd59d80684323ec36a561ddc5ef3b39a33a941f25cabefff21eb964736f6c63430007060033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000d063b02a3d48819b6c8d3389d3c8e023d265141f
-----Decoded View---------------
Arg [0] : _singleton (address): 0xd063b02A3D48819B6C8d3389D3c8E023d265141f
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000d063b02a3d48819b6c8d3389d3c8e023d265141f
Loading...
Loading
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ 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.