anchor.diff:  -spec init([ppspp_options:swarm_id() | ppspp_options:options()]) -> {ok,state()}.
   init([Swarm_id , Swarm_Options]) ->
       process_flag(trap_exit, true),
  +    gproc:add_local_property({?MODULE, Swarm_id}, Swarm_Options),
       ?INFO("swarm: ~p started with swarm_id:~p~n and options: ~p~n",
             [self(), Swarm_id , Swarm_Options]),
       {ok, #state{swarm_id = Swarm_id , options= Swarm_Options} }.
  
positive.code: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  %% @doc Looks up the swarm options for a given swarm id, either as string or binary.
  
  -spec get_swarm_options(string() | ppspp_options:swarm_id()) ->
      {ok, ppspp_options:options() } | {error, any()}.
  get_swarm_options(Swarm) ->
      case where_is(Swarm) of
          {ok, Pid} -> gen_server:call(Pid, get_swarm_options);
          Error -> Error
      end.
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
negative.code:     end.
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  %% @doc Looks up the pid for a given swarm id.
  
  -spec where_is(ppspp_options:swarm_id()) -> {ok, pid()} | {error,_}.
  where_is(Swarm_id) ->
      case Pid = gproc:lookup_local_name({?MODULE, Swarm_id}) of
          undefined -> {error, ppspp_swarm_worker_not_found};
  