A forwarding proxy contract by Thomas Bertani (Oraclize team) that relays set(uint256) calls to a hardcoded target contract and serves as the admin gate for the
Key Facts
Description
Controller is a 158-byte proxy contract deployed on September 17, 2015 (block 247,976). It forwards set(uint256) calls to a hardcoded target at 0x9e0ae8ffd946d12d1d393c6f3bca0eecadc9428e (the same target used by the sibling GetSet contract at 0x77beac0aed3b9e75ee2aba60b3dec66ff47e96c2). The get() function returns the constant 0xff (255) without touching storage.
The contract sits in the middle of a three-contract network deployed the same day: Pool5x (0x246b342b0fd5a8ad8d267e02ae860c71fba8eebe) calls Controller's address for admin authorization in its finalize() function, Controller forwards to the target at 0x9e0ae8ffd946d12d1d393c6f3bca0eecadc9428e. This layered forwarding structure is typical of early Oraclize experiments with upgradable contract routing patterns.
The CALL forwarding uses a typed contract interface with gas = GAS - 25050 (enough for a standard set-and-event-emit pattern) and require(success) via the v0.1.x throw pattern. The contract was called exactly once after deployment: a test call with value 21 from the deployer at block 247,980.
Source Verified
Exact bytecode match (init + runtime). Runtime: 158 bytes. Creation: 214 bytes (56 bytes init). Typed contract call with local variable assignment. Called once (test set call with value 21).
Heuristic Analysis
The following characteristics were detected through bytecode analysis and may not be accurate.
Frontier Era
The initial release of Ethereum. A bare-bones implementation for technical users.
Bytecode Overview
Verified Source Available
Source verified through compiler archaeology and exact bytecode matching.
View Verification ProofShow source code (Solidity)
contract T {
function set(uint256 x);
}
contract Controller {
T target = T(0x9e0ae8ffd946d12d1d393c6f3bca0eecadc9428e);
function set(uint256 x) {
T t = target;
t.set(x);
}
function get() returns (uint8) {
return 0xff;
}
}