ó
    F\hïM  ã                   óþ  • S r SSKrSSKrSSKr/ SQrSR
                  rSR
                  rSR
                  r " S S\	5      r
\R                  \R                  -   S	-   r\S
-   r\" \" S5      5      \" \" \\5      5      -
   V s0 s H	  n U SU -  _M     sn r\R)                  \" S5      S\" S5      S05        \R*                  " S\R,                  " \5      -  5      R.                  rS r\R*                  " S5      R4                  rS rS r/ SQr/ SQrS\\4S jr  " S S\!5      r"Sr#\#S-   r$\R*                  " S\#-   S-   \$-   S-   \RJ                  \RL                  -  5      r' " S  S!\!5      r( " S" S#\(5      r)gs  sn f )$a.
  
Here's a sample session to show how to use this module.
At the moment, this is the only documentation.

The Basics
----------

Importing is easy...

   >>> from http import cookies

Most of the time you start by creating a cookie.

   >>> C = cookies.SimpleCookie()

Once you've created your Cookie, you can add values just as if it were
a dictionary.

   >>> C = cookies.SimpleCookie()
   >>> C["fig"] = "newton"
   >>> C["sugar"] = "wafer"
   >>> C.output()
   'Set-Cookie: fig=newton\r\nSet-Cookie: sugar=wafer'

Notice that the printable representation of a Cookie is the
appropriate format for a Set-Cookie: header.  This is the
default behavior.  You can change the header and printed
attributes by using the .output() function

   >>> C = cookies.SimpleCookie()
   >>> C["rocky"] = "road"
   >>> C["rocky"]["path"] = "/cookie"
   >>> print(C.output(header="Cookie:"))
   Cookie: rocky=road; Path=/cookie
   >>> print(C.output(attrs=[], header="Cookie:"))
   Cookie: rocky=road

The load() method of a Cookie extracts cookies from a string.  In a
CGI script, you would use this method to extract the cookies from the
HTTP_COOKIE environment variable.

   >>> C = cookies.SimpleCookie()
   >>> C.load("chips=ahoy; vienna=finger")
   >>> C.output()
   'Set-Cookie: chips=ahoy\r\nSet-Cookie: vienna=finger'

The load() method is darn-tootin smart about identifying cookies
within a string.  Escaped quotation marks, nested semicolons, and other
such trickeries do not confuse it.

   >>> C = cookies.SimpleCookie()
   >>> C.load('keebler="E=everybody; L=\\"Loves\\"; fudge=\\012;";')
   >>> print(C)
   Set-Cookie: keebler="E=everybody; L=\"Loves\"; fudge=\012;"

Each element of the Cookie also supports all of the RFC 2109
Cookie attributes.  Here's an example which sets the Path
attribute.

   >>> C = cookies.SimpleCookie()
   >>> C["oreo"] = "doublestuff"
   >>> C["oreo"]["path"] = "/"
   >>> print(C)
   Set-Cookie: oreo=doublestuff; Path=/

Each dictionary element has a 'value' attribute, which gives you
back the value associated with the key.

   >>> C = cookies.SimpleCookie()
   >>> C["twix"] = "none for you"
   >>> C["twix"].value
   'none for you'

The SimpleCookie expects that all values should be standard strings.
Just to be sure, SimpleCookie invokes the str() builtin to convert
the value to a string, when the values are set dictionary-style.

   >>> C = cookies.SimpleCookie()
   >>> C["number"] = 7
   >>> C["string"] = "seven"
   >>> C["number"].value
   '7'
   >>> C["string"].value
   'seven'
   >>> C.output()
   'Set-Cookie: number=7\r\nSet-Cookie: string=seven'

Finis.
é    N)ÚCookieErrorÚ
BaseCookieÚSimpleCookieÚ z; Ú c                   ó   • \ rS rSrSrg)r   é‘   © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__static_attributes__r
   ó    Ú#/usr/lib/python3.13/http/cookies.pyr   r   ‘   s   † Úr   r   z!#$%&'*+-.^_`|~:z ()/<=>?@[]{}é   z\%03oÚ"ú\"Ú\z\\z[%s]+c                 ób   • U b  [        U 5      (       a  U $ SU R                  [        5      -   S-   $ )zÓQuote a string for use in a cookie header.

