find_prev is now implemented as binary search