anchor.diff:  	    end
       end.
   
  -is_dynamic_pid(Pid, Dynamics) ->
  -    case ?SETS:is_set(Dynamics) of
  -	true ->
  -	    ?SETS:is_element(Pid, Dynamics);
  -	false ->
  -	    ?DICTS:is_key(Pid, Dynamics)
  -    end.
  +is_dynamic_pid(Pid, {dict, Dynamics}) ->
  +    ?DICTS:is_key(Pid, Dynamics);
  +is_dynamic_pid(Pid, {set, Dynamics}) ->
  +    ?SETS:is_element(Pid, Dynamics);
  +is_dynamic_pid(_Pid, undefined) ->
  +    false.
   
   replace_child(Child, State) ->
       Chs = do_replace_child(Child, State#state.children),
  
positive.code: 
  restart_child(Pid, Reason, #state{children = [Child]} = State) when ?is_simple(State) ->
      RestartType = Child#child.restart_type,
      case dynamic_child_args(Pid, dynamics_db(RestartType, State#state.dynamics)) of
  	{ok, Args} ->
  	    {M, F, _} = Child#child.mfargs,
  	    NChild = Child#child{pid = Pid, mfargs = {M, F, Args}},
  
negative.code: 					       State#state.dynamics)),
      case do_start_child_i(M, F, A) of
  	{ok, Pid} ->
              DynamicsDb = {dict, ?DICTS:store(Pid, A, Dynamics)},
  	    NState = State#state{dynamics = DynamicsDb},
  	    {ok, NState};
  	{ok, Pid, _Extra} ->
              DynamicsDb = {dict, ?DICTS:store(Pid, A, Dynamics)},
  	    NState = State#state{dynamics = DynamicsDb},
  	    {ok, NState};
  	{error, Error} ->
              DynamicsDb = {dict, ?DICTS:store(restarting(OldPid), A, Dynamics)},
  	    NState = State#state{dynamics = DynamicsDb},
  	    report_error(start_error, Error, Child, State#state.name),
  	    {try_again, NState}
      end;
  