We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Create a specific `eligibility/start.html` template, update the view to use it
Like for some other pages, we need a specific template file for the Eligibility Start page, which has some unique elements to render and behaviors to handle.

The scope of this task it to simply create the new template, `{% extends "core/page.html" %}`, and get the view to use it -- keeping everything else about the page the same.

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `benefits/eligibility/views.py`
Content:
```
1 """
2 The eligibility application: view definitions for the eligibility verification flow.
3 """
4 from django.contrib import messages
5 from django.shortcuts import redirect
6 from django.urls import reverse
7 from django.utils.decorators import decorator_from_middleware
8 from django.utils.translation import pgettext, gettext as _
9 
10 from benefits.core import middleware, recaptcha, session, viewmodels
11 from benefits.core.models import EligibilityVerifier
12 from benefits.core.views import PageTemplateResponse
13 from . import analytics, api, forms
14 
15 
16 @decorator_from_middleware(middleware.AgencySessionRequired)
17 def index(request):
18     """View handler for the eligibility verifier selection form."""
19 
20     session.update(request, eligibility_types=[], origin=reverse("eligibility:index"))
21     agency = session.agency(request)
22 
23     eligibility_start = reverse("eligibility:start")
24 
25     page = viewmodels.Page(
26         title=_("eligibility.pages.index.title"),
27         content_title=_("eligibility.pages.index.content_title"),
28         forms=forms.EligibilityVerifierSelectionForm(agency=agency),
29     )
30 
31     if request.method == "POST":
32         form = forms.EligibilityVerifierSelectionForm(data=request.POST, agency=agency)
33 
34         if form.is_valid():
35             verifier_id = form.cleaned_data.get("verifier")
36             verifier = EligibilityVerifier.objects.get(id=verifier_id)
37             session.update(request, verifier=verifier)
38 
39             response = redirect(eligibility_start)
40         else:
41             # form was not valid, allow for correction/resubmission
42             page.forms = [form]
43             response = PageTemplateResponse(request, page)
44     else:
45         if agency.eligibility_verifiers.count() == 1:
46             verifier = agency.eligibility_verifiers.first()
47             session.update(request, verifier=verifier)
48             response = redirect(eligibility_start)
49         else:
50             response = PageTemplateResponse(request, page)
51 
52     return response
53 
54 
55 @decorator_from_middleware(middleware.AgencySessionRequired)
56 @decorator_from_middleware(middleware.VerifierSessionRequired)
57 def start(request):
58     """View handler for the eligibility verification getting started screen."""
59 
60     session.update(request, eligibility_types=[])
61     verifier = session.verifier(request)
62 
63     page = viewmodels.Page(
64         title=_("eligibility.pages.start.title"),
65         content_title=_(verifier.start_content_title),
66         media=[
67             viewmodels.MediaItem(
68                 icon=viewmodels.Icon("idcardcheck", pgettext("image alt text", "core.icons.idcardcheck")),
69                 heading=_(verifier.start_item_name),
70                 details=_(verifier.start_item_description),
71             ),
72             viewmodels.MediaItem(
73                 icon=viewmodels.Icon("bankcardcheck", pgettext("image alt text", "core.icons.bankcardcheck")),
74                 heading=_("eligibility.pages.start.items[1].title"),
75                 details=_("eligibility.pages.start.items[1].text"),
76             ),
77         ],
78         paragraphs=[_(verifier.start_blurb)],
79         button=viewmodels.Button.primary(text=_("eligibility.buttons.continue"), url=reverse("eligibility:confirm")),
80     )
81 
82     return PageTemplateResponse(request, page)
83 
84 
85 @decorator_from_middleware(middleware.AgencySessionRequired)
86 @decorator_from_middleware(middleware.RateLimit)
87 @decorator_from_middleware(middleware.VerifierSessionRequired)
88 def confirm(request):
89     """View handler for the eligibility verification form."""
90 
91     verifier = session.verifier(request)
92 
93     page = viewmodels.Page(
94         title=_(verifier.form_title),
95         content_title=_(verifier.form_content_title),
96         paragraphs=[_(verifier.form_blurb)],
97         form=forms.EligibilityVerificationForm(auto_id=True, label_suffix="", verifier=verifier),
98         classes="text-lg-center",
99     )
100 
101     if request.method == "POST":
102         analytics.started_eligibility(request)
103 
104         form = forms.EligibilityVerificationForm(data=request.POST, verifier=verifier)
105         response = _verify(request, form)
106 
107         if response is None:
108             # form was not valid, allow for correction/resubmission
109             analytics.returned_error(request, form.errors)
110             page.forms = [form]
111             response = PageTemplateResponse(request, page)
112     elif session.eligible(request):
113         eligibility = session.eligibility(request)
114         response = verified(request, [eligibility.name])
115     else:
116         response = PageTemplateResponse(request, page)
117 
118     return response
119 
120 
121 def _verify(request, form):
122     """Helper calls the eligibility verification API with user input."""
123 
124     if not form.is_valid():
125         if recaptcha.has_error(form):
126             messages.error(request, "Recaptcha failed. Please try again.")
127         return None
128 
129     sub, name = form.cleaned_data.get("sub"), form.cleaned_data.get("name")
130 
131     agency = session.agency(request)
132     verifier = session.verifier(request)
133     client = api.Client(agency, verifier)
134 
135     response = client.verify(sub, name)
136 
137     if response.error and any(response.error):
138         form.add_api_errors(response.error)
139         return None
140     elif any(response.eligibility):
141         return verified(request, response.eligibility)
142     else:
143         return unverified(request)
144 
145 
146 @decorator_from_middleware(middleware.AgencySessionRequired)
147 def verified(request, verified_types):
148     """View handler for the verified eligibility page."""
149 
150     analytics.returned_success(request)
151 
152     enrollment_index = reverse("enrollment:index")
153     session.update(request, eligibility_types=verified_types, origin=enrollment_index)
154 
155     return redirect(enrollment_index)
156 
157 
158 @decorator_from_middleware(middleware.AgencySessionRequired)
159 @decorator_from_middleware(middleware.VerifierSessionRequired)
160 def unverified(request):
161     """View handler for the unverified eligibility page."""
162 
163     analytics.returned_fail(request)
164 
165     # tel: link to agency phone number
166     agency = session.agency(request)
167     buttons = viewmodels.Button.agency_contact_links(agency)
168 
169     verifier = session.verifier(request)
170 
171     page = viewmodels.Page(
172         title=_(verifier.unverified_title),
173         content_title=_(verifier.unverified_content_title),
174         icon=viewmodels.Icon("idcardquestion", pgettext("image alt text", "core.icons.idcardquestion")),
175         paragraphs=[_(verifier.unverified_blurb), _("eligibility.pages.unverified.p[1]")],
176         buttons=buttons,
177         classes="text-lg-center",
178     )
179 
180     return PageTemplateResponse(request, page)
181
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/benefits/eligibility/views.py b/benefits/eligibility/views.py
--- a/benefits/eligibility/views.py
+++ b/benefits/eligibility/views.py
@@ -3,6 +3,7 @@
 """
 from django.contrib import messages
 from django.shortcuts import redirect
+from django.template.response import TemplateResponse
 from django.urls import reverse
 from django.utils.decorators import decorator_from_middleware
 from django.utils.translation import pgettext, gettext as _
@@ -79,7 +80,7 @@
         button=viewmodels.Button.primary(text=_("eligibility.buttons.continue"), url=reverse("eligibility:confirm")),
     )
 
-    return PageTemplateResponse(request, page)
+    return TemplateResponse(request, "eligibility/start.html", page.context_dict())
 
 
 @decorator_from_middleware(middleware.AgencySessionRequired)

{"golden_diff": "diff --git a/benefits/eligibility/views.py b/benefits/eligibility/views.py\n--- a/benefits/eligibility/views.py\n+++ b/benefits/eligibility/views.py\n@@ -3,6 +3,7 @@\n \"\"\"\n from django.contrib import messages\n from django.shortcuts import redirect\n+from django.template.response import TemplateResponse\n from django.urls import reverse\n from django.utils.decorators import decorator_from_middleware\n from django.utils.translation import pgettext, gettext as _\n@@ -79,7 +80,7 @@\n         button=viewmodels.Button.primary(text=_(\"eligibility.buttons.continue\"), url=reverse(\"eligibility:confirm\")),\n     )\n \n-    return PageTemplateResponse(request, page)\n+    return TemplateResponse(request, \"eligibility/start.html\", page.context_dict())\n \n \n @decorator_from_middleware(middleware.AgencySessionRequired)\n", "issue": "Create a specific `eligibility/start.html` template, update the view to use it\nLike for some other pages, we need a specific template file for the Eligibility Start page, which has some unique elements to render and behaviors to handle.\r\n\r\nThe scope of this task it to simply create the new template, `{% extends \"core/page.html\" %}`, and get the view to use it -- keeping everything else about the page the same.\n", "before_files": [{"content": "\"\"\"\nThe eligibility application: view definitions for the eligibility verification flow.\n\"\"\"\nfrom django.contrib import messages\nfrom django.shortcuts import redirect\nfrom django.urls import reverse\nfrom django.utils.decorators import decorator_from_middleware\nfrom django.utils.translation import pgettext, gettext as _\n\nfrom benefits.core import middleware, recaptcha, session, viewmodels\nfrom benefits.core.models import EligibilityVerifier\nfrom benefits.core.views import PageTemplateResponse\nfrom . import analytics, api, forms\n\n\n@decorator_from_middleware(middleware.AgencySessionRequired)\ndef index(request):\n    \"\"\"View handler for the eligibility verifier selection form.\"\"\"\n\n    session.update(request, eligibility_types=[], origin=reverse(\"eligibility:index\"))\n    agency = session.agency(request)\n\n    eligibility_start = reverse(\"eligibility:start\")\n\n    page = viewmodels.Page(\n        title=_(\"eligibility.pages.index.title\"),\n        content_title=_(\"eligibility.pages.index.content_title\"),\n        forms=forms.EligibilityVerifierSelectionForm(agency=agency),\n    )\n\n    if request.method == \"POST\":\n        form = forms.EligibilityVerifierSelectionForm(data=request.POST, agency=agency)\n\n        if form.is_valid():\n            verifier_id = form.cleaned_data.get(\"verifier\")\n            verifier = EligibilityVerifier.objects.get(id=verifier_id)\n            session.update(request, verifier=verifier)\n\n            response = redirect(eligibility_start)\n        else:\n            # form was not valid, allow for correction/resubmission\n            page.forms = [form]\n            response = PageTemplateResponse(request, page)\n    else:\n        if agency.eligibility_verifiers.count() == 1:\n            verifier = agency.eligibility_verifiers.first()\n            session.update(request, verifier=verifier)\n            response = redirect(eligibility_start)\n        else:\n            response = PageTemplateResponse(request, page)\n\n    return response\n\n\n@decorator_from_middleware(middleware.AgencySessionRequired)\n@decorator_from_middleware(middleware.VerifierSessionRequired)\ndef start(request):\n    \"\"\"View handler for the eligibility verification getting started screen.\"\"\"\n\n    session.update(request, eligibility_types=[])\n    verifier = session.verifier(request)\n\n    page = viewmodels.Page(\n        title=_(\"eligibility.pages.start.title\"),\n        content_title=_(verifier.start_content_title),\n        media=[\n            viewmodels.MediaItem(\n                icon=viewmodels.Icon(\"idcardcheck\", pgettext(\"image alt text\", \"core.icons.idcardcheck\")),\n                heading=_(verifier.start_item_name),\n                details=_(verifier.start_item_description),\n            ),\n            viewmodels.MediaItem(\n                icon=viewmodels.Icon(\"bankcardcheck\", pgettext(\"image alt text\", \"core.icons.bankcardcheck\")),\n                heading=_(\"eligibility.pages.start.items[1].title\"),\n                details=_(\"eligibility.pages.start.items[1].text\"),\n            ),\n        ],\n        paragraphs=[_(verifier.start_blurb)],\n        button=viewmodels.Button.primary(text=_(\"eligibility.buttons.continue\"), url=reverse(\"eligibility:confirm\")),\n    )\n\n    return PageTemplateResponse(request, page)\n\n\n@decorator_from_middleware(middleware.AgencySessionRequired)\n@decorator_from_middleware(middleware.RateLimit)\n@decorator_from_middleware(middleware.VerifierSessionRequired)\ndef confirm(request):\n    \"\"\"View handler for the eligibility verification form.\"\"\"\n\n    verifier = session.verifier(request)\n\n    page = viewmodels.Page(\n        title=_(verifier.form_title),\n        content_title=_(verifier.form_content_title),\n        paragraphs=[_(verifier.form_blurb)],\n        form=forms.EligibilityVerificationForm(auto_id=True, label_suffix=\"\", verifier=verifier),\n        classes=\"text-lg-center\",\n    )\n\n    if request.method == \"POST\":\n        analytics.started_eligibility(request)\n\n        form = forms.EligibilityVerificationForm(data=request.POST, verifier=verifier)\n        response = _verify(request, form)\n\n        if response is None:\n            # form was not valid, allow for correction/resubmission\n            analytics.returned_error(request, form.errors)\n            page.forms = [form]\n            response = PageTemplateResponse(request, page)\n    elif session.eligible(request):\n        eligibility = session.eligibility(request)\n        response = verified(request, [eligibility.name])\n    else:\n        response = PageTemplateResponse(request, page)\n\n    return response\n\n\ndef _verify(request, form):\n    \"\"\"Helper calls the eligibility verification API with user input.\"\"\"\n\n    if not form.is_valid():\n        if recaptcha.has_error(form):\n            messages.error(request, \"Recaptcha failed. Please try again.\")\n        return None\n\n    sub, name = form.cleaned_data.get(\"sub\"), form.cleaned_data.get(\"name\")\n\n    agency = session.agency(request)\n    verifier = session.verifier(request)\n    client = api.Client(agency, verifier)\n\n    response = client.verify(sub, name)\n\n    if response.error and any(response.error):\n        form.add_api_errors(response.error)\n        return None\n    elif any(response.eligibility):\n        return verified(request, response.eligibility)\n    else:\n        return unverified(request)\n\n\n@decorator_from_middleware(middleware.AgencySessionRequired)\ndef verified(request, verified_types):\n    \"\"\"View handler for the verified eligibility page.\"\"\"\n\n    analytics.returned_success(request)\n\n    enrollment_index = reverse(\"enrollment:index\")\n    session.update(request, eligibility_types=verified_types, origin=enrollment_index)\n\n    return redirect(enrollment_index)\n\n\n@decorator_from_middleware(middleware.AgencySessionRequired)\n@decorator_from_middleware(middleware.VerifierSessionRequired)\ndef unverified(request):\n    \"\"\"View handler for the unverified eligibility page.\"\"\"\n\n    analytics.returned_fail(request)\n\n    # tel: link to agency phone number\n    agency = session.agency(request)\n    buttons = viewmodels.Button.agency_contact_links(agency)\n\n    verifier = session.verifier(request)\n\n    page = viewmodels.Page(\n        title=_(verifier.unverified_title),\n        content_title=_(verifier.unverified_content_title),\n        icon=viewmodels.Icon(\"idcardquestion\", pgettext(\"image alt text\", \"core.icons.idcardquestion\")),\n        paragraphs=[_(verifier.unverified_blurb), _(\"eligibility.pages.unverified.p[1]\")],\n        buttons=buttons,\n        classes=\"text-lg-center\",\n    )\n\n    return PageTemplateResponse(request, page)\n", "path": "benefits/eligibility/views.py"}], "after_files": [{"content": "\"\"\"\nThe eligibility application: view definitions for the eligibility verification flow.\n\"\"\"\nfrom django.contrib import messages\nfrom django.shortcuts import redirect\nfrom django.template.response import TemplateResponse\nfrom django.urls import reverse\nfrom django.utils.decorators import decorator_from_middleware\nfrom django.utils.translation import pgettext, gettext as _\n\nfrom benefits.core import middleware, recaptcha, session, viewmodels\nfrom benefits.core.models import EligibilityVerifier\nfrom benefits.core.views import PageTemplateResponse\nfrom . import analytics, api, forms\n\n\n@decorator_from_middleware(middleware.AgencySessionRequired)\ndef index(request):\n    \"\"\"View handler for the eligibility verifier selection form.\"\"\"\n\n    session.update(request, eligibility_types=[], origin=reverse(\"eligibility:index\"))\n    agency = session.agency(request)\n\n    eligibility_start = reverse(\"eligibility:start\")\n\n    page = viewmodels.Page(\n        title=_(\"eligibility.pages.index.title\"),\n        content_title=_(\"eligibility.pages.index.content_title\"),\n        forms=forms.EligibilityVerifierSelectionForm(agency=agency),\n    )\n\n    if request.method == \"POST\":\n        form = forms.EligibilityVerifierSelectionForm(data=request.POST, agency=agency)\n\n        if form.is_valid():\n            verifier_id = form.cleaned_data.get(\"verifier\")\n            verifier = EligibilityVerifier.objects.get(id=verifier_id)\n            session.update(request, verifier=verifier)\n\n            response = redirect(eligibility_start)\n        else:\n            # form was not valid, allow for correction/resubmission\n            page.forms = [form]\n            response = PageTemplateResponse(request, page)\n    else:\n        if agency.eligibility_verifiers.count() == 1:\n            verifier = agency.eligibility_verifiers.first()\n            session.update(request, verifier=verifier)\n            response = redirect(eligibility_start)\n        else:\n            response = PageTemplateResponse(request, page)\n\n    return response\n\n\n@decorator_from_middleware(middleware.AgencySessionRequired)\n@decorator_from_middleware(middleware.VerifierSessionRequired)\ndef start(request):\n    \"\"\"View handler for the eligibility verification getting started screen.\"\"\"\n\n    session.update(request, eligibility_types=[])\n    verifier = session.verifier(request)\n\n    page = viewmodels.Page(\n        title=_(\"eligibility.pages.start.title\"),\n        content_title=_(verifier.start_content_title),\n        media=[\n            viewmodels.MediaItem(\n                icon=viewmodels.Icon(\"idcardcheck\", pgettext(\"image alt text\", \"core.icons.idcardcheck\")),\n                heading=_(verifier.start_item_name),\n                details=_(verifier.start_item_description),\n            ),\n            viewmodels.MediaItem(\n                icon=viewmodels.Icon(\"bankcardcheck\", pgettext(\"image alt text\", \"core.icons.bankcardcheck\")),\n                heading=_(\"eligibility.pages.start.items[1].title\"),\n                details=_(\"eligibility.pages.start.items[1].text\"),\n            ),\n        ],\n        paragraphs=[_(verifier.start_blurb)],\n        button=viewmodels.Button.primary(text=_(\"eligibility.buttons.continue\"), url=reverse(\"eligibility:confirm\")),\n    )\n\n    return TemplateResponse(request, \"eligibility/start.html\", page.context_dict())\n\n\n@decorator_from_middleware(middleware.AgencySessionRequired)\n@decorator_from_middleware(middleware.RateLimit)\n@decorator_from_middleware(middleware.VerifierSessionRequired)\ndef confirm(request):\n    \"\"\"View handler for the eligibility verification form.\"\"\"\n\n    verifier = session.verifier(request)\n\n    page = viewmodels.Page(\n        title=_(verifier.form_title),\n        content_title=_(verifier.form_content_title),\n        paragraphs=[_(verifier.form_blurb)],\n        form=forms.EligibilityVerificationForm(auto_id=True, label_suffix=\"\", verifier=verifier),\n        classes=\"text-lg-center\",\n    )\n\n    if request.method == \"POST\":\n        analytics.started_eligibility(request)\n\n        form = forms.EligibilityVerificationForm(data=request.POST, verifier=verifier)\n        response = _verify(request, form)\n\n        if response is None:\n            # form was not valid, allow for correction/resubmission\n            analytics.returned_error(request, form.errors)\n            page.forms = [form]\n            response = PageTemplateResponse(request, page)\n    elif session.eligible(request):\n        eligibility = session.eligibility(request)\n        response = verified(request, [eligibility.name])\n    else:\n        response = PageTemplateResponse(request, page)\n\n    return response\n\n\ndef _verify(request, form):\n    \"\"\"Helper calls the eligibility verification API with user input.\"\"\"\n\n    if not form.is_valid():\n        if recaptcha.has_error(form):\n            messages.error(request, \"Recaptcha failed. Please try again.\")\n        return None\n\n    sub, name = form.cleaned_data.get(\"sub\"), form.cleaned_data.get(\"name\")\n\n    agency = session.agency(request)\n    verifier = session.verifier(request)\n    client = api.Client(agency, verifier)\n\n    response = client.verify(sub, name)\n\n    if response.error and any(response.error):\n        form.add_api_errors(response.error)\n        return None\n    elif any(response.eligibility):\n        return verified(request, response.eligibility)\n    else:\n        return unverified(request)\n\n\n@decorator_from_middleware(middleware.AgencySessionRequired)\ndef verified(request, verified_types):\n    \"\"\"View handler for the verified eligibility page.\"\"\"\n\n    analytics.returned_success(request)\n\n    enrollment_index = reverse(\"enrollment:index\")\n    session.update(request, eligibility_types=verified_types, origin=enrollment_index)\n\n    return redirect(enrollment_index)\n\n\n@decorator_from_middleware(middleware.AgencySessionRequired)\n@decorator_from_middleware(middleware.VerifierSessionRequired)\ndef unverified(request):\n    \"\"\"View handler for the unverified eligibility page.\"\"\"\n\n    analytics.returned_fail(request)\n\n    # tel: link to agency phone number\n    agency = session.agency(request)\n    buttons = viewmodels.Button.agency_contact_links(agency)\n\n    verifier = session.verifier(request)\n\n    page = viewmodels.Page(\n        title=_(verifier.unverified_title),\n        content_title=_(verifier.unverified_content_title),\n        icon=viewmodels.Icon(\"idcardquestion\", pgettext(\"image alt text\", \"core.icons.idcardquestion\")),\n        paragraphs=[_(verifier.unverified_blurb), _(\"eligibility.pages.unverified.p[1]\")],\n        buttons=buttons,\n        classes=\"text-lg-center\",\n    )\n\n    return PageTemplateResponse(request, page)\n", "path": "benefits/eligibility/views.py"}]}