private @Nullable MergedCompositeConfigurable computeGeneralConfigurables(List<DebuggerConfigurableProvider> providers) {
    List<Configurable> rootConfigurables = getConfigurables(DebuggerSettingsCategory.GENERAL, providers);
    if (rootConfigurables.isEmpty()) {
      return null;
    }

    Configurable[] mergedRootConfigurables = rootConfigurables.toArray(new Configurable[0]);
    // move unnamed to top
    Arrays.sort(mergedRootConfigurables, (o1, o2) -> {
      boolean c1e = StringUtil.isEmpty(o1.getDisplayName());
      return c1e == StringUtil.isEmpty(o2.getDisplayName()) ? 0 : (c1e ? -1 : 1);
    });
    return new MergedCompositeConfigurable(getId(), getDisplayName(), null, mergedRootConfigurables);
  }
private @Nullable MergedCompositeConfigurable computeGeneralConfigurables(List<DebuggerConfigurableProvider> providers)