static Map<PsiExpression, List<PsiExpression>> collectSideEffects(@NotNull PsiVariable variable,
                                                                    @NotNull List<@NotNull PsiReferenceExpression> references) {
    PsiExpression initializer = variable.getInitializer();
    Map<PsiExpression, List<PsiExpression>> result = new HashMap<>();
    if (initializer != null) {
      List<PsiExpression> expressions = SideEffectChecker.extractSideEffectExpressions(initializer);
      if (!expressions.isEmpty()) {
        result.put(initializer, expressions);
      }
    }
    for (PsiReferenceExpression reference : references) {
      if (reference.getParent() instanceof PsiAssignmentExpression assignment &&
          ExpressionUtils.isVoidContext(assignment)) {
        PsiExpression rExpression = assignment.getRExpression();
        if (rExpression != null) {
          List<PsiExpression> expressions = SideEffectChecker.extractSideEffectExpressions(rExpression);
          if (!expressions.isEmpty()) {
            result.put(rExpression, expressions);
          }
        }
      }
    }
    return result;
  }
static Map<PsiExpression, List<PsiExpression>> collectSideEffects(@NotNull PsiVariable variable,
                                                                    @NotNull List<@NotNull PsiReferenceExpression> references)