
    \hB                         S SK J r  S SKJrJrJrJr  S SKJrJ	r	J
r
  S SKJrJr  S SKJrJrJrJr   " S S\\\5      r " S S	\5      r " S
 S\5      rg)    )gettext)APRTHU
_timedelta_get_nth_weekday_of_month)HALF_DAYOPTIONALPUBLIC)ChristianHolidaysInternationalHolidays)ObservedHolidayBaseMON_ONLYTUE_TO_NONESAT_TO_NONEc                     ^  \ rS rSrSrSrSrSrSr0 SS_S	S
_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS _S!S"_S#S$_S%S&S'S(S)S*S+S,S-S.S/S/S0S1S2.Er	\
\\4rS3rU 4S4 jrS5 rS6 rS7 rS8 rS9 rS: rS; rS< rS= rS> rS? rS@ rSA rSB rSC rSD rSE r SF r!SG r"SH r#SI r$SJ r%SK r&SL r'SM r(SN r)SO r*SP r+SQ r,SR r-SS r.ST r/SU r0SV r1SW r2SX r3SY r4SZ r5S[r6U =r7$ )\Switzerland   a;  Switzerland holidays.

References:
    * <https://web.archive.org/web/20250201054902/https://www.bj.admin.ch/dam/bj/de/data/publiservice/service/zivilprozessrecht/kant-feiertage.pdf>
    * <https://de.wikipedia.org/wiki/Feiertage_in_der_Schweiz>
    * <https://en.wikipedia.org/wiki/Public_holidays_in_Switzerland>
CHdei	  )AGAIARBEBLBSFRGEGLGRJULUNENWOWSGSHSOSZTGTIURVDVSZGZHAargaur   zAppenzell Innerrhodenr   zAppenzell Ausserrhodenr   Bernr   BernezBasel-Landschaftr   zBasel-Stadtr   Freiburgr   Fribourgu   Genèver   Glarusr   u   Graubündenr   GrigioniGrischunJurar    Luzernr!   u
   Neuchâtelr"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   )	NidwaldenObwaldenzSankt GallenSchaffhausen	SolothurnSchwyzThurgauTicinoUriVaudValaisWallisZugu   Zürich)r   en_USfritukc                 ~   > [         R                  " U 5        [        R                  " U 5        [        TU ]  " U0 UD6  g )N)r   __init__r   super)selfargskwargs	__class__s      qC:\Users\julio\OneDrive\Documentos\Trabajo\Ideas Frescas\venv\Lib\site-packages\holidays/countries/switzerland.pyrK   Switzerland.__init__a   s1    ""4(&&t,$)&)    c                     U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        g )NNeujahrstagAuffahrtNationalfeiertagWeihnachten)_add_new_years_daytr_add_ascension_thursday_add_holiday_aug_1_add_christmas_dayrM   s    rQ   _populate_public_holidays%Switzerland._populate_public_holidaysf   sT    = 12 	$$R
