Ë
    pPêj(¤ ã                  ó¤	  — U 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Zddl	Z	ddl
Z
ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlmZ ddlmZ ddlmZmZ ddlmZ ddlmZ dd	lmZm Z m!Z!m"Z"m#Z#m$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+Z'ddl,Z'ddl-Z'ddl.Z'ddl/Z'ddl'm0Z0 ddl1m2Z2 ddl3m4Z4m5Z5 ddl6m7Z7 ddl8m9Z9 ddl:m;Z;m<Z<m=Z=m>Z>  G d„ d«      Z? e?«       Z@deAd<    e"d«      ZBeBe?z  ZCdeAd<    G d„ d«      ZD eD«       ZEdeAd<    e;ejŒ                  ejŽ                  d«      ZHdeAd<   dld„ZIdmd„ZJ G d„ d eK«      ZL G d!„ d"«      ZMdnd#„ZNdod$„ZOe	 	 	 	 	 	 	 	 dpd%„«       ZP	 	 	 	 	 	 	 	 dqd&„ZQej¤                  drd'„«       ZSePj©                  e0jª                  «      	 	 	 	 	 	 	 	 dsd(„«       ZVdtd)„ZW	 	 	 	 	 	 	 	 dud*„ZX ej²                  d+«      ZZdvd,„Z[dwd-„Z\	 	 	 	 	 	 	 	 dxd.„Z]	 	 	 	 	 	 	 	 	 	 dyd/„Z^ePj©                  e0j¾                  «      dd0œ	 	 	 	 	 	 	 	 	 dzd1„«       Z`d{d2„Za	 	 	 	 	 	 	 	 	 	 d|d3„Zb	 	 	 	 	 	 	 	 d}d4„Zc	 	 	 	 	 	 d~d5„Zddd6„Ze G d7„ d8e!eB   «      Zf	 d€	 	 	 	 	 	 	 	 	 d�d9„Zgd‚d:„ZhePj©                  e0jÒ                  «      	 	 	 	 	 	 	 	 dƒd;„«       ZjePj©                  e?«      	 	 	 	 	 	 	 	 d„d<„«       ZkePj©                  e0jØ                  «      	 	 	 	 	 	 	 	 d…d=„«       ZmePj©                  e0jÜ                  «      	 	 	 	 	 	 	 	 d†d>„«       ZoePj©                  e0jà                  «      	 	 	 	 	 	 	 	 d‡d?„«       ZqePj©                  e0jä                  «      	 	 	 	 	 	 	 	 dˆd@„«       Zsd‰dA„ZtdŠdB„Zud‹dC„Zv	 	 	 	 	 	 	 	 dŒdD„Zwd�dE„Zx	 	 	 	 	 	 dŽdF„ZyePj©                  e0jô                  «      	 	 	 	 	 	 	 	 d�dG„«       Z{ePj©                  e0jø                  «      	 	 	 	 	 	 	 	 d�dH„«       Z} e~h dI£«      ZdeAdJ<    e~h dK£«      Z€deAdL<   dMZ�deAdN<   d‘dO„Z‚d’dP„Zƒd‰dQ„Z„d“dR„Z…d”dS„Z†d•dT„Z‡ G dU„ dVe'j&                  �j                  «      Z‰ e‰«       ZŠd–dW„Z‹d—dX„ZŒd˜dY„Z�d™dZ„ZŽ	 dš	 	 	 	 	 d›d[„Z�i a�d\eAd]<   d€dœd^„Z‘d�d_„Z’	 dš	 	 	 	 	 džd`„Z“dŸda„Z”d db„Z• G dc„ dd«      Z– e~h de£«      Z—deAdf<   d€d¡dg„Z˜d¢dh„Z™d£di„Zšd¤dj„Z›eœdkk(  r e�j:                   e›«       «       yy)¥ziTests for stubs.

Verify that various things in stubs are consistent with how things behave at runtime.

é    )ÚannotationsN)Údefaultdict)ÚIterator)Úredirect_stderrÚredirect_stdout)Úsingledispatch)ÚPath)ÚAnyÚFinalÚGenericÚTypeVarÚUnionÚ
get_origin)Úis_typeddict)Únodes)Úparse_config_file)ÚUNKNOWNÚevaluate_expression)Úmap_instance_to_supertype)ÚOptions)ÚFancyFormatterÚbytes_to_human_readable_reprÚ	is_dunderÚplural_sc                  ó   — e Zd ZdZdd„Zy)ÚMissingzGMarker object for things that are missing (from a stub or the runtime).c                 ó   — y)NÚMISSING© ©Úselfs    úR/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/mypy/stubtest.pyÚ__repr__zMissing.__repr__8   s   € Øó    N©ÚreturnÚstr©Ú__name__Ú
__module__Ú__qualname__Ú__doc__r#   r   r$   r"   r   r   5   s
   „ ÙQôr$   r   r   r   ÚTztyping_extensions.TypeAliasÚMaybeMissingc                  ó   — e Zd ZdZdd„Zy)ÚUnrepresentablez5Marker object for unrepresentable parameter defaults.c                 ó   — y)Nú<unrepresentable>r   r    s    r"   r#   zUnrepresentable.__repr__E   s   € Ø"r$   Nr%   r(   r   r$   r"   r0   r0   B   s
   „ Ù?ô#r$   r0   ÚUNREPRESENTABLEFÚ
_formatterc                óR   — |j                  dd«       t        j                  | fi |¤ŽS )z.Wrapper around mypy.util for fancy formatting.ÚcolorÚnone)Ú
setdefaultr4   Ústyle)ÚmessageÚkwargss     r"   Ú_styler<   O   s(   € à
×Ñ�g˜vÔ&Ü×Ñ˜GÑ. vÑ.Ð.r$   c                ó8   — t        | «      |kD  r| d |dz
   dz   S | S )Né   ú...)Úlen)r:   Úlengths     r"   Ú	_truncaterB   U   s)   € Ü
ˆ7ƒ|�fÒØ�|˜ !™Ð$ uÑ,Ð,Ø€Nr$   c                  ó   — e Zd Zy)ÚStubtestFailureN©r)   r*   r+   r   r$   r"   rD   rD   [   s   „ Ør$   rD   c                  ó`   — e Zd Zdddœ	 	 	 	 	 	 	 	 	 	 	 	 	 d	d„Zd
d„Zd
d„Zd
d„Zd
d„Zddd„Zy)ÚErrorN©Ú	stub_descÚruntime_descc               óp  — || _         dj                  |«      | _        || _        || _        || _        |xs t        t        |d|«      «      | _        |€\t        |«      }|€t        t        |«      d«      | _        yt        j                  |«      }t        ||¬«      }	t        |	d«      | _        y|| _        y)a  Represents an error found by stubtest.

        :param object_path: Location of the object with the error,
            e.g. ``["module", "Class", "method"]``
        :param message: Error message
        :param stub_object: The mypy node representing the stub
        :param runtime_object: Actual object obtained from the runtime
        :param stub_desc: Specialised description for the stub object, should you wish
        :param runtime_desc: Specialised description for the runtime object, should you wish

        ú.ÚtypeNéd   ©Úis_async)Úobject_pathÚjoinÚobject_descr:   Ústub_objectÚruntime_objectr'   ÚgetattrrI   Úsafe_inspect_signaturerB   ÚreprrJ   ÚinspectÚiscoroutinefunctionÚdescribe_runtime_callable)
r!   rQ   r:   rT   rU   rI   rJ   Úruntime_sigÚruntime_is_asyncÚdescriptions
             r"   Ú__init__zError.__init__`   s­   € ð* 'ˆÔØŸ8™8 KÓ0ˆÔØˆŒØ&ˆÔØ,ˆÔØ"ÒT¤c¬'°+¸vÀ{Ó*SÓ&TˆŒàÐÜ0°Ó@ˆKØÐ"Ü$-¬d°>Ó.BÀCÓ$H�Õ!ä#*×#>Ñ#>¸~Ó#NÐ Ü7¸ÐN^Ô_�Ü$-¨k¸3Ó$?�Õ!à ,ˆDÕr$   c                ó6   — t        | j                  t        «      S )z@Whether or not the error is for something missing from the stub.)Ú
isinstancerT   r   r    s    r"   Úis_missing_stubzError.is_missing_stub‡   s   € ä˜$×*Ñ*¬GÓ4Ð4r$   c                ó   — d| j                   v S )zOWhether or not the error is for something being (or not being) positional-only.zshould be positional©r:   r    s    r"   Úis_positional_only_relatedz Error.is_positional_only_related‹   s   € ð &¨¯©Ð5Ð5r$   c                ó   — d| j                   v S )z6Whether or not the error is related to @disjoint_base.z@disjoint_baserd   r    s    r"   Úis_disjoint_base_relatedzError.is_disjoint_base_related�   s   € ð   4§<¡<Ð/Ð/r$   c                ó8   — | j                   j                  d«      S )zIWhether or not the error is related to @type_check_only on private types.z$Maybe mark it as "@type_check_only"?)r:   Úendswithr    s    r"   Ú"is_private_type_check_only_relatedz(Error.is_private_type_check_only_related•   s   € ð �|‰|×$Ñ$Ð%KÓLÐLr$   c                óÚ  — |r't        | j                  d¬«      dz   | j                  z   S d}d}t        | j                  t
        «      s| j                  j                  }t        | j                  d   «      }|�|j                  xs d}d}|r|dt        |«      › �z  }|r||rdnd	› |› �z  }d}d}t        | j                  t
        «      sC	 t        j                  | j                  «      d
   }	 t        j"                  | j                  «      }d}|r|dt        |«      › �z  }|r||rdnd	› |› �z  }t        ddd¬«      t        | j                  d¬«      d| j                  ddt        |d¬«      dt        | j$                  dz   dd¬«      dt        |d¬«      dt        | j&                  dz   dd¬«      g}	dj)                  |	«      S # t        t        t         f$ r Y Œíw xY w# t        $ r Y ŒÜw xY w)zxReturns a description of the error.

        :param concise: Whether to return a concise, one-line description

        T)Úboldú Nr   Ú z	 in file ú:z	 at line é   zerror: Úred©r6   rl   ú
zStub:)ÚdimÚblue)r6   rt   zRuntime:)r<   rS   r:   ra   rT   r   ÚlineÚget_stubrQ   Úpathr	   rU   rY   ÚgetsourcelinesÚOSErrorÚ	TypeErrorÚSyntaxErrorÚgetsourcefilerI   rJ   rR   )
r!   ÚconciseÚ	stub_lineÚ	stub_fileÚ	stub_nodeÚstub_loc_strÚruntime_lineÚruntime_fileÚruntime_loc_strÚoutputs
             r"   Úget_descriptionzError.get_descriptionš   s  € ñ Ü˜$×*Ñ*°Ô6¸Ñ<¸t¿|¹|ÑKÐKàˆ	Øˆ	Ü˜$×*Ñ*¬GÔ4Ø×(Ñ(×-Ñ-ˆIÜ˜T×-Ñ-¨aÑ0Ó1ˆ	ØÐ Ø!Ÿ™Ò.¨$ˆIàˆÙØ˜i¬¨Y«Ð'8Ð9Ñ9ˆLÙØ¡i™s°[ÐAÀ)ÀÐMÑMˆLàˆØˆÜ˜$×-Ñ-¬wÔ7ðÜ&×5Ñ5°d×6IÑ6IÓJÈ1ÑM�ðÜ&×4Ñ4°T×5HÑ5HÓI�ð ˆÙØ ¬4°Ó+=Ð*>Ð?Ñ?ˆOÙØ©¡#¸;Ð!GÈÀ~ÐVÑVˆOô �9 E°Ô5Ü�4×#Ñ#¨$Ô/ØØ�L‰LØØÜ�< TÔ*ØÜ�4—>‘> DÑ(°¸DÔAØÜ�?¨Ô-ØÜ�4×$Ñ$ tÑ+°6¸tÔDð
ˆð �w‰w�v‹Ðøô9 œY¬Ð4ò Ùðûô ò Ùðús$   Ã"G Ã.G ÇGÇGÇ	G*Ç)G*)rQ   ú	list[str]r:   r'   rT   úMaybeMissing[nodes.Node]rU   úMaybeMissing[Any]rI   ú
str | NonerJ   r‹   r&   ÚNone)r&   Úbool©F)r~   r�   r&   r'   )	r)   r*   r+   r_   rb   re   rg   rj   r‡   r   r$   r"   rG   rG   _   sn   „ ð !%Ø#'ñ%-àð%-ð ð%-ð .ð	%-ð
 *ð%-ð ð%-ð !ð%-ð 
ó%-óN5ó6ó
0ó
Mõ
8r$   rG   c           	     ó¨  — t        t        j                  d«      5 }t        j                  «       5  t        |«      5  t        |«      5  t        j                  d«       t        j                  | «      }t        | dg¬«       d d d «       d d d «       d d d «       d d d «       S # 1 sw Y   Œ#xY w# 1 sw Y   Œ'xY w# 1 sw Y   Œ+xY w# 1 sw Y   S xY w)NÚwÚignoreÚ*)Úfromlist)ÚopenÚosÚdevnullÚwarningsÚcatch_warningsr   r   ÚsimplefilterÚ	importlibÚimport_moduleÚ
__import__)Úmodule_namer–   Úruntimes      r"   Úsilent_import_modulerŸ   Ú   s¶   € Ü	Œb�j‰j˜#Ó	ð 4 'Ü×$Ñ$Ó&ñ 	4¬¸Ó(@ñ 	4Ä/ÐRYÓBZñ 	4Ü×!Ñ! (Ô+Ü×-Ñ-¨kÓ:ˆGô �{¨c¨UÕ3÷	4÷ 	4÷ 	4÷4ð €N÷	4ð 	4ú÷ 	4ð 	4ú÷ 	4ð 	4ú÷4ð €NúsQ   ›C°B;¼B/Á9B#	ÂB/Â	B;ÂCÂ#B,Â(B/Â/B8Â4B;Â;C	Ã CÃCc              #  ó  K  — t        | «      }|€et        | j                  d«      d   «      sG| t        j                  v rt        t        j                  |    «      nd}t        | gdt        d|¬«      –— y	 t        | «      }t        j                   «       5  t        j"                  d«       	 t%        ||| g«      E d{  –—†  ddd«       y# t        $ r ‚ t        $ rO}d}t        |t        «      rd}t        | gd	|› d
t        |«      j                  › d|› �|t        «      –— Y d}~yd}~ww xY w7 Œq# t&        $ rÂ}t)        t+        j,                  |j.                  «      «      d   d   }|j0                  j3                  dd«      }|dk(  s|j                  d«      d   dk(  r‚ t        | gdt        |«      j                  › d|› �||ddt+        j4                  «       j7                  «       z   ¬«      –— Y d}~�Œ5d}~ww xY w# 1 sw Y   yxY w­w)zÐTests a given module's stub against introspecting it at runtime.

    Requires the stub to have been built already, accomplished by a call to ``build_stubs``.

    :param module_name: The module to test

    NrL   éÿÿÿÿúN/Azfailed to find stubs©rJ   rn   z7 Maybe install the runtime package or alter PYTHONPATH?zfailed to import.rm   ú: r‘   r   r)   Ú__main__Úmypyzencountered unexpected error, z¼This is most likely the fault of something very dynamic in your library. It's also possible this is a bug in stubtest.
If in doubt, please open an issue at https://github.com/python/mypy

rH   )rw   Úis_probably_privateÚsplitÚsysÚmodulesrX   rG   r   rŸ   ÚKeyboardInterruptÚBaseExceptionra   ÚModuleNotFoundErrorrM   r)   r—   r˜   r™   ÚverifyÚ	ExceptionÚlistÚ	tracebackÚwalk_tbÚ__traceback__Ú	f_globalsÚgetÚ
format_excÚstrip)r�   ÚstubrJ   rž   ÚeÚnoteÚbottom_frameÚbottom_modules           r"   Útest_moduler½   æ   s  è ø€ ô �KÓ €DØ€|Ü" ;×#4Ñ#4°SÓ#9¸"Ñ#=Ô>Ø=HÌCÏKÉKÑ=Wœ4¤§¡¨KÑ 8Ô9Ð]bˆLÜØ�Ð5´wÀÐS_ôò ð 	ðÜ& {Ó3ˆô 
×	 Ñ	 Ó	"ñ Ü×Ñ˜hÔ'ð	Ü˜d G¨k¨]Ó;×;Ð;÷ð øô ò ØÜò ØˆÜ�aÔ,Ô-ØLˆDÜØˆMÐ.¨t¨f°A´d¸1³g×6FÑ6FÐ5GÀrÈ!ÈÐMÈtÔU\ó
ò 	
ô 	ûðúð <ùÜò 	Ü¤	× 1Ñ 1°!·/±/Ó BÓCÀBÑGÈÑJˆLØ(×2Ñ2×6Ñ6°zÀ2ÓFˆMð  
Ò*¨m×.AÑ.AÀ#Ó.FÀqÑ.IÈVÒ.SØÜØ�Ø0´°a³×1AÑ1AÐ0BÀ"ÀQÀCÐHØØØðJô  ×*Ñ*Ó,×2Ñ2Ó4ñ5ô÷ ð ûð	ú÷	ð üs€   ‚A3HÁ6C ÂHÂG?Â,D1Â=D/Â>D1Ã	HÃD,ÃAD'Ä"HÄ'D,Ä,HÄ/D1Ä1	G<Ä:B7G7Ç1G?Ç7G<Ç<G?Ç?HÈHc              #  ó,   K  — t        |d| |«      –— y­w)z÷Entry point for comparing a stub to a runtime object.

    We use single dispatch based on the type of ``stub``.

    :param stub: The mypy node representing a part of the stub
    :param runtime: The runtime object corresponding to ``stub``

    zis an unknown mypy nodeN)rG   ©r¸   rž   rQ   s      r"   r®   r®     s   è ø€ ô �Ð6¸¸gÓ
FÓFùs   ‚c           	   #  ó6  K  — d|j                   v sJ ‚|j                   j                  «       D ��ch c]  \  }}|j                  sŒ|’Œ }}}t        ||z
  «      }t        ||z
  «      }|s|sy t	        | dgz   dt
        t
        d|› �d|› �¬«      –— y c c}}w ­w)NÚ__all__z²names exported from the stub do not correspond to the names exported at runtime. This is probably due to things being missing from the stub or an inaccurate `__all__` in the stubz/Names exported in the stub but not at runtime: z/Names exported at runtime but not in the stub: )rT   rU   rI   rJ   )ÚnamesÚitemsÚmodule_publicÚsortedrG   r   )rQ   r¸   Úruntime_all_as_setÚmÚoÚpublic_names_in_stubÚnames_in_stub_not_runtimeÚnames_in_runtime_not_stubs           r"   Ú_verify_exported_namesrÌ   -  sµ   è ø€ ð ˜Ÿ
