interface G { val a: Array } fun goo(g: G) { val x = g.a.firstOrNullX() } public fun Array.firstOrNullX(): T? { return if (isEmpty()) null else this[0] }