§
    ¸)ýf¶½  ã                   ó2  — d dl Z d dlZd dlZd dlZd dl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mZmZmZmZ d dlmZ d dlmZmZmZmZmZmZmZ d dlmZ g d¢ZdZd	Zd
Z eeeefZ!eee fZ"d„ Z#d„ Z$ G d„ de%¦  «        Z& G d„ de&¦  «        Z' G d„ de&¦  «        Z( e'¦   «         Z) e(¦   «         Z*d„ Z+ e,ed¦  «        r  ej-        ¦   «         e+¦  «        Z+ G d„ d¦  «        Z. G d„ d¦  «        Z/ G d„ de.¦  «        Z0 G d„ de.¦  «        Z1 G d„ de.¦  «        Z2 G d„ d e
¦  «        Z3 G d!„ d"e%¦  «        Z4ej5         6                    e4¦  «          G d#„ d$e4¦  «        Z7 G d%„ d&e4¦  «        Z8 G d'„ d(e4¦  «        Z9 G d)„ d*e9e7¦  «        Z: G d+„ d,e9e8¦  «        Z;dS )-é    N)ÚSequence)ÚENOENTÚENOTDIRÚEBADFÚELOOP)Ú
attrgetter)ÚS_ISDIRÚS_ISLNKÚS_ISREGÚS_ISSOCKÚS_ISBLKÚS_ISCHRÚS_ISFIFO)Úquote_from_bytes)ÚPurePathÚPurePosixPathÚPureWindowsPathÚPathÚ	PosixPathÚWindowsPathé   é{   i�  c                 ób   — t          | dd ¦  «        t          v pt          | dd ¦  «        t          v S )NÚerrnoÚwinerror)ÚgetattrÚ_IGNORED_ERRNOSÚ_IGNORED_WINERRORS)Ú	exceptions    úS/home/blender/git/blender-v430/install_release/4.3/python/lib/python3.11/pathlib.pyÚ_ignore_errorr!   &   s7   € Ý�I˜w¨Ñ-Ô-µÐ@ð GÝ�I˜z¨4Ñ0Ô0Õ4FÐFðHó    c                 ó   — d| v pd| v pd| v S )NÚ*ú?ú[© )Úpats    r    Ú_is_wildcard_patternr)   +   s    € ð �#ˆ:Ð1˜ ˜Ð1 s¨c zÐ1r"   c                   ó$   — e Zd ZdZd„ Zd„ Zd„ ZdS )Ú_FlavourzPA flavour implements a particular (platform-specific) set of path
    semantics.c                 ó(   — | j         j        | _        d S ©N)ÚsepÚjoin©Úselfs    r    Ú__init__z_Flavour.__init__5   s   € Ø”H”MˆŒ	ˆ	ˆ	r"   c                 óÆ  — g }| j         }| j        }dx}}t          |¦  «        }|D �]}|sŒ|r|                     ||¦  «        }|                      |¦  «        \  }}}	||	v rUt          |	                     |¦  «        ¦  «        D ]1}
|
r-|
dk    r'|                     t          j        |
¦  «        ¦  «         Œ2n/|	r-|	dk    r'|                     t          j        |	¦  «        ¦  «         |s|rC|s?|D ]<}|sŒ|r|                     ||¦  «        }|                      |¦  «        d         }|r nŒ= n�Œ|s|r|                     ||z   ¦  «         | 	                    ¦   «          |||fS )NÚ ú.r   )
r.   ÚaltsepÚreversedÚreplaceÚ	splitrootÚsplitÚappendÚsysÚinternÚreverse)r1   ÚpartsÚparsedr.   r6   ÚdrvÚrootÚitÚpartÚrelÚxs              r    Úparse_partsz_Flavour.parse_parts8   s¿  € ØˆØŒhˆØ”ˆØˆˆˆdÝ�e‰_Œ_ˆØð 	ñ 	ˆDØð ØØð 1Ø—|’| F¨CÑ0Ô0�Ø!Ÿ^š^¨DÑ1Ô1‰NˆC��sØ�cˆzˆzÝ! #§)¢)¨C¡.¤.Ñ1Ô1ð 5ð 5�AØð 5˜Q #šX˜XØŸš¥c¤j°¡m¤mÑ4Ô4Ð4øð5ð ð 3˜3 #š:˜:Ø—M’M¥#¤*¨S¡/¤/Ñ2Ô2Ð2Øð �dð Øð "ð !#ð "ð "˜Ø#ð %Ø$Ø!ð =Ø#'§<¢<°¸Ñ#<Ô#<˜DØ"Ÿnšn¨TÑ2Ô2°1Ô5˜Øð "Ø!˜Eð"à�ñð ð 	&�$ð 	&Ø�MŠM˜# ™*Ñ%Ô%Ð%Ø�ŠÑÔÐØ�D˜&Ð Ð r"   c                 óÜ   — |r|s|r||||z   g|dd…         z   fS nM|rC||k    s,|                       |¦  «        |                       |¦  «        k    r||||dd…         z   fS n||||z   fS |||fS )z‘
        Join the two paths represented by the respective
        (drive, root, parts) tuples.  Return a new (drive, root, parts) tuple.
        é   N)Úcasefold)r1   rA   rB   r?   Údrv2Úroot2Úparts2s          r    Újoin_parsed_partsz_Flavour.join_parsed_parts^   s¯   € ð
 ð 		-Øð >˜Cð >Ø˜E C¨%¡K =°6¸!¸"¸"´:Ñ#=Ð=Ð=øØð 	-Ø�sŠ{ˆ{˜dŸmšm¨DÑ1Ô1°T·]²]À3Ñ5GÔ5GÒGÐGà˜D %¨&°°°¬*Ñ"4Ð4Ð4ð Hð
 ˜˜e f™nÐ,Ð,Ø�U˜FÐ"Ð"r"   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r2   rG   rN   r'   r"   r    r+   r+   1   sL   € € € € € ðð ð"ð "ð "ð$!ð $!ð $!ðL#ð #ð #ð #ð #r"   r+   c                   ó¼   — e Zd ZdZdZdZeZej	        dk    Z
 ed¦  «        ZdZh d£d„ d	D ¦   «         z  d
