def print_joinlist(joins, indent=0, StringType=str):
    """ Print the joinlist joins using the given indent level 
    """
    for j in joins:
        if type(j) == StringType:
            text = repr(j)
            if len(text) > 40:
                text = text[:40] + '...'
            print(' ' + indent * ' |', text, ' (len = %i)' % len(j))
        else:
            text = j[0]
            l, r = j[1:3]
            text = repr(text[l:r])
            if len(text) > 40:
                text = text[:40] + '...'
            print(' ' + indent * ' |', text, ' (len = %i)' % (r - l), (l, r))
