
    2 jw                       S r SSKJr  SSKrSSKrSSKJr  SSKJr  SSK	J
r
  SSK	Jr  \(       a  SS	KJr  SS
KJr  \R                   S:X  a  SSKJr  O\R                   S:X  a  SSKJr  OSSKJr  S>S jr\(       a  \rO\" 5       r\r      S?             S@S jjr     SA           SBS jjr      S?             S@S jjr     SA           SBS jjr      SC             SDS jjr     SE           SFS jjr       S?             S@S jjr!    SG         SHS jjr"      SC             SDS jjr#     SE           SFS jjr$SIS jr%SIS jr&SIS jr'SIS jr(SIS jr)SIS  jr*SIS! jr+SIS" jr,SIS# jr-  SJ     SKS$ jjr.      SC             SDS% jjr/     SE           SFS& jjr0      S?             SLS' jjr1     SA           SMS( jjr2      S?             SLS) jjr3     SA           SMS* jjr4     SE           SNS+ jjr5      SC             SOS, jjr6      S?             SLS- jjr7    SG         SPS. jjr8      SC             SOS/ jjr9     SE           SNS0 jjr:SQS1 jr;SQS2 jr<SQS3 jr=SQS4 jr>SQS5 jr?SQS6 jr@SQS7 jrASQS8 jrBSQS9 jrC  SJ     SRS: jjrD      SC             SOS; jjrE     SE           SNS< jjrF/ S=QrGg)Sa]  Utilities for determining application-specific dirs.

Provides convenience functions (e.g. :func:`user_data_dir`, :func:`user_config_path`), a :data:`PlatformDirs` class that
auto-detects the current platform, and the :class:`~platformdirs.api.PlatformDirsABC` base class.

See <https://github.com/platformdirs/platformdirs> for details and usage.

    )annotationsN)TYPE_CHECKING   )PlatformDirsABC)__version__)__version_tuple__)Path)Literalwin32)Windowsdarwin)MacOS)Unixc                    [         R                  " S5      S:X  al  [         R                  " S5      S:X  aR  [         R                  " S5      (       d  [         R                  " S5      (       a  [        $ SSKJn   U " 5       b  SS	KJn  U$ [        $ )
NANDROID_DATAz/dataANDROID_ROOTz/systemSHELLPREFIXr   )_android_folder)Android)osgetenv_Resultplatformdirs.androidr   r   )r   r   s     f/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/platformdirs/__init__.py_set_platform_dir_classr       s^    	yy G+		.0IY0V99W8!4!4N8(4NN    c           	     2    [        U UUUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param roaming: See `roaming <platformdirs.api.PlatformDirsABC.roaming>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
:param use_site_for_root: See `use_site_for_root <platformdirs.api.PlatformDirsABC.use_site_for_root>`.

:returns: data directory tied to the user

appname	appauthorversionroamingensure_existsuse_site_for_root)PlatformDirsuser_data_dirr   s         r   r'   r'   7   *    $ #+ mr   c                0    [        U UUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param multipath: See `multipath <platformdirs.api.PlatformDirsABC.multipath>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: data directory shared by users

r    r!   r"   	multipathr$   )r&   site_data_dirr*   s        r   r,   r,   S   s'      # mr   c           	     2    [        U UUUUUS9R                  $ )a   :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param roaming: See `roaming <platformdirs.api.PlatformDirsABC.roaming>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
:param use_site_for_root: See `use_site_for_root <platformdirs.api.PlatformDirsABC.use_site_for_root>`.

:returns: config directory tied to the user

r   )r&   user_config_dirr   s         r   r.   r.   l   *    $ #+ or   c                0    [        U UUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param multipath: See `multipath <platformdirs.api.PlatformDirsABC.multipath>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: config directory shared by users

r*   )r&   site_config_dirr*   s        r   r1   r1      s'      # or   c           	     2    [        U UUUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
:param use_site_for_root: See `use_site_for_root <platformdirs.api.PlatformDirsABC.use_site_for_root>`.

:returns: cache directory tied to the user

r    r!   r"   opinionr$   r%   )r&   user_cache_dirr3   s         r   r5   r5      *    $ #+ nr   c                0    [        U UUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: cache directory shared by users

r    r!   r"   r4   r$   )r&   site_cache_dirr8   s        r   r9   r9      s'      # nr   c           	     2    [        U UUUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param roaming: See `roaming <platformdirs.api.PlatformDirsABC.roaming>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
:param use_site_for_root: See `use_site_for_root <platformdirs.api.PlatformDirsABC.use_site_for_root>`.

:returns: state directory tied to the user

r   )r&   user_state_dirr   s         r   r;   r;      r6   r   c                .    [        U UUUS9R                  $ )al  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: state directory shared by users

