//%------------------------------------------------------------
//% Declare endogenous and exogenous variables
//%------------------------------------------------------------

var h_p n_cp n_hp c_p h_i n_ci n_hi c_i S B w_cp w_ci w_hp w_hi k_c b_i1 b_i2 k_h l c_e X q_h b_e1 b_e2 profit_nbank F r_nl r_il pi q_l R r_s Y GDP ih i_c i_h g_data_GDP g_data_C g_data_IH g_data_B g_data_qh g_data_ql data_pi data_R data_R_nl Z_c Z_h j phi psi epsilon_CP epsilon_B epsilon_pi epsilon_MP THETA m;//%All of them are AR(1) 
varexo u_j u_c u_h u_phi u_psi u_CP u_B u_pi u_MP;

//%-----------------------------------------------------------------------
//% Declare model parameters
//%------------------------------------------------------------------------

parameters PHI_SS BETA_P BETA_I DELTA_H U_C U_H V_H DELTA_KC DELTA_KH X_SS GAMMA OMEGA DELTA_F CHI ALPHA TREND_AC TREND_AH XI ETA_P ETA_I C ETA_IBANK EPSILON OMEGA_CALVO RHO_R RHO_THETA PHI_PI PHI_XGAP Z_PI Z_X RHO_AC RHO_AH RHO_J RHO_PHI RHO_PSI RHO_CP RHO_B RHO_PI RHO_MP STDERR_AC STDERR_AH STDERR_J STDERR_PHI STDERR_PSI STDERR_CP STDERR_B STDERR_PI STDERR_MP;

//%TREND_QH TREND_CP TREND_HP TREND_S TREND_CI TREND_HI TREND_B_I1 TREND_B_I2 TREND_QL TREND_L TREND_B_E1 TREND_B_E2 TREND_F TREND_NPROFIT TREND_KC TREND_KH TREND_Y QH_IH_Y C_Y HP_IH HI_IH CP_Y CI_Y CE_Y S_Y B_I1_Y B_I2_Y R_NL_SS KC_Y QH_IH_KH KH_Y QL_L_Y B_E1_Y B_E2_Y S_B F_B PROFIT_NBANK_F G_Y Y_GDP

//% Calibrated parameters
BETA_P       =0.99;
BETA_I       =0.97;
DELTA_H      =0.013;
U_C          =0.47;
U_H          =0.35;
V_H          =0.1;
DELTA_KC     =0.05;
DELTA_KH     =0.06;
X_SS         =1.15;
GAMMA        =0.97;
OMEGA        =0.09;
DELTA_F      =0.27;
CHI        =0.66;


//% Estimated parameters (mean)
PHI_SS       =0.10;
ALPHA        =0.65;
TREND_AC     =0.005;
TREND_AH     =0.005;
XI           =1;
ETA_P        =0.5;
ETA_I        =0.5;
C            =20;
ETA_IBANK    =50.5;
EPSILON      =0.5;
OMEGA_CALVO  =0.667;
RHO_R        =0.75;
RHO_THETA    =0.75;
PHI_PI       =1.5;
PHI_XGAP     =0.12;
Z_PI         =-1.5;
Z_X          =-0.12;


//% Estimated shocks parameters (mean)
RHO_AC       =0.8;
RHO_AH       =0.8;
RHO_J        =0.8;
RHO_PHI      =0.8;
RHO_PSI      =0.8;
//%RHO_IB       =0.8;
RHO_B        =0.8;
RHO_CP       =0.8;
RHO_PI       =0.8;
RHO_MP       =0.8;
STDERR_AC    =0.01;
STDERR_AH    =0.01;
STDERR_J     =0.01;
STDERR_PHI   =0.01;
STDERR_PSI   =0.01;
//%STDERR_IB    =0.01;
STDERR_B     =0.01;
STDERR_CP    =0.01;
STDERR_PI    =0.01;
STDERR_MP    =0.01;


