anchor.diff:      %       received after the {resolve_req, Hashes} message from the other node!
     when is_bitstring(BinKeyList) ->
       ?TRACE_RCV(_Msg, State),
  -    ?ALG_DEBUG("merkle (~s) - BinKeyListSize: ~B compressed",
  +    PrevFr_p2 = rr_recon_stats:get(fail_rate_p2, Stats), % from sync_receive
  +    NextFr_p2 = PrevFr_p2 + SyncSendFr_real,
  +    ?ALG_DEBUG("merkle (~s) - BinKeyListSize: ~B compressed~n"
  +               "  fail_rate(p2): ~p (rcv) + ~p (send) = ~p",
                  [?IIF(IsInitiator, "I", "NI"),
                   erlang:byte_size(
  -                  erlang:term_to_binary(BinKeyList, [compressed]))]),
  -    PrevFr_p2 = rr_recon_stats:get(fail_rate_p2, Stats), % from sync_receive
  -    NextFr_p2 = PrevFr_p2 + SyncSendFr_real,
  +                  erlang:term_to_binary(BinKeyList, [compressed])),
  +                PrevFr_p2, SyncSendFr_real, NextFr_p2]),
       Stats1  = rr_recon_stats:set([{fail_rate_p2, NextFr_p2}], Stats),
       ToSendKeys = [K || {K, _V} <- ToSend],
       NStats = if BinKeyList =:= <<>> andalso ToSendKeys =:= [] ->
  
positive.code:                                  EffectiveFr_L, HashCmpI, HashCmpL),
      NewState = State#rr_recon_state{struct = RTree, merkle_sync = SyncNew,
                                      stats = NStats},
      ?ALG_DEBUG("merkle (I) - CurrentNodes: ~B~n  fail_rate: ~p -> ~p",
                 [length(RTree), PrevUsedFr, UsedFr]),
  
      if RTree =:= [] ->
  
negative.code:                                  EffectiveFr_L, HashCmpI, HashCmpL),
      NewState = State#rr_recon_state{struct = RTree, merkle_sync = SyncNew,
                                      stats = NStats},
      ?ALG_DEBUG("merkle (NI) - CurrentNodes: ~B~n  fail_rate(p1): ~p -> ~p",
                 [length(RTree), PrevUsedFr, UsedFr]),
      send(DestReconPid, {?check_nodes_response, FlagsBin, MyMaxItemsCount}),
      
  