+
    Tj
%                         ^ RI Ht ^ RIHt Rt ! R R]4      t ! R R]4      t ! R R4      t ! R	 R
]4      t	 ! R R]4      t
 ! R R]	4      tRR ltR# )    )contextmanager)copyc                       ] tR t^tRtRtR# )ContextPopExceptionz,pop() has been called more times than push() N)__name__
__module____qualname____firstlineno____doc____static_attributes__r       L/var/www/idalgo/venv/lib/python3.14/site-packages/django/template/context.pyr   r      s    2r   r   c                   >   a a ] tR t^t oV 3R ltR tR tRtVtV ;t	# )ContextDictc                j   < \         SV `  ! V/ VB  VP                  P                  V 4       Wn        R # N)super__init__dictsappendcontext)selfr   argskwargs	__class__s   &&*,r   r   ContextDict.__init__   s,    $)&)T"r   c                    V # r   r   r   s   &r   	__enter__ContextDict.__enter__   s    r   c                :    V P                   P                  4        R # r   )r   pop)r   r   r   s   &*,r   __exit__ContextDict.__exit__   s    r   )r   )
r   r	   r
   r   r   r    r$   r   __classdictcell____classcell__r   __classdict__s   @@r   r   r      s      r   r   c                      a  ] tR t^t o RR ltRR ltR tR tR tR t	R t
R	 tR
 tR tR tR tRR ltRR ltRR ltR tR tRtV tR# )BaseContextNc                (    V P                  V4       R # r   )_reset_dicts)r   dict_s   &&r   r   BaseContext.__init__   s    % r   c                    R RRRRR/pV.V n         \        V\        4      '       d-   V ;P                   VP                   R,          ,          un         R# Ve   V P                   P                  V4       R# R# )TrueTFalseFNoneN   NN)r   
isinstancer+   r   )r   valuebuiltinss   && r   r-   BaseContext._reset_dicts    s]    D'5&$?Z
e[))JJ%++b/)JJJe$ r   c                    \        4       pV P                  Vn        \        V P                  4      Vn        V P                  R ,          Vn        V# ):NNN)r+   r   r   __dict__r   )r   	duplicates   & r   __copy__BaseContext.__copy__(   s;    M	"nn	!$--0	**Q-	r   c                ,    \        V P                  4      # r   )reprr   r   s   &r   __repr__BaseContext.__repr__/   s    DJJr   c                ,    \        V P                  4      # r   reversedr   r   s   &r   __iter__BaseContext.__iter__2   s    

##r   c                    . pV FE  p\        V\        4      '       d   W4P                  R ,          ,          pK4  VP                  V4       KG  	  \	        V .VO5/ VB # )r4   )r6   r+   r   r   r   )r   r   r   r   ds   &*,  r   pushBaseContext.push5   sP    A![))$Q	 
 42%2622r   c                v    \        V P                  4      ^8X  d   \        hV P                  P                  4       # )r5   )lenr   r   r#   r   s   &r   r#   BaseContext.pop>   s)    tzz?a%%zz~~r   c                0    W P                   R,          V&   R# )z%Set a variable in the current contextNr   )r   keyr7   s   &&&r   __setitem__BaseContext.__setitem__C   s    #

2sr   c                    V P                   R,          p\        V P                   4       F  pW9   g   K  Tp M	  W#V&   R# )zd
Set a variable in one of the higher contexts if it exists there,
otherwise in the current context.
NrP   )r   rE   )r   rR   r7   r   rI   s   &&&  r   
set_upwardBaseContext.set_upwardG   s:    
 **R.$**%Ax & r   c                p    \        V P                  4       F  pW9   g   K  W!,          u # 	  \        V4      h)zJ
