lower_bound return type, avoid unnecessary offset computation