code: func (pag *Paginator) Stream() <-chan interface{} {
  	out := make(chan interface{})
  	go func() {
  		defer close(out)
  		for {
  			page, err := pag.NextPage()
  			if err != nil {
  				if err != io.EOF {
  					out <- err
  				}
  				break
  			}
  			v := reflect.ValueOf(page)
  			for i, l := 0, v.Len(); i < l; i++ {
  				out <- v.Index(i).Interface()
  			}
  		}
  	}()
  	return out
  }
docs: // Stream creates a channel which streams the contents of all remaining pages
  // ony by one.
  //
  // The Paginator is consumed in the process, meaning that after elements have
  // been received, NextPage will return EOF. It is invalid to mix calls to
  // NextPage an Stream, even after the stream channel was closed.
  //
  // If an error occurs, the next item sent over the channel will be an error
  // instead of a regular value. The channel is closed directly after this.