^4 	#5 67 	= 12rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S	5      5        U R                  [        S
5      5        g )NBerchtoldstag
KarfreitagOstermontagTag der ArbeitPfingstmontagFronleichnam   Mariä HimmelfahrtAllerheiligen   Mariä EmpfängnisStephanstag)_add_new_years_day_tworZ   _add_good_friday_add_easter_monday_add_labor_day_add_whit_monday_add_corpus_christi_day_add_assumption_of_mary_day_add_all_saints_day_add_immaculate_conception_day_add_christmas_day_twor^   s    rQ   #_populate_subdiv_ag_public_holidays/Switzerland._populate_subdiv_ag_public_holidayss   s    ##B$78 	b./ 	= 12 	B/01 	b12 	$$R%78 	((,@)AB 	  O!45 	++B/C,DE 	##B}$56rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  U R                  [        S5      5      [        [        -   S9  g )Nrc   rd   rf   rk   rule)rm   rZ   rn   rp   _add_observedru   r   r   r^   s    rQ   #_populate_subdiv_ar_public_holidays/Switzerland._populate_subdiv_ar_public_holidays   sh    b./= 12b12''=(9:{AZ 	 	
rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  U R                  [        S5      5      [        [        -   S	9  g )
Nrc   rd   rf   rg   rh   ri   rj   rk   ry   )rm   rZ   rn   rp   rq   rr   rs   rt   r{   ru   r   r   r^   s    rQ   #_populate_subdiv_ai_public_holidays/Switzerland._populate_subdiv_ai_public_holidays   s    b./= 12b12$$R%78((,@)AB  O!45++B/C,DE''=(9:{AZ 	 	
rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        g Nrc   rd   re   rf   rk   rm   rZ   rn   ro   rp   ru   r^   s    rQ   #_populate_subdiv_bl_public_holidays/Switzerland._populate_subdiv_bl_public_holidays   b    b./= 12B/01b12##B}$56rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        g r   r   r^   s    rQ   #_populate_subdiv_bs_public_holidays/Switzerland._populate_subdiv_bs_public_holidays   r   rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        g )Nrb   rc   rd   rf   rk   )rl   rZ   rm   rn   rp   ru   r^   s    rQ   #_populate_subdiv_be_public_holidays/Switzerland._populate_subdiv_be_public_holidays   sa    ##B$78b./= 12b12##B}$56rS   c                 8    U R                  [        S5      5        g Nrc   rm   rZ   r^   s    rQ   #_populate_subdiv_fr_public_holidays/Switzerland._populate_subdiv_fr_public_holidays       b./rS   c                     U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        g Nrb   rd   rf   rk   rl   rZ   rn   rp   ru   r^   s    rQ   %_populate_subdiv_fr_optional_holidays1Switzerland._populate_subdiv_fr_optional_holidays   N    ##B$78= 12b12##B}$56rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        g )Nrc   rd   rf   zGenfer BettagzWiederherstellung der Republik)rm   rZ   rn   rp   '_add_holiday_4_days_past_1st_sun_of_sep_add_holiday_dec_31r^   s    rQ   #_populate_subdiv_ge_public_holidays/Switzerland._populate_subdiv_ge_public_holidays   sf    b./= 12b12 	44R5HI 	  $D!EFrS   c                    U R                   S:  aa  [        S[        [        U R                   5      nU R	                  [        S5      U[        U R                  S5      :X  a  [        US5      OU5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S	5      5        U R                  [        S
5      5        g )Ni+     u   Näfelser Fahrt   rc   rd   rf   ri   rk   )_yearr   r   r   _add_holidayrZ   r   _easter_sundayrm   rn   rp   rs   ru   )rM   dts     rQ   #_populate_subdiv_gl_public_holidays/Switzerland._populate_subdiv_gl_public_holidays   s    ::*1c3

