HEX
Server: LiteSpeed
System: Linux 112.webhostingindonesia.co.id 5.14.0-570.62.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Nov 11 10:10:59 EST 2025 x86_64
User: iyfwylsv (10313)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: //opt/plesk/python/3/lib64/python3.10/http/__pycache__/cookies.cpython-310.opt-2.pyc
o

�<�2B���@sX	ddlZddlZddlZgd�ZdjZdjZdjZGdd�de�Z	ej
ejdZed	Z
d
d�eed��eeee
��D�Ze�ed
�ded�di�e�de�e��jZdd�Ze�d�jZdd�Zdd�Zgd�Zgd�Zdeefdd�ZGdd�de �Z!dZ"e"d Z#e�d!e"d"e#d#ej$ej%B�Z&Gd$d%�d%e �Z'Gd&d'�d'e'�Z(dS)(�N)�CookieError�
BaseCookie�SimpleCookie�z; � c@seZdZdS)rN)�__name__�
__module__�__qualname__�r
r
�4/opt/plesk/python/3/lib64/python3.10/http/cookies.pyr�srz!#$%&'*+-.^_`|~:z
 ()/<=>?@[]{}cCsi|]}|d|�qS)z\%03or
)�.0�nr
r
r�
<dictcomp>�s�r��"�\"�\z\\z[%s]+cCs(	|dus	t|�r|Sd|�t�dS)Nr)�
_is_legal_key�	translate�_Translator��strr
r
r�_quote�srz\\(?:([0-3][0-7][0-7])|(.))cCs"|dr
tt|dd��S|dS)N���)�chr�int)�mr
r
r�_unquote_replace�srcCsJ|dus
t|�dkr|S|ddks|ddkr|S|dd�}tt|�S)Nrrr���r)�len�_unquote_subrrr
r
r�_unquote�s
r#)ZMonZTueZWedZThuZFriZSatZSun)
NZJanZFebZMarZAprZMayZJunZJulZAugZSepZOctZNovZDecc	CsRddlm}m}|�}|||�\	}}}}	}
}}}
}d|||||||	|
|fS)Nr)�gmtime�timez#%s, %02d %3s %4d %02d:%02d:%02d GMT)r%r$)�futureZweekdaynameZ	monthnamer$r%ZnowZyearZmonthZdayZhhZmm�ssZwd�y�zr
r
r�_getdate�s�r*c
@s�eZdZ	ddddddddd	d
�	ZddhZd
d�Zedd��Zedd��Zedd��Z	dd�Z
d1dd�Zdd�Ze
jZdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd2d)d*�ZeZd+d,�Zd1d-d.�Zd1d/d0�Zeej�ZdS)3�Morsel�expires�Path�CommentZDomainzMax-AgeZSecureZHttpOnlyZVersionZSameSite)	r,�path�comment�domain�max-age�secure�httponly�versionZsamesiter3r4cCs0d|_|_|_|jD]	}t�||d�qdS)Nr)�_key�_value�_coded_value�	_reserved�dict�__setitem__)�self�keyr
r
r�__init__s
�zMorsel.__init__cC�|jS�N)r6�r<r
r
rr=�z
Morsel.keycCr?r@)r7rAr
r
r�valuerBzMorsel.valuecCr?r@)r8rAr
r
r�coded_valuerBzMorsel.coded_valuecCs2|��}||jvrtd|f��t�|||�dS�NzInvalid attribute %r)�lowerr9rr:r;)r<�K�Vr
r
rr;#s
zMorsel.__setitem__NcCs.|��}||jvrtd|f��t�|||�SrE)rFr9rr:�
setdefault)r<r=�valr
r
rrI)s
zMorsel.setdefaultcCs>t|t�stSt�||�o|j|jko|j|jko|j|jkSr@)�
isinstancer+�NotImplementedr:�__eq__r7r6r8�r<Zmorselr
r
rrM/s

�
�
�z
Morsel.__eq__cCs$t�}t�||�|j�|j�|Sr@)r+r:�update�__dict__rNr
r
r�copy9szMorsel.copycCsRi}t|���D]\}}|��}||jvrtd|f��|||<qt�||�dSrE)r:�itemsrFr9rrO)r<�values�datar=rJr
r
rrO?s

z
Morsel.updatecCs|��|jvSr@)rFr9)r<rGr
r
r�
isReservedKeyHszMorsel.isReservedKeycCsH|��|jvrtd|f��t|�std|f��||_||_||_dS)Nz Attempt to set a reserved key %rzIllegal key %r)rFr9rrr6r7r8)r<r=rJZ	coded_valr
r
r�setKs
z
Morsel.setcCs|j|j|jd�S)N)r=rCrD�r6r7r8rAr
r
r�__getstate__Vs�zMorsel.__getstate__cCs"|d|_|d|_|d|_dS)Nr=rCrDrW)r<�stater
r
r�__setstate__]s

zMorsel.__setstate__�Set-Cookie:cCsd||�|�fS)Nz%s %s)�OutputString)r<�attrs�headerr
r
r�outputbsz
Morsel.outputcCsd|jj|��fS)N�<%s: %s>)�	__class__rr\rAr
r
r�__repr__gszMorsel.__repr__cCsd|�|��dd�S)Nz�
        <script type="text/javascript">
        <!-- begin hiding
        document.cookie = "%s";
        // end hiding -->
        </script>
        rr)r\�replace)r<r]r
