
    x7#hN                         d dl m Z d dlmZmZmZmZ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      Z G d de      Z G d	 d
e      Z G d d      Zy)    )gettext)JANMARMAYSEPOCTDEC)ChristianHolidaysInternationalHolidaysStaticHolidays)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 )	
Seychellesa  Seychelles holidays.

    References:
        * <https://www.psb.gov.sc/public-holidays>
        * <https://www.cbs.sc/PublicHolidays.html>
        * [Act 19 of 1976, 1994 Amendment (Oldest Seychelles Holidays Law available online in full)](https://seylii.org/akn/sc/act/1976/19/eng@2012-06-30)
        * [Act 11 of 2014 (Holidays names changed)](https://seylii.org/akn/sc/act/2014/11/eng@2014-08-04)
        * [Act 3 of 2017 (Added Easter Monday, repealing Liberation Day)](https://seylii.org/akn/sc/act/2017/3/eng@2017-04-12)

    Where any public holiday, except Sunday, falls on a Sunday the next following day,
    not being itself a public holiday, shall be a public holiday.
    SCen_SCz%s (observed))r   en_USi  c                     t        j                  |        t        j                  |        t        j                  | t               |j                  dt               t        |   |i | y )Nobserved_rule)r
   __init__r   r   SeychellesStaticHolidays
setdefaultr   super)selfargskwargs	__class__s      ]/var/www/api/v1/venv_getwork_v1/lib/python3.12/site-packages/holidays/countries/seychelles.pyr   zSeychelles.__init__*   sR    ""4(&&t,&>?/?;$)&)    c                    | j                  t        d             | j                  | j                  t        d                   | j	                  t        d             | j                  t        d             | j                  dk\  r| j                  t        d             | j                  | j                  t        d                   | j                  t        d             | j                  d	k  r)| j                  | j                  t        d
                   | j                  | j                  | j                  dk  rt        d      n
t        d                   | j                  | j                  | j                  dk  rt        d      n
t        d                   | j                  | j                  t        d                   | j                  | j                  t        d                   | j                  | j                  t        d                   | j                  | j!                  t        d                   y )NzNew Year's DayzNew Year HolidayzGood FridayzEaster Saturdayi  zEaster Mondayz
Labour DayzThe Fete Dieu  zLiberation Dayi  zNational DayzConstitution DayzIndependence DayzIndependence (National) DayzAssumption DayzAll Saints Dayz&The Feast of the Immaculate ConceptionzChristmas Day)_add_new_years_daytr_add_observed_add_new_years_day_two_add_good_friday_add_holy_saturday_year_add_easter_monday_add_labor_day_add_corpus_christi_day_add_holiday_jun_5_add_holiday_jun_18_add_holiday_jun_29_add_assumption_of_mary_day_add_all_saints_day_add_immaculate_conception_day_add_christmas_day)r   s    r   _populate_public_holidaysz$Seychelles._populate_public_holidays1   s   #3 45 	466r:L7MNO 	b/0 	#4 56::##B$78 	4..r,/?@A 	$$R%89::t66r:J7KLM$$ ::% >" *+	
 	$$ ::% %& 56	
 	4;;B?O<PQR 	433B7G4HIJ//3[0\]	
 	4222o3FGHr   )__name__
__module____qualname____doc__countrydefault_languager#   observed_labelsupported_languages
start_yearr   r3   __classcell__)r   s   @r   r   r      s5     G(N,J*;Ir   r   c                       e Zd Zy)r   Nr4   r5   r6    r   r   r   r   o       r   r   c                       e Zd Zy)SYCNr?   r@   r   r   rC   rC   s   rA   r   rC   c            
           e Zd ZdZ ed      Z ed      Z ed      Z ed      Ze	defe	defe
deffed	efed
effedefed ed      fedefe
defe
deffdZy)r   u  Seychelles special holidays.

    References:
        * <https://seylii.org/akn/sc/act/si/2015/58/eng@2015-12-01>
        * <https://seylii.org/akn/sc/act/si/2015/59/eng@2015-12-11>
        * <https://seylii.org/akn/sc/act/si/2016/58/eng@2016-09-06>
        * <https://seylii.org/akn/sc/act/si/2019/10/eng@2019-03-05>
        * <https://seylii.org/akn/sc/act/si/2019/61/eng@2019-10-18>
        * <https://seylii.org/akn/sc/act/si/2020/134/eng@2020-09-17>
        * <https://seylii.org/akn/sc/act/si/2020/154/eng@2020-10-26>
        * <https://www.statehouse.gov.sc/news/1765/public-holiday-october-1>
        * <https://www.egov.sc/PressRoom/DisplayPressRelease.aspx?PRLID=196>
        * <https://www.nation.sc/archive/216478/saturday-may-12-2007-public-holiday>

    All Election Dates usually proceed from the Outer Islands first, then the Inner Islands, and
    the main capital, Mahé, on the last day. The current implementation only uses the last day,
    as officially decreed in 2007, 2011, 2015, and 2020.
    zBridge Public HolidayzPresidential Election DayzParliamentary Election DayzGeneral Election Day               
      u3   Funeral of the Former President France Albert René         )i  i  i  r!   i  i  N)r4   r5   r6   r7   r#   bridge_public_holidaypresidential_election_dayparliamentary_election_daygeneral_election_dayr   r   r	   r   r   r   special_public_holidaysr@   r   r   r   r   w   s    ( 67 !##> ? "$$@!A 45 B12"/0!/0

 !./"/0
 B23ArOPQ!*+"*+"+,
r   r   N)r   r#   holidays.calendars.gregorianr   r   r   r   r   r	   holidays.groupsr
   r   r   holidays.observed_holiday_baser   r   r   r   rC   r   r@   r   r   <module>rW      sS    " E E T T OXI$&79N XIv	 		* 	2 2r   