diff --git a/R/InsuranceTarif.R b/R/InsuranceTarif.R
index b2cfb296c6435820730a5ed605823ca469c587e2..19910836600737bf718b54191603b57ffe48d154 100644
--- a/R/InsuranceTarif.R
+++ b/R/InsuranceTarif.R
@@ -1530,8 +1530,7 @@ InsuranceTarif = R6Class(
     calculatePresentValues = function(cf, params, values) {
       len = dim(cf)[1];
       q = self$getTransitionProbabilities(params, values)
-      pv = function(vec) calculatePVSurvival(px = pad0(q$px, len), advance = vec, v = 1/(1 + params$ActuarialBases$i));
-      apply(cf, 2, pv)
+      calculatePVSurvival2D(px = pad0(q$px, len), advance = cf, v = 1/(1 + params$ActuarialBases$i));
     },
 
         #' @description Calculate the premium frequency loading, i.e. the surcharge