anchor.diff:  			L += rand(1, 360)
   		return L
   
  -/datum/component/uplink/proc/failsafe()
  +/datum/component/uplink/proc/failsafe(mob/living/carbon/user)
   	if(!parent)
   		return
   	var/turf/T = get_turf(parent)
   	if(!T)
   		return
  +	message_admins("[ADMIN_LOOKUPFLW(user)] has triggered an uplink failsafe explosion at [AREACOORD(T)]")
  +	log_game("[key_name(user)] triggered an uplink failsafe explosion.")
   	explosion(T,1,2,3)
   	qdel(parent) //Alternatively could brick the uplink.
  
positive.code: 	var/obj/item/pda/master = parent
  	if(trim(lowertext(new_ring_text)) != trim(lowertext(unlock_code)))
  		if(trim(lowertext(new_ring_text)) == trim(lowertext(failsafe_code)))
  			failsafe()
  			return COMPONENT_STOP_RINGTONE_CHANGE
  		return
  	locked = FALSE
  
negative.code: 
  // Radio signal responses
  
  /datum/component/uplink/proc/new_frequency(datum/source, list/arguments, mob/user)
  	var/obj/item/radio/master = parent
  	var/frequency = arguments[1]
  	if(frequency != unlock_code)
  		if(frequency == failsafe_code)
  			failsafe(user)
  		return
  	locked = FALSE
  	if(ismob(master.loc))
  