Ë
    Q^(h;)  ã                   ó:  — d dl ZddlmZ ddlmZ ej                  rd dlZdZ	dZ
dZdZ	 dd	ej                  ej                     d
ej                  d   ddfd„Z	 ddej                  d
ej                  d   ddfd„Z G d„ d«      Z G d„ de«      Z G d„ de«      Zy)é    Né   )Únodes)ÚNodeVisitorÚparamÚresolveÚaliasÚ	undefinedr   Úparent_symbolsÚSymbolsÚreturnc                 ód   — t        |¬«      }t        |«      }| D ]  }|j                  |«       Œ |S ©N)Úparent)r   ÚFrameSymbolVisitorÚvisit)r   r
   ÚsymÚvisitorÚnodes        úO/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/jinja2/idtracking.pyÚfind_symbolsr      s8   € ô ˜Ô
(€CÜ  Ó%€GØò ˆØ�‰�dÕðà€Jó    r   c                 ó@   — t        |¬«      }|j                  | «       |S r   )r   Úanalyze_node)r   r
   r   s      r   Úsymbols_for_noder      s!   € ô ˜Ô
(€CØ×Ñ�TÔØ€Jr   c            	       ó(  — e Zd Z	 ddej                  d    dej                  e   ddfd„Zdej                  dej                  ddfd„Z
	 dd	ed
ej                  ej                  eej                  e   f      defd„Zdedej                  ej                     fd„Zd	edej                  e   fd„Zd	edefd„Zdd„Zd	eddfd„Zd	edefd„Zd	eddfd„Zdej*                  d    ddfd„Zdej.                  eef   fd„Zdej2                  e   fd„Zy)r   Nr   Úlevelr   c                 ó†   — |€|€d}n|j                   dz   }|| _         || _        i | _        i | _        t	        «       | _        y )Nr   r   )r   r   ÚrefsÚloadsÚsetÚstores)Úselfr   r   s      r   Ú__init__zSymbols.__init__"   sF   € ð ˆ=Øˆ~Ø‘àŸ™ qÑ(�àˆŒ
ØˆŒØ&(ˆŒ	Ø)+ˆŒ
Ü"%£%ˆ�r   r   Úkwargsc                 ó@   — t        | «      } |j                  |fi |¤Ž y ©N)ÚRootVisitorr   )r"   r   r$   r   s       r   r   zSymbols.analyze_node1   s   € Ü˜dÓ#ˆØˆ�‰�dÑ%˜fÓ%r   ÚnameÚloadc                 ój   — d| j                   › d|› �}|| j                  |<   |�|| j                  |<   |S )NÚl_Ú_)r   r   r   )r"   r(   r)   Úidents       r   Ú_define_refzSymbols._define_ref5   s@   € ð �T—Z‘Z�L  $ Ð(ˆØˆ�	‰	�$‰ØÐØ $ˆD�J‰J�uÑØˆr   Útargetc                 óŒ   — || j                   v r| j                   |   S | j                  �| j                  j                  |«      S y r&   )r   r   Ú	find_load)r"   r/   s     r   r1   zSymbols.find_load>   s?   € Ø�T—Z‘ZÑØ—:‘:˜fÑ%Ð%à�;‰;Ð"Ø—;‘;×(Ñ(¨Ó0Ð0àr   c                 óŒ   — || j                   v r| j                   |   S | j                  �| j                  j                  |«      S y r&   )r   r   Úfind_ref©r"   r(   s     r   r3   zSymbols.find_refG   s>   € Ø�4—9‘9ÑØ—9‘9˜T‘?Ð"à�;‰;Ð"Ø—;‘;×'Ñ'¨Ó-Ð-àr   c                 óJ   — | j                  |«      }|€t        d|›d�«      ‚|S )NzFTried to resolve a name to a reference that was unknown to the frame (ú))r3   ÚAssertionError)r"   r(   Úrvs      r   ÚrefzSymbols.refP   s:   € Ø�]‰]˜4Ó ˆØˆ:Ü ð*Ø*.¨°ð4óð ð ˆ	r   c                 óH  — t         j                  | j                  «      }|j                  j	                  | j                  «       | j
                  j                  «       |_        | j                  j                  «       |_        | j                  j                  «       |_        |S r&   )	ÚobjectÚ__new__Ú	__class__Ú__dict__Úupdater   Úcopyr   r!   )r"   r8   s     r   r@   zSymbols.copyY   sg   € Ü�^‰^˜DŸN™NÓ+ˆØ
