Tutorial-derived coin contract (Solidity v0.1.1), deployed Aug 9, 2015 during the Frontier era.
Key Facts
Description
A FirstCoin instance deployed by 0xA1eEc0a9b7C50B8e79A0D9B8760bC5681fb199EC on Aug 9, 2015, during the first days of the Ethereum Frontier era. The bytecode is identical to all other FirstCoin instances — a minimal coin with coinBalanceOf, sendCoin, and CoinTransfer event, compiled with Solidity v0.1.1.
At least nine total FirstCoin deployments occurred between August 8–11, 2015, from four different deployer addresses. The pattern — repeated deployment of the same tutorial-derived contract by different users — illustrates how the earliest Ethereum adopters learned smart contract development.
See the first instance (0x3c401b518252abe3bbbf898a44939699e7da1634) for full documentation.
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
This contract has verified source code on Etherscan.
View Source CodeShow source code (Solidity)
contract FirstCoin {
mapping (address => uint) public coinBalanceOf;
event CoinTransfer(address sender, address receiver, uint amount);
function FirstCoin(uint supply) {
coinBalanceOf[msg.sender] = 1000000;
}
function sendCoin(address receiver, uint amount) returns(bool sufficient) {
if (coinBalanceOf[msg.sender] < amount) {
return false;
}
coinBalanceOf[msg.sender] -= amount;
coinBalanceOf[receiver] += amount;
CoinTransfer(msg.sender, receiver, amount);
return true;
}
}