':type cmd: list[str]
:type status: int
:type stdout: str | None
:type stderr: str | None
:type runtime: float | None'

def __init__(self, cmd, status=0, stdout=None, stderr=None, runtime=None):

    message = ('Command    "%s"    returned    exit    status    %s.\n' % ('    '.join((pipes.quote(c) for c in cmd)), status))
    if stderr:
        message += '>>>    Standard    Error\n'
        message += ('%s%s\n' % (stderr.strip(), Display.clear))
    if stdout:
        message += '>>>    Standard    Output\n'
        message += ('%s%s\n' % (stdout.strip(), Display.clear))
    message = message.strip()
    super(SubprocessError, self).__init__(message)
    self.cmd = cmd
    self.status = status
    self.stdout = stdout
    self.stderr = stderr
    self.runtime = runtime
