docs: def _create_extended_jinja_tags(self, nodes):
          """Loops through the nodes and looks for special jinja tags that
          contains more than one tag but only one ending tag."""
  
          jinja_a = None
          jinja_b = None
          ext_node = None
          ext_nodes = []
  
          for node in nodes:
  
              if isinstance(node, EmptyLine):
                  continue
  
  
              if node.has_children():
                  node.children = self._create_extended_jinja_tags(node.children)
  
              if not isinstance(node, JinjaTag):
                  jinja_a = None
                  continue
  
              if jinja_a is None or (
                  node.tag_name in self._extended_tags and jinja_a.tag_name not in self._extended_tags[node.tag_name]):
                  jinja_a = node
                  continue
  
  
              if node.tag_name in self._extended_tags and \
                  jinja_a.tag_name in self._extended_tags[node.tag_name]:
  
                  if ext_node is None:
                      ext_node = ExtendedJinjaTag()
                      ext_node.add(jinja_a)
                      ext_nodes.append(ext_node)
                  ext_node.add(node)
  
              else:
                  ext_node = None
                  jinja_a = node
  
          #replace the nodes with the new extended node
          for node in ext_nodes:
              nodes.insert(nodes.index(node.children[0]), node)
  
              index = nodes.index(node.children[0])
              del nodes[index:index+len(node.children)]
  
          return nodes