add in initial diagnostic framework