private static AnnotationAttributeRequest @NotNull [] createExpectedAnnotationAttributes(Project project,
                                                                                           UClass aClass,
                                                                                           UMethod constructor) {
    @NonNls StringBuilder builder = new StringBuilder("@PropertyMapping({");
    List<UParameter> parameters = constructor.getUastParameters();
    for (int i = 0; i < parameters.size(); i++) {
      if (i > 0) builder.append(',');
      String name = Objects.requireNonNull(parameters.get(i).getName());
      if (!hasFieldWithName(aClass, name)) {
        name = "my" + StringUtil.capitalize(name);
      }
      if (!hasFieldWithName(aClass, name)) {
        name = "??" + name;
      }
      builder.append('"').append(name).append('"');
    }
    builder.append("})");

    PsiAnnotation annotation = JavaPsiFacade.getElementFactory(project)
      .createAnnotationFromText(builder.toString(), aClass.getSourcePsi());
    return AnnotationAttributeValueRequestKt.attributeRequests(annotation).toArray(AnnotationAttributeRequest[]::new);
  }
private static AnnotationAttributeRequest @NotNull [] createExpectedAnnotationAttributes(Project project,
                                                                                           UClass aClass,
                                                                                           UMethod constructor)