public static LocalQuickFix[] getDefaultRegularFixes(boolean useRename,
                                                       String typo,
                                                       @NotNull PsiElement element,
                                                       @NotNull TextRange range) {
    ArrayList<LocalQuickFix> result = new ArrayList<>();

    if (useRename && PsiTreeUtil.getNonStrictParentOfType(element, PsiNamedElement.class) != null) {
      result.add(SpellCheckerQuickFixFactory.rename(element));
    } else {
      result.addAll(SpellCheckerQuickFixFactory.changeToVariants(element, range, typo));
    }

    final SpellCheckerSettings settings = SpellCheckerSettings.getInstance(element.getProject());
    if (settings.isUseSingleDictionaryToSave()) {
      DictionaryLayer layer = DictionaryLayersProvider.getLayer(element.getProject(), settings.getDictionaryToSave());
      result.add(SpellCheckerQuickFixFactory.saveTo(element, range, typo, layer));
      return result.toArray(LocalQuickFix.EMPTY_ARRAY);
    }

    result.add(SpellCheckerQuickFixFactory.saveTo(element, range, typo));
    return result.toArray(LocalQuickFix.EMPTY_ARRAY);
  }
public static LocalQuickFix[] getDefaultRegularFixes(boolean useRename,
                                                       String typo,
                                                       @NotNull PsiElement element,
                                                       @NotNull TextRange range)