private static boolean add(PsiMethod method, @NotNull Set<? super PsiMethod> alreadyImplemented) {
    boolean already = alreadyImplemented.add(method);
    if (!already) return false;

    for (PsiMethod superSig : method.findSuperMethods()) {
      already &= add(superSig, alreadyImplemented);
    }
    return already;
  }
private static boolean add(PsiMethod method, @NotNull Set<? super PsiMethod> alreadyImplemented)