§
    ZŠtj 7  ã                   óð  — U d Z ddlZddlZddlZddlZddlZ eed¦  «        r eed¦  «        Z	n# eed¦  «        r eed¦  «        Z	n
 e
¦   «         ‚ eed¦  «        r eed¦  «        ZndZ eed¦  «        r eed¦  «        ZndZ eed¦  «        r eed¦  «        ZndZdZej        eej        eej        eej        eej        eej        ej        j        ej        ej        j         ed¦  «        diZej        ej        ej         ej        ej!        ej        ej"        ej#        ej$        ej#        ej%        ej#        iZ&ej        eej'        f         e(d<   er	d	e)d
e*fd„Z+nd	e)d
e*fd„Z+d
ej,        e*         fd„Z-d
ej,        e*         fd„Z.d„ Z/ej0        Z0 eej        ¦  «        Z1 eej2        ¦  «        Z3ej2        dedf         Z'ej2        def         Z4ej2        eej5        e         ej        e         f         Z6de'd
e'fd„Z7d„ Z8d
ej        fd„Z9d%d„Z: G d„ dej;        ¦  «        Z<de6fd„Z=de'd
e<fd„Z>de4de4d
e*fd„Z?ej2        ej        ej@        df         ejA        e<         e<f         ZBddddd ej,        ejC        eDef                  d
ej,        e*         fd!„ZEde<de<d ej,        ejC        eDef                  d
ej,        e*         fd"„ZF	 d%de'de'd ej,        e         d
ej,        e*         fd#„ZGg d$¢ZHdS )&a}  
Backport Python3.8+ typing utils &amp; issubtype &amp; more

![Python 3.6](https://github.com/bojiang/typing_utils/workflows/Python%203.6/badge.svg)
![Python 3.7](https://github.com/bojiang/typing_utils/workflows/Python%203.7/badge.svg)
![Python 3.8](https://github.com/bojiang/typing_utils/workflows/Python%203.8/badge.svg)

## Install

``` bash
    pip install typing_utils
```
é    NÚ
ForwardRefÚ_ForwardRefÚLiteralÚ_TypedDictMetaÚ	UnionTypeÚSTATIC_SUBTYPE_MAPPINGÚelementÚreturnc                 ó0   — | t           j        u p| t          u S ©N)ÚtypingÚUnionr   ©r	   s    úT/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/overrides/typing_utils.pyÚis_unionr   C   s   € Ø�&œ,Ð&Ð>¨'µYÐ*>Ð>ó    c                 ó   — | t           j        u S r   )r   r   r   s    r   r   r   H   s   € Ø�&œ,Ð&Ð&r   c                 óh   — t          | ¦  «        rdS t          d„ | D ¦   «         ¦  «        rdS t          S )NTc              3   ó   K  — | ]}|d u V — Œ	dS )FN© ©Ú.0Úes     r   ú	<genexpr>zoptional_all.<locals>.<genexpr>O   s&   è è € Ð
(Ð
(˜!ˆ1�ˆ:Ð
(Ð
(Ð
(Ð
(Ð
(Ð
(r   F)ÚallÚunknown©Úelementss    r   Úoptional_allr   L   s>   € Ý
ˆ8�}„}ð ØˆtÝ
Ð
(Ð
(˜xÐ
(Ñ
(Ô
(Ñ(Ô(ð ØˆuÝ€Nr   c                 óh   — t          | ¦  «        rdS t          d„ | D ¦   «         ¦  «        rt          S dS )NTc              3   ó   K  — | ]}|d u V — Œ	d S r   r   r   s     r   r   zoptional_any.<locals>.<genexpr>W   s&   è è € Ð
'Ð
'˜ˆ1�ˆ9Ð
'Ð
'Ð
'Ð
'Ð
'Ð
'r   F)Úanyr   r   s    r   Úoptional_anyr#   T   s>   € Ý
ˆ8�}„}ð ØˆtÝ
Ð
'Ð
'˜hÐ
'Ñ
'Ô
'Ñ'Ô'ð ÝˆØˆ5r   c                 óJ   — 	 t          | ¦  «         n# t          $ r Y dS w xY wdS )z(Determine whether `value` can be hashed.FT)ÚhashÚ	TypeError)Úvalues    r   Ú	_hashabler(   \   s;   € ðÝˆU‰ŒˆˆøÝð ð ð Øˆuˆuðøøøàˆ4s   ‚ ’
 Ÿ ztyping.TypeVarÚtype_c                 óœ   — t          | t          j        ¦  «        r| S t          | ¦  «        s
J d¦   «         ‚| t          v rt          |          S | S )Nz9_normalize_aliases should only be called on element types)Ú
isinstancer   ÚTypeVarr(   ÚBUILTINS_MAPPING)r)   s    r   Ú_normalize_aliasesr.   o   sT   € Ý�%�œÑ(Ô(ð Øˆå�UÑÔÐXÐXÐXÑXÔXÐàÕ Ð Ð Ý Ô&Ð&Ø€Lr   c                 óx  — t          t          d¦  «        r!t          t          d¦  «        } || ¦  «        }nÑt          t          j        d¦  «        r\t	          | t
          ¦  «        r| j        s| j        }n“t          | d¦  «        r
| j        r| }ny| t          j        u rt          j        }n^d}n[t	          | t
          ¦  «        r| j        }|€| }n:t	          | t          ¦  «        r| j        }n| t          j        u rt          j        }nd}|€#t          rt	          | t          ¦  «        rt          }t          |¦  «        S )a%  Get the unsubscripted version of a type.
    This supports generic types, Callable, Tuple, Union, Literal, Final and ClassVar.
    Return None for unsupported types.

    Examples:

    ```python
        from typing_utils import get_origin

        get_origin(Literal[42]) is Literal
        get_origin(int) is None
        get_origin(ClassVar[int]) is ClassVar
        get_origin(Generic) is Generic
        get_origin(Generic[T]) is Generic
        get_origin(Union[T, int]) is Union
        get_origin(List[Tuple[T, T]][int]) == list
    ```
    Ú
