fn bin_search(sar : &[T], v : &T) -> Option { let mut lowi=0; let mut highi=sar.len(); loop { if lowi>=highi { return None; } let mi=lowi+(highi-lowi)/2; if sar[mi].lt(v) { lowi=mi+1; } else if sar[mi].gt(v) { highi=mi; } else { return Some(mi); } } }