ETH Price: $1,876.10 (+0.85%)

Transaction Decoder

Block:
3938014 at Jun-27-2017 01:56:09 PM +UTC
Transaction Fee:
0.00175797 ETH $3.30
Gas Used:
34,470 Gas / 51 Gwei

Account State Difference:

  Address   Before After State Difference Code
0x4E0b0920...E2e0A21d6
8.40515488 Eth
Nonce: 1
0.00515488 Eth
Nonce: 2
8.4
(F2Pool Old)
3,793.180173850922213187 Eth3,793.181931820922213187 Eth0.00175797
0xFBb1b73C...f520fBB98
(Bittrex)
91,802.388082428376040878 Eth91,810.786324458376040878 Eth8.39824203

Execution Trace

ETH 8.39824203 ReplaySafeSplit.split( targetFork=0xFBb1b73C4f0BDa4f67dcA266ce6Ef42f520fBB98, targetNoFork=0xe592b0d8bAa2cB677034389b76A71B0D1823E0d1 ) => ( True )
  • AmIOnTheFork.CALL( )
  • ETH 8.39824203 Bittrex.CALL( )
    File 1 of 2: ReplaySafeSplit
    contract AmIOnTheFork {
        function forked() constant returns(bool);
    }
    
    contract ReplaySafeSplit {
        // Fork oracle to use
        AmIOnTheFork amIOnTheFork = AmIOnTheFork(0x2bd2326c993dfaef84f696526064ff22eba5b362);
    
        event e(address a);
    	
        // Splits the funds into 2 addresses
        function split(address targetFork, address targetNoFork) returns(bool) {
            if (amIOnTheFork.forked() && targetFork.send(msg.value)) {
    			e(targetFork);
                return true;
            } else if (!amIOnTheFork.forked() && targetNoFork.send(msg.value)) {
    			e(targetNoFork);		
                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;
        }
    }