improve messagespec