Transaction Hash:
Block:
4249093 at Sep-07-2017 07:29:25 PM +UTC
Transaction Fee:
0.001174985 ETH
$2.14
Gas Used:
33,571 Gas / 35 Gwei
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x167A9333...191aa6476 | (Coinone) | 175,426.178394967469770217 Eth | 175,456.175037867469770217 Eth | 29.9966429 | |
0x3a76CB01...a7c8d65A3 |
30.0116429 Eth
Nonce: 21
|
0.013825015 Eth
Nonce: 22
| 29.997817885 | ||
0xb2930B35...e543a0347
Miner
| (MiningPoolHub: Old Address) | 17,103.165282081523296362 Eth | 17,103.166457066523296362 Eth | 0.001174985 |
Execution Trace
ETH 29.9966429
ReplaySafeSplit.split( targetFork=0x167A9333BF582556f35Bd4d16A7E80E191aa6476, targetNoFork=0x571B7b69829CE2568B9BC3d32eaf7405DAb76b21 ) => ( True )
-
AmIOnTheFork.CALL( )
- ETH 29.9966429
Coinone.CALL( )
File 1 of 2: ReplaySafeSplit
File 2 of 2: AmIOnTheFork
contract RequiringFunds { modifier NeedEth () { if (msg.value <= 0 ) throw; _ } } contract AmIOnTheFork { function forked() constant returns(bool); } contract ReplaySafeSplit is RequiringFunds { //address private constant oracleAddress = 0x8128B12cABc6043d94BD3C4d9B9455077Eb18807; // testnet address private constant oracleAddress = 0x2bd2326c993dfaef84f696526064ff22eba5b362; // mainnet // Fork oracle to use AmIOnTheFork amIOnTheFork = AmIOnTheFork(oracleAddress); // Splits the funds into 2 addresses function split(address targetFork, address targetNoFork) NeedEth returns(bool) { // The 2 checks are to ensure that users provide BOTH addresses // and prevent funds to be sent to 0x0 on one fork or the other. if (targetFork == 0) throw; if (targetNoFork == 0) throw; if (amIOnTheFork.forked() // if we are on the fork && targetFork.send(msg.value)) { // send the ETH to the targetFork address return true; } else if (!amIOnTheFork.forked() // if we are NOT on the fork && targetNoFork.send(msg.value)) { // send the ETH to the targetNoFork address return true; } throw; // don't accept value transfer, otherwise it would be trapped. } // Reject value transfers. function() { throw; } }
File 2 of 2: AmIOnTheFork
contract AmIOnTheFork { bool public forked = false; address constant darkDAO = 0x304a554a310c7e546dfe434669c62820b7d83490; // Check the fork condition during creation of the contract. // This function should be called between block 1920000 and 1921200. // Approximately between 2016-07-20 12:00:00 UTC and 2016-07-20 17:00:00 UTC. // After that the status will be locked in. function update() { if (block.number >= 1920000 && block.number <= 1921200) { forked = darkDAO.balance < 3600000 ether; } } function() { throw; } }