code: def _parse_comment(self):
          
          self._head += 4
          reset = self._head - 1
          self._push()
          while True:
              this = self._read()
              if this == self.END:
                  self._pop()
                  self._head = reset
                  self._emit_text("<!--")
                  return
              if this == self._read(1) == "-" and self._read(2) == ">":
                  self._emit_first(tokens.CommentStart())
                  self._emit(tokens.CommentEnd())
                  self._emit_all(self._pop())
                  self._head += 2
                  if self._context & contexts.FAIL_NEXT:
                      # _verify_safe() sets this flag while parsing a template
                      # or link when it encounters what might be a comment -- we
                      # must unset it to let _verify_safe() know it was correct:
                      self._context ^= contexts.FAIL_NEXT
                  return
              self._emit_text(this)
              self._head += 1
docs: Parse an HTML comment at the head of the wikicode string.