Ë
    ¦üàgþ+  ã                  ó
  — U d dl mZ d dlZd dlZd dlZd dlZd dlmZ d dlZddl	m
Z
 ddlmZ ddd	d
ddœZd*d„Zd+d„Zd,d„ZdddddœZd*d„Zd+d„Zd,d„Zddddddddddd œ
Zd!ed"<   d-d#„Zd+d$„Zd,d%„Zd-d&„Zd+d'„Zd,d(„Zd.d/d)„Zy)0é    )ÚannotationsN)ÚIOé   )ÚImage)Ú	deprecate)úPIL._imagingÚPILLOW_VERSION)zPIL._tkinter_finderÚ
tk_version)úPIL._imagingftÚfreetype2_version)zPIL._imagingcmsÚlittlecms_version)ú	PIL._webpÚwebpdecoder_version)ÚpilÚtkinterÚ	freetype2Ú
littlecms2Úwebpc                óà   — | t         vrd| › �}t        |«      ‚t         |    \  }}	 t        |«       y# t        $ r Y yt        $ r(}t        j                  t        |«      «       Y d}~yd}~ww xY w)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ÚwarnÚstr)ÚfeatureÚmsgÚmoduleÚverÚexs        úJ/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/PIL/features.pyÚcheck_moduler$      sn   € ð ”gÑØ ˜yÐ)ˆÜ˜‹oÐä˜'Ñ"�K€FˆCðÜ�6ÔØøÜò ÙÜò Ü�‰”c˜"“gÔÜûðús   ¦2 ²	A-½A-ÁA(Á(A-c                ób   — t        | «      syt        |    \  }}t        t        ||g¬«      |«      S )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)   /   s3   € ô ˜Ô Øä˜'Ñ"�K€FˆCä”:˜f°¨uÔ5°sÓ;Ð;ó    c                 óL   — t         D � cg c]  } t        | «      sŒ| ‘Œ c} S c c} w )z4
    :returns: A list of all supported modules.
    )r   r$   ©Úfs    r#   Úget_supported_modulesr.   >   s   € ô Ö2�!¤,¨q¥/ŠAÒ2Ð2ùÒ2ó   ‰!š!)ÚjpegÚjpeglib)Újpeg2kÚjp2klib)ÚzipÚzlib)Úlibtiffr6   )ÚjpgÚjpg_2000r5   r6   c                ó†   — | t         vrd| › �}t        |«      ‚t         |    \  }}|› d�t        t        j                  «      v S )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   sI   € ð ”fÑØ˜w˜iÐ(ˆÜ˜‹oÐä˜‘�J€Eˆ3àˆW�HÐ¤¤U§Z¡Z£Ð0Ð0r*   c                óÆ   — t        | «      syt        |    \  }}t        t        j                  |› d�«      }| dk(  r&|j                  d«      d   j                  d«      d   S |S )a  
    :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   ú
r   zVersion r   )r@   r;   r(   r   r=   Úsplit)r   r>   r?   Úversions       r#   Úversion_codecrF   ^   sd   € ô �wÔØä˜‘�J€Eˆ3ä”e—j‘j S E¨Ð"2Ó3€Gà�)ÒØ�}‰}˜TÓ" 1Ñ%×+Ñ+¨JÓ7¸Ñ:Ð:à€Nr*   c                 óL   — t         D � cg c]  } t        | «      sŒ| ‘Œ c} S c c} w )z3
    :returns: A list of all supported codecs.
    )r;   r@   r,   s    r#   Úget_supported_codecsrH   s   s   € ô Ö0�!¤¨Q¥ŠAÒ0Ð0ùÒ0r/   )r   TN)r   Ú	HAVE_RAQMÚraqm_version)r   ÚHAVE_FRIBIDIÚfribidi_version)r   ÚHAVE_HARFBUZZÚharfbuzz_version)r   ÚHAVE_LIBJPEGTURBOÚlibjpeg_turbo_version)r   ÚHAVE_ZLIBNGÚzlib_ng_version)r   ÚHAVE_LIBIMAGEQUANTÚimagequant_version)r   ÚHAVE_XCBN)
