anchor.diff:  		if(LAZYLEN(holo_calls))
   			dat += "=====================================================<br>"
   
  -		var/one_answered_call = FALSE
  -		var/one_unanswered_call = FALSE
  -		for(var/I in holo_calls)
  -			var/datum/holocall/HC = I
  -			if(HC.connected_holopad != src)
  -				dat += "<a href='?src=[REF(src)];connectcall=[REF(HC)]'>Answer call from [get_area(HC.calling_holopad)]</a><br>"
  -				one_unanswered_call = TRUE
  -			else
  -				one_answered_call = TRUE
  -
  -		if(one_answered_call && one_unanswered_call)
  -			dat += "=====================================================<br>"
  -		//we loop twice for formatting
  -		for(var/I in holo_calls)
  -			var/datum/holocall/HC = I
  -			if(HC.connected_holopad == src)
  -				dat += "<a href='?src=[REF(src)];disconnectcall=[REF(HC)]'>Disconnect call from [HC.user]</a><br>"
  +		if(on_network)
  +			var/one_answered_call = FALSE
  +			var/one_unanswered_call = FALSE
  +			for(var/I in holo_calls)
  +				var/datum/holocall/HC = I
  +				if(HC.connected_holopad != src)
  +					dat += "<a href='?src=[REF(src)];connectcall=[REF(HC)]'>Answer call from [get_area(HC.calling_holopad)]</a><br>"
  +					one_unanswered_call = TRUE
  +				else
  +					one_answered_call = TRUE
  +
  +			if(one_answered_call && one_unanswered_call)
  +				dat += "=====================================================<br>"
  +			//we loop twice for formatting
  +			for(var/I in holo_calls)
  +				var/datum/holocall/HC = I
  +				if(HC.connected_holopad == src)
  +					dat += "<a href='?src=[REF(src)];disconnectcall=[REF(HC)]'>Disconnect call from [HC.user]</a><br>"
   
   
   	var/datum/browser/popup = new(user, "holopad", name, 300, 175)
  
positive.code: 	if(temp)
  		dat = temp
  	else
  		dat = "<a href='?src=[REF(src)];AIrequest=1'>Request an AI's presence</a><br>"
  		dat += "<a href='?src=[REF(src)];Holocall=1'>Call another holopad</a><br>"
  		if(disk)
  			if(disk.record)
  				//Replay
  
negative.code: 	var/static/list/holopads = list()
  	var/obj/effect/overlay/holoray/ray
  	var/offset = FALSE
  	var/on_network = TRUE
  
  /obj/machinery/holopad/tutorial
  	resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
  	flags_1 = NODECONSTRUCT_1
  	on_network = FALSE
  	var/proximity_range = 1
  	
  /obj/machinery/holopad/tutorial/Initialize(mapload)
  	. = ..()
  	if(proximity_range)
  		proximity_monitor = new(src, proximity_range)
  	if(mapload)
  		var/obj/item/disk/holodisk/new_disk = locate(/obj/item/disk/holodisk) in src.loc
  		if(new_disk && !disk)
  			new_disk.forceMove(src)
  			disk = new_disk
  
  /obj/machinery/holopad/tutorial/attack_hand(mob/user)
  	if(!istype(user))
  		return
  	if(user.incapacitated() || !is_operational())
  		return
  	if(replay_mode)
  		replay_stop()
  	else if(disk && disk.record)
  		replay_start()
  	
  /obj/machinery/holopad/tutorial/HasProximity(atom/movable/AM)
  	if (!isliving(AM))
  		return
  	if(!replay_mode && (disk && disk.record))
  		replay_start()
  
  /obj/machinery/holopad/Initialize()
  	. = ..()
  	if(on_network)
  		holopads += src
  
  /obj/machinery/holopad/Destroy()
  	if(outgoing_call)
  