anchor.diff:  		Reason :: normal | term().
   %% @doc Handle event received in `register' state.
   %% @private
  -install(timeout, #statedata{profile = Profile, callback = Callback} = State) ->
  +install(timeout, #statedata{profile = Profile,
  +		callback = Callback} = StateData) ->
   	case gen_event:add_sup_handler(ocs_event_log, ocs_event_log,
   			[self(), Profile, Callback]) of
   		ok ->
  -			{next_state, backoff, State};
  +			{next_state, installed, StateData};
   		{'EXIT', Reason} ->
  -			{stop, Reason, State}
  +			{stop, Reason, StateData}
   	end.
   
  --spec backoff(Event, State) -> Result
  -	when
  -		Event :: {Type, Resource, Category},
  -		Type :: create_bucket | delete_bucket | charge | depleted | accumulated
  -				| create_product | delete_product | create_service | delete_service
  -				| create_offer | delete_offer | create_resource | delete_resource
  -				| insert_gtt | delete_gtt | log_acct,
  -		Resource :: ocs_log:acct_event() | ocs_log:auth_event(),
  -		Category :: balance | product | service | resource | usage,
  -		State :: statedata(),
  +-spec installed(Event, StateData) -> Result
  +	when
  +		Event :: timeout | pos_integer(),
  +		StateData :: statedata(),
   		Result :: {next_state, NextStateName, NewStateData}
   			| {next_state, NextStateName, NewStateData, timeout}
   			| {next_state, NextStateName, NewStateData, hibernate}
  
positive.code: -export([start_link/0]).
  
  %% export the ocs_event_log_fsm states
  -export([install/2, backoff/2]).
  
  %% export the callbacks needed for gen_fsm behaviour
  -export([init/1, handle_event/3, handle_sync_event/4,
  
negative.code: %% @see //stdlib/gen_fsm:handle_info/3
  %% @private
  %%
  handle_info({gen_event_EXIT, _Handler, {swapped, _, _}},
  		installed, StateData) ->
  	{next_state, installed, StateData};
  handle_info({gen_event_EXIT, _Handler, Reason}, installed,
  		#statedata{backoff = Time} = StateData) ->
  	NewStateData = StateData#statedata{reason = Reason},
  	{next_state, backoff, NewStateData, Time};
  handle_info({'EXIT', _Handler, Reason}, _StateName, StateData) ->
  	{stop, Reason, StateData}.
  
  -spec terminate(Reason, StateName, StateData) -> any()
  