§
    ñyIf’F  ã                  ó  — d Z ddlmZ ddlZddlZddlZddlZddlmZm	Z	m
Z
 ddlmZmZ ddlmZ ddlmZmZ ddlmZmZ dd	lmZmZ dd
lmZmZmZmZmZmZm Z m!Z!m"Z" ddl#m$Z$ ddl%m&Z&m'Z' dZ(dd„Z) G d„ d¦  «        Z*dS )zÄastroid manager: avoid multiple astroid build of a same module when
possible by providing a class responsible to get astroid representation
from various source and using a cache of built modules)
é    )ÚannotationsN)ÚCallableÚIteratorÚSequence)ÚAnyÚClassVar)Únodes)ÚInferenceContextÚ_invalidate_cache)ÚAstroidBuildingErrorÚAstroidImportError)ÚspecÚutil)	ÚNoSourceFileÚ_cache_normalize_path_Úfile_info_from_modpathÚget_source_fileÚ2is_module_name_part_of_extension_package_whitelistÚis_python_sourceÚis_stdlib_moduleÚload_module_from_nameÚmodpath_from_file)ÚTransformVisitor)ÚAstroidManagerBrainÚInferenceResult)z.zipz.eggz.whlz.pyzz.pyzwÚobjr   ÚreturnÚstrc                óD   — 	 t          | ¦  «        S # t          $ r Y dS w xY w)Nz???)ÚreprÚ	Exception)r   s    úC/var/www/piapp/venv/lib/python3.11/site-packages/astroid/manager.pyÚ	safe_reprr#   (   s5   € ðÝ�C‰yŒyÐøÝð ð ð Øˆuˆuðøøøs   ‚ ‘
žc            	      óî  — e Zd ZU dZdZi i g ddd e¦   «          e¦   «         dœZded<   dHd
„Z	e
dId„¦   «         Zej        dJd„¦   «         Ze
dId„¦   «         Zej        dJd„¦   «         Ze
dKd„¦   «         Zej        dLd„¦   «         Ze
d„ ¦   «         Ze
d„ ¦   «         Ze
dMd„¦   «         ZdNd„Z	 	 	 dOdPd$„Z	 dQdRd'„ZdSd(„ZdTd+„ZdUd,„Z	 	 dVdWd/„ZdXd1„ZdYd4„Z	 dZd[d7„ZdZd\d;„Z	 dZd]dA„Zd^dD„Zd_dE„ZdHdF„Z dHdG„Z!dS )`ÚAstroidManagerz_Responsible to build astroid from files or modules.

    Use the Borg (singleton) pattern.
    zastroid loaderFéd   )Úastroid_cacheÚ_mod_file_cacheÚ_failed_import_hooksÚalways_load_extensionsÚoptimize_astÚmax_inferable_valuesÚextension_package_whitelistÚ
