code: def _disassemble_recursive(
      co,
      *,
      file=None,
      depth=None,
      show_caches=False,
      adaptive=False,
      show_offsets=False,
  ):
      disassemble(
          co,
          file=file,
          show_caches=show_caches,
          adaptive=adaptive,
          show_offsets=show_offsets,
      )
      if depth is None or depth > 0:
          if depth is not None:
              depth = depth - 1
          for x in co.co_consts:
              if hasattr(x, "co_code"):
                  print(file=file)
                  print("Disassembly of %r:" % (x,), file=file)
                  _disassemble_recursive(
                      x,
                      file=file,
                      depth=depth,
                      show_caches=show_caches,
                      adaptive=adaptive,
                      show_offsets=show_offsets,
                  )
  
imports: import sys
  import types
  import collections
  import io
  from opcode import *
  from opcode import __all__, _cache_format, _inline_cache_entries, _nb_ops, _intrinsic_1_descs, _intrinsic_2_descs, _specializations, _specialized_opmap
label_desc: Use image node_id 22 for calling a global function with example usage: _disassemble_recursive(co) without return types