
    z%i.                        	 d dl mZ d dlZdgZ ej                  ed       ddZg Zd Zej                  e       d Z
ej                  e
       d	 Zej                  e       d
 Zej                  e       d Zej                  e       d Zej                  e       d Zej                  e       d Zej                  e       d Zej                  e       d Zej                  e       d Zej                  e       d Zej                  e       d Zej                  e       d Zd Zedk(  r e        yy)    )PathLikeNwhat)      )removec                    	 d }	 |ft        | t        t        f      rt        | d      }|j	                  d      }n2| j                         }| j	                  d      }| j                  |       t        D ]$  } |||      }|s|c |r|j                          S S  	 |r|j                          y # |r|j                          w w xY w)Nrb    )	
isinstancestrr   openreadtellseektestsclose)filehflocationtfress         :/home/uftp/.pyenv/versions/3.12.0/lib/python3.12/imghdr.pyr   r      s    FA9$h0t$FF2J99;IIbM		(# 	BQ(C
aggi1	
 aggi aggi1s   A<B. B. B. .Cc                 (    	 | dd dv ry| d d dk(  ryy )N   
   )s   JFIFs   Exifjpeg   s   ۩ r   r   s     r   	test_jpegr!   +   s.    E2w$$	
2A%	% 
&    c                 *    	 | j                  d      ryy )Ns   PNG

png
startswithr    s     r   test_pngr'   4   s    '||() *r"   c                     	 | d d dv ryy )Nr   )s   GIF87as   GIF89agifr   r    s     r   test_gifr*   ;   s    =!u&& 'r"   c                     	 | d d dv ryy )N   )s   MMs   IItiffr   r    s     r   	test_tiffr.   B   s    Q!u r"   c                 *    	 | j                  d      ryy )Ns   rgbr%   r    s     r   test_rgbr1   I   s    )||K  !r"   c                 h    	 t        |       dk\  r#| d   t        d      k(  r| d   dv r	| d   dv ryy y y y )	Nr   r      P   s   14r,       	
pbmlenordr    s     r   test_pbmr:   P   H    9
1v{	!D	adem!
0B 1Cm r"   c                 h    	 t        |       dk\  r#| d   t        d      k(  r| d   dv r	| d   dv ryy y y y )	Nr   r   r3   r4   s   25r,   r5   pgmr7   r    s     r   test_pgmr>   X   sH    :
1v{	!D	adem!
0B 1Cm r"   c                 h    	 t        |       dk\  r#| d   t        d      k(  r| d   dv r	| d   dv ryy y y y )	Nr   r   r3   r4   s   36r,   r5   ppmr7   r    s     r   test_ppmrA   `   r;   r"   c                 *    	 | j                  d      ryy )Ns   Yjrastr%   r    s     r   	test_rastrD   h   s    '||'( )r"   c                 *    	 | j                  d      ryy )Ns   #define xbmr%   r    s     r   test_xbmrG   o   s    9||K  !r"   c                 *    	 | j                  d      ryy )Ns   BMbmpr%   r    s     r   test_bmprJ   v   s    ,||E r"   c                 <    	 | j                  d      r
| dd dk(  ryy y )Ns   RIFF      s   WEBPwebpr%   r    s     r   	test_webprO   }   s)    (||G1RG!3 "4r"   c                 *    	 | j                  d      ryy )Ns   v/1exrr%   r    s     r   test_exrrR      s    7||'( )r"   c                  \   dd l } d}| j                  dd  r#| j                  d   dk(  r| j                  dd= d}	 | j                  dd  rt        | j                  dd  |d       y t        dg|d       y # t        $ r/ | j                  j                  d       | j                  d       Y y w xY w)Nr   r4   z-rr,   .z
[Interrupted]
)sysargvtestallKeyboardInterruptstderrwriteexit)rU   	recursives     r   testr]      s    I
xx|t+HHQqSM	88AB<CHHQRL)Q/SE9a( 

,-s   )A3 $A3 35B+*B+c                    dd l }dd l}| D ]  }|j                  j                  |      rwt	        |dz   d       |s|rWt	        d       dd l}|j                  |j                  j                  |j                  |      d            }t        ||d       t	        d       t	        |dz   d       |j                  j                          	 t	        t        |              y # t        $ r t	        d	       Y w xY w)
Nr   z/: )endzrecursing down:*z*** directory (use -r) ***:z*** not found ***)rU   ospathisdirprintglobjoinescaperW   stdoutflushr   OSError)listr\   toplevelrU   rc   filenamerg   namess           r   rW   rW      s     +77=="(T/s+H'(		"'',,t{{8/Dc"JKy!,23(S.c*JJ+d8n%+  +)*+s   C""C98C9__main__)N)rc   r   warnings__all___deprecated__name__r   r   r!   appendr'   r*   r.   r1   r:   r>   rA   rD   rG   rJ   rO   rR   r]   rW   r   r"   r   <module>rw      sJ   B  (   Xg .2 	 Y 
 X 
 X 
 Y 
 X  X  X  X 
 Y 
 X 
 X 
 Y 
 X +* zF r"   