U ¡ê,ajã@s²ddlZddlZddlZddlZdddddddd d d d d dddddddddgZej ejdd¡Ze  dej ej B¡Z dd„Z dd„ZdZdd „eed!ƒDƒZd"d#d$d%œZdFd'd(„Zd)d*„Zd+d,„Zd-d.„ZGd/d„dƒZGd0d„deƒZdGd2d„ZiZd3gZdddd1efd4d„Zdedfd5d„Ziaiad6adHd7d„Z dId8d „Z!dJd9d „Z"d:d „Z#d;d„Z$dd„Z'd?d„Z(d@d „Z)dAd„Z*dBd„Z+dCd„Z,dDd„Z-dEd„Z.eZ/dS)KéNÚNullTranslationsÚGNUTranslationsÚCatalogÚfindÚ translationÚinstallÚ textdomainÚbindtextdomainÚbind_textdomain_codesetÚdgettextÚ dngettextÚgettextÚlgettextÚ ldgettextÚ ldngettextÚ lngettextÚngettextÚpgettextÚ dpgettextÚ npgettextÚ dnpgettextZshareÚlocaleaÊ (?P[ \t]+) | # spaces and horizontal tabs (?P[0-9]+\b) | # decimal integer (?Pn\b) | # only n is allowed (?P[()]) | (?P[-*/%+?:]|[>, # <=, >=, ==, !=, &&, ||, # ? : # unary and bitwise ops # not allowed (?P\w+|.) # invalid token ccsPt t|¡D]8}|j}|dkr q | |¡}|dkr>td|ƒ‚|Vq dVdS)NZ WHITESPACESZINVALIDz invalid token in plural form: %sÚ)ÚreÚfinditerÚ_token_patternÚ lastgroupÚgroupÚ ValueError)ÚpluralZmoZkindÚvalue©r!ú,/opt/alt/python38/lib64/python3.8/gettext.pyÚ _tokenizeWs  r#cCs|rtd|ƒStdƒSdS)Nz#unexpected token in plural form: %szunexpected end of plural form)r)r r!r!r"Ú_errorbs r$))ú||)ú&&)z==z!=)ú<ú>z<=z>=)ú+ú-)Ú*ú/ú%cCs i|]\}}|D] }||“qqSr!r!)Ú.0ÚiZopsÚopr!r!r"Ú ps r1éÚorÚandz//)r%r&r,éÿÿÿÿc Cs¨d}t|ƒ}|dkr&|d7}t|ƒ}q |dkrXt|ƒ\}}d||f}|dkr¨tdƒ‚nP|dkrnd ||f}n:zt|d ƒ}Wntk ršt|ƒd‚YnXd ||f}t|ƒ}d }|tkrt|}||krÒq|d krê|d krêd|}t ||¡}t||dƒ\} }d||| f}|}q´||kr4dkr@nnd|}|dkr |dkr t|dƒ\} }|dkrtt|ƒ‚t|ƒ\} }d| || f}|dkr d|}||fS)Nrú!znot ú(z%s(%s)ú)z%unbalanced parenthesis in plural formÚnz%s%sé z%s%déd)ééz(%s)r2z%s %s %sr=ú?rú:z%s if %s else %s)ÚnextÚ_parserÚintr$Ú _binary_opsÚ _c2py_opsÚget) ÚtokensZpriorityÚresultÚnexttokÚsubr Újr/r0ÚrightZif_trueZif_falser!r!r"rAssP          rAcCsZz t|ƒ}Wn(tk r4td|jjfƒd‚YnXddl}| d|jjftd¡|S)Nz'Plural value must be an integer, got %srr=)ÚroundÚ TypeErrorÚ __class__Ú__name__ÚwarningsÚwarnÚDeprecationWarning)r9r/rPr!r!r"Ú_as_int¤s  ÿÿÿþrScCs²t|ƒdkrtdƒ‚z|tt|ƒƒ\}}|r2t|ƒ‚d}|D]6}|dkr`|d7}|dkrptdƒ‚q:|dkr:|d8}q:d ti}td ||ƒ|d WStk r¬tdƒ‚YnXdS) Nièz"plural form expression is too longrr7r2éz%plural form expression is too complexr8rSz›if True: def func(n): if not isinstance(n, int): n = _as_int(n) return int(%s) Úfunc)ÚlenrrAr#r$rSÚexecÚRecursionError)rrGrHZdepthÚcÚnsr!r!r"Úc2py°s.   ûû r[c Cs4t |¡}d}d}d}d}| d¡}|dkrN||d…}|d|…}||O}nd}| d¡}|dkr†||d…}|d|…}||O}nd}| d¡}|dkr¾||d…}|d|…}||O}nd}|} g} t|dƒD]P} | |@sÖ| } | |@rø| |7} | |@r | |7} | |@r| |7} |  | ¡qÖ|  ¡| S) Nr2ér=rú@rÚ.Ú_)rÚ normalizerÚrangeÚappendÚreverse) ZlocZCOMPONENT_CODESETZCOMPONENT_TERRITORYZCOMPONENT_MODIFIERÚmaskÚposZmodifierÚcodesetZ territoryZlanguageZretr/Úvalr!r!r"Ú _expand_langÔsJ                 rhc@s€eZdZddd„Zdd„Zdd„Zdd „Zd d „Zd d „Zdd„Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zddd„ZdS) rNcCs.i|_d|_d|_d|_|dk r*| |¡dS©N)Ú_infoÚ_charsetÚ_output_charsetÚ _fallbackrA©ÚselfÚfpr!r!r"Ú__init__ÿs zNullTranslations.__init__cCsdSrir!rnr!r!r"rAszNullTranslations._parsecCs|jr|j |¡n||_dSri)rmÚ add_fallback)roÚfallbackr!r!r"rr szNullTranslations.add_fallbackcCs|jr|j |¡S|Sri)rmr )roÚmessager!r!r"r s zNullTranslations.gettextc Csrddl}| dtd¡|jrR| ¡(| ddt¡|j |¡W5QR£SQRX|jrd| |j¡S| t   ¡¡S)Nrú/lgettext() is deprecated, use gettext() insteadr\Úignoreú.*\blgettext\b.*) rPrQrRrmÚcatch_warningsÚfilterwarningsrrlÚencoderÚgetpreferredencoding)rortrPr!r!r"rsÿ ÿ zNullTranslations.lgettextcCs*|jr|j |||¡S|dkr"|S|SdS©Nr2)rmr)roÚmsgid1Úmsgid2r9r!r!r"r"s zNullTranslations.ngettextc Csˆddl}| dtd¡|jrV| ¡,| ddt¡|j |||¡W5QR£SQRX|dkrd|}n|}|jrz| |j¡S| t   ¡¡S)Nrú1lngettext() is deprecated, use ngettext() insteadr\rvú.*\blngettext\b.*r2) rPrQrRrmrxryrrlrzrr{©ror}r~r9rPÚtmsgr!r!r"r*s"ÿ ÿ" zNullTranslations.lngettextcCs|jr|j ||¡S|Sri)rmr)roÚcontextrtr!r!r"r;szNullTranslations.pgettextcCs,|jr|j ||||¡S|dkr$|S|SdSr|)rmr)rorƒr}r~r9r!r!r"r@s zNullTranslations.npgettextcCs|jSri)rj©ror!r!r"ÚinfoHszNullTranslations.infocCs|jSri)rkr„r!r!r"ÚcharsetKszNullTranslations.charsetcCsddl}| dtd¡|jS)Nrzoutput_charset() is deprecatedr\©rPrQrRrl)rorPr!r!r"Úoutput_charsetNs ÿzNullTranslations.output_charsetcCs ddl}| dtd¡||_dS)Nrz"set_output_charset() is deprecatedr\r‡)ror†rPr!r!r"Úset_output_charsetTs ÿz#NullTranslations.set_output_charsetcCsRddl}|j|jd<|dk rNddddddh}|t|ƒ@D]}t||ƒ|j|<q8dS) Nrr_r rrrrr)Úbuiltinsr Ú__dict__ÚsetÚgetattr)roÚnamesrŠZallowedÚnamer!r!r"rZs ÿzNullTranslations.install)N)N)rOÚ __module__Ú __qualname__rqrArrr rrrrrr…r†rˆr‰rr!r!r!r"rþs  c@s\eZdZdZdZdZdZdd„Zdd„Zd d „Z d d „Z d d„Z dd„Z dd„Z dd„ZdS)rlÞ*l•$<z%s%s)rr2cCs|d?|d@fS)Néiÿÿr!)roÚversionr!r!r"Ú _get_versionspszGNUTranslations._get_versionsc"Csöddlm}t|ddƒ}i|_}dd„|_| ¡}t|ƒ}|d|dd…ƒd}||jkr||d |dd …ƒ\}} } } d } n6||jkr¦|d |dd …ƒ\}} } } d } n t dd|ƒ‚|  |¡\} }| |j krÞt ddt | ƒ|ƒ‚t d| ƒD]}|| || | d…ƒ\}}||}|| || | d…ƒ\}}||}||kr`||kr`|||…}|||…}n t dd|ƒ‚|dkrld}| d¡D]æ}| ¡ ¡}|sžq„| d¡rº| d¡rºq„d}}d|kr| dd¡\}}| ¡ ¡}| ¡}||j|<|}n|r|j|d|7<|dkr8| d¡d|_n0|dkr„| d¡}|d d¡d}t|ƒ|_q„|jpvd}d|krÌ| d¡\}} | d¡}t ||ƒ}t|ƒD]\}}!t |!|ƒ|||f<q¬nt ||ƒ|t ||ƒ<| d7} | d7} qèdS)Nr)ÚunpackrrcSs t|dkƒSr|)rB)r9r!r!r"Ú}óz(GNUTranslations._parse..z4Iz>IIzBad magic numberzBad version number ézFile is corruptó z #-#-#-#-#r?r2Ú z content-typezcharset=z plural-formsú;zplural=Úasciió)Zstructr•rÚ_catalogrÚreadrVÚLE_MAGICÚBE_MAGICÚOSErrorr”ÚVERSIONSÚstrraÚsplitÚdecodeÚstripÚ startswithÚendswithÚlowerrjrkr[Ú enumerate)"rorpr•ÚfilenameZcatalogZbufZbuflenÚmagicr“ZmsgcountZ masteridxZtransidxZiiZ major_versionZ minor_versionr/ZmlenZmoffZmendZtlenZtoffZtendÚmsgr‚ZlastkZb_itemÚitemÚkÚvrr†r}r~Úxr!r!r"rAtsv                      zGNUTranslations._parsecCshddl}| dtd¡tƒ}|j ||¡}||krH|jrD|j |¡S|}|jrZ|  |j¡S|  t   ¡¡S)Nrrur\) rPrQrRÚobjectržrErmrrlrzrr{)rortrPÚmissingr‚r!r!r"rÍsÿ  zGNUTranslations.lgettextcCsddl}| dtd¡z|j|| |¡f}Wn@tk rn|jrX|j |||¡YS|dkrf|}n|}YnX|jr‚|  |j¡S|  t   ¡¡S)Nrrr\r2) rPrQrRržrÚKeyErrorrmrrlrzrr{rr!r!r"rÛs ÿ  zGNUTranslations.lngettextcCs6tƒ}|j ||¡}||kr2|jr.|j |¡S|S|Sri)r³ržrErmr )rortr´r‚r!r!r"r ìs zGNUTranslations.gettextcCs^z|j|| |¡f}Wn@tk rX|jrB|j |||¡YS|dkrP|}n|}YnX|Sr|)ržrrµrmr)ror}r~r9r‚r!r!r"rõs zGNUTranslations.ngettextcCsF|j||f}tƒ}|j ||¡}||krB|jr>|j ||¡S|S|Sri)ÚCONTEXTr³ržrErmr)rorƒrtÚ ctxt_msg_idr´r‚r!r!r"rszGNUTranslations.pgettextc Csn|j||f}z|j|| |¡f}WnBtk rh|jrR|j ||||¡YS|dkr`|}n|}YnX|Sr|)r¶ržrrµrmr)rorƒr}r~r9r·r‚r!r!r"r s zGNUTranslations.npgettextN)rOrr‘r r¡r¶r£r”rArrr rrrr!r!r!r"rdsY   Fc Csâ|dkr t}|dkrRg}dD]"}tj |¡}|r| d¡}q@qd|krR| d¡g}|D]$}t|ƒD]}||krf| |¡qfqZ|rŠg} nd} |D]J}|dkr¢qÞtj ||dd|¡} tj  | ¡r’|rÔ|  | ¡q’| Sq’| S)N)ZLANGUAGEÚLC_ALLÚ LC_MESSAGESZLANGr?ÚCr¹z%s.mo) Ú_default_localedirÚosÚenvironrEr¥rbrhÚpathÚjoinÚexists) ÚdomainÚ localedirÚ languagesÚallZenvarrgZnelangsZlangZnelangrGÚmofiler!r!r"rs8       Z unspecifiedc Cs|dkr t}t|||dd}|sB|r*tƒSddlm}t|d|ƒ‚d}|D]Æ} |tj | ¡f} t   | ¡} | dkr–t | dƒ} t   | || ƒ¡} W5QRXddl } |   | ¡} |tk röddl}| dtd¡|rö| ¡| d d t¡|  |¡W5QRX|dkr| }qJ| | ¡qJ|S) NT)rÄr)ÚENOENTz$No translation file found for domainÚrbzparameter codeset is deprecatedr\rvz.*\bset_output_charset\b.*)rrrÚerrnorÆÚFileNotFoundErrorr¼r¾ÚabspathÚ _translationsrEÚopenÚ setdefaultÚcopyÚ _unspecifiedrPrQrRrxryr‰rr)rÁrÂrÃZclass_rsrfZmofilesrÆrGrÅÚkeyÚtrprÎrPr!r!r"rCsH ÿ   ÿ ÿ  cCst||d|d}| |¡dS)NT)rsrf)rr)rÁrÂrfrŽrÑr!r!r"rnsZmessagescCs|dk r |atSri)Ú_current_domain)rÁr!r!r"r|scCs|dk r|t|<t |t¡Sri)Ú _localedirsrEr»)rÁrÂr!r!r"r ƒscCs0ddl}| dtd¡|dk r&|t|<t |¡S)Nrz'bind_textdomain_codeset() is deprecatedr\)rPrQrRÚ_localecodesetsrE)rÁrfrPr!r!r"r ŠsÿcCs:zt|t |d¡ƒ}Wntk r.|YSX| |¡Sri)rrÓrEr¢r )rÁrtrÑr!r!r"r ”s  c Cs¼ddl}| dtd¡t |¡}z<| ¡*| ddt¡t|t |d¡|d}W5QRXWn&t k r‚|  |pzt   ¡¡YSX| ¡&| ddt¡|  |¡W5QR£SQRXdS)Nrz1ldgettext() is deprecated, use dgettext() insteadr\rvú.*\bparameter codeset\b.*©rfrw)rPrQrRrÔrErxryrrÓr¢rzrr{r)rÁrtrPrfrÑr!r!r"r›s&ÿ  ÿ$ ÿcCsRzt|t |d¡ƒ}Wn,tk rB|dkr6|YS|YSYnX| |||¡Sr|)rrÓrEr¢r)rÁr}r~r9rÑr!r!r"r ¬sc CsÒddl}| dtd¡t |¡}z<| ¡*| ddt¡t|t |d¡|d}W5QRXWn8t k r”|dkrz|}n|}|  |pŒt   ¡¡YSX| ¡*| ddt¡|  |||¡W5QR£SQRXdS) Nrz3ldngettext() is deprecated, use dngettext() insteadr\rvrÕrÖr2r€)rPrQrRrÔrErxryrrÓr¢rzrr{r)rÁr}r~r9rPrfrÑr‚r!r!r"r¶s,ÿ  ÿ$ ÿcCs<zt|t |d¡ƒ}Wntk r.|YSX| ||¡Sri)rrÓrEr¢r)rÁrƒrtrÑr!r!r"rÌs  cCsTzt|t |d¡ƒ}Wn,tk rB|dkr6|YS|YSYnX| ||||¡Sr|)rrÓrEr¢r)rÁrƒr}r~r9rÑr!r!r"rÔscCs tt|ƒSri)r rÒ)rtr!r!r"r ßsc CsNddl}| dtd¡| ¡&| ddt¡tt|ƒW5QR£SQRXdS)Nrrur\rvz.*\bldgettext\b.*)rPrQrRrxryrrÒ)rtrPr!r!r"râsÿ ÿcCstt|||ƒSri)r rÒ)r}r~r9r!r!r"rësc CsRddl}| dtd¡| ¡*| ddt¡tt|||ƒW5QR£SQRXdS)Nrrr\rvz.*\bldngettext\b.*)rPrQrRrxryrrÒ)r}r~r9rPr!r!r"rîsÿ ÿcCs tt||ƒSri)rrÒ)rƒrtr!r!r"røscCstt||||ƒSri)rrÒ)rƒr}r~r9r!r!r"rüs)r5)NNF)N)N)N)0rr¼rÚsysÚ__all__r¾r¿Ú base_prefixr»ÚcompileÚVERBOSEÚDOTALLrr#r$rCr«rDrArSr[rhrrrrËrÏrrrÓrÔrÒrr r r rr rrrr rrrrrrr!r!r!r"Ú1s†û  õ    1 $*f7 &ÿ +