user
fun <T, U, R> ifNotNull(first: T?, second: U?, block: (T, U) -> R): R? = if (first != null && second != null) block(first, second) else null println(ifNotNull("a", "b") { first, second -> first + second })