+
    Tj5)                         ^ RI t ^ RIHt ^ RIHtHt ^ RIHt ^RIH	t	H
t
 Rt]! R4      tR t]! R	4      t]! R
4      t]! R4      t]! R4      t]! R4      t]! R4      tRR ltR# )    N)StringIO)Lexer	TokenType)_lazy_re_compile)TranslatorCommentWarningtrim_whitespaceTranslatorsz\Sc                ,    \         P                  W4      # )z[
Change every non-whitespace character to the given char.
Used in the templatize function.
)dot_resub)srcchars   &&V/var/www/idalgo/venv/lib/python3.14/site-packages/django/utils/translation/template.pyblankoutr      s    
 ::d      z.^\s+.*context\s+((?:"[^"]*?")|(?:'[^']*?'))\s*z^\s*trans(?:late)?\s+((?:"[^"]*?")|(?:'[^']*?'))(?:\s*\|\s*[^\s:]+(?::(?:[^\s'":]+|(?:"[^"]*?")|(?:'[^']*?')))?)*(\s+.*context\s+((?:"[^"]*?")|(?:'[^']*?')))?\s*zM^\s*blocktrans(?:late)?(\s+.*context\s+((?:"[^"]*?")|(?:'[^']*?')))?(?:\s+|$)z^\s*endblocktrans(?:late)?$z^\s*plural$z_\(((?:".*?")|(?:'.*?'))\)c                j   \        R4      pRpRpRpRp. p. pRp	. p
/ pRpRpR'R lp\        V 4      P                  4        E	F`  pV	'       Ed   VP                  \        P
                  8X  d   VP                  R8X  d   RP                  V
4      pRp\        VP                  R4      4       F3  w  ppVP                  4       P                  \        4      '       g   K1  TpK5  	  \        VP                  R4      4       F<  w  ppVe"   VV8  d   VP                  RV,          4       K+  VP                  R	4       K>  	  Rp	. p
EK  V
P                  VP                  4       EK   V'       Ed   VP                  \        P
                  8X  Ed   \        P!                  VP                  4      p\"        P!                  VP                  4      pV'       EdE   V'       d   V'       d2   VP                  R
P%                  VV! Wv4      V! W4      VR7      4       M/VP                  RP%                  V! Wv4      V! W4      VR7      4       V F  pVP                  \'        VR4      4       K   	  V F  pVP                  \'        VR4      4       K   	  M~V'       d+   VP                  RP%                  VV! Wv4      VR7      4       M(VP                  RP%                  V! Wv4      VR7      4       V F  pVP                  \'        VR4      4       K   	  RpRpRp. p. pEK  V'       d   RpEK  RpV'       d
   RV,          p\)        RVP                  VVP*                  3,          4      hVP                  \        P,                  8X  dS   V'       d&   VP                  RVP                  ,          4       EKi  VP                  RVP                  ,          4       EK  VP                  \        P.                  8X  dM   VP                  P1                  RR4      pV'       d   VP                  V4       EK  VP                  V4       EK  EK  Ve   VP*                  VP                  P3                  R4      ,           pVV8X  dn   VP                  \        P4                  8w  dN   W,           F=  pRpV'       d
   RV,          pRVVV3,          p\6        P8                  ! V\:        4       K?  	  . W&   M-VP                  RRP                  W,          4      ,          4       RpVP                  \        P
                  8X  Ed   \<        P!                  VP                  4      p\>        P!                  VP                  4      p\@        PC                  VP                  4      pV'       Ed   V^,          pV^ ,          R8X  d   VPE                  R4      pMV^ ,          R8X  d   VPE                  R4      pVP1                  RR4      pV^,          '       d   \F        P!                  V^,          4      p V ^,          pV^ ,          R8X  d   VPE                  R4      pMV^ ,          R8X  d   VPE                  R4      pVP                  RP%                  VVVR7      4       RpEKJ  VP                  RP%                  VVR7      4       EKo  V'       d   \@        PC                  VP                  4       F  p!VP                  RV!,          4       K  	  V^,          '       de   \F        P!                  V^,          4      p V ^,          pV^ ,          R8X  d   VPE                  R4      pMV^ ,          R8X  d   VPE                  R4      pRpRpRVPI                  4       9   p. p. pEKF  V'       d%   V F  p"VP                  RV",          4       K  	  EKr  VP                  R8X  d   Rp	EK  VP                  \'        VP                  R4      4       EK  VP                  \        P,                  8X  d   VP                  PK                  R 4      p#\@        P!                  V#^ ,          4      p"V"'       d    VP                  RV"^,          ,          4       V#R!,           Fe  p$V$PM                  R"4      ^ 8  d2   VP                  R#V$PK                  R$^4      ^,          ,          4       KJ  VP                  \'        V$R%4      4       Kg  	  EK  VP                  \        P4                  8X  d{   VP                  P                  4       P                  \        4      '       dE   VPO                  VP*                  . 4      P                  VP                  4       VP*                  pE	K8  E	K;  VP                  \'        VP                  R&4      4       E	Kc  	  VPQ                  4       # )(z
Turn a Django template into something that is understood by xgettext. It
does so by translating the Django translation tags into standard gettext
function invocations.
 NFuc                 N    R P                  V 4      pV'       d   \        V4      pV# )r   )joinr   )tokenstrimmessages   && r   join_tokenstemplatize.<locals>.join_tokens;   s!    ''&/%g.Gr   
endcommentTz # %sz #
z, npgettext({p}{!r}, {p}{!r}, {p}{!r},count) )pz# ngettext({p}{!r}, {p}{!r}, count) SPz pgettext({p}{!r}, {p}{!r}) z gettext({p}{!r}) z	file %s, zDTranslation blocks must not include other block tags: %s (%sline %d)z%%(%s)s%z%%
zjThe translator-targeted comment '%s' (%sline %d) was ignored, because it wasn't the last item on the line.z# %sz | "'z _(%s) trimmedcommentB|:   NNz:_(z %s :FX)F))r   r   tokenize
token_typer   BLOCKcontentsr   	enumerate
splitlineslstrip
startswithTRANSLATOR_COMMENT_MARKwriteappendendblock_rematch	plural_reformatr   SyntaxErrorlinenoVARTEXTreplacecountCOMMENTwarningswarnr   	inline_reblock_reconstant_refindallstrip
context_resplit_contentssplitfind
setdefaultgetvalue)%r   originoutmessage_contextintransinpluralr$   singularplural	incommentr%   lineno_comment_mapcomment_lineno_cache
raw_prefixr   tcontenttranslators_comment_startr<   line	endbmatchpluralmatchpartfilemsgr/   
cur_linenocwarn_msgimatchbmatchcmatchesgcontext_matchfmatchcmatchpartsr   s%   &&                                   r   
templatizerm   '   s    2,COGHGHFIGJ 3Z  "9||y.1::3M'''*,0)$-g.@.@.F$GLFD{{}//0GHH4:1 %H %.g.@.@.F$GLFD1="&??		'D.1		&) %H "	qzz*W||y.'--ajj9	'ooajj99*II N U U$3$/$B$/$@&0	 !V !"  II E L L$/$B$/$@&0 !M !" %-DIIhtS&9: %-$*DIIhtS&9: %+ +II > E E$3$/$B&0 !F !"  II 4 ; ;$/$B&0 !< !" %-DIIhtS&9: %-&*O#G$H!HF #H G"-"6%),-JJ+JK  .MM)ajj"89OOI

$:;/::--c48MM(+OOH- 0 $/XX

(8(8(>>
':5||y'8'88!3!I!IA&(G%*5*>!= "#G-A B	(CH
 %MM(4LM "J DF*@II,>,T!UU (,$||y."4!

3&..qzz:6q	Ats{GGCL1GGCL		#t,Aayy(2(8(8(C*7*:*1-4.=.C.CC.HO,Q/36.=.C.CC.HO		:AA /j B 
 +/		"6"="=a:"="NO"-"5"5ajj"A		)f"45 #Bayy(2(8(8(C*7*:*1-4.=.C.CC.HO,Q/36.=.C.CC.HO"G$H'1+;+;+==G!HF"*		)f"45 #+ZZ9, $IIIhqzz378.

((-$**584IIi&)34rAvve})		&1773?1+="=>		(1c"23	 #
 !2!22::$$&112IJJ&11!((B?FFqzzR+,88( K 		(1::s34i #j <<>r   )N)rB   ior   django.template.baser   r   django.utils.regex_helperr   r   r   r   r4   r   r   rI   rD   rE   r7   r9   rF   rm    r   r   <module>rr      s}      1 6 7' 	%	 ! ST
<	 X AB/0	@AOr   