docs: public static double huntKennedyCMSAdjustedRate(
  			double forwardSwaprate,
  			double volatility,
  			double swapAnnuity,
  			double optionMaturity,
  			double swapMaturity,
  			double payoffUnit)
  	{
  		double a = 1.0/swapMaturity;
  		double b = (payoffUnit / swapAnnuity - a) / forwardSwaprate;
  		double convexityAdjustment = Math.exp(volatility*volatility*optionMaturity);
  
  		double rateUnadjusted	= forwardSwaprate;
  		double rateAdjusted		= forwardSwaprate * convexityAdjustment;
  
  		return (a * rateUnadjusted + b * forwardSwaprate * rateAdjusted) * swapAnnuity / payoffUnit;
  	}