U e5do1M@s*ddlZddlZddlZddlZddlZddlmZddlZddddddd d d d d ddddddddddddgZ ddZ ddZ z ddl TWnLe k rdZd Zd!ZdZd"Zd#Zd$Zd%ZeZd&d Zdd'dZYnXd ekre Zd ekre ZeZiZeed(d Zd)d*Z dd,d-Z!d.d/Z"e#d0Z$dd1d2Z%dd3dZ&dd4dZ'dd6dZ(d7d Zd8d9Z)e*fd:d Z+d;dZ,dd?Z/d@dAZ0dBdZ1dCdDZ2dEdFZ3ddHdZ4efdIdZ5ddJdZefdKdZ6ej78dLrddMdZ9nRze:Wn<e;k rLee=?D]"\Z@ZAe@BdqdrZ@e=Ce@eAqdsdsdsdtdudvdwdwdxdydzdzd{d|d}d~d~dddddddddddddddddddd~ddddddddddddddddddddddddddddddddddddRddRdRd{ddRdRddddddddd{ddddddddddddddddddddddddddddddddddddddddddd{ddddddddddddddddddd{dddddddd{dd{dRd{dddddddddddddddddddddddddddd̐dddddddddddddd d d d dd d d d d d d d dddddddddddddddddd͐dddddddddddddddddddd d d d!d"d#d$d%d&d&d'd(d&d&d%d%d{dd{dd{dd)d*d)d)d+d+d+ddd,d-d-d-d.d.d-d-d-d-d-d/d/d/d0d/d1d2d3d3d4d5d5d6d6d6d7d6d6d8d8d9d:d;d;d<d<d=d>d?d@dAdBdCdDdDdEdEdDdBdBdFdFdGdHdIdIdJdKdLdMdNdNdOdPdQdQdRdRdSdTdUdUdVdVdWdWdXdYdddZd[d\d]d^d_dǐd`ddǐdadadbdcdbdbdbdbdddddededcdcdadfdfdgdhdididjdkdkdldmdndodpdqdpdrdrdsdsdsdtdudRdRdvdvdwdtdudtdxdydzdzdzd{d{d|dzd}d~d~ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddÐdÐdĐdĐdŐdƐdǐdȐdȐdɐdɐdʐdːddd͐dddϐdϐdАdѐddddҐdҐdӐLZDdԐdՐd֐dאdؐdِdڐdېdܐdݐdސdߐdddddddddddddddddddddddddddddddddddddddddddd d d d d dddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdedfdgdhdidjdkdldmdldndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dddddddddddddddddddddddddddddddZEddZFzeWne;k rYnXe GdeHdkr&eIdeIeFeIeIdeIe-dS(N)str getlocalegetdefaultlocalegetpreferredencodingError setlocale resetlocale localeconvstrcollstrxfrmratofatoiformat format_stringcurrency normalizeLC_CTYPE LC_COLLATELC_TIME LC_MONETARY LC_NUMERICLC_ALLCHAR_MAXcCs||k||kSN)abrr/usr/lib64/python3.8/locale.py_strcoll!srcCs|Srr)srrr_strxfrm'sr )*cCs,dgddddgdddddddddddddS)Nr".)groupingcurrency_symbol n_sign_posn p_cs_precedes n_cs_precedes mon_groupingn_sep_by_space decimal_point negative_sign positive_signp_sep_by_spaceint_curr_symbol p_sign_posn thousands_sepmon_thousands_sep frac_digitsmon_decimal_pointint_frac_digitsrrrrrr ?s&cCs|dkrtddS)N)Nr)Cz*_locale emulation only supports "C" localer=)r)categoryvaluerrrrWscCst}tr|t|Sr) _localeconv_override_localeconvupdate)drrrr ls ccsJd}|D]<}|tkrdS|dkr:|dkr2td|Vq2|V|}qdS)Nrzinvalid grouping)r ValueError)r+Z last_intervalintervalrrr_grouping_intervalszsrFFc Cst}||rdpd}||r dp"d}|s2|dfS|ddkr\|}|t|d}|}nd}d}g}t|D]B} |r|dd kr|}d}q||| d|d| }qp|r|||||||t|t|d fS) Nr9r8r0r+r r) 0123456789r')r rstriplenrFappendreversejoin) rmonetaryconvr8r+strippedZ right_spacesZ left_spacesgroupsrErrr_groups2   rScCsdd}|r&||dkr&|d7}|d8}qt|d}|rT||dkrT|d8}|d8}q2|||dS)NrrHr')rK)rZamountZlposZrposrrr_strip_paddings   rTzG%(?:\((?P.*?)\))?(?P[-#0-9 +*.hlL]*?)[eEfFgGdiouxXcrs%]c Gs|r||f|}n||}|ddkr~d}|d}|rRt|d|d\|d<}t|r^dp`d}||}|rt||}n2|ddkrd}|rt||d\}}|rt||}|S) NrGZeEfFgGrr*rOr;r2Zdiu)splitrSr rNrT) percentr?r+rO additionalZ formattedZsepspartsr2rrr_formats*       rZc Cs tt|}td|}t|tjrjg}|D]8}|ddkrN|dq.|t ||||q.nt|t sz|f}g}d}|D]r}|ddkr|dq|d d} |t |||||f||d|d| |d| 7}qt |}||S)Nz%srG%rZ modifiersr!r') list _percent_refinditersub isinstance_collections_abcMappinggrouprLrZtuplecount) fvalr+rOZpercentsZnew_fZnew_valZperciZ starcountrrrrs4      cGs^ddl}|jdtddt|}|r:t|t|krJtdt|t ||||f|S)Nrz`This method will be removed in a future version of Python. Use 'locale.format_string()' instead.r() stacklevelzHformat() must be given exactly one %%char format specifier, %s not valid) warningswarnDeprecationWarningr]matchrKrcrDreprrZ)rWr?r+rOrXrjrmrrrrs Tc Csft}||rdpd}|dkr&tdtd|t||dd}d|d }|r||rXd pZd }||d krld pnd}||d krdpd} |r|| rdpd|}n|| rdpd|}||d krdpd} ||d krdpd} | d krd|d}n`| dkr| |}nL| dkr|| }n8| dkr2|d| }n | dkrJ|d | }n| |}|ddd dS)Nr<r:r"z9Currency formatting is not possible using the 'C' locale.z%%.%ifTrU<>r6r,rr/r.r1r5rHr)r-r7r3r4()r'r(r$r&)r rDrZabsreplace) rgZsymbolr+Z internationalrPZdigitsrZsmbZprecedesZ separatedZsign_posZsignrrrrs6       cCs td|S)Nz%.12g)rZ)rgrrrr0scCs:t}|d}|r||d}|d}|r6||d}|S)Nr8r)r2r*)r rt)stringrPtsZddrrr delocalize4s  rwcCs |t|Sr)rw)rufuncrrrr DscCs tt|Sr)intrw)rurrrr HscCsBttdtddd}t|dt|td}t|dt|dS)Nr)z%di[r'isgQ @)rrrprintr rr )s1rrr_testLs   r}cCsd|kr|d|d}n|}t|}tjj||}|}|}|tkr\t|}n(|dd}|dd}|tkrt|}|d|S)Nr*_r)-)index encodingsnormalize_encodingaliasesgetlowerlocale_encoding_aliasrt)codeencodinglangname norm_encodingrrr_replace_encoding^s     rcCsR|dkrFd|kr|dS|d\}}}|dkr4|S|dkrFt|dS|d|S)Neuror*z .ISO8859-15) ISO8859-15UTF-8 ISO8859-1r@) partitionr)rmodifierr~rrrr_append_modifierus rc Cs|}d|kr|dd}d|kr6|dd\}}nd}d|krZ|ddd\}}n|}d}|}|r|dd}|dd}|d|7}|}|r|d|7}t|d}|dk r|S|rt|d}|dk rd|krt||S|ddd|kr|S|r|}|r"|d|7}t|d}|dk rnd|krLt||S|dd\}}t||d|S|rt|d}|dk rd|krt||}t||S|dd\}}||krt||d|S|S) N:r*rr'r)r(rr~)rrtrV locale_aliasrrr) localenamerrrrZlang_encrZ lookup_nameZdefmodrrrrs`                   cCs~t|}d|kr8|dd\}}|dkr8d|kr8|dfSd|krVt|dddS|dkrbdS|d krnd Std |dS) Nrr'rr* iso-8859-15r(r=)NNrNrzunknown locale: %s)rrVrdrD)rrrrrr_parse_localenamesrc Cs\z4|\}}|dkrd}|dkr$|WS|d|WSWn"ttfk rVtddYnXdS)Nr=r*zXLocale must be None, a string, or an iterable of two strings -- language code, encoding.) TypeErrorrD)Z localetupleZlanguagerrrr_build_localenamesrrrZLANGLANGUAGEc Cszddl}|\}}Wnttfk r0Yn8Xtjdkr`|r`|dddkr`tt|d}||fSddl }|j j}|D],}||d}|r||dkr| dd}qq|d}t |S)NrZwin32r(Z0xrrr=) _localeZ_getdefaultlocale ImportErrorAttributeErrorsysplatformwindows_localerryosenvironrVr)ZenvvarsrrrrlookupZvariablerrrrr s$ cCs(t|}|tkr d|kr tdt|S)N;z category LC_ALL is not supported) _setlocalerrr)r>rrrrr?s cCs$|rt|tstt|}t||Sr)r` _builtin_strrrr)r>ZlocalerrrrQs  cCst|ttdSr)rrr)r>rrrrbswincCstjjr dSddl}|dS)NrrF)rflags utf8_mode _bootlocaler) do_setlocalerrrrrnsZgetandroidapilevelcCsdSrr)rrrrr|scCs&tjjr dStd}|dkr"d}|S)Nrr'ascii)rrrr)rresrrrrs  cCs`tjjr dSddl}|rDtt}zttdWntk rBYnX|d}|r\tt||S)Nrrr)F)rrrrrrrr)rrZoldlocresultrrrrs  r=rZJIS7ZeucJPzKOI8-CZCP1251ZCP1255ZCP1256z ISO8859-2z ISO8859-5rz ISO8859-10z ISO8859-11z ISO8859-13z ISO8859-14z ISO8859-16z ISO8859-3z ISO8859-4z ISO8859-6z ISO8859-7z ISO8859-8z ISO8859-9ZSJISZTACTISZeucKRrzKOI8-RzKOI8-TzKOI8-UZRK1048),437cenZjisZjis7ZajecZkoi8cZmicrosoftcp1251Zmicrosoftcp1255Zmicrosoftcp1256Z88591Z88592Z88595Z885915rlatin_1 iso8859_1 iso8859_10 iso8859_11 iso8859_13 iso8859_14 iso8859_15 iso8859_16 iso8859_2 iso8859_3 iso8859_4 iso8859_5 iso8859_6 iso8859_7 iso8859_8 iso8859_9 iso2022_jp shift_jistactiseuc_jpeuc_krutf_8koi8_rZkoi8_tZkoi8_ukz1048cp1251cp1255cp1256r~r)z az_AZ.KOI8-Czaa_DJ.ISO8859-1z aa_ER.UTF-8z aa_ET.UTF-8zaf_ZA.ISO8859-1z agr_PE.UTF-8z ak_GH.UTF-8z am_ET.UTF-8zen_US.ISO8859-1zan_ES.ISO8859-15z anp_IN.UTF-8zar_AA.ISO8859-6zar_AE.ISO8859-6zar_BH.ISO8859-6zar_DZ.ISO8859-6zar_EG.ISO8859-6z ar_IN.UTF-8zar_IQ.ISO8859-6zar_JO.ISO8859-6zar_KW.ISO8859-6zar_LB.ISO8859-6zar_LY.ISO8859-6zar_MA.ISO8859-6zar_OM.ISO8859-6zar_QA.ISO8859-6zar_SA.ISO8859-6zar_SD.ISO8859-6z ar_SS.UTF-8zar_SY.ISO8859-6zar_TN.ISO8859-6zar_YE.ISO8859-6z as_IN.UTF-8zast_ES.ISO8859-15z ayc_PE.UTF-8zaz_AZ.ISO8859-9Ez az_IR.UTF-8z be_BY.CP1251zbe_BY.UTF-8@latinz bg_BG.UTF-8z bem_ZM.UTF-8z ber_DZ.UTF-8z ber_MA.UTF-8z bg_BG.CP1251z bhb_IN.UTF-8z bho_IN.UTF-8z bho_NP.UTF-8z bi_VU.UTF-8z bn_BD.UTF-8z bn_IN.UTF-8z bo_CN.UTF-8z bo_IN.UTF-8znb_NO.ISO8859-1zbr_FR.ISO8859-1z brx_IN.UTF-8zbs_BA.ISO8859-2z byn_ER.UTF-8zfr_CA.ISO8859-1z en_US.UTF-8zca_ES.ISO8859-1zca_AD.ISO8859-1zca_ES.UTF-8@valenciazca_FR.ISO8859-1zca_IT.ISO8859-1z ce_RU.UTF-8z zh_CN.eucCNz zh_TW.eucTWz chr_US.UTF-8z ckb_IQ.UTF-8z cmn_TW.UTF-8z crh_UA.UTF-8zhr_HR.ISO8859-2zcs_CZ.ISO8859-2z csb_PL.UTF-8z cv_RU.UTF-8zcy_GB.ISO8859-1zda_DK.ISO8859-1zde_DE.ISO8859-1zde_AT.ISO8859-1zde_BE.ISO8859-1zde_CH.ISO8859-1zde_IT.ISO8859-1z de_LI.UTF-8zde_LU.ISO8859-1z doi_IN.UTF-8znl_NL.ISO8859-1znl_BE.ISO8859-1z dv_MV.UTF-8z dz_BT.UTF-8zee_EE.ISO8859-4zet_EE.ISO8859-1zel_GR.ISO8859-7zel_CY.ISO8859-7zel_GR.ISO8859-15z en_AG.UTF-8zen_AU.ISO8859-1zen_BE.ISO8859-1zen_BW.ISO8859-1zen_CA.ISO8859-1zen_DK.ISO8859-1z en_DL.UTF-8zen_GB.ISO8859-1zen_HK.ISO8859-1zen_IE.ISO8859-1z en_IL.UTF-8zen_IN.ISO8859-1z en_NG.UTF-8zen_NZ.ISO8859-1zen_PH.ISO8859-1z en_SC.UTF-8zen_SG.ISO8859-1zen_US.ISO8859-15zen_ZA.ISO8859-1z en_ZM.UTF-8zen_ZW.ISO8859-1z en_ZS.UTF-8zen_EN.ISO8859-1zeo_XX.ISO8859-3zeo.UTF-8zeo_EO.ISO8859-3z eo_US.UTF-8zes_ES.ISO8859-1zes_AR.ISO8859-1zes_BO.ISO8859-1zes_CL.ISO8859-1zes_CO.ISO8859-1zes_CR.ISO8859-1z es_CU.UTF-8zes_DO.ISO8859-1zes_EC.ISO8859-1zes_GT.ISO8859-1zes_HN.ISO8859-1zes_MX.ISO8859-1zes_NI.ISO8859-1zes_PA.ISO8859-1zes_PE.ISO8859-1zes_PR.ISO8859-1zes_PY.ISO8859-1zes_SV.ISO8859-1zes_US.ISO8859-1zes_UY.ISO8859-1zes_VE.ISO8859-1zet_EE.ISO8859-15zeu_ES.ISO8859-1zeu_FR.ISO8859-1z fa_IR.UTF-8zfa_IR.ISIRI-3342z ff_SN.UTF-8zfi_FI.ISO8859-15z fil_PH.UTF-8zfi_FI.ISO8859-1zfo_FO.ISO8859-1zfr_FR.ISO8859-1zfr_BE.ISO8859-1zfr_CH.ISO8859-1zfr_LU.ISO8859-1z fur_IT.UTF-8z fy_DE.UTF-8z fy_NL.UTF-8zga_IE.ISO8859-1zgl_ES.ISO8859-1zgd_GB.ISO8859-1z gez_ER.UTF-8z gez_ET.UTF-8z gu_IN.UTF-8zgv_GB.ISO8859-1z ha_NG.UTF-8z hak_TW.UTF-8zhe_IL.ISO8859-8zhi_IN.ISCII-DEVz hif_FJ.UTF-8z hne_IN.UTF-8zhsb_DE.ISO8859-2z ht_HT.UTF-8zhu_HU.ISO8859-2z hy_AM.UTF-8zhy_AM.ARMSCII_8zia.UTF-8z ia_FR.UTF-8zis_IS.ISO8859-1zid_ID.ISO8859-1z ig_NG.UTF-8z ik_CA.UTF-8zit_IT.ISO8859-1zit_CH.ISO8859-1ziu_CA.NUNACOM-8z iw_IL.UTF-8z ja_JP.eucJPz ja_JP.SJISzka_GE.GEORGIAN-ACADEMYzka_GE.GEORGIAN-PSz kab_DZ.UTF-8z kk_KZ.ptcp154zkl_GL.ISO8859-1z km_KH.UTF-8z kn_IN.UTF-8z ko_KR.eucKRz kok_IN.UTF-8z ks_IN.UTF-8zks_IN.UTF-8@devanagarizku_TR.ISO8859-9zkw_GB.ISO8859-1z ky_KG.UTF-8z lb_LU.UTF-8zlg_UG.ISO8859-10z li_BE.UTF-8z li_NL.UTF-8z lij_IT.UTF-8zlt_LT.ISO8859-13z ln_CD.UTF-8zlo_LA.MULELAO-1zlo_LA.IBM-CP1133zlv_LV.ISO8859-13z lzh_TW.UTF-8z mag_IN.UTF-8z mai_IN.UTF-8z mai_NP.UTF-8z mfe_MU.UTF-8zmg_MG.ISO8859-15z mhr_RU.UTF-8zmi_NZ.ISO8859-1z miq_NI.UTF-8z mjw_IN.UTF-8zmk_MK.ISO8859-5z ml_IN.UTF-8z mn_MN.UTF-8z mni_IN.UTF-8z mr_IN.UTF-8zms_MY.ISO8859-1zmt_MT.ISO8859-3z my_MM.UTF-8z nan_TW.UTF-8z nds_DE.UTF-8z nds_NL.UTF-8z ne_NP.UTF-8z nhn_MX.UTF-8z niu_NU.UTF-8z niu_NZ.UTF-8z nl_AW.UTF-8znn_NO.ISO8859-1zno_NO.ISO8859-1zny_NO.ISO8859-1znr_ZA.ISO8859-1znso_ZA.ISO8859-15zoc_FR.ISO8859-1z om_ET.UTF-8zom_KE.ISO8859-1z or_IN.UTF-8z os_RU.UTF-8z pa_IN.UTF-8z pa_PK.UTF-8z pap_AN.UTF-8z pap_AW.UTF-8z pap_CW.UTF-8zpd_US.ISO8859-1zpd_DE.ISO8859-1zph_PH.ISO8859-1zpl_PL.ISO8859-2zpt_PT.ISO8859-1zpt_BR.ISO8859-1zpp_AN.ISO8859-1z ps_AF.UTF-8z quz_PE.UTF-8z raj_IN.UTF-8zro_RO.ISO8859-2z ru_RU.UTF-8z ru_UA.KOI8-Uz ru_RU.KOI8-Rzrw_RW.ISO8859-1z sa_IN.UTF-8z sat_IN.UTF-8z sc_IT.UTF-8z sd_IN.UTF-8zsd_IN.UTF-8@devanagariz sd_PK.UTF-8z se_NO.UTF-8zsr_RS.UTF-8@latinz sgs_LT.UTF-8zsr_CS.ISO8859-2zsh_HR.ISO8859-2z shn_MM.UTF-8z shs_CA.UTF-8z si_LK.UTF-8z sid_ET.UTF-8zsk_SK.ISO8859-2zsl_SI.ISO8859-2zsl_CS.ISO8859-2z sm_WS.UTF-8zso_DJ.ISO8859-1z so_ET.UTF-8zso_KE.ISO8859-1zso_SO.ISO8859-1zsr_CS.ISO8859-5zsq_AL.ISO8859-2z sq_MK.UTF-8z sr_RS.UTF-8zsr_CS.UTF-8@latinz sr_CS.UTF-8z sr_ME.UTF-8z sr_CS.CP1251zss_ZA.ISO8859-1zst_ZA.ISO8859-1zsv_SE.ISO8859-1zsv_FI.ISO8859-1z sw_KE.UTF-8z sw_TZ.UTF-8z szl_PL.UTF-8z ta_IN.TSCII-0z ta_LK.UTF-8z tcy_IN.UTF-8z te_IN.UTF-8z tg_TJ.KOI8-Czth_TH.ISO8859-11z th_TH.TIS620z the_NP.UTF-8z ti_ER.UTF-8z ti_ET.UTF-8z tig_ER.UTF-8z tk_TM.UTF-8ztl_PH.ISO8859-1ztn_ZA.ISO8859-15z to_TO.UTF-8z tpi_PG.UTF-8ztr_TR.ISO8859-9ztr_CY.ISO8859-9zts_ZA.ISO8859-1ztt_RU.TATAR-CYRztt_RU.UTF-8@iqtelifz ug_CN.UTF-8z uk_UA.KOI8-Uz en_US.utfz unm_US.UTF-8z ur_PK.CP1256z ur_IN.UTF-8z uz_UZ.UTF-8z ve_ZA.UTF-8z vi_VN.TCVNz vi_VN.VISCIIzwa_BE.ISO8859-1z wae_CH.UTF-8z wal_ET.UTF-8z wo_SN.UTF-8zxh_ZA.ISO8859-1z yi_US.CP1255z yo_NG.UTF-8z yue_HK.UTF-8z yuw_PG.UTF-8z zh_CN.gb2312z zh_TW.big5zzh_HK.big5hkscsz zh_SG.GB2312z zh_SG.GBKzzu_ZA.ISO8859-1(LZa3Za3_azz a3_az.koicZaa_djZaa_erZaa_etZafZaf_zaZagr_peZak_ghZamZam_etZamericanZan_esZanp_inZarZar_aaZar_aeZar_bhZar_dzZar_egZar_inZar_iqZar_joZar_kwZar_lbZar_lyZar_maZar_omZar_qaZar_saZar_sdZar_ssZar_syZar_tnZar_yearabicasZas_inZast_esZayc_peZazZaz_azzaz_az.iso88599eZaz_irZbezbe@latinz be_bg.utf8Zbe_byz be_by@latinZbem_zmZber_dzZber_maZbgZbg_bgz bhb_in.utf8Zbho_inZbho_npZbi_vuZbn_bdZbn_inZbo_cnZbo_inZbokmalubokmålbrZbr_frZbrx_inZbsZbs_baZ bulgarianZbyn_errzc-frenchzc.asciizc.enz c.iso88591zc.utf8Zc_czc_c.cZcaZca_adZca_eszca_es@valenciaZca_frZca_itZcatalanZce_ruZcextendz chinese-sz chinese-tZchr_usZckb_iqZcmn_twZcrh_uaZcroatianZcsZcs_csZcs_czZcsb_plZcv_ruZcyZcy_gbZczZcz_czZczechZdaZda_dkZdanishZdanskZdeZde_atZde_beZde_chZde_deZde_itz de_li.utf8Zde_luZdeutschZdoi_inZdutchzdutch.iso88591Zdv_mvZdz_btZeeZee_eeZeestiZelZel_cyZel_grz el_gr@eurorZen_agZen_auZen_beZen_bwZen_caZen_dkz en_dl.utf8Zen_gbZen_hkZen_ieZen_ilZen_inZen_ngZen_nzZen_phz en_sc.utf8Zen_sgZen_ukZen_uszen_us@euro@euroZen_zaZen_zmZen_zwz en_zw.utf8Zeng_gbZenglishzenglish.iso88591Z english_ukzenglish_united-stateszenglish_united-states.437Z english_usZeozeo.utf8Zeo_eoz eo_us.utf8Zeo_xxZesZes_arZes_boZes_clZes_coZes_crZes_cuZes_doZes_ecZes_esZes_gtZes_hnZes_mxZes_niZes_paZes_peZes_prZes_pyZes_svZes_usZes_uyZes_veZestonianZetZet_eeZeuZeu_esZeu_frZfaZfa_irzfa_ir.isiri3342Zff_snZfiZfi_fiZfil_phZfinnishZfoZfo_fofrZfr_beZfr_caZfr_chZfr_frZfr_luu françaisZfre_frZfrenchzfrench.iso88591Z french_franceZfur_itZfy_deZfy_nlZgaZga_ieZgalegoZgalicianZgdZgd_gbZger_deZgermanzgerman.iso88591Zgerman_germanyZgez_erZgez_etZglZgl_esgreekZgu_inZgvZgv_gbZha_ngZhak_twZheZhe_ilhebrewhiZhi_inzhi_in.isciidevZhif_fjZhneZhne_inZhrZhr_hrZhrvatskiZhsb_deZht_htZhuZhu_huZ hungarianZhy_amzhy_am.armscii8ZiaZia_frZ icelandicidZid_idZig_ngZik_cainZin_idrzZis_isz iso-8859-1rz iso8859-1z iso8859-15 iso_8859_1 iso_8859_15itZit_chZit_itZitalianZiuZiu_caziu_ca.nunacom8ZiwZiw_ilz iw_il.utf8ZjaZja_jpz ja_jp.eucz ja_jp.mscodez ja_jp.pckZjapanZjapanesez japanese-eucz japanese.eucZjp_jpZkaZka_gezka_ge.georgianacademyzka_ge.georgianpszka_ge.georgianrsZkab_dzZkk_kzZklZkl_glZkm_khZknZkn_inZkoZko_krz ko_kr.eucZkok_inkoreanz korean.eucZksZks_inzks_in@devanagari.utf8Zku_trkwZkw_gbZkyZky_kgZlb_luZlg_ugZli_beZli_nlZlij_itZ lithuanianZln_cdloZlo_laz lo_la.cp1133zlo_la.ibmcp1133zlo_la.mulelao1ltZlt_ltZlvZlv_lvZlzh_twZmag_inZmaiZmai_inZmai_npZmfe_muZmg_mgZmhr_rumiZmi_nzZmiq_niZmjw_inZmkZmk_mkZmlZml_inZmn_mnZmni_inZmrZmr_inZmsZms_myZmtZmt_mtZmy_mmZnan_twZnbZnb_noZnds_deZnds_nlZne_npZnhn_mxZniu_nuZniu_nznlZnl_awZnl_beZnl_nlZnnZnn_noZnoz no@nynorskZno_nozno_no.iso88591@bokmalzno_no.iso88591@nynorskZ norwegianZnrZnr_zaZnsoZnso_zaZnyZny_noZnynorskZocZoc_frZom_etZom_keorZor_inZos_ruZpaZpa_inZpa_pkZpap_anZpap_awZpap_cwZpdZpd_deZpd_usZphZph_phZplZpl_plZpolishZ portugueseZportuguese_brazilposixz posix-utf2ZppZpp_anZps_afZptZpt_brZpt_ptZquz_peZraj_inZroZro_roZromanianZruZru_ruZru_uaZrumanianZrussianZrwZrw_rwZsa_inZsat_inZsc_itZsdZsd_inzsd_in@devanagari.utf8Zsd_pkZse_noZ serbocroatianZsgs_ltZshzsh_ba.iso88592@bosniaZsh_hrzsh_hr.iso88592Zsh_spZsh_yuZshn_mmZshs_caZsiZsi_lkZsid_etZsinhalaZskZsk_skZslZsl_csZsl_siZslovakZsloveneZ slovenianZsm_wsZso_djZso_etZso_keZso_soZspZsp_yuZspanishZ spanish_spainZsqZsq_alZsq_mksrz sr@cyrilliczsr@latnZsr_cszsr_cs.iso88592@latnz sr_cs@latnZsr_meZsr_rsz sr_rs@latnZsr_spZsr_yuzsr_yu.cp1251@cyrilliczsr_yu.iso88592zsr_yu.iso88595zsr_yu.iso88595@cyrilliczsr_yu.microsoftcp1251@cyrillicz sr_yu.utf8zsr_yu.utf8@cyrilliczsr_yu@cyrillicZssZss_zastZst_zaZsvZsv_fiZsv_seZsw_keZsw_tzZswedishZszl_plZtaZta_inz ta_in.tsciiz ta_in.tscii0Zta_lkz tcy_in.utf8ZteZte_inZtgZtg_tjZthZth_thz th_th.tactisz th_th.tis620thaiZthe_npZti_erZti_etZtig_erZtk_tmZtlZtl_phZtnZtn_zaZto_toZtpi_pgZtrZtr_cyZtr_trrvZts_zaZttZtt_ruztt_ru.tatarcyrz tt_ru@iqtelifZturkishZug_cnZukZuk_uaZunivZ universalzuniversal.utf8@ucs4Zunm_usZurZur_inZur_pkZuzZuz_uzzuz_uz@cyrillicZveZve_zaZviZvi_vnz vi_vn.tcvnzvi_vn.tcvn5712z vi_vn.visciizvi_vn.viscii111ZwaZwa_beZwae_chZwal_etZwo_snZxhZxh_zaZyiZyi_usZyo_ngZyue_hkZyuw_pgZzhZzh_cnz zh_cn.big5z zh_cn.eucZzh_hkz zh_hk.big5hkZzh_sgz zh_sg.gbkZzh_twz zh_tw.eucz zh_tw.euctwZzuZzu_zaZaf_ZAZsq_ALZgsw_FRZam_ETZar_SAZar_IQZar_EGZar_LYZar_DZZar_MAZar_TNZar_OMZar_YEZar_SYZar_JOZar_LBZar_KWZar_AEZar_BHZar_QAZhy_AMZas_INZaz_AZZba_RUZeu_ESZbe_BYZbn_INZbs_BAZbr_FRZbg_BGZca_ESZzh_CHSZzh_TWZzh_CNZzh_HKZzh_SGZzh_MOZzh_CHTZco_FRZhr_HRZhr_BAZcs_CZZda_DKZgbz_AFZdiv_MVZnl_NLZnl_BEZen_USZen_GBZen_AUZen_CAZen_NZZen_IEZen_ZAZen_JAZen_CBZen_BZZen_TTZen_ZWZen_PHZen_INZen_MYZet_EEZfo_FOZfil_PHZfi_FIZfr_FRZfr_BEZfr_CAZfr_CHZfr_LUZfr_MCZfy_NLZgl_ESZka_GEZde_DEZde_CHZde_ATZde_LUZde_LIZel_GRZkl_GLZgu_INZha_NGZhe_ILZhi_INZhu_HUZis_ISZid_IDZiu_CAZga_IEZit_ITZit_CHZja_JPZkn_INZkk_KZZkh_KHZqut_GTZrw_RWZkok_INZko_KRZky_KGZlo_LAZlv_LVZlt_LTZdsb_DEZlb_LUZmk_MKZms_MYZms_BNZml_INZmt_MTZmi_NZZarn_CLZmr_INZmoh_CAZmn_MNZmn_CNZne_NPZnb_NOZnn_NOZoc_FRZor_INZps_AFZfa_IRZpl_PLZpt_BRZpt_PTZpa_INZquz_BOZquz_ECZquz_PEZro_ROZrm_CHZru_RUZsmn_FIZsmj_NOZsmj_SEZse_NOZse_SEZse_FIZsms_FIZsma_NOZsma_SEZsa_INZsr_SPZsr_BAZsi_LKZns_ZAZtn_ZAZsk_SKZsl_SIZes_ESZes_MXZes_GTZes_CRZes_PAZes_DOZes_VEZes_COZes_PEZes_ARZes_ECZes_CLZes_URZes_PYZes_BOZes_SVZes_HNZes_NIZes_PRZes_USZsw_KEZsv_SEZsv_FIZsyr_SYZtg_TJZtmz_DZZta_INZtt_RUZte_INZth_THZbo_BTZbo_CNZtr_TRZtk_TMZug_CNZuk_UAZwen_DEZur_PKZur_INZuz_UZZvi_VNZcy_GBZwo_SNZxh_ZAZsah_RUZii_CNZyo_NGZzu_ZA)i6iii^iii iiiii i$i(i,i0i4i8i<i@i+iMi,i,imi-i#iEi ii~iir&iii iii|iiiiiiieiii i i i i i i i i $i (i ,i 0i 4i @i Di Hi%i8idi i i i i i i ibiVi7iii iiiioiGihi i9iii!i]i]i<iiiiKi?iSiiiWii@iTi&i'i.ini/i>i>iLi:iiziNi|iPiPiaiiiiHici)iiiiFikikik iiii;$i;i;i;i;i; i; i;i;iOi iiii[ili2ii$i i i i i i i i i $i (i ,i 0i 4i 8i <i @i Di Hi Li Pi TiAiiiZi(i_iIiDiJiiQiQiiBii"i.i i iCiCi*iRii4iixiji5cCsi}|fdd}||d=tdtdt\}}td|p@dtd|pNdttd td|D]@\}}t|d t|\}}td |pdtd |pdtqpttd tdt|D]B\}}t|d t|\}}td |pdtd |pdtqzttdWn$tdtdtdYnhXttdtd|D]F\}}t|d t|\}}td |pdtd |pdtqldS)NcSs0tD] \}}|dddkr |||<q dS)Nr$ZLC_)globalsitems) categorieskvrrr_init_categoriessz'_print_locale.._init_categoriesrz4Locale defaults as determined by getdefaultlocale():zH------------------------------------------------------------------------z Language: z (undefined)z Encoding: zLocale settings on startup:z...z Language: z Encoding: z,Locale settings after calling resetlocale():r)zNOTE:z9setlocale(LC_ALL, "") does not support the default localez&given in the OS environment variables.z4Locale settings after calling setlocale(LC_ALL, ""):)r{rrrrrr)rrZlangencnamer>rrr _print_localesV        r LC_MESSAGES__main__zLocale aliasing:zNumber formatting:)N)F)FF)FF)FF)TFF)r)N)T)T)T)T)JrrZencodings.aliasesrerabuiltinsrr functools__all__rr rrrrrrrrrrrDrr rrr r r@rAwrapsrFrSrTcompiler]rZrrrrwfloatr r r}rrrrrrrrrr startswithrCODESET NameErrorhasattrrsortedrrrrt setdefaultrrrrL__name__r{rrrr sr         %  -  S" 5     $6 } aV :