o
    4˜Žjr(  ã                   @   s
  d dl Z d dlmZmZmZmZmZmZ d dlm	Z	 ddl
mZmZ ddlmZ dZG dd	„ d	eƒZG d
d„ deeƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG d d!„ d!eƒZG d"d#„ d#eƒZG d$d%„ d%eƒZ G d&d'„ d'eƒZ!G d(d)„ d)eƒZ"G d*d+„ d+eƒZ#G d,d-„ d-eƒZ$G d.d/„ d/eƒZ%G d0d1„ d1eƒZ&G d2d3„ d3eƒZ'G d4d5„ d5e'ƒZ(G d6d7„ d7e'ƒZ)G d8d9„ d9e'ƒZ*G d:d;„ d;e'ƒZ+G d<d=„ d=e'ƒZ,G d>d?„ d?e'ƒZ-G d@dA„ dAe'ƒZ.G dBdC„ dCe'ƒZ/G dDdE„ dEe'ƒZ0G dFdG„ dGe'ƒZ1G dHdI„ dIe'ƒZ2G dJdK„ dKe'ƒZ3G dLdM„ dMe'ƒZ4G dNdO„ dOe'ƒZ5G dPdQ„ dQe'ƒZ6G dRdS„ dSe'ƒZ7G dTdU„ dUe'ƒZ8G dVdW„ dWe'ƒZ9G dXdY„ dYe'ƒZ:G dZd[„ d[e'ƒZ;G d\d]„ d]e'ƒZ<G d^d_„ d_e'ƒZ=G d`da„ dae'ƒZ>G dbdc„ dce'ƒZ?G ddde„ dee'ƒZ@G dfdg„ dge'ƒZAG dhdi„ dieƒZBG djdk„ dkeBƒZCG dldm„ dmeBƒZDG dndo„ doeBƒZEG dpdq„ dqeBƒZFG drds„ dseBƒZGG dtdu„ dueBƒZHG dvdw„ dweBƒZIG dxdy„ dyeBƒZJG dzd{„ d{eBƒZKG d|d}„ d}eBƒZLdS )~é    N)ÚAnyÚDictÚIterableÚListÚOptionalÚSet)ÚURLé   )ÚLooseHeadersÚStrOrURL)ÚResponse):ÚHTTPExceptionÚ	HTTPErrorÚHTTPRedirectionÚHTTPSuccessfulÚHTTPOkÚHTTPCreatedÚHTTPAcceptedÚHTTPNonAuthoritativeInformationÚHTTPNoContentÚHTTPResetContentÚHTTPPartialContentÚHTTPMoveÚHTTPMultipleChoicesÚHTTPMovedPermanentlyÚ	HTTPFoundÚHTTPSeeOtherÚHTTPNotModifiedÚHTTPUseProxyÚHTTPTemporaryRedirectÚHTTPPermanentRedirectÚHTTPClientErrorÚHTTPBadRequestÚHTTPUnauthorizedÚHTTPPaymentRequiredÚHTTPForbiddenÚHTTPNotFoundÚHTTPMethodNotAllowedÚHTTPNotAcceptableÚHTTPProxyAuthenticationRequiredÚHTTPRequestTimeoutÚHTTPConflictÚHTTPGoneÚHTTPLengthRequiredÚHTTPPreconditionFailedÚHTTPRequestEntityTooLargeÚHTTPRequestURITooLongÚHTTPUnsupportedMediaTypeÚHTTPRequestRangeNotSatisfiableÚHTTPExpectationFailedÚHTTPMisdirectedRequestÚHTTPUnprocessableEntityÚHTTPFailedDependencyÚHTTPUpgradeRequiredÚHTTPPreconditionRequiredÚHTTPTooManyRequestsÚHTTPRequestHeaderFieldsTooLargeÚHTTPUnavailableForLegalReasonsÚHTTPServerErrorÚHTTPInternalServerErrorÚHTTPNotImplementedÚHTTPBadGatewayÚHTTPServiceUnavailableÚHTTPGatewayTimeoutÚHTTPVersionNotSupportedÚHTTPVariantAlsoNegotiatesÚHTTPInsufficientStorageÚHTTPNotExtendedÚ!HTTPNetworkAuthenticationRequiredc                   @   ó   e Zd ZdZdS )ÚNotAppKeyWarningz-Warning when not using AppKey in Application.N©Ú__name__Ú
__module__Ú__qualname__Ú__doc__© rN   rN   úS/var/www/kodo/Anonymous/send/lib/python3.10/site-packages/aiohttp/web_exceptions.pyrH   G   ó    rH   c                   @   sf   e Zd ZdZdZdZddddddœdedB dedB ded	edB d
edB ddfdd„Z	de
fdd„ZdS )r   éÿÿÿÿFTN©ÚheadersÚreasonÚbodyÚtextÚcontent_typerS   rT   rU   rV   rW   Úreturnc             	   C   sŒ   |d ur
t  dt¡ |d urd|v sd|v rtdƒ‚tj| | j|||||d� t | | j¡ | j	d u rB| j
sD| j› d| j› �| _d S d S d S )Nz3body argument is deprecated for http web exceptionsúÚ
zReason cannot contain \r or \n)ÚstatusrS   rT   rU   rV   rW   z: )ÚwarningsÚwarnÚDeprecationWarningÚ
ValueErrorr   Ú__init__Ústatus_codeÚ	ExceptionrT   rU   Ú
empty_bodyr[   rV   )ÚselfrS   rT   rU   rV   rW   rN   rN   rO   r`   Z   s(   	þù	ÿzHTTPException.__init__c                 C   s   dS )NTrN   ©rd   rN   rN   rO   Ú__bool__w   s   zHTTPException.__bool__)rJ   rK   rL   ra   rc   Ú__http_exception__r
   Ústrr   r`   Úboolrf   rN   rN   rN   rO   r   P   s.    ùýüûúù