™
Ñ"Ð"Ð"Ø*.¯*©*×*:Ñ*:Ó*<×P¡$ ! QÀÇÃšAÐPÐÑPÜ &Ð';Ð>PÑ'PÓ QÐÜ &Ð'9Ð<PÑ'PÓ QÐÙ%Ñ)BØÜ
Ø�y�kÑ!ðpô ÜØDÐE^ÐD_Ð`à=Ð>WÐ=XÐYôó ùó Qùs   ‚.B°BÁBÁ	ABc                óÄ   — 	 t        j                  | «      }	 t        j
                  || j                  d«      S # t        t        t        f$ r Y yw xY w# t        $ r Y yw xY w)zØRetrieve the symbol table for the module (or None on failure).

    1) Use inspect to retrieve the source code of the module
    2) Use symtable to parse the source (and use what symtable knows for its purposes)
    NÚexec)rY   Ú	getsourcerz   r{   r|   Úsymtabler)   )rž   Úsources     r"   Ú_module_symbol_tablerÒ   J  se   € ðÜ×"Ñ" 7Ó+ˆðÜ× Ñ  ¨×)9Ñ)9¸6ÓBÐBøô	 ”Y¤Ð,ò Ùðûô
 ò Ùðús    ‚9 ˜ A ¹AÁAÁ	AÁAc              #  óx  K  — t        |t        «      rt        |d| |«      –— y t        |t        j                  «      st        |d| |«      –— y t        |d«      rRt        |j                  «      }d| j                  v rt        || |«      E d {  –—†  nt        |dgz   dt        |«      –— nd }| j                  j                  «       D ��ch c]  \  }}|j                  rŒ|’Œ }}}d	d„}|�|n,t        |«      D �ch c]  }t        |«      s |||«      r|’Œ c}}|j                  |«       |j!                  t"        «       t%        |«      D �]G  }	|	| j                  v r| j                  |	   j&                  nt        }
|	| j                  v r‹| j                  |	   j(                  x}r|j+                  dd«      d   }n@t        |
t,        j.                  «      r$|
j0                  x}r|j+                  dd«      d   }nd }|r|| j0                  k7  r	|t2        v rŒÊt        |
t,        j4                  «      rŒå|
€J ‚t        |	«      r)t        ||	«      st        |
t        «      st7        |
«      s�Œ	 t9        ||	t        «      }t=        |
|||	gz   «      E d {  –—†  �ŒJ y 7 �Œc c}}w c c}w # t:        $ r Y �Œfw xY w7 Œ&­w)
Núis not present at runtimezis not a modulerÁ   úis not present in stubc                óz  — t        | |«      }t        |t        j                  «      ryt	        | «      }|�4	 |j                  |«      }|j                  «       ry|j                  «       ry	 |j                  }t        |t        «      rt        || j                  k(  «      S y# t        $ r Y ŒAw xY w# t        $ r Y yw xY w)zFHeuristics to determine whether a name originates from another module.FT)rV   ra   ÚtypesÚ
ModuleTyperÒ   ÚlookupÚis_importedÚis_assignedÚKeyErrorr*   r'   r�   r)   r¯   )ÚrÚattrÚobjÚsymbol_tableÚsymbolÚobj_mods         r"   Ú_belongs_to_runtimez,verify_mypyfile.<locals>._belongs_to_runtimex  sÅ   € ä�a˜ÓˆÜ�cœ5×+Ñ+Ô,Øä+¨AÓ.ˆØÐ#ð Ø%×,Ñ,¨TÓ2�ð ×%Ñ%Ô'à ð ×%Ñ%Ô'àð	3Ø—n‘nˆGô ˜'¤3Ô'Ü˜G q§z¡zÑ1Ó2Ð2Øøô+ ò Ùðûô  ò 	Øð ð	ús#   ¶B Á*B. Â	B+Â*B+Â.	B:Â9B:rL   rp   r   )rÝ   útypes.ModuleTyperÞ   r'   r&   r�   )ra   r   rG   r×   rØ   ÚhasattrÚsetrÁ   rÂ   rÌ   r   rÃ   Úmodule_hiddenÚdirr§   ÚupdateÚdifference_updateÚIGNORED_MODULE_DUNDERSrÅ   ÚnodeÚ	cross_refÚrsplitr   Ú
SymbolNodeÚfullnameÚ
_all_stubsÚMypyFileÚ_is_decoratablerV   r¯   r®   )r¸   rž   rQ   rÆ   rÇ   rÈ   Úto_checkrã   Úruntime_public_contentsÚentryÚ
stub_entryÚxrefÚorig_moduleÚnameÚruntime_entrys                  r"   Úverify_mypyfilerü   \  s£  è ø€ ô �'œ7Ô#Ü�KÐ!<¸dÀGÓLÒLØÜ�gœu×/Ñ/Ô0ä�KÐ!2°D¸'ÓBÒBØô ˆw˜	Ô"Ü  §¡Ó1ÐØ˜Ÿ
™
Ñ"ô .¨k¸4ÐASÓT×TÑTä˜ y kÑ1Ð3KÌWÐV]Ó^Ó^à!Ðð #Ÿj™j×.Ñ.Ó0×H‘d�a˜¸¿»’ÐH€HÑHóðF Ð)ñ 	ô ˜“\ö
àÜ& qÔ)ñ $ G¨QÔ/ò ò
ð ð ‡O�OÐ+Ô,Ø×ÑÔ5Ô6ä˜Ó!ó !LˆØ/4¸¿
¹
Ñ/B�T—Z‘Z Ñ&×+Ò+Ìˆ
Ø�D—J‘JÑØ—z‘z %Ñ(×2Ñ2Ð2ˆtÐ2Ø"Ÿk™k¨#¨qÓ1°!Ñ4‘Ü˜J¬×(8Ñ(8Ô9Àz×GZÑGZÐ?Z¸tÐ?ZØ"Ÿk™k¨#¨qÓ1°!Ñ4‘à"�á˜{¨d¯m©mÒ;ÀÌzÑ@Yàä�j¤%§.¡.Ô1àØÐ%Ð%Ð%ä Ô&Ü˜G UÔ+Ü˜z¬7Ô3Ü# JÔ/ñ ð	Ü# G¨U´GÓ<ˆMô
 ˜* m°[ÀEÀ7Ñ5JÓK×KÒKñC!Lðw Uûó IùòL
øôV ò 	ò ð	úð 	Lúsg   ‚BJ:ÂJÂ=J:ÃJÃ!JÃ%J:Ã=J#ÄEJ:É,J(É=J:ÊJ8Ê	J:ÊJ:Ê(	J5Ê1J:Ê4J5Ê5J:c                óÔ   — t        | t        j                  «      sy| j                  ry| j                  �4t        d„ | j                  j                  j                  «       D «       «      S y)NFc              3  ól   K  — | ],  }|j                  «       xr t        j                  |«       –— Œ. y ­w©N)ÚisidentifierÚkeywordÚ	iskeyword)Ú.0rú   s     r"   ú	<genexpr>z"_is_decoratable.<locals>.<genexpr>Ô  s7   è ø€ ò 
àð ×ÑÓÒ?¬×(9Ñ(9¸$Ó(?Ð$?Ó?ñ
ùs   ‚24T)ra   r   ÚTypeInfoÚ
is_newtypeÚtypeddict_typeÚallrÃ   Úkeys)r¸   s    r"   ró   ró   Î  s]   € Ü�dœEŸN™NÔ+ØØ‡‚ØØ×ÑÐ&Üñ 
à×+Ñ+×1Ñ1×6Ñ6Ó8ô
ó 
ð 	
ð r$   c           
   #  ól  K  — 	  G d„ d|«      }	 t        |dd«      }|r)| j                  st        |d| |t        | «      ¬«      –— y y y # t         $ rD | j                  s5t        |t        j                  «      st        |d| |t        | «      ¬«      –— Y Œ†t        $ r Y Œ�w xY w# t        $ r d}Y Œ“w xY w­w)Nc                  ó   — e Zd Zy)ú_verify_final.<locals>.SubClassNrE   r   r$   r"   ÚSubClassr  à  s   „ Ør$   r  zIcannot be subclassed at runtime, but isn't marked with @final in the stub©rI   Ú	__final__FzChas `__final__` attribute, but isn't marked with @final in the stub)	r{   Úis_finalÚ
issubclassÚenumÚEnumrG   rX   r¯   rV   )r¸   rž   rQ   r  Úruntime_finals        r"   Ú_verify_finalr  Û  sÅ   è ø€ ðô	�wô 	ð&Ü ¨°eÓ<ˆñ ˜TŸ]š]ÜØØQØØÜ˜4“jô
ó 	
ð +€}øô+ ò 	à�}Š}¤Z°¼¿¹Ô%CÜØØ[ØØÜ˜t›*ôò ùô ò ñ 	ðûô ò ØŠðüsQ   ‚B4„A	 �B# �,B4Á	A
B ÂB4ÂB ÂB4ÂB Â B4Â#B1Â.B4Â0B1Â1B4ÚPc                óR  — t         j                  dk\  r4| j                  |j                  k7  xs | j                  |j                  k7  S | j                  s|j                  r4| j                  |j                  k7  xs | j                  |j                  k7  S | j                  }|j                  s| j                  t
        z   |k(  r	|t
        z  }|j                  s| j                  t
        z   |k(  r	|t
        z  }|j                  s|j                  |k(  r	|t
        z  }||j                  k7  S )znCheck whether two types differ in shape.

    Mirrors the shape_differs() function in typeobject.c in CPython.)r>   é   )r©   Úversion_infoÚ__basicsize__Ú__itemsize__Ú__weakrefoffset__ÚSIZEOF_PYOBJECTÚ__dictoffset__)Út1Út2Út_sizes      r"   Ú_shape_differsr"    sú   € ô ×Ñ˜7Ò"Ø×Ñ 2×#3Ñ#3Ñ3ÒY°r·±È"Ï/É/Ñ7YÐYð
 �?Š?˜bŸošoØ×#Ñ# r×'7Ñ'7Ñ7Ò]¸2¿?¹?ÈbÏoÉoÑ;]Ð]Ø×!Ñ!ˆØ×#Ò#¨×(<Ñ(<¼Ñ(NÐRXÒ(XØ”oÑ%ˆFØ× Ò  R×%6Ñ%6¼Ñ%HÈFÒ%RØ”oÑ%ˆFØ×#Ò#¨×(<Ñ(<ÀÒ(FØ”oÑ%ˆFØ˜×)Ñ)Ñ)Ð)r$   c                ó^   — | t         u ry| j                  }|€J d| › d�«       ‚t        | |«      S )zqReturn whether a type is a disjoint base at runtime, mirroring CPython's logic in typeobject.c.

    See PEP 800.TzType z has no base)ÚobjectÚ__base__r"  )ÚtypÚbases     r"   Ú_is_disjoint_baser(    s>   € ð Œf�}ØØ�<‰<€DØÐÐ6˜u S E¨Ð6Ó6ÐÜ˜#˜tÓ$Ð$r$   c           	   #  óp  K  — t        |«      }|rg| j                  s[|j                  j                  d«      s@| j                  s4| j
                  r| j                  st        |d| |t        | «      ¬«      –— y | j                  r²|st        |d| |t        | «      ¬«      –— |j                  j                  d«      rt        |d| |t        | «      ¬«      –— y | j                  rt        |d| |t        | «      ¬«      –— y | j
                  r)| j                  rt        |d| |t        | «      ¬«      –— y y y y ­w)NÚ	__slots__zOis a disjoint base at runtime, but isn't marked with @disjoint_base in the stubr  zOis marked with @disjoint_base in the stub, but isn't a disjoint base at runtimezFis marked as @disjoint_base, but also has slots; add __slots__ insteadzMis marked as @disjoint_base, but also marked as @final; remove @disjoint_basezjis marked as @disjoint_base, but is an enum with members, which is implicitly final; remove @disjoint_base)	r(  Úis_disjoint_baseÚ__dict__rµ   r  Úis_enumÚenum_membersrG   rX   )r¸   rž   rQ   Úis_disjoint_runtimes       r"   Ú_verify_disjoint_baser0  &  s7  è ø€ ô ,¨GÓ4Ðñ 	Ø×%Ò%Ø× Ñ ×$Ñ$ [Ô1Ø—’Ø—’ $×"3Ò"3äØØ]ØØÜ˜4“jô
ó 	
ð 
×	Ò	Ù"ÜØØaØØÜ˜t›*ôò ð ×Ñ×Ñ Ô,ÜØØXØØÜ˜t›*ôó ð �]Š]ÜØØ_ØØÜ˜t›*ôó ð �\Š\˜d×/Ò/ÜØð(àØÜ˜t›*ôó ð 0ˆ\ð3 
ùs   ‚D4D6c             #  ó”  K  — | j                   s¸| j                  s«|s¨t        |«      }|t        ur!| j                  €t	        |d| |d|› ¬«      –— y |t        u rk| j                  �^t
        j                  j                  | j                  d«      s3t	        |d| || j                  j                  j                  › d¬«      –— y y y y y y y ­w)Nz"is inconsistent, metaclass differsr¢   rH   )zabc.ABCMetazbuiltins.typezmetaclass mismatch)	Úis_protocolr-  rM   Úmetaclass_typerG   r¦   r×   Úis_named_instancerð   )r¸   rž   rQ   Úis_runtime_typeddictÚruntime_metaclasss        r"   Ú_verify_metaclassr7  ^  sß   è ø€ ð ×Ò D§L¢LÑ9MÜ  ›MÐØ¤DÑ(¨T×-@Ñ-@Ð-HäØØ4ØØØØ 1Ð2ôó ð ¤Ñ%Ø×#Ñ#Ð/ô —J‘J×0Ñ0Ø×#Ñ#Ð%Eôô
 ØØ$ØØØ!×0Ñ0×5Ñ5×>Ñ>Ð?Ø"ôó ðð 0ð &ð :N LÐùs   ‚CC©Úis_alias_targetc          	   #  ób  ‡K  — | j                   r.|s,t        |t        «      st        |d| |t	        | «      ¬«      –— y t        |t        «      r8d}t        | j                  «      r|dz  }t        ||| |t	        | «      ¬«      –— y t        |t        «      st        |d| |t	        | «      ¬«      –— y t        | ||«      E d {  –—†  t        | ||«      E d {  –—†  | j                  d uxr t        |«      }t        | |||¬«      E d {  –—†  | j                  D �ch c]  }|j                  «       sŒ|’Œ }}|j                  «       }|j!                  d„ t#        |«      D «       «       | j$                  r|j'                  d«       |r|j'                  d	«       t)        |«      D �]<  Š‰}	‰j+                  d
«      r1‰j-                  d
«      s d| j                  j/                  d«      › ‰› �}	t1        ˆfd„| j2                  D «       t4        «      }
|
€J ‚	 	 t7        ||	«      }|t4        ur+t        |«      |urt7        |dd «      t        |«      u rt4        }‰dv r)|t4        ur!|t@        urt7        |dd «      t@        u rt4        }t        |
t        «      r7t        |tB        jD                  «      rtG        |	d¬«      rtI        |	| |¬«      s�Œ$tK        |
||‰gz   «      E d {  –—†  �Œ? y 7 �Œ#7 �Œ7 �Œâc c}w # t8        $ r t;        j<                  ||	t4        «      }Y Œøw xY w# t>        $ r Y �Œ…w xY w7 ŒP­w)Nú;is marked as "@type_check_only", but also exists at runtimer  rÔ   z&. Maybe mark it as "@type_check_only"?zis not a type)r5  c              3  óJ   K  — | ]  }t        |«      rŒ|t        vsŒ|–— Œ y ­wrÿ   )r§   ÚIGNORABLE_CLASS_DUNDERS)r  rÇ   s     r"   r  z"verify_typeinfo.<locals>.<genexpr>³  s%   è ø€ ò ØÔ(;¸AÕ(>À1ÔLcÒCcŒñùs   ‚#“#œ#r_   Ú__new__Ú__Ú_c              3  ón   •K  — | ],  }‰|j                   v sŒ|j                   ‰   j                  –— Œ. y ­wrÿ   )rÂ   rì   )r  Útrö   s     €r"   r  z"verify_typeinfo.<locals>.<genexpr>Å  s-   øè ø€ ÒY°qÈÐQR×QXÑQXÒHX˜qŸw™w u™~×2Õ2ÑYùs   ƒ5—5Ú__objclass__)Ú__setattr__Ú__delattr__T©Úexclude_special)r¸   Úexisting_stub_names)&Úis_type_check_onlyra   r   rG   rX   r§   rú   rM   r  r0  r  r   r7  rÂ   r   Úcopyré   Úvarsr2  ÚdiscardrÅ   Ú
startswithri   ÚlstripÚnextÚmror   rV   ÚAttributeErrorrY   Úgetattr_staticr¯   r$  r×   ÚWrapperDescriptorTyper   Úis_expected_dunderr®   )r¸   rž   rQ   r9  Úmsgr5  rú   rH  rô   Úmangled_entryÚstub_to_verifyÚruntime_attrrö   s               @r"   Úverify_typeinforY  „  s  øè ø€ ð ×Ò¡ô ˜'¤7Ô+ÜØØMØØÜ˜t›*ôò ð 	ä�'œ7Ô#Ø)ˆÜ˜tŸy™yÔ)ØÐ;Ñ;ˆCÜ�K  d¨G¼tÀD»zÔJÒJØÜ�gœtÔ$ä�K °$¸Ì4ÐPTË:ÔVÒVØä˜T 7¨KÓ8×8Ð8Ü$ T¨7°KÓ@×@Ð@Ø×.Ñ.°dÐ:ÒT¼|ÈGÓ?TÐÜ Øˆg�{Ð9Mô÷ ð ð -1¯J©JÖN D¸$×:KÑ:KÕ:Mš4ÐNÐÐNØ"×'Ñ'Ó)€Hà‡O�Oñ Ü˜“=ôô ð ×ÒØ×Ñ˜Ô$ÙØ×Ñ˜Ô#ä˜Ó!ó 1SˆØˆØ×Ñ˜DÔ!¨%¯.©.¸Ô*>Ø §	¡	× 0Ñ 0°Ó 5Ð6°u°gÐ>ˆMÜÓY¸D¿H¹HÔYÔ[bÓcˆØÐ)Ð)Ð)ð	ðWÜ& w°Ó>�ð ¤Ñ'Ü�W“ WÑ,Ü˜ n°dÓ;¼tÀG»}ÑLä"ˆLð Ð3Ñ3Ø¤GÑ+ØœvÑ%Ü˜ n°dÓ;¼vÑEä"ˆLô �~¤wÔ/Ü˜<¬×)DÑ)DÔEÜ˜-¸Õ>Ü&Ø DÐ>Q÷ô ˜n¨l¸KÈ5È'Ñ<QÓR×RÒRñc1Sð; 9ùØ@ùðûò Oøô4 "ò WÜ&×5Ñ5°g¸}ÌgÓV’ðWûäò 	ò ð	úðL Súsž   ƒB?L/ÃK%ÃL/ÃK(Ã1L/Ä	K+Ä
L/ÄK.Ä2K.Ä6CL/ÈK3È!B%L/ËL/ËL-Ë	L/Ë(L/Ë+L/Ë.L/Ë3$LÌLÌLÌLÌ	L*Ì&L/Ì)L*Ì*L/c                ó¦   — t        j                  | d   «      }| dd  D ]  }	 t        j                  ||«      }Œ |S # t        $ r t
        cY c S w xY w)Nr   rp   )rš   r›   rY   rR  rQ  r   )rQ   Ústatic_runtimerö   s      r"   Ú_static_lookup_runtimer\  õ  sb   € Ü×,Ñ,¨[¸©^Ó<€NØ˜Q˜R�ò ˆð	Ü$×3Ñ3°NÀEÓJ‰Nðð Ðøô ò 	ô ŒNð		ús   ¢<¼AÁAc              #  óê  K  — | j                   dv ry t        j                  |«      r@t        t	        |dd «      t
        «      }|r| j                  sd–— |s| j                  rd–— y |t        u ry t        |t        «      r| j                  sd–— t        |t        «      s| j                  rd–— t        |t        «      r| j                  sd–— t        |t        «      s| j                  rd–— y y y ­w)N)r>  Ú__init_subclass__Ú__class_getitem__Ú__self__z(runtime is a classmethod but stub is notz(stub is a classmethod but runtime is notz)runtime is a staticmethod but stub is notz)stub is a staticmethod but runtime is not)rú   rY   Ú	isbuiltinra   rV   rM   Úis_classr   ÚclassmethodÚstaticmethodÚ	is_static)r¸   rž   r[  rQ   Úprobably_class_methods        r"   Ú_verify_static_class_methodsrg    sË   è ø€ ð ‡y�yÐIÑIàÜ×Ñ˜Ô!ô !+¬7°7¸JÈÓ+MÌtÓ TÐÙ ¨¯ªØ<Ò<Ù$¨¯ªØ<Ò<ØàœÑ Øä�.¤+Ô.°t·}²}Ø8Ò8Ü�n¤kÔ2°t·}²}Ø8Ò8Ü�.¤,Ô/¸¿ºØ9Ò9Ü�n¤lÔ3¸¿ºØ9Ó9ð 9GÐ3ùs   ‚C1C3c              #  ó&  K  — t        |d¬«      ry| j                  j                  |j                  k(  s2| j                  j                  j                  d«      |j                  k(  ryddh}|j                  |v rydd„}|j                  t
        j                  j                  k(  r( || j                  j                  |j                  «      ry| j                  j                  dk(  ryd	| j                  j                  › d
|j                  › d�–— y­w)z$Checks whether argument names match.TrF  Nr?  r$  Úargsc                óÎ   — | j                  d«      } |j                  d«      }| j                  |«      xs1 |j                  | «      xs t        | «      dk(  xs t        |«      dk(  S )Nr@  rp   )r·   rM  r@   )ÚaÚbs     r"   Únames_approx_matchz,_verify_arg_name.<locals>.names_approx_match1  sQ   € Ø�G‰G�C‹LˆØ�G‰G�C‹LˆØ�|‰|˜A‹ÒO !§,¡,¨q£/ÒO´S¸³V¸q±[ÒOÄCÈÃFÈaÁKÐOr$   Ú_selfústub parameter "z"" differs from runtime parameter "ú")rk  r'   rl  r'   r&   r�   )r   Úvariablerú   ÚremoveprefixÚkindrY   Ú	ParameterÚPOSITIONAL_ONLY)Ústub_argÚruntime_argÚfunction_nameÚnonspecific_namesrm  s        r"   Ú_verify_arg_namerz    s  è ø€ ô
 �°Õ5Øð 	×Ñ×Ñ +×"2Ñ"2Ò2Ø×Ñ×!Ñ!×.Ñ.¨tÓ4¸×8HÑ8HÒHàà! 6Ð*ÐØ×ÑÐ,Ñ,ØóPð ×Ñœ7×,Ñ,×<Ñ<Ò<ÑASØ×Ñ×Ñ × 0Ñ 0ôBð 	à×Ñ×Ñ Ò(Øà
˜8×,Ñ,×1Ñ1Ð2ð 3+Ø+6×+;Ñ+;Ð*<¸Að	?óùs   ‚DDc              #  óH  K  — |j                   t        j                  j                  u�r¯| j                  j                  «       rd|j                  › d�–— y| j                  j                  }t        |j                   |¬«      }| j                  j                  xs | j                  }t        |t        j                  j                  «      r|j                  }|�Y|�Wt        |j                   «      t         ur<|j                   dur.t#        |«      s#t%        ||«      sd|j                  › d|› d|› �–— | j&                  �™t)        | j&                  «      }|t*        ur{|durv|j                   t,        urcd}t        |«      t        |j                   «      urd	}n	 t/        ||j                   k(  «      }|s"d|j                  › d
|j                   ›d|›�–— yyyyyy| j                  j3                  «       rd| j                  j                  › d�–— yy# t0        $ r d	}Y Œnw xY w­w)z6Checks whether argument default values are compatible.úruntime parameter "z1" has a default value but stub parameter does not©Útype_contextN.z" has a default value of type z1, which is incompatible with stub parameter type TFz" has a default value of z1, which is different from stub parameter default ro  z4" has a default value but runtime parameter does not)ÚdefaultrY   rt  Úemptyrs  Úis_requiredrú   rq  rM   Úget_mypy_type_of_runtime_valueÚtype_annotationra   r¦   r×   ÚTypeVarTypeÚupper_boundr$  Úis_sentinelÚis_subtype_helperÚinitializerr   r   r3   r�   r¯   Úis_optional)rv  rw  r~  Úruntime_typeÚ	stub_typeÚstub_defaultÚdefaults_matchs          r"   Ú_verify_arg_default_valuerŽ  D  sH  è ø€ ð ×Ñ¤'×"3Ñ"3×"9Ñ"9Ò9Ø�=‰=×$Ñ$Ô&à% k×&6Ñ&6Ð%7ð 8Bð Bóð
 $×,Ñ,×1Ñ1ˆLÜ9Ø×#Ñ#°,ôˆLð !×)Ñ)×.Ñ.ÒJ°(×2JÑ2JˆIÜ˜)¤T§Z¡Z×%;Ñ%;Ô<Ø%×1Ñ1�	àÐ(ØÐ)ä˜×,Ñ,Ó-´VÑ;à×'Ñ'¨sÑ2ä# LÔ1Ü)¨,¸	ÔBð *¨+×*:Ñ*:Ð);ð <3Ø3?°.ð AFØFOÀ[ðRòð
 ×#Ñ#Ð/Ü2°8×3GÑ3GÓH�à ¬Ñ/Ø$¨CÑ/Ø#×+Ñ+´?ÑBà%)�Nô ˜LÓ)´°k×6IÑ6IÓ1JÑJØ).™ð3Ü-1°,À+×BUÑBUÑ2UÓ-V˜Nñ *à1°+×2BÑ2BÐ1Cð D6Ø6A×6IÑ6IÐ5Lð MNØNZÐM]ð_óð *ð Cð 0ð 0ð 0ð6 �=‰=×$Ñ$Ô&à" 8×#4Ñ#4×#9Ñ#9Ð":ð ;1ð 2óð 'øô  )ò 3ð .3šNð	3üs+   ‚FH"ÆH Æ0A!H"ÈHÈH"ÈHÈH"c                óT   — |r%| dv r!|d   j                   j                  dk(  r|dd  S |S )N)r^  r_  r   Úclsrp   )rq  rú   )rú   ri  s     r"   Úmaybe_strip_clsr‘  �  s7   € Ù�ÐBÑBð �‰7×Ñ× Ñ  EÒ)Ø˜˜�8ˆOØ€Kr$   c                  óR   — e Zd Zdd„Zdd„Zed	d„«       Zed
d„«       Zedd„«       Zy)Ú	Signaturec                ó<   — g | _         i | _        d | _        d | _        y rÿ   )ÚposÚkwonlyÚvarposÚvarkwr    s    r"   r_   zSignature.__init__—  s   € ØˆŒØ$&ˆŒØ $ˆŒØ#ˆ�
r$   c           
     óì  ‡‡‡— dd„Šdd„Šdd„Šdˆˆˆfd„}t        | j                  j                  «       ˆˆfd„¬«      }d}|dj                  | j                  D �cg c]
  } ||«      ‘Œ c}| j
                  rd	 ‰| j
                  «      z   gn| j                  rd	gng z   |D �cg c]
  } ||«      ‘Œ c}z   | j                  rd
 ‰| j                  «      z   gng z   «      z  }|dz  }|S c c}w c c}w )Nc                óº   — t        | t        j                  «      r| j                  S t        | t        j
                  «      r| j                  j                  S t        ‚rÿ   )ra   rY   rt  rú   r   ÚArgumentrq  ÚAssertionError©Úargs    r"   Úget_namez#Signature.__str__.<locals>.get_namež  s?   € Ü˜#œw×0Ñ0Ô1Ø—x‘x�Ü˜#œuŸ~™~Ô.Ø—|‘|×(Ñ(Ð(Ü Ð r$   c                óÒ   — t        | t        j                  «      ry t        | t        j                  «      r-t        | j                  j                  xs | j                  «      S t        ‚rÿ   )
ra   rY   rt  r   r›  r'   rq  rM   rƒ  rœ  r�  s    r"   Úget_typez#Signature.__str__.<locals>.get_type¥  sI   € Ü˜#œw×0Ñ0Ô1ØÜ˜#œuŸ~™~Ô.Ü˜3Ÿ<™<×,Ñ,ÒC°×0CÑ0CÓDÐDÜ Ð r$   c                óö   — t        | t        j                  «      r&| j                  t        j                  j                  uS t        | t
        j                  «      r| j                  j                  «       S t        ‚rÿ   )
ra   rY   rt  r  r€  r   r›  rs  r‰  rœ  r�  s    r"   Úhas_defaultz&Signature.__str__.<locals>.has_default¬  sT   € Ü˜#œw×0Ñ0Ô1Ø—{‘{¬'×*;Ñ*;×*AÑ*AÐAÐAÜ˜#œuŸ~™~Ô.Ø—x‘x×+Ñ+Ó-Ð-Ü Ð r$   c                óV   •—  ‰| «      } ‰| «      |rd|› �ndz    ‰| «      rdz   S dz   S )Nr¤   rn   z = ...r   )rž  Úarg_typerŸ  r¡  r£  s     €€€r"   Úget_descz#Signature.__str__.<locals>.get_desc³  sH   ø€ Ù “}ˆHá˜“Ù&.�R˜�z‘?°Bñ8á*¨3Ô/�8ñ9ðð 68ñ9ðr$   c                ó$   •—  ‰| «       ‰| «      fS rÿ   r   )rk  rŸ  r£  s    €€r"   ú<lambda>z#Signature.__str__.<locals>.<lambda>»  s   ø€ ¹kÈ!»nÉhÐWXËkÐ=Z€ r$   ©Úkeyzdef (z, r’   z**ú))rž  r
   r&   r'   )rž  r
   r&   r‹   )rž  r
   r&   r�   )rÅ   r–  ÚvaluesrR   r•  r—  r˜  )r!   r¦  Úkw_onlyÚretrž  rŸ  r¡  r£  s        @@@r"   Ú__str__zSignature.__str__�  sã   ú€ ó	!ó	!ó	!÷	ô ˜Ÿ™×+Ñ+Ó-Ô3ZÔ[ˆØˆØˆt�y‰yØ&*§h¡hÖ/˜s‰X�c�]Ò/Ø04·²�‘h˜tŸ{™{Ó+Ñ+Ñ,È4Ï;Ê;À3Á%Ð\^ñaà(/Ö0 ‰x˜�}Ò0ñ1ð 15·
²
�‘x §
¡
Ó+Ñ+Ñ,ÀñDó
ñ 	
ˆð 	ˆs‰
ˆØˆ
ùò 0ùâ0s   ÁC,
Â&C1c           	     ó  — t        «       }t        | j                  | j                  «      }|D �]×  }|j                  j                  «       r|j                  j                  |«       Œ:|j                  j                  «       r$||j                  |j                  j                  <   Œx|j                  t        j                  k(  r||_        Œ�|j                  t        j                  k(  �r|j                  j                  �út!        t"        j$                  j'                  |j                  j                  «      x}t"        j$                  j(                  «      r£|j*                  j+                  «       D ]„  \  }}||j,                  v}t        j.                  t        j0                  ||«      ||rt        j2                  «       nd |rt        j4                  nt        j6                  d¬«      |j                  |<   Œ† �ŒË||_        �ŒÔt:        ‚ |S )NF©rƒ  rˆ  rs  Úpos_only)r“  r‘  rú   Ú	argumentsrs  Úis_positionalr•  ÚappendÚis_namedr–  rq  r   ÚARG_STARr—  Ú	ARG_STAR2rM   ra   r¦   r×   Úget_proper_typeÚTypedDictTyperÃ   Úrequired_keysr›  ÚVarÚEllipsisExprÚARG_NAMED_OPTÚ	ARG_NAMEDr˜  rœ  )r¸   Ústub_sigÚ	stub_argsrv  Útyped_dict_argÚkey_nameÚkey_typeÚoptionals           r"   Úfrom_funcitemzSignature.from_funcitemÆ  s  € ä.7«kˆÜ# D§I¡I¨t¯~©~Ó>ˆ	Ø!ó 	%ˆHØ�}‰}×*Ñ*Ô,Ø—‘×#Ñ# HÕ-Ø—‘×'Ñ'Ô)Ø:B�—‘ × 1Ñ 1× 6Ñ 6Ò7Ø—‘¤%§.¡.Ò0Ø"*�•Ø—‘¤%§/¡/Ó1Ø×$Ñ$×)Ñ)Ð5¼*Ü'+§z¡z×'AÑ'AÀ(×BSÑBS×BXÑBXÓ'YÐY�^Ü—J‘J×,Ñ,ô;ð /=×.BÑ.B×.HÑ.HÓ.Jò Ñ*˜ (Ø#+°>×3OÑ3OÐ#O˜Ü49·N±NÜ!ŸI™I h°Ó9Ø,4Ù@H¬×(:Ñ(:Ô(<ÈdÙ8@¤×!4Ò!4ÄeÇoÁoØ%*ô5˜Ÿ™¨Ò1òð &.�H–Nä$Ð$ð1	%ð2 ˆr$   c                óZ  — t        «       }| j                  j                  «       D �]  }|j                  t        j
                  j                  t        j
                  j                  fv r|j                  j                  |«       Œ`|j                  t        j
                  j                  k(  r||j                  |j                  <   Œ¡|j                  t        j
                  j                  k(  r||_        ŒÐ|j                  t        j
                  j                  k(  r||_        Œÿt"        ‚ |S rÿ   )r“  Ú
parametersr¬  rs  rY   rt  ru  ÚPOSITIONAL_OR_KEYWORDr•  rµ  ÚKEYWORD_ONLYr–  rú   ÚVAR_POSITIONALr—  ÚVAR_KEYWORDr˜  rœ  )Ú	signaturer\   rw  s      r"   Úfrom_inspect_signaturez Signature.from_inspect_signatureå  sî   € ä4=³KˆØ$×/Ñ/×6Ñ6Ó8ó 	%ˆKØ×ÑÜ×!Ñ!×1Ñ1Ü×!Ñ!×7Ñ7ð$ñ ð —‘×&Ñ& {Õ3Ø×!Ñ!¤W×%6Ñ%6×%CÑ%CÒCØ7B�×"Ñ" ;×#3Ñ#3Ò4Ø×!Ñ!¤W×%6Ñ%6×%EÑ%EÒEØ%0�Õ"Ø×!Ñ!¤W×%6Ñ%6×%BÑ%BÒBØ$/�Õ!ä$Ð$ð	%ð Ðr$   c                ó   ‡ ‡— t        ‰ j                  d¬«      }t        t        «      }t	        t
        ‰ j                  «      D �]%  }|€J d‰ j                  ›�«       ‚t        ‰ j                  |j                  «      }t        |«      D ]Þ  \  }}|j                  j                  j                  d«      sc|j                  sW|sU|j                  j                  j                  d«      dk(  s-|dk(  rQ|j                  j                  j                  d«      d	k(  r)||j                  j                     j                  d«       Œ·||j                  j                     j                  d
«       Œà �Œ( i Št	        t
        ‰ j                  «      D ]’  }|€J d‰ j                  ›�«       ‚t        ‰ j                  |j                  «      }t        |«      D ]L  \  }}|j                  j                  }||   dhk(  rd|› �}‰j!                  |g «      j#                  ||f«       ŒN Œ” dˆfd„}dˆfd„}	dˆˆ fd„}
