

var      y, G,lgdp, lgdp_bar, Dlgdp_bar; 
 var   pie; 
 var   unr, unr_bar, unr_g, unr_gap, Dunr_bar;



varexo res_lgdp_bar, res_G, res_Y
    res_pielte, res_PIE
    res_unr_bar, res_unr_g, res_unr_gap;

parameters     lab_share, tau, growth_ss, rho1, rho2,
    beta, omega,parhist, lambda, unr_ss, alpha, phi1, phi2,
    delta, kappa1, kappa2, gamma;


unr_ss=5.45; % NAIRU
growth_ss = 2.5;
lab_share = 0.7;

% Transitory parameters.
alpha = 0.4630; 
beta = 0.1485; 
omega = 0.1547; 
rho1 = 0.8687; 
kappa1 = 0.4056; 
phi1 = 0.6298; 
phi2 = 0.2628; 
tau = 0.2208; 
delta = 0.4970; 
kappa2 = 1.2899; 
parhist = 3.37; 
rho2 = 5.67; 
lambda = 5;
gamma=1/2;

model;
     
% Output
y=lgdp-lgdp_bar; 
Dlgdp_bar=lgdp_bar -.95*lgdp_bar(-1);
Dlgdp_bar=G/400 + res_lgdp_bar;
G = (1-tau)*G(-1)+ tau*growth_ss +  res_G; // trend growth
y =  rho1*y(-1)-rho2/100*(pie(-1)-2) + res_Y; // gap equation


% Inflation.   
pie = gamma*pie(+1)+(1-gamma)*pie(-1)+beta*y + res_PIE;


% Unemployment.   
unr_gap = unr_bar - unr;
Dunr_bar=unr_bar -unr_bar(-1);
Dunr_bar = lambda/100*(unr_ss-unr_bar(-1))+unr_g + res_unr_bar;
unr_g = (1-alpha)*unr_g(-1) + res_unr_g; 
unr_gap = phi1*unr_gap(-1)+ phi2*y + res_unr_gap; 


end;

initval;
y=0;
unr_gap=0;
unr=unr_ss;
G=0;//growth_ss;

lgdp=growth_ss;
//lgdp_bar= growth_ss;
pie=0;    
unr_bar=unr_ss;
unr_g=0;



end;

check;

steady;
