grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026 й¼]Tã@svddlZddlZddlZddlZddlZddlZddlZddlmZddddddd d d d d ddddddgZ ej j ej ddƒZ ejdejejBƒZdd„Zdd„ZdNZd(d)„eed*ƒDƒZdd+dd,d&d-iZdOd.d/„Zd0d1„Zd2d3„Zd4d5„ZGd6d„dƒZGd7d„deƒZddd8d9d„ZiZdddd8dd:d„Zdddd;d„Z ia!ia"d<a#dd=d „Z$dd>d „Z%dd?d „Z&d@d „Z'dAd„Z(dBd „Z)dCd„Z*dDd„Z+dEd„Z,dFd„Z-dGd„Z.eZ/dS)PéN)ÚENOENTÚNullTranslationsÚGNUTranslationsÚCatalogÚfindÚ translationÚinstallÚ textdomainÚbindtextdomainÚbind_textdomain_codesetÚdgettextÚ dngettextÚgettextÚlgettextÚ ldgettextÚ ldngettextÚ lngettextÚngettextÚshareÚ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 ccsnxbtjt|ƒD]N}|j}|dkr1q|j|ƒ}|dkr\td|ƒ‚|VqWdVdS)NÚ WHITESPACESÚINVALIDz invalid token in plural form: %sÚ)ÚreÚfinditerÚ_token_patternÚ lastgroupÚgroupÚ ValueError)ÚpluralÚmoÚkindÚvalue©r#ú,/opt/alt/python35/lib64/python3.5/gettext.pyÚ _tokenizeTs    r%cCs"|rtd|ƒStdƒSdS)Nz#unexpected token in plural form: %szunexpected end of plural form)r)r"r#r#r$Ú_error_sr&ú||ú&&ú==ú!=ú<ú>ú<=ú>=ú+ú-Ú*ú/ú%cCs,i|]"\}}|D]}||“qqSr#r#)Ú.0ÚiZopsÚopr#r#r$ú ms r7éÚorÚandz//c Cs<d}t|ƒ}x&|dkr:|d7}t|ƒ}qW|dkr„t|ƒ\}}d||f}|dkrêtdƒ‚nf|dkr£d ||f}nGyt|d ƒ}Wn!tk rÙt|ƒd‚YnXd ||f}t|ƒ}d }x�|tkr‹t|}||kr"P|dkrD|dkrDd|}tj||ƒ}t||dƒ\} }d||| f}|}qÿW||ko£dknr²d|}|dkr2|dkr2t|dƒ\} }|dkr÷t|ƒ‚t|ƒ\} }d| || f}|dkr2d|}||fS)Nrú!znot ú(z%s(%s)ú)z%unbalanced parenthesis in plural formÚnz%s%sé z%s%dédééz(%s)r8z%s %s %sú?rú:z%s if %s else %s)rArB)rArB)ÚnextÚ_parserÚintr&Ú _binary_opsÚ _c2py_opsÚget) ÚtokensÚpriorityÚresultÚnexttokÚsubr"Újr5r6ÚrightÚif_trueÚif_falser#r#r$rFpsP                rFc CsEyt|ƒ}Wn.tk r@td|jjfƒd‚YnX|S)Nz'Plural value must be an integer, got %s)ÚroundÚ TypeErrorÚ __class__Ú__name__)r>r5r#r#r$Ú_as_int¡s  rXc Csôt|ƒdkrtdƒ‚y±tt|ƒƒ\}}|rKt|ƒ‚d}xU|D]M}|dkr�|d7}|dkr¥tdƒ‚qX|dkrX|d8}qXWd ti}td ||ƒ|d SWntk rïtdƒ‚YnXdS) Nièz"plural form expression is too longrr<r8éz%plural form expression is too complexr=rXz›if True: def func(n): if not isinstance(n, int): n = _as_int(n) return int(%s) Úfunc)ÚlenrrFr%r&rXÚexecÚRecursionError)rrMrNÚdepthÚcÚnsr#r#r$Úc2py©s(          rac Cs tj|ƒ}d}d }d }d}|jdƒ}|dkro||d…}|d|…}||O}nd}|jdƒ}|dkr½||d…}|d|…}||O}nd}|jdƒ}|dkr ||d…}|d|…}||O}nd}|} g} xrt|dƒD]`} | |@s.| } | |@rY| |7} | |@rm| |7} | |@r�| |7} | j| ƒq.W| jƒ| S) Nr8réú@rÚ.Ú_r8rbrB)rÚ normalizerÚrangeÚappendÚreverse) ÚlocÚCOMPONENT_CODESETÚCOMPONENT_TERRITORYÚCOMPONENT_MODIFIERÚmaskÚposÚmodifierÚcodesetÚ territoryÚlanguageÚretr5Úvalr#r#r$Ú _expand_langÍsJ           rvc@s¦eZdZddd„Zdd„Zdd„Zdd „Zd d „Zd d „Zdd„Z dd„Z dd„Z dd„Z dd„Z ddd„ZdS)rNcCsAi|_d|_d|_d|_|dk r=|j|ƒdS)N)Ú_infoÚ_charsetÚ_output_charsetÚ _fallbackrF)ÚselfÚfpr#r#r$Ú__init__øs      zNullTranslations.__init__cCsdS)Nr#)r{r|r#r#r$rFszNullTranslations._parsecCs)|jr|jj|ƒn ||_dS)N)rzÚ add_fallback)r{Úfallbackr#r#r$r~s zNullTranslations.add_fallbackcCs|jr|jj|ƒS|S)N)rzr)r{Úmessager#r#r$r s zNullTranslations.gettextcCsE|jr|jj|ƒS|jr2|j|jƒS|jtjƒƒS)N)rzrryÚencoderÚgetpreferredencoding)r{r€r#r#r$rs   zNullTranslations.lgettextcCs7|jr|jj|||ƒS|dkr/|S|SdS)Nr8)rzr)r{Úmsgid1Úmsgid2r>r#r#r$rs   zNullTranslations.ngettextcCsf|jr|jj|||ƒS|dkr4|}n|}|jrS|j|jƒS|jtjƒƒS)Nr8)rzrryr�rr‚)r{rƒr„r>Útmsgr#r#r$rs    zNullTranslations.lngettextcCs|jS)N)rw)r{r#r#r$Úinfo(szNullTranslations.infocCs|jS)N)rx)r{r#r#r$Úcharset+szNullTranslations.charsetcCs|jS)N)ry)r{r#r#r$Úoutput_charset.szNullTranslations.output_charsetcCs ||_dS)N)ry)r{r‡r#r#r$Úset_output_charset1sz#NullTranslations.set_output_charsetcCs£ddl}|j|jdr#r#r$ÚUsz(GNUTranslations._parse..z4Iz>IIzBad magic numberzBad version number ézFile is corrupts rDr8Ú z content-typezcharset=z plural-formsú;zplural=Úasciis)ÚstructÚunpackÚgetattrÚ_catalogrÚreadr[ÚLE_MAGICÚBE_MAGICÚOSErrorr“ÚVERSIONSÚstrrgÚsplitÚdecodeÚstripÚlowerrwrxraÚ enumerate)"r{r|r›ÚfilenameÚcatalogÚbufÚbuflenÚmagicr’ÚmsgcountÚ masteridxÚtransidxÚiiÚ major_versionÚ minor_versionr5ÚmlenÚmoffÚmendÚtlenÚtoffÚtendÚmsgr…ÚlastkÚb_itemÚitemÚkÚvrr‡rƒr„Úxr#r#r$rFNsr    % % # #             zGNUTranslations._parsecCsutƒ}|jj||ƒ}||krI|jrC|jj|ƒS|}|jrb|j|jƒS|jtjƒƒS)N) Úobjectr�rJrzrryr�rr‚)r{r€Úmissingr…r#r#r$r¢s    zGNUTranslations.lgettextc Cs›y |j||j|ƒf}WnLtk rn|jrO|jj|||ƒS|dkrd|}n|}YnX|jrˆ|j|jƒS|jtjƒƒS)Nr8) r�rÚKeyErrorrzrryr�rr‚)r{rƒr„r>r…r#r#r$r­s       zGNUTranslations.lngettextcCsKtƒ}|jj||ƒ}||krG|jrC|jj|ƒS|S|S)N)rÁr�rJrzr)r{r€rÂr…r#r#r$r»s   zGNUTranslations.gettextc Cssy |j||j|ƒf}WnLtk rn|jrO|jj|||ƒS|dkrd|}n|}YnX|S)Nr8)r�rrÃrzr)r{rƒr„r>r…r#r#r$rÄs      zGNUTranslations.ngettextN)rr8) rWr�r�rŸr r¢r“rFrrrrr#r#r#r$rBs   T  Fc Cs?|dkrt}|dkrvg}x6dD].}tjj|ƒ}|r+|jdƒ}Pq+Wd|krv|jdƒg}x>|D]6}x-t|ƒD]}||kr–|j|ƒq–WqƒW|rÌg} nd} xf|D]^}|dkrìPtjj||dd|ƒ} tjj | ƒrÙ|r3| j| ƒqÙ| SqÙW| S) NÚLANGUAGEÚLC_ALLÚ LC_MESSAGESÚLANGrDÚCz%s.mo)rÄrÅrÆrÇ) Ú_default_localedirÚosÚenvironrJr¤rhrvÚpathÚjoinÚexists) ÚdomainÚ localedirÚ languagesÚallÚenvarruÚnelangsÚlangÚnelangrMÚmofiler#r#r$rÒs8          c Cs|dkrt}t|||ddƒ}|sO|r=tƒSttd|ƒ‚d}x¶|D]®}|tjj|ƒf} tj | ƒ} | dkrÆt |dƒ�} tj | || ƒƒ} WdQRXt j | ƒ} |rè| j |ƒ|dkrý| }q\|j| ƒq\W|S)NrÒTz$No translation file found for domainÚrb)rrrr¡rrÊrÌÚabspathÚ _translationsrJÚopenÚ setdefaultÚcopyr‰r~) rÏrÐrÑÚclass_rrqÚmofilesrMr×ÚkeyÚtr|r#r#r$rús*      cCs,t||ddd|ƒ}|j|ƒdS)NrTrq)rr)rÏrÐrqrŽrár#r#r$rsÚmessagescCs|dk r|atS)N)Ú_current_domain)rÏr#r#r$r 's cCs&|dk r|t|rár#r#r$r Ls   c Cs�tj|ƒ}y%t|tj|dƒd|ƒ}WnFtk r||dkrY|}n|}|j|pttjƒƒSYnX|j|||ƒS)Nrqr8) rårJrrär¡r�rr‚r)rÏrƒr„r>rqrár…r#r#r$rWs%   cCs tt|ƒS)N)r rã)r€r#r#r$rcscCs tt|ƒS)N)rrã)r€r#r#r$rfscCstt|||ƒS)N)r rã)rƒr„r>r#r#r$riscCstt|||ƒS)N)rrã)rƒr„r>r#r#r$rls©r'©r(©r)r*©r+r,r-r.©r/r0©r1r2r3)rærçrèrérêrëéÿÿÿÿ)0rrÝÚiorÊrršÚsysÚerrnorÚ__all__rÌrÍÚ base_prefixrÉÚcompileÚVERBOSEÚDOTALLrr%r&rHr¨rIrFrXrarvrrrrÚrrrärårãr r r r rr rrrrrrr#r#r#r$Ú1sZT    1  $ *K�&