anchor.diff:  	IDResPacket2 = radius:codec(IDResponse2),
   	ok = gen_udp:send(Socket, AuthAddress, AuthPort, IDResPacket2),
   	{ok, {_Address, _Port, CommitPacket}} = gen_udp:recv(Socket, 0),
  -	#radius{code = ?AccessChallenge, id = Id, authenticator = _Authenticator,
  +	#radius{code = ?AccessChallenge, id = 2, authenticator = _RAuthenticator,
   		attributes = CommitReqAttributes} = radius:codec(CommitPacket),
   	CommitReqAtt = radius_attributes:codec(CommitReqAttributes),
   	{ok, CommitEAPPacket} = radius_attributes:find(?EAPMessage, CommitReqAtt),
  
positive.code: 	IDResPacket2 = radius:codec(IDResponse2),
  	ok = gen_udp:send(Socket, AuthAddress, AuthPort, IDResPacket2),
  	{ok, {_Address, _Port, CommitPacket}} = gen_udp:recv(Socket, 0),
  	#radius{code = ?AccessChallenge, id = Id, authenticator = _Authenticator,
  		attributes = CommitReqAttributes} = radius:codec(CommitPacket),
  	CommitReqAtt = radius_attributes:codec(CommitReqAttributes),
  	{ok, CommitEAPPacket} = radius_attributes:find(?EAPMessage, CommitReqAtt),
  
negative.code: 		ocs_eap_codec:eap_packet(CommitEAPPacket),
  	#eap_pwd{length = false, more = false, pwd_exch = commit,
  		data = CommitReqData} = ocs_eap_codec:eap_pwd(CommitData),
  	#eap_pwd_commit{element = _Element_S, scalar = _Scalar_S} = ocs_eap_codec:eap_pwd_commit(CommitReqData),
  	P_Rand = crypto:rand_uniform(1, ?R),
  	{ok, Password, _Attr} = ocs:find_subscriber(PeerID),
  	PWE = ocs_eap_pwd:compute_pwe(Token, PeerID, ServerID, Password),
  	{Scalar_P, Element_P} = ocs_eap_pwd:compute_scalar(<<P_Rand:256>>, PWE),
  	CommitRespBody = #eap_pwd_commit{scalar = Scalar_P, element = Element_P},
  	CommitRespBodyData = ocs_eap_codec:eap_pwd_commit(CommitRespBody),
  