Ú	webp_animÚwebp_muxÚtransp_webpÚraqmÚfribidiÚharfbuzzÚlibjpeg_turboÚzlib_ngÚlibimagequantÚxcbz-dict[str, tuple[str, str | bool, str | None]]Úfeaturesc                ób  — | t         vrd| › �}t        |«      ‚t         |    \  }}}t        |t        «      rt	        d| › d�d«       	 t        |dg¬«      }t        |t        «      r|S t        ||«      S # t        $ r Y yt        $ r(}t        j                  t        |«      «       Y d}~yd}~ww xY w)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 zcheck_feature("z")é   ÚPILr&   N)r`   r   Ú
isinstanceÚboolr   r   r(   r   r   r   r   r   )r   r   r    Úflagr!   Úimported_moduler"   s          r#   Úcheck_featurerh   ˆ   s­   € ð ”hÑØ   	Ð*ˆÜ˜‹oÐä  Ñ)Ñ€FˆD�#ä�$œÔÜ�O G 9¨BÐ/°Ô4ð	Ü$ V°u°gÔ>ˆÜ�dœDÔ!ØˆKÜ�¨Ó-Ð-øÜò ÙÜò Ü�‰”c˜"“gÔÜûðús$   ÁA3 Á'A3 Á3	B.Á>B.ÂB)Â)B.c                ój   — t        | «      syt        |    \  }}}|€yt        t        ||g¬«      |«      S )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&   )rh   r`   r(   r   )r   r    rf   r!   s       r#   Úversion_featurerj   ¤   s>   € ô ˜Ô!Øä  Ñ)Ñ€FˆD�#à
€{Øä”:˜f°¨uÔ5°sÓ;Ð;r*   c                 ó  — g } t         j                  «       D ]m  \  }\  }}}|du rCt        j                  «       D ]+  \  }\  }}||k(  sŒt        |«      r| j	                  |«        ŒO ŒQt        |«      sŒ]| j	                  |«       Œo | S )z5
    :returns: A list of all supported features.
    T)r`   Úitemsr   r$   Úappendrh   )Úsupported_featuresr-   r    rf   Ú_r   Úfeature_modules          r#   Úget_supported_featuresrq   µ   s“   € ð ÐÜ (§¡Ó 0ò )ÑˆÑˆF�D˜!Ø�4‰<Ü07·±³ò Ñ,�Ñ,˜.¨!Ø! VÓ+Ü# GÔ,Ø*×1Ñ1°!Ô4Ùñ	ô
 ˜1ÕØ×%Ñ% aÕ(ð)ð Ðr*   c                ó¬   — | t         v rt        | «      S | t        v rt        | «      S | t        v rt        | «      S t        j                  d| › d�d¬«       y)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@   r`   rh   r   r   ©r   s    r#   Úcheckrv   Æ   sX   € ð ”'ÑÜ˜GÓ$Ð$Ø”&ÑÜ˜7Ó#Ð#Ø”(ÑÜ˜WÓ%Ð%Ü‡M�MÐ% g Y¨bÐ1¸aÕ@Ør*   c                óv   — | t         v rt        | «      S | t        v rt        | «      S | t        v rt        | «      S y)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   r`   rj   ru   s    r#   rE   rE   Ø   s@   € ð ”'ÑÜ˜gÓ&Ð&Ø”&ÑÜ˜WÓ%Ð%Ø”(ÑÜ˜wÓ'Ð'Ør*   c                 ó~   — t        «       } | j                  t        «       «       | j                  t        «       «       | S )zJ
    :returns: A list of all supported modules, features, and codecs.
    )r.   Úextendrq   rH   )Úrets    r#   Úget_supportedr{   è   s1   € ô
  Ó
