anchor.diff:  %% @doc Start a new {@link //ocs/ocs_eap_pwd_fsm. ocs_eap_pwd_fsm} session handler.
   %% @hidden
   start_fsm(AccessRequest, RadiusFsm, Address, Port, Secret, SessionID,
  -		#state{pwd_sup = Sup, handlers = Handlers} = State) ->
  +		#state{auth_type = eap_pwd, pwd_sup = Sup} = State) ->
  +		start_fsm1(AccessRequest, RadiusFsm, Address, Port, Secret, SessionID, Sup, State);
  +start_fsm(AccessRequest, RadiusFsm, Address, Port, Secret, SessionID,
  +		#state{auth_type = psk, simple_auth_sup = Sup} = State) ->
  +		start_fsm1(AccessRequest, RadiusFsm, Address, Port, Secret, SessionID, Sup, State).
  +%% @hidden
  +start_fsm1(AccessRequest, RadiusFsm, Address, Port, Secret, SessionID, Sup,
  +		#state{handlers = Handlers} = State) ->
   	StartArgs = [Address, Port, Secret, SessionID],
  -	ChildSpec = [StartArgs, []],
  +	ChildSpec = [StartArgs, [{debug, [trace]}]],
   	case supervisor:start_child(Sup, ChildSpec) of
  -		{ok, EapFsm} ->
  -			link(EapFsm),
  -			NewHandlers = gb_trees:insert(SessionID, EapFsm, Handlers),
  -			gen_fsm:send_event(EapFsm, {AccessRequest, RadiusFsm}),
  +		{ok, Fsm} ->
  +			link(Fsm),
  +			NewHandlers = gb_trees:insert(SessionID, Fsm, Handlers),
  +			gen_fsm:send_event(Fsm, {AccessRequest, RadiusFsm}),
   			State#state{handlers = NewHandlers};
   		{error, Reason} ->
   			error_logger:error_report(["Error starting EAP session handler",
   					{error, Reason}, {supervisor, Sup}, {address, Address},
   					{port, Port}, {session, SessionID}]),
   			State
  +
   	end.
  -
  
positive.code: 		case gb_trees:lookup(SessionID, Handlers) of
  			none ->	
  				try
  					NewState = start_fsm(AccessRequest, RadiusFsm,
  							Address, Port, Secret, SessionID, State),
  					{reply, {ok, wait}, NewState}
  				catch
  					_:_ ->
  						{reply, {error, ignore}, State}
  				end;
  			{value, EapFsm} ->
  				gen_fsm:send_event(EapFsm, {AccessRequest, RadiusFsm}),
  				{reply, {ok, wait}, State}
  		end
  	catch
  		_:_ ->
  			{reply, {error, ignore}, State}
  	end.
  
  
negative.code: 		{auth_port_sup :: pid(),
  		pwd_sup :: pid(),
  		ttls_sup :: pid(),
  		auth_type :: psk | eap_pwd | eap_ttls,
  		simple_auth_sup :: pid(),
  		socket :: inet:socket(),
  		address :: inet:ip_address(),
  