'Returns a tabular listing of the markers in this instance, which can
be handy for debugging and perhaps other uses.'

def __str__(self):

    header = '    offset        seglen        mc        name\n=======        ======        ==        ====='
    tmpl = '%7d        %6d        %02X        %s'
    rows = []
    for marker in self._markers:
        rows.append((tmpl % (marker.offset, marker.segment_length, ord(marker.marker_code), marker.name)))
    lines = ([header] + rows)
    return '\n'.join(lines)
