docs: def display_output(screen):
      """
      Display the menu list of gunicorns.
      """
      format_row() # Sets up the screen width.
      screen_height = len(gunicorns) + len(instructions.split("\n")) + 9
      if not gunicorns:
          screen_height += 2 # A couple of blank lines are added when empty.
      screen.erase()
      win = curses.newwin(screen_height, screen_width + 6, 1, 3)
      win.bkgd(" ", curses.color_pair(1))
      win.border()
      x = 3
      blank_line = y = count(2).next
      win.addstr(y(), x, title.center(screen_width), curses.A_NORMAL)
      blank_line()
      win.addstr(y(), x, format_row(" PID", "PORT", "NAME", "MEM (MB)", "WORKERS"),
          curses.A_STANDOUT)
      if not gunicorns:
          blank_line()
          win.addstr(y(), x, no_gunicorns.center(screen_width),
              curses.A_NORMAL)
          blank_line()
      else:
          win.hline(y(), x, curses.ACS_HLINE, screen_width)
          for (i, pid) in enumerate(sorted(gunicorns.keys())):
              port = gunicorns[pid]["port"]
              name = gunicorns[pid]["name"]
              mem = "%#.3f" % (gunicorns[pid]["mem"] / 1000.)
              workers = gunicorns[pid]["workers"]
              # When a signal is sent to update the number of workers, the number
              # of workers is set to zero as a marker to signify an update has
              # occurred. We then piggyback this variable and use it as a counter
              # to animate the display until the gunicorn is next updated.
              if workers < 1:
                  gunicorns[pid]["workers"] -= 1
                  chars = "|/-\\"
                  workers *= -1
                  if workers == len(chars):
                     gunicorns[pid]["workers"] = workers = 0
                  workers = chars[workers]
              if pid == selected_pid:
                  attr = curses.A_STANDOUT
                  prefix_char = '> '
              else:
                  attr = curses.A_NORMAL
                  prefix_char = '  '
              win.addstr(y(), x, format_row(pid, port, name, mem, workers,
                                            prefix_char), attr)
      win.hline(y(), x, curses.ACS_HLINE, screen_width)
      blank_line()
      for line in instructions.split("\n"):
          win.addstr(y(), x, line.center(screen_width), curses.A_NORMAL)
      win.refresh()