
    tc                         d dl mZ  G d de          ZeD ]/Z eeej                                         ee                     0dS )    )IntEnumc                      e Zd ZdZdNdededd fdZdefdZededefd            Z	edede
fd	            Zedede
fd
            Zedede
fd            Zedede
fd            Zedede
fd            Zedede
fd            ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$Z&d%Z'd&Z(d'Z)d(Z*d)Z+d*Z,d+Z-d,Z.d-Z/d.Z0d/Z1d0Z2d1Z3d2Z4d3Z5d4Z6d5Z7d6Z8d7Z9d8Z:d9Z;d:Z<d;Z=d<Z>d=Z?d>Z@d?ZAd@ZBdAZCdBZDdCZEdDZFdEZGdFZHdGZIdHZJdIZKdJZLdKZMdLZNdMS )OcodesaG  HTTP status codes and reason phrases

    Status codes from the following RFCs are all observed:

        * RFC 7231: Hypertext Transfer Protocol (HTTP/1.1), obsoletes 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 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
        * RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
        * RFC 7725: An HTTP Status Code to Report Legal Obstacles
        * RFC 8297: An HTTP Status Code for Indicating Hints
        * RFC 8470: Using Early Data in HTTP
     valuephrasereturnc                 X    t                               | |          }||_        ||_        |S N)int__new___value_r   )clsr   r   objs       5/usr/lib/python3/dist-packages/httpx/_status_codes.pyr   zcodes.__new__   s(    kk#u%%

    c                 *    t          | j                  S r   )strr   )selfs    r   __str__zcodes.__str__   s    4:r   c                 N    	 t          |          j        S # t          $ r Y dS w xY w)Nr   )r   r   
ValueErrorr   r   s     r   get_reason_phrasezcodes.get_reason_phrase"   s8    	<<&& 	 	 	22	s    
$$c                 "    d|cxk    odk    nc S )zI
        Returns `True` for 1xx status codes, `False` otherwise.
        d       r   s     r   is_informationalzcodes.is_informational)   &    
 e""""s"""""r   c                 "    d|cxk    odk    nc S )zI
        Returns `True` for 2xx status codes, `False` otherwise.
           i+  r   r   s     r   
is_successzcodes.is_success0   r    r   c                 "    d|cxk    odk    nc S )zI
        Returns `True` for 3xx status codes, `False` otherwise.
        ,  i  r   r   s     r   is_redirectzcodes.is_redirect7   r    r   c                 "    d|cxk    odk    nc S )zI
        Returns `True` for 4xx status codes, `False` otherwise.
          i  r   r   s     r   is_client_errorzcodes.is_client_error>   r    r   c                 "    d|cxk    odk    nc S )zI
        Returns `True` for 5xx status codes, `False` otherwise.
          W  r   r   s     r   is_server_errorzcodes.is_server_errorE   r    r   c                 "    d|cxk    odk    nc S )zP
        Returns `True` for 4xx or 5xx status codes, `False` otherwise.
        r(   r,   r   r   s     r   is_errorzcodes.is_errorL   r    r   )r   Continue)e   zSwitching Protocols)f   
Processing)g   zEarly Hints)r"   OK)   Created)   Accepted)   zNon-Authoritative Information)   z
No Content)   zReset Content)   zPartial Content)   zMulti-Status)   zAlready Reported)   zIM Used)r%   zMultiple Choices)i-  zMoved Permanently)i.  Found)i/  z	See Other)i0  zNot Modified)i1  z	Use Proxy)i3  zTemporary Redirect)i4  zPermanent Redirect)r(   zBad Request)i  Unauthorized)i  zPayment Required)i  	Forbidden)i  z	Not Found)i  zMethod Not Allowed)i  zNot Acceptable)i  zProxy Authentication Required)i  zRequest Timeout)i  Conflict)i  Gone)i  zLength Required)i  zPrecondition Failed)i  zRequest Entity Too Large)i  zRequest-URI Too Long)i  zUnsupported Media Type)i  zRequested Range Not Satisfiable)i  zExpectation Failed)i  zI'm a teapot)i  zMisdirected Request)i  zUnprocessable Entity)i  Locked)i  zFailed Dependency)i  z	Too Early)i  zUpgrade Required)i  zPrecondition Required)i  zToo Many Requests)i  zRequest Header Fields Too Large)i  zUnavailable For Legal Reasons)r+   zInternal Server Error)i  zNot Implemented)i  zBad Gateway)i  zService Unavailable)i  zGateway Timeout)i  zHTTP Version Not Supported)i  zVariant Also Negotiates)i  zInsufficient Storage)i  zLoop Detected)i  zNot Extended)i  zNetwork Authentication RequiredN)r   )O__name__
__module____qualname____doc__r   r   r   r   classmethodr   boolr   r#   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REQUEST_ENTITY_TOO_LARGEREQUEST_URI_TOO_LONGUNSUPPORTED_MEDIA_TYPEREQUESTED_RANGE_NOT_SATISFIABLEEXPECTATION_FAILEDIM_A_TEAPOTMISDIRECTED_REQUEST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_REQUIREDr   r   r   r   r      s        & C  g         c c    [ #S #T # # # [# #s #t # # # [# # # # # # [# #C #D # # # [# #C #D # # # [# #S #T # # # [# H4"J$K 
BGH$H!"J(M,O&L.G /0E I&L I22 %K&L. I I2*N$H!,OHD,O4>6:&L#2%K46F0 I.80&L#$H! 9,O$K4,O!B<6(M&L&L###r   r   N)enumr   r   codesetattr_name_lowerr   r   r   r   <module>r      s         UM UM UM UM UMG UM UM UMr  3 3DGE4;$$&&D		22223 3r   