optimisation of InRange function