Back to Home

GetSet

program
0x77beac0aed3b...c66ff47e96c2
FrontierContract #1,194Exact Bytecode MatchEdit this contract
Deployed September 17, 2015 (10 years ago)Block 247,715

A minimal getter/setter proxy from the Oraclize team. set() forwards calls to a hardcoded target contract, get() returns constant 255.

Key Facts

Deployment Block
247,715
Deployment Date
Sep 17, 2015, 12:14 PM
Code Size
202.0 B
Gas at Deploy
82,056
Transactions by Year
20151

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

SolidityExact bytecode match(202 bytes)
Compiler: soljson

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.

Detected Type: program

Frontier Era

The initial release of Ethereum. A bare-bones implementation for technical users.

Block span: 01,149,999
July 30, 2015March 14, 2016

Bytecode Overview

Opcodes202
Unique Opcodes69
Jump Instructions6
Storage Operations3

Verified Source Available

Source verified through compiler archaeology and exact bytecode matching.

View Verification Proof
Show 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