code: func (s *Source) Record() (interface{}, error) {
  	next := atomic.AddUint64(s.n, 1)
  	if next > s.max {
  		close(s.closed)
  		s.wg.Wait()
  		return nil, io.EOF
  	}
  	return <-s.events, nil
  }
docs: // Record implements pdk.Source and returns a randomly generated fake.Event.