
    'wfc                        d Z ddlZddlZ eedej                        Z eedej                        Z eedej                        Z eedej                        Z	 eedej                        Zi ded	ed
ed ej                  eej                        d ej                  eej                        d ej                  eej                        deded ej                  ee      d ej                  eej                        ded ej                  eej                        d ej                  ee      deded ej                  eej                        d ej                  eej                        i d ej                  eej                        d ej                  ee      d ej                  ee	      ded ej                  eej                        d ej                  eej                        d ej                  eej                        d  ej                  eej                         d! ej                  eej                        d" ej                  eej                        d# ej                  eej                        d$ed% ej                  eej                        d& ej                  eej                        d'ed( ej                  eej                        d) ej                  eej                        i d* ej                  eej                        d+ed, ej                  eej                        d- ej                  eej                        d. ej                  eej                        d/ ej                  eej                        d0 ej                  eej                        d1 ej                  ee      d2 ej                  eej                        d3 ej                  eej                        d4 ej                  eej                        d5 ej                  ee      d6 ej                  ee      d7 ej                  ee      d8 ej                  eej                         d9 ej                  eej                        d: ej                  eej                        i d; ej                  eej                        d< ej                  eej                        d= ej                  eej                        d> ej                  eej                        d?ed@edAedBedCedDedE ej                  eej$                        dFedG ej                  eej&                        dH ej                  ee      dI ej                  eej                        dJ ej                  ee      dK ej                  eej&                        i dL ej                  eej                        dMedNedO ej                  eej                         dPedQ ej                  eej&                        dR ej                  eej&                        dS ej                  ee      dT ej                  eej                        dU ej                  eej                        dV ej                  eej                        dW ej                  eej                        dX ej                  eej                        dY ej                  ee      dZ ej                  ee      d[ ej                  eej                        d\ee ej                  eej                          ej                  eej&                         ej                  eej                         ej                  eej                         ej                  ee	       ej                  eej$                         ej                  eej&                        d]Zd_d^Zy)`zS3 error codes adapted into more natural Python ones.

Adapted from: https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html
    NENAMETOOLONG	ENOTEMPTYEMSGSIZE	EREMOTEIOEREMCHGAccessDeniedAccountProblemAllAccessDisabledAmbiguousGrantByEmailAddressAuthorizationHeaderMalformed	BadDigestBucketAlreadyExistsBucketAlreadyOwnedByYouBucketNotEmptyCredentialsNotSupportedCrossLocationLoggingProhibitedEntityTooSmallEntityTooLargeExpiredToken"IllegalLocationConstraintException'IllegalVersioningConfigurationExceptionIncompleteBody#IncorrectNumberOfFilesInPostRequestInlineDataTooLargeInternalErrorInvalidAccessKeyIdInvalidAddressingHeaderInvalidArgumentInvalidBucketNameInvalidBucketStateInvalidDigestInvalidEncryptionAlgorithmErrorInvalidLocationConstraintInvalidObjectStateInvalidPartInvalidPartOrderInvalidPayerInvalidPolicyDocumentInvalidRangeInvalidRequestInvalidSecurityInvalidSOAPRequestInvalidStorageClassInvalidTargetBucketForLoggingInvalidToken
InvalidURIKeyTooLongErrorMalformedACLErrorMalformedPOSTRequestMalformedXMLMaxMessageLengthExceeded!MaxPostPreDataLengthExceededErrorMetadataTooLargeMethodNotAllowedMissingAttachmentMissingContentLengthMissingRequestBodyErrorMissingSecurityElementMissingSecurityHeaderNoLoggingStatusForKeyNoSuchBucketNoSuchBucketPolicy	NoSuchKeyNoSuchLifecycleConfigurationNoSuchUploadNoSuchVersionNotImplementedNotSignedUpOperationAbortedPermanentRedirectPreconditionFailedRedirectRestoreAlreadyInProgressRequestIsNotMultiPartContentRequestTimeoutRequestTimeTooSkewedRequestTorrentOfBucketErrorSignatureDoesNotMatchServiceUnavailableSlowDownTemporaryRedirectTokenRefreshRequiredTooManyBucketsUnexpectedContentUnresolvableGrantByEmailAddressUserKeyMustBeSpecified301307400403)404405409412416500501503c                 :   t        | dd      }|| S |d   j                  d      }t        j                  |      }|r-|s|d   j                  dt        |             } ||g|i |}n(t	        t
        j                  |xs t        |       g| }|r| |_        |S )a7  Convert a ClientError exception into a Python one.

    Parameters
    ----------

    error : botocore.exceptions.ClientError
        The exception returned by the boto API.
    message : str
        An error message to use for the returned exception. If not given, the
        error message returned by the server is used instead.
    set_cause : bool
        Whether to set the __cause__ attribute to the previous exception if the
        exception is translated.
    *args, **kwargs :
        Additional arguments to pass to the exception constructor, after the
        error message. Useful for passing the filename arguments to ``IOError``.

    Returns
    -------

    An instantiated exception ready to be thrown. If the error code isn't
    recognized, an IOError with the original error message is returned.
    responseNErrorCodeMessage)getattrgetERROR_CODE_TO_EXCEPTIONstrIOErrorerrnoEIO	__cause__)	errormessage	set_causeargskwargserror_responsecodeconstructor
custom_excs	            _/home/panchajanya/Development/work/volatility3/venv/lib/python3.12/site-packages/s3fs/errors.pytranslate_boto_errorr|   s   s    0 UJ5N'"&&v.D)--d3K$W-11)SZHG :4:6:
 UYY(=3u:EE
$
    )NT)__doc__ro   	functoolsrj   EINVALr   r   r   rp   r   ENOENTr   PermissionErrorpartialrn   FileExistsErrorEPERMFileNotFoundErrorENOSYSEBUSYTimeoutErrorrl   r|    r}   r{   <module>r      s
  
   unell;E;5	5*ell3E;		2	
%ELL
1^O^o^ ^ #$5I$5$5gu||$L	^
 #$5I$5$5gu||$L^ """7ELL9^ ?^ ^ 'i'';^ 0y00%,,G^ %o^ 'i''>^ 'i'':^ O^ )/^  ./@y/@/@%,,/W!^" 'i''>#^$ *+<9+<+<Well+S%^& +)++GX>'^( &Y&&w	:)^* /+^, 0y00%,,G-^. (y((%,,?/^0 ***7ELLA1^2 +)++GU[[A3^4 &Y&&w=5^6 &'8y'8'8%,,'O7^8  !2!2!27ELL!I9^: /;^< $9$$Well;=^> )	))'5<<@?^@ OA^B .Y..wEC^D %I%%gu||<E^F 'i''>G^H I^J +)++GU\\BK^L ,9,,WellCM^N $%6Y%6%6w%MO^P %I%%gu||<Q^R #)##GU\\:S^T (y((,?U^V ***7ELLAW^X -I--gu||DY^Z %I%%gu||<[^\  1	 1 1'8 D]^^ ():):):7H)M_^` )	))'8<a^b )	))'5;;?c^d ***7ELLAe^f -I--gu||Dg^h 0y00%,,Gi^j /i//Fk^l .Y..wEm^n .Y..wEo^p %q^r +s^t "u^v #$5w^x %y^z &{^| 'i''>}^~ ?^@ )	))'5;;?A^B ***7G<C^D +)++GU\\BE^F !	!!'73G^H  1	 1 1'5;; GI^J #$5I$5$5gu||$LK^L lM^N OO^P "#49#4#4Wekk#JQ^R _S^T +)++GU[[AU^V !	!!'5;;7W^X ***7G<Y^Z -I--gu||D[^\ 'i''>]^^ ***7ELLA_^` &'8y'8'8%,,'Oa^b /i//Fc^d 
9Wg.e^f 
9Wg.g^h 
9Well3i^j 
?k^l 9Wekk29Wekk29Well39Well39Wi09Well39Wekk2{^ B(r}   