add range function