anchor.diff:                             method = bloom,
                              params = #bloom_recon_struct{p1e = P1E, bf = BF},
                              stats = Stats,             kv_list = KVList,
  -                           misc = [{my_db, MyDB}, {my_bf, MyBF}]}) ->
  +                           misc = [{item_count, MyDBSize}, {my_bf, MyBF}]}) ->
       ?TRACE1(_Msg, State),
  -    MyDB1 = [DBList | MyDB],
  +    MyDBSize1 = MyDBSize + length(DBList),
  +    MyBF1 = bloom:add_list(MyBF, DBList),
       % no need to map keys since the other node's bloom filter was created with
       % keys mapped to our interval
       BFCount = bloom:item_count(BF),
  
positive.code:             Hfs = ?REP_HFS:new(HfCount),
              BF = bloom:new_bin(BFBin, Hfs, BFCount),
              Params1 = Params#bloom_recon_struct{bf = BF},
              Misc1 = [{my_db, []},
                       {my_bf, bloom:new(erlang:max(1, erlang:bit_size(BFBin)), Hfs)}];
          merkle_tree ->
              #merkle_params{interval = MySyncI, reconPid = DestReconPid} = Params,
  
negative.code:            send_chunk_req(pid_groups:get_my(dht_node), self(),
                            RestI, get_max_items()),
             State#rr_recon_state{kv_list = NewKVList,
                                  misc = [{item_count, MyDBSize1}, {my_bf, MyBF1}]};
         true ->
             % here, the failure probability is correct (in contrast to the
             % non-initiator) since we know how many item checks we perform with
             % the BF and how many checks the non-initiator will perform on MyBF1
  