anchor.diff:                     {req, Req, Timeout}
              end,
       gen_server:call(Pid, Call, CallTimeout).
  +
  +
   
   encode_2i(Value) when is_integer(Value) ->
       list_to_binary(integer_to_list(Value));
  
positive.code:          mapred_bucket/3, mapred_bucket/4, mapred_bucket/5,
           mapred_bucket_stream/5, mapred_bucket_stream/6,
           search/3, search/4, search/5, search/6,
           get_index_eq/4, get_index_range/5, get_index_eq/5, get_index_range/6,
           default_timeout/1,
           tunnel/4]).
  
  -export([init/1, handle_call/3, handle_cast/2, handle_info/2,
           terminate/2, code_change/3]).
  
  -type ctx() :: any().
  -type rpb_req() :: {tunneled, msg_id(), binary()} | atom() | tuple().
  -type rpb_resp() :: atom() | tuple().
  -type msg_id() :: non_neg_integer(). %% Request identifier for tunneled message types
  -type index_opt() :: {timeout, timeout()} | {call_timeout, timeout()}.
  -type index_opts() :: [index_opt()].
  -type range_index_opt() :: {return_terms, boolean()}.
  -type range_index_opts() :: [index_opt() | range_index_opt()].
  
negative.code: after_send(#request{msg = #rpblistkeysreq{}, ctx = {ReqId, _Client}}, State) ->
      {reply, {ok, ReqId}, State};
  after_send(#request{msg = #rpbmapredreq{}, ctx = {ReqId, _Client}}, State) ->
      {reply, {ok, ReqId}, State};
  after_send(#request{msg = #rpbindexreq{stream=true}, ctx = {ReqId, _Client}}, State) ->
      {reply, {ok, ReqId}, State};
  after_send(_Request, State) ->
      {noreply, State}.
  