Back to Home

Proxy

0xb66d62a56648...4b0cb38151bb
ByzantiumSource VerifiedEdit this contract
Deployed December 23, 2017 (8 years ago)Block 4,780,901

Sixty-nine bytes of hand-written assembly that resolve an implementation from a fixed settings contract and delegatecall it.

Byzantium EraVerified Source

Historical Significance

This is the same upgrade system as the larger settings proxies, rewritten by hand for the case where the proxy is deployed thousands of times and every byte of deployment cost is multiplied. Resolving the implementation through a registry on every call, rather than storing it, is what lets the operator move an entire fleet at once.

This contract is a proxy that delegates all calls to 0x4e6489ac49b4f1f1204657c4845aa008f1e7bc88. See the master contract for the full logic.
Key Facts
Deployment Block
4,780,901
Deployment Date
Dec 23, 2017, 06:04 AM
Code Size
69.0 B

Description

The routine writes the four-byte selector for lib() into the first word of memory, staticcalls a hardcoded settings contract with it, and reads the answer back out of the same word. That address is then delegatecalled with the incoming calldata copied to memory zero, and the returndata is copied back and returned.

Everything reuses one scratch word, and both the staticcall and the delegatecall branch to the same two-instruction failure handler. There is no dispatcher, no storage, and no constructor state: the settings address is baked into the code, so every deployment of these bytes points at the same registry.

No Solidity compiler produces this shape, so the source published here is Yul with the deployed bytes reproduced verbatim.

Source Verified

Yuleh_crack_source_verified
Compiler: v0.8.17

Bytecode Overview

Opcodes69
Unique Opcodes44
Jump Instructions5
Storage Operations0

External Links