anchor.diff:              %% end
       end.
   
  +%% @doc Helper for on/3 and on_traced_msg/3 handling gen_component-provided
  +%%      default messages as well as user-messages.
  +-spec handle_message(comm:message() | comm:group_message(), user_state(), handler())
  +        -> user_state() | kill | unknown_event |
  +           {'$gen_component', Commands::[{on_handler, Handler::handler()} |
  +                                         {post_op, comm:message()}], user_state()}.
  +handle_message({ping, Pid}, UState, _Handler) ->
  +    %% generic ping message
  +    comm:send(Pid, {pong, pid_groups:my_pidname()}, [{channel, prio}]),
  +    UState;
  +handle_message({?send_to_group_member, Processname, Msg}, UState, _Handler) ->
  +    %% forward a message to group member by its process name
  +    %% initiated via comm:send/3 with group_member
  +    Pid = pid_groups:get_my(Processname),
  +    case Pid of
  +        failed -> ok;
  +        _      -> comm:send_local(Pid, Msg)
  +    end,
  +    UState;
  +handle_message(Msg, UState, Handler) ->
  +    Handler(Msg, UState).
   
   %%%%%%%%%%%%%%%%%%%%
   %% Attention!:
  
positive.code:                    gc_bpactive/1, gc_set_bpactive/2,
                     gc_bpqueue/1, gc_set_bpqueue/2,
                     gc_bpstepped/1, gc_set_bpstepped/2,
                     gc_bpstepper/1, gc_set_bpstepper/2
                    ]}).
  
  -include("scalaris.hrl").
  
negative.code: -spec on(comm:message() | comm:group_message(), user_state(), gc_state())
          -> ok.
  on(GCMsg, UState, GCState)
    when is_tuple(GCMsg) andalso '$gen_component' =:= element(1, GCMsg) ->
      on_gc_msg(GCMsg, UState, GCState);
  on(Msg, UState, GCState) ->
      T1GCState = on_bp(Msg, UState, GCState),
      case T1GCState of
  