pub(crate) fn py_kl_refine<'py>(
py: Python<'py>,
adj_offsets: PyReadonlyArray1<'_, i64>,
adj_neighbours: PyReadonlyArray1<'_, i32>,
adj_scc_abs: PyReadonlyArray1<'_, f64>,
vertex_weights: PyReadonlyArray1<'_, f64>,
part_map: PyReadonlyArray1<'_, i32>,
parts_concat: PyReadonlyArray1<'_, i32>,
parts_offsets: PyReadonlyArray1<'_, i64>,
n_parts: i32,
kl_iterations: i32,
correlation_penalty: f64,
) -> PyResult<(Py<PyArray1<i32>>, u64)>