class SwapFixedIborSpreadDiscountingMethod extends SwapFixedCouponDiscountingMethod {

  public double couponEquivalentSpreadModified(final SwapFixedCoupon<? extends Payment> fixedCouponSwap, final double pvbp, final MulticurveProviderInterface multicurves) {
    ArgumentChecker.isTrue(fixedCouponSwap.getFirstLeg().getCurrency() == fixedCouponSwap.getSecondLeg().getCurrency(), "Both legs should be in the same currency");
    final double pvFixed = METHOD_ANNUITY.presentValuePositiveNotional(fixedCouponSwap.getFixedLeg(), multicurves).getAmount();
    final double pvSpread = presentValueSpreadPositiveNotional(fixedCouponSwap.getSecondLeg(), multicurves).getAmount();
    return (pvFixed - pvSpread) / pvbp;
  }

  private  SwapFixedIborSpreadDiscountingMethod();

}