@Nullable
  private static PsiField getFieldIfSimpleFieldComparison(PsiExpression condition) {
    condition = PsiUtil.deparenthesizeExpression(condition);
    if (condition == null) {
      return null;
    }
    final PsiField field = getFieldIfSimpleFieldAccess(condition);
    if (field != null) {
      return field;
    }
    if (condition instanceof PsiPrefixExpression prefixExpression) {
      IElementType type = prefixExpression.getOperationTokenType();
      if(!type.equals(JavaTokenType.PLUSPLUS) && !type.equals(JavaTokenType.MINUSMINUS)) {
        final PsiExpression operand = prefixExpression.getOperand();
        return getFieldIfSimpleFieldComparison(operand);
      }
    }
    if (condition instanceof PsiBinaryExpression binaryExpression) {
      final PsiExpression lOperand = binaryExpression.getLOperand();
      final PsiExpression rOperand = binaryExpression.getROperand();
      if (ExpressionUtils.isLiteral(rOperand)) {
        return getFieldIfSimpleFieldComparison(lOperand);
      }
      else if (ExpressionUtils.isLiteral(lOperand)) {
        return getFieldIfSimpleFieldComparison(rOperand);
      }
      else {
        return null;
      }
    }
    return null;
  }
@Nullable
  private static PsiField getFieldIfSimpleFieldComparison(PsiExpression condition)