private void replaceWithMutable(@NotNull ImmutableCollectionModel model) {
      CodeBlockSurrounder surrounder = CodeBlockSurrounder.forExpression(model.myCall);
      if (surrounder == null) return;
      CodeBlockSurrounder.SurroundResult result = surrounder.surround();
      PsiMethodCallExpression call = (PsiMethodCallExpression)result.getExpression();
      PsiStatement statement = result.getAnchor();

      model.myCall = call;
      String assignedVariable = model.myAssignedVariable;
      if (assignedVariable != null) {
        String initializerText = model.myType.getInitializerText(model.myIsVarArgCall ? null : call.getText());
        PsiElement anchor = addUpdates(assignedVariable, model, statement);
        PsiReplacementUtil.replaceExpressionAndShorten(call, initializerText, new CommentTracker());
        myUpdater.moveCaretTo(anchor.getTextRange().getEndOffset());
      }
      else {
        createVariable(statement, model);
      }
    }
private void replaceWithMutable(@NotNull ImmutableCollectionModel model)