docs: def clean_html(self, html):
          """Apply ``Cleaner`` to HTML string or document and return a cleaned string or document."""
          result_type = type(html)
          if isinstance(html, six.string_types):
              doc = html_fromstring(html)
          else:
              doc = copy.deepcopy(html)
          self(doc)
          if issubclass(result_type, six.binary_type):
              return tostring(doc, encoding='utf-8')
          elif issubclass(result_type, six.text_type):
              return tostring(doc, encoding='unicode')
          else:
              return doc