refactoring ListByProperty