§
    —Çjàk  ã                  óÚ   — d Z ddlmZ ddlZddlmZmZ ddlmZ ddl	m	Z	 ddl
mZ ddlmZ erdd	lmZmZmZ dd
lmZ  G d„ de¦  «        Zdd„Zdd„Zd d„Zd!d„Z G d„ de¦  «        ZdS )"z	Base API.é    )ÚannotationsN)ÚABCÚabstractmethod)Úsuppress)Úcopy)ÚPath)ÚTYPE_CHECKING)ÚCallableÚIterableÚIterator)ÚLiteralc                  óz	  — e Zd ZdZ	 	 	 	 	 	 	 	 d”d•d„Zed–d„¦   «         Zej        d—d„¦   «         Zed˜d„¦   «         Zej        d™d„¦   «         Zed–d„¦   «         Z	e	j        d—d„¦   «         Z	dšd„Z
d›d„Zdœd „Zd�d!„Zdžd$„ZdŸd'„Zd d)„Zeed¡d*„¦   «         ¦   «         Zeed¡d+„¦   «         ¦   «         Zed¢d,„¦   «         Zeed¡d-„¦   «         ¦   «         Zeed¡d.„¦   «         ¦   «         Zed¢d/„¦   «         Zeed¡d0„¦   «         ¦   «         Zeed¡d1„¦   «         ¦   «         Zed¢d2„¦   «         Zeed¡d3„¦   «         ¦   «         Zeed¡d4„¦   «         ¦   «         Zeed¡d5„¦   «         ¦   «         Zeed¡d6„¦   «         ¦   «         Zeed¡d7„¦   «         ¦   «         Zeed¡d8„¦   «         ¦   «         Z eed¡d9„¦   «         ¦   «         Z!eed¡d:„¦   «         ¦   «         Z"eed¡d;„¦   «         ¦   «         Z#eed¡d<„¦   «         ¦   «         Z$eed¡d=„¦   «         ¦   «         Z%eed¡d>„¦   «         ¦   «         Z&eed¡d?„¦   «         ¦   «         Z'eed¡d@„¦   «         ¦   «         Z(eed¡dA„¦   «         ¦   «         Z)eed¡dB„¦   «         ¦   «         Z*eed¡dC„¦   «         ¦   «         Z+eed¡dD„¦   «         ¦   «         Z,eed¡dE„¦   «         ¦   «         Z-ed¢dF„¦   «         Z.eed¡dG„¦   «         ¦   «         Z/eed¡dH„¦   «         ¦   «         Z0ed£dI„¦   «         Z1ed£dJ„¦   «         Z2ed£dK„¦   «         Z3ed£dL„¦   «         Z4ed£dM„¦   «         Z5ed£dN„¦   «         Z6ed£dO„¦   «         Z7ed£dP„¦   «         Z8ed£dQ„¦   «         Z9ed£dR„¦   «         Z:ed£dS„¦   «         Z;ed£dT„¦   «         Z<ed£dU„¦   «         Z=ed£dV„¦   «         Z>ed£dW„¦   «         Z?ed£dX„¦   «         Z@ed£dY„¦   «         ZAed£dZ„¦   «         ZBed£d[„¦   «         ZCed£d\„¦   «         ZDed£d]„¦   «         ZEed£d^„¦   «         ZFed£d_„¦   «         ZGed£d`„¦   «         ZHed£da„¦   «         ZIed£db„¦   «         ZJed£dc„¦   «         ZKd¤dd„ZLd¤de„ZMd¤df„ZNd¤dg„ZOd¤dh„ZPd¤di„ZQd¤dj„ZRd¤dk„ZSd¤dl„ZTd¤dm„ZUd¤dn„ZVd¤do„ZWed¥dp„¦   «         ZXd¦dr„ZYd¦ds„ZZd¦dt„Z[d¦du„Z\d¦dv„Z]d¦dw„Z^d§dz„Z_d§d{„Z`d§d|„Zad§d}„Zbd§d~„Zcd§d„Zdd¨d‚„Zed©d„„Zfdªd†„Zgd©d‡„Zhdªdˆ„Zid©d‰„ZjdªdŠ„Zkd©d‹„ZldªdŒ„Zmd©d�„ZndªdŽ„Zod©d�„Zpdªd�„Zqd«d“„ZrdS )¬ÚPlatformDirsABCav  Abstract base class defining all platform directory properties, their :class:`~pathlib.Path` variants, and iterators.

    Platform-specific subclasses (e.g. :class:`~platformdirs.windows.Windows`, :class:`~platformdirs.macos.MacOS`,
    :class:`~platformdirs.unix.Unix`) implement the abstract properties to return the appropriate paths for each
    operating system.

    NFTÚappnameú
str | NoneÚ	appauthorústr | Literal[False] | NoneÚversionÚroamingÚboolÚ	multipathÚopinionÚensure_existsÚuse_site_for_rootÚreturnÚNonec	                ó~   — || _         || _        || _        || _        	 || _        	 || _        	 || _        	 || _        dS )a‹  Create a new platform directory.

        :param appname: See `appname`.
        :param appauthor: See `appauthor`.
        :param version: See `version`.
        :param roaming: See `roaming`.
        :param multipath: See `multipath`.
        :param opinion: See `opinion`.
        :param ensure_exists: See `ensure_exists`.
        :param use_site_for_root: See `use_site_for_root`.

        N)r   r   r   r   r   r   r   r   )	Úselfr   r   r   r   r   r   r   r   s	            úAC:\Projects\Historical\venv\Lib\site-packages\platformdirs/api.pyÚ__init__zPlatformDirsABC.__init__   sd   € ð. ˆŒØ"ˆŒØˆŒØˆŒð	ð #ˆŒð	ð ˆŒð	ð +ˆÔð	ð "3ˆÔð	ð 	ó    c                ó   — | j         S )zThe name of the application.)Ú_appname©r   s    r   r   zPlatformDirsABC.appnameX   s   € ð Œ}Ðr!   Úvaluec                ó4   — t          d|¦  «         || _        d S )Nr   )Ú_ensure_inside_baser#   ©r   r%   s     r   r   zPlatformDirsABC.appname]   ó   € å˜I uÑ-Ô-Ð-ØˆŒˆˆr!   c                ó   — | j         S )aG  The name of the app author or distributing body for this application.

        Typically, it is the owning company name. Defaults to `appname`. You may pass ``False`` to disable it.

        .. note::

            On Windows, the directory structure is ``<base>/<appauthor>/<appname>``. When ``appauthor`` is ``None`` (the
            default), it falls back to ``appname``, resulting in ``<base>/<appname>/<appname>`` (e.g.
            ``AppData/Local/myapp/myapp``). Pass ``appauthor=False`` to omit the author directory entirely and get
            ``<base>/<appname>``.

        )Ú
