anchor.diff:  	if(!user.canUseTopic(src, be_close=TRUE))
   		return
   	if(!LAZYLEN(log))
  -		to_chat(user, span_notice("Cannot clear logs, the scanner has no logs."))
  -		return
  -	if(scanning)
  -		to_chat(user, span_notice("Cannot clear logs, the scanner is in use."))
  -		return
  -	to_chat(user, span_notice("The scanner logs are cleared."))
  -	log = list()
  +		balloon_alert(user, "no logs!")
  +		return
  +	if(scanning)
  +		balloon_alert(user, "scanner busy!")
  +		return
  +	balloon_alert(user, "deleting logs...")
  +	if(do_after(user, 3 SECONDS, target = src))
  +		balloon_alert(user, "logs cleared")
  +		log = list()
   
   /obj/item/detective_scanner/examine(mob/user)
   	. = ..()
  
positive.code: 		scanner.displayDetectiveScanResults(usr)
  
  /obj/item/detective_scanner/attack_self(mob/user)
  	if(log.len && !scanning)
  		scanning = TRUE
  		to_chat(user, span_notice("Printing report, please wait..."))
  		addtimer(CALLBACK(src, .proc/PrintReport), 100)
  	else
  		to_chat(user, span_notice("The scanner has no logs or is in use."))
  
  /obj/item/detective_scanner/proc/PrintReport()
  	// Create our paper
  
negative.code: /obj/item/detective_scanner/proc/add_log(msg, broadcast = 1)
  	if(scanning)
  		if(broadcast && ismob(loc))
  			var/mob/logger = loc
  			to_chat(logger, msg)
  		log += "&nbsp;&nbsp;[msg]"
  	else
  		CRASH("[src] [REF(src)] is adding a log when it was never put in scanning mode!")
  