<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def catch_post_mortem(host='', port=5555, patch_stdstreams=False):
 """ A context manager for tracking potentially error-prone code If an unhandled exception is raised inside context manager's code block, the post-mortem debugger is started automatically. Example:: with web_pdb.catch_post_mortem() # Some error-prone code assert ham == spam :param host: web-UI hostname or IP-address :type host: str :param port: web-UI port. If ``port=-1``, choose a random port value between 32768 and 65536. :type port: int :param patch_stdstreams: redirect all standard input and output streams to the web-UI. :type patch_stdstreams: bool """

    try:
        yield
    except Exception:
        post_mortem(None, host, port, patch_stdstreams)