fHS ddlZddlZddlZddlZgdZejejddZej dej ej zZ dZ dZdZd eed DZd d d dZd(dZdZdZdZGddZGddeZd)dZiZ d*dZd+dddZiadad+dZd+dZd Z d!Z!d"Z"d#Z#d$Z$d%Z%d&Z&d'Z'eZ(dS),N)NullTranslationsGNUTranslationsCatalogbindtextdomainfind translationinstall textdomaindgettext dngettextgettextngettextpgettext dpgettext npgettext dnpgettextsharelocalea (?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 c#Ktjt|D]A}|j}|dkr||}|dkrt d|z|VBdVdS)N WHITESPACESINVALIDz invalid token in plural form: %s)refinditer_token_pattern lastgroupgroup ValueError)pluralmokindvalues ./opt/alt/python311/lib64/python3.11/gettext.py _tokenizer$Ws|k.&11| =  9  ?%GHH H HHHHHcH|rtd|zStdS)Nz#unexpected token in plural form: %szunexpected end of plural form)r)r"s r#_errorr'cs- ;?%GHHH9:::r%))||)&&)z==z!=)<>z<=z>=)+-)*/%c$i|] \}}|D]}||Sr2).0iopsops r# r7rs+KKKCsKKr1KKKKr%orandz//)r(r)r/cBd}t|}|dkr|dz }t|}|dk|dkr0t|\}}|d|d}|dkrtdnD|dkr||}n7 t|d}n#t$rt |dwxYwd ||fz}t|}d }|t vrgt |}||krnS|d vr |d vrd |z}t ||}t||d z\} }|d|d| }|}|t vg||cxkrdkrnnd |z}|dkrU|dkrOt|d\} }|dkrt |t|\} }| d|d| }|dkrd |z}||fS)Nr!znot ()z%unbalanced parenthesis in plural formn z%s%dd)z(%s)r8 rD?r:z if z else )next_parserintr' _binary_ops _c2py_opsget) tokenspriorityresultnexttoksubr"jr4r6rightif_trueif_falses r#rIrIvs0 F6llG S..&v,, S..#~~f~~ W#VVSSS) c>>DEE E  C!677+ ,$$EE , , ,//t + ,65/)6llG A [   x<<  ;;1;;f_F ]]7G , ,A..w%vvrrr551  [  H&#~~(a--!&!,, c>>// !"6NN''.wwA q==f_F 7?s 6BB"c t|n+#t$rtd|jjdwxYwddl}t jd}d}|jY|j dtkr6|dz }|j}|j#|j dtk6| d|jjt||S)Nz%Plural value must be an integer, got rr8__name__) round TypeError __class__rYwarningssys _getframef_back f_globalsrMwarnDeprecationWarning)r@r]frame stacklevels r#_as_intrfs; a ;;;i--0116: ;;OOO M!  EJ , "u':'::'F'F('R'Ra   , "u':'::'F'F('R'R MMM;''*$ Hs(:c t|dkrtd tt|\}}|rt |d}|D].}|dkr|dz }|dkrtd#|dkr|dz}/t t d }td |z||d S#t$rtdwxYw) Niz"plural form expression is too longrr>r8z%plural form expression is too complexr?)rfrYzif True: def func(n): if not isinstance(n, int): n = _as_int(n) return int(%s) func) lenrrIr$r'rfrYexecRecursionError)rrPrQdepthcnss r#c2pyrps# 6{{T=>>>B 6!2!233  "// !  ACxx 2::%%LMMMc  h 7 7         &z BBB@AAABs B B22C cbddl}||}d}d}d}d}|d}|dkr||d}|d|}||z}nd}|d}|dkr||d}|d|}||z}nd}|d}|dkr||d} |d|}||z}nd} |} g} t|dzD]=} | |zs5| } | |zr| | z } | |zr| |z } | |zr| |z } | | >| | S) Nrr8rXrD@r._)r normalizerrangeappendreverse)locrCOMPONENT_CODESETCOMPONENT_TERRITORYCOMPONENT_MODIFIERmaskposmodifiercodeset territorylanguageretr4vals r# _expand_langrsMMM   3  C    D ((3--C axxstt9$3$i "" ((3--C axxcdd)$3$i !! ((3--C axxI $3$i ## H C 46]]TE  C&& 8y(8$$ 6w%% 7x JJsOOOKKMMM Jr%cNeZdZd dZdZdZdZdZdZdZ d Z d Z d d Z dS) rNcbi|_d|_d|_|||dSdSN)_info_charset _fallbackrIselffps r#__init__zNullTranslations.__init__ s6   > KKOOOOO >r%cdSrr2rs r#rIzNullTranslations._parses r%cZ|jr|j|dS||_dSr)r add_fallback)rfallbacks r#rzNullTranslations.add_fallbacks3 > & N ' ' 1 1 1 1 1%DNNNr%cH|jr|j|S|Sr)rr )rmessages r#r zNullTranslations.gettexts' > 3>))'22 2r%c\|jr|j|||S|dkr|S|SNr8)rr)rmsgid1msgid2r@s r#rzNullTranslations.ngettext s9 > >>**661== = 66MMr%cJ|jr|j||S|Sr)rr)rcontextrs r#rzNullTranslations.pgettext(s) > =>**7G<< <r%c^|jr|j||||S|dkr|S|Sr)rr)rrrrr@s r#rzNullTranslations.npgettext-s< > H>++GVVQGG G 66MMr%c|jSr)rrs r#infozNullTranslations.info5s zr%c|jSr)rrs r#charsetzNullTranslations.charset8s }r%cddl}|j|jd<|1hd}|t|zD]}t |||j|<dSdS)Nrrt>r rrr)builtinsr __dict__setgetattr)rnamesrallowednames r#r zNullTranslations.install;sq!%#  FFFG#e**, > >*1$*=*=!$''   > >r%r) rY __module__ __qualname__rrIrr rrrrrr r2r%r#rr s   &&&   >>>>>>r%rcBeZdZdZdZdZdZdZdZdZ dZ d Z d Z d S) rl*l$<z%s%s)rr8c |dz |dzfS)Nir2)rversions r# _get_versionszGNUTranslations._get_versionsPs=2 w/00r%c@ ddlm}t|dd}ix|_}d|_|}t |}|d|ddd}||jkr|d|dd \}} } } d } n8||jkr|d |dd \}} } } d } ntdd || |\} }| |j vr!tddt| z|td| D]}|| || | dz\}}||z}|| || | dz\}}||z}||kr||kr|||}|||}ntdd||dkrjd}|dD]Q}|}|s,|dr|drWdx}}d|vr`|dd\}}|}|}||j|<|}n|r|j|xxd|zz cc<|dkr"|dd|_|dkrJ|d}|ddd}t-||_S|jpd}d|vrh|d\}} |d}t||}t/|D]\}}!t|!||||f<n!t|||t||<| dz } | dz } dS)Nr)unpackrrc(t|dkSr)rJ)r@s r#z(GNUTranslations._parse..]sAF r%z4Iz>IIzBad magic numberzBad version number zFile is corrupt z #-#-#-#-#rGr8 z content-typezcharset=z plural-forms;zplural=ascii)structrr_catalogrreadrjLE_MAGICBE_MAGICOSErrorrVERSIONSstrrvsplitdecodestrip startswithendswithlowerrrrp enumerate)"rrrfilenamecatalogbufbuflenmagicrmsgcount masteridxtransidxii major_version minor_versionr4mlenmoffmendtlentofftendmsgtmsglastkb_itemitemkvrrrrxs" r#rIzGNUTranslations._parseTsF "!!!!!2vr**#%$ ++ ggiiStS!W%%a( DM ! !5;VE3qt95M5M 2GXy(BB dm # #5;VE3qt95M5M 2GXy(BB!/:: :'+'9'9''B'B$ }  - -!2S5G5GGRR Rq(##9 9 AC )A+(=$>??JD$$;DC!(;$<==JD$$;Df}}$t)n49~a!2H===qyy"jj//33F!==??0022D! {33! k8R8R!  LAd{{#zz#q111GGIIOO--GGII() 1 !9 5)))TD[8)))N**() (;(;A(> n,,GGCLL!"1I!6!6q!9&*6ll m.wG#~~!$7!3!3zz'**VW--%dOO;;DAq+.q'??GVQK((;.1w-?-?C))* NI MHHs9 9 r%ct}|j||}||ur0|j||df|}||ur|S|jr|j|S|Sr)objectrrMrrr )rrmissingrs r#r zGNUTranslations.gettexts((}  '22 7??=$$gt{{1~~%>HHD w  K > 3>))'22 2r%c |j|||f}n@#t$r3|jr|j|||cYS|dkr|}n|}YnwxYw|Sr)rrKeyErrorrr)rrrr@rs r#rzGNUTranslations.ngettexts =&$++a..!9:DD   ~ B~..vvqAAAAAAvv   s"%-A" A"!A"c(|j||fz}t}|j||}||ur0|j||df|}||ur|S|jr|j||S|Sr)CONTEXTrrrMrrr)rrr ctxt_msg_idrrs r#rzGNUTranslations.pgettextslgw%77 ((}  g66 7??=$$k4;;q>>%BGLLD w  K > =>**7G<< <r%c|j||fz} |j|||f}nA#t$r4|jr|j||||cYS|dkr|}n|}YnwxYw|Sr)rrrrrr)rrrrr@rrs r#rzGNUTranslations.npgettextslgv%66  =dkk!nn!<=DD   ~ L~//KKKKKAvv   s"1.A/! A/.A/N) rYrrrrrrrrIr rrrr2r%r#rrDsHHGH111WWWr              r%rFc|t}|Xg}dD]:}tj|}|r|d}n;d|vr|dg}|D]-}t |D]}||vr||.|rg} nd} |D]j}|dkrnatj||dd|z} tj | r|r| | f| cSk| S)N)LANGUAGELC_ALL LC_MESSAGESLANGrGCrz%s.mo) _default_localedirosenvironrMrrwrpathjoinexists) domain localedir languagesallenvarrnelangslangnelangrPmofiles r#rrsc&  B  E*..''C IIcNN   i     S ! ! !G''"4(( ' 'FW$$v&&& '  3;; Ei}g>NOO 7>>& ! !   f%%%%   Mr%c|t}t|||d}|s'|rtSddlm}t |d|d}|D]}|t j|f} t | } | Lt|d5} t | || } dddn #1swxYwYddl } | | } || }|| |S)NT)rr)ENOENTz$No translation file found for domainrb)rrrerrnorFileNotFoundErrorrrabspath _translationsrMopen setdefaultcopyr) rrrclass_rmofilesrrPrkeytrr s r#rrst ~ 69iT:::G P  &#%% %       FPP PF##rwv../   c " " 9fd## >r!,,S&&**== > > > > > > > > > > > > > > >  IIaLL >FF    " " " " Ms%C  C C )rcTt||d}||dS)NT)r)rr )rrrrs r#r r )s.FI555AIIer%messagesc||atSr)_current_domain)rs r#r r 4s   r%cZ| |t|<t|tSr) _localedirsrMr)rrs r#rr;s'' F ??6#5 6 66r%c t|t|d}n#t$r|cYSwxYw||Sr)rrrMrr )rrrs r#r r Bs\   = = > >  99W   ), ;;c t|t|d}n#t$r|dkr|cYS|cYSwxYw||||Sr)rrrMrr)rrrr@rs r#r r Jst   = = > >  66MMMMMM  ::ffa ( ((),AAAc t|t|d}n#t$r|cYSwxYw|||Sr)rrrMrr)rrrrs r#rrUs^   = = > >  ::gw ' ''rc t|t|d}n#t$r|dkr|cYS|cYSwxYw|||||Sr)rrrMrr)rrrrr@rs r#rr]sv   = = > >  66MMMMMM  ;;w 2 22rc,tt|Sr)r r)rs r#r r hs OW - --r%c0tt|||Sr)r r)rrr@s r#rrls _ffa 8 88r%c.tt||Sr)rr)rrs r#rrps _gw 7 77r%c2tt||||Sr)rr)rrrr@s r#rrts ow B BBr%)r;)NNF)NNNFr))operatorrrr^__all__rr base_prefixrcompileVERBOSEDOTALLrr$r'rKrrLrIrfrprrrrrrr rrr rr r rrr rrrrr2r%r#r%s `    W\\#/7HEE  BI       ;;; LK99[!#<#<KKK u4 0 0 ////d   (!B!B!BH'''T7>7>7>7>7>7>7>7>tWWWWW&WWWv!!!!J 37&+DT  7777)))(((333...999888CCC$ r%