anchor.diff:                          case state:is_empty(ReplayState) of
   			    %% If in normal mode, run search algorithm to
   			    %% find next process to be run.
  -                            true -> {search(Info), ReplayState};
  +                            true -> {search(Context), ReplayState};
   			    %% If in replay mode, next process to be run
   			    %% is defined by ReplayState.
                               false -> state:trim(ReplayState)
                           end,
  -		    NewInfo = run(Next, Info),
  -		    driver(NewInfo, Rest)
  +		    NewContext = run(Next, Context),
  +		    driver(NewContext, Rest)
   	    end
       end.
   
  
positive.code: %% details : A boolean being false when running a normal run and
  %%           true when running a replay and need to send detailed
  %%           info to the replay_logger.
  -record(info, {active  :: set(),
                 blocked :: set(),
  	       error = no_error  :: {error_info(), exit_reason()} | 'no_error',
                 state   :: state:state(),
  	       details :: boolean()}).
  
  %% Internal message format
  %%
  
negative.code: 	true -> replay_logger:log({block, Lid});
  	false -> continue
      end,
      Context#context{blocked = NewBlocked};
  
  %% Exit message handler.
  %% Discard the exited process (don't add to any set).
  %% If the exited process is irrelevant (i.e. has no LID assigned),
  %% call the dispatcher.
  handler(exit, Pid, #context{details = Det} = Context, Reason) ->
      NewReason = shorten_reason(Reason),
      Lid = lid:from_pid(Pid),
      case Lid of
  	not_found ->
  	    ?debug_2("Process ~s (pid = ~p) exits (~p).~n",
                       [Lid, Pid, NewReason]),
  	    dispatcher(Context);
  	_Any ->
  	    ?debug_1("Process ~s exits (~p).~n", [Lid, NewReason]),
  	    case Det of
  