+
    öÙ†j ;  ã                   ó  € R t ^ RIt^ RIHtHtHtHtHtHtHtH	t	H
t
HtHtHtHtHtHtHtHtHtHt ^ RIt^ RIHt . ROtR	 t ! R
 R4      t]! 4       t ! R R]4      t ! R R4      tR t ! R R]4      t ! R R]4      t  ! R R4      t!R]3.t"]"PG                  R ]$! 4       PK                  4        4       4       Rt&]& U u/ uF  p ]$! 4       V ,          V bK  	  up t'R t(])R8X  d    ^ RI*t*](! ]*PV                  R,          4       R# R# u up i )z2Interface to the compiler's internal symbol tablesN)ÚUSEÚ
DEF_GLOBALÚDEF_NONLOCALÚ	DEF_LOCALÚ	DEF_PARAMÚDEF_TYPE_PARAMÚDEF_FREE_CLASSÚ
DEF_IMPORTÚ	DEF_BOUNDÚ	DEF_ANNOTÚDEF_COMP_ITERÚDEF_COMP_CELLÚ	SCOPE_OFFÚ
SCOPE_MASKÚFREEÚLOCALÚGLOBAL_IMPLICITÚGLOBAL_EXPLICITÚCELL)ÚStrEnumÚSymbolTableTypeÚSymbolTableÚClassÚFunctionÚSymbolc                óF   € \         P                  ! WV4      p\        W14      # )zžReturn the toplevel *SymbolTable* for the source code.

*filename* is the name of the file with the code
and *compile_type* is the *compile()* mode argument.
)Ú	_symtableÚsymtableÚ_newSymbolTable)ÚcodeÚfilenameÚcompile_typeÚtops   &&& Ú/usr/lib/python3.14/symtable.pyr   r      s!   € ô ×
Ò
˜T¨\Ó
:€CÜ˜3Ó)Ð)ó    c                   ó2   a € ] tR t^t o R tR tR tRtV tR# )ÚSymbolTableFactoryc                ó:   € \         P                  ! 4       V n        R # ©N)ÚweakrefÚWeakValueDictionaryÚ_SymbolTableFactory__memo©Úselfs   &r#   Ú__init__ÚSymbolTableFactory.__init__   s   € Ü×1Ò1Ó3ˆŽr$   c                óÀ   € VP                   \        P                  8X  d   \        W4      # VP                   \        P                  8X  d   \        W4      # \        W4      # r(   )Útyper   ÚTYPE_FUNCTIONr   Ú
TYPE_CLASSr   r   )r-   Útabler    s   &&&r#   ÚnewÚSymbolTableFactory.new!   sG   € Ø�:‰:œ×0Ñ0Ô0Ü˜EÓ,Ð,Ø�:‰:œ×-Ñ-Ô-Ü˜Ó)Ð)Ü˜5Ó+Ð+r$   c                óŠ   € W3pV P                   P                  VR 4      pVf    V P                  W4      ;q@P                   V&   V# r(   )r+   Úgetr5   )r-   r4   r    ÚkeyÚobjs   &&&  r#   Ú__call__ÚSymbolTableFactory.__call__(   sA   € ØˆoˆØ�k‰k�o‰o˜c 4Ó(ˆØŠ;Ø%)§X¡X¨eÓ%>Ð>ˆC—+‘+˜cÑ"Øˆ
r$   )Ú__memoN)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r.   r5   r;   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r#   r&   r&      s   ø‡ € ò4ò,÷ð r$   r&   c                   ó2   € ] tR t^2tRtRtRtRtRtRt	Rt
RtR	# )
r   ÚmoduleÚfunctionÚclassÚ
annotationz
type aliasztype parametersztype variable© N)r>   r?   r@   rA   ÚMODULEÚFUNCTIONÚCLASSÚ
ANNOTATIONÚ
TYPE_ALIASÚTYPE_PARAMETERSÚTYPE_VARIABLErB   rK   r$   r#   r   r   2   s%   † Ø€FØ€HØ€EØ€JØ€JØ'€OØ#„Mr$   c                   ót   a € ] tR t^<t o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR tR tR tRtV tR# )r   c                ó,   € Wn         W n        / V n        R # r(   )Ú_tableÚ	_filenameÚ_symbols)r-   Ú	raw_tabler    s   &&&r#   r.   ÚSymbolTable.__init__>   s   € ØŒØ!ŒØˆŽr$   c                ó:  € V P                   \        8X  d   R pMRV P                   P                  ,          pV P                  P                  R8X  d   RP                  WP                  4      # RP                  VV P                  P                  V P                  4      # )Ú z%s r"   z<{0}SymbolTable for module {1}>z<{0}SymbolTable for {1} in {2}>)Ú	__class__r   r>   rU   ÚnameÚformatrV   )r-   Úkinds   & r#   Ú__repr__ÚSymbolTable.__repr__C   sy   € Ø�>‰>œ[Ô(Ø‰Dà˜4Ÿ>™>×2Ñ2Õ2ˆDà�;‰;×Ñ˜uÔ$Ø4×;Ñ;¸DÇ.Á.ÓQÐQà4×;Ñ;¸DØ<@¿K¹K×<LÑ<LØ<@¿N¹NóLð Lr$   c                ó\  € V P                   P                  \        P                  8X  d   \        P
                  # V P                   P                  \        P                  8X  d   \        P                  # V P                   P                  \        P                  8X  d   \        P                  # V P                   P                  \        P                  8X  d   \        P                  # V P                   P                  \        P                  8X  d   \        P                  # V P                   P                  \        P                  8X  d   \        P                  # V P                   P                  \        P                   8X  d   \        P"                  # Q RT P                   P                   24       h)zvReturn the type of the symbol table.

