ó
    É%ìhJ  ã                   ó&  • S r SSKJrJr  SSKrSSKJr  S rS rS,S jr " S S	\	5      r
\
" S
\40 5      r\\l        S\l         \S4S jr\S4S jr\S4S jr\S4S jr\4S jr\4S jr " S S5      rS rS r " S S5      r " S S5      r\" 5       r " S S\	5      r\" 5       r " S S\S9r " S S \S9r " S! S"\S9r  " S# S$\S9r!\\\ \!4 H!  r"S%RG                  \"R                  S&9\"l         M#     C"S'\$S(\\$\4   S)\4S* jr%S'\$S)\4S+ jr&g)-z¦Defines experimental extensions to the standard "typing" module that are
supported by the mypy typechecker.

Example usage:
    from mypy_extensions import TypedDict
é    )ÚAnyÚDictN)Ú_type_checkc                 ó˜   •  [         R                  " S5      R                  S   S;  a  [        S5      e g! [        [
        4 a     gf = f)Né   Ú__name__)ÚabcÚ	functoolsÚtypingz4TypedDict does not support instance and class checksF)ÚsysÚ	_getframeÚ	f_globalsÚ	TypeErrorÚAttributeErrorÚ
ValueError)ÚclsÚothers     ÚL/home/mande/repo/quber/.venv/lib/python3.13/site-packages/mypy_extensions.pyÚ_check_failsr      sW   € ðÜ�=Š=˜Ó×%Ñ% jÑ1Ð9WÓWäÐRÓSÐSð Xð
 øô œJÐ'ó ØØðús   ‚26 ¶A	ÁA	c                 ó   • [        U0 UD6$ ©N)Údict)r   ÚargsÚkwargss      r   Ú	_dict_newr      s   € Ü�Ð ˜Ñ Ð ó    c                 ó  • UR                  SS5      nUc  UnOU(       a  [        S5      e[        U5      US.n [        R                  " S5      R
                  R                  SS5      US'   [        US	USS
