anchor.diff:  %%% Callbacks
   %%%===================================================================
   
  --spec init(Args :: term()) -> {ok, State :: #state{}} |
  -                              {ok, State :: #state{}, timeout() | hibernate} |
  +-spec init(Args :: term()) -> {ok, State :: state()} |
  +                              {ok, State :: state(), timeout() | hibernate} |
                                 {stop, Reason :: term()} | ignore.
   init([Supervisor, Interaction, SP, Cf]) ->
       mas_misc_util:seed_random(),
  
positive.code:     {noreply, cleaning, ?CLOSING_TIMEOUT}.
  
  
  -spec handle_info(Info :: timeout() | term(), State :: #state{})
                   -> {noreply, NewState :: #state{}} |
                      {noreply, NewState :: #state{}, timeout() | hibernate} |
                      {stop, Reason :: term(), NewState :: #state{}}.
  handle_info(timeout, cleaning) ->
      {stop, normal, cleaning};
  
  
negative.code: %%% Internal functions
  %%%===================================================================
  
  -spec perform_interaction([agent()], [pid()], state()) -> state().
  perform_interaction(Waitlist, Pids, St) ->
      {Cf, SP} = {St#state.config, St#state.sim_params},
      NrOfAgents = length(Waitlist),
  