@Deprecated(forRemoval = true)
  public static String[] addClassModifiers(PsiModifierList list, @NotNull PsiElement scope) {
    if (PsiUtil.isAvailable(JavaFeature.SEALED_CLASSES, scope)) {
      if (list == null) {
        return CLASS_MODIFIERS_WITH_SEALED.clone();
      }
      else {
        final List<String> ret = new ArrayList<>();
        addIfNotPresent(PsiModifier.PUBLIC, list, ret);
        if (!list.hasModifierProperty(PsiModifier.FINAL)) {
          boolean hasNonSealed = list.hasModifierProperty(PsiModifier.NON_SEALED);
          boolean hasSealed = list.hasModifierProperty(PsiModifier.SEALED);
          if (!hasNonSealed) {
            addIfNotPresent(PsiModifier.SEALED, list, ret);
          }
          if (!hasSealed) {
            addIfNotPresent(PsiModifier.NON_SEALED, list, ret);
          }
          boolean hasAbstract = list.hasModifierProperty(PsiModifier.ABSTRACT);
          if (!hasAbstract) {
            ret.add(PsiModifier.ABSTRACT);
            if (!hasNonSealed && !hasSealed) {
              ret.add(PsiModifier.FINAL);
            }
          }
        }
        return ArrayUtilRt.toStringArray(ret);
      }
    }
    return addKeywords(list, CLASS_MODIFIERS, scope);
  }
@Deprecated(forRemoval = true)
  public static String[] addClassModifiers(PsiModifierList list, @NotNull PsiElement scope)