code: def deep_format_floats(obj, depth=5):
      # case str, is container but should be returned as is
      if isinstance(obj, str):
          return obj
      # deep recursive call for any container
      elif isinstance(obj, dict):
          return {
              k: deep_format_floats(v, depth) for k, v in obj.items()
          }
      elif isinstance(obj, Iterable):
          return type(obj)(deep_format_floats(v, depth) for v in obj)
      # format float
      elif isinstance(obj, float):
          return ("{:." + str(depth) + "f}").format(obj)
      # else, return as is
      else:
          return obj
  
imports: import datetime
  import decimal
  import difflib
  import json
  import os
  import traceback
  from collections.abc import Iterable
  from typing import Any
label_desc: Use image node_id 6 for calling a global function with example usage: deep_format_floats(obj, depth) and returns: obj, unknown, type, unknown, obj