anchor.diff:      case ?RT:update(OldRT, OldNeighbors, NewNeighbors) of
           {trigger_rebuild, NewRT} ->
               %% ?RT:check(OldRT, NewRT, OldNeighbors, NewNeighbors, true),
  -            NewERT = rt_chord:check_tmp(OldRT, NewRT, OldERT, OldNeighbors, NewNeighbors, true), % TODO replace _tmp and rt_chord
  +            NewERT = ?RT:check_tmp(OldRT, NewRT, OldERT, OldNeighbors, NewNeighbors, true), % TODO replace _tmp
               % trigger immediate rebuild
               gen_component:post_op({periodic_rt_rebuild}, {NewNeighbors, NewRT, NewERT, DHTPid})
           ;
           {ok, NewRT} ->
               %% ?RT:check(OldRT, NewRT, OldNeighbors, NewNeighbors, true),
  -            NewERT = rt_chord:check_tmp(OldRT, NewRT, OldERT, OldNeighbors, NewNeighbors, true), % TODO replace _tmp and rt_chord
  +            NewERT = ?RT:check_tmp(OldRT, NewRT, OldERT, OldNeighbors, NewNeighbors, true), % TODO replace _tmp
               {NewNeighbors, NewRT, NewERT, DHTPid}
       end;
   %% userdevguide-end rt_loop:update_rt
  
positive.code:     % ==> change wrap_message/4: instead of State, use Neighbors and RT-State!
      WrappedMsg = Msg,
      % NOTE: chord-like routing requires routing through predecessor -> only decide at pred:
      case rt_chord:next_hop(Neighbors, ERT, Key) of
          succ ->
              %% TODO: do I need a WrappedMsg here ??!
              comm:send_local(DHTPid, {lookup_decision, Key, Hops, WrappedMsg});
  
negative.code:     % log:log(debug, "[ RT ] stabilize"),
      NewRT = ?RT:init_stabilize(Neighbors, OldRT),
      %% ?RT:check(OldRT, NewRT, Neighbors, true),
      NewERT = ?RT:check_tmp(OldRT, NewRT, OldERT, Neighbors, true), % TODO replace _tmp
      {Neighbors, NewRT, NewERT, DHTPid};
  %% userdevguide-end rt_loop:trigger
  
  