+
    UBi*                    X  a  0 t $ ^ RIHt ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RI	t	^RI
Ht RR3RR4RR5RR6R	R7R
R8/tR R ltR R ltR R ltRR9RR:RR;RR</tR R ltR R ltR R ltRR=RR>RR?RR@RRAR RBR!RCR"RD/tR#]R$&   R% R& ltR' R( ltR) R* ltR+ R, ltR- R. ltR/ R0 ltRER1 R2 lltR# )F    )annotationsN)IO)Imagepiltkinter	freetype2
littlecms2webpavifc                    V ^8  d   QhRRRR/#    featurestrreturnbool )formats   "1/usr/lib/python3.14/site-packages/PIL/features.py__annotate__r      s      # $     c                    V \         9  d   RV  2p\        V4      h\         V ,          w  r# \        V4       R#   \         d     R# \         d+   p\
        P                  ! \        T4      4        Rp?R# Rp?ii ; i)z
Checks if a module is available.

:param feature: The module to check for.
:returns: ``True`` if available, ``False`` otherwise.
:raises ValueError: If the module is not defined in this version of Pillow.
zUnknown module TFN)modules
ValueError
__import__ModuleNotFoundErrorImportErrorwarningswarnr   )r   msgmoduleverexs   &    r   check_moduler$      sl     gy)o'"KF6  c"gs!   9 A;A;A;A66A;c                    V ^8  d   QhRRRR/# r   r   r   r   z
str | Noner   )r   s   "r   r   r   /   s     < <C <J <r   c                t    \        V 4      '       g   R# \        V ,          w  r\        \        W.R7      V4      # )z
:param feature: The module to check for.
:returns:
    The loaded version number as a string, or ``None`` if unknown or not available.
:raises ValueError: If the module is not defined in this version of Pillow.
Nfromlist)r$   r   getattrr   )r   r!   r"   s   &  r   version_moduler+   /   s2       '"KF:fu5s;;r   c                   V ^8  d   QhRR/# r   r   z	list[str]r   )r   s   "r   r   r   >   s     3 3y 3r   c                 ^    \          U u. uF  p \        V 4      '       g   K  V NK  	  up # u up i )z,
:returns: A list of all supported modules.
)r   r$   fs    r   get_supported_modulesr1   >   s$     2w!,q/AAw222   **jpgjpg_2000zliblibtiffc                    V ^8  d   QhRRRR/# r   r   )r   s   "r   r   r   M   s     1 1 1 1r   c                    V \         9  d   RV  2p\        V4      h\         V ,          w  r#V R2\        \        P                  4      9   # )z
Checks if a codec is available.

:param feature: The codec to check for.
:returns: ``True`` if available, ``False`` otherwise.
:raises ValueError: If the codec is not defined in this version of Pillow.
zUnknown codec _encoder)codecsr   dirr   core)r   r    codeclibs   &   r   check_codecr?   M   sG     fwi(oJEWHUZZ00r   c                    V ^8  d   QhRRRR/# r&   r   )r   s   "r   r   r   ^   s      3 : r   c                    \        V 4      '       g   R# \        V ,          w  r\        \        P                  V R24      pV R8X  d/   VP                  R4      ^ ,          P                  R4      ^,          # V# )z
:param feature: The codec to check for.
:returns:
    The version number as a string, or ``None`` if not available.
    Checked at compile time for ``jpg``, run-time otherwise.
:raises ValueError: If the codec is not defined in this version of Pillow.
N_versionr6   
zVersion )r?   r:   r*   r   r<   split)r   r=   r>   versions   &   r   version_codecrF   ^   se     wJEejjSE"23G)}}T"1%++J7::Nr   c                   V ^8  d   QhRR/# r-   r   )r   s   "r   r   r   s   s     1 1i 1r   c                 ^    \          U u. uF  p \        V 4      '       g   K  V NK  	  up # u up i )z+
:returns: A list of all supported codecs.
)r:   r?   r/   s    r   get_supported_codecsrI   s   s$     0v!QAAv000r2   raqmfribidiharfbuzzlibjpeg_turbomozjpegzlib_nglibimagequantxcbz&dict[str, tuple[str, str, str | None]]featuresc                    V ^8  d   QhRRRR/# r   r   r   r   zbool | Noner   )r   s   "r   r   r      s      3 ; r   c                   V \         9  d   RV  2p\        V4      h\         V ,          w  r#p \        VR.R7      p\        WS4      #   \         d     R# \
         d+   p\        P                  ! \        T4      4        Rp?R# Rp?ii ; i)z
Checks if a feature is available.

