
    ih)q                       d dl mZ d dlmZ d dlmZ d dlmZmZm	Z	m
Z
 d dlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ d dlmZmZmZmZm Z m!Z!m"Z" d dl#m$Z$m%Z%m&Z&m'Z' erd dl(m)Z)  G d	 d
e$eeeee e!e"
      Z* G d de*      Z+ G d de*      Z, G d de      Z- G d de      Z. G d de	      Z/ G d de
      Z0 G d d      Z1y)    )annotations)gettext)TYPE_CHECKING)_CustomBuddhistHolidays_CustomChineseHolidays_CustomHinduHolidays_CustomIslamicHolidays)JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDECFRISATSUN)BuddhistCalendarHolidaysChineseCalendarHolidaysChristianHolidaysHinduCalendarHolidaysInternationalHolidaysIslamicHolidaysStaticHolidays)ObservedHolidayBaseFRI_TO_NEXT_WORKDAYSAT_TO_NEXT_WORKDAYSUN_TO_NEXT_WORKDAY)datec                  t    e Zd ZdZdZdZ ed      Z ed      Z ed      Z	dZ
dZi d	d
dd
ddddddddddddddddddddddddddd dd!d"d"d#d#d$d$d%d%d&d&d'd'd(d(d)d)d*Zd+Zd,d-dB fd.ZdCd/Zd0 Z fd1Zd2 Zd3 Zd4 Zd5 Zd6 Zd7 Zd8 Zd9 Zd: Zd; Zd< Zd= Zd> Zd? Zd@ Z dA Z! xZ"S )DMalaysiaa  Malaysia holidays.

    References:
        * [Holidays Act 1951](https://web.archive.org/web/20241202103403/https://www.kabinet.gov.my/bkpp/pdf/akta_warta/1951_12_31_act369.pdf)
        * [Holidays Ordinance (Sabah Cap. 56)](https://web.archive.org/web/20201028045259/https://sagc.sabah.gov.my/sites/default/files/law/HolidaysOrdinance.pdf)
        * [Public Holidays Ordinance (Sarawak Cap. 8)](https://web.archive.org/web/20221208142318/https://www.kabinet.gov.my/bkpp/pdf/akta_warta/sarawak_public_holidays_ord_chapter8.pdf)
        * [Wikipedia](https://en.wikipedia.org/wiki/Public_holidays_in_Malaysia)
        * <https://web.archive.org/web/20250123115300/https://www.nst.com.my/news/nation/2020/03/571660/agongs-birthday-moved-june-6-june-8>
        * <https://web.archive.org/web/20240228225038/https://www.nst.com.my/news/nation/2024/02/1014012/melaka-cm-suggests-declaring-feb-20-federal-public-holiday-mark>

    Section 3 of Holidays Act 1951:
    > If any day specified in the Schedule falls on Sunday then the day following shall be
    > a public holiday and if such day is already a public holiday, then the day following
    > shall be a public holiday".

    In Johor (until 1994 and in 2014-2024) and Kedah it's Friday to Sunday,
    in Kelantan and Terengganu - Saturday to Sunday.
    MYms_MYz%s (anggaran)zCuti %szCuti %s (anggaran)i  )01020304050607080910111213141516Johorr)   JHRKedahr*   KDHKelantanr+   KTNMelakar,   MLKzNegeri Sembilanr-   NSNPahangr.   PHGzPulau Pinangr/   PNGPerakr0   PRKPerlisr1   r2   r3   r4   r5   r6   r7   r8   )PLSSelangorSGR
TerengganuTRGSabahSBHSarawakSWKz Wilayah Persekutuan Kuala LumpurKULzWilayah Persekutuan LabuanLBNzWilayah Persekutuan PutrajayaPJY)en_USr(   thT)islamic_show_estimatedc                  t        j                  | t        d       t        j                  | t        d       t        j                  |        t        j                  | t               t        j                  |        t        j                  | t        |       t        j                  | t               |j                  dt               t        |   |i | y)z
        Args:
            islamic_show_estimated:
                Whether to add "estimated" label to Islamic holidays name
                if holiday date is estimated.
        T)clsshow_estimated)rX   observed_ruleN)r   __init__MalaysiaBuddhistHolidaysr   MalaysiaChineseHolidaysr   r   MalaysiaHinduHolidaysr   r   MalaysiaIslamicHolidaysr   MalaysiaStaticHolidays
