We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Add more context to "Easy vs Secure" prompt
Right now you get this prompt for redirect

```
Please choose whether HTTPS access is required or optional.
-------------------------------------------------------------------------------
1: Easy - Allow both HTTP and HTTPS access to these sites
2: Secure - Make all requests redirect to secure HTTPS access
-------------------------------------------------------------------------------
```

One confusing thing: The title asks "required or optional," but those words don't appear in either option.

Also, we should provide more advice on how to choose. I.e. 

```
1: Easy - Allow both HTTP and HTTPS access to these sites. Choose this if you haven't yet tested that your sites function properly when visited on HTTPS.
2: Secure - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration.
```


--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `certbot/display/enhancements.py`
Content:
```
1 """Certbot Enhancement Display"""
2 import logging
3 
4 import zope.component
5 
6 from certbot import errors
7 from certbot import interfaces
8 from certbot.display import util as display_util
9 
10 
11 logger = logging.getLogger(__name__)
12 
13 # Define a helper function to avoid verbose code
14 util = zope.component.getUtility
15 
16 
17 def ask(enhancement):
18     """Display the enhancement to the user.
19 
20     :param str enhancement: One of the
21         :class:`certbot.CONFIG.ENHANCEMENTS` enhancements
22 
23     :returns: True if feature is desired, False otherwise
24     :rtype: bool
25 
26     :raises .errors.Error: if the enhancement provided is not supported
27 
28     """
29     try:
30         # Call the appropriate function based on the enhancement
31         return DISPATCH[enhancement]()
32     except KeyError:
33         logger.error("Unsupported enhancement given to ask(): %s", enhancement)
34         raise errors.Error("Unsupported Enhancement")
35 
36 
37 def redirect_by_default():
38     """Determines whether the user would like to redirect to HTTPS.
39 
40     :returns: True if redirect is desired, False otherwise
41     :rtype: bool
42 
43     """
44     choices = [
45         ("Easy", "Allow both HTTP and HTTPS access to these sites"),
46         ("Secure", "Make all requests redirect to secure HTTPS access"),
47     ]
48 
49     code, selection = util(interfaces.IDisplay).menu(
50         "Please choose whether HTTPS access is required or optional.",
51         choices, default=0,
52         cli_flag="--redirect / --no-redirect", force_interactive=True)
53 
54     if code != display_util.OK:
55         return False
56 
57     return selection == 1
58 
59 
60 DISPATCH = {
61     "redirect": redirect_by_default
62 }
63
```
--- 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/certbot/display/enhancements.py b/certbot/display/enhancements.py
--- a/certbot/display/enhancements.py
+++ b/certbot/display/enhancements.py
@@ -42,12 +42,14 @@
 
     """
     choices = [
-        ("Easy", "Allow both HTTP and HTTPS access to these sites"),
-        ("Secure", "Make all requests redirect to secure HTTPS access"),
+        ("No redirect", "Make no further changes to the webserver configuration."),
+        ("Redirect", "Make all requests redirect to secure HTTPS access. "
+            "Choose this for new sites, or if you're confident your site works on HTTPS. "
+            "You can undo this change by editing your web server's configuration."),
     ]
 
     code, selection = util(interfaces.IDisplay).menu(
-        "Please choose whether HTTPS access is required or optional.",
+        "Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.",
         choices, default=0,
         cli_flag="--redirect / --no-redirect", force_interactive=True)

{"golden_diff": "diff --git a/certbot/display/enhancements.py b/certbot/display/enhancements.py\n--- a/certbot/display/enhancements.py\n+++ b/certbot/display/enhancements.py\n@@ -42,12 +42,14 @@\n \n     \"\"\"\n     choices = [\n-        (\"Easy\", \"Allow both HTTP and HTTPS access to these sites\"),\n-        (\"Secure\", \"Make all requests redirect to secure HTTPS access\"),\n+        (\"No redirect\", \"Make no further changes to the webserver configuration.\"),\n+        (\"Redirect\", \"Make all requests redirect to secure HTTPS access. \"\n+            \"Choose this for new sites, or if you're confident your site works on HTTPS. \"\n+            \"You can undo this change by editing your web server's configuration.\"),\n     ]\n \n     code, selection = util(interfaces.IDisplay).menu(\n-        \"Please choose whether HTTPS access is required or optional.\",\n+        \"Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.\",\n         choices, default=0,\n         cli_flag=\"--redirect / --no-redirect\", force_interactive=True)\n", "issue": "Add more context to \"Easy vs Secure\" prompt\nRight now you get this prompt for redirect\n\n```\nPlease choose whether HTTPS access is required or optional.\n-------------------------------------------------------------------------------\n1: Easy - Allow both HTTP and HTTPS access to these sites\n2: Secure - Make all requests redirect to secure HTTPS access\n-------------------------------------------------------------------------------\n```\n\nOne confusing thing: The title asks \"required or optional,\" but those words don't appear in either option.\n\nAlso, we should provide more advice on how to choose. I.e. \n\n```\n1: Easy - Allow both HTTP and HTTPS access to these sites. Choose this if you haven't yet tested that your sites function properly when visited on HTTPS.\n2: Secure - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration.\n```\n\n", "before_files": [{"content": "\"\"\"Certbot Enhancement Display\"\"\"\nimport logging\n\nimport zope.component\n\nfrom certbot import errors\nfrom certbot import interfaces\nfrom certbot.display import util as display_util\n\n\nlogger = logging.getLogger(__name__)\n\n# Define a helper function to avoid verbose code\nutil = zope.component.getUtility\n\n\ndef ask(enhancement):\n    \"\"\"Display the enhancement to the user.\n\n    :param str enhancement: One of the\n        :class:`certbot.CONFIG.ENHANCEMENTS` enhancements\n\n    :returns: True if feature is desired, False otherwise\n    :rtype: bool\n\n    :raises .errors.Error: if the enhancement provided is not supported\n\n    \"\"\"\n    try:\n        # Call the appropriate function based on the enhancement\n        return DISPATCH[enhancement]()\n    except KeyError:\n        logger.error(\"Unsupported enhancement given to ask(): %s\", enhancement)\n        raise errors.Error(\"Unsupported Enhancement\")\n\n\ndef redirect_by_default():\n    \"\"\"Determines whether the user would like to redirect to HTTPS.\n\n    :returns: True if redirect is desired, False otherwise\n    :rtype: bool\n\n    \"\"\"\n    choices = [\n        (\"Easy\", \"Allow both HTTP and HTTPS access to these sites\"),\n        (\"Secure\", \"Make all requests redirect to secure HTTPS access\"),\n    ]\n\n    code, selection = util(interfaces.IDisplay).menu(\n        \"Please choose whether HTTPS access is required or optional.\",\n        choices, default=0,\n        cli_flag=\"--redirect / --no-redirect\", force_interactive=True)\n\n    if code != display_util.OK:\n        return False\n\n    return selection == 1\n\n\nDISPATCH = {\n    \"redirect\": redirect_by_default\n}\n", "path": "certbot/display/enhancements.py"}], "after_files": [{"content": "\"\"\"Certbot Enhancement Display\"\"\"\nimport logging\n\nimport zope.component\n\nfrom certbot import errors\nfrom certbot import interfaces\nfrom certbot.display import util as display_util\n\n\nlogger = logging.getLogger(__name__)\n\n# Define a helper function to avoid verbose code\nutil = zope.component.getUtility\n\n\ndef ask(enhancement):\n    \"\"\"Display the enhancement to the user.\n\n    :param str enhancement: One of the\n        :class:`certbot.CONFIG.ENHANCEMENTS` enhancements\n\n    :returns: True if feature is desired, False otherwise\n    :rtype: bool\n\n    :raises .errors.Error: if the enhancement provided is not supported\n\n    \"\"\"\n    try:\n        # Call the appropriate function based on the enhancement\n        return DISPATCH[enhancement]()\n    except KeyError:\n        logger.error(\"Unsupported enhancement given to ask(): %s\", enhancement)\n        raise errors.Error(\"Unsupported Enhancement\")\n\n\ndef redirect_by_default():\n    \"\"\"Determines whether the user would like to redirect to HTTPS.\n\n    :returns: True if redirect is desired, False otherwise\n    :rtype: bool\n\n    \"\"\"\n    choices = [\n        (\"No redirect\", \"Make no further changes to the webserver configuration.\"),\n        (\"Redirect\", \"Make all requests redirect to secure HTTPS access. \"\n            \"Choose this for new sites, or if you're confident your site works on HTTPS. \"\n            \"You can undo this change by editing your web server's configuration.\"),\n    ]\n\n    code, selection = util(interfaces.IDisplay).menu(\n        \"Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.\",\n        choices, default=0,\n        cli_flag=\"--redirect / --no-redirect\", force_interactive=True)\n\n    if code != display_util.OK:\n        return False\n\n    return selection == 1\n\n\nDISPATCH = {\n    \"redirect\": redirect_by_default\n}\n", "path": "certbot/display/enhancements.py"}]}