docs: def report(times=None,
             include_itrs=True,
             include_stats=True,
             delim_mode=False,
             format_options=None):
      """
      Produce a formatted report of the current timing data.
  
      Notes:
          When reporting a collection of parallel subdivisions, only the one with
          the greatest total time is reported on, and the rest are ignored (no
          branching).  To compare parallel subdivisions use compare().
  
      Args:
          times (Times, optional): Times object to report on.  If not provided,
              uses current root timer.
          include_itrs (bool, optional): Display invidual iteration times.
          include_stats (bool, optional): Display iteration statistics.
          delim_mode (bool, optional): If True, format for spreadsheet.
          format_options (dict, optional): Formatting options, see below.
  
      Formatting Keywords & Defaults:
          Human-Readable Mode
              - 'stamp_name_width': 20
              - 'itr_tab_width': 2
              - 'itr_num_width': 6
              - 'itr_name_width': 12
              - 'indent_symbol': '  ' (two spaces)
              - 'parallel_symbol': '(par)'
          Delimited Mode
              - 'delimiter': '\t' (tab)
              - 'ident_symbol': '+'
              - 'parallel_symbol': '(par)'
  
      Returns:
          str: Timing data report as formatted string.
  
      Raises:
          TypeError: If 'times' param is used and value is not a Times object.
      """
      if times is None:
          if f.root.stopped:
              return report_loc.report(f.root.times,
                                       include_itrs,
                                       include_stats,
                                       delim_mode,
                                       format_options)
          else:
              t = timer()
              rep = report_loc.report(collapse.collapse_times(),
                                      include_itrs,
                                      include_stats,
                                      delim_mode,
                                      format_options,
                                      timer_state='running')
              f.root.self_cut += timer() - t
              return rep
      else:
          if not isinstance(times, Times):
              raise TypeError("Expected Times instance for param 'times' (default is root).")
          return report_loc.report(times,
                                   include_itrs,
                                   include_stats,
                                   delim_mode,
                                   format_options)