ør   c                   @   rG   )r   zABase class for exceptions with status codes in the 400s and 500s.NrI   rN   rN   rN   rO   r   {   rP   r   c                   @   rG   )r   z8Base class for exceptions with status codes in the 300s.NrI   rN   rN   rN   rO   r      rP   r   c                   @   rG   )r   z8Base class for exceptions with status codes in the 200s.NrI   rN   rN   rN   rO   r   ƒ   rP   r   c                   @   rG   )r   éÈ   N©rJ   rK   rL   ra   rN   rN   rN   rO   r   ‡   rP   r   c                   @   rG   )r   éÉ   Nrk   rN   rN   rN   rO   r   ‹   rP   r   c                   @   rG   )r   éÊ   Nrk   rN   rN   rN   rO   r   �   rP   r   c                   @   rG   )r   éË   Nrk   rN   rN   rN   rO   r   “   rP   r   c                   @   ó   e Zd ZdZdZdS )r   éÌ   TN©rJ   rK   rL   ra   rc   rN   rN   rN   rO   r   —   ó    r   c                   @   ro   )r   éÍ   TNrq   rN   rN   rN   rO   r   œ   rr   r   c                   @   rG   )r   éÎ   Nrk   rN   rN   rN   rO   r   ¡   rP   r   c                       sX   e Zd ZddddddœdededB dedB dededB dedB d	df‡ fd
d„Z‡  ZS )r   NrR   ÚlocationrS   rT   rU   rV   rW   rX   c                   s>   |st dƒ‚tƒ j|||||d� tt|ƒƒ| jd< || _d S )Nz.HTTP redirects need a location to redirect to.rR   ÚLocation)r_   Úsuperr`   rh   r   rS   ru   )rd   ru   rS   rT   rU   rV   rW   ©Ú	__class__rN   rO   r`   «   s   
û
zHTTPMove.__init__)	rJ   rK   rL   r   r
   rh   r   r`   Ú__classcell__rN   rN   rx   rO   r   ª   s*    øþüûúùø	÷r   c                   @   rG   )r   i,  Nrk   rN   rN   rN   rO   r   Â   rP   r   c                   @   rG   )r   i-  Nrk   rN   rN   rN   rO   r   Æ   rP   r   c                   @   rG   )r   i.  Nrk   rN   rN   rN   rO   r   Ê   rP   r   c                   @   rG   )r   i/  Nrk   rN   rN   rN   rO   r   Ð   rP   r   c                   @   ro   )r   i0  TNrq   rN   rN   rN   rO   r   Ô   s    r   c                   @   rG   )r   i1  Nrk   rN   rN   rN   rO   r   Ú   s    r   c                   @   rG   )r   i3  Nrk   rN   rN   rN   rO   r   ß   rP   r   c                   @   rG   )r    i4  Nrk   rN   rN   rN   rO   r    ã   rP   r    c                   @   ó   e Zd ZdS )r!   N©rJ   rK   rL   rN   rN   rN   rO   r!   ì   ó    r!   c                   @   rG   )r"   i�  Nrk   rN   rN   rN   rO   r"   ð   rP   r"   c                   @   rG   )r#   i‘  Nrk   rN   rN   rN   rO   r#   ô   rP   r#   c                   @   rG   )r$   i’  Nrk   rN   rN   rN   rO   r$   ø   rP   r$   c                   @   rG   )r%   i“  Nrk   rN   rN   rN   rO   r%   ü   rP   r%   c                   @   rG   )r&   i”  Nrk   rN   rN   rN   rO   r&      rP   r&   c                       sd   e Zd ZdZddddddœdedee dedB dedB ded	edB d
edB ddf‡ fdd„Z‡  Z	S )r'   i•  NrR   ÚmethodÚallowed_methodsrS   rT   rU   rV   rW   rX   c          	         sF   d  t|ƒ¡}tƒ j|||||d� || jd< t|ƒ| _| ¡ | _d S )Nú,rR   ÚAllow)	ÚjoinÚsortedrw   r`   rS   Úsetr   Úupperr~   )	rd   r~   r   rS   rT   rU   rV   rW   Úallowrx   rN   rO   r`     s   û

zHTTPMethodNotAllowed.__init__)
rJ   rK   rL   ra   rh   r   r
   r   r`   rz   rN   rN   rx   rO   r'     s0    ÷þýûúùø	÷