t%        «       }t'        ‰|¬«      D �]3  }‰|   d   d   j                  j                  }t)        j*                  t)        j,                  | |	|«      «      dd |
|«      t/        d„ ‰|   D «       «      ¬«      }|j0                  j3                  «       r|j4                  j#                  |«       Œ¦|j0                  j7                  «       r$||j8                  |j                  j                  <   Œä|j0                  t(        j:                  k(  r	||_        �Œ
|j0                  t(        j>                  k(  r	||_         �Œ0tB        ‚ |S )a„  Returns a Signature from an OverloadedFuncDef.

        If life were simple, to verify_overloadedfuncdef, we'd just verify_funcitem for each of its
        items. Unfortunately, life isn't simple and overloads are pretty deceitful. So instead, we
        try and combine the overload's items into a single signature that is compatible with any
        lies it might try to tell.

        TrF  Nz(Failed to resolve decorated overload of r?  r@  r!   r   r�  Fc                ó.   •— t        d„ ‰|    D «       «      S )Nc              3  ó&   K  — | ]	  \  }}|–— Œ y ­wrÿ   r   )r  r@  Úindexs      r"   r  zISignature.from_overloadedfuncdef.<locals>.get_position.<locals>.<genexpr>'  s   è ø€ Ò@¡  E”uÑ@ùs   ‚)Úmax)Úarg_nameÚall_argss    €r"   Úget_positionz6Signature.from_overloadedfuncdef.<locals>.get_position%  s   ø€ äÑ@¨X°hÑ-?Ô@Ó@Ð@r$   c                ój  •— t         j                  j                  j                  d«      5  ‰|    D ��cg c])  \  }}|j                  j                  xs |j
                  ‘Œ+ }}}t         j                  j                  |D �cg c]  }|sŒ|‘Œ	 c}«      cd d d «       S c c}}w c c}w # 1 sw Y   y xY w)NT)r¦   ÚstateÚstrict_optional_setrq  rM   rƒ  ÚtypeopsÚmake_simplified_union)rÔ  rž  r@  Ú	all_typesrB  rÕ  s        €r"   r¡  z2Signature.from_overloadedfuncdef.<locals>.get_type)  s£   ø€ Ü—‘×!Ñ!×5Ñ5°dÓ;ñ WàKSÐT\ÑK]÷ÙAGÀÀa�C—L‘L×%Ñ%Ò<¨×)<Ñ)<Ñ<ð�	ñ ô —|‘|×9Ñ9ÀiÖ:UÀÒSTº1Ò:UÓV÷	Wñ Wùóùò ;V÷	Wð Wús.   «	B)´.BÁ" B)ÂB$
