@Override
             public void addCompletions(@NotNull CompletionParameters parameters,
                                        @NotNull ProcessingContext context,
                                        @NotNull CompletionResultSet resultSet) {
               PsiElement psiElement = parameters.getPosition().getParent();
               if (psiElement instanceof LombokConfigProperty) {
                 final String configPropertyKey = StringUtil.notNullize(LombokConfigPsiUtil.getKey((LombokConfigProperty)psiElement));
                 if (booleanOptions.contains(configPropertyKey)) {
                   resultSet.addElement(LookupElementBuilder.create("true"));
                   resultSet.addElement(LookupElementBuilder.create("false"));
                 }
                 else if (flagUsageOptions.contains(configPropertyKey)) {
                   resultSet.addElement(LookupElementBuilder.create("WARNING"));
                   resultSet.addElement(LookupElementBuilder.create("ERROR"));
                 }
                 else if (flagUsageAllowable.contains(configPropertyKey)) {
                   resultSet.addElement(LookupElementBuilder.create("ALLOW"));
                   resultSet.addElement(LookupElementBuilder.create("WARNING"));
                 }
                 else if (LOMBOK_EQUALS_AND_HASH_CODE_CALL_SUPER.equals(configPropertyKey) ||
                          LOMBOK_TOSTRING_CALL_SUPER.equals(configPropertyKey)) {
                   resultSet.addElement(LookupElementBuilder.create("CALL"));
                   resultSet.addElement(LookupElementBuilder.create("SKIP"));
                   resultSet.addElement(LookupElementBuilder.create("WARN"));
                 }
                 else if (LOMBOK_ACCESSORS_JAVA_BEANS_SPEC_CAPITALIZATION.equals(configPropertyKey)) {
                   resultSet.addElement(LookupElementBuilder.create("BASIC"));
                   resultSet.addElement(LookupElementBuilder.create("BEANSPEC"));
                 }
                 else if (LOMBOK_ADD_NULL_ANNOTATIONS.equals(configPropertyKey)) {
                   for (LombokNullAnnotationLibraryDefned library : LombokNullAnnotationLibraryDefned.values()) {
                     resultSet.addElement(LookupElementBuilder.create(library.getKey()));
                   }
                   resultSet.addElement(LookupElementBuilder.create("CUSTOM:[TYPE_USE:]nonnull.annotation.type:nullable.annotation.type"));
                 }
               }
             }
@Override
             public void addCompletions(@NotNull CompletionParameters parameters,
                                        @NotNull ProcessingContext context,
                                        @NotNull CompletionResultSet resultSet)