
    x7#hV                         d dl Z d dlmZmZ d dlmZmZmZ d dlm	Z	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e      Z G d d      Zy)    N)JANDEC)ChristianHolidaysInternationalHolidaysStaticHolidays)ObservedHolidayBaseSUN_TO_NEXT_MONSUN_TO_NEXT_TUEc                   4     e Zd ZdZdZdZdZ fdZd Z xZ	S )EswatinizEswatini holidays.

    References:
        * <https://swazilii.org/sz/legislation/act/1938/71>
        * <https://www.officeholidays.com/countries/swaziland>
    SZz%s (observed)i  c                     t        j                  |        t        j                  |        t        j                  | t               |j                  dt               |j                  dd       t        |   |i | y )N)clsobserved_ruleobserved_sincei  )r   __init__r   r   EswatiniStaticHolidays
setdefaultr	   superselfargskwargs	__class__s      [/var/www/api/v1/venv_getwork_v1/lib/python3.12/site-packages/holidays/countries/eswatini.pyr   zEswatini.__init__    sc    ""4(&&t,*@A/?;*D1$)&)    c                 D   | j                  | j                  d             | j                  d       | j                  d       | j	                  d       | j
                  dk\  r=| j                  | j                  d      x}|| j                  k(  rt        nt               | j
                  dk\  r=| j                  | j                  d	      x}|| j                  k(  rt        nt               | j                  | j                  d
             | j
                  dk\  r | j                  | j                  d             | j                  | j                  d             | j                  | j                  d      t               | j                  | j                  d             y )NzNew Year's DayzGood FridayzEaster MondayzAscension Dayi  zKing's Birthday)rulei  zNational Flag DayzWorker's Dayi  zBirthday of Late King SobhuzazIndependence DayzChristmas Dayz
Boxing Day)_add_observed_add_new_years_day_add_good_friday_add_easter_monday_add_ascension_thursday_year_add_holiday_apr_19_easter_sundayr
   r	   _add_holiday_apr_25_add_labor_day_add_holiday_jul_22_add_holiday_sep_6_add_christmas_day_add_christmas_day_two)r   apr_19apr_25s      r   _populate_public_holidaysz"Eswatini._populate_public_holidays(   sd   4223CDEm,0$$_5::223DEE(.$2E2E(E_?  
 ::223FGG(.$2E2E(E_?  
 	4..~>?::t778WXY4223EFG422?C/Z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d fdZ xZS )	Swazilandc                 X    t        j                  dt               t        |   |i | y )Nz.Swaziland is deprecated, use Eswatini instead.)warningswarnDeprecationWarningr   r   r   s      r   r   zSwaziland.__init__J   s%    FHZ[$)&)r   )returnN)r0   r1   r2   r   r7   r8   s   @r   r:   r:   I   s    * *r   r:   c                       e Zd Zy)r   Nr0   r1   r2    r   r   r   r   P       r   r   c                       e Zd Zy)SZWNrA   rB   r   r   rE   rE   T   rC   r   rE   c                   "    e Zd ZeddfeddfdZy)r      zY2K changeover   )i  i  N)r0   r1   r2   r   r   special_public_holidaysrB   r   r   r   r   X   s"     B()A'(r   r   )r<   holidays.calendars.gregorianr   r   holidays.groupsr   r   r   holidays.observed_holiday_baser   r	   r
   r   r:   r   rE   r   rB   r   r   <module>rM      s_     1 T T ` `2F"$57Ln 2Fj* *	 		( 	 r   