Get a variable's value, starting at the current context and going
upward
)rE   r   KeyError)r   rR   rI   s   && r   __getitem__BaseContext.__getitem__S   s/    
 $**%Axv & smr   c                .    V P                   R,          V R# )z*Delete a variable from the current contextNrP   rQ   r   rR   s   &&r   __delitem__BaseContext.__delitem__]   s    JJrN3r   c                   a \         ;QJ d)    V3R  lV P                   4       F  '       g   K   R# 	  R# ! V3R  lV P                   4       4      # )c              3   .   <"   T F
  pSV9   x  K  	  R # 5ir   r   ).0rI   rR   s   & r   	<genexpr>+BaseContext.__contains__.<locals>.<genexpr>b   s     0Z3!8Zs   TF)anyr   r]   s   &fr   __contains__BaseContext.__contains__a   s4    s0TZZ0ss0s0s0TZZ000r   c                ^    \        V P                  4       F  pW9   g   K  W1,          u # 	  V# r   rD   )r   rR   	otherwiserI   s   &&& r   getBaseContext.getd   s)    $**%Axv & r   c                @     W,          #   \          d	    Y T&    T# i ; ir   )rY   )r   rR   defaults   &&&r   
setdefaultBaseContext.setdefaultj   s*    	 9 	 I	 s   
 c                >    \        V 4      pVP                  V4       V# )zc
Return a new context with the same properties, but with only the
values given in 'values' stored.
)r   r-   )r   valuesnew_contexts   && r   newBaseContext.newq   s!    
 4j  (r   c                R    / pV P                    F  pVP                  V4       K  	  V# )z&
Return self.dicts as one dictionary.
)r   update)r   flatrI   s   &  r   flattenBaseContext.flattenz   s'     AKKN r   c                |    \        V\        4      '       g   \        # V P                  4       VP                  4       8H  # )z>
Compare two contexts by comparing theirs 'dicts' attributes.
)r6   r+   NotImplementedrx   )r   others   &&r   __eq__BaseContext.__eq__   s.     %--!!||~00r   rQ   r   )r   r	   r
   r   r   r-   r=   rA   rF   rJ   r#   rS   rV   rZ   r^   rf   rj   rn   rs   rx   r}   r   r&   r)   s   @r   r+   r+      s_     !% $3 
$
 11 1r   r+   c                   \   a a ] tR t^t oRtRV 3R llt]R 4       tV 3R ltR t	Rt
VtV ;t# )Contextz&A stack container for variable contextc                   < W n         W0n        W@n        R V n        \	        4       V n        RV n        \        SV `!  V4       R# )unknownN)	
autoescapeuse_l10nuse_tztemplate_nameRenderContextrender_contexttemplater   r   )r   r.   r   r   r   r   s   &&&&&r   r   Context.__init__   s:    $ &+o r   c              #  |   "   V P                   e   \        R4      hWn          R x  R V n         R #   R T n         i ; i5i)N&Context is already bound to a template)r   RuntimeError)r   r   s   &&r   bind_templateContext.bind_template   s6     ==$GHH 	! DMDDMs    <0 	<	9<c                X   < \         SV `  4       p\        V P                  4      Vn        V# r   )r   r=   r   r   )r   r<   r   s   & r   r=   Context.__copy__   s)    G$&	#'(;(;#<	 r   c                    \        VR4      '       g   \        R4      h\        V\        4      '       d"   VP                  R,          P                  4       p\        W4      # )z;Push other_dict to the stack of dictionaries in the ContextrZ   z6other_dict must be a mapping (dictionary-like) object.r4   )hasattr	TypeErrorr6   r+   r   r#   r   )r   
other_dicts   &&r   rv   Context.update   sL    z=11TUUj+..#))"-113J4,,r   )r   r   r   r   r   r   )NTNN)r   r	   r
   r   r   r   r   r   r=   rv   r   r&   r'   r(   s   @@r   r   r      s0     ,	  ! !
- -r   r   c                   X   a  ] tR t^t o RtRtR tR tR	R ltR t	]
R
R l4       tRtV tR# )r   a  
A stack container for storing Template state.

RenderContext simplifies the implementation of template Nodes by providing
a safe place to store state between invocations of a node's `render`
method.

