pub fn broadcast_binary_elementwise_values<T, U, V, F, K>(
    lhs: &ChunkedArray<T>,
    rhs: &ChunkedArray<U>,
    op: F
) -> ChunkedArray<V>
where T: PolarsDataType, U: PolarsDataType, V: PolarsDataType, F: for<'a> FnMut(T::Physical<'a>, U::Physical<'a>) -> K, V::Array: ArrayFromIter<K>,