_transformzClassVar[AstroidManagerBrain]Úbrainr   ÚNonec                óì   — t           j        d         | _        t           j        d         | _        t           j        d         | _        t           j        d         | _        t           j        d         | _        d S )Nr'   r(   r)   r-   r.   )r%   r/   r'   r(   r)   r-   r.   ©Úselfs    r"   Ú__init__zAstroidManager.__init__A   s\   € å+Ô1°/ÔBˆÔÝ-Ô3Ð4EÔFˆÔÝ$2Ô$8Ð9OÔ$PˆÔ!Ý+9Ô+?Ø)ô,
ˆÔ(õ )Ô.¨|Ô<ˆŒˆˆó    Úboolc                ó&   — t           j        d         S ©Nr*   ©r%   r/   r2   s    r"   r*   z%AstroidManager.always_load_extensionsK   s   € åÔ#Ð$<Ô=Ð=r5   Úvaluec                ó$   — |t           j        d<   d S r8   r9   ©r3   r:   s     r"   r*   z%AstroidManager.always_load_extensionsO   s   € à9>�ÔÐ5Ñ6Ð6Ð6r5   c                ó&   — t           j        d         S ©Nr+   r9   r2   s    r"   r+   zAstroidManager.optimize_astS   s   € åÔ# NÔ3Ð3r5   c                ó$   — |t           j        d<   d S r>   r9   r<   s     r"   r+   zAstroidManager.optimize_astW   s   € à/4�Ô˜^Ñ,Ð,Ð,r5   Úintc                ó&   — t           j        d         S ©Nr,   r9   r2   s    r"   r,   z#AstroidManager.max_inferable_values[   s   € åÔ#Ð$:Ô;Ð;r5   c                ó$   — |t           j        d<   d S rB   r9   r<   s     r"   r,   z#AstroidManager.max_inferable_values_   s   € à7<�ÔÐ3Ñ4Ð4Ð4r5   c                ó   — | j         j        S ©N)r.   Úregister_transformr2   s    r"   rF   z!AstroidManager.register_transformc   s   € ð ŒÔ1Ð1r5   c                ó   — | j         j        S rE   )r.   Úunregister_transformr2   s    r"   rH   z#AstroidManager.unregister_transformh   s   € àŒÔ3Ð3r5   únodes.Modulec                ó   — | j         d         S )NÚbuiltins)r'   r2   s    r"   Úbuiltins_modulezAstroidManager.builtins_modulel   s   € àÔ! *Ô-Ð-r5   Únodeúnodes.NodeNGr   c                ó6   — | j                              |¦  «        S )z8Visit the transforms and apply them to the given *node*.)r.   Úvisit)r3   rM   s     r"   Úvisit_transformszAstroidManager.visit_transformsp   s   € àŒ×$Ò$ TÑ*Ô*Ð*r5   NTÚfilepathr   Úmodnameú
str | NoneÚfallbackÚsourcec                ó  — |€6	 d                      t          |¦  «        ¦  «        }n# t          $ r |}Y nw xY w|| j        v r#| j        |         j        |k    r| j        |         S 	 t          |d¬¦  «        }d}n# t          $ r Y nw xY w|| j        v r#| j        |         j        |k    r| j        |         S |r%ddlm}  || ¦  «         	                    ||¦  «        S |r|r|  
                    |¦  «        S t          d|¬¦  «        ‚)	ú/Given a module name, return the astroid object.Nú.T)Úinclude_no_extr   ©ÚAstroidBuilderz"Unable to build an AST for {path}.)Úpath)Újoinr   ÚImportErrorr'   Úfiler   r   Úastroid.builderr\   Ú
file_buildÚast_from_module_namer   )r3   rR   rS   rU   rV   r\   s         r"   Úast_from_filezAstroidManager.ast_from_filet   sf  € ð ˆ?ð#ØŸ(š(Õ#4°XÑ#>Ô#>Ñ?Ô?��øÝð #ð #ð #Ø"���ð#øøøð �tÔ)Ð)Ð)ØÔ" 7Ô+Ô0°HÒ<Ð<àÔ% gÔ.Ð.ð	Ý& xÀÐEÑEÔEˆHØˆFˆFøÝð 	ð 	ð 	ØˆDð	øøøð �tÔ)Ð)Ð)ØÔ" 7Ô+Ô0°HÒ<Ð<àÔ% gÔ.Ð.Øð 	Fà6Ð6Ð6Ð6Ð6Ð6à!�> $Ñ'Ô'×2Ò2°8¸WÑEÔEÐEØð 	6˜ð 	6Ø×,Ò,¨WÑ5Ô5Ð5Ý"Ð#GÈhÐWÑWÔWÐWs   „"' §6µ6Á&A: Á:
BÂBÚ Údatac                óN   — ddl m}  || ¦  «                             |||¦  «        S )z]Given some source code as a string, return its corresponding astroid
        object.
        r   r[   ©ra   r\   Ústring_build)r3   rf   rS   rR   r\   s        r"   Úast_from_stringzAstroidManager.ast_from_stringœ   s8   € ð 	3Ð2Ð2Ð2Ð2Ð2àˆ~˜dÑ#Ô#×0Ò0°°wÀÑIÔIÐIr5   c                óL   — ddl m}  || ¦  «                             d|¦  «        S )Nr   r[   re   rh   )r3   rS   r\   s      r"   Ú_build_stub_modulez!AstroidManager._build_stub_module§   s4   € à2Ð2Ð2Ð2Ð2Ð2àˆ~˜dÑ#Ô#×0Ò0°°WÑ=Ô=Ð=r5   r]   úSequence[str]c                ó&   — ddl m}  |||¦  «        S )Nr   )Úbuild_namespace_package_module)ra   ro   )r3   rS   r]   ro   s       r"   Ú_build_namespace_modulez&AstroidManager._build_namespace_module­   s*   € ð 	CÐBÐBÐBÐBÐBà-Ð-¨g°tÑ<Ô<Ð<r5   c                ó`   — | j         rdS t          |¦  «        rdS t          || j        ¦  «        S ©NT)r*   r   r   r-   )r3   rS   s     r"   Ú_can_load_extensionz"AstroidManager._can_load_extensionµ   sA   € ØÔ&ð 	Ø�4Ý˜GÑ$Ô$ð 	Ø�4ÝAØ�TÔ5ñ