�‰×Ñ˜4Ÿ=™=Ô)Ø—)‘)—.‘.Ó"ˆŒØ—:‘:—?‘?Ó$ˆŒØ—K‘K×$Ñ$Ó&ˆŒ	Øˆ	r   c                 ó  — | j                   j                  |«       || j                  vr]| j                  �7| j                  j	                  |«      }|�| j                  |t        |f¬«       y | j                  |t        d f¬«       y y ©N)r)   )r!   Úaddr   r   r3   r.   ÚVAR_LOAD_ALIASÚVAR_LOAD_UNDEFINED)r"   r(   Ú	outer_refs      r   ÚstorezSymbols.storea   s�   € Ø�‰�‰˜Ôð �t—y‘yÑ ð �{‰{Ð&Ø ŸK™K×0Ñ0°Ó6�	ØÐ(Ø×$Ñ$ T´ÀÐ0KÐ$ÔLØð ×Ñ˜TÔ);¸TÐ(BÐÕCð !r   c                 ój   — | j                   j                  |«       | j                  |t        d f¬«      S rB   )r!   rC   r.   ÚVAR_LOAD_PARAMETERr4   s     r   Údeclare_parameterzSymbols.declare_parameters   s.   € Ø�‰�‰˜ÔØ×Ñ Ô,>ÀÐ+EÐÓFÐFr   c                 óZ   — | j                  |«      €| j                  |t        |f¬«       y y rB   )r3   r.   ÚVAR_LOAD_RESOLVEr4   s     r   r)   zSymbols.loadw   s/   € Ø�=‰=˜ÓÐ&Ø×Ñ˜TÔ)9¸4Ð(@ÐÕAð 'r   Úbranch_symbolsc                 óh  — t        «       }|D ]  }|j                  |j                  «       Œ |j                  | j                  «       |D ]q  }| j                  j                  |j                  «       | j
                  j                  |j
                  «       | j                  j                  |j                  «       Œs |D ]p  }| j                  |«      }|€J d«       ‚| j                  �3| j                  j                  |«      }|�t        |f| j
                  |<   Œ\t        |f| j
                  |<   Œr y )Nzshould not happen)
r    r?   r!   Údifference_updater   r   r3   r   rD   rL   )r"   rM   r!   Úbranchr   r(   r/   Úouter_targets           r   Úbranch_updatezSymbols.branch_update{   s  € Ü ›Uˆà$ò 	)ˆFØ�M‰M˜&Ÿ-™-Õ(ð	)ð 	× Ñ  §¡Ô-à!ò 	+ˆCØ�I‰I×Ñ˜SŸX™XÔ&Ø�J‰J×Ñ˜cŸi™iÔ(Ø�K‰K×Ñ˜sŸz™zÕ*ð	+ð
 ò 		:ˆDØ—]‘] 4Ó(ˆFØÐ%Ð:Ð':Ó:Ð%à�{‰{Ð&Ø#Ÿ{™{×3Ñ3°DÓ9�ØÐ+Ü*8¸,Ð)G�D—J‘J˜vÑ&ØÜ"2°DÐ!9ˆD�J‰J�vÒñ		:r   c                 ó–   — i }| }|�Bt        |j                  «      D ]  }||vsŒ| j                  |«      ||<   Œ |j                  }|�ŒB|S r&   )Úsortedr!   r3   r   )r"   r8   r   r(   s       r   Údump_storeszSymbols.dump_stores“   s]   € Ø!ˆØ$(ˆàÐÜ˜tŸ{™{Ó+ò 3�Ø˜r’>Ø#Ÿ}™}¨TÓ2�B�t’Hð3ð —;‘;ˆDð Ñð ˆ	r   c                 óÀ   — t        «       }| }|�O| j                  j                  «       D ]#  \  }\  }}|t        k(  sŒ|j	                  |«       Œ% |j
                  }|�ŒO|S r&   )r    r   ÚitemsrI   rC   r   )r"   r8   r   r/   Úinstrr,   s         r   Údump_param_targetszSymbols.dump_param_targets    sg   € Ü‹UˆØ$(ˆàÐØ&*§j¡j×&6Ñ&6Ó&8ò #Ñ"�™