_appauthorr$   s    r   r   zPlatformDirsABC.appauthorb   s   € ð ŒÐr!   c                ó4   — t          d|¦  «         || _        d S )Nr   )r'   r+   r(   s     r   r   zPlatformDirsABC.appauthorr   s   € å˜K¨Ñ/Ô/Ð/ØˆŒˆˆr!   c                ó   — | j         S )zîAn optional version path element to append to the path.

        You might want to use this if you want multiple versions of your app to be able to run independently. If used,
        this would typically be ``<major>.<minor>``.

        )Ú_versionr$   s    r   r   zPlatformDirsABC.versionw   s   € ð Œ}Ðr!   c                ó4   — t          d|¦  «         || _        d S )Nr   )r'   r.   r(   s     r   r   zPlatformDirsABC.version�   r)   r!   ÚbaseÚstrÚprivatec               óH   —  | j         |Ž }|                      ||¬¦  «         |S )N©r2   )Ú_join_app_name_and_versionÚ_optionally_create_directory)r   r2   r0   Úpaths       r   Ú_append_app_name_and_versionz,PlatformDirsABC._append_app_name_and_version†   s/   € Ø.ˆtÔ.°Ð5ˆØ×)Ò)¨$¸Ð)Ñ@Ô@Ð@Øˆr!   c                óî   — t          |dd …         ¦  «        }| j        r;|                     | j        ¦  «         | j        r|                     | j        ¦  «         t	          j        j        |d         g|¢R Ž S )Né   r   )Úlistr   Úappendr   Úosr7   Újoin)r   r0   Úparamss      r   r5   z*PlatformDirsABC._join_app_name_and_version‹   so   € Ý�d˜1˜2˜2”h‘”ˆØŒ<ð 	,Ø�MŠM˜$œ,Ñ'Ô'Ð'ØŒ|ð ,Ø—’˜dœlÑ+Ô+Ð+ÝŒwŒ|˜D œGÐ- fÐ-Ð-Ð-Ð-r!   r7   c               ó¾   — | j         sd S t          |¦  «         |rt          t          |¦  «        ¦  «         d S t          |¦  «                             dd¬¦  «         d S )NT©ÚparentsÚexist_ok)r   Ú_ensure_home_knownÚ_make_private_directoriesr   Úmkdir)r   r7   r2   s      r   r6   z,PlatformDirsABC._optionally_create_directory“   sg   € ØÔ!ð 	ØˆFÝ˜4Ñ Ô Ð Øð 	:Ý%¥d¨4¡j¤jÑ1Ô1Ð1Ð1Ð1å�‰JŒJ×Ò T°DÐÑ9Ô9Ð9Ð9Ð9r!   c                óŽ   — t          t          ¦  «        5  |                      |d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S ©NFr4   )r   ÚFileExistsErrorr6   ©r   r7   s     r   Ú"_optionally_create_media_directoryz2PlatformDirsABC._optionally_create_media_directoryœ   s£   € õ •oÑ&Ô&ð 	Cð 	CØ×-Ò-¨d¸EÐ-ÑBÔBÐBð	Cð 	Cð 	Cñ 	Cô 	Cð 	Cð 	Cð 	Cð 	Cð 	Cð 	Cð 	Cøøøð 	Cð 	Cð 	Cð 	Cð 	Cð 	Cs   •:º>Á>Údirsú	list[str]c                óž   — | j         r|n	|d d…         }|D ]}|                      |d¬¦  «         Œt          j                             |¦  «        S )Nr:   Fr4   )r   r6   r=   Úpathsepr>   )r   rL   Úselectedr7   s       r   Ú_select_site_dirsz!PlatformDirsABC._select_site_dirs¢   s[   € àœ>Ð7�4�4¨t°B°Q°B¬xˆØð 	Cð 	CˆDØ×-Ò-¨d¸EÐ-ÑBÔBÐBÐBÝŒz�Š˜xÑ(Ô(Ð(r!   úIterable[str]úIterator[str]c              #  óJ   K  — |D ]}|                       |d¬¦  «         |V — Œd S rH   )r6   ©r   rL   r7   s      r   Ú_create_as_yieldedz"PlatformDirsABC._create_as_yielded©   sC   è è € Øð 	ð 	ˆDØ×-Ò-¨d¸EÐ-ÑBÔBÐBØˆJˆJˆJˆJð	ð 	r!   r   c                ó^   — |d         }|                       |d¬¦  «         t          |¦  «        S )Nr   Fr4   )r6   r   rU   s      r   Ú_first_site_dir_as_pathz'PlatformDirsABC._first_site_dir_as_path®   s0   € à�AŒwˆØ×)Ò)¨$¸Ð)Ñ>Ô>Ð>Ý�D‰zŒzÐr!   c                ó   — dS )z Data directory tied to the user.N© r$   s    r   Úuser_data_dirzPlatformDirsABC.user_data_dir´   ó   € € € r!   c                ó   — dS )zData directory shared by users.NrZ   r$   s    r   Úsite_data_dirzPlatformDirsABC.site_data_dir¹   r\   r!   c                ó   — | j         gS ©N)r^   r$   s    r   Ú_site_data_dirszPlatformDirsABC._site_data_dirs¾   s   € àÔ"Ð#Ð#r!   c                ó   — dS )z"Config directory tied to the user.NrZ   r$   s    r   Úuser_config_dirzPlatformDirsABC.user_config_dirÂ   r\   r!   c                ó   — dS )z!Config directory shared by users.NrZ   r$   s    r   Úsite_config_dirzPlatformDirsABC.site_config_dirÇ   r\   r!   c                ó   — | j         gS r`   )re   r$   s    r   Ú_site_config_dirsz!PlatformDirsABC._site_config_dirsÌ   s   € àÔ$Ð%Ð%r!   c                ó   — dS )z!Cache directory tied to the user.NrZ   r$   s    r   Úuser_cache_dirzPlatformDirsABC.user_cache_dirÐ   r\   r!   c                ó   — dS )z Cache directory shared by users.NrZ   r$   s    r   Úsite_cache_dirzPlatformDirsABC.site_cache_dirÕ   r\   r!   c                ó   — | j         gS r`   )rk   r$   s    r   Ú_site_cache_dirsz PlatformDirsABC._site_cache_dirsÚ   s   € àÔ#Ð$Ð$r!   c                ó   — dS )z!State directory tied to the user.NrZ   r$   s    r   Úuser_state_dirzPlatformDirsABC.user_state_dirÞ   r\   r!   c                ó   — dS )z State directory shared by users.NrZ   r$   s    r   Úsite_state_dirzPlatformDirsABC.site_state_dirã   r\   r!   c                ó   — dS )zLog directory tied to the user.NrZ   r$   s    r   Úuser_log_dirzPlatformDirsABC.user_log_dirè   r\   r!   c                ó   — dS )zLog directory shared by users.NrZ   r$   s    r   Úsite_log_dirzPlatformDirsABC.site_log_dirí   r\   r!   c                ó   — dS )z%Documents directory tied to the user.NrZ   r$   s    r   Úuser_documents_dirz"PlatformDirsABC.user_documents_dirò   r\   r!   c                ó   — dS )z%Downloads directory tied to the user.NrZ   r$   s    r   Úuser_downloads_dirz"PlatformDirsABC.user_downloads_dir÷   r\   r!   c                ó   — dS )z$Pictures directory tied to the user.NrZ   r$   s    r   Úuser_pictures_dirz!PlatformDirsABC.user_pictures_dirü   r\   r!   c                ó   — dS )z"Videos directory tied to the user.NrZ   r$   s    r   Úuser_videos_dirzPlatformDirsABC.user_videos_dir  r\   r!   c                ó   — dS )z!Music directory tied to the user.NrZ   r$   s    r   Úuser_music_dirzPlatformDirsABC.user_music_dir  r\   r!   c                ó   — dS )z#Desktop directory tied to the user.NrZ   r$   s    r   Úuser_desktop_dirz PlatformDirsABC.user_desktop_dir  r\   r!   c                ó   — dS )z$Projects directory tied to the user.NrZ   r$   s    r   Úuser_projects_dirz!PlatformDirsABC.user_projects_dir  r\   r!   c                ó   — dS )z(Public share directory tied to the user.NrZ   r$   s    r   Úuser_publicshare_dirz$PlatformDirsABC.user_publicshare_dir  r\   r!   c                ó   — dS )z%Templates directory tied to the user.NrZ   r$   s    r   Úuser_templates_dirz"PlatformDirsABC.user_templates_dir  r\   r!   c                ó   — dS )z!Fonts directory tied to the user.NrZ   r$   s    r   Úuser_fonts_dirzPlatformDirsABC.user_fonts_dir  r\   r!   c                ó   — dS )z&Preference directory tied to the user.NrZ   r$   s    r   Úuser_preference_dirz#PlatformDirsABC.user_preference_dir$  r\   r!   c                ó   — dS )zBin directory tied to the user.NrZ   r$   s    r   Úuser_bin_dirzPlatformDirsABC.user_bin_dir)  r\   r!   c                ó   — dS )zBin directory shared by users.NrZ   r$   s    r   Úsite_bin_dirzPlatformDirsABC.site_bin_dir.  r\   r!   c                ó   — dS )z(Applications directory tied to the user.NrZ   r$   s    r   Úuser_applications_dirz%PlatformDirsABC.user_applications_dir3  r\   r!   c                ó   — dS )z'Applications directory shared by users.NrZ   r$   s    r   Úsite_applications_dirz%PlatformDirsABC.site_applications_dir8  r\   r!   c                ó   — | j         gS r`   )r“   r$   s    r   Ú_site_applications_dirsz'PlatformDirsABC._site_applications_dirs=  s   € àÔ*Ð+Ð+r!   c                ó   — dS )z#Runtime directory tied to the user.NrZ   r$   s    r   Úuser_runtime_dirz PlatformDirsABC.user_runtime_dirA  r\   r!   c                ó   — dS )z"Runtime directory shared by users.NrZ   r$   s    r   Úsite_runtime_dirz PlatformDirsABC.site_runtime_dirF  r\   r!   c                ó*   — t          | j        ¦  «        S )zData path tied to the user.)r   r[   r$   s    r   Úuser_data_pathzPlatformDirsABC.user_data_pathK  s   € õ �DÔ&Ñ'Ô'Ð'r!   c                ó6   — |                       | j        ¦  «        S )z`Data path shared by users. Only return the first item, even if ``multipath`` is set to ``True``.)rX   ra   r$   s    r   Úsite_data_pathzPlatformDirsABC.site_data_pathP  s   € ð ×+Ò+¨DÔ,@ÑAÔAÐAr!   c                ó*   — t          | j        ¦  «        S )zConfig path tied to the user.)r   rc   r$   s    r   Úuser_config_pathz PlatformDirsABC.user_config_pathU  ó   € õ �DÔ(Ñ)Ô)Ð)r!   c                ó6   — |                       | j        ¦  «        S )zbConfig path shared by users. Only return the first item, even if ``multipath`` is set to ``True``.)rX   rg   r$   s    r   Úsite_config_pathz PlatformDirsABC.site_config_pathZ  s   € ð ×+Ò+¨DÔ,BÑCÔCÐCr!   c                ó*   — t          | j        ¦  «        S )zCache path tied to the user.)r   ri   r$   s    r   Úuser_cache_pathzPlatformDirsABC.user_cache_path_  ó   € õ �DÔ'Ñ(Ô(Ð(r!   c                ó6   — |                       | j        ¦  «        S )zaCache path shared by users. Only return the first item, even if ``multipath`` is set to ``True``.)rX   rm   r$   s    r   Úsite_cache_pathzPlatformDirsABC.site_cache_pathd  s   € ð ×+Ò+¨DÔ,AÑBÔBÐBr!   c                ó*   — t          | j        ¦  «        S )zState path tied to the user.)r   ro   r$   s    r   Úuser_state_pathzPlatformDirsABC.user_state_pathi  r¥   r!   c                ó*   — t          | j        ¦  «        S )zState path shared by users.)r   rq   r$   s    r   Úsite_state_pathzPlatformDirsABC.site_state_pathn  r¥   r!   c                ó*   — t          | j        ¦  «        S )zLog path tied to the user.)r   rs   r$   s    r   Úuser_log_pathzPlatformDirsABC.user_log_paths  ó   € õ �DÔ%Ñ&Ô&Ð&r!   c                ó*   — t          | j        ¦  «        S )zLog path shared by users.)r   ru   r$   s    r   Úsite_log_pathzPlatformDirsABC.site_log_pathx  r®   r!   c                ó*   — t          | j        ¦  «        S )z Documents path tied to the user.)r   rw   r$   s    r   Úuser_documents_pathz#PlatformDirsABC.user_documents_path}  ó   € õ �DÔ+Ñ,Ô,Ð,r!   c                ó*   — t          | j        ¦  «        S )z Downloads path tied to the user.)r   ry   r$   s    r   Úuser_downloads_pathz#PlatformDirsABC.user_downloads_path‚  r³   r!   c                ó*   — t          | j        ¦  «        S )zPictures path tied to the user.)r   r{   r$   s    r   Úuser_pictures_pathz"PlatformDirsABC.user_pictures_path‡  ó   € õ �DÔ*Ñ+Ô+Ð+r!   c                ó*   — t          | j        ¦  «        S )zVideos path tied to the user.)r   r}   r$   s    r   Úuser_videos_pathz PlatformDirsABC.user_videos_pathŒ  r    r!   c                ó*   — t          | j        ¦  «        S )zMusic path tied to the user.)r   r   r$   s    r   Úuser_music_pathzPlatformDirsABC.user_music_path‘  r¥   r!   c                ó*   — t          | j        ¦  «        S )zDesktop path tied to the user.)r   r�   r$   s    r   Úuser_desktop_pathz!PlatformDirsABC.user_desktop_path–  ó   € õ �DÔ)Ñ*Ô*Ð*r!   c                ó*   — t          | j        ¦  «        S )zProjects path tied to the user.)r   rƒ   r$   s    r   Úuser_projects_pathz"PlatformDirsABC.user_projects_path›  r¸   r!   c                ó*   — t          | j        ¦  «        S )z#Public share path tied to the user.)r   r…   r$   s    r   Úuser_publicshare_pathz%PlatformDirsABC.user_publicshare_path   s   € õ �DÔ-Ñ.Ô.Ð.r!   c                ó*   — t          | j        ¦  «        S )z Templates path tied to the user.)r   r‡   r$   s    r   Úuser_templates_pathz#PlatformDirsABC.user_templates_path¥  r³   r!   c                ó*   — t          | j        ¦  «        S )zFonts path tied to the user.)r   r‰   r$   s    r   Úuser_fonts_pathzPlatformDirsABC.user_fonts_pathª  r¥   r!   c                ó*   — t          | j        ¦  «        S )z!Preference path tied to the user.)r   r‹   r$   s    r   Úuser_preference_pathz$PlatformDirsABC.user_preference_path¯  s   € õ �DÔ,Ñ-Ô-Ð-r!   c                ó*   — t          | j        ¦  «        S )zBin path tied to the user.)r   r�   r$   s    r   Úuser_bin_pathzPlatformDirsABC.user_bin_path´  r®   r!   c                ó*   — t          | j        ¦  «        S )zBin path shared by users.)r   r�   r$   s    r   Úsite_bin_pathzPlatformDirsABC.site_bin_path¹  r®   r!   c                ó*   — t          | j        ¦  «        S )z#Applications path tied to the user.)r   r‘   r$   s    r   Úuser_applications_pathz&PlatformDirsABC.user_applications_path¾  s   € õ �DÔ.Ñ/Ô/Ð/r!   c                ó6   — t          | j        d         ¦  «        S )zhApplications path shared by users. Only return the first item, even if ``multipath`` is set to ``True``.r   )r   r•   r$   s    r   Úsite_applications_pathz&PlatformDirsABC.site_applications_pathÃ  s   € õ �DÔ0°Ô3Ñ4Ô4Ð4r!   c                ó*   — t          | j        ¦  «        S )zRuntime path tied to the user.)r   r—   r$   s    r   Úuser_runtime_pathz!PlatformDirsABC.user_runtime_pathÈ  r¿   r!   c                ó*   — t          | j        ¦  «        S )zRuntime path shared by users.)r   r™   r$   s    r   Úsite_runtime_pathz!PlatformDirsABC.site_runtime_pathÍ  r¿   r!   c              #  óX   K  — t          |                      ¦   «         ¦  «        E d{V —† dS )z4:yield: all user and site configuration directories.N)Ú_uniqueÚ_iter_config_dirsr$   s    r   Úiter_config_dirsz PlatformDirsABC.iter_config_dirsÒ  s8   è è € å˜4×1Ò1Ñ3Ô3Ñ4Ô4Ð4Ð4Ð4Ð4Ð4Ð4Ð4Ð4Ð4r!   c              #  ój   K  — | j         s	| j        V — |                      | j        ¦  «        E d {V —† d S r`   )Ú	_use_siterc   rV   rg   r$   s    r   rØ   z!PlatformDirsABC._iter_config_dirsÖ  sN   è è € ØŒ~ð 	'ØÔ&Ð&Ð&Ð&Ø×*Ò*¨4Ô+AÑBÔBÐBÐBÐBÐBÐBÐBÐBÐBÐBr!   c              #  óX   K  — t          |                      ¦   «         ¦  «        E d{V —† dS )z+:yield: all user and site data directories.N)r×   Ú_iter_data_dirsr$   s    r   Úiter_data_dirszPlatformDirsABC.iter_data_dirsÛ  s8   è è € å˜4×/Ò/Ñ1Ô1Ñ2Ô2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2r!   c              #  ój   K  — | j         s	| j        V — |                      | j        ¦  «        E d {V —† d S r`   )rÛ   r[   rV   ra   r$   s    r   rÝ   zPlatformDirsABC._iter_data_dirsß  sN   è è € ØŒ~ð 	%ØÔ$Ð$Ð$Ð$Ø×*Ò*¨4Ô+?Ñ@Ô@Ð@Ð@Ð@Ð@Ð@Ð@Ð@Ð@Ð@r!   c              #  óX   K  — t          |                      ¦   «         ¦  «        E d{V —† dS )z,:yield: all user and site cache directories.N)r×   Ú_iter_cache_dirsr$   s    r   Úiter_cache_dirszPlatformDirsABC.iter_cache_dirsä  ó8   è è € å˜4×0Ò0Ñ2Ô2Ñ3Ô3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3r!   c              #  ój   K  — | j         s	| j        V — |                      | j        ¦  «        E d {V —† d S r`   )rÛ   ri   rV   rm   r$   s    r   rá   z PlatformDirsABC._iter_cache_dirsè  sN   è è € ØŒ~ð 	&ØÔ%Ð%Ð%Ð%Ø×*Ò*¨4Ô+@ÑAÔAÐAÐAÐAÐAÐAÐAÐAÐAÐAr!   c              #  óX   K  — t          |                      ¦   «         ¦  «        E d{V —† dS )z,:yield: all user and site state directories.N)r×   Ú_iter_state_dirsr$   s    r   Úiter_state_dirszPlatformDirsABC.iter_state_dirsí  rã   r!   c              #  ó<   K  — | j         s	| j        V — | j        V — d S r`   )rÛ   ro   rq   r$   s    r   ræ   z PlatformDirsABC._iter_state_dirsñ  s4   è è € ØŒ~ð 	&ØÔ%Ð%Ð%Ð%ØÔ!Ð!Ð!Ð!Ð!Ð!r!   c              #  óX   K  — t          |                      ¦   «         ¦  «        E d{V —† dS )z*:yield: all user and site log directories.N)r×   Ú_iter_log_dirsr$   s    r   Úiter_log_dirszPlatformDirsABC.iter_log_dirsö  s8   è è € å˜4×.Ò.Ñ0Ô0Ñ1Ô1Ð1Ð1Ð1Ð1Ð1Ð1Ð1Ð1Ð1r!   c              #  ó<   K  — | j         s	| j        V — | j        V — d S r`   )rÛ   rs   ru   r$   s    r   rê   zPlatformDirsABC._iter_log_dirsú  s4   è è € ØŒ~ð 	$ØÔ#Ð#Ð#Ð#ØÔÐÐÐÐÐr!   c              #  óX   K  — t          |                      ¦   «         ¦  «        E d{V —† dS )z.:yield: all user and site runtime directories.N)r×   Ú_iter_runtime_dirsr$   s    r   Úiter_runtime_dirsz!PlatformDirsABC.iter_runtime_dirsÿ  s8   è è € å˜4×2Ò2Ñ4Ô4Ñ5Ô5Ð5Ð5Ð5Ð5Ð5Ð5Ð5Ð5Ð5r!   c              #  ó@   K  — | j         V — | j        s| j        V — d S d S r`   )r—   rÛ   r™   r$   s    r   rî   z"PlatformDirsABC._iter_runtime_dirs  s>   è è € ØÔ#Ð#Ð#Ð#àŒ~ð 	(ØÔ'Ð'Ð'Ð'Ð'Ð'ð	(ð 	(r!   c                ó   — dS )NFrZ   r$   s    r   rÛ   zPlatformDirsABC._use_site	  s	   € ð ˆur!   úIterator[Path]c              #  óZ   K  — |                       ¦   «         D ]}t          |¦  «        V — ŒdS )z.:yield: all user and site configuration paths.N)rÙ   r   rJ   s     r   Úiter_config_pathsz!PlatformDirsABC.iter_config_paths  s@   è è € à×)Ò)Ñ+Ô+ð 	ð 	ˆDÝ�t‘*”*ÐÐÐÐð	ð 	r!   c              #  óZ   K  — |                       ¦   «         D ]}t          |¦  «        V — ŒdS )z%:yield: all user and site data paths.N)rÞ   r   rJ   s     r   Úiter_data_pathszPlatformDirsABC.iter_data_paths  s@   è è € à×'Ò'Ñ)Ô)ð 	ð 	ˆDÝ�t‘*”*ÐÐÐÐð	ð 	r!   c              #  óZ   K  — |                       ¦   «         D ]}t          |¦  «        V — ŒdS )z&:yield: all user and site cache paths.N)râ   r   rJ   s     r   Úiter_cache_pathsz PlatformDirsABC.iter_cache_paths  ó@   è è € à×(Ò(Ñ*Ô*ð 	ð 	ˆDÝ�t‘*”*ÐÐÐÐð	ð 	r!   c              #  óZ   K  — |                       ¦   «         D ]}t          |¦  «        V — ŒdS )z&:yield: all user and site state paths.N)rç   r   rJ   s     r   Úiter_state_pathsz PlatformDirsABC.iter_state_paths  rù   r!   c              #  óZ   K  — |                       ¦   «         D ]}t          |¦  «        V — ŒdS )z$:yield: all user and site log paths.N)rë   r   rJ   s     r   Úiter_log_pathszPlatformDirsABC.iter_log_paths#  s@   è è € à×&Ò&Ñ(Ô(ð 	ð 	ˆDÝ�t‘*”*ÐÐÐÐð	ð 	r!   c              #  óZ   K  — |                       ¦   «         D ]}t          |¦  «        V — ŒdS )z(:yield: all user and site runtime paths.N)rï   r   rJ   s     r   Úiter_runtime_pathsz"PlatformDirsABC.iter_runtime_paths(  s@   è è € à×*Ò*Ñ,Ô,ð 	ð 	ˆDÝ�t‘*”*ÐÐÐÐð	ð 	r!   Únameústr | os.PathLike[str]c                ó0   — |                       d„ |¦  «        S )a3  Return the path of ``name`` under `user_config_path`, creating the missing directories on the way.

        Each directory it creates, including the user directory itself, gets mode ``0o700`` whether or not
        `ensure_exists` is set; directories that already exist keep their mode. On Unix, root with `use_site_for_root`
        places the file under the site directory instead and creates the missing directories with the default mode, so
        other users can read them. It does not create the file.

        :param name: file path relative to the user directory, e.g. ``"sub/app.toml"``.

        :raises ValueError: if ``name`` is empty, absolute, has a drive or climbs out through ``..``.
        :raises RuntimeError: if the user directory starts with ``~`` because the home directory is unknown.

        c                ó   — | j         S r`   )rŸ   ©rL   s    r   ú<lambda>z3PlatformDirsABC.place_config_file.<locals>.<lambda>;  s	   € ¨TÔ-B€ r!   ©Ú_place_file©r   r   s     r   Úplace_config_filez!PlatformDirsABC.place_config_file-  s   € ð ×ÒÐ BÐ BÀDÑIÔIÐIr!   c                ó0   — |                       d„ |¦  «        S )z1Like `place_config_file`, under `user_data_path`.c                ó   — | j         S r`   )r›   r  s    r   r  z1PlatformDirsABC.place_data_file.<locals>.<lambda>?  s	   € ¨TÔ-@€ r!   r  r  s     r   Úplace_data_filezPlatformDirsABC.place_data_file=  s   € à×ÒÐ @Ð @À$ÑGÔGÐGr!   c                ó0   — |                       d„ |¦  «        S )z2Like `place_config_file`, under `user_cache_path`.c                ó   — | j         S r`   )r¤   r  s    r   r  z2PlatformDirsABC.place_cache_file.<locals>.<lambda>C  ó	   € ¨TÔ-A€ r!   r  r  s     r   Úplace_cache_filez PlatformDirsABC.place_cache_fileA  ó   € à×ÒÐ AÐ AÀ4ÑHÔHÐHr!   c                ó0   — |                       d„ |¦  «        S )z2Like `place_config_file`, under `user_state_path`.c                ó   — | j         S r`   )r©   r  s    r   r  z2PlatformDirsABC.place_state_file.<locals>.<lambda>G  r  r!   r  r  s     r   Úplace_state_filez PlatformDirsABC.place_state_fileE  r  r!   c                ó0   — |                       d„ |¦  «        S )z0Like `place_config_file`, under `user_log_path`.c                ó   — | j         S r`   )r­   r  s    r   r  z0PlatformDirsABC.place_log_file.<locals>.<lambda>K  s	   € ¨TÔ-?€ r!   r  r  s     r   Úplace_log_filezPlatformDirsABC.place_log_fileI  s   € à×ÒÐ ?Ð ?ÀÑFÔFÐFr!   c                ó0   — |                       d„ |¦  «        S )z Like `place_config_file`, under `user_runtime_path`.

        :raises PermissionError: on Unix, if another user owns the temporary fallback directory.

        c                ó   — | j         S r`   )rÓ   r  s    r   r  z4PlatformDirsABC.place_runtime_file.<locals>.<lambda>S  s	   € ¨TÔ-C€ r!   r  r  s     r   Úplace_runtime_filez"PlatformDirsABC.place_runtime_fileM  s   € ð ×ÒÐ CÐ CÀTÑJÔJÐJr!   Ú	user_pathú!Callable[[PlatformDirsABC], Path]c                ó’  — t          dt          j        |¦  «        x}¦  «         t          |¦  «        j        sd|›�}t          |¦  «        ‚dt          | ¦  «        x}_        t          t           ||¦  «        x}¦  «        ¦  «         ||z  }| j
        r|j                             dd¬¦  «         nt          |j        ¦  «         |S )Nr   zname must point to a file, got FTrA   )r'   r=   Úfspathr   ÚpartsÚ