The value returned is one of the values in
the ``SymbolTableType`` enumeration.
zunexpected type: )rU   r1   r   ÚTYPE_MODULEr   rL   r2   rM   r3   rN   ÚTYPE_ANNOTATIONrO   ÚTYPE_TYPE_ALIASrP   ÚTYPE_TYPE_PARAMETERSrQ   ÚTYPE_TYPE_VARIABLErR   r,   s   &r#   Úget_typeÚSymbolTable.get_typeP   s  € ð �;‰;×Ñœy×4Ñ4Ô4Ü"×)Ñ)Ð)Ø�;‰;×Ñœy×6Ñ6Ô6Ü"×+Ñ+Ð+Ø�;‰;×Ñœy×3Ñ3Ô3Ü"×(Ñ(Ð(Ø�;‰;×Ñœy×8Ñ8Ô8Ü"×-Ñ-Ð-Ø�;‰;×Ñœy×8Ñ8Ô8Ü"×-Ñ-Ð-Ø�;‰;×Ñœy×=Ñ=Ô=Ü"×2Ñ2Ð2Ø�;‰;×Ñœy×;Ñ;Ô;Ü"×0Ñ0Ð0Ø<Ð)¨$¯+©+×*:Ñ*:Ð);Ð<Ó<ˆur$   c                ó.   € V P                   P                  # )z,Return an identifier for the table.
        )rU   Úidr,   s   &r#   Úget_idÚSymbolTable.get_idf   s   € ð �{‰{�~‰~Ðr$   c                ó.   € V P                   P                  # )z•Return the table's name.