9$ ! [        [        4 a     Nf = f)NÚtotalTz@TypedDict takes either a dict or keyword arguments, but not both)Ú__annotations__Ú	__total__r   r   Ú__main__Ú
__module__© )Ú_from_functional_call)
Úpopr   r   r   r   r   Úgetr   r   Ú_TypedDictMeta)r   Ú	_typenameÚ_fieldsr   r   Únss         r   Ú_typeddict_newr+      s˜   € Ø�J‰J�w Ó%€EØ�Ø‰Þ	Üð (ó )ð 	)ô " '›]¸Ñ	?€BðäŸ=š=¨Ó+×5Ñ5×9Ñ9¸*ÀjÓQˆˆ<Ñô ˜) R¨À4ÑHÐHøô œJÐ'ó Ùðús   º3A9 Á9BÂBc                   ó4   ^ • \ rS rSrSU 4S jjr\=rrSrU =r	$ )r'   é0   c           	      óø  >• S[        5       ;   a"  SS KnUR                  S[        U(       a  SOSS9  US:X  a  [        O[
        US'   [        [        U ]#  X[        4U5      nUR                  S0 5      nS	n	UR                  5        V
Vs0 s H  u  p«U
[        X¹5      _M     nn
nU H.  nUR                  UR                  R                  S0 5      5        M0     X‡l        [!        US
5      (       d  XGl        U$ s  snn
f )NÚ	TypedDictr   zŽmypy_extensions.TypedDict is deprecated, and will be removed in a future version. Use typing.TypedDict or typing_extensions.TypedDict instead.é   é   ©Ú
stacklevelÚ__new__r   z?TypedDict('Name', {f0: t0, f1: t1, ...}); each t must be a typer    )ÚglobalsÚwarningsÚwarnÚDeprecationWarningr+   r   Úsuperr'   r4   r   r&   Úitemsr   ÚupdateÚ__dict__r   Úhasattrr    )r   ÚnameÚbasesr*   r   r$   r6   Útp_dictÚannsÚmsgÚnÚtpÚbaseÚ	__class__s                €r   r4   Ú_TypedDictMeta.__new__1   sè   ø€ ð œ'›)Ó#ÛØ�M‰MðSô #Þ!6™A¸Að ñ ð +/°+Ó*=�Ä9ˆˆ9‰Üœ¨Ñ4°SÄÀÈÓLˆà�v‰vÐ'¨Ó,ˆØOˆØ59·Z±Z´\ÔB²\©E¨A�”;˜rÓ'Ò'±\ˆÑBÛˆDØ�K‰K˜Ÿ™×)Ñ)Ð*;¸RÓ@ÖAñ à"&ÔÜ�w ×,Ñ,Ø %ÔØˆùó Cs   ÂC6r#   )TF)
r   r"   Ú__qualname__Ú__firstlineno__r4   r   Ú__instancecheck__Ú__subclasscheck__Ú__static_attributes__Ú__classcell__)rF   s   @r   r'   r'   0   s   ø† ÷!ðF -9Ð8ÐÖ)r   r'   r/   a  A simple typed name space. At runtime it is equivalent to a plain dict.

    TypedDict creates a dictionary type that expects all of its
    instances to have a certain set of keys, with each key
    associated with a value of a consistent type. This expectation
    is not checked at runtime but is only enforced by typecheckers.
    Usage::

        Point2D = TypedDict('Point2D', {'x': int, 'y': int, 'label': str})
        a: Point2D = {'x': 1, 'y': 2, 'label': 'good'}  # OK
        b: Point2D = {'z': 3, 'label': 'bad'}           # Fails type check
        assert Point2D(x=1, y=2, label='first') == dict(x=1, y=2, label='first')

    The type info could be accessed via Point2D.__annotations__. TypedDict
    supports two additional equivalent forms::

        Point2D = TypedDict('Point2D', x=int, y=int, label=str)

        class Point2D(TypedDict):
            x: int
            y: int
            label: str

    The latter syntax is only supported in Python 3.6+, while two other
    syntax forms work for 3.2+
    c                 ó   • U $ )zA normal positional argumentr#   ©Útyper>   s     r   ÚArgrQ   z   ó   € à€Kr   c                 ó   • U $ )z*A positional argument with a default valuer#   rO   s     r   Ú
DefaultArgrT      rR   r   c                 ó   • U $ )zA keyword-only argumentr#   rO   s     r   ÚNamedArgrV   „   rR   r   c                 ó   • U $ )z,A keyword-only argument with a default valuer#   rO   s     r   ÚDefaultNamedArgrX   ‰   rR   r   c                 ó   • U $ )z*A *args-style variadic positional argumentr#   ©rP   s    r   ÚVarArgr[   Ž   rR   r   c                 ó   • U $ )z*A **kwargs-style variadic keyword argumentr#   rZ   s    r   ÚKwArgr]   “   rR   r   c                   ó   • \ rS rSrSrg)Ú_DEPRECATED_NoReturnéš   r#   N)r   r"   rH   rI   rL   r#   r   r   r_   r_   š   s   † šDr   r_   c                 ó   • U $ r   r#   )r   s    r   Útraitrb   �   s   € Ø€Jr   c                  ó   • S $ )Nc                 ó   • U $ r   r#   )Úxs    r   Ú<lambda>Úmypyc_attr.<locals>.<lambda>¢   s   € ‘Qr   r#   )ÚattrsÚkwattrss     r   Ú
mypyc_attrrj   ¡   s   € ÙÐr   c                   ó    • \ rS rSrS rS rSrg)Ú_FlexibleAliasClsAppliedé§   c                 ó   • Xl         g r   ©Úval)Úselfrp   s     r   Ú__init__Ú!_FlexibleAliasClsApplied.__init__¨   s   € Ø�r   c                 ó   • U R                   $ r   ro   ©rq   r   s     r   Ú__getitem__Ú$_FlexibleAliasClsApplied.__getitem__«   s   € Ø�x‰xˆr   ro   N)r   r"   rH   rI   rr   rv   rL   r#   r   r   rl   rl   §   s   † òõr   rl   c                   ó   • \ rS rSrS rSrg)Ú_FlexibleAliasClsé¯   c                 ó   • [        US   5      $ )Néÿÿÿÿ)rl   ru   s     r   rv   Ú_FlexibleAliasCls.__getitem__°   s   € Ü'¨¨R©Ó1Ð1r   r#   N)r   r"   rH   rI   rv   rL   r#   r   r   ry   ry   ¯   s   † õ2r   ry   c                   ó   • \ rS rSrS rSrg)Ú_NativeIntMetaé·   c                 ó"   • [        U[        5      $ r   )Ú
isinstanceÚint)r   Úinsts     r   rJ   Ú _NativeIntMeta.__instancecheck__¸   s   € Ü˜$¤Ó$Ð$r   r#   N)r   r"   rH   rI   rJ   rL   r#   r   r   r   r   ·   s   † õ%r   r   c                   ó"   • \ rS rSrS\4S jrSrg)Úi64é¿   r   c                 ó@   • U[         La  [        X5      $ [        U5      $ r   ©Ú	_sentinelrƒ   ©r   re   rE   s      r   r4   Úi64.__new__À   ó   € Ø”yÒ Ü�q“<ÐÜ�1‹vˆr   r#   N©r   r"   rH   rI   r‹   r4   rL   r#   r   r   r‡   r‡   ¿   ó   † Ø˜y÷ r   r‡   )Ú	metaclassc                   ó"   • \ rS rSrS\4S jrSrg)Úi32éÆ   r   c                 ó@   • U[         La  [        X5      $ [        U5      $ r   rŠ   rŒ   s      r   r4   Úi32.__new__Ç   rŽ   r   r#   Nr�   r#   r   r   r“   r“   Æ   r�   r   r“   c                   ó"   • \ rS rSrS\4S jrSrg)Úi16éÍ   r   c                 ó@   • U[         La  [        X5      $ [        U5      $ r   rŠ   rŒ   s      r   r4   Úi16.__new__Î   rŽ   r   r#   Nr�   r#   r   r   r˜   r˜   Í   r�   r   r˜   c                   ó"   • \ rS rSrS\4S jrSrg)Úu8éÔ   r   c                 ó@   • U[         La  [        X5      $ [        U5      $ r   rŠ   rŒ   s      r   r4   Ú
u8.__new__Õ   rŽ   r   r#   Nr�   r#   r   r   r�   r�   Ô   r�   r   r�   a/  A native fixed-width integer type when used with mypyc.

        In code not compiled with mypyc, behaves like the 'int' type in these
        runtime contexts:

        * {name}(x[, base=n]) converts a number or string to 'int'
        * isinstance(x, {name}) is the same as isinstance(x, int)
        ©r>   r>   Úmodule_globalsÚreturnc                 óÚ   • UR                  SU  35      =nc  S[         SU  S3n[        U5      eX!U '   U S;   a  SU  SU  SU  S	3nO S
U  S35       eSS KnUR	                  U[
        SS9  U$ )NÚ_DEPRECATED_zmodule 'z' has no attribute 'Ú'>   ÚNoReturnz'mypy_extensions.zF' is deprecated, and will be removed in a future version. Use 'typing.z' or 'typing_extensions.z	' insteadz-Add deprecation message for 'mypy_extensions.r   r0   r2   )r&   r   r   r6   r7   r8   )r>   r¢   rp   rB   r6   s        r   Ú_warn_deprecationr¨   è   s¦   € Ø×!Ñ! L°°Ð"7Ó8Ð8ˆÑAØœ˜
Ð"6°t°f¸AÐ>ˆÜ˜SÓ!Ð!Ø�4ÑØˆ|Óà ˜vð &à˜&Ð 8¸¸¸iðIñ 	ð 	NÐEÀdÀVÈ1ÐMÓMˆuÛØ‡M�M�#Ô)°a€MÑ8Ø€Jr   c                 ó&   • [        U [        5       S9$ )N)r¢   )r¨   r5   r¡   s    r   Ú__getattr__rª   ú   s   € Ü˜T´'³)Ñ<Ð<r   r   )'Ú__doc__r   r   r   r   r   r   r   r+   rP   r'   r   r/   r   r"   rQ   rT   rV   rX   r[   r]   r_   rb   rj   rl   ry   ÚFlexibleAliasr   Úobjectr‹   r‡   r“   r˜   r�   Ú	_int_typeÚformatÚstrr¨   rª   r#   r   r   Ú<module>r±      s…  ðñ÷ ã 
õ òò!ôIô$$9�Tô $9ñN ˜;¨¨°Ó4€	Ø€	Ô ðð 
Ô ðB �tô ð
 ˜dô ð
 ˜Dô ð
  4ô ð
 ô ð
 ô ÷ !Ñ  òò÷ñ ÷2ñ 2ñ
 "Ó#€ô%�Tô %ñ
 ‹H€	ô�Nò ô�Nò ô�Nò ô�>ò ð �c˜3 Ó"€Ið	÷ ‰F˜	×*Ñ*ˆFÐ+ð Öñ #ð ð˜Cð °°c¸3°h±ð ÀCô ð$=�cð =˜cõ =r   