
    6hF                    .   S r SSKJr  SSKrSSKJrJrJrJrJ	r	J
r
  SSKJr  SS jr " S S	5      r " S
 S\\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S  S!\5      r " S" S#\5      r " S$ S%\5      r " S& S'\5      r  " S( S)\ 5      r! " S* S+\5      r" " S, S-\5      r# " S. S/\5      r$ " S0 S1\5      r% " S2 S3\5      r& " S4 S5\5      r' " S6 S7\5      r( " S8 S9\5      r) " S: S;\5      r* " S< S=\*5      r+ " S> S?\*5      r, " S@ SA\5      r- " SB SC\5      r. " SD SE\.5      r/ " SF SG\5      r0 " SH SI\5      r1 " SJ SK\15      r2 " SL SM\15      r3SSN jr4SSO jr5 " SP SQ\05      r6 " SR SS\\5      r7 " ST SU\75      r8 " SV SW\85      r9 " SX SY\75      r: " SZ S[\75      r; " S\ S]\<5      r= " S^ S_\5      r> " S` Sa\5      r? " Sb Sc\<5      r@ " Sd Se\@5      rA " Sf Sg\@5      rB " Sh Si\C5      rD " Sj Sk\5      rE " Sl Sm\F5      rG " Sn So\5      rH " Sp Sq\C5      rI " Sr Ss\\C5      rJ " St Su\5      rK " Sv Sw\L5      rM " Sx Sy\M5      rN " Sz S{\C5      rO " S| S}\5      rP " S~ S\5      rQ " S S\5      rR " S S\5      rS " S S\5      rT " S S\5      rU " S S\5      rV " S S\5      rW " S S\5      rX " S S\5      rYg)zdMercurial exceptions.

This allows us to catch exceptions at higher levels without forcing
imports.
    )annotationsN)AnyStrIterableListOptionalSequenceUnion   )pycompatc                    U R                   (       d  g[        U R                   5      S:X  a#  [        R                  " U R                   S   5      $ SSR	                  S U R                    5       5      -  $ )z?Byte-stringify exception in the same way as BaseException_str()    r
   r   s   (%s)   , c              3  T   #    U  H  nS [         R                  " U5      -  v   M      g7f)s   '%s'N)r   bytestr).0as     1/usr/lib/python3/dist-packages/mercurial/error.py	<genexpr>_tobytes.<locals>.<genexpr>%   s      Px!(*:*:1*= =xs   &()argslenr   r   join)excs    r   _tobytesr      sS    88
388},,UZZPsxxPPPPr   c                  ,   ^  \ rS rSrSrU 4S jrSrU =r$ )Hint(   zMix-in to provide a hint of an error

This should come first in the inheritance list to consume a hint and
pass remaining arguments to the exception class.
c                T   > UR                  SS 5      U l        [        TU ]  " U0 UD6  g )Nhint)popr   super__init__)selfr   kw	__class__s      r   r"   Hint.__init__/   s'    %'VVFD%9	$%"%r   r   __name__
__module____qualname____firstlineno____doc__r"   __static_attributes____classcell__r%   s   @r   r   r   (   s    & &r   r   c                  H    \ rS rSrSrSrSrS	S
S jjrS rSS jr	SS jr
Srg)Error4   z Base class for Mercurial errors.Nc                F    Xl         X l        [        R                  X5        g N)messager   	Exceptionr"   )r#   r6   r   s      r   r"   Error.__init__:   s    	 	4)r   c                    U R                   $ r5   )r6   r#   s    r   	__bytes__Error.__bytes__A   s    ||r   c                J    [         R                  " U R                  5       5      $ r5   )r   sysstrr;   r:   s    r   __str__Error.__str__D   s     t~~/00r   c                    SSK Jn  U" S5      U R                  -  nU R                  (       a  X!" S5      U R                  -  -  nU$ )Nr
   _s
   abort: %s
   (%s)
