inline fun <R> CharSequence.foldIndexed(
operation: (index: Int, acc: R, Char) -> R
Accumulates value starting with initial value and applying operation from left to right to current accumulator value and each character with its index in the original char sequence.
Returns the specified initial value if the char sequence is empty.
operation - function that takes the index of a character, current accumulator value
and the character itself, and calculates the next accumulator value.