//% Set DO_IRFS=1 to plot impulse responses
//% Set DO_ESTIMATION=1 to do estimation
DO_IRFS        = 0 ; 
DO_ESTIMATION  = 1 ; 




//%------------------------------------------------------------
//% Model equations
//%------------------------------------------------------------



model ; 

# TREND_QL        =TREND_AC;
# TREND_QH        =(1-U_H-V_H)*TREND_AH+(U_H+V_H)*TREND_AC-V_H*TREND_QL;
# TREND_CP        =TREND_AC;
# TREND_HP        =(1-U_H-V_H)*TREND_AC-(1-U_H-V_H)*TREND_AH+V_H*TREND_QL;
# TREND_S         =TREND_AC;
# TREND_CI        =TREND_AC;
# TREND_HI        =TREND_HP;
# TREND_IH        =TREND_HP;
# TREND_B_I1      =TREND_AC;
# TREND_B_I2      =TREND_AC;
# TREND_L         =TREND_AC-TREND_QL;
# TREND_B_E1      =TREND_AC;
# TREND_B_E2      =TREND_AC;
# TREND_B         =TREND_AC;
# TREND_F         =TREND_AC;
# TREND_NPROFIT   =TREND_AC;
# TREND_KC        =TREND_AC;
# TREND_KH        =TREND_AC;
# TREND_Y         =TREND_AC;


#  THETA_SS=0.60;
# M_SS=1-THETA_SS;
# QH_IH_GDP=0.036936369;
# QH_IH_Y=QH_IH_GDP/(1-QH_IH_GDP);
# R_S_SS=BETA_P^(-1)-1;
# PROFIT_NBANK_F=(1-(1-DELTA_F)/(1+TREND_F))/(CHI/(1+TREND_NPROFIT));
#  F_B=0.5*(4/3*OMEGA-sqrt(4/9*OMEGA^2-((1-(1-DELTA_F)/(1+TREND_F))*(1+TREND_NPROFIT)/CHI-R_S_SS)/(6*C)));
#  S_B=1-F_B;


# R_NL_SS=-C*(F_B-OMEGA)*F_B^2+BETA_P^(-1)-1;
# R_IL_SS=(ETA_IBANK/(ETA_IBANK-1))*(1+R_NL_SS)-1;

# HI_IH=((1-ALPHA)*(1-U_C)/(X_SS*QH_IH_Y)+(1-ALPHA)*(1-U_H-V_H))/((1-BETA_I*(1+TREND_QH)*(1-DELTA_H-THETA_SS-M_SS)-(1+TREND_QH)*THETA_SS/(1+R_NL_SS)-(1+TREND_QH)*M_SS/(1+R_IL_SS))/PHI_SS+(1-(1-DELTA_H)/(1+TREND_HI))+(1-(1+R_NL_SS)/(1+TREND_B_I1))*THETA_SS*(1+TREND_QH)/(1+R_NL_SS)+(1-(1+R_IL_SS)/(1+TREND_B_I2))*M_SS*(1+TREND_QH)/(1+R_IL_SS));
# HP_IH=(1+TREND_HI)/(TREND_HI+DELTA_H)-HI_IH;
# CP_Y=(1-BETA_P*(1+TREND_QH)*(1-DELTA_H))*HP_IH*QH_IH_Y/PHI_SS;
# CI_Y=(1-BETA_I*(1+TREND_QH)*(1-DELTA_H-THETA_SS-M_SS)-(1+TREND_QH)*THETA_SS/(1+R_NL_SS)-(1+TREND_QH)*M_SS/(1+R_IL_SS))*HI_IH*QH_IH_Y/PHI_SS;
# S_Y=(ALPHA*(1+TREND_Y)*(1-U_C)/X_SS+ALPHA*(1-U_H-V_H)*QH_IH_Y-(1-(1-DELTA_H)/(1+TREND_HP))*QH_IH_Y*HP_IH-CP_Y)/(1-(1+R_S_SS)/(1+TREND_S));