If the string does not need to be double-quoted, then just return the
string.  Otherwise, surround the string in doublequotes and quote
(with a \) special characters.
r   )Ú_is_legal_keyÚ	translateÚ_Translator©Ústrs    r   Ú_quoter   ®   s1   € ð �{”m C×(Ñ(Øˆ
à�S—]‘]¤;Ó/Ñ/°#Ñ5Ð5r   z\\(?:([0-3][0-7][0-7])|(.))c                 óP   • U S   (       a  [        [        U S   S5      5      $ U S   $ )Né   é   é   )ÚchrÚint)Úms    r   Ú_unquote_replacer$   ½   s'   € Øˆ‡tÜ”3�q˜‘t˜Q“<Ó Ð à�‰tˆr   c                 ó|   • U b  [        U 5      S:  a  U $ U S   S:w  d	  U S   S:w  a  U $ U SS n [        [        U 5      $ )Nr    r   r   éÿÿÿÿr   )ÚlenÚ_unquote_subr$   r   s    r   Ú_unquoter)   Ã   sO   € ð �{”c˜#“h “lØˆ
Ø
ˆ1�v�ƒ}˜˜B™ 3›Øˆ
ð ˆa�ˆ)€Cô Ô(¨#Ó.Ð.r   )ÚMonÚTueÚWedÚThuÚFriÚSatÚSun)NÚJanÚFebÚMarÚAprÚMayÚJunÚJulÚAugÚSepÚOctÚNovÚDecc           	      ó\   • SSK JnJ n  U" 5       nU" XP-   5      u	  pgp‰p«pÍnSX   X‚U   XiX«4-  $ )Nr   )ÚgmtimeÚtimez#%s, %02d %3s %4d %02d:%02d:%02d GMT)r?   r>   )ÚfutureÚweekdaynameÚ	monthnamer>   r?   ÚnowÚyearÚmonthÚdayÚhhÚmmÚssÚwdÚyÚzs                  r   Ú_getdaterM   ä   sE   € ß!Ù
‹&€CÙ-3°C±LÓ-AÑ*€D�˜" "¨Ø0Ø‰O˜S¨EÑ"2°D¸bÐEñFð Fr   c            
       ó  • \ rS rSrSrSSSSSSS	S
SS.	rSS1rS r\S 5       r	\S 5       r
\S 5       rS rS"S jrS r\R                   rS rS rS rS rS rS rS#S jr\rS rS"S jrS"S  jr\" \R<                  5      rS!r g)$ÚMorseléì   a/  A class to hold ONE (key, value) pair.

In a cookie, each such pair may have several attributes, so this class is
used to keep the attributes associated with the appropriate key,value pair.
This class also includes a coded_value attribute, which is used to hold
the network representation of the value.
ÚexpiresÚPathÚCommentÚDomainzMax-AgeÚSecureÚHttpOnlyÚVersionÚSameSite)	rQ   ÚpathÚcommentÚdomainúmax-ageÚsecureÚhttponlyÚversionÚsamesiter]   r^   c                 ó€   • S =U l         =U l        U l        U R                   H  n[        R                  XS5        M     g )Nr   )Ú_keyÚ_valueÚ_coded_valueÚ	_reservedÚdictÚ__setitem__)ÚselfÚkeys     r   Ú__init__ÚMorsel.__init__  s8   € à6:Ð:ˆŒ	Ð:�D”K $Ô"3ð —>”>ˆCÜ×Ñ˜T¨Ö+ò "r   c                 ó   • U R                   $ ©N)rb   ©rh   s    r   ri   Ú
Morsel.key  s   € à�y‰yÐr   c                 ó   • U R                   $ rm   )rc   rn   s    r   ÚvalueÚMorsel.value  s   € à�{‰{Ðr   c                 ó   • U R                   $ rm   )rd   rn   s    r   Úcoded_valueÚMorsel.coded_value  s   € à× Ñ Ð r   c                 óŒ   • UR                  5       nXR                  ;  a  [        SU< 35      e[        R	                  XU5        g ©NzInvalid attribute )Úlowerre   r   rf   rg   )rh   ÚKÚVs      r   rg   ÚMorsel.__setitem__#  s5   € Ø�G‰G‹IˆØ—N‘NÓ"ÝºÐ;Ó<Ð<Ü×Ñ˜ !Õ$r   Nc                 óŠ   • UR                  5       nXR                  ;  a  [        SU< 35      e[        R	                  XU5      $ rw   )rx   re   r   rf   Ú
setdefault)rh   ri   Úvals      r   r}   ÚMorsel.setdefault)  s6   € Ø�i‰i‹kˆØ—n‘nÓ$ÝºÐ=Ó>Ð>Ü�‰˜t¨#Ó.Ð.r   c                 ó"  • [        U[        5      (       d  [        $ [        R	                  X5      =(       aY    U R
                  UR
                  :H  =(       a9    U R                  UR                  :H  =(       a    U R                  UR                  :H  $ rm   )Ú
isinstancerO   ÚNotImplementedrf   Ú__eq__rc   rb   rd   ©rh   Úmorsels     r   rƒ   ÚMorsel.__eq__/  sk   € Ü˜&¤&×)Ñ)Ü!Ð!Ü—‘˜DÓ)÷ 9Ø—‘˜vŸ}™}Ñ,÷9à—	‘	˜VŸ[™[Ñ(÷9ð ×!Ñ! V×%8Ñ%8Ñ8ð	:r   c                 óŽ   • [        5       n[        R                  X5        UR                  R                  U R                  5        U$ rm   )rO   rf   ÚupdateÚ__dict__r„   s     r   ÚcopyÚMorsel.copy9  s0   € Ü“ˆÜ�‰�FÔ!Ø�‰×Ñ˜tŸ}™}Ô-Øˆr   c                 óÚ   • 0 n[        U5      R                  5        H7  u  p4UR                  5       nX0R                  ;  a  [	        SU< 35      eXBU'   M9     [         R                  X5        g rw   )rf   Úitemsrx   re   r   rˆ   )rh   ÚvaluesÚdatari   r~   s        r   rˆ   ÚMorsel.update?  sX   € ØˆÜ˜V›×*Ñ*Ö,‰HˆCØ—)‘)“+ˆCØŸ.™.Ó(Ý!ºCÐ"AÓBÐBØ�‹Iñ	 -ô
 	�‰�DÕr   c                 ó<   • UR                  5       U R                  ;   $ rm   )rx   re   )rh   ry   s     r   ÚisReservedKeyÚMorsel.isReservedKeyH  s   € Ø�w‰w‹y˜DŸN™NÑ*Ð*r   c                 óÀ   • UR                  5       U R                  ;   a  [        SU< 35      e[        U5      (       d  [        SU< 35      eXl        X l        X0l        g )NzAttempt to set a reserved key zIllegal key )rx   re   r   r   rb   rc   rd   )rh   ri   r~   Ú	coded_vals       r   ÚsetÚ
Morsel.setK  sM   € Ø�9‰9‹;˜$Ÿ.™.Ó(ÝÂCÐIÓJÐJÜ˜S×!Ñ!Ý²#Ð7Ó8Ð8ð Œ	ØŒØ%Õr   c                 óJ   • U R                   U R                  U R                  S.$ )N)ri   rq   rt   ©rb   rc   rd   rn   s    r   Ú__getstate__ÚMorsel.__getstate__V  s#   € à—9‘9Ø—[‘[Ø×,Ñ,ñ
ð 	
r   c                 ó@   • US   U l         US   U l        US   U l        g )Nri   rq   rt   r™   )rh   Ústates     r   Ú__setstate__ÚMorsel.__setstate__]  s%   € Ø˜%‘LˆŒ	Ø˜G‘nˆŒØ! -Ñ0ˆÕr   c                 ó2   • U< SU R                  U5      < 3$ )Nr   )ÚOutputString)rh   ÚattrsÚheaders      r   ÚoutputÚMorsel.outputb  s   € Û  $×"3Ñ"3°EÕ":Ð;Ð;r   c                 ó\   • SU R                   R                  < SU R                  5       < S3$ )NÚ<ú: Ú>)Ú	__class__r   r¡   rn   s    r   Ú__repr__ÚMorsel.__repr__g  s    � Ø!Ÿ^™^×4Ô4°d×6GÑ6GÖ6IÐJÐJr   c                 óJ   • SU R                  U5      R                  SS5      -  $ )Nz—
        <script type="text/javascript">
        <!-- begin hiding
        document.cookie = "%s";
        // end hiding -->
        </script>
        r   r   )r¡   Úreplace)rh   r¢   s     r   Ú	js_outputÚMorsel.js_outputj  s.   € ðð × Ñ  Ó'×/Ñ/°°UÓ;ñ=ð 	=r   c                 ó$  • / nUR                   nU" U R                  < SU R                  < 35        Uc  U R                  n[	        U R                  5       5      nU GH&  u  pVUS:X  a  M  XQ;  a  M  US:X  a<  [        U[        5      (       a'  U" U R                  U   < S[        U5      < 35        MW  US:X  a1  [        U[        5      (       a  U" SU R                  U   U4-  5        MŽ  US:X  a<  [        U[        5      (       a'  U" U R                  U   < S[        U5      < 35        MÐ  XPR                  ;   a+  U(       a!  U" [        U R                  U   5      5        GM  GM
  U" U R                  U   < SU< 35        GM)     [        U5      $ )NÚ=r   rQ   r\   z%s=%drZ   )Úappendri   rt   re   Úsortedr�   r�   r"   rM   r   r   Ú_flagsÚ_semispacejoin)rh   r¢   Úresultr³   r�   ri   rq   s          r   r¡   ÚMorsel.OutputStringt  sB  € ð ˆØ—‘ˆñ 	˜$Ÿ(œ( D×$4Ó$4Ð5Ô6ð ‰=Ø—N‘NˆEÜ�t—z‘z“|Ó$ˆÜ‰JˆCØ˜‹{ÙØÓÙØ�iÓ¤J¨u´c×$:Ñ$:Ù $§.¡.°Ô"5´xÀµÐGÖHØ˜	Ó!¤j°¼×&<Ñ&<Ù�w $§.¡.°Ñ"5°uÐ!=Ñ=Ö>Ø˜	Ó!¤j°¼×&<Ñ&<Ù $§.¡.°Ô"5´v¸eµ}ÐEÖFØŸ™Ó#ÞÙœ3˜tŸ~™~¨cÑ2Ó3×4ò ñ  $§.¡.°Ô"5²uÐ=×>ñ  ô$ ˜fÓ%Ð%r   )rd   rb   rc   rm   )NúSet-Cookie:)!r   r   r   r   Ú__doc__re   rµ   rj   Úpropertyri   rq   rt   rg   r}   rƒ   ÚobjectÚ__ne__rŠ   rˆ   r’   r–   rš   rž   r¤   Ú__str__r«   r¯   r¡   ÚclassmethodÚtypesÚGenericAliasÚ__class_getitem__r   r
   r   r   rO   rO   ì   sà   † ñð* ØØØØØØØØñ
€Ið ˜
Ð#€Fò,ð ñó ðð ñó ðð ñ!ó ð!ò%ô/ò:ð �]‰]€Fòò ò+ò	&ò
ò1ô
<ð €GòKô=ô&ñB $ E×$6Ñ$6Ó7Ór   rO   z,\w\d!#%&'~_`><@,:/\$\*\+\-\.\^\|\)\(\?\}\{\=z\[\]zŒ
    \s*                            # Optional whitespace at start of cookie
    (?P<key>                       # Start of group 'key'
    [ax  ]+?   # Any word of at least one letter
    )                              # End of group 'key'
    (                              # Optional group: there may not be a value.
    \s*=\s*                          # Equal Sign
    (?P<val>                         # Start of group 'val'
    "(?:[^\\"]|\\.)*"                  # Any double-quoted string
    |                                  # or
    # Special case for "expires" attr
    (\w{3,6}day|\w{3}),\s              # Day of the week or abbreviated day
    [\w\d\s-]{9,11}\s[\d:]{8}\sGMT     # Date and time in specific format
    |                                  # or
    [a-  ]*      # Any word or empty string
    )                                # End of group 'val'
    )?                             # End of optional value group
    \s*                            # Any number of spaces.
    (\s+|;|$)                      # Ending either at space, semicolon, or EOS.
    c                   ój   • \ rS rSrSrS rS rSS jrS rS r	SS	 jr
