Repository: vacanza/holidays
Pull request #2221 (2025-01-10 12:46:34)

Update Afghanistan holidays
<!--
  Thanks for contributing to holidays!
-->

## Proposed change

<!--
  Describe the big picture of your changes.
  Don't forget to link your PR to an existing issue if any.
-->

Update Afghanistan holidays:
- change Nowruz date to Solar Hijri Calendar
- add Islamic Emirate Victory Day
- add Islamic holidays exact dates
- update some holidays validity intervals

## Type of change

<!--
  Type of change you want to introduce. Please, check one (1) box only!
  If your PR requires multiple boxes to be checked, most likely it needs to
  be split into multiple PRs.
-->

- [ ] New country/market holidays support (thank you!)
- [x] Supported country/market holidays update (calendar discrepancy fix, localization)
- [ ] Existing code/documentation/test/process quality improvement (best practice, cleanup, refactoring, optimization)
- [ ] Dependency update (version deprecation/pin/upgrade)
- [ ] Bugfix (non-breaking change which fixes an issue)
- [ ] Breaking change (a code change causing existing functionality to break)
- [ ] New feature (new `holidays` functionality in general)

## Checklist

<!--
  Put an `x` in the boxes that apply. You can change them after PR is created.
-->

- [x] I've followed the [contributing guidelines][contributing-guidelines]
- [x] I've successfully run `make check`, all checks and tests are green

<!--
  Thanks again for your contribution!
-->

[contributing-guidelines]: https://github.com/vacanza/holidays/blob/dev/CONTRIBUTING.rst
[docs]: https://github.com/vacanza/holidays/tree/dev/docs/source


