range factorial