ô 
ð 	
r5   Úcontext_fileÚ	use_cachec                ó<  — |€t          d¦  «        ‚|| j        v r|r| j        |         S |dk    r|                      |¦  «        S |rDt          j        ¦   «         }t          j        t          j                             |¦  «        ¦  «         	 |                      ||¦  «        }|j	        t          j        j        k    r7|                      |j        ¦  «        }|�||rt          j        |¦  «         S S �nì|j	        t          j        j        t          j        j        fv rÃ|j	        t          j        j        k    rA|                      |¦  «        s,|                      |¦  «        |rt          j        |¦  «         S S 	 t%          |¦  «        }n*# t&          $ r}t)          d||j        ¬¦  «        |‚d}~ww xY w|                      ||¦  «        |rt          j        |¦  «         S S |j	        t          j        j        k    rt)          d||j        ¬¦  «        ‚|j	        t          j        j        k    r4|                      ||j        pg ¦  «        |rt          j        |¦  «         S S |j	        t          j        j        k    rg|j        €,|                      |¦  «        |rt          j        |¦  «         S S |                      |j        |d¬¦  «        |rt          j        |¦  «         S S |j        €t)          d	|¬
¦  «        ‚|                      |j        |d¬¦  «        |rt          j        |¦  «         S S # t           $ rJ}| j        D ];}		  |	|¦  «        c cY d}~|rt          j        |¦  «         S S # t           $ r Y Œ8w xY w|‚d}~ww xY w# |rt          j        |¦  «         w w xY w)rX   NzNo module name given.Ú__main__z&Loading {modname} failed with:
{error})rS   r]   z)Unable to load compiled module {modname}.F)rU   z'Can't find a file for module {modname}.)rS   )r   r'   rl   ÚosÚgetcwdÚchdirr]   ÚdirnameÚfile_from_module_nameÚtyper   Ú
ModuleTypeÚPY_ZIPMODULEÚzip_import_dataÚlocationÚ	C_BUILTINÚC_EXTENSIONrs   r   r!   r   Úast_from_moduleÚPY_COMPILEDÚPY_NAMESPACErp   Úsubmodule_search_locationsÚ	PY_FROZENrd   r)   )
r3   rS   rt   ru   Úold_cwdÚ
found_specÚmoduleÚnamed_moduleÚeÚhooks
             r"   rc   z#AstroidManager.ast_from_module_name¾   se  € ð ˆ?Ý&Ð'>Ñ?Ô?Ð?ð
 �dÔ(Ð(Ð(¨YÐ(ØÔ% gÔ.Ð.Ø�jÒ Ð Ø×*Ò*¨7Ñ3Ô3Ð3Øð 	4Ý”i‘k”kˆGÝŒH•R”W—_’_ \Ñ2Ô2Ñ3Ô3Ð3ð;	"Ø×3Ò3°G¸\ÑJÔJˆJØŒ¥$¤/Ô">Ò>Ð>Ø×-Ò-¨jÔ.AÑBÔB�ØÐ%Ø!ðj ð "Ý”˜Ñ!Ô!Ð!Ð!ð"ñm &ð ”Ý”Ô)Ý”Ô+ð%ð ð ð
 ”O¥t¤Ô'BÒBÐBØ ×4Ò4°WÑ=Ô=ð Cð  ×2Ò2°7Ñ;Ô;ðV ð "Ý”˜Ñ!Ô!Ð!Ð!ð"ðUÝ#8¸Ñ#AÔ#A�L�LøÝ ð ð ð Ý,ØAØ 'Ø'Ô0ðñ ô ð ð	øøøøðøøøð ×+Ò+¨L¸'ÑBÔBðD ð "Ý”˜Ñ!Ô!Ð!Ð!ð"ðA ”¥D¤OÔ$?Ò?Ð?Ý(Ø?Ø#Ø#Ô,ðñ ô ð ð ”¥D¤OÔ$@Ò@Ð@Ø×3Ò3Ø˜ZÔBÐHÀbñô ð0 ð "Ý”˜Ñ!Ô!Ð!Ð!ð"ð+ ”¥D¤OÔ$=Ò=Ð=ØÔ&Ð.Ø×2Ò2°7Ñ;Ô;ð& ð "Ý”˜Ñ!Ô!Ð!Ð!ð"ð! ×)Ò)¨*Ô*=¸wÐQVÐ)ÑWÔWð  ð "Ý”˜Ñ!Ô!Ð!Ð!ð"ð Ô"Ð*Ý(Ø=Àwðñ ô ð ð ×%Ò% jÔ&9¸7ÈUÐ%ÑSÔSð ð "Ý”˜Ñ!Ô!Ð!Ð!ð"øõ $ð 	ð 	ð 	ØÔ1ð ð �ðØ˜4 ™=œ=Ð(Ð(Ð(Ð(Ð(Ð(Ð(ð
 ð "Ý”˜Ñ!Ô!Ð!Ð!ð"øõ	 ,ð ð ð Ø�DðøøøàˆGøøøøð	øøøøð ð "Ý”˜Ñ!Ô!Ð!Ð!ð"øøøs™   ÂAL+ Ã1A.L+ Å8F ÆL+ Æ
F/ÆF*Æ*F/Æ/L+ ÇA'L+ É5L+ Ê+L+ Ë4L+ Ì+
M?Ì5	M:Ì?
M(Í	M:ÍM?ÍN Í(
M5Í2M:Í4M5Í5M:Í:M?Í?N ÎNúnodes.Module | Nonec                óð  — t           €d S ddlm}  || ¦  «        }t          D ]Ó}	 |                     |t
          j        j        z   d¦  «        \  }}n# t          $ r Y Œ;w xY w	 t          j	        ||z   ¦  «        }| 
                    t
          j        j        d¦  «        }|                     |¦  «        r|dz   }|                     |                     |¦  «        ||¦  «        }	|	c S # t          $ r Y ŒÐw xY wd S )Nr   r[   é   rY   z	.__init__)Ú	zipimportra   r\   ÚZIP_IMPORT_EXTSÚrsplitrx   r]   ÚsepÚ