This corresponds to the name of the class, function
or 'top' if the table is for a class, function or
global respectively.
)rU   r]   r,   s   &r#   Úget_nameÚSymbolTable.get_namek   s   € ð �{‰{×ÑÐr$   c                ó.   € V P                   P                  # )z@Return the number of the first line in the
block for the table.
)rU   Úlinenor,   s   &r#   Ú
get_linenoÚSymbolTable.get_linenot   s   € ð �{‰{×!Ñ!Ð!r$   c                ób   € \        V P                  P                  \        P                  8H  4      # )z:Return *True* if the locals in the table
are optimizable.
)ÚboolrU   r1   r   r2   r,   s   &r#   Úis_optimizedÚSymbolTable.is_optimizedz   s$   € ô �D—K‘K×$Ñ$¬	×(?Ñ(?Ñ?Ó@Ð@r$   c                ó@   € \        V P                  P                  4      # )z9Return *True* if the block is a nested class
or function.)rv   rU   Únestedr,   s   &r#   Ú	is_nestedÚSymbolTable.is_nested€   s   € ô �D—K‘K×&Ñ&Ó'Ð'r$   c                ó@   € \        V P                  P                  4      # )z:Return *True* if the block has nested namespaces.
        )rv   rU   Úchildrenr,   s   &r#   Úhas_childrenÚSymbolTable.has_children…   s   € ô �D—K‘K×(Ñ(Ó)Ð)r$   c                óJ   € V P                   P                  P                  4       # )zKReturn a view object containing the names of symbols in the table.
        )rU   ÚsymbolsÚkeysr,   s   &r#   Úget_identifiersÚSymbolTable.get_identifiersŠ   s   € ð �{‰{×"Ñ"×'Ñ'Ó)Ð)r$   c                ó
  € V P                   P                  V4      pVfd   V P                  P                  V,          pV P	                  V4      pV P                  P
                  R8H  p\        WVVR7      ;q P                   V&   V# )z<Lookup a *name* in the table.

Returns a *Symbol* instance.
r"   )Úmodule_scope)rW   r8   rU   r‚   Ú_SymbolTable__check_childrenr]   r   )r-   r]   ÚsymÚflagsÚ
namespacesr‡   s   &&    r#   ÚlookupÚSymbolTable.lookup�   s{   € ð
 �m‰m×Ñ Ó%ˆØŠ;Ø—K‘K×'Ñ'¨Õ-ˆEØ×.Ñ.¨tÓ4ˆJØ ŸK™K×,Ñ,°Ñ5ˆLÜ(.¨t¸JØ<Hô)Jð JˆC—-‘- Ñ%àˆ
r$   c                óh   € V P                  4        Uu. uF  qP                  V4      NK  	  up# u upi )z<Return a list of *Symbol* instances for
names in the table.
)r„   rŒ   )r-   Úidents   & r#   Úget_symbolsÚSymbolTable.get_symbols�   s.   € ð 15×0DÑ0DÔ0FÓGÑ0F u—‘˜EÖ"Ñ0FÑGÐGùÒGs   “/c                ó¤   € V P                   P                   Uu. uF+  pVP                  V8X  g   K  \        W P                  4      NK-  	  up# u upi r(   )rU   r~   r]   r   rV   )r-   r]   Ústs   && r#   Ú__check_childrenÚSymbolTable.__check_children£   sG   € àŸ+™+×.Ò.ó$Ù.�BØ—7‘7˜d‘?ô 4” §N¡NÖ3Ù.ñ$ð 	$ùò $s
   ™A±Ac                ó~   € V P                   P                   Uu. uF  p\        WP                  4      NK  	  up# u upi )z3Return a list of the nested symbol tables.
        )rU   r~   r   rV   )r-   r“   s   & r#   Úget_childrenÚSymbolTable.get_children¨   s<   € ð Ÿ+™+×.Ò.ó0Ù.�Bô   §N¡NÖ3Ù.ñ0ð 	0ùò 0s   ™:)rV   rW   rU   N)r>   r?   r@   rA   r.   r`   rh   rl   ro   rs   rw   r{   r   r„   rŒ   r�   rˆ   r—   rB   rC   rD   s   @r#   r   r   <   sS   ø‡ € òò
Lò=ò,ò
 ò"òAò(ò
