code: def removeChild(self, child, end_tag_too=True):
          
          # if there are multiple childs, remove them
          if _is_iterable(child):
              for x in child:
                  self.removeChild(child=x, end_tag_too=end_tag_too)
              return
  
          if not self.childs:
              return
  
          end_tag = None
          if end_tag_too:
              end_tag = child.endtag
  
          for e in self.childs:
              if e != child:
                  e.removeChild(child, end_tag_too)
                  continue
  
              if end_tag_too and end_tag in self.childs:
                  self.childs.remove(end_tag)
  
              self.childs.remove(e)
docs: Remove subelement (`child`) specified by reference.
  
          Note:
              This can't be used for removing subelements by value! If you want
              to do such thing, try::
  
                  for e in dom.find("value"):
                      dom.removeChild(e)
  
          Args:
              child (obj): :class:`HTMLElement` instance which will be removed
                           from this element.
              end_tag_too (bool, default True): Remove also `child` endtag.