anchor.diff:  		queue.Cut(1,count+1)
   		count = 0
   
  +
   /proc/iconstate2appearance(icon, iconstate)
   	var/static/image/stringbro = new()
  -	var/list/icon_states_cache = SSoverlays.overlay_icon_state_caches
  -	var/list/cached_icon = icon_states_cache[icon]
  -	if (cached_icon)
  -		var/cached_appearance = cached_icon["[iconstate]"]
  -		if (cached_appearance)
  -			return cached_appearance
   	stringbro.icon = icon
   	stringbro.icon_state = iconstate
  -	if (!cached_icon) //not using the macro to save an associated lookup
  -		cached_icon = list()
  -		icon_states_cache[icon] = cached_icon
  -	var/cached_appearance = stringbro.appearance
  -	cached_icon["[iconstate]"] = cached_appearance
  -	return cached_appearance
  -
  +	return stringbro.appearance
  +	
   /proc/icon2appearance(icon)
   	var/static/image/iconbro = new()
  -	var/list/icon_cache = SSoverlays.overlay_icon_cache
  -	. = icon_cache[icon]
  -	if (!.)
  -		iconbro.icon = icon
  -		. = iconbro.appearance
  -		icon_cache[icon] = .
  +	iconbro.icon = icon
  +	return iconbro.appearance
   
   /atom/proc/build_appearance_list(old_overlays)
   	var/static/image/appearance_bro = new()
  
positive.code: 
  
  /datum/controller/subsystem/overlays/Recover()
  	overlay_icon_state_caches = SSoverlays.overlay_icon_state_caches
  	overlay_icon_cache = SSoverlays.overlay_icon_cache
  	queue = SSoverlays.queue
  
  
  
negative.code: 
  	var/list/queue
  	var/list/stats
  
  /datum/controller/subsystem/overlays/PreInit()
  	queue = list()
  	stats = list()
  
  