+
    i  c                   sr   R t ^ t^t^t^t^t^t^t^t^t	^	t
R tR tRtRtRtRtRtRtR	t^ t^ t^ tR
 tR tR tR tR tR tR tR tR tR t Rt!Rt"]"t#Rt$Rt%^t&^@t'Rt(Rt)^t*^@t+^8t,^ t-^t.^t/^t0^t1^t2^t3Rt4^t5^t6^t7^t8^t9^ t:^@t;^t<Rt=Rt>Rt?Rt@RtARtBRtCR tDR!tER"tF]R#3]R$3]R%3]R&3]R'3]R(3]R)33])R*33]*R+33]+]!,          R$3]!R,3]+R-33]-R*33].R+33]/]",          R$3]"R,3]/R-33]1R*33]2R+33]3]$,          R.3]$R/3]3R-333
tGR0 tH^ tIRtJ^@tK^tLRtM^tNRtO^tPRtQRtRRtS^tTRtURtV^tWRtXRtY ^ R1IZ5 R2#   ][ d     R2# i ; i)3zoConstants/functions for interpreting results of os.stat() and os.lstat().

Suggested usage: from stat import *
c                    V R,          # )zEReturn the portion of the file's mode that can be set by
os.chmod().
i   mode   &/usr/lib64/python3.14/stat.pyS_IMODEr      s     &=    c                r    )zDReturn the portion of the file's mode that describes the
file type.
i   r   r   r   r   S_IFMTr      s     (?r   i @  i    i `  i   i   i   i   c                &    \        V 4      \        8H  # )z(Return True if mode is from a directory.)r   S_IFDIRr   r   r   S_ISDIRr   2       $<7""r   c                r	   )z<Return True if mode is from a character special device file.)r   S_IFCHRr   r   r   S_ISCHRr   6   r   r   c                r	   )z8Return True if mode is from a block special device file.)r   S_IFBLKr   r   r   S_ISBLKr   :   r   r   c                r	   )z+Return True if mode is from a regular file.)r   S_IFREGr   r   r   S_ISREGr   >   r   r   c                r	   )z0Return True if mode is from a FIFO (named pipe).)r   S_IFIFOr   r   r   S_ISFIFOr   B   r   r   c                r	   )z,Return True if mode is from a symbolic link.)r   S_IFLNKr   r   r   S_ISLNKr   F   r   r   c                r	   )z%Return True if mode is from a socket.)r   S_IFSOCKr   r   r   S_ISSOCKr   J   s    $<8##r   c                    R# )z#Return True if mode is from a door.Fr   r   r   r   S_ISDOORr   N       r   c                r   )z*Return True if mode is from an event port.Fr   r   r   r   S_ISPORTr   R   r   r   c                r   )z'Return True if mode is from a whiteout.Fr   r   r   r   S_ISWHTr   V   r   r   i   i   i   i   i  i  l      i   i   i   i   i   i    i   i   @ZlZs-ZbZdZcZpZrZwZSZxZtZTc                s`   . p\        \        4       F  w  r#V FS  w  rEV^ 8X  d'   \        V 4      V8X  d   VP                  V4        K7  K2  W,          V8X  g   KA  VP                  V4        K\  	  V^ 8X  d   VP                  R4       Kx  VP                  R4       K  	  RP	                  V4      # )z;Convert a file's mode to a string of the form '-rwxrwxrwx'.Z?r   Z )Z	enumerate_filemode_tabler   ZappendZjoin)r   ZpermZindexZtableZbitZchars   &     r   filemoder       s    D!/2ICz$<3&KK% ' :$KK%  zC C  3  774=r   )Z*N)\Z__doc__ZST_MODEZST_INOZST_DEVZST_NLINKZST_UIDZST_GIDZST_SIZEZST_ATIMEZST_MTIMEZST_CTIMEr   r   r
   r   r   r   r   r   r   ZS_IFDOORZS_IFPORTZS_IFWHTr   r   r   r   r   r   r   r   r   r   ZS_ISUIDZS_ISGIDZS_ENFMTZS_ISVTXZS_IREADZS_IWRITEZS_IEXECZS_IRWXUZS_IRUSRZS_IWUSRZS_IXUSRZS_IRWXGZS_IRGRPZS_IWGRPZS_IXGRPZS_IRWXOZS_IROTHZS_IWOTHZS_IXOTHZUF_SETTABLEZ	UF_NODUMPZUF_IMMUTABLEZ	UF_APPENDZ	UF_OPAQUEZUF_NOUNLINKZUF_COMPRESSEDZ
UF_TRACKEDZUF_DATAVAULTZ	UF_HIDDENZSF_SETTABLEZSF_ARCHIVEDZSF_IMMUTABLEZ	SF_APPENDZSF_RESTRICTEDZSF_NOUNLINKZSF_SNAPSHOTZSF_FIRMLINKZSF_DATALESSr   r    ZFILE_ATTRIBUTE_ARCHIVEZFILE_ATTRIBUTE_COMPRESSEDZFILE_ATTRIBUTE_DEVICEZFILE_ATTRIBUTE_DIRECTORYZFILE_ATTRIBUTE_ENCRYPTEDZFILE_ATTRIBUTE_HIDDENZFILE_ATTRIBUTE_INTEGRITY_STREAMZFILE_ATTRIBUTE_NORMALZ"FILE_ATTRIBUTE_NOT_CONTENT_INDEXEDZFILE_ATTRIBUTE_NO_SCRUB_DATAZFILE_ATTRIBUTE_OFFLINEZFILE_ATTRIBUTE_READONLYZFILE_ATTRIBUTE_REPARSE_POINTZFILE_ATTRIBUTE_SPARSE_FILEZFILE_ATTRIBUTE_SYSTEMZFILE_ATTRIBUTE_TEMPORARYZFILE_ATTRIBUTE_VIRTUALZ_statZImportErrorr   r   r   <module>r!      s    
######$ 
















 			
		 sssssss ssgosss ssgosss ssgosss3<2         "'  %) "%   #      	 		s   $D+ +D65D6