Back to Home

Proxy

0x0008895c7271...60106f2b9e2f
ByzantiumSource VerifiedEdit this contract
Deployed February 10, 2018 (8 years ago)Block 5,066,803

Upgradeable proxy that logs bare ether transfers as deposits and delegates everything else to a target supplied by a settings contract.

Byzantium EraVerified Source

Historical Significance

Resolving the implementation on each call rather than caching it means an upgrade takes effect everywhere at once with no per proxy transaction. The cost is a call into settings on every single invocation, paid forever, which is the trade later proxy standards avoided by storing the implementation locally and updating it explicitly.

Key Facts
Deployment Block
5,066,803
Deployment Date
Feb 10, 2018, 08:00 PM
Code Size
483.0 B
Transactions by Year
20183

Description

The fallback branches on whether there is any calldata. An empty call is treated as a deposit and emits Deposit with the sender and the value. Any other call reads target from the settings contract in the first storage slot and delegatecalls it with the original calldata, reverting if it fails.

initialize takes an address and does nothing, which is the signature a deployer would call through the proxy so that the implementation could pick it up. The settings reference is readable, but the target itself is not stored here at all and is fetched fresh on every call.

Source Verified

Solidityeh_crack_source_verified
Compiler: v0.4.18

Bytecode Overview

Opcodes483
Unique Opcodes116
Jump Instructions24
Storage Operations7

External Links