@Nullable("null means no need to replace the import list because they are the same")
  PsiImportList prepareOptimizeImportsResult(@NotNull PsiJavaFile file) {
    return prepareOptimizeImportsResult(file, Predicates.alwaysTrue());
  }
@Nullable("null means no need to replace the import list because they are the same")
  PsiImportList prepareOptimizeImportsResult(@NotNull PsiJavaFile file)