anchor.diff:  	    RemainingTime
       end.
   
  -initial_state(local_mac) ->
  +initial_state(#data{mac_mode = local_mac}) ->
       init_assoc;
  -initial_state(split_mac) ->
  +initial_state(#data{mac_mode = split_mac}) ->
       init_auth.
   
   stop_eapol_timer(#data{eapol_timer = TRef} = Data)
  
positive.code: 
  handle_event({call, From}, {take_over, AC, StationCfg =
  				#station_config{
  				   bss = RadioMAC,
  				   mac_mode = MacMode}} = Event,
  	     State, #data{ac = OldAC, ac_monitor = OldACMonitor,
  			  data_path = _OldDataPath,
  			  radio_mac = OldRadioMAC, mac = ClientMAC} = Data0) ->
  
negative.code:     Data = send_eapol_key(Flags, KeyData, Data0),
      {keep_state, Data, [?IDLE_TIMEOUT]};
  
  handle_event(info, Event = {eapol_retransmit, _Msg}, connected, Data) ->
      lager:warning("in CONNECTED got EAPOL retransmit final TIMEOUT: ~p", [Event]),
      wtp_del_station(Data),
      aaa_disassociation(Data),
      {next_state, initial_state(Data), Data, ?SHUTDOWN_TIMEOUT};
  
  handle_event(cast, {start_gtk_rekey, RekeyCtl, GTKnew, IGTKnew}, connected,
  	  #data{gtk = GTK, igtk = IGTK} = Data)
  