anchor.diff:  
   /obj/structure/disposalpipe/sortjunction/New()
   	..()
  +
  +	// Generate a list of soring tags.
  +	if(sortType)
  +		if(isnum(sortType))
  +			sortTypes |= sortType
  +		else if(istext(sortType))
  +			var/list/sorts = splittext(sortType,";")
  +			for(var/x in sorts)
  +				var/n = text2num(x)
  +				if(n)
  +					sortTypes |= n
  +
   	updatedir()
  -	updatedesc()
   	update()
   	return
   
  
positive.code: 		var/obj/item/device/destTagger/O = I
  
  		if(O.currTag > 0)// Tag set
  			sortType = O.currTag
  			playsound(src.loc, 'sound/machines/twobeep.ogg', 100, 1)
  			var/tag = uppertext(TAGGERLOCATIONS[O.currTag])
  			user << "<span class='warning'>Changed filter to [tag].</span>"
  			updatedesc()
  
  
  // next direction to move
  
negative.code: 	//var/flipdir = turn(fromdir, 180)
  	if(fromdir != sortdir)	// probably came from the negdir
  
  		if(sortTag in sortTypes) //if destination matches filtered type...
  			return sortdir		// exit through sortdirection
  		else
  			return posdir
  