diff --git a/matlab/solve_one_boundary.m b/matlab/solve_one_boundary.m
index af9b6559254036cb66925e1816dbea40a5c4549e..f4009b077f29dc95fa67dbd523a632b8a17d74ba 100644
--- a/matlab/solve_one_boundary.m
+++ b/matlab/solve_one_boundary.m
@@ -92,9 +92,10 @@ for it_=start:incr:finish
     g1=spalloc( Blck_size, Blck_size, nze);
     while ~(cvg==1 || iter>maxit_)
         if is_dynamic
-            [r, ~, T(:, it_), g1] = feval(fname, Block_Num, dynvars_from_endo_simul(y, it_, M), x, params, steady_state, T(:, it_), it_, false);
+            [r, yy, T(:, it_), g1] = feval(fname, Block_Num, dynvars_from_endo_simul(y, it_, M), x, params, steady_state, T(:, it_), it_, false);
+            y(:, it_) = yy(M.lead_lag_incidence(M.maximum_endo_lag+1,:));
         else
-            [r, ~, T, g1] = feval(fname, Block_Num, y, x, params, T);
+            [r, y, T, g1] = feval(fname, Block_Num, y, x, params, T);
         end
         if ~isreal(r)
             max_res=(-(max(max(abs(r))))^2)^0.5;
diff --git a/matlab/solve_two_boundaries.m b/matlab/solve_two_boundaries.m
index d1c595f6b6e21d6f117d51dbd9db144fdf7e9995..25524a0173fcc4a9a92d9893f8e864de965ca733 100644
--- a/matlab/solve_two_boundaries.m
+++ b/matlab/solve_two_boundaries.m
@@ -83,7 +83,8 @@ while ~(cvg==1 || iter>maxit_)
     r = NaN(Blck_size, periods);
     g1a = spalloc(Blck_size*periods, Blck_size*periods, nze*periods);
     for it_ = y_kmin+(1:periods)
-        [r(:, it_-y_kmin), ~, T(:, it_), g1]=feval(fname, Block_Num, dynvars_from_endo_simul(y, it_, M), x, params, steady_state, T(:, it_), it_, false);
+        [r(:, it_-y_kmin), yy, T(:, it_), g1]=feval(fname, Block_Num, dynvars_from_endo_simul(y, it_, M), x, params, steady_state, T(:, it_), it_, false);
+        y(:, it_) = yy(M.lead_lag_incidence(M.maximum_endo_lag+1,:));
         if periods == 1
             g1a = g1(:, Blck_size+(1:Blck_size));
         elseif it_ == y_kmin+1
diff --git a/preprocessor b/preprocessor
index e4687bb97616a19432e1b46565b6b6065276b657..4560639eb4035448cc8adc4535a1957fa82924ab 160000
--- a/preprocessor
+++ b/preprocessor
@@ -1 +1 @@
-Subproject commit e4687bb97616a19432e1b46565b6b6065276b657
+Subproject commit 4560639eb4035448cc8adc4535a1957fa82924ab