@Override
 public void writeTo(StreamOutput out) throws IOException {
   super.writeTo(out);
   out.writeBoolean(valid);
   out.writeOptionalString(explanation);
   out.writeOptionalString(error);
 }
 @Override
 public void writeTo(StreamOutput out) throws IOException {
   super.writeTo(out);
   out.writeInt(numDocs);
   out.writeInt(termsList.size());
   for (TermInfo ti : termsList) ti.writeTo(out);
 }