ValueErrorÚzipimporterÚreplaceÚ
is_packageri   Ú
get_sourcer!   )
r3   rR   r\   ÚbuilderÚextÚeggpathÚresourceÚimporterÚzmodnamer‹   s
             r"   r€   zAstroidManager.zip_import_data  s3  € ÝÐØ�4ð 	3Ð2Ð2Ð2Ð2Ð2à �. Ñ&Ô&ˆÝ"ð 	ð 	ˆCðØ$,§O¢O°C½"¼'¼+Ñ4EÀqÑ$IÔ$IÑ!�˜˜øÝð ð ð Ø�ðøøøð
Ý$Ô0°¸3±Ñ?Ô?�Ø#×+Ò+­B¬G¬K¸Ñ=Ô=�Ø×&Ò& xÑ0Ô0ð 6Ø'¨+Ñ5�HØ ×-Ò-Ø×'Ò'¨Ñ1Ô1°8¸Xñô �ð ���øÝð ð ð Ø�ðøøøàˆts$   ¥+AÁ
AÁAÁ"BC&Ã&
C3Ã2C3Úcontextfileúspec.ModuleSpecc           	     óx  — 	 | j         ||f         }n~# t          $ rq 	 t          |                     d¦  «        |¬¦  «        }n<# t          $ r/}t          d||                     d ¦  «        ¬¦  «        }Y d }~nd }~ww xY w|| j         ||f<   Y nw xY wt          |t          ¦  «        r|                     d ¦  «        ‚|S )NrY   )rt   z6Failed to import module {modname} with error:
{error}.)rS   Úerror)	r(   ÚKeyErrorr   Úsplitr_   r   Úwith_tracebackÚ
isinstancer   )r3   rS   r¡   r:   r�   s        r"   r|   z$AstroidManager.file_from_module_name)  s  € ð	AØÔ(¨'°;Ð)?Ô@ˆEˆEøÝð 	Að 	Að 	AðÝ.Ø—M’M #Ñ&Ô&°[ðñ ô ��øõ ð ð ð å*ØMØ#à×*Ò*¨4Ñ0Ô0ð	ñ ô ������øøøøðøøøð <AˆDÔ  '¨;Ð!7Ñ8Ð8Ð8ð	Aøøøõ �eÕ1Ñ2Ô2ð 	-à×&Ò& tÑ,Ô,Ð,Øˆs8   ‚ ’
B�$AÁBÁ
A;Á%A6Á1BÁ6A;Á;BÂBr‹   útypes.ModuleTypec                ó  — |p|j         }|| j        v r| j        |         S 	 |j        }t          |¦  «        r|                      ||¦  «        S n# t
          $ r Y nw xY wddlm}  || ¦  «                             ||¦  «        S )z4Given an imported module, return the astroid object.r   r[   )	Ú__name__r'   Ú__file__r   rd   ÚAttributeErrorra   r\   Úmodule_build)r3   r‹   rS   rR   r\   s        r"   r„   zAstroidManager.ast_from_moduleA  s¹   € ð Ð,˜Vœ_ˆØ�dÔ(Ð(Ð(ØÔ% gÔ.Ð.ð	à”ˆHÝ Ñ)Ô)ð =à×)Ò)¨(°GÑ<Ô<Ð<ð=øõ ð 	ð 	ð 	ØˆDð	øøøð 	3Ð2Ð2Ð2Ð2Ð2àˆ~˜dÑ#Ô#×0Ò0°¸ÑAÔAÐAs   ¡+A Á
