At first sight it appears you have a prior problem with M values getting negative and going pretty high. Isn't M[i]~dnorm(Mo,Mprec)I(,0.000000001) supposed to be M[i]~dnorm(Mo,Mprec)I(0.000000001,).
Note that even with this correction you will have strange values for M, going super high. therefore I would try finding a more approriate specification for M priors at first. Why not constrain variance or try an uniform distribution.