in lib/src/main/kotlin/org/jetbrains/zip/signer/digest/ChunkIterator.kt [16:22]
override fun next(): ByteBuffer {
if (index < 0 || index >= chunkCount) throw NoSuchElementException()
val chunkSize = (dataSource.size() - index * maximumChunkSize).coerceAtMost(maximumChunkSize.toLong()).toInt()
val chunk = dataSource.getByteBuffer(index * maximumChunkSize.toLong(), chunkSize)
index += 1
return chunk
}