def display_output(screen):
format_row() <EOL>screen_height = len(gunicorns) + len(instructions.split("<STR_LIT:\n>")) + <NUM_LIT:9><EOL>if not gunicorns:<EOL><INDENT>screen_height += <NUM_LIT:2> <EOL><DEDENT>screen.erase()<EOL>win = curses.newwin(screen_height, screen_width + <NUM_LIT:6>, <NUM_LIT:1>, <NUM_LIT:3>)<EOL>win.bkgd("<STR_LIT:U+0020>", curses.color_pair(<NUM_LIT:1>))<EOL>win.border()<EOL>x = <NUM_LIT:3><EOL>blank_line = y = count(<NUM_LIT:2>).__next__<EOL>win.addstr(y(), x, title.center(screen_width), curses.A_NORMAL)<EOL>blank_line()<EOL>win.addstr(y(), x, format_row("<STR_LIT>", "<STR_LIT>", "<STR_LIT>", "<STR_LIT>", "<STR_LIT>"),<EOL>curses.A_STANDOUT)<EOL>if not gunicorns:<EOL><INDENT>blank_line()<EOL>win.addstr(y(), x, no_gunicorns.center(screen_width),<EOL>curses.A_NORMAL)<EOL>blank_line()<EOL><DEDENT>else:<EOL><INDENT>win.hline(y(), x, curses.ACS_HLINE, screen_width)<EOL>for (i, pid) in enumerate(sorted(gunicorns.keys())):<EOL><INDENT>port = gunicorns[pid]["<STR_LIT:port>"]<EOL>name = gunicorns[pid]["<STR_LIT:name>"]<EOL>mem = "<STR_LIT>" % (gunicorns[pid]["<STR_LIT>"] / <NUM_LIT>)<EOL>workers = gunicorns[pid]["<STR_LIT>"]<EOL>if workers < <NUM_LIT:1>:<EOL><INDENT>gunicorns[pid]["<STR_LIT>"] -= <NUM_LIT:1><EOL>chars = "<STR_LIT>"<EOL>workers *= -<NUM_LIT:1><EOL>if workers == len(chars):<EOL><INDENT>gunicorns[pid]["<STR_LIT>"] = workers = <NUM_LIT:0><EOL><DEDENT>workers = chars[workers]<EOL><DEDENT>if pid == selected_pid:<EOL><INDENT>attr = curses.A_STANDOUT<EOL>prefix_char = '<STR_LIT>'<EOL><DEDENT>else:<EOL><INDENT>attr = curses.A_NORMAL<EOL>prefix_char = '<STR_LIT:U+0020>'<EOL><DEDENT>win.addstr(y(), x, format_row(pid, port, name, mem, workers,<EOL>prefix_char), attr)<EOL><DEDENT><DEDENT>win.hline(y(), x, curses.ACS_HLINE, screen_width)<EOL>blank_line()<EOL>for line in instructions.split("<STR_LIT:\n>"):<EOL><INDENT>win.addstr(y(), x, line.center(screen_width), curses.A_NORMAL)<EOL><DEDENT>win.refresh()<EOL>
Display the menu list of gunicorns.