i18nrC   r6   r   r#   rC   r6   s      r   formatError.formatJ   s;    N#dll299q|dii//Gr   )r   r6   r5   )r6   bytesr   Optional[bytes]returnNone)rL   strrL   rJ   )r)   r*   r+   r,   r-   coarse_exit_codedetailed_exit_coder"   r;   r?   rH   r.    r   r   r2   r2   4   s%    **1r   r2   c                      \ rS rSrSrSrg)AbortS   z5Raised if a command needs to print an error and exit.rR   Nr)   r*   r+   r,   r-   r.   rR   r   r   rT   rT   S   s    ?r   rT   c                      \ rS rSrSrSrSrg)StorageErrorW   zeRaised when an error occurs in a storage layer.

Usually subclassed by a storage-specific exception.
2   rR   Nr)   r*   r+   r,   r-   rQ   r.   rR   r   r   rX   rX   W       
 r   rX   c                      \ rS rSrSrg)RevlogError`   rR   Nr)   r*   r+   r,   r.   rR   r   r   r^   r^   `       r   r^   c                      \ rS rSrSS jrSrg)SidedataHashErrord   c                6    S U l         Xl        X l        X0l        g r5   )r   sidedatakeyexpecteddigestactualdigest)r#   keyexpectedgots       r   r"   SidedataHashError.__init__e   s    	&r   )rh   rg   r   rf   N)ri   intrj   rJ   rk   rJ   rL   rM   r)   r*   r+   r,   r"   r.   rR   r   r   rc   rc   d   s     r   rc   c                      \ rS rSr\rSrg)FilteredIndexErrorl   rR   Nr)   r*   r+   r,   r   r;   r.   rR   r   r   rp   rp   l       Ir   rp   c                  *    \ rS rSrSS jrS rS rSrg)LookupErrorp   c                    Xl         X l        X0l        [        U[        5      (       a  [        U5      S:X  a  SSKJn  U" U5      n[        R                  U SU[        R                  " U5      U4-  5        g )N   r
   )hexs	   %s@%s: %s)nameindexlookupmessage
isinstancerJ   r   nodery   r^   r"   r   r   )r#   rz   r{   r6   ry   s        r   r"   LookupError.__init__q   sa    	
 %dE""s4yB!t9D,%)9)9$)?!II	
