anchor.diff:  handle_radius2(#subscriber{session_attributes = [], multisession = MultiSession}, StateData) ->
   	NewStateData = StateData#statedata{multisession = MultiSession},
   	handle_radius3(NewStateData);
  -handle_radius2(#subscriber{multisession = false, session_attributes = [SessionAttributes]},
  -		#statedata{subscriber = SubscriberId, client_address = Address, client_port = ListenPort,
  -		shared_secret = Secret, session_id = SessionID} = StateData) ->
  -	case pg2:get_closest_pid(ocs_radius_acct_port_sup) of
  -		{error, Reason} ->
  -			reject_radius(Reason, StateData);
  -		DiscSup ->
  -			try
  -				NAS = case {radius_attributes:find(?NasIpAddress, SessionAttributes),
  -							radius_attributes:find(?NasIdentifier, SessionAttributes)} of
  -					{{_, IP}, {error, _}} ->
  -						IP;
  -					{_, {ok, ID}} ->
  -						ID
  -				end,
  -				AcctSessionID = case radius_attributes:find(?AcctSessionId, SessionAttributes) of
  -					{ok, ASI} ->
  -						ASI;
  -					{error, _} ->
  -						undefined
  -				end,
  -				DiscArgs = [Address, NAS, SubscriberId, AcctSessionID, Secret,
  -						ListenPort, SessionAttributes, 1],
  -				StartArgs = [DiscArgs, []],
  -				NewStateData = StateData#statedata{multisession = false},
  -				case supervisor:start_child(DiscSup, StartArgs) of
  -					{ok, DiscFsm} ->
  -						link(DiscFsm),
  -						{next_state, request, NewStateData};
  -					{error, Reason} ->
  -						error_logger:error_report(["Failed to initiate session disconnect function",
  -								{module, ?MODULE}, {subscriber, SubscriberId}, {nas, NAS},
  -								{address, Address}, {session, SessionID}, {error, Reason}]),
  -						{next_state, request, NewStateData}
  -				end
  -			catch
  -				_:R ->
  -					reject_radius(R, StateData)
  -			end
  -	end.
  +handle_radius2(#subscriber{multisession = false, session_attributes = SessionAttributes}, StateData) ->
  +	NewStateData = StateData#statedata{multisession = false},
  +	start_disconnect(SessionAttributes, NewStateData),
  +	handle_radius3(NewStateData).
   %% @hidden
   handle_radius3(#statedata{subscriber = SubscriberId, multisession = MultiSession,
   		req_attr = RequestAttributes, res_attr = ResponseAttributes,
  
positive.code: 	end,
  	lists:filter(F, Attributes).
  
  
negative.code: %% @see //stdlib/gen_fsm:handle_info/3
  %% @private
  %%
  handle_info(_, StateName, StateData) ->
  	{next_state, StateName, StateData}.
  
  -spec terminate(Reason, StateName, StateData) -> any()
  	when
  