// model with: TWO WAGES; INVESTMENT ADJ. COSTS;  VARIABLE CAPITAL UTILIZATION;  CONSUMPTION HABITS
//            STICKY BANK RATES, PRICES & WAGES à la Rotemberg with indexation to both past and st.st. inflation
// 9 blocks: 1) PATIENTs  2) IMPATIENTs  3) CAPITAL PRODUCERS  4) ENTREPRENEURS   5) BANKS   6) RETAILERS        
//           7) LABOR MKT WITH ONE UNION FOR EACH LABOR TYPE  8) AGGREGATION & EQUILIBRIUM   9) MONETARY POLICY  
// THIS VERSION: April 20th, 2009
// BBS has all items dated (t) - Banking capital in real terms is defined as: K_B(t)/p(t)
// Banking profits are defined in the model code at time (t) - All equations in exp form
// This is the full version (monop. competitive banking sector & BANK capital à la Gerali with sticky rates) 


////////////////////////////KILLING THE LABOUR MARKET RIGIDITIES//////////////////////////////
/////////////SS calculated from the Gerali model 
    
%grid_vi             = [ 0.09*1.02 : 0.01 : 0.10 ]  ;

%[n4, n_grid_vi ]    = size(grid_vi)    ;
 
counter = 0;
    
%for i4 = 1:n_grid_vi;
    
    %load steady_state_Y1_baseline.txt;
    
    var
    
    c_p       // 		1
    h_p       // 		2
    d_p       // 		3
    l_p       // 		4
    lam_p     // 		5
    J_R       // 		6
    j_B       // 		7
    c_i       // 		9
    h_i       // 		10
    b_i       // 		11
    l_i       // 		12
    lam_i     // 		13
    s_i       // 		14
    I		  //		16
    q_k		  //		17
    c_e		  //		18
    k_e		  //		19
    l_pd	  //		20
    l_id	  //		21
    b_ee	  //		22
    y_e		  //		23
    lam_e	  //		24
    s_e		  //		25
    d_b		  //		26
    b_h		  //		27
    b_e		  //		28
    r_d		  //		29
    r_bh	  //		30
    r_be	  //		31
    R_b		  //		32
    K_b		  //		33
    pie       // 		34
    x         // 		35
    C         // 		36
    Y         // 		37
    D         // 		38
    BE		  //		39
    BH		  //		40
    B         // 		41
    w_p       // 		42
    w_i       // 		43
    J_B		  //		44
    q_h       // 		45
    K		  //		46
    r_ib      // 		48
    r_k       // 		49
    ee_z      // 		50
    A_e       // 		51
    ee_j      // 		52
    mk_d      // 		53
    mk_be     // 		54
    mk_bh     // 		55
    ee_qk     // 		56
    m_i       // 		57
    m_e       // 		58
    eps_y     // 		59
    Y1		  //		61
    spr_b	  //		62
    rr_e	  //		63
    aux1      //		64
    vi		  //		65
    L	      //		66
    weight_BH //		67
    weight_BE //		68
    k_ratio ; //		69
    
    
    varexo e_A_e e_j e_l e_me e_mi e_mk_be e_mk_bh e_mk_d e_r_ib e_qk e_y e_z;  //13 varexo
    
    
    parameters  beta_p j phi beta_i m_i_ss beta_e m_e_ss alpha                  // HOUSEHOLDS & ENTREPRENEURS
    h a_i a_p a_e gamma_p gamma_i gamma_e ni pi_share                           // HOUSEHOLDS & ENTREPRENEURS
    eps_d eps_bh eps_be                                                         // BANKS
    mk_d_ss mk_bh_ss mk_be_ss r_be_ss r_bh_ss r_d_ss r_k_ss                     // BANKS (SS)
    gamma_b beta_b delta_kb kappa_kb                                            // BANKS
    eps_y_ss kappa_p ind_p ind_w                                                // RETAILERS
    kappa_i kappa_d kappa_be kappa_bh deltak                                    // OTHERS
    rho_ib phi_pie phi_y                                                        // POLICY
    piss r_ib_ss vi_ss x_ss R_b_ss                                              // STEADY STATE
    rho_ee_z rho_A_e rho_ee_j rho_mi rho_me rho_eps_y                           // SHOCKS
    rho_mk_d rho_mk_be rho_mk_bh rho_ee_qk rho_eps_l                            // SHOCKS
    mu_qp mu_dp mu_cp mu_qi mu_ci mu_bi mu_ke mu_be mu_ce mu_jb ;               // Steady state households & entrepreneurs

    % **********************************************************************************
    % estimated parameters are set at the median of the posterior marginal distributions
    % **********************************************************************************

