get a little more range by adopting the clever idea of comparing c - a to b