ValueErrorr   r   rD   r1   rÛ   ÚparentrF   rE   )r   r  r   ÚrelativeÚmsgÚlookupÚ	directoryr7   s           r   r  zPlatformDirsABC._place_fileU  sÈ   € Ý˜Fµ´	¸$±´Ð$? HÑ@Ô@Ð@Ý�H‰~Œ~Ô#ð 	"Ø@°HÐ@Ð@ˆCÝ˜S‘/”/Ð!à/4•4˜‘:”:Ð	ˆÔ,å�3¨I¨I°fÑ,=Ô,=Ð=˜yÑ>Ô>Ñ?Ô?Ð?Ø˜8Ñ#ˆØŒ>ð 	3àŒK×Ò d°TÐÑ:Ô:Ð:Ð:å% d¤kÑ2Ô2Ð2Øˆr!   úPath | Nonec                ó^   — t          |                      t          j        |¦  «        d¦  «        S )a`  Find the first ``name`` file in :meth:`iter_config_paths` order, without creating any directory.

        :param name: path relative to each directory, may contain subdirectories.

        :returns: the file, or ``None`` when no directory holds one.

        :raises ValueError: if ``name`` is absolute, has a drive or climbs out with ``..``.

        N)ÚnextÚ_find_filesr   rô   r  s     r   Úfind_config_filez PlatformDirsABC.find_config_filef  s'   € õ �D×$Ò$¥_Ô%FÈÑMÔMÈtÑTÔTÐTr!   ú