get_originÚ_specialN)Úhasattrr   ÚgetattrÚListr+   ÚGenericClassr1   Ú
__origin__ÚGenericÚ
UnionClassr   Údictr.   )r)   Ú_getterÚoris      r   r0   r0   z   s2  € õ& �v�|Ñ$Ô$ð Ý�& ,Ñ/Ô/ˆØˆg�e‰nŒnˆˆÝ	•”˜jÑ	)Ô	)ð Ý�e�\Ñ*Ô*ð 	°5´>ð 	ØÔ"ˆCˆCÝ�U˜JÑ'Ô'ð 	¨E¬Nð 	ØˆCˆCØ•f”nÐ$Ð$Ý”.ˆCˆCàˆCˆCå�e�\Ñ*Ô*ð 		ØÔ"ˆCØˆ{Ø�øÝ˜�zÑ*Ô*ð 	ØÔ"ˆCˆCØ•f”nÐ$Ð$Ý”.ˆCˆCàˆCØ
€{•~€{­*°U½NÑ*KÔ*K€{ÝˆÝ˜cÑ"Ô"Ð"r   c                 óà  — t          t          d¦  «        r"t          t          d¦  «        } || ¦  «        }�nt          t          j        d¦  «        rut	          | t
          ¦  «        r]| j        sV| j        }t          | ¦  «        t          j
        j        u r.|d         t          urt          |dd…         ¦  «        |d         f}nwd}ntt	          | t
          t          f¦  «        rV| j        }t          | ¦  «        t          j
        j        u r.|d         t          urt          |dd…         ¦  «        |d         f}nd}t          r(t	          | t          ¦  «        rt           t          j        fS |€dn|S )aç  Get type arguments with all substitutions performed.
    For unions, basic simplifications used by Union constructor are performed.

    Examples:

    ```python
        from typing_utils import get_args

        get_args(Dict[str, int]) == (str, int)
        get_args(int) == ()
        get_args(Union[int, Union[T, int], str][int]) == (int, str)
        get_args(Union[int, Tuple[T, int]][str]) == (int, Tuple[str, int])
        get_args(Callable[[], T][int]) == ([], int)
    ```
    Úget_argsr1   r   Néÿÿÿÿr   )r2   r   r3   r4   r+   r5   r1   Ú__args__r0   ÚcollectionsÚabcÚCallableÚEllipsisÚlistr8   r   ÚstrÚAny)r)   r:   Úress      r   r=   r=   ©   sP  € õ  �v�zÑ"Ô"ð Ý�& *Ñ-Ô-ˆØˆg�e‰nŒnˆ‰Ý	•”˜jÑ	)Ô	)ð å�u�lÑ+Ô+ð	Ø49´Nð	ð ”.ˆCÝ˜%Ñ Ô ¥K¤OÔ$<Ð<Ð<ÀÀQÄÍxÐAWÐAWÝ˜C   œH‘~”~ s¨2¤wÐ/�øàˆCˆCå�e�l­JÐ7Ñ8Ô8ð 	Ø”.ˆCÝ˜%Ñ Ô ¥K¤OÔ$<Ð<Ð<ÀÀQÄÍxÐAWÐAWÝ˜C   œH‘~”~ s¨2¤wÐ/�øàˆCÝð �* U­NÑ;Ô;ð Ý•F”JˆÐØ�ˆ2ˆ2 #Ð%r   c                 ó  — |pi }t          t          d¦  «        r.t          t          d¦  «        } || t          ¦   «         |¦  «        S t          | d¦  «        r(t          | d¦  «        } |t          ¦   «         |¦  «        S t	          ¦   «         ‚)z3
    eval forward_refs in all cPython versions
    Ú
