code: async def forward(self, n, *, timeout=None) -> int:
          r
          self._check_ready()
          if n <= 0:
              raise exceptions.InterfaceError('n must be greater than zero')
  
          protocol = self._connection._protocol
          status = await protocol.query('MOVE FORWARD {:d} {}'.format(
              n, self._portal_name), timeout)
  
          advanced = int(status.split()[1])
          if advanced < n:
              self._exhausted = True
  
          return advanced
docs: r"""Skip over the next *n* rows.
  
          :param float timeout: Optional timeout value in seconds.
  
          :return: A number of rows actually skipped over (<= *n*).