anchor.diff:      P1E_p1_bf_I_real = bloom_worst_case_failprob(BF, OtherBFCount, ExpDelta),
       MyNrChecks = ?IIF(OtherBFCount =:= 0, 0, MyItemCount),
       P1E_p1_bf_NI_real = bloom_worst_case_failprob(OtherBF, MyNrChecks, ExpDelta),
  -    P1E_p1_real = 1 - (1 - P1E_p1_bf_I_real) * (1 - P1E_p1_bf_NI_real),
  +    % pay attention to floating point issues near 1:
  +    % P1E_p1_real = 1 - (1 - P1E_p1_bf_I_real) * (1 - P1E_p1_bf_NI_real),
  +    P1E_p1_real = P1E_p1_bf_I_real + P1E_p1_bf_NI_real - P1E_p1_bf_I_real * P1E_p1_bf_NI_real,
       % NOTE: use left-over P1E after phase 1 (bloom) for phase 2 (trivial RC)
       P1E_p2 = calc_n_subparts_p1e(1, P1E, (1 - P1E_p1_real)),
       ?ALG_DEBUG("I:~.0p, P1E_bf=~p~n"
  
positive.code:                 erlang:byte_size(
                    erlang:term_to_binary(BinKeyList, [compressed]))]),
      PrevP1E_p2 = rr_recon_stats:get(p1e_phase2, Stats), % from sync_receive
      Stats1  = rr_recon_stats:set(
                  [{p1e_phase2, 1 - (1 - PrevP1E_p2) * SyncSendP0E_real}], Stats),
      NStats = if BinKeyList =:= <<>> ->
                      Stats1;
                  true ->
  
negative.code:     % * at non-initiator: inner(NI)-leaf(I)
      % note: 1 trivial proc may contain more than 1 leaf!
      {<<>>, <<>>, ToSend, ToResolve, ResolveNonEmpty, _TrivialProcsRest,
       _ThisP0E_upper_bound, ThisP1E_real} =
          lists:foldl(
            fun({MyMaxItemsCount, MyKVItems},
                {HashesKAcc, HashesVAcc, ToSend, ToResolve, ResolveNonEmpty,
                 TProcsAcc, P0EIn, P1EIn_real}) ->
                    {NHashesKAcc, NHashesVAcc, OBucketTree, _OrigDBChunkLen,
                     SigSize, VSize, ThisP0E, ThisP1E_real} =
                        merkle_resolve_retrieve_leaf_hashes(
                          HashesKAcc, HashesVAcc, P1EAllLeaves, TProcsAcc,
                          P0EIn, MyMaxItemsCount, P1EIn_real, length(MyKVItems),
                          BucketSizeBits, ExpDelta),
                    % calc diff (trivial sync)
                    ?DBG_ASSERT(MyKVItems =/= []),
  