beta_p     	=	0.994550000000000	; % calibrated ok
beta_i     	=	0.975000000000000	; % calibrated ok
beta_b     	=	0.940050000000000	; % calibrated  <--
beta_e     	=	0.975000000000000	; % calibrated ok
j          	=	0.203000000000000	; % calibrated ok
phi        	=	1.500000000000000	; % calibrated ok
m_i_ss     	=	0.750000000000000	; % calibrated ok
m_e_ss     	=	0.400000000000000	; % calibrated ok
alpha      	=	0.340000000000000	; % calibrated ok (=1-0.66)
h          	=	1.000000000000000	; % calibrated ok
a_i        	=	0.8          	; % estimated 
a_p        	=	0.000000000000000	; % calibrated
a_e        	=	0.000000000000000	; % calibrated
gamma_p    	=	1.000000000000000	; % calibrated
gamma_i    	=	1.000000000000000	; % calibrated
gamma_e    	=	1.000000000000000	; % calibrated
ni         	=	0.800000000000000	; % calibrated
eps_l_ss   	=	5.000000000000000	; % calibrated ok
kappa_w    	=	99.8983         	; % estimated
eps_d      	=	-1.1	; % calibrated ok 
eps_bh     	=	5.85	; % calibrated ok-default: 5.85 for 25% liquidity proxy (14bp):4.935/for 50%: 5.29
eps_be     	=	4.85    ; % calibrated ok-default: 4.85 for 25% liquidity proxy (14bp):3.935/for 50%: 4.29
mk_d_ss    	=	eps_d   / (eps_d  - 1); % 0.571697789960578	; % calibrated
mk_bh_ss   	=	eps_bh  / (eps_bh - 1); % 1.401533321911910	; % calibrated
mk_be_ss   	=	eps_be  / (eps_be - 1); % 1.401533321911910	; % calibrated
gamma_b    	=	1.000000000000000	; % calibrated
deltak     	=	0.040000000000000	; % calibrated ok
piss       	=	1.000000000000000	; % calibrated
vi_ss      	=	0.1     	; % calibrated
eps_y_ss   	=	8.90000000000000	; % calibrated ok
h           =   1                   ; % calibrated                                  
kappa_kb   	=	11.0683         	; % estimated
kappa_p    	=	28.6502         	; % estimated
ind_p      	=	0.1605          	; % estimated
ind_w      	=	0.2757          	; % estimated
kappa_i    	=	10.1822         	; % estimated
kappa_d    	=	3.5030          	; % estimated
kappa_be   	=	9.3638          	; % estimated
kappa_bh   	=	10.0867         	; % estimated
rho_ib     	=	0.7686          	; % estimated
phi_pie    	=	1.9816          	; % estimated
phi_y      	=	0.3459          	; % estimated
rho_ee_z   	=	0.9390          	; % estimated
rho_A_e    	=	0.9390          	; % estimated
rho_ee_j   	=	0.909222967643905	; % estimated
rho_mi     	=	0.938578931344182	; % estimated
rho_me     	=	0.910171380445550	; % estimated
rho_eps_y  	=	0.256295678347778	; % estimated
rho_mk_d   	=	0.859494657527038	; % estimated
rho_mk_be  	=	0.810106816126432	; % estimated
rho_mk_bh  	=	0.777287054862844	; % estimated
rho_ee_qk  	=	0.440993407158326	; % estimated
rho_eps_l  	=	0.677034135657493	; % estimated


r_ib_ss     = (piss/beta_p - 1) * (eps_d-1)/eps_d ;    
R_b_ss      = r_ib_ss ;
r_be_ss     = R_b_ss * mk_be_ss ;				
r_bh_ss     = R_b_ss * mk_bh_ss ;	
r_d_ss      = r_ib_ss * mk_d_ss ;                 			
r_k_ss      = -(1-deltak)-m_e_ss*(1-deltak)*piss/beta_e*(1/(1+r_be_ss)-beta_e/piss)+1/beta_e;
eksi_1      = r_k_ss;                             
eksi_2      = 0.1*r_k_ss;                         
eps_b       = mean([eps_bh,eps_be]);

