§
    (¶Õip  ã                   óô  — d Z ddlmZ ddlZdgZ ej        ed¬¦  «         dd„Zg Zd„ Z	e 
                    e	¦  «         d	„ Ze 
                    e¦  «         d
„ Ze 
                    e¦  «         d„ Ze 
                    e¦  «         d„ Ze 
                    e¦  «         d„ Ze 
                    e¦  «         d„ Ze 
                    e¦  «         d„ Ze 
                    e¦  «         d„ Ze 
                    e¦  «         d„ Ze 
                    e¦  «         d„ Ze 
                    e¦  «         d„ Ze 
                    e¦  «         d„ Ze 
                    e¦  «         d„ Zd„ Zedk    r e¦   «          dS dS )z<Recognize image file formats based on their first few bytes.é    )ÚPathLikeNÚwhat)é   é   )Úremovec                 óÞ  — d }	 |€€t          | t          t          f¦  «        r&t          | d¦  «        }|                     d¦  «        }n>|                      ¦   «         }|                      d¦  «        }|                      |¦  «         t          D ]+} |||¦  «        }|r|c |r|                     ¦   «          S S Œ,	 |r|                     ¦   «          n# |r|                     ¦   «          w w xY wd S )NÚrbé    )	Ú
isinstanceÚstrr   ÚopenÚreadÚtellÚseekÚtestsÚclose)ÚfileÚhÚfÚlocationÚtfÚress         ú/usr/lib/python3.11/imghdr.pyr   r      sò   € Ø€AðØˆ9Ý˜$¥¥h Ñ0Ô0ð $Ý˜˜tÑ$Ô$�Ø—F’F˜2‘J”J��àŸ9š9™;œ;�Ø—I’I˜b‘M”M�Ø—	’	˜(Ñ#Ô#Ð#Ýð 	ð 	ˆBØ�"�Q˜‘(”(ˆCØð Ø�
�
àˆˆa�gŠg‰iŒiˆiˆiˆðð	ð
 ˆˆa�gŠg‰iŒiˆiøøˆ1ˆˆa�gŠg‰iŒiˆiˆiˆøøøØˆ4s   „BC Â8C ÃC*c                 óB   — | dd…         dv rdS | dd…         dk    rdS dS )z1JPEG data with JFIF or Exif markers; and raw JPEGé   é
   )s   JFIFs   ExifÚjpegNé   s   ÿØÿÛ© ©r   r   s     r   Ú	test_jpegr!   *   s<   € àˆˆ2ˆ„wÐ$Ð$Ð$ØˆvØ	
ˆ2ˆAˆ2ŒÐ%Ò	%Ð	%Øˆvð 
&Ð	%ó    c                 ó4   — |                       d¦  «        rdS d S )Ns   ‰PNG