Â
B$
ÂB)ÂB)Â)B2c                óJ  •— ‰|    D ��ch c]  \  }}|j                   ’Œ }}}t        j                  |v rt        j                  S t        j                  |v rt        j                  S t	        ‰|    «      t	        ‰j
                  «      k  xs& t        j                  |v xs t        j                  |v }t        j                  |v xs t        j                  |v }|r"|rt        j                  S t        j                  S |rt        j                  S t        j                  S c c}}w rÿ   )
rs  r   r·  r¸  r@   rÃ   ÚARG_OPTr¾  ÚARG_POSr¿  )rÔ  rž  r@  ÚkindsÚis_optÚis_posrÕ  r¸   s         €€r"   Úget_kindz2Signature.from_overloadedfuncdef.<locals>.get_kind0  sç   ø€ Ø,4°XÑ,>×?¡& # q�S—X“XÐ?ˆEÑ?Ü�~‰~ Ñ&Ü—~‘~Ð%Ü�‰ %Ñ'Ü—‘Ð&ô
 �H˜XÑ&Ó'¬#¨d¯j©j«/Ñ9ò 0Ü—=‘= EÐ)ò0ä×&Ñ&¨%Ð/ð ô
 —]‘] eÐ+ÒE¬u¯}©}ÀÐ/EˆFÙÙ(.”u—}‘}ÐG´E×4GÑ4GÐGÙ$*”5—=‘=Ð?´·±Ð?ùó! @s   ŠDr©  c              3  ó:   K  — | ]  \  }}|j                   –— Œ y ­wrÿ   )r²  )r  rž  r@  s      r"   r  z3Signature.from_overloadedfuncdef.<locals>.<genexpr>L  s   è ø€ ÒK©f¨c°1˜SŸ\�\ÑKùs   ‚r±  )rÔ  r'   r&   Úint)rÔ  r'   r&   úmypy.types.ProperType)rÔ  r'   r&   znodes.ArgKind)"r   rú   r   ræ   ÚmapÚ _resolve_funcitem_from_decoratorrÃ   rð   r‘  r³  Ú	enumeraterq  rM  r²  r·   Úaddr8   rµ  r“  rÅ   r   r›  r¼  r  rs  r´  r•  r¶  r–  r·  r—  r¸  r˜  rœ  )r¸   Úassume_positional_onlyÚis_arg_pos_onlyÚfuncri  rÒ  rž  rú   rÖ  r¡  rã  ÚsigrÔ  Úexample_arg_namerÕ  s   `             @r"   Úfrom_overloadedfuncdefz Signature.from_overloadedfuncdefø  sÿ  ù€ ô "+¨4¯9©9ÀdÔ!KÐä7BÄ3Ó7GˆÜÔ8¸$¿*¹*ÓEó 	BˆDØÐ#ÐaÐ'OÐPT×P]ÑP]ÐO`Ð%aÓaÐ#Ü" 4§9¡9¨d¯n©nÓ=ˆDÜ'¨›oò 
B‘
��sà—L‘L×%Ñ%×0Ñ0°Ô6Ø—|’|Ù-Ø—|‘|×(Ñ(×.Ñ.¨sÓ3°vÒ=Ø š
 s§|¡|×'8Ñ'8×'>Ñ'>¸sÓ'CÀuÒ'Là# C§L¡L×$5Ñ$5Ñ6×:Ñ:¸4Õ@à# C§L¡L×$5Ñ$5Ñ6×:Ñ:¸5ÕAò
Bð	Bð ACˆÜÔ8¸$¿*¹*ÓEò 	CˆDØÐ#ÐaÐ'OÐPT×P]ÑP]ÐO`Ð%aÓaÐ#Ü" 4§9¡9¨d¯n©nÓ=ˆDÜ'¨›oò 
C‘
��sð —|‘|×(Ñ(�Ø" 4Ñ(¨T¨FÒ2Ø ˜w˜<�Dà×#Ñ# D¨"Ó-×4Ñ4°c¸5°\ÕBñ
Cð	Cõ	Aõ	Wö	@ô& *3«ˆÜ˜x¨\Ô:ó 	%ˆHà'¨Ñ1°!Ñ4°QÑ7×@Ñ@×EÑEÐÜ—.‘.Ü—	‘	Ð*©H°XÓ,>Ó?Ø $Ø Ù˜hÓ'ÜÑK¸ÀÑ8JÔKÓKôˆCð �x‰x×%Ñ%Ô'Ø—‘—‘˜sÕ#Ø—‘×"Ñ"Ô$Ø03�—
‘
˜3Ÿ<™<×,Ñ,Ò-Ø—‘œUŸ^™^Ò+Ø �–
Ø—‘œUŸ_™_Ò,Ø�–	ä$Ð$ð'	%ð( ˆ
r$   N©r&   rŒ   r%   )r¸   únodes.FuncItemr&   úSignature[nodes.Argument])rÍ  úinspect.Signaturer&   úSignature[inspect.Parameter])r¸   únodes.OverloadedFuncDefr&   ró  )	r)   r*   r+   r_   r¯  rd  rÆ  rÎ  rð  r   r$   r"   r“  r“  –  sK   „ ó$ó'ðR òó ðð< òó ðð$ ò_ó ñ_r$   r“  c              #  óš  K  — t        | j                  |j                  «      D �]ø  \  }}t        |||«      E d {  –—†  t        ||«      E d {  –—†  |j                  t
        j                  j                  k(  rª|j                  sž|j                  j                  j                  d«      sy|j                  j                  j                  d«      dk7  rQ|j                  j                  j                  d«      dk7  r)d|j                  j                  › d|j                  › d�–— |j                  t
        j                  j                  k7  s�Œ*|j                  s'|j                  j                  j                  d«      s�Œ]|j                  j                  d«      r�Œz|j                  j                  j                  d«      dk7  s�Œ¤|j                  j                  j                  d«      dk7  s�ŒÎt        |d¬	«      r�ŒÝd|j                  j                  › d
�–— �Œû t        | j                  «      t        |j                  «      kD  rÝ|j                  �€k| j                  t        |j                  «      d  D ]x  }|j                  j                  |j                   vr8d|j                  j                  › d�}|j"                  �|dz  }n|r|dz  }|–— Œ]d|j                  j                  › d�–— Œz | j                  �Âd| j                  j                  j                  › d�–— n›t        | j                  «      t        |j                  «      k  rp|j                  t        | j                  «      d  D ]K  }|j                  | j                   vrt%        |«      rŒ'd|j                  › d�–— Œ:d|j                  › d�–— ŒM t        | j                  «      t        |j                  «      k  s|j                  €r| j                  €(|j                  �d|j                  j                  › d�–— | j                  �2|j                  €&d| j                  j                  j                  › d�–— t'        t)        | j                   «      t)        |j                   «      z  «      D ]I  }| j                   |   |j                   |   }}t        |||«      E d {  –—†  t        ||«      E d {  –—†  ŒK |j"                  �7t)        |j                   «      j+                  t)        | j                   «      «      s¶t'        t)        | j                   «      t)        |j                   «      z
  «      D ]  }||j                  D �ch c]  }|j                  ’Œ c}v rF||j                  t        | j                  «      d  D �ch c]  }|j                  ’Œ c}vsŒfd|› d�–— Œod|› d�}|r|dz  }|–— Œ� t'        t)        |j                   «      t)        | j                   «      z
  «      D ]¯  }|| j                  D �ch c]  }|j                  j                  ’Œ c}v r\|j                  €G|| j                  t        |j                  «      d  D �ch c]  }|j                  j                  ’Œ c}v rŒ†d|› d�–— Œ�t%        |j                   |   «      rŒ¨d|› d�–— Œ± | j"                  €�|j"                  �ƒ| j                  D �ch c]  }|j                  j                  ’Œ }}t)        |j                   «      j+                  t)        | j                   «      |z  «      sd|j"                  j                  › d�–— | j"                  �4|j"                  €'d| j"                  j                  j                  › d�–— y y y 7 �Œl7 �Œ[7 �ŒÜ7 �ŒËc c}w c c}w c c}w c c}w c c}w ­w)Nr?  r@  r!   r�  ro  z," should be positional-only (add "/", e.g. "z, /")TrF  z." should be positional or keyword (remove "/")z!runtime does not have parameter "rp  z7. Maybe you forgot to make it keyword-only in the stub?z>. You may need to write stubs for __new__ instead of __init__.z" is not keyword-onlyz'runtime does not have *args parameter "zstub does not have parameter "r|  z$stub does not have *args parameter "z'stub does not have **kwargs parameter "z*runtime does not have **kwargs parameter ")Úzipr•  rz  rŽ  rs  rY   rt  ru  r²  rq  rú   rM  r·   r   r@   r—  r–  r˜  Ú_is_private_parameterrÅ   ræ   Úissubset)	r¸   rž   rx  Úwarn_runtime_is_object_initrv  rw  rU  rž  Ústub_pos_namess	            r"   Ú_verify_signaturerý  [  s¥  è ø€ ô "% T§X¡X¨w¯{©{Ó!;ó Ñˆ�+Ü# H¨k¸=ÓI×IÐIÜ,¨X°{ÓC×CÐCà×Ñ¤× 1Ñ 1× AÑ AÒAØ×%Ò%Ø×%Ñ%×*Ñ*×5Ñ5°dÔ;Ø×!Ñ!×&Ñ&×,Ñ,¨SÓ1°VÒ;Ø×!Ñ!×&Ñ&×,Ñ,¨SÓ1°UÒ:ð # 8×#4Ñ#4×#9Ñ#9Ð":ð ;#Ø#.×#3Ñ#3Ð"4°Eð;òð
 ×Ñ¤× 1Ñ 1× AÑ AÔAØ×"Ò" h×&7Ñ&7×&<Ñ&<×&GÑ&GÈÖ&MØ×$Ñ$×/Ñ/°Ö5Ø×!Ñ!×&Ñ&×,Ñ,¨SÓ1°VÔ;Ø×!Ñ!×&Ñ&×,Ñ,¨SÓ1°UÔ:Ü˜m¸T×Bð # 8×#4Ñ#4×#9Ñ#9Ð":ð ;ð ôð-ô8 ˆ4�8‰8ƒ}”s˜7Ÿ;™;Ó'Ò'ð
 �>‰>Ñ!Ø ŸH™H¤S¨¯©Ó%5Ð%7Ð8ò [�ð ×$Ñ$×)Ñ)°·±Ñ?Ø=¸h×>OÑ>O×>TÑ>TÐ=UÐUVÐW�CØ—}‘}Ð0ØÐXÑX™Ù4ØÐ_Ñ_˜Ø“Ià,¨X×->Ñ->×-CÑ-CÐ,DÐDYÐZÓZð[ð �{‰{Ð&Ø?ÀÇÁ×@TÑ@T×@YÑ@YÐ?ZÐZ[Ð\Ó\Ü	ˆT�X‰X‹œ˜WŸ[™[Ó)Ò	)Ø"Ÿ;™;¤s¨4¯8©8£} Ð7ò 	TˆKØ×Ñ t§{¡{Ñ2Ü,¨[Õ9Ø:¸;×;KÑ;KÐ:LÈAÐNÓNà+¨K×,<Ñ,<Ð+=Ð=RÐSÓSð	Tô ˆ4�8‰8ƒ}œ˜GŸK™KÓ(Ò(¨G¯N©NÐ,BØ�;‰;Ð 7§>¡>Ð#=Ø8¸¿¹×9LÑ9LÐ8MÈQÐOÒOØ�;‰;Ð" w§~¡~Ð'=Ø;¸D¿K¹K×<PÑ<P×<UÑ<UÐ;VÐVWÐXÒXô ”c˜$Ÿ+™+Ó&¬¨W¯^©^Ó)<Ñ<Ó=ò DˆØ $§¡¨CÑ 0°'·.±.ÀÑ2E�+ˆÜ# H¨k¸=ÓI×IÐIÜ,¨X°{ÓC×CÑCðDð ‡}�}Ð¤C¨¯©Ó$7×$@Ñ$@ÄÀTÇ[Á[ÓAQÔ$Rô œ#˜dŸk™kÓ*¬S°·±Ó-@Ñ@ÓAò 		ˆCØ¸7¿;¹;ÖG¨K�{×'Ó'ÒGÑGàÀ7Ç;Á;ÌsÐSW×S[ÑS[Ë}ÈÐC_Ö`°K˜{×/Ó/Ò`Ò`Ø/°¨uÐ4IÐJÓJà9¸#¸¸aÐ@�Ù.ØÐ[Ñ[�CØ“	ð		ô ”c˜'Ÿ.™.Ó)¬C°·±Ó,<Ñ<Ó=ò 
>ˆØ¸$¿(¹(ÖC¨h�8×$Ñ$×)Ó)ÒCÑCð —‘Ð&ØÀ4Ç8Á8ÌCÐPW×P[ÑP[ÓL\ÐL^ÐC_Ö`°x˜H×-Ñ-×2Ó2Ò`Ò`à(¨¨Ð-BÐCÓCä(¨¯©¸Ñ)<Õ=Ø6°s°e¸1Ð=Ó=ð
>ð ‡z�zÐ˜gŸm™mÐ7ð BFÇÁÖJ°X˜(×+Ñ+×0Ó0ÐJˆÐJä�7—>‘>Ó"×+Ñ+¬C°·±Ó,<¸~Ñ,MÔNØ;¸G¿M¹M×<NÑ<NÐ;OÈqÐQÒQØ‡z�zÐ '§-¡-Ð"7Ø:¸4¿:¹:×;NÑ;N×;SÑ;SÐ:TÐTUÐVÓVð #8ÐðW 	JùØCùð@ 	JùØCûò Hùâ`ùò Dùò aùò KùsÉ   ‚8_º^&»_Á^)ÁC<_Å1_Æ _Æ(_Ç(_Ç1_È F_ÎD5_Ó^,Ó_Ó$^/Ó%B_Õ4^2Ö)_Ö0^7×_×A"_Ø*^<Ù5_Ù<_Ú_Ú!_Û 0_Û0_ÜB_Þ)_Þ,_Þ/_Þ2_c                óÄ   — | j                   j                  d«      xrD | j                   j                  d«       xr& | j                  t        j                  j
                  uS )Nr@  r?  )rú   rM  r  rY   rt  r€  r�  s    r"   rù  rù  Ò  sP   € à�‰×Ñ˜CÓ ò 	7Ø—‘×#Ñ# DÓ)Ð)ò	7à�K‰Kœw×0Ñ0×6Ñ6Ð6ðr$   c              #  óZ  K  — t        |t        «      rt        |d| |«      –— y t        |«      st        |d| |«      –— t	        |«      sy t        |«      }t        | t        j                  «      rCt        | |«      D ]  }t        ||| |«      –— Œ t        | ||«      D ]  }t        ||| |«      –— Œ t        | |||«      D ]  }t        |d|z   | |«      –— Œ t        |«      }t        j                  |«      }|rCt        j                  | «      }t        j!                  |«      }	t#        ||¬«      }
t%        |«      }nd\  }
}|r| j&                  st        |d| |||
¬«      –— |sy t)        	| j*                  |t,        j.                  u ¬«      D ]  }t        |d|z   | ||
¬	«      –— Œ y ­w)
NrÔ   úis not a functionúis inconsistent, rO   )NNz:is an "async def" function at runtime, but not in the stubrH   ©rx  rû  r£   )ra   r   rG   Úis_probably_a_functionÚcallabler\  r   ÚFuncDefÚ_verify_abstract_statusÚ_verify_final_methodrg  rW   rY   rZ   r“  rÆ  rÎ  r[   r'   Úis_coroutinerý  rú   r$  r_   )r¸   rž   rQ   r[  Ú
error_textr:   rÍ  Úruntime_is_coroutinerÀ  r\   Úruntime_sig_descrI   s               r"   Úverify_funcitemr  Ú  sÕ  è ø€ ô �'œ7Ô#Ü�KÐ!<¸dÀGÓLÒLØä! 'Ô*Ü�KÐ!4°d¸GÓDÒDÜ˜Ô Øô ,¨KÓ8€Nä�$œŸ™Ô&Ü1°$¸Ó@ò 	@ˆJÜ˜ Z°°wÓ?Ó?ð	@ä.¨t°W¸nÓMò 	@ˆJÜ˜ Z°°wÓ?Ó?ð	@ô 0°°g¸~È{Ó[ò OˆÜ�KÐ!4°wÑ!>ÀÀgÓNÓNðOô ' wÓ/€IÜ"×6Ñ6°wÓ?ÐáÜ×*Ñ*¨4Ó0ˆÜ×6Ñ6°yÓAˆÜ4°YÐI]Ô^ÐÜ˜“M‰	à&0Ñ#Ð˜)ñ
  D×$5Ò$5ÜØØHØØØØ)ô
