<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def application_list(request):
 """ a user wants to see all applications possible. """


    if util.is_admin(request):
        queryset = Application.objects.all()
    else:
        queryset = Application.objects.get_for_applicant(request.user)

    q_filter = ApplicationFilter(request.GET, queryset=queryset)

    table = ApplicationTable(q_filter.qs.order_by("-expires"))
    tables.RequestConfig(request).configure(table)

    spec = []
    for name, value in six.iteritems(q_filter.form.cleaned_data):
        if value is not None and value != "":
            name = name.replace('_', ' ').capitalize()
            spec.append((name, value))

    return render(
        template_name="kgapplications/application_list.html",
        context={
            'table': table,
            'filter': q_filter,
            'spec': spec,
            'title': "Application list",
        },
        request=request)