anchor.diff:  %% @private
   eap_start(timeout, #statedata{eap_id = EapID,
   		session_id = SessionId, auth_req_type = AuthReqType,
  -		start = #diameter_eap_app_DER{'EAP-Payload' = []} = Request,
  +		request = #diameter_eap_app_DER{'EAP-Payload' = []} = Request,
   		origin_host = OHost, origin_realm = ORealm,
   		diameter_port_server = PortServer, sup = Sup} = StateData) ->
   	Children = supervisor:which_children(Sup),
   	{_, AucFsm, _, _} = lists:keyfind(ocs_eap_aka_auc_fsm, 1, Children),
   	EapData = ocs_eap_codec:eap_aka(#eap_aka_identity{fullauth_id_req = true}),
  -	NewStateData = StateData#statedata{start = undefined,
  +	NewStateData = StateData#statedata{request = undefined,
   			auc_fsm = AucFsm, id_req = full},
   	EapPacket = #eap_packet{code = request,
   			type = ?AKA, identifier = EapID, data = EapData},
  
positive.code: 	{next_state, identity, NewStateData, ?TIMEOUT};
  eap_start(timeout, #statedata{sup = Sup, eap_id = EapID,
  		session_id = SessionId, auth_req_type = AuthReqType,
  		start = #diameter_eap_app_DER{'EAP-Payload' = EapMessage} = Request,
  		origin_host = OHost, origin_realm = ORealm,
  		diameter_port_server = PortServer,
  		trusted = Trusted, keys = Keys} = StateData) ->
  	Children = supervisor:which_children(Sup),
  	{_, AucFsm, _, _} = lists:keyfind(ocs_eap_aka_auc_fsm, 1, Children),
  	NewStateData = StateData#statedata{start = undefined, auc_fsm = AucFsm},
  	try
  		case ocs_eap_codec:eap_packet(EapMessage) of
  			#eap_packet{code = response, type = ?Identity,
  
negative.code: 				[IMSI | _] = binary:split(PermanentID, <<$@>>, []),
  				% @todo handle DIAMETER ANID AVP
  				gen_fsm:send_event(AucFsm, {self(), IMSI, "WLAN"}),
  				NewStateData = StateData#statedata{request = Request,
  						identity = Identity},
  				{next_state, vector, NewStateData, ?TIMEOUT};
  			#eap_aka_identity{identity = <<?TEMP_TAG:6, _/bits>> = Identity}
  					when IdReq == full ->
  