ò 	
ñ Øä$ØØØ—i‘iØ$+¬v¯©Ð$>ô	ò 
ˆô ØØ 'Ñ)ØØØ)ô
ó 	
ñ
ùs   ‚F)F+c              #  ó>   K  — |t         u ry t        |d| |«      –— y ­w)NrÕ   )r   rG   r¿   s      r"   Úverify_missingr    s%   è ø€ ð ”'ÑØÜ
�Ð5°t¸WÓ
EÓEùs   ‚c           	   #  ó@  K  — t        |t        «      rt        |«      dk  rt        |d| |«      –— y | j                  r3t        |«      r(| j                  s| j                  st        |d| |«      –— t        || j                  ¬«      }d}|��N| j                  ��At        || j                  «      �s*d}t        |t        j                  «      rõt        |j                  «      }|�t        || j                  «      rd}t        j                  j!                  | j                  «      }t        |t        j                  j"                  «      ry|j                  j$                  t        j                  j&                  v rI| j(                  j+                  d«      }|�|j                  �|€d}nt        ||j                  «      rd}nd	}|rt        |d
|› |› �| |«      –— y y | j,                  �6| j,                  |k7  r&t        |d| |t/        | j,                  «      ¬«      –— y y y ­w)Né   rÔ   ú+is read-only at runtime but not in the stubr}  rn   TFÚ_value_z (incompatible '_value_')z#variable differs from runtime type zDis inconsistent, stub value for Final var differs from runtime valuer  )ra   r   r@   rG   Úis_initialized_in_classÚis_read_only_propertyÚis_settable_propertyÚis_propertyr‚  rM   r‡  r  r  Úvaluer¦   r×   r¹  ÚInstancerð   ÚELLIPSIS_TYPE_NAMESÚinforµ   Úfinal_valuerX   )r¸   rž   rQ   rŠ  rº   Úshould_errorÚproper_typeÚvalue_ts           r"   Ú
verify_varr  &  sà  è ø€ ô �'œ7Ô#äˆ{Ó˜qÒ Ü˜Ð%@À$ÈÓPÒPØð 	×$Ò$Ü! 'Ô*Ø×&Ò&¨d×.>Ò.>ä�KÐ!NÐPTÐV]Ó^Ò^ä1°'ÈÏ	É	ÔR€LØ€DàÑ Ø�I‰IÑ!Ü! ,°·	±	Õ:àˆô �gœtŸy™yÔ)Ü9¸'¿-¹-ÓHˆLØÐ'Ô,=¸lÈDÏIÉIÔ,VØ$�ô Ÿ*™*×4Ñ4°T·Y±YÓ?ˆKä˜;¬¯
©
×(;Ñ(;Ô<Ø×$Ñ$×-Ñ-´·±×1OÑ1OÑOàŸ)™)Ÿ-™-¨	Ó2�Ø�? g§l¡lÐ&:¸lÐ>RØ#(‘LÜ& |°W·\±\ÔBØ#(‘Là6�DáÜØØ5°l°^ÀDÀ6ÐJØØó	ó ð ð 
×	Ñ	Ð	%¨$×*:Ñ*:¸gÒ*EÜØØRØØÜ˜4×+Ñ+Ó,ô
ó 	
ð +FÐ	%ùs   ‚HHc              #  ób  K  — t        |t        «      rt        |d| |«      –— y | j                  rt	        |«      rt        |d| |«      –— y t        |«      st        |d| |«      –— t        |«      sy | j                  d   }t        |t        j                  «      r7|j                  r+t        |j                  |«      D ]  }t        ||| |«      –— Œ t        |«      }t        | |||«      D ]  }t        |d|z   | |«      –— Œ t        |«      }|sy t         j#                  | «      }t         j%                  |«      }	t'        ||	| j(                  |t*        j,                  u ¬«      D ]F  }d|v r|dz  }t        |d|z   | |t/        | j0                  «      d	|› �z   d
t/        |«      z   ¬«      –— ŒH y ­w)NrÔ   r  r   r   r  r  zhas a default value of typezc. This is often caused by overloads failing to account for explicitly passing in the default value.z
Inferred signature: údef rH   )ra   r   rG   r  r  r  r  rÃ   r   Ú	DecoratorÚis_overloadr  rí  r\  rg  rW   r“  rð  rÎ  rý  rú   r$  r_   r'   rM   )
r¸   rž   rQ   Ú
first_partrU  r[  r:   rÍ  rÀ  r\   s
             r"   Úverify_overloadedfuncdefr%  f  s¿  è ø€ ô
 �'œ7Ô#Ü�KÐ!<¸dÀGÓLÒLØà×Òä  Ô)Ü˜Ð%RÐTXÐZaÓbÒbØä! 'Ô*Ü�KÐ!4°d¸GÓDÒDÜ˜Ô Øð —‘˜A‘€JÜ�*œeŸo™oÔ.°:×3IÒ3IÜ*¨:¯?©?¸GÓDò 	9ˆCÜ˜ S¨$°Ó8Ó8ð	9ô ,¨KÓ8€Nä/°°g¸~È{Ó[ò OˆÜ�KÐ!4°wÑ!>ÀÀgÓNÓNðOô ' wÓ/€IÙØä×/Ñ/°Ó5€HÜ×2Ñ2°9Ó=€Kä$ØØØ—i‘iØ$+¬v¯©Ð$>ô	ò 
ˆð )¨GÑ3Øð(ñˆGô ØØ 'Ñ)ØØÜ˜4Ÿ9™9“~Ð+AÀ(ÀÐ)LÑLØ¤# i£.Ñ0ô
ó 	
ñ
ùs   ‚F-F/c              #  ó°   K  — t        |t        «      r!| j                  dk(  ry t        |d| |«      –— y t        |t        «      st        |d| |«      –— y y ­w)NÚ_NTrÔ   zis not a TypeVar)ra   r   rú   rG   r   r¿   s      r"   Úverify_typevarexprr(  «  s\   è ø€ ô �'œ7Ô#ð �9‰9˜ÒØÜ�KÐ!<¸dÀGÓLÒLØÜ�gœwÔ'Ü�KÐ!3°T¸7ÓCÒCØð (ùs   ‚AAc              #  óô   K  — t        |t        «      rt        |d| |«      –— y t        t        dd «      t        t
        dd «      f}t        d„ |D «       «      }|rt        ||«      st        |d| |«      –— y y ­w)NrÔ   Ú	ParamSpecc              3  ó&   K  — | ]	  }|€Œ|–— Œ y ­wrÿ   r   )r  rB  s     r"   r  z'verify_paramspecexpr.<locals>.<genexpr>Æ  s   è ø€ ÒN !ÀÁœAÑNùs   ‚Šzis not a ParamSpec)ra   r   rG   rV   ÚtypingÚtyping_extensionsÚtuple)r¸   rž   rQ   Úmaybe_paramspec_typesÚparamspec_typess        r"   Úverify_paramspecexprr1  »  s‚   è ø€ ô �'œ7Ô#Ü�KÐ!<¸dÀGÓLÒLØä”˜ TÓ*ÜÔ! ;°Ó5ðÐô ÑNÐ'<ÔNÓN€OÙ¤*¨W°oÔ"FÜ�KÐ!5°t¸WÓEÒEØð #Gùs   ‚A6A8c                ó~   — t        | «      j                  dk7  ry	 t        | j                  «      S # t        $ r Y yw xY w)NÚcached_propertyF)rM   r)   r�   rí  r¯   ©rž   s    r"   Ú_is_django_cached_propertyr5  Ì  s@   € ô
 ˆGƒ}×ÑÐ!2Ò2ØðÜ�G—L‘LÓ!Ð!øÜò Ùðús   ›0 °	<»<c              #  óè  K  — | j                   j                  sJ ‚t        |t        «      r.t	        | j                   |j
                  t        «      E d {  –—†  y t        |t        j                  «      r.t	        | j                   |j                   t        «      E d {  –—†  y t        |«      r.t	        | j                   |j                   t        «      E d {  –—†  y t        j                  |«      ry t        |«      }t        | j                   j                  t        j                  j                   «      r | j                   j                  j"                  nd }|�|�t%        ||«      ry d–— y 7 �Œ7 ŒÒ7 Œ›­w)NzGis inconsistent, cannot reconcile @property on stub with runtime object)rí  r  ra   Úpropertyr  Úfgetr   Ú	functoolsr3  r5  rY   Úisdatadescriptorr‚  rM   r¦   r×   ÚCallableTypeÚret_typer‡  )r¸   rž   rŠ  Ú	func_types       r"   Ú_verify_readonly_propertyr>  Ù  s  è ø€ Ø�9‰9× Ò Ð Ð Ü�'œ8Ô$Ü'¨¯	©	°7·<±<ÄÓI×IÐIØÜ�'œ9×4Ñ4Ô5Ü'¨¯	©	°7·<±<ÄÓI×IÐIØÜ! 'Ô*Ü'¨¯	©	°7·<±<ÄÓI×IÐIØÜ×Ñ Ô(àô 2°'Ó:€Lä#-¨d¯i©i¯n©n¼d¿j¹j×>UÑ>UÔ#Vˆ�	‰	�‰×ÒÐ\`ð ð 	Ð ØÐ!Ü˜l¨IÔ6àØ
SÓSð/ 	Jùð 	Jøð 	Jús8   ‚AE2ÁE+ÁAE2ÂE.Â8E2ÃE0ÃBE2Å.E2Å0E2c              #  óœ   K  — | j                   t        j                  k(  }t        |dd«      }|r|s| j                  rdnd}d|› d�–— y y y ­w)NÚ__isabstractmethod__Fr7  Úmethodzis inconsistent, runtime z is abstract but stub is not)Úabstract_statusr   ÚIS_ABSTRACTrV   r  )r¸   rž   Ústub_abstractÚruntime_abstractÚ	item_types        r"   r  r  ö  sX   è ø€ Ø×(Ñ(¬E×,=Ñ,=Ñ=€MÜ˜wÐ(>ÀÓFÐá¡Ø"&×"2Ò"2‘J¸ˆ	Ø)¨)¨Ð4PÐQÓQð !.Ðùs   ‚A
Ac              #  óv   K  — | j                   ry t        |dd«      s|t        urt        |dd«      rd–— y y y ­w)Nr  Fz8is decorated with @final at runtime, but not in the stub)r  rV   r   )r¸   rž   r[  s      r"   r  r  ÿ  s@   è ø€ ð ‡}‚}ØÜˆw˜ UÔ+ØœgÑ%¬'°.À+ÈuÔ*UàHÓHð +VÐ%ùs   ‚79c                ó²  ‡ — t        ‰ t        j                  «      r‰ S ‰ j                  j                  ry	 	 	 	 	 	 dˆ fd„}‰ j                  }‰ j
                  D ]û  } |||«      }|€ìt        j                  j                  ‰ j                  «      }d}t        |t        j                  j                  «      r$t        j                  j                  d||d¬«      }n&t        |t        j                  j                  «      r|}t        j                  j                  |«      }t        |t        j                  j                  «      rt        ‰ |«      c S  y|}Œý |S )zÀReturns a FuncItem that corresponds to the output of the decorator.

    Returns None if we can't figure out what that would be. For convenience, this function also
    accepts FuncItems.
    Nc                óp  •— t        | t        j                  «      rVt        | j                  t        j                  «      r2| j                  j
                  t        j                  j                  v r|S t        | t        j                  «      sy | j
                  sy | j
                  dv sr| j
                  t        j                  j                  v sL| j
                  t        j                  j                  v s&| j
                  t        j                  j                  v r|S | j
                  dk(  rŒ|j                  d   j                  j                  dvr<t        d|j                  d   j                  j                  ›d‰j
                  › �«      ‚t!        j                   |«      }|j                  dd  |_        |S y )N)zbuiltins.staticmethodzabc.abstractmethodzbuiltins.classmethodr   ©Ú_clsr�  ÚmcsÚmetaclsz unexpected class parameter name z in rp   )ra   r   ÚCallExprÚcalleeÚRefExprrð   r¦   r×   ÚDEPRECATED_TYPE_NAMESÚOVERLOAD_NAMESÚOVERRIDE_DECORATOR_NAMESÚFINAL_DECORATOR_NAMESr³  rq  rú   rD   rJ  )Ú	decoratorrí  r®  Údecs      €r"   Úapply_decorator_to_funcitemzE_resolve_funcitem_from_decorator.<locals>.apply_decorator_to_funcitem  sY  ø€ ô �y¤%§.¡.Ô1Ü˜9×+Ñ+¬U¯]©]Ô;Ø× Ñ ×)Ñ)¬T¯Z©Z×-MÑ-MÑMàˆKÜ˜)¤U§]¡]Ô3ØØ×!Ò!àà×ÑÐ"QÑQØ×!Ñ!¤T§Z¡Z×%>Ñ%>Ñ>Ø×!Ñ!¤T§Z¡Z×%HÑ%HÑHØ×!Ñ!¤T§Z¡Z×%EÑ%EÑEàˆKØ×ÑÐ!7Ò7Ø�~‰~˜aÑ ×)Ñ)×.Ñ.Ð6WÑWÜ%Ø6°t·~±~ÀaÑ7H×7QÑ7Q×7VÑ7VÐ6Yð ZØŸ,™,˜ð)óð ô
 —)‘)˜D“/ˆCàŸM™M¨!¨"Ð-ˆCŒMØˆJð r$   Ú__call__T)Úis_operator)rU  znodes.Expressionrí  rò  r&   únodes.FuncItem | None)ra   r   ÚFuncItemrí  r  Úoriginal_decoratorsr¦   r×   r¹  rM   r  ÚsubtypesÚfind_memberr;  Ú$_resolve_funcitem_from_callable_type)rV  rW  rí  rU  Úresulting_funcÚdec_typeÚcallable_types   `      r"   rè  rè  
  s,  ø€ ô �#”u—~‘~Ô&Øˆ
Ø
‡x�x×ÒØð"Ø#ð"Ø+9ð"à	õ"ðH Ÿ8™8€DØ×,Ñ,ò ˆ	Ù4°YÀÓEˆØÐ!ô —z‘z×1Ñ1°#·(±(Ó;ˆHØ ˆMÜ˜(¤D§J¡J×$7Ñ$7Ô8Ü $§¡× 9Ñ 9Ø ¨(Àð !:ó !‘ô ˜H¤d§j¡j×&=Ñ&=Ô>Ø (�ä ŸJ™J×6Ñ6°}ÓEˆMÜ˜-¬¯©×)@Ñ)@ÔAÜ;¸CÀÓOÒOÙà‰ð)ð* €Kr$   c           
     óV  — |j                   t        j                  t        j                  gk(  r»|j	                  «       x}�©t        t        j                  j                  |j                  «      t        j                  j                  «      r^|j                  «       x}�Lt        t        j                  j                  |j                  «      t        j                  j                  «      ry g }t        t        |j                  |j                   |j                  d¬«      «      D ]j  \  }\  }}}|�|nd|› �}	t        j                   |	|«      }
|d u xr |t        j"                  k(  }|j%                  t        j&                  |
|d ||¬«      «       Œl | j(                  j*                  r0|sy |d   j,                  j.                  dvry |j1                  d«       t        j2                  |j.                  xs d|t        j4                  g «      |¬«      }| j(                  j*                  |_        |S )	NT)ÚstrictÚ__arg)rq  rƒ  rˆ  rs  r²  r   rJ  rn   )rú   r³  Úbodyr&  )Ú	arg_kindsr   r·  r¸  Úvar_argra   r¦   r×   r¹  r&  ÚAnyTypeÚkw_argré  rø  Ú	arg_typesÚ	arg_namesr¼  rß  rµ  r›  rí  rb  rq  rú   Úpopr  ÚBlock)rV  r&  rh  Ú	var_kwargri  Úir¥  Úarg_kindrÔ  Úvar_nameÚvarr²  r®  s                r"   r_  r_  R  s«  € ð 	�‰œ%Ÿ.™.¬%¯/©/Ð:Ò:ØŸ™›Ð%ˆWÐ2Ü”t—z‘z×1Ñ1°'·+±+Ó>ÄÇ
Á
×@RÑ@RÔSØŸ*™*›,Ð&ˆYÐ3Ü”t—z‘z×1Ñ1°)·-±-Ó@Ä$Ç*Á*×BTÑBTÔUð à!#€DÜ-6ÜˆC�M‰M˜3Ÿ=™=¨#¯-©-ÀÔEó.ò 
Ñ)ˆÑ)ˆH�h ð  (Ð3‘8¸5ÀÀ¸ˆÜ�i‰i˜ (Ó+ˆØ˜tÐ#ÒA¨´E·M±MÑ(AˆØ�‰Ü�N‰NØØ (Ø ØØ!ôõ	
ð
ð  ‡x�x×ÒÙØà�‰7×Ñ× Ñ Ð(IÑIØØ�‰�Œä
�-‰-˜SŸX™Xš^¨°tÄ%Ç+Á+ÈbÃ/ÐWZÔ
[€CØ—8‘8×$Ñ$€C„LØ€Jr$   c           	   #  óâ  K  — | j                   j                  r,t        |t        «      st	        |d| |t        | «      ¬«      –— y t        |t        «      rt	        |d| |«      –— y | j                   j                  rMt        | |«      D ]  }t	        ||| |«      –— Œ t        | j                   |«      D ]  }t	        ||| |«      –— Œ y t        | «      }|�t        |||«      E d {  –—†  y y 7 Œ­w)Nr;  r  rÔ   )rí  rI  ra   r   rG   rX   r  r>  r  rè  r®   )r¸   rž   rQ   r:   rí  s        r"   Úverify_decoratorru  }  sñ   è ø€ ð ‡y�y×#Ò#ô ˜'¤7Ô+ÜØØMØØÜ˜t›*ôò ð 	ä�'œ7Ô#Ü�KÐ!<¸dÀGÓLÒLØØ‡y�y×ÒÜ0°°wÓ?ò 	=ˆGÜ˜ W¨d°GÓ<Ó<ð	=ä.¨t¯y©y¸'ÓBò 	=ˆGÜ˜ W¨d°GÓ<Ó<ð	=àä+¨DÓ1€DØÐÜ˜$ ¨Ó5×5Ñ5ð Ø5ús   ‚C$C/Ã&C-Ã'C/c           	   #  ón  K  — t         j                  j                  | j                  «      }d|› �}t	        |t
        «      rt        |d| ||¬«      –— y t        |«      xs |}t	        |t         j                  j                  «      rÓt	        |t        «      st        |d| ||¬«      –— y |j                  }	 |j                  }t	        |t        «      rot        |dt        «      }t	        |t        «      rN|dk(  s	|dk(  r|d	v rd
}|› d|› �}	t        j                   dt        j"                  |j$                  «      › �|	«      ry t'        |||d¬«      E d {  –—†  y t	        |t         j                  j(                  «      r>|t*        ur5t	        |t        j(                  «      st        |d| |t        |«      ¬«      –— y t	        |t         j                  j,                  «      r&t.        t        |dd«      vrt        |d| ||¬«      –— y t	        |t         j                  j0                  «      r/|t2        j4                  j6                  urt        |d| ||¬«      –— y t	        |t         j                  j8                  «      ry t        |d| ||¬«      –— y # t        $ r t        |dt        «      }Y �Œëw xY w7 �Œ^­w)NzType alias for rÔ   r  z&is inconsistent, runtime is not a typer)   r*   zcollections.abcÚre>   ÚMatchÚPatternr,  rL   z_?Tr8  zis not a UnionÚ__mro__r   zis not a subclass of tuplez is not a type alias for Callablezis not a recognised type alias)r¦   r×   r¹  Útargetra   r   rG   r   r  rM   r+   rQ  rV   r   r'   rw  Ú	fullmatchÚescaperð   rY  Ú	UnionTyper   Ú	TupleTyper.  r;  ÚcollectionsÚabcÚCallableri  )
r¸   rž   rQ   Ústub_targetrI   Úruntime_originÚstub_originÚruntime_nameÚruntime_moduleÚruntime_fullnames
             r"   Úverify_typealiasr‰  �  ss  è ø€ ô —*‘*×,Ñ,¨T¯[©[Ó9€KØ! + Ð/€IÜ�'œ7Ô#Ü�KÐ!<¸dÀGÐW`ÔaÒaØÜ Ó(Ò3¨G€NÜ�+œtŸz™z×2Ñ2Ô3Ü˜.¬$Ô/ÜØØ8ØØØ#ôò ð à!×&Ñ&ˆð	HØ)×6Ñ6ˆLô �l¤CÔ(Ü%,¨^¸\Ì7Ó%SˆNÜ˜.¬#Ô.Ø!Ð%6Ò6Ø" dÒ*¨|Ð?SÑ/Sà%-�NØ&4Ð%5°Q°|°nÐ#EÐ Ü—<‘< 2¤b§i¡i°×0DÑ0DÓ&EÐ%FÐ GÐIYÔZàô
 # ;°ÀÐ]aÔb×bÐbØÜ�+œtŸz™z×3Ñ3Ô4à¤Ñ&¬z¸'Ä5Ç?Á?Ô/SÜ˜Ð%5°t¸WÔPSÐT_ÓP`ÔaÒaàÜ�+œtŸz™z×3Ñ3Ô4Üœ °	¸2Ó>Ñ>ÜØÐ9¸4ÀÐT]ôò ð 	Ü�+œtŸz™z×6Ñ6Ô7Ø¤§¡×!9Ñ!9Ñ9ÜØÐ?ÀÀwÐZcôò ð 	Ü�+œtŸz™z×1Ñ1Ô2ØÜ