\
rS
 rSS jrS r\4S jrSrg)r   i¼  z'A container class for a set of Morsels.c                 ó   • X4$ )zâreal_value, coded_value = value_decode(STRING)
Called prior to setting a cookie's value from the network
representation.  The VALUE is the value read from HTTP
header.
Override this function to modify the behavior of cookies.
r
   ©rh   r~   s     r   Úvalue_decodeÚBaseCookie.value_decode¿  s   € ð ˆxˆr   c                 ó   • [        U5      nX"4$ )zÝreal_value, coded_value = value_encode(VALUE)
Called prior to setting a cookie's value from the dictionary
representation.  The VALUE is the value being assigned.
Override this function to modify the behavior of cookies.
r   ©rh   r~   Ústrvals      r   Úvalue_encodeÚBaseCookie.value_encodeÈ  s   € ô �S“ˆØˆ~Ðr   Nc                 ó6   • U(       a  U R                  U5        g g rm   )Úload)rh   Úinputs     r   rj   ÚBaseCookie.__init__Ñ  s   € ÞØ�I‰I�eÕð r   c                 óˆ   • U R                  U[        5       5      nUR                  XU5        [        R	                  XU5        g)z+Private method for setting a cookie's valueN)ÚgetrO   r–   rf   rg   )rh   ri   Ú
real_valuert   ÚMs        r   Ú__setÚBaseCookie.__setÕ  s2   € à�H‰H�Sœ&›(Ó#ˆØ	�‰ˆc˜{Ô+Ü×Ñ˜ AÕ&r   c                 ó¦   • [        U[        5      (       a  [        R                  XU5        gU R	                  U5      u  p4U R                  XU5        g)zDictionary style assignment.N)r�   rO   rf   rg   rË   Ú_BaseCookie__set)rh   ri   rq   ÚrvalÚcvals        r   rg   ÚBaseCookie.__setitem__Û  s?   € ä�eœV×$Ñ$ä×Ñ˜T¨Õ.à×*Ñ*¨5Ó1‰JˆDØ�J‰J�s $Õ'r   c                 ó°   • / n[        U R                  5       5      nU H%  u  pgUR                  UR                  X5      5        M'     UR	                  U5      $ )z"Return a string suitable for HTTP.)r´   r�   r³   r¤   Újoin)rh   r¢   r£   Úsepr·   r�   ri   rq   s           r   r¤   ÚBaseCookie.outputä  sG   € àˆÜ�t—z‘z“|Ó$ˆÛ‰JˆCØ�M‰M˜%Ÿ,™, uÓ5Ö6ñ  à�x‰x˜ÓÐr   c                 óô   • / n[        U R                  5       5      nU H0  u  p4UR                  U< S[        UR                  5      < 35        M2     SU R
                  R                  < S[        U5      < S3$ )Nr²   r§   r¨   r©   )r´   r�   r³   Úreprrq   rª   r   Ú
_spacejoin)rh   Úlr�   ri   rq   s        r   r«   ÚBaseCookie.__repr__î  sV   € ØˆÜ�t—z‘z“|Ó$ˆÛ‰JˆCØ�H‰H£¤T¨%¯+©+Õ%6Ð7Ö8ò  à!Ÿ^™^×4Ô4´jÀ¶mÐDÐDr   c                 ó¤   • / n[        U R                  5       5      nU H%  u  pEUR                  UR                  U5      5        M'     [	        U5      $ )z(Return a string suitable for JavaScript.)r´   r�   r³   r¯   Ú	_nulljoin)rh   r¢   r·   r�   ri   rq   s         r   r¯   ÚBaseCookie.js_outputõ  sC   € àˆÜ�t—z‘z“|Ó$ˆÛ‰JˆCØ�M‰M˜%Ÿ/™/¨%Ó0Ö1ñ  ä˜Ó Ð r   c                 óŒ   • [        U[        5      (       a  U R                  U5        gUR                  5        H	  u  p#X0U'   M     g)z½Load cookies from a string (presumably HTTP_COOKIE) or
from a dictionary.  Loading cookies from a dictionary 'd'
is equivalent to calling:
    map(Cookie.__setitem__, d.keys(), d.values())
