JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3RbrJFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr h f0 @sdZdZdZdZdZdZdZdZdZd Z d Z d d Z d dZ dZ dZdZdZdZdZdZddZddZddZddZddZd d!Zd"d#Zd$Zd%ZeZd&Zd'Zd(Z d)Z!d*Z"d'Z#d(Z$d)Z%d+Z&d,Z'd-Z(d Z)dZ*dZ+dZ,dZ-dZ.dZ/dZ0d Z1d-Z2d,Z3dZ4d.Z5d/Z6d0Z7d1Z8d2Z9ed3fed4fed5fe d6fed7fed8ffe#d9ffe$d:ffe%eBd;fed<fe%d=ffe'd9ffe(d:ffe)eBd;fed<fe)d=ffe+d9ffe,d:ffe-eBd>fed?fe-d=fff Z:d@dAZ;yddBl<TWne=k rYnXdCS)DzoConstants/functions for interpreting results of os.stat() and os.lstat(). Suggested usage: from stat import *  cCs|d@S)zMReturn the portion of the file's mode that can be set by os.chmod(). i)moder r )/opt/alt/python34/lib64/python3.4/stat.pyS_IMODEsrcCs|d@S)zLReturn the portion of the file's mode that describes the file type. ir )r r r r S_IFMTsri@i i`iiiicCst|tkS)z(Return True if mode is from a directory.)rS_IFDIR)r r r r S_ISDIR.srcCst|tkS)zsrcCst|tkS)z,Return True if mode is from a symbolic link.)rS_IFLNK)r r r r S_ISLNKBsrcCst|tkS)z%Return True if mode is from a socket.)rS_IFSOCK)r r r r S_ISSOCKFsriii@i8 iiiii l-bdcprwsSxtTcCsig}xStD]K}xB|D]-\}}||@|kr|j|PqqW|jdq Wdj|S)z;Convert a file's mode to a string of the form '-rwxrwxrwx'.r%)_filemode_tableappendjoin)r ZpermtableZbitcharr r r filemodes  r7)*N)>__doc__ST_MODEST_INOST_DEVST_NLINKST_UIDST_GIDST_SIZEST_ATIMEST_MTIMEST_CTIMErrrrrrrrrrrrrrrrS_ISUIDS_ISGIDS_ENFMTS_ISVTXS_IREADS_IWRITES_IEXECS_IRWXUS_IRUSRS_IWUSRS_IXUSRS_IRWXGS_IRGRPS_IWGRPS_IXGRPS_IRWXOS_IROTHS_IWOTHS_IXOTH UF_NODUMP UF_IMMUTABLE UF_APPEND UF_OPAQUE UF_NOUNLINK UF_COMPRESSED UF_HIDDEN SF_ARCHIVED SF_IMMUTABLE SF_APPEND SF_NOUNLINK SF_SNAPSHOTr2r7_stat ImportErrorr r r r s