setdefaultr#   super)selfrV   argskwargs	__class__s       [/var/www/api/v1/venv_fitandmore/lib/python3.12/site-packages/holidays/countries/malaysia.pyr[   zMalaysia.__init__   s     	!))$4L]ab((3J[_`""4(&&t1FG&&t,  ->T	
 	*@A/+>?$)&)    c                    | j                   dk(  r&|j                  dk  s%d|j                  cxk  rdk  sn | j                   dv rt        t        hS t        t        hS )Nr)         >   r*   r+   r3   )subdivyearr   r   r   )rc   dts     rg   _get_weekendzMalaysia._get_weekend   sI    KK4RWW_8O48O[[..::rh   c                   t               | _        | j                  j                  | j                  t	        d                   | j                  j                  | j                  t	        d                   | j                  j                  | j                  t	        d                   | j                  dk\  r3| j                  j                  | j                  t	        d                   t	        d      }| j                  dk  r+| j                  j                  | j                  |             n| j                  dk  r+| j                  j                  | j                  |             nd| j                  d	k(  r+| j                  j                  | j                  |             n*| j                  j                  | j                  |             | j                  j                  | j                  t	        d
                   | j                  dk\  r3| j                  j                  | j                  t	        d                   | j                  j                  | j                  t	        d                   | j                  dk\  r| j!                  t	        d             | j                  j#                  | j%                  t	        d                   | j                  j#                  | j'                  t	        d                   | j                  j#                  | j)                  t	        d                   | j                  j#                  | j+                  t	        d                   y )NzTahun Baharu CinazTahun Baharu Cina (Hari Kedua)z
Hari Wesaki  Hari Pekerjaz?Hari Keputeraan Rasmi Seri Paduka Baginda Yang di-Pertuan Agong      zHari Kebangsaan  zHari MalaysiazHari Krismasi  zAwal Muharamz$Hari Keputeraan Nabi Muhammad S.A.W.zHari Raya PuasazHari Raya Puasa (Hari Kedua)Hari Raya Qurban)setdts_observedadd_add_chinese_new_years_daytr_add_chinese_new_years_day_two_add_vesak_may_year_add_labor_day_add_holiday_1st_sat_of_jun_add_holiday_sep_9_add_holiday_jun_8_add_holiday_1st_mon_of_jun_add_holiday_aug_31_add_holiday_sep_16_add_christmas_day_add_islamic_new_year_dayupdate_add_mawlid_day_add_eid_al_fitr_day_add_eid_al_fitr_day_two_add_eid_al_adha_dayrc   names     rg   _populate_public_holidaysz"Malaysia._populate_public_holidays   s   E 	d==bAT>UVW//3S0TU	
 	d11"\2BCD::!!$"5"5b6H"IJ ST::!!$"B"B4"HIZZ4!!$"9"9$"?@ZZ4!!$"9"9$"?@!!$"B"B4"HI 	d66r:K7LMN::!!$":":2o;N"OP 	d55b6HIJ::**2n+=> 	  !5!5b9_6`!ab 	  !:!:2>O;P!QR 	  !>!>rB`?a!bc 	  !:!:2>P;Q!RSrh   c                   | j                   rA| j                   dvr3| j                  j                  | j                  t	        d                   t
        |           | j                   dk(  r&| j                  dk  s&d| j                  cxk  rdk  sn | j                   dk(  rt        | _	        n%| j                   dv rt        | _	        nt        | _	        | j                  r| j                  | j                         y y )	N>   r5   r7   Hari Deepavalir)   rj   rk   rl   r*   >   r+   r3   )rm   ry   rz   _add_diwalir|   rb   _populate_subdiv_holidaysr   r!   _observed_ruler"   r#   observed_populate_observed)rc   rf   s    rg   r   z"Malaysia._populate_subdiv_holidays   s    ;;4;;l:!!$"2"226F3G"HI)+ KK4TZZ4%744::;UQU;U[[D "5D[[L("5D"5D==##D$5$56 rh   c                t   | j                   j                  | j                  t        d                   | j                  dk\  r| j                  t        d             | j                  dk\  r| j                  t        d             | j                   j                  | j                  t        d                   y )NHari Thaipusam  zHari Keputeraan Sultan Johor  z!Hari Hol Almarhum Sultan IskandarAwal Ramadan)	ry   rz   _add_thaipusamr|   r   _add_holiday_mar_23_add_hari_hol_johorr   _add_ramadan_beginning_dayrc   s    rg   #_populate_subdiv_01_public_holidaysz,Malaysia._populate_subdiv_01_public_holidays   s    d11"5E2FGH::$$R(F%GH::$$R(K%LM 	  !@!@NAS!TUrh   c                R   | j                   dk\  r3| j                  j                  | j                  t	        d                   | j                   dk\  r=t	        d      }| j                   dk(  r| j                  |       n| j                  |       | j                  j                  | j                  t	        d                   | j                  j                  | j                  t	        d                   | j                  j                  | j                  t	        d                   y )	N  r     zHari Keputeraan Sultan Kedahrl   Israk dan Mikrajr   Hari Raya Qurban (Hari Kedua))r   ry   rz   r   r|   _add_holiday_jun_30_add_holiday_3rd_sun_of_junr   _add_isra_and_miraj_dayr   _add_eid_al_adha_day_twor   s     rg   #_populate_subdiv_02_public_holidaysz,Malaysia._populate_subdiv_02_public_holidays  s    ::!!$"5"5b9I6J"KL::45DzzT!((.006 	  !=!=bAS>T!UV 	  !@!@NAS!TU 	  ))"-L*MN	
rh   c                   | j                   dk\  rt        d      }| j                   dk\  r#| j                  |       | j                  |       nT| j                   dk\  r#| j	                  |       | j                  |       n"| j                  |       | j                  |       | j                  j                  | j                  t        d                   | j                   dk\  r3| j                  j                  | j                  t        d                   | j                  j                  | j                  t        d                   y )Nrv   zHari Keputeraan Sultan Kelantan    Hari Nuzul Al-QuranHari Arafahr   )r   r|   _add_holiday_sep_29_add_holiday_sep_30_add_holiday_nov_11_add_holiday_nov_12_add_holiday_mar_30_add_holiday_mar_31ry   r   _add_nuzul_al_quran_day_add_arafah_dayr   r   s     rg   #_populate_subdiv_03_public_holidaysz,Malaysia._populate_subdiv_03_public_holidays%  s   ::78DzzT!((.((.t#((.((.((.((. 	  !=!=bAV>W!XY::$$T%9%9"]:K%LM 	  ))"-L*MN	
rh   c                
   | j                   j                  | j                  t        d                   | j                  dk\  r4| j                   j                  | j                  t        d                   nB| j                  dk\  r3| j                   j                  | j                  t        d                   t        d      }| j                   j                  | j                  dk\  r| j                  |      n| j                  |             | j                  dk\  r4| j                   j                  | j                  t        d	                   y | j                   j                  | j                  t        d
                   y )NTahun Baharurl   z&Hari Pengisytiharan Tarikh Kemerdekaani  z6Hari Perisytiharan Melaka Sebagai Bandaraya Bersejarahz&Hari Jadi Yang di-Pertua Negeri Melakaru     zHari Raya Puasa (Hari Ketiga)r   )ry   rz   _add_new_years_dayr|   r   _add_holiday_feb_20_add_holiday_apr_15_add_holiday_aug_24_add_holiday_2nd_fri_of_octr   _add_eid_al_fitr_day_threer   r   s     rg   #_populate_subdiv_04_public_holidaysz,Malaysia._populate_subdiv_04_public_holidays?  s:   d55b6HIJ::!!((,T)UV ZZ4!!((OP :;zzT! $$T*11$7	
 ::$$//3R0ST $$T%D%DREW%XYrh   c                   | j                   j                  | j                  t        d                   | j                   j                  | j	                  t        d                   | j
                  dk\  r3| j                   j                  | j                  t        d                   | j                   j                  | j                  t        d                   y )Nr   r     z5Hari Keputeraan Yang di-Pertuan Besar Negeri Sembilanr   )	ry   rz   r   r|   r   r   _add_holiday_jan_14r   r   r   s    rg   #_populate_subdiv_05_public_holidaysz,Malaysia._populate_subdiv_05_public_holidaysa  s    d55b6HIJ 	d11"5E2FGH::!!((NO 	  !=!=bAS>T!UVrh   c                B   | j                   j                  | j                  t        d                   | j                  dk\  rt        d      }| j                   j                  | j                  dk\  r| j                  |      n| j                  |             t        d      }| j                   j                  | j                  dk\  r| j                  |      n| j                  |             | j                   j                  | j                  t        d                   y )Nr   i  zHari Hol Sultan Pahangru   zHari Keputeraan Sultan Pahangrt   r   )ry   rz   r   r|   r   _add_holiday_may_22_add_holiday_may_7_add_holiday_jul_30_add_holiday_oct_24r   r   r   s     rg   #_populate_subdiv_06_public_holidaysz,Malaysia._populate_subdiv_06_public_holidayss  s    d55b6HIJ::./D!!::% ((.,,T2 56D!!::% ((.--d3 	  !=!=bAV>W!XYrh   c                    | j                   j                  | j                  t        d                   | j                   j                  | j	                  t        d                   | j
                  dk\  r3| j                   j                  | j                  t        d                   | j                   j                  | j                  t        d                   | j                   j                  | j                  t        d                   y )Nr   r   r   z2Hari Ulang Tahun Perisytiharan Tapak Warisan Duniaz,Hari Jadi Yang di-Pertua Negeri Pulau Pinangr   )
