anchor.diff:  
   -export([behaviour_info/1]).
   
  --export([start_link/2, start_link/3, start/4, start/2, start/3,wait_for_ok/0]).
  +-export([start_link/2, start_link/3, start/4, start/2, start/3,wait_for_ok/0,
  +         change_handler/2]).
   
   -export([kill/1, sleep/2]).
   
  
positive.code:                 {exception, Exception} ->
                      log:log(error,"Error: exception ~p during handling of ~p in module ~p~n",
                                [Exception, Message, Module]),
                      loop(Module, State, {Options, Slowest});
                  unknown_event ->
                      {NewState, NewComponentState} =
                          handle_unknown_event(Message, State,
                           {Options, Slowest},Module),
                      loop(Module, NewState, NewComponentState);
                  kill ->
                      ok;
                  NewState ->
                      %Stop = erlang:now(),
                      %Span = timer:now_diff(Stop, Start),
  
negative.code:             throw(Reason)
      end.
  
  loop(Module, On, State, {Options, Slowest} = ComponentState) ->
      receive
          {'$gen_component', sleep , Time} ->
              timer:sleep(Time),
              loop(Module, On, State, ComponentState);
          {'$gen_component', kill} ->
              ok;
          % handle failure detector messages
          {ping, Pid, Cookie} ->
              cs_send:send(Pid, {pong, Cookie}),
              loop(Module, On, State, ComponentState);
          %% forward a message to group member by its process name
          %% initiated via cs_send:send_to_group_member()
          {send_to_group_member, Processname, Msg} ->
  