data { int J; array[J] real y; array[J] real sigma; } parameters { vector[J] eta; real mu; real tau; } transformed parameters { vector[J] theta; theta = mu + tau*eta; } model { y ~ normal(theta,sigma); eta ~ normal(0,1); }