refactoring Collections