anchor.diff:  		  State#state.children),
       {reply, Resp, State};
   
  -handle_call(count_children, _From, State) when ?is_simple(State) ->
  -    [#child{child_type = CT}] = State#state.children,
  +
  +handle_call(count_children, _From, #state{children = [#child{restart_type = temporary,
  +							     child_type = CT}]} = State)
  +  when ?is_simple(State) ->
  +    {Active, Count} =
  +	lists:foldl(fun(Pid, {Alive, Tot}) ->
  +			   if is_pid(Pid) -> {Alive+1, Tot +1};
  +			      true -> {Alive, Tot + 1} end
  +		   end, {0, 0}, dynamics_db(temporary, State#state.dynamics)),
  +    Reply = case CT of
  +		supervisor -> [{specs, 1}, {active, Active},
  +			       {supervisors, Count}, {workers, 0}];
  +		worker -> [{specs, 1}, {active, Active},
  +			   {supervisors, 0}, {workers, Count}]
  +	    end,
  +    {reply, Reply, State};
  +
  +handle_call(count_children, _From,  #state{children = [#child{restart_type = RType,
  +							      child_type = CT}]} = State)
  +  when ?is_simple(State) ->
       {Active, Count} =
   	?DICT:fold(fun(Pid, _Val, {Alive, Tot}) ->
   			   if is_pid(Pid) -> {Alive+1, Tot +1};
   			      true -> {Alive, Tot + 1} end
  -		   end, {0, 0}, State#state.dynamics),
  +		   end, {0, 0}, dynamics_db(RType, State#state.dynamics)),
       Reply = case CT of
   		supervisor -> [{specs, 1}, {active, Active},
   			       {supervisors, Count}, {workers, 0}];
  
positive.code: %%
  %% %CopyrightBegin%
  %%
  %% Copyright Ericsson AB 1996-2010. All Rights Reserved.
  %%
  %% The contents of this file are subject to the Erlang Public License,
  %% Version 1.1, (the "License"); you may not use this file except in
  
negative.code: 	    {reply, {error, not_found}, State}
      end;
  
  handle_call(which_children, _From, #state{children = [#child{restart_type = temporary,
  							     child_type = CT,
  							     modules = Mods}]} =
  		State) when ?is_simple(State) ->
      Reply = lists:map(fun(Pid) -> {undefined, Pid, CT, Mods} end, dynamics_db(temporary,
  									      State#state.dynamics)),
      {reply, Reply, State};
  
  handle_call(which_children, _From, #state{children = [#child{restart_type = RType,
  							 child_type = CT,
  							 modules = Mods}]} =
  		State) when ?is_simple(State) ->
      Reply = lists:map(fun({Pid, _}) -> {undefined, Pid, CT, Mods} end,
  		      ?DICT:to_list(dynamics_db(RType, State#state.dynamics))),
      {reply, Reply, State};
  
  handle_call(which_children, _From, State) ->
  