anchor.diff:  
   			var/space = beaker.reagents.maximum_volume - beaker.reagents.total_volume
   			var/amount = allowed[r_id]
  -			if(amount == 0)
  -				if (O.reagents != null && O.reagents.has_reagent("nutriment"))
  -					beaker.reagents.add_reagent(r_id, min(O.reagents.get_reagent_amount("nutriment"), space))
  -					O.reagents.remove_reagent("nutriment", min(O.reagents.get_reagent_amount("nutriment"), space))
  +			if(amount <= 0)
  +				if(amount == 0)
  +					if (O.reagents != null && O.reagents.has_reagent("nutriment"))
  +						beaker.reagents.add_reagent(r_id, min(O.reagents.get_reagent_amount("nutriment"), space))
  +						O.reagents.remove_reagent("nutriment", min(O.reagents.get_reagent_amount("nutriment"), space))
  +				else
  +					if (O.reagents != null && O.reagents.has_reagent("nutriment"))
  +						beaker.reagents.add_reagent(r_id, min(round(O.reagents.get_reagent_amount("nutriment")*abs(amount)), space))
  +						O.reagents.remove_reagent("nutriment", min(O.reagents.get_reagent_amount("nutriment"), space))
   
   			else
   				O.reagents.trans_id_to(beaker, r_id, min(amount, space))
  
positive.code: 		/obj/item/weapon/reagent_containers/food/snacks/grown/soybeans = list("soymilk" = 0),
  		/obj/item/weapon/reagent_containers/food/snacks/grown/tomato = list("ketchup" = 0),
  		/obj/item/weapon/reagent_containers/food/snacks/grown/corn = list("cornoil" = 0),
  		/obj/item/weapon/reagent_containers/food/snacks/grown/wheat = list("flour" = 0),
  		/obj/item/weapon/reagent_containers/food/snacks/grown/cherries = list("cherryjelly" = 0),
  
  
  
negative.code: 	spawn(60)
  		inuse = 0
  		interact(usr)
  	//Snacks and Plants
  	for (var/obj/item/weapon/reagent_containers/food/snacks/O in holdingitems)
  		if (beaker.reagents.total_volume >= beaker.reagents.maximum_volume)
  			break
  