# B_I1_Y=(1+TREND_QH)/(1+R_NL_SS)*THETA_SS*HI_IH*QH_IH_Y;
# B_I2_Y=(1+TREND_QH)/(1+R_IL_SS)*M_SS*HI_IH*QH_IH_Y;

# KC_Y=(1+TREND_Y)*U_C*(1+TREND_Y)/((1-THETA_SS/(1+R_NL_SS)-M_SS/(1+R_IL_SS))/GAMMA-(1-DELTA_KC)+THETA_SS+M_SS)/X_SS;
# QH_IH_KH=((1-THETA_SS/(1+R_NL_SS)-M_SS/(1+R_IL_SS))/GAMMA-(1-DELTA_KH)+THETA_SS+M_SS)/(U_H*(1+TREND_Y));
# KH_Y=QH_IH_Y/QH_IH_KH;
# QL_L_Y=V_H*(1+TREND_Y)/((1-(1+TREND_QL)*THETA_SS/(1+R_NL_SS)-(1+TREND_QL)*M_SS/(1+R_IL_SS))/GAMMA-(1+TREND_QL)*(1-THETA_SS-M_SS))*QH_IH_Y;
# B_E1_Y=THETA_SS/(1+R_NL_SS)*(QL_L_Y*(1+TREND_QL)+KC_Y+KH_Y);
# B_E2_Y=M_SS/(1+R_IL_SS)*(QL_L_Y*(1+TREND_QL)+KC_Y+KH_Y);

# B_Y=B_I1_Y+B_I2_Y+B_E1_Y+B_E2_Y;
# F_B1=1-S_Y/B_Y;
# IC_Y=(1-(1-DELTA_KC)/(1+TREND_KC))*KC_Y;
# IH_Y=(1-(1-DELTA_KH)/(1+TREND_KH))*KH_Y;
# CE_Y=U_C/X_SS+(U_H+V_H)*QH_IH_Y+(1-(1+R_NL_SS)/(1+TREND_B_E1))*B_E1_Y+(1-(1+R_IL_SS)/(1+TREND_B_E2))*B_E2_Y-IC_Y-IH_Y-(1-1/(1+TREND_L))*QL_L_Y;

# C_Y=CP_Y+CI_Y+CE_Y;
# Y_GDP=1/(1+QH_IH_Y); 

# IC_GDP=IC_Y*Y_GDP;
# IH_GDP=IH_Y*Y_GDP;
# C_GDP=C_Y*Y_GDP;


//% 1
PHI_SS*(CP_Y)/(HP_IH*QH_IH_Y)*(h_p-phi)=c_p-q_h-BETA_P*(1+TREND_QH)*(1-DELTA_H)*(c_p(+1)-q_h(+1)+j-j(+1));
//% 2
n_cp=((ETA_P-XI)*(1+(1-U_C)/(1-U_H-V_H )/(QH_IH_Y*X_SS))^(-1)+XI)^(-1)*(w_cp-c_p-psi-((ETA_P-XI)*(1+(1-U_H-V_H )/(1-U_C)*QH_IH_Y*X_SS)^(-1))*n_hp);
//% 3
n_hp=((ETA_P-XI)*(1+(1-U_C)/(1-U_H-V_H )/(QH_IH_Y*X_SS))^(-1)+XI)^(-1)*(w_hp-c_p-psi-((ETA_P-XI)*(1+(1-U_H-V_H )/(1-U_C)*QH_IH_Y*X_SS)^(-1))*n_cp);
//% 4
c_p=c_p(+1)-BETA_P*r_s+j-j(+1);
//% 5
ALPHA*(1-U_C)/X_SS*(w_cp+n_cp)+ALPHA*(1-U_H-V_H)*QH_IH_Y*(w_hp+n_hp)+1/(1+TREND_S)*(1+R_S_SS)*S_Y*(1/(1+R_S_SS)*r_s(-1)+S(-1))=CP_Y*c_p+HP_IH*QH_IH_Y*((h_p-(1-DELTA_H)/(1+TREND_HP)*h_p(-1))+(1-(1-DELTA_H)/(1+TREND_HP))*q_h)+S_Y*S+(1-1/X_SS)*Y+1/X_SS*X+PROFIT_NBANK_F*F_B*B_Y*(profit_nbank-CHI/(1+TREND_NPROFIT)*profit_nbank(-1))+(B_I2_Y+B_E2_Y)*(r_il-r_nl)+(R_NL_SS-R_IL_SS)*(B_I2_Y*b_i2+B_E2_Y*b_e2);