r
r�	js_outputjs�zMorsel.js_outputcCs g}|j}|d|j|jf�|dur|j}t|���}|D]m\}}|dkr'q||vr,q|dkrCt|t�rC|d|j|t|�f�q|dkrXt|t�rX|d|j||f�q|dkrot|t	�ro|d|j|t
|�f�q||jvr�|r|t	|j|��q|d|j||f�qt|�S)N�%s=%srr,r2z%s=%dr0)
�appendr=rDr9�sortedrRrKrr*rr�_flags�_semispacejoin)r<r]�resultrfrRr=rCr
r
rr\ts.
�zMorsel.OutputStringr@)Nr[)rrr	r9rhr>�propertyr=rCrDr;rIrM�object�__ne__rQrOrUrVrXrZr_�__str__rbrdr\�classmethod�types�GenericAlias�__class_getitem__r
r
r
rr+�sH�



	



!r+z,\w\d!#%&'~_`><@,:/\$\*\+\-\.\^\|\)\(\?\}\{\=z\[\]z�
    \s*                            # Optional whitespace at start of cookie
    (?P<key>                       # Start of group 'key'
    [a	]+?   # 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 doublequoted string
    |                                  # or
    \w{3},\s[\w\d\s-]{9,11}\s[\d:]{8}\sGMT  # Special case for "expires" attr
    |                                  # 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@sleZdZ	dd�Zdd�Zddd�Zdd	�Zd
d�Zddd�ZeZ	dd�Z
ddd�Zdd�Ze
fdd�ZdS)rcCs
	||fSr@r
�r<rJr
r
r�value_decode�szBaseCookie.value_decodecCs	t|�}||fSr@r�r<rJZstrvalr
r
r�value_encode�szBaseCookie.value_encodeNcCs|r	|�|�dSdSr@)�load)r<�inputr
r
rr>�s�zBaseCookie.__init__cCs0	|�|t��}|�|||�t�|||�dSr@)�getr+rVr:r;)r<r=Z
real_valuerD�Mr
r
rZ__set�szBaseCookie.__setcCs>	t|t�rt�|||�dS|�|�\}}|�|||�dSr@)rKr+r:r;rv�_BaseCookie__set)r<r=rC�rval�cvalr
r
rr;�s

zBaseCookie.__setitem__r[�
cCs<	g}t|���}|D]
\}}|�|�||��q|�|�Sr@)rgrRrfr_�join)r<r]r^�seprjrRr=rCr
r
rr_�s
zBaseCookie.outputcCsJg}t|���}|D]\}}|�d|t|j�f�q
d|jjt|�fS)Nrer`)rgrRrf�reprrCrar�
_spacejoin)r<�lrRr=rCr
r
rrb�s
zBaseCookie.__repr__cCs8	g}t|���}|D]\}}|�|�|��qt|�Sr@)rgrRrfrd�	_nulljoin)r<r]rjrRr=rCr
r
rrd�szBaseCookie.js_outputcCs8	t|t�r
|�|�dS|��D]\}}|||<qdSr@)rKr�_BaseCookie__parse_stringrR)r<Zrawdatar=rCr
r
rrw�s

�
zBaseCookie.loadcCspd}t|�}g}d}d}d}d|kr|kr�nnz|�||�}	|	s#nq|	�d�|	�d�}
}|	�d�}|
ddkrI|s<q|�||
dd�|f�n@|
��tjvru|sTdS|durj|
��tjvrh|�||
df�n!dS|�||
t	|�f�n|dur�|�||
|�
|�f�d}ndSd|kr�|ksnd}|D]\}
}
}|
|kr�|||
<q�|\}}|�|
||�||
}q�dS)	NrFrrr=rJ�$T)r!�match�group�endrfrFr+r9rhr#rtr{)r<rZpatt�ir
Zparsed_itemsZmorsel_seenZTYPE_ATTRIBUTEZ
TYPE_KEYVALUEr�r=rCrz�tpr|r}r
r
rZ__parse_string	sJ
�%

�zBaseCookie.__parse_stringr@)Nr[r~)rrr	rtrvr>r{r;r_rnrbrdrw�_CookiePatternr�r
r
r
rr�s	
	
	
rc@seZdZ	dd�Zdd�ZdS)rcCst|�|fSr@)r#rsr
r
rrtMszSimpleCookie.value_decodecCst|�}|t|�fSr@)rrrur
r
rrvPszSimpleCookie.value_encodeN)rrr	rtrvr
r
r
rrFsr))�re�stringrp�__all__rr�rir��	Exceptionr�
ascii_letters�digitsZ_LegalCharsZ_UnescapedCharsrV�range�map�ordrrO�compile�escape�	fullmatchrr�subr"rr#Z_weekdaynameZ
_monthnamer*r:r+Z_LegalKeyCharsZ_LegalValueChars�ASCII�VERBOSEr�rrr
r
r
r�<module>sX&]��
6����
