ó
    Ð]jrD  ã                  óB  • S SK Jr  S SKrS SKJr  S SKJrJr  S SKJ	r	  \R                  (       a  S SKJr  S SKJr   " S S	\5      rS
S/r\R                   " S5      r\R                   " S5      r\R                   " S5      r\R(                  S\R*                  \\4   \R.                  \\\4      S	4   r " S S\5      r    SS jr " S S
\R8                  \\4   \R:                  \\4   5      r " S S\\\\4      5      r  " S S\R:                  \\4   5      r!g)é    )ÚannotationsN)ÚOrderedDict)ÚEnumÚauto)ÚRLock)ÚProtocol)ÚSelfc                  ó(   • \ rS rSrSS jrSS jrSrg)ÚHasGettableStringKeysé   c                ó   • g ©N© ©Úselfs    ÚQ/home/mande/repo/quber/.venv/lib/python3.13/site-packages/urllib3/_collections.pyÚkeysÚHasGettableStringKeys.keys   ó   € °ó    c                ó   • g r   r   ©r   Úkeys     r   Ú__getitem__Ú!HasGettableStringKeys.__getitem__   r   r   r   N©Úreturnztyping.Iterator[str]©r   Ústrr   r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   Ú__static_attributes__r   r   r   r   r      s   † Ü3ç3r   r   ÚRecentlyUsedContainerÚHTTPHeaderDictÚ_KTÚ_VTÚ_DTc                  ó"   • \ rS rSr\" 5       rSrg)Ú	_Sentinelé'   r   N)r    r!   r"   r#   r   Ú
not_passedr$   r   r   r   r+   r+   '   s	   † Ù“ƒJr   r+   c                óö  • [        U [        5      (       a  U $ [        U [        R                  5      (       a2  [        R                  " [        R                  [
        [
        4   U 5      $ [        U [        R                  5      (       a9  [        R                  " [        R                  [        [
        [
        4      U 5      $ [        U S5      (       a(  [        U S5      (       a  [        R                  " SU 5      $ g )Nr   r   r   )	Ú
isinstancer&   ÚtypingÚMappingÚcastr   ÚIterableÚtupleÚhasattr)Ú	potentials    r   Ú%ensure_can_construct_http_header_dictr7   +   s«   € ô �)œ^×,Ñ,ØÐÜ	�IœvŸ~™~×	.Ñ	.ô �{Š{œ6Ÿ>™>¬#¬s¨(Ñ3°YÓ?Ð?Ü	�IœvŸ™×	/Ñ	/ô �{Š{œ6Ÿ?™?¬5´´c°©?Ñ;¸YÓGÐGÜ	�˜F×	#Ñ	#¬°	¸=×(IÑ(IÜ�{Š{Ð2°IÓ>Ð>àr   c                  ó²   ^ • \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'     S     SU 4S jjjrSS jrSS jrSS jr	SS jr
SS jrSS jrSS jrSrU =r$ )r%   é?   am  
Provides a thread-safe dict-like container which maintains up to
``maxsize`` keys while throwing away the least-recently-used keys beyond
``maxsize``.

:param maxsize:
    Maximum number of recent elements to retain.

:param dispose_func:
    Every time an item is evicted from the container,
    ``dispose_func(value)`` is called.  Callback which will get called
ztyping.OrderedDict[_KT, _VT]Ú
_containerÚintÚ_maxsizeú#typing.Callable[[_VT], None] | NoneÚdispose_funcr   Úlockc                óv   >• [         TU ]  5         Xl        X l        [	        5       U l        [        5       U l        g r   )ÚsuperÚ__init__r<   r>   r   r:   r   r?   )r   Úmaxsizer>   Ú	__class__s      €r   rB   ÚRecentlyUsedContainer.__init__R   s-   ø€ ô
 	‰ÑÔØŒØ(ÔÜ%›-ˆŒÜ“Gˆ�	r   c                ó¦   • U R                      U R                  R                  U5      nX R                  U'   UsS S S 5        $ ! , (       d  f       g = fr   )r?   r:   Úpop)r   r   Úitems      r   r   Ú!RecentlyUsedContainer.__getitem__]   s6   € à�Y‹YØ—?‘?×&Ñ& sÓ+ˆDØ#'�O‰O˜CÑ Ø÷ �Y�Yús   �+AÁ
Ac                ó´  • S nU R                       XR                  R                  U5      4nX R                  U'   S S S 5        Ub(  U R                  (       a  Uu  pEU R                  U5        g g g ! [         aM    X R                  U'   [	        U R                  5      U R
                  :”  a  U R                  R                  SS9n NŠf = f! , (       d  f       N”= f)NF)Úlast)r?   r:   rG   ÚKeyErrorÚlenr<   Úpopitemr>   )r   r   ÚvalueÚevicted_itemÚ_Úevicted_values         r   Ú__setitem__Ú!RecentlyUsedContainer.__setitem__d   sÄ   € ØˆØ�Y‹YðGð  #§O¡O×$7Ñ$7¸Ó$<Ð<�Ø',—‘ Ñ$÷ ð& Ñ#¨×(9×(9Ø+ÑˆAØ×Ñ˜mÕ,ð ):Ð#øô ó Gð (-—‘ Ñ$Ü�t—‘Ó'¨$¯-©-Ó7ð $(§?¡?×#:Ñ#:ÀÐ#:Ð#F�LùðGú÷ �Yús)   �C	‘*A/Á/ACÃC	ÃCÃC	Ã	
Cc                óÌ   • U R                      U R                  R                  U5      nS S S 5        U R                  (       a  U R                  W5        g g ! , (       d  f       N2= fr   )r?   r:   rG   r>   )r   r   rO   s      r   Ú__delitem__Ú!RecentlyUsedContainer.__delitem__}   sH   € Ø�Y‹YØ—O‘O×'Ñ'¨Ó,ˆE÷ ð ××Ø×Ñ˜eÕ$ð ÷ �Yús   �AÁ
A#c                óz   • U R                      [        U R                  5      sS S S 5        $ ! , (       d  f       g = fr   )r?   rM   r:   r   s    r   Ú__len__ÚRecentlyUsedContainer.__len__„   s   € Ø�Y‹YÜ�t—‘Ó'÷ �Y�Yús   �,¬
:c                ó   • [        S5      e)Nz7Iteration over this class is unlikely to be threadsafe.)ÚNotImplementedErrorr   s    r   Ú__iter__ÚRecentlyUsedContainer.__iter__ˆ   s   € Ü!ØEó
ð 	
r   c                ó"  • U R                      [        U R                  R                  5       5      nU R                  R	                  5         S S S 5        U R
                  (       a  W H  nU R                  U5        M     g g ! , (       d  f       N;= fr   )r?   Úlistr:   ÚvaluesÚclearr>   )r   ra   rO   s      r   rb   ÚRecentlyUsedContainer.clear�   se   € Ø�Y‹Yä˜$Ÿ/™/×0Ñ0Ó2Ó3ˆFØ�O‰O×!Ñ!Ô#÷ ð
 ××Û�Ø×!Ñ! %Ö(ò  ð ÷ �Yús   �>B Â 
Bc                ó–   • U R                      [        U R                  R                  5       5      sS S S 5        $ ! , (       d  f       g = fr   )r?   Úsetr:   r   r   s    r   r   ÚRecentlyUsedContainer.keys—   s(   € Ø�Y‹YÜ�t—‘×+Ñ+Ó-Ó.÷ �Y�Yús	   �#:º
A)r:   r<   r>   r?   )é
   N)rC   r;   r>   r=   r   ÚNone)r   r'   r   r(   )r   r'   rO   r(   r   rh   )r   r'   r   rh   ©r   r;   )r   ztyping.NoReturn)r   rh   )r   zset[_KT])r    r!   r"   r#   Ú__doc__Ú__annotations__rB   r   rS   rV   rY   r]   rb   r   r$   Ú__classcell__©rD   s   @r   r%   r%   ?   sv   ø‡ ñð -Ó,ØƒMØ5Ó5Ø
ƒKð Ø<@ð	àð	ð :ð	ð 
÷		ð 	ôô-ô2%ô(ô
ô
)÷/ò /r   c                  óL   • \ rS rSr% SrS\S'   SS jrSS jrSS jrSS jr	S	r
g
)ÚHTTPHeaderDictItemViewéœ   a;  
HTTPHeaderDict is unusual for a Mapping[str, str] in that it has two modes of
address.

If we directly try to get an item with a particular name, we will get a string
back that is the concatenated version of all the values:

>>> d['X-Header-Name']
'Value1, Value2, Value3'

However, if we iterate over an HTTPHeaderDict's items, we will optionally combine
these values based on whether combine=True was called when building up the dictionary

>>> d = HTTPHeaderDict({"A": "1", "B": "foo"})
>>> d.add("A", "2", combine=True)
>>> d.add("B", "bar")
>>> list(d.items())
[
    ('A', '1, 2'),
    ('B', 'foo'),
    ('B', 'bar'),
]

This class conforms to the interface required by the MutableMapping ABC while
also giving us the nonstandard iteration behavior we want; items with duplicate
keys, ordered by time of first insertion.
r&   Ú_headersc                ó   • Xl         g r   ©rq   )r   Úheaderss     r   rB   ÚHTTPHeaderDictItemView.__init__»   s   € Ø�r   c                óZ   • [        [        U R                  R                  5       5      5      $ r   )rM   r`   rq   Ú	iteritemsr   s    r   rY   ÚHTTPHeaderDictItemView.__len__¾   s   € Ü”4˜Ÿ™×/Ñ/Ó1Ó2Ó3Ð3r   c                ó6   • U R                   R                  5       $ r   )rq   rw   r   s    r   r]   ÚHTTPHeaderDictItemView.__iter__Á   s   € Ø�}‰}×&Ñ&Ó(Ð(r   c                óÞ   • [        U[        5      (       aX  [        U5      S:X  aI  Uu  p#[        U[        5      (       a0  [        U[        5      (       a  U R                  R                  X#5      $ g)Né   F)r/   r4   rM   r   rq   Ú_has_value_for_header)r   rH   Ú
passed_keyÚ
passed_vals       r   Ú__contains__Ú#HTTPHeaderDictItemView.__contains__Ä   sR   € Ü�dœE×"Ñ"¤s¨4£y°A£~Ø%)Ñ"ˆJÜ˜*¤c×*Ñ*¬z¸*Äc×/JÑ/JØ—}‘}×:Ñ:¸:ÓRÐRØr   rs   N)rt   r&   r   rh   ri   ©r   z typing.Iterator[tuple[str, str]])rH   Úobjectr   Úbool)r    r!   r"   r#   rj   rk   rB   rY   r]   r€   r$   r   r   r   ro   ro   œ   s#   ‡ ñð8 Óô ô4ô)÷r   ro   c                  óÆ  ^ • \ rS rSr% SrS\S'   S#S$U 4S jjjrS%S jrS&S jrS'S jr	S(S	 jr
S)S*U 4S
 jjjrS+S jrS+S jrS,S jrS-S jrS'S jrSS.S.S jjrS/S jr\R(                  S0S j5       r\R(                  S1S j5       r\R.                  4     S2S jjrS3S jr\r\r\r\rS4S jrS5S jrS3S jrS6S jr S6S jr!S7S jr"S8S jr#S9S jr$S:S  jr%S:S! jr&S"r'U =r($ );r&   éÌ   a  
:param headers:
    An iterable of field-value pairs. Must not contain multiple field names
    when compared case-insensitively.

:param kwargs:
    Additional field-value pairs to pass in to ``dict.update``.

A ``dict`` like container for storing HTTP Headers.

Field names are stored and compared case-insensitively in compliance with
RFC 7230. Iteration provides the first case-sensitive key seen for each
case-insensitive pair.

Using ``__setitem__`` syntax overwrites fields that compare equal
case-insensitively in order to maintain ``dict``'s api. For fields that
compare equal, instead create a new ``HTTPHeaderDict`` and use ``.add``
in a loop.

If multiple fields that are equal case-insensitively are passed to the
constructor or ``.update``, the behavior is undefined and some will be
lost.

>>> headers = HTTPHeaderDict()
>>> headers.add('Set-Cookie', 'foo=bar')
>>> headers.add('set-cookie', 'baz=quxx')
>>> headers['content-length'] = '7'
>>> headers['SET-cookie']
'foo=bar, baz=quxx'
>>> headers['Content-Length']
'7'
z%typing.MutableMapping[str, list[str]]r:   c                óØ   >• [         TU ]  5         0 U l        Ub8  [        U[        5      (       a  U R                  U5        OU R                  U5        U(       a  U R                  U5        g g r   )rA   rB   r:   r/   r&   Ú
_copy_fromÚextend)r   rt   ÚkwargsrD   s      €r   rB   ÚHTTPHeaderDict.__init__ð   sT   ø€ Ü‰ÑÔØˆŒØÑÜ˜'¤>×2Ñ2Ø—‘ Õ(à—‘˜GÔ$ÞØ�K‰K˜Õð r   c                óŒ   • [        U[        5      (       a  UR                  S5      nX/U R                  UR	                  5       '   g ©Núlatin-1©r/   ÚbytesÚdecoder:   Úlower©r   r   Úvals      r   rS   ÚHTTPHeaderDict.__setitem__û   s3   € ä�cœ5×!Ñ!Ø—*‘*˜YÓ'ˆCØ(+ zˆ�‰˜Ÿ	™	›Ò$r   c                ó°   • [        U[        5      (       a  UR                  S5      nU R                  UR	                  5          nSR                  USS  5      $ )NrŽ   ú, é   )r/   r�   r‘   r:   r’   Újoinr“   s      r   r   ÚHTTPHeaderDict.__getitem__  sF   € Ü�cœ5×!Ñ!Ø—*‘*˜YÓ'ˆCØ�o‰o˜cŸi™i›kÑ*ˆØ�y‰y˜˜Q˜R˜Ó!Ð!r   c                ó†   • [        U[        5      (       a  UR                  S5      nU R                  UR	                  5       	 g r�   r�   r   s     r   rV   ÚHTTPHeaderDict.__delitem__  s/   € Ü�cœ5×!Ñ!Ø—*‘*˜YÓ'ˆCØ�O‰O˜CŸI™I›KÑ(r   c                ó´   • [        U[        5      (       a  UR                  S5      n[        U[        5      (       a  UR	                  5       U R
                  ;   $ g)NrŽ   F)r/   r�   r‘   r   r’   r:   r   s     r   r€   ÚHTTPHeaderDict.__contains__  sB   € Ü�cœ5×!Ñ!Ø—*‘*˜YÓ'ˆCÜ�cœ3×ÑØ—9‘9“; $§/¡/Ñ1Ð1Ør   c                ó"   >• [         TU ]  X5      $ r   )rA   Ú
setdefault)r   r   ÚdefaultrD   s      €r   r    ÚHTTPHeaderDict.setdefault  s   ø€ Ü‰wÑ! #Ó/Ð/r   c                ó,  • [        U5      nUc  g[        U 5      " U5      nU R                  5        VVs0 s H  u  pEUR                  5       U_M     snnUR                  5        VVs0 s H  u  pEUR                  5       U_M     snn:H  $ s  snnf s  snnf )NF)r7   ÚtypeÚ
itermergedr’   )r   ÚotherÚmaybe_constructableÚother_as_http_header_dictÚkÚvs         r   Ú__eq__ÚHTTPHeaderDict.__eq__  s�   € ÜCÀEÓJÐØÑ&Øä(,¨T¬
Ð3FÓ(GÐ%à)-¯©Ô):Ô;Ò):¡ �—‘“	˜1’Ñ):Ò;Ø%>×%IÑ%IÔ%Kô@
Ú%K™T˜QˆA�G‰G‹I�qŠLÑ%Kò@
ñ 
ð 	
ùÓ;ùó @
s   ´B
Á'Bc                ó.   • U R                  U5      (       + $ r   )r«   )r   r¦   s     r   Ú__ne__ÚHTTPHeaderDict.__ne__!  s   € Ø—;‘;˜uÓ%Ô%Ð%r   c                ó,   • [        U R                  5      $ r   )rM   r:   r   s    r   rY   ÚHTTPHeaderDict.__len__$  s   € Ü�4—?‘?Ó#Ð#r   c              #  ó\   #   • U R                   R                  5        H
  nUS   v •  M     g 7f)Nr   )r:   ra   )r   Úvalss     r   r]   ÚHTTPHeaderDict.__iter__'  s%   é € à—O‘O×*Ñ*Ö,ˆDØ�q‘'ŒMò -ùs   ‚*,c                ó*   •  X	 g ! [          a     g f = fr   )rL   r   s     r   ÚdiscardÚHTTPHeaderDict.discard,  s   € ð	Ø‘	øÜó 	Ùð	ús   ‚ …
‘F)Úcombinec               ó&  • [        U[        5      (       a  UR                  S5      nUR                  5       nX/nU R                  R                  XE5      nXVLa9  [        U5      S:¼  d   eU(       a  US   S-   U-   US'   gUR                  U5        gg)a�  Adds a (name, value) pair, doesn't overwrite the value if it already
exists.

If this is called with combine=True, instead of adding a new header value
as a distinct item during iteration, this will instead append the value to
any existing header value with a comma. If no existing header value exists
for the key, then the value will simply be added, ignoring the combine parameter.

>>> headers = HTTPHeaderDict(foo='bar')
>>> headers.add('Foo', 'baz')
>>> headers['foo']
'bar, baz'
>>> list(headers.items())
[('foo', 'bar'), ('foo', 'baz')]
>>> headers.add('foo', 'quz', combine=True)
>>> list(headers.items())
[('foo', 'bar, baz, quz')]
rŽ   r|   éÿÿÿÿr—   N)r/   r�   r‘   r’   r:   r    rM   Úappend)r   r   r”   r¸   Ú	key_lowerÚnew_valsr³   s          r   ÚaddÚHTTPHeaderDict.add2  s‡   € ô( �cœ5×!Ñ!Ø—*‘*˜YÓ'ˆCØ—I‘I“Kˆ	Ø�:ˆà�‰×)Ñ)¨)Ó>ˆØÒô �t“9 “>Ð!�>ÞØ ™8 d™?¨SÑ0��R’à—‘˜CÕ ð  r   c                óø  • [        U5      S:”  a  [        S[        U5       S35      e[        U5      S:¼  a  US   OSn[        U[        5      (       a+  UR	                  5        H  u  pEU R                  XE5        M     OÓ[        U[        R                  5      (       a+  UR                  5        H  u  pEU R                  XE5        M     O‰[        U[        R                  5      (       a  U H  u  pFU R                  XF5        M     OM[        US5      (       a<  [        US5      (       a+  UR                  5        H  nU R                  XCU   5        M     UR                  5        H  u  pFU R                  XF5        M     g)	z¨Generic import function for any type of header-like object.
Adapted version of MutableMapping.update in order to insert items
with self.add instead of self.__setitem__
r˜   z/extend() takes at most 1 positional arguments (z given)r   r   r   r   N)rM   Ú	TypeErrorr/   r&   rw   r¾   r0   r1   Úitemsr3   r5   r   )r   ÚargsrŠ   r¦   r   r”   rO   s          r   r‰   ÚHTTPHeaderDict.extendU  s"  € ô
 ˆt‹9�q‹=ÜØAÄ#ÀdÃ)ÀÈGÐTóð ô ˜t›9¨›>��Q’¨rˆä�eœ^×,Ñ,Ø!ŸO™OÖ-‘�Ø—‘˜Ö"ò .ä˜œvŸ~™~×.Ñ.Ø!ŸK™KžM‘�Ø—‘˜Ö"ò *ä˜œvŸ™×/Ñ/Û#‘
�Ø—‘˜Ö$ò $ä�U˜F×#Ñ#¬°°}×(EÑ(Eð —z‘z–|�Ø—‘˜ C™jÖ)ñ $ð !Ÿ,™,ž.‰JˆCØ�H‰H�SÖ ò )r   c                ó   • g r   r   r   s     r   ÚgetlistÚHTTPHeaderDict.getlistu  s   € Ø.1r   c                ó   • g r   r   )r   r   r¡   s      r   rÆ   rÇ   x  s   € ØBEr   c                óæ   • [        U[        5      (       a  UR                  S5      n U R                  UR	                  5          nUSS $ ! [
         a    U[        R                  L a  / s $ Us $ f = f)zeReturns a list of all the values for the named field. Returns an
empty list if the key doesn't exist.rŽ   r˜   N)r/   r�   r‘   r:   r’   rL   r+   r-   )r   r   r¡   r³   s       r   rÆ   rÇ   {  sn   € ô
 �cœ5×!Ñ!Ø—*‘*˜YÓ'ˆCð	Ø—?‘? 3§9¡9£;Ñ/ˆDð ˜˜�8ˆOøô ó 	Øœ)×.Ñ.Ò.à’	àŠNð	ús   ¨A
 Á
A0Á+A0Á/A0c                óB   • / SQnU H  nU R                  U5        M     U $ )z~
Remove content-specific header fields before changing the request
method to GET or HEAD according to RFC 9110, Section 15.4.
)zContent-EncodingzContent-LanguagezContent-LocationzContent-TypezContent-LengthÚDigestzLast-Modified)r¶   )r   Úcontent_specific_headersÚheaders      r   Ú_prepare_for_method_changeÚ)HTTPHeaderDict._prepare_for_method_change�  s'   € ò
$
Ð ó /ˆFØ�L‰L˜Ö ñ /àˆr   c                óf   • [        U 5      R                   S[        U R                  5       5       S3$ )NÚ(Ú))r¤   r    Údictr¥   r   s    r   Ú__repr__ÚHTTPHeaderDict.__repr__©  s-   € Ü�t“*×%Ñ%Ð& a¬¨T¯_©_Ó->Ó(?Ð'@ÀÐBÐBr   c                óx   • U H4  nUR                  U5      nU/UQU R                  UR                  5       '   M6     g r   )rÆ   r:   r’   )r   r¦   r   r”   s       r   rˆ   ÚHTTPHeaderDict._copy_from¬  s4   € ÛˆCØ—-‘- Ó$ˆCØ,/¨;°#¨;ˆD�O‰O˜CŸI™I›KÓ(ò r   c                óH   • [        U 5      " 5       nUR                  U 5        U$ r   )r¤   rˆ   )r   Úclones     r   ÚcopyÚHTTPHeaderDict.copy±  s    € Ü�T”
“ˆØ×Ñ˜ÔØˆr   c              #  ó‚   #   • U  H5  nU R                   UR                  5          nUSS  H  nUS   U4v •  M     M7     g7f)z8Iterate over all header lines, including duplicate ones.r˜   Nr   ©r:   r’   )r   r   r³   r”   s       r   rw   ÚHTTPHeaderDict.iteritems¶  sA   é € ãˆCØ—?‘? 3§9¡9£;Ñ/ˆDØ˜A˜B“x�Ø˜1‘g˜s�lÔ"ó  ò ùs   ‚=?c              #  óŽ   #   • U  H;  nU R                   UR                  5          nUS   SR                  USS 5      4v •  M=     g7f)z:Iterate over all headers, merging duplicate ones together.r   r—   r˜   N)r:   r’   r™   r“   s      r   r¥   ÚHTTPHeaderDict.itermerged½  sA   é € ãˆCØ—/‘/ #§)¡)£+Ñ.ˆCØ�a‘&˜$Ÿ)™) C¨¨ GÓ,Ð,Ô,ò ùs   ‚AAc                ó   • [        U 5      $ r   )ro   r   s    r   rÂ   ÚHTTPHeaderDict.itemsÃ  s   € Ü% dÓ+Ð+r   c                óR   • X;   a"  X R                   UR                  5          SS  ;   $ g)Nr˜   FrÝ   )r   Úheader_nameÚpotential_values      r   r}   Ú$HTTPHeaderDict._has_value_for_headerÆ  s-   € ØÓØ"§o¡o°k×6GÑ6GÓ6IÑ&JÈ1È2Ð&NÑNÐNØr   c                óP   • [        U5      nUc  [        $ U R                  U5        U $ r   )r7   ÚNotImplementedr‰   )r   r¦   r§   s      r   Ú__ior__ÚHTTPHeaderDict.__ior__Ë  s.   € ô DÀEÓJÐØÑ&Ü!Ð!Ø�‰Ð'Ô(Øˆr   c                óp   • [        U5      nUc  [        $ U R                  5       nUR                  U5        U$ r   )r7   rè   rÚ   r‰   ©r   r¦   r§   Úresults       r   Ú__or__ÚHTTPHeaderDict.__or__Ô  s9   € ô DÀEÓJÐØÑ&Ü!Ð!Ø—‘“ˆØ�‰Ð)Ô*Øˆr   c                ór   • [        U5      nUc  [        $ [        U 5      " U5      nUR                  U 5        U$ r   )r7   rè   r¤   r‰   rì   s       r   Ú__ror__ÚHTTPHeaderDict.__ror__Þ  s<   € ô DÀEÓJÐØÑ&Ü!Ð!Ü�d”Ð/Ó0ˆØ�‰�dÔØˆr   )r:   r   )rt   úValidHTTPHeaderSource | NonerŠ   r   )r   r   r”   r   r   rh   r   )r   r   r   rh   )r   rƒ   r   r„   )Ú )r   r   r¡   r   r   r   )r¦   rƒ   r   r„   ri   r   )r   r   r”   r   r¸   r„   r   rh   )rÃ   ÚValidHTTPHeaderSourcerŠ   r   r   rh   )r   r   r   z	list[str])r   r   r¡   r)   r   úlist[str] | _DT)r   r   r¡   z_Sentinel | _DTr   rö   )r   r	   )r   r   )r¦   r&   r   rh   r‚   )r   ro   )rä   r   rå   r   r   r„   )r¦   rƒ   r   r&   )r¦   rƒ   r   r	   ))r    r!   r"   r#   rj   rk   rB   rS   r   rV   r€   r    r«   r®   rY   r]   r¶   r¾   r‰   r0   ÚoverloadrÆ   r+   r-   rÎ   Ú
getheadersÚgetallmatchingheadersÚigetÚget_allrÔ   rˆ   rÚ   rw   r¥   rÂ   r}   ré   rî   rñ   r$   rl   rm   s   @r   r&   r&   Ì   s  ø‡ ñðB 6Ó5÷	 ñ 	 ô2ô"ô)ô
÷0ñ 0ô	
ô&ô$ôô
ð :?÷ !!ôF!ð@ ‡_�_Û1ó Ø1à‡_�_ÛEó ØEð 4=×3GÑ3GðØðØ!0ðà	õô(ð& €JØ#ÐØ€Dð €GôCô7ô
ô
#ô-ô,ôô
ô÷ò r   )r6   rƒ   r   ró   )"Ú
__future__r   r0   Úcollectionsr   Úenumr   r   Ú	threadingr   ÚTYPE_CHECKINGr   Útyping_extensionsr	   r   Ú__all__ÚTypeVarr'   r(   r)   ÚUnionr1   r   r3   r4   rõ   r+   r7   ÚGenericÚMutableMappingr%   re   ro   r&   r   r   r   Ú<module>r     s.  ðÝ "ã Ý #ß Ý à	××õ  å&ô4 ô 4ð #Ð$4Ð
5€ð ‡n‚n�UÓ€à‡n‚n�UÓ€à‡n‚n�UÓ€àŸ™ØØ
‡N�N�3˜�8ÑØ
‡O�O�E˜#˜s˜(‘OÑ$ØðñÐ ô�ô ðØðà!ôô(Z/˜FŸN™N¨3°¨8Ñ4°f×6KÑ6KÈCÐQTÈHÑ6Uô Z/ôz-˜S  s¨C x¡Ñ1ô -ô`Z�V×*Ñ*¨3°¨8Ñ4õ Zr   