anchor.diff:          end
       end, {[], FS}, FinishedFroms),
   
  -    {Location, State2} = flush_blocks(State1, ExcludeSessions),
  +    {AnsMap, State2} = flush_blocks(State1, ExcludeSessions, FinishedFroms),
       % Transfer on the fly statistics are being kept under `undefined` key in
       % `state.cached_stats` map, so take it from it and flush only jobs stats;
       % on the lfy transfer stats are flushed only on cache timer timeout
  
positive.code:     end,
      TransferIds = maps:with(FinishedFroms, FromToTransferId),
      [transfer:increase_files_transferred_counter(TID) || TID <- maps:values(TransferIds)],
      [gen_server2:reply(From, {ok, Location}) || From <- FinishedFroms],
      {noreply, State3#state{from_sessions = FS2}, ?DIE_AFTER};
  
  handle_info({FailedRef, complete, {error, disconnected}}, State) ->
  
negative.code:         StatsPerTransfer#{TransferId => NewTransferStats}
      end, State#state.cached_stats, TransferIds),
  
      NewCachedBlocks = lists:foldl(fun(From, Acc) ->
          FromBlocks = maps:get(From, Acc, []),
          maps:put(From, [Block | FromBlocks], Acc)
      end, State#state.cached_blocks, AffectedFroms),
  
      NewState = State#state{
          cached_stats = UpdatedStats,
          cached_blocks = NewCachedBlocks
      },
      set_caching_timers(NewState).
  
  