AÁAÚklassr}   únodes.ClassDefc                ó$  — |€<	 |j         }n3# t          $ r&}t          d|t          |¦  «        |¬¦  «        |‚d}~ww xY w|                      |¦  «        }|                     |j        ¦  «        d         }t          |t          j	        ¦  «        sJ ‚|S )z Get astroid for the given class.Nz,Unable to get module for class {class_name}.)ÚclsÚ
class_reprrS   r   )
Ú
__module__r­   r   r#   rc   Úgetattrr«   r¨   r	   ÚClassDef)r3   r¯   rS   ÚexcÚ
modastroidÚrets         r"   Úast_from_classzAstroidManager.ast_from_classV  s±   € àˆ?ðØÔ*��øÝ!ð ð ð Ý*ØBØÝ(¨Ñ/Ô/Ø#ð	ñ ô ð
 ðøøøøðøøøð ×.Ò.¨wÑ7Ô7ˆ
Ø× Ò  ¤Ñ0Ô0°Ô3ˆÝ˜#�uœ~Ñ.Ô.Ð.Ð.Ð.Øˆ
s   „ Œ
<–!7·<r   ÚobjectÚcontextúInferenceContext | NoneúIterator[InferenceResult]c              #  ó@  K  — t          |d¦  «        rt          |t          ¦  «        s|j        }n7t          |t          ¦  «        r|}nt	          ddt          |¦  «        ¬¦  «        ‚	 |j        }n_# t          $ r%}t	          d|t          |¦  «        ¬¦  «        |‚d}~wt          $ r%}t          d|t          |¦  «        ¬¦  «        |‚d}~ww xY w	 |j
        }n_# t          $ r%}t	          d|t          |¦  «        ¬¦  «        |‚d}~wt          $ r%}t          d|t          |¦  «        ¬¦  «        |‚d}~ww xY w|                      |¦  «        }||u r|                     ||¦  «        D ]}|V — ŒdS |                     ||¦  «        D ]}|                     ¦   «         V — ŒdS )	z"Infer astroid for the given class.Ú	__class__z$Unable to get type for {class_repr}.N)r²   r³   z&Unable to get module for {class_repr}.zBUnexpected error while retrieving module for {class_repr}:
{error}z%Unable to get name for {class_repr}:
z@Unexpected error while retrieving name for {class_repr}:
{error})Úhasattrr¨   r}   rÀ   r   r#   r´   r­   r!   r   r«   rc   ÚigetattrÚinstantiate_class)	r3   r   r¼   r¯   rS   r·   Únamer¸   Úinferreds	            r"   Úinfer_ast_from_somethingz'AstroidManager.infer_ast_from_somethingg  sL  è è € õ �3˜Ñ$Ô$ð 		­Z¸½TÑ-BÔ-Bð 		Ø”MˆEˆEÝ˜�TÑ"Ô"ð 	ØˆEˆEå&Ø6ØÝ$ S™>œ>ðñ ô ð ð
	ØÔ&ˆGˆGøÝð 	ð 	ð 	Ý&Ø8ØÝ$ UÑ+Ô+ðñ ô ð ð	øøøøõ
 ð 	ð 	ð 	Ý$ðàÝ$ UÑ+Ô+ð	ñ ô ð
 ðøøøøð	øøøð	Ø”>ˆDˆDøÝð 	ð 	ð 	Ý&Ø8ØÝ$ UÑ+Ô+ðñ ô ð ð	øøøøõ
 ð 	ð 	ð 	Ý$ØSØÝ$ UÑ+Ô+ðñ ô ð ð	øøøøð	øøøð ×.Ò.¨wÑ7Ô7ˆ