_eval_type)r2   r   r3   ÚglobalsÚNotImplementedError)ÚrefÚforward_refsÚlocalnsrI   s       r   Úeval_forward_refrO   Ñ   sŠ   € ð Ð ˜b€Gå�v�|Ñ$Ô$ð 3Ý�V \Ñ2Ô2ˆ
Øˆz˜#�w™yœy¨'Ñ2Ô2Ð2åˆs�LÑ!Ô!ð .Ý˜S ,Ñ/Ô/ˆ
Øˆz�'™)œ) WÑ-Ô-Ð-å
Ñ
Ô
Ðr   c                   ón   — e Zd ZU dZeed<    e¦   «         Zej	        ee
f         ed<   d„ Zdefd„Zd„ ZdS )	ÚNormalizedTypezK
    Normalized type, made it possible to compare, hash between types.
    ÚoriginÚargsc                 ó`  — t          |t          ¦  «        r†| j        |j        k    rdS t          | j        t          ¦  «        r:t          |j        t          ¦  «        r | j        |j        k    o|j        | j        k    S | j        |j        k    o| j        |j        k    S | j        s| j        |k    S dS )NF)r+   rQ   rR   rS   Ú	frozenset)ÚselfÚothers     r   Ú__eq__zNormalizedType.__eq__ê   s¨   € Ý�e�^Ñ,Ô,ð 	KØŒ{˜eœlÒ*Ð*Ø�uÝ˜$œ)¥YÑ/Ô/ð KµJ¸u¼zÍ9Ñ4UÔ4Uð KØ”y E¤JÒ.ÐJ°5´:ÀÄÒ3JÐJØ”; %¤,Ò.ÐJ°4´9ÀÄ
Ò3JÐJØŒyð 	(Ø”; %Ò'Ð'Øˆur   r
   c                 ón   — | j         st          | j        ¦  «        S t          | j        | j         f¦  «        S r   )rS   r%   rR   ©rV   s    r   Ú__hash__zNormalizedType.__hash__õ   s3   € ØŒyð 	%Ý˜œÑ$Ô$Ð$Ý�T”[ $¤)Ð,Ñ-Ô-Ð-r   c                 óD   — | j         s| j        › S | j        › d| j         › d�S )Nú[z]))rS   rR   rZ   s    r   Ú__repr__zNormalizedType.__repr__ú   s2   € ØŒyð 	$Ø”kÐ#Ð#Ø”+Ð-Ð- ¤	Ð-Ð-Ð-Ð-r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚTypeÚ__annotations__ÚtuplerS   r   r   rU   rX   Úintr[   r^   r   r   r   rQ   rQ   â   s†   € € € € € € ðð ð €L€L�LØ+0¨5©7¬7€Dˆ&Œ,�u˜iÐ'Ô
(Ð2Ð2Ñ2ð	ð 	ð 	ð.˜#ð .ð .ð .ð .ð
.ð .ð .ð .ð .r   rQ   Útpsc                 ó.  — t          | t          ¦  «        r| S t          | t          j        j        ¦  «        rt          d„ | D ¦   «         ¦  «        S t          | t          j        j        ¦  «        rt          d„ | D ¦   «         ¦  «        S t          | ¦  «        S )Nc              3   ó4   K  — | ]}t          |¦  «        V — Œd S r   ©Ú_normalize_args©r   r)   s     r   r   z"_normalize_args.<locals>.<genexpr>  s*   è è € Ð=Ð=°•_ UÑ+Ô+Ð=Ð=Ð=Ð=Ð=Ð=r   c              3   ó4   K  — | ]}t          |¦  «        V — Œd S r   rj   rl   s     r   r   z"_normalize_args.<locals>.<genexpr>  s*   è è € ÐAÐA°E�¨Ñ/Ô/ÐAÐAÐAÐAÐAÐAr   )	r+   rE   r@   rA   ÚSequencere   ÚSetrU   Ú	normalize)rg   s    r   rk   rk      sŽ   € Ý�#•sÑÔð Øˆ
Ý�#•{”Ô/Ñ0Ô0ð >ÝÐ=Ð=¸Ð=Ñ=Ô=Ñ=Ô=Ð=Ý�#•{”Ô*Ñ+Ô+ð BÝÐAÐA¸SÐAÑAÔAÑAÔAÐAÝ�S‰>Œ>Ðr   c                 ó.  — t          | ¦  «        }t          | ¦  «        }|st          t          | ¦  «        ¦  «        S t          |¦  «        }t	          |¦  «        rt          t          |¦  «        ¦  «        }nt          |¦  «        }t          ||¦  «        S )z4
    convert types to NormalizedType instances.
    )r=   r0   rQ   r.   r   rk   rU   )r)   rS   rR   s      r   rp   rp   
  sŠ   € õ �E‰?Œ?€DÝ˜ÑÔ€FØð 9ÝÕ0°Ñ7Ô7Ñ8Ô8Ð8Ý Ñ'Ô'€Få�ÑÔð %Ý�y¨™œÑ/Ô/ˆˆå˜tÑ$Ô$ˆÝ˜& $Ñ'Ô'Ð'r   ÚleftÚrightc                 ó*  — | |u rdS | �| t           v r|t           |          k    rdS t          | d¦  «        r |                      ¦   «         D ]}||k    r dS Œt          | t          ¦  «        r%t          |t          ¦  «        rt          | |¦  «        S | |k    S )NTÚmro)r   r2   ru   r+   ÚtypeÚ
issubclass)rr   rs   Úparents      r   Ú_is_origin_subtypery     s·   € Øˆu€}€}Øˆtð 	ÐØÕ*Ð*Ð*ØÕ+¨DÔ1Ò1Ð1àˆtåˆt�UÑÔð Ø—h’h‘j”jð 	ð 	ˆFØ˜ŠˆØ�t�tð õ �$�ÑÔð '¥*¨UµDÑ"9Ô"9ð 'Ý˜$ Ñ&Ô&Ð&à�5Š=Ðr   .ÚNormalizedTypeArgsrM   c                 ó*  ‡‡— t          | t          ¦  «        r<t          ‰t          ¦  «        sdS | ‰z
  }|sdS t          ˆˆfd„|D ¦   «         ¦  «        S t          | t          j        j        ¦  «        rãt          | t          ¦  «        sÎt          ‰t          j        j        ¦  «        rt          ‰t          ¦  «        rdS | rF| d         j        t          ur2‰r0‰d         j        t          u rt          ˆˆfd„| D ¦   «         ¦  «        S t          | ¦  «        t          ‰¦  «        k    rdS t          ˆfd„t          j        | ‰¦  «        D ¦   «         ¦  «        S t          | t          ¦  «        sJ ‚t          ‰t          ¦  «        sJ ‚t          | ‰‰¦  «        S )NFTc              3   óR   •‡K  — | ] Št          ˆˆfd „‰D ¦   «         ¦  «        V — Œ!dS )c              3   ó:   •K  — | ]}t          ‰|‰¦  «        V — Œd S r   ©Ú_is_normal_subtype)r   Úrr   rM   s     €€r   r   z4_is_origin_subtype_args.<locals>.<genexpr>.<genexpr>H  s0   øè è € ÐFÐF¸1Õ" 1 a¨Ñ6Ô6ÐFÐFÐFÐFÐFÐFr   N)r"   )r   r   rM   rs   s    @€€r   r   z*_is_origin_subtype_args.<locals>.<genexpr>G  sU   øøè è € ð 
ð 
ØKL�CÐFÐFÐFÐFÐFÀÐFÑFÔFÑFÔFð
ð 
ð 
ð 
ð 
ð 
r   r>   c              3   óF   •K  — | ]}t          |‰d          ‰¦  «        V — ŒdS )r   N©Ú_is_origin_subtype_args)r   ÚlrM   rs   s     €€r   r   z*_is_origin_subtype_args.<locals>.<genexpr>Z  s4   øè è € ÐXÐXÈaÕ.¨q°%¸´(¸LÑIÔIÐXÐXÐXÐXÐXÐXr   c              3   óP   •K  — | ] \  }}|d uo|d uot          ||‰¦  «        V — Œ!d S r   r‚   )r   r„   r€   rM   s      €r   r   z*_is_origin_subtype_args.<locals>.<genexpr>_  sa   øè è € ð 
ð 
ñ ��1ð �TˆMð <Ø˜�ð<å'¨¨1¨lÑ;Ô;ð
ð 
ð 
ð 
ð 
ð 
r   )r+   rU   r   r@   rA   rn   rQ   rR   rC   ÚlenÚ	itertoolsÚzip_longestr   )rr   rs   rM   Úexcludeds    `` r   rƒ   rƒ   8  së  øø€ õ
 �$�	Ñ"Ô"ð 
Ý˜%¥Ñ+Ô+ð 	Ø�5à˜%‘<ˆØð 	à�4õ ð 
ð 
ð 
ð 
ð 
ØPXð
ñ 
ô 
ñ 
ô 
ð 	
õ �$�œÔ0Ñ1Ô1ð 
½*Ø�nñ;ô ;ð 
õ ˜%¥¤Ô!9Ñ:Ô:ð 	½jØ•>ñ?
ô ?
ð 	ð �5ð ð	Yà�R””¥xÐ/Ð/Øð 0à�b”	Ô ¥HÐ,Ð,õ ÐXÐXÐXÐXÐXÐSWÐXÑXÔXÑXÔXÐXåˆt‰9Œ9�˜E™
œ
Ò"Ð"Ø�5åð 
ð 
ð 
ð 
õ "Ô-¨d°EÑ:Ô:ð	
ñ 
ô 
ñ 
ô 
ð 	
õ �d�NÑ+Ô+Ð+Ð+Ð+Ý�e�^Ñ,Ô,Ð,Ð,Ð,å˜d E¨<Ñ8Ô8Ð8r   c                 ó’  ‡ ‡‡— t          ‰ j        t          ¦  «        r#t          t	          ‰ j        ‰¬¦  «        ¦  «        Š t          ‰j        t          ¦  «        r#t          t	          ‰j        ‰¬¦  «        ¦  «        Š‰j        t
          j        u rdS t          ‰j        ¦  «        r/t          ‰ j        ¦  «        rt          ‰ j	        ‰j	        ‰¦  «        S t          ‰j        ¦  «        r!t          ˆˆ fd„‰j	        D ¦   «         ¦  «        S t          ‰ j        ¦  «        r!t          ˆˆfd„‰ j	        D ¦   «         ¦  «        S ‰j        t          u rI‰ j        t          urdS t          ‰ j	        ¦  «                             t          ‰j	        ¦  «        ¦  «        S t          ‰ j        t
          j        ¦  «        r‘t          ‰j        t
          j        ¦  «        rr‰ j        ‰j        u rdS t!          ‰ j        dd ¦  «        }t!          ‰j        dd ¦  «        }|�|€t"          S t%          t          |¦  «        t          |¦  «        ‰¦  «        S t          ‰j        t
          j        ¦  «        rt"          S t          ‰ j        t
          j        ¦  «        r=t!          ‰ j        dd ¦  «        }|€t"          S t%          t          |¦  «        ‰‰¦  «        S ‰ j	        s!‰j	        st'          ‰ j        ‰j        ¦  «        S ‰j	        st'          ‰ j        ‰j        ¦  «        S t'          ‰ j        ‰j        ¦  «        rt          ‰ j	        ‰j	        ‰¦  «        S dS )N)rM   Tc              3   ó:   •K  — | ]}t          ‰|‰¦  «        V — Œd S r   r~   )r   ÚarM   rr   s     €€r   r   z%_is_normal_subtype.<locals>.<genexpr>  sA   øè è € ð 
ð 
Ø:;Õ˜t Q¨Ñ5Ô5ð
ð 
ð 
ð 
ð 
ð 
r   c              3   ó:   •K  — | ]}t          |‰‰¦  «        V — Œd S r   r~   )r   rŒ   rM   rs   s     €€r   r   z%_is_normal_subtype.<locals>.<genexpr>ƒ  sA   øè è € ð 
ð 
Ø;<Õ˜q %¨Ñ6Ô6ð
ð 
ð 
ð 
ð 
ð 
r   FÚ	__bound__)r+   rR   r   rp   rO   r   rF   r   rƒ   rS   r#   r   r   ÚsetÚissubsetr,   r3   r   r   ry   )rr   rs   rM   Ú
left_boundÚright_bounds   ```  r   r   r   l  s1  øøø€ õ
 �$”+�zÑ*Ô*ð SÝÕ)¨$¬+ÀLÐQÑQÔQÑRÔRˆå�%”,¥
