anchor.diff:  
   /obj/machinery/computer/bank_machine/ui_data(mob/user)
   	var/list/data = list()
  -	var/datum/bank_account/D = SSeconomy.get_dep_account(ACCOUNT_CAR)
   
  -	if(D)
  -		data["current_balance"] = D.account_balance
  -	else
  -		data["current_balance"] = 0
  +	data["current_balance"] = synced_bank_account?.account_balance || 0
   	data["siphoning"] = siphoning
   	data["station_name"] = station_name()
   
  
positive.code: 	radio.canhear_range = 0
  	radio.set_listening(FALSE)
  	radio.recalculateChannels()
  
  /obj/machinery/computer/bank_machine/Destroy()
  	QDEL_NULL(radio)
  	. = ..()
  
  /obj/machinery/computer/bank_machine/attackby(obj/item/I, mob/user)
  	var/value = 0
  	if(istype(I, /obj/item/stack/spacecash))
  		var/obj/item/stack/spacecash/C = I
  		value = C.value * C.amount
  	else if(istype(I, /obj/item/holochip))
  		var/obj/item/holochip/H = I
  		value = H.credits
  	if(value)
  		var/datum/bank_account/D = SSeconomy.get_dep_account(ACCOUNT_CAR)
  		if(D)
  			D.adjust_money(value)
  			to_chat(user, span_notice("You deposit [I]. The Cargo Budget is now [D.account_balance] cr."))
  		qdel(I)
  		return
  	return ..()
  
  /obj/machinery/computer/bank_machine/process(delta_time)
  	..()
  	if(!siphoning)
  		return
  	if (machine_stat & (BROKEN|NOPOWER))
  		say("Insufficient power. Halting siphon.")
  		end_siphon()
  		return
  	var/siphon_am = 100 * delta_time
  	var/datum/bank_account/D = SSeconomy.get_dep_account(ACCOUNT_CAR)
  	if(!D.has_money(siphon_am))
  		say("Cargo budget depleted. Halting siphon.")
  		end_siphon()
  		return
  
  	playsound(src, 'sound/items/poster_being_created.ogg', 100, TRUE)
  	syphoning_credits += siphon_am
  	D.adjust_money(-siphon_am)
  	if(next_warning < world.time && prob(15))
  		var/area/A = get_area(loc)
  		var/message = "[unauthorized ? "Unauthorized c" : "C"]redit withdrawal underway in [initial(A.name)][unauthorized ? "!!" : "..."]"
  
negative.code: 	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
  
  	///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)
  	. = ..()
  