class CouponFixed extends Coupon {

  @SuppressWarnings("deprecation")
  @Override
  public CouponFixed withNotional(final double notional) {
    try {
      return new CouponFixed(getCurrency(), getPaymentTime(), getFundingCurveName(), getPaymentYearFraction(), notional, getFixedRate(), getAccrualStartDate(), getAccrualEndDate());
    } catch (final IllegalStateException e) {
      return new CouponFixed(getCurrency(), getPaymentTime(), getPaymentYearFraction(), notional, getFixedRate(), getAccrualStartDate(), getAccrualEndDate());

    }
  }

  @Deprecated public  CouponFixed(final Currency currency, final double paymentTime, final String fundingCurveName, final double paymentYearFraction, final double notional, final double rate);
  @Deprecated public  CouponFixed(final Currency currency, final double paymentTime, final String fundingCurveName, final double paymentYearFraction, final double notional, final double rate,
      final ZonedDateTime accrualStartDate, final ZonedDateTime accrualEndDate);
  @Deprecated public  CouponFixed(final Currency currency, final double paymentTime, final String fundingCurveName, final double paymentYearFraction, final double rate);
  public  CouponFixed(final Currency currency, final double paymentTime, final double paymentYearFraction, final double notional, final double rate);
  public  CouponFixed(final Currency currency, final double paymentTime, final double paymentYearFraction, final double notional, final double rate,
      final ZonedDateTime accrualStartDate, final ZonedDateTime accrualEndDate);
  public  CouponFixed(final Currency currency, final double paymentTime, final double paymentYearFraction, final double rate);

}