Ñ+Ô+ð UÝÕ*¨5¬<ÀlÐSÑSÔSÑTÔTˆð „|•v”zÐ!Ð!Øˆtõ �”ÑÔð L¥(¨4¬;Ñ"7Ô"7ð LÝ& t¤y°%´*¸lÑKÔKÐKÝ�”ÑÔð 
Ýð 
ð 
ð 
ð 
ð 
Ø?D¼zð
ñ 
ô 
ñ 
ô 
ð 	
õ �”ÑÔð 
Ýð 
ð 
ð 
ð 
ð 
Ø@DÄ	ð
ñ 
ô 
ñ 
ô 
ð 	
ð
 „|•wÐÐØŒ;�gÐ%Ð%Ø�5Ý�4”9‰~Œ~×&Ò&¥s¨5¬:¡¤Ñ7Ô7Ð7õ �$”+�vœ~Ñ.Ô.ð 
µ:ØŒ•f”nñ4ô 4ð 
ð Œ;˜%œ,Ð&Ð&Ø�4å˜Tœ[¨+°tÑ<Ô<ˆ
Ý˜eœl¨K¸Ñ>Ô>ˆØÐ *Ð"4ÝˆNÝ!Ý�jÑ!Ô!¥9¨[Ñ#9Ô#9¸<ñ
ô 
ð 	
õ �%”,¥¤Ñ/Ô/ð ÝˆÝ�$”+�vœ~Ñ.Ô.ð NÝ˜Tœ[¨+°tÑ<Ô<ˆ
ØÐÝˆNÝ!¥)¨JÑ"7Ô"7¸ÀÑMÔMÐMàŒ9ð =˜UœZð =Ý! $¤+¨u¬|Ñ<Ô<Ð<àŒ:ð =Ý! $¤+¨u¬|Ñ<Ô<Ð<å˜$œ+ u¤|Ñ4Ô4ð LÝ& t¤y°%´*¸lÑKÔKÐKàˆ5r   c                 óX   — t          t          | ¦  «        t          |¦  «        |¦  «        S )a†  Check that the left argument is a subtype of the right.
    For unions, check if the type arguments of the left is a subset of the right.
    Also works for nested types including ForwardRefs.

    Examples:

    ```python
        from typing_utils import issubtype

        issubtype(typing.List, typing.Any) == True
        issubtype(list, list) == True
        issubtype(list, typing.List) == True
        issubtype(list, typing.Sequence) == True
        issubtype(typing.List[int], list) == True
        issubtype(typing.List[typing.List], list) == True
        issubtype(list, typing.List[int]) == False
        issubtype(list, typing.Union[typing.Tuple, typing.Set]) == False
        issubtype(typing.List[typing.List], typing.List[typing.Sequence]) == True
        JSON = typing.Union[
            int, float, bool, str, None, typing.Sequence["JSON"],
            typing.Mapping[str, "JSON"]
        ]
        issubtype(str, JSON, forward_refs={'JSON': JSON}) == True
        issubtype(typing.Dict[str, str], JSON, forward_refs={'JSON': JSON}) == True
        issubtype(typing.Dict[str, bytes], JSON, forward_refs={'JSON': JSON}) == False
    ```
    )r   rp   )rr   rs   rM   s      r   Ú	issubtyper”   ¯  s%   € õ@ �i¨™oœo­y¸Ñ/?Ô/?ÀÑNÔNÐNr   )r”   r0   r=   Úget_type_hintsr   )Irb   Úcollections.abcr@   Úior‡   Útypesr   r2   r3   r   rK   r   r   r   r   r4   rD   ro   r�   ÚDictr9   ÚTuplere   Ú
