@Override
  public @NotNull String collectInfo(@NotNull Project project) {
    ApplicationInfo appInfo = ApplicationInfo.getInstance();
    Calendar cal = appInfo.getBuildDate();

    String output = "Build version: ";
    output += appInfo.getFullApplicationName();

    String buildInfo = "Build: #" + appInfo.getBuild();
    String buildDate = "";
    if (appInfo.getBuild().isSnapshot()) {
      buildDate = new SimpleDateFormat("HH:mm, ").format(cal.getTime());
    }
    buildDate += DateFormat.getDateInstance(DateFormat.LONG, Locale.US).format(cal.getTime());
    output += ' ' + buildInfo + ' ' + buildDate;
    output += '\n';

    if (LafManager.getInstance().getCurrentUIThemeLookAndFeel() != null) {
      output += "Theme: ";
      output += LafManager.getInstance().getCurrentUIThemeLookAndFeel().getName();
      output += '\n';
    }

    output += "JRE: ";
    output += System.getProperty("java.runtime.version", System.getProperty("java.version", "unknown"));
    output += ", " + System.getProperty("java.vendor", "unknown");
    output += '\n';

    output += "JVM: ";
    output += System.getProperty("java.vm.version", "unknown");
    output += ", " + System.getProperty("java.vm.name", "unknown");
    output += ", " + System.getProperty("java.vm.vendor", "unknown");
    output += '\n';

    output += "Operating System: ";
    output += SystemInfo.OS_NAME + ' ' + SystemInfo.OS_VERSION;
    output += " (" + SystemInfo.OS_ARCH + (CpuArch.isEmulated() ? ", emulated" : "") + ')';
    output += '\n';

    output += PathManager.PROPERTY_CONFIG_PATH + "=" + logPath(PathManager.getConfigPath()) + '\n';
    output += PathManager.PROPERTY_SYSTEM_PATH + "=" + logPath(PathManager.getSystemPath()) + '\n';
    output += PathManager.PROPERTY_PLUGINS_PATH + "=" + logPath(PathManager.getPluginsPath()) + '\n';
    output += PathManager.PROPERTY_LOG_PATH + "=" + logPath(PathManager.getLogPath()) + '\n';

    output += logEnvVar("_JAVA_OPTIONS");
    output += logEnvVar("JDK_JAVA_OPTIONS");
    output += logEnvVar("JAVA_TOOL_OPTIONS");

    return output;
  }
@Override
  public @NotNull String collectInfo(@NotNull Project project)