:param feature: The feature to check for.
:returns: ``True`` if available, ``False`` if unavailable, ``None`` if unknown.
:raises ValueError: If the feature is not defined in this version of Pillow.
zUnknown feature PILr(   N)	rR   r   r   r*   r   r   r   r   r   )r   r    r!   flagr"   imported_moduler#   s   &      r   check_featurerY      s}     h 	*o )F#$Vug>--  c"gs#   A BBBBBc                    V ^8  d   QhRRRR/# r&   r   )r   s   "r   r   r      s     < <S <Z <r   c                    \        V 4      '       g   R# \        V ,          w  rpVf   R# \        \        W.R7      V4      # )z
:param feature: The feature to check for.
:returns: The version number as a string, or ``None`` if not available.
:raises ValueError: If the feature is not defined in this version of Pillow.
Nr(   )rY   rR   r*   r   )r   r!   rW   r"   s   &   r   version_featurer\      s=     !! )F#
{:fu5s;;r   c                   V ^8  d   QhRR/# r-   r   )r   s   "r   r   r      s     5 5	 5r   c                 ^    \          U u. uF  p \        V 4      '       g   K  V NK  	  up # u up i )z-
:returns: A list of all supported features.
)rR   rY   r/   s    r   get_supported_featuresr_      s%      4x!=#3AAx444r2   c                    V ^8  d   QhRRRR/# rT   r   )r   s   "r   r   r      s      3 ; r   c                    V \         9   d   \        V 4      # V \        9   d   \        V 4      # V \        9   d   \        V 4      # \        P                  ! RV  R2^R7       R# )z
:param feature: A module, codec, or feature name.
:returns:
    ``True`` if the module, codec, or feature is available,
    ``False`` or ``None`` otherwise.
zUnknown feature 'z'.)
stacklevelF)r   r$   r:   r?   rR   rY   r   r   r   s   &r   checkrd      sX     'G$$&7##(W%%MM%gYb1a@r   c                    V ^8  d   QhRRRR/# r&   r   )r   s   "r   r   r      s      S Z r   c                    V \         9   d   \        V 4      # V \        9   d   \        V 4      # V \        9   d   \        V 4      # R# )z
:param feature:
    The module, codec, or feature to check for.
:returns:
    The version number as a string, or ``None`` if unknown or not available.
N)r   r+   r:   rF   rR   r\   rc   s   &r   rE   rE      s@     'g&&&W%%(w''r   c                   V ^8  d   QhRR/# r-   r   )r   s   "r   r   r      s      y r   c                 ~    \        4       p V P                  \        4       4       V P                  \        4       4       V # )zB
:returns: A list of all supported modules, features, and codecs.
)r1   extendr_   rI   )rets    r   get_supportedrk      s1    
  
