anchor.diff:              Ret = rpc:call(Node, amoc_controller, remove_users, [N, ForceRemove]),
               remove_users([{Node, Ret} | Result], Count - N, ForceRemove, T)
       end.
  +
  +-spec update_settings_on_nodes(amoc_config:settings(), [node()]) -> {ok, any()} | {error, any()}.
  +update_settings_on_nodes(Settings, Nodes) ->
  +    Result = [{Node, update_settings_on_node(Settings, Node)} || Node <- Nodes],
  +    maybe_error(Result).
  +
  +-spec update_settings_on_node(amoc_config:settings(), node()) ->
  +          ok | {badrpc, any()} | {error, any()}.
  +update_settings_on_node(Settings, Node) ->
  +    rpc:call(Node, amoc_controller, update_settings, [Settings]).
   
   -spec stop_cluster() -> {ok, any()} | {error, any()}.
   stop_cluster() ->
  
positive.code:         {Error, _} -> Error
      end.
  
  -spec add(pos_integer()) -> {ok, any()}| {error, any()}.
  add(Count) ->
      add(Count, amoc_cluster:slave_nodes()).
  
  
negative.code:         Error -> Error
      end.
  
  -spec update_settings(amoc_config:settings()) -> {ok, any()} | {error, any()}.
  update_settings(Settings) ->
      update_settings(Settings, amoc_cluster:slave_nodes()).
  
  -spec update_settings(amoc_config:settings(), [node()]) -> {ok, any()} | {error, any()}.
  update_settings(Settings, Nodes) ->
      case check_nodes(Nodes) of
          ok -> update_settings_on_nodes(Settings, Nodes);
          Error -> Error
      end.
  
  -spec stop() -> {ok, any()} | {error, any()}.
  stop() ->
      stop_cluster().
  
  