diff --git a/matlab/discretionary_policy/discretionary_policy_1.m b/matlab/discretionary_policy/discretionary_policy_1.m
index 04c88659746748e6cb246c60c9a26c1dbcc742a3..314f442725e9c216515afa6e546c911f9ff26e07 100644
--- a/matlab/discretionary_policy/discretionary_policy_1.m
+++ b/matlab/discretionary_policy/discretionary_policy_1.m
@@ -34,6 +34,8 @@ persistent Hold
 
 info = 0;
 
+dr=oo_.dr; %initialize output argument
+
 beta = get_optimal_policy_discount_factor(M_.params, M_.param_names);
 
 %call steady_state_file if present to update parameters
@@ -106,7 +108,6 @@ else
     [H,G,info]=discretionary_policy_engine(A.lag,A.contemp,A.lead,B,W,M_.instr_id,beta,options_.dp.maxit,options_.discretionary_tol,options_.qz_criterium);
 end
 
-
 if info
     return
 else
@@ -115,7 +116,6 @@ else
 end
 
 %write back solution to dr
-dr=oo_.dr;
 dr.ys =zeros(M_.endo_nbr,1);
 dr=set_state_space(dr,M_,options_);
 T=H(dr.order_var,dr.order_var);