anchor.diff:  	deconstruct(TRUE)
   	return TRUE
   
  -/obj/structure/table_frame/deconstruct(disassembled = TRUE)
  +/obj/structure/tank_holder/deconstruct(disassembled = TRUE)
   	new /obj/item/stack/rods(get_turf(src), 2)
  +	if(tank)
  +		tank.forceMove(get_turf(src))
  +		tank = null
   	qdel(src)
   
   /obj/structure/tank_holder/attack_paw(mob/user)
  
positive.code: /obj/structure/tank_holder/attack_hand(mob/user)
  	if(!tank)
  		return ..()
  	to_chat(user, "<span class='notice'>You take \the [tank] from \the [src].</span>")
  	add_fingerprint(user)
  	user.put_in_hands(tank)
  	after_remove_tank()
  
  /obj/structure/tank_holder/proc/after_put_tank(obj/item/tank)
  	tank = tank
  	icon_state = tank.tank_holder_icon_state
  	density = TRUE
  
  /obj/structure/tank_holder/proc/after_remove_tank()
  	tank = null
  	icon_state = "holder"
  
negative.code: 
  	resistance_flags = FIRE_PROOF
  
  	/// The stored tank. If this is a path, it gets created into contents at Initialize.
  	var/obj/item/tank
  
  /obj/structure/tank_holder/Initialize()
  	. = ..()
  	if(tank)
  		after_put_tank(new tank)
  
  /obj/structure/tank_holder/Destroy()
  	if(tank)
  		QDEL_NULL(tank)
  	return ..()
  
  /obj/structure/tank_holder/CanAllowThrough(atom/movable/mover, turf/target)
  