anchor.diff:      end.
   
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  +%% DB Generation
  +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  +
  +% @doc Inserts a list of keys replicated into the ring
  +-spec insert_random_db([?RT:key()], [db_parameter()]) -> ok.
  +insert_random_db(Keys, Params) ->
  +    FType = proplists:get_value(ftype, Params, update),
  +    FProb = proplists:get_value(fprob, Params, 50),    
  +    lists:foreach(
  +      fun(Key) ->
  +              RepKeys = ?RT:get_replica_keys(Key),
  +              %insert error?
  +              EKey = case FProb >= randoms:rand_uniform(1, 100) of
  +                         true -> util:randomelem(RepKeys);
  +                         _ -> null
  +                     end,
  +              %insert regen error
  +              {EType, WKeys} = case EKey =/= null of
  +                                   true ->
  +                                       EEType = case FType of 
  +                                                    mixed -> 
  +                                                        case randoms:rand_uniform(1, 2) of
  +                                                            1 -> update;
  +                                                            _ -> regen
  +                                                        end;
  +                                                    _ -> FType
  +                                                end,
  +                                       {EEType, 
  +                                        case EEType of
  +                                            regen -> [X || X <- RepKeys, X =/= EKey];
  +                                            _ -> RepKeys
  +                                        end};
  +                                   _ -> {FType, RepKeys}
  +                               end,
  +              %write replica group
  +              lists:foreach(
  +                fun(RKey) ->
  +                        DBEntry = db_entry:new(RKey, "2", 2),
  +                        api_dht_raw:unreliable_lookup(RKey, 
  +                                                      {set_key_entry, comm:this(), DBEntry}),
  +                        receive {set_key_entry_reply, _} -> ok end
  +                end,
  +                WKeys),
  +              %insert update error
  +              if EType =:= update andalso EKey =/= null ->
  +                     Msg = {set_key_entry, comm:this(), db_entry:new(EKey, "old", 1)},
  +                     api_dht_raw:unreliable_lookup(EKey, Msg),
  +                     receive {set_key_entry_reply, _} -> ok end;
  +                 true -> ok
  +              end     
  +      end, 
  +      Keys),
  +    ok.
  +
  +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  +%% Analysis Functions
  +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  +
  +
  +
  +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   %% Local Functions
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   
   get_node_list() ->
       mgmt_server:node_list(),
       receive
  -        {get_list_response, List} -> List
  +        {get_list_response, N} -> N
  +        after 2000 ->
  +            log:log(error,"[ ST ] Timeout getting node list from mgmt server"),
  +            throw('mgmt_server_timeout')
       end.
   
   get_symmetric_ids(NodeCount) ->
  
positive.code:         symmetric ->
              Ids = get_symmetric_ids(Size),
              admin:add_node([{first}, {{dht_node, id}, hd(Ids)}]),
              [admin:add_node_at_id(Id) || Id <- Ids]
      end,
      wait_for_stable_ring(),
      ok.
  
  -spec set_recon_method(rep_upd_recon:method()) -> ok | {error, term()}.
  set_recon_method(Method) ->
      config:write(rep_update_recon_method, Method),
      RM = config:read(rep_update_recon_method),
      case RM =:= Method of
          true -> ok;
  
negative.code: 
  -spec make_ring(ring_type(), pos_integer()) -> ok.
  make_ring(Type, Size) ->
      %if ring exists kill all   
      set_recon_method(bloom), 
      case Type of
          random -> 
              admin:add_node([{first}]),
  