r   c                ,    [         R                  U 5      $ r5   )r^   r;   r:   s    r   r;   LookupError.__bytes__   s    $$T**r   c                ,    [         R                  U 5      $ r5   )r^   r?   r:   s    r   r?   LookupError.__str__   s    ""4((r   )r{   r|   rz   N)rz   rJ   r{   rJ   r6   rJ   rL   rM   )r)   r*   r+   r,   r"   r;   r?   r.   rR   r   r   ru   ru   p   s    
+)r   ru   c                      \ rS rSrSrg)AmbiguousPrefixLookupError   rR   Nr`   rR   r   r   r   r      ra   r   r   c                      \ rS rSrSrg)FilteredLookupError   rR   Nr`   rR   r   r   r   r      ra   r   r   c                      \ rS rSrSrg)ManifestLookupError   rR   Nr`   rR   r   r   r   r      ra   r   r   c                  4   ^  \ rS rSrSrSU 4S jjr\rSrU =r	$ )CommandError   z7Exception raised on errors in parsing the command line.c                :   > Xl         X l        [        TU ]  5         g r5   )commandr6   r!   r"   )r#   r   r6   r%   s      r   r"   CommandError.__init__   s    r   )r   r6   )r   rK   r6   rJ   rL   rM   
r)   r*   r+   r,   r-   r"   r   r;   r.   r/   r0   s   @r   r   r      s    A
 Ir   r   c                  D   ^  \ rS rSrSr S     SU 4S jjjr\rSrU =r	$ )UnknownCommand   z8Exception raised if command is not in the command table.c                :   > Xl         X l        [        TU ]  5         g r5   )r   all_commandsr!   r"   )r#   r   r   r%   s      r   r"   UnknownCommand.__init__   s    
 (r   )r   r   r5   )r   rJ   r   zOptional[List[bytes]]rL   rM   r   r0   s   @r   r   r      s8    B
 /3 , 
	  Ir   r   c                  4   ^  \ rS rSrSrSU 4S jjr\rSrU =r	$ )AmbiguousCommand   zCException raised if command shortcut matches more than one command.c                :   > Xl         X l        [        TU ]  5         g r5   )prefixmatchesr!   r"   )r#   r   r   r%   s      r   r"   AmbiguousCommand.__init__   s    r   )r   r   )r   rJ   r   List[bytes]rL   rM   r   r0   s   @r   r   r      s    M
 Ir   r   c                  4   ^  \ rS rSrSrSU 4S jjr\rSrU =r	$ )WorkerError   z,Exception raised when a worker process dies.c                0   > Xl         [        TU ]	  U5        g r5   )status_coder!   r"   )r#   r   r%   s     r   r"   WorkerError.__init__   s    &%r   )r   )r   rm   rL   rM   r   r0   s   @r   r   r      s    6&
 Ir   r   c                  *    \ rS rSrSrSrSrSS jrSrg)	InterventionRequired   z<Exception raised when a command requires human intervention.r
      c                    SSK Jn  U" S5      U R                  -  nU R                  (       a  X!" S5      U R                  -  -  nU$ )Nr
   rB   s   %s
rD   rE   rG   s      r   rH   InterventionRequired.format   s:    G*t||+99q|dii//Gr   rR   NrO   )	r)   r*   r+   r,   r-   rP   rQ   rH   r.   rR   r   r   r   r      s    Fr   r   c                  "    \ rS rSrSrSS jrSrg)ConflictResolutionRequired   zOException raised when a continuable command required merge conflict resolution.c                Z    SSK Jn  Xl        [        R	                  U U" S5      U-  5        g )Nr
   rB   s@   unresolved conflicts (see 'hg resolve', then 'hg %s --continue'))rF   rC   opnamer   r"   )r#   r   rC   s      r   r"   #ConflictResolutionRequired.__init__   s0    %%S 	
r   )r   N)r   rJ   rL   rM   r)   r*   r+   r,   r-   r"   r.   rR   r   r   r   r      s
    Y

r   r   c                      \ rS rSrSrSrSrg)
InputError   zsIndicates that the user made an error in their input.

Examples: Invalid command, invalid flags, invalid revision.

   rR   Nr[   rR   r   r   r   r      r\   r   r   c                      \ rS rSrSrSrSrg)
StateError   zIndicates that the operation might work if retried in a different state.

Examples: Unresolved merge conflicts, unfinished operations.
rx   rR   Nr[   rR   r   r   r   r      r\   r   r   c                      \ rS rSrSrSrSrg)CanceledError   zrIndicates that the user canceled the operation.

Examples: Close commit editor with error status, quit chistedit.
   rR   Nr[   rR   r   r   r   r      s    
 r   r   c                      \ rS rSrSrSrSrg)SecurityError   zIndicates that some aspect of security failed.

Examples: Bad server credentials, expired local credentials for network
filesystem, mismatched GPG signature, DoS protection.
   rR   Nr[   rR   r   r   r   r      s     r   r   c                      \ rS rSrSrSrg)HookLoadErrori  zcraised when loading a hook fails, aborting an operation

Exists to allow more specialized catching.rR   NrV   rR   r   r   r   r     s    2r   r   c                      \ rS rSrSrSrSrg)	HookAborti  zfraised when a validation hook fails, aborting an operation

Exists to allow more specialized catching.r   rR   Nr[   rR   r   r   r   r     s    2 r   r   c                  T   ^  \ rS rSrSrSr  S       SU 4S jjjrS	S jrSrU =r	$ )
ConfigErrori  z*Exception raised when parsing config files   c                ,   > [         TU ]  XS9  X l        g Nr'   r!   r"   locationr#   r6   r   r   r%   s       r   r"   ConfigError.__init__       	, r   c                   SSK Jn  U R                  b6  U" S5      [        R                  " U R                  5      U R
                  4-  nOU" S5      U R
                  -  nU R                  (       a  X!" S5      U R                  -  -  nU$ )Nr
   rB   s   config error at %s: %s
s   config error: %s
rD   rF   rC   r   r   r   r6   r   rG   s      r   rH   ConfigError.format#  sv    ==$34  /8 G
 -.=G99q|dii//Gr   r   NN)r6   rJ   r   rK   r   rK   rL   rM   rO   
r)   r*   r+   r,   r-   rQ   r"   rH   r.   r/   r0   s   @r   r   r     sN    4
 %) $	!! "! 	!
 
! ! r   r   c                      \ rS rSrSrSrg)UpdateAborti2  z6Raised when an update is aborted for destination issuerR   NrV   rR   r   r   r   r   2      @r   r   c                      \ rS rSrSrSrg)MergeDestAborti6  z7Raised when an update is aborted for destination issuesrR   NrV   rR   r   r   r   r   6  s    Ar   r   c                      \ rS rSrSrSrg)NoMergeDestAborti:  zBRaised when an update is aborted because there is nothing to mergerR   NrV   rR   r   r   r   r   :  s    Lr   r   c                      \ rS rSrSrSrg)ManyMergeDestAborti>  zARaised when an update is aborted because destination is ambiguousrR   NrV   rR   r   r   r   r   >  s    Kr   r   c                      \ rS rSrSrS rSrg)ResponseExpectediB  z+Raised when an EOF is received for a promptc                F    SSK Jn  [        R                  X" S5      5        g )Nr
   rB   s   response expected)rF   rC   rT   r"   )r#   rC   s     r   r"   ResponseExpected.__init__E  s    tQ345r   rR   Nr   rR   r   r   r   r   B  s
    56r   r   c                      \ rS rSrSrSrSrg)RemoteErroriK  z:Exception raised when interacting with a remote repo failsrd   rR   Nr[   rR   r   r   r   r   K  s    Dr   r   c                  >   ^  \ rS rSrSr  S   SU 4S jjjrSrU =r$ )OutOfBandErroriQ  z3Exception raised when a remote repo reports failurec                   > SSK Jn  U(       a  U" S5      UR                  S5      -  nOU" S5      n[        TU ]  XS9  g )Nr
   rB   s   remote error:
%s   
s   remote errorr'   )rF   rC   rstripr!   r"   )r#   r6   r   rC   r%   s       r   r"   OutOfBandError.__init__T  s>    
 	,-u0EEG(G,r   rR   r   )r6   rK   r   rK   r(   r0   s   @r   r   r   Q  s*    = $( $- - - -r   r   c                  P   ^  \ rS rSrSrSr  S     SU 4S jjjrS	S jrSrU =r	$ )

ParseErroric  z@Raised when parsing config files and {rev,file}sets (msg[, pos])r   c                ,   > [         TU ]  XS9  X l        g r   r   r   s       r   r"   ParseError.__init__h  r   r   c                   SSK Jn  U R                  b6  U" S5      [        R                  " U R                  5      U R
                  4-  nOU" S5      U R
                  -  nU R                  (       a  X!" S5      U R                  -  -  nU$ )Nr
   rB   s   hg: parse error at %s: %s
s   hg: parse error: %s
rD   r   rG   s      r   rH   ParseError.formatq  sv    ==$67  /; G
 01DLL@G99q|dii//Gr   r   r   )r6   rJ   r   zOptional[Union[bytes, int]]r   rK   rO   r   r0   s   @r   r   r   c  sD    J
 15 $	!! .! 	! ! r   r   c                      \ rS rSr\rSrg)
PatchErrori  rR   Nrr   rR   r   r   r   r     rs   r   r   c                      \ rS rSr\rSrg)PatchParseErrori  rR   Nrr   rR   r   r   r   r     rs   r   r   c                      \ rS rSr\rSrg)PatchApplicationErrori  rR   Nrr   rR   r   r   r   r     rs   r   r   c                Z   ^ U4S jnU  Vs/ s H  o2" U5      S:  d  M  UPM     sn$ s  snf )Nc                P   > [         R                  " S TU 5      R                  5       $ r5   )difflibSequenceMatcherratio)xvalues    r   <lambda>getsimilar.<locals>.<lambda>  s    G++D%;AACr   g333333?rR   )symbolsr   simss    `  r   
getsimilarr    s,    
CC /w!#a&3,Aw///s   ((c                    SSK Jn  [        U 5      S:X  a  U" S5      U S   -  $ U (       a%  SR                  [	        U 5      5      nU" S5      U-  $ g )Nr
   rB   s   did you mean %s?r   r   s   did you mean one of %s?)rF   rC   r   r   sorted)similarrC   sss      r   similarity_hintr
    sO    
