anchor.diff:  -spec start_first_process(pid(), {atom(), atom(), [term()]}, timeout()) -> ok.
   
   start_first_process(Pid, {Module, Name, Args}, Timeout) ->
  +  request_system_reset(Pid),
     Pid ! {start, Module, Name, Args},
     wait_process(Pid, Timeout),
     ok.
  
positive.code:     ;{F,N} =:= {select, 3}
      ;{F,N} =:= {select_delete, 2}
      ->
    Tid = check_ets_access_rights(Name, {F,N}, Info),
    {erlang:apply(ets, F, [Tid|Args]), Info#concuerror_info{extra = Tid}};
  run_built_in(ets, delete, 1, [Name], Info) ->
    Tid = check_ets_access_rights(Name, {delete,1}, Info),
    #concuerror_info{ets_tables = EtsTables} = Info,
    ets:update_element(EtsTables, Tid, [{?ets_alive, false}]),
    ets:delete_all_objects(Tid),
    {true, Info#concuerror_info{extra = Tid}};
  run_built_in(ets, give_away, 3, [Name, Pid, GiftData],
               #concuerror_info{
                  event = #event{event_info = EventInfo} = Event
                 } = Info) ->
    Tid = check_ets_access_rights(Name, {give_away,3}, Info),
    #concuerror_info{ets_tables = EtsTables} = Info,
    {Alive, Info} = run_built_in(erlang, is_process_alive, 1, [Pid], Info),
    Self = self(),
  
negative.code: %%------------------------------------------------------------------------------
  
  check_ets_access_rights(Name, Op, Info) ->
    #concuerror_info{ets_tables = EtsTables, scheduler = Scheduler} = Info,
    case ets:match(EtsTables, ?ets_match_name(Name)) of
      [] -> error(badarg);
      [[Tid,Owner,Protection]] ->
  