anchor.diff:      true  -> split_trace(RevEarlier, [State|UntimedLate]);
       false -> {RevEarly, UntimedLate}
     end.
  +
  +%%------------------------------------------------------------------------------
   
   assign_happens_before(UntimedLate, RevEarly, State) ->
     assign_happens_before(UntimedLate, [], RevEarly, State).
  
positive.code:     end,
    State#scheduler_state{trace = NewRevTrace}.
  
  split_trace(RevTrace) ->
    split_trace(RevTrace, []).
  
  
negative.code:           false ->
              #trace_state{clock_map = ClockMap} = TraceState,
              EarlyActorClock = lookup_clock(EarlyActor, ClockMap),
              max_cv(Clock, clock_store(EarlyActor, EarlyIndex, EarlyActorClock))
          end
      end,
    update_clock(Rest, Event, NewClock, State).
  
  %%------------------------------------------------------------------------------
  
  plan_more_interleavings([], OldTrace, _SchedulerState) ->
    OldTrace;
  