danneu
::process
fun <A, B: Any> Sequence<A>.firstNotNull(process: (A) -> B?): B? = mapNotNull(::process).firstOrNull()