range now has start, end, and duration