code: func (s *ScrollService) Do(ctx context.Context) (*SearchResult, error) {
  	s.mu.RLock()
  	nextScrollId := s.scrollId
  	s.mu.RUnlock()
  	if len(nextScrollId) == 0 {
  		return s.first(ctx)
  	}
  	return s.next(ctx)
  }
docs: // Do returns the next search result. It will return io.EOF as error if there
  // are no more search results.