+
    ÃHàj~›  ã                   óˆ  a € R tN0 t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	t	^ RI
t
^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIHtHtHtHt ^ RIHtHtHt ^ RIHt ^ RIHtHt ^ RIH t  ^RI!H"t"H#t#H$t$H%t% ^R	I&H't'H(t( ^R
I)H*t* ^RI+H,t, ^RI-H.t.H/t/H0t0 Rt1]]2R3,          t3]4]2]23,          t5]4]2]2]23,          t6]4R]7]63,          t8Rt9] ^ k RPt                  t;RPt                  t<^dt=]! 4       t>^´t?^–t@RtARtB^–tCRtD]E! R4      tF]G! R4      tH ! R R]P’                  4      tJ ! R R]'4      tK ! R R]K4      tL ! R R]'4      tMR# ) é    N)Údefaultdict)ÚIterableÚIteratorÚMappingÚSequence)Ú
BaseCookieÚMorselÚSimpleCookie©ÚMappingProxyType)ÚUnionÚcast©ÚURL)Ú_COOKIE_CTL_REÚ_encoded_lengthÚparse_set_cookie_headersÚ preserve_morsel_with_coded_value)ÚAbstractCookieJarÚClearCookiePredicate)Úis_ip_address)Úinternal_logger)ÚLooseCookiesÚPathLikeÚStrOrURLÚ	CookieJarÚDummyCookieJarúMorsel[str]z{}/{}z{1}.{0}iä  é¸  iþ  s   Cookie: c                   ób   a a€ ] tR t^Dt oRt]! 0 Rm4      tV3R lV 3R lltV3R ltRt	Vt
V ;t# )Ú_RestrictedCookieUnpicklera  A restricted unpickler that only allows cookie-related types.

This prevents arbitrary code execution when loading pickled cookie data
from untrusted sources. Only types that are expected in a serialized
CookieJar are permitted.

Subclasses :class:`pickle._Unpickler` (the pure-Python implementation)
rather than :class:`pickle.Unpickler` because the accelerated unpickler
on some implementations (notably PyPy) does not dispatch through
:meth:`find_class` overrides.

See: https://docs.python.org/3/library/pickle.html#restricting-globals
c                ó,   <€ V ^8„  d   QhRS[ RS[ RS[/# )é   ÚmoduleÚnameÚreturn)ÚstrÚtype)ÚformatÚ__classdict__s   "€Ú“/home/ubuntu/.hermes/installs/5f0a1ff4045d044e/environments/88679baa1dc64374a0cd943b62eeefb9/venv/lib/python3.14/site-packages/aiohttp/cookiejar.pyÚ__annotate__Ú'_RestrictedCookieUnpickler.__annotate__b   s"   ø€ ÷ 0ñ 0¡ð 0©Cð 0±Dñ 0ó    c                ó€   <€ W3V P                   9  d   \        P                  ! R V RV R24      h\        SV `  W4      # )zForbidden class: Ú.z‡. CookieJar.load() only allows cookie-related types for security. See https://docs.python.org/3/library/pickle.html#restricting-globals)Ú_ALLOWED_CLASSESÚpickleÚUnpicklingErrorÚsuperÚ
find_class)Úselfr$   r%   Ú	__class__s   &&&€r+   r5   Ú%_RestrictedCookieUnpickler.find_classb   sQ   ø€ Øˆ> ×!6Ñ!6Ô6Ü×(Ò(Ø# F 8¨1¨T¨Fð 3Xð Xóð ô
 ‰wÑ! &Ó/Ð/r.   c                óL   <€ V ^8„  d   Qh/ S[ S[S[S[3,          ,          ;R&   # )r#   r1   ©Ú	frozensetÚtupler'   )r)   r*   s   "€r+   r,   r-   D   s!   ø‡ ‚ ñ  ¡¡c©3 h¥Õ0ñ ò r.   © >   ©ÚbuiltinsÚset©r?   Údict©r?   r<   ©r?   r;   ©Úcollectionsr   ©úhttp.cookiesr	   ©rH   r
   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r;   r1   r5   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r7   r*   s   @@r+   r!   r!   D   s-   ù‡ € ññ 4=ò	
ó4Ð÷0ó 0÷= … r.   r!   c                   ó  a a€ ] tR t^lt oRtRt]P                  ! R4      t]P                  ! R4      t	]P                  ! R4      t
]P                  ! R]P                  4      t]P                  ! R4      t]! ]P                  P                   P#                  ]P$                  P&                  R7      P)                  4       4      ^,
          t ]P.                  ! ]P2                  ! ]4      4       ]^,
          tR	R
