anchor.diff:              CHash = lists:foldl(fun({I, Node}, CHashAcc) ->
                   chash:update(get_nth_index(I, CHashAcc), Node, CHashAcc)
               end, InitialCHash, lists:zip(lists:seq(1, length(Nodes)), Nodes)),
  -            Ring = #ring{type = multi_node, chash = CHash},
  +            KeyConnectedNodes = ctool:get_env(key_connected_nodes, 1),
  +            Ring = #ring{type = multi_node, chash = CHash, key_connected_nodes = KeyConnectedNodes},
               set_chash_ring(Ring);
           _ ->
               ok
  
positive.code: %% @doc
  %% Initialize chash ring
  %% @end
  %%--------------------------------------------------------------------
  -spec init([node()]) -> ok.
  init([Node]) ->
      set_chash_ring(#ring{type = single_node, chash = Node});
  
negative.code: 
  %%--------------------------------------------------------------------
  %% @doc
  %% Sets information about number of nodes connected with key.
  %% @end
  %%--------------------------------------------------------------------
  -spec set_key_connected_nodes(pos_integer()) -> ok.
  set_key_connected_nodes(Num) ->
      ctool:set_env(key_connected_nodes, Num),
      Ring = get_chash_ring(),
      set_chash_ring(Ring#ring{key_connected_nodes = Num}).
  
  %%--------------------------------------------------------------------
  %% @doc
  %% Get node that is responsible for the data labeled with given term.
  %% Throws error if node is broken.
  %% @end
  