//% Impatient households
//% 6
PHI_SS*(CI_Y)/(HI_IH*QH_IH_Y)*(h_i-phi)=c_i-q_h-BETA_I*(1+TREND_QH)*(1-DELTA_H-THETA_SS-M_SS)*(c_i(+1)-q_h(+1)+j-j(+1))-BETA_I*(1+TREND_QH)*THETA_SS*THETA-BETA_I*(1+TREND_QH)*M_SS*m+(1+TREND_QH)*THETA_SS/(1+R_NL_SS)*(q_h(+1)+THETA-1/(1+R_NL_SS)*r_nl-c_i)+(1+TREND_QH)*M_SS/(1+R_IL_SS)*(q_h(+1)+m-1/(1+R_IL_SS)*r_il-c_i);
//% 7
n_ci=((ETA_I-XI)*(1+(1-U_C)/(1-U_H-V_H )/(QH_IH_Y*X_SS))^(-1)+XI)^(-1)*(w_ci-c_i-psi-((ETA_I-XI)*(1+(1-U_H-V_H )/(1-U_C)*QH_IH_Y*X_SS)^(-1))*n_hi);
//% 8
n_hi=((ETA_I-XI)*(1+(1-U_C)/(1-U_H-V_H )/(QH_IH_Y*X_SS))^(-1)+XI)^(-1)*(w_hi-c_i-psi-((ETA_I-XI)*(1+(1-U_H-V_H )/(1-U_C)*QH_IH_Y*X_SS)^(-1))*n_ci);

//% 10
(1-ALPHA)*(1-U_C)/X_SS*(w_ci+n_ci)+(1-ALPHA)*(1-U_H-V_H)*QH_IH_Y*(w_hi+n_hi)+B_I1_Y*b_i1+B_I2_Y*b_i2=CI_Y*c_i+(HI_IH*QH_IH_Y)*(h_i-(1-DELTA_H)/(1+TREND_HI)*h_i(-1)+(1-(1-DELTA_H)/(1+TREND_HI))*q_h)+1/(1+TREND_B_I1)*(1+R_NL_SS)*B_I1_Y*(1/(1+R_NL_SS)*r_nl(-1)+b_i1(-1))+1/(1+TREND_B_I2)*(1+R_IL_SS)*B_I2_Y*(1/(1+R_IL_SS)*r_il(-1)+b_i2(-1));
//% 11
b_i1=THETA+q_h(+1)+h_i-1/(1+R_NL_SS)*r_nl;

b_i2=m+q_h(+1)+h_i-1/(1+R_IL_SS)*r_il;

