anchor.diff:  %%-----------------------------------------------------------------
   %% Child/State manipulating functions.
   %%-----------------------------------------------------------------
  -state_del_child(#child{pid = Pid}, State) when ?is_simple(State) ->
  -    NDynamics = ?DICT:erase(Pid, State#state.dynamics),
  +
  +save_dynamic_child(temporary, Pid, _, #state{dynamics = Dynamics} = State) ->
  +    State#state{dynamics = [Pid | dynamics_db(temporary, Dynamics)]};
  +save_dynamic_child(RestartType, Pid, Args, #state{dynamics = Dynamics} = State) ->
  +    State#state{dynamics = ?DICT:store(Pid, Args, dynamics_db(RestartType, Dynamics))}.
  +
  +dynamics_db(temporary, undefined) ->
  +    [];
  +dynamics_db(_, undefined) ->
  +    ?DICT:new();
  +dynamics_db(_,Dynamics) ->
  +    Dynamics.
  +
  +dynamic_child_args(_, Dynamics) when is_list(Dynamics)->
  +    {ok, undefined};
  +dynamic_child_args(Pid, Dynamics) ->
  +    ?DICT:find(Pid, Dynamics).
  +
  +state_del_child(#child{pid = Pid, restart_type = temporary}, State) when ?is_simple(State) ->
  +    NDynamics = lists:delete(Pid, dynamics_db(temporary, State#state.dynamics)),
  +    State#state{dynamics = NDynamics};
  +state_del_child(#child{pid = Pid, restart_type = RType}, State) when ?is_simple(State) ->
  +    NDynamics = ?DICT:erase(Pid, dynamics_db(RType, State#state.dynamics)),
       State#state{dynamics = NDynamics};
   state_del_child(Child, State) ->
       NChildren = del_child(Child#child.name, State#state.children),
  
positive.code: -spec handle_call(call(), term(), state()) -> {'reply', term(), state()}.
  
  handle_call({start_child, EArgs}, _From, State) when ?is_simple(State) ->
      #child{mfargs = {M, F, A}} = hd(State#state.children),
      Args = A ++ EArgs,
      case do_start_child_i(M, F, Args) of
  	{ok, Pid} ->
  	    NState = State#state{dynamics = 
  				 ?DICT:store(Pid, Args, State#state.dynamics)},
  	    {reply, {ok, Pid}, NState};
  	{ok, Pid, Extra} ->
  	    NState = State#state{dynamics = 
  				 ?DICT:store(Pid, Args, State#state.dynamics)},
  	    {reply, {ok, Pid, Extra}, NState};
  	What ->
  	    {reply, What, State}
  
negative.code: -record(state, {name,
  		strategy               :: strategy(),
  		children = []          :: [child()],
  		dynamics               :: ?DICT() | list(),
  		intensity              :: non_neg_integer(),
  		period                 :: pos_integer(),
  		restarts = [],
  