An 86 byte delegatecall proxy forwarding every call to one hardcoded implementation, deployed with its own implementation address.
Historical Significance
Four families share this code with only the implementation address differing. Grouping them shows how a single operator scaled: rather than deploying one upgradeable proxy and routing everything through it, they deployed a separate minimal proxy per implementation, each one cheap enough that redeploying was easier than adding an admin path.
Token Information
Key Facts
Description
The same assembly-only fallback as the rest of its family: calldata copied to memory allocated through msize, a delegatecall to the fixed implementation with 63/64ths of available gas, and the return data passed back untouched on success or on failure.
The deployed runtime has no metadata trailer, which is why it is 86 bytes rather than 129. The Solidity published here reproduces those bytes exactly under solc 0.4.14 with the optimizer on and runs set to 1, and the registry record uses a Yul verbatim form of the same bytes.
Source Verified
Byzantium Era
First Metropolis hard fork. Added zk-SNARK precompiles, REVERT opcode, and staticcall.
Bytecode Overview
Verified Source Available
This contract has verified source code.
View Verification ProofShow source code (Solidity)
// Submitted by EthereumHistory (ethereumhistory.com)
pragma solidity ^0.4.12;
contract Proxy {
function () payable {
assembly {
let ptr := msize()
mstore(0x40, add(ptr, calldatasize))
calldatacopy(ptr, 0, calldatasize)
let result := delegatecall(div(mul(gas, 0x3f), 0x40), 0xC89327da549C6EB96c59764b13013467d17c7c79, ptr, calldatasize, 0, 0)
let rptr := msize()
mstore(0x40, add(rptr, returndatasize))
returndatacopy(rptr, 0, returndatasize)
switch result
case 0 { revert(rptr, returndatasize) }
default { return(rptr, returndatasize) }
}
}
}