ör'   c                   @   rG   )r(   i–  Nrk   rN   rN   rN   rO   r(     rP   r(   c                   @   rG   )r)   i—  Nrk   rN   rN   rN   rO   r)   #  rP   r)   c                   @   rG   )r*   i˜  Nrk   rN   rN   rN   rO   r*   '  rP   r*   c                   @   rG   )r+   i™  Nrk   rN   rN   rN   rO   r+   +  rP   r+   c                   @   rG   )r,   iš  Nrk   rN   rN   rN   rO   r,   /  rP   r,   c                   @   rG   )r-   i›  Nrk   rN   rN   rN   rO   r-   3  rP   r-   c                   @   rG   )r.   iœ  Nrk   rN   rN   rN   rO   r.   7  rP   r.   c                	       s4   e Zd ZdZd
dedededdf‡ fdd	„Z‡  ZS )r/   i�  r   Úmax_sizeÚactual_sizeÚkwargsrX   Nc                    s*   |  dd|› d�¡ tƒ jdi |¤Ž d S )NrV   zMaximum request body size z
 exceeded.rN   )Ú
setdefaultrw   r`   )rd   r‡   rˆ   r‰   rx   rN   rO   r`   >  s   z"HTTPRequestEntityTooLarge.__init__)r   )rJ   rK   rL   ra   Úfloatr   r`   rz   rN   rN   rx   rO   r/   ;  s    (r/   c                   @   rG   )r0   iž  Nrk   rN   rN   rN   rO   r0   C  rP   r0   c                   @   rG   )r1   iŸ  Nrk   rN   rN   rN   rO   r1   G  rP   r1   c                   @   rG   )r2   i   Nrk   rN   rN   rN   rO   r2   K  rP   r2   c                   @   rG   )r3   i¡  Nrk   rN   rN   rN   rO   r3   O  rP   r3   c                   @   rG   )r4   i¥  Nrk   rN   rN   rN   rO   r4   S  rP   r4   c                   @   rG   )r5   i¦  Nrk   rN   rN   rN   rO   r5   W  rP   r5   c                   @   rG   )r6   i¨  Nrk   rN   rN   rN   rO   r6   [  rP   r6   c                   @   rG   )r7   iª  Nrk   rN   rN   rN   rO   r7   _  rP   r7   c                   @   rG   )r8   i¬  Nrk   rN   rN   rN   rO   r8   c  rP   r8   c                   @   rG   )r9   i­  Nrk   rN   rN   rN   rO   r9   g  rP   r9   c                   @   rG   )r:   i¯  Nrk   rN   rN   rN   rO   r:   k  rP   r:   c                       sv   e Zd ZdZddddddœdedB dedB dedB dededB d	edB d
df‡ fdd„Ze	d
e
dB fdd„ƒZ‡  ZS )r;   iÃ  NrR   ÚlinkrS   rT   rU   rV   rW   rX   c                   sJ   t ƒ j|||||d� d | _|r#t|ƒ| _dt| jƒ› d�| jd< d S d S )NrR   ú<z>; rel="blocked-by"ÚLink)rw   r`   Ú_linkr   rh   rS   )rd   rŒ   rS   rT   rU   rV   rW   rx   rN   rO   r`   r  s   
û
þz'HTTPUnavailableForLegalReasons.__init__c                 C   s   | j S )N)r�   re   rN   rN   rO   rŒ   ˆ  s   z#HTTPUnavailableForLegalReasons.link)rJ   rK   rL   ra   r   r
   rh   r   r`   Úpropertyr   rŒ   rz   rN   rN   rx   rO   r;   o  s0    øþüûúùø	÷r;   c                   @   r{   )r<   Nr|   rN   rN   rN   rO   r<   ™  r}   r<   c                   @   rG   )r=   iô  Nrk   rN   rN   rN   rO   r=   �  rP   r=   c                   @   rG   )r>   iõ  Nrk   rN   rN   rN   rO   r>   ¡  rP   r>   c                   @   rG   )r?   iö  Nrk   rN   rN   rN   rO   r?   ¥  rP   r?   c                   @   rG   )r@   i÷  Nrk   rN   rN   rN   rO   r@   ©  rP   r@   c                   @   rG   )rA   iø  Nrk   rN   rN   rN   rO   rA   ­  rP   rA   c                   @   rG   )rB   iù  Nrk   rN   rN   rN   rO   rB   ±  rP   rB   c                   @   rG   )rC   iú  Nrk   rN   rN   rN   rO   rC   µ  rP   rC   c                   @   rG   )rD   iû  Nrk   rN   rN   rN   rO   rD   ¹  rP   rD   c                   @   rG   )rE   iþ  Nrk   rN   rN   rN   rO   rE   ½  rP   rE   c                   @   rG   )rF   iÿ  Nrk   rN   rN   rN   rO   rF   Á  rP   rF   )Mr\   Útypingr   r   r   r   r   r   Úyarlr   Útypedefsr
   r   Úweb_responser   Ú__all__ÚUserWarningrH   rb   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rN   rN   rN   rO   Ú<module>   s‚     >	+		*