old_contents: #  Based on: http://www.djangosnippets.org/snippets/73/
  #
  #  Modified by Sean Reifschneider to be smarter about surrounding page
  #  link context.  For usage documentation see:
  #
  #     http://www.tummy.com/Community/Articles/django-pagination/
  
  from django import template
  
  register = template.Library()
  
  
  def paginator(context, adjacent_pages=1):
      """
      To be used in conjunction with the object_list generic view.
  
      Adds pagination context variables for use in displaying first, adjacent and
      last page links in addition to those created by the object_list generic
      view.
  
      """
      if 'page_obj' in context:
          page_obj = context['page_obj']
          paginator = context['paginator']
          startPage = max(page_obj.number - adjacent_pages, 1)
          if startPage <= 3:
              startPage = 1
          endPage = page_obj.number + adjacent_pages + 1
          if endPage >= paginator.num_pages - 1:
              endPage = paginator.num_pages + 1
          page_numbers = [n for n in range(startPage, endPage)
                          if n > 0 and n <= paginator.num_pages]
  
          context['page_numbers'] = page_numbers
          context['show_first'] = 1 not in page_numbers
          context['show_last'] = paginator.num_pages not in page_numbers
          return context
      else:
          return {}
  
  register.inclusion_tag('snippets/pagination.html',
                         takes_context=True)(paginator)
  
new_contents: #  Based on: http://www.djangosnippets.org/snippets/73/
  #
  #  Modified by Sean Reifschneider to be smarter about surrounding page
  #  link context.  For usage documentation see:
  #
  #     http://www.tummy.com/Community/Articles/django-pagination/
  
  from django import template
  
  register = template.Library()
  
  
  def paginator(context, adjacent_pages=1):
      """
      To be used in conjunction with the object_list generic view.
  
      Adds pagination context variables for use in displaying first, adjacent and
      last page links in addition to those created by the object_list generic
      view.
  
      """
      if 'page_obj' in context:
          page_obj = context['page_obj']
          paginator = context['paginator']
          startPage = max(page_obj.number - adjacent_pages, 1)
          if startPage <= 3:
              startPage = 1
          endPage = page_obj.number + adjacent_pages + 1
          if endPage >= paginator.num_pages - 1:
              endPage = paginator.num_pages + 1
          page_numbers = [n for n in range(startPage, endPage)
                          if n > 0 and n <= paginator.num_pages]
  
          context['page_numbers'] = page_numbers
          context['show_first'] = 1 not in page_numbers
          context['show_last'] = paginator.num_pages not in page_numbers
          return context
      else:
          return {}
  
  
  register.inclusion_tag('snippets/pagination.html',
                         takes_context=True)(paginator)
  
subject: Fix flake8