private static @NotNull NlsInfo computeFromAnnotationOwner(@NotNull PsiAnnotationOwner owner) {
    for (PsiAnnotation annotation : owner.getAnnotations()) {
      NlsInfo info = fromAnnotation(annotation);
      if (info != NlsUnspecified.UNKNOWN) {
        return info;
      }
      UAnnotation uAnnotation = UastContextKt.toUElement(annotation, UAnnotation.class);
      if (uAnnotation != null) {
        info = fromMetaAnnotation(uAnnotation.resolve());
      } else {
        String name = annotation.getQualifiedName();
        if (name != null) {
          info = fromMetaAnnotation(JavaPsiFacade.getInstance(annotation.getProject()).findClass(name, annotation.getResolveScope()));
        }
      }
      if (info != NlsUnspecified.UNKNOWN) {
        return info;
      }
    }
    if (owner instanceof PsiModifierList) {
      PsiElement parent = ((PsiModifierList)owner).getParent();
      if (parent instanceof PsiModifierListOwner) {
        // Could be externally annotated
        PsiAnnotation annotation = AnnotationUtil.findAnnotationInHierarchy((PsiModifierListOwner)parent, ANNOTATION_NAMES, false);
        if (annotation != null) {
          return fromAnnotation(annotation);
        }
      }
    }
    return NlsUnspecified.UNKNOWN;
  }
private static @NotNull NlsInfo computeFromAnnotationOwner(@NotNull PsiAnnotationOwner owner)