anchor.diff:  
   -spec init_per_round(atom(), [binary()]) -> ok.
   init_per_round(Fun, Keys) when Fun =:= scard;
  -                               Fun =:= sismember ->
  +                               Fun =:= sismember;
  +                               Fun =:= smembers;
  +                               Fun =:= smove ->
     sadd(Keys),
     ok;
   init_per_round(Fun, Keys) when Fun =:= sinter_min;
  
positive.code:          init/0, init_per_testcase/1, init_per_round/2,
           quit/0, quit_per_testcase/1, quit_per_round/2]).
  -export([sadd/1, scard/1, sdiff/1, sdiffstore/1, sinter_min/1, sinter_n/1, sinter_m/1,
           sinterstore_min/1, sinterstore_n/1, sinterstore_m/1, sismember/1]).
  
  %% ====================================================================
  %% External functions
  
negative.code:   catch edis_db:run(
      edis_db:process(0),
      #edis_command{cmd = <<"SISMEMBER">>, args = [?KEY, Key], group = sets, result_type = boolean}).
  
  -spec smembers([binary()]) -> [binary()].
  smembers(_) ->
    catch edis_db:run(
      edis_db:process(0),
      #edis_command{cmd = <<"SMEMBERS">>, args = [?KEY], group = sets, result_type = multi_bulk}).
  
  -spec smove([binary()]) -> boolean().
  smove([Key|_]) ->
    catch edis_db:run(
      edis_db:process(0),
      #edis_command{cmd = <<"SMOVE">>, args = [?KEY, ?KEY2, Key], group = sets, result_type = boolean}).
  