//% Enterpreneurs
//% 12
Y-X =w_cp+n_cp;
//% 13
Y-X =w_ci+n_ci;
//% 14
q_h+ih =w_hp+n_hp;
//% 15
q_h+ih =w_hi+n_hi;
//% 16
GAMMA*(1-DELTA_KC-THETA_SS-M_SS)*(c_e(+1)-c_e+j-j(+1))+GAMMA*THETA_SS*THETA+GAMMA*M_SS*m+GAMMA*U_C*(1+TREND_Y)/(X_SS*KC_Y)*(c_e(+1)-c_e+j-j(+1)-Y(+1)+X(+1)+k_c)=THETA_SS/(1+R_NL_SS)*(THETA-r_nl/(1+R_NL_SS))+M_SS/(1+R_IL_SS)*(m-r_il/(1+R_IL_SS));
//% 17
GAMMA*(1-DELTA_KH-THETA_SS-M_SS)*(c_e(+1)-c_e+j-j(+1))+GAMMA*THETA_SS*THETA+GAMMA*M_SS*m+GAMMA*U_H*(1+TREND_Y)*QH_IH_KH*(c_e(+1)-c_e+j-j(+1)-q_h(+1)-ih(+1)+k_h)=THETA_SS/(1+R_NL_SS)*(THETA-r_nl/(1+R_NL_SS))+M_SS/(1+R_IL_SS)*(m-r_il/(1+R_IL_SS));
//% 18
GAMMA*(1+TREND_QL)*(c_e-c_e(+1)-j+j(+1)+q_l(+1))*(1-THETA_SS-M_SS)-GAMMA*(1+TREND_QL)*THETA_SS*THETA-GAMMA*(1+TREND_QL)*M_SS*m+GAMMA*V_H*(1+TREND_Y)*QH_IH_Y/QL_L_Y*(c_e-c_e(+1)-j+j(+1)+q_h(+1)+ih(+1)-l)=q_l-(1+TREND_QL)*THETA_SS/(1+R_NL_SS)*(THETA+q_l(+1)-1/(1+R_NL_SS)*r_nl)-(1+TREND_QL)*M_SS/(1+R_IL_SS)*(m+q_l(+1)-1/(1+R_IL_SS)*r_il);

//% 20
CE_Y*c_e+IC_Y*i_c+IH_Y*i_h+QL_L_Y*(q_l-1/(1+TREND_L)*q_l+l-1/(1+TREND_L)*l(-1))+ALPHA*(1-U_C)/X_SS*(w_cp+n_cp)+ALPHA*(1-U_H-V_H)*QH_IH_Y*(w_hp+n_hp)+(1-ALPHA)*(1-U_C)/X_SS*(w_ci+n_ci)+(1-ALPHA)*(1-U_H-V_H)*QH_IH_Y*(w_hi+n_hi)+(1+R_NL_SS)*B_E1_Y/(1+TREND_B_E1)*(1/(1+R_NL_SS)*r_nl(-1)+b_e1(-1))+(1+R_IL_SS)*B_E2_Y/(1+TREND_B_E2)*(1/(1+R_IL_SS)*r_il(-1)+b_e2(-1))=1/X_SS*(Y-X)+QH_IH_Y*(q_h+ih)+B_E1_Y*b_e1+B_E2_Y*b_e2;
//% 21
B_E1_Y*(1+R_NL_SS)*(b_e1+1/(1+R_NL_SS)*r_nl-THETA)=THETA_SS*(QL_L_Y*(1+TREND_QL)*(q_l(+1)+l)+KC_Y*k_c+KH_Y*k_h);

//% 22
B_E2_Y*(1+R_IL_SS)*(b_e2+1/(1+R_IL_SS)*r_il-m)=M_SS*(QL_L_Y*(1+TREND_QL)*(q_l(+1)+l)+KC_Y*k_c+KH_Y*k_h);


//% Normal Banks 

//% 22
PROFIT_NBANK_F*profit_nbank=1/F_B*(r_nl+R_NL_SS*B)-S_B/F_B*(r_s+R_S_SS*S)-C*(F_B-OMEGA)*F_B*(F-B)-C/2*(F_B-OMEGA)^2*F;
//% 23
r_nl-r_s=(R_NL_SS-R_S_SS)*(F_B/(F_B-OMEGA)+2)*(F-B)+epsilon_B;
//% 24
B=S_B*S+F_B*F;
//% 25
F=(1-DELTA_F)/(1+TREND_F)*F(-1)+CHI/(1+TREND_NPROFIT)*PROFIT_NBANK_F*profit_nbank(-1);