!CJJ%'(JJ#%&Jr   c               $    V ^8  d   QhRRRRRR/# )r   outzIO[str] | Nonesupported_formatsr   r   Noner   )r   s   "r   r   r      s&     t& t& t&4 t&4 t&r   c                
   V f   \         P                  p \        P                  ! 4        \	        R(V R7       \	        R\
        P                   2V R7       \         P                  P                  4       p\	        RV^ ,          P                  4        2V R7       VR,           F!  p\	        RVP                  4        2V R7       K#  	  \	        R(V R7       \	        R\         P                  ;'       g    R 2V R7       \         P                  \         P                  8w  d   \	        R	\         P                   2V R7       \	        R
\         P                   2V R7       \	        R(V R7       \	        R\        P                  P                  \        P                   4       2V R7       \	        R\        P                  P                  \        P"                  P                   4       2V R7       \	        R(V R7       R) EFX  w  rE\%        V4      '       Ed2   RpVR8X  d5   \'        R4      pVe&   \)        R4      '       d   RMRpVRV,           ,          pVf   \        V4      pVe   VR*9   pVR8X  dN   \*        ;QJ d#    . R VP-                  R4       4       F  NK  	  5M! R VP-                  R4       4       4      R+8  pV'       d   RMRp	VR8X  d!   \'        R4      p
V
e   VRV
,           ,          pM0VR8X  d*   R, F#  p\'        V4      pVf   K  VRV RV 2,          pK%  	  \	        RVRWV R7       EK7  \	        RVRV R7       EKI  \	        RVR V R7       EK[  	  \	        R(V R7       V'       Ed   \.        P0                  ! \2        4      p\        P4                  P7                  4        F  w  rW,          P9                  V4       K  	  \;        \        P<                  4       EF}  pT pV\        P>                  9   d   V R\        P>                  V,           2p\	        VV R7       W9   d;   \	        R!PA                  RPC                  \;        W,          4      4      4      V R7       . pV\        PD                  9   d   VP9                  R"4       V\        PF                  9   d   VP9                  R#4       V\        PH                  9   d   VP9                  R$4       V\        PJ                  9   d   VP9                  R%4       V\        PL                  9   d   VP9                  R&4       \	        R'PA                  RPC                  V4      4      V R7       \	        R(V R7       EK  	  R# R# )-a  
Prints information about this installation of Pillow.
This function can be called with ``python3 -m PIL``.
It can also be called with ``python3 -m PIL.report`` or ``python3 -m PIL --report``
to have "supported_formats" set to ``False``, omitting the list of all supported
image file formats.

:param out:
    The output stream to print to. Defaults to ``sys.stdout`` if ``None``.
:param supported_formats:
    If ``True``, a list of all supported image file formats will be printed.
N)filezPillow zPython :   NNz       zPython executable is unknownz%Environment Python files loaded from z System Python files loaded from z"Python Pillow modules loaded from z"Binary Pillow modules loaded from r	   r3   r5   rJ   rM   rN   zlibjpeg-turbo c              3  8   "   T F  p\        V4      x  K  	  R # 5i)N)int).0xs   & r   	<genexpr>pilinfo.<locals>.<genexpr>(  s     *H<a3q66<s   .zcompiled forloadedrO   z, compiled for zlib-ng z, z---zsupport ok,z
support okz***zsupport not installedzExtensions: {}opensavesave_alldecodeencodezFeatures: {}zD--------------------------------------------------------------------))r   zPIL CORE)r   TKINTER)r   	FREETYPE2)r	   
LITTLECMS2)r
   WEBP)r   AVIF)r3   JPEG)r4   zOPENJPEG (JPEG2000))r5   zZLIB (PNG/ZIP))r6   LIBTIFF)rJ   zRAQM (Bidirectional Text))rP   z#LIBIMAGEQUANT (Quantization method))rQ   zXCB (X protocol))r   r3   )r      )rK   rL   )'sysstdoutr   initprintrV   __version__rE   
splitlinesstrip
executableprefixbase_prefixospathdirname__file__r<   rd   r\   rY   tuplerD   collectionsdefaultdictlist	EXTENSIONitemsappendsortedIDMIMEr   joinOPENSAVESAVE_ALLDECODERSENCODERS)rm   rn   py_version_lines
py_versionnamer   vlibjpeg_turbo_versionversion_statictzlib_ng_versionr0   v2
extensionsextilinerR   s   &&                r   pilinfor      s-    {jj	JJL	(	GCOO$
%C0{{--/	G$Q'--/0
1<&r**

((*+,37 +	(	!#.."="=I!>
?cJ
zzS__$5cjj\BM	,S__,=
>SI	(	
,RWW__U^^-L,MN 

,RWW__UZZ=P=P-Q,RS 
( ;; Au}(7(H%(4%29%=%=	?A444AyDM}!%!7<'%*U*H1773<*HUU*H1773<*H%H6%QN&4N(6>&5i&@O&26HHV^4,Q/>2aS".A 5 eWmQDDeWl==%"9DDWX 
( ,,T2
oo++-FCM  % . !ASDEJJqA0$S!$++DIIfZ]6K,LMTW HEJJ'EJJ'ENN"
+ENN")ENN").''		((;<3G(%%1 " r   )PIL._imagingPILLOW_VERSION)zPIL._tkinter_finder
tk_version)PIL._imagingftfreetype2_version)zPIL._imagingcmslittlecms_version)z	PIL._webpwebpdecoder_version)z	PIL._aviflibavif_version)jpegjpeglib)jpeg2kjp2klib)zipr5   )r6   r6   )r   	HAVE_RAQMraqm_version)r   HAVE_FRIBIDIfribidi_version)r   HAVE_HARFBUZZharfbuzz_version)r   HAVE_LIBJPEGTURBOr   )r   HAVE_MOZJPEGr   )r   HAVE_ZLIBNGr   )r   HAVE_LIBIMAGEQUANTimagequant_version)r   HAVE_XCBN)NT)__conditional_annotations__
__future__r   r   r   r   r   typingr   rV    r   r   r$   r+   r1   r:   r?   rF   rI   rR   __annotations__rY   r\   r_   rd   rE   rk   r   )r   s   @r   <module>r      s    " "  	 
   
  
-48:
0
,0<3 
%
O%	
1"*1 ;DGSHAQ	-	4
0 	0<"5$ t& t&r   