The RenderContext also provides scoping rules that are more sensible for
'template local' variables. The render context stack is pushed before each
template is rendered, creating a fresh scope with nothing in it. Name
resolution fails if a variable is not found at the top of the
RequestContext stack. Thus, variables are local to a specific template and
don't affect the rendering of other templates as they would if they were
stored in the normal template context.
Nc              #  H   "   V P                   R,           Rj  xL
  R#  L5i)r5   NrP   rQ   r   s   &r   rF   RenderContext.__iter__   s     ::b>!!s   " "c                ,    WP                   R,          9   # r5   rP   rQ   r]   s   &&r   rf   RenderContext.__contains__   s    jjn$$r   c                F    V P                   R,          P                  W4      # r   )r   rj   )r   rR   ri   s   &&&r   rj   RenderContext.get   s    zz"~!!#11r   c                6    V P                   R,          V,          # r   rQ   r]   s   &&r   rZ   RenderContext.__getitem__   s    zz"~c""r   c              #     "   V P                   pWn         V'       d   V P                  4         R x  W0n         V'       d   V P                  4        R # R #   Y0n         T'       d   T P                  4        i i ; i5ir   )r   rJ   r#   )r   r   isolated_contextinitials   &&& r   
push_stateRenderContext.push_state   sV     -- IIK	#M
   $M
  s   +A8A "A8!A55A8)r   r   )T)r   r	   r
   r   r   r   rF   rf   rj   rZ   r   r   r   r&   r   s   @r   r   r      s9       H"%2# 
 
r   r   c                   Z   a a ] tR t^t oRtRV 3R llt]R 4       tRV 3R lltRt	Vt
V ;t# )RequestContextz
This subclass of template.Context automatically populates itself using
the processors defined in the engine's configuration.
Additional processors can be specified as a list of callables
using the "processors" keyword argument.
c                   < \         SV `  W$WVR 7       Wn        Vf   RM
\        V4      V n        \        V P                  4      V n        V P                  / 4       V P                  / 4       R# ))r   r   r   Nr   )	r   r   requesttuple_processorsrM   r   _processors_indexrv   )r   r   r.   
processorsr   r   r   r   s   &&&&&&&r   r   RequestContext.__init__   sZ     	&X!+!32z9J!$TZZ 	B 	Br   c              #    "   V P                   e   \        R4      hWn         VP                  P                  V P                  ,           p/ pV F'  pV! V P
                  4      p VP                  V4       K)  	  W0P                  V P                  &    R x  R V n         / V P                  V P                  &   R #   \         d    p\        RTP                   R24      ThR p?ii ; i  R T n         / T P                  T P                  &   i ; i5i)Nr   zContext processor z didn't return a dictionary.)r   r   enginetemplate_context_processorsr   r   rv   r   r
   r   r   )r   r   r   updates	processorr   es   &&     r   r   RequestContext.bind_template   s     ==$GHH __@@4CSCSS
#I-Gw' $ .5

4))*	4 DM13DJJt--.  ()?)?(@ A" "  !DM13DJJt--.sB   A D	#B74D	C$ "D	7C!CC!!D	$"DD	c                N   < \         SV `  V4      p\        VR 4      '       d   V=V# )r   )r   rs   r   r   )r   rq   rr   r   s   && r   rs   RequestContext.new  s-    gk&) ; 344-r   )r   r   r   r   )NNNNTr   )r   r	   r
   r   r   r   r   r   rs   r   r&   r'   r(   s   @@r   r   r      s-     * 4 46 r   r   Nc                    V e=   \        V \        4      '       g'   \        RV P                  P                  ,          4      hVf   \        V 3/ VB p V # T p\        V3/ VB p V'       d   V P                  V4       V # )zL
Create a suitable Context from a plain dict and optionally an HttpRequest.
z&context must be a dict rather than %s.)r6   dictr   r   r   r   r   rJ   )r   r   r   original_contexts   &&, r   make_contextr   "  s     :gt#<#<4w7H7H7Q7QQ
 	
 ',V, N	 # 3F3LL)*Nr   )z'django.template.context_processors.csrfr   )
contextlibr   r   _builtin_context_processors	Exceptionr   r   r   r+   r   r   r   r   r   r   r   <module>r      se    %  K 	) 	$ n1 n1b#-k #-L*K *Z?W ?Dr   