anchor.diff:  	var/list/found_turfs = list(origin)
   	while(found_turfs.len)
   		var/turf/sourceT = found_turfs[1]
  -		if(break_if_found[sourceT.type])
  -			return FALSE
  -		if (istype(sourceT.loc, /area/shuttle))
  -			return FALSE
   		found_turfs.Cut(1, 2)
   		var/dir_flags = checked_turfs[sourceT]
   		for(var/dir in GLOB.alldirs)
  
positive.code: // Gets an atmos isolated contained space
  // Returns an associative list of turf|dirs pairs
  // The dirs are connected turfs in the same space
  // break_if_found is a typecache of turf types to return false if found
  /proc/detect_room(turf/origin, list/break_if_found)
  	if(origin.blocks_air)
  		return list(origin)
  
negative.code: 			checked_turfs[checkT] |= turn(dir, 180)
  			.[sourceT] |= dir
  			.[checkT] |= turn(dir, 180)
  			if(break_if_found[checkT.type] || break_if_found[checkT.loc.type])
  				return FALSE
  			var/static/list/cardinal_cache = list("[NORTH]"=TRUE, "[EAST]"=TRUE, "[SOUTH]"=TRUE, "[WEST]"=TRUE)
  			if(!cardinal_cache["[dir]"] || checkT.blocks_air || !CANATMOSPASS(sourceT, checkT))
  				continue
  			found_turfs += checkT // Since checkT is connected, add it to the list to be processed
  
  /proc/create_area(mob/creator)
  	// Passed into the above proc as list/break_if_found
  	var/static/area_or_turf_fail_types = typecacheof(list(
  		/turf/open/space,
  		/area/shuttle,
  		))
  	// Ignore these areas and dont let people expand them. They can expand into them though
  	var/static/blacklisted_areas = typecacheof(list(
  		/area/space,
  		))
  	var/list/turfs = detect_room(get_turf(creator), area_or_turf_fail_types)
  	if(!turfs)
  		to_chat(creator, "<span class='warning'>The new area must be completely airtight and not a part of a shuttle.</span>")
  		return
  