new VariableRange class for learning