Simplified and more flexible structure using PageInfo objects.