list[Path]c                ó\   — t          |                      t          j        |¦  «        ¦  «        S )a	  Find every ``name`` file in :meth:`iter_config_paths` order, without creating any directory.

        :param name: see :meth:`find_config_file`.

        :returns: the files, user directory first.

        :raises ValueError: see :meth:`find_config_file`.

        )r;   r)  r   rô   r  s     r   Úfind_config_filesz!PlatformDirsABC.find_config_filesr  s%   € õ �D×$Ò$¥_Ô%FÈÑMÔMÑNÔNÐNr!   c                ó^   — t          |                      t          j        |¦  «        d¦  «        S )zALike :meth:`find_config_file`, searching :meth:`iter_data_paths`.N)r(  r)  r   rö   r  s     r   Úfind_data_filezPlatformDirsABC.find_data_file~  s%   € å�D×$Ò$¥_Ô%DÀdÑKÔKÈTÑRÔRÐRr!   c                ó\   — t          |                      t          j        |¦  «        ¦  «        S )zBLike :meth:`find_config_files`, searching :meth:`iter_data_paths`.)r;   r)  r   rö   r  s     r   Úfind_data_fileszPlatformDirsABC.find_data_files‚  s#   € å�D×$Ò$¥_Ô%DÀdÑKÔKÑLÔLÐLr!   c                ó^   — t          |                      t          j        |¦  «        d¦  «        S )zBLike :meth:`find_config_file`, searching :meth:`iter_cache_paths`.N)r(  r)  r   rø   r  s     r   Úfind_cache_filezPlatformDirsABC.find_cache_file†  ó%   € å�D×$Ò$¥_Ô%EÀtÑLÔLÈdÑSÔSÐSr!   c                ó\   — t          |                      t          j        |¦  «        ¦  «        S )zCLike :meth:`find_config_files`, searching :meth:`iter_cache_paths`.)r;   r)  r   rø   r  s     r   Úfind_cache_filesz PlatformDirsABC.find_cache_filesŠ  ó#   € å�D×$Ò$¥_Ô%EÀtÑLÔLÑMÔMÐMr!   c                ó^   — t          |                      t          j        |¦  «        d¦  «        S )zBLike :meth:`find_config_file`, searching :meth:`iter_state_paths`.N)r(  r)  r   rû   r  s     r   Úfind_state_filezPlatformDirsABC.find_state_fileŽ  r4  r!   c                ó\   — t          |                      t          j        |¦  «        ¦  «        S )zCLike :meth:`find_config_files`, searching :meth:`iter_state_paths`.)r;   r)  r   rû   r  s     r   Úfind_state_filesz PlatformDirsABC.find_state_files’  r7  r!   c                ó^   — t          |                      t          j        |¦  «        d¦  «        S )z@Like :meth:`find_config_file`, searching :meth:`iter_log_paths`.N)r(  r)  r   rý   r  s     r   Úfind_log_filezPlatformDirsABC.find_log_file–  s%   € å�D×$Ò$¥_Ô%CÀTÑJÔJÈDÑQÔQÐQr!   c                ó\   — t          |                      t          j        |¦  «        ¦  «        S )zALike :meth:`find_config_files`, searching :meth:`iter_log_paths`.)r;   r)  r   rý   r  s     r   Úfind_log_fileszPlatformDirsABC.find_log_filesš  s#   € å�D×$Ò$¥_Ô%CÀTÑJÔJÑKÔKÐKr!   c                ó^   — t          |                      t          j        |¦  «        d¦  «        S )zDLike :meth:`find_config_file`, searching :meth:`iter_runtime_paths`.N)r(  r)  r   rÿ   r  s     r   Úfind_runtime_filez!PlatformDirsABC.find_runtime_filež  s&   € å�D×$Ò$¥_Ô%GÈÑNÔNÐPTÑUÔUÐUr!   c                ó\   — t          |                      t          j        |¦  «        ¦  «        S )zELike :meth:`find_config_files`, searching :meth:`iter_runtime_paths`.)r;   r)  r   rÿ   r  s     r   Úfind_runtime_filesz"PlatformDirsABC.find_runtime_files¢  s#   € å�D×$Ò$¥_Ô%GÈÑNÔNÑOÔOÐOr!   Ú
