code: func (m *Merger) Read() (rec *sam.Record, err error) {
  	if len(m.readers) == 0 {
  		return nil, io.EOF
  	}
  	if m.less == nil {
  		return m.cat()
  	}
  	return m.nextBySortOrder()
  }
docs: // Read returns the next sam.Record in the BAM stream.
  //
  // The Read behaviour will depend on the underlying Readers.