!€CØ‡J�JÔ%Ó'Ô(Ø‡J�JÔ#Ó%Ô&Ø€Jr*   c                óF	  — | €t         j                  } t        j                  «        t	        d| ¬«       t	        dt
        j                  › �| ¬«       t         j                  j                  «       }t	        d|d   j                  «       › �| ¬«       |dd D ]   }t	        d|j                  «       › �| ¬«       Œ" t	        d| ¬«       t	        d	t         j                  xs d
› �| ¬«       t         j                  t         j                  k7  rt	        dt         j                  › �| ¬«       t	        dt         j                  › �| ¬«       t	        d| ¬«       t	        dt        j                  j                  t        j                   «      › �| ¬«       t	        dt        j                  j                  t        j"                  j                   «      › �| ¬«       t	        d| ¬«       dD ]Ü  \  }}t%        |«      r½d}|dk(  rt'        d«      }|�d|z   }|€t        |«      }|�…|dv }|dk(  r$t)        d„ |j+                  d«      D «       «      dk  }|rdnd}	|dk(  rt'        d«      }
|
�.|d|
z   z  }n%|dk(  r dD ]  }t'        |«      }|€Œ|d|› d |› �z  }Œ t	        d!|d"|	|| ¬«       Œ¾t	        d!|d#| ¬«       ŒÎt	        d$|d%| ¬«       ŒÞ t	        d| ¬«       |�rÒt-        j.                  t0        «      }t        j2                  j5                  «       D ]  \  }}||   j7                  |«       Œ t9        t        j:                  «      D �]a  }|› }|t        j<                  v r|› d t        j<                  |   › �}t	        || ¬«       ||v r7t	        d&j?                  djA                  t9        ||   «      «      «      | ¬«       g }|t        jB                  v r|j7                  d'«       |t        jD                  v r|j7                  d(«       |t        jF                  v r|j7                  d)«       |t        jH                  v r|j7                  d*«       |t        jJ                  v r|j7                  d+«       t	        d,j?                  djA                  |«      «      | ¬«       t	        d| ¬«       �Œd yy)-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.
    NzD--------------------------------------------------------------------)ÚfilezPillow zPython r   r   z       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   zPIL CORE)r   ÚTKINTER)r   Ú	FREETYPE2)r   Ú
