private static Collection<String> toAllAccessorNames(@NotNull AccessorsInfo accessorsInfo,
                                                       String fieldName,
                                                       boolean isBoolean,
                                                       String booleanPrefix,
                                                       String normalPrefix) {
    Collection<String> result = new HashSet<>();

    fieldName = accessorsInfo.removePrefix(fieldName);
    if (accessorsInfo.isFluent()) {
      result.add(StringUtil.decapitalize(fieldName));
      return result;
    }

    final CapitalizationStrategy capitalizationStrategy = accessorsInfo.getCapitalizationStrategy();
    if (isBoolean) {
      result.add(buildName(normalPrefix, fieldName, capitalizationStrategy));
      result.add(buildName(booleanPrefix, fieldName, capitalizationStrategy));

      if (fieldName.startsWith("is") && fieldName.length() > 2 && !Character.isLowerCase(fieldName.charAt(2))) {
        final String baseName = fieldName.substring(2);
        result.add(buildName(normalPrefix, baseName, capitalizationStrategy));
        result.add(buildName(booleanPrefix, baseName, capitalizationStrategy));
      }
    }
    else {
      result.add(buildName(normalPrefix, fieldName, capitalizationStrategy));
    }
    return result;
  }
private static Collection<String> toAllAccessorNames(@NotNull AccessorsInfo accessorsInfo,
                                                       String fieldName,
                                                       boolean isBoolean,
                                                       String booleanPrefix,
                                                       String normalPrefix)