boolean (List<PsiType> upperBounds) { boolean commonThrowable = false; for (PsiType upperBound : upperBounds) { if (upperBound.equalsToText(CommonClassNames.JAVA_LANG_OBJECT) || !isProperType(upperBound)) continue; if (upperBound.equalsToText(CommonClassNames.JAVA_LANG_EXCEPTION) || upperBound.equalsToText(CommonClassNames.JAVA_LANG_THROWABLE)) { commonThrowable = true; } else { return false; } } return commonThrowable; }