How does `conflate()` differ from `buffer(CONFLATED)` versus a plain `buffer()` at the channel level, and what guarantee about delivered values does conflation break?
flow {
repeat(100) { emit(it); }
}.conflate().collect { value ->
delay(50)
println(value)
}