�Ð=¸tÀWÐXaÔ
bÓbøôS ò 	HÜ" >°:¼wÓG‹Lð	Húð" 	cûs8   ‚B4J5Â7J ÃBJ5ÅJ2ÅD<J5ÊJ/Ê+J5Ê.J/Ê/J5>   r,   Ú__file__r)   Ú__path__Ú__spec__Ú
__author__Ú
__cached__Ú
__loader__Ú__getattr__Ú__package__Ú__version__Ú__annotate__Ú__builtins__Ú__copyright__Ú__annotations__Ú__warningregistry__Ú__conditional_annotations__rë   >.   Ú__cmp__Ú__div__r,   Ú__args__r,  Ú__hash__r  r*  Ú
__origin__Ú
__reduce__r�  Ú__nonzero__rD  Ú__unicode__Ú__weakref__r“  Ú__ctype_be__Ú__ctype_le__Ú__getstate__Ú__setstate__Ú__reduce_ex__Ú__slotnames__Ú__getnewargs__Ú__new_member__Ú__orig_bases__Ú__parameters__Ú__pyx_vtable__r–  Ú__firstlineno__Ú__getinitargs__Ú__subclasshook__Ú__annotate_func__Ú__classdictcell__Ú__instancecheck__Ú__subclasscheck__Ú__protocol_attrs__Ú__text_signature__Ú__abstractmethods__Ú__dataclass_fields__Ú__dataclass_params__Ú__vectorcalloffset__Ú__annotations_cache__Ú__static_attributes__Ú__ctypes_from_outparam__Ú__non_callable_proto_members__Ú__callable_proto_members_only__r=  ))Ú__add__Ú__radd__)Ú__sub__Ú__rsub__©Ú__mul__Ú__rmul__)Ú
__matmul__Ú__rmatmul__)Ú__truediv__Ú__rtruediv__)Ú__floordiv__Ú__rfloordiv__)Ú__mod__Ú__rmod__)Ú
__divmod__Ú__rdivmod__)Ú__pow__Ú__rpow__)Ú
__lshift__Ú__rlshift__)Ú
__rshift__Ú__rrshift__)Ú__and__Ú__rand__)Ú__xor__Ú__rxor__©Ú__or__Ú__ror__)Ú__lt__Ú__gt__)Ú__le__Ú__ge__)Ú	__enter__Ú__exit__ÚPAIRED_DUNDERSc               óX  ‡ ‡— t        ˆˆ fd„t        D «       «      ry‰ dk(  rddhj                  ‰«      ry‰ dk(  rddhj                  ‰«      ry‰ dv r|j                  d	«      s‰ d
v r|j                  d«      ry‰ dk(  xr |j                  d«      xs ‰ dk(  xr |j                  d«      S )aF  
    Return `True` if we would reasonably "expect" this dunder to be present in the stub,
    given the presence of other dunders that are already in the stub.

    For example, if the stub has `__add__`, we would expect it to also have `__radd__`,
    and vice versa.

    We use this to inform our heuristics regarding whether a diagnostic complaining about
    a missing dunder method is likely to be a false positive or not. In many cases where
    a runtime dunder is an instance of `WrapperDesriptorType`, the runtime dunder will
    not actually be callable at runtime, so it's too noisy to complain about them in
    general. If we would reasonably *expect* the dunder to be present in the stub, however,
    it may be worth complaining about the missing dunder even if the dunder at runtime is
    a `WrapperDescriptorType`.
    c              3  óT   •K  — | ]  \  }}‰|k(  xr |‰v xs ‰|k(  xr |‰v –— Œ! y ­wrÿ   r   )r  ÚleftÚrightrH  rú   s      €€r"   r  z%is_expected_dunder.<locals>.<genexpr>c  sJ   øè ø€ ò ñ ˆD�%ð 
�‰Ò	6˜%Ð#6Ð6ò 	;Ø�E‰MÒ9˜dÐ&9Ð9ó	;ñùs   ƒ%(Trß  rÝ  Ú__eq__rà  rÞ  rÚ  ztyping.MappingrÃ  ztyping.SequenceÚ__ior__ztyping.MutableMappingÚ__imul__ztyping.MutableSequence)Úanyrã  rú  Úhas_base)rú   r¸   rH  s   ` `r"   rT  rT  S  sÄ   ù€ ô  ô ô *ôô ð
 àˆxÒ˜X xÐ0×9Ñ9Ð:MÔNØØˆxÒ˜X xÐ0×9Ñ9Ð:MÔNØàÐ%Ñ%¨$¯-©-Ð8HÔ*IØÐ'Ñ'¨D¯M©MÐ:KÔ,Làð �IÑÒH $§-¡-Ð0GÓ"Hò Ø�
ÑÒF˜tŸ}™}Ð-EÓFðr$   c                ó@   — | j                  d«      xr t        | «       S )Nr@  )rM  r   ©rú   s    r"   r§   r§   }  s   € Ø�?‰?˜3ÓÒ7¬	°$«Ð$7Ð7r$   c                ó,  — t        | t        j                  t        j                  t        j                  t        j
                  f«      xsK t        j                  | «      xr t        | «      xs' t        | t        j                  «      xr t        | «      S rÿ   )
ra   r×   ÚFunctionTypeÚBuiltinFunctionTypeÚ
MethodTypeÚBuiltinMethodTyperY   Úismethoddescriptorr  ÚMethodWrapperTyper4  s    r"   r  r  �  s}   € äØä×"Ñ"Ü×)Ñ)Ü× Ñ Ü×'Ñ'ð	ó	
ò 
	Pô ×&Ñ& wÓ/ÒE´H¸WÓ4Eò
	Pô �w¤× 7Ñ 7Ó8ÒN¼XÀgÓ=Nðr$   c                ób   — t        | t        «      xr | j                  d u xr | j                  d u S rÿ   )ra   r7  ÚfsetÚfdelr4  s    r"   r  r  ‘  s,   € Ü�gœxÓ(ÒZ¨W¯\©\¸TÐ-AÒZÀgÇlÁlÐVZÐFZÐZr$   c                óÒ  — t        | d«      �r[| j                  dk(  �rKt        | d«      �r>| j                  dk(  �r.t        | d«      �r!t        | j                  d«      �r
| j                  j                  �ô	 t	        j
                  | j                  «      }t        j                  j                  }|j                  rmt        t        |j                  j                  «       «      «      }|j                  t        j                  j                  k(  rt        j                  j                  }|j                  t	        j                  d|«      g|j                  j                  «       ¢¬«      S t        | d«      �rÄ| j                  dk(  �r´t        | d«      �r§| j                  d	k(  �r—t        | d
«      �rŠt        | j                   d«      �rs| j                   j                  ��\d}t        | j                   d«      rNt        | j                   j"                  d«      r.| j                   j"                  j                  | j                   u rd}|sô	 t	        j
                  | j                   «      }t        j                  j                  }|j                  rmt        t        |j                  j                  «       «      «      }|j                  t        j                  j                  k(  rt        j                  j                  }|j                  t	        j                  d|«      g|j                  j                  «       ¢¬«      S 	 	 t	        j
                  | «      S # t        $ r Y �Œôw xY w# t        $ r Y Œ2w xY w# t$        $ rÞ t        | d«      rÐd| j                  v rÂ| j                  j                  dd«      }t	        j&                  t        j(                  | |«      }t+        |t        j(                  «      sJ ‚|j                  j                  «       D �cg c](  }|j,                  du r|j                  t.        ¬«      n|‘Œ* nc c}w }}|j                  |¬«      cY S ‚ w xY w# t        $ r Y y w xY w)Nr)   r_   rµ  z($self, /, *args, **kwargs)rC  r!   )rÈ  r>  z($type, *args, **kwargs)r`  FTr�  r2   r?   .)r  )rå   r)   rµ  rC  rY   rÍ  rt  rÉ  rÈ  rO  Úiterr¬  rs  ru  Úreplacer¯   r`  r_   Ú
ValueErrorÚ_signature_fromstrr“  ra   r  r3   )rž   ÚsÚparameter_kindÚfirst_parameterÚhas_initrî  Ú	parameterÚ
new_paramss           r"   rW   rW   •  s½  € ä�˜Õ$Ø×Ñ 
Ó*Ü�GÐ1Õ2Ø×&Ñ&Ð*GÓGÜ�G˜^Õ,Ü�G×(Ñ(Ð*>Õ?Ø× Ñ ×3Ñ3Ð?ð	Ü×!Ñ! '×"6Ñ"6Ó7ˆAä5<×5FÑ5F×5\Ñ5\ˆNØ�|Š|Ü"&¤t¨A¯L©L×,?Ñ,?Ó,AÓ'BÓ"C�Ø"×'Ñ'¬7×+<Ñ+<×+LÑ+LÒLÜ%,×%6Ñ%6×%FÑ%F�NØ—9‘9Ü#×-Ñ-¨f°nÓEÐ^ÈÏÉ×H[ÑH[ÓH]Ð^ð ó ð ô 	�˜Õ$Ø×Ñ 	Ó)Ü�GÐ1Õ2Ø×&Ñ&Ð*DÓDÜ�G˜ZÕ(Ü�G×$Ñ$Ð&:Õ;Ø×Ñ×/Ñ/Ñ;ð ˆä�G×$Ñ$ jÔ1Ü˜×(Ñ(×1Ñ1°>ÔBØ× Ñ ×)Ñ)×6Ñ6¸'×:JÑ:JÑJàˆHáðÜ×%Ñ% g×&6Ñ&6Ó7�Ü!(×!2Ñ!2×!HÑ!H�Ø—<’<Ü&*¬4°·±×0CÑ0CÓ0EÓ+FÓ&G�OØ&×+Ñ+¬w×/@Ñ/@×/PÑ/PÒPÜ)0×):Ñ):×)JÑ)J˜Ø—y‘yÜ '× 1Ñ 1°%¸Ó HÐaÈ1Ï<É<×K^ÑK^ÓK`Ðað !ó ð ðð	Ü×$Ñ$ WÓ-Ð-øôW ò 	Úð	ûôL ò Ùðûô ò 	ä˜Ð!5Ô6Ø'¨7×+EÑ+EÑEð ×0Ñ0×8Ñ8Ð9LÈeÓT�Ü×0Ñ0´×1BÑ1BÀGÈSÓQ�Ü! #¤w×'8Ñ'8Ô9Ð9Ð9ð &)§^¡^×%:Ñ%:Ó%<öð "ð %×,Ñ,°Ñ3ð "×)Ñ)´/Ð)ÔBà&ñ'ñùò �
ð ð —{‘{¨j�{Ó9Ò9àð)	ûô* ò ñ
 ðús]   Á6C2M ÉC2M! Ì<M0 Í	MÍMÍ!	M-Í,M-Í0BQÐ-P:Ð9QÑQ ÑQÑQ Ñ	Q&Ñ%Q&c               ó   — |rdnd› d| › �S )Nzasync rn   r!  r   )rÍ  rP   s     r"   r[   r[   ÷  s   € Ù"‰h¨Ð+¨4°	¨{Ð;Ð;r$   c                  ó,   ‡ — e Zd ZdZdˆ fd„Zdd„Zˆ xZS )Ú_TypeCheckOnlyBaseMapperzNRewrites @type_check_only instances to the nearest runtime-visible base class.c               óŠ  •— t         j                  j                  t        ‰| �  |«      «      }t        |t         j                  j                  «      sJ ‚|j                  j                  rY|j                  j                  dd  D ]  }|j                  rŒt        ||«      c S  d|j                  j                  ›d�}J |«       ‚|S )Nrp   zall base classes of z are @type_check_only)r¦   r×   r¹  ÚsuperÚvisit_instancera   r  rM   rI  rP  r   rð   )r!   rB  ÚinstanceÚ	base_inforU  Ú	__class__s        €r"   r	  z'_TypeCheckOnlyBaseMapper.visit_instanceþ  s«   ø€ Ü—:‘:×-Ñ-¬e©gÑ.DÀQÓ.GÓHˆÜ˜(¤D§J¡J×$7Ñ$7Ô8Ð8Ð8à�=‰=×+Ò+à%Ÿ]™]×.Ñ.¨q¨rÐ2ò J�	Ø ×3Ó3Ü4°X¸yÓIÒIðJð )¨¯©×)?Ñ)?Ð(BÐBWÐXˆCØ˜#Ó�5àˆr$   c               ó   — |S rÿ   r   )r!   rB  s     r"   Úvisit_type_alias_typez._TypeCheckOnlyBaseMapper.visit_type_alias_type  s   € Øˆr$   )rB  zmypy.types.Instancer&   úmypy.types.Type)rB  zmypy.types.TypeAliasTyper&   r  )r)   r*   r+   r,   r	  r  Ú__classcell__)r  s   @r"   r  r  û  s   ø„ ÙXõ÷r$   r  c                óf   — t         j                  j                  | j                  t        «      «      S rÿ   )r¦   r×   r¹  ÚacceptÚ_TYPE_CHECK_ONLY_BASE_MAPPER)r&  s    r"   Ú_relax_type_check_only_typer    s!   € Ü�:‰:×%Ñ% c§j¡jÔ1MÓ&NÓOÐOr$   c                óÄ  — t        t        j                  j                  | «      «      } t        t        j                  j                  |«      «      }t	        | t        j                  j
                  «      rIt	        | j                  t        «      r/| j                  dv r!t        j                  j                  |d«      ryt	        |t        j                  j                  «      r!t        j                  j                  | d«      ryt        j                  j                  j                  d«      5  t        j                  j                  | |«      cddd«       S # 1 sw Y   yxY w)z2Checks whether ``left`` is a subtype of ``right``.)r   rp   zbuiltins.boolTzbuiltins.dictN)r  r¦   r×   r¹  ra   ÚLiteralTyper  rå  r4  rº  rØ  rÙ  r]  Ú
is_subtype)ræ  rç  s     r"   r‡  r‡    së   € ä&¤t§z¡z×'AÑ'AÀ$Ó'GÓH€DÜ'¬¯
©
×(BÑ(BÀ5Ó(IÓJ€Eä�4œŸ™×/Ñ/Ô0Ü�t—z‘z¤3Ô'Ø�J‰J˜&Ñ Ü�J‰J×(Ñ(¨°Ô@ð ä�%œŸ™×1Ñ1Ô2´t·z±z×7SÑ7SØˆoô8ð ä	�‰×	Ñ	×	-Ñ	-¨dÓ	3ñ 5Ü�}‰}×'Ñ'¨¨eÓ4÷5÷ 5ò 5ús   Ä, EÅEc                ó¼   — t         j                  j                  | «      } t        | t         j                  j                  «      xr | j
                  j                  dv S )zIChecks whether ``runtime`` is the type of a ``sentinel()`` marker object.)zbuiltins.sentinelztyping_extensions.sentinelztyping_extensions.Sentinel)r¦   r×   r¹  ra   r  rM   rð   r4  s    r"   r†  r†  /  sK   € ä�j‰j×(Ñ(¨Ó1€GÜ�gœtŸz™z×2Ñ2Ó3ò ¸¿¹×8MÑ8Mð Rð 9ð r$   c                ón   — t        | «      }|€y ||j                  vry |j                  |   j                  S rÿ   )rw   rÂ   rì   )ÚmoduleÚ	type_namer¸   s      r"   Úget_mypy_node_for_namer  <  s8   € Ü�FÓ€DØ€|ØØ˜Ÿ
™
Ñ"ØØ�:‰:�iÑ ×%Ñ%Ð%r$   c                ó$  — | €t         j                  j                  «       S t        | t        «      ryd	d„}t        | t        j
                  t        j                  t        j                  t        j                  f«      �rt        d«      }|€J ‚|j                  d   j                  }t        |t        j                  «      sJ ‚t         j                  j                  | |«       g«      }t        | «      }|�rIg }g }g }	|j                   j#                  «       D �]$  }
