modified collection model