ó
    F\hþ   ã                   ót   • S SK JrJrJr  SS/r\" \5       " S S5      5       r\" \5       " S S5      5       rg)é    )ÚStrEnumÚIntEnumÚ_simple_enumÚ
HTTPStatusÚ
HTTPMethodc                   óz  • \ rS rSrSrSIS jr\S 5       r\S 5       r\S 5       r	\S 5       r
\S 5       rS	rS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr Sr!Sr"S r#S!r$S"r%S#r&S$r'S%r(S&r)S'r*S(r+S)r,S*r-S+r.S,r/\/r0S-r1\1r2S.r3S/r4\4r5S0r6S1r7S2r8S3r9\9r:S4r;S5r<S6r=S7r>S8r?S9r@S:rAS;rBS<rCS=rDS>rES?rFS@rGSArHSBrISCrJSDrKSErLSFrMSGrNgH)Jr   é   a	  HTTP status codes and reason phrases

Status codes from the following RFCs are all observed:

    * RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
    * RFC 6585: Additional HTTP Status Codes
    * RFC 3229: Delta encoding in HTTP
    * RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
    * RFC 5842: Binding Extensions to WebDAV
    * RFC 7238: Permanent Redirect
    * RFC 2295: Transparent Content Negotiation in HTTP
    * RFC 2774: An HTTP Extension Framework
    * RFC 7725: An HTTP Status Code to Report Legal Obstacles
    * RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
    * RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
    * RFC 8297: An HTTP Status Code for Indicating Hints
    * RFC 8470: Using Early Data in HTTP
