Logic moved to collection model.