*ò
*ò
òHò$÷
0ð 0r$   c                 ó2   € V \         ,	          \        ,          # r(   )r   r   )rŠ   s   &r#   Ú
_get_scoperš   ¯   s   € Ø”YÕ¤*Õ,Ð,r$   c                   óX   a € ] tR t^³t o RtRtRtRtRtR t	R t
R tR tR tR tRtV tR# )	r   Nc                ó¦   a a€ \         ;QJ d&    . V V3R  lS P                  4        4       F  NK  	  5# ! V V3R  lS P                  4        4       4      # )c              3   ó~   <"  € T F2  pS! SP                   P                  V,          4      '       g   K.  Vx € K4  	  R # 5ir(   )rU   r‚   )Ú.0r�   r-   Ú	test_funcs   & €€r#   Ú	<genexpr>Ú-Function.__idents_matching.<locals>.<genexpr>½   s1   øé € ð ?Ñ(>˜uÙ! $§+¡+×"5Ñ"5°eÕ"<×=÷ ’UÓ(>ùs   ƒ+=³
=)Útupler„   )r-   rŸ   s   ffr#   Ú__idents_matchingÚFunction.__idents_matching¼   sE   ù€ ßŒuõ ?¨×(<Ñ(<Ô(>ó ?�uð 	?ˆuõ ?¨×(<Ñ(<Ô(>ó ?ó ?ð 	?r$   c                ód   € V P                   f   V P                  R 4      V n         V P                   # )z6Return a tuple of parameters to the function.
        c                 ó   € V \         ,          # r(   )r   ©Úxs   &r#   Ú<lambda>Ú)Function.get_parameters.<locals>.<lambda>Ä   s   € ¸AÄ	¾Mr$   )Ú_Function__paramsÚ_Function__idents_matchingr,   s   &r#   Úget_parametersÚFunction.get_parametersÀ   s+   € ð �=‰=Ò Ø ×2Ñ2Ñ3IÓJˆDŒMØ�}‰}Ðr$   c                óˆ   a€ V P                   f)   \        \        3oV3R lpV P                  V4      V n         V P                   # )z2Return a tuple of locals in the function.
        c                 ó    <€ \        V 4      S9   # r(   ©rš   )r¨   Úlocss   &€r#   r©   Ú%Function.get_locals.<locals>.<lambda>Ì   ó   ø€ œZ¨›]¨dÒ2r$   )Ú_Function__localsr   r   r¬   )r-   Útestr²   s   & @r#   Ú
get_localsÚFunction.get_localsÇ   s9   ø€ ð �=‰=Ò Üœ4�=ˆDÜ2ˆDØ ×2Ñ2°4Ó8ˆDŒMØ�}‰}Ðr$   c                óˆ   a€ V P                   f)   \        \        3oV3R lpV P                  V4      V n         V P                   # )z3Return a tuple of globals in the function.
        c                 ó    <€ \        V 4      S9   # r(   r±   )r¨   Úglobs   &€r#   r©   Ú&Function.get_globals.<locals>.<lambda>Õ   r´   r$   )Ú_Function__globalsr   r   r¬   )r-   r¶   r»   s   & @r#   Úget_globalsÚFunction.get_globalsÐ   s:   ø€ ð �>‰>Ò!Ü#¤_Ð5ˆDÜ2ˆDØ!×3Ñ3°DÓ9ˆDŒNØ�~‰~Ðr$   c                ód   € V P                   f   V P                  R 4      V n         V P                   # )z5Return a tuple of nonlocals in the function.
        c                 ó   € V \         ,          # r(   )r   r§   s   &r#   r©   Ú(Function.get_nonlocals.<locals>.<lambda>Ý   s	   € ¸qÄ<Ö?Or$   )Ú_Function__nonlocalsr¬   r,   s   &r#   Úget_nonlocalsÚFunction.get_nonlocalsÙ   s0   € ð ×ÑÒ#Ø#×5Ñ5Ñ6OÓPˆDÔØ×ÑÐr$   c                óh   € V P                   f   R pV P                  V4      V n         V P                   # )z:Return a tuple of free variables in the function.
        c                 ó&   € \        V 4      \        8H  # r(   )rš   r   r§   s   &r#   r©   Ú$Function.get_frees.<locals>.<lambda>ä   s   € ¤
