§
    C! h@.  ã                  ó  — 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dœZd8d„Zd9d„Zd:d„ZdddddœZd8d„Zd9d„Zd:d„Zdddd d!d"d#d$d%d&d'd(œZd)ed*<   d;d,„Zd9d-„Zd:d.„Zd;d/„Zd9d0„Zd:d1„Zd<d=d7„ZdS )>é    )Ú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)z	PIL._avifÚlibavif_version)ÚpilÚtkinterÚ	freetype2Ú
littlecms2ÚwebpÚavifÚfeatureÚstrÚreturnÚboolc                ó
  — | t           vrd| › �}t          |¦  «        ‚t           |          \  }}	 t          |¦  «         dS # t          $ r Y dS t          $ r,}t          j        t          |¦  «        ¦  «         Y d}~dS 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Úwarnr   )r   ÚmsgÚmoduleÚverÚexs        úFc:\xampp_lite_8_4\www\timesheet\venv\Lib\site-packages\PIL/features.pyÚcheck_moduler(      s©   € ð •gÐÐØ) Ð)Ð)ˆÝ˜‰oŒoÐå˜'Ô"�K€FˆCðÝ�6ÑÔÐØˆtøÝð ð ð ØˆuˆuÝð ð ð ÝŒ•c˜"‘g”gÑÔÐØˆuˆuˆuˆuˆuøøøøðøøøs   ¯A  Á 
BÁ	BÁ!A=Á=Bú
str | Nonec                ó„   — t          | ¦  «        sdS 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.   0   sF   € õ ˜Ñ Ô ð Øˆtå˜'Ô"�K€FˆCå•:˜f°¨uÐ5Ñ5Ô5°sÑ;Ô;Ð;ó    ú	list[str]c                 ó$   — d„ t           D ¦   «         S )z4
    :returns: A list of all supported modules.
    c                ó0   — g | ]}t          |¦  «        ¯|‘ŒS © )r(   ©Ú.0Úfs     r'   ú
<listcomp>z)get_supported_modules.<locals>.<listcomp>C   s#   € Ð2Ð2Ð2�!¥,¨q¡/¤/Ð2ˆAÐ2Ð2Ð2r/   )r   r3   r/   r'   Úget_supported_modulesr8   ?   s   € ð 3Ð2•wÐ2Ñ2Ô2Ð2r/   )ÚjpegÚjpeglib)Újpeg2kÚjp2klib)ÚzipÚzlib)Úlibtiffr?   )ÚjpgÚjpg_2000r>   r?   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_codecrI   N   sQ   € ð •fÐÐØ(˜wÐ(Ð(ˆÝ˜‰oŒoÐå˜”�J€Eˆ3àÐÐÐ¥¥U¤Z¡¤Ð0Ð0r/   c                óö   — t          | ¦  «        sdS t          |          \  }}t          t          j        |› d�¦  «        }| dk    r4|                     d¦  «        d                              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Ú_versionr?   ú
r   zVersion r   )rI   rD   r-   r   rF   Úsplit)r   rG   rH   Úversions       r'   Úversion_codecrO   _   sz   € õ �wÑÔð Øˆtå˜”�J€Eˆ3å•e”j SÐ"2Ð"2Ð"2Ñ3Ô3€Gà�)ÒÐØ�}Š}˜TÑ"Ô" 1Ô%×+Ò+¨JÑ7Ô7¸Ô:Ð:à€Nr/   c                 ó$   — d„ t           D ¦   «         S )z3
    :returns: A list of all supported codecs.
    c                ó0   — g | ]}t          |¦  «        ¯|‘ŒS r3   )rI   r4   s     r'   r7   z(get_supported_codecs.<locals>.<listcomp>x   s#   € Ð0Ð0Ð0�!¥¨Q¡¤Ð0ˆAÐ0Ð0Ð0r/   )rD   r3   r/   r'   Úget_supported_codecsrR   t   s   € ð 1Ð0•vÐ0Ñ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_MOZJPEGrZ   )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ÚmozjpegÚzlib_ngÚlibimagequantÚxcbz-dict[str, tuple[str, str | bool, str | None]]Úfeaturesúbool | Nonec                ó®  — | 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 dS t          $ r,}t          j
        t          |¦  «        ¦  «         Y d}~dS 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)rl   r   Ú
