anchor.diff:  /obj/machinery/power/smes/ui_act(action, params)
   	if(..())
   		return
  +
   	switch(action)
   		if("tryinput")
   			input_attempt = !input_attempt
   			log_smes(usr.ckey)
   			update_icon()
  -			. = TRUE
   		if("tryoutput")
   			output_attempt = !output_attempt
   			log_smes(usr.ckey)
   			update_icon()
  -			. = TRUE
   		if("input")
   			switch(params["set"])
   				if("custom")
  
positive.code: 
  /obj/machinery/power/smes/New()
  	..()
  	var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/smes(null)
  	B.apply_default_parts(src)
  
  	spawn(5)
  		dir_loop:
  			for(var/d in cardinal)
  
negative.code: 		smesImageCache[SMES_INPUT_ATTEMPT] = image('icons/obj/power.dmi', "smes-oc0")
  
  	if(outputting)
  		overlays += smesImageCache[SMES_OUTPUTTING]
  	else
  		overlays += smesImageCache[SMES_NOT_OUTPUTTING]
  
  	if(inputting)
  		overlays += smesImageCache[SMES_INPUTTING]
  	else
  		if(input_attempt)
  			overlays += smesImageCache[SMES_INPUT_ATTEMPT]
  
  	var/clevel = chargedisplay()
  	if(clevel>0)
  		overlays += smesImageCache[clevel]
  	return
  
  
  