refactoring Collection and Model Collection