A minimal getter/setter proxy from the Oraclize team. set() forwards calls to a hardcoded target contract, get() returns constant 255.
Historical Significance
One of the earliest contracts from the Oraclize team, deployed just 7 weeks after Ethereum mainnet launch. The deployer (0x0047A8033CC6d6Ca2ED5044674Fd421F44884dE8) went on to deploy the Oraclize oracle infrastructure, Ethereum's first production oracle service. This contract represents the very beginning of that development.
Context
Deployed in September 2015 during the Frontier era, compiled with Solidity v0.1.1, the earliest available compiler. At this time, smart contract development was in its infancy and developers like Thomas Bertani were experimenting with basic patterns like contract-to-contract calls that would later evolve into the Oraclize oracle architecture.
Key Facts
Description
A tiny proxy contract (147 bytes runtime) deployed by the Oraclize team (Thomas Bertani) on Sep 17, 2015. One of the earliest contracts from the deployer who would go on to build Oraclize, Ethereum's first oracle service.
The set(uint256) function forwards calls to a hardcoded target contract (0x9e0ae8ffd946d12d1d393c6f3bca0eecadc9428e) using early Solidity's raw string-based .call() pattern, where the function name 'set' is passed as a literal string rather than a keccak256 selector. The get() function simply returns the constant 255 (0xFF) without reading from storage.
A uint reserved variable at slot 0 suggests this was part of a larger contract hierarchy, possibly an early prototype of the Oraclize address resolver pattern. Uses inline state variable initialization for the target address rather than a constructor function.
Source Verified
Exact bytecode match (init + runtime). 55 bytes init, 147 bytes runtime, 202 bytes creation total.
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 GetSet {
uint reserved;
address target = 0x9e0ae8ffd946d12d1d393c6f3bca0eecadc9428e;
function set(uint256 x) {
target.call("set", x);
}
function get() returns (uint8) {
return 0xff;
}
}External Links
Related contracts
Target
Same deployerTarget contract.
0x9e0ae8...c9428eSeptember 17, 2015Controller
Same deployerController contract.
0x3c9492...e332e5September 17, 2015Pool5x
Same deployerPool5x contract.
0x246b34...a8eebeSeptember 17, 2015Pool
Same deployerRevised Pool5x lottery prototype by Bertani (Oraclize), deployed 17 blocks after v1. Stores 5x msg.value and emits debug log events.
0xbb5cda...c483f9September 17, 2015Insurance
Same deployerBertani's pre-hackathon prototype of InsurETH, deployed twelve hours before Hack The Block London opened.
0x38ac81...22049bSeptember 18, 2015EthXbt
Same deployerAn Oraclize price ticker that fetches the ETH/Bitcoin (ETH/XBT) rate from Kraken, deployed at DEVCON1 in November 2015.
0x3c025c...dd3142November 19, 2015