class SabrExtrapolationReplicationCmsPeriodPricer {

  public double adjustmentToForwardRate(
      CmsPeriod cmsPeriod,
      RatesProvider provider,
      SabrSwaptionVolatilities swaptionVolatilities) {

    CmsPeriod coupon = cmsPeriod.toCouponEquivalent();
    double adjustedForwardRate = adjustedForwardRate(coupon, provider, swaptionVolatilities);
    double forward = swapPricer.parRate(coupon.getUnderlyingSwap(), provider);
    return adjustedForwardRate - forward;
  }

  private  SabrExtrapolationReplicationCmsPeriodPricer(
      DiscountingSwapProductPricer swapPricer,
      double cutOffStrike,
      double mu);

}