RRRRRR/V3R lV 3R lllt]V3R lR l4       t]V3R lR l4       t ]V3R lR l4       t!]V3R lR l4       t"]V3R lR l4       t#V3R lR lt$V3R lR lt%V3R lR  lt&V3R! lR" lt'V3R# lR$ lt(RRV3R% lR& llt)V3R' lR( lt*V3R) lR* lt+V3R+ lR, lt,V3R- lR. lt-V3R/ lR0 lt.V3R1 lR2 lt/V3R3 lR4 lt0V3R5 lR6 lt1]2! 4       3V3R7 lR8 llt3V3R9 lR: lt4R;RR<R/V3R= lR> llt5]2! 4       3V3R? lR@ llt6V3RA lRB lt7]8V3RC lRD l4       t9V3RE lRF lt:V3RG lRH lt;V3RI lRJ lt<]8V3RK lRL l4       t=]>V3RM lRN l4       t?ROt@VtAV ;tB#   ] d    ]P.                  ! RP4      t EL‘] d    RQt ELœi ; i)Sr   z/Implements cookie storage adhering to RFC 6265.Tz][\x09\x20-\x2F\x3B-\x40\x5B-\x60\x7B-\x7E]*(?P<token>[\x00-\x08\x0A-\x1F\d:a-zA-Z\x7F-\xFF]+)z(\d{1,2}):(\d{1,2}):(\d{1,2})z	(\d{1,2})zG(jan)|(feb)|(mar)|(apr)|(may)|(jun)|(jul)|(aug)|(sep)|(oct)|(nov)|(dec)z	(\d{2,4}))ÚtzinfoÚunsafeFÚquote_cookieÚtreat_as_secure_originNÚloopc          
      ó†   <€ V ^8„  d   QhRS[ RS[ RS[S[S[,          ,          R,          RS[P                  R,          RR/# )r#   rV   rW   rX   NrY   r&   )Úboolr   r   ÚasyncioÚAbstractEventLoop)r)   r*   s   "€r+   r,   ÚCookieJar.__annotate__’   sY   ø€ ÷ %ñ %ñ ð%ñ ð	%ñ
 !)©8±HÕ+=Õ =ÀÕ Dð%ñ ×'Ñ'¨$Õ.ð%ð 
ñ%r.   c          	     óØ  <€ \         SV `  VR 7       \        \        4      V n        \        \
        4      V n        \        4       V n        Wn	        W n
        Vf   \        4       V n        MÒ\        V\        4      '       d!   \        VP                  4       04      V n        Mœ\        V\         4      '       d*   \        \        V4      P                  4       04      V n        M]\        V Uu0 uFB  p\        V\         4      '       d   \        V4      P                  4       MVP                  4       kKD  	  up4      V n        . V n        / V n        / V n        ^ V n        / V n        ^ V n        R# u upi ©)rY   N)r4   Ú__init__r   r
   Ú_cookiesrB   Ú_morsel_cacher@   Ú_host_only_cookiesÚ_unsafeÚ_quote_cookier;   Ú_treat_as_secure_originÚ
isinstancer   Úoriginr'   Ú_expire_heapÚ_expirationsÚ_access_generationsÚ_next_access_generationÚ_domain_countsÚ_cookie_count)r6   rV   rW   rX   rY   Úurlr7   s   &$$$$ €r+   ra   ÚCookieJar.__init__’   s6  ø€ ô 	‰Ñ˜dÐÔ#Ü<GÌÓ<UˆŒÜLWÜóM
ˆÔô 47³5ˆÔØŒØ)ÔØ!Ò)Ü;D»;ˆDÕ(ÜÐ.´×4Ò4Ü+4Ð6L×6SÑ6SÓ6UÐ5VÓ+WˆDÕ(ÜÐ.´×4Ò4Ü+4ÜÐ+Ó,×3Ñ3Ó5Ð6ó,ˆDÕ(ô ,5ñ  6óá5˜ô *4°C¼×)=Ò)=”C˜“H—O‘OÔ%À3Ç:Á:Ã<ÒOÙ5ñó,ˆDÔ(ð =?ˆÔØ57ˆÔØ:<ˆÔ Ø'(ˆÔ$Ø.0ˆÔØˆÖùòs   Ã'AE'c                ó    <€ V ^8„  d   QhRS[ /# ©r#   r&   ©r[   )r)   r*   s   "€r+   r,   r^   º   s   ø€ ÷ ñ ™ñ r.   c                ó   € V P                   # ©N)re   ©r6   s   &r+   rV   ÚCookieJar.unsafe¹   s   € à�|‰|Ðr.   c                ó    <€ V ^8„  d   QhRS[ /# rs   rt   )r)   r*   s   "€r+   r,   r^   ¾   s   ø€ ÷ "ñ "™dñ "r.   c                ó   € V P                   # rv   )rf   rw   s   &r+   rW   ÚCookieJar.quote_cookie½   s   € à×!Ñ!Ð!r.   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# rs   )r;   r   )r)   r*   s   "€r+   r,   r^   Â   s   ø€ ÷ ,ñ ,©	±#­ñ ,r.   c                ó   € V P                   # )zAReturn origins considered secure even over cleartext connections.)rg   rw   s   &r+   rX   Ú CookieJar.treat_as_secure_originÁ   s   € ð ×+Ñ+Ð+r.   c                óL   <€ V ^8„  d   QhRS[ S[S[S[3,          S[3,          /# rs   ©r   r<   r'   r
   )r)   r*   s   "€r+   r,   r^   Ç   s'   ø€ ÷ /ñ /Ñ)©%±±S°­/¹<Ð*GÕHñ /r.   c                ó,   € \        V P                  4      # )z&Return the cookies stored in this jar.)r   rb   rw   s   &r+   ÚcookiesÚCookieJar.cookiesÆ   s   € ô   §¡Ó.Ð.r.   c                óJ   <€ V ^8„  d   QhRS[ S[S[S[S[3,          ,          /# rs   r:   )r)   r*   s   "€r+   r,   r^   Ì   s$   ø€ ÷ 2ñ 2¡9©U±3¹¹S°=Õ-AÕ#Bñ 2r.   c                ó,   € \        V P                  4      # )z0Return the host-only cookies stored in this jar.)r;   rd   rw   s   &r+   Úhost_only_cookiesÚCookieJar.host_only_cookiesË   s   € ô ˜×0Ñ0Ó1Ð1r.   c                ó$   <€ V ^8„  d   QhRS[ RR/# ©r#   Ú	file_pathr&   N©r   )r)   r*   s   "€r+   r,   r^   Ð   s   ø€ ÷ ()ñ ()™hð ()¨4ñ ()r.   c                ó¬  € \         P                  ! V4      p/ pV P                  P                  4        FÐ  w  w  r4pV RV 2p/ W&&   VP                  4        F©  w  rxRVP                  RVP
                  RVP                  /p	VP                   F&  p
V
\        9   d   K  WŠ,          pV'       g   K"  W¹V
&   K(  	  W4V3V P                  9   d   RV	R&   V P                  P                  W4V34      ;pe   WÉR&   W’V,          V&   K«  	  KÒ  	  \        VR	R
R R7      ;_uu_ 4       p\        P                  ! W-^R7       RRR4       R#   + '       g   i     R# ; i)z Save cookies to a file using JSON format.

:param file_path: Path to file where cookies will be serialized,
    :class:`str` or :class:`pathlib.Path` instance.
Ú|ÚkeyÚvalueÚcoded_valueTÚ	host_onlyNÚexpires_timestampÚwúutf-8c                 ó0   € \         P                  ! WR 4      # )i€  )ÚosÚopen)ÚpathÚflagss   &&r+   Ú<lambda>Ú CookieJar.save.<locals>.<lambda>ö   s   € ¤r§w¢w¨t¸EÔ'Br.   )ÚmodeÚencodingÚopener)Úindent)ÚpathlibÚPathrb   ÚitemsrŽ   r�   r�   Ú	_reservedÚ_RELATIVE_EXPIRY_ATTRSrd   rk   Úgetr—   ÚjsonÚdump)r6   rŠ   ÚdataÚdomainr˜   ÚcookierŽ   r%   ÚmorselÚmorsel_dataÚattrÚattr_valÚexpÚfs   &&            r+   ÚsaveÚCookieJar.saveÐ   sK  € ô —L’L Ó+ˆ	ØDFˆØ&*§m¡m×&9Ñ&9Ö&;Ñ"‰NˆV˜FØ�H˜A˜d˜VÐ$ˆCØˆD‰IØ &§¡¦‘�à˜6Ÿ:™:Ø˜VŸ\™\Ø! 6×#5Ñ#5ð>�ð #×,Ô,�DØÔ5Ô5Ù Ø%�|�Hß‘xØ,4 DÓ)ñ -ð  $Ð'¨4×+BÑ+BÔBØ/3�K Ñ,Ø×,Ñ,×0Ñ0°&ÀÐ1EÓFÐF�CÒSØ7:Ð 3Ñ4Ø"-�S•	˜$“ó% !/ñ '<ô4 ØØØÙB÷	
õ 
ð
 Ü�IŠI�d aÕ(÷
÷ 
÷ 
ò 
ús   ÄEÅE	c                ó$   <€ V ^8„  d   QhRS[ RR/# r‰   r‹   )r)   r*   s   "€r+   r,   r^   ú   s   ø€ ÷  'ñ  '™hð  '¨4ñ  'r.   c                ó
  € \         P                  ! V4      p VP                  RRR7      ;_uu_ 4       p\        P                  ! V4      pRRR4       V P                  X4       R#   + '       g   i     L#; i  \        P                  \        \        3 d     Mi ; iTP                  RR7      ;_uu_ 4       p\        T4      P	                  4       pRRR4       M  + '       g   i     M; iT P                  4       pXP                  4        F`  w  w  rgpT'       d   \        P                  ! RTR7      M	\        4       p	TP                  4        F  w  r«TP                  Y«/T	R	R
7       K  	  Kb  	  T P                  T4       R# )aá  Load cookies from a file.

Tries to load JSON format first. Falls back to loading legacy
pickle format (using a restricted unpickler) for backward
compatibility with existing cookie files.

Replaces the current jar contents; loaded cookies pass through the
same acceptance rules as :meth:`update_cookies`. A malformed file
raises and leaves the jar unchanged.

:param file_path: Path to file from where cookies will be
    imported, :class:`str` or :class:`pathlib.Path` instance.
Úrr”   )rœ   r�   NÚrb)rœ   Úhttps©ÚschemeÚhostF©Úcopy_morsels)r    r¡   r—   r¦   ÚloadÚ_load_json_dataÚJSONDecodeErrorÚUnicodeDecodeErrorÚ
ValueErrorr!   Ú_new_loading_jarr¢   r   ÚbuildÚ_update_cookiesÚ_replace_contents)r6   rŠ   r°   r¨   ÚpickledÚloadedr©   Ú_r‚   Úresponse_urlr%   r«   s   &&          r+   r½   ÚCookieJar.loadú   s'  € ô —L’L Ó+ˆ	ð	Ø—‘ S°7�×;Ô;¸qÜ—y’y “|�÷ <ð
 × Ñ  Ô&Ù÷ <×;ûä×$Ñ$Ô&8¼*ÐEô 	Ùð	úð �^‰^ ˆ^×&Ô&¨!Ü0°Ó3×8Ñ8Ó:ˆG÷ '×&×&Ð&úà×&Ñ&Ó(ˆØ$+§M¡M¦OÑ ‰KˆV˜ßEKœ3Ÿ9š9¨G¸&ÕAÔQTÓQVˆLØ '§¡¦‘�Ø×&Ñ&¨ ~°|ÐRWÐ&ÖXó !0ñ %4ð 	×Ñ˜vÖ&s4   ˜A8 ³A%Á
A8 Á%A5	Á0A8 Á8 BÂBÂ8CÃC+	c                ó   <€ V ^8„  d   QhRR/# )r#   r&   r   r=   )r)   r*   s   "€r+   r,   r^     s   ø€ ÷ 
ñ 
 +ñ 
r.   c                óp   € \        V P                  V P                  V P                  V P                  R 7      # ))rV   rW   rX   rY   )r   re   rf   rg   Ú_looprw   s   &r+   rÂ   ÚCookieJar._new_loading_jar  s/   € ÜØ—<‘<Ø×+Ñ+Ø#'×#?Ñ#?Ø—‘ô	
ð 	
r.   c                ó"   <€ V ^8„  d   QhRRRR/# )r#   rÇ   r   r&   Nr=   )r)   r*   s   "€r+   r,   r^   $  s   ø€ ÷  ñ  ¨ð  ¸ñ  r.   c                óÊ   € V P                   pVP                  4        VP                  VP                   4       V P                  P                  VP                  4       W n         R # rv   )rb   ÚclearÚupdateÚ__dict__)r6   rÇ   r‚   s   && r+   rÅ   ÚCookieJar._replace_contents$  s?   € à—-‘-ˆØ�‰ŒØ�‰�v—‘Ô'Ø�‰×Ñ˜VŸ_™_Ô-ØŽr.   c          	      ó†   <€ V ^8„  d   QhRS[ S[S[ S[S[ S[S[S[,          S[,          3,          3,          3,          RR/# )r#   r¨   r&   N)rB   r'   r[   Úfloat)r)   r*   s   "€r+   r,   r^   ,  sD   ø€ ÷ 3'ñ 3'Ù™™d¡3©©S±#¹µ*¹uÕ2DÐ-DÕ(EÐ#EÕFÐFÕGð3'à	ñ3'r.   c                óX  € V P                  4       pVP                  4        EF@  w  r4VP                  R^4      w  rVVP                  4        EF  w  rxRp	VP                  R4      ;p
e5    \	        V
4      p	\
        P                  ! V	4      '       g   \        V	4      h \        4       pVP                  RVR,          RVR,          R	VR	,          /4       VP                   F  pWØ9   g   K  VR9  g   K  W�,          WÍ&   K   	  VP                  R
4      '       d   RVR&   V'       d   \        P                  ! RVR7      M	\        4       pVP                  W|/VRV	R7       EK  	  EKC  	  V P!                  V4       R#   \        \        \        3 d   p\        RT: RT: R24      ThRp?ii ; i)z<Replace contents, routing cookies through _update_cookies().r�   Nr’   zCookie z in z.: expiration timestamp must be a finite numberrŽ   r�   r�   r‘   Ú r©   r·   r¸   F)r¼   Ú
expiration)rŽ   r�   r�   )rÂ   r¢   Úsplitr¥   rÖ   ÚmathÚisfiniterÁ   ÚOverflowErrorÚ	TypeErrorr	   Ú__setstate__r£   r   rÃ   rÄ   rÅ   )r6   r¨   rÇ   Úcompound_keyÚcookie_datar©   r˜   r%   r¬   rÙ   Úraw_expirationÚexcr«   r­   rÉ   s   &&             r+   r¾   ÚCookieJar._load_json_data,  s³  € ð ×&Ñ&Ó(ˆØ)-¯©¯Ñ%ˆLØ'×-Ñ-¨c°1Ó5‰LˆFØ%0×%6Ñ%6×%8Ñ!�Ø+/�
Ø&1§o¡oÐ6IÓ&JÐJ�NÒWð#Ü%*¨>Ó%:˜
Ü#Ÿ}š}¨Z×8Ò8Ü",¨ZÓ"8Ð8ð  9ô '-£h�ð ×#Ñ#à˜{¨5Õ1Ø ¨WÕ!5Ø% {°=Õ'Aðôð #×,Ô,�DØÖ*¨tð <ö 0ð
 (3Õ'8˜›ñ -ð —?‘? ;×/Ò/Ø')�F˜8Ñ$ç>D”C—I’I W°6Õ:Ì#Ë%ð ð ×&Ñ&Ø�NØ Ø!&Ø)ð	 '÷ ôI &9ñ *6ðX 	×Ñ˜vÖ&øôG *¬9´jÐAô #Ü(Ø% d¡X¨T°,Ñ1Að BKð Kóð  #ð#ûð#ús   Á)2E9Å9F)ÆF$Æ$F)c                ó2   <€ V ^8„  d   QhRS[ R,          RR/# ©r#   Ú	predicateNr&   ©r   )r)   r*   s   "€r+   r,   r^   a  s!   ø€ ÷ )ñ )Ñ3°dÕ:ð )Àdñ )r.   c                ó  € VfÀ   V P                   P                  4        V P                  P                  4        V P                  P                  4        V P                  P                  4        V P
                  P                  4        V P                  P                  4        V P                  P                  4        ^ V n        R # \        P                  ! 4       pV P                  P                  4        UUUUUu. uF_  w  w  r4pVP                  4        FC  w  rgW4V3;q€P
                  9   d   V P
                  V,          V8:  g   V! V4      '       g   KA  VNKE  	  Ka  	  p	pppppV	'       d   V P                  V	4       R # R # u upppppi rv   )rj   rÑ   rb   rc   rd   rk   rl   rn   ro   Útimer¢   Ú_delete_cookies)
