anchor.diff:  
   	if(!dumb && D.dumb && !(opposite_dir & D.connects))
   		return
  -	if(dumb && D.dumb && !(connects & D.connects)) //we eliminated a few more scenario in attempt connect
  +	if(dumb && D.dumb && !(connects & D.connects)) //we eliminated a few more scenarios in attempt connect
   		return
   
   	if((duct == D.duct) && duct)//check if we're not just comparing two null values
  -		add_neighbour(D)
  +		add_neighbour(D, direction)
   
   		D.add_connects(opposite_dir)
   		D.update_icon()
  
positive.code: 	. = ..()
  	update_connects()
  
  /obj/machinery/duct/multilayered/update_icon()
  	return
  
  /obj/machinery/duct/multilayered/wrench_act(mob/living/user, obj/item/I)
  	. = ..()
  
negative.code: 	///wheter we just unanchored or drop whatever is in the variable. either is safe
  	var/drop_on_wrench = /obj/item/stack/ducts
  
  /obj/machinery/duct/Initialize(mapload, no_anchor, color_of_duct = "#ffffff", layer_of_duct = DUCT_LAYER_DEFAULT, force_connects)
  	. = ..()
  
  	if(no_anchor)
  		active = FALSE
  		set_anchored(FALSE)
  	else if(!can_anchor())
  		qdel(src)
  		CRASH("Overlapping ducts detected")
  
  	if(force_connects)
  		connects = force_connects //skip change_connects() because we're still initializing and we need to set our connects at one point
  	if(!lock_layers)
  