//% Shadow Banks
//% 26
r_il=ETA_IBANK/(ETA_IBANK-1)*r_nl;


//% Philips curve
//% 27
pi=BETA_P*exp(TREND_Y)/(1+BETA_P*exp(TREND_Y)*EPSILON)*pi(+1)+EPSILON/(1+BETA_P*exp(TREND_Y)*EPSILON)*pi(-1)+(1-OMEGA_CALVO)*(1-OMEGA_CALVO*BETA_P*exp(TREND_Y))/(OMEGA_CALVO*(1+BETA_P*exp(TREND_Y)*EPSILON))*(-X)+epsilon_pi;

//% Total borrowing
B_I1_Y*b_i1+B_E1_Y*b_e1+B_I2_Y*b_i2+B_E2_Y*b_e2=B_Y*B;

//% 30 
R=RHO_R*R(-1)+(1-RHO_R)*PHI_PI*pi+(1-RHO_R)*PHI_XGAP*(GDP-GDP(-1))+epsilon_MP;
//% 31
r_s=R-pi(+1);

//% 32
GDP=Y_GDP*Y+(1-Y_GDP)*(q_h+ih);
//% 33
HP_IH*(h_p-(1-DELTA_H)/(1+TREND_HP)*(h_p(-1)))+HI_IH*(h_i-(1-DELTA_H)/(1+TREND_HI)*(h_i(-1)))=ih;

l=0;

//% 37
Y=(1-U_C)*Z_c+(1-U_C)*ALPHA*n_cp+(1-U_C)*(1-ALPHA)*n_ci+U_C*k_c(-1);
//% 38
ih=(1-U_H-V_H )*Z_h+(1-U_H-V_H )*ALPHA*n_hp+(1-U_H-V_H )*(1-ALPHA)*n_hi+U_H*k_h(-1)+V_H*l(-1);
//% 39
k_c-(1-DELTA_KC)/(1+TREND_KC)*k_c(-1)=(TREND_KC+DELTA_KC)/(1+TREND_KC)*i_c;
//% 40
k_h-(1-DELTA_KH)*(1+TREND_KH)*k_h(-1)=(TREND_KH+DELTA_KH)/(1+TREND_KH)*i_h;

THETA=RHO_THETA*THETA(-1)+(1-RHO_THETA)*Z_PI*pi+(1-RHO_THETA)*Z_X*(GDP-GDP(-1))+epsilon_CP;
m=-THETA;


//% MEAUREMENT EQUATIONS

 //%data_GDP  =  GDP+TREND_Y;
 //%data_C    =  c_p+c_i+c_e+TREND_Y;
 //%data_IH   =  ih+TREND_IH;
//% data_B    =  B+TREND_B;
//% data_pi   =  pi;
 //%data_qh   =  q_h+TREND_QH;
 //%data_ql   =  q_l+TREND_QL;
//% data_R    =  R;
//% data_R_nl =  r_nl+pi(+1);


g_data_GDP    =GDP-GDP(-1)+TREND_Y;
g_data_C      =c_p+c_i+c_e-c_p(-1)-c_i(-1)-c_e(-1)+TREND_Y;
g_data_IH     =ih-ih(-1)+TREND_IH;
g_data_B      =B-B(-1)+TREND_B;
g_data_qh     =q_h-q_h(-1)+TREND_QH;
g_data_ql     =q_l-q_l(-1)+TREND_QL;

  data_pi     =pi;
  data_R      =R;
  data_R_nl   =r_nl+pi(+1);