CB$%&(Jt7J7JB,O&O
2r"UW 	b./= 12b12  O!45##B}$56rS   c                 8    U R                  [        S5      5        g Nrb   rl   rZ   r^   s    rQ   %_populate_subdiv_gl_optional_holidays1Switzerland._populate_subdiv_gl_optional_holidays       ##B$78rS   c                     U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        g )Nrd   rf   rk   )rn   rZ   rp   ru   r^   s    rQ   #_populate_subdiv_gr_public_holidays/Switzerland._populate_subdiv_gr_public_holidays  s;    = 12b12##B}$56rS   c                 8    U R                  [        S5      5        g r   r   r^   s    rQ   %_populate_subdiv_gr_optional_holidays1Switzerland._populate_subdiv_gr_optional_holidays  r   rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S	5      5        g )
Nrb   rc   rd   re   rf   rg   u   Fest der Unabhängigkeitrh   ri   )
rl   rZ   rm   rn   ro   rp   rq   _add_holiday_jun_23rr   rs   r^   s    rQ   #_populate_subdiv_ju_public_holidays/Switzerland._populate_subdiv_ju_public_holidays  s    ##B$78b./= 12B/01b12$$R%78 	  $>!?@((,@)AB  O!45rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S	5      5        g )
Nrb   rc   rd   rf   rg   rh   ri   rj   rk   )
rl   rZ   rm   rn   rp   rq   rr   rs   rt   ru   r^   s    rQ   #_populate_subdiv_lu_public_holidays/Switzerland._populate_subdiv_lu_public_holidays  s    ##B$78b./= 12b12$$R%78((,@)AB  O!45++B/C,DE##B}$56rS   c                    U R                  U R                  [        S5      5      [        S9  U R	                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  U R                  [        S5      5      [        S9  g )Nrb   ry   z$Jahrestag der Ausrufung der Republikrc   re   rg   rk   )	r{   rl   rZ   r   _add_holiday_mar_1rm   ro   rq   ru   r^   s    rQ   #_populate_subdiv_ne_public_holidays/Switzerland._populate_subdiv_ne_public_holidays2  s    ''?(;< 	 	
 	#I JKb./B/01$$R%78466r-7HIPXYrS   c                 <   U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        g )N	Josefstagrc   rg   rh   ri   rj   )_add_saint_josephs_dayrZ   rm   rq   rr   rs   rt   r^   s    rQ   #_populate_subdiv_nw_public_holidays/Switzerland._populate_subdiv_nw_public_holidaysC  su    ##B{O4b./$$R%78((,@)AB  O!45++B/C,DErS   c                     U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        g r   r   r^   s    rQ   %_populate_subdiv_nw_optional_holidays1Switzerland._populate_subdiv_nw_optional_holidaysQ  r   rS   c                 <   U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        g )Nrc   rg   rh   zBruder Klausri   rj   )rm   rZ   rq   rr   _add_holiday_sep_25rs   rt   r^   s    rQ   #_populate_subdiv_ow_public_holidays/Switzerland._populate_subdiv_ow_public_holidaysZ  sx    b./$$R%78((,@)AB 	  N!34  O!45++B/C,DErS   c                     U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        g r   r   r^   s    rQ   %_populate_subdiv_ow_optional_holidays1Switzerland._populate_subdiv_ow_optional_holidaysh  r   rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        g )Nrc   rd   rf   ri   rk   )rm   rZ   rn   rp   rs   ru   r^   s    rQ   #_populate_subdiv_sg_public_holidays/Switzerland._populate_subdiv_sg_public_holidaysq  sa    b./= 12b12  O!45##B}$56rS   c                 8    U R                  [        S5      5        g r   r   r^   s    rQ   %_populate_subdiv_sg_optional_holidays1Switzerland._populate_subdiv_sg_optional_holidays|  r   rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        g r   r   r^   s    rQ   #_populate_subdiv_sh_public_holidays/Switzerland._populate_subdiv_sh_public_holidays  r   rS   c                 8    U R                  [        S5      5        g r   r   r^   s    rQ   %_populate_subdiv_sh_optional_holidays1Switzerland._populate_subdiv_sh_optional_holidays  r   rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S	5      5        U R                  [        S