|j%                   |«       «       |	j%                  |
j&                  t(        j*                  j,                  k(  rdn|
j.                  «       |
j0                  t(        j*                  j2                  u }|
j&                  t(        j*                  j,                  k(  r2|j%                  |rt        j4                  nt        j6                  «       ŒÝ|
j&                  t(        j*                  j8                  k(  r3|j%                  |rt        j4                  nt        j6                  «       �Œ7|
j&                  t(        j*                  j:                  k(  r3|j%                  |rt        j<                  nt        j>                  «       �Œ‘|
j&                  t(        j*                  j@                  k(  r!|j%                  t        jB                  «       �ŒÙ|
j&                  t(        j*                  jD                  k(  r!|j%                  t        jF                  «       �Œ!tH        ‚ n2 |«        |«       g}t        jB                  t        jF                  g}ddg}	t         j                  jK                  |||	 |«       |d¬«      S d}|rÇt         j                  jM                  |«      }t        |t         j                  jJ                  «      r0t        |jN                  t         j                  jP                  «      rd}t        |t         j                  jR                  «      r0t        |jT                  t         j                  jP                  «      rd}t        | tV        «      r›|s™tY        | jZ                  | j\                  «      }t        |t        j                  «      r_t         j^                  ja                  |«      }t         jb                  je                  |«      rt         jf                  ji                  |«      }|S tY        tW        | «      jZ                  tW        | «      j\                  «      }|€yt        |t        jj                  «      r|jV                  S t        |t        j                  «      syt        | tl        «      rv| D �cg c]  }to        |«      ‘Œ }}|D �cg c]  }|�|n |«       ‘Œ }}t         j                  j                  | |«       g«      }t         j                  jq                  ||«      S t         j                  j                  ||jr                  D �cg c]	  } |«       ‘Œ c}«      }tW        | «      | jt                  k7  r|S t        | tv        jx                  «      r't        | j.                  tz        «      r| j.                  }n<t        | t|        «      rt        | «      }n t        | t€        t‚        tz        f«      r| }n|S t         j                  j…                  ||¬«      S c c}w c c}w c c}w )
zReturns a mypy type object representing the type of ``runtime``.

    Returns None if we can't find something that works.

    Nc                 ó„   — t         j                  j                  t         j                  j                  j                  «      S rÿ   )r¦   r×   ri  Ú	TypeOfAnyÚunannotatedr   r$   r"   Úanytypez/get_mypy_type_of_runtime_value.<locals>.anytypeS  s'   € Ü�z‰z×!Ñ!¤$§*¡*×"6Ñ"6×"BÑ"BÓCÐCr$   ÚbuiltinsÚfunctionT)r<  ÚfallbackÚis_ellipsis_argsF)r  r$  )r&   zmypy.types.AnyType)Cr¦   r×   ÚNoneTypera   r7  rð  rñ  rò  ró  rw   rÂ   rì   r   r  r  rW   rÈ  r¬  rµ  rs  rY   rt  ru  rú   r  r€  rß  rÞ  rÉ  rÊ  r¿  r¾  rË  r·  rÌ  r¸  rœ  r;  r¹  r<  r„  ÚTypeTypeÚitemrM   r  r*   r)   rÚ  Útype_object_typeÚ	checkexprÚis_type_type_contextÚ	erasetypeÚerase_typevarsr¼  r.  r‚  r  Ú	type_varsr  r  r  r'   Úbytesr   r�   rå  r  )rž   r~  r!  r"  Ú	type_infor$  rÍ  rk  rg  rl  rž  Ú
no_defaultÚskip_type_object_typeÚresultÚvÚoptional_itemsrp  rÃ   r@  r  s                       r"   r‚  r‚  E  s   € ð €Ü�z‰z×"Ñ"Ó$Ð$Ü�'œ8Ô$àóDô ØÜ	×	Ñ	œU×6Ñ6¼×8HÑ8HÌ%×JaÑJaÐbõô ˜JÓ'ˆØÐ#Ð#Ð#Ø—N‘N :Ñ.×3Ñ3ˆ	Ü˜)¤U§^¡^Ô4Ð4Ð4Ü—:‘:×&Ñ& y±7³9°+Ó>ˆÜ*¨7Ó3ˆ	ÚØˆIØˆIØˆIØ ×+Ñ+×2Ñ2Ó4ó )�Ø× Ñ ¡£Ô+Ø× Ñ ØŸH™H¬×(9Ñ(9×(IÑ(IÒI‘DÈsÏxÉxôð !Ÿ[™[¬G×,=Ñ,=×,CÑ,CÐC�
Ø—8‘8œw×0Ñ0×@Ñ@Ò@Ø×$Ñ$±j¤U§]¢]ÄeÇmÁmÕTØ—X‘X¤×!2Ñ!2×!HÑ!HÒHØ×$Ñ$±j¤U§]¢]ÄeÇmÁmÖTØ—X‘X¤×!2Ñ!2×!?Ñ!?Ò?Ø×$Ñ$¹
¤U§_¢_Ì×H[ÑH[Ö\Ø—X‘X¤×!2Ñ!2×!AÑ!AÒAØ×$Ñ$¤U§^¡^Ö4Ø—X‘X¤×!2Ñ!2×!>Ñ!>Ò>Ø×$Ñ$¤U§_¡_Ö5ä(Ð(ñ#)ñ& !›¡G£IÐ.ˆIÜŸ™¬¯©Ð9ˆIØ˜t˜ˆIä�z‰z×&Ñ&ØØØÙ“YØØ!ð 'ó 
ð 	
ð "ÐÙô —z‘z×1Ñ1°,Ó?ˆä�l¤D§J¡J×$;Ñ$;Ô<Ü˜,×/Ñ/´·±×1GÑ1GÔHØ(,Ð%ä�l¤D§J¡J×$7Ñ$7Ô8Ü˜,×+Ñ+¬T¯Z©Z×-CÑ-CÔDØ(,Ð%ä�'œ4Ô Ñ)>ô +¨7×+=Ñ+=¸w×?OÑ?OÓPˆ	Ü�i¤§¡Ô0Ü—\‘\×2Ñ2°9Ó=ˆFÜ�~‰~×2Ñ2°<Ô@ô Ÿ™×6Ñ6°vÓ>�ØˆMô '¤t¨G£}×'?Ñ'?ÄÀgÃ×AWÑAWÓX€IØÐØÜ�)œUŸY™YÔ'Ø�~‰~ÐÜ�i¤§¡Ô0Øä�'œ5Ô!àELÖMÀÔ8¸Õ;ÐMˆÐMØ>LÖM¸�q�}‘!©'«)Ñ3ÐMˆÐMÜ—:‘:×&Ñ& y±7³9°+Ó>ˆÜ�z‰z×#Ñ# E¨8Ó4Ð4ä�z‰z×"Ñ" 9À)×BUÑBUÖ.V¸Q©w­yÒ.VÓW€HÜˆGƒ}˜×)Ñ)Ò)ð ˆô �'œ4Ÿ9™9Ô%¬*°W·\±\Ä3Ô*GØ—‘‰Ü	�GœUÔ	#Ü,¨WÓ5‰Ü	�Gœd¤C¬Ð-Ô	.Ø‰àˆä�:‰:×!Ñ!¨¸Ð!ÓAÐAùò+ NùÚMùò /Ws   Ö\Ö4\Ø6\
zdict[str, nodes.MypyFile]rñ   c           	     ó&  ‡— t         j                  j                  «       }t         j                  j	                  g ||«      }t         j                  j                  |d|¬«      }g Šg }| D ]õ  }‰j                  |«       |sS|j                  |«      }t        |t        «      sŒ8|j                  t         j                  j                  ||d«      «       Œi|j                  |«      }	|j                  |	«       ‰j                  ˆfd„|	D «       «       	 t        |«      }
‰j                  ˆfd„t        j                  |
j                   |
j"                  dz   «      D «       «       Œ÷ |ra	 t         j                  j                  ||¬«      }|j(                  r't-        dd	j/                  |j(                  «      z   «      ‚|j0                  a‰S # t$        $ r ‚ t&        $ r Y �Œrw xY w# t         j(                  j*                  $ r}t-        d|› �«      |‚d}~ww xY w)
aÈ  Uses mypy to construct stub objects for the given modules.

    This sets global state that ``get_stub`` can access.

    Returns all modules we might want to check. If ``find_submodules`` is False, this is equal
    to ``modules``.

    :param modules: List of modules to build stubs for.
    :param options: Mypy options for finding and building stubs.
    :param find_submodules: Whether to attempt to find submodules of the given modules as well.

    N)ÚfscacheÚoptionsc              3  óT   •K  — | ]  }|j                   ‰vsŒ|j                   –— Œ! y ­wrÿ   ©r  )r  rþ  Úall_moduless     €r"   r  zbuild_stubs.<locals>.<genexpr>ê  s!   øè ø€ Ò^¨AÀ!Ç(Á(ÐR]ÒB]˜qŸx�xÑ^ùs   ƒ(—(c              3  óR   •K  — | ]  }|j                   ‰vr|j                   –— Œ  y ­wrÿ   rî  )r  rÇ   r;  s     €r"   r  zbuild_stubs.<locals>.<genexpr>î  s)   øè ø€ ò #àØ—v‘v [Ñ0ð —F•Fñ#ùs   ƒ$'rL   )Úsourcesr8  zfailed mypy compile:
zmypy build errors:
rs   )r¦   ÚbuildÚdefault_data_dirÚmodulefinderÚcompute_search_pathsÚFindModuleCacherµ  Úfind_modulera   r'   ÚBuildSourceÚfind_modules_recursiveÚextendrŸ   ÚpkgutilÚwalk_packagesr‹  r)   r«   r¬   ÚerrorsÚCompileErrorrD   rR   Úfilesrñ   )rª   r8  Úfind_submodulesÚdata_dirÚsearch_pathÚfind_module_cacher=  r  Úmodule_pathÚfound_sourcesrž   Úresr¹   r;  s                @r"   Úbuild_stubsrS  É  sä  ø€ ô �z‰z×*Ñ*Ó,€HÜ×#Ñ#×8Ñ8¸¸WÀhÓO€KÜ×)Ñ)×9Ñ9Ø˜T¨7ð :ó Ðð €KØ€GØò ˆØ×Ñ˜6Ô"ÙØ+×7Ñ7¸Ó?ˆKÜ˜k¬3Ô/àØ�N‰Nœ4×,Ñ,×8Ñ8¸ÀfÈdÓSÕTà-×DÑDÀVÓLˆMØ�N‰N˜=Ô)à×ÑÓ^°Ô^Ô^ð
Ü.¨vÓ6�Ø×"Ñ"ó #ä$×2Ñ2°7×3CÑ3CÀW×EUÑEUÐX[ÑE[Ó\ô#õ ð!ñ4 ð	GÜ—*‘*×"Ñ"¨7¸GÐ"ÓDˆCð �:Š:Ü!Ð"8¸4¿9¹9ÀSÇZÁZÓ;PÑ"PÓQÐQð —Y‘Yˆ
àÐøô! %ò ØÜ ò Úðûô �{‰{×'Ñ'ò 	GÜ!Ð$:¸1¸#Ð">Ó?ÀQÐFûð	Gús+   ÄAGÅ$!G ÇGÇGÇHÇ<HÈHc                ó,   — t         j                  | «      S )z?Returns a stub object for the given module, if we've built one.)rñ   rµ   r:  s    r"   rw   rw   	  s   € ä�>‰>˜&Ó!Ð!r$   c                ó  ‡‡— t         j                  j                  | «      Š‰€t        j                  dd Šdˆˆfd„}| rt        | «      }n*t        t         j                  j                  «       «      dz  }|dz  }t        «       }|j                  d«      D ]r  }|j                  dk(  r|j                  }d	j                  |j                  |«      j                  dd
 |j                  fz   «      } ||«      sŒb|j                  |«       Œt |S )zJReturns a list of stdlib modules in typeshed (for current Python version).Nr   r  c                óÎ   •— ‰€J ‚| j                  d«      }t        t        |«      dd«      D ]6  }dj                  |d | «      }|‰v sŒ‰|   \  }}‰|k\  xr |d u xs ‰|k  c S  y)NrL   r   r¡   F)r¨   Úranger@   rR   )r  Úpartsrp  Úcurrent_moduleÚminverÚmaxverÚstdlib_py_versionsr  s         €€r"   Úexists_in_versionz6get_typeshed_stdlib_modules.<locals>.exists_in_version	  sŠ   ø€ ØÐ'Ð'Ð'Ø—‘˜SÓ!ˆÜ”s˜5“z 1 bÓ)ò 	]ˆAØ ŸX™X e¨B¨Q iÓ0ˆNØÐ!3Ò3Ø!3°NÑ!C‘�˜Ø# vÑ-Ò\°6¸T°>Ò3[À\ÐU[ÑE[Ò\ð		]ð
 r$   ÚtypeshedÚstdlibz*.pyir_   rL   r¡   )r  r'   r&   r�   )r¦   r@  Úload_stdlib_py_versionsr©   r  r	   r>  r?  ræ   ÚrglobÚstemÚparentrR   Úrelative_torX  rê  )	Úcustom_typeshed_dirr  r]  Útypeshed_dirÚ
