/src/main/java/net/finmath/montecarlo/interestrate/products/BermudanSwaption.java
values = payoff.add( values) ;
values = values.add ( payoff ) ;
payoff = payoff.div(numeraire).mult(monteCarloProbabilities); if(isCallable) { valuesUnderlying = valuesUnderlying.add(payoff); } else { <extra_id_0> } if(isPeriodStartDateExerciseDate[period]) { final RandomVariable triggerValuesDiscounted = values.sub(valuesUnderlying); final ConditionalExpectationEstimator conditionalExpectationOperator = getConditionalExpectationEstimator(fixingDate, model); final RandomVariable triggerValues = triggerValuesDiscounted.getConditionalExpectation(conditionalExpectationOperator); values = triggerValues.choose(values, valuesUnderlying);