#cell mixture model
model{

a[1]<-0; a[2]<-tinterval[1] ; a[3]<-tinterval[2] ; a[4]<-100;

for (i in 1:N) {

    for(g in 1:nvars){
    ag[i,g] <- alpha[g]*z[i,g]
    betag[i,g] <- beta[g]*z[i,g]
    }

    muiafixed[i] <- alpha0+sum(ag[i,])
    betamisc[i] <- sum(betag[i,])

    for(l in offset[i]:(offset[i+1]-1)){

    y[l] ~ dgamma(aa[l], bb[l])
    aa[l] <- n1ij[l]/delta
    bb[l] <- n1ij[l]/delta/muij[l]
    muij[l] <- 1/muij.inv[l] 
    muij.inv[l] ~ dgamma(c, d[i])

    }   
    
    log(d[i]) <- alpha0i[i]+muiafixed[i]+log(nu+1)-log(nu)

	#construct imputed mean
	muiimputed[i] <- exp(alpha0i[i]+muiafixed[i])
	muiimputed.std[i] <- (log(muiimputed[i])-mean.adj)/sd.adj


	for(j in 1:3){
		
		dd[i,j] <- recur[i]*step(t[i]-a[j])*step(a[j+1]-t[i])
		
		Delta[i,j] <- (min(t[i], a[j+1])-a[j])*step(t[i]-a[j])
		
		# The hazard rate
		hr[i,j] <- lambda[j]*exp(beta1*muiimputed.std[i]+betamisc[i])
		
		dd[i,j] ~ dpois(mud[i,j])
		mud[i,j] <- Delta[i,j]*hr[i,j] 
	}


    alpha0i[i] ~ dnorm(0, tau2a) 
   }  

c <- 1/nu+2
#nu ~ dgamma(0.001, 0.001)

nu <- exp(lnu)
lnu ~ dnorm(0, 0.1)

tau2a <- 1/sigmaa
sigmaa~dunif(0,1000)

alpha0 ~ dnorm(4, 0.0001)
for(g in 1:nvars){
alpha[g] ~ dnorm(0, 0.0001)
}


for (j in 1:3){
	lambda[j] ~ dgamma(1, 1)
}

beta1 ~ dnorm(-1,0.0001)

for(g in 1:nvars){
beta[g] ~ dnorm(0,0.0001)
}

}
