anchor.diff:  				owner.objectives += new_objective
   				var/status_text = objective.check_completion() ? "neutralised" : "active"
   				to_chat(owner.current, "<B><font size=3 color=red> New target added to database: [objective.target.name] ([status_text]) </font></B>")
  -	if(traitored)
  +	if(traitored&&!already_traitored)
   		for(var/objective_ in victim.objectives)
   			if(!is_internal_objective(objective_))
   				continue
  
positive.code: /datum/internal_agent_state/proc/steal_targets(datum/mind/victim)
  	if(!owner.current||owner.current.stat==DEAD) //Should already be guaranteed if this is only called from steal_targets_timer_func, but better to be safe code than sorry code 
  		return
  	for(var/objective_ in victim.objectives)
  		if(istype(objective_, /datum/objective/assassinate/internal))
  			var/datum/objective/assassinate/internal/objective = objective_
  			if(objective.target==owner)
  				to_chat(owner.current,"<B><font size=3 color=red> All the other agents are dead, and you're the last loose end. Stage a Syndicate terrorist attack to cover up for today's events. You no longer have any limits on collateral damage.</font></B>")
  				traitored = TRUE
  			else
  				var/datum/objective/assassinate/internal/new_objective = new
  
negative.code: 						fail_msg += "<B><font size=3 color=red> The truth could still slip out!</font><B><font size=5 color=red>Cease any terrorist actions as soon as possible, unneeded property damage or loss of employee life will lead to your contract being terminated.</font></B>"
  						traitored = FALSE
  					to_chat(owner.current, fail_msg)
  					objective.stolen = FALSE
  	add_steal_targets_timer(owner)
  
  /datum/internal_agent_state/proc/add_steal_targets_timer()
  