public static <T> T fromBytes(final byte[] bytes,
                                final @NotNull DataExternalizer<? extends T> externalizer) throws IOException {
    final ByteArrayInputStream bis = new ByteArrayInputStream(bytes);
    try (final DataInputStream dis = new DataInputStream(bis)) {
      return externalizer.read(dis);
    }
  }
public static <T> T fromBytes(final byte[] bytes,
                                final @NotNull DataExternalizer<? extends T> externalizer)