r    r!   r"   r$   )r&   site_state_dirr=   s       r   r>   r>      s$     #	
 nr   c           	     2    [        U UUUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
:param use_site_for_root: See `use_site_for_root <platformdirs.api.PlatformDirsABC.use_site_for_root>`.

:returns: log directory tied to the user

r3   )r&   user_log_dirr3   s         r   r@   r@     s*    $ #+ lr   c                0    [        U UUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: log directory shared by users

r8   )r&   site_log_dirr8   s        r   rB   rB   $  s'      # lr   c                 *    [        5       R                  $ )z.:returns: documents directory tied to the user)r&   user_documents_dir r   r   rD   rD   =      >,,,r   c                 *    [        5       R                  $ )z.:returns: downloads directory tied to the user)r&   user_downloads_dirrE   r   r   rH   rH   B  rF   r   c                 *    [        5       R                  $ )z-:returns: pictures directory tied to the user)r&   user_pictures_dirrE   r   r   rJ   rJ   G      >+++r   c                 *    [        5       R                  $ )z+:returns: videos directory tied to the user)r&   user_videos_dirrE   r   r   rM   rM   L      >)))r   c                 *    [        5       R                  $ )z*:returns: music directory tied to the user)r&   user_music_dirrE   r   r   rP   rP   Q  s    >(((r   c                 *    [        5       R                  $ )z,:returns: desktop directory tied to the user)r&   user_desktop_dirrE   r   r   rR   rR   V      >***r   c                 *    [        5       R                  $ )z(:returns: bin directory tied to the user)r&   user_bin_dirrE   r   r   rU   rU   [      >&&&r   c                 *    [        5       R                  $ )z':returns: bin directory shared by users)r&   site_bin_dirrE   r   r   rX   rX   `  rV   r   c                 *    [        5       R                  $ )z1:returns: applications directory tied to the user)r&   user_applications_dirrE   r   r   rZ   rZ   e  s    >///r   c                *    [        U US9R                  $ )z:param multipath: See `multipath <platformdirs.api.PlatformDirsABC.multipath>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: applications directory shared by users

r+   r$   )r&   site_applications_dirr\   s     r   r]   r]   j  s     # r   c           	     2    [        U UUUUUS9R                  $ )a!  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
:param use_site_for_root: See `use_site_for_root <platformdirs.api.PlatformDirsABC.use_site_for_root>`.

:returns: runtime directory tied to the user

r3   )r&   user_runtime_dirr3   s         r   r_   r_   z  +    $ #+ r   c                0    [        U UUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: runtime directory shared by users

r8   )r&   site_runtime_dirr8   s        r   rb   rb     s(      # r   c           	     2    [        U UUUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param roaming: See `roaming <platformdirs.api.PlatformDirsABC.roaming>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
:param use_site_for_root: See `use_site_for_root <platformdirs.api.PlatformDirsABC.use_site_for_root>`.

:returns: data path tied to the user

r   )r&   user_data_pathr   s         r   rd   rd     r6   r   c                0    [        U UUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param multipath: See `multipath <platformdirs.api.PlatformDirsABC.multipath>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: data path shared by users

r*   )r&   site_data_pathr*   s        r   rf   rf     s'      # nr   c           	     2    [        U UUUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param roaming: See `roaming <platformdirs.api.PlatformDirsABC.roaming>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
:param use_site_for_root: See `use_site_for_root <platformdirs.api.PlatformDirsABC.use_site_for_root>`.

:returns: config path tied to the user

r   )r&   user_config_pathr   s         r   rh   rh     r`   r   c                0    [        U UUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param multipath: See `multipath <platformdirs.api.PlatformDirsABC.multipath>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: config path shared by users

r*   )r&   site_config_pathr*   s        r   rj   rj      s(      # r   c                0    [        U UUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: cache path shared by users

r8   )r&   site_cache_pathr8   s        r   rl   rl     s'      # or   c           	     2    [        U UUUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
:param use_site_for_root: See `use_site_for_root <platformdirs.api.PlatformDirsABC.use_site_for_root>`.

:returns: cache path tied to the user