//% STOCHASTIC PROCESSES FOR THE SHOCKS
Z_c                 =RHO_AC*Z_c(-1)+u_c;
Z_h                 =RHO_AH*Z_h(-1)+u_h;
j                   =RHO_J*j(-1)+u_j;
phi                 =RHO_PHI*phi(-1)+u_phi;
psi                 =RHO_PSI*psi(-1)+u_psi;
epsilon_CP          =RHO_CP*epsilon_CP(-1)+u_CP;
epsilon_B           =RHO_B*epsilon_B(-1)+u_B;
//%epsilon_IB          =RHO_IB*epsilon_IB(-1)+u_IB;
epsilon_pi          =RHO_PI*epsilon_pi(-1)+u_pi;
epsilon_MP          =RHO_MP*epsilon_MP(-1)+u_MP;

end;

steady;       

  
shocks;

var u_c   ; stderr STDERR_AC  ;
var u_h   ; stderr STDERR_AH  ;
var u_j   ; stderr STDERR_J   ;
var u_phi ; stderr STDERR_PHI ;
var u_psi ; stderr STDERR_PSI ;
var u_CP  ; stderr STDERR_CP  ;
var u_B   ; stderr STDERR_B   ;
//%var u_IB  ; stderr STDERR_IB  ;
var u_pi  ; stderr STDERR_PI  ;
var u_MP  ; stderr STDERR_MP  ;
end;


//%------------------------------------------------------------
//% TO SEE PROPERTIES OF MODEL:
//%------------------------------------------------------------


if DO_IRFS==1;

stoch_simul(order=1,irf=20);



end;



