pub fn binary_search<X, A, B, F>( low: (X, A), high: (X, B), f: F, ) -> ((X, A), (X, B))where X: Betweenable, F: FnMut(X) -> Direction<A, B>,