Ø�Cˆ<ˆ<Ø&×/Ò/°°gÑ>Ô>ð ð �Ø����ðð ð '×/Ò/°°gÑ>Ô>ð 3ð 3�Ø×0Ò0Ñ2Ô2Ð2Ð2Ð2Ð2ð3ð 3sH   Á(A0 Á0
CÁ: BÂCÂ' CÃCÃC Ã
D4Ã" DÄD4Ä D/Ä/D4rŽ   úCallable[[str], nodes.Module]c                ó:   — | j                              |¦  «         dS )a}  Registers a hook to resolve imports that cannot be found otherwise.

        `hook` must be a function that accepts a single argument `modname` which
        contains the name of the module or package that could not be imported.
        If `hook` can resolve the import, must return a node of type `astroid.Module`,
        otherwise, it must raise `AstroidBuildingError`.
        N)r)   Úappend)r3   rŽ   s     r"   Úregister_failed_import_hookz*AstroidManager.register_failed_import_hook›  s!   € ð 	Ô!×(Ò(¨Ñ.Ô.Ð.Ð.Ð.r5   c                óF   — | j                              |j        |¦  «         dS )z<Cache a module if no module with the same name is known yet.N)r'   Ú
setdefaultrÄ   )r3   r‹   s     r"   Úcache_modulezAstroidManager.cache_module¥  s#   € àÔ×%Ò% f¤k°6Ñ:Ô:Ð:Ð:Ð:r5   c                ó:   — ddl m} |                     ¦   «          dS )záBootstrap the required AST modules needed for the manager to work.

        The bootstrap usually involves building the AST for the builtins
        module, which is required by the rest of astroid to work correctly.
        r   )Úraw_buildingN)ÚastroidrÏ   Ú_astroid_bootstrapping)r3   rÏ   s     r"   Ú	bootstrapzAstroidManager.bootstrap©  s.   € ð 	)Ð(Ð(Ð(Ð(Ð(à×+Ò+Ñ-Ô-Ð-Ð-Ð-r5   c                ó¶  — ddl m} ddlm} ddlm} ddlm} ddlm	}  |¦   «          t          ¦   «          | j                             ¦   «          t          j        t          ¦  «        t           j        d         _        |j        t(          t*          j        |j        |j        fD ]}|                     ¦   «          Œ|                      ¦   «           || ¦  «         dS )	zgClear the underlying caches, bootstrap the builtins module and
        re-register transforms.
        r   )Úregister_all_brains)Úclear_inference_tip_cache)ÚObjectModel)ÚLookupMixIn)r¶   r.   N)Úastroid.brain.helpersrÔ   Úastroid.inference_tiprÕ   Úastroid.interpreter.objectmodelrÖ   Úastroid.nodes._base_nodesr×   Úastroid.nodes.scoped_nodesr¶   r   r'   ÚclearÚcollectionsÚdefaultdictÚlistr%   r/   Ú
