anchor.diff:  					return
   				vol_each = min(reagents.total_volume / amount, 40)
   			var/name = stripped_input(usr,"Name:","Name your patch!", "[reagents.get_master_reagent_name()] ([vol_each]u)", MAX_NAME_LEN)
  -			if(!name || !reagents.total_volume || !src || QDELETED(src) || !usr.canUseTopic(src, BE_CLOSE))
  +			if(!name || !reagents.total_volume || !src || QDELETED(src) || !usr.canUseTopic(src, !issilicon(usr)))
   				return
   			var/obj/item/reagent_containers/pill/P
   
  
positive.code: 
  			if(condi)
  				var/name = stripped_input(usr, "Name:","Name your bottle!", (reagents.total_volume ? reagents.get_master_reagent_name() : " "), MAX_NAME_LEN)
  				if(!name || !reagents.total_volume || !src || QDELETED(src) || !usr.canUseTopic(src, BE_CLOSE))
  					return
  				var/obj/item/reagent_containers/food/condiment/P = new(drop_location())
  				P.originalname = name
  
negative.code: 					amount_full = round(reagents.total_volume / 30)
  					vol_part = reagents.total_volume % 30
  				var/name = stripped_input(usr, "Name:","Name your bottle!", (reagents.total_volume ? reagents.get_master_reagent_name() : " "), MAX_NAME_LEN)
  				if(!name || !reagents.total_volume || !src || QDELETED(src) || !usr.canUseTopic(src, !issilicon(usr)))
  					return
  
  				var/obj/item/reagent_containers/glass/bottle/P
  