@Override
 public void readFrom(StreamInput in) throws IOException {
   int size = in.readVInt();
   versions = new ObjectIntOpenHashMap<JvmVersion>(size);
   for (; size > 0; size--) {
     versions.addTo(JvmVersion.readJvmVersion(in), in.readVInt());
   }
   threads = in.readVLong();
   maxUptime = in.readVLong();
   heapUsed = in.readVLong();
   heapMax = in.readVLong();
 }
 public static JvmVersion readJvmVersion(StreamInput in) throws IOException {
   JvmVersion jvm = new JvmVersion();
   jvm.readFrom(in);
   return jvm;
 }