anchor.diff:  		return
   	if(!user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK))
   		return
  +
   	return TRUE
   
   /obj/item/card/id/AltClick(mob/living/user)
  
positive.code: 				return
  		to_chat(user, "<span class='warning'>The account ID number provided is invalid.</span>")
  		return
  	var/amount_to_remove = input(user, "How much do you want to withdraw? Current Balance: [registered_account.account_balance]", "Withdraw Funds", 5) as num
  
  	if(!amount_to_remove || amount_to_remove < 0)
  		to_chat(user, "<span class='warning'>You're pretty sure that's not how money works.</span>")
  
negative.code: 		var/obj/item/card/id/I = O
  		src.access |= I.access
  		if(isliving(user) && user.mind)
  			if(user.mind.special_role || anyone)
  				to_chat(usr, "<span class='notice'>The card's microscanners activate as you pass it over the ID, copying its access.</span>")
  
  /obj/item/card/id/syndicate/attack_self(mob/user)
  	if(isliving(user) && user.mind)
  		if(!(user.mind.special_role || anyone)) //Unless anyone is allowed, only syndies can use the card, to stop metagaming.
  			if(!registered_name) //If a non-syndie is the first to forge an unassigned agent ID, then anyone can forge it.
  				anyone = TRUE
  			else
  				return ..()
  		if(alert(user, "Action", "Agent ID", "Show", "Forge") == "Forge")
  			var/t = copytext(sanitize(input(user, "What name would you like to put on this card?", "Agent card name", registered_name ? registered_name : (ishuman(user) ? user.real_name : user.name))as text | null),1,26)
  			if(!t || t == "Unknown" || t == "floor" || t == "wall" || t == "r-wall") //Same as mob/dead/new_player/prefrences.dm
  				if (t)
  					alert("Invalid name.")
  				return
  			registered_name = t
  
  			var/u = copytext(sanitize(input(user, "What occupation would you like to put on this card?\nNote: This will not grant any access levels other than Maintenance.", "Agent card job assignment", "Assistant")as text | null),1,MAX_MESSAGE_LEN)
  			if(!u)
  				registered_name = ""
  				return
  			assignment = u
  			update_label()
  			to_chat(user, "<span class='notice'>You successfully forge the ID card.</span>")
  			return
  	return ..()
  
  /obj/item/card/id/syndicate/anyone
  	anyone = TRUE
  