c                 óT   • [         R                  X5      nXl        X$l        X4l        U$ ©N)ÚintÚ__new__Ú_value_ÚphraseÚdescription)ÚclsÚvaluer   r   Úobjs        Ú$/usr/lib/python3.13/http/__init__.pyr   ÚHTTPStatus.__new__   s$   € Ü�k‰k˜#Ó%ˆØŒØŒ
Ø%ŒØˆ
ó    c                 ó,   • SU s=:*  =(       a    S:*  $ s  $ )Néd   éÇ   © ©Úselfs    r   Úis_informationalÚHTTPStatus.is_informational!   ó   € à�d×!Ó!˜cÑ!Ð!Ñ!Ð!r   c                 ó,   • SU s=:*  =(       a    S:*  $ s  $ )NéÈ   i+  r   r   s    r   Ú
is_successÚHTTPStatus.is_success%   r   r   c                 ó,   • SU s=:*  =(       a    S:*  $ s  $ )Né,  i�  r   r   s    r   Úis_redirectionÚHTTPStatus.is_redirection)   r   r   c                 ó,   • SU s=:*  =(       a    S:*  $ s  $ )Né�  ió  r   r   s    r   Úis_client_errorÚHTTPStatus.is_client_error-   r   r   c                 ó,   • SU s=:*  =(       a    S:*  $ s  $ )Néô  iW  r   r   s    r   Úis_server_errorÚHTTPStatus.is_server_error1   r   r   )r   ÚContinuez!Request received, please continue)ée   zSwitching Protocolsz.Switching to new protocol; obey Upgrade header)éf   Ú
Processing)ég   zEarly Hints)r!   ÚOKz#Request fulfilled, document follows)éÉ   ÚCreatedzDocument created, URL follows)éÊ   ÚAcceptedz/Request accepted, processing continues off-line)éË   zNon-Authoritative InformationzRequest fulfilled from cache)éÌ   z
No Contentz"Request fulfilled, nothing follows)éÍ   zReset Contentz"Clear input form for further input)éÎ   zPartial ContentzPartial content follows)éÏ   zMulti-Status)éÐ   zAlready Reported)éâ   zIM Used)r%   zMultiple Choicesz,Object has several resources -- see URI list)i-  zMoved Permanentlyú(Object moved permanently -- see URI list)i.  ÚFoundú(Object moved temporarily -- see URI list)i/  z	See Otherz'Object moved -- see Method and URL list)i0  zNot Modifiedz)Document has not changed since given time)i1  z	Use Proxyz@You must use proxy specified in Location to access this resource)i3  zTemporary RedirectrC   )i4  zPermanent RedirectrA   )r)   zBad Requestz(Bad request syntax or unsupported method)i‘  ÚUnauthorizedz*No permission -- see authorization schemes)i’  zPayment Requiredz"No payment -- see charging schemes)i“  Ú	Forbiddenz0Request forbidden -- authorization will not help)i”  z	Not FoundzNothing matches the given URI)i•  zMethod Not Allowedz-Specified method is invalid for this resource)i–  zNot Acceptablez%URI not available in preferred format)i—  zProxy Authentication Requiredz7You must authenticate with this proxy before proceeding)i˜  zRequest Timeoutz"Request timed out; try again later)i™  ÚConflictzRequest conflict)iš  ÚGonez5URI no longer exists and has been permanently removed)i›  zLength Requiredz"Client must specify Content-Length)iœ  zPrecondition Failedz Precondition in headers is false)i�  zContent Too LargezContent is too large)iž  zURI Too LongzURI is too long)iŸ  zUnsupported Media Typez!Entity body in unsupported format)i   zRange Not SatisfiablezCannot satisfy request range)i¡  zExpectation Failedz'Expect condition could not be satisfied)i¢  zI'm a Teapotz5Server refuses to brew coffee because it is a teapot.)i¥  zMisdirected Requestz(Server is not able to produce a response)i¦  zUnprocessable Content)i§  ÚLocked)i¨  zFailed Dependency)i©  z	Too Early)iª  zUpgrade Required)i¬  zPrecondition Requiredz8The origin server requires the request to be conditional)i­  zToo Many RequestszOThe user has sent too many requests in a given amount of time ("rate limiting"))i¯  zRequest Header Fields Too LargezVThe server is unwilling to process the request because its header fields are too large)iÃ  zUnavailable For Legal ReasonszOThe server is denying access to the resource as a consequence of a legal demand)r-   zInternal Server ErrorzServer got itself in trouble)iõ  zNot Implementedz&Server does not support this operation)iö  zBad Gatewayz+Invalid responses from another server/proxy)i÷  zService Unavailablez8The server cannot process the request due to a high load)iø  zGateway Timeoutz4The gateway server did not receive a timely response)iù  zHTTP Version Not SupportedzCannot fulfill request)iú  zVariant Also Negotiates)iû  zInsufficient Storage)iü  zLoop Detected)iþ  zNot Extended)iÿ  zNetwork Authentication Requiredz7The client needs to authenticate to gain network accessr   N)Ú )OÚ__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   Úpropertyr   r"   r&   r*   r.   ÚCONTINUEÚSWITCHING_PROTOCOLSÚ
PROCESSINGÚEARLY_HINTSr5   ÚCREATEDÚACCEPTEDÚNON_AUTHORITATIVE_INFORMATIONÚ
NO_CONTENTÚRESET_CONTENTÚPARTIAL_CONTENTÚMULTI_STATUSÚALREADY_REPORTEDÚIM_USEDÚMULTIPLE_CHOICESÚMOVED_PERMANENTLYÚFOUNDÚ	SEE_OTHERÚNOT_MODIFIEDÚ	USE_PROXYÚTEMPORARY_REDIRECTÚPERMANENT_REDIRECTÚBAD_REQUESTÚUNAUTHORIZEDÚPAYMENT_REQUIREDÚ	FORBIDDENÚ	NOT_FOUNDÚMETHOD_NOT_ALLOWEDÚNOT_ACCEPTABLEÚPROXY_AUTHENTICATION_REQUIREDÚREQUEST_TIMEOUTÚCONFLICTÚGONEÚLENGTH_REQUIREDÚPRECONDITION_FAILEDÚCONTENT_TOO_LARGEÚREQUEST_ENTITY_TOO_LARGEÚURI_TOO_LONGÚREQUEST_URI_TOO_LONGÚUNSUPPORTED_MEDIA_TYPEÚRANGE_NOT_SATISFIABLEÚREQUESTED_RANGE_NOT_SATISFIABLEÚEXPECTATION_FAILEDÚIM_A_TEAPOTÚMISDIRECTED_REQUESTÚUNPROCESSABLE_CONTENTÚUNPROCESSABLE_ENTITYÚLOCKEDÚFAILED_DEPENDENCYÚ	TOO_EARLYÚUPGRADE_REQUIREDÚPRECONDITION_REQUIREDÚTOO_MANY_REQUESTSÚREQUEST_HEADER_FIELDS_TOO_LARGEÚUNAVAILABLE_FOR_LEGAL_REASONSÚINTERNAL_SERVER_ERRORÚNOT_IMPLEMENTEDÚBAD_GATEWAYÚSERVICE_UNAVAILABLEÚGATEWAY_TIMEOUTÚHTTP_VERSION_NOT_SUPPORTEDÚVARIANT_ALSO_NEGOTIATESÚINSUFFICIENT_STORAGEÚLOOP_DETECTEDÚNOT_EXTENDEDÚNETWORK_AUTHENTICATION_REQUIREDÚ__static_attributes__r   r   r   r   r      s7  † ñô$ð ñ"ó ð"ð ñ"ó ð"ð ñ"ó ð"ð ñ"ó ð"ð ñ"ó ð"ð D€Hð>Ðà"€JØ$€Kð 
:€BØ=€Gð;€Hð%IÐ!àH€JØN€MØG€OØ&€LØ.ÐØ€Gð8Ðð4ÐàD€EØK€Ið5€LðL€Ið4Ðð4Ðð4€Kð6€Lð.Ðð<€Ið)€Ið9Ðð1€Nð%CÐ!ð.€Oà2€HðA€Dð.€Oð,Ðð Ðà0Ðð€Là'Ðð-Ðð(Ðà&;Ð#ð3ÐðA€Kð4Ðà8ÐØ0ÐØ€FØ0ÐØ €IØ.ÐðDÐð4Ðð' Ð#ð%7Ð!ð(Ðð2€Oð7€KðDÐð@€Oð""Ðà<ÐØ6ÐØ(€MØ&€Lð'CÓ#r   c                   óH   • \ rS rSrSrS rS rSrSrSr	Sr
S	rS
rSrSrSrSrg)r   é°   z½HTTP methods and descriptions

Methods from the following RFCs are all observed:

    * RFC 9110: HTTP Semantics, obsoletes 7231, which obsoleted 2616
    * RFC 5789: PATCH Method for HTTP
c                 óH   • [         R                  X5      nXl        X#l        U$ r   )Ústrr   r   r   )r   r   r   r   s       r   r   ÚHTTPMethod.__new__¹   s   € Ü�k‰k˜#Ó%ˆØŒØ%ŒØˆ
r   c                 óT   • SU R                   R                  < SU R                  < S3$ )NÚ<Ú.Ú>)Ú	__class__rJ   Ú_name_r   s    r   Ú__repr__ÚHTTPMethod.__repr__¿   s   � Ø ŸN™N×3Ô3°T·[´[ÐAÐAr   )ÚCONNECTz%Establish a connection to the server.)ÚDELETEzRemove the target.)ÚGETzRetrieve the target.)ÚHEADzBSame as GET, but only retrieve the status line and header section.)ÚOPTIONSz2Describe the communication options for the target.)ÚPATCHz(Apply partial modifications to a target.)ÚPOSTz<Perform target-specific processing with the request payload.)ÚPUTz,Replace the target with the request payload.)ÚTRACEz>Perform a message loop-back test along the path to the target.r   N)rJ   rK   rL   rM   rN   r   r�   rŸ   r    r¡   r¢   r£   r¤   r¥   r¦   r§   r‘   r   r   r   r   r   °   sB   † ñòòBð A€GØ+€FØ
'€CØW€DØM€GØ?€EØQ€DØ
?€CØUƒEr   N)Úenumr   r   r   Ú__all__r   r   r   r   r   Ú<module>rª      s[   ðß /Ñ /à˜Ð
&€ñ ˆgÓ÷fCð fCó ðfCñR ˆgÓ÷Vð Vó ñVr   