r6   rç   Únowr©   r˜   rª   r%   r«   rŽ   Úto_dels
   &&        r+   rÑ   ÚCookieJar.cleara  s5  € ØÒØ×Ñ×#Ñ#Ô%Ø�M‰M×ÑÔ!Ø×Ñ×$Ñ$Ô&Ø×#Ñ#×)Ñ)Ô+Ø×Ñ×#Ñ#Ô%Ø×$Ñ$×*Ñ*Ô,Ø×Ñ×%Ñ%Ô'Ø!"ˆDÔÙä�iŠi‹kˆð +/¯-©-×*=Ñ*=Ô*?÷	
á*?Ñ&‘� Ø &§¡¦‘�à tÐ,Ð,�×1BÑ1BÔBØ×%Ñ% cÕ*¨cÔ1á˜× ÷ ˆCá .ñ Ù*?ð 	ô 	
÷ Ø× Ñ  Ö(ñ ùö	
s   Ã9AFÅ
Fc                ó$   <€ V ^8„  d   QhRS[ RR/# ©r#   r©   r&   N©r'   )r)   r*   s   "€r+   r,   r^   {  s   ø€ ÷ Iñ I¡3ð I¨4ñ Ir.   c                ó6   a a€ S P                  VV 3R  l4       R# )c                 ó6   <€ SP                  SV R ,          4      # )r©   )Ú_is_domain_match)Úxr©   r6   s   &€€r+   rš   Ú(CookieJar.clear_domain.<locals>.<lambda>|  s   ø€ ˜T×2Ñ2°6¸1¸X½;ÔGr.   N)rÑ   ©r6   r©   s   ffr+   Úclear_domainÚCookieJar.clear_domain{  s   ù€ Ø�
‰
ÕGÖHr.   c                ó   <€ V ^8„  d   QhRR/# ©r#   r&   zIterator[Morsel[str]]r=   )r)   r*   s   "€r+   r,   r^   ~  s   ø€ ÷ $ñ $Ð1ñ $r.   c              #  ó¤   "  € V P                  4        V P                  P                  4        F  pVP                  4        R j  x€L
  K  	  R #  L
5irv   )Ú_do_expirationrb   Úvalues)r6   Úvals   & r+   Ú__iter__ÚCookieJar.__iter__~  s:   é € Ø×ÑÔØ—=‘=×'Ñ'Ö)ˆCØ—z‘z“|×#Ò#ó *Ù#ùs   ‚AAÁAÁAc                ó    <€ V ^8„  d   QhRS[ /# rs   ©Úint)r)   r*   s   "€r+   r,   r^   ƒ  s   ø€ ÷ "ñ "™ñ "r.   c                ó   € V P                   # )zgReturn number of cookies.

This function does not iterate self to avoid unnecessary expiration
checks.
)ro   rw   s   &r+   Ú__len__ÚCookieJar.__len__ƒ  s   € ð ×!Ñ!Ð!r.   c                ó   <€ V ^8„  d   QhRR/# ©r#   r&   Nr=   )r)   r*   s   "€r+   r,   r^   ‹  s   ø€ ÷ ))ñ )) ñ ))r.   c                óò  € \        V P                  4      ;p'       g   R# V\        8”  d“   V\        V P                  4      ^,          8”  dr   V P                   Uu. uF5  pV P                  P	                  V^,          4      V^ ,          8X  g   K3  VNK7  	  upV n        \
        P                  ! V P                  4       \        P                  ! 4       p. pV P                  '       dr   V P                  ^ ,          w  rVWS8”  d   MU\
        P                  ! V P                  4       V P                  P	                  V4      V8X  g   Kp  VP                  V4       Kƒ  V'       d   V P                  V4       R# R# u upi )zRemove expired cookies.N)Úlenrj   Ú _MIN_SCHEDULED_COOKIE_EXPIRATIONrk   r¥   ÚheapqÚheapifyrê   ÚheappopÚappendrë   )r6   Úexpire_heap_lenÚentryrì   rí   ÚwhenÚ
