anchor.diff:  
   	
   
  -//If you see this proc high on the profile, what you are really seeing is the garbage collection/soft delete overhead in byond.
  -//Don't attempt to optimize, not worth the effort.
  -/datum/controller/subsystem/garbage/proc/HandlePreQueue()
  -	var/list/tobequeued = queues[GC_QUEUE_PREQUEUE]
  -	var/static/count = 0
  -	if (count)
  -		var/c = count
  -		count = 0 //so if we runtime on the Cut, we don't try again.
  -		tobequeued.Cut(1,c+1)
  -
  -	for (var/ref in tobequeued)
  -		count++
  -		Queue(ref, GC_QUEUE_PREQUEUE+1)
  -		tobequeued[count] = null
  -		if (MC_TICK_CHECK)
  -			return
  -	if (count)
  -		tobequeued.Cut(1,count+1)
  -		count = 0
   
   /datum/controller/subsystem/garbage/proc/HandleQueue(level = GC_QUEUE_CHECK)
   	if (level == GC_QUEUE_CHECK)
  
positive.code: 				#endif
  				I.no_respect_force++
  
  				SSgarbage.PreQueue(D)
  			if (QDEL_HINT_HARDDEL)		//qdel should assume this object won't gc, and queue a hard delete using a hard reference to save time from the locate()
  				SSgarbage.HardQueue(D)
  			if (QDEL_HINT_HARDDEL_NOW)	//qdel should assume this object won't gc, and hard del it post haste.
  				SSgarbage.HardDelete(D)
  			if (QDEL_HINT_FINDREFERENCE)//qdel will, if TESTING is enabled, display all references to this object, then queue the object for deletion.
  				SSgarbage.PreQueue(D)
  				#ifdef TESTING
  				D.find_references()
  				#endif
  			if (QDEL_HINT_IFFAIL_FINDREFERENCE)
  				SSgarbage.PreQueue(D)
  				#ifdef TESTING
  				SSgarbage.reference_find_on_fail[REF(D)] = TRUE
  				#endif
  
negative.code: 		queue.Cut(1,count+1)
  		count = 0
  
  /datum/controller/subsystem/garbage/proc/Queue(datum/D, level = GC_QUEUE_CHECK)
  	if (isnull(D))
  		return
  