function [ys,check] = allv_steadystate(ys,exo) 
 
global M_ 
 
beta = []; 
mu = []; 
alpha = []; 
 
% read out parameters to access them with their name 
NumberOfParameters = M_.param_nbr; 
for ii = 1:NumberOfParameters 
paramname = deblank(M_.param_names(ii,:)); 
eval([ paramname ' = M_.params(' int2str(ii) ');']); 
end 

% initialize indicator 
check = 0; 
%% Enter model equations here 

b_w          = (lambda_w*sigma_L-(1-lambda_w))/((1-beta*zeta_w)*(1-zeta_w)); 
eta_0        = b_w*zeta_w; 
eta_1        = (sigma_L*lambda_w-b_w*(1+beta*zeta_w^2)); 
eta_2        = b_w*beta*zeta_w; 
eta_3        = -b_w*zeta_w; 
eta_4        = b_w*beta*zeta_w; 
eta_5        = b_w*zeta_w*iota_w; 
eta_6        = -b_w*beta*zeta_w*iota_w; 
eta_7        = (1-lambda_w); 
eta_8        = -(1-lambda_w)*sigma_L; 
eta_9        = -(1-lambda_w)*tau_y/(1-tau_y); 
eta_10       = -(1-lambda_w)*tau_w/(1+tau_w); 
eta_11       = -(1-lambda_w); 
pi           = mu/mu_z; 
R            = (pi*mu_z-tau_k*beta)/((1-tau_k)*beta); 
R_f          = nu*R+1-nu; 
eta_mc       = lambda_mc/(lambda_mc-1); 
eta_mi       = lambda_mi/(lambda_mi-1); 
gamma_id     = ((1-omega_i)+omega_i*(eta_mi/(eta_mi-1))^(1-eta_i))^(1/(1-eta_i)); 
gamma_cd     = ((1-omega_c)+omega_c*(eta_mc/(eta_mc-1))^(1-eta_c))^(1/(1-eta_c)); 
gamma_dc     = 1/gamma_cd; 
gamma_cmc    = ((1-omega_c)*((eta_mc-1)/eta_mc)^(1-eta_c)+omega_c)^(1/(1-eta_c)); 
gamma_mcc    = 1/gamma_cmc; 
gamma_imi    = ((1-omega_i)*((eta_mi-1)/eta_mi)^(1-eta_i)+omega_i)^(1/(1-eta_i)); 
gamma_mii    = 1/gamma_imi; 
r_k          = (mu_z*gamma_id-beta*(1-delta)*gamma_id)/((1-tau_k)*beta); 
w_bar        = (1-alpha)*lambda_d^(-1/(1-alpha))*alpha^(alpha/(1-alpha))*r_k^(-alpha/(1-alpha))*R_f^(-1); 
k_H          = alpha/(1-alpha)*mu_z*w_bar*R_f*r_k^(-1); 
D1           = (1-omega_c)*gamma_cd^eta_c+omega_c*gamma_cmc^eta_c; 
D2           = (1-gr)/lambda_d*mu_z^(-alpha)*k_H^alpha-((1-omega_i)*gamma_id^eta_i+omega_i*gamma_imi^eta_i)*(1-(1-delta)/mu_z)*k_H; 
D3           = (((1-tau_y)/lambda_w*w_bar/(1+tau_w))/A_L)^(1/sigma_L); 
D4           = ((mu_z-beta*b)/((1+tau_c)*(mu_z-b)))*gamma_cd^(-1); 
H            = (D3*D4^(1/sigma_L)*(D2/D1)^(-1/sigma_L))^(sigma_L/(1+sigma_L)); 
c            = D2/D1*H; 
psi_z        = 1/c*D4; 
y_bar        = 1/lambda_d*(mu_z)^(-alpha)*(k_H)^alpha*H; 
g            = gr*y_bar; 
q            = (A_q/((1-tau_k)*psi_z*(R-1)))^(1/sigma_q); 
m_bar        = nu*w_bar*H+q; 
k            = k_H*H; 
k_bar        = k; 
i            = (1-(1-delta)/mu_z)*k; 
c_m          = omega_c*gamma_cmc^eta_c*c; 
i_m          = omega_i*gamma_imi^eta_i*i; 
y_star       = omega_c*gamma_cmc^eta_c*c+omega_i*gamma_imi^eta_i*i; 
Obs_R        = 400*(R-1)*R; 
Obs_Pi       = 400*(pi-1)*pi; 
Obs_Y        = 100*log(mu_z); 
Obs_RStar    = 400*(R-1)*R; 
Obs_PiStar   = 400*(pi-1)*pi; 
Obs_YStar    = 100*log(mu_z); 
Obs_W          =100*log(mu_z);
%% End own model equations
for iter = 1:length(M_.params) %update parameters set in the file
  eval([ 'M_.params(' num2str(iter) ') = ' M_.param_names(iter,:) ';' ])
end

NumberOfEndogenousVariables = M_.orig_endo_nbr; %auxiliary variables are set automatically

%% since we have a linear model, st.st is 0
ys = zeros(NumberOfEndogenousVariables,1);
% for observables
NumberOfEndogenousVariables = M_.orig_endo_nbr;
for ii = 1:NumberOfEndogenousVariables
    varname = deblank(M_.endo_names(ii,:));
    if exist(varname)
        eval(['ys(' int2str(ii) ') = ' varname ';']);
    end
end
