@Nullable
  private static PostfixTemplate findApplicableTemplate(@NotNull PostfixTemplateProvider provider,
                                                        @Nullable String key,
                                                        @NotNull Editor editor,
                                                        @NotNull PsiFile file) {
    for (PostfixTemplate template : PostfixTemplatesUtils.getAvailableTemplates(provider)) {
      if (template.getKey().equals(key) && isApplicableTemplate(provider, key, file, editor, template)) {
        return template;
      }
    }
    return null;
  }
@Nullable
  private static PostfixTemplate findApplicableTemplate(@NotNull PostfixTemplateProvider provider,
                                                        @Nullable String key,
                                                        @NotNull Editor editor,
                                                        @NotNull PsiFile file)