anchor.diff:  	desc = "A machine used to deposit and withdraw station funds."
   	icon_screen = "vault"
   	icon_keyboard = "security_key"
  +	req_access = list(ACCESS_VAULT)
  +	///Whether the machine is currently being siphoned
   	var/siphoning = FALSE
  +	///While siphoning, how much money do we have? Will drop this once siphon is complete.
  +	var/syphoning_credits = 0
  +	///Whether siphoning is authorized or not (has access)
   	var/unauthorized = FALSE
  +	///Amount of time before the next warning over the radio is announced.
   	var/next_warning = 0
  +	///The amount of time we have between warnings
  +	var/minimum_time_between_warnings = 40 SECONDS
  +
  +	///The machine's internal radio, used to broadcast alerts.
   	var/obj/item/radio/radio
  +	///The channel we announce a siphon over.
   	var/radio_channel = RADIO_CHANNEL_COMMON
  -	var/minimum_time_between_warnings = 400
  -	var/syphoning_credits = 0
  +
  +	///What department to check to link our bank account to.
  +	var/account_department = ACCOUNT_CAR
  +	///Bank account we're connected to.
  +	var/datum/bank_account/synced_bank_account
   
   /obj/machinery/computer/bank_machine/Initialize(mapload)
   	. = ..()
  
positive.code: 
  /obj/machinery/computer/bank_machine/proc/start_siphon(mob/living/carbon/user)
  	siphoning = TRUE
  	unauthorized = TRUE
  	var/obj/item/card/id/card = user.get_idcard(hand_first = TRUE)
  	if(istype(card))
  		if(ACCESS_VAULT in card.GetAccess())
  			unauthorized = FALSE
  
negative.code: 
  /obj/machinery/computer/bank_machine/ui_data(mob/user)
  	var/list/data = list()
  
  	data["current_balance"] = synced_bank_account?.account_balance || 0
  	data["siphoning"] = siphoning
  	data["station_name"] = station_name()
  
  