code: def insert_tag(tag, before, root):
      
      if not before:
          root.childs.append(tag)
          tag.parent = root
          return
  
      if type(before) in [tuple, list]:
          before = first(before)
  
      # check that `before` is double linked
      if not hasattr(before, "parent"):
          raise ValueError("Input must be double-linked!")
  
      # put it before first existing identifier
      parent = before.parent
      parent.childs.insert(
          parent.childs.index(before),
          tag
      )
      tag.parent = parent
docs: Insert `tag` before `before` tag if present. If not, insert it into `root`.
  
      Args:
          tag (obj): HTMLElement instance.
          before (obj): HTMLElement instance.
          root (obj): HTMLElement instance.