refactoring project and adding ranged type variables