Back to Home

ShapeShift Chain-Split Splitter

0xfdc6a6ad6711...3d601ee2dbbf
DAO ForkContract #21KExact Bytecode MatchEdit this contract
Deployed July 26, 2016 (9 years ago)Block 1,957,123

ShapeShift conditional ETH splitter (Jul 26, 2016). split(address,uint) routes ETH to a specified address — but only on the ETC chain (where forked() returns fa...

DAO Fork EraVerified Source

Historical Significance

The only contract in ShapeShifts July 2016 chain-split family with an explicit callable function rather than a pure fallback. The double forked() oracle call pattern may reflect caution during an operationally uncertain post-fork environment.

Context

All four ShapeShift chain-split contracts (0xa2d5c5, 0x3e7756, 0x89afcc, 0xfdc6a6) were deployed by the same wallet (0x9e6316f44baeeee5d41a1070516cc5fa47baf227) between July 24-26, 2016 -- during the six days between the DAO hard fork and when replay protection via EIP-155 was broadly adopted. ShapeShift, funded through a Genesis allocation of approximately 36,000 ETH traceable to Erik Voorhees, was among the first exchanges to deploy on-chain routing logic in response to the fork.

Key Facts
Deployment Block
1,957,123
Deployment Date
Jul 26, 2016, 06:00 PM
Code Size
301.0 B
Gas at Deploy
156,460

Description

Deployed July 26, 2016, the same day as the ShapeShiftReceiver twins. The split() function takes a target address and ETH amount, calls the forked() oracle twice to verify chain state, and routes funds only on the ETC chain. On the ETH chain (where forked() returns true), it returns false immediately without sending. The double forked() call pattern — first to short-circuit if on ETH, second to confirm before sending — appears intentional for safety. Deployed alongside the two ShapeShiftReceiver contracts within the same hour.

Source Verified

SolidityExact bytecode match(301 bytes)
Compiler: solc v0

Exact runtime bytecode match (301 bytes). The two forked() calls are present in source — first call short-circuits if on ETH chain, second verifies before sending on ETC chain. Matches solc v0.2.1 through v0.3.5 with optimizer.

Bytecode Overview

Opcodes301
Unique Opcodes53
Jump Instructions15
Storage Operations2

External Links