anchor.diff:  /obj/machinery/mecha_part_fabricator/proc/check_resources(datum/design/D)
   	if(D.reagents_list.len) // No reagents storage - no reagent designs.
   		return FALSE
  -	var/datum/component/material_container/materials = GetComponent(/datum/component/material_container)
  +	var/datum/component/material_container/materials = rmat.mat_container
   	if(materials.has_materials(get_resources_w_coeff(D)))
   		return TRUE
   	return FALSE
  
positive.code: 	desc = "It's building \a [initial(D.name)]."
  	var/list/res_coef = get_resources_w_coeff(D)
  
  	var/datum/component/material_container/materials = GetComponent(/datum/component/material_container)
  	materials.use_amount(res_coef)
  	add_overlay("fab-active")
  	use_power = ACTIVE_POWER_USE
  	updateUsrDialog()
  
negative.code: 					break
  
  	if(href_list["remove_mat"] && href_list["material"])
  		eject_sheets(href_list["material"], href_list["remove_mat"])
  
  	updateUsrDialog()
  	return
  
  /obj/machinery/mecha_part_fabricator/proc/eject_sheets(eject_sheet, eject_amt)
  	var/datum/component/material_container/mat_container = rmat.mat_container
  	if (!mat_container)
  		say("No access to material storage, please contact the quartermaster.")
  		return 0
  	if (rmat.on_hold())
  		say("Mineral access is on hold, please contact the quartermaster.")
  		return 0
  	var/count = mat_container.retrieve_sheets(text2num(eject_amt), eject_sheet, drop_location())
  	var/list/matlist = list()
  	matlist[eject_sheet] = text2num(eject_amt)
  	rmat.silo_log(src, "ejected", -count, "sheets", matlist)
  	return count
  
  /obj/machinery/mecha_part_fabricator/proc/AfterMaterialInsert(type_inserted, id_inserted, amount_inserted)
  	var/stack_name = material2name(id_inserted)
  