21array[] 
int obs_rng(vector log_exp_obs, array[] real phi, 
int model_obs) {
 
   22  int n = num_elements(log_exp_obs);
 
   28    if (is_inf(log_exp_obs[i])) {
 
   32        pp[i] = poisson_log_rng(log_exp_obs[i]);
 
   33      } 
else if (model_obs == 1) {
 
   34        pp[i] = neg_binomial_2_log_rng(log_exp_obs[i], phi[1]);
 
   36        real log_phi_nb1 = log_exp_obs[i] + log(phi[1]);
 
   37        pp[i] = neg_binomial_2_log_rng(log_exp_obs[i], exp(log_phi_nb1));