anchor.diff:      Index.
   
   -spec init_ring([node()], pos_integer()) -> ring().
  -init_ring([_] = Nodes, LabelAssociatedNodesCount) ->
  -    #ring{nodes_assigned_per_label = LabelAssociatedNodesCount, all_nodes = Nodes};
  -init_ring(Nodes, LabelAssociatedNodesCount) ->
  +init_ring([_] = Nodes, NodesAssignedPerLabel) ->
  +    #ring{nodes_assigned_per_label = NodesAssignedPerLabel, all_nodes = Nodes};
  +init_ring(Nodes, NodesAssignedPerLabel) ->
       NodeCount = length(Nodes),
       [Node0 | _] = Nodes,
       InitialCHash = chash:fresh(NodeCount, Node0),
  
positive.code: 
  %%--------------------------------------------------------------------
  %% @doc
  %% Initialize ring. Requires nodes' list and information about number of nodes associated with each label.
  %% @end
  %%--------------------------------------------------------------------
  -spec init([node()], pos_integer()) -> ok | {error, term()}.
  init(Nodes, LabelAssociatedNodesCount) ->
      case is_ring_initialized() of
          false ->
              Ring = init_ring(Nodes, LabelAssociatedNodesCount),
              set_ring(Ring),
              replicate_ring_to_nodes(Nodes);
          _ ->
  
negative.code:         chash:update(get_nth_index(I, CHashAcc), Node, CHashAcc)
      end, InitialCHash, lists:zip(lists:seq(1, NodeCount), Nodes)),
  
      #ring{chash = CHash, nodes_assigned_per_label = NodesAssignedPerLabel, all_nodes = Nodes}.
  
  -spec replicate_ring_to_nodes([node()]) -> ok | {error, term()}.
  replicate_ring_to_nodes(Nodes) ->
  