grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026U iÛf =ã&@sZdZdZdZdZdZdZdZdZddlZddl Z ddl Z ddl Z ddl Td d d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.g&Z d/d0„Z d1d „Zd2d „Zd3d „Zd4d „Zd5d„Ze jje_d6d „Zd7d„Zd8d„Zd9d„Zd:d„Zd;d„Zdd„Zd?d„Z d@d+„Z!dAdB„Z"e j#dCkZ$dFdDd-„Z%dEd.„Z&dS)GÚ.ú..ú/ú:z /bin:/usr/binNz /dev/nullé)Ú*ÚnormcaseÚisabsÚjoinÚ splitdriveÚsplitÚsplitextÚbasenameÚdirnameÚ commonprefixÚgetsizeÚgetmtimeÚgetatimeÚgetctimeÚislinkÚexistsÚlexistsÚisdirÚisfileÚismountÚ expanduserÚ expandvarsÚnormpathÚabspathÚsamefileÚ sameopenfileÚsamestatÚcurdirÚpardirÚsepÚpathsepÚdefpathÚaltsepÚextsepÚdevnullÚrealpathÚsupports_unicode_filenamesÚrelpathÚ commonpathcCst|tƒrdSdSdS)Nó/r)Ú isinstanceÚbytes©Úpath©r2ú./opt/alt/python38/lib64/python3.8/posixpath.pyÚ_get_sep)s r4cCs t |¡S©N©ÚosÚfspath)Úsr2r2r3r4scCst |¡}t|ƒ}| |¡Sr5)r7r8r4Ú startswith)r9r#r2r2r3r<s c Gs¨t |¡}t|ƒ}|}z^|s,|dd…|ttj|ƒD]8}| |¡rL|}q8|rZ| |¡rd||7}q8|||7}q8Wn.tttfk r¢t j d|f|žŽ‚YnX|S)Nrr ) r7r8r4Úmapr:ÚendswithÚ TypeErrorÚAttributeErrorÚ BytesWarningÚ genericpathÚ_check_arg_types)ÚaÚpr#r1Úbr2r2r3r Gs    cCs`t |¡}t|ƒ}| |¡d}|d|…||d…}}|rX||t|ƒkrX| |¡}||fS©Né©r7r8r4ÚrfindÚlenÚrstrip)rCr#ÚiÚheadÚtailr2r2r3r ds  cCs6t |¡}t|tƒrd}d}nd}d}t ||d|¡S)Nr-ó.rr)r7r8r.r/r@Ú _splitext)rCr#r'r2r2r3r us  cCst |¡}|dd…|fS©Nrr6)rCr2r2r3r ƒs cCs,t |¡}t|ƒ}| |¡d}||d…SrE)r7r8r4rH)rCr#rKr2r2r3r Œs cCsNt |¡}t|ƒ}| |¡d}|d|…}|rJ||t|ƒkrJ| |¡}|SrErG)rCr#rKrLr2r2r3r–s   c Cs8zt |¡}Wntttfk r*YdSXt |j¡S)NF)r7ÚlstatÚOSErrorÚ ValueErrorr>ÚstatÚS_ISLNKÚst_mode)r1Ústr2r2r3r¤s c Cs.zt |¡Wnttfk r(YdSXdS)NFT)r7rQrRrSr0r2r2r3r®s c CsÀzt |¡}Wnttfk r(YdSXt |j¡r:dSt|tƒrPt |dƒ}n t |dƒ}t |ƒ}zt |¡}Wnttfk rŠYdSX|j }|j }||kr¤dS|j }|j }||kr¼dSdS)NFó..rT) r7rQrRrSrTrUrVr.r/r r)Úst_devÚst_ino)r1Ús1ÚparentÚs2Údev1Údev2Úino1Úino2r2r2r3rºs.    c Cs<t |¡}t|tƒrd}nd}| |¡s,|St|ƒ}| |d¡}|dkrPt|ƒ}|dkr¦dtjkršddl }z|  t  ¡¡j }Wq¤t k r–|YSXn tjd}nVddl }|d|…}t|tƒrÎt|dƒ}z| |¡}Wnt k rô|YSX|j }t|tƒ�rt |¡}d}nd}| |¡}|||d…�p:|S) Nó~ú~rFrÚHOMEÚASCIIr-r)r7r8r.r/r:r4ÚfindrIÚenvironÚpwdÚgetpwuidÚgetuidÚpw_dirÚKeyErrorÚstrÚgetpwnamÚfsencoderJ) r1Útilder#rKrhÚuserhomeÚnameÚpwentÚrootr2r2r3räsB              c CsZt |¡}t|tƒrVd|kr |Sts:ddl}| d|j¡atj}d}d}t tddƒ}n:d|krb|St s|ddl}| d|j¡a t j}d }d }tj }d}|||ƒ}|s¦�qV|  d¡\}}|  d ¡} |  |¡rÞ|  |¡rÞ| d d …} z.|dk�rt tj t | ¡¡} n|| } Wntk �r&|}Yq”X||d…} |d|…| }t|ƒ}|| 7}q”|S) Nó$rs\$(\w+|\{[^}]*\})ó{ó}Úenvironbú$z\$(\w+|\{[^}]*\})Ú{Ú}rFéÿÿÿÿ)r7r8r.r/Ú _varprogbÚreÚcompilereÚsearchÚgetattrÚ_varprogrgÚspanÚgroupr:r<roÚfsdecoderlrI) r1r~r€ÚstartÚendrgrKÚmÚjrrÚvaluerMr2r2r3rsN          c Csôt |¡}t|tƒr&d}d}d}d}nd}d}d}d}||krB|S| |¡}|rp| |d ¡rp| |d ¡spd }| |¡}g}|D]J}|||fkr”q‚||ks´|s¤|r´|rÀ|d |krÀ| |¡q‚|r‚| ¡q‚|}| |¡}|rì|||}|pò|S) Nr-órNrXrÚrréér|) r7r8r.r/r:r ÚappendÚpopr ) r1r#ÚemptyÚdotÚdotdotÚinitial_slashesÚcompsÚ new_compsÚcompr2r2r3rNsJ    ÿ ÿ  ÿ ÿ    cCs@t |¡}t|ƒs8t|tƒr&t ¡}nt ¡}t||ƒ}t|ƒSr5) r7r8rr.r/ÚgetcwdbÚgetcwdr r)r1Úcwdr2r2r3rts    cCs*t |¡}t|dd…|iƒ\}}t|ƒSrP)r7r8Ú _joinrealpathr)Úfilenamer1Úokr2r2r3r)ƒs c Cst|tƒrd}d}d}n d}d}d}t|ƒr<|dd…}|}|�r| |¡\}}}|r<||kr`q<||kr”|rŽt|ƒ\}}||kr’t|||ƒ}q<|}q×szrelpath..cSsg|] }|r|‘qSr2r2r¥r2r2r3r¨Øsr+)rSr7r8r.r/rr rIrr r=r>r?ÚDeprecationWarningr@rA) r1r†r!r#r"Ú start_listÚ path_listrKÚrel_listr2r2r3r+Ás0    c s2|s tdƒ‚tttj|ƒƒ}t|dtƒr4d‰d‰nd‰d‰zƇfdd„|Dƒ}zt‡fd d „|Dƒƒ\}Wntk rŠtd ƒd‚YnX‡fd d„|Dƒ}t|ƒ}t |ƒ}|}t |ƒD]$\}}|||krº|d|…}qàqº|rèˆn ˆdd…}|ˆ  |¡WSt t fk �r,tjd|žŽ‚YnXdS)Nz%commonpath() arg is an empty sequencerr-rNrrcsg|]}| ˆ¡‘qSr2)r )r¦r1©r#r2r3r¨ùszcommonpath..c3s|]}|dd…ˆkVqdSrEr2)r¦rCr­r2r3Ú üszcommonpath..z%Can't mix absolute and relative pathscsg|]}‡fdd„|Dƒ‘qS)csg|]}|r|ˆkr|‘qSr2r2)r¦Úc©r!r2r3r¨sz)commonpath...r2)r¦r9r°r2r3r¨sr,)r,)rSÚtupler;r7r8r.r/ÚsetÚminÚmaxÚ enumerater r=r>r@rA) ÚpathsÚ split_pathsrr[r]ÚcommonrKr¯Úprefixr2)r!r#r3r,ês6  )N)'r!r"r'r#r$r%r&r(r7ÚsysrTr@Ú__all__r4rrr r r rOÚ__doc__r r rrrrrr‚r}rrrr)r›Úplatformr*r+r,r2r2r2r3ÚsŒ ù        *25& 3  )