sonarqubecloud[bot]: ## [![Quality Gate Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png 'Quality Gate Passed')](https://sonarcloud.io/dashboard?id=vacanza_python-holidays&pullRequest=2221) **Quality Gate passed**  
Issues  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0 New issues](https://sonarcloud.io/project/issues?id=vacanza_python-holidays&pullRequest=2221&issueStatuses=OPEN,CONFIRMED&sinceLeakPeriod=true)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png '') [0 Accepted issues](https://sonarcloud.io/project/issues?id=vacanza_python-holidays&pullRequest=2221&issueStatuses=ACCEPTED)

Measures  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=vacanza_python-holidays&pullRequest=2221&issueStatuses=OPEN,CONFIRMED&sinceLeakPeriod=true)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0.0% Coverage on New Code](https://sonarcloud.io/component_measures?id=vacanza_python-holidays&pullRequest=2221&metric=new_coverage&view=list)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0.0% Duplication on New Code](https://sonarcloud.io/component_measures?id=vacanza_python-holidays&pullRequest=2221&metric=new_duplicated_lines_density&view=list)  
  
[See analysis details on SonarQube Cloud](https://sonarcloud.io/dashboard?id=vacanza_python-holidays&pullRequest=2221)


codecov[bot]: ## [Codecov](https://app.codecov.io/gh/vacanza/holidays/pull/2221?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vacanza) Report
All modified and coverable lines are covered by tests :white_check_mark:
> Project coverage is 100.00%. Comparing base [(`683aedf`)](https://app.codecov.io/gh/vacanza/holidays/commit/683aedfd63e9771b0c78ad2530ffbc81ed848329?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vacanza) to head [(`559bced`)](https://app.codecov.io/gh/vacanza/holidays/commit/559bcede9127040348b9928d60b2aab67dca3bc9?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vacanza).

<details><summary>Additional details and impacted files</summary>


```diff
@@            Coverage Diff            @@
##               dev     #2221   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files          196       196           
  Lines        11828     11841   +13     
  Branches      1707      1708    +1     
=========================================
+ Hits         11828     11841   +13     
```

</details>

[:umbrella: View full report in Codecov by Sentry](https://app.codecov.io/gh/vacanza/holidays/pull/2221?dropdown=coverage&src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vacanza).   
:loudspeaker: Have feedback on the report? [Share it here](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vacanza).

sonarqubecloud[bot]: ## [![Quality Gate Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png 'Quality Gate Passed')](https://sonarcloud.io/dashboard?id=vacanza_python-holidays&pullRequest=2221) **Quality Gate passed**  
Issues  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0 New issues](https://sonarcloud.io/project/issues?id=vacanza_python-holidays&pullRequest=2221&issueStatuses=OPEN,CONFIRMED&sinceLeakPeriod=true)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png '') [0 Accepted issues](https://sonarcloud.io/project/issues?id=vacanza_python-holidays&pullRequest=2221&issueStatuses=ACCEPTED)

Measures  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=vacanza_python-holidays&pullRequest=2221&issueStatuses=OPEN,CONFIRMED&sinceLeakPeriod=true)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0.0% Coverage on New Code](https://sonarcloud.io/component_measures?id=vacanza_python-holidays&pullRequest=2221&metric=new_coverage&view=list)  
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png '') [0.0% Duplication on New Code](https://sonarcloud.io/component_measures?id=vacanza_python-holidays&pullRequest=2221&metric=new_duplicated_lines_density&view=list)  
  
[See analysis details on SonarQube Cloud](https://sonarcloud.io/dashboard?id=vacanza_python-holidays&pullRequest=2221)



Patch:
diff --git a/holidays/countries/afghanistan.py b/holidays/countries/afghanistan.py
index d1b9ee5d..a8e662bf 100644
--- a/holidays/countries/afghanistan.py
+++ b/holidays/countries/afghanistan.py
@@ -12,11 +12,13 @@
 
 from gettext import gettext as tr
 
-from holidays.groups import InternationalHolidays, IslamicHolidays
+from holidays.calendars import _CustomIslamicHolidays
+from holidays.calendars.gregorian import JAN, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC
+from holidays.groups import InternationalHolidays, IslamicHolidays, PersianCalendarHolidays
 from holidays.holiday_base import HolidayBase
 
 
-class Afghanistan(HolidayBase, InternationalHolidays, IslamicHolidays):
+class Afghanistan(HolidayBase, InternationalHolidays, IslamicHolidays, PersianCalendarHolidays):
     """
     https://en.wikipedia.org/wiki/Public_holidays_in_Afghanistan
     https://www.timeanddate.com/holidays/afghanistan/
@@ -26,17 +28,14 @@ class Afghanistan(HolidayBase, InternationalHolidays, IslamicHolidays):
     default_language = "fa_AF"
     # %s (estimated).
     estimated_label = tr("%s (برآورد شده)")
-    # %s (observed).
-    observed_label = tr("%s (مشاهده شده)")
-    # %s (observed, estimated).
-    observed_estimated_label = tr("%s (مشاهده شده، برآورد شده)")
     supported_languages = ("en_US", "fa_AF", "ps_AF")
     # Afghanistan's regaining of full independence from British influence.
     start_year = 1919
 
     def __init__(self, *args, **kwargs):
         InternationalHolidays.__init__(self)
-        IslamicHolidays.__init__(self)
+        IslamicHolidays.__init__(self, AfghanistanIslamicHolidays)
+        PersianCalendarHolidays.__init__(self)
         super().__init__(*args, **kwargs)
 
     def _populate_public_holidays(self):
@@ -49,7 +48,7 @@ class Afghanistan(HolidayBase, InternationalHolidays, IslamicHolidays):
 
         if self._year <= 1996 or 2001 <= self._year <= 2020:
             # Nowruz.
-            self._add_holiday_mar_21(tr("نوروز"))
+            self._add_nowruz_day(tr("نوروز"))
 
         if self._year >= 1992:
             # Mojahedin's Victory Day.
@@ -64,13 +63,26 @@ class Afghanistan(HolidayBase, InternationalHolidays, IslamicHolidays):
             self._add_holiday_may_9(tr("روز پیروزی شوروی"))
 
         if self._year >= 2022:
+            # Islamic Emirate Victory Day.
+            self._add_islamic_emirat_victory_day(tr("روز پیروزی امارت اسلامی"))
+
             # American Withdrawal Day.
             self._add_holiday_aug_31(tr("روز خروج آمریکایی ها"))
 
-        if self._year >= 2012:
+        if 2012 <= self._year <= 2020:
             # Martyrs' Day.
             self._add_holiday_sep_9(tr("روز شهیدان"))
 
+        if self._year <= 2021:
+            # Ashura.
+            self._add_ashura_day(tr("عاشورا"))
+
+        # Prophet's Birthday.
+        self._add_mawlid_day(tr("میلاد پیامبر"))
+
+        # First Day of Ramadan.
+        self._add_ramadan_beginning_day(tr("اول رمضان"))
+
         # Eid al-Fitr.
         name = tr("عید فطر")
         self._add_eid_al_fitr_day(name)
@@ -86,15 +98,6 @@ class Afghanistan(HolidayBase, InternationalHolidays, IslamicHolidays):
         self._add_eid_al_adha_day_two(name)
         self._add_eid_al_adha_day_three(name)
 
-        # Ashura.
-        self._add_ashura_day(tr("عاشورا"))
-
-        # First Day of Ramadan.
-        self._add_ramadan_beginning_day(tr("اول رمضان"))
-
-        # Prophet's Birthday.
-        self._add_mawlid_day(tr("میلاد پیامبر"))
-
 
 class AF(Afghanistan):
     pass
@@ -102,3 +105,72 @@ class AF(Afghanistan):
 
 class AFG(Afghanistan):
     pass
+
+
+class AfghanistanIslamicHolidays(_CustomIslamicHolidays):
+    ASHURA_DATES = {
+        2014: (NOV, 3),
+        2015: (OCT, 24),
+        2016: (OCT, 12),
+        2017: (OCT, 1),
+        2018: (SEP, 21),
+        2019: (SEP, 10),
+        2020: (AUG, 30),
+        2021: (AUG, 19),
+    }
+
+    EID_AL_ADHA_DATES = {
+        2014: (OCT, 5),
+        2015: (SEP, 23),
+        2016: (SEP, 13),
+        2017: (SEP, 2),
+        2018: (AUG, 22),
+        2019: (AUG, 11),
+        2020: (JUL, 31),
+        2021: (JUL, 20),
+        2022: (JUL, 9),
+        2023: (JUN, 28),
+        2024: (JUN, 17),
+    }
+
+    EID_AL_FITR_DATES = {
+        2014: (JUL, 29),
+        2015: (JUL, 18),
+        2016: (JUL, 7),
+        2017: (JUN, 26),
+        2018: (JUN, 15),
+        2019: (JUN, 4),
+        2020: (MAY, 24),
+        2021: (MAY, 13),
+        2022: (MAY, 1),
+        2023: (APR, 22),
+        2024: (APR, 10),
+    }
+
+    MAWLID_DATES = {
+        2014: (JAN, 14),
+        2015: ((JAN, 3), (DEC, 24)),
+        2016: (DEC, 12),
+        2017: (DEC, 1),
+        2018: (NOV, 21),
+        2019: (NOV, 10),
+        2020: (OCT, 29),
+        2021: (OCT, 19),
+        2022: (OCT, 8),
+        2023: (SEP, 27),
+        2024: (SEP, 16),
+    }
+
+    RAMADAN_BEGINNING_DATES = {
+        2014: (JUN, 29),
+        2015: (JUN, 18),
+        2016: (JUN, 7),
+        2017: (MAY, 27),
+        2018: (MAY, 16),
+        2019: (MAY, 6),
+        2020: (APR, 24),
+        2021: (APR, 13),
+        2022: (APR, 2),
+        2023: (MAR, 23),
+        2024: (MAR, 11),
+    }
diff --git a/holidays/groups/persian.py b/holidays/groups/persian.py
index dccc07c1..c4a2cba2 100644
--- a/holidays/groups/persian.py
+++ b/holidays/groups/persian.py
@@ -36,6 +36,17 @@ class PersianCalendarHolidays:
             name, self._persian_calendar.persian_to_gregorian(self._year, 3, 14)
         )
 
+    def _add_islamic_emirat_victory_day(self, name: str) -> Optional[date]:
+        """
+        Add Islamic Emirate Victory Day (24th day of the 5th month).
+
+        Anniversary of the Taliban forces arrival in Kabul.
+        https://en.wikipedia.org/wiki/Fall_of_Kabul_(2021)
+        """
+        return self._add_persian_calendar_holiday(
+            name, self._persian_calendar.persian_to_gregorian(self._year, 5, 24)
+        )
+
     def _add_islamic_republic_day(self, name: str) -> Optional[date]:
         """
         Add Islamic Republic Day (12th day of the 1st month).
diff --git a/holidays/locale/en_US/LC_MESSAGES/AF.po b/holidays/locale/en_US/LC_MESSAGES/AF.po
index 71d0c01c..b51f4ea0 100644
--- a/holidays/locale/en_US/LC_MESSAGES/AF.po
+++ b/holidays/locale/en_US/LC_MESSAGES/AF.po
@@ -14,10 +14,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Holidays 0.64\n"
+"Project-Id-Version: Holidays 0.65\n"
 "POT-Creation-Date: 2024-12-24 13:40+0530\n"
-"PO-Revision-Date: 2024-12-31 15:52+0700\n"
-"Last-Translator: Prateekshit Jaiswal <prateekshitjaiswal73@gmail.com>\n"
+"PO-Revision-Date: 2025-01-10 18:59+0200\n"
+"Last-Translator: ~Jhellico <jhellico@gmail.com>\n"
 "Language-Team: Holidays Localization Team\n"
 "Language: en_US\n"
 "MIME-Version: 1.0\n"
@@ -63,16 +63,6 @@ msgstr "First Day of Ramadan"
 msgid "%s (برآورد شده)"
 msgstr "%s (estimated)"
 
-#. %s (observed).
-#, c-format
-msgid "%s (مشاهده شده)"
-msgstr "%s (observed)"
-
-#. %s (observed, estimated).
-#, c-format
-msgid "%s (مشاهده شده، برآورد شده)"
-msgstr "%s (observed, estimated)"
-
 #. Soviet Victory Day.
 msgid "روز پیروزی شوروی"
 msgstr "Soviet Victory Day"
@@ -93,6 +83,10 @@ msgstr "Eid al-Fitr"
 msgid "عید قربانی"
 msgstr "Eid al-Adha"
 
+#. Islamic Emirate Victory Day.
+msgid "روز پیروزی امارت اسلامی"
+msgstr "Islamic Emirate Victory Day"
+
 #. American Withdrawal Day.
 msgid "روز خروج آمریکایی ها"
 msgstr "American Withdrawal Day"
diff --git a/holidays/locale/fa_AF/LC_MESSAGES/AF.po b/holidays/locale/fa_AF/LC_MESSAGES/AF.po
index 05ac627d..8cfe2886 100644
--- a/holidays/locale/fa_AF/LC_MESSAGES/AF.po
+++ b/holidays/locale/fa_AF/LC_MESSAGES/AF.po
@@ -14,10 +14,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Holidays 0.64\n"
+"Project-Id-Version: Holidays 0.65\n"
 "POT-Creation-Date: 2024-12-24 13:40+0530\n"
-"PO-Revision-Date: 2024-12-31 15:53+0700\n"
-"Last-Translator: Prateekshit Jaiswal <prateekshitjaiswal73@gmail.com>\n"
+"PO-Revision-Date: 2025-01-10 18:59+0200\n"
+"Last-Translator: ~Jhellico <jhellico@gmail.com>\n"
 "Language-Team: Holidays Localization Team\n"
 "Language: fa\n"
 "MIME-Version: 1.0\n"
@@ -63,16 +63,6 @@ msgstr ""
 msgid "%s (برآورد شده)"
 msgstr ""
 
-#. %s (observed).
-#, c-format
-msgid "%s (مشاهده شده)"
-msgstr ""
-
-#. %s (observed, estimated).
-#, c-format
-msgid "%s (مشاهده شده، برآورد شده)"
-msgstr ""
-
 #. Soviet Victory Day.
 msgid "روز پیروزی شوروی"
 msgstr ""
@@ -93,6 +83,10 @@ msgstr ""
 msgid "عید قربانی"
 msgstr ""
 
+#. Islamic Emirate Victory Day.
+msgid "روز پیروزی امارت اسلامی"
+msgstr ""
+
 #. American Withdrawal Day.
 msgid "روز خروج آمریکایی ها"
 msgstr ""
diff --git a/holidays/locale/ps_AF/LC_MESSAGES/AF.po b/holidays/locale/ps_AF/LC_MESSAGES/AF.po
index 66327dfe..cd441360 100644
--- a/holidays/locale/ps_AF/LC_MESSAGES/AF.po
+++ b/holidays/locale/ps_AF/LC_MESSAGES/AF.po
@@ -14,10 +14,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Holidays 0.64\n"
+"Project-Id-Version: Holidays 0.65\n"
 "POT-Creation-Date: 2024-12-25 20:00+0530\n"
-"PO-Revision-Date: 2024-12-31 15:53+0700\n"
-"Last-Translator: Prateekshit Jaiswal <prateekshitjaiswal73@gmail.com>\n"
+"PO-Revision-Date: 2025-01-10 18:59+0200\n"
+"Last-Translator: ~Jhellico <jhellico@gmail.com>\n"
 "Language-Team: Holidays Localization Team\n"
 "Language: ps_AF\n"
 "MIME-Version: 1.0\n"
@@ -63,16 +63,6 @@ msgstr "د روژې لومړۍ نیټه"
 msgid "%s (برآورد شده)"
 msgstr "%s (اټکل)"
 
-#. %s (observed).
-#, c-format
-msgid "%s (مشاهده شده)"
-msgstr "%s (په دې وروستیو کې د افغانستان د کرکټ ملی)"
-
-#. %s (observed, estimated).
-#, c-format
-msgid "%s (مشاهده شده، برآورد شده)"
-msgstr "%s (مشاهده شده، تخمین زده شده است)"
-
 #. Soviet Victory Day.
 msgid "روز پیروزی شوروی"
 msgstr "د شوروی د بریالیتوب ورځ"
@@ -93,6 +83,10 @@ msgstr "عید فطر"
 msgid "عید قربانی"
 msgstr "عید قربانی"
 
+#. Islamic Emirate Victory Day.
+msgid "روز پیروزی امارت اسلامی"
+msgstr "د اسلامي امارت د بریا ورځ"
+
 #. American Withdrawal Day.
 msgid "روز خروج آمریکایی ها"
 msgstr "د امریکا د وتلو ورځ"
diff --git a/snapshots/countries/AF_COMMON.json b/snapshots/countries/AF_COMMON.json
index b36f6127..4b653683 100644
--- a/snapshots/countries/AF_COMMON.json
+++ b/snapshots/countries/AF_COMMON.json
@@ -12,7 +12,7 @@
     "1950-09-25": "Eid al-Adha (estimated)",
     "1950-10-22": "Ashura (estimated)",
     "1950-12-22": "Prophet's Birthday (estimated)",
-    "1951-03-21": "Nowruz",
+    "1951-03-22": "Nowruz",
     "1951-06-06": "First Day of Ramadan (estimated)",
     "1951-07-06": "Eid al-Fitr (estimated)",
     "1951-07-07": "Eid al-Fitr (estimated)",
@@ -59,7 +59,7 @@
     "1954-08-19": "Afghanistan Independence Day",
     "1954-09-08": "Ashura (estimated)",
     "1954-11-08": "Prophet's Birthday (estimated)",
-    "1955-03-21": "Nowruz",
+    "1955-03-22": "Nowruz",
     "1955-04-24": "First Day of Ramadan (estimated)",
     "1955-05-23": "Eid al-Fitr (estimated)",
     "1955-05-24": "Eid al-Fitr (estimated)",
@@ -107,7 +107,7 @@
     "1958-08-19": "Afghanistan Independence Day",
     "1958-09-26": "Prophet's Birthday (estimated)",
     "1959-03-11": "First Day of Ramadan (estimated)",
-    "1959-03-21": "Nowruz",
+    "1959-03-22": "Nowruz",
     "1959-04-10": "Eid al-Fitr (estimated)",
     "1959-04-11": "Eid al-Fitr (estimated)",
     "1959-04-12": "Eid al-Fitr (estimated)",
@@ -606,7 +606,7 @@
     "1996-02-19": "Eid al-Fitr (estimated)",
     "1996-02-20": "Eid al-Fitr (estimated)",
     "1996-02-21": "Eid al-Fitr (estimated)",
-    "1996-03-21": "Nowruz",
+    "1996-03-20": "Nowruz",
     "1996-04-26": "Day of Arafah (estimated)",
     "1996-04-27": "Eid al-Adha (estimated)",
     "1996-04-28": "Eid al-Adha (estimated); Mojahedin's Victory Day",
@@ -721,7 +721,7 @@
     "2004-02-03": "Eid al-Adha (estimated)",
     "2004-02-15": "Liberation Day",
     "2004-03-01": "Ashura (estimated)",
-    "2004-03-21": "Nowruz",
+    "2004-03-20": "Nowruz",
     "2004-04-28": "Mojahedin's Victory Day",
     "2004-05-01": "International Workers' Day; Prophet's Birthday (estimated)",
     "2004-08-19": "Afghanistan Independence Day",
@@ -780,8 +780,7 @@
     "2007-12-22": "Eid al-Adha (estimated)",
     "2008-01-19": "Ashura (estimated)",
     "2008-02-15": "Liberation Day",
-    "2008-03-20": "Prophet's Birthday (estimated)",
-    "2008-03-21": "Nowruz",
+    "2008-03-20": "Nowruz; Prophet's Birthday (estimated)",
     "2008-04-28": "Mojahedin's Victory Day",
     "2008-05-01": "International Workers' Day",
     "2008-08-19": "Afghanistan Independence Day",
@@ -840,7 +839,7 @@
     "2011-12-05": "Ashura (estimated)",
     "2012-02-04": "Prophet's Birthday (estimated)",
     "2012-02-15": "Liberation Day",
-    "2012-03-21": "Nowruz",
+    "2012-03-20": "Nowruz",
     "2012-04-28": "Mojahedin's Victory Day",
     "2012-05-01": "International Workers' Day",
     "2012-07-20": "First Day of Ramadan (estimated)",
@@ -869,178 +868,174 @@
     "2013-10-16": "Eid al-Adha (estimated)",
     "2013-10-17": "Eid al-Adha (estimated)",
     "2013-11-13": "Ashura (estimated)",
-    "2014-01-13": "Prophet's Birthday (estimated)",
+    "2014-01-14": "Prophet's Birthday",
     "2014-02-15": "Liberation Day",
     "2014-03-21": "Nowruz",
     "2014-04-28": "Mojahedin's Victory Day",
     "2014-05-01": "International Workers' Day",
-    "2014-06-28": "First Day of Ramadan (estimated)",
-    "2014-07-28": "Eid al-Fitr (estimated)",
-    "2014-07-29": "Eid al-Fitr (estimated)",
-    "2014-07-30": "Eid al-Fitr (estimated)",
+    "2014-06-29": "First Day of Ramadan",
+    "2014-07-29": "Eid al-Fitr",
+    "2014-07-30": "Eid al-Fitr",
+    "2014-07-31": "Eid al-Fitr",
     "2014-08-19": "Afghanistan Independence Day",
     "2014-09-09": "Martyrs' Day",
-    "2014-10-03": "Day of Arafah (estimated)",
-    "2014-10-04": "Eid al-Adha (estimated)",
-    "2014-10-05": "Eid al-Adha (estimated)",
-    "2014-10-06": "Eid al-Adha (estimated)",
-    "2014-11-03": "Ashura (estimated)",
-    "2015-01-03": "Prophet's Birthday (estimated)",
+    "2014-10-04": "Day of Arafah",
+    "2014-10-05": "Eid al-Adha",
+    "2014-10-06": "Eid al-Adha",
+    "2014-10-07": "Eid al-Adha",
+    "2014-11-03": "Ashura",
+    "2015-01-03": "Prophet's Birthday",
     "2015-02-15": "Liberation Day",
     "2015-03-21": "Nowruz",
     "2015-04-28": "Mojahedin's Victory Day",
     "2015-05-01": "International Workers' Day",
-    "2015-06-18": "First Day of Ramadan (estimated)",
-    "2015-07-17": "Eid al-Fitr (estimated)",
-    "2015-07-18": "Eid al-Fitr (estimated)",
-    "2015-07-19": "Eid al-Fitr (estimated)",
+    "2015-06-18": "First Day of Ramadan",
+    "2015-07-18": "Eid al-Fitr",
+    "2015-07-19": "Eid al-Fitr",
+    "2015-07-20": "Eid al-Fitr",
     "2015-08-19": "Afghanistan Independence Day",
     "2015-09-09": "Martyrs' Day",
-    "2015-09-22": "Day of Arafah (estimated)",
-    "2015-09-23": "Eid al-Adha (estimated)",
-    "2015-09-24": "Eid al-Adha (estimated)",
-    "2015-09-25": "Eid al-Adha (estimated)",
-    "2015-10-23": "Ashura (estimated)",
-    "2015-12-23": "Prophet's Birthday (estimated)",
+    "2015-09-22": "Day of Arafah",
+    "2015-09-23": "Eid al-Adha",
+    "2015-09-24": "Eid al-Adha",
+    "2015-09-25": "Eid al-Adha",
+    "2015-10-24": "Ashura",
+    "2015-12-24": "Prophet's Birthday",
     "2016-02-15": "Liberation Day",
-    "2016-03-21": "Nowruz",
+    "2016-03-20": "Nowruz",
     "2016-04-28": "Mojahedin's Victory Day",
     "2016-05-01": "International Workers' Day",
-    "2016-06-06": "First Day of Ramadan (estimated)",
-    "2016-07-06": "Eid al-Fitr (estimated)",
-    "2016-07-07": "Eid al-Fitr (estimated)",
-    "2016-07-08": "Eid al-Fitr (estimated)",
+    "2016-06-07": "First Day of Ramadan",
+    "2016-07-07": "Eid al-Fitr",
+    "2016-07-08": "Eid al-Fitr",
+    "2016-07-09": "Eid al-Fitr",
     "2016-08-19": "Afghanistan Independence Day",
     "2016-09-09": "Martyrs' Day",
-    "2016-09-10": "Day of Arafah (estimated)",
-    "2016-09-11": "Eid al-Adha (estimated)",
-    "2016-09-12": "Eid al-Adha (estimated)",
-    "2016-09-13": "Eid al-Adha (estimated)",
-    "2016-10-11": "Ashura (estimated)",
-    "2016-12-11": "Prophet's Birthday (estimated)",
+    "2016-09-12": "Day of Arafah",
+    "2016-09-13": "Eid al-Adha",
+    "2016-09-14": "Eid al-Adha",
+    "2016-09-15": "Eid al-Adha",
+    "2016-10-12": "Ashura",
+    "2016-12-12": "Prophet's Birthday",
     "2017-02-15": "Liberation Day",
     "2017-03-21": "Nowruz",
     "2017-04-28": "Mojahedin's Victory Day",
     "2017-05-01": "International Workers' Day",
-    "2017-05-27": "First Day of Ramadan (estimated)",
-    "2017-06-25": "Eid al-Fitr (estimated)",
-    "2017-06-26": "Eid al-Fitr (estimated)",
-    "2017-06-27": "Eid al-Fitr (estimated)",
+    "2017-05-27": "First Day of Ramadan",
+    "2017-06-26": "Eid al-Fitr",
+    "2017-06-27": "Eid al-Fitr",
+    "2017-06-28": "Eid al-Fitr",
     "2017-08-19": "Afghanistan Independence Day",
-    "2017-08-31": "Day of Arafah (estimated)",
-    "2017-09-01": "Eid al-Adha (estimated)",
-    "2017-09-02": "Eid al-Adha (estimated)",
-    "2017-09-03": "Eid al-Adha (estimated)",
+    "2017-09-01": "Day of Arafah",
+    "2017-09-02": "Eid al-Adha",
+    "2017-09-03": "Eid al-Adha",
+    "2017-09-04": "Eid al-Adha",
     "2017-09-09": "Martyrs' Day",
-    "2017-09-30": "Ashura (estimated)",
-    "2017-11-30": "Prophet's Birthday (estimated)",
+    "2017-10-01": "Ashura",
+    "2017-12-01": "Prophet's Birthday",
     "2018-02-15": "Liberation Day",
     "2018-03-21": "Nowruz",
     "2018-04-28": "Mojahedin's Victory Day",
     "2018-05-01": "International Workers' Day",
-    "2018-05-16": "First Day of Ramadan (estimated)",
-    "2018-06-15": "Eid al-Fitr (estimated)",
-    "2018-06-16": "Eid al-Fitr (estimated)",
-    "2018-06-17": "Eid al-Fitr (estimated)",
+    "2018-05-16": "First Day of Ramadan",
+    "2018-06-15": "Eid al-Fitr",
+    "2018-06-16": "Eid al-Fitr",
+    "2018-06-17": "Eid al-Fitr",
     "2018-08-19": "Afghanistan Independence Day",
-    "2018-08-20": "Day of Arafah (estimated)",
-    "2018-08-21": "Eid al-Adha (estimated)",
-    "2018-08-22": "Eid al-Adha (estimated)",
-    "2018-08-23": "Eid al-Adha (estimated)",
+    "2018-08-21": "Day of Arafah",
+    "2018-08-22": "Eid al-Adha",
+    "2018-08-23": "Eid al-Adha",
+    "2018-08-24": "Eid al-Adha",
     "2018-09-09": "Martyrs' Day",
-    "2018-09-20": "Ashura (estimated)",
-    "2018-11-20": "Prophet's Birthday (estimated)",
+    "2018-09-21": "Ashura",
+    "2018-11-21": "Prophet's Birthday",
     "2019-02-15": "Liberation Day",
     "2019-03-21": "Nowruz",
     "2019-04-28": "Mojahedin's Victory Day",
     "2019-05-01": "International Workers' Day",
-    "2019-05-06": "First Day of Ramadan (estimated)",
-    "2019-06-04": "Eid al-Fitr (estimated)",
-    "2019-06-05": "Eid al-Fitr (estimated)",
-    "2019-06-06": "Eid al-Fitr (estimated)",
-    "2019-08-10": "Day of Arafah (estimated)",
-    "2019-08-11": "Eid al-Adha (estimated)",
-    "2019-08-12": "Eid al-Adha (estimated)",
-    "2019-08-13": "Eid al-Adha (estimated)",
+    "2019-05-06": "First Day of Ramadan",
+    "2019-06-04": "Eid al-Fitr",
+    "2019-06-05": "Eid al-Fitr",
+    "2019-06-06": "Eid al-Fitr",
+    "2019-08-10": "Day of Arafah",
+    "2019-08-11": "Eid al-Adha",
+    "2019-08-12": "Eid al-Adha",
+    "2019-08-13": "Eid al-Adha",
     "2019-08-19": "Afghanistan Independence Day",
-    "2019-09-09": "Ashura (estimated); Martyrs' Day",
-    "2019-11-09": "Prophet's Birthday (estimated)",
+    "2019-09-09": "Martyrs' Day",
+    "2019-09-10": "Ashura",
+    "2019-11-10": "Prophet's Birthday",
     "2020-02-15": "Liberation Day",
-    "2020-03-21": "Nowruz",
-    "2020-04-24": "First Day of Ramadan (estimated)",
+    "2020-03-20": "Nowruz",
+    "2020-04-24": "First Day of Ramadan",
     "2020-04-28": "Mojahedin's Victory Day",
     "2020-05-01": "International Workers' Day",
-    "2020-05-24": "Eid al-Fitr (estimated)",
-    "2020-05-25": "Eid al-Fitr (estimated)",
-    "2020-05-26": "Eid al-Fitr (estimated)",
-    "2020-07-30": "Day of Arafah (estimated)",
-    "2020-07-31": "Eid al-Adha (estimated)",
-    "2020-08-01": "Eid al-Adha (estimated)",
-    "2020-08-02": "Eid al-Adha (estimated)",
+    "2020-05-24": "Eid al-Fitr",
+    "2020-05-25": "Eid al-Fitr",
+    "2020-05-26": "Eid al-Fitr",
+    "2020-07-30": "Day of Arafah",
+    "2020-07-31": "Eid al-Adha",
+    "2020-08-01": "Eid al-Adha",
+    "2020-08-02": "Eid al-Adha",
     "2020-08-19": "Afghanistan Independence Day",
-    "2020-08-29": "Ashura (estimated)",
+    "2020-08-30": "Ashura",
     "2020-09-09": "Martyrs' Day",
-    "2020-10-29": "Prophet's Birthday (estimated)",
+    "2020-10-29": "Prophet's Birthday",
     "2021-02-15": "Liberation Day",
-    "2021-04-13": "First Day of Ramadan (estimated)",
+    "2021-04-13": "First Day of Ramadan",
     "2021-04-28": "Mojahedin's Victory Day",
     "2021-05-01": "International Workers' Day",
-    "2021-05-13": "Eid al-Fitr (estimated)",
-    "2021-05-14": "Eid al-Fitr (estimated)",
-    "2021-05-15": "Eid al-Fitr (estimated)",
-    "2021-07-19": "Day of Arafah (estimated)",
-    "2021-07-20": "Eid al-Adha (estimated)",
-    "2021-07-21": "Eid al-Adha (estimated)",
-    "2021-07-22": "Eid al-Adha (estimated)",
-    "2021-08-18": "Ashura (estimated)",
-    "2021-08-19": "Afghanistan Independence Day",
-    "2021-09-09": "Martyrs' Day",
-    "2021-10-18": "Prophet's Birthday (estimated)",
+    "2021-05-13": "Eid al-Fitr",
+    "2021-05-14": "Eid al-Fitr",
+    "2021-05-15": "Eid al-Fitr",
+    "2021-07-19": "Day of Arafah",
+    "2021-07-20": "Eid al-Adha",
+    "2021-07-21": "Eid al-Adha",
+    "2021-07-22": "Eid al-Adha",
+    "2021-08-19": "Afghanistan Independence Day; Ashura",
+    "2021-10-19": "Prophet's Birthday",
     "2022-02-15": "Liberation Day",
-    "2022-04-02": "First Day of Ramadan (estimated)",
+    "2022-04-02": "First Day of Ramadan",
     "2022-04-28": "Mojahedin's Victory Day",
-    "2022-05-02": "Eid al-Fitr (estimated)",
-    "2022-05-03": "Eid al-Fitr (estimated)",
-    "2022-05-04": "Eid al-Fitr (estimated)",
-    "2022-07-08": "Day of Arafah (estimated)",
-    "2022-07-09": "Eid al-Adha (estimated)",
-    "2022-07-10": "Eid al-Adha (estimated)",
-    "2022-07-11": "Eid al-Adha (estimated)",
-    "2022-08-08": "Ashura (estimated)",
+    "2022-05-01": "Eid al-Fitr",
+    "2022-05-02": "Eid al-Fitr",
+    "2022-05-03": "Eid al-Fitr",
+    "2022-07-08": "Day of Arafah",
+    "2022-07-09": "Eid al-Adha",
+    "2022-07-10": "Eid al-Adha",
+    "2022-07-11": "Eid al-Adha",
+    "2022-08-15": "Islamic Emirate Victory Day",
     "2022-08-19": "Afghanistan Independence Day",
     "2022-08-31": "American Withdrawal Day",
-    "2022-09-09": "Martyrs' Day",
-    "2022-10-08": "Prophet's Birthday (estimated)",
+    "2022-10-08": "Prophet's Birthday",
     "2023-02-15": "Liberation Day",
-    "2023-03-23": "First Day of Ramadan (estimated)",
-    "2023-04-21": "Eid al-Fitr (estimated)",
-    "2023-04-22": "Eid al-Fitr (estimated)",
-    "2023-04-23": "Eid al-Fitr (estimated)",
+    "2023-03-23": "First Day of Ramadan",
+    "2023-04-22": "Eid al-Fitr",
+    "2023-04-23": "Eid al-Fitr",
+    "2023-04-24": "Eid al-Fitr",
     "2023-04-28": "Mojahedin's Victory Day",
-    "2023-06-27": "Day of Arafah (estimated)",
-    "2023-06-28": "Eid al-Adha (estimated)",
-    "2023-06-29": "Eid al-Adha (estimated)",
-    "2023-06-30": "Eid al-Adha (estimated)",
-    "2023-07-28": "Ashura (estimated)",
+    "2023-06-27": "Day of Arafah",
+    "2023-06-28": "Eid al-Adha",
+    "2023-06-29": "Eid al-Adha",
+    "2023-06-30": "Eid al-Adha",
+    "2023-08-15": "Islamic Emirate Victory Day",
     "2023-08-19": "Afghanistan Independence Day",
     "2023-08-31": "American Withdrawal Day",
-    "2023-09-09": "Martyrs' Day",
-    "2023-09-27": "Prophet's Birthday (estimated)",
+    "2023-09-27": "Prophet's Birthday",
     "2024-02-15": "Liberation Day",
-    "2024-03-11": "First Day of Ramadan (estimated)",
-    "2024-04-10": "Eid al-Fitr (estimated)",
-    "2024-04-11": "Eid al-Fitr (estimated)",
-    "2024-04-12": "Eid al-Fitr (estimated)",
+    "2024-03-11": "First Day of Ramadan",
+    "2024-04-10": "Eid al-Fitr",
+    "2024-04-11": "Eid al-Fitr",
+    "2024-04-12": "Eid al-Fitr",
     "2024-04-28": "Mojahedin's Victory Day",
-    "2024-06-15": "Day of Arafah (estimated)",
-    "2024-06-16": "Eid al-Adha (estimated)",
-    "2024-06-17": "Eid al-Adha (estimated)",
-    "2024-06-18": "Eid al-Adha (estimated)",
-    "2024-07-16": "Ashura (estimated)",
+    "2024-06-16": "Day of Arafah",
+    "2024-06-17": "Eid al-Adha",
+    "2024-06-18": "Eid al-Adha",
+    "2024-06-19": "Eid al-Adha",
+    "2024-08-14": "Islamic Emirate Victory Day",
     "2024-08-19": "Afghanistan Independence Day",
     "2024-08-31": "American Withdrawal Day",
-    "2024-09-09": "Martyrs' Day",
-    "2024-09-15": "Prophet's Birthday (estimated)",
+    "2024-09-16": "Prophet's Birthday",
     "2025-02-15": "Liberation Day",
     "2025-03-01": "First Day of Ramadan (estimated)",
     "2025-03-30": "Eid al-Fitr (estimated)",
@@ -1051,11 +1046,10 @@
     "2025-06-06": "Eid al-Adha (estimated)",
     "2025-06-07": "Eid al-Adha (estimated)",
     "2025-06-08": "Eid al-Adha (estimated)",
-    "2025-07-05": "Ashura (estimated)",
+    "2025-08-15": "Islamic Emirate Victory Day",
     "2025-08-19": "Afghanistan Independence Day",
     "2025-08-31": "American Withdrawal Day",
     "2025-09-04": "Prophet's Birthday (estimated)",
-    "2025-09-09": "Martyrs' Day",
     "2026-02-15": "Liberation Day",
     "2026-02-18": "First Day of Ramadan (estimated)",
     "2026-03-20": "Eid al-Fitr (estimated)",
@@ -1066,11 +1060,10 @@
     "2026-05-27": "Eid al-Adha (estimated)",
     "2026-05-28": "Eid al-Adha (estimated)",
     "2026-05-29": "Eid al-Adha (estimated)",
-    "2026-06-25": "Ashura (estimated)",
+    "2026-08-15": "Islamic Emirate Victory Day",
     "2026-08-19": "Afghanistan Independence Day",
     "2026-08-25": "Prophet's Birthday (estimated)",
     "2026-08-31": "American Withdrawal Day",
-    "2026-09-09": "Martyrs' Day",
     "2027-02-08": "First Day of Ramadan (estimated)",
     "2027-02-15": "Liberation Day",
     "2027-03-09": "Eid al-Fitr (estimated)",
@@ -1081,11 +1074,10 @@
     "2027-05-16": "Eid al-Adha (estimated)",
     "2027-05-17": "Eid al-Adha (estimated)",
     "2027-05-18": "Eid al-Adha (estimated)",
-    "2027-06-15": "Ashura (estimated)",
     "2027-08-14": "Prophet's Birthday (estimated)",
+    "2027-08-15": "Islamic Emirate Victory Day",
     "2027-08-19": "Afghanistan Independence Day",
     "2027-08-31": "American Withdrawal Day",
-    "2027-09-09": "Martyrs' Day",
     "2028-01-28": "First Day of Ramadan (estimated)",
     "2028-02-15": "Liberation Day",
     "2028-02-26": "Eid al-Fitr (estimated)",
@@ -1096,11 +1088,10 @@
     "2028-05-05": "Eid al-Adha (estimated)",
     "2028-05-06": "Eid al-Adha (estimated)",
     "2028-05-07": "Eid al-Adha (estimated)",
-    "2028-06-03": "Ashura (estimated)",
     "2028-08-03": "Prophet's Birthday (estimated)",
+    "2028-08-14": "Islamic Emirate Victory Day",
     "2028-08-19": "Afghanistan Independence Day",
     "2028-08-31": "American Withdrawal Day",
-    "2028-09-09": "Martyrs' Day",
     "2029-01-16": "First Day of Ramadan (estimated)",
     "2029-02-14": "Eid al-Fitr (estimated)",
     "2029-02-15": "Eid al-Fitr (estimated); Liberation Day",
@@ -1110,11 +1101,10 @@
     "2029-04-25": "Eid al-Adha (estimated)",
     "2029-04-26": "Eid al-Adha (estimated)",
     "2029-04-28": "Mojahedin's Victory Day",
-    "2029-05-23": "Ashura (estimated)",
     "2029-07-24": "Prophet's Birthday (estimated)",
+    "2029-08-14": "Islamic Emirate Victory Day",
     "2029-08-19": "Afghanistan Independence Day",
     "2029-08-31": "American Withdrawal Day",
-    "2029-09-09": "Martyrs' Day",
     "2030-01-05": "First Day of Ramadan (estimated)",
     "2030-02-04": "Eid al-Fitr (estimated)",
     "2030-02-05": "Eid al-Fitr (estimated)",
@@ -1125,11 +1115,10 @@
     "2030-04-14": "Eid al-Adha (estimated)",
     "2030-04-15": "Eid al-Adha (estimated)",
     "2030-04-28": "Mojahedin's Victory Day",
-    "2030-05-12": "Ashura (estimated)",
     "2030-07-13": "Prophet's Birthday (estimated)",
+    "2030-08-15": "Islamic Emirate Victory Day",
     "2030-08-19": "Afghanistan Independence Day",
     "2030-08-31": "American Withdrawal Day",
-    "2030-09-09": "Martyrs' Day",
     "2030-12-26": "First Day of Ramadan (estimated)",
     "2031-01-24": "Eid al-Fitr (estimated)",
     "2031-01-25": "Eid al-Fitr (estimated)",
@@ -1140,11 +1129,10 @@
     "2031-04-03": "Eid al-Adha (estimated)",
     "2031-04-04": "Eid al-Adha (estimated)",
     "2031-04-28": "Mojahedin's Victory Day",
-    "2031-05-02": "Ashura (estimated)",
     "2031-07-02": "Prophet's Birthday (estimated)",
+    "2031-08-15": "Islamic Emirate Victory Day",
     "2031-08-19": "Afghanistan Independence Day",
     "2031-08-31": "American Withdrawal Day",
-    "2031-09-09": "Martyrs' Day",
     "2031-12-15": "First Day of Ramadan (estimated)",
     "2032-01-14": "Eid al-Fitr (estimated)",
     "2032-01-15": "Eid al-Fitr (estimated)",
@@ -1154,12 +1142,11 @@
     "2032-03-22": "Eid al-Adha (estimated)",
     "2032-03-23": "Eid al-Adha (estimated)",
     "2032-03-24": "Eid al-Adha (estimated)",
-    "2032-04-20": "Ashura (estimated)",
     "2032-04-28": "Mojahedin's Victory Day",
     "2032-06-20": "Prophet's Birthday (estimated)",
+    "2032-08-14": "Islamic Emirate Victory Day",
     "2032-08-19": "Afghanistan Independence Day",
     "2032-08-31": "American Withdrawal Day",
-    "2032-09-09": "Martyrs' Day",
     "2032-12-04": "First Day of Ramadan (estimated)",
     "2033-01-02": "Eid al-Fitr (estimated)",
     "2033-01-03": "Eid al-Fitr (estimated)",
@@ -1169,12 +1156,11 @@
     "2033-03-11": "Eid al-Adha (estimated)",
     "2033-03-12": "Eid al-Adha (estimated)",
     "2033-03-13": "Eid al-Adha (estimated)",
-    "2033-04-10": "Ashura (estimated)",
     "2033-04-28": "Mojahedin's Victory Day",
     "2033-06-09": "Prophet's Birthday (estimated)",
+    "2033-08-14": "Islamic Emirate Victory Day",
     "2033-08-19": "Afghanistan Independence Day",
     "2033-08-31": "American Withdrawal Day",
-    "2033-09-09": "Martyrs' Day",
     "2033-11-23": "First Day of Ramadan (estimated)",
     "2033-12-23": "Eid al-Fitr (estimated)",
     "2033-12-24": "Eid al-Fitr (estimated)",
@@ -1184,12 +1170,11 @@
     "2034-03-01": "Eid al-Adha (estimated)",
     "2034-03-02": "Eid al-Adha (estimated)",
     "2034-03-03": "Eid al-Adha (estimated)",
-    "2034-03-30": "Ashura (estimated)",
     "2034-04-28": "Mojahedin's Victory Day",
     "2034-05-30": "Prophet's Birthday (estimated)",
+    "2034-08-15": "Islamic Emirate Victory Day",
     "2034-08-19": "Afghanistan Independence Day",
     "2034-08-31": "American Withdrawal Day",
-    "2034-09-09": "Martyrs' Day",
     "2034-11-12": "First Day of Ramadan (estimated)",
     "2034-12-12": "Eid al-Fitr (estimated)",
     "2034-12-13": "Eid al-Fitr (estimated)",
@@ -1199,12 +1184,11 @@
     "2035-02-18": "Eid al-Adha (estimated)",
     "2035-02-19": "Eid al-Adha (estimated)",
     "2035-02-20": "Eid al-Adha (estimated)",
-    "2035-03-20": "Ashura (estimated)",
     "2035-04-28": "Mojahedin's Victory Day",
     "2035-05-20": "Prophet's Birthday (estimated)",
+    "2035-08-15": "Islamic Emirate Victory Day",
     "2035-08-19": "Afghanistan Independence Day",
     "2035-08-31": "American Withdrawal Day",
-    "2035-09-09": "Martyrs' Day",
     "2035-11-01": "First Day of Ramadan (estimated)",
     "2035-12-01": "Eid al-Fitr (estimated)",
     "2035-12-02": "Eid al-Fitr (estimated)",
@@ -1214,12 +1198,11 @@
     "2036-02-08": "Eid al-Adha (estimated)",
     "2036-02-09": "Eid al-Adha (estimated)",
     "2036-02-15": "Liberation Day",
-    "2036-03-08": "Ashura (estimated)",
     "2036-04-28": "Mojahedin's Victory Day",
     "2036-05-08": "Prophet's Birthday (estimated)",
+    "2036-08-14": "Islamic Emirate Victory Day",
     "2036-08-19": "Afghanistan Independence Day",
     "2036-08-31": "American Withdrawal Day",
-    "2036-09-09": "Martyrs' Day",
     "2036-10-20": "First Day of Ramadan (estimated)",
     "2036-11-19": "Eid al-Fitr (estimated)",
     "2036-11-20": "Eid al-Fitr (estimated)",
@@ -1229,11 +1212,10 @@
     "2037-01-27": "Eid al-Adha (estimated)",
     "2037-01-28": "Eid al-Adha (estimated)",
     "2037-02-15": "Liberation Day",
-    "2037-02-25": "Ashura (estimated)",
     "2037-04-28": "Mojahedin's Victory Day; Prophet's Birthday (estimated)",
+    "2037-08-14": "Islamic Emirate Victory Day",
     "2037-08-19": "Afghanistan Independence Day",
     "2037-08-31": "American Withdrawal Day",
-    "2037-09-09": "Martyrs' Day",
     "2037-10-10": "First Day of Ramadan (estimated)",
     "2037-11-08": "Eid al-Fitr (estimated)",
     "2037-11-09": "Eid al-Fitr (estimated)",
@@ -1242,13 +1224,12 @@
     "2038-01-16": "Eid al-Adha (estimated)",
     "2038-01-17": "Eid al-Adha (estimated)",
     "2038-01-18": "Eid al-Adha (estimated)",
-    "2038-02-14": "Ashura (estimated)",
     "2038-02-15": "Liberation Day",
     "2038-04-17": "Prophet's Birthday (estimated)",
     "2038-04-28": "Mojahedin's Victory Day",
+    "2038-08-15": "Islamic Emirate Victory Day",
     "2038-08-19": "Afghanistan Independence Day",
     "2038-08-31": "American Withdrawal Day",
-    "2038-09-09": "Martyrs' Day",
     "2038-09-30": "First Day of Ramadan (estimated)",
     "2038-10-29": "Eid al-Fitr (estimated)",
     "2038-10-30": "Eid al-Fitr (estimated)",
@@ -1257,13 +1238,12 @@
     "2039-01-05": "Eid al-Adha (estimated)",
     "2039-01-06": "Eid al-Adha (estimated)",
     "2039-01-07": "Eid al-Adha (estimated)",
-    "2039-02-04": "Ashura (estimated)",
     "2039-02-15": "Liberation Day",
     "2039-04-06": "Prophet's Birthday (estimated)",
     "2039-04-28": "Mojahedin's Victory Day",
+    "2039-08-15": "Islamic Emirate Victory Day",
     "2039-08-19": "Afghanistan Independence Day",
     "2039-08-31": "American Withdrawal Day",
-    "2039-09-09": "Martyrs' Day",
     "2039-09-19": "First Day of Ramadan (estimated)",
     "2039-10-19": "Eid al-Fitr (estimated)",
     "2039-10-20": "Eid al-Fitr (estimated)",
@@ -1272,14 +1252,13 @@
     "2039-12-26": "Eid al-Adha (estimated)",
     "2039-12-27": "Eid al-Adha (estimated)",
     "2039-12-28": "Eid al-Adha (estimated)",
-    "2040-01-24": "Ashura (estimated)",
     "2040-02-15": "Liberation Day",
     "2040-03-25": "Prophet's Birthday (estimated)",
     "2040-04-28": "Mojahedin's Victory Day",
+    "2040-08-14": "Islamic Emirate Victory Day",
     "2040-08-19": "Afghanistan Independence Day",
     "2040-08-31": "American Withdrawal Day",
     "2040-09-07": "First Day of Ramadan (estimated)",
-    "2040-09-09": "Martyrs' Day",
     "2040-10-07": "Eid al-Fitr (estimated)",
     "2040-10-08": "Eid al-Fitr (estimated)",
     "2040-10-09": "Eid al-Fitr (estimated)",
@@ -1287,14 +1266,13 @@
     "2040-12-14": "Eid al-Adha (estimated)",
     "2040-12-15": "Eid al-Adha (estimated)",
     "2040-12-16": "Eid al-Adha (estimated)",
-    "2041-01-13": "Ashura (estimated)",
     "2041-02-15": "Liberation Day",
     "2041-03-15": "Prophet's Birthday (estimated)",
     "2041-04-28": "Mojahedin's Victory Day",
+    "2041-08-14": "Islamic Emirate Victory Day",
     "2041-08-19": "Afghanistan Independence Day",
     "2041-08-28": "First Day of Ramadan (estimated)",
     "2041-08-31": "American Withdrawal Day",
-    "2041-09-09": "Martyrs' Day",
     "2041-09-26": "Eid al-Fitr (estimated)",
     "2041-09-27": "Eid al-Fitr (estimated)",
     "2041-09-28": "Eid al-Fitr (estimated)",
@@ -1302,14 +1280,13 @@
     "2041-12-04": "Eid al-Adha (estimated)",
     "2041-12-05": "Eid al-Adha (estimated)",
     "2041-12-06": "Eid al-Adha (estimated)",
-    "2042-01-02": "Ashura (estimated)",
     "2042-02-15": "Liberation Day",
     "2042-03-04": "Prophet's Birthday (estimated)",
     "2042-04-28": "Mojahedin's Victory Day",
+    "2042-08-15": "Islamic Emirate Victory Day",
     "2042-08-17": "First Day of Ramadan (estimated)",
     "2042-08-19": "Afghanistan Independence Day",
     "2042-08-31": "American Withdrawal Day",
-    "2042-09-09": "Martyrs' Day",
     "2042-09-15": "Eid al-Fitr (estimated)",
     "2042-09-16": "Eid al-Fitr (estimated)",
     "2042-09-17": "Eid al-Fitr (estimated)",
@@ -1317,52 +1294,47 @@
     "2042-11-23": "Eid al-Adha (estimated)",
     "2042-11-24": "Eid al-Adha (estimated)",
     "2042-11-25": "Eid al-Adha (estimated)",
-    "2042-12-23": "Ashura (estimated)",
     "2043-02-15": "Liberation Day",
     "2043-02-22": "Prophet's Birthday (estimated)",
     "2043-04-28": "Mojahedin's Victory Day",
     "2043-08-06": "First Day of Ramadan (estimated)",
+    "2043-08-15": "Islamic Emirate Victory Day",
     "2043-08-19": "Afghanistan Independence Day",
     "2043-08-31": "American Withdrawal Day",
     "2043-09-04": "Eid al-Fitr (estimated)",
     "2043-09-05": "Eid al-Fitr (estimated)",
     "2043-09-06": "Eid al-Fitr (estimated)",
-    "2043-09-09": "Martyrs' Day",
     "2043-11-11": "Day of Arafah (estimated)",
     "2043-11-12": "Eid al-Adha (estimated)",
     "2043-11-13": "Eid al-Adha (estimated)",
     "2043-11-14": "Eid al-Adha (estimated)",
-    "2043-12-12": "Ashura (estimated)",
     "2044-02-11": "Prophet's Birthday (estimated)",
     "2044-02-15": "Liberation Day",
     "2044-04-28": "Mojahedin's Victory Day",
     "2044-07-26": "First Day of Ramadan (estimated)",
+    "2044-08-14": "Islamic Emirate Victory Day",
     "2044-08-19": "Afghanistan Independence Day",
     "2044-08-24": "Eid al-Fitr (estimated)",
     "2044-08-25": "Eid al-Fitr (estimated)",
     "2044-08-26": "Eid al-Fitr (estimated)",
     "2044-08-31": "American Withdrawal Day",
-    "2044-09-09": "Martyrs' Day",
     "2044-10-30": "Day of Arafah (estimated)",
     "2044-10-31": "Eid al-Adha (estimated)",
     "2044-11-01": "Eid al-Adha (estimated)",
     "2044-11-02": "Eid al-Adha (estimated)",
-    "2044-11-30": "Ashura (estimated)",
     "2045-01-30": "Prophet's Birthday (estimated)",
     "2045-02-15": "Liberation Day",
     "2045-04-28": "Mojahedin's Victory Day",
     "2045-07-15": "First Day of Ramadan (estimated)",
-    "2045-08-14": "Eid al-Fitr (estimated)",
+    "2045-08-14": "Eid al-Fitr (estimated); Islamic Emirate Victory Day",
     "2045-08-15": "Eid al-Fitr (estimated)",
     "2045-08-16": "Eid al-Fitr (estimated)",
     "2045-08-19": "Afghanistan Independence Day",
     "2045-08-31": "American Withdrawal Day",
-    "2045-09-09": "Martyrs' Day",
     "2045-10-20": "Day of Arafah (estimated)",
     "2045-10-21": "Eid al-Adha (estimated)",
     "2045-10-22": "Eid al-Adha (estimated)",
     "2045-10-23": "Eid al-Adha (estimated)",
-    "2045-11-19": "Ashura (estimated)",
     "2046-01-19": "Prophet's Birthday (estimated)",
     "2046-02-15": "Liberation Day",
     "2046-04-28": "Mojahedin's Victory Day",
@@ -1370,14 +1342,13 @@
     "2046-08-03": "Eid al-Fitr (estimated)",
     "2046-08-04": "Eid al-Fitr (estimated)",
     "2046-08-05": "Eid al-Fitr (estimated)",
+    "2046-08-15": "Islamic Emirate Victory Day",
     "2046-08-19": "Afghanistan Independence Day",
     "2046-08-31": "American Withdrawal Day",
-    "2046-09-09": "Martyrs' Day",
     "2046-10-09": "Day of Arafah (estimated)",
     "2046-10-10": "Eid al-Adha (estimated)",
     "2046-10-11": "Eid al-Adha (estimated)",
     "2046-10-12": "Eid al-Adha (estimated)",
-    "2046-11-09": "Ashura (estimated)",
     "2047-01-08": "Prophet's Birthday (estimated)",
     "2047-02-15": "Liberation Day",
     "2047-04-28": "Mojahedin's Victory Day",
@@ -1385,14 +1356,13 @@
     "2047-07-24": "Eid al-Fitr (estimated)",
     "2047-07-25": "Eid al-Fitr (estimated)",
     "2047-07-26": "Eid al-Fitr (estimated)",
+    "2047-08-15": "Islamic Emirate Victory Day",
     "2047-08-19": "Afghanistan Independence Day",
     "2047-08-31": "American Withdrawal Day",
-    "2047-09-09": "Martyrs' Day",
     "2047-09-29": "Day of Arafah (estimated)",
     "2047-09-30": "Eid al-Adha (estimated)",
     "2047-10-01": "Eid al-Adha (estimated)",
     "2047-10-02": "Eid al-Adha (estimated)",
-    "2047-10-29": "Ashura (estimated)",
     "2047-12-29": "Prophet's Birthday (estimated)",
     "2048-02-15": "Liberation Day",
     "2048-04-28": "Mojahedin's Victory Day",
@@ -1400,14 +1370,13 @@
     "2048-07-12": "Eid al-Fitr (estimated)",
     "2048-07-13": "Eid al-Fitr (estimated)",
     "2048-07-14": "Eid al-Fitr (estimated)",
+    "2048-08-14": "Islamic Emirate Victory Day",
     "2048-08-19": "Afghanistan Independence Day",
     "2048-08-31": "American Withdrawal Day",
-    "2048-09-09": "Martyrs' Day",
     "2048-09-18": "Day of Arafah (estimated)",
     "2048-09-19": "Eid al-Adha (estimated)",
     "2048-09-20": "Eid al-Adha (estimated)",
     "2048-09-21": "Eid al-Adha (estimated)",
-    "2048-10-18": "Ashura (estimated)",
     "2048-12-18": "Prophet's Birthday (estimated)",
     "2049-02-15": "Liberation Day",
     "2049-04-28": "Mojahedin's Victory Day",
@@ -1415,13 +1384,13 @@
     "2049-07-01": "Eid al-Fitr (estimated)",
     "2049-07-02": "Eid al-Fitr (estimated)",
     "2049-07-03": "Eid al-Fitr (estimated)",
+    "2049-08-14": "Islamic Emirate Victory Day",
     "2049-08-19": "Afghanistan Independence Day",
     "2049-08-31": "American Withdrawal Day",
     "2049-09-07": "Day of Arafah (estimated)",
     "2049-09-08": "Eid al-Adha (estimated)",
-    "2049-09-09": "Eid al-Adha (estimated); Martyrs' Day",
+    "2049-09-09": "Eid al-Adha (estimated)",
     "2049-09-10": "Eid al-Adha (estimated)",
-    "2049-10-07": "Ashura (estimated)",
     "2049-12-07": "Prophet's Birthday (estimated)",
     "2050-02-15": "Liberation Day",
     "2050-04-28": "Mojahedin's Victory Day",
@@ -1429,13 +1398,12 @@
     "2050-06-20": "Eid al-Fitr (estimated)",
     "2050-06-21": "Eid al-Fitr (estimated)",
     "2050-06-22": "Eid al-Fitr (estimated)",
+    "2050-08-15": "Islamic Emirate Victory Day",
     "2050-08-19": "Afghanistan Independence Day",
     "2050-08-27": "Day of Arafah (estimated)",
     "2050-08-28": "Eid al-Adha (estimated)",
     "2050-08-29": "Eid al-Adha (estimated)",
     "2050-08-30": "Eid al-Adha (estimated)",
     "2050-08-31": "American Withdrawal Day",
-    "2050-09-09": "Martyrs' Day",
-    "2050-09-26": "Ashura (estimated)",
     "2050-11-26": "Prophet's Birthday (estimated)"
 }


Test patch:
diff --git a/tests/countries/test_afghanistan.py b/tests/countries/test_afghanistan.py
index 01d67151..0ca501e6 100644
--- a/tests/countries/test_afghanistan.py
+++ b/tests/countries/test_afghanistan.py
@@ -29,26 +29,6 @@ class TestAfghanistan(CommonCountryTests, TestCase):
     def test_no_holidays(self):
         self.assertNoHolidays(Afghanistan(years=1918))
 
-    def test_2021(self):
-        self.assertHolidays(
-            Afghanistan(years=2021),
-            ("2021-02-15", "روز آزادی"),
-            ("2021-04-13", "اول رمضان (برآورد شده)"),
-            ("2021-04-28", "روز پیروزی مجاهدین"),
-            ("2021-05-01", "روز جهانی کارگر"),
-            ("2021-05-13", "عید فطر (برآورد شده)"),
-            ("2021-05-14", "عید فطر (برآورد شده)"),
-            ("2021-05-15", "عید فطر (برآورد شده)"),
-            ("2021-07-19", "روز عرفه (برآورد شده)"),
-            ("2021-07-20", "عید قربانی (برآورد شده)"),
-            ("2021-07-21", "عید قربانی (برآورد شده)"),
-            ("2021-07-22", "عید قربانی (برآورد شده)"),
-            ("2021-08-18", "عاشورا (برآورد شده)"),
-            ("2021-08-19", "روز استقلال افغانستان"),
-            ("2021-09-09", "روز شهیدان"),
-            ("2021-10-18", "میلاد پیامبر (برآورد شده)"),
-        )
-
     def test_liberation_day(self):
         name = "روز آزادی"
         self.assertHolidayName(name, (f"{year}-02-15" for year in range(1989, 2050)))
@@ -57,8 +37,19 @@ class TestAfghanistan(CommonCountryTests, TestCase):
     def test_nowruz(self):
         name = "نوروز"
         self.assertHolidayName(
-            name, (f"{year}-03-21" for year in (*range(1919, 1997), *range(2001, 2021)))
+            name,
+            "2011-03-21",
+            "2012-03-20",
+            "2013-03-21",
+            "2014-03-21",
+            "2015-03-21",
+            "2016-03-20",
+            "2017-03-21",
+            "2018-03-21",
+            "2019-03-21",
+            "2020-03-20",
         )
+        self.assertHolidayName(name, range(1919, 1997), range(2001, 2021))
         self.assertNoHolidayName(name, range(1997, 2001), range(2021, 2050))
 
     def test_victory_of_mujahideen_day(self):
@@ -78,6 +69,17 @@ class TestAfghanistan(CommonCountryTests, TestCase):
         self.assertHolidayName(name, (f"{year}-05-09" for year in range(1978, 1989)))
         self.assertNoHolidayName(name, range(1919, 1978), (1989, 2050))
 
+    def test_islamic_emirat_victory_day(self):
+        name = "روز پیروزی امارت اسلامی"
+        self.assertHolidayName(
+            name,
+            "2022-08-15",
+            "2023-08-15",
+            "2024-08-14",
+        )
+        self.assertHolidayName(name, range(2022, 2050))
+        self.assertNoHolidayName(name, range(1919, 2022))
+
     def test_american_withdrawal_day(self):
         name = "روز خروج آمریکایی ها"
         self.assertHolidayName(name, (f"{year}-08-31" for year in range(2022, 2050)))
@@ -89,64 +91,235 @@ class TestAfghanistan(CommonCountryTests, TestCase):
 
     def test_martyrs_day(self):
         name = "روز شهیدان"
-        self.assertHolidayName(name, (f"{year}-09-09" for year in range(2012, 2050)))
-        self.assertNoHolidayName(name, range(1919, 2012))
+        self.assertHolidayName(name, (f"{year}-09-09" for year in range(2012, 2021)))
+        self.assertNoHolidayName(name, range(1919, 2012), (2021, 2050))
+
+    def test_ashura(self):
+        name = "عاشورا"
+        self.assertHolidayName(
+            name,
+            "2014-11-03",
+            "2015-10-24",
+            "2016-10-12",
+            "2017-10-01",
+            "2018-09-21",
+            "2019-09-10",
+            "2020-08-30",
+            "2021-08-19",
+        )
+        years_found = {dt.year for dt in self.holidays.get_named(name, lookup="startswith")}
+        self.assertEqual(set(range(1924, 2022)), years_found)
+
+    def test_prophets_birthday(self):
+        name = "میلاد پیامبر"
+        self.assertHolidayName(
+            name,
+            "2014-01-14",
+            "2015-01-03",
+            "2015-12-24",
+            "2016-12-12",
+            "2017-12-01",
+            "2018-11-21",
+            "2019-11-10",
+            "2020-10-29",
+            "2021-10-19",
+            "2022-10-08",
+            "2023-09-27",
+            "2024-09-16",
+        )
+        years_found = {dt.year for dt in self.holidays.get_named(name, lookup="startswith")}
+        self.assertEqual(set(range(1924, 2050)), years_found)
+
+    def test_first_day_of_ramadan(self):
+        name = "اول رمضان"
+        self.assertHolidayName(
+            name,
+            "2014-06-29",
+            "2015-06-18",
+            "2016-06-07",
+            "2017-05-27",
+            "2018-05-16",
+            "2019-05-06",
+            "2020-04-24",
+            "2021-04-13",
+            "2022-04-02",
+            "2023-03-23",
+            "2024-03-11",
+        )
+        years_found = {dt.year for dt in self.holidays.get_named(name, lookup="startswith")}
+        self.assertEqual(set(range(1925, 2050)), years_found)
+
+    def test_eid_al_fitr(self):
+        name = "عید فطر"
+        self.assertHolidayName(
+            name,
+            "2014-07-29",
+            "2014-07-30",
+            "2014-07-31",
+            "2015-07-18",
+            "2015-07-19",
+            "2015-07-20",
+            "2016-07-07",
+            "2016-07-08",
+            "2016-07-09",
+            "2017-06-26",
+            "2017-06-27",
+            "2017-06-28",
+            "2018-06-15",
+            "2018-06-16",
+            "2018-06-17",
+            "2019-06-04",
+            "2019-06-05",
+            "2019-06-06",
+            "2020-05-24",
+            "2020-05-25",
+            "2020-05-26",
+            "2021-05-13",
+            "2021-05-14",
+            "2021-05-15",
+            "2022-05-01",
+            "2022-05-02",
+            "2022-05-03",
+            "2023-04-22",
+            "2023-04-23",
+            "2023-04-24",
+            "2024-04-10",
+            "2024-04-11",
+            "2024-04-12",
+        )
+        years_found = {dt.year for dt in self.holidays.get_named(name, lookup="startswith")}
+        self.assertEqual(set(range(1925, 2050)), years_found)
+
+    def test_arafah_day(self):
+        name = "روز عرفه"
+        self.assertHolidayName(
+            name,
+            "2014-10-04",
+            "2015-09-22",
+            "2016-09-12",
+            "2017-09-01",
+            "2018-08-21",
+            "2019-08-10",
+            "2020-07-30",
+            "2021-07-19",
+            "2022-07-08",
+            "2023-06-27",
+            "2024-06-16",
+        )
+        years_found = {dt.year for dt in self.holidays.get_named(name, lookup="startswith")}
+        self.assertEqual(set(range(1925, 2050)), years_found)
+
+    def test_eid_al_adha(self):
+        name = "عید قربانی"
+        self.assertHolidayName(
+            name,
+            "2014-10-05",
+            "2014-10-06",
+            "2014-10-07",
+            "2015-09-23",
+            "2015-09-24",
+            "2015-09-25",
+            "2016-09-13",
+            "2016-09-14",
+            "2016-09-15",
+            "2017-09-02",
+            "2017-09-03",
+            "2017-09-04",
+            "2018-08-22",
+            "2018-08-23",
+            "2018-08-24",
+            "2019-08-11",
+            "2019-08-12",
+            "2019-08-13",
+            "2020-07-31",
+            "2020-08-01",
+            "2020-08-02",
+            "2021-07-20",
+            "2021-07-21",
+            "2021-07-22",
+            "2022-07-09",
+            "2022-07-10",
+            "2022-07-11",
+            "2023-06-28",
+            "2023-06-29",
+            "2023-06-30",
+            "2024-06-17",
+            "2024-06-18",
+            "2024-06-19",
+        )
+        years_found = {dt.year for dt in self.holidays.get_named(name, lookup="startswith")}
+        self.assertEqual(set(range(1925, 2050)), years_found)
+
+    def test_2021(self):
+        self.assertHolidays(
+            Afghanistan(years=2021),
+            ("2021-02-15", "روز آزادی"),
+            ("2021-04-13", "اول رمضان"),
+            ("2021-04-28", "روز پیروزی مجاهدین"),
+            ("2021-05-01", "روز جهانی کارگر"),
+            ("2021-05-13", "عید فطر"),
+            ("2021-05-14", "عید فطر"),
+            ("2021-05-15", "عید فطر"),
+            ("2021-07-19", "روز عرفه"),
+            ("2021-07-20", "عید قربانی"),
+            ("2021-07-21", "عید قربانی"),
+            ("2021-07-22", "عید قربانی"),
+            ("2021-08-19", "روز استقلال افغانستان; عاشورا"),
+            ("2021-10-19", "میلاد پیامبر"),
+        )
 
     def test_l10_default(self):
         self.assertLocalizedHolidays(
             ("2022-02-15", "روز آزادی"),
-            ("2022-04-02", "اول رمضان (برآورد شده)"),
+            ("2022-04-02", "اول رمضان"),
             ("2022-04-28", "روز پیروزی مجاهدین"),
-            ("2022-05-02", "عید فطر (برآورد شده)"),
-            ("2022-05-03", "عید فطر (برآورد شده)"),
-            ("2022-05-04", "عید فطر (برآورد شده)"),
-            ("2022-07-08", "روز عرفه (برآورد شده)"),
-            ("2022-07-09", "عید قربانی (برآورد شده)"),
-            ("2022-07-10", "عید قربانی (برآورد شده)"),
-            ("2022-07-11", "عید قربانی (برآورد شده)"),
-            ("2022-08-08", "عاشورا (برآورد شده)"),
+            ("2022-05-01", "عید فطر"),
+            ("2022-05-02", "عید فطر"),
+            ("2022-05-03", "عید فطر"),
+            ("2022-07-08", "روز عرفه"),
+            ("2022-07-09", "عید قربانی"),
+            ("2022-07-10", "عید قربانی"),
+            ("2022-07-11", "عید قربانی"),
+            ("2022-08-15", "روز پیروزی امارت اسلامی"),
             ("2022-08-19", "روز استقلال افغانستان"),
             ("2022-08-31", "روز خروج آمریکایی ها"),
-            ("2022-09-09", "روز شهیدان"),
-            ("2022-10-08", "میلاد پیامبر (برآورد شده)"),
-        )
-
-    def test_l10n_ps_af(self):
-        self.assertLocalizedHolidays(
-            "ps_AF",
-            ("2022-02-15", "د ازادۍ ورځ"),
-            ("2022-04-02", "د روژې لومړۍ نیټه (اټکل)"),
-            ("2022-04-28", "مجاهدو د بریا ورځ"),
-            ("2022-05-02", "عید فطر (اټکل)"),
-            ("2022-05-03", "عید فطر (اټکل)"),
-            ("2022-05-04", "عید فطر (اټکل)"),
-            ("2022-07-08", "د عرفه ورځ (اټکل)"),
-            ("2022-07-09", "عید قربانی (اټکل)"),
-            ("2022-07-10", "عید قربانی (اټکل)"),
-            ("2022-07-11", "عید قربانی (اټکل)"),
-            ("2022-08-08", "عاشورا (اټکل)"),
-            ("2022-08-19", "د افغانستان د استقلال ورځ"),
-            ("2022-08-31", "د امریکا د وتلو ورځ"),
-            ("2022-09-09", "د شهیدانو ورځ"),
-            ("2022-10-08", "د پیغمبر الله صلی الله علیه وسلم د میلاد ورځ (اټکل)"),
+            ("2022-10-08", "میلاد پیامبر"),
         )
 
     def test_l10n_en_us(self):
         self.assertLocalizedHolidays(
             "en_US",
             ("2022-02-15", "Liberation Day"),
-            ("2022-04-02", "First Day of Ramadan (estimated)"),
+            ("2022-04-02", "First Day of Ramadan"),
             ("2022-04-28", "Mojahedin's Victory Day"),
-            ("2022-05-02", "Eid al-Fitr (estimated)"),
-            ("2022-05-03", "Eid al-Fitr (estimated)"),
-            ("2022-05-04", "Eid al-Fitr (estimated)"),
-            ("2022-07-08", "Day of Arafah (estimated)"),
-            ("2022-07-09", "Eid al-Adha (estimated)"),
-            ("2022-07-10", "Eid al-Adha (estimated)"),
-            ("2022-07-11", "Eid al-Adha (estimated)"),
-            ("2022-08-08", "Ashura (estimated)"),
+            ("2022-05-01", "Eid al-Fitr"),
+            ("2022-05-02", "Eid al-Fitr"),
+            ("2022-05-03", "Eid al-Fitr"),
+            ("2022-07-08", "Day of Arafah"),
+            ("2022-07-09", "Eid al-Adha"),
+            ("2022-07-10", "Eid al-Adha"),
+            ("2022-07-11", "Eid al-Adha"),
+            ("2022-08-15", "Islamic Emirate Victory Day"),
             ("2022-08-19", "Afghanistan Independence Day"),
             ("2022-08-31", "American Withdrawal Day"),
-            ("2022-09-09", "Martyrs' Day"),
-            ("2022-10-08", "Prophet's Birthday (estimated)"),
+            ("2022-10-08", "Prophet's Birthday"),
+        )
+
+    def test_l10n_ps_af(self):
+        self.assertLocalizedHolidays(
+            "ps_AF",
+            ("2022-02-15", "د ازادۍ ورځ"),
+            ("2022-04-02", "د روژې لومړۍ نیټه"),
+            ("2022-04-28", "مجاهدو د بریا ورځ"),
+            ("2022-05-01", "عید فطر"),
+            ("2022-05-02", "عید فطر"),
+            ("2022-05-03", "عید فطر"),
+            ("2022-07-08", "د عرفه ورځ"),
+            ("2022-07-09", "عید قربانی"),
+            ("2022-07-10", "عید قربانی"),
+            ("2022-07-11", "عید قربانی"),
+            ("2022-08-15", "د اسلامي امارت د بریا ورځ"),
+            ("2022-08-19", "د افغانستان د استقلال ورځ"),
+            ("2022-08-31", "د امریکا د وتلو ورځ"),
+            ("2022-10-08", "د پیغمبر الله صلی الله علیه وسلم د میلاد ورځ"),
         )