protected static boolean hasMethod(PsiClass targetClass, PsiMethod method) {
    PsiMethod[] targetClassMethods = targetClass.findMethodsByName(method.getName(), true);
    for (PsiMethod candidate : targetClassMethods) {
      if (candidate != method &&
          MethodSignatureUtil.areSignaturesEqual(method.getSignature(PsiSubstitutor.EMPTY),
                                                 candidate.getSignature(PsiSubstitutor.EMPTY))) {
        return true;
      }
    }
    return false;
  }
protected static boolean hasMethod(PsiClass targetClass, PsiMethod method)