scheme range
math overloading