<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def parse_port_from_tensorboard_output(tensorboard_output: str) -> int: """ Parse tensorboard port from its outputted message. :param tensorboard_output: Output message of Tensorboard in format TensorBoard 1.8.0 at http://martin-VirtualBox:36869 :return: Returns the port TensorBoard is listening on. :raise UnexpectedOutputError """

    search = re.search("at http://[^:]+:([0-9]+)", tensorboard_output)
    if search is not None:
        port = search.group(1)
        return int(port)
    else:
        raise UnexpectedOutputError(tensorboard_output, "Address and port where Tensorboard has started,"
                                                        " e.g. TensorBoard 1.8.0 at http://martin-VirtualBox:36869")