anchor.diff:  	var/list/cached_reagents = reagent_list
   	var/max_type
   	var/max_volume = 0
  -	for(var/reagent in cached_reagents)
  -		var/datum/reagent/R = reagent
  -		if(R.volume > max_volume)
  -			max_volume = R.volume
  -			max_type = R.type
  +	for(var/datum/reagent/reagent as anything in cached_reagents)
  +		if(reagent.volume > max_volume)
  +			max_volume = reagent.volume
  +			max_type = reagent.type
   
   	return max_type
   
  
positive.code: 	var/list/out = list()
  	var/list/tastes = list() //descriptor = strength
  	if(minimum_percent <= 100)
  		for(var/datum/reagent/R in reagent_list)
  			if(!R.taste_mult)
  				continue
  
  			var/list/taste_data = R.get_taste_description(taster)
  			for(var/taste in taste_data)
  				if(taste in tastes)
  					tastes[taste] += taste_data[taste] * R.volume * R.taste_mult
  				else
  					tastes[taste] = taste_data[taste] * R.volume * R.taste_mult
  		//deal with percentages
  		// TODO it would be great if we could sort these from strong to weak
  		var/total_taste = counterlist_sum(tastes)
  
negative.code: * - moves it towards acidic
  * + moves it towards basic
  * Arguments:
  * * input_reagents_list - list of reagent objects to adjust
  * * value - How much to adjust the base pH by
  */
  /datum/reagents/proc/adjust_specific_reagent_list_ph(list/input_reagents_list, value, lower_limit = 0, upper_limit = 14)
  	for(var/datum/reagent/reagent as anything in input_reagents_list)
  		if(!reagent) //We can call this with missing reagents.
  			continue
  		reagent.ph = clamp(reagent.ph + value, lower_limit, upper_limit)
  
  /*
  * Adjusts the base pH of a specific type
  