code: def auto_str(obj: Any, indent: int = 4, width: int = 80, depth: int = None,
               compact: bool = False) -> str:
      
      return pprint.pformat(obj.__dict__, indent=indent, width=width,
                            depth=depth, compact=compact)
docs: Make a pretty :func:`str()` representation using :func:`pprint.pformat`
      and the object's ``__dict__`` attribute.
  
      Args:
          obj: object to display
          indent: see
              https://docs.python.org/3/library/pprint.html#pprint.PrettyPrinter
          width: as above
          depth: as above
          compact: as above
  
      Returns:
          string: :func:`str`-style representation