private void checkSupers(PsiMethod method,
                           ProblemsHolder holder,
                           Annotated annotated,
                           List<? extends PsiMethod> superMethods) {
    PsiIdentifier identifier = method.getNameIdentifier();
    if (identifier == null) return;
    for (PsiMethod superMethod : superMethods) {
      if (isNullableOverridingNotNull(annotated, superMethod)) {
        PsiAnnotation annotation = AnnotationUtil.findAnnotation(method, getNullityManager(method).getNullables(), true);
        reportProblem(holder, annotation != null ? annotation : identifier,
                      "inspection.nullable.problems.Nullable.method.overrides.NotNull",
                      getPresentableAnnoName(method), getPresentableAnnoName(superMethod));
        break;
      }

      if (isNonAnnotatedOverridingNotNull(method, superMethod)) {
        reportProblem(holder, identifier, createFixForNonAnnotatedOverridesNotNull(method, superMethod),
                      "inspection.nullable.problems.method.overrides.NotNull", getPresentableAnnoName(superMethod));
        break;
      }

      PsiTypeElement returnTypeElement = method.getReturnTypeElement();
      if (returnTypeElement != null &&
          isNullableNotNullCollectionConflict(superMethod.getReturnType(), method.getReturnType(), holder.getFile(), new HashSet<>())) {
        reportProblem(holder, returnTypeElement, "nullable.stuff.error.overriding.notnull.with.nullable");
        break;
      }
    }
  }
private void checkSupers(PsiMethod method,
                           ProblemsHolder holder,
                           Annotated annotated,
                           List<? extends PsiMethod> superMethods)