Maintain laziness. Not that it matters, because the function will only be evaluated once. Still, a good learning exercise ;x