@NotNull
  public static Map<String, PsiMethod> getAllProperties(boolean acceptSetters,
                                                        boolean acceptGetters,
                                                        boolean acceptStatic,
                                                        boolean acceptBoxedBooleanIsPrefix,
                                                        final @NonNls @PsiModifier.ModifierConstant String @NotNull [] visibilityLevels,
                                                        PsiMethod[] methods) {
    final Map<String, PsiMethod> map = new HashMap<>();

    for (PsiMethod method : methods) {
      if (filterMethods(method, acceptStatic, visibilityLevels)) continue;
      if (acceptSetters && isSimplePropertySetter(method) ||
          acceptGetters && isSimplePropertyGetter(method, acceptBoxedBooleanIsPrefix)) {
        map.put(getPropertyName(method), method);
      }
    }
    return map;
  }
@NotNull
  public static Map<String, PsiMethod> getAllProperties(boolean acceptSetters,
                                                        boolean acceptGetters,
                                                        boolean acceptStatic,
                                                        boolean acceptBoxedBooleanIsPrefix,
                                                        final @NonNls @PsiModifier.ModifierConstant String @NotNull [] visibilityLevels,
                                                        PsiMethod[] methods)