pi_share    = 0.35;                   % share of bank profits payed out to patient households

delta_kb      = r_ib_ss/vi_ss * (1-pi_share)*(eps_d - eps_b + vi_ss * eps_d*(eps_b-1))/((eps_b-1)*(eps_d-1));  

    x_ss    = (eps_y_ss / (eps_y_ss - 1)) ;
    mu_qi   = (j / (1 - beta_i * (1-m_i_ss) - ((m_i_ss * piss)/(1+r_bh_ss)))) ;
    mu_ci   = (gamma_e * (1-alpha) * (1-ni)) / (gamma_i * x_ss * (1 - (m_i_ss * mu_qi * piss / (1+r_bh_ss)) + m_i_ss * mu_qi)) ;    
    mu_bi   = (m_i_ss * mu_qi * mu_ci * piss) / (1 + r_bh_ss) ;
    mu_ke   = alpha / r_k_ss ;  
    mu_be   = m_e_ss * piss * (1-deltak) * mu_ke / (1 + r_be_ss) ;   
    mu_ce   = (alpha - mu_ke * (deltak + m_e_ss * (1-deltak) * (1 - (piss/(1+r_be_ss))))) ; 
    mu_qp   = j / (1 - beta_p)  ;
    mu_dp   = (gamma_b/gamma_p * ((gamma_e/gamma_b)*(delta_kb - r_ib_ss * mk_be_ss)/(delta_kb - r_ib_ss * mk_d_ss) * mu_be + (gamma_i / gamma_b) * (delta_kb - r_ib_ss * mk_be_ss)/(delta_kb - r_ib_ss * mk_d_ss) * mu_bi)) ;
    mu_cp   = (((gamma_e/gamma_p)*(1-alpha)*(1-ni) + mu_dp * ((1-beta_p)/beta_p) + (x_ss - 1) + pi_share * (r_ib_ss * (mk_bh_ss * (gamma_i/gamma_b) * mu_bi + mk_be_ss * (gamma_e/gamma_b) * mu_be - mk_d_ss * (gamma_p/gamma_b) * mu_dp))) / x_ss) ;  
    mu_jb   =  (r_ib_ss * (mk_bh_ss * (gamma_i/gamma_b) * mu_bi + mk_be_ss * (gamma_e/gamma_b) * mu_be - mk_d_ss * (gamma_p/gamma_b) * mu_dp)) ;

    model;
    
    ////***********   1) PATIENT HHs ********************************************************
    
    (1-a_i)*exp(ee_z)*(exp(c_p) - a_i*exp(c_p(-1)))^(-1) = exp(lam_p);//x
    
    j * (exp(ee_j)) / exp(h_p) - exp(lam_p) * exp(q_h) + beta_p * exp(lam_p(+1)) * exp(q_h(+1)) = 0; //x
    
    exp(lam_p) = beta_p * exp(lam_p(+1)) * (1+exp(r_d)) / exp(pie(+1)); //x
    
    exp(w_p) * exp(lam_p) = (exp(l_p) ^ (phi)) ;
    
    exp(c_p) + exp(q_h) * ( exp(h_p) - exp(h_p(-1)) ) + exp(d_p) = exp(w_p) * exp(l_p) 
            + (1+exp(r_d(-1)))*exp(d_p(-1))/exp(pie) + exp(J_R)/gamma_p + pi_share*exp(j_B(-1))/(gamma_p*exp(pie));//x  //
    
    ////***********   2) IMPATIENT HHs ********************************************************5
    
    (1-a_i)*exp(ee_z)*(exp(c_i) - a_i*exp(c_i(-1)))^(-1)  = exp(lam_i);//x
    
    j * (exp(ee_j))  / exp(h_i) - exp(lam_i) * exp(q_h) + beta_i * exp(lam_i(+1)) * exp(q_h(+1))  + exp(s_i) * exp(m_i) *exp(q_h(+1))   * exp(pie(+1))  = 0;//x    //

    exp(lam_i) - beta_i * exp(lam_i(+1)) * (1+exp(r_bh)) / exp(pie(+1)) = exp(s_i) * (1+exp(r_bh)); //x
    
    exp(w_i)  * exp(lam_i) = (exp(l_i) ^ (phi));
    
    exp(c_i) + exp(q_h) * (exp(h_i) - exp(h_i(-1))) + (1+exp(r_bh(-1)))*exp(b_i(-1))/exp(pie) = exp(w_i) * exp(l_i) + exp(b_i)  ;//x  //
    
    (1+exp(r_bh)) * exp(b_i) = exp(m_i) * exp(q_h(+1)) * exp(h_i) * exp(pie(+1)); //x   //
    
    ////***********  3) CAPITAL PRODUCERS *****************************************************11
    
    exp(K) = (1-deltak) * exp(K(-1)) + ( 1 - kappa_i/2 * (exp(I)*exp(ee_qk)/exp(I(-1)) - 1)^2 ) * exp(I) ;//x
    
    1 = exp(q_k) * ( 1 -  kappa_i/2 * (exp(I)*exp(ee_qk)/exp(I(-1)) - 1)^2  - kappa_i * (exp(I)*exp(ee_qk)/exp(I(-1)) - 1) * exp(I)*exp(ee_qk)/exp(I(-1)) )
    + beta_e * exp(lam_e(+1)) / exp(lam_e) * exp(q_k(+1)) *   kappa_i * (exp(I(+1))*exp(ee_qk(+1))/exp(I) - 1) * exp(ee_qk(+1)) * (exp(I(+1))/exp(I))^2 ; //x                                //   15
    
    ////************  4) ENTREPRENEURS *********************************************************13
    
    (1-a_i)*(exp(c_e) - a_i*exp(c_e(-1)))^(-1) = exp(lam_e);//x
    
    exp(s_e) * exp(m_e) * exp(q_k(+1)) * exp(pie(+1)) * (1-deltak) + beta_e * exp(lam_e(+1)) * ( exp(q_k(+1))*(1-deltak) + exp(r_k(+1)) ) = exp(lam_e) * exp(q_k) ;//x  //
    
    exp(w_p) =    ni  * (1-alpha) * exp(y_e) / ( exp(l_pd) * exp(x) );//x
    
    exp(w_i) = (1-ni) * (1-alpha) * exp(y_e) / ( exp(l_id) * exp(x) );//x
    
    exp(lam_e) - exp(s_e)  * (1+exp(r_be)) = beta_e * exp(lam_e(+1)) * (1+exp(r_be)) / exp(pie(+1));//x  //
    
    exp(c_e) + ((1+exp(r_be(-1))) * exp(b_ee(-1)) / exp(pie) ) +  (exp(w_p)*exp(l_pd) + exp(w_i)*exp(l_id)) + exp(q_k) * exp(k_e) =
    exp(y_e) / exp(x) + exp(b_ee) + exp(q_k) * (1-deltak) * exp(k_e(-1))  ;//x   //    20
    
    exp(y_e) = exp(A_e) * (exp(k_e(-1)))^(alpha) * ( exp(l_pd)^ni * exp(l_id)^(1-ni) ) ^ (1-alpha);//x
    
    (1+exp(r_be)) * exp(b_ee) = exp(m_e) * exp(q_k(+1))  *exp(pie(+1)) * exp(k_e) * (1-deltak); //x//
    
    exp(r_k) = alpha * exp(A_e) * exp(k_e(-1))^(alpha-1) * ( exp(l_pd)^ni * exp(l_id)^(1-ni) ) ^ (1-alpha) /exp(x);//x  // 
    
    ////*************  5)BANKS ****************************************************************22
    
    exp(R_b) = - kappa_kb * ( exp(K_b) / exp(B) - exp(vi) ) * (exp(K_b)/exp(B)) ^2  + exp(r_ib) ;//x
    
    exp(K_b) * exp(pie) = (1-delta_kb) * exp(K_b(-1))  + (1-pi_share)*exp(j_B(-1)) ;//x
    
    gamma_b * exp(d_b)  = gamma_p * exp(d_p) ;//x
    gamma_b * exp(b_h)  = gamma_i * exp(b_i) ;//x
    gamma_b * exp(b_e)  = gamma_e * exp(b_ee);//x
    
    (exp(b_h) + exp(b_e))  = ( exp(d_b) + exp(K_b) ) ;
    
    %exp(vi) =  ((vi_ss)^( 1-0.92 ) ) * ( (exp(b_h)+ exp(b_e))/exp((Y1(-4)))  )^( (1-0.92)*0.1 )* exp( vi(-1) )^0.92 ;% Countercyclical Capital Buffer Equation
    
    exp(vi) = ( vi_ss ^( 1-0.92 ) ) * ( exp(Y1)/exp(Y1(-4)) )^( ( 1 - 0.92 )  )* exp( vi(-1) )^0.92;//x
    
     
    exp(weight_BH) = ( 1 ^( 1-0.94 ) ) * ( exp(Y1) / exp(Y1(-4)) )^( ( 1 - 0.94 ) * ( - 10 * 1 ) ) * exp( weight_BH(-1) )^0.94;//x

    exp(weight_BE) = ( 1 ^( 1-0.92 ) ) * ( exp(Y1)/exp(Y1(-4)) )^(( 1 - 0.92 ) * ( - 15 * 1  ))* exp( weight_BE(-1) )^0.92;// 31
    
    /// PRICING in terms of MK ///
    
    - 1 + exp(mk_d)/(exp(mk_d)-1)  - exp(mk_d)/(exp(mk_d)-1)  * exp(r_ib)/exp(r_d)  - kappa_d  * (exp(r_d)/exp(r_d(-1)) - 1)  * exp(r_d)/exp(r_d(-1))
    + beta_p * ( exp(lam_p(+1))/exp(lam_p) ) * kappa_d  * ( exp(r_d(+1))/exp(r_d) - 1 )   * ( (exp(r_d(+1))/exp(r_d))^2 )   * (exp(d_b(+1))/exp(d_b)) = 0;//x
    
    + 1 - exp(mk_be)/(exp(mk_be)-1)  +  exp(mk_be)/(exp(mk_be)-1)  * exp(R_b)/exp(r_be) - kappa_be * (exp(r_be)/exp(r_be(-1)) - 1) * exp(r_be)/exp(r_be(-1))
    + beta_p * ( exp(lam_p(+1))/exp(lam_p) ) * kappa_be * ( exp(r_be(+1))/exp(r_be) - 1 ) * ( (exp(r_be(+1))/exp(r_be))^2 ) * (exp(b_e(+1))/exp(b_e)) = 0;//x  
    
    + 1 - exp(mk_bh)/(exp(mk_bh)-1)  +  exp(mk_bh)/(exp(mk_bh)-1)  * exp(R_b)/exp(r_bh) - kappa_bh * (exp(r_bh)/exp(r_bh(-1)) - 1) * exp(r_bh)/exp(r_bh(-1))
    + beta_p * ( exp(lam_p(+1))/exp(lam_p) ) * kappa_bh * ( exp(r_bh(+1))/exp(r_bh) - 1 ) * ( (exp(r_bh(+1))/exp(r_bh))^2 ) * (exp(b_h(+1))/exp(b_h)) = 0;//x
    
    exp(j_B) = + exp(r_bh) *  exp(b_h)
    + exp(r_be)  *  exp(b_e)
    - exp(r_d)   *  exp(d_b)
    - kappa_d/2  * ( (exp(r_d)/exp(r_d(-1))-1)^2)   * exp(r_d) *exp(d_b)
    - kappa_be/2 * ( (exp(r_be)/exp(r_be(-1))-1)^2) * exp(r_be)*exp(b_e)
    - kappa_bh/2 * ( (exp(r_bh)/exp(r_bh(-1))-1)^2) * exp(r_bh)*exp(b_h)
    - kappa_kb/2 * ( ( exp(K_b) / exp(B)  - exp(vi) ) ^2) * exp(K_b);//x //  35
    
    ////***********  6)RETAILERS **************************************************************
    
    exp(J_R)  = exp(Y)*(1 - (1/exp(x))    - (kappa_p/2) * (exp(pie) - ( exp(pie(-1)) ^ ind_p * piss ^ (1-ind_p) ))^2 ) ;//x
    
    1 - exp(eps_y) + exp(eps_y) / exp(x) -    kappa_p * (exp(pie)     - ( exp(pie(-1)) ^ ind_p * piss ^ (1-ind_p) )) * exp(pie)
    + beta_p*(exp(lam_p(+1))/exp(lam_p))* kappa_p * (exp(pie(+1)) - ( exp(pie)     ^ ind_p * piss ^ (1-ind_p) )) * exp(pie(+1)) * (exp(Y(+1))/exp(Y)) = 0;//x  // 37
    
    ////************  7) AGGREGATION & EQUILIBRIUM  ************************************************
    
    exp(C)              = gamma_p * exp(c_p) + gamma_i * exp(c_i) + gamma_e * exp(c_e);//x
    exp(BH)             = gamma_b * exp(b_h);//x
    exp(BE)             = gamma_b * exp(b_e);//x
    exp(B)              = ( exp(weight_BH) * exp(BH) + exp(weight_BE) * exp(BE) );//x //
    exp(D)              = gamma_p * exp(d_p) ;//x // oppure: (gamma_b * exp(d_b))
    exp(Y)              = gamma_e * exp(y_e);//x //
    exp(J_B)            = gamma_b * exp(j_B);//x  //
    gamma_e * exp(l_pd) = gamma_p * exp(l_p);//x
    gamma_e * exp(l_id) = gamma_i * exp(l_i);//x
    h                   = gamma_p * exp(h_p) + gamma_i * exp(h_i);//x //
    exp(K)              = gamma_e * exp(k_e);//x //
    exp(Y1)             = exp(C) + 1 * (exp(K)-(1-deltak)*exp(K(-1))) ;//x //  
    //exp(Y)            = exp(C) + exp(q_k) * (exp(K)-(1-deltak)*exp(K(-1))) + delta_kb * exp(K_b(-1))
    //                      + (eksi_1*(exp(u)-1) + eksi_2/2*((exp(u)-1)^2))
    //                      + kappa_p/2  * (  exp(pie) - ( exp(pie(-1)) ^ ind_p * piss ^ (1-ind_p) ))^2 * exp(Y)
    //                      + kappa_d/2  * ( (exp(r_d(-1))/exp(r_d(-2))-1)^2)   * exp(r_d(-1)) *exp(d_b(-1))
    //                      + kappa_be/2 * ( (exp(r_be(-1))/exp(r_be(-2))-1)^2) * exp(r_be(-1))*exp(b_e(-1))
    //                      + kappa_bh/2 * ( (exp(r_bh(-1))/exp(r_bh(-2))-1)^2) * exp(r_bh(-1))*exp(b_h(-1))
    //                         ; //x //50
     
    ////***********  8) TAYLOR RULE & PROFITS CB *****************************************************
    
  (1+exp(r_ib)) = (1+r_ib_ss)^(1-rho_ib) * (1+exp(r_ib(-1)))^rho_ib *  
  (( exp(pie) / piss) ^phi_pie * (exp(Y1)/exp(Y1(-1)))^phi_y  ) ^ (1-rho_ib) * (1+e_r_ib) ;//x   
    
    ////***********  9) EXOGENOUS PROCESSES ****************************************************
    
    exp(ee_z)     = 1 - rho_ee_z   *    1          + rho_ee_z   * exp(ee_z(-1))    + e_z;//x
    exp(A_e)      = 1 - rho_A_e    *    1          + rho_A_e    * exp(A_e(-1))     + e_A_e;//x
    exp(ee_j)     = 1 - rho_ee_j   *    1          + rho_ee_j   * exp(ee_j(-1))    + e_j;//x
    exp(m_i)      = (1-rho_mi)     *  m_i_ss       + rho_mi     * exp(m_i(-1))     + e_mi;//x
    exp(m_e)      = (1-rho_me)     *  m_e_ss       + rho_me     * exp(m_e(-1))     + e_me;//x
    exp(mk_d)     = (1-rho_mk_d)   * mk_d_ss       + rho_mk_d   * exp(mk_d(-1))    + e_mk_d;//x
    exp(mk_be)    = (1-rho_mk_be)  * mk_be_ss      + rho_mk_be  * exp(mk_be(-1))   + e_mk_be;//x
    exp(mk_bh)    = (1-rho_mk_bh)  * mk_bh_ss      + rho_mk_bh  * exp(mk_bh(-1))   + e_mk_bh;//x
    exp(ee_qk)    =  1-rho_ee_qk   *    1          + rho_ee_qk  * exp(ee_qk(-1))   + e_qk;//x
    exp(eps_y)    = (1-rho_eps_y)  * eps_y_ss      + rho_eps_y  * exp(eps_y(-1))   + e_y;//x     61
    
    ////***********  10) AUXILIARY VARIABLES *****************************************************
    
    exp(rr_e)     = exp(l_pd)^ni * exp(l_id)^(1-ni);//x
    exp(aux1)     = exp(j_B)    ;//x
    exp(k_ratio)  = exp(K_b) / ( exp(BH) + exp(BE) );//x
    exp(L)        = exp(BH) + exp(BE) ;//x
    exp(spr_b)    = 0.5*exp(r_bh) + 0.5*exp(r_be) - exp(r_d);//x                                 // 66
    
