Back to HomeDeployer 0xbf82a4...bb0469 Deployment Block 3,888,798 Deployment Date Jun 17, 2017, 06:41 PM Code Size 131.0 B
Exact Bytecode MatchEdit this contract
Deployed June 17, 2017 (9 years ago)Block 3,888,798
Delegatecall forwarder using an assembly label for its failure branch.
Verified Source
Historical Significance
Deployed alongside its literal-offset twin, so the two variants of the same template can be compared directly.
Key Facts
Transactions by Year
20171
Deployment Transaction: 0x0d04b4c5248a3047...304c5bfe36911288
Description
The correctly-written half of the forwarder pair for this implementation: the delegatecall-failure branch resolves through an assembly label and reaches the invalid-opcode stub as intended. The runtime code matches the deployed bytecode byte for byte; only the trailing swarm metadata hash differs, because the EthereumHistory attribution comment changes the source text. Sourcify records this as a partial match and Etherscan shows it as verified.
Source Verified
Bytecode Overview
Opcodes131
Unique Opcodes76
Jump Instructions7
Storage Operations0
Verified Source Available
Source verified through compiler archaeology and exact bytecode matching.
View Verification ProofShow source code (Solidity)
// Submitted by EthereumHistory (ethereumhistory.com)
pragma solidity ^0.4.11;
contract Proxy {
function implementation() internal constant returns (address) {
return 0x94f323acad9382b99dd41298f6b64fc919166291;
}
function () payable {
address target = implementation();
assembly {
let ptr := msize()
mstore(0x40, add(ptr, calldatasize))
calldatacopy(ptr, 0, calldatasize)
jumpi(fail, iszero(delegatecall(div(mul(gas, 0x3f), 0x40), target, ptr, calldatasize, 0, 0x20)))
return(0, 0x20)
fail:
invalid
}
}
}