isinstancer   r   r   r-   r   r    r!   r"   r   )r   r#   r$   Úflagr%   Úimported_moduler&   s          r'   Úcheck_featurert   Š   s  € ð •hÐÐØ* Ð*Ð*ˆÝ˜‰oŒoÐå  Ô)Ñ€FˆD�#å�$�ÑÔð 5ÝÐ/ GÐ/Ð/Ð/°Ñ4Ô4Ð4ð	Ý$ V°u°gÐ>Ñ>Ô>ˆÝ�d�DÑ!Ô!ð 	ØˆKÝ�¨Ñ-Ô-Ð-øÝð ð ð ØˆtˆtÝð ð ð ÝŒ•c˜"‘g”gÑÔÐØˆtˆtˆtˆtˆtøøøøðøøøs$   Á(B ÂB Â
CÂ	CÂ(!CÃCc                óŽ   — t          | ¦  «        sdS t          |          \  }}}|€dS 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+   )rt   rl   r-   r   )r   r$   rr   r%   s       r'   Úversion_featurerv   ¦   sS   € õ ˜Ñ!Ô!ð Øˆtå  Ô)Ñ€FˆD�#à
€{Øˆtå•:˜f°¨uÐ5Ñ5Ô5°sÑ;Ô;Ð;r/   c                 ó>  — g } t                                ¦   «         D ]€\  }\  }}}|du rOt                               ¦   «         D ]4\  }\  }}||k    r&t          |¦  «        r|                      |¦  «          nŒ5Œ\t          |¦  «        r|                      |¦  «         Œ�| S )z5
    :returns: A list of all supported features.
    T)rl   Úitemsr   r(   Úappendrt   )Úsupported_featuresr6   r$   rr   Ú_r   Úfeature_modules          r'   Úget_supported_featuresr}   ·   sÀ   € ð ÐÝ (§¢Ñ 0Ô 0ð )ð )ÑˆÑˆF�D˜!Ø�4ˆ<ˆ<Ý07·²±´ð ð Ñ,�Ñ,˜.¨!Ø! VÒ+Ð+Ý# GÑ,Ô,ð 5Ø*×1Ò1°!Ñ4Ô4Ð4Ø�Eð ,øõ ˜1ÑÔð 	)Ø×%Ò% aÑ(Ô(Ð(øØÐr/   c                óÊ   — | t           v rt          | ¦  «        S | t          v rt          | ¦  «        S | t          v rt          | ¦  «        S t          j        d| › d�d¬¦  «         dS )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(   rD   rI   rl   rt   r!   r"   ©r   s    r'   Úcheckr‚   È   su   € ð •'ÐÐÝ˜GÑ$Ô$Ð$Ø•&ÐÐÝ˜7Ñ#Ô#Ð#Ø•(ÐÐÝ˜WÑ%Ô%Ð%Ý„MÐ1 gÐ1Ð1Ð1¸aÐ@Ñ@Ô@Ð@Øˆ5r/   c                ó–   — | t           v rt          | ¦  «        S | t          v rt          | ¦  «        S | t          v rt          | ¦  «        S dS )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.   rD   rO   rl   rv   r�   s    r'   rN   rN   Ú   sT   € ð •'ÐÐÝ˜gÑ&Ô&Ð&Ø•&ÐÐÝ˜WÑ%Ô%Ð%Ø•(ÐÐÝ˜wÑ'Ô'Ð'Øˆ4r/   c                 ó¦   — t          ¦   «         } |                      t          ¦   «         ¦  «         |                      t          ¦   «         ¦  «         | S )zJ
    :returns: A list of all supported modules, features, and codecs.
    )r8   Úextendr}   rR   )Úrets    r'   Úget_supportedr‡   ê   sF   € õ
  Ñ
!Ô
!€CØ‡J‚JÕ%Ñ'Ô'Ñ(Ô(Ð(Ø‡J‚JÕ#Ñ%Ô%Ñ&Ô&Ð&Ø€Jr/   TÚoutúIO[str] | NoneÚsupported_formatsÚNonec                óJ
  — | €t           j        } t          j        ¦   «          t	          d| ¬¦  «         t	          dt
          j        › �| ¬¦  «         t           j                             ¦   «         }t	          d|d          	                    ¦   «         › �| ¬¦  «         |dd…         D ](}t	          d| 	                    ¦   «         › �| ¬¦  «         Œ)t	          d| ¬¦  «         t	          d	t           j
        pd