„ d	D ¦   «         z  Zefd„Zd„ Zd„ Zd„ Zefd„Zd„ Zd„ ZdS )Ú_WindowsFlavourú\ú/TÚntÚ4abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZz\\?\>   úCONIN$úCONOUT$ÚAUXÚCONÚNULÚPRNc                 ó   — h | ]}d |z  ’ŒS )zCOM%sr'   ©Ú.0Úcs     r    ú	<setcomp>z_WindowsFlavour.<setcomp>€   ó   € Ð6Ð6Ð6˜ˆ�1‰Ð6Ð6Ð6r"   u   123456789Â¹Â²Â³c                 ó   — h | ]}d |z  ’ŒS )zLPT%sr'   r`   s     r    rc   z_WindowsFlavour.<setcomp>�   rd   r"   c                 ó„  — |dd…         }|dd…         }||k    r3||k    r-|                       |¦  «        \  }}|dd…         }|dd…         }nd}|dd…         }||k    r”||k    rŽ||k    rˆ|                     |d¦  «        }|dk    rl|                     ||dz   ¦  «        }||dz   k    rJ|dk    rt          |¦  «        }|r||d|…         z   |||dz   d …         fS |d |…         |||dz   d …         fS dx}	}
|dk    r|| j        v r|d d…         }	|dd …         }|}||k    r|}
|                     |¦  «        }||	z   |
|fS )Nr   rI   é   r4   é   éÿÿÿÿú:)Ú_split_extended_pathÚfindÚlenÚdrive_lettersÚlstrip)r1   rD   r.   ÚfirstÚsecondÚprefixÚthirdÚindexÚindex2rA   rB   s              r    r9   z_WindowsFlavour.splitroot“   s¥  € Ø�Q�q�S”	ˆØ�a˜�c”ˆØ�cŠMˆM˜e sšl˜lð  ×4Ò4°TÑ:Ô:‰LˆF�DØ˜˜1˜”IˆEØ˜!˜A˜#”YˆFˆFàˆFØ�Q�q�S”	ˆØ�cŠMˆM˜e sšl˜l¨u¸ª|¨|ð
 —I’I˜c 1Ñ%Ô%ˆEØ˜Š{ˆ{ØŸš 3¨°©	Ñ2Ô2�ð ˜U Q™YÒ&Ð&Ø ’|�|Ý!$ T¡¤˜Øð CØ%¨¨Q¨v¨X¬Ñ6¸¸TÀ&ÈÁ(À)À)¼_ÐLÐLà# G V Gœ}¨c°4¸¸q¹¸	¸	´?ÐBÐBØˆˆˆdØ�SŠ=ˆ=˜U dÔ&8Ð8Ð8Ø�r˜�r”(ˆCØ˜˜˜”8ˆDØˆEØ�CŠ<ˆ<ØˆDØ—;’;˜sÑ#Ô#ˆDØ˜‰|˜T 4Ð'Ð'r"   c                 ó*   — |                      ¦   «         S r-   ©Úlower©r1   Úss     r    rJ   z_WindowsFlavour.casefoldº   s   € Ø�wŠw‰yŒyÐr"   c                 ó   — d„ |D ¦   «         S )Nc                 ó6   — g | ]}|                      ¦   «         ‘ŒS r'   rw   )ra   Úps     r    ú
<listcomp>z2_WindowsFlavour.casefold_parts.<locals>.<listcomp>¾   s    € Ð)Ð)Ð)˜a�—’‘	”	Ð)Ð)Ð)r"   r'   ©r1   r?   s     r    Úcasefold_partsz_WindowsFlavour.casefold_parts½   s   € Ø)Ð) 5Ð)Ñ)Ô)Ð)r"   c                 ón   — t          j        t          j        |¦  «        t           j        ¦  «        j        S r-   )ÚreÚcompileÚfnmatchÚ	translateÚ
IGNORECASEÚ	fullmatch©r1   Úpatterns     r    Úcompile_patternz_WindowsFlavour.compile_patternÀ   s$   € ÝŒz�'Ô+¨GÑ4Ô4µb´mÑDÔDÔNÐNr"   c                 ó¾   — d}|                      |¦  «        rC|d d…         }|dd …         }|                      d¦  «        r||d d…         z  }d|dd …         z   }||fS )Nr4   é   zUNC\rh   rU   )Ú
startswith)r1   rz   Ú
ext_prefixrr   s       r    rk   z$_WindowsFlavour._split_extended_pathÃ   su   € ØˆØ�<Š<˜
Ñ#Ô#ð 	!Ø�r˜�r”UˆFØ�!�"�"”ˆAØ�|Š|˜GÑ$Ô$ð !Ø˜!˜B˜Q˜Bœ%‘�Ø˜1˜Q˜R˜Rœ5‘L�Ø�qˆyÐr"   c                 ó  — |sdS |d                               d¦  «        rdS |d                              d¦  «        d                              d¦  «        d                              d¦  «        }|                     ¦   «         | j        v S )NFr   z\\ri   r5   rj   ú )r�   Ú	partitionÚrstripÚupperÚreserved_names)r1   r?   Únames      r    Úis_reservedz_WindowsFlavour.is_reservedÍ   sƒ   € ð
 ð 	Ø�5Ø�Œ8×Ò˜vÑ&Ô&ð 	à�5Ø�RŒy×"Ò" 3Ñ'Ô'¨Ô*×4Ò4°SÑ9Ô9¸!Ô<×CÒCÀCÑHÔHˆØ�zŠz‰|Œ|˜tÔ2Ð2Ð2r"   c                 ój  — |j         }t          |¦  «        dk    rc|d         dk    rW|                     ¦   «         dd …                              d¦  «        }d|›dt	          |                     d¦  «        ¦  «        ›�S dt	          |                     ¦   «                              d¦  «        ¦  «        z   S )Nrg   rI   rj   rV   zfile:///zutf-8zfile:)Údriverm   Úas_posixro   Úurlquote_from_bytesÚencode)r1   Úpathr˜   Úrests       r    Úmake_uriz_WindowsFlavour.make_uriÚ   s£   € à”
ˆÝˆu‰:Œ:˜Š?ˆ?˜u Qœx¨3š˜à—=’=‘?”? 1 2 2Ô&×-Ò-¨cÑ2Ô2ˆDˆDà��Õ*¨4¯;ª;°wÑ+?Ô+?Ñ@Ô@Ð@ðBð Bð Õ0°·²±´×1GÒ1GÈÑ1PÔ1PÑQÔQÑQÐQr"   N)rO   rP   rQ   r.   r6   Úhas_drvÚntpathÚpathmodÚosr•   Úis_supportedÚsetrn   Úext_namespace_prefixr”   r9   rJ   r€   rŠ   rk   r–   rž   r'   r"   r    rT   rT   p   s  € € € € € ð €CØ€FØ€GØ€Gà”G˜t’O€Là�CÐNÑOÔO€MØ$Ðð 	:Ð9Ð9Ø6Ð6Ð5Ð6Ñ6Ô6ñ	7à6Ð6Ð5Ð6Ñ6Ô6ñ	7ð ð* #&ð %(ð %(ð %(ð %(ðNð ð ð*ð *ð *ðOð Oð Oð 2Fð ð ð ð ð3ð 3ð 3ð
Rð 
Rð 
Rð 
Rð 
Rr"   rT   c                   ó\   — e Zd ZdZdZdZeZej	        dk    Z
efd„Zd„ Zd„ Zd„ Zd	„ Zd
„ ZdS )Ú_PosixFlavourrV   r4   FrW   c                 ó²   — |rQ|d         |k    rE|                      |¦  «        }t          |¦  «        t          |¦  «        z
  dk    rd|dz  |fS d||fS dd|fS )Nr   rg   r4   )ro   rm   )r1   rD   r.   Ústripped_parts       r    r9   z_PosixFlavour.splitrootï   sq   € Øð 	 �D˜”G˜s’N�NØ ŸKšK¨Ñ,Ô,ˆMõ �4‰yŒy�3˜}Ñ-Ô-Ñ-°Ò2Ð2Ø˜3 ™7 MÐ1Ð1à˜3 Ð-Ð-à�r˜4�<Ðr"   c                 ó   — |S r-   r'   ry   s     r    rJ   z_PosixFlavour.casefoldþ   s   € Øˆr"   c                 ó   — |S r-   r'   r   s     r    r€   z_PosixFlavour.casefold_parts  s   € Øˆr"   c                 óX   — t          j        t          j        |¦  «        ¦  «        j        S r-   )r‚   rƒ   r„   r…   r‡   rˆ   s     r    rŠ   z_PosixFlavour.compile_pattern  s    € ÝŒz�'Ô+¨GÑ4Ô4Ñ5Ô5Ô?Ð?r"   c                 ó   — dS )NFr'   r   s     r    r–   z_PosixFlavour.is_reserved  s   € Øˆur"   c                 óD   — t          |¦  «        }dt          |¦  «        z   S )Nzfile://)Úbytesrš   )r1   rœ   Úbpaths      r    rž   z_PosixFlavour.make_uri
  s#   € õ �d‘”ˆØÕ.¨uÑ5Ô5Ñ5Ð5r"   N)rO   rP   rQ   r.   r6   rŸ   Ú	posixpathr¡   r¢   r•   r£   r9   rJ   r€   rŠ   r–   rž   r'   r"   r    r§   r§   ç   s˜   € € € € € Ø
€CØ€FØ€GØ€Gà”G˜t’O€Là"%ð  ð  ð  ð  ðð ð ðð ð ð@ð @ð @ðð ð ð6ð 6ð 6ð 6ð 6r"   r§   c                 óÞ   — | d         }| dd …         }|st          ¦   «         S |dk    rt          }n1d|v rt          d¦  «        ‚t          |¦  «        rt          }nt
          } ||||¦  «        S )Nr   rI   ú**z:Invalid pattern: '**' can only be an entire path component)Ú_TerminatingSelectorÚ_RecursiveWildcardSelectorÚ
ValueErrorr)   Ú_WildcardSelectorÚ_PreciseSelector)Úpattern_partsÚflavourr(   Úchild_partsÚclss        r    Ú_make_selectorr½     s†   € Ø
˜Ô
€CØ   Ô#€KØð &Ý#Ñ%Ô%Ð%Ø
ˆd‚{€{Ý(ˆˆØ	�ˆˆÝÐUÑVÔVÐVÝ	˜cÑ	"Ô	"ð ÝˆˆåˆØˆ3ˆs�K Ñ)Ô)Ð)r"   Ú	lru_cachec                   ó   — e Zd ZdZd„ Zd„ ZdS )Ú	_SelectorzYA selector matches a specific glob pattern part against the children
    of a given path.c                 óˆ   — || _         |rt          ||¦  «        | _        d| _        d S t	          ¦   «         | _        d| _        d S )NTF)r»   r½   Ú	successorÚdironlyr´   )r1   r»   rº   s      r    r2   z_Selector.__init__0  sF   € Ø&ˆÔØð 	!Ý+¨K¸ÑAÔAˆDŒNØˆDŒLˆLˆLå1Ñ3Ô3ˆDŒNØ ˆDŒLˆLˆLr"   c                 ó®   — t          |¦  «        }|j        }|j        }|j        } ||¦  «        st	          g ¦  «        S |                      ||||¦  «        S )zuIterate over all child paths of `parent_path` matched by this
        selector.  This can contain parent_path itself.)ÚtypeÚis_dirÚexistsÚ_scandirÚiterÚ_select_from)r1   Úparent_pathÚpath_clsrÆ   rÇ   Úscandirs         r    Úselect_fromz_Selector.select_from9  s^   € õ ˜Ñ$Ô$ˆØ”ˆØ”ˆØÔ#ˆØˆv�kÑ"Ô"ð 	Ý˜‘8”8ˆOØ× Ò  ¨f°f¸gÑFÔFÐFr"   N)rO   rP   rQ   rR   r2   rÎ   r'   r"   r    rÀ   rÀ   ,  sA   € € € € € ðð ð!ð !ð !ð	Gð 	Gð 	Gð 	Gð 	Gr"   rÀ   c                   ó   — e Zd Zd„ ZdS )r´   c              #   ó   K  — |V — d S r-   r'   )r1   rË   rÆ   rÇ   rÍ   s        r    rÊ   z!_TerminatingSelector._select_fromG  s   è è € ØÐÐÐÐÐr"   N)rO   rP   rQ   rÊ   r'   r"   r    r´   r´   E  s#   € € € € € ðð ð ð ð r"   r´   c                   ó   — e Zd Zd„ Zd„ ZdS )r¸   c                 óL   — || _         t                               | ||¦  «         d S r-   )r•   rÀ   r2   )r1   r•   r»   rº   s       r    r2   z_PreciseSelector.__init__M  s'   € ØˆŒ	Ý×Ò˜4 ¨gÑ6Ô6Ð6Ð6Ð6r"   c              #   óÖ   K  — 	 |                      | j        ¦  «        } | j        r|n||¦  «        r$| j                             ||||¦  «        D ]}|V — Œd S d S # t
          $ r Y d S w xY wr-   )Ú_make_child_relpathr•   rÃ   rÂ   rÊ   ÚPermissionError)r1   rË   rÆ   rÇ   rÍ   rœ   r}   s          r    rÊ   z_PreciseSelector._select_fromQ  s£   è è € ð	Ø×2Ò2°4´9Ñ=Ô=ˆDØ2˜$œ,Ð2��¨F°DÑ9Ô9ð Øœ×4Ò4°T¸6À6È7ÑSÔSð ð �AØ�G�G�G�Gðð ðð øåð 	ð 	ð 	ØˆFˆFð	øøøs   „AA Á
A(Á'A(N©rO   rP   rQ   r2   rÊ   r'   r"   r    r¸   r¸   K  s2   € € € € € ð7ð 7ð 7ðð ð ð ð r"   r¸   c                   ó   — e Zd Zd„ Zd„ ZdS )r·   c                 ór   — |                      |¦  «        | _        t                               | ||¦  «         d S r-   )rŠ   ÚmatchrÀ   r2   ©r1   r(   r»   rº   s       r    r2   z_WildcardSelector.__init__]  s5   € Ø×,Ò,¨SÑ1Ô1ˆŒ
Ý×Ò˜4 ¨gÑ6Ô6Ð6Ð6Ð6r"   c              #   óÐ  K  — 	  ||¦  «        5 }t          |¦  «        }d d d ¦  «         n# 1 swxY w Y   |D ]œ}| j        r>	 |                     ¦   «         sŒn'# t          $ r}t	          |¦  «        s‚ Y d }~Œ?d }~ww xY w|j        }	|                      |	¦  «        r9|                     |	¦  «        }
| j         	                    |
|||¦  «        D ]}|V — ŒŒ�d S # t          $ r Y d S w xY wr-   )ÚlistrÃ   rÆ   ÚOSErrorr!   r•   rÙ   rÔ   rÂ   rÊ   rÕ   )r1   rË   rÆ   rÇ   rÍ   Ú
scandir_itÚentriesÚentryÚer•   rœ   r}   s               r    rÊ   z_WildcardSelector._select_froma  s~  è è € ð	Ø�˜Ñ%Ô%ð +¨Ý˜zÑ*Ô*�ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +à ð  ð  �Ø”<ð 
!ð	!ð  %Ÿ|š|™~œ~ð %Ø$ð%øå"ð !ð !ð !Ý,¨QÑ/Ô/ð "Ø!Ø ˜˜˜˜øøøøð!øøøð ”z�Ø—:’:˜dÑ#Ô#ð  Ø&×:Ò:¸4Ñ@Ô@�DØ!œ^×8Ò8¸¸vÀvÈwÑWÔWð  ð  ˜Ø˜˜˜˜øð! ð  øõ" ð 	ð 	ð 	ØˆFˆFð	øøøsW   „C �+ŸC «/¯C ²/³C ÁAÁC Á
A<Á"A7Á2C Á7A<Á<AC Ã
C%Ã$C%NrÖ   r'   r"   r    r·   r·   [  s2   € € € € € ð7ð 7ð 7ðð ð ð ð r"   r·   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )rµ   c                 ó>   — t                                | ||¦  «         d S r-   )rÀ   r2   rÚ   s       r    r2   z#_RecursiveWildcardSelector.__init__|  s    € Ý×Ò˜4 ¨gÑ6Ô6Ð6Ð6Ð6r"   c              #   óš  K  — |V — 	  ||¦  «        5 }t          |¦  «        }d d d ¦  «         n# 1 swxY w Y   |D ]}}d}	 |                     d¬¦  «        }n'# t          $ r}t          |¦  «        s‚ Y d }~nd }~ww xY w|r8|                     |j        ¦  «        }	|                      |	||¦  «        D ]}
|
V — ŒŒ~d S # t          $ r Y d S w xY w)NF©Úfollow_symlinks)rÜ   rÆ   rÝ   r!   rÔ   r•   Ú_iterate_directoriesrÕ   )r1   rË   rÆ   rÍ   rÞ   rß   rà   Úentry_is_dirrá   rœ   r}   s              r    rç   z/_RecursiveWildcardSelector._iterate_directories  sy  è è € ØÐÐÐð	Ø�˜Ñ%Ô%ð +¨Ý˜zÑ*Ô*�ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +à ð 
 ð 
 �Ø$�ðØ#(§<¢<À <Ñ#FÔ#F�L�LøÝð ð ð Ý(¨Ñ+Ô+ð Øðð ð ð ð øøøøðøøøð  ð  Ø&×:Ò:¸5¼:ÑFÔF�DØ!×6Ò6°t¸VÀWÑMÔMð  ð  ˜Ø˜˜˜˜øð
 ð 
 øõ ð 	ð 	ð 	ØˆFˆFð	øøøsV   ˆB< “/£B< ¯3³B< ¶3·	B< ÁAÁB< Á
A<Á"A7Á2B< Á7A<Á<>B< Â<
C
Ã	C
c              #   óP  K  — 	 t          ¦   «         }	 | j        j        }|                      |||¦  «        D ]0} |||||¦  «        D ]}||vr|V — |                     |¦  «         Œ Œ1	 |                     ¦   «          d S # |                     ¦   «          w xY w# t          $ r Y d S w xY wr-   )r¤   rÂ   rÊ   rç   ÚaddÚclearrÕ   )	r1   rË   rÆ   rÇ   rÍ   ÚyieldedÚsuccessor_selectÚstarting_pointr}   s	            r    rÊ   z'_RecursiveWildcardSelector._select_from’  sÛ   è è € ð	Ý‘e”eˆGð Ø#'¤>Ô#>Ð Ø&*×&?Ò&?ÀÈVÐU\Ñ&]Ô&]ð +ð +�NØ-Ð-¨n¸fÀfÈgÑVÔVð +ð +˜Ø GÐ+Ð+Ø"#˜G˜G˜GØ#ŸKšK¨™NœN˜Nøð+ð+ð —’‘”���ø�—’‘”��øøøøÝð 	ð 	ð 	ØˆFˆFð	øøøs)   „B “AA> Á(B Á>BÂB Â
B%Â$B%N)rO   rP   rQ   r2   rç   rÊ   r'   r"   r    rµ   rµ   z  sA   € € € € € ð7ð 7ð 7ðð ð ð&ð ð ð ð r"   rµ   c                   ó.   — e Zd ZdZdZd„ Zd„ Zd„ Zd„ ZdS )Ú_PathParentszvThis object provides sequence-like access to the logical ancestors
    of a path.  Don't try to construct it yourself.)Ú_pathclsÚ_drvÚ_rootÚ_partsc                 óv   — t          |¦  «        | _        |j        | _        |j        | _        |j        | _        d S r-   )rÅ   rñ   rò   ró   rô   )r1   rœ   s     r    r2   z_PathParents.__init__«  s.   € å˜T™
œ
ˆŒØ”IˆŒ	Ø”ZˆŒ
Ø”kˆŒˆˆr"   c                 ót   — | j         s| j        rt          | j        ¦  «        dz
  S t          | j        ¦  «        S ©NrI   )rò   ró   rm   rô   r0   s    r    Ú__len__z_PathParents.__len__²  s:   € ØŒ9ð 	$˜œ
ð 	$Ý�t”{Ñ#Ô# aÑ'Ð'å�t”{Ñ#Ô#Ð#r"   c           
      ó¼  ‡ — t          |t          ¦  «        rBt          ˆ fd„t          |                     t          ‰ ¦  «        ¦  «        Ž D ¦   «         ¦  «        S |t          ‰ ¦  «        k    s|t          ‰ ¦  «         k     rt          |¦  «        ‚|dk     r|t          ‰ ¦  «        z  }‰ j                             ‰ j	        ‰ j
        ‰ j        d | dz
  …         ¦  «        S )Nc              3   ó(   •K  — | ]}‰|         V — Œd S r-   r'   )ra   Úir1   s     €r    ú	<genexpr>z+_PathParents.__getitem__.<locals>.<genexpr>º  s'   øè è € ÐIÐI Q˜˜aœÐIÐIÐIÐIÐIÐIr"   r   rI   )Ú
isinstanceÚsliceÚtupleÚrangeÚindicesrm   Ú
IndexErrorrñ   Ú_from_parsed_partsrò   ró   rô   )r1   Úidxs   ` r    Ú__getitem__z_PathParents.__getitem__¸  sÑ   ø€ Ý�c�5Ñ!Ô!ð 	JÝÐIÐIÐIÐI­%°·²½SÀ¹Y¼YÑ1GÔ1GÐ*HÐIÑIÔIÑIÔIÐIà•#�d‘)”)ÒÐ˜s¥c¨$¡i¤i ZÒ/Ð/Ý˜S‘/”/Ð!Ø�Š7ˆ7Ø•3�t‘9”9ÑˆCØŒ}×/Ò/°´	¸4¼:Ø04´¸I¸c¸TÀA¹X¸IÔ0FñHô Hð 	Hr"   c                 ó@   — d                      | j        j        ¦  «        S )Nz<{}.parents>)Úformatrñ   rO   r0   s    r    Ú__repr__z_PathParents.__repr__Ã  s   € Ø×$Ò$ T¤]Ô%;Ñ<Ô<Ð<r"   N)	rO   rP   rQ   rR   Ú	__slots__r2   rø   r  r  r'   r"   r    rð   rð   ¦  sb   € € € € € ð7ð 7à7€Ið"ð "ð "ð$ð $ð $ð	Hð 	Hð 	Hð=ð =ð =ð =ð =r"   rð   c                   ó(  — e Zd ZdZdZd„ Zd„ Zed„ ¦   «         Zed„ ¦   «         Z	ed„ ¦   «         Z
ed„ ¦   «         Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zed„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z e ed¦  «        d¬¦  «        Z e ed¦  «        d¬¦  «        Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Z ed„ ¦   «         Z!ed „ ¦   «         Z"d!„ Z#d"„ Z$d#„ Z%d$„ Z&d%„ Z'ed&„ ¦   «         Z(d'„ Z)d(„ Z*d)„ Z+ed*„ ¦   «         Z,ed+„ ¦   «         Z-d,„ Z.d-„ Z/d.„ Z0d/S )0r   a|  Base class for manipulating paths without I/O.

    PurePath represents a filesystem path and offers operations which
    don't imply any actual filesystem I/O.  Depending on your system,
    instantiating a PurePath will return either a PurePosixPath or a
    PureWindowsPath object.  You can also instantiate either of these classes
    directly, regardless of your system.
    )rò   ró   rô   Ú_strÚ_hashÚ_ppartsÚ_cached_cpartsc                 óz   — | t           u rt          j        dk    rt          nt          } |                      |¦  «        S )z÷Construct a PurePath from one or several strings and or existing
        PurePath objects.  The strings and path objects are combined so as
        to yield a canonicalized path, which is incorporated into the
        new PurePath object.
        rW   )r   r¢   r•   r   r   Ú_from_parts)r¼   Úargss     r    Ú__new__zPurePath.__new__Õ  s2   € ð •(ˆ?ˆ?Ý%'¤W°¢_ _•/�/½-ˆCØ�Š˜tÑ$Ô$Ð$r"   c                 ó8   — | j         t          | j        ¦  «        fS r-   )Ú	__class__rÿ   rô   r0   s    r    Ú
__reduce__zPurePath.__reduce__ß  s   € ð ”¥ d¤kÑ 2Ô 2Ð3Ð3r"   c                 óX  — g }|D ]Œ}t          |t          ¦  «        r||j        z  }Œ"t          j        |¦  «        }t          |t
          ¦  «        r#|                     t          |¦  «        ¦  «         Œnt          dt          |¦  «        z  ¦  «        ‚| j	         
                    |¦  «        S )NzNargument should be a str object or an os.PathLike object returning str, not %r)rý   r   rô   r¢   ÚfspathÚstrr;   Ú	TypeErrorrÅ   Ú_flavourrG   )r¼   r  r?   Úas       r    Ú_parse_argszPurePath._parse_argsä  s¯   € ð ˆØð 	#ð 	#ˆAÝ˜!�XÑ&Ô&ð #Ø˜œÑ!��å”I˜a‘L”L�Ý˜a¥Ñ%Ô%ð #à—L’L¥ Q¡¤Ñ(Ô(Ð(Ð(å#ð7å˜q™'œ'ñ"ñ#ô #ð #ð Œ|×'Ò'¨Ñ.Ô.Ð.r"   c                 ó–   — t                                | ¦  «        }|                     |¦  «        \  }}}||_        ||_        ||_        |S r-   )Úobjectr  r  rò   ró   rô   )r¼   r  r1   rA   rB   r?   s         r    r  zPurePath._from_partsø  sI   € õ �~Š~˜cÑ"Ô"ˆØ×+Ò+¨DÑ1Ô1ÑˆˆT�5ØˆŒ	ØˆŒ
