class_docstr: Track side effects (list mutation, setattr, etc) that need to be
  applied after an FX graph is run.
class_docstr_tok: ["Track","side","effects","(","list","mutation",",","setattr",",","etc",")","that","need","to","be","applied","after","an","FX","graph","is","run","."]
code: def prune_dead_object_new(self, tx):
      live_new_objects = set()
      skip_obj = None
  
      def visit(var: VariableTracker):
          if (
              isinstance(var.mutable_local, AttributeMutationNew)
              and var.mutable_local is not skip_obj
          ):
              live_new_objects.add(var.mutable_local)
          return var
  
      def is_live(var: Union[MutableLocalBase, VariableTracker]):
          if isinstance(var, AttributeMutationNew):
              return var in live_new_objects
          if isinstance(var, VariableTracker):
              return is_live(var.mutable_local)
          return True
  
      VariableTracker.apply(visit, (tx.stack, tx.symbolic_locals))
      for var in self.id_to_variable.values():
          if not isinstance(var.mutable_local, AttributeMutationNew):
              VariableTracker.apply(visit, var)
  
      for skip_obj, setattrs in self.store_attr_mutations.items():
          VariableTracker.apply(visit, setattrs)
  
      self.id_to_variable = {
          k: v for k, v in self.id_to_variable.items() if is_live(v)
      }
      self.store_attr_mutations = {
          k: v
          for k, v in self.store_attr_mutations.items()
          if is_live(k)
      }
  
imports: import inspect
  from typing import Any, Dict, List, Optional, Union
  import torch.nn
  from .None import utils, variables
  from .bytecode_transformation import create_call_function, create_call_method, create_instruction
  from .codegen import PyCodegen
  from .exc import unimplemented
  from .source import LocalSource, Source
  from .utils import nn_module_new, object_new
  from .variables.base import is_side_effect_safe, MutableLocalBase, MutableLocalSource, VariableTracker
label_desc: Use image node_id 26 for calling the SideEffects obj's underlying member method code with example usage: obj.prune_dead_object_new(tx) and returns: var, True, unknown, is_live