public final @NotNull Pair<String, Map<String, String>> readBatOutputAndEnv(@Nullable Path batchFile,
                                                                              @Nullable List<@NotNull String> args,
                                                                              @NotNull String cmdExePath) throws IOException {
    return readBatOutputAndEnv(batchFile, args, cmdExePath, (it) -> {});
  }
public final @NotNull Pair<String, Map<String, String>> readBatOutputAndEnv(@Nullable Path batchFile,
                                                                              @Nullable List<@NotNull String> args,
                                                                              @NotNull String cmdExePath)