ry   rz   r   r|   r   r   _add_holiday_jul_7_add_holiday_2nd_sat_of_julr   r   r   s    rg   #_populate_subdiv_07_public_holidaysz,Malaysia._populate_subdiv_07_public_holidays  s    d55b6HIJ 	d11"5E2FGH::!!''+_(`a
 	,,R0^-_`	
 	  !=!=bAV>W!XYrh   c                   | j                   j                  | j                  t        d                   | j                   j                  | j	                  t        d                   t        d      }| j
                  dk\  r| j                  |       n| j                  |       | j                   j                  | j                  t        d                   y )Nr   r   zHari Keputeraan Sultan Perakr   r   )
ry   rz   r   r|   r   r   _add_holiday_1st_fri_of_nov_add_holiday_nov_27r   r   r   s     rg   #_populate_subdiv_08_public_holidaysz,Malaysia._populate_subdiv_08_public_holidays  s    d55b6HIJ 	d11"5E2FGH 01::,,T2$$T* 	  !=!=bAV>W!XYrh   c                   | j                   dk\  r^t        d      }| j                  j                  d| j                   cxk  rdk  rn n| j	                  |      n| j                  |             | j                  j                  | j                  t        d                   | j                  j                  | j                  t        d                   | j                  j                  | j                  t        d                   y )N  z'Hari Ulang Tahun Keputeraan Raja Perlisr     r   r   r   )
r   r|   ry   rz   _add_holiday_jul_17_add_holiday_may_17r   r   r   r   r   s     rg   #_populate_subdiv_09_public_holidaysz,Malaysia._populate_subdiv_09_public_holidays  s    ::?@D!!4::-- ((.--d3 	  !=!=bAS>T!UV 	  !=!=bAV>W!XY 	  ))"-L*MN	
rh   c                   | j                   j                  | j                  t        d                   | j                   j                  | j	                  t        d                   | j                   j                  | j                  t        d                   | j                   j                  | j                  t        d                   y )Nr   r   zHari Keputeraan Sultan Selangorr   )ry   rz   r   r|   r   _add_holiday_dec_11r   r   r   s    rg   #_populate_subdiv_10_public_holidaysz,Malaysia._populate_subdiv_10_public_holidays  s    d55b6HIJ 	d11"5E2FGH 	d66r:[7\]^ 	  !=!=bAV>W!XYrh   c                   | j                   dk\  rf| j                  j                  | j                  t	        d                   | j                  j                  | j                  t	        d                   | j                   dk\  r3| j                  j                  | j                  t	        d                   | j                  j                  | j                  t	        d                   | j                  j                  | j                  t	        d                   | j                  j                  | j                  t	        d                   y )	Nr   z-Hari Ulang Tahun Pertabalan Sultan Terengganuz!Hari Keputeraan Sultan Terengganuru   r   r   r   r   )r   ry   rz   _add_holiday_mar_4r|   _add_holiday_apr_26r   r   r   r   r   r   s    rg   #_populate_subdiv_11_public_holidaysz,Malaysia._populate_subdiv_11_public_holidays  s   ::!!''FG !!((,O)PQ
 ::$$T%A%A"EWBX%YZ 	  !=!=bAV>W!XY 	  !5!5b6G!HI  ))"-L*MN	
rh   c                   | j                   j                  | j                  t        d                   | j	                  t        d             t        d      }| j                  |       | j                  |       | j                  t        d             | j                  dk\  r| j                  t        d             y y )Nr   Good FridayPesta Kaamatanz%Hari Jadi Yang di-Pertua Negeri Sabahrt   zChristmas Eve)
ry   rz   r   r|   _add_good_friday_add_holiday_may_30_add_holiday_may_31_add_holiday_1st_sat_of_octr   _add_christmas_ever   s     rg   #_populate_subdiv_12_public_holidaysz,Malaysia._populate_subdiv_12_public_holidays  s    d55b6HIJ 	b/0 "#  &  & 	((,S)TU::##B$78 rh   c                4   | j                   j                  | j                  t        d                   | j	                  t        d             | j
                  dk\  r_t        d      }| j                   j                  | j                  |             | j                   j                  | j                  |             | j                  t        d             | j
                  dk\  r4| j                   j                  | j                  t        d                   y y )Nr   r   i  zPerayaan Hari Gawai Dayakz'Hari Jadi Yang di-Pertua Negeri Sarawak  zHari Kemerdekaan Sarawak)
ry   rz   r   r|   r   r   _add_holiday_jun_1_add_holiday_jun_2_add_holiday_2nd_sat_of_oct_add_holiday_jul_22r   s     rg   #_populate_subdiv_13_public_holidaysz,Malaysia._populate_subdiv_13_public_holidays  s    d55b6HIJ 	b/0::12D!!$"9"9$"?@!!$"9"9$"?@ 	((,U)VW::!!$":":2>X;Y"Z[ rh   c                   | j                   j                  | j                  t        d                   | j                   j                  | j	                  t        d                   | j
                  dk\  r3| j                   j                  | j                  t        d                   | j                   j                  | j                  t        d                   y Nr   r     Hari Wilayah Persekutuanr   	ry   rz   r   r|   r   r   _add_holiday_feb_1r   r   r   s    rg   #_populate_subdiv_14_public_holidaysz,Malaysia._populate_subdiv_14_public_holidays      d55b6HIJ 	d11"5E2FGH::!!$"9"9"=W:X"YZ 	  !=!=bAV>W!XYrh   c                2   | j                   j                  | j                  t        d                   | j                  dk\  r3| j                   j                  | j                  t        d                   t        d      }| j                  |       | j                  |       | j                  dk\  r3| j                   j                  | j                  t        d                   | j                   j                  | j                  t        d                   y )Nr   r   r   r   rk   r   r   )ry   rz   r   r|   r   r   r   r   r   r   r   r   s     rg   #_populate_subdiv_15_public_holidaysz,Malaysia._populate_subdiv_15_public_holidays%  s    d55b6HIJ::!!$"9"9"=W:X"YZ "#  &  &::!!$"2"226F3G"HI 	  !=!=bAV>W!XYrh   c                   | j                   j                  | j                  t        d                   | j                   j                  | j	                  t        d                   | j
                  dk\  r3| j                   j                  | j                  t        d                   | j                   j                  | j                  t        d                   y r   r   r   s    rg   #_populate_subdiv_16_public_holidaysz,Malaysia._populate_subdiv_16_public_holidays9  r   rh   )rV   bool)ro   r$   returnzset[int])#__name__
__module____qualname____doc__countrydefault_languager|   estimated_labelobserved_labelobserved_estimated_label
start_yearsubdivisionssubdivisions_aliasessupported_languagesr[   rp   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   __classcell__)rf   s   @rg   r&   r&   =   s   & G)O	]N!"67JL$!!t! 	! 	t	!
 	D! 	t! 	$! 	t! 	4! 	t! 	$! 	t! 	! 	t! 	!  	t!!" 	$#!$ ,0&*)-A!D 3=A *&5Tn7&V
0
4 ZDW$Z0Z*Z"
*Z
:9&\(ZZ(Zrh   r&   c                      e Zd Zy)r'   Nr  r  r   rh   rg   r'   r'   H      rh   r'   c                      e Zd Zy)MYSNr  r  rh   rg   r  r  L  r  rh   r  c            
          e Zd Zi dedfdedfdedfdedfd	ed
fdedfdedfdedfdedfdedfdedfdedfdedfdedfdedfdedfd ed!fed"fedfedfed#fedfed$fed
fedfd%Zy&)'r\                                           r   	   rv      r      r           rk      r   rs      r   
            r   rt   ru   r   r   r   rl   r   N)r  r  r  r   VESAK_MAY_DATESr  rh   rg   r\   r\   P  sT   sAhsBi 	sBi 	sAh	
 	sBi 	sBi 	sAh 	sBi 	sAh 	sBi 	sBi 	sAh 	sBi 	sBi 	sAh  	sBi!" 	sBi#$ BiBiAhBiBiAhBiBi3Orh   r\   c                      e Zd ZdZy)r]   r  r   N)r  r  r  $LUNAR_NEW_YEAR_DATES_CONFIRMED_YEARSr  rh   rg   r]   r]   n  s    +7(rh   r]   c                  2   e Zd Zi dedfdedfdedfdedfd	ed
fdedfdedfdedfdedfdedfdedfdedfdedfdedfdedfded fd!ed"fed#fedfedfed$fed%fed&fed'fed(fd)Zed'fedfedfed*fed"fedfed+fedfed
fedfd,
Zy-).r^   r     r  r  r     r     r  r$  r!  r.  r#     r%  r  r   r)  rv   r*  r   r1  r   r-  r+     rk   r   r   r/  rs   r0  r         r2  r,  r"        r3  r(     )
r   rt   ru   r   r   r   rl   r   i  i  N)	r  r  r  r   r   DIWALI_DATESr
   r   THAIPUSAM_DATESr  rh   rg   r^   r^   r  s   sBisAh 	sBi 	sBi	
 	sAh 	sBi 	sAh 	sBi 	sBi 	sAh 	sBi 	sBi 	sAh 	sBi 	sBi  	sBi!" 	sBi#$ AhBiBiAhBiBiBiBi3L: BiBiAhBiBiAhBiBiAhBiOrh   r^   c                     e Zd ZdZi dedfdedfdedfded	fd
edfdedfdedfdedfdedfde	dfde	dfde
dfdedfdedfdedfdedfZdZedfedfedfedfe
d fedfedfed fd!Zd"Zedfed#fedfedfed$fedfed%fe	dfe	d&fe
dfe
d'fd(ZdZedfedfed)fed%fedfe	dfe	d*fe
dfed%fd+	ZdZed,fe
dfe
d'fed fed%fedfed-fed*fd.ZdZed-fed	fed'fed/fedfed-fed&fedffedfed*fed$fedfe	dfe	d/fe	dfd0ZdZed&fedfed*fed1fe	d2fed,fed	fed$fedfed2fd3
ZdZedfed%fed/fedfe	d	fedfedfedfed&fedfed	fd4Zy5)6r_   r6  r  r?  r  r:  r  r"  r  r=  r%  r'  r   r(  rv   r)  r   r  rk   r*  r   r,  rs   r   r   r   r/  r   r0  rl   r   r1  r@  )r  r  r  r!  r   rt   r   r   )r   r   rA  r&  r  r  r;  )r   r   r+  rk   r   rs   r   ru   r   r   rl   r<  r$  )	r  r  rv   r   r+  r   rt   r   r   r  r9  )r  r!  r#  r%  rk   rs   r   r      )r  r  r!  r   r   rk   r   rs   r   r   r   r   rl   r   r.  r>  )
r  r  r  r  r%  rk   r   r   rl   r   )r  r  r  r  r%  rk   rs   r   r   rl   r   N)r  r  r  !EID_AL_ADHA_DATES_CONFIRMED_YEARSr   r   r   r   r   r   r   r   r   EID_AL_ADHA_DATES!EID_AL_FITR_DATES_CONFIRMED_YEARSr   EID_AL_FITR_DATES$HARI_HOL_JOHOR_DATES_CONFIRMED_YEARSr
   HARI_HOL_JOHOR_DATES$HIJRI_NEW_YEAR_DATES_CONFIRMED_YEARSHIJRI_NEW_YEAR_DATES$ISRA_AND_MIRAJ_DATES_CONFIRMED_YEARSr   ISRA_AND_MIRAJ_DATESMAWLID_DATES_CONFIRMED_YEARSMAWLID_DATES$NUZUL_AL_QURAN_DATES_CONFIRMED_YEARSNUZUL_AL_QURAN_DATES'RAMADAN_BEGINNING_DATES_CONFIRMED_YEARSRAMADAN_BEGINNING_DATESr  rh   rg   r_   r_     su   (4%sAhsBi 	sBi 	sAh	
 	sAh 	sBi 	sBi 	sAh 	sAh 	sBi 	sBi 	sBi 	sBi 	sBi 	sBi  	sAh!& )5%BiAhBiBiBiAhBiBi	 ,8(BiBiBiBiBiAhBiBiAhBiBi ,8(AhBiAhBiAhBiAhBiBi
 ,8(BiBiBiBiBiAhBiAh	 $0 BiAhBiBiAhBiQx#r#BiAhBiBiBiBiAhL" ,8(AhBiAhBiBiBiAhBiBiBi /;+BiBiBiAhAhBiAhBiAhBiAhrh   r_   c            	         e Zd Z ed      ZdZ ed      Z ed      Z ed      Z e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edefedefedeffedefdZdedefiZdedefiZdedefiZdedefedeffiZdedefiZdedefiZdedefiZdedefiZdedefiZdedefiZdedefiZ dedefiZ!dedefiZ"dedefiZ#dedefiZ$dedefiZ%dedefiZ&dedefiZ'dedefiZ(edefedefdZ)y)r`   z"Cuti Peristiwa (pilihan raya umum)zCuti Peristiwarw   rr   zCuti Piala Malaysiaz+Hari Pertabalan Yang di-Pertuan Agong ke-15z+Hari Pertabalan Yang di-Pertuan Agong ke-16z!Hari Raya Puasa (pergantian hari)r   z+Cuti tambahan sempena memperingati SAT 2017r0  r,  r2  r'     r>  r&  r(  r.  )i  r   r   rt   r   r   r   r  r   r)  r   r#  r=  )r#  r   N)*r  r  r  r|   election_polling_dayelection_additional_holidayeid_al_adha	labor_daymalaysia_cup_holiday%yang_di_pertuan_agong_15_installation%yang_di_pertuan_agong_16_installationeid_al_fitr_additional_holiday