ØˆŒØˆr"   c                 ód   — t                                | ¦  «        }||_        ||_        ||_        |S r-   )r  r  rò   ró   rô   )r¼   rA   rB   r?   r1   s        r    r  zPurePath._from_parsed_parts  s-   € å�~Š~˜cÑ"Ô"ˆØˆŒ	ØˆŒ
ØˆŒØˆr"   c                 óŽ   — |s|r(||z   | j                              |dd …         ¦  «        z   S | j                              |¦  «        S r÷   )r  r/   )r¼   rA   rB   r?   s       r    Ú_format_parsed_partszPurePath._format_parsed_parts  sN   € àð 	,�$ð 	,Ø˜‘: ¤× 1Ò 1°%¸¸¸´)Ñ <Ô <Ñ<Ð<à”<×$Ò$ UÑ+Ô+Ð+r"   c                 óÆ   — |                       |¦  «        \  }}}| j                             | j        | j        | j        |||¦  «        \  }}}|                      |||¦  «        S r-   )r  r  rN   rò   ró   rô   r  )r1   r  rA   rB   r?   s        r    Ú_make_childzPurePath._make_child  sg   € Ø×+Ò+¨DÑ1Ô1ÑˆˆT�5Øœ=×:Ò:ØŒI�t”z 4¤;°°T¸5ñBô BÑˆˆT�5à×&Ò& s¨D°%Ñ8Ô8Ð8r"   c                 óš   — 	 | j         S # t          $ r7 |                      | j        | j        | j        ¦  «        pd| _         | j         cY S w xY w)z[Return the string representation of the path, suitable for
        passing to system calls.r5   )r  ÚAttributeErrorr!  rò   ró   rô   r0   s    r    Ú__str__zPurePath.__str__  sh   € ð	Ø”9ÐøÝð 	ð 	ð 	Ø×1Ò1°$´)¸T¼ZØ26´+ñ?ô ?ð FØBEð ŒIà”9ÐÐÐð	øøøs   ‚	 ‰>A
