static @Nullable File getInputFile(@NotNull RunConfiguration configuration) {
    InputRedirectOptions inputRedirectOptions = getInputRedirectOptions(configuration);

    if (inputRedirectOptions == null || !inputRedirectOptions.isRedirectInput()) {
      return null;
    }

    String filePath = inputRedirectOptions.getRedirectInputPath();
    if (!StringUtil.isEmpty(filePath)) {
      Module module = configuration instanceof CommonProgramRunConfigurationParameters
                      ? ProgramParametersUtil.getModule((CommonProgramRunConfigurationParameters)configuration) : null;
      filePath = FileUtil.toSystemDependentName(ProgramParametersUtil.expandPathAndMacros(filePath, module, configuration.getProject()));
      File file = new File(filePath);
      if (configuration instanceof CommonProgramRunConfigurationParameters && !FileUtil.isAbsolute(filePath)) {
        String directory = ((CommonProgramRunConfigurationParameters)configuration).getWorkingDirectory();
        if (directory != null) {
          file = new File(new File(directory), filePath);
        }
      }
      return file;
    }
    return null;
  }
static @Nullable File getInputFile(@NotNull RunConfiguration configuration)