LITTLECMS2)r   ÚWEBP)r7   ÚJPEG)r8   zOPENJPEG (JPEG2000))r5   zZLIB (PNG/ZIP))r6   ÚLIBTIFF)rY   zRAQM (Bidirectional Text))r^   z#LIBIMAGEQUANT (Quantization method))r_   zXCB (X protocol)r7   r\   zlibjpeg-turbo )r   r7   r   c              3  ó2   K  — | ]  }t        |«      –— Œ y ­w)N)Úint)Ú.0Úxs     r#   ú	<genexpr>zpilinfo.<locals>.<genexpr>6  s   è ø€ Ò*H°a¬3¨q¯6Ñ*Hùs   ‚ú.)rs   é   zcompiled forÚloadedr5   r]   z, compiled for zlib-ng rY   )rZ   r[   z, ú z---zsupport ok,z
support okz***zsupport not installedzExtensions: {}ÚopenÚsaveÚsave_allÚdecodeÚencodezFeatures: {})&ÚsysÚstdoutr   ÚinitÚprintrc   Ú__version__rE   Ú
splitlinesÚstripÚ
executableÚprefixÚbase_prefixÚosÚpathÚdirnameÚ__file__r=   rv   rj   ÚtuplerD   ÚcollectionsÚdefaultdictÚlistÚ	EXTENSIONrl   rm   ÚsortedÚIDÚMIMEÚformatÚjoinÚOPENÚSAVEÚSAVE_ALLÚDECODERSÚENCODERS)ÚoutÚsupported_formatsÚpy_version_linesÚ
py_versionÚnamer   ÚvrP   Úversion_staticÚtrR   r-   Úv2Ú
extensionsÚextÚiÚliner`   s                     r#   Úpilinfor½   ó   s  € ð €{Ü�j‰jˆä	‡J�J„Lä	ˆ(˜ÕÜ	ˆG”C—O‘OÐ$Ð
%¨CÕ0Ü—{‘{×-Ñ-Ó/ÐÜ	ˆGÐ$ QÑ'×-Ñ-Ó/Ð0Ð
1¸Õ<Ø& q rÐ*ò 8ˆ
Ü�˜
×(Ñ(Ó*Ð+Ð,°3Ö7ð8ä	ˆ(˜ÕÜ	Ð!¤#§.¡.Ò"=°IÐ!>Ð
?ÀcÕJÜ
‡z�z”S—_‘_Ò$ÜÐ5´c·j±j°\ÐBÈÕMÜ	Ð,¬S¯_©_Ð,=Ð
>ÀSÕIÜ	ˆ(˜ÕÜ	Ø
,¬R¯W©W¯_©_¼U¿^¹^Ó-LÐ,MÐNØõô 
Ø
,¬R¯W©W¯_©_¼U¿Z¹Z×=PÑ=PÓ-QÐ,RÐSØõô 
ˆ(˜Õðò )E‰ˆˆgô �Œ;Ø ˆAØ�uŠ}Ü(7¸Ó(HÐ%Ø(Ð4Ø(Ð+@Ñ@�AØˆyÜ˜D“M�Øˆ}Ø!%¨Ð!7�Ø˜<Ò'ä%*Ñ*H¸1¿7¹7À3»<Ô*HÓ%HÈ6Ñ%Q�NÙ&4‘N¸(�Ø˜6’>Ü&5°iÓ&@�OØ&Ð2ØÐ6¸ÑHÑH™Ø˜V’^Ø4ò /˜Ü,¨QÓ/˜Ø™>Ø 2 a S¨¨"¨ Ñ.™Að/ô �e˜W m°Q¸ÀÖDä�e˜W l¸Ö=ä�%˜Ð"9ÀÖDðS)EôT 
ˆ(˜ÕâÜ ×,Ñ,¬TÓ2ˆ
Ü—o‘o×+Ñ+Ó-ò 	&‰FˆC�Ø�q‰M× Ñ  Õ%ð	&ô œŸ™Ó!ó 	&ˆAØ�SˆDØ”E—J‘J‰Ø˜˜q¤§¡¨A¡ Ð0�Ü�$˜SÕ!à�J‰ÜØ$×+Ñ+¨D¯I©I´f¸ZÈ¹]Ó6KÓ,LÓMÐTWõð ˆHØ”E—J‘J‰Ø—‘ Ô'Ø”E—J‘J‰Ø—‘ Ô'Ø”E—N‘NÑ"Ø—‘ 
Ô+Ø”E—N‘NÑ"Ø—‘ Ô)Ø”E—N‘NÑ"Ø—‘ Ô)ä�.×'Ñ'¨¯	©	°(Ó(;Ó<À3ÕGÜ�( ×%ñ1	&ð r*   )r   r   Úreturnre   )r   r   r¾   z
str | None)r¾   z	list[str])r   r   r¾   zbool | None)NT)r°   zIO[str] | Noner±   re   r¾   ÚNone)Ú
__future__r   r¢   r�   r“   r   Útypingr   rc   Ú r   Ú
_deprecater   r   r$   r)   r.   r;   r@   rF   rH   r`   Ú__annotations__rh   rj   rq   rv   rE   r{   r½   © r*   r#   ú<module>rÆ      s¾   ðÞ "ã Û 	Û 
Û Ý ã 
å Ý !ð .Ø4Ø8Ø:Ø0ñ€óó0<ó3ð Ø%ØØ%ñ	
€ó1ó"ó*1ð +Ø)Ø,Ø;ØDØGØSØAØQØ-ñ;€Ð
7ó óó8<ó"ó"ó$ó õr&r*   