@Override
  public void processMethodOverriding(@NotNull UMethod method, @NotNull PsiMethod overriddenMethod) {
    PsiClass aClass = overriddenMethod.getContainingClass();
    if (aClass == null) return;

    PsiElement methodNameElement = UElementKt.getSourcePsiElement(method.getUastAnchor());
    if (methodNameElement == null) return;

    //Do not show deprecated warning for class implementing deprecated methods
    if (myIgnoreAbstractDeprecatedOverrides && !aClass.isDeprecated() && overriddenMethod.hasModifierProperty(PsiModifier.ABSTRACT)) {
      return;
    }

    if (overriddenMethod.isDeprecated() && myForRemoval == isForRemovalAttributeSet(overriddenMethod)) {
      String description = JavaErrorBundle.message(myForRemoval ? "overrides.marked.for.removal.method" : "overrides.deprecated.method",
                                                   getPresentableName(aClass));
      myHolder.registerProblem(methodNameElement, description);
    }
  }
@Override
  public void processMethodOverriding(@NotNull UMethod method, @NotNull PsiMethod overriddenMethod)