Reasonable solution with collections