cookie_keys   &      r+   rý   ÚCookieJar._do_expiration‹  s(  € ä#& t×'8Ñ'8Ó#9Ð9�Ö9Ùð Ô>Ô>Ø¤# d×&7Ñ&7Ó"8¸1Õ"<Ô<ð "×.Ò.ó!á.�EØ×$Ñ$×(Ñ(¨¨q­Ó2°e¸AµhÑ>÷ �Ù.ñ!ˆDÔô
 �MŠM˜$×+Ñ+Ô,ä�iŠi‹kˆØ#%ˆà××ÐØ#×0Ñ0°Õ3ÑˆDØŒzØÜ�MŠM˜$×+Ñ+Ô,ð
 × Ñ ×$Ñ$ ZÓ0°DÖ8Ø—‘˜jÖ)çØ× Ñ  Ö(ñ ùò-!s   Á0E4ÂE4c                ó4   <€ V ^8„  d   QhRS[ S[,          RR/# )r#   rí   r&   N)ÚlistÚ
_CookieKey)r)   r*   s   "€r+   r,   r^   ¶  s    ø€ ÷ ;ñ ;¡d©:Õ&6ð ;¸4ñ ;r.   c                ó   € V EFF  w  r#pW#V3pW#3pV P                   P                  V4       V P                  P                  V4      ;pe�   VP	                  VR 4      eX   V ;P
                  ^,          un        V P                  V,          ^,
          ;p'       d   W€P                  V&   MV P                  V V'       g   V P                  V V P                  P                  V4      ;p	e(   V	P	                  VR 4       V	'       g   V P                  V V P                  P	                  VR 4       V P                  P	                  VR 4       EKI  	  R # rv   )
rd   Údiscardrb   r¥   Úpopro   rn   rc   rk   rl   )
r6   rí   r©   r˜   r%   r  Újar_keyr‚   Údomain_countÚmorselss
   &&        r+   rë   ÚCookieJar._delete_cookies¶  s  € Ü"(ÑˆF˜$Ø ¨Ð-ˆJØ�nˆGØ×#Ñ#×+Ñ+¨JÔ7ØŸ=™=×,Ñ,¨WÓ5Ð5�ÒBØ—;‘;˜t TÓ*Ò6Ø×&Ò&¨!Õ+Õ&Ø'+×':Ñ':¸6Õ'BÀQÕ'FÐF�|ÖFØ6B×+Ñ+¨FÒ3à ×/Ñ/°Ð7ßØŸ™ gÐ.Ø×-Ñ-×1Ñ1°'Ó:Ð:�ÒGØ—‘˜D $Ô'ßØ×*Ñ*¨7Ð3Ø×Ñ×!Ñ! *¨dÔ3Ø×$Ñ$×(Ñ(¨°T×:ó% #)r.   c                ó,   <€ V ^8„  d   QhRS[ RS[RS[/# )r#   r©   Úsecurer&   ©r'   r[   )r)   r*   s   "€r+   r,   r^   Ë  s"   ø€ ÷ 'ñ '¡ð '©dð '±tñ 'r.   c                ó:  € V P                   P                  V^ 4      \        8¼  Ed_   V P                  4        V P                   P                  V^ 4      pV\        ,
          ^,           ;p^ 8:  d   R# . p. pV P
                  P                  4        Fm  w  w  rxp	Wq8w  d   K  V	P                  4        FI  w  r«WV
3pV P                  P                  V^ 4      V3pVR,          '       d   TMTP                  V4       KK  	  Ko  	  T;p'       g   V\        8  d   R# V'       g   R# TpVP                  4        VRV pT P                  V UUu. uF  w  ppVNK
  	  upp4       \        P                  ! R\        V4      V\        4       R# V P                  4        R# u uppi )zìEvict for a new cookie like Firefox; False drops the new cookie.

Mirrors AddCookie and FindStaleCookies: expired, then non-secure,
cookies go first, least recently used first; secure cookies are only
evicted for another secure cookie.
Tr!  FNz;Evicted %d cookie(s) for %s over the %d-cookie domain limit)rn   r¥   Ú_MAX_COOKIES_PER_DOMAINrý   Ú_COOKIE_QUOTA_PER_DOMAINrb   r¢   rl   r  Úsortrë   r   Údebugr  Ú_purge_cookies)r6   r©   r!  ÚcountÚexcessÚ
non_secureÚsecure_keysÚcookie_domainr˜   r‚   r%   rª   r  r  Ú
candidatesÚevictedrÈ   rŽ   s   &&&               r+   Ú
_make_roomÚCookieJar._make_roomË  sy  € ð ×Ñ×"Ñ" 6¨1Ó-Ô1HÕHØ×ÑÔ!Ø×'Ñ'×+Ñ+¨F°AÓ6ˆEàÔ":Õ:¸QÕ>Ð>�À1ÔDÙØ79ˆJØ8:ˆKØ26·-±-×2EÑ2EÖ2GÑ.Ñ%� wØ Ô*ÙØ$+§M¡M¦O‘L�DØ"(°Ð!5�JØ!×5Ñ5×9Ñ9¸*ÀaÓHÈ*ÐU�EØ$*¨8×$4Ô$4‘[¸*×LÑLÈUÖSó %4ñ 3Hð #-Ð,�JÖ,ØÔ2Ô2ÙßÙ Ø(�
Ø�O‰OÔØ   &Ð)ˆGØ× Ñ ±GÔ!<±G©&¨!¨S£#±GÒ!<Ô=Ü×!Ò!ØMÜ�G“ØÜ'ô	ñ ð ×ÑÔ!Ùùó "=s   ÅF
c                ó   <€ V ^8„  d   QhRR/# r	  r=   )r)   r*   s   "€r+   r,   r^   ô  s   ø€ ÷ 
ñ 
 ñ 
r.   c                ó  € V P                  4        V P                  \        ,
          ;p^ 8:  d   R# V P                  pV P	                  \        W"P                  R7      RV 4       \        P                  ! RV\        4       R# )zCEvict expired, then least recently used, cookies down to the total.N)rŽ   z3Evicted %d cookie(s) over the %d-cookie total limit)
rý   ro   Ú_COOKIE_QUOTA_TOTALrl   rë   ÚsortedÚ__getitem__r   r'  Ú_MAX_COOKIES_TOTAL)r6   r*  Úgenerationss   &  r+   r(  ÚCookieJar._purge_cookiesô  sl   € à×ÑÔØ×(Ñ(Ô+>Õ>Ð>ˆFÀ1ÔDÙØ×.Ñ.ˆØ×ÑœV K×5LÑ5LÔMÈgÈvÐVÔWÜ×ÒØAØÜö	
r.   c          
      ó6   <€ V ^8„  d   QhRS[ RS[RS[RS[RR/# )r#   r  r©   r˜   r%   r&   N)rÖ   r'   )r)   r*   s   "€r+   r,   r^     s1   ø€ ÷ -ñ -¡5ð -±#ð -¹Sð -Éð -ÐPTñ -r.   c                ó²   € W#V3pV P                   P                  V4      V8X  d   R # \        P                  ! V P                  W34       WP                   V&   R # rv   )rk   r¥   r  Úheappushrj   )r6   r  r©   r˜   r%   r  s   &&&&& r+   Ú_expire_cookieÚCookieJar._expire_cookie  sM   € Ø DÐ)ˆ
Ø×Ñ× Ñ  Ó,°Ô4áÜ�Š�t×(Ñ(¨4Ð*<Ô=Ø(,×Ñ˜*Ó%r.   c                ó*   <€ V ^8„  d   QhRS[ RS[RR/# ©r#   r‚   rÉ   r&   N©r   r   )r)   r*   s   "€r+   r,   r^   	  s(   ø€ ÷ Gñ G¡lð GÁ#ð GÐRVñ Gr.   c                ó,   € V P                  WRR7       R# )zUpdate cookies.Tr»   N)rÄ   ©r6   r‚   rÉ   s   &&&r+   Úupdate_cookiesÚCookieJar.update_cookies	  s   € à×Ñ˜WÀÐÖFr.   c                ó:   <€ V ^8„  d   QhRS[ S[,          RS[RR/# ©r#   ÚheadersrÉ   r&   N©r   r'   r   )r)   r*   s   "€r+   r,   r^     s)   ø€ ÷ ñ Ù¡•}ðÙ47ðà	ñr.   c                óÐ   € VP                   pV P                  '       g   \        V4      '       d   R# V'       d-   \        V4      ;p'       d   V P	                  VVRRR7       R# R# R# )z+Update cookies from raw Set-Cookie headers.NF)r¼   Úcheck_sendable)Úraw_hostre   r   r   rÄ   )r6   rH  rÉ   ÚhostnameÚcookies_to_updates   &&&  r+   Úupdate_cookies_from_headersÚ%CookieJar.update_cookies_from_headers  sb   € ð  ×(Ñ(ˆØ�|�|ˆ|¤¨h× 7Ò 7áßÔ-EÀgÓ-NÐNÐ)ÖNð × Ñ Ø!ØØ"Ø$ð	 !ö ñ	 O‰7r.   rÙ   rK  c                óJ   <€ V ^8„  d   QhRS[ RS[RS[RS[R,          RS[RR/# )r#   r‚   rÉ   r¼   rÙ   NrK  r&   )r   r   r[   rÖ   )r)   r*   s   "€r+   r,   r^      sS   ø€ ÷ Mñ MáðMñ ðMñ
 ðMñ ˜D•LðMñ ðMð 
ñMr.   c               ó8
  € VP                   pV P                  '       g   \        V4      '       d   R # \        V\        4      '       d   VP                  4       pV EF”  w  rx\        V\        4      '       g   \        4       p	W‰V&   W—,          pM"V'       d   \        RVP                  4       4      pVR,          p
V
'       d   V
R,          R8X  d   Rp
VR V
'       d   V
^ ,          R8X  d   V
R,          p
W¨R&   V
'       d"   V'       d   V P                  W¦4      '       g   KÅ  VR,          pV'       d   V^ ,          R8w  dF   VP                  pVP                  R4      '       g   RpMRV^VP                  R4       ,           pW¸R&   VP                  R4      pV
'       g
   Ve   RpTp
MR	pR pVe   TpMŸVR
,          ;p'       d]    \        V4      pV^ 8:  d   RpMx\!        WðP"                  4      p\!        \$        P$                  ! 4       V,           V P"                  4      pM2VR,          ;p'       d"   V P)                  V4      ;p'       d   TpMRVR&   V'       dE   V P*                  '       d3   V P-                  V4      '       g   \.        P0                  ! RVV
4       EKA  W«3pW«V3pV P2                  P5                  V4      pVf   R MVP5                  V4      pVf®   V P*                  '       dœ   V P6                  P5                  V
^ 4      \8        8¼  g   V P:                  \<        8¼  db   Ve   V\$        P$                  ! 4       8”  dD   V P?                  V
\A        VR,          4      4      '       g   \.        P0                  ! RVV
4       EK+  V'       d!   V PB                  PE                  V4       W¨R&   MV PB                  PG                  V4       Ve   V PI                  WÚW·4       M.V PJ                  '       d   V PJ                  PM                  VR 4       VV8w  d”   VfJ   V ;P:                  ^,          un        V P6                  P5                  V
^ 4      ^,           V P6                  V
&   W€P2                  V,          V&   V PN                  P5                  V4      ;pe   VPM                  VR 4       V P*                  '       g   EKb  V ;PP                  ^,          un(        V PP                  V PR                  V&   EK—  	  V PU                  4        R #   \&         d
    RTR
&    ELÉi ; i)Nr   r©   r0   rØ   :é   NNr˜   Ú/TFúmax-ageg        Úexpiresz=Dropped cookie %r for %s: it can't be sent in a Cookie headerr!  z>Dropped cookie %r for %s: its domain is full of Secure cookieséÿÿÿÿ)+rL  re   r   rh   r   r¢   r	   r
   r   Úcopyrô   r˜   Ú
startswithÚrfindÚrstripr  ÚminÚMAX_TIMErê   rÁ   Ú_parse_dateÚ_limits_enabledÚ	_can_sendr   r'  rb   r¥   rn   r$  ro   r7  r0  r[   rd   Úaddr  r=  rk   r  rc   rm   rl   rý   )r6   r‚   rÉ   r¼   rÙ   rK  rM  r%   rª   Útmpr©   r˜   r‘   ÚdeadlineÚmax_ageÚdelta_secondsrV  Úexpire_timerŽ   r  ÚbucketÚstoredr  s   &&&$$$                 r+   rÄ   ÚCookieJar._update_cookies   sA  € ð  ×(Ñ(ˆà�|�|ˆ|¤¨h× 7Ò 7áä�gœw×'Ò'Ø—m‘m“oˆGä#‰LˆDÜ˜f¤f×-Ò-Ü"“n�Ø"�D‘	Ø�‘ßä˜m¨V¯[©[«]Ó;�à˜HÕ%ˆF÷ ˜& �*¨Ô+Ø�Ø˜8Ð$ç˜& �) sÔ*à ��Ø#)�xÑ çŸ(¨4×+@Ñ+@À×+RÒ+Ráà˜&•>ˆDß˜4 �7 cœ>à#×(Ñ(�Ø—‘ s×+Ò+Ø‘Dð   a¨$¯*©*°S«/Ð!:Õ:�DØ!%�v‘Ø—;‘;˜sÓ#ˆDç˜hÒ2Ø �	Ø!‘à!�	à%)ˆHØÒ%à%‘Ø" 9Õ-Ð-�Ö-ð
+Ü$'¨£L�Mà$¨Ô)Ø#&™ô ),¨M¿=¹=Ó(I˜Ü#&¤t§y¢y£{°]Õ'BÀDÇMÁMÓ#R™ð # 9Õ-Ð-�Ö-Ø"&×"2Ñ"2°7Ó";Ð;�;Ö;Ø*‘Hà(*�F˜9Ñ%ç $×"6×"6Ð"6¸t¿~¹~Èf×?UÒ?UÜ×%Ò%ØSØØôò
 à�.ˆCØ ¨Ð-ˆJØ—]‘]×&Ñ& sÓ+ˆFØ#š^‘T°·±¸DÓ1AˆFà’Ø×(×(Ð(à×'Ñ'×+Ñ+¨F°AÓ6Ô:QÔQØ×)Ñ)Ô-?Ô?ð Ò%¨´D·I²I³KÔ)?ØŸ™¨´°V¸HÕ5EÓ0F×GÒGä×%Ò%ØTØØôò
 çØ×'Ñ'×+Ñ+¨JÔ7Ø#)�xÒ ð ×'Ñ'×/Ñ/°
Ô;ØÒ#Ø×#Ñ# H°dÕAØ×"×"Ð"à×!Ñ!×%Ñ% j°$Ô7à˜Ôð ’>Ø×&Ò&¨!Õ+Õ&Ø26×2EÑ2E×2IÑ2IÈ&ÐRSÓ2TÐWXÕ2X�D×'Ñ'¨Ñ/Ø+1—‘˜cÕ" 4Ñ(Ø#×1Ñ1×5Ñ5°cÓ:Ð:�GÒGØ—K‘K  dÔ+Ø×#×#Ó#à×,Ò,°Õ1Õ,Ø7;×7SÑ7S�×(Ñ(¨Ô4ñs $ðv 	×ÑÖøôE "ô +Ø(*�F˜9Ô%ð+ús   ÇTÇATÔTÔTc                ó$   <€ V ^8„  d   QhRS[ RR/# ©r#   Úrequest_urlr&   úBaseCookie[str]r   )r)   r*   s   "€r+   r,   r^   ¯  s    ø€ ÷ añ a©#ð aÐ:Kñ ar.   c           
     ó 	  € \        4       pV P                  '       g   V# V P                  4        V P                  '       g   V# \        V4      \        Jd5   \
        P                  ! R\        V4       2\        ^R7       \	        V4      pVP                  ;'       g    RpVP                  R9  pV'       df   V P                  '       dT   \	        4       p\        P                  ! \        4      ;_uu_ 4        VP                  4       pRRR4       WPP                  9  p/ pRpWpP                  9   d†   V P                  V,          pV P                  V,          P!                  4        FM  w  ršV'       d   V
R,          '       d   K  VP#                  V	4      ;pf   V P%                  WyV
4      ;q¸V	&   W¶V	&   KO  	  \'        V4      '       g5   \(        P*                  ! \-        VP/                  R4      4      \0        4      pMV P2                  '       d   V3pMRp\(        P*                  ! VP4                  P/                  R4      \6        4      p\(        P8                  ! WÍ4      p\;        VP4                  4      pV Fø  pVR8X  g   VV P                  9  d   K  V P                  V,          pV P                  V,          P!                  4        F£  w  ršV
R,          pVV8w  d   VV	3,           V P<                  9   d   K0  \;        V
R	,          4      V8”  d   KI  V'       d   V
R,          '       d   Kb  VP#                  V	4      ;pf   V P%                  VWš4      ;q¸V	&   VP?                  V	R4       W¶V	&   K¥  	  Kú  	  V P@                  '       d±   \B        ^,
          ^\;        V4      ,          ,           pV\E        R
 VPG                  4        4       4      ,          p\;        V4      \H        8”  g   V\J        8”  d   V PM                  Wc4      # T PO                  VPG                  4        Uu. uF  q»^,          NK  	  up4       \P        PS                  Y&P!                  4        U	Uu/ uF  w  r›W›^ ,          bK  	  upp	4       V#   + '       g   i     ELt; iu upi u upp	i )z8Returns this jar's cookies filtered by their attributes.zQfilter_cookies expects yarl.URL instances only,and will stop working in 4.x, got )Ú
stacklevelrØ   Nr!  r0   rT  r©   r˜   c              3   ó2   "  € T F  q^,          x € K  	  R# 5i)rS  Nr=   )Ú.0r  s   & r+   Ú	<genexpr>Ú+CookieJar.filter_cookies.<locals>.<genexpr>  s   é € Ð IÑ7H¨e q§¢Ó7Hùs   ‚)r·   Úwss)rØ   rØ   r=   )*r   rb   rý   r(   r   ÚwarningsÚwarnÚDeprecationWarningrL  r¹   rg   Ú
contextlibÚsuppressrÁ   ri   rc   r¢   r¥   Ú_morsel_entryr   Ú	itertoolsÚ
accumulateÚreversedrÚ   Ú_FORMAT_DOMAIN_REVERSEDre   r˜   Ú_FORMAT_PATHÚproductr  rd   r  r_  Ú_COOKIE_HEADER_PREFIX_LENGTHÚsumrþ   Ú_MAX_COOKIES_PER_REQUESTÚ_MAX_COOKIE_HEADER_LENGTHÚ_filter_cookies_within_limitsÚ_touch_cookiesrB   rÒ   )r6   rl  ÚfilteredrM  Úis_not_secureÚrequest_originÚselectedrŽ   r  r%   rª   r  ÚdomainsÚpathsÚpairsÚpath_lenÚpr©   Úheader_lengths   &&                 r+   Úfilter_cookiesÚCookieJar.filter_cookies¯  s¯  € ô
 %/£LˆØ�}�}ˆ}àˆOØ×ÑÔØ�}�}ˆ}àˆOÜ�Ó¤CÓ'Ü�MŠMð5Ü59¸+Ó5FÐ4GðIä"Øõ	ô ˜kÓ*ˆKØ×'Ñ'×-Ð-¨2ˆà#×*Ñ*Ð2BÑBˆß˜T×9×9Ð9Ü ›UˆNÜ×$Ò$¤Z×0Õ0Ø!,×!3Ñ!3Ó!5�÷ 1à*×2NÑ2NÑNˆMð -/ˆð ˆØ—-‘-ÔØ×(Ñ(¨Õ-ˆGØ $§¡¨cÕ 2× 8Ñ 8Ö :‘�ß  V¨H×%5Ô%5ÙØ$Ÿ[™[¨Ó.Ð.�EÒ7Ø,0×,>Ñ,>¸sÈ&Ó,QÐQ�E D™MØ!&˜“ñ !;ô ˜X×&Ò&ä%.×%9Ò%9Ü˜Ÿ™¨Ó,Ó-Ô/Fó&‰Gð �\�\ˆ\Ø�k‰GàˆGô ×$Ò$ [×%5Ñ%5×%;Ñ%;¸CÓ%@Ä,ÓOˆä×!Ò! 'Ó1ˆä�{×'Ñ'Ó(ˆãˆAØ�HŒ} ¨¯©Ô 6ÙØ×(Ñ(¨Õ+ˆGØ $§¡¨aÕ 0× 6Ñ 6Ö 8‘�Ø Õ)�à˜XÔ%¨!¨t¨g­+¸×9PÑ9PÔ*PÙô �v˜f•~Ó&¨Ô1Ùç  V¨H×%5Ô%5Ùà$Ÿ[™[¨Ó.Ð.�EÒ7Ø,0×,>Ñ,>¸qÀ$Ó,OÐO�E D™Mð —‘˜T 4Ô(Ø!&˜“ó% !9ñ	 ð0 ××Ðä8¸1Õ<¸qÄ3ÀxÃ=Õ?PÕPˆMØœSÑ I°x·±Ô7HÓ IÓIÕIˆMä�H“Ô 8Ô8Ø Ô#<Ô<à×9Ñ9¸(ÓMÐMØ×Ñ°x·±Ô7HÓ IÑ7H¨e q§ Ñ7HÑ IÔJä�‰�HÇÁÔAQÔRÑAQ±+°$˜t¨1¥Xš~ÑAQÒRÔSØˆ÷O 1×0Ð0üòH !JùãRs   Ã5Q1ÐRÑR
Ñ1R	c                ó@   <€ V ^8„  d   QhRS[ S[S[3,          RS[RR/# )r#   rŠ  rM  r&   rm  )rB   r'   Ú_MorselEntry)r)   r*   s   "€r+   r,   r^     s/   ø€ ÷ ñ Ù™S¡,Ð.Õ/ðÙ;>ðà	ñr.   c                óz  € \         ^,
          p. p\        VP                  4       4       Ff  w  rV\        V4      \        8¼  d    MOV^,           V^,          ,           \
        8”  d   K=  V^V^,          ,           ,          pVP                  WV34       Kh  	  \        4       p\        V4       F"  w  rV\        P                  WuV^ ,          4       K$  	  T P                  V UUu. uF  w  r†V^,          NK  	  upp4       \        P                  ! R\        V4      \        V4      ,
          V\        \
        4       V# u uppi )zBAdmit the most specific cookies first so a host's own cookies win.zNOmitted %d cookie(s) for %s over the %d-cookie or %d-octet Cookie header limit)r�  r}  r¢   r  rƒ  r„  r  r   rB   Ú__setitem__r†  r   r'  )	r6   rŠ  rM  r�  Úadmittedr%   r  r‡  rÈ   s	   &&&      r+   r…  Ú'CookieJar._filter_cookies_within_limits  s  € ô 5°qÕ8ˆØ35ˆÜ# H§N¡NÓ$4Ö5‰KˆDÜ�8‹}Ô 8Ô8ÙØ˜qÕ  5¨¥8Õ+Ô.GÔGÙØ˜Q  q¥�\Õ)ˆMØ�O‰O˜T˜MÖ*ñ 6ô %/£LˆÜ# HÖ-‰KˆDÜ×Ñ˜X¨U°1­XÖ6ñ .à×Ñ±hÔ?±h©(¨!˜U 1ŸX˜X±hÒ?Ô@Ü×Òð/ä�‹MœC ›MÕ)ØÜ$Ü%ô	
ð ˆùó @s   ÃD7
c                ó6   <€ V ^8„  d   QhRS[ S[,          RS[/# ©r#   rª   r&   )r	   r'   r[   )r)   r*   s   "€r+   r,   r^   /  s#   ø€ ÷ Yñ Y™&¡�+ð Y©$ñ Yr.   c                óª   € V P                    RV P                   V P                   2p\        P                  ! V4      RJ ;'       d    \        V4      RJ# )z<Return whether the cookie can be written to a Cookie header.Ú=N)rŽ   r�   r�   r   Úsearchr   )rª   Útexts   & r+   r`  ÚCookieJar._can_send.  sP   € ð
 —*‘*�˜Q˜vŸ|™|˜n¨V×-?Ñ-?Ð,@ÐAˆÜ×$Ò$ TÓ*¨dÐ2×XÐX´ÀtÓ7LÐTXÐ7XÐXr.   c                óB   <€ V ^8„  d   QhRS[ RS[RS[S[,          RS[/# ©r#   r  r%   rª   r&   ©Ú_JarKeyr'   r	   r”  )r)   r*   s   "€r+   r,   r^   6  s1   ø€ ÷ 1ñ 1Ùð1Ù&)ð1Ù39¹#µ;ð1á	ñ1r.   c                óŽ   € V P                  V4      p\        VP                   RVP                   24      pVf   Q hWEW3,           3# )z>Build the morsel to send with its length in the Cookie header.rœ  )Ú_build_morselr   rŽ   r�   )r6   r  r%   rª   r«   Úlengths   &&&&  r+   rz  ÚCookieJar._morsel_entry6  sP   € ð ×#Ñ# FÓ+ˆÜ  F§J¡J <¨q°×1CÑ1CÐ0DÐ!EÓFˆØÒ!Ð!Ð!Ø˜w¨Õ0Ð0Ð0r.   c                ó4   <€ V ^8„  d   QhRS[ S[,          RR/# )r#   Úcookie_keysr&   N)r   r  )r)   r*   s   "€r+   r,   r^   ?  s    ø€ ÷ 1ñ 1©(±:Õ*>ð 1À4ñ 1r.   c                ó‚   € V ;P                   ^,          un         V P                   pV P                  pV F  pW#V&   K	  	  R# )zERecord one access generation for cookies used together, like Firefox.N)rm   rl   )r6   r©  Ú
generationr8  r  s   &&   r+   r†  ÚCookieJar._touch_cookies?  s;   € à×$Ò$¨Õ)Õ$Ø×1Ñ1ˆ
Ø×.Ñ.ˆÛ%ˆJØ&0˜
Ó#ó &r.   c                óF   <€ V ^8„  d   QhRS[ S[,          RS[ S[,          /# rš  )r	   r'   )r)   r*   s   "€r+   r,   r^   G  s#   ø€ ÷ ñ ¡F©3¥Kð ±F¹3µKñ r.   c                ól  € V P                   '       d6   VP                  '       d$   VP                  ^ ,          R8X  d   \        V4      # \        4       pV P                   '       d#   \        P                  VP                  4      w  r4MVP                  ;rCVP                  RVP                  RVRV/4       V# )z<Build a morsel for sending, respecting quote_cookie setting.Ú"rŽ   r�   r�   )	rf   r�   r   r	   Ú_SIMPLE_COOKIEÚvalue_encoder�   rß   rŽ   )r6   rª   r«   r�   r�   s   &&   r+   r¥  ÚCookieJar._build_morselG  s•   € à××Ð &×"4×"4Ð"4¸×9KÑ9KÈAÕ9NÐRUÔ9UÜ3°FÓ;Ð;Ü$›hˆØ××ÐÜ!/×!<Ñ!<¸V¿\¹\Ó!JÑˆE�;à"(§,¡,Ð.ˆKð
 	×Ñ˜U F§J¡J°¸ÀÈ{Ð[Ô\Øˆr.   c                ó,   <€ V ^8„  d   QhRS[ RS[ RS[/# )r#   r©   rM  r&   r"  )r)   r*   s   "€r+   r,   r^   X  s"   ø€ ÷ +ñ +¡ð +±ð +¹ñ +r.   c                ó´   € W8X  d   R# VP                  V 4      '       g   R# VR\        V 4      )  pVP                  R4      '       g   R# \        V4      '       * # )z0Implements domain matching adhering to RFC 6265.TFNr0   )Úendswithr  r   )r©   rM  Únon_matchings   && r+   rô   ÚCookieJar._is_domain_matchW  sU   € ð ÔÙà× Ñ  ×(Ò(Ùà ¤3 v£; ,Ð/ˆà×$Ñ$ S×)Ò)Ùä  Ó*Ô*Ð*r.   c                ó4   <€ V ^8„  d   QhRS[ RS[R,          /# )r#   Údate_strr&   N)r'   r  )r)   r*   s   "€r+   r,   r^   h  s#   ø€ ÷ <Uñ <U¡3ð <U©3°­:ñ <Ur.   c                ó  € V'       g   R# RpRpRpRp^ ;p;rx^ p	^ p
^ pV P                   P                  V4       EF<  pVP                  R4      pV'       gB   V P                  P	                  V4      pV'       d   RpR VP                  4        4       w  rgpK^  V'       gA   V P                  P	                  V4      pV'       d   Rp\        VP                  4       4      p	K¦  V'       gD   V P                  P	                  V4      pV'       d!   RpVP                  f   Q hVP                  p
Kñ  V'       d   Kû  V P                  P	                  V4      pV'       g   EK!  Rp\        VP                  4       4      pEK?  	  ^FTu;8:  d   ^c8:  d   M M
VR,          pM^ Tu;8:  d   ^E8:  d   M M	VR,          pRW4WR39   d   R# ^T	u;8:  d
   ^8:  g    R#  R# VR8  g   V^8”  g   V^;8”  g   V^;8”  d   R# \        P                  ! WºW–WxR	R	R	3	4      # )
z4Implements date string parsing adhering to RFC 6265.NFÚtokenTc              3   ó8   "  € T F  p\        V4      x € K  	  R # 5irv   r  )rq  Úss   & r+   rr  Ú(CookieJar._parse_date.<locals>.<genexpr>~  s   é € Ð+PÑ<O°q¬C°¯F¨FÓ<Oùs   ‚il  iÐ  iA  rW  )ÚDATE_TOKENS_REÚfinditerÚgroupÚDATE_HMS_TIME_REÚmatchÚgroupsÚDATE_DAY_OF_MONTH_REr  ÚDATE_MONTH_REÚ	lastindexÚDATE_YEAR_REÚcalendarÚtimegm)Úclsr¹  Ú
found_timeÚ	found_dayÚfound_monthÚ
found_yearÚhourÚminuteÚsecondÚdayÚmonthÚyearÚtoken_matchr»  Ú
time_matchÚ	day_matchÚmonth_matchÚ
year_matchs   &&                r+   r^  ÚCookieJar._parse_dateg  sÛ  € ÷ Ùàˆ
Øˆ	ØˆØˆ
à!"Ð"ˆÐ"ˆvØˆØˆØˆà×-Ñ-×6Ñ6°x×@ˆKØ×%Ñ% gÓ.ˆEçØ ×1Ñ1×7Ñ7¸Ó>�
ßØ!%�JÙ+P¸J×<MÑ<MÔ<OÓ+PÑ(�D &ÙçØ×4Ñ4×:Ñ:¸5ÓA�	ßØ $�IÜ˜iŸo™oÓ/Ó0�CÙçØ!×/Ñ/×5Ñ5°eÓ<�ßØ"&�KØ&×0Ñ0Ò<Ð<Ð<Ø'×1Ñ1�EÙç‘:Ø ×-Ñ-×3Ñ3°EÓ:�
ß’:Ø!%�JÜ˜z×/Ñ/Ó1Ó2“Dñ; Að> �Ö˜×Ø�D�L‰DØ�$Ž_˜"�_Ø�D�LˆDà�Y¨ZÐDÔDÙà�CŽ~˜2�~Ùð Ùà�$Œ;˜$ œ) v°¤{°f¸r´kÙä�Š ¨S¸ÈÈBÐPRÐSÓTÐTr.   )rl   ro   rb   rn   rk   rj   rd   rc   rm   rf   rg   re   )	r   é   é   é   é;   rß  rW  rW  rW  iÿÿÿrv   )CrJ   rK   rL   rM   rN   r_  ÚreÚcompiler¿  rÂ  rÅ  ÚIrÆ  rÈ  r  ÚdatetimeÚmaxÚreplaceÚtimezoneÚutcÚ	timestampr]  rÉ  rÊ  rê   ÚgmtimeÚOSErrorrÝ   ÚSUB_MAX_TIMEra   ÚpropertyrV   rW   rX   r‚   r†   r±   r½   rÂ   rÅ   r¾   rÑ   rø   r   r  rý   rë   r0  r(  r=  r   rD  rO  rÄ   r‘  r…  Ústaticmethodr`  rz  r†  r¥  rô   Úclassmethodr^  rP   rQ   rR   rS   s   @@r+   r   r   l   só  ù‡ € Ù9à€Oà—Z’Zð	>ó€Nð
 —z’zÐ"BÓCÐàŸ:š: lÓ3Ðà—J’JØQØ
�‰ó€Mð
 —:’:˜lÓ+€Lñ
 	ˆH×Ñ×!Ñ!×)Ñ)°×1BÑ1B×1FÑ1FÐ)ÓG×QÑQÓSÓTÐWXÕXð ðØ�Š˜Ÿš HÓ-Ô.ð ˜a•<€Lð%ð ð%ð "ð	%ð
 HLð%ð 26÷%õ %ðN ÷ó ðð ÷"ó ð"ð ÷,ó ð,ð ÷/ó ð/ð ÷2ó ð2÷()ð ()÷T 'ð  '÷D
ð 
÷ ð  ÷3'ð 3'÷j)ò )÷4Ið I÷$ð $÷
"ð "÷))ð ))÷V;ð ;÷*'ð '÷R
ð 
÷-ð -ñ ILË÷ Gò G÷ð ð&Mð $(ðMð  $÷Mò Mñ^ 14³÷ aò a÷Fð ð8 ÷Yó ðY÷1ð 1÷1ð 1÷ð ð  ÷+ó ð+ð ÷<Uó ÷<Uð <UøðA ô Kð —?’?Ð#IÓJ‹Øô à‹ðús   Ã
"I! É!J	É=J	ÊJ	ÊJ	c                   ó:   a € ] tR tRt o RtRtV 3R lR ltRtV tR# )Ú_UnlimitedCookieJari§  zAJar for per-request cookies, which the jar limits don't apply to.Fc                óB   <€ V ^8„  d   QhRS[ RS[RS[S[,          RS[/# r¡  r¢  )r)   r*   s   "€r+   r,   Ú _UnlimitedCookieJar.__annotate__¬  s7   ø€ ÷ Dñ DÙðDÙ&)ðDÙ39¹#µ;ðDá	ñDr.   c                ó2   € V P                  V4      ^ \        3# ©r   )r¥  Ú_UNLIMITED_COOKIE_KEY)r6   r  r%   rª   s   &&&&r+   rz  Ú!_UnlimitedCookieJar._morsel_entry¬  s   € ð
 ×!Ñ! &Ó)¨1Ô.CÐCÐCr.   r=   N)	rJ   rK   rL   rM   rN   r_  rz  rP   rQ   )r*   s   @r+   rð  rð  §  s   ø‡ € ÙKà€O÷Dö Dr.   rð  c                   óL  a a€ ] tR tRt oRtRR/V3R lV 3R llltV3R lR ltV3R	 lR
 lt]V3R lR l4       t	]V3R lR l4       t
]V3R lR l4       t]V3R lR l4       tRV3R lR lltV3R lR lt]! 4       3V3R lR lltV3R lR ltV3R lR ltRtVtV ;t# )r   i´  zpImplements a dummy cookie storage.

It can be used with the ClientSession when no cookie processing is needed.

rY   Nc                óF   <€ V ^8„  d   QhRS[ P                  R,          RR/# )r#   rY   Nr&   )r\   r]   )r)   r*   s   "€r+   r,   ÚDummyCookieJar.__annotate__»  s&   ø€ ÷ $ñ $¡× 9Ñ 9¸DÕ @ð $ÈDñ $r.   c               ó(   <€ \         SV `  VR 7       R# r`   )r4   ra   )r6   rY   r7   s   &$€r+   ra   ÚDummyCookieJar.__init__»  s   ø€ Ü‰Ñ˜dÐÖ#r.   c                ó   <€ V ^8„  d   QhRR/# rû   r=   )r)   r*   s   "€r+   r,   rù  ¾  s   ø€ ÷ ñ Ð1ñ r.   c              #  ó   "  € R# 5i)FNr=   rw   s   &r+   r   ÚDummyCookieJar.__iter__¾  s   é € Ùùs   ‚c                ó    <€ V ^8„  d   QhRS[ /# rs   r  )r)   r*   s   "€r+   r,   rù  Â  s   ø€ ÷ ñ ™ñ r.   c                ó   € ^ # rô  r=   rw   s   &r+   r  ÚDummyCookieJar.__len__Â  s   € Ùr.   c                ó    <€ V ^8„  d   QhRS[ /# rs   rt   )r)   r*   s   "€r+   r,   rù  Æ  s   ø€ ÷ ñ ™ñ r.   c                ó   € R # )Fr=   rw   s   &r+   rV   ÚDummyCookieJar.unsafeÅ  s   € ár.   c                ó    <€ V ^8„  d   QhRS[ /# rs   rt   )r)   r*   s   "€r+   r,   rù  Ê  s   ø€ ÷ ñ ™dñ r.   c                ó   € R # )Tr=   rw   s   &r+   rW   ÚDummyCookieJar.quote_cookieÉ  s   € ár.   c                óL   <€ V ^8„  d   QhRS[ S[S[S[3,          S[3,          /# rs   r€   )r)   r*   s   "€r+   r,   rù  Î  s'   ø€ ÷ $ñ $Ñ)©%±±S°­/¹<Ð*GÕHñ $r.   c                ó   € \        / 4      # )zReturn an empty mapping.r   rw   s   &r+   r‚   ÚDummyCookieJar.cookiesÍ  s   € ô   Ó#Ð#r.   c                óJ   <€ V ^8„  d   QhRS[ S[S[S[S[3,          ,          /# rs   r:   )r)   r*   s   "€r+   r,   rù  Ó  s$   ø€ ÷ ñ ¡9©U±3¹¹S°=Õ-AÕ#Bñ r.   c                ó   € \        4       # )zReturn an empty frozenset.)r;   rw   s   &r+   r†   Ú DummyCookieJar.host_only_cookiesÒ  s   € ô ‹{Ðr.   c                ó2   <€ V ^8„  d   QhRS[ R,          RR/# ræ   rè   )r)   r*   s   "€r+   r,   rù  ×  s!   ø€ ÷ ñ Ñ3°dÕ:ð Àdñ r.   c                ó   € R # rv   r=   )r6   rç   s   &&r+   rÑ   ÚDummyCookieJar.clear×  ó   € Ùr.   c                ó$   <€ V ^8„  d   QhRS[ RR/# rð   rñ   )r)   r*   s   "€r+   r,   rù  Ú  s   ø€ ÷ ñ ¡3ð ¨4ñ r.   c                ó   € R # rv   r=   r÷   s   &&r+   rø   ÚDummyCookieJar.clear_domainÚ  r  r.   c                ó*   <€ V ^8„  d   QhRS[ RS[RR/# r@  rA  )r)   r*   s   "€r+   r,   rù  Ý  s#   ø€ ÷ ñ ¡lð Á#ð ÐRVñ r.   c                ó   € R # rv   r=   rC  s   &&&r+   rD  ÚDummyCookieJar.update_cookiesÝ  r  r.   c                ó:   <€ V ^8„  d   QhRS[ S[,          RS[RR/# rG  rI  )r)   r*   s   "€r+   r,   rù  à  s.   ø€ ÷ Añ AÙ¡•}ðAÙ47ðAà	ñAr.   c                ó   € R# )z2Ignore raw Set-Cookie fields without parsing them.Nr=   )r6   rH  rÉ   s   &&&r+   rO  Ú*DummyCookieJar.update_cookies_from_headersà  s   ‚ r.   c                ó$   <€ V ^8„  d   QhRS[ RR/# rk  r   )r)   r*   s   "€r+   r,   rù  å  s   ø€ ÷ ñ ©#ð Ð2Cñ r.   c                ó   € \        4       # rv   )r
   )r6   rl  s   &&r+   r‘  ÚDummyCookieJar.filter_cookieså  s
   € Ü‹~Ðr.   r=   rv   )rJ   rK   rL   rM   rN   ra   r   r  rì  rV   rW   r‚   r†   rÑ   rø   r   rD  rO  r‘  rP   rQ   rR   rS   s   @@r+   r   r   ´  sÁ   ù‡ € ñð$À4÷ $õ $÷ð ÷ð ð ÷ó ðð ÷ó ðð ÷$ó ð$ð ÷ó ð÷ò ÷ð ñ ILË÷ ò ÷Að A÷
÷ ð r.   c                ó@   € V ^8„  d   Qh/ ^ \         9   d
   \        ;R&   # )r#   rõ  )Ú__conditional_annotations__r  )r)   s   "r+   r,   r,      s   € ‡�÷R 1Ò 0”zÑ 0òS r.   )r   r   )rØ   rØ   rØ   )rU  rV  )Or  r\   rÉ  rx  rã  r  r{  r¦   rÛ   r–   r    r2   rà  rê   ru  rF   r   Úcollections.abcr   r   r   r   Úhttp.cookiesr   r	   r
   Útypesr   Útypingr   r   Úyarlr   Ú_cookie_helpersr   r   r   r   Úabcr   r   Úhelpersr   Úlogr   Útypedefsr   r   r   Ú__all__r'   Ú
CookieItemr<   r£  r  r  r”  rõ  r)   r  r~  r  r°  r$  r%  r7  r4  rƒ  r„  r  r�  r;   r¤   Ú
_Unpicklerr!   r   rð  r   r,   )r  s   @r+   Ú<module>r-     sW  øðß €Û Û Û Û Û Û Û Û 	Û Û Û 	Û Û Ý #ß AÓ Aß 9Ñ 9Ý "ß å ÷ó ÷ 9Ý "Ý  ß 6Ñ 6à
)€ð �3˜Ð%Õ&€
Ø
��S��/€Ø�3˜˜S�=Õ!€
à�] C¨Ð3Õ4€Ø$0Ð Ó 0ð �~‰~€Ø#×*Ñ*Ð ð
 $'Ð  Ù“€ð Ð ØÐ ØÐ ØÐ ØÐ Ø Ð Ù" ;Ó/Ð ñ #Ð#9Ó:Ð ô%0 ×!2Ñ!2ô %0ôPxUÐ!ô xUôv
D˜)ô 
Dô2Ð&ö 2r.   