@NotNull
  public static MqPatchDetails readMqPatchInfo(@Nullable VirtualFile root, @Nullable File patchFile) {
    if (patchFile == null) return MqPatchDetails.EMPTY_PATCH_DETAILS;
    String context = DvcsUtil.tryLoadFileOrReturn(patchFile, "");
    return parseAdditionalMqInfo(root == null ? HgUtil.getNearestHgRoot(VfsUtil.findFileByIoFile(patchFile, true)) : root, context);
  }
@NotNull
  public static MqPatchDetails readMqPatchInfo(@Nullable VirtualFile root, @Nullable File patchFile)