Bytecode verified via sibling
This contract shares identical runtime bytecode with a verified contract (0x09acc555...) which has been verified through compiler archaeology.
A one question poll from 2015 that only its own creator is allowed to vote in.
Historical Significance
The whole poll lives in a single public struct: creator, a question string, a vote cap, an options string, a timestamp, an open flag and a running count, all readable at once through p(). vote(string) records a ballot as a NewVote event and bumps the counter, then closes the poll automatically once the count reaches the cap. endPoll() closes it by hand. Both are gated on msg.sender being the address stored in the struct, so nobody but the creator can vote or close, and both return zero rather than throwing when the check fails. The struct member names in the recovered source are chosen to fit their types and uses; only the layout survives in the bytecode. Source recovered by exact bytecode match: solc v0.1.7+commit.b4e666cc with the optimizer off reproduces all 1216 bytes of the deployed code.
Context
Deployed in 2015 on the Ethereum Frontier network.
Key Facts
Description
The whole poll lives in a single public struct: creator, a question string, a vote cap, an options string, a timestamp, an open flag and a running count, all readable at once through p(). vote(string) records a ballot as a NewVote event and bumps the counter, then closes the poll automatically once the count reaches the cap. endPoll() closes it by hand. Both are gated on msg.sender being the address stored in the struct, so nobody but the creator can vote or close, and both return zero rather than throwing when the check fails. The struct member names in the recovered source are chosen to fit their types and uses; only the layout survives in the bytecode. Source recovered by exact bytecode match: solc v0.1.7+commit.b4e666cc with the optimizer off reproduces all 1216 bytes of the deployed code.
Source Verified
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)
// Submitted by EthereumHistory (ethereumhistory.com)
contract Poll {
struct PollData {
address owner;
string question;
uint maxVotes;
string options;
uint created;
bool open;
uint votes;
}
PollData public p;
event NewVote(string vote);
function vote(string text) returns (uint) {
if (msg.sender != p.owner || p.open != true) return 0;
p.votes += 1;
NewVote(text);
if (p.maxVotes > 0) {
if (p.votes >= p.maxVotes) endPoll();
}
return 1;
}
function endPoll() returns (uint) {
if (msg.sender != p.owner) return 0;
p.open = false;
return 1;
}
}External Links
Related contracts
Poll
Same deployerA one question poll from 2015 that only its own creator is allowed to vote in.
0x0c4eb4...bfb146October 26, 2015Contract 0xef6d74...730387
Same deployerA one question poll from 2015 that only its own creator is allowed to vote in.
0xef6d74...730387October 27, 2015Contract 0x266dd0...4db849
Same deployerA one question poll from 2015 that only its own creator is allowed to vote in.
0x266dd0...4db849October 27, 2015Contract 0xb813b2...2a7fc1
Same deployerA one question poll from 2015 that only its own creator is allowed to vote in.
0xb813b2...2a7fc1October 27, 2015Contract 0x495879...863c5c
Same deployerA one question poll from 2015 that only its own creator is allowed to vote in.
0x495879...863c5cOctober 27, 2015Contract 0x8b9713...79b79d
Same deployerA one question poll from 2015 that only its own creator is allowed to vote in.
0x8b9713...79b79dOctober 27, 2015