prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Update Denmark holidays
  I've received an email with a link to https://www.norden.org/en/info-norden/public-holidays-denmark
  
  The author complained about absence of June 5th in the list of holiday dates:
  
  > The calendar for Denmark does not include 5 June.
  
  Denmark holidays need to be extended using categories approach.
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `holidays/countries/denmark.py`
  Content:
  ```
  1 #  python-holidays
  2 #  ---------------
  3 #  A fast, efficient Python library for generating country, province and state
  4 #  specific sets of holidays on the fly. It aims to make determining whether a
  5 #  specific date is a holiday as fast and flexible as possible.
  6 #
  7 #  Authors: dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
  8 #           ryanss <ryanssdev@icloud.com> (c) 2014-2017
  9 #  Website: https://github.com/dr-prodigy/python-holidays
  10 #  License: MIT (see LICENSE file)
  11 
  12 from datetime import timedelta as td
  13 from gettext import gettext as tr
  14 
  15 from holidays.groups import ChristianHolidays, InternationalHolidays
  16 from holidays.holiday_base import HolidayBase
  17 
  18 
  19 class Denmark(HolidayBase, ChristianHolidays, InternationalHolidays):
  20     """
  21     Denmark holidays.
  22 
  23     References:
  24     - https://en.wikipedia.org/wiki/Public_holidays_in_Denmark
  25     - https://www.ft.dk/samling/20222/lovforslag/l13/index.htm
  26     """
  27 
  28     country = "DK"
  29     default_language = "da"
  30     supported_languages = ("da", "en_US", "uk")
  31 
  32     def __init__(self, *args, **kwargs):
  33         ChristianHolidays.__init__(self)
  34         InternationalHolidays.__init__(self)
  35         super().__init__(*args, **kwargs)
  36 
  37     def _populate(self, year):
  38         super()._populate(year)
  39 
  40         # New Year's Day.
  41         self._add_new_years_day(tr("Nytårsdag"))
  42 
  43         # Holy Thursday.
  44         self._add_holy_thursday(tr("Skærtorsdag"))
  45 
  46         # Good Friday.
  47         self._add_good_friday(tr("Langfredag"))
  48 
  49         # Easter Sunday.
  50         self._add_easter_sunday(tr("Påskedag"))
  51 
  52         # Easter Monday.
  53         self._add_easter_monday(tr("Anden påskedag"))
  54 
  55         # See https://www.ft.dk/samling/20222/lovforslag/l13/index.htm
  56         if year <= 2023:
  57             # Great Day of Prayers.
  58             self._add_holiday(tr("Store bededag"), self._easter_sunday + td(days=+26))
  59 
  60         # Ascension Day.
  61         self._add_ascension_thursday(tr("Kristi himmelfartsdag"))
  62 
  63         # Whit Sunday.
  64         self._add_whit_sunday(tr("Pinsedag"))
  65 
  66         # Whit Monday.
  67         self._add_whit_monday(tr("Anden pinsedag"))
  68 
  69         # Christmas Day.
  70         self._add_christmas_day(tr("Juledag"))
  71 
  72         # Second Day of Christmas.
  73         self._add_christmas_day_two(tr("Anden juledag"))
  74 
  75 
  76 class DK(Denmark):
  77     pass
  78 
  79 
  80 class DNK(Denmark):
  81     pass
  82
  ```
  --- 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()
  
  ```
  
golden_diff: diff --git a/holidays/countries/denmark.py b/holidays/countries/denmark.py
  --- a/holidays/countries/denmark.py
  +++ b/holidays/countries/denmark.py
  @@ -12,6 +12,7 @@
   from datetime import timedelta as td
   from gettext import gettext as tr
   
  +from holidays.constants import OPTIONAL, PUBLIC
   from holidays.groups import ChristianHolidays, InternationalHolidays
   from holidays.holiday_base import HolidayBase
   
  @@ -22,11 +23,13 @@
   
       References:
       - https://en.wikipedia.org/wiki/Public_holidays_in_Denmark
  +    - https://www.norden.org/en/info-norden/public-holidays-denmark
       - https://www.ft.dk/samling/20222/lovforslag/l13/index.htm
       """
   
       country = "DK"
       default_language = "da"
  +    supported_categories = {OPTIONAL, PUBLIC}
       supported_languages = ("da", "en_US", "uk")
   
       def __init__(self, *args, **kwargs):
  @@ -34,9 +37,7 @@
           InternationalHolidays.__init__(self)
           super().__init__(*args, **kwargs)
   
  -    def _populate(self, year):
  -        super()._populate(year)
  -
  +    def _populate_public_holidays(self):
           # New Year's Day.
           self._add_new_years_day(tr("Nytårsdag"))
   
  @@ -53,7 +54,7 @@
           self._add_easter_monday(tr("Anden påskedag"))
   
           # See https://www.ft.dk/samling/20222/lovforslag/l13/index.htm
  -        if year <= 2023:
  +        if self._year <= 2023:
               # Great Day of Prayers.
               self._add_holiday(tr("Store bededag"), self._easter_sunday + td(days=+26))
   
  @@ -72,6 +73,19 @@
           # Second Day of Christmas.
           self._add_christmas_day_two(tr("Anden juledag"))
   
  +    def _populate_optional_holidays(self):
  +        # International Workers' Day.
  +        self._add_labor_day(tr("Arbejdernes kampdag"))
  +
  +        # Constitution Day.
  +        self._add_holiday_jun_5(tr("Grundlovsdag"))
  +
  +        # Christmas Eve.
  +        self._add_christmas_eve(tr("Juleaftensdag"))
  +
  +        # New Year's Eve.
  +        self._add_new_years_eve(tr("Nytårsaften"))
  +
   
   class DK(Denmark):
       pass
  
verification_info: {"golden_diff": "diff --git a/holidays/countries/denmark.py b/holidays/countries/denmark.py\n--- a/holidays/countries/denmark.py\n+++ b/holidays/countries/denmark.py\n@@ -12,6 +12,7 @@\n from datetime import timedelta as td\n from gettext import gettext as tr\n \n+from holidays.constants import OPTIONAL, PUBLIC\n from holidays.groups import ChristianHolidays, InternationalHolidays\n from holidays.holiday_base import HolidayBase\n \n@@ -22,11 +23,13 @@\n \n     References:\n     - https://en.wikipedia.org/wiki/Public_holidays_in_Denmark\n+    - https://www.norden.org/en/info-norden/public-holidays-denmark\n     - https://www.ft.dk/samling/20222/lovforslag/l13/index.htm\n     \"\"\"\n \n     country = \"DK\"\n     default_language = \"da\"\n+    supported_categories = {OPTIONAL, PUBLIC}\n     supported_languages = (\"da\", \"en_US\", \"uk\")\n \n     def __init__(self, *args, **kwargs):\n@@ -34,9 +37,7 @@\n         InternationalHolidays.__init__(self)\n         super().__init__(*args, **kwargs)\n \n-    def _populate(self, year):\n-        super()._populate(year)\n-\n+    def _populate_public_holidays(self):\n         # New Year's Day.\n         self._add_new_years_day(tr(\"Nyt\u00e5rsdag\"))\n \n@@ -53,7 +54,7 @@\n         self._add_easter_monday(tr(\"Anden p\u00e5skedag\"))\n \n         # See https://www.ft.dk/samling/20222/lovforslag/l13/index.htm\n-        if year <= 2023:\n+        if self._year <= 2023:\n             # Great Day of Prayers.\n             self._add_holiday(tr(\"Store bededag\"), self._easter_sunday + td(days=+26))\n \n@@ -72,6 +73,19 @@\n         # Second Day of Christmas.\n         self._add_christmas_day_two(tr(\"Anden juledag\"))\n \n+    def _populate_optional_holidays(self):\n+        # International Workers' Day.\n+        self._add_labor_day(tr(\"Arbejdernes kampdag\"))\n+\n+        # Constitution Day.\n+        self._add_holiday_jun_5(tr(\"Grundlovsdag\"))\n+\n+        # Christmas Eve.\n+        self._add_christmas_eve(tr(\"Juleaftensdag\"))\n+\n+        # New Year's Eve.\n+        self._add_new_years_eve(tr(\"Nyt\u00e5rsaften\"))\n+\n \n class DK(Denmark):\n     pass\n", "issue": "Update Denmark holidays\nI've received an email with a link to https://www.norden.org/en/info-norden/public-holidays-denmark\r\n\r\nThe author complained about absence of June 5th in the list of holiday dates:\r\n\r\n> The calendar for Denmark does not include 5 June.\r\n\r\nDenmark holidays need to be extended using categories approach.\n", "before_files": [{"content": "#  python-holidays\n#  ---------------\n#  A fast, efficient Python library for generating country, province and state\n#  specific sets of holidays on the fly. It aims to make determining whether a\n#  specific date is a holiday as fast and flexible as possible.\n#\n#  Authors: dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023\n#           ryanss <ryanssdev@icloud.com> (c) 2014-2017\n#  Website: https://github.com/dr-prodigy/python-holidays\n#  License: MIT (see LICENSE file)\n\nfrom datetime import timedelta as td\nfrom gettext import gettext as tr\n\nfrom holidays.groups import ChristianHolidays, InternationalHolidays\nfrom holidays.holiday_base import HolidayBase\n\n\nclass Denmark(HolidayBase, ChristianHolidays, InternationalHolidays):\n    \"\"\"\n    Denmark holidays.\n\n    References:\n    - https://en.wikipedia.org/wiki/Public_holidays_in_Denmark\n    - https://www.ft.dk/samling/20222/lovforslag/l13/index.htm\n    \"\"\"\n\n    country = \"DK\"\n    default_language = \"da\"\n    supported_languages = (\"da\", \"en_US\", \"uk\")\n\n    def __init__(self, *args, **kwargs):\n        ChristianHolidays.__init__(self)\n        InternationalHolidays.__init__(self)\n        super().__init__(*args, **kwargs)\n\n    def _populate(self, year):\n        super()._populate(year)\n\n        # New Year's Day.\n        self._add_new_years_day(tr(\"Nyt\u00e5rsdag\"))\n\n        # Holy Thursday.\n        self._add_holy_thursday(tr(\"Sk\u00e6rtorsdag\"))\n\n        # Good Friday.\n        self._add_good_friday(tr(\"Langfredag\"))\n\n        # Easter Sunday.\n        self._add_easter_sunday(tr(\"P\u00e5skedag\"))\n\n        # Easter Monday.\n        self._add_easter_monday(tr(\"Anden p\u00e5skedag\"))\n\n        # See https://www.ft.dk/samling/20222/lovforslag/l13/index.htm\n        if year <= 2023:\n            # Great Day of Prayers.\n            self._add_holiday(tr(\"Store bededag\"), self._easter_sunday + td(days=+26))\n\n        # Ascension Day.\n        self._add_ascension_thursday(tr(\"Kristi himmelfartsdag\"))\n\n        # Whit Sunday.\n        self._add_whit_sunday(tr(\"Pinsedag\"))\n\n        # Whit Monday.\n        self._add_whit_monday(tr(\"Anden pinsedag\"))\n\n        # Christmas Day.\n        self._add_christmas_day(tr(\"Juledag\"))\n\n        # Second Day of Christmas.\n        self._add_christmas_day_two(tr(\"Anden juledag\"))\n\n\nclass DK(Denmark):\n    pass\n\n\nclass DNK(Denmark):\n    pass\n", "path": "holidays/countries/denmark.py"}], "after_files": [{"content": "#  python-holidays\n#  ---------------\n#  A fast, efficient Python library for generating country, province and state\n#  specific sets of holidays on the fly. It aims to make determining whether a\n#  specific date is a holiday as fast and flexible as possible.\n#\n#  Authors: dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023\n#           ryanss <ryanssdev@icloud.com> (c) 2014-2017\n#  Website: https://github.com/dr-prodigy/python-holidays\n#  License: MIT (see LICENSE file)\n\nfrom datetime import timedelta as td\nfrom gettext import gettext as tr\n\nfrom holidays.constants import OPTIONAL, PUBLIC\nfrom holidays.groups import ChristianHolidays, InternationalHolidays\nfrom holidays.holiday_base import HolidayBase\n\n\nclass Denmark(HolidayBase, ChristianHolidays, InternationalHolidays):\n    \"\"\"\n    Denmark holidays.\n\n    References:\n    - https://en.wikipedia.org/wiki/Public_holidays_in_Denmark\n    - https://www.norden.org/en/info-norden/public-holidays-denmark\n    - https://www.ft.dk/samling/20222/lovforslag/l13/index.htm\n    \"\"\"\n\n    country = \"DK\"\n    default_language = \"da\"\n    supported_categories = {OPTIONAL, PUBLIC}\n    supported_languages = (\"da\", \"en_US\", \"uk\")\n\n    def __init__(self, *args, **kwargs):\n        ChristianHolidays.__init__(self)\n        InternationalHolidays.__init__(self)\n        super().__init__(*args, **kwargs)\n\n    def _populate_public_holidays(self):\n        # New Year's Day.\n        self._add_new_years_day(tr(\"Nyt\u00e5rsdag\"))\n\n        # Holy Thursday.\n        self._add_holy_thursday(tr(\"Sk\u00e6rtorsdag\"))\n\n        # Good Friday.\n        self._add_good_friday(tr(\"Langfredag\"))\n\n        # Easter Sunday.\n        self._add_easter_sunday(tr(\"P\u00e5skedag\"))\n\n        # Easter Monday.\n        self._add_easter_monday(tr(\"Anden p\u00e5skedag\"))\n\n        # See https://www.ft.dk/samling/20222/lovforslag/l13/index.htm\n        if self._year <= 2023:\n            # Great Day of Prayers.\n            self._add_holiday(tr(\"Store bededag\"), self._easter_sunday + td(days=+26))\n\n        # Ascension Day.\n        self._add_ascension_thursday(tr(\"Kristi himmelfartsdag\"))\n\n        # Whit Sunday.\n        self._add_whit_sunday(tr(\"Pinsedag\"))\n\n        # Whit Monday.\n        self._add_whit_monday(tr(\"Anden pinsedag\"))\n\n        # Christmas Day.\n        self._add_christmas_day(tr(\"Juledag\"))\n\n        # Second Day of Christmas.\n        self._add_christmas_day_two(tr(\"Anden juledag\"))\n\n    def _populate_optional_holidays(self):\n        # International Workers' Day.\n        self._add_labor_day(tr(\"Arbejdernes kampdag\"))\n\n        # Constitution Day.\n        self._add_holiday_jun_5(tr(\"Grundlovsdag\"))\n\n        # Christmas Eve.\n        self._add_christmas_eve(tr(\"Juleaftensdag\"))\n\n        # New Year's Eve.\n        self._add_new_years_eve(tr(\"Nyt\u00e5rsaften\"))\n\n\nclass DK(Denmark):\n    pass\n\n\nclass DNK(Denmark):\n    pass\n", "path": "holidays/countries/denmark.py"}]}