N)r�   r   Ú_BaseCookie__parse_stringr�   )rh   Úrawdatari   rq   s       r   rÎ   ÚBaseCookie.loadý  sB   € ô �gœs×#Ñ#Ø×Ñ Ô(ð
 	ð &Ÿm™mžo‘
�Ø!�S“	ñ .àr   c                 ó2  • Sn[        U5      n/ nSnSnSnSUs=::  a  U:  Ga5  O  GO1UR                  X5      n	U	(       d  GOU	R                  S5      U	R                  S5      pºU	R                  S5      nU
S   S:X  a   U(       d  Mp  UR	                  XzSS  U45        OªU
R                  5       [        R                  ;   a_  U(       d  g Uc7  U
R                  5       [        R                  ;   a  UR	                  XzS45        OGg UR	                  Xz[        U5      45        O)Ub%  UR	                  XŠU R                  U5      45        SnOg SUs=::  a	  U:  a  GM/  O  S nU H7  u  pÚnX×:X  a  Uc   eX¼U
'   M  XØ:X  d   eUu  pïU R                  X®U5        X
   nM9     g )	Nr   Fr   r    ri   r~   Ú$T)r'   ÚmatchÚgroupÚendr³   rx   rO   re   rµ   r)   rÆ   rØ   )rh   r   ÚpattÚiÚnÚparsed_itemsÚmorsel_seenÚTYPE_ATTRIBUTEÚTYPE_KEYVALUErî   ri   rq   rÔ   ÚtprÙ   rÚ   s                   r   Ú__parse_stringÚBaseCookie.__parse_string  sŒ  € ØˆÜ�‹HˆØˆØˆàˆØˆð
 �1�j�q�jˆjà—J‘J˜sÓ&ˆEÞáàŸ™ UÓ+¨U¯[©[¸Ó-?�Ø—	‘	˜!“ˆAà�1‰v˜‹}Þ"ñ Ø×#Ñ# ^¸¸°W¸eÐ$DÕEØ—‘“¤× 0Ñ 0Ó0Þ"àØ‘=Ø—y‘y“{¤f§m¡mÓ3Ø$×+Ñ+¨^À$Ð,GÕHð à ×'Ñ'¨¼hÀu»oÐ(NÕOØÑ"Ø×#Ñ# ]¸×9JÑ9JÈ5Ó9QÐ$RÔSØ"‘ð ðE �1�j�q�jˆjðJ ˆÛ*‰NˆB�UØÓ#Ø‘}Ð$�}Ø�#“àÓ*Ð*Ð*Ø"‘
�Ø—
‘
˜3 dÔ+Ø‘I’ò +r   r
   rm   )Nr¹   z
)r   r   r   r   rº   rÆ   rË   rj   rØ   rg   r¤   r¾   r«   r¯   rÎ   Ú_CookiePatternré   r   r
   r   r   r   r   ¼  sD   † Ù1òòôò'ò(ô ð €GòEô!òð (6÷ :r   r   c                   ó$   • \ rS rSrSrS rS rSrg)r   iH  zê
SimpleCookie supports strings as cookie values.  When setting
the value using the dictionary assignment notation, SimpleCookie
calls the builtin str() to convert the value to a string.  Values
received from HTTP are kept as strings.
c                 ó   • [        U5      U4$ rm   )r)   rÅ   s     r   rÆ   ÚSimpleCookie.value_decodeO  s   € Ü˜‹}˜cÐ!Ð!r   c                 ó2   • [        U5      nU[        U5      4$ rm   )r   r   rÉ   s      r   rË   ÚSimpleCookie.value_encodeR  s   € Ü�S“ˆØ”v˜f“~Ð%Ð%r   r
   N)r   r   r   r   rº   rÆ   rË   r   r
   r   r   r   r   H  s   † ñò"õ&r   r   )*rº   ÚreÚstringrÀ   Ú__all__rÝ   ræ   r¶   râ   Ú	Exceptionr   Úascii_lettersÚdigitsÚ_LegalCharsÚ_UnescapedCharsr–   ÚrangeÚmapÚordr   rˆ   ÚcompileÚescapeÚ	fullmatchr   r   Úsubr(   r$   r)   Ú_weekdaynameÚ
_monthnamerM   rf   rO   Ú_LegalKeyCharsÚ_LegalValueCharsÚASCIIÚVERBOSErû   r   r   )ró   s   0r   Ú<module>r     sÊ  ðñNXóz 
Û Û â
7€à�G‰G€	Ø—‘€Ø�X‰X€
ô
	�)ô 	ð" ×"Ñ" V§]¡]Ñ2Ð5GÑG€Ø Ñ/€ñ ™E #›J›©#©c°#°Ó.GÓ*HÒHóJÚH�1ð �(˜Q‘,ŠÙHñJ€à × Ñ ÙˆƒHˆeÙˆƒIˆvðô ð
 —
’
˜7 R§Y¢Y¨{Ó%;Ñ;Ó<×FÑF€ò
6ð �zŠzÐ8Ó9×=Ñ=€òò/ò6 A€ò8€
ð  <¸:ô Fôi8ˆTô i8ðj B€Ø! GÑ+Ð Ø—’ð 	ð ñð	ñ	ð ñðñð& 
�‰�B—J‘JÑ	ó' €ô2I�ô IôX&�:õ &ùòGJs   ÂE: