func Merge[T any](cs []<-chan T, less func(T, T) bool) <-chan T
Merge returns a channel that receives all the values read from cs.
If less is non-nil, it assumes that the values received from each channel
are ordered according to the less function - that ordering
will be maintained in the returned values.