anchor.diff:                        P, Debug_1, S, Events, NextState_NewData,
                         NextEventsR, Hibernate, TimeoutsR, Postponed,
                         Timers, Seen, TimeoutEvents,
  -                      TimeoutType, TimerRef)
  +                      TimeoutType, TimerRef, TimeoutMsg)
               end
       end.
   
  
positive.code: %% State transition to the same state
  %%
  loop_keep_state(
    P, Debug, #state{timers = {TimerRefs,TimeoutTypes} = Timers} = S,
    Events, NextState_NewData,
    NextEventsR, Hibernate, TimeoutsR, Postponed) ->
      %%
      %% Cancel event timeout
      %%
      case TimeoutTypes of
  	%% Optimization
  	%% - only cancel timer when there is a timer to cancel
  	#{timeout := TimerRef} ->
  	    %% Event timeout active
  	    loop_next_events(
                P, Debug, S,
                Events, NextState_NewData,
                NextEventsR, Hibernate, TimeoutsR, Postponed,
  	      cancel_timer_by_ref_and_type(
                  TimerRef, timeout, TimerRefs, TimeoutTypes));
  	_ ->
  	    %% No event timeout active
  	    loop_next_events(
  
negative.code:         _ ->
              %% (Re)start the timer
              TimerRef =
                  erlang:start_timer(Time, self(), TimeoutType, TimeoutOpts),
              case Debug of
                  ?not_sys_debug ->
                      loop_timeouts_register(
                        P, Debug, S, Events, NextState_NewData,
                        NextEventsR, Hibernate, TimeoutsR, Postponed,
                        Timers, Seen, TimeoutEvents,
                        TimeoutType, TimerRef, TimeoutMsg);
                  _ ->
                      {State,_Data} = NextState_NewData,
                      Debug_1 =
  