transformsÚlookupr   r   Úis_namespaceÚ
attributesÚ_metaclass_lookup_attributeÚcache_clearrÒ   )r3   rÔ   rÕ   rÖ   r×   r¶   Ú	lru_caches          r"   Úclear_cachezAstroidManager.clear_cache³  s  € ð 	>Ð=Ð=Ð=Ð=Ð=ØCÐCÐCÐCÐCÐCØ?Ð?Ð?Ð?Ð?Ð?Ø9Ð9Ð9Ð9Ð9Ð9Ø7Ð7Ð7Ð7Ð7Ð7à!Ð!Ñ#Ô#Ð#ÝÑÔÐàÔ× Ò Ñ"Ô"Ð"å8CÔ8OÕPTÑ8UÔ8U�Ô˜\Ô*Ô5ð ÔÝ"ÝÔØÔ"ØÔ0ð
ð 	$ð 	$ˆIð ×!Ò!Ñ#Ô#Ð#Ð#à�ŠÑÔÐð 	Ð˜DÑ!Ô!Ð!Ð!Ð!r5   )r   r0   )r   r6   )r:   r6   r   r0   )r   r@   )r:   r@   r   r0   )r   rI   )rM   rN   r   r   )NTF)
rR   r   rS   rT   rU   r6   rV   r6   r   rI   )re   N)rf   r   rS   r   rR   rT   r   rI   )rS   r   r   rI   )rS   r   r]   rm   r   rI   )rS   r   r   r6   rr   )rS   rT   rt   rT   ru   r6   r   rI   )rR   r   r   r�   )rS   r   r¡   rT   r   r¢   rE   )r‹   r©   rS   rT   r   rI   )r¯   r}   rS   rT   r   r°   )r   r»   r¼   r½   r   r¾   )rŽ   rÇ   r   r0   )r‹   rI   r   r0   )"r«   r´   Ú__qualname__Ú__doc__rÄ   Úsetr   r/   Ú__annotations__r4   Úpropertyr*   Úsetterr+   r,   rF   rH   rL   rQ   rd   rj   rl   rp   rs   rc   r€   r|   r„   rº   rÆ   rÊ   rÍ   rÒ   rè   © r5   r"   r%   r%   /   s?  € € € € € € ðð ð
 €DàØØ "Ø"'ØØ #Ø'* s¡u¤uØ&Ð&Ñ(Ô(ð	,ð 	,€Eð 	ð 	ð 	ñ 	ð=ð =ð =ð =ð ð>ð >ð >ñ „Xð>ð Ô"ð?ð ?ð ?ñ #Ô"ð?ð ð4ð 4ð 4ñ „Xð4ð Ôð5ð 5ð 5ñ Ôð5ð ð<ð <ð <ñ „Xð<ð Ô ð=ð =ð =ñ !Ô ð=ð ð2ð 2ñ „Xð2ð ð4ð 4ñ „Xð4ð ð.ð .ð .ñ „Xð.ð+ð +ð +ð +ð #ØØð&Xð &Xð &Xð &Xð &XðR DHð	Jð 	Jð 	Jð 	Jð 	Jð>ð >ð >ð >ð=ð =ð =ð =ð
ð 
ð 
ð 
ð $(Øð	O"ð O"ð O"ð O"ð O"ðbð ð ð ð4ð ð ð ð2 ?CðBð Bð Bð Bð Bð*ð ð ð ð ð$ ?Cð23ð 23ð 23ð 23ð 23ðh/ð /ð /ð /ð;ð ;ð ;ð ;ð.ð .ð .ð .ð"ð "ð "ð "ð "ð "r5   r%   )r   r   r   r   )+rê   Ú
__future__r   rÞ   rx   Útypesr’   Úcollections.abcr   r   r   Útypingr   r   rÐ   r	   Úastroid.contextr
   r   Úastroid.exceptionsr   r   Úastroid.interpreter._importr   r   Úastroid.modutilsr   r   r   r   r   r   r   r   r   Úastroid.transformsr   Úastroid.typingr   r   r“   r#   r%   rï   r5   r"   ú<module>rú      sÌ  ðð
ð ð
 #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ø 	€	€	€	Ø €€€Ø Ð Ð Ð Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ø  Ð  Ð  Ð  Ð  Ð  Ð  Ð  à Ð Ð Ð Ð Ð Ø ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ø GÐ GÐ GÐ GÐ GÐ GÐ GÐ GØ 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2ð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 0Ð /Ð /Ð /Ð /Ð /Ø ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?à;€ðð ð ð ðc"ð c"ð c"ð c"ð c"ñ c"ô c"ð c"ð c"ð c"r5   