apatrida
public fun <T> Sequence<T>.batch(n: Int, forEachDo: (List<T>)->Unit) { BatchingSequence(this, n).forEach { group -> forEachDo(group) } }