stdlib_dirrª   rx   r  r\  s	    `      @r"   Úget_typeshed_stdlib_modulesrh  	  sò   ù€ ô ×*Ñ*×BÑBÐCVÓWÐØÐÜ×'Ñ'¨¨!Ð,ˆöñ ÜÐ/Ó0‰äœDŸJ™J×7Ñ7Ó9Ó:¸ZÑGˆØ Ñ(€Jä›€GØ× Ñ  Ó)ò  ˆØ�9‰9˜
Ò"Ø—;‘;ˆDØ—‘˜$×*Ñ*¨:Ó6×<Ñ<¸S¸bÐAÀTÇYÁYÀLÑPÓQˆÙ˜VÕ$Ø�K‰K˜Õð ð €Nr$   c                 ó  — t        «       } t        j                  D ]«  }|t        v rŒ	 t	        |«      }| j                  |«       	 |j                  }|j                  }t        j                  ||dz   «      D ]N  }|j                  }|j                  d«      s|j                  d«      rŒ2	 t	        |«       | j                  |«       ŒP Œ­ | S # t        $ r Y Œ»w xY w# t        $ r Y ŒÊw xY w# t        $ r ‚ t         $ r Y Œ‡w xY w)z0Return all importable stdlib modules at runtime.rL   z	.__main__)zidlelib.ztest.)ræ   r©   Ústdlib_module_namesÚANNOYING_STDLIB_MODULESrŸ   rê  ÚImportErrorr‹  r)   rQ  rG  rH  rú   ri   rM  r«   r¬   )Úimportable_stdlib_modulesr�   rž   Úruntime_pathr†  Ú	submoduleÚsubmodule_names          r"   Úget_importable_stdlib_modulesrq  -	  s$  € ä*-«%ÐÜ×.Ñ.ò />ˆØÔ1Ñ1Øð	7Ü*¨;Ó7ˆGð &×)Ñ)¨+Ô6ð	à"×+Ñ+ˆLØ"×+Ñ+ˆLô !×.Ñ.¨|¸\ÈCÑ=OÓPò 	>ˆIØ&Ÿ^™^ˆNð ×&Ñ& {Ô3°~×7PÑ7PØ%ô8ð ð
>Ü$ ^Ô4ð *×-Ñ-¨nÕ=ñ;	>ð%/>ðb %Ð$øôW ò 	Ùð	ûô ò 	Ùð	ûô0 %ò Øô !ò Ùðús5   ¨CÁCÂ)C)Ã	CÃCÃ	C&Ã%C&Ã)C>Ã=C>c              #  ó‚   K  — dd„}t        | «      5 }|D ]  } ||«      }|sŒ|–— Œ 	 d d d «       y # 1 sw Y   y xY w­w)Nc                ó†   — 	 | d | j                  d«       j                  «       S # t        $ r | j                  «       cY S w xY w)Nú#)rÒ  r·   rü  )rþ  s    r"   Ústrip_commentsz-get_allowlist_entries.<locals>.strip_commentse	  s@   € ð	Ø�^�q—w‘w˜s“|Ð$×*Ñ*Ó,Ð,øÜò 	Ø—7‘7“9Òð	ús   ‚!$ ¤A ¿A )rþ  r'   r&   r'   )r”   )Úallowlist_fileru  Úfrv   rö   s        r"   Úget_allowlist_entriesrx  d	  sL   è ø€ óô 
ˆnÓ	ð  Øò 	ˆDÙ" 4Ó(ˆEÚØ“ñ	÷÷ ñ üs   ‚?’3£3ª	?³<¸?c                  ó¤   — e Zd ZU ded<   ded<   ded<   ded<   ded<   ded<   ded	<   ded
<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   y)Ú
_Argumentsrˆ   rª   r�   r~   Úignore_missing_stubÚignore_positional_onlyÚignore_disjoint_basesÚstrict_type_check_onlyÚ	allowlistÚgenerate_allowlistÚignore_unused_allowlistr‹   Úmypy_config_filere  Úcheck_typeshedr'   ÚversionÚshow_tracebackÚpdbN)r)   r*   r+   r–  r   r$   r"   rz  rz  r	  sY   … ØÓØƒMØÓØ Ó ØÓØ Ó ØÓØÓØ!Ó!Ø Ó Ø#Ó#ØÓØƒLØÓØ	„Ir$   rz  >   Úthisr¥   ÚantigravityÚ_ios_supportrk  c                ó	  — | j                   D ��ci c]  }t        |«      D ]  }|d“Œ Œ }}}|D �ci c]  }|t        j                  |«      “Œ }}t	        «       }| j
                  }| j                  rY| j
                  rt        t        ddd¬«      d«       yt        | j                  «      }t        «       }	t        ||	z  t        z
  «      }|st        t        ddd¬«      d«       yt        «       }
d|
_        | j                  |
_
        |
j                  r.t         j"                  j%                  |
j                  «      |
_        | j(                  |
_        ||
_        | j.                  |
_        | j0                  |
_        d|
_        |
j*                  r9dd	„}t5        |
||
j*                  t6        j8                  t6        j:                  «       dd
„}dd„}|
j=                  |¬«       |
j?                  ||¬«       |
jA                  «        	 tC        ||
| j                   ¬«      }d}d}|D �].  }tG        |«      D �]  }| jH                  r|jK                  «       rŒ!| jL                  r|jO                  «       rŒ>| jP                  r|jS                  «       rŒ[| jT                  s|jW                  «       rŒx|jX                  |v rd||jX                  <   Œ–d}|D ])  }||   j[                  |jX                  «      sŒ"d||<   d} n |rŒÉd}| j\                  r|j_                  |jX                  «       Œóta        |jc                  | jd                  ¬«      «       |dz  }�Œ �Œ1 | jf                  s7|D ]2  }||   rŒ	||   j[                  d«      rŒd}|dz  }t        d|› �«       Œ4 | j\                  rt        |«      D ]  }t        |«       Œ d}|S | jd                  sr|rAt        t        d|› dti        |«      › dtk        |«      › dti        |«      › d�	dd¬«      «       |S t        t        dtk        |«      › dti        |«      › �dd¬«      «       |S c c}}w c c}w # tD        $ r%}t        t        ddd¬«      d|› �«       Y d}~yd}~ww xY w)z.This is stubtest! It's time to test the stubs!Fúerror:rq   Trr   z7cannot pass both --check-typeshed and a list of modulesrp   zno modules to checkc                  ó   — y rÿ   r   r   r$   r"   Úset_strict_flagsz$test_stubs.<locals>.set_strict_flags³	  s   € Ør$   c                ó^   — t        t        ddd¬«      | «       t        j                  d«       y )Nr‹  rq   Trr   rp   )Úprintr<   r©   Úexit©rU  s    r"   Úerror_callbackz"test_stubs.<locals>.error_callback¸	  s    € ÜŒf�X U°Ô6¸Ô<Ü�‰��r$   c                ó4   — t        t        ddd¬«      | «       y )Nzwarning:ÚyellowTrr   )r�  r<   r‘  s    r"   Úwarning_callbackz$test_stubs.<locals>.warning_callback¼	  s   € ÜŒf�Z x°dÔ;¸SÕAr$   )r’  )r’  r•  )rL  znot checking stubs due to Nr   )r~   rn   znote: unused allowlist entry zFound z errorz
 (checked z moduler«  zSuccess: no issues found in Úgreenrñ  )rU  r'   r&   ztyping.NoReturn)rU  r'   r&   rŒ   )6r  rx  rw  Úcompileræ   rª   rƒ  r�  r<   rh  re  rq  rÅ   rk  r   Úincrementalr•   rx   ÚabspathÚabs_custom_typeshed_dirr‚  Úconfig_fileÚuse_builtins_fixturesr…  r†  Úpos_only_special_methodsr   r©   ÚstdoutÚstderrÚprocess_error_codesÚprocess_incomplete_featuresÚprocess_strict_bytesrS  rD   r½   r{  rb   r|  re   r}  rg   r~  rj   rS   r|  r€  rê  Ú
safe_printr‡   r~   r�  r   r@   )ri  rœ  rv  rö   r  Úallowlist_regexesÚgenerated_allowlistrª   Útypeshed_modulesÚruntime_modulesr8  r�  r’  r•  Ústubtest_failureÚ	exit_codeÚerror_countr  ÚerrorÚis_allowlistedr�   r¹   s                         r"   Ú
test_stubsr­  ˆ	  sž  € ð #Ÿn™n÷àÜ*¨>Ó:òð ð 	ˆu‰ðØð€Iñ ð
 @IÖI°e˜¤§
¡
¨5Ó 1Ñ1ÐIÐÐIô ›%Ðà�l‰l€GØ×ÒØ�<Š<ÜÜ�x u°4Ô8ØIôð Ü6°t×7OÑ7OÓPÐÜ7Ó9ˆÜÐ*¨_Ñ<Ô@WÑWÓXˆáÜŒf�X U°Ô6Ð8MÔNØä‹i€GØ€GÔØ"&×":Ñ":€GÔØ×"Ò"Ü*,¯'©'¯/©/¸'×:UÑ:UÓ*VˆÔ'Ø×/Ñ/€GÔØ$9€GÔ!Ø!×0Ñ0€GÔØ—(‘(€G„KØ',€GÔ$à×Òó	ô 	˜'Ð#3°W×5HÑ5HÌ#Ï*É*ÔVY×V`ÑV`ÔaóóBð ×Ñ¨~ÐÔ>Ø×'Ñ'Ø%Ð8Hð (ô ð × Ñ Ô"ðÜ˜g wÀD×DWÑDWÐ@WÔXˆð €IØ€KØó ˆÜ  Ó(ó 	ˆEà×'Ò'¨E×,AÑ,AÔ,CØØ×*Ò*¨u×/OÑ/OÔ/QØØ×)Ò)¨e×.LÑ.LÔ.NØØ×.Ò.°5×3[Ñ3[Ô3]ØØ× Ñ  IÑ-Ø/3�	˜%×+Ñ+Ñ,ØØ"ˆNØò �Ø$ QÑ'×1Ñ1°%×2CÑ2CÕDØ#'�I˜a‘LØ%)�NÙð	ñ
 Øð ˆIØ×&Ò&Ø#×'Ñ'¨×(9Ñ(9Ô:ØÜ�u×,Ñ,°T·\±\Ð,ÓBÔCØ˜1ÑŠKò9	ðð@ ×'Ò'Øò 	;ˆAð ˜Q“<Ð(9¸!Ñ(<×(FÑ(FÀrÕ(JØ�	Ø˜qÑ �ÜÐ5°a°SÐ9Õ:ð	;ð ×ÒÜÐ+Ó,ò 	ˆAÜ�!�Hð	àˆ	ð( Ðð' �\Š\ÙÜÜØ˜[˜M¨´¸Ó0EÐ/FØ ¤ W£ ¨g´h¸wÓ6GÐ5HÈðKàØô	ôð" Ðô ÜØ2´3°w³<°.ÀÌÐQXÓHYÐGZÐ[Ø!Øôôð ÐùóKùò
 Jøôl ò ÜÜ�8 5¨tÔ4Ø(Ð)9Ð(:Ð;ô	
ô ûðús"   �Q±QÈQ Ñ	Q>ÑQ9Ñ9Q>c                óš   — t         j                  j                  }|�$| j                  |d¬«      j	                  |d¬«      } t        | «       y)zBPrint a text replacing chars not representable in stdout encoding.Nrû  )rI  )r©   rž  ÚencodingÚencodeÚdecoder�  )ÚtextÚout_encodings     r"   r£  r£  
  sE   € ô
 —:‘:×&Ñ&€LØÐð �{‰{˜<°	ˆ{Ó:×AÑAÀ,ÐW`ÐAÓaˆÜ	ˆ$…Kr$   c                óþ  — t        j                  d¬«      }|j                  ddd¬«       |j                  ddd	¬
«       |j                  ddd¬
«       |j                  ddd¬
«       |j                  ddd¬
«       |j                  ddd¬
«       |j                  ddddg d¬«       |j                  dddd¬
«       |j                  dddd¬
«       |j                  ddd ¬!«       |j                  d"d#d$¬!«       |j                  d%dd&¬
«       |j                  d'd(d)t        j                  j
                  z   ¬*«       |j                  d+dd,¬
«       |j                  d-d.dd/¬
«       |j                  | t        «       ¬0«      S )1Nz8Compares stubs to objects introspected from the runtime.)r^   rª   r’   zModules to test)ÚnargsÚhelpz	--conciseÚ
store_truez8Makes stubtest's output more concise, one line per error)Úactionr¶  z--ignore-missing-stubzAIgnore errors for stub missing things that are present at runtimez--ignore-positional-onlyzLIgnore errors for whether an argument should or shouldn't be positional-onlyz--ignore-disjoint-basesz1Disable checks for PEP 800 @disjoint_base classesz--strict-type-check-onlyzIRequire @type_check_only on private types that are not present at runtimez--allowlistz--whitelistrµ  ÚFILEz³Use file as an allowlist. Can be passed multiple times to combine multiple allowlists. Allowlists can be created with --generate-allowlist. Allowlists support regular expressions.)r¸  Úmetavarr  r¶  z--generate-allowlistz--generate-whitelistz:Print an allowlist (to stdout) to be used with --allowlistz--ignore-unused-allowlistz--ignore-unused-whitelistzIgnore unused allowlist entriesz--mypy-config-filezFUse specified mypy config file to determine mypy plugins and mypy path)rº  r¶  z--custom-typeshed-dirÚDIRzUse the custom typeshed in DIRz--check-typeshedz$Check all stdlib modules in typeshedz	--versionr„  z	%(prog)s )r¸  r„  z--pdbzInvoke pdb on fatal errorz--show-tracebackz--tbzShow traceback on fatal error)Ú	namespace)ÚargparseÚArgumentParserÚadd_argumentr¦   r„  r’  Ú
parse_argsrz  )ri  Úparsers     r"   Úparse_optionsrÂ  !
  sþ  € Ü×$Ñ$ØNô€Fð ×Ñ˜	¨Ð3DÐÔEØ
×ÑØØØGð ô ð
 ×ÑØØØPð ô ð
 ×ÑØ"ØØ[ð ô ð ×ÑØ!ØØ@ð ô ð
 ×ÑØ"ØØXð ô ð
 ×ÑØØØØØð+ð ô ð ×ÑØØØØIð	 ô ð ×ÑØ#Ø#ØØ.ð	 ô ð ×ÑØØØVð ô ð
 ×ÑØ¨Ð5Uð ô ð ×ÑØ <Ð6\ð ô ð ×ÑØ˜I¨{¼T¿\¹\×=UÑ=UÑ/Uð ô ð ×Ñ˜¨Ð;VÐÔWØ
×ÑØ˜F¨<Ð>]ð ô ð ×Ñ˜T¬Z«\ÐÓ:Ð:r$   c                 óŠ   — t         j                  j                  d«       t        t	        t
        j                  dd  «      «      S )NÚstubtestrp   )r¦   ÚutilÚcheck_python_versionr­  rÂ  r©   Úargvr   r$   r"   ÚmainrÈ  n
  s.   € Ü‡I�I×"Ñ" :Ô.Ü”m¤C§H¡H¨Q¨R LÓ1Ó2Ð2r$   r¥   )r:   r'   r;   r
   r&   r'   )r:   r'   rA   rå  r&   r'   )r�   r'   r&   rä   )r�   r'   r&   úIterator[Error])r¸   r‰   rž   rŠ   rQ   rˆ   r&   rÉ  )rQ   rˆ   r¸   únodes.MypyFilerÆ   úset[str]r&   rÉ  )rž   rä   r&   zsymtable.SymbolTable | None)r¸   rÊ  rž   zMaybeMissing[types.ModuleType]rQ   rˆ   r&   rÉ  )r¸   znodes.SymbolNoder&   r�   )r¸   únodes.TypeInforž   ú	type[Any]rQ   rˆ   r&   rÉ  )r  útype[object]r   rÎ  r&   r�   )r&  rÎ  r&   r�   )r¸   rÌ  rž   rÎ  rQ   rˆ   r&   rÉ  )
r¸   rÌ  rž   rÍ  rQ   rˆ   r5  r�   r&   rÉ  )
r¸   rÌ  rž   zMaybeMissing[type[Any]]rQ   rˆ   r9  r�   r&   rÉ  )rQ   rˆ   r&   rŠ   )
r¸   znodes.FuncBaserž   r
   r[  rŠ   rQ   rˆ   r&   úIterator[str])rv  únodes.Argumentrw  úinspect.Parameterrx  r'   r&   rÏ  )rv  rÐ  rw  rÑ  r&   rÏ  )rú   r'   ri  úlist[nodes.Argument]r&   rÒ  rŽ   )
r¸   ró  rž   rõ  rx  r'   rû  r�   r&   rÏ  )rž  rÑ  r&   r�   )r¸   rò  rž   rŠ   rQ   rˆ   r&   rÉ  )r¸   r   rž   rŠ   rQ   rˆ   r&   rÉ  )r¸   z	nodes.Varrž   rŠ   rQ   rˆ   r&   rÉ  )r¸   rö  rž   rŠ   rQ   rˆ   r&   rÉ  )r¸   znodes.TypeVarExprrž   rŠ   rQ   rˆ   r&   rÉ  )r¸   znodes.ParamSpecExprrž   rŠ   rQ   rˆ   r&   rÉ  )rž   r
   r&   r�   )r¸   únodes.Decoratorrž   r
   r&   rÏ  )r¸   únodes.FuncDefrž   r
   r&   rÏ  )r¸   rÔ  rž   r
   r[  rŠ   r&   rÏ  )rV  znodes.OverloadPartr&   rZ  )rV  rÓ  r&  zmypy.types.CallableTyper&   znodes.FuncDef | None)r¸   rÓ  rž   rŠ   rQ   rˆ   r&   rÉ  )r¸   znodes.TypeAliasrž   rŠ   rQ   rˆ   r&   rÉ  )rú   r'   r¸   rÌ  rH  rË  r&   r�   )rú   r'   r&   r�   )rž   r$  r&   r�   )rž   r
   r&   zinspect.Signature | None)rÍ  rô  rP   r�   r&   r'   )r&  ræ  r&   ræ  )ræ  r  rç  r  r&   r�   )rž   r  r&   r�   )r  r'   r  r'   r&   zmypy.nodes.SymbolNode | Nonerÿ   )rž   r
   r~  úmypy.types.Type | Noner&   rÕ  )rª   rˆ   r8  r   rL  r�   r&   rˆ   )r  r'   r&   znodes.MypyFile | None)re  r‹   r  ztuple[int, int] | Noner&   rË  )r&   rË  )rv  r'   r&   rÏ  )ri  rz  rœ  r�   r&   rå  )r²  r'   r&   rŒ   )ri  rˆ   r&   rz  )r&   rå  )žr,   Ú
__future__r   r½  Úcollections.abcr€  rJ  r  r9  rš   rY   r  r•   rG  rw  ÚstructrÐ   r©   r±   r×   r,  r-  r—   r   r   Ú
contextlibr   r   r   Úpathlibr	   r
   r   r   r   r   r   r   Ú
mypy.buildr¦   Úmypy.checkexprÚmypy.erasetypeÚmypy.modulefinderÚ
mypy.nodesÚ
mypy.stateÚmypy.subtypesÚ
mypy.typesÚmypy.versionr   Úmypy.config_parserr   Úmypy.evalexprr   r   Úmypy.maptyper   Úmypy.optionsr   Ú	mypy.utilr   r   r   r   r   r   r–  r-   r.   r0   r3   rž  rŸ  r4   r<   rB   r¯   rD   rG   rŸ   r½   r®   rÌ   Ú	lru_cacherÒ   Úregisterrò   rü   ró   r  Úcalcsizer  r"  r(  r0  r7  r  rY  r\  rg  rz  rŽ  r‘  r“  rý  rù  r[  r  r  r¼  r  ÚOverloadedFuncDefr%  ÚTypeVarExprr(  ÚParamSpecExprr1  r5  r>  r  r  rè  r_  r"  ru  Ú	TypeAliasr‰  Ú	frozensetrë   r=  rã  rT  r§   r  r  rW   r[   ÚTypeTranslatorr  r  r  r‡  r†  r  r‚  rñ   rS  rw   rh  rq  rx  rz  rk  r­  r£  rÂ  rÈ  r)   r�  r   r$   r"   ú<module>rò     s«  ðòõ #ã Û Û Û Û Û Û Û Û 	Û Û 	Û Û Û 
Û Û Û Û Û Ý #Ý $ß 7Ý $Ý ß B× BÝ *ã Û Û Û Û Û Û Û Û Ý Ý 0ß 6Ý 2Ý  ß WÓ W÷ñ ñ “€ˆÓ áˆCƒL€Ø,-°©K€Ð)Ó 7÷#ñ #ñ )Ó*€�Ó *ñ # 3§:¡:¨s¯z©z¸5ÓA€
ˆEÓ Aó/óô	�iô 	÷sñ sóv	ó5ðp ðGØ
"ðGØ->ðGØMVðGàòGó ðGðØðØ"0ðØFNðàóð: ×Ñòó ðð" ‡��—‘Ó ðnLØ
ðnLØ#AðnLØPYðnLàònLó !ðnLób
ð$
Ø
ð$
Ø#,ð$
Ø;Dð$
àó$
ðN "�&—/‘/ #Ó&€ó*ó,%ð5Ø
ð5Ø#/ð5Ø>Gð5àó5ðp#Ø
ð#Ø#,ð#Ø;Dð#Ø_cð#àó#ðL ‡��—‘Ó ð "ñmSØ
ðmSà$ðmSð ðmSð
 ðmSð òmSó !ðmSó`
ð:Ø
ð:Ø#&ð:Ø8Ið:ØXað:àó:ð:"Øð"Ø+<ð"ØMPð"àó"ðJFØðFØ+<ðFàóFóRôB�˜‘
ô BðR ).ð	tWØ
#ðtWà)ðtWð ðtWð "&ð	tWð
 ótWónð ‡��—‘Ó ð?
Ø
ð?
Ø#4ð?
ØCLð?
àò?
ó !ð?
ðD ‡��ÓðFØ
ðFØ-ðFØ<EðFàòFó ðFð ‡��—‘Óð<
Ø
ð<
Ø/ð<
Ø>Gð<
àò<
ó ð<
ð~ ‡��×(Ñ(Ó)ðA
Ø
!ðA
Ø,=ðA
ØLUðA
àòA
ó *ðA
ðH ‡��×"Ñ"Ó#ðØ
ðØ&7ðØFOðàòó $ðð ‡��×$Ñ$Ó%ðØ
ðØ(9ðØHQðàòó &ðó 
óTó:RðIØ
ðIØ"%ðIØ7HðIàóIóEðP(Ø	ð(Ø6ð(àó(ðV ‡��—‘Ó!ð6Ø
ð6Ø$5ð6ØDMð6àò6ó "ð6ð> ‡��—‘Ó!ðBcØ
ðBcØ$5ðBcØDMðBcàòBcó "ðBcñT !*òó!Ð ˜ó ñ0 "+ò9ó;"Ð ˜ó ;ð|€�ó ó*'óT8óó [ó_óD<ô˜tŸz™z×8Ò8ô ñ,  8Ó9Ð óPó5ó.
ó&ð :>ðyBØðyBØ 6ðyBàóyBðB )+€
Ð%Ó *ô:óz"ð MQðØ#ðØ3IðàóóD4%ón÷ñ ñ& "+Ò+^Ó!_Ð ˜Ó _ôIóX
óJ;óZ3ð
 ˆzÒØ€C‡H‚H‰T‹VÕð r$   