code: def _read(self, delta=0, wrap=False, strict=False):
          
          index = self._head + delta
          if index < 0 and (not wrap or abs(index) > len(self._text)):
              return self.START
          try:
              return self._text[index]
          except IndexError:
              if strict:
                  self._fail_route()
              return self.END
docs: Read the value at a relative point in the wikicode.
  
          The value is read from :attr:`self._head <_head>` plus the value of
          *delta* (which can be negative). If *wrap* is ``False``, we will not
          allow attempts to read from the end of the string if ``self._head +
          delta`` is negative. If *strict* is ``True``, the route will be failed
          (with :meth:`_fail_route`) if we try to read from past the end of the
          string; otherwise, :attr:`self.END <END>` is returned. If we try to
          read from before the start of the string, :attr:`self.START <START>` is
          returned.