
    !gf                     v    d dl m Z d dlmZmZ d dlmZmZ  G d deee      Z G d de      Z	 G d d	e      Z
y
)    )gettext)ChristianHolidaysInternationalHolidays)ObservedHolidayBaseSUN_TO_NEXT_MONc                   H     e Zd ZdZdZdZ ed      ZdZdZ	 fdZ
d Z xZS )	Cubaa|  
    Overview: https://en.wikipedia.org/wiki/Public_holidays_in_Cuba
    1984 (DEC 28): https://bit.ly/3okNBbt
    2007 (NOV 19): https://bit.ly/3oFbhaZ
    2013 (DEC 20): https://bit.ly/3zoO3vC
    Note: for holidays that can be moved to a Monday if they fall on a
    Sunday, between 1984 and 2013, the State Committee of Work and
    Social Security would determine if they would be moved to the
    Monday, or if they would stay on the Sunday, presumably depending
    on quotas. After 2013, they always move to Monday. I could not
    find any records of this, so I implemented this making it always
    go to the next Monday.
    CUesz%s (observado))en_USr   uki  c                     t        j                  |        t        j                  |        |j                  dt               t        |   |i | y )Nobserved_rule)r   __init__r   
setdefaultr   super)selfargskwargs	__class__s      T/var/www/dash_apps/app1/venv/lib/python3.12/site-packages/holidays/countries/cuba.pyr   zCuba.__init__*   sA    ""4(&&t,/?;$)&)    c                     | j                  t        d            }| j                  dk  r| j                  |       | j                  dk\  r| j	                  t        d             | j                  dk\  r| j                  t        d             | j                  | j                  t        d                   | j                  t        d             | j                  t        d	             | j                  t        d             | j                  | j                  t        d
                   | j                  dk  s| j                  dk\  r| j                  t        d             | j                  dk\  r| j                  t        d             y y )Nu   Triunfo de la Revolucióni  i  u   Día de la Victoriai  zViernes Santou&   Día Internacional de los Trabajadoresu#   Conmemoración del asalto a Moncadau   Día de la Rebeldía Nacionalz&Inicio de las Guerras de Independenciai  i  u   Día de Navidadi  u   Fiesta de Fin de Año)_add_holiday_jan_1tr_year_add_observed_add_holiday_jan_2_add_good_friday_add_labor_day_add_holiday_jul_25_add_holiday_jul_26_add_holiday_jul_27_add_holiday_oct_10_add_christmas_day_add_new_years_eve)r   jan_1s     r   _populate_public_holidayszCuba._populate_public_holidays0   sM   ''+F(GH::u% ::##B'<$=> ::!!"_"56 	4..r2Z/[\] 	  $I!JK 	  $C!DE 	  $I!JK 	433B7_4`ab ::t!3##B'8$9: ::##B'>$?@ r   )__name__
__module____qualname____doc__countrydefault_languager   observed_labelsupported_languages
start_yearr   r(   __classcell__)r   s   @r   r	   r	      s6     G()N/J*1Ar   r	   c                       e Zd Zy)r
   Nr)   r*   r+    r   r   r
   r
   d       r   r
   c                       e Zd Zy)CUBNr4   r5   r   r   r8   r8   h   r6   r   r8   N)r   r   holidays.groupsr   r   holidays.observed_holiday_baser   r   r	   r
   r8   r5   r   r   <module>r;      s@    " D ONA 13H NAb	 		$ 	r   