// Already fixed coupons
if (getPayments()[0] instanceof CouponFixedDefinition) { // CouponFixedDefinition
fixedCpn.add(((CouponFixedDefinition) getNthPayment(0)).getRate());
} else { // CouponIborDefinition
if (isFixed[0]) {
final CouponIborGearingDefinition cpnIbor = (CouponIborGearingDefinition) getPayments()[0];
fixedCpn.add(indexFixingTS.getValue(cpnIbor.getFixingDate()) * cpnIbor.getFactor() + cpnIbor.getSpread());
}
}
for (int loopcpn = 1; loopcpn < getNumberOfPayments(); loopcpn++) {
if (isFixed[loopcpn]) {
final CouponIborRatchetDefinition cpnRatchet = (CouponIborRatchetDefinition) getPayments()[loopcpn];