anchor.diff:           ({deactivate_cyclon}, state_active()) -> {'$gen_component', [{on_handler, Handler::on_inactive}], State::state_inactive()}.
   on_active({deactivate_cyclon}, {_Cache, _Node, _Cycles, TriggerState})  ->
       log:log(info, "[ Cyclon ~.0p ] deactivating...~n", [comm:this()]),
  -    rm_loop:unsubscribe(self()),
  +    rm_loop:unsubscribe(self(), fun rm_loop:subscribe_default_filter/2, fun cyclon:rm_send_changes/3),
       gen_component:change_handler({inactive, msg_queue:new(), TriggerState},
                                    on_inactive);
   
  
positive.code: % accepted messages of an active cyclon process
  -type(message() ::
      {cy_shuffle} |
      {rm_changed, OldNeighbors::nodelist:neighborhood(), NewNeighbors::nodelist:neighborhood()} |
      {check_state} |
      {cy_subset, SourcePid::comm:mypid(), PSubset::cyclon_cache:cache()} |
      {cy_subset_response, QSubset::cyclon_cache:cache(), PSubset::cyclon_cache:cache()} |
  
negative.code: % Miscellaneous
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  %% @doc Sends changes to a subscribed cyclon process when the neighborhood
  %%      changes.
  -spec rm_send_changes(Pid::comm:erl_local_pid(),
          OldNeighbors::nodelist:neighborhood(), NewNeighbors::nodelist:neighborhood()) -> ok.
  rm_send_changes(Pid, _OldNeighbors, NewNeighbors) ->
      comm:send_local(Pid, {rm_changed, nodelist:node(NewNeighbors)}).
  
  %% @doc Checks whether config parameters of the cyclon process exist and are
  %%      valid.
  -spec check_config() -> boolean().
  