Back to Home

Contract 0xb8b224068c3b...b89ca60a354a

Token
0xb8b224068c3b...b89ca60a354a
FrontierContract #1,280Exact Bytecode MatchEdit this contract

Bytecode verified via sibling

This contract shares identical runtime bytecode with a verified contract (0xaa6bde0e...) which has been verified through compiler archaeology.

Deployed September 19, 2015 (10 years ago)Block 256,262

A copy of the coin contract from the Frontier Guide, the two function token that taught a generation of Ethereum developers to move a balance.

Frontier EraVerified Source

Historical Significance

The coin contract from the Frontier Guide, whose tutorial text lives in the go-ethereum wiki: one public mapping of address to balance, one sendCoin(address,uint256) that checks the sender's balance, moves the amount and fires a CoinTransfer event. There is no allowance, no total supply and no decimals; this predates ERC-20 and is the shape every early token was written against. The guide names the contract token, and that is the name recovered here, since the constructor shares it and so never appears in the dispatch table. Its constructor takes a supply and falls back to 10000 when zero is passed, written as supply || 10000, which in this compiler yields the left operand when it is non zero rather than a bool. This copy was deployed with 1000000. The declaration order differs from the guide as it was usually pasted, with the balance mapping written below sendCoin rather than above it, which swaps the two function bodies in the compiled output and is why this bytecode did not match the guide source. Source recovered by exact bytecode match: solc v0.1.1+commit.6ff4cd6 with the optimizer off reproduces the creation transaction, code and constructor argument both. Note that this contract was verified on Etherscan under the name FirstCoin, which is not a name the guide uses; Etherscan accepts one verification per address and will not take a correction.

Context

Deployed in 2015 on the Ethereum Frontier network.

Key Facts
Deployment Block
256,262
Deployment Date
Sep 19, 2015, 06:34 AM
Code Size
634.0 B
Gas at Deploy
177,208
Transactions by Year
20151

Description

The coin contract from the Frontier Guide, whose tutorial text lives in the go-ethereum wiki: one public mapping of address to balance, one sendCoin(address,uint256) that checks the sender's balance, moves the amount and fires a CoinTransfer event. There is no allowance, no total supply and no decimals; this predates ERC-20 and is the shape every early token was written against. The guide names the contract token, and that is the name recovered here, since the constructor shares it and so never appears in the dispatch table. Its constructor takes a supply and falls back to 10000 when zero is passed, written as supply || 10000, which in this compiler yields the left operand when it is non zero rather than a bool. This copy was deployed with 1000000. The declaration order differs from the guide as it was usually pasted, with the balance mapping written below sendCoin rather than above it, which swaps the two function bodies in the compiled output and is why this bytecode did not match the guide source. Source recovered by exact bytecode match: solc v0.1.1+commit.6ff4cd6 with the optimizer off reproduces the creation transaction, code and constructor argument both. Note that this contract was verified on Etherscan under the name FirstCoin, which is not a name the guide uses; Etherscan accepts one verification per address and will not take a correction.

Source Verified

Exact bytecode match(634 bytes)
Compiler: v0.1.1+
Heuristic Analysis

The following characteristics were detected through bytecode analysis and may not be accurate.

Detected Type: Token
Has ERC-20-like patterns

Bytecode Overview

Opcodes634
Unique Opcodes82
Jump Instructions14
Storage Operations8

External Links

Related contracts