code: def _show(self, status, indent=0):
      ind = indent * self.STATUS_INDENT
  
      if isinstance(status, str):
          ui.write(f"{ind}{status}")
          return
  
      if isinstance(status, list):
          for entry in status:
              self._show(entry, indent)
          return
  
      assert isinstance(status, dict)
  
      for key, value in status.items():
          if isinstance(value, str):
              ui.write(f"{ind}{self._normalize(value)}{key}")
          elif value:
              ui.write(f"{ind}{key}:")
              self._show(value, indent + 1)
  
file_path: dvc/dvc/commands/status.py
imports: from dvc.commands.data_sync import CmdDataBase
  from dvc.exceptions import DvcException
  from dvc.log import logger
  from dvc.ui import ui
  from dvc.utils import format_link
label_desc: Use image node_id 2 for calling the CmdDataStatus obj's underlying member method code with example usage: obj._show(status, indent) without return types