Á	A
c                 ó    — t          | ¦  «        S r-   )r  r0   s    r    Ú
__fspath__zPurePath.__fspath__"  s   € Ý�4‰yŒyÐr"   c                 ó`   — | j         }t          | ¦  «                             |j        d¦  «        S )zNReturn the string representation of the path with forward (/)
        slashes.rV   )r  r  r8   r.   ©r1   Úfs     r    r™   zPurePath.as_posix%  s)   € ð ŒMˆÝ�4‰yŒy× Ò  ¤¨Ñ,Ô,Ð,r"   c                 ó*   — t          j        | ¦  «        S )zaReturn the bytes representation of the path.  This is only
        recommended to use under Unix.)r¢   Úfsencoder0   s    r    Ú	__bytes__zPurePath.__bytes__+  s   € õ Œ{˜4Ñ Ô Ð r"   c                 óf   — d                      | j        j        |                      ¦   «         ¦  «        S )Nz{}({!r}))r  r  rO   r™   r0   s    r    r  zPurePath.__repr__0  s%   € Ø× Ò  ¤Ô!8¸$¿-º-¹/¼/ÑJÔJÐJr"   c                 ó|   — |                       ¦   «         st          d¦  «        ‚| j                             | ¦  «        S )z Return the path as a 'file' URI.z.relative path can't be expressed as a file URI)Úis_absoluter¶   r  rž   r0   s    r    Úas_urizPurePath.as_uri3  s<   € à×ÒÑ!Ô!ð 	OÝÐMÑNÔNÐNØŒ}×%Ò% dÑ+Ô+Ð+r"   c                 óˆ   — 	 | j         S # t          $ r. | j                             | j        ¦  «        | _         | j         cY S w xY wr-   )r  r%  r  r€   rô   r0   s    r    Ú_cpartszPurePath._cparts9  sT   € ð	'ØÔ&Ð&øÝð 	'ð 	'ð 	'Ø"&¤-×">Ò">¸t¼{Ñ"KÔ"KˆDÔØÔ&Ð&Ð&Ð&ð	'øøøs   ‚	 ‰5AÁ Ac                 óv   — t          |t          ¦  «        st          S | j        |j        k    o| j        |j        u S r-   )rý   r   ÚNotImplementedr4  r  ©r1   Úothers     r    Ú__eq__zPurePath.__eq__B  s7   € Ý˜%¥Ñ*Ô*ð 	"Ý!Ð!ØŒ|˜uœ}Ò,ÐP°´À%Ä.Ð1PÐPr"   c                 óŒ   — 	 | j         S # t          $ r0 t          t          | j        ¦  «        ¦  «        | _         | j         cY S w xY wr-   )r  r%  Úhashrÿ   r4  r0   s    r    Ú__hash__zPurePath.__hash__G  sQ   € ð	Ø”:ÐøÝð 	ð 	ð 	Ý�e D¤LÑ1Ô1Ñ2Ô2ˆDŒJØ”:ÐÐÐð	øøøs   ‚	 ‰7AÁAc                 óv   — t          |t          ¦  «        r| j        |j        urt          S | j        |j        k     S r-   ©rý   r   r  r6  r4  r7  s     r    Ú__lt__zPurePath.__lt__N  ó7   € Ý˜%¥Ñ*Ô*ð 	"¨d¬mÀ5Ä>Ð.QÐ.QÝ!Ð!ØŒ|˜eœmÒ+Ð+r"   c                 óv   — t          |t          ¦  «        r| j        |j        urt          S | j        |j        k    S r-   r>  r7  s     r    Ú__le__zPurePath.__le__S  ó7   € Ý˜%¥Ñ*Ô*ð 	"¨d¬mÀ5Ä>Ð.QÐ.QÝ!Ð!ØŒ|˜uœ}Ò,Ð,r"   c                 óv   — t          |t          ¦  «        r| j        |j        urt          S | j        |j        k    S r-   r>  r7  s     r    Ú__gt__zPurePath.__gt__X  r@  r"   c                 óv   — t          |t          ¦  «        r| j        |j        urt          S | j        |j        k    S r-   r>  r7  s     r    Ú__ge__zPurePath.__ge__]  rC  r"   rò   z.The drive prefix (letter or UNC path), if any.)Údocró   zThe root of the path, if any.c                 ó$   — | j         | j        z   }|S )z/The concatenation of the drive and root, or ''.)rò   ró   )r1   Úanchors     r    rJ  zPurePath.anchorh  s   € ð ”˜TœZÑ'ˆØˆr"   c                 ój   — | j         }t          |¦  «        | j        s| j        rdndk    rdS |d         S )z!The final path component, if any.rI   r   r4   ri   )rô   rm   rò   ró   r   s     r    r•   zPurePath.namen  s=   € ð ”ˆÝˆu‰:Œ: ¤	Ð?¨T¬ZÐ?˜!˜!¸aÒ@Ð@Ø�2Ø�RŒyÐr"   c                 ó’   — | j         }|                     d¦  «        }d|cxk     rt          |¦  «        dz
  k     rn n
||d…         S dS )z{
        The final component's last suffix, if any.

        This includes the leading period. For example: '.txt'
        r5   r   rI   Nr4   ©r•   Úrfindrm   ©r1   r•   rû   s      r    ÚsuffixzPurePath.suffixv  sX   € ð ŒyˆØ�JŠJ�s‰OŒOˆØˆqÐ Ð Ò Ð •3�t‘9”9˜q‘=Ò Ð Ð Ð Ð Ø˜˜˜”8ˆOà�2r"   c                 ó¶   — | j         }|                     d¦  «        rg S |                     d¦  «        }d„ |                     d¦  «        dd…         D ¦   «         S )zŒ
        A list of the final component's suffixes, if any.

        These include the leading periods. For example: ['.tar', '.gz']
        r5   c                 ó   — g | ]}d |z   ‘ŒS )r5   r'   )ra   rP  s     r    r~   z%PurePath.suffixes.<locals>.<listcomp>�  s   € Ð?Ð?Ð? ��f‘Ð?Ð?Ð?r"   rI   N)r•   Úendswithro   r:   ©r1   r•   s     r    ÚsuffixeszPurePath.suffixes„  s\   € ð ŒyˆØ�=Š=˜ÑÔð 	ØˆIØ�{Š{˜3ÑÔˆØ?Ð?¨4¯:ª:°c©?¬?¸1¸2¸2Ô+>Ð?Ñ?Ô?Ð?r"   c                 ó’   — | j         }|                     d¦  «        }d|cxk     rt          |¦  «        dz
  k     rn n
|d|…         S |S )z0The final path component, minus its last suffix.r5   r   rI   NrM  rO  s      r    ÚstemzPurePath.stem‘  sX   € ð ŒyˆØ�JŠJ�s‰OŒOˆØˆqÐ Ð Ò Ð •3�t‘9”9˜q‘=Ò Ð Ð Ð Ð Ø˜˜˜”8ˆOàˆKr"   c                 ól  — | j         st          | ›d�¦  «        ‚| j                             |f¦  «        \  }}}|r7|d         | j        j        | j        j        fv s|s|st          |¦  «        dk    rt          d|z  ¦  «        ‚|                      | j        | j	        | j
        dd…         |gz   ¦  «        S )z-Return a new path with the file name changed.ú has an empty nameri   rI   zInvalid name %rN)r•   r¶   r  rG   r.   r6   rm   r  rò   ró   rô   )r1   r•   rA   rB   r?   s        r    Ú	with_namezPurePath.with_name›  sÑ   € àŒyð 	?Ý°t°t°tÐ=Ñ>Ô>Ð>Øœ=×4Ò4°d°WÑ=Ô=ÑˆˆT�5Øð 	9˜˜Rœ T¤]Ô%6¸¼Ô8LÐ$MÐMÐMØð NØð NÝ! %™jœj¨Ašo˜oÝÐ.°$Ñ7Ñ8Ô8Ð8Ø×&Ò& t¤y°$´*Ø'+¤{°3°B°3Ô'7¸4¸&Ñ'@ñBô Bð 	Br"   c                 ó<   — |                       || j        z   ¦  «        S )z(Return a new path with the stem changed.)rZ  rP  )r1   rW  s     r    Ú	with_stemzPurePath.with_stem¦  s   € à�~Š~˜d T¤[Ñ0Ñ1Ô1Ð1r"   c                 ó²  — | j         }|j        |v s|j        r|j        |v rt          d|›�¦  «        ‚|r|                     d¦  «        r|dk    rt          d|z  ¦  «        ‚| j        }|st          | ›d�¦  «        ‚| j        }|s||z   }n|dt          |¦  «         …         |z   }|                      | j	        | j
        | j        dd…         |gz   ¦  «        S )zÀReturn a new path with the file suffix changed.  If the path
        has no suffix, add given suffix.  If the given suffix is an empty
        string, remove the suffix from the path.
        zInvalid suffix r5   zInvalid suffix %rrY  Nri   )r  r.   r6   r¶   r�   r•   rP  rm   r  rò   ró   rô   )r1   rP  r+  r•   Ú
old_suffixs        r    Úwith_suffixzPurePath.with_suffixª  s
  € ð
 ŒMˆØŒ5�Fˆ?ˆ?˜aœhˆ?¨1¬8°vÐ+=Ð+=Ý�*°F°FÐ<Ñ=Ô=Ð=Øð 	=˜&×+Ò+¨CÑ0Ô0ð 	=°F¸c²M°MÝÐ0°FÑ;Ñ<Ô<Ð<ØŒyˆØð 	?Ý°t°t°tÐ=Ñ>Ô>Ð>Ø”[ˆ
Øð 	4Ø˜&‘=ˆDˆDàÐ)�#˜j™/œ/Ð)Ð)Ô*¨VÑ3ˆDØ×&Ò& t¤y°$´*Ø'+¤{°3°B°3Ô'7¸4¸&Ñ'@ñBô Bð 	Br"   c                 óR  — |st          d¦  «        ‚| j        }| j        }| j        }|r||g|dd…         z   }n|}|                      |¦  «        \  }}}|r||g|dd…         z   }	n|}	t          |	¦  «        }
| j        j        }|
dk    r|s|run  ||d|
…         ¦  «         ||	¦  «        k    rT|                      |||¦  «        }t          d 
                    t          | ¦  «        t          |¦  «        ¦  «        ¦  «        ‚|                      d|
dk    r|nd||
d…         ¦  «        S )zÌReturn the relative path to another path identified by the passed
        arguments.  If the operation is not possible (because this is not
        a subpath of the other path), raise ValueError.
        zneed at least one argumentrI   Nr   zU{!r} is not in the subpath of {!r} OR one path is relative and the other is absolute.r4   )r  rô   rò   ró   r  rm   r  r€   r!  r¶   r  r  r  )r1   r8  r?   rA   rB   Ú	abs_partsÚto_drvÚto_rootÚto_partsÚto_abs_partsÚnÚcfÚ	formatteds                r    Úrelative_tozPurePath.relative_to¿  sf  € ð ð 	:ÝÐ8Ñ9Ô9Ð9Ø”ˆØŒiˆØŒzˆØð 	Ø˜d˜ e¨A¨B¨B¤iÑ/ˆIˆIàˆIØ$(×$4Ò$4°UÑ$;Ô$;Ñ!ˆ�˜Øð 	$Ø" GÐ,¨x¸¸¸¬|Ñ;ˆLˆLà#ˆLÝ�ÑÔˆØŒ]Ô)ˆØ šF˜FˆD˜F�C˜Fø¨¨¨9°R°a°R¬=Ñ(9Ô(9¸R¸RÀÑ=MÔ=MÒ(MÐ(MØ×1Ò1°&¸'À8ÑLÔLˆIÝð Jç$šf¥S¨¡Y¤Yµ°I±´Ñ?Ô?ñAô Að Að ×&Ò& r°1¸²6°6¨4¨4¸rØ'0°°°¤}ñ6ô 6ð 	6r"   c                 ó>   — 	  | j         |Ž  dS # t          $ r Y dS w xY w)zFReturn True if the path is relative to another path or False.
        TF)ri  r¶   r7  s     r    Úis_relative_tozPurePath.is_relative_toà  s>   € ð	ØˆDÔ˜eÐ$Ð$Ø�4øÝð 	ð 	ð 	Ø�5�5ð	øøøs   ‚
 Ž
›c                 ór   — 	 | j         S # t          $ r# t          | j        ¦  «        | _         | j         cY S w xY w)zZAn object providing sequence-like access to the
        components in the filesystem path.)r  r%  rÿ   rô   r0   s    r    r?   zPurePath.partsé  sI   € ð	 Ø”<ÐøÝð 	 ð 	 ð 	 Ý  ¤Ñ-Ô-ˆDŒLØ”<ÐÐÐð	 øøøs   ‚	 ‰*6µ6c                 ó,   — |                       |¦  «        S )zîCombine this path with one or several arguments, and return a
        new path representing either a subpath (if all arguments are relative
        paths) or a totally different path (if one of the arguments is
        anchored).
        )r#  )r1   r  s     r    ÚjoinpathzPurePath.joinpathõ  s   € ð ×Ò Ñ%Ô%Ð%r"   c                 ó^   — 	 |                       |f¦  «        S # t          $ r
 t          cY S w xY wr-   )r#  r  r6  ©r1   Úkeys     r    Ú__truediv__zPurePath.__truediv__ý  sD   € ð	"Ø×#Ò# S FÑ+Ô+Ð+øÝð 	"ð 	"ð 	"Ý!Ð!Ð!Ð!ð	"øøøs   ‚ ˜,«,c                 ón   — 	 |                       |g| j        z   ¦  «        S # t          $ r
 t          cY S w xY wr-   )r  rô   r  r6  rp  s     r    Ú__rtruediv__zPurePath.__rtruediv__  sK   € ð	"Ø×#Ò# S E¨D¬KÑ$7Ñ8Ô8Ð8øÝð 	"ð 	"ð 	"Ý!Ð!Ð!Ð!ð	"øøøs   ‚   4³4c                 óœ   — | j         }| j        }| j        }t          |¦  «        dk    r|s|r| S |                      |||dd…         ¦  «        S )zThe logical parent of the path.rI   Nri   )rò   ró   rô   rm   r  )r1   rA   rB   r?   s       r    ÚparentzPurePath.parent	  sU   € ð ŒiˆØŒzˆØ”ˆÝˆu‰:Œ:˜Š?ˆ? ˆ? tˆ?ØˆKØ×&Ò& s¨D°%¸¸¸´*Ñ=Ô=Ð=r"   c                 ó    — t          | ¦  «        S )z*A sequence of this path's logical parents.)rð   r0   s    r    ÚparentszPurePath.parents  s   € õ ˜DÑ!Ô!Ð!r"   c                 óV   — | j         sdS | j        j         pt          | j        ¦  «        S )zSTrue if the path is absolute (has both a root and, if applicable,
        a drive).F)ró   r  rŸ   Úboolrò   r0   s    r    r1  zPurePath.is_absolute  s.   € ð Œzð 	Ø�5Ø”=Ô(Ð(Ð;­D°´©O¬OÐ;r"   c                 ó@   — | j                              | j        ¦  «        S )zaReturn True if the path contains one of the special names reserved
        by the system, if any.)r  r–   rô   r0   s    r    r–   zPurePath.is_reserved  s   € ð Œ}×(Ò(¨¬Ñ5Ô5Ð5r"   c                 ó8  — | j         j        } ||¦  «        }| j                              |f¦  «        \  }}}|st          d¦  «        ‚|r| || j        ¦  «        k    rdS |r| || j        ¦  «        k    rdS | j        }|s|r-t          |¦  «        t          |¦  «        k    rdS |dd…         }n"t          |¦  «        t          |¦  «        k    rdS t          t          |¦  «        t          |¦  «        ¦  «        D ]\  }}t          j        ||¦  «        s dS ŒdS )zE
        Return True if this path matches the given pattern.
        zempty patternFrI   NT)r  rJ   rG   r¶   rò   ró   r4  rm   Úzipr7   r„   Úfnmatchcase)	r1   Úpath_patternrg  rA   rB   Ú	pat_partsr?   rD   r(   s	            r    rÙ   zPurePath.match$  sA  € ð Œ]Ô#ˆØ�r˜,Ñ'Ô'ˆØ#œ}×8Ò8¸,¸ÑIÔIÑˆˆT�9Øð 	.Ý˜_Ñ-Ô-Ð-Øð 	�3˜"˜"˜TœY™-œ-Ò'Ð'Ø�5Øð 	�D˜B˜B˜tœz™NœNÒ*Ð*Ø�5Ø”ˆØð 	�$ð 	Ý�9‰~Œ~¥ U¡¤Ò+Ð+Ø�uØ! ! " "œˆIˆIÝ�‰^Œ^�c %™jœjÒ(Ð(Ø�5Ý�X e™_œ_­h°yÑ.AÔ.AÑBÔBð 	ð 	‰IˆD�#ÝÔ& t¨SÑ1Ô1ð Ø�u�uðàˆtr"   N)1rO   rP   rQ   rR   r	  r  r  Úclassmethodr  r  r  r!  r#  r&  r(  r™   r.  r  r2  Úpropertyr4  r9  r<  r?  rB  rE  rG  r   r˜   rB   rJ  r•   rP  rU  rW  rZ  r\  r_  ri  rk  r?   rn  rr  rt  rv  rx  r1  r–   rÙ   r'   r"   r    r   r   Ç  sk  € € € € € ðð ð€Ið
%ð %ð %ð4ð 4ð 4ð
 ð/ð /ñ „[ð/ð& ðð ñ „[ðð ðð ñ „[ðð ð,ð ,ñ „[ð,ð9ð 9ð 9ðð ð ðð ð ð-ð -ð -ð!ð !ð !ð
Kð Kð Kð,ð ,ð ,ð ð'ð 'ñ „Xð'ðQð Qð Qð
ð ð ð,ð ,ð ,ð
-ð -ð -ð
,ð ,ð ,ð
-ð -ð -ð
 ˆH�Z�Z Ñ'Ô'ØMðOñ Oô O€Eð ˆ8�J�J˜wÑ'Ô'Ø;ð=ñ =ô =€Dð ðð ñ „Xðð
 ðð ñ „Xðð ðð ñ „Xðð ð
@ð 
@ñ „Xð
@ð ðð ñ „Xðð	Bð 	Bð 	Bð2ð 2ð 2ðBð Bð Bð*6ð 6ð 6ðBð ð ð ð	 ð 	 ñ „Xð	 ð&ð &ð &ð"ð "ð "ð"ð "ð "ð ð>ð >ñ „Xð>ð ð"ð "ñ „Xð"ð<ð <ð <ð6ð 6ð 6ð
ð ð ð ð r"   r   c                   ó   — e Zd ZdZeZdZdS )r   z¼PurePath subclass for non-Windows systems.

    On a POSIX system, instantiating a PurePath should return this object.
    However, you can also instantiate it directly on any system.
    r'   N)rO   rP   rQ   rR   Ú_posix_flavourr  r	  r'   r"   r    r   r   B  s$   € € € € € ðð ð
 €HØ€I€I€Ir"   r   c                   ó   — e Zd ZdZeZdZdS )r   zºPurePath subclass for Windows systems.

    On a Windows system, instantiating a PurePath should return this object.
    However, you can also instantiate it directly on any system.
    r'   N)rO   rP   rQ   rR   Ú_windows_flavourr  r	  r'   r"   r    r   r   L  s$   € € € € € ðð ð
  €HØ€I€I€Ir"   r   c                   ó^  — e Zd ZdZdZd„ Zd„ Zd„ Zd„ Ze	d„ ¦   «         Z
e	d„ ¦   «         Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd7d„Zddœd„Zd„ Zd„ Z	 	 d8d„Zd„ Zd9d„Zd„ Zd:d„Zd„ Zd;d „Zd<d"„Zddœd#„Zd$„ Zd7d%„Z d&„ Z!d'„ Z"d(„ Z#d)„ Z$d7d*„Z%d+„ Z&d,„ Z'd-„ Z(d.„ Z)d/„ Z*d0„ Z+d1„ Z,d2„ Z-d3„ Z.d4„ Z/d5„ Z0d6„ Z1dS )=r   a¡  PurePath subclass that can make system calls.

    Path represents a filesystem path but unlike PurePath, also offers
    methods to do system calls on path objects. Depending on your system,
    instantiating a Path will return either a PosixPath or a WindowsPath
    object. You can also instantiate a PosixPath or WindowsPath directly,
    but cannot instantiate a WindowsPath on a POSIX system or vice versa.
    r'   c                 óÆ   — | t           u rt          j        dk    rt          nt          } |                      |¦  «        }|j        j        st          d| j	        ›d�¦  «        ‚|S )NrW   zcannot instantiate z on your system)
r   r¢   r•   r   r   r  r  r£   ÚNotImplementedErrorrO   )r¼   r  Úkwargsr1   s       r    r  zPath.__new__d  sd   € Ø•$ˆ;ˆ;Ý!#¤¨D¢ •+�+µiˆCØ�Š˜tÑ$Ô$ˆØŒ}Ô)ð 	9Ý%Ð%Ø),¬¨¨ð'8ñ 9ô 9ð 9àˆr"   c                 óZ   — | j         |gz   }|                      | j        | j        |¦  «        S r-   )rô   r  rò   ró   )r1   rD   r?   s      r    rÔ   zPath._make_child_relpathm  s.   € ð ”˜t˜fÑ$ˆØ×&Ò& t¤y°$´*¸eÑDÔDÐDr"   c                 ó>   — t          j        dt          d¬¦  «         | S )Nz}pathlib.Path.__enter__() is deprecated and scheduled for removal in Python 3.13; Path objects as a context manager is a no-oprg   ©Ú
stacklevel)ÚwarningsÚwarnÚDeprecationWarningr0   s    r    Ú	__enter__zPath.__enter__s  s0   € õ 	Œð +õ )°Qð	8ñ 	8ô 	8ð 	8ð ˆr"   c                 ó   — d S r-   r'   )r1   ÚtÚvÚtbs       r    Ú__exit__zPath.__exit__�  s   € Øˆr"   c                 ó:   —  | t          j        ¦   «         ¦  «        S )zjReturn a new path pointing to the current working directory
        (as returned by os.getcwd()).
        )r¢   Úgetcwd©r¼   s    r    ÚcwdzPath.cwd†  s   € ð
 ˆs•2”9‘;”;ÑÔÐr"   c                 ó<   —  | d¦  «                              ¦   «         S )zrReturn a new path pointing to the user's home directory (as
        returned by os.path.expanduser('~')).
        ú~)Ú
expanduserrš  s    r    Úhomez	Path.home�  s   € ð
 ˆs�3‰xŒx×"Ò"Ñ$Ô$Ð$r"   c                 ó  — |                       ¦   «         }	 |                      ¦   «         }n7# t          $ r* |                      |¦  «                              ¦   «         }Y nw xY wt          j                             ||¦  «        S )zoReturn whether other_path is the same or not as this file
        (as returned by os.path.samefile()).
        )Ústatr%  r  r¢   rœ   Úsamestat)r1   Ú
other_pathÚstÚother_sts       r    ÚsamefilezPath.samefile”  s{   € ð �YŠY‰[Œ[ˆð	9Ø!—’Ñ(Ô(ˆHˆHøÝð 	9ð 	9ð 	9Ø—~’~ jÑ1Ô1×6Ò6Ñ8Ô8ˆHˆHˆHð	9øøøåŒw×Ò  HÑ-Ô-Ð-s   –+ «1AÁAc              #   óf   K  — t          j        | ¦  «        D ]}|                      |¦  «        V — ŒdS )zyIterate over the files in this directory.  Does not yield any
        result for the special paths '.' and '..'.
        N)r¢   ÚlistdirrÔ   rT  s     r    ÚiterdirzPath.iterdirŸ  sH   è è € õ ”J˜tÑ$Ô$ð 	1ð 	1ˆDØ×*Ò*¨4Ñ0Ô0Ð0Ð0Ð0Ð0ð	1ð 	1r"   c                 ó*   — t          j        | ¦  «        S r-   )r¢   rÍ   r0   s    r    rÈ   zPath._scandir¦  s   € õ Œz˜$ÑÔÐr"   c              #   óÈ  K  — t          j        d| |¦  «         |s"t          d                     |¦  «        ¦  «        ‚| j                             |f¦  «        \  }}}|s|rt          d¦  «        ‚|d         | j        j        | j        j        fv r| 	                    d¦  «         t          t          |¦  «        | j        ¦  «        }|                     | ¦  «        D ]}|V — ŒdS )z‘Iterate over this subtree and yield all existing files (of any
        kind, including directories) matching the given relative pattern.
        zpathlib.Path.globzUnacceptable pattern: {!r}ú%Non-relative patterns are unsupportedri   r4   N)r<   Úauditr¶   r  r  rG   r‰  r.   r6   r;   r½   rÿ   rÎ   ©r1   r‰   rA   rB   r¹   Úselectorr}   s          r    Úglobz	Path.glob¬  sþ   è è € õ 	Œ	Ð% t¨WÑ5Ô5Ð5Øð 	KÝÐ9×@Ò@ÀÑIÔIÑJÔJÐJØ#'¤=×#<Ò#<¸g¸ZÑ#HÔ#HÑ ˆˆT�=Øð 	O�$ð 	OÝ%Ð&MÑNÔNÐNØ�2Œ;˜4œ=Ô,¨d¬mÔ.BÐCÐCÐCØ× Ò  Ñ$Ô$Ð$Ý!¥%¨Ñ"6Ô"6¸¼ÑFÔFˆØ×%Ò% dÑ+Ô+ð 	ð 	ˆAØˆGˆGˆGˆGð	ð 	r"   c              #   óŠ  K  — t          j        d| |¦  «         | j                             |f¦  «        \  }}}|s|rt	          d¦  «        ‚|r5|d         | j        j        | j        j        fv r|                     d¦  «         t          dt          |¦  «        z   | j        ¦  «        }| 
                    | ¦  «        D ]}|V — ŒdS )z¡Recursively yield all existing files (of any kind, including
        directories) matching the given relative pattern, anywhere in
        this subtree.
        zpathlib.Path.rglobr¬  ri   r4   )r³   N)r<   r­  r  rG   r‰  r.   r6   r;   r½   rÿ   rÎ   r®  s          r    Úrglobz
Path.rglob¼  sä   è è € õ
 	Œ	Ð&¨¨gÑ6Ô6Ð6Ø#'¤=×#<Ò#<¸g¸ZÑ#HÔ#HÑ ˆˆT�=Øð 	O�$ð 	OÝ%Ð&MÑNÔNÐNØð 	%�w˜r”{ t¤}Ô'8¸$¼-Ô:NÐ&OÐOÐOØ× Ò  Ñ$Ô$Ð$Ý! '­E°-Ñ,@Ô,@Ñ"@À$Ä-ÑPÔPˆØ×%Ò% dÑ+Ô+ð 	ð 	ˆAØˆGˆGˆGˆGð	ð 	r"   c                 óŽ   — |                       ¦   «         r| S |                      |                      ¦   «         g| j        z   ¦  «        S )zÖReturn an absolute version of this path by prepending the current
        working directory. No normalization or symlink resolution is performed.

        Use resolve() to get the canonical path to a file.
        )r1  r  r›  rô   r0   s    r    ÚabsolutezPath.absoluteË  sB   € ð ×ÒÑÔð 	ØˆKØ×Ò §¢¡¤ ¨t¬{Ñ :Ñ;Ô;Ð;r"   Fc                 ó.  — d„ }	 t           j                             | |¬¦  «        }n# t          $ r} ||¦  «         ‚ d}~ww xY w|                      |f¦  «        }|s8	 |                     ¦   «          n"# t          $ r} ||¦  «         Y d}~nd}~ww xY w|S )zl
        Make the path absolute, resolving all symlinks on the way and also
        normalizing it.
        c                 óŒ   — t          | dd¦  «        }| j        t          k    s|t          k    rt	          d| j        z  ¦  «        ‚d S )Nr   r   zSymlink loop from %r)r   r   r   Ú_WINERROR_CANT_RESOLVE_FILENAMEÚRuntimeErrorÚfilename)rá   r   s     r    Úcheck_eloopz!Path.resolve.<locals>.check_eloopÛ  sJ   € Ý˜q *¨aÑ0Ô0ˆHØŒw�%ÒÐ 8Õ/NÒ#NÐ#NÝ"Ð#9¸A¼JÑ#FÑGÔGÐGð $OÐ#Nr"   )ÚstrictN)r¢   rœ   ÚrealpathrÝ   r  r¡  )r1   r»  rº  rz   rá   r}   s         r    ÚresolvezPath.resolveÕ  sÔ   € ð	Hð 	Hð 	Hð
	Ý”× Ò  ¨fÐ Ñ5Ô5ˆAˆAøÝð 	ð 	ð 	ØˆK˜‰NŒNˆNØøøøøð	øøøð ×Ò˜a˜TÑ"Ô"ˆð ð 	ðØ—’‘”��øÝð ð ð Ø�˜A‘”������øøøøðøøøàˆs*   …!' §
A±=½AÁA3 Á3
BÁ=BÂBTrå   c                ó.   — t          j        | |¬¦  «        S )zh
        Return the result of the stat() system call on this path, like
        os.stat() does.
        rå   )r¢   r¡  )r1   ræ   s     r    r¡  z	Path.statð  s   € õ
 Œw�t¨_Ð=Ñ=Ô=Ð=r"   c                 ó¨   — 	 ddl }|                     |                      ¦   «         j        ¦  «        j        S # t
          $ r t          d¦  «        ‚w xY w)z:
        Return the login name of the file owner.
        r   Nz*Path.owner() is unsupported on this system)ÚpwdÚgetpwuidr¡  Úst_uidÚpw_nameÚImportErrorr‰  )r1   rÀ  s     r    Úownerz
Path.owner÷  s_   € ð	TØˆJˆJˆJØ—<’< §	¢	¡¤Ô 2Ñ3Ô3Ô;Ð;øÝð 	Tð 	Tð 	TÝ%Ð&RÑSÔSÐSð	Tøøøó	   ‚47 ·Ac                 ó¨   — 	 ddl }|                     |                      ¦   «         j        ¦  «        j        S # t
          $ r t          d¦  «        ‚w xY w)z8
        Return the group name of the file gid.
        r   Nz*Path.group() is unsupported on this system)ÚgrpÚgetgrgidr¡  Úst_gidÚgr_namerÄ  r‰  )r1   rÈ  s     r    Úgroupz
Path.group  s_   € ð
	TØˆJˆJˆJØ—<’< §	¢	¡¤Ô 2Ñ3Ô3Ô;Ð;øÝð 	Tð 	Tð 	TÝ%Ð&RÑSÔSÐSð	TøøørÆ  Úrri   Nc                 ód   — d|vrt          j        |¦  «        }t          j        | |||||¦  «        S )z|
        Open the file pointed by this path and return a file object, as
        the built-in open() function does.
        Úb)ÚioÚtext_encodingÚopen)r1   ÚmodeÚ	bufferingÚencodingÚerrorsÚnewlines         r    rÒ  z	Path.open  s7   € ð �dˆ?ˆ?ÝÔ'¨Ñ1Ô1ˆHÝŒw�t˜T 9¨h¸ÀÑHÔHÐHr"   c                 óŠ   — |                       d¬¦  «        5 }|                     ¦   «         cddd¦  «         S # 1 swxY w Y   dS )zK
        Open the file in bytes mode, read it, and close the file.
        Úrb©rÓ  N)rÒ  Úreadr*  s     r    Ú
read_byteszPath.read_bytes  s„   € ð �YŠY˜DˆYÑ!Ô!ð 	 QØ—6’6‘8”8ð	ð 	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   —8¸<¿<c                 ó¶   — t          j        |¦  «        }|                      d||¬¦  «        5 }|                     ¦   «         cddd¦  «         S # 1 swxY w Y   dS )zJ
        Open the file in text mode, read it, and close the file.
        rÍ  )rÓ  rÕ  rÖ  N)rÐ  rÑ  rÒ  rÛ  )r1   rÕ  rÖ  r+  s       r    Ú	read_textzPath.read_text  s˜   € õ Ô# HÑ-Ô-ˆØ�YŠY˜C¨(¸6ˆYÑBÔBð 	ÀaØ—6’6‘8”8ð	ð 	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   ­AÁAÁAc                 óª   — t          |¦  «        }|                      d¬¦  «        5 }|                     |¦  «        cddd¦  «         S # 1 swxY w Y   dS )zO
        Open the file in bytes mode, write to it, and close the file.
        ÚwbrÚ  N)Ú
memoryviewrÒ  Úwrite)r1   ÚdataÚviewr+  s       r    Úwrite_byteszPath.write_bytes%  s“   € õ
 ˜$ÑÔˆØ�YŠY˜DˆYÑ!Ô!ð 	! QØ—7’7˜4‘=”=ð	!ð 	!ð 	!ð 	!ñ 	!ô 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!øøøð 	!ð 	!ð 	!ð 	!ð 	!ð 	!s   ¦AÁAÁAc                 ó  — t          |t          ¦  «        st          d|j        j        z  ¦  «        ‚t          j        |¦  «        }|                      d|||¬¦  «        5 }|                     |¦  «        cddd¦  «         S # 1 swxY w Y   dS )zN
        Open the file in text mode, write to it, and close the file.
        zdata must be str, not %sÚw)rÓ  rÕ  rÖ  r×  N)	rý   r  r  r  rO   rÐ  rÑ  rÒ  râ  )r1   rã  rÕ  rÖ  r×  r+  s         r    Ú
write_textzPath.write_text.  sÑ   € õ ˜$¥Ñ$Ô$ð 	5ÝÐ6Ø œNÔ3ñ4ñ 5ô 5ð 5åÔ# HÑ-Ô-ˆØ�YŠY˜C¨(¸6È7ˆYÑSÔSð 	!ÐWXØ—7’7˜4‘=”=ð	!ð 	!ð 	!ð 	!ñ 	!ô 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!øøøð 	!ð 	!ð 	!ð 	!ð 	!ð 	!s   ÁBÂBÂBc                 óš   — t          t          d¦  «        st          d¦  «        ‚|                      t          j        | ¦  «        f¦  «        S )zD
        Return the path to which the symbolic link points.
        Úreadlinkz*os.readlink() not available on this system)Úhasattrr¢   r‰  r  rê  r0   s    r    rê  zPath.readlink9  sG   € õ •r˜:Ñ&Ô&ð 	TÝ%Ð&RÑSÔSÐSØ×Ò¥¤¨TÑ!2Ô!2Ð 4Ñ5Ô5Ð5r"   é¶  c                 ó  — |r(	 t          j        | d¦  «         dS # t          $ r Y nw xY wt           j        t           j        z  }|s|t           j        z  }t          j        | ||¦  «        }t          j        |¦  «         dS )zS
        Create this file with the given access mode, if it doesn't exist.
        N)r¢   ÚutimerÝ   ÚO_CREATÚO_WRONLYÚO_EXCLrÒ  Úclose)r1   rÓ  Úexist_okÚflagsÚfds        r    Útouchz
Path.touchA  s”   € ð
 ð 
	ðÝ”˜˜tÑ$Ô$Ð$ð
 �øõ	 ð ð ð à�ðøøøõ
 ”
�Rœ[Ñ(ˆØð 	Ø•R”YÑˆEÝŒW�T˜5 $Ñ'Ô'ˆÝ
Œ�‰Œˆˆˆs   „ ›
(§(éÿ  c                 ó  — 	 t          j        | |¦  «         dS # t          $ rF |r| j        | k    r‚ | j                             dd¬¦  «         |                      |d|¬¦  «         Y dS t          $ r |r|                      ¦   «         s‚ Y dS w xY w)z<
        Create a new directory at this given path.
        T)rx  ró  FN)r¢   ÚmkdirÚFileNotFoundErrorrv  rÝ   rÆ   )r1   rÓ  rx  ró  s       r    rù  z
Path.mkdirW  sÊ   € ð	ÝŒH�T˜4Ñ Ô Ð Ð Ð øÝ ð 	?ð 	?ð 	?Øð ˜dœk¨TÒ1Ð1ØØŒK×Ò d°TÐÑ:Ô:Ð:Ø�JŠJ�t U°XˆJÑ>Ô>Ð>Ð>Ð>Ð>Ýð 	ð 	ð 	ð ð  4§;¢;¡=¤=ð Øðð ð ð	øøøs   ‚ ™ABÁ( BÂBc                ó4   — t          j        | ||¬¦  «         dS )zF
        Change the permissions of the path, like os.chmod().
        rå   N)r¢   Úchmod)r1   rÓ  ræ   s      r    rü  z
Path.chmodh  s!   € õ 	Œ��t¨_Ð=Ñ=Ô=Ð=Ð=Ð=r"   c                 ó4   — |                       |d¬¦  «         dS )z�
        Like chmod(), except if the path points to a symlink, the symlink's
        permissions are changed, rather than its target's.
        Frå   N)rü  )r1   rÓ  s     r    ÚlchmodzPath.lchmodn  s    € ð
 	�
Š
�4¨ˆ
Ñ/Ô/Ð/Ð/Ð/r"   c                 óX   — 	 t          j        | ¦  «         dS # t          $ r |s‚ Y dS w xY w)zd
        Remove this file or link.
        If the path is a directory, use rmdir() instead.
        N)r¢   Úunlinkrú  )r1   Ú
missing_oks     r    r   zPath.unlinku  sM   € ð
	ÝŒI�d‰OŒOˆOˆOˆOøÝ ð 	ð 	ð 	Øð Øðð ð ð	øøøs   ‚ ˜)¨)c                 ó.   — t          j        | ¦  «         dS )zF
        Remove this directory.  The directory must be empty.
        N)r¢   Úrmdirr0   s    r    r  z
Path.rmdir€  s   € õ 	Œ�‰Œˆˆˆr"   c                 ó.   — |                       d¬¦  «        S )z–
        Like stat(), except if the path points to a symlink, the symlink's
        status information is returned, rather than its target's.
        Frå   )r¡  r0   s    r    Úlstatz
Path.lstat†  s   € ð
 �yŠy¨ˆyÑ/Ô/Ð/r"   c                 óV   — t          j        | |¦  «         |                      |¦  «        S )a2  
        Rename this path to the target path.

        The target path may be absolute or relative. Relative paths are
        interpreted relative to the current working directory, *not* the
        directory of the Path object.

        Returns the new Path instance pointing to the target path.
        )r¢   Úrenamer  ©r1   Útargets     r    r  zPath.rename�  s(   € õ 	Œ	�$˜ÑÔÐØ�~Š~˜fÑ%Ô%Ð%r"   c                 óV   — t          j        | |¦  «         |                      |¦  «        S )aS  
        Rename this path to the target path, overwriting if that path exists.

        The target path may be absolute or relative. Relative paths are
        interpreted relative to the current working directory, *not* the
        directory of the Path object.

        Returns the new Path instance pointing to the target path.
        )r¢   r8   r  r  s     r    r8   zPath.replaceš  s(   € õ 	Œ
�4˜Ñ Ô Ð Ø�~Š~˜fÑ%Ô%Ð%r"   c                 óz   — t          t          d¦  «        st          d¦  «        ‚t          j        || |¦  «         dS )z˜
        Make this path a symlink pointing to the target path.
        Note the order of arguments (link, target) is the reverse of os.symlink.
        Úsymlinkz)os.symlink() not available on this systemN)rë  r¢   r‰  r  )r1   r	  Útarget_is_directorys      r    Ú
symlink_tozPath.symlink_to§  sA   € õ
 •r˜9Ñ%Ô%ð 	SÝ%Ð&QÑRÔRÐRÝ
Œ
�6˜4Ð!4Ñ5Ô5Ð5Ð5Ð5r"   c                 óx   — t          t          d¦  «        st          d¦  «        ‚t          j        || ¦  «         dS )z¤
        Make this path a hard link pointing to the same file as *target*.

        Note the order of arguments (self, target) is the reverse of os.link's.
        Úlinkz&os.link() not available on this systemN)rë  r¢   r‰  r  r  s     r    Úhardlink_tozPath.hardlink_to°  s>   € õ •r˜6Ñ"Ô"ð 	PÝ%Ð&NÑOÔOÐOÝ
Œ�˜ÑÔÐÐÐr"   c                 óŽ   — t          j        dt          d¬¦  «         |                      |¦  «                             | ¦  «         dS )aÅ  
        Make the target path a hard link pointing to this path.

        Note this function does not make this path a hard link to *target*,
        despite the implication of the function and argument names. The order
        of arguments (target, link) is the reverse of Path.symlink_to, but
        matches that of os.link.

        Deprecated since Python 3.10 and scheduled for removal in Python 3.12.
        Use `hardlink_to()` instead.
        zypathlib.Path.link_to() is deprecated and is scheduled for removal in Python 3.12. Use pathlib.Path.hardlink_to() instead.rg   r�  N)r�  r�  r‘  r  r  r  s     r    Úlink_tozPath.link_toº  sR   € õ 	Œð @õ )°Qð	8ñ 	8ô 	8ð 	8ð 	�Š�vÑÔ×*Ò*¨4Ñ0Ô0Ð0Ð0Ð0r"   c                 óš   — 	 |                       ¦   «          n4# t          $ r}t          |¦  «        s‚ Y d}~dS d}~wt          $ r Y dS w xY wdS )z+
        Whether this path exists.
        NFT)r¡  rÝ   r!   r¶   ©r1   rá   s     r    rÇ   zPath.existsÎ  su   € ð	Ø�IŠI‰KŒKˆKˆKøÝð 	ð 	ð 	Ý  Ñ#Ô#ð ØØ�5�5�5�5�5øøøøÝð 	ð 	ð 	à�5�5ð	øøøð ˆts   ‚ —
A¡7·AÁAc                 ó¸   — 	 t          |                      ¦   «         j        ¦  «        S # t          $ r}t	          |¦  «        s‚ Y d}~dS d}~wt
          $ r Y dS w xY w)z3
        Whether this path is a directory.
        NF)r	   r¡  Úst_moderÝ   r!   r¶   r  s     r    rÆ   zPath.is_dirÝ  óz   € ð
	Ý˜4Ÿ9š9™;œ;Ô.Ñ/Ô/Ð/øÝð 	ð 	ð 	Ý  Ñ#Ô#ð Øð �5�5�5�5�5øøøøÝð 	ð 	ð 	à�5�5ð	øøøó   ‚%( ¨
A²AÁAÁAc                 ó¸   — 	 t          |                      ¦   «         j        ¦  «        S # t          $ r}t	          |¦  «        s‚ Y d}~dS d}~wt
          $ r Y dS w xY w)zq
        Whether this path is a regular file (also True for symlinks pointing
        to regular files).
        NF)r   r¡  r  rÝ   r!   r¶   r  s     r    Úis_filezPath.is_fileí  sz   € ð

	Ý˜4Ÿ9š9™;œ;Ô.Ñ/Ô/Ð/øÝð 	ð 	ð 	Ý  Ñ#Ô#ð Øð �5�5�5�5�5øøøøÝð 	ð 	ð 	à�5�5ð	øøør  c                 ót  — |                       ¦   «         r|                      ¦   «         sdS 	 | j                             ¦   «         j        }n# t
          $ r Y dS w xY w|                      ¦   «         j        }||k    rdS |                      ¦   «         j        }| j                             ¦   «         j        }||k    S )z;
        Check if this path is a POSIX mount point
        FT)rÇ   rÆ   rv  r¡  Úst_devrÝ   Úst_ino)r1   Ú
parent_devÚdevÚinoÚ
parent_inos        r    Úis_mountzPath.is_mountþ  sº   € ð
 �{Š{‰}Œ}ð 	 D§K¢K¡M¤Mð 	Ø�5ð	Øœ×)Ò)Ñ+Ô+Ô2ˆJˆJøÝð 	ð 	ð 	Ø�5�5ð	øøøð �iŠi‰kŒkÔ ˆØ�*ÒÐØ�4Ø�iŠi‰kŒkÔ ˆØ”[×%Ò%Ñ'Ô'Ô.ˆ
Ø�jÒ Ð s   ¬A Á
AÁAc                 ó¸   — 	 t          |                      ¦   «         j        ¦  «        S # t          $ r}t	          |¦  «        s‚ Y d}~dS d}~wt
          $ r Y dS w xY w)z7
        Whether this path is a symbolic link.
        NF)r
   r  r  rÝ   r!   r¶   r  s     r    Ú
is_symlinkzPath.is_symlink  sx   € ð		Ý˜4Ÿ:š:™<œ<Ô/Ñ0Ô0Ð0øÝð 	ð 	ð 	Ý  Ñ#Ô#ð Øà�5�5�5�5�5øøøøÝð 	ð 	ð 	à�5�5ð	øøør  c                 ó¸   — 	 t          |                      ¦   «         j        ¦  «        S # t          $ r}t	          |¦  «        s‚ Y d}~dS d}~wt
          $ r Y dS w xY w)z6
        Whether this path is a block device.
        NF)r   r¡  r  rÝ   r!   r¶   r  s     r    Úis_block_devicezPath.is_block_device!  r  r  c                 ó¸   — 	 t          |                      ¦   «         j        ¦  «        S # t          $ r}t	          |¦  «        s‚ Y d}~dS d}~wt
          $ r Y dS w xY w)z:
        Whether this path is a character device.
        NF)r   r¡  r  rÝ   r!   r¶   r  s     r    Úis_char_devicezPath.is_char_device1  r  r  c                 ó¸   — 	 t          |                      ¦   «         j        ¦  «        S # t          $ r}t	          |¦  «        s‚ Y d}~dS d}~wt
          $ r Y dS w xY w)z.
        Whether this path is a FIFO.
        NF)r   r¡  r  rÝ   r!   r¶   r  s     r    Úis_fifozPath.is_fifoA  óz   € ð
	Ý˜DŸIšI™KœKÔ/Ñ0Ô0Ð0øÝð 	ð 	ð 	Ý  Ñ#Ô#ð Øð �5�5�5�5�5øøøøÝð 	ð 	ð 	à�5�5ð	øøør  c                 ó¸   — 	 t          |                      ¦   «         j        ¦  «        S # t          $ r}t	          |¦  «        s‚ Y d}~dS d}~wt
          $ r Y dS w xY w)z0
        Whether this path is a socket.
        NF)r   r¡  r  rÝ   r!   r¶   r  s     r    Ú	is_socketzPath.is_socketQ  r,  r  c                 ó<  — | j         s”| j        s�| j        r†| j        d         dd…         dk    rmt          j                             | j        d         ¦  «        }|dd…         dk    rt          d¦  «        ‚|                      |g| j        dd…         z   ¦  «        S | S )zl Return a new path with expanded ~ and ~user constructs
        (as returned by os.path.expanduser)
        r   NrI   r�  z#Could not determine home directory.)rò   ró   rô   r¢   rœ   rž  r¸  r  )r1   Úhomedirs     r    rž  zPath.expandusera  s¥   € ð ”ð 	A˜dœjð 	AØŒKð	AØ œK¨œN¨2¨A¨2Ô.°#Ò5Ð5Ý”g×(Ò(¨¬°Q¬Ñ8Ô8ˆGØ�r˜�rŒ{˜cÒ!Ð!Ý"Ð#HÑIÔIÐIØ×#Ò# W I°´¸A¸B¸B´Ñ$?Ñ@Ô@Ð@àˆr"   )F)rÍ  ri   NNN)NN)NNN)rì  T)r÷  FF)2rO   rP   rQ   rR   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  r8   r  r  r  rÇ   rÆ   r  r#  r%  r'  r)  r+  r.  rž  r'   r"   r    r   r   Y  s,  € € € € € ðð ð €Iðð ð ðEð Eð Eðð ð ðð ð ð
 ð ð  ñ „[ð ð ð%ð %ñ „[ð%ð	.ð 	.ð 	.ð1ð 1ð 1ð ð  ð  ðð ð ð ð ð ð<ð <ð <ðð ð ð ð6 '+ð >ð >ð >ð >ð >ðTð Tð Tð	Tð 	Tð 	Tð 59Ø"&ðIð Ið Ið Iðð ð ðð ð ð ð!ð !ð !ð	!ð 	!ð 	!ð 	!ð6ð 6ð 6ðð ð ð ð,ð ð ð ð" .2ð >ð >ð >ð >ð >ð0ð 0ð 0ð	ð 	ð 	ð 	ðð ð ð0ð 0ð 0ð&ð &ð &ð&ð &ð &ð6ð 6ð 6ð 6ðð ð ð1ð 1ð 1ð(ð ð ðð ð ð ð ð ð"!ð !ð !ð(ð ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð r"   r   c                   ó   — e Zd ZdZdZdS )r   zsPath subclass for non-Windows systems.

    On a POSIX system, instantiating a Path should return this object.
    r'   N)rO   rP   rQ   rR   r	  r'   r"   r    r   r   o  s   € € € € € ðð ð €I€I€Ir"   r   c                   ó   — e Zd ZdZdZd„ ZdS )r   zqPath subclass for Windows systems.

    On a Windows system, instantiating a Path should return this object.
    r'   c                 ó    — t          d¦  «        ‚)Nz-Path.is_mount() is unsupported on this system)r‰  r0   s    r    r#  zWindowsPath.is_mount}  s   € Ý!Ð"QÑRÔRÐRr"   N)rO   rP   rQ   rR   r	  r#  r'   r"   r    r   r   v  s9   € € € € € ðð ð €IðSð Sð Sð Sð Sr"   r   )<r„   Ú	functoolsrÐ  r    r¢   r±   r‚   r<   r�  Ú_collections_abcr   r   r   r   r   r   Úoperatorr   r¡  r	   r
   r   r   r   r   r   Úurllib.parser   rš   Ú__all__Ú_WINERROR_NOT_READYÚ_WINERROR_INVALID_NAMEr·  r   r   r!   r)   r  r+   rT   r§   r†  r„  r½   rë  r¾   rÀ   r´   r¸   r·   rµ   rð   r   ÚPathLikeÚregisterr   r   r   r   r   r'   r"   r    ú<module>r=     s�  ðØ €€€Ø Ð Ð Ð Ø 	€	€	€	Ø €€€Ø 	€	€	€	Ø Ð Ð Ð Ø 	€	€	€	Ø 
€
€
€
Ø €€€Ø %Ð %Ð %Ð %Ð %Ð %Ø /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ø Ð Ð Ð Ð Ð Ø PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PØ @Ð @Ð @Ð @Ð @Ð @ðð ð €ð Ð ØÐ Ø"&Ð ð ˜7 E¨5Ð1€ð ØØ#ð%Ð ð
Hð Hð Hð
2ð 2ð 2ð<#ð <#ð <#ð <#ð <#ˆvñ <#ô <#ð <#ð~tRð tRð tRð tRð tR�hñ tRô tRð tRðn'6ð '6ð '6ð '6ð '6�Hñ '6ô '6ð '6ðT #�?Ñ$Ô$Ð Ø�‘”€ð*ð *ð *ð €7ˆ9�kÑ"Ô"ð ;Ø*Ð(�YÔ(Ñ*Ô*¨>Ñ:Ô:€NðGð Gð Gð Gð Gñ Gô Gð Gð2ð ð ð ð ñ ô ð ðð ð ð ð �yñ ô ð ð ð ð ð ð ˜	ñ ô ð ð>%ð %ð %ð %ð % ñ %ô %ð %ðX=ð =ð =ð =ð =�8ñ =ô =ð =ðBtð tð tð tð tˆvñ tô tð tðp „× Ò �XÑ Ô Ð ðð ð ð ð �Hñ ô ð ðð ð ð ð �hñ ô ð ðSð Sð Sð Sð Sˆ8ñ Sô Sð Sðlð ð ð ð ��mñ ô ð ðSð Sð Sð Sð S�$˜ñ Sô Sð Sð Sð Sr"   