iter_pathsú+Callable[[PlatformDirsABC], Iterator[Path]]c                óª   ‡‡— t          dt          j        |¦  «        xŠ¦  «         dt          | ¦  «        x}_        ˆˆfd„ ||¦  «        D ¦   «         S )Nr   Fc              3  óN   •K  — | ]}|‰z  xŠ                      ¦   «         ¯‰V — Œ d S r`   )Úis_file)Ú.0r%  r7   r"  s     €€r   ú	<genexpr>z.PlatformDirsABC._find_files.<locals>.<genexpr>¬  s?   øè è € ÐeÐe˜ÀYÐQYÑEYÐ=Y¸T×<bÒ<bÑ<dÔ<dÐe�ÐeÐeÐeÐeÐeÐer!   )r'   r=   r  r   r   )r   rD  r   r$  r7   r"  s       @@r   r)  zPlatformDirsABC._find_files¦  s]   øø€ õ 	˜Fµ´	¸$±´Ð$? HÑ@Ô@Ð@à/4•4˜‘:”:Ð	ˆÔ,ØeÐeÐeÐeÐe j j°Ñ&8Ô&8ÐeÑeÔeÐer!   )NNNFFTFF)r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   )r%   r   r   r   )r   r   )r%   r   r   r   )r0   r1   r2   r   r   r1   )r0   r1   r   r1   )r7   r1   r2   r   r   r   ©r7   r1   r   r   )rL   rM   r   r1   ©rL   rR   r   rS   )rL   rM   r   r   )r   r1   )r   rM   )r   r   )r   rS   )r   r   )r   rò   )r   r  r   r   )r  r  r   r  r   r   )r   r  r   r&  )r   r  r   r+  )rD  rE  r   r  r   rò   )sÚ__name__Ú
__module__Ú__qualname__Ú__doc__r    Úpropertyr   Úsetterr   r   r8   r5   r6   rK   rQ   rV   rX   r   r[   r^   ra   rc   re   rg   ri   rk   rm   ro   rq   rs   ru   rw   ry   r{   r}   r   r�   rƒ   r…   r‡   r‰   r‹   r�   r�   r‘   r“   r•   r—   r™   r›   r�   rŸ   r¢   r¤   r§   r©   r«   r­   r°   r²   rµ   r·   rº   r¼   r¾   rÁ   rÃ   rÅ   rÇ   rÉ   rË   rÍ   rÏ   rÑ   rÓ   rÕ   rÙ   rØ   rÞ   rÝ   râ   rá   rç   ræ   rë   rê   rï   rî   rÛ   rô   rö   rø   rû   rý   rÿ   r	  r  r  r  r  r  r  r*  r-  r/  r1  r3  r6  r9  r;  r=  r?  rA  rC  r)  rZ   r!   r   r   r      sv  € € € € € ðð ð #Ø15Ø"ØØØØ#Ø"'ð<ð <ð <ð <ð <ð| ðð ð ñ „Xðð „^ðð ð ñ „^ðð ðð ð ñ „Xðð Ôð ð  ð  ñ Ôð ð ðð ð ñ „Xðð „^ðð ð ñ „^ððð ð ð ð
.ð .ð .ð .ð:ð :ð :ð :ðCð Cð Cð Cð)ð )ð )ð )ðð ð ð ð
ð ð ð ð Øð/ð /ð /ñ „^ñ „Xð/ð Øð.ð .ð .ñ „^ñ „Xð.ð ð$ð $ð $ñ „Xð$ð Øð1ð 1ð 1ñ „^ñ „Xð1ð Øð0ð 0ð 0ñ „^ñ „Xð0ð ð&ð &ð &ñ „Xð&ð Øð0ð 0ð 0ñ „^ñ „Xð0ð Øð/ð /ð /ñ „^ñ „Xð/ð ð%ð %ð %ñ „Xð%ð Øð0ð 0ð 0ñ „^ñ „Xð0ð Øð/ð /ð /ñ „^ñ „Xð/ð Øð.ð .ð .ñ „^ñ „Xð.ð Øð-ð -ð -ñ „^ñ „Xð-ð Øð4ð 4ð 4ñ „^ñ „Xð4ð Øð4ð 4ð 4ñ „^ñ „Xð4ð Øð3ð 3ð 3ñ „^ñ „Xð3ð Øð1ð 1ð 1ñ „^ñ „Xð1ð Øð0ð 0ð 0ñ „^ñ „Xð0ð Øð2ð 2ð 2ñ „^ñ „Xð2ð Øð3ð 3ð 3ñ „^ñ „Xð3ð Øð7ð 7ð 7ñ „^ñ „Xð7ð Øð4ð 4ð 4ñ „^ñ „Xð4ð Øð0ð 0ð 0ñ „^ñ „Xð0ð Øð5ð 5ð 5ñ „^ñ „Xð5ð Øð.ð .ð .ñ „^ñ „Xð.ð Øð-ð -ð -ñ „^ñ „Xð-ð Øð7ð 7ð 7ñ „^ñ „Xð7ð Øð6ð 6ð 6ñ „^ñ „Xð6ð ð,ð ,ð ,ñ „Xð,ð Øð2ð 2ð 2ñ „^ñ „Xð2ð Øð1ð 1ð 1ñ „^ñ „Xð1ð ð(ð (ð (ñ „Xð(ð ðBð Bð Bñ „XðBð ð*ð *ð *ñ „Xð*ð ðDð Dð Dñ „XðDð ð)ð )ð )ñ „Xð)ð ðCð Cð Cñ „XðCð ð)ð )ð )ñ „Xð)ð ð)ð )ð )ñ „Xð)ð ð'ð 'ð 'ñ „Xð'ð ð'ð 'ð 'ñ „Xð'ð ð-ð -ð -ñ „Xð-ð ð-ð -ð -ñ „Xð-ð ð,ð ,ð ,ñ „Xð,ð ð*ð *ð *ñ „Xð*ð ð)ð )ð )ñ „Xð)ð ð+ð +ð +ñ „Xð+ð ð,ð ,ð ,ñ „Xð,ð ð/ð /ð /ñ „Xð/ð ð-ð -ð -ñ „Xð-ð ð)ð )ð )ñ „Xð)ð ð.ð .ð .ñ „Xð.ð ð'ð 'ð 'ñ „Xð'ð ð'ð 'ð 'ñ „Xð'ð ð0ð 0ð 0ñ „Xð0ð ð5ð 5ð 5ñ „Xð5ð ð+ð +ð +ñ „Xð+ð ð+ð +ð +ñ „Xð+ð5ð 5ð 5ð 5ðCð Cð Cð Cð
3ð 3ð 3ð 3ðAð Að Að Að
4ð 4ð 4ð 4ðBð Bð Bð Bð
4ð 4ð 4ð 4ð"ð "ð "ð "ð
2ð 2ð 2ð 2ð ð  ð  ð  ð
6ð 6ð 6ð 6ð(ð (ð (ð (ð ðð ð ñ „Xðð
ð ð ð ð
ð ð ð ð
ð ð ð ð
ð ð ð ð
ð ð ð ð
ð ð ð ð
Jð Jð Jð Jð Hð Hð Hð HðIð Ið Ið IðIð Ið Ið IðGð Gð Gð GðKð Kð Kð Kðð ð ð ð"
Uð 
Uð 
Uð 
Uð
Oð 
Oð 
Oð 
OðSð Sð Sð SðMð Mð Mð MðTð Tð Tð TðNð Nð Nð NðTð Tð Tð TðNð Nð Nð NðRð Rð Rð RðLð Lð Lð LðVð Vð Vð VðPð Pð Pð Pðfð fð fð fð fð fr!   r   r   r1   r%   r   r   r   c                ó  — |sd S t           j                             |¦  «        \  }}|s@|                     d¦  «        s+d|                     dd¦  «                             d¦  «        v r| › d|›�}t          |¦  «        ‚d S )N)ú/ú\z..rU  rT  z* must stay inside the base directory, got )r=   r7   Ú
splitdriveÚ
startswithÚreplaceÚsplitr   )r   r%   ÚdriveÚtailr#  s        r   r'   r'   ¯  s’   € Øð Øˆå”'×$Ò$ UÑ+Ô+�K€Eˆ4Øð �—’ Ñ,Ô,ð °¸¿ºÀTÈ3Ñ8OÔ8O×8UÒ8UÐVYÑ8ZÔ8ZÐ0ZÐ0ZØÐJÐJÀÐJÐJˆÝ˜‰oŒoÐð 1[Ð0Zr!   r7   c                óX   — |                       d¦  «        rd| ›�}t          |¦  «        ‚d S )Nú~z;could not determine the home directory, refusing to create )rW  ÚRuntimeError)r7   r#  s     r   rD   rD   ¹  s;   € à‡‚�sÑÔð  ØTÈDÐTÐTˆÝ˜3ÑÔÐð ð  r!   rL   rR   rS   c              #  ój   K  — t          ¦   «         }| D ]}||vr|                     |¦  «         |V — Œ dS )zB:yield: ``dirs`` in order, skipping any directory already yielded.N)ÚsetÚadd)rL   Úseenr7   s      r   r×   r×   À  sN   è è € õ ‘U”U€DØð ð ˆØ�tÐÐØ�HŠH�T‰NŒNˆNØˆJˆJˆJøðð r!   r   c                ó®   — 	 |                       dd¬¦  «         d S # t          $ r/ t          | j        ¦  «         |                       dd¬¦  «         Y d S w xY w)NiÀ  T)ÚmoderC   )rF   ÚFileNotFoundErrorrE   r!  )r7   s    r   rE   rE   Ë  sm   € ð.Ø�
Š
˜¨ˆ
Ñ-Ô-Ð-Ð-Ð-øÝð .ð .ð .Ý! $¤+Ñ.Ô.Ð.Ø�
Š
˜¨ˆ
Ñ-Ô-Ð-Ð-Ð-Ð-ð.øøøs   ‚ ›5AÁAc                  ó   — e Zd ZdZdS )ÚRuntimeDirWarningzgEmitted when the Unix :attr:`~platformdirs.unix.Unix.user_runtime_dir` cannot use ``$XDG_RUNTIME_DIR``.N)rM  rN  rO  rP  rZ   r!   r   rg  rg  Ô  s   € € € € € ØqÐqÐqÐqr!   rg  )r   r1   r%   r   r   r   rK  rL  )r7   r   r   r   )rP  Ú
__future__r   r=   Úabcr   r   Ú
contextlibr   r   Úpathlibr   Útypingr	   Úcollections.abcr
   r   r   r   r   r'   rD   r×   rE   ÚUserWarningrg  rZ   r!   r   ú<module>ro     s†  ðØ €à "Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø #Ð #Ð #Ð #Ð #Ð #Ð #Ð #Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø  Ð  Ð  Ð  Ð  Ð  àð Ø<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<ØÐÐÐÐÐð[
fð [
fð [
fð [
fð [
f�cñ [
fô [
fð [
fð|ð ð ð ð ð  ð  ð  ðð ð ð ð.ð .ð .ð .ðrð rð rð rð r˜ñ rô rð rð rð rr!   