anchor.diff:      end,
     ok = ets:foldl(Fold, ok, Processes),
     ok = concuerror_callback:start_first_process(FirstProcess, Target),
  -  ok = replay_prefix_aux(lists:reverse(Trace), State).
  -
  -replay_prefix_aux([_], _State) ->
  +  replay_prefix_aux(lists:reverse(Trace), State).
  +
  +replay_prefix_aux([_], State) ->
     %% Last state has to be properly replayed.
  -  ok;
  +  State;
   replay_prefix_aux([#trace_state{done = [Event|_], index = I}|Rest], State) ->
     #scheduler_state{logger = Logger} = State,
     ?trace_nl(Logger, "~s~n", [concuerror_printer:pretty_s({I, Event})]),
  
positive.code:     Last#trace_state{done = NewLastDone, wakeup_tree = NewLastWakeupTree},
    InitNewState =
      State#scheduler_state{trace = [InitNextTrace, NewLastTrace|Prev]},
    NewState =
      case Event#event.event_info of
        #exit_event{reason = Reason} = Exit when Reason =/= normal ->
          Warnings = InitNewState#scheduler_state.current_warnings,
          Stacktrace = Exit#exit_event.stacktrace,
          NewWarnings = [{crash, {Index, Actor, Reason, Stacktrace}}|Warnings],
          InitNewState#scheduler_state{current_warnings = NewWarnings};
        _ -> InitNewState
      end,
    {ok, update_special(Special, NewState)}.
  
  update_sleeping(#event{event_info = NewInfo}, Sleeping, State) ->
    #scheduler_state{logger = Logger} = State,
  
negative.code:            [A, B, Event, NewEvent]),
        error(replay_crashed)
    end,
    replay_prefix_aux(Rest, maybe_log_crash(Event, State, I)).
  
  %% XXX: Stub
  cleanup(#scheduler_state{logger = Logger, processes = Processes} = State) ->
  