5      5        g )N   Heilige Drei Königer   rc   rd   rf   rg   rh   ri   rj   rk   )_add_epiphany_dayrZ   r   rm   rn   rp   rq   rr   rs   rt   ru   r^   s    rQ   #_populate_subdiv_sz_public_holidays/Switzerland._populate_subdiv_sz_public_holidays  s    r"89:##B{O4b./= 12b12$$R%78((,@)AB  O!45++B/C,DE##B}$56rS   c                 8    U R                  [        S5      5        g r   r   r^   s    rQ   #_populate_subdiv_so_public_holidays/Switzerland._populate_subdiv_so_public_holidays  r   rS   c                 8    U R                  [        S5      5        g )Nre   )ro   rZ   r^   s    rQ   %_populate_subdiv_so_half_day_holidays1Switzerland._populate_subdiv_so_half_day_holidays  s    B/01rS   c                 8    U R                  [        S5      5        g r   r   r^   s    rQ   %_populate_subdiv_so_optional_holidays1Switzerland._populate_subdiv_so_optional_holidays  r   rS   c                 <   U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        g )Nrb   re   rc   rd   rf   rk   )rl   rZ   ro   rm   rn   rp   ru   r^   s    rQ   #_populate_subdiv_tg_public_holidays/Switzerland._populate_subdiv_tg_public_holidays  su    ##B$78B/01b./= 12b12##B}$56rS   c                 @   U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S	5      5        U R                  [        S
5      5        U R                  [        S5      5        g )Nr   r   rd   re   rf   rg   zPeter und Paulrh   ri   rj   rk   )r   rZ   r   rn   ro   rp   rq   _add_saints_peter_and_paul_dayrr   rs   rt   ru   r^   s    rQ   #_populate_subdiv_ti_public_holidays/Switzerland._populate_subdiv_ti_public_holidays  s    r"89:##B{O4= 12B/01b12$$R%78 	++B/?,@A((,@)AB  O!45++B/C,DE##B}$56rS   c                 >   U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R                  [        S	5      5        U R                  U R                  [        S
5      5      [        [        -   S9  g )Nr   r   rc   rd   rf   rg   rh   ri   rj   rk   ry   )r   rZ   r   rm   rn   rp   rq   rr   rs   rt   r{   ru   r   r   r^   s    rQ   #_populate_subdiv_ur_public_holidays/Switzerland._populate_subdiv_ur_public_holidays  s    r"89:##B{O4b./= 12b12$$R%78((,@)AB  O!45++B/C,DE''=(9:{AZ 	 	
rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        g )Nrb   rc   rd   rf   Bettagsmontag)rl   rZ   rm   rn   rp   &_add_holiday_1_day_past_3rd_sun_of_sepr^   s    rQ   #_populate_subdiv_vd_public_holidays/Switzerland._populate_subdiv_vd_public_holidays  sc    ##B$78b./= 12b12 	33B4GHrS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        g )Nr   rg   rh   ri   rj   )r   rZ   rq   rr   rs   rt   r^   s    rQ   #_populate_subdiv_vs_public_holidays/Switzerland._populate_subdiv_vs_public_holidays  sb    ##B{O4$$R%78((,@)AB  O!45++B/C,DErS   c                     U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        g r   r   r^   s    rQ   %_populate_subdiv_vs_optional_holidays1Switzerland._populate_subdiv_vs_optional_holidays  r   rS   c                    U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        g )Nrc   rg   rh   ri   rj   )rm   rZ   rq   rr   rs   rt   r^   s    rQ   #_populate_subdiv_zg_public_holidays/Switzerland._populate_subdiv_zg_public_holidays  sc    b./$$R%78((,@)AB  O!45++B/C,DErS   c                     U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        g r   r   r^   s    rQ   %_populate_subdiv_zg_optional_holidays1Switzerland._populate_subdiv_zg_optional_holidays  r   rS   c                 <   U R                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        U R	                  [        S5      5        U R                  [        S5      5        U R                  [        S5      5        g )Nrb   rc   rd   re   rf   rk   )rl   rZ   rm   rn   ro   rp   ru   r^   s    rQ   #_populate_subdiv_zh_public_holidays/Switzerland._populate_subdiv_zh_public_holidays  su    ##B$78b./= 12B/01b12##B}$56rS    )8__name__
__module____qualname____firstlineno____doc__countrydefault_language
start_yearsubdivisionssubdivisions_aliasesr   r	   r
   supported_categoriessupported_languagesrK   r_   rv   r|   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  __static_attributes____classcell__)rP   s   @rQ   r   r      s    GJL8 $   	!$  		 
 	  	D  	t  	D  	D  	4  	$  	t  	D  	D  	   	$! " 	d# $ ? B %h7;*
37>	

&	7	7	707G7(9706(7&Z"F7F7	79	797,029770
.
I	F7	F77 7rS   r   c                       \ rS rSrSrg)r   i*  r  Nr  r  r	  r
  r  r  rS   rQ   r   r   *      rS   r   c                       \ rS rSrSrg)CHEi.  r  Nr  r  rS   rQ   r  r  .  r  rS   r  N)r   rZ   holidays.calendars.gregorianr   r   r   r   holidays.constantsr   r	   r
   holidays.groupsr   r   holidays.observed_holiday_baser   r   r   r   r   r   r  r  rS   rQ   <module>r     sM    " X X 9 9 D b bR7%'8:O R7j	 		+ 	rS   