if(DO_ESTIMATION==1);

    estimated_params ;
    
    //%                    START VALUES   LB       UB            PRIORS       PRIOR MEAN  PRIOR SD
    stderr u_c         ,    0.00110    ,  0    ,  Inf  ,        inv_gamma_pdf,   0.001   ,   0.01 ;  
    stderr u_h         ,    0.00110    ,  0    ,  Inf  ,        inv_gamma_pdf,   0.001   ,   0.01 ;  
    stderr u_j         ,    0.00100    ,  0    ,  Inf  ,        inv_gamma_pdf,   0.001   ,   0.01 ;  
    stderr u_phi       ,    0.00100    ,  0    ,  Inf  ,        inv_gamma_pdf,   0.001   ,   0.01 ;  
    stderr u_psi       ,    0.00100    ,  0    ,  Inf  ,        inv_gamma_pdf,   0.001   ,   0.01 ;    
    stderr u_B         ,    0.00100    ,  0    ,  Inf  ,        inv_gamma_pdf,   0.001   ,   0.01 ;  
 //%stderr u_IB        ,    0.00100    ,  0    ,  Inf  ,        inv_gamma_pdf,   0.001   ,   0.01 ;  
    stderr u_CP        ,    0.00100    ,  0    ,  Inf  ,        inv_gamma_pdf,   0.001   ,   0.01 ; 
    stderr u_pi        ,    0.00100    ,  0    ,  Inf  ,        inv_gamma_pdf,   0.001   ,   0.01 ;     
    stderr u_MP        ,    0.00100    ,  0    ,  Inf  ,        inv_gamma_pdf,   0.001   ,   0.01 ;  


    PHI_SS              ,    0.1       ,  0.05 ,       ,        beta_pdf     ,   0.1     ,   0.05 ;   
    ALPHA               ,    0.6500    ,  0    ,   1   ,        beta_pdf     ,   0.65    ,   0.05 ;      
  
    ETA_P               ,    0.5000    ,  0    ,  Inf  ,        gamma_pdf    ,   0.50    ,   0.1  ;    
    ETA_I               ,    0.5000    ,  0    ,  Inf  ,        gamma_pdf    ,   0.50    ,   0.1  ;    
    C                   ,    20.0000   ,  0    ,  Inf  ,        gamma_pdf    ,   20      ,   5    ;   
    EPSILON             ,    0.5000    ,  0    ,  Inf  ,        beta_pdf     ,   0.5     ,   0.2  ;  
    OMEGA_CALVO         ,    0.6670    ,  0    ,   1   ,        beta_pdf     ,   0.667   ,   0.05 ;  
    RHO_R               ,    0.75000   ,  0    ,   inf ,        beta_pdf     ,   0.75    ,   0.2  ;  
    RHO_THETA           ,    0.75000   ,  0    ,   inf ,        beta_pdf     ,   0.75    ,   0.2  ;      
    PHI_PI              ,    1.5000    ,  0    ,   inf ,        normal_pdf   ,   1.5     ,   0.10 ;  
    PHI_XGAP            ,    0.12      ,  0    ,   inf ,        normal_pdf   ,   0.12    ,   0.10 ;        
    Z_PI                ,    -1.5      ,       ,  0    ,        normal_pdf   ,   -1.5    ,   1.5  ; 
    Z_X                 ,    -0.12000  ,       ,   0   ,        normal_pdf   ,   -0.12   ,   0.1  ;
    TREND_AC            ,    0.00650   ,       ,       ,        normal_pdf   ,   0.005   ,   0.01 ;   
    TREND_AH            ,    0.0055    ,       ,       ,        normal_pdf   ,   0.005   ,   0.01 ;   

    RHO_AC              ,    0.8000    ,       , 0.999 ,        beta_pdf     ,   0.80    ,   0.10 ;    
    RHO_AH              ,    0.8000    ,       , 0.999 ,        beta_pdf     ,   0.80    ,   0.10 ;      
    RHO_J               ,    0.8000    ,       , 0.999 ,        beta_pdf     ,   0.80    ,   0.10 ;  
    RHO_PHI             ,    0.8000    ,       , 0.999 ,        beta_pdf     ,   0.80    ,   0.10 ;  
    RHO_PSI             ,    0.8000    ,       , 0.999 ,        beta_pdf     ,   0.80    ,   0.10 ;       
    RHO_B               ,    0.8000    ,       , 0.999 ,        beta_pdf     ,   0.80    ,   0.10 ;    
   //% RHO_IB           ,    0.8000    ,       , 0.999 ,        beta_pdf     ,   0.80    ,   0.10 ;  
    RHO_CP              ,    0.8000    ,       , 0.999 ,        beta_pdf     ,   0.80    ,   0.10 ;      
    RHO_PI              ,    0.8000    ,       , 0.999 ,        beta_pdf     ,   0.80    ,   0.10 ;      
    RHO_MP              ,    0.8000    ,       , 0.999 ,        beta_pdf     ,   0.80    ,   0.10 ;      
    dsge_prior_weight   ,    10    , 0.728 , inf   ,        uniform_pdf  , 10   ,   0.1   ; 


  //%This has to be turned off, otherwise, it will be stuck with 0% acceptation rate  XI              ,    1.0000,       ,       ,        gamma_pdf  ,       1     ,   0.1  ;      
  //% This has to be turned off, otherwise, it will casue BK condition problem. ETA_IBANK       ,  359.9000,  0    ,  Inf  ,        gamma_pdf  ,     359.9   ,   50   ;  
 end;


varobs g_data_GDP g_data_C g_data_IH g_data_B g_data_qh g_data_ql data_pi data_R data_R_nl;

//% observation_trends;
  //% data_GDP (TREND_AC) ;
  //% data_C (TREND_AC) ;
  //% data_IH ((1-U_H-V_H)*TREND_AC-(1-U_H-V_H)*TREND_AH+V_H*TREND_AC) ;
  //% data_B (TREND_AC) ;
  //% data_qh ((1-U_H-V_H)*TREND_AH+(U_H+V_H)*TREND_AC-V_H*TREND_AC) ;
  //% data_ql (TREND_AC) ;

//%end;


//% 

estimation(datafile = checkdata, 
dsge_var, 
dsge_varlag=1,
first_obs=2,
presample=2, 
bayesian_irf,irf=20,
mh_drop=0.2,
conf_sig=0.95,
smoother,
mh_jscale=0.5, 
mode_compute=6,                  

prior_trunc=1e-100,
mh_replic=2000,  
mh_nblocks=1, 
lik_init=1);


end;
//%identification;
//%

