anchor.diff:  
   	/// The PV/R part in our equation.
   	var/pvr = pv / R_IDEAL_GAS_EQUATION
  -	
  +
   	/// x^2 in the quadratic
   	var/a_value = w2/n2
   	/// x^1 in the quadratic
   	var/b_value = ((n1*w2)/n2) + w1 - (pvr*c2/n2)
   	/// x^0 in the quadratic
   	var/c_value = (-1*pvr*c1) + n1 * w1
  -	
  +
   	. = gas_pressure_quadratic(a_value, b_value, c_value, lower_limit, upper_limit)
   	if(.)
   		return
  
positive.code: /datum/gas_mixture/proc/get_true_breath_pressure(partial_pressure)
  	return (partial_pressure * BREATH_VOLUME) / (R_IDEAL_GAS_EQUATION * temperature)
  
  /** 
   * Counts how much pressure will there be if we impart MOLAR_ACCURACY amounts of our gas to the output gasmix. 
   * We do all of this without actually transferring it so dont worry about it changing the gasmix.
   * Returns: Resulting pressure (number).
   * Args: 
   * - output_air (gasmix).
   */ 
  /datum/gas_mixture/proc/gas_pressure_minimum_transfer(datum/gas_mixture/output_air)
  	var/resulting_energy = output_air.thermal_energy() + (MOLAR_ACCURACY / total_moles() * thermal_energy())
  	var/resulting_capacity = output_air.heat_capacity() + (MOLAR_ACCURACY / total_moles() * heat_capacity())
  
negative.code: 		var/datum/gas_mixture/temporary = remove_specific_ratio(specific_gas, 1)
  		transfer_moles = temporary.gas_pressure_calculate(output_air, target_pressure, temperature_delta <= 5)
  		removed = temporary.remove_specific(specific_gas, transfer_moles)
  		merge(temporary)
  	else
  		transfer_moles = gas_pressure_calculate(output_air, target_pressure, temperature_delta <= 5)
  		removed = remove(transfer_moles)
  
  	if(!removed)
  		return FALSE
  
  