code: func New(c context.Context, o Options) *Fetcher {
  	if o.Delay <= 0 {
  		o.Delay = DefaultDelay
  	}
  	if o.BufferBytes <= 0 && o.BufferCount <= 0 {
  		o.BufferBytes = DefaultBufferBytes
  	}
  	if o.PrefetchFactor <= 1 {
  		o.PrefetchFactor = 1
  	}
  
  	f := Fetcher{
  		o:    &o,
  		logC: make(chan *logResponse, o.Count),
  	}
  	go f.fetch(c)
  	return &f
  }
docs: // New instantiates a new Fetcher instance.
  //
  // The Fetcher can be cancelled by cancelling the supplied context.