anchor.diff:  		prod_coeff += M.rating - 1
   
   /obj/machinery/autolathe/proc/regular_win(mob/user)
  -	var/dat
   	if(!panel_open)
   		var/coeff = 2 ** prod_coeff
   		dat = "<div class='statusDisplay'><b>Metal amount:</b> [src.m_amount] / [max_m_amount] cm<sup>3</sup><br>"
   		dat += "<b>Glass amount:</b> [src.g_amount] / [max_g_amount] cm<sup>3</sup><hr>"
  -		var/list/objs = list()
  -		objs += src.L
  -		if(src.hacked)
  -			objs += src.LL
  -		for(var/obj/t in objs)
  -			if(disabled || m_amount<t.m_amt || g_amount<t.g_amt)
  -				dat += replacetext("<span class='linkOff'>[t]</span>", "The ", "")
  -			else
  -				dat += replacetext("<a href='?src=\ref[src];make=\ref[t]'>[t]</a>", "The ", "")
  -
  -			if(istype(t, /obj/item/stack))
  -				var/obj/item/stack/S = t
  -				var/max_multiplier = min(S.max_amount, S.m_amt?round(m_amount/S.m_amt):INFINITY, S.g_amt?round(g_amount/S.g_amt):INFINITY)
  -				if (max_multiplier>10 && !disabled)
  -					dat += " <a href='?src=\ref[src];make=\ref[t];multiplier=[10]'>x[10]</a>"
  -				if (max_multiplier>25 && !disabled)
  -					dat += " <a href='?src=\ref[src];make=\ref[t];multiplier=[25]'>x[25]</a>"
  -				if (max_multiplier>1 && !disabled)
  -					dat += " <a href='?src=\ref[src];make=\ref[t];multiplier=[max_multiplier]'>x[max_multiplier]</a>"
  -				dat += " [t.m_amt] m / [t.g_amt] g"
  -			else
  -				dat += " [t.m_amt/coeff] m / [t.g_amt/coeff] g"
  -			dat += "<br>"
  -		dat += "</span>"
  +
  +		if(category)
  +			dat += "<a href='?src=\ref[src];category-clear=1'>Return to Categories</a><hr>"
  +
  +			for(var/obj/item in autolathe_category_list[category])
  +				if(disabled || m_amount<item.m_amt || g_amount<item.g_amt)
  +					dat += replacetext("<li><span class='linkOff'>[item]</span></li>", "The ", "")
  +				else
  +					dat += replacetext("<li><a href='?src=\ref[src];make=\ref[item]'>[item]</a></li>", "The ", "")
  +
  +				if(istype(item, /obj/item/stack))
  +					var/obj/item/stack/S = item
  +					var/max_multiplier = min(S.max_amount, S.m_amt?round(m_amount/S.m_amt):INFINITY, S.g_amt?round(g_amount/S.g_amt):INFINITY)
  +					if (max_multiplier>10 && !disabled)
  +						dat += " <a href='?src=\ref[src];make=\ref[item];multiplier=[10]'>x[10]</a>"
  +					if (max_multiplier>25 && !disabled)
  +						dat += " <a href='?src=\ref[src];make=\ref[item];multiplier=[25]'>x[25]</a>"
  +					if (max_multiplier>1 && !disabled)
  +						dat += " <a href='?src=\ref[src];make=\ref[item];multiplier=[max_multiplier]'>x[max_multiplier]</a>"
  +					dat += " [item.m_amt] m / [item.g_amt] g"
  +				else
  +					dat += " [item.m_amt/coeff] m / [item.g_amt/coeff] g"
  +		else
  +			dat += "<ol>"
  +			for(var/cat in autolathe_category_list)
  +				if(!src.hacked && cat == "Sh0#t~cIR$&It... Err")
  +					continue
  +				dat += "<li><a href='?src=\ref[src];mob=\ref[user];category=[url_encode(cat)]'>[cat]</a></li>"
  +			dat += "</ol>"
   	else
   		dat = wires.GetInteractWindow()
   
  
positive.code: 
  	var/operating = 0.0
  	anchored = 1.0
  	var/list/L = list()
  	var/list/LL = list()
  	var/hacked = 0
  	var/disabled = 0
  	var/shocked = 0
  
negative.code: 			if(!attempting_to_build)
  				return
  
  			var/found = 0
  			for(var/cat in autolathe_category_list)
  				if(locate(attempting_to_build, autolathe_category_list[cat])) // see if the requested object is in one of the construction lists, if so, it is legit -walter0o
  					template = attempting_to_build
  					found = 1
  					break
  
  			if(!found)  // somebody is trying to exploit, alert admins -walter0o
  				var/turf/LOC = get_turf(usr)
  				message_admins("[key_name_admin(usr)] tried to exploit an autolathe to duplicate <a href='?_src_=vars;Vars=\ref[attempting_to_build]'>[attempting_to_build]</a> ! ([LOC ? "<a href='?_src_=holder;adminplayerobservecoodjump=1;X=[LOC.x];Y=[LOC.y];Z=[LOC.z]'>JMP</a>" : "null"])", 0)
  				log_admin("EXPLOIT : [key_name(usr)] tried to exploit an autolathe to duplicate [attempting_to_build] !")
  