anchor.diff:  
   	update_icon()
   
  +/obj/machinery/atmospherics/components/unary/thermomachine/CtrlClick(mob/living/user)
  +	if(!istype(user) || !user.canUseTopic(src, BE_CLOSE))
  +		return
  +	on = !on
  +	update_icon()
  +
   /obj/machinery/atmospherics/components/unary/thermomachine/freezer
   	name = "freezer"
   	icon_state = "freezer"
  
positive.code: /obj/machinery/atmospherics/components/unary/thermomachine
  	name = "thermomachine"
  	desc = "Heats or cools gas in connected pipes."
  	icon = 'icons/obj/atmospherics/components/thermomachine.dmi'
  	icon_state = "freezer"
  	var/icon_state_off = "freezer"
  	var/icon_state_on = "freezer_1"
  	var/icon_state_open = "freezer-o"
  	density = TRUE
  	max_integrity = 300
  	armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 100, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 80, "acid" = 30)
  	layer = OBJ_LAYER
  	circuit = /obj/item/circuitboard/machine/thermomachine
  	pipe_flags = PIPING_ONE_PER_TURF | PIPING_DEFAULT_LAYER_ONLY
  
  	var/min_temperature = 0
  	var/max_temperature = 0
  
negative.code: 	cut_overlays()
  	if(showpipe)
  		add_overlay(getpipeimage(icon, "scrub_cap", initialize_directions))
  
  /obj/machinery/atmospherics/components/unary/thermomachine/examine(mob/user)
  	. = ..()
  	. += "<span class='notice'>The thermostat is set to [target_temperature]K ([(T0C-target_temperature)*-1]C).</span>"
  	if(in_range(user, src) || isobserver(user))
  		. += "<span class='notice'>The status display reads: Efficiency <b>[(heat_capacity/5000)*100]%</b>.</span>"
  		. += "<span class='notice'>Temperature range <b>[min_temperature]K - [max_temperature]K ([(T0C-min_temperature)*-1]C - [(T0C-max_temperature)*-1]C)</b>.</span>"
  
  /obj/machinery/atmospherics/components/unary/thermomachine/process_atmos()
  	..()
  