anchor.diff:  		return
   	if ((usr.contents.Find(src) || ((get_dist(src, usr) <= 1) && istype(src.loc, /turf))) || (istype(usr, /mob/living/silicon/ai)))
   		usr.set_machine(src)
  -		if (src.connected)
  -			if (src.connected.occupant)
  -				if(src.connected.occupant.health > 0)
  -					if (href_list["inap"])
  -						src.connected.inject_inap(usr)
  -					if (href_list["stox"])
  -						src.connected.inject_stox(usr)
  -					if (href_list["derm"])
  -						src.connected.inject_dermaline(usr)
  -					if (href_list["bic"])
  -						src.connected.inject_bicaridine(usr)
  -					if (href_list["dex"])
  -						src.connected.inject_dexalin(usr)
  -				else
  -					if(src.connected.occupant.health > -100)
  -						if (href_list["inap"])
  -							src.connected.inject_inap(usr)
  -						if (href_list["stox"] || href_list["derm"] || href_list["bic"] || href_list["dex"])
  -							usr << "\red \b this person is not in good enough condition for sleepers to be effective! Use another means of treatment, such as cryogenics!"
  +		if (href_list["chemical"])
  +			if (src.connected)
  +				if (src.connected.occupant)
  +					if (src.connected.occupant.stat == DEAD)
  +						usr << "\red \b This person has no life for to preserve anymore. Take them to a department capable of reanimating them."
  +					else if(src.connected.occupant.health > 0 || href_list["chemical"] == "inaprovaline")
  +						src.connected.inject_chemical(usr,href_list["chemical"],text2num(href_list["amount"]))
   					else
  -						usr << "\red \b This person has no life for to preserve anymore. Take them to a department capable of reanimating them."
  +						usr << "\red \b This person is not in good enough condition for sleepers to be effective! Use another means of treatment, such as cryogenics!"
   		if (href_list["refresh"])
   			src.updateUsrDialog()
   		src.add_fingerprint(usr)
  
positive.code: 	anchored = 1
  	var/orient = "LEFT" // "RIGHT" changes the dir suffix to "-r"
  	var/mob/living/occupant = null
  
  
  	New()
  
negative.code: 			dat += text("[]\t-Burn Severity %: []</FONT><BR>", (occupant.getFireLoss() < 60 ? "<font color='blue'>" : "<font color='red'>"), occupant.getFireLoss())
  			dat += text("<HR>Paralysis Summary %: [] ([] seconds left!)<BR>", occupant.paralysis, round(occupant.paralysis / 4))
  			if(occupant.reagents)
  				for(var/chemical in connected.available_chemicals)
  					dat += "[connected.available_chemicals[chemical]]: [occupant.reagents.get_reagent_amount(chemical)] units<br>"
  			dat += "<HR><A href='?src=\ref[src];refresh=1'>Refresh meter readings each second</A><BR>"
  			for(var/chemical in connected.available_chemicals)
  				dat += "Inject [connected.available_chemicals[chemical]]: "
  				for(var/amount in connected.amounts)
  					dat += "<a href ='?src=\ref[src];chemical=[chemical];amount=[amount]'>[amount] units</a> "
  				dat += "<br>"
  		else
  			dat += "The sleeper is empty."
  		dat += text("<BR><BR><A href='?src=\ref[];mach_close=sleeper'>Close</A>", user)
  