anchor.diff:      end,
       State;
   
  -on({get_chunk_response, {RestI, DBList}}, State =
  +on({rr_recon, data, DestI, {get_chunk_response, {RestI, DBList0}}}, State =
          #rr_recon_state{ stage = build_struct,
                           method = RMethod,
                           struct = Params,
                           dhtNodePid = DhtNodePid,
                           initiator = Initiator,
                           stats = Stats }) ->
  +    DBList = [case map_key_to_interval(KeyX, DestI) of
  +                  none -> encodeBlob(?MINUS_INFINITY, 0); %TODO should be filtered
  +                  Key -> encodeBlob(Key, VersionX)
  +              end || {KeyX, VersionX} <- DBList0],
       SyncI = proplists:get_value(interval, Params),
       ToBuild = ?IIF(RMethod =:= art, ?IIF(Initiator, merkle_tree, art), RMethod),
       {BuildTime, SyncStruct} =
  
positive.code:     {check_nodes, InitiatorPid::comm:mypid(), [merkle_cmp_request()]} |
      {check_nodes_response, [merkle_cmp_result()]} |
      %dht node response
      {get_state_response, intervals:interval()} |
      {get_chunk_response, db_chunk_enc()} |          
      %internal
      {shutdown, exit_reason()} | 
      {crash, DeadPid::comm:mypid()}.
  
negative.code: 
  -spec build_recon_struct(Method, DB_Chunk) -> Recon_Struct when
        is_subtype(Method,       method()),
        is_subtype(DB_Chunk,     {intervals:interval(), db_chunk_enc()}),
        is_subtype(Recon_Struct, bloom_recon_struct() | merkle_tree:merkle_tree() | art:art()).
  build_recon_struct(bloom, {I, DBItems}) ->
      Fpr = get_bloom_fpr(),
  