anchor.diff:                      {DoFB, [entry_to_kvv(Entry) | FBItems]};
                   true -> FB
               end,
  +    NewState = State#rr_resolve_state{ stats = NewStats, feedback = NewFB },
       if
           (Diff -1) =:= (RegenOk + UpdOk + UpdFail + RegenFail) ->
                   ?TRACE("UPDATED = ~p - Regen=~p - FB=~p", [Stats#resolve_stats.update_count, Stats#resolve_stats.regen_count, NewFB], State),
                   send_feedback(NewFB, Stats#resolve_stats.session_id),
  -                comm:send_local(self(), {shutdown, resolve_ok});
  -        true -> ok
  -    end,
  -    State#rr_resolve_state{ stats = NewStats, feedback = NewFB };
  -
  -on({shutdown, _}, #rr_resolve_state{ ownerPid = Owner,
  -                                     send_stats = SendStats,
  -                                     stats = Stats }) ->
  -    send_stats(SendStats, Stats),
  -    comm:send_local(Owner, {resolve_progress_report, self(), Stats}),
  -    kill.
  +                shutdown(resolve_ok, NewState);
  +        true -> NewState
  +    end;
  +
  +on({shutdown, Reason}, State) ->
  +    shutdown(Reason, State).
   
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   
  
positive.code: -type feedback() :: {nil | comm:mypid(),        %feedback destination adress
                       ?DB:kvv_list()}.
  
  -record(resolve_stats,
          {
           session_id       = null   :: rrepair:session_id() | null,
  
negative.code:   when element(1, Op) =:= interval_upd;
         element(1, Op) =:= interval_upd_send ->
      ISec = rr_recon:find_intersection(MyI, element(2, Op)),
      NewState = State#rr_resolve_state{ my_range = MyI },
      case intervals:is_empty(ISec) of
          false -> comm:send_local(DhtPid, {get_entries, self(), ISec}),
                   NewState;
          true  -> shutdown(resolve_abort, NewState)
      end;
  
  on({get_entries_response, EntryList}, State =
         #rr_resolve_state{ operation = {interval_upd, _I, KvvList},
  