'Returns a Page object for the given 1-based page number.'

def page(self, number):

    number = self.validate_number(number)
    bottom = ((number - 1) * self.per_page)
    top = (bottom + self.per_page)
    if ((top + self.orphans) >= self.count):
        top = self.count
    return Page(self.object_list[bottom:top], number, self)