arafat_day!additional_holiday_2017_sea_gamesr   r   r   r   r   special_public_holidaysr   special_14_public_holidaysspecial_15_public_holidaysspecial_16_public_holidaysspecial_13_public_holidays#special_01_public_holidays_observed#special_02_public_holidays_observed#special_03_public_holidays_observedr
   #special_14_public_holidays_observed#special_15_public_holidays_observed#special_04_public_holidays_observed#special_05_public_holidays_observed#special_06_public_holidays_observed#special_16_public_holidays_observed#special_09_public_holidays_observed#special_07_public_holidays_observed#special_08_public_holidays_observed#special_12_public_holidays_observed#special_10_public_holidays_observed#special_13_public_holidays_observed#special_11_public_holidays_observedr  rh   rg   r`   r`     s   BC #3 '(K >"I 34 -//\,]) -//\,]) &((K%L" M"J )++X(Y% B,-";<!67
 A+,B=>"*+"*+"12

 B67" 	sA+,"
 	sA+,"
 	sA+,"
 	"12"12
" 	sAy!+'
 	sAy!+'
 	sAy!+'
 	sA{#+'
 	sA{#+'
 	sA{#+'
 	sA{#+'
 	sA{#+'
 	sA{#+'
 	sA{#+'
 	sA{#+'
 	sA{#+'
 	sA{#+'
 	sA{#+'
 	sA{#+'
 Az"Ay!+'rh   r`   N)2
__future__r   r   r|   typingr   holidays.calendarsr   r   r   r	   holidays.calendars.gregorianr
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   holidays.groupsr   r   r   r   r   r   r   holidays.observed_holiday_baser    r!   r"   r#   datetimer$   r&   r'   r  r\   r]   r^   r_   r`   r  rh   rg   <module>r     s    # !       "    HZHZV	 		( 	6 <84 8(0 (Vv4 vrA Arh   