library(jsonlite)
a=read.csv('/check/annual.csv')
out=list()
for(name in unique(a$dataset)) for(version in unique(a$version)) {
 y=a[a$dataset==name & a$version==version,'value']
 stopifnot(length(y)==55)
 tt=seq_along(y);K=ceiling(.1*length(y)):floor(.9*length(y));stats=numeric(length(K));codes=integer(length(K))
 for(i in seq_along(K)){
  X=cbind(time=tt-mean(tt),change=pmax(tt-K[i],0))
  f=arima(y,order=c(1,0,0),xreg=X,method='ML',optim.control=list(maxit=5000,reltol=1e-12))
  stats[i]=unname(f$coef['change']/sqrt(f$var.coef['change','change']));codes[i]=f$code
 }
 out[[paste(name,version,sep='.')]]=list(tmax=max(abs(stats)),change_year=1969+K[which.max(abs(stats))],statistics=setNames(as.list(stats),as.character(K)),convergence_codes=codes)
}
write_json(out,'/check/hessian-check.json',pretty=TRUE,auto_unbox=TRUE,digits=15)
