def stdrepr_iterable(self, obj, *,
                         cls=None, before=None, after=None):
        """
        Helper function to represent iterables. StdHRepr calls this on
        lists, tuples, sets and frozensets, but NOT on iterables in general.
        This method may be called to produce custom representations.

        Arguments:
            obj (iterable): The iterable to represent.
            cls (optional): The class name for the representation. If None,
                stdrepr will use ``'hrepr-' + obj.__class__.___name__``
            before (optional): A string or a Tag to prepend to the elements.
            after (optional): A string or a Tag to append to the elements.
        """
        if cls is None:
            cls = f'hrepr-{obj.__class__.__name__}'
        children = [self(a) for a in obj]
        return self.titled_box((before, after), children, 'h', 'h')[cls]
Helper function to represent iterables. StdHRepr calls this on
        lists, tuples, sets and frozensets, but NOT on iterables in general.
        This method may be called to produce custom representations.

        Arguments:
            obj (iterable): The iterable to represent.
            cls (optional): The class name for the representation. If None,
                stdrepr will use ``'hrepr-' + obj.__class__.___name__``
            before (optional): A string or a Tag to prepend to the elements.
            after (optional): A string or a Tag to append to the elements.