› �| ¬¦  «         t           j        t           j        k    rt	          dt           j        › �| ¬¦  «         t	          dt           j        › �| ¬¦  «         t	          d| ¬¦  «         t	          dt          j                             t          j        ¦  «        › �| ¬¦  «         t	          dt          j                             t          j        j        ¦  «        › �| ¬¦  «         t	          d| ¬¦  «         dD �]!\  }}t%          |¦  «        rùd}|dk    r,t'          d¦  «        }|�t)          d¦  «        rdnd}|d|z   z  }|€t          |¦  «        }|��|dv }|dk    r0t+          d„ |                     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        t2          ¦  «        }t          j                             ¦   «         D ] \  }}||                              |¦  «         Œ!t;          t          j        ¦  «        D �]…}|› }|t          j        v r|› dt          j        |         › �}t	          || ¬¦  «         ||v rJt	          d'                      d! !                    t;          ||         ¦  «        ¦  «        ¦  «        | ¬¦  «         g }|t          j"        v r|                     d(¦  «         |t          j#        v r|                     d)¦  «         |t          j$        v r|                     d*¦  «         |t          j%        v r|                     d+¦  «         |t          j&        v r|                     d,¦  «         t	          d-                      d! !                    |¦  «        ¦  «        | ¬¦  «         t	          d| ¬¦  «         �Œ…dS dS ).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)r   ÚAVIF)r@   ÚJPEG)rA   zOPENJPEG (JPEG2000))r>   zZLIB (PNG/ZIP))r?   ÚLIBTIFF)rd   zRAQM (Bidirectional Text))rj   z#LIBIMAGEQUANT (Quantization method))rk   zXCB (X protocol)r@   rg   rh   zlibjpeg-turboú )r   r@   r   c              3  ó4   K  — | ]}t          |¦  «        V — Œd S )N)Úint)r5   Úxs     r'   ú	<genexpr>zpilinfo.<locals>.<genexpr>:  s(   è è € Ð*HÐ*H°a­3¨q©6¬6Ð*HÐ*HÐ*HÐ*HÐ*HÐ*Hr/   ú.)r   é   zcompiled forÚloadedr>   ri   z, compiled for zlib-ng rd   )re   rf   z, z---zsupport ok,z
support okz***zsupport not installedzExtensions: {}ÚopenÚsaveÚsave_allÚdecodeÚencodezFeatures: {})'ÚsysÚstdoutr   ÚinitÚprintrp   Ú__version__rN   Ú
splitlinesÚstripÚ
executableÚprefixÚbase_prefixÚosÚpathÚdirnameÚ__file__rF   r‚   rv   rt   ÚtuplerM   ÚcollectionsÚdefaultdictÚlistÚ	EXTENSIONrx   ry   ÚsortedÚIDÚMIMEÚformatÚjoinÚOPENÚSAVEÚSAVE_ALLÚDECODERSÚENCODERS)rˆ   rŠ   Úpy_version_linesÚ
py_versionÚnamer   ÚvrZ   Úversion_staticÚtr]   r6   Úv2Ú
extensionsÚextÚiÚlinerl   s                     r'   ÚpilinforË   õ   s|  € ð €{ÝŒjˆå	„J�L„L€Lå	ˆ(˜ÐÑÔÐÝ	Ð
%•C”OÐ
%Ð
%¨CÐ0Ñ0Ô0Ð0Ý”{×-Ò-Ñ/Ô/ÐÝ	Ð
1Ð$ QÔ'×-Ò-Ñ/Ô/Ð
1Ð
1¸Ð<Ñ<Ô<Ð<Ø& q r rÔ*ð 8ð 8ˆ
ÝÐ,˜
×(Ò(Ñ*Ô*Ð,Ð,°3Ð7Ñ7Ô7Ð7Ð7Ý	ˆ(˜ÐÑÔÐÝ	Ð
?¥#¤.Ð"=°IÐ
?Ð
?ÀcÐJÑJÔJÐJÝ
„z•S”_Ò$Ð$ÝÐBµc´jÐBÐBÈÐMÑMÔMÐMÝ	Ð
>­S¬_Ð
>Ð
>ÀSÐIÑIÔIÐIÝ	ˆ(˜ÐÑÔÐÝ	ØN­R¬W¯_ª_½U¼^Ñ-LÔ-LÐNÐNØðñ ô ð õ 
ØS­R¬W¯_ª_½U¼ZÔ=PÑ-QÔ-QÐSÐSØðñ ô ð õ 
ˆ(˜ÐÑÔÐðð +Eñ +E‰ˆˆgõ �‰;Œ;ð 	EØ ˆAØ�uŠ}ˆ}Ý(7¸Ñ(HÔ(HÐ%Ø(Ð4Ý%2°9Ñ%=Ô%=ÐR˜	˜	À?�AØ˜Ð4Ñ4Ñ4�AØˆyÝ˜D‘M”M�Øˆ}Ø!%¨Ð!7�Ø˜<Ò'Ð'å%*Ð*HÐ*H¸1¿7º7À3¹<¼<Ð*HÑ*HÔ*HÑ%HÔ%HÈ6Ò%Q�NØ&4ÐB�N�N¸(�Ø˜6’>�>Ý&5°iÑ&@Ô&@�OØ&Ð2ØÐ6¸ÑHÑH˜øØ˜V’^�^Ø4ð /ð /˜Ý,¨QÑ/Ô/˜Ø˜>Ø  a  ¨"  Ñ.˜AøÝ�e˜W m°Q¸ÀÐDÑDÔDÐDÐDå�e˜W l¸Ð=Ñ=Ô=Ð=Ñ=å�%˜Ð"9ÀÐDÑDÔDÐDÑDÝ	ˆ(˜ÐÑÔÐàñ &Ý Ô,­TÑ2Ô2ˆ
Ý”o×+Ò+Ñ-Ô-ð 	&ð 	&‰FˆC�Ø�qŒM× Ò  Ñ%Ô%Ð%Ð%å�œÑ!Ô!ð 	&ñ 	&ˆAØ�6ˆDØ•E”JˆˆØÐ0Ð0¥¤¨A¤Ð0Ð0�Ý�$˜SÐ!Ñ!Ô!Ð!à�JˆˆÝØ$×+Ò+¨D¯IªIµf¸ZÈ¼]Ñ6KÔ6KÑ,LÔ,LÑMÔMÐTWðñ ô ð ð ˆHØ•E”JˆˆØ—’ Ñ'Ô'Ð'Ø•E”JˆˆØ—’ Ñ'Ô'Ð'Ø•E”NÐ"Ð"Ø—’ 
Ñ+Ô+Ð+Ø•E”NÐ"Ð"Ø—’ Ñ)Ô)Ð)Ø•E”NÐ"Ð"Ø—’ Ñ)Ô)Ð)å�.×'Ò'¨¯	ª	°(Ñ(;Ô(;Ñ<Ô<À3ÐGÑGÔGÐGÝ�( Ð%Ñ%Ô%Ð%Ñ%ð;&ð &ð
	&ð 	&r/   )r   r   r   r   )r   r   r   r)   )r   r0   )r   r   r   rm   )NT)rˆ   r‰   rŠ   r   r   r‹   )Ú
__future__r   r²   r­   r£   r!   Útypingr   rp   Ú r   Ú
_deprecater   r   r(   r.   r8   rD   rI   rO   rR   rl   Ú__annotations__rt   rv   r}   r‚   rN   r‡   rË   r3   r/   r'   ú<module>rÑ      s  ðØ "Ð "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ø 	€	€	€	Ø 
€
€
€
Ø €€€Ø Ð Ð Ð Ð Ð à 
€
€
€
à Ð Ð Ð Ð Ð Ø !Ð !Ð !Ð !Ð !Ð !ð .Ø4Ø8Ø:Ø0Ø,ðð €ðð ð ð ð0<ð <ð <ð <ð3ð 3ð 3ð 3ð Ø%ØØ%ð	
ð 
€ð1ð 1ð 1ð 1ð"ð ð ð ð*1ð 1ð 1ð 1ð +Ø)Ø,Ø;ØDØGØSØHØAØQØ-ð;ð ;€ð ð ð ñ ðð ð ð ð8<ð <ð <ð <ð"ð ð ð ð"ð ð ð ð$ð ð ð ð ð ð ð ðt&ð t&ð t&ð t&ð t&ð t&ð t&r/   