Back to Home

Shares(SHARE)

0x0005ff1ad223...a2b0a84c4040
ByzantiumExact Bytecode MatchEdit this contract
Deployed July 11, 2018 (8 years ago)Block 5,945,633

Augur delegating proxy that resolves its implementation through a controller registry by name.

Byzantium EraVerified Source

Historical Significance

Augur put almost every piece of its system behind one of these, so the registry could point a name at a new implementation and every existing proxy would follow without any of their addresses changing. The name based lookup on every call is the cost of that flexibility. The 300 run optimizer setting is a reminder that matching a contract needs the project's build settings, not just its source.

Token Information
Token Name
Shares
Symbol
SHARE
Decimals
0
Key Facts
Deployment Block
5,945,633
Deployment Date
Jul 11, 2018, 04:12 PM
Code Size
663.0 B

Description

The Delegator contract from Augur. It stores a controller address and a name, and every call it receives is looked up against that controller to find the current implementation and then forwarded by delegatecall, with the return data passed straight back to the caller. A delegator whose name is still unset does nothing rather than forwarding. getController, setController and controllerLookupName are inherited from Augur's Controlled base, and setController can only be called by the controller itself. Built with Solidity 0.4.20 and the optimizer set to 300 runs, which is what the project used rather than the default. 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

SolidityExact bytecode match(663 bytes)
Compiler: v0.4.20

Bytecode Overview

Opcodes663
Unique Opcodes105
Jump Instructions29
Storage Operations11

External Links