anchor.diff:                                   [Response|Responses],
                                    StartTime,
                                    Timeout)
  -    after EffectiveTimeout ->
  +    after Timeout ->
               lists:foreach(fun({ReqId, Worker}) ->
                                     gen_server:cast(Worker, {cancel, ReqId})
                             end, ReqIds),
  
positive.code:                   _ ->
                        ?DEFAULT_TIMEOUT
                end,
      async_put_reply_loop(ReqIds, [], os:timestamp(), Timeout).
  
  
  %%%===================================================================
  
negative.code:     Error.
  
  %% Invoked by async_put_reply/2 to wait for all responses
  async_put_reply_loop([], Responses, _Timeout) ->
      Responses;
  async_put_reply_loop(ReqIds, Responses, Timeout) ->
      receive
          {'DOWN', ReqId, process, _Pid, _Reason} when is_reference(ReqId) ->
              async_put_reply_loop(lists:keydelete(ReqId, 1, ReqIds),
  