boolean (PsiExpression[] operands, int i, int j, PsiBinaryExpression binaryExpression, PsiExpression implicitCheckCandidate) { final PsiReferenceExpression explicitCheckReference = getReferenceFromNullCheck(binaryExpression); if (explicitCheckReference == null) return false; final PsiVariable variable = tryCast(explicitCheckReference.resolve(), PsiVariable.class); if (variable == null) return false; final PsiReferenceExpression implicitCheckReference = getReferenceFromImplicitNullCheckExpression(implicitCheckCandidate); if (implicitCheckReference == null || !implicitCheckReference.isReferenceTo(variable)) return false; if (isVariableUsed(operands, i, j, variable)) return false; registerError(binaryExpression, binaryExpression, implicitCheckReference); return true; }