anchor.diff:    ReadPref = maps:get(readopts, Args, <<"primary">>),
     mc_action_man:read(Connection, #'query'{
       collection = Coll,
  -    selector = Selector#{<<"$readPreference">> => ReadPref},
  +    selector = #{<<"$query">> => Selector, <<"$readPreference">> => ReadPref},
       projector = Projector,
       skip = Skip,
       batchsize = BatchSize
  
positive.code: -spec count(pid(), collection(), selector(), map()) -> integer().
  count(Connection, Coll, Selector, Args = #{limit := Limit}) when Limit > 0 ->
    ReadPref = maps:get(readopts, Args, <<"primary">>),
    do_count(Connection, {<<"count">>, Coll, <<"query">>, Selector#{<<"$readPreference">> => ReadPref}, <<"limit">>, Limit});
  count(Connection, Coll, Selector, Args) ->
    ReadPref = maps:get(readopts, Args, <<"primary">>),
    do_count(Connection, {<<"count">>, Coll, <<"query">>, Selector#{<<"$readPreference">> => ReadPref}}).
  
  %% @doc Create index on collection according to given spec.
  %%      The key specification is a bson documents with the following fields:
  
negative.code:   ReadPref = maps:get(readopts, Args, <<"primary">>),
    mc_action_man:read_one(Connection, #'query'{
      collection = Coll,
      selector = #{<<"$query">> => Selector, <<"$readPreference">> => ReadPref},
      projector = Projector,
      skip = Skip,
      batchsize = BatchSize
  