docs: def parent_tags(self):
          """Provides tags of all parent HTML elements."""
          tags = set()
  
          for addr in self._addresses:
              if addr.attr == 'text':
                  tags.add(addr.element.tag)
              tags.update(el.tag for el in addr.element.iterancestors())
  
          tags.discard(HTMLFragment._root_tag)
          return frozenset(tags)