
    x7#hv                         d dl mZ d dlmZmZmZ d dlmZ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      Zy)    )JUL)ChristianHolidaysInternationalHolidaysStaticHolidays)ObservedHolidayBaseSAT_TO_NEXT_MON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 )Botswanaa"  Botswana holidays.

    References:
        * <https://www.gov.bw/public-holidays>
        * <https://publicholidays.africa/botswana/2021-dates/>
        * <https://www.timeanddate.com/holidays/botswana/>
        * <http://www.ilo.org/dyn/travail/docs/1766/Public%20Holidays%20Act.pdf>
    BWz%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   BotswanaStaticHolidays
setdefaultr	   super)selfargskwargs	__class__s      [/var/www/api/v1/venv_getwork_v1/lib/python3.12/site-packages/holidays/countries/botswana.pyr   zBotswana.__init__%   sc    ""4(&&t,&<=/?;*D1$)&)    c                    | j                  | j                  d      t               | j                  | j                  d             | j	                  d       | j                  d       | j                  d       | j                  | j                  d      x}       | j                  dk\  r| j                  |d	t        d
       | j                  d       | j                  | j                  d             | j                  d       | j                  d       | j                  | j                  d      t               | j                  | j                  d             | j                  | j!                  d      t               | j                  | j#                  d      x}       | j                  dk\  r| j                  |dt        d
       y y )NzNew Year's Day)rulezNew Year's Day HolidayzGood FridayzHoly SaturdayzEaster Mondayz
Labour Dayi  zLabour Day HolidayF)namer   show_observed_labelzAscension DayzSir Seretse Khama DayzPresident's DayzPresident's Day HolidayzBotswana DayzBotswana Day HolidayzChristmas Dayz
Boxing DayzBoxing Day Holiday)_add_observed_add_new_years_dayr
   _add_new_years_day_two_add_good_friday_add_holy_saturday_add_easter_monday_add_labor_day_yearr   _add_ascension_thursday_add_holiday_jul_1_add_holiday_3rd_mon_of_jul&_add_holiday_1_day_past_3rd_mon_of_jul_add_holiday_sep_30_add_holiday_oct_1_add_christmas_day_add_christmas_day_two)r   may_1dec_26s      r   _populate_public_holidaysz"Botswana._populate_public_holidays-   s   4223CD?[4667OPQm,00D$7$7$EE5F::0\a   	$$_54223JKL(():;334MN433NC/Z4223IJK422?C/ZT%@%@%NN6O::1]b   r   )
__name__
__module____qualname____doc__countryobserved_label
start_yearr   r1   __classcell__)r   s   @r   r   r      s#     G$NJ* r   r   c                       e Zd Zy)r   Nr2   r3   r4    r   r   r   r   P       r   r   c                       e Zd Zy)BWANr;   r<   r   r   r?   r?   T   r=   r   r?   c                       e Zd ZdeddfiZy)r   i     zPublic HolidayN)r2   r3   r4   r   special_public_holidaysr<   r   r   r   r   X   s    sA'(r   r   N)holidays.calendars.gregorianr   holidays.groupsr   r   r   holidays.observed_holiday_baser   r   r	   r
   r   r   r?   r   r<   r   r   <module>rF      sR    - T T 6"$57Ln 6r	 		( 	 r   