Address Contract Verified
Address
0x82b2925E54AdE5e10F5E6be31f604e5154701aFa
Balance
4.2471 ETH
Nonce
1
Code Size
252 bytes
Creator
0x85Aa7f78...fC63 at tx 0x4cbf6615...0cb839
Indexed Transactions
0
Contract Bytecode
252 bytes
0x608060405260043610601f5760003560e01c8063d7dfa0dd14606b576025565b36602557005b6040517f0000000000000000000000007b0fce54574d9746414d11367f54c9ab94e53dca9036600082376000803683855af43d806000843e8180156067578184f35b8184fd5b348015607657600080fd5b50609d7f0000000000000000000000007b0fce54574d9746414d11367f54c9ab94e53dca81565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f3fea264697066735822122013174273c18ed4bea127cbc0952900378004a1870c433d85adc8dafba30dae5764736f6c63430008050033
Verified Source Code Full Match
Compiler: v0.8.5+commit.a4f2e591
EVM: berlin
Optimization: Yes (1000 runs)
InitializedProxy.sol 50 lines
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
/**
* @title InitializedProxy
* @author Anna Carroll
*/
contract InitializedProxy {
// address of logic contract
address public immutable logic;
// ======== Constructor =========
constructor(
address _logic,
bytes memory _initializationCalldata
) {
logic = _logic;
// Delegatecall into the logic contract, supplying initialization calldata
(bool _ok, bytes memory returnData) =
_logic.delegatecall(_initializationCalldata);
// Revert if delegatecall to implementation reverts
require(_ok, string(returnData));
}
// ======== Fallback =========
fallback() external payable {
address _impl = logic;
assembly {
let ptr := mload(0x40)
calldatacopy(ptr, 0, calldatasize())
let result := delegatecall(gas(), _impl, ptr, calldatasize(), 0, 0)
let size := returndatasize()
returndatacopy(ptr, 0, size)
switch result
case 0 {
revert(ptr, size)
}
default {
return(ptr, size)
}
}
}
// ======== Receive =========
receive() external payable {} // solhint-disable-line no-empty-blocks
}
Read Contract
logic 0xd7dfa0dd → address
Recent Transactions
No transactions found for this address