end; //model
 
initval;
x    = x_ss                        ; 
q_k  = 1                           ;
A_e  = 1                           ; 
%y_e  = A_e * k_e^alpha * (l_pd^ni * l_id ^(1-ni))^(1-alpha) ; 
y_e = 1                            ;
q_h  = mu_qp * (c_p / h_p)         ; 
r_d  = (piss/beta_p -1)            ;
d_p  = mu_dp * (y_e / x)           ; 
c_p  = mu_cp * y_e                 ;
q_h  = mu_qi * (c_i / h_i)         ;
c_i  = mu_ci * y_e                 ;
b_i  = mu_bi * (y_e / x)           ;
r_bh = r_bh_ss                     ;
k_e  = mu_ke * (y_e / (q_k * x))   ;
b_ee = mu_be * (y_e / x)           ;
c_e  = mu_ce * (y_e / x)           ;
r_be = r_be_ss                     ; 
J_R  = (x - 1) * (y_e / x)         ; 
I    = deltak * K                  ; 
J_B  = (delta_kb / (1-pi_share)) * K_b ;
J_B  = mu_jb                       ;
Y    = C + q_k * deltak * K + delta_kb * K_b ; 
h_p  = (mu_qp * mu_cp)/(mu_qp * mu_cp + mu_qi * mu_ci) ;
h_i  = (mu_qi * mu_ci)/(mu_qp * mu_cp + mu_qi * mu_ci) ;  

