
    !g                         d dl mZmZ d dlmZmZmZ d dlmZm	Z	  G d deeee      Z
 G d de
      Z G d d	e
      Z G d
 d      Zy)    )JANDEC)ChristianHolidaysInternationalHolidaysStaticHolidays)ObservedHolidayBaseSUN_TO_NEXT_MONc                   4     e Zd ZdZdZdZdZ fdZd Z xZ	S )Namibiaa  
    https://www.officeholidays.com/countries/namibia
    https://www.timeanddate.com/holidays/namibia/

    https://tinyurl.com/lacorg5835
    As of 1991/2/1, whenever a public holiday falls on a Sunday, it rolls over to the monday,
    unless that monday is already a public holiday.
    Since the interval from 1991/1/1 to 1991/2/1 includes only New Year's Day, and it's a Tuesday,
    we can assume that the beginning is 1991.
    NAz%s (observed)i  c                     t        j                  |        t        j                  |        t        j                  | t               |j                  dt               |j                  dd       t        |   |i | y )Nobserved_ruleobserved_sincei  )r   __init__r   r   NamibiaStaticHolidays
setdefaultr	   super)selfargskwargs	__class__s      W/var/www/dash_apps/app1/venv/lib/python3.12/site-packages/holidays/countries/namibia.pyr   zNamibia.__init__#   sc    ""4(&&t,&;</?;*D1$)&)    c                    | j                  | j                  d             | j                  | j                  d             | j                  d       | j	                  d       | j                  | j                  d             | j                  | j                  d             | j                  | j                  d             | j                  d       | j                  | j                  d	             | j                  | j                  | j                  d
k\  rdnd             | j                  d       | j                  | j                  d             y )NzNew Year's DayzIndependence DayzGood FridayzEaster MondayzWorkers' DayzCassinga Dayz
Africa DayzAscension DayzHeroes' Dayi  z<Day of the Namibian Women and International Human Rights DayzInternational Human Rights DayzChristmas Dayz
Family Day)_add_observed_add_new_years_day_add_holiday_mar_21_add_good_friday_add_easter_monday_add_labor_day_add_holiday_may_4_add_africa_day_add_ascension_thursday_add_holiday_aug_26_add_holiday_sep_10_year_add_christmas_day_add_christmas_day_two)r   s    r   _populate_public_holidaysz!Namibia._populate_public_holidays+   s2   4223CDE 	4334FGH 	m, 	0 	4..~>? 	422>BC 	4//=> 	$$_5 	433MBC 	$$::% O5	
 	0 	466|DEr   )
__name__
__module____qualname____doc__countryobserved_label
start_yearr   r)   __classcell__)r   s   @r   r   r      s$    	 G$NJ*)Fr   r   c                       e Zd Zy)r   Nr*   r+   r,    r   r   r   r   W       r   r   c                       e Zd Zy)NAMNr3   r4   r   r   r7   r7   [   r5   r   r7   c                   "    e Zd ZeddfeddfdZy)r      zY2K changeover   )i  i  N)r*   r+   r,   r   r   special_public_holidaysr4   r   r   r   r   _   s"     B()A'(r   r   N)holidays.calendars.gregorianr   r   holidays.groupsr   r   r   holidays.observed_holiday_baser   r	   r   r   r7   r   r4   r   r   <module>r?      sO    2 T T OBF!#46K^ BFJ	 		' 	 r   