
    !g              	           d dl mZ d dlmZmZmZmZmZmZm	Z	m
Z
mZmZ d dlmZmZmZmZ d dlmZmZ  G d deeeee      Z G d de      Z G d	 d
e      Z G d de      Z G d d      Zy)    )_CustomIslamicHolidays)
JANAPRMAYJUNJULAUGSEPOCTNOVDEC)ChristianHolidaysInternationalHolidaysIslamicHolidays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 )Chadz
    References:
      - https://en.wikipedia.org/wiki/Public_holidays_in_Chad
      - https://www.ilo.org/dyn/natlex/docs/ELECTRONIC/97323/115433/F-316075167/TCD-97323.pdf
    TDz%s (observed)i  c                    t        j                  |        t        j                  |        t        j                  | t               t        j                  | t               |j                  dt               t        |   |i | y )N)clsobserved_rule)
r   __init__r   r   ChadIslamicHolidaysr   ChadStaticHolidays
setdefaultr   super)selfargskwargs	__class__s      T/var/www/dash_apps/app1/venv/lib/python3.12/site-packages/holidays/countries/chad.pyr   zChad.__init__&   sc    ""4(&&t,  +>?&89/?;$)&)    c                 n   | j                  | j                  d             | j                  | j                  d             | j                  d       | j                  | j	                  d             | j                  | j                  d             | j                  d       | j                  | j                  d             | j                  dk\  r | j                  | j                  d	             | j                  d
       | j                  d       | j                  d       | j                  d       y )NzNew Year's DayzInternational Women's DayzEaster Mondayz
Labour DayzIndependence DayzAll Saints' DayzRepublic Dayi  zFreedom and Democracy DayzChristmas DayzEid al-FitrzEid al-AdhaMawlid)_add_observed_add_new_years_day_add_womens_day_add_easter_monday_add_labor_day_add_holiday_aug_11_add_all_saints_day_add_holiday_nov_28_year_add_holiday_dec_1_add_christmas_day_add_eid_al_fitr_day_add_eid_al_adha_day_add_mawlid_day)r   s    r#   _populate_public_holidayszChad._populate_public_holidays.   s   4223CDE 	4//0KLM 	0 	4..|<= 	4334FGH 	  !23 	433NCD::t667RST 	0 	!!-0 	!!-0 	X&r$   )
__name__
__module____qualname____doc__countryobserved_label
start_yearr   r5   __classcell__)r"   s   @r#   r   r      s#     G$NJ*$'r$   r   c                       e Zd Zy)r   Nr6   r7   r8    r$   r#   r   r   U       r$   r   c                       e Zd Zy)TCDNr?   r@   r$   r#   rC   rC   Y   rA   r$   rC   c                       e Zd Zedfedfedfedfedfedfedfedfed	fd
	Zedfedfedfedfedfedfedfedfe	dfe	dfd
Z
edfedffedfedfedfedfedfedfedfdZy)r                        	      )	                                    
   )
rN   rO   rP   rQ   rR   rS   rT   rU   rV   i                 )rN   rO   rP   rQ   rR   rS   rT   rU   N)r6   r7   r8   r
   r	   r   r   EID_AL_ADHA_DATESr   r   EID_AL_FITR_DATESr   r   r   r   MAWLID_DATESr@   r$   r#   r   r   ]   s    BiBiAhBiBiBiBiAhBi
 BiAhBiBiAhBiBiAhBiBi Qx#r#BiAhBiAhBiBiAh	Lr$   r   c                       e Zd ZdeddfiZy)r   rT      u   Funeral of Idriss Déby ItnoN)r6   r7   r8   r   special_public_holidaysr@   r$   r#   r   r      s    sB67r$   r   N)holidays.calendarsr   holidays.calendars.gregorianr   r   r   r   r   r	   r
   r   r   r   holidays.groupsr   r   r   r   holidays.observed_holiday_baser   r   r   r   rC   r   r   r@   r$   r#   <module>rm      sl    6 Y Y Y  P:'*,A?Tb:'z	 		$ 	#0 #L r$   