˜ ØÔ.Ó.Ø—F‘F˜6•Nð#ð —;‘;ˆDð Ñð ˆ	r   )NNr&   )r   zte.Self)Ú__name__Ú
__module__Ú__qualname__ÚtÚOptionalÚintr#   r   ÚNodeÚAnyr   ÚstrÚTupler.   r1   r3   r9   r@   rG   rJ   r)   ÚSequencerR   ÚDictrU   ÚSetrY   © r   r   r   r   !   sv  „ àMQñ(Ø—j‘j Ñ+ð(Ø;<¿:¹:Àc¹?ð(à	ó(ð& §¡ð &°q·u±uð &Àó &ð
 LPñØðØ Ÿz™z¨!¯'©'°#°q·z±zÀ#±Ð2FÑ*GÑHðà	óð ð ¨¯
©
°1·5±5Ñ(9ó ð˜Sð  Q§Z¡Z°¡_ó ð˜ð  ó óðD˜#ð D $ó Dð$G cð G¨có GðB˜ð B ó Bð:¨A¯J©J°yÑ,Að :Àdó :ð0˜QŸV™V C¨ HÑ-ó ð A§E¡E¨#¡Jô r   c            	       óô  — e Zd Zdd„Zdej
                  dej                  ddfd„ZeZ	eZ
eZeZeZeZeZdej                   dej                  ddfd„Zdej$                  dej                  ddfd„Zdej(                  dej                  ddfd	„Z	 ddej,                  d
edej                  ddfd„Zdej2                  dej                  ddfd„Zdej
                  dej                  dej                  ddfd„Zy)r'   r   Nc                 ó$   — t        |«      | _        y r&   )r   Úsym_visitor©r"   Úsymbolss     r   r#   zRootVisitor.__init__¯   s   € Ü-¨gÓ6ˆÕr   r   r$   c                 ód   — |j                  «       D ]  }| j                  j                  |«       Œ y r&   ©Úiter_child_nodesrj   r   ©r"   r   r$   Úchilds       r   Ú_simple_visitzRootVisitor._simple_visit²   s.   € Ø×*Ñ*Ó,ò 	*ˆEØ×Ñ×"Ñ" 5Õ)ñ	*r   c                 ó\   — |j                   D ]  }| j                  j                  |«       Œ y r&   ©Úbodyrj   r   rp   s       r   Úvisit_AssignBlockzRootVisitor.visit_AssignBlock¾   ó)   € Ø—Y‘Yò 	*ˆEØ×Ñ×"Ñ" 5Õ)ñ	*r   c                 óh   — |j                  d¬«      D ]  }| j                  j                  |«       Œ y )N)Úcall)Úexcludern   rp   s       r   Úvisit_CallBlockzRootVisitor.visit_CallBlockÂ   s3   € Ø×*Ñ*°9Ð*Ó=ò 	*ˆEØ×Ñ×"Ñ" 5Õ)ñ	*r   c                 ó\   — |j                   D ]  }| j                  j                  |«       Œ y r&   rt   rp   s       r   Úvisit_OverlayScopezRootVisitor.visit_OverlayScopeÆ   rw   r   Ú
for_branchc                 ó¶  — |dk(  r4| j                   j                  |j                  d¬«       |j                  }n{|dk(  r|j                  }ni|dk(  rY| j                   j                  |j                  d¬«       |j
                  �%| j                   j                  |j
                  «       y t        d«      ‚|r#|D ]  }| j                   j                  |«       Œ y y )Nru   T)Ústore_as_paramÚelseÚtestzUnknown for branch)rj   r   r/   ru   Úelse_r‚   ÚRuntimeError)r"   r   r~   r$   rP   Úitems         r   Ú	visit_ForzRootVisitor.visit_ForÊ   sÄ   € ð ˜ÒØ×Ñ×"Ñ" 4§;¡;¸tÐ"ÔDØ—Y‘Y‰FØ˜6Ò!Ø—Z‘Z‰FØ˜6Ò!Ø×Ñ×"Ñ" 4§;¡;¸tÐ"ÔDØ�y‰yÐ$Ø× Ñ ×&Ñ& t§y¡yÔ1ØäÐ3Ó4Ð4áØò -�Ø× Ñ ×&Ñ& tÕ,ñ-ð r   c                 ó´   — |j                   D ]  }| j                  j                  |«       Œ |j                  D ]  }| j                  j                  |«       Œ y r&   )Útargetsrj   r   ru   )r"   r   r$   r/   rq   s        r   Ú
visit_WithzRootVisitor.visit_WithÞ   sP   € Ø—l‘lò 	+ˆFØ×Ñ×"Ñ" 6Õ*ð	+à—Y‘Yò 	*ˆEØ×Ñ×"Ñ" 5Õ)ñ	*r   Úargsc                 óD   — t        dt        |«      j                  ›�«      ‚)NzCannot find symbols for )ÚNotImplementedErrorÚtyperZ   )r"   r   rŠ   r$   s       r   Úgeneric_visitzRootVisitor.generic_visitä   s    € Ü!Ð$<¼TÀ$»Z×=PÑ=PÐ<SÐ"TÓUÐUr   ©rl   r   r   N)ru   )rZ   r[   r\   r#   r   r`   r]   ra   rr   Úvisit_TemplateÚvisit_BlockÚvisit_MacroÚvisit_FilterBlockÚvisit_ScopeÚvisit_IfÚvisit_ScopedEvalContextModifierÚAssignBlockrv   Ú	CallBlockr{   ÚOverlayScoper}   ÚForrb   r†   ÚWithr‰   rŽ   rg   r   r   r'   r'   ®   sA  „ ó7ð* %§*¡*ð *¸¿¹ð *À$ó *ð #€NØ€KØ€KØ%ÐØ€KØ€HØ&3Ð#ð* e×&7Ñ&7ð *À1Ç5Á5ð *ÈTó *ð* E§O¡Oð *¸q¿u¹uð *Èó *ð* u×'9Ñ'9ð *ÀQÇUÁUð *Ètó *ð
 28ñ-Ø—I‘Ið-Ø+.ð-ØCDÇ5Á5ð-à	ó-ð(*˜uŸz™zð *°Q·U±Uð *¸tó *ðV %§*¡*ð V°Q·U±Uð VÀaÇeÁeð VÐPTô Vr   r'   c            	       ó¤  — e Zd ZdZdd„Z	 ddej                  dedej                  ddfd„Z
dej                  dej                  ddfd	„Zdej                  dej                  ddfd
„Zdej                  dej                  ddfd„Zdej"                  dej                  ddfd„Zdej&                  dej                  ddfd„Zdej*                  dej                  ddfd„Zdej.                  dej                  ddfd„Zdej2                  dej                  ddfd„Zdej6                  dej                  ddfd„Zdej:                  dej                  ddfd„Zdej>                  dej                  ddfd„Z dejB                  dej                  ddfd„Z"dejF                  dej                  ddfd„Z$dejJ                  dej                  ddfd„Z&y)r   zA visitor for `Frame.inspect`.r   Nc                 ó   — || _         y r&   )rl   rk   s     r   r#   zFrameSymbolVisitor.__init__ë   s	   € Øˆ�r   r   r€   r$   c                 óF  — |s|j                   dk(  r&| j                  j                  |j                  «       y|j                   dk(  r&| j                  j	                  |j                  «       y|j                   dk(  r&| j                  j                  |j                  «       yy)z2All assignments to names go through this function.r   rG   r)   N)Úctxrl   rJ   r(   rG   r)   )r"   r   r€   r$   s       r   Ú
visit_NamezFrameSymbolVisitor.visit_Nameî   sq   € ñ ˜TŸX™X¨Ò0Ø�L‰L×*Ñ*¨4¯9©9Õ5Ø�X‰X˜Ò Ø�L‰L×Ñ˜tŸy™yÕ)Ø�X‰X˜ÒØ�L‰L×Ñ˜dŸi™iÕ(ð  r   c                 óN   — | j                   j                  |j                  «       y r&   )rl   r)   r(   ©r"   r   r$   s      r   Úvisit_NSRefzFrameSymbolVisitor.visit_NSRefù   s   € Ø�‰×Ñ˜$Ÿ)™)Õ$r   c                 ób  ‡ ‡‡—  ‰ j                   |j                  fi ‰¤Ž ‰ j                  Šdt        j                  t
        j                     ddfˆˆˆ fd„} ||j                  «      } ||j                  «      } ||j                  xs d«      }‰ j                  j                  |||g«       y )Nr   r   r   c                 óx   •— ‰j                  «       x‰_        }| D ]  } ‰j                  |fi ‰¤Ž Œ ‰‰_        |S r&   )r@   rl   r   )r   r8   Úsubnoder$   Úoriginal_symbolsr"   s      €€€r   Úinner_visitz0FrameSymbolVisitor.visit_If.<locals>.inner_visit   sH   ø€ Ø 0× 5Ñ 5Ó 7Ð7ˆDŒL˜2à ò .�Ø�—
