docs: def create_outlines(self):
          """Create an outline in the output file that allows for easy navigation
          of the document. The outline is a hierarchical tree of all the sections
          in the document."""
          sections = parent = []
          current_level = 1
          stack = []
          fake_container = FakeContainer(self)
          for section in self._sections:
              if not section.show_in_toc(fake_container):
                  continue
              section_id = section.get_id(self, create=False)
              section_number = self.get_reference(section_id, 'number')
              section_title = self.get_reference(section_id, 'title')
              if section.level > current_level:
                  if section.level != current_level + 1:
                      warn("Your document section hierarchy is missing levels. "
                           "Please report this at https://github.com/brechtm"
                           "/rinohtype/pull/67")
                      break
                  stack.append(parent)
                  parent = current
              elif section.level < current_level:
                  for i in range(current_level - section.level):
                      parent = stack.pop()
              current = []
              item = (str(section_id), section_number, section_title, current)
              parent.append(item)
              current_level = section.level
          self.backend_document.create_outlines(sections)