/src/main/java/net/finmath/montecarlo/interestrate/products/components/ProductCollection.java
valueFuture = getExecutor( ) .next( )  {
valueFuture = getExecutor ( ) .submit ( new Callable<RandomVariable> ( ) {
@Override public RandomVariable getValue(final double evaluationTime, final TermStructureMonteCarloSimulationModel model) throws CalculationException { final ArrayList< Future<RandomVariable> > results = new ArrayList< >(); for(final MonteCarloProduct product : products) { Future<RandomVariable> valueFuture; try { <extra_id_0> @Override public RandomVariable call() throws CalculationException { return product.getValue(evaluationTime, model); } } );