‘
˜7Ñ- fÓ-ð.ð ,ˆDŒLØˆIr   rg   )r   r‚   rl   r]   ÚIterabler   r`   ru   Úelif_rƒ   rR   )r"   r   r$   r¨   Úbody_symbolsÚelif_symbolsÚelse_symbolsr§   s   ` `    @r   r•   zFrameSymbolVisitor.visit_Ifü   sŽ   ú€ Øˆ�
‰
�4—9‘9Ñ' Ò'ØŸ<™<Ðð	œqŸz™z¬%¯*©*Ñ5ð 	¸)÷ 	ñ # 4§9¡9Ó-ˆÙ" 4§:¡:Ó.ˆÙ" 4§:¡:Ò#3°Ó4ˆØ�‰×"Ñ" L°,ÀÐ#MÕNr   c                 óN   — | j                   j                  |j                  «       y r&   )rl   rG   r(   r¢   s      r   r’   zFrameSymbolVisitor.visit_Macro  s   € Ø�‰×Ñ˜4Ÿ9™9Õ%r   c                 ót   —  | j                   |fi |¤Ž | j                  j                  |j                  «       y r&   )rŽ   rl   rG   r/   r¢   s      r   Úvisit_ImportzFrameSymbolVisitor.visit_Import  s-   € Øˆ×Ñ˜4Ñ* 6Ò*Ø�‰×Ñ˜4Ÿ;™;Õ'r   c                 óà   —  | j                   |fi |¤Ž |j                  D ]L  }t        |t        «      r| j                  j                  |d   «       Œ2| j                  j                  |«       ŒN y )Nr   )rŽ   ÚnamesÚ
isinstanceÚtuplerl   rG   )r"   r   r$   r(   s       r   Úvisit_FromImportz#FrameSymbolVisitor.visit_FromImport  s\   € Øˆ×Ñ˜4Ñ* 6Ò*à—J‘Jò 	)ˆDÜ˜$¤Ô&Ø—‘×"Ñ" 4¨¡7Õ+à—‘×"Ñ" 4Õ(ñ		)r   c                 óx   —  | j                   |j                  fi |¤Ž  | j                   |j                  fi |¤Ž y)z'Visit assignments in the correct order.N)r   r   r/   r¢   s      r   Úvisit_AssignzFrameSymbolVisitor.visit_Assign  s0   € àˆ�
‰
�4—9‘9Ñ' Ò'Øˆ�
‰
�4—;‘;Ñ) &Ó)r   c                 ó>   —  | j                   |j                  fi |¤Ž y)zqVisiting stops at for blocks.  However the block sequence
        is visited as part of the outer scope.
        N)r   Úiterr¢   s      r   r†   zFrameSymbolVisitor.visit_For#  s   € ð 	ˆ�
‰
�4—9‘9Ñ' Ó'r   c                 ó>   —  | j                   |j                  fi |¤Ž y r&   )r   ry   r¢   s      r   r{   z"FrameSymbolVisitor.visit_CallBlock)  s   € Øˆ�
‰
�4—9‘9Ñ' Ó'r   c                 ó>   —  | j                   |j                  fi |¤Ž y r&   )r   Úfilterr¢   s      r   r“   z$FrameSymbolVisitor.visit_FilterBlock,  s   € Øˆ�
‰
�4—;‘;Ñ) &Ó)r   c                 óH   — |j                   D ]  }| j                  |«       Œ y r&   )Úvaluesr   )r"   r   r$   r/   s       r   r‰   zFrameSymbolVisitor.visit_With/  s!   € Ø—k‘kò 	ˆFØ�J‰J�vÕñ	r   c                 ó>   —  | j                   |j                  fi |¤Ž y)zStop visiting at block assigns.N)r   r/   r¢   s      r   rv   z$FrameSymbolVisitor.visit_AssignBlock3  s   € àˆ�
‰
�4—;‘;Ñ) &Ó)r   c                  ó   — y)zStop visiting at scopes.Nrg   r¢   s      r   r”   zFrameSymbolVisitor.visit_Scope7  ó   � r   c                  ó   — y)zStop visiting at blocks.Nrg   r¢   s      r   r‘   zFrameSymbolVisitor.visit_Block:  rÁ   r   c                  ó   — y)z!Do not visit into overlay scopes.Nrg   r¢   s      r   r}   z%FrameSymbolVisitor.visit_OverlayScope=  rÁ   r   r�   )F)'rZ   r[   r\   Ú__doc__r#   r   ÚNameÚboolr]   ra   r    ÚNSRefr£   ÚIfr•   ÚMacror’   ÚImportr°   Ú
FromImportrµ   ÚAssignr·   rš   r†   r˜   r{   ÚFilterBlockr“   r›   r‰   r—   rv   ÚScoper”   ÚBlockr‘   r™   r}   rg   r   r   r   r   è   s$  „ Ù(óð 8=ñ	)Ø—J‘Jð	)Ø04ð	)ØHIÏÉð	)à	ó	)ð% §¡ð %°q·u±uð %Àó %ðO˜UŸX™Xð O°·±ð O¸4ó Oð$& §¡ð &°q·u±uð &Àó &ð( §¡ð (¸¿¹ð (À4ó (ð) U×%5Ñ%5ð )ÀÇÁð )È4ó )ð* §¡ð *¸¿¹ð *À4ó *ð
(˜eŸi™ið (°1·5±5ð (¸Tó (ð( E§O¡Oð (¸q¿u¹uð (Èó (ð* e×&7Ñ&7ð *À1Ç5Á5ð *ÈTó *ð˜uŸz™zð °Q·U±Uð ¸tó ð* e×&7Ñ&7ð *À1Ç5Á5ð *ÈTó *ð' §¡ð '°q·u±uð 'Àó 'ð' §¡ð '°q·u±uð 'Àó 'ð0 u×'9Ñ'9ð 0ÀQÇUÁUð 0Ètô 0r   r   r&   )Útypingr]   Ú r   r   r   ÚTYPE_CHECKINGÚtyping_extensionsÚterI   rL   rD   rE   r©   r`   r^   r   r   r   r'   r   rg   r   r   ú<module>rÕ      sÃ   ðÛ å Ý  à‡?‚?Û"àÐ ØÐ Ø€Ø Ð ð LPñØ�:‰:�e—j‘jÑ!ðØ34·:±:¸iÑ3Hðàóð ?CñØ
�*‰*ðØ&'§j¡j°Ñ&;ðàó÷Jñ JôZ7V�+ô 7VôtV0˜õ V0r   