¨1£´Ò 5r$   )Ú_Function__freesr¬   )r-   Úis_frees   & r#   Ú	get_freesÚFunction.get_freesà   s/   € ð �<‰<ÒÙ5ˆGØ×1Ñ1°'Ó:ˆDŒLØ�|‰|Ðr$   )Ú__freesÚ	__globalsÚ__localsÚ__nonlocalsÚ__params)r>   r?   r@   rA   r«   rµ   rÉ   r½   rÃ   r¬   r­   r·   r¾   rÄ   rË   rB   rC   rD   s   @r#   r   r   ³   sC   ø‡ € ð €HØ€HØ€GØ€IØ€Kò?òòòò ÷ð r$   c                   ó*   a € ] tR t^ét o RtR tRtV tR# )r   Nc                ó.  a € ^ RI pS P                  P                   RS P                  P                   2pVP	                  V R2\
        ^R7       S P                  Ef-   / pV 3R lpS P                  P                   Fú  pV! VP                  4      '       g   K  VP                  ;\        P                  8X  d6    VP                  R8X  d   RVP                  9   d   Kb  ^W5P                  &   Kr  \        P                  8X  g   Kˆ  VP                  pVP                   FV  pVP                  V8X  g   K  VP                  \        P                  8X  g   K7  VR8w  g   RVP                  9  g   Q h^W6&    Kø  	  Kü  	  \        V4      S n        S P                  # )z9Return a tuple of methods declared in the class.
        NÚ.z@.get_methods() is deprecated and will be removed in Python 3.16.)Ú
stacklevelc                 óŽ   <€ SP                   P                  P                  V ^ 4      pV\        ,	          \        ,          \
        8H  # ©é    )rU   r‚   r8   r   r   r   )r�   rŠ   r-   s   & €r#   Úis_local_symbolÚ*Class.get_methods.<locals>.is_local_symbolù   s4   ø€ ØŸ™×+Ñ+×/Ñ/°°qÓ9�Ø¤)Õ+¬zÕ9¼eÑCÐCr$   Úgenexprz.0)Úwarningsr\   r?   r>   ÚwarnÚDeprecationWarningÚ_Class__methodsrU   r~   r]   r1   r   r2   Úvarnamesrf   r¢   )r-   rÜ   ÚtypenameÚdrÙ   r“   Ú
scope_nameÚcs   f       r#   Úget_methodsÚClass.get_methodsí   sH  ø€ ó 	Ø—n‘n×/Ñ/Ð0°°$·.±.×2IÑ2IÐ1JÐKˆØ�‰˜˜
ð #<ð =ä(°Qð 	ô 	8ð �>‰>Ó!ØˆAõDð —k‘k×*Ô*�á" 2§7¡7×+Ô+ØŸ'™'Ø4œY×4Ö4ñ  "Ÿw™w¨)Ô3¸ÀÇÁÔ8KÙ (Ø)*˜AŸg™g›JÜ&×;×;Ð;ð *,¯©˜JØ%'§[¤[ Ø#$§6¡6¨ZÖ#7¸A¿F¹FÄi×F]ÑF]Ö<]ð ,6¸Ô+BÀdÐRS×R\ÑR\ÔF\Ð$\Ð+\Ø45 A¡MÚ$)ó &1ñ +ô4 # 1›XˆDŒNØ�~‰~Ðr$   )Ú	__methods)r>   r?   r@   rA   rß   rå   rB   rC   rD   s   @r#   r   r   é   s   ø‡ € à€I÷+ð +r$   c                   ó°   a € ] tR tRt o RRR/R lltR tR tR tR	 tR
 t	R t
