anchor.diff:  			return FALSE
   		else if(!(get_turf(target) in get_hear(world.view, user)))
   			return FALSE
  -	else //user is an atom
  -		if(!(get_turf(target) in view(world.view, user)))
  +	else //user is an atom or null
  +		if(!(get_turf(target) in view(world.view, user || src)))
   			return FALSE
   	return TRUE
   
  
positive.code: 	return ..()
  
  /obj/item/circuit_component/camera/proc/sanitize_picture_size()
  	camera.picture_size_x = clamp(adjust_size_x, camera.picture_size_x_min, camera.picture_size_x_max)
  	camera.picture_size_y = clamp(adjust_size_y, camera.picture_size_y_min, camera.picture_size_y_max)
  
  /obj/item/circuit_component/camera/proc/on_image_captured(obj/item/camera/source, atom/target, mob/user)
  	SIGNAL_HANDLER
  
negative.code: 	var/list/dead_spotted = list()
  	var/ai_user = isAI(user)
  	var/list/seen
  	var/list/viewlist = user?.client ? getviewsize(user.client.view) : getviewsize(world.view)
  	var/viewr = max(viewlist[1], viewlist[2]) + max(size_x, size_y)
  	var/viewc = user?.client ? user.client.eye : target
  	seen = get_hear(viewr, viewc)
  	var/list/turfs = list()
  	var/list/mobs = list()
  