r3   )r&   user_cache_pathr3   s         r   rn   rn   2  r/   r   c           	     2    [        U UUUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param roaming: See `roaming <platformdirs.api.PlatformDirsABC.roaming>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
:param use_site_for_root: See `use_site_for_root <platformdirs.api.PlatformDirsABC.use_site_for_root>`.

:returns: state path tied to the user

r   )r&   user_state_pathr   s         r   rp   rp   N  r/   r   c                .    [        U UUUS9R                  $ )ag  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: state path shared by users

r=   )r&   site_state_pathr=   s       r   rr   rr   j  s$     #	
 or   c           	     2    [        U UUUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
:param use_site_for_root: See `use_site_for_root <platformdirs.api.PlatformDirsABC.use_site_for_root>`.

:returns: log path tied to the user

r3   )r&   user_log_pathr3   s         r   rt   rt     r(   r   c                0    [        U UUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: log path shared by users

r8   )r&   site_log_pathr8   s        r   rv   rv     s'      # mr   c                 *    [        5       R                  $ )z):returns: documents path tied to the user)r&   user_documents_pathrE   r   r   rx   rx         >---r   c                 *    [        5       R                  $ )z):returns: downloads path tied to the user)r&   user_downloads_pathrE   r   r   r{   r{     ry   r   c                 *    [        5       R                  $ )z(:returns: pictures path tied to the user)r&   user_pictures_pathrE   r   r   r}   r}     rF   r   c                 *    [        5       R                  $ )z&:returns: videos path tied to the user)r&   user_videos_pathrE   r   r   r   r     rS   r   c                 *    [        5       R                  $ )z%:returns: music path tied to the user)r&   user_music_pathrE   r   r   r   r     rN   r   c                 *    [        5       R                  $ )z':returns: desktop path tied to the user)r&   user_desktop_pathrE   r   r   r   r     rK   r   c                 *    [        5       R                  $ )z#:returns: bin path tied to the user)r&   user_bin_pathrE   r   r   r   r         >'''r   c                 *    [        5       R                  $ )z":returns: bin path shared by users)r&   site_bin_pathrE   r   r   r   r     r   r   c                 *    [        5       R                  $ )z,:returns: applications path tied to the user)r&   user_applications_pathrE   r   r   r   r     s    >000r   c                *    [        U US9R                  $ )z:param multipath: See `multipath <platformdirs.api.PlatformDirsABC.multipath>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: applications path shared by users

r\   )r&   site_applications_pathr\   s     r   r   r     s     # r   c           	     2    [        U UUUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
:param use_site_for_root: See `use_site_for_root <platformdirs.api.PlatformDirsABC.use_site_for_root>`.

:returns: runtime path tied to the user

r3   )r&   user_runtime_pathr3   s         r   r   r     s+    $ #+ r   c                0    [        U UUUUS9R                  $ )a  :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
:param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
:param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
:param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
:param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

:returns: runtime path shared by users

r8   )r&   site_runtime_pathr8   s        r   r   r     s(      # r   )1AppDirsr&   r   r   __version_info__r]   r   rX   r   r9   rl   r1   rj   r,   rf   rB   rv   rb   r   r>   rr   rZ   r   rU   r   r5   rn   r.   rh   r'   rd   rR   r   rD   rx   rH   r{   r@   rt   rP   r   rJ   r}   r_   r   r;   rp   rM   r   )returnztype[PlatformDirsABC])NNNFFF)r    
str | Noner!   str | Literal[False] | Noner"   r   r#   boolr$   r   r%   r   r   str)NNNFF)r    r   r!   r   r"   r   r+   r   r$   r   r   r   )NNNTFF)r    r   r!   r   r"   r   r4   r   r$   r   r%   r   r   r   )NNNTF)r    r   r!   r   r"   r   r4   r   r$   r   r   r   )NNNF)
r    r   r!   r   r"   r   r$   r   r   r   )r   r   )FF)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   r4   r   r$   r   r   r	   )r    r   r!   r   r"   r   r4   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	   )H__doc__
__future__r   r   systypingr   apir   r"   r   r   r   pathlibr	   r
   platformplatformdirs.windowsr   r   platformdirs.macosr   platformdirs.unixr   r   r&   r   r'   r,   r.   r1   r5   r9   r;   r>   r@   rB   rD   rH   rJ   rM   rP   rR   rU   rX   rZ   r]   r_   rb   rd   rf   rh   rj   rl   rn   rp   rr   rt   rv   rx   r{   r}   r   r   r   r   r   r   r   r   r   __all__rE   r   r   <module>r      s   # 	 
       :<<77\\X31 L*,L
 -1#*  	
   	: -1*  	
  	4 -1#*  	
   	: -1*  	
  	4 -1#*  	
   	: -1*  	
  	4 -1#*  	
   	: -1	*  	
 	. -1#*  	
   	: -1*  	
  	2-
-
,
*
)
+
'
'
0  	" -1#*  	
   	: -1*  	
  	4 -1#*  	
   
: -1*  	
  
4 -1#*  	
   
: -1*  	
  
4 -1*  	
  
4 -1#*  	
   
: -1#*  	
   
: -1	*  	
 
. -1#*  	
   
: -1*  	
  
2.
.
-
+
*
,
(
(
1  
" -1#*  	
   
: -1*  	
  
22r   