ByteStringÚbytesrB   rA   rn   rv   r-   ÚTextIOWrapperÚTextIOÚ
TextIOBaseÚStringIOÚBufferedReaderÚBinaryIOÚBufferedWriterÚBytesIOr   rc   rd   ÚobjectÚboolr   ÚOptionalr   r#   r(   r•   r5   r   r8   Ú
OriginTypeÚAbstractSetÚTypeArgsr.   r0   r=   rO   Ú
NamedTuplerQ   rk   rp   ry   rF   Ú	FrozenSetrz   ÚMappingrE   rƒ   r   r”   Ú__all__r   r   r   ú<module>r¯      sB  ððð ð ð Ð Ð Ð Ø 	€	€	€	Ø Ð Ð Ð Ø €€€Ø €€€à
€7ˆ6�<Ñ Ô ð  Ø�˜ Ñ.Ô.€J€JØ€WˆV�]Ñ#Ô#ð  Ø�˜ Ñ/Ô/€J€Jà
Ð
Ñ
Ô
Ðà
€7ˆ6�9ÑÔð Øˆg�f˜iÑ(Ô(€G€Gà€Gà
€7ˆ6Ð#Ñ$Ô$ð Ø�W˜VÐ%5Ñ6Ô6€N€Nà€Nà
€7ˆ5�+ÑÔð Ø�˜˜{Ñ+Ô+€I€Ià€Ià
€ð „K�Ø
„J�Ø
„K�Ø
„L�%Ø
Ô�uØ
„O�[”_Ô-Ø
„O�[”_Ô-Ø€Dˆ�J„J�ð	Ð ð Ô�f”mØ„M�6”=Ø„K�”ØÔ�v”ØÔ�v”Ø„J�”ð:Ð ˜œ D¨&¬+Ð$5Ô6ð ð ñ ð ð 'ð?˜&ð ? Tð ?ð ?ð ?ð ?ð ?ð
'˜&ð ' Tð 'ð 'ð 'ð 'ð˜fœo¨dÔ3ð ð ð ð ð˜fœo¨dÔ3ð ð ð ð ðð ð ð Ô&€àˆt�F”KÑ Ô €ØˆT�&”,ÑÔ€
à„|�D˜$Ð 0Ð0Ô1€ØŒ\˜$ ˜*Ô%€
ØŒ<˜˜fÔ0°Ô6¸¼ÈÔ8MÐMÔN€ð˜dð  tð ð ð ð ð,#ð ,#ð ,#ð^%&�v”|ð %&ð %&ð %&ð %&ðP ð  ð  ð  ð".ð .ð .ð .ð .�VÔ&ñ .ô .ð .ð<˜ð ð ð ð ð(�Tð (˜nð (ð (ð (ð (ð"˜Zð °
ð ¸tð ð ð ð ð, ”\Ø
„L�”˜S�Ô!Ø
Ô�^Ô$ØðôÐ ð19Ø
ð19àð19ð ”/ &¤.°°d°Ô";Ô<ð19ð „_�TÔð	19ð 19ð 19ð 19ðh@Ø
ð@àð@ð ”/ &¤.°°d°Ô";Ô<ð@ð „_�TÔð	@ð @ð @ð @ðL +/ð Oð  OØ
ð Oàð Oð ”/ $Ô'ð Oð „_�TÔð	 Oð  Oð  Oð  OðFð ð €€€r   