end;

shocks;
//estimated st.dev.
            var e_z         = 0.0152683462770726^2;
            var e_A_e       = 0.00512426105215156^2;
            var e_j         = 0.0666521707690898^2;
            var e_me        = 0.00325455234425937^2;
            var e_mi        = 0.00243843645883989^2;
            var e_mk_d      = 0.0302568470883558^2;
            var e_mk_bh     = 0.123519101019487^2;
            var e_mk_be     = 0.00723910778720155^2;
            var e_qk        = 0.0131631984802325^2;
            var e_r_ib      = 0.00157434820106446^2;
            var e_y         = 0.620300719165277^2;
            var e_l         = 0.434843841701844^2;

end;

options_.nograph   = 1;
options_.nomoments = 0;
options_.noprint   = 1;

%stoch_simul(order=1,irf=40) Y1 Y C I B q_h q_k J_B BE BH K_b k_ratio L  pie spr_b r_bh r_be r_d r_ib D  h_i h_p vi;

planner_objective gamma_p * (log (c_p) + j * log (h_p) - ((l_p^(1+phi))/(1+phi))) + gamma_i * (log (c_i) + j * log (h_i) - ((l_i^(1+phi))/(1+phi))) + gamma_e * (log (c_e));

ramsey_policy (periods=100,order=1,planner_discount=((beta_p^gamma_p) * (beta_i^gamma_i) * (beta_e^gamma_e))) ;  
%planner_objective gamma_p * (log (c_p) + j * log (h_p) - ((l_p^(1+phi))/(1+phi))) + gamma_i * (log (c_i) + j * log (h_i) - ((l_i^(1+phi))/(1+phi))) + gamma_e * (log (c_e));


%                            1 2 3 4 5 6   7   8   9  10 11  12      13  14  15    16   17   18  19  20  21  22 23

% varexo e_A_e   e_eps_K_b   e_j   e_l   e_me   e_mi   e_mk_be   e_mk_bh   e_mk_d   e_r_ib   e_qk   e_y   e_z;
%          1         2        3     4     5      6        7         8         9       10      11     12    13

%end;