Úpng©Ú
startswithr    s     r   Útest_pngr'   3   s&   € Ø‡|‚|Ð(Ñ)Ô)ð Øˆuðð r"   c                 ó"   — | dd…         dv rdS dS )zGIF ('87 and '89 variants)Nr   )s   GIF87as   GIF89aÚgifr   r    s     r   Útest_gifr*   9   s#   € àˆˆ!ˆ„uÐ&Ð&Ð&Øˆuð 'Ð&r"   c                 ó"   — | dd…         dv rdS dS )z-TIFF (can be in Motorola or Intel byte order)Né   )s   MMs   IIÚtiffr   r    s     r   Ú	test_tiffr.   @   s"   € àˆˆ!ˆ„u�ÐÐØˆvð Ðr"   c                 ó4   — |                       d¦  «        rdS dS )zSGI image librarys   ÚÚrgbNr%   r    s     r   Útest_rgbr1   G   ó%   € à‡|‚|�KÑ Ô ð Øˆuðð r"   c                 ó–   — t          | ¦  «        dk    r/| d         t          d¦  «        k    r| d         dv r| d         dv rdS d	S d	S d	S d	S )
zPBM (portable bitmap)r   r   ó   Pé   s   14r,   ó    	
ÚpbmN©ÚlenÚordr    s     r   Útest_pbmr;   N   ó\   € å
ˆ1�v„v�‚{€{Ø	ˆ!Œ•�D‘	”	ÒÐ˜a œd e˜m˜m°°!´¸
Ð0BÐ0BØˆuð €{ØÐ˜m˜mÐ0BÐ0Br"   c                 ó–   — t          | ¦  «        dk    r/| d         t          d¦  «        k    r| d         dv r| d         dv rdS d	S d	S d	S d	S )
zPGM (portable graymap)r   r   r4   r5   s   25r,   r6   ÚpgmNr8   r    s     r   Útest_pgmr?   V   r<   r"   c                 ó–   — t          | ¦  «        dk    r/| d         t          d¦  «        k    r| d         dv r| d         dv rdS d	S d	S d	S d	S )
zPPM (portable pixmap)r   r   r4   r5   s   36r,   r6   ÚppmNr8   r    s     r   Útest_ppmrB   ^   r<   r"   c                 ó4   — |                       d¦  «        rdS dS )zSun raster files   Y¦j•ÚrastNr%   r    s     r   Ú	test_rastrE   f   s&   € à‡|‚|Ð'Ñ(Ô(ð Øˆvðð r"   c                 ó4   — |                       d¦  «        rdS dS )zX bitmap (X10 or X11)s   #define ÚxbmNr%   r    s     r   Útest_xbmrH   m   r2   r"   c                 ó4   — |                       d¦  «        rdS d S )Ns   BMÚbmpr%   r    s     r   Útest_bmprK   t   s%   € Ø‡|‚|�EÑÔð Øˆuðð r"   c                 óT   — |                       d¦  «        r| dd…         dk    rdS d S d S )Ns   RIFFé   é   s   WEBPÚwebpr%   r    s     r   Ú	test_webprP   z   s=   € Ø‡|‚|�GÑÔð   1 R 4¤¨GÒ!3Ð!3Øˆvðð Ð!3Ð!3r"   c                 ó4   — |                       d¦  «        rdS d S )Ns   v/1Úexrr%   r    s     r   Útest_exrrS   €   s&   € Ø‡|‚|Ð'Ñ(Ô(ð Øˆuðð r"   c                  ón  — 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¦  «         d S t          dg|d¦  «         d S # t          $ r3 | j                             d¦  «         |                      d¦  «         Y d S w xY w)Nr   r5   z-rr,   ú.z
[Interrupted]
)ÚsysÚargvÚtestallÚKeyboardInterruptÚstderrÚwriteÚexit)rV   Ú	recursives     r   Útestr^   Š   sÞ   € Ø€J€J€JØ€IØ
„x���„|ð ˜œ œ tÒ+Ð+ØŒH�Q�q�SˆMØˆ	ðØŒ8�A�B�BŒ<ð 	)Ý�C”H˜Q˜R˜R”L )¨QÑ/Ô/Ð/Ð/Ð/å�S�E˜9 aÑ(Ô(Ð(Ð(Ð(øÝð ð ð ØŒ
×ÒÐ,Ñ-Ô-Ð-Ø�Š�‰Œˆˆˆˆðøøøs   ´-A7 Á#A7 Á79B4Â3B4c                 óF  — dd l }dd l}| D �]}|j                             |¦  «        rŽt	          |dz   d¬¦  «         |s|rft	          d¦  «         dd l}|                     |j                             |                     |¦  «        d¦  «        ¦  «        }t          ||d¦  «         Œ›t	          d¦  «         Œ«t	          |dz   d¬¦  «         |j	         
                    ¦   «          	 t	          t          |¦  «        ¦  «         Œö# t          $ r t	          d	¦  «         Y �Œw xY wd S )
Nr   z/:ú )Úendzrecursing down:Ú*z*** directory (use -r) ***ú:z*** not found ***)rV   ÚosÚpathÚisdirÚprintÚglobÚjoinÚescaperX   ÚstdoutÚflushr   ÚOSError)Úlistr]   ÚtoplevelrV   rd   Úfilenamerh   Únamess           r   rX   rX   ™   sL  € Ø€J€J€JØ€I€I€IØð +ñ +ˆØŒ7�=Š=˜Ñ"Ô"ð 	+Ý�(˜T‘/ sÐ+Ñ+Ô+Ð+Øð 4˜Hð 4ÝÐ'Ñ(Ô(Ð(Ø���ØŸ	š	 "¤'§,¢,¨t¯{ª{¸8Ñ/DÔ/DÀcÑ"JÔ"JÑKÔK�Ý˜˜y¨!Ñ,Ô,Ð,Ð,åÐ2Ñ3Ô3Ð3Ð3å�(˜S‘. cÐ*Ñ*Ô*Ð*ØŒJ×ÒÑÔÐð+Ý•d˜8‘n”nÑ%Ô%Ð%Ð%øÝð +ð +ð +ÝÐ)Ñ*Ô*Ð*Ð*Ñ*ð+øøøð+ð +s   Ã$DÄDÄDÚ__main__)N)Ú__doc__rd   r   ÚwarningsÚ__all__Ú_deprecatedÚ__name__r   r   r!   Úappendr'   r*   r.   r1   r;   r?   rB   rE   rH   rK   rP   rS   r^   rX   r   r"   r   ú<module>ry      sk  ðØ BÐ Bà Ð Ð Ð Ð Ð Ø €€€àˆ(€ð €Ô �X gÐ .Ñ .Ô .Ð .ðð ð ð ð0 	€ðð ð ð ‡‚ˆYÑ Ô Ð ðð ð ð ‡‚ˆXÑ Ô Ð ðð ð ð
 ‡‚ˆXÑ Ô Ð ðð ð ð
 ‡‚ˆYÑ Ô Ð ðð ð ð
 ‡‚ˆXÑ Ô Ð ðð ð ð ‡‚ˆXÑ Ô Ð ðð ð ð ‡‚ˆXÑ Ô Ð ðð ð ð ‡‚ˆXÑ Ô Ð ðð ð ð
 ‡‚ˆYÑ Ô Ð ðð ð ð
 ‡‚ˆXÑ Ô Ð ðð ð ð ‡‚ˆXÑ Ô Ð ðð ð ð ‡‚ˆYÑ Ô Ð ðð ð ð ‡‚ˆXÑ Ô Ð ðð ð ð+ð +ð +ð* ˆzÒÐØ€D�F„F€F€F€Fð Ðr"   