R tR tR tR tR tR tR tR tR tR tR tR tR tR tR tRtV tR# )r   i  Nr‡   Fc               ól   € Wn         W n        \        V4      V n        T;'       g    RV n        W@n        R # )NrK   )Ú_Symbol__nameÚ_Symbol__flagsrš   Ú_Symbol__scopeÚ_Symbol__namespacesÚ_Symbol__module_scope)r-   r]   rŠ   r‹   r‡   s   &&&&$r#   r.   ÚSymbol.__init__  s.   € ØŒØŒÜ! %Ó(ˆŒØ&×,Ð,¨"ˆÔØ*Ör$   c                óŠ   € R P                  V P                  4       4      pRV P                  : RV P                  4        RV R2# )Ú|z<symbol ú: ú, Ú>)ÚjoinÚ
_flags_strrê   Ú
_scope_str)r-   Ú	flags_strs   & r#   r`   ÚSymbol.__repr__$  s>   € Ø—H‘H˜TŸ_™_Ó.Ó/ˆ	Ø˜$Ÿ+™+™¨¨4¯?©?Ó+<Ð*=¸RÀ	¸{È!ÐLÐLr$   c                óz   € \         P                  V P                  4      ;'       g    \        V P                  4      # r(   )Ú_scopes_value_to_namer8   rì   Ústrr,   s   &r#   r÷   ÚSymbol._scope_str(  s(   € Ü$×(Ñ(¨¯©Ó6×KÐK¼#¸d¿l¹lÓ:KÐKr$   c              #  óh   "  € \          F#  w  rV P                  V,          V8X  g   K  Vx € K%  	  R # 5ir(   )Ú_flagsrë   )r-   ÚflagnameÚ	flagvalues   &  r#   rö   ÚSymbol._flags_str+  s(   é € ß#)ÑˆHØ�|‰|˜iÕ'¨9Ö4Ø”ó $*ùs   ‚!2¨
2c                ó   € V P                   # )z#Return a name of a symbol.
        )rê   r,   s   &r#   ro   ÚSymbol.get_name0  s   € ð �{‰{Ðr$   c                óB   € \        V P                  \        ,          4      # )z2Return *True* if the symbol is used in
its block.
)rv   rë   r   r,   s   &r#   Úis_referencedÚSymbol.is_referenced5  s   € ô �D—L‘L¤3Õ&Ó'Ð'r$   c                óB   € \        V P                  \        ,          4      # )z4Return *True* if the symbol is a parameter.
        )rv   rë   r   r,   s   &r#   Úis_parameterÚSymbol.is_parameter;  ó   € ô �D—L‘L¤9Õ,Ó-Ð-r$   c                óB   € \        V P                  \        ,          4      # )z9Return *True* if the symbol is a type parameter.
        )rv   rë   r   r,   s   &r#   Úis_type_parameterÚSymbol.is_type_parameter@  ó   € ô �D—L‘L¤>Õ1Ó2Ð2r$   c                ó¬   € \        V P                  \        \        39   ;'       g,    V P                  ;'       d    V P
                  \        ,          4      # )z/Return *True* if the symbol is global.
        )rv   rì   r   r   rî   rë   r
   r,   s   &r#   Ú	is_globalÚSymbol.is_globalE  sI   € ô �D—L‘L¤_´oÐ$FÑF÷ Jð JØ×+Ñ+×HÐH°·±¼yÕ0HóKð 	Kr$   c                óB   € \        V P                  \        ,          4      # )z(Return *True* if the symbol is nonlocal.)rv   rë   r   r,   s   &r#   Úis_nonlocalÚSymbol.is_nonlocalK  s   € ä�D—L‘L¤<Õ/Ó0Ð0r$   c                ó:   € \        V P                  \        8H  4      # )zGReturn *True* if the symbol is declared global
with a global statement.)rv   rì   r   r,   s   &r#   Úis_declared_globalÚSymbol.is_declared_globalO  s   € ô �D—L‘L¤OÑ3Ó4Ð4r$   c                ó¬   € \        V P                  \        \        39   ;'       g,    V P                  ;'       d    V P
                  \        ,          4      # )z.Return *True* if the symbol is local.
        )rv   rì   r   r   rî   rë   r
   r,   s   &r#   Úis_localÚSymbol.is_localT  sH   € ô �D—L‘L¤U¬D MÑ1÷ Jð JØ×+Ñ+×HÐH°·±¼yÕ0HóKð 	Kr$   c                óB   € \        V P                  \        ,          4      # )z2Return *True* if the symbol is annotated.
        )rv   rë   r   r,   s   &r#   Úis_annotatedÚSymbol.is_annotatedZ  r  r$   c                ó:   € \        V P                  \        8H  4      # )z9Return *True* if a referenced symbol is
not assigned to.
)rv   rì   r   r,   s   &r#   rÊ   ÚSymbol.is_free_  s   € ô �D—L‘L¤DÑ(Ó)Ð)r$   c                óB   € \        V P                  \        ,          4      # )zPReturn *True* if a class-scoped symbol is free from
the perspective of a method.)rv   rë   r   r,   s   &r#   Úis_free_classÚSymbol.is_free_classe  r  r$   c                óB   € \        V P                  \        ,          4      # )zAReturn *True* if the symbol is created from
an import statement.
)rv   rë   r	   r,   s   &r#   Úis_importedÚSymbol.is_importedj  s   € ô �D—L‘L¤:Õ-Ó.Ð.r$   c                óB   € \        V P                  \        ,          4      # )z)Return *True* if a symbol is assigned to.)rv   rë   r   r,   s   &r#   Úis_assignedÚSymbol.is_assignedp  s   € ä�D—L‘L¤9Õ,Ó-Ð-r$   c                óB   € \        V P                  \        ,          4      # )zKReturn *True* if the symbol is a comprehension iteration variable.
        )rv   rë   r   r,   s   &r#   Úis_comp_iterÚSymbol.is_comp_itert  ó   € ô �D—L‘L¤=Õ0Ó1Ð1r$   c                óB   € \        V P                  \        ,          4      # )zKReturn *True* if the symbol is a cell in an inlined comprehension.
        )rv   rë   r   r,   s   &r#   Úis_comp_cellÚSymbol.is_comp_celly  r-  r$   c                ó,   € \        V P                  4      # )aS  Returns *True* if name binding introduces new namespace.

If the name is used as the target of a function or class
statement, this will be true.

Note that a single name can be bound to multiple objects.  If
is_namespace() is true, the name may also be bound to other
objects, like an int or list, that does not introduce a new
namespace.
)rv   rí   r,   s   &r#   Úis_namespaceÚSymbol.is_namespace~  s   € ô �D×%Ñ%Ó&Ð&r$   c                ó   € V P                   # )z.Return a list of namespaces bound to this name)rí   r,   s   &r#   Úget_namespacesÚSymbol.get_namespaces‹  s   € à× Ñ Ð r$   c                ó¼   € \        V P                  4      ^ 8X  d   \        R4      h\        V P                  4      ^8”  d   \        R4      hV P                  ^ ,          # )z€Return the single namespace bound to this name.

Raises ValueError if the name is bound to multiple namespaces
or no namespace.
z#name is not bound to any namespacesz$name is bound to multiple namespaces)Úlenrí   Ú
ValueErrorr,   s   &r#   Úget_namespaceÚSymbol.get_namespace�  sS   € ô ˆt× Ñ Ó! QÔ&ÜÐBÓCÐCÜ�×"Ñ"Ó# aÔ'ÜÐCÓDÐDà×$Ñ$ QÕ'Ð'r$   )Ú__flagsÚ__module_scopeÚ__nameÚ__namespacesÚ__scoper(   )r>   r?   r@   rA   r.   r`   r÷   rö   ro   r  r	  r  r  r  r  r  r  rÊ   r"  r%  r(  r+  r/  r2  r5  r:  rB   rC   rD   s   @r#   r   r     sƒ   ø‡ € ñ+ÀUõ +òMòLòò
ò
(ò.ò
3ò
Kò1ò5ò
Kò.ò
*ò3ò
/ò.ò2ò
2ò
'ò!÷(ð (r$   r   c              #   ód   "  € T F&  q^ ,          P                  R4      '       g   K"  Vx € K(  	  R# 5i)rØ   ÚDEF_N)Ú
startswith)rž   Úkvs   & r#   r    r    ž  s#   é € ÐIÑ,�R°1µ×0@Ñ0@À×0H�bŠbÓ,ùs   ‚0¦
0c                 ó:  a€ ^ RI pRV3R lloT ;'       g    R. Fi  pVR8X  d   VP                  P                  4       pRpM-\        VR4      ;_uu_ 4       pVP                  4       pRRR4       \	        XVR4      pS! V4       Kk  	  R#   + '       g   i     L+; i)rØ   Nc           
      ó’  <€ R V,          pV P                  4       '       d   RMRpV P                  4       R8X  d   RV P                  : 2pMV P                  4       : p\	        V RV V P                  4        RV R24       V P                  4        F‚  pV P                  V4      pRP                  VP                  4       4      P                  4       p\	        R V VP                  4       P                  4        R	VP                  4       : R
V 24       K„  	  \	        4        V P                  4        F  pS	! W�^,           4       K  	  R# )z    znested r[   rG   z
from file zsymbol table for Ú Ú:ró   z symbol rò   N)r{   rh   rV   ro   Úprintr„   rŒ   rõ   rö   Úlowerr÷   r—   )
r4   ÚlevelÚindentrz   Úwhatr�   ÚsymbolrŠ   Útable2Úprint_symbolss
   &&       €r#   rP  Úmain.<locals>.print_symbols¥  s  ø€ Ø˜%•ˆØ#Ÿo™o×/Ò/‘°RˆØ�>‰>Ó˜xÔ'Ø §¡Ñ2Ð3‰Dà—n‘nÓ&Ñ)ˆDÜ��Ð)¨&¨°%·.±.Ó2BÐ1CÀ1ÀTÀFÈ!ÐLÔMØ×*Ñ*Ö,ˆEØ—\‘\ %Ó(ˆFØ—I‘I˜f×/Ñ/Ó1Ó2×8Ñ8Ó:ˆEÜ�D˜˜ ×!2Ñ!2Ó!4×!:Ñ!:Ó!<Ð =¸XÀfÇoÁoÓFWÑEZÐZ\Ð]bÐ\cÐdÖeñ -ô 	Œà×(Ñ(Ö*ˆFÙ˜&¨!¥)Ö,ó +r$   Ú-z<stdin>ÚrbÚexecr×   )ÚsysÚstdinÚreadÚopenr   )ÚargsrU  r    ÚsrcÚfÚmodrP  s   &     @r#   Úmainr]  £  s{   ø€ Û÷-ð" —M�M˜S˜E’MˆØ�sŒ?Ø—)‘)—.‘.Ó"ˆCØ ‰Hä�h ×%Ô%¨Ø—f‘f“h�÷ &ä�s˜H fÓ-ˆÙ�cÖó "÷
 &×%ús   ÁB
Â
BÚ__main__:é   NN)r   r   r   r   r   r   )r   r   r   r   r   ),Ú__doc__r   r   r   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r)   Úenumr   Ú__all__r   r&   r   r   r   rš   r   r   r   rÿ   ÚextendÚglobalsÚitemsÚ_scopes_namesrû   r]  r>   rU  Úargv)Úns   0r#   Ú<module>ri     s  ðÙ 8ã ÷	÷ 	÷ 	÷ 	÷ 	ñ 	ó Ý â
W€ò*÷ñ ñ$ %Ó&€ô$�gô $÷p0ñ p0òf-ô3ˆ{ô 3ôl/ˆKô /÷d(ñ (ðD �#ˆ,ˆ€Ø ‡�ÑI™7›9Ÿ?™?Ô,ÓIÔ IØO€Ù2?Ó@±-¨Q™› 1� qš±-Ñ@Ð òð< ˆzÔÛÙˆ�‰�"�Öñ ùòC As   ÃD