7|q$%
22	ZZw(+,r11r   c                  "    \ rS rSrSrSS jrSrg)UnknownIdentifieri  zFException raised when a {rev,file}set references an unknown identifierc                v    SSK Jn  [        X!5      n[        U5      n[        R                  X" S5      U-  US9  g )Nr
   rB   s   unknown identifier: %sr'   )rF   rC   r  r
  r   r"   )r#   functionr  rC   r  r   s         r   r"   UnknownIdentifier.__init__  s>    W/w'!-.9 	 	
r   rR   N)r  rJ   r  Iterable[bytes]rL   rM   r   rR   r   r   r  r    s
    P
r   r  c                      \ rS rSr\rSrg)	RepoErrori  rR   Nrr   rR   r   r   r  r    rs   r   r  c                      \ rS rSrSrg)RepoLookupErrori  rR   Nr`   rR   r   r   r  r    ra   r   r  c                      \ rS rSrSrg)FilteredRepoLookupErrori  rR   Nr`   rR   r   r   r  r    ra   r   r  c                      \ rS rSrSrg)CapabilityErrori  rR   Nr`   rR   r   r   r  r    ra   r   r  c                      \ rS rSrSrSrg)RequirementErrori  z6Exception raised if .hg/requires has an unknown entry.rR   NrV   rR   r   r   r  r    r   r   r  c                  "    \ rS rSrSrSS jrSrg)
StdioErrori  z'Raised if I/O to stdout or stderr failsc                X    [         R                  XR                  UR                  5        g r5   )IOErrorr"   errnostrerror)r#   errs     r   r"   StdioError.__init__  s    yy#,,7r   rR   N)r!  r  rL   rM   r   rR   r   r   r  r    s
    18r   r  c                      \ rS rSrSS jrSrg)UnsupportedMergeRecordsi  c                    SSK Jn  [        U5      U l        SR	                  U R                  5      n[
        R                  U U" S5      U-  U" S5      S9  g )Nr
   rB       s#   unsupported merge state records: %ssI   see https://mercurial-scm.org/wiki/MergeStateRecords for more informationr'   )rF   rC   r  recordtypesr   rT   r"   )r#   r'  rC   r  s       r   r"    UnsupportedMergeRecords.__init__  sU    !+.IId&&'459$ 	 	
r   )r'  N)r'  r  rL   rM   rn   rR   r   r   r$  r$    s    
r   r$  c                  F   ^  \ rS rSrSr  S       SU 4S jjjrSrU =r$ )UnknownVersioni  zHgeneric exception for aborting from an encounter with an unknown versionc                ,   > X0l         [        TU ]	  XS9  g r   )versionr!   r"   )r#   msgr   r,  r%   s       r   r"   UnknownVersion.__init__  s     (r   )r,  r   )r-  rJ   r   rK   r,  rK   rL   rM   r(   r0   s   @r   r*  r*    s>    R
 !%#'	)) ) !	)
 
) )r   r*  c                  2    \ rS rSr          SS jrSrg)	LockErrori  c                <    [         R                  XX#5        X@l        g r5   )r  r"   desc)r#   r  r   filenamer2  s        r   r"   LockError.__init__  s     	h9	r   )r2  N)
r  rm   r   rN   r3  rJ   r2  rK   rL   rM   rn   rR   r   r   r0  r0    s7      	
  
r   r0  c                  *    \ rS rSr      SS jrSrg)LockHeldi  c                J    [         R                  XSX#5        X l        X@l        g )Nz	Lock held)r0  r"   r3  locker)r#   r  r3  r2  r8  s        r   r"   LockHeld.__init__  s      	4XD'r   )r3  r8  N)r  rm   r3  rJ   r2  rK   rn   rR   r   r   r6  r6    s#    		 	 		r   r6  c                      \ rS rSrSrg)LockUnavailablei  rR   Nr`   rR   r   r   r;  r;    ra   r   r;  c                      \ rS rSr\rSrg) LockInheritanceContractViolationi  rR   Nrr   rR   r   r   r=  r=    rs   r   r=  c                      \ rS rSrSr\rSrg)ResponseErrori  z6Raised to print an error with part of output and exit.rR   Nr)   r*   r+   r,   r-   r   r;   r.   rR   r   r   r?  r?    s
    @Ir   r?  c                      \ rS rSrSrSrg)SignalInterrupti  z'Exception raised on SIGTERM and SIGHUP.rR   NrV   rR   r   r   rB  rB    s    1r   rB  c                      \ rS rSr\rSrg)SignatureErrori  rR   Nrr   rR   r   r   rD  rD    rs   r   rD  c                      \ rS rSrSr\rSrg)	PushRacedi  z?An exception raised during unbundling that indicate a push racerR   Nr@  rR   r   r   rF  rF    s
    IIr   rF  c                  4   ^  \ rS rSrSrSU 4S jjr\rSrU =r	$ )ProgrammingErrori   zBRaised if a mercurial (core or extension) developer made a mistakec                Z   > [         R                  " U5      n[        TU ]  " U/UQ70 UD6  g r5   )r   r>   r!   r"   )r#   r-  r   kwargsr%   s       r   r"   ProgrammingError.__init__#  s*     ooc".t.v.r   rR   )r-  r   r   r0   s   @r   rH  rH     s    L/ Ir   rH  c                      \ rS rSrSr\rSrg)WdirUnsupportedi-  z;An exception which is raised when 'wdir()' is not supportedrR   Nr@  rR   r   r   rM  rM  -  s
    EIr   rM  c                      \ rS rSrSr\rSrg)BundleValueErrori4  z-error raised when bundle2 cannot be processedrR   Nr@  rR   r   r   rO  rO  4  s
    7Ir   rO  c                      \ rS rSrSS jrSrg)BundleUnknownFeatureErrori:  Nc                F   Xl         X l        X0l        U R                   c  SnOUnU R                  nU R                  (       a  U R                  (       a  [        U R                  5      [        U R                  5      :X  d   e/ n[	        U R                  5       HT  u  pgU R                  U   nUc  UR                  U5        M*  UR                  SU[        R                  " U5      4-  5        MV     U(       a  SUSR                  U5      4-  n[        R                  X5        g )Ns   Stream Parameters   %s=%rs   %s - %sr   )parttypeparamsvaluesr   	enumerateappendr   maybebytestrr   
ValueErrorr"   )	r#   rS  rT  rU  r-  entriesidxparvals	            r   r"   "BundleUnknownFeatureError.__init__;  s     == %CC++;;4;;t{{#s4;;'7777G%dkk2kk#&;NN3'NN8sH4I4I#4N.O#OP 3 UZZ%899CD&r   )rT  rS  rU  )NrR   rR   rn   rR   r   r   rQ  rQ  :  s    'r   rQ  c                      \ rS rSrSr\rSrg)ReadOnlyPartErroriR  z<error raised when code tries to alter a part being generatedrR   Nr@  rR   r   r   r`  r`  R  s
    FIr   r`  c                  $    \ rS rSrSr SS jrSrg)PushkeyFailediX  z9error raised when a pushkey part failed to update a valueNc                    Xl         X l        X0l        X@l        XPl        X`l        [        R                  U SX#4-  5        g )Ns"   failed to update value for "%s/%s")partid	namespaceri   newoldretrT   r"   )r#   rd  re  ri   rf  rg  rh  s          r   r"   PushkeyFailed.__init__[  s<     "79:JJ	
r   )ri   re  rf  rg  rd  rh  )NNNNNr   rR   r   r   rb  rb  X  s    C IM
r   rb  c                  "    \ rS rSrSrSS jrSrg)CensoredNodeErrorij  zerror raised when content verification fails on a censored node

Also contains the tombstone data substituted for the uncensored data.
c                \    SSK Jn  [        R                  U SX" U5      4-  5        X0l        g )Nr
   )shorts   %s:%s)r~   rm  rX   r"   	tombstone)r#   r3  r~   rn  rm  s        r   r"   CensoredNodeError.__init__p  s(    dH%+/F$FG"r   )rn  N)r3  rJ   r~   rJ   rn  rJ   r   rR   r   r   rk  rk  j  s    
#r   rk  c                      \ rS rSrSrSrg)CensoredBaseErroriw  a  error raised when a delta is rejected because its base is censored

A delta based on a censored revision must be formed as single patch
operation which replaces the entire base with new content. This ensures
the delta may be applied by clones which have not censored the base.
rR   NrV   rR   r   r   rq  rq  w  s    r   rq  c                      \ rS rSrSr\rSrg)InvalidBundleSpecificationi  zserror raised when a bundle specification is invalid.

This is used for syntax errors as opposed to support errors.
rR   Nr@  rR   r   r   rs  rs    s    
 Ir   rs  c                      \ rS rSrSr\rSrg)UnsupportedBundleSpecificationi  z:error raised when a bundle specification is not supported.rR   Nr@  rR   r   r   ru  ru    s
    DIr   ru  c                      \ rS rSrSr\rSrg)CorruptedStatei  zCerror raised when a command is not able to read its state from filerR   Nr@  rR   r   r   rw  rw    s
    MIr   rw  c                      \ rS rSrSr\rSrg)CorruptedDirstatei  zerror raised the dirstate appears corrupted on-disk. It may be due to
a dirstate version mismatch (i.e. expecting v2 and finding v1 on disk).rR   Nr@  rR   r   r   ry  ry    s    O Ir   ry  c                      \ rS rSrSrSrg)PeerTransportErrori  z>Transport-level I/O error when communicating with a peer repo.rR   NrV   rR   r   r   r{  r{    s    Hr   r{  c                      \ rS rSrSr\rSrg)InMemoryMergeConflictsErrori  zFException raised when merge conflicts arose during an in-memory merge.rR   Nr@  rR   r   r   r}  r}    s
    PIr   r}  c                  2    \ rS rSrSr S     SS jjrSrg)WireprotoCommandErrori  zRepresents an error during execution of a wire protocol command.

Should only be thrown by wire protocol version 2 commands.

The error is a formatter string and an optional iterable of arguments.
Nc                    Xl         X l        g r5   r6   messageargs)r#   r6   r   s      r   r"   WireprotoCommandError.__init__  s    
 r   r  r5   )r6   rJ   r   zOptional[Sequence[bytes]]rL   rM   r   rR   r   r   r  r    s2     +/   (  
	   r   r  rO   )r  r  r   rJ   rL   r   )r  r   rL   rK   )Zr-   
__future__r   r   typingr   r   r   r   r   r	    r   r   r   r7   r2   rT   rX   r^   rc   
IndexErrorrp   KeyErrorru   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  r  r  r$  r*  r0  r6  r;  RuntimeErrorr=  r?  KeyboardInterruptrB  rD  rF  rH  rM  rY  rO  rQ  r`  rb  rk  rq  rs  ru  rw  ry  r{  r}  r  rR   r   r   <module>r     sl   #   Q	& 	&D) >@E @5 	, 	    )+x ).	 		+ 		+ 	9 Y y ) 5 
!5 
   E E 2E 2 % :A% ABU BM~ ML L6u 6% -[ -$ : j J 0	

 
i 	i 		o 		i 	Ay A8 8
e 
 
)U 
)	 	
y 
	i 	
| I 2' 2Y  
t\ 
i z ' 0 '0 
E 
$
# 
#  Y Y 	 I I)  I  r   