Had to go a different route for #188. Single range function handles all required cases