grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026U iÛf Tã @sòddlZddlZddlZddlZz ddlZWnek rDdZYnXdddddddd d d d d dg Zdddddddddg Z da da Gdd„dƒZ d%dd„Z d&dd„Zd'dd„Zd(dd„Zd)dd „Zdd „Zd d!„Zeƒd"d#„Zed$krîeƒdS)*éNÚ knownfilesÚinitedÚ MimeTypesÚ guess_typeÚguess_all_extensionsÚguess_extensionÚadd_typeÚinitÚread_mime_typesÚ suffix_mapÚ encodings_mapÚ types_mapÚ common_typesz/etc/mime.typesz/etc/httpd/mime.typesz/etc/httpd/conf/mime.typesz/etc/apache/mime.typesz/etc/apache2/mime.typesz$/usr/local/etc/httpd/conf/mime.typesz"/usr/local/lib/netscape/mime.typesz/usr/local/etc/mime.typesFc@s\eZdZddd„Zddd„Zddd„Zdd d „Zdd d „Zdd d„Zddd„Z ddd„Z dS)r©TcCsŒts tƒt ¡|_t ¡|_iif|_iif|_t   ¡D]\}}|  ||d¡q:t   ¡D]\}}|  ||d¡qZ|D]}|  ||¡qvdS©NTF)rr Ú_encodings_map_defaultÚcopyr Ú_suffix_map_defaultr r Ú types_map_invÚ_types_map_defaultÚitemsrÚ_common_types_defaultÚread)ÚselfÚ filenamesÚstrictÚextÚtypeÚnamerrú./opt/alt/python38/lib64/python3.8/mimetypes.pyÚ__init__Bs    zMimeTypes.__init__cCs6||j||<|j| |g¡}||kr2| |¡dS©N)r rÚ setdefaultÚappend)rrrrZextsrrrrPs zMimeTypes.add_typec Csrt |¡}tj |¡\}}|dkr„| d¡}|dkr8dS| dd|¡}|dkr\|d|…}n |d|…}d|ksxd|kr|d}|dfSt |¡\}}||jkr¶t ||j|¡\}}q’||j krÚ|j |} t |¡\}}nd} |j d } || krü| || fS|  ¡| k�r| |  ¡| fS|�r(d| fS|j d } || k�rH| || fS|  ¡| k�rf| |  ¡| fSd| fSdS) NÚdataú,r)NNú;ú=ú/ú text/plainTF) ÚosÚfspathÚurllibÚparseZ _splittypeÚfindÚ posixpathÚsplitextr r r Úlower) rÚurlrZschemeZcommaZsemirÚbaserÚencodingr rrrrasB           zMimeTypes.guess_typecCsL| ¡}|jd |g¡}|sH|jd |g¡D]}||kr0| |¡q0|Sr)r1rÚgetr#)rrrÚ extensionsrrrrr s  zMimeTypes.guess_all_extensionscCs| ||¡}|sdS|dS)Nr)r)rrrr6rrrr³s zMimeTypes.guess_extensionc Cs(t|dd��}| ||¡W5QRXdS)Núutf-8©r4)ÚopenÚreadfp)rÚfilenamerÚfprrrrÅszMimeTypes.readc Cs„| ¡}|sq€| ¡}tt|ƒƒD]"}||ddkr"||d…=qFq"|sLq|d|dd…}}|D]}| |d||¡qfqdS)Nrú#éÚ.)ÚreadlineÚsplitÚrangeÚlenr) rr<rÚlineZwordsÚirÚsuffixesZsuffrrrr:Ðs  zMimeTypes.readfpc CsÀtsdSdd„}t tjd¡�˜}||ƒD]ˆ}zjt ||¡�T}| d¡sTW5QR£Wq(t |d¡\}}|tjkr|W5QR£Wq(| |||¡W5QRXWq(tk r®Yq(Yq(Xq(W5QRXdS)NcssJd}zt ||¡}Wntk r,YqFYnXd|kr<|V|d7}qdS)Nrúr>)Ú_winregZEnumKeyÚOSError)ZmimedbrEZctyperrrÚ enum_typesôs z3MimeTypes.read_windows_registry..enum_typesÚr?z Content Type)rHÚOpenKeyZHKEY_CLASSES_ROOTÚ startswithZ QueryValueExZREG_SZrrI)rrrJZhkcrZ subkeynameZsubkeyZmimetypeZdatatyperrrÚread_windows_registryçs$    ÿ zMimeTypes.read_windows_registryN)rT)T)T)T)T)T)T)T) Ú__name__Ú __module__Ú __qualname__r rrrrrr:rNrrrrr:s   ?   TcCstdkrtƒt ||¡Sr!)Ú_dbr r)r2rrrrrscCstdkrtƒt ||¡Sr!)rRr r©rrrrrr's cCstdkrtƒt ||¡Sr!)rRr rrSrrrr8s cCstdkrtƒt |||¡Sr!)rRr r)rrrrrrrHs cCsŽda|dkstdkrBtƒ}tr&| ¡|dkr4t}qFtt|ƒ}nt}|D]}tj  |¡rJ|  |¡qJ|j a |j a |j da |j da|adSr)rrRrrHrNrÚlistr*ÚpathÚisfilerr r r r)ÚfilesÚdbÚfilerrrr Ys"    c Cs`zt|dd�}Wntk r&YdSX|�*tƒ}| |d¡|jdW5QR£SQRXdS)Nr7r8T)r9rIrr:r )rYÚfrXrrrr us c…CsXdddddddœaadddd d œaad d d d ddddddddddddddddddddddddddddddddddd d!d!d"d"d#d$d$d%d&d'd(d)d*d+d,d-d-d.d.d.d/d0d1d2d3d4d4d4d4d5d6d6d7d7d8d8d8d9d:d;dd>d>d?d@dAdAdBdCdDdEdFdGdHdIdJdKdLdMdMdMdMdNdOdPdPdQdQdQdQdQdQdRdSdTdUdVdVdWdXdYdZdZdZdZdZd[d[d\d]d^d_œ„aad`dadadbdcdcdcdddeœaadS)fNz.svg.gzz.tar.gzz.tar.bz2z.tar.xz)z.svgzz.tgzz.tazz.tzz.tbz2z.txzZgzipÚcompressZbzip2Zxz)z.gzz.Zz.bz2z.xzzapplication/javascriptzapplication/jsonzapplication/manifest+jsonzapplication/mswordzapplication/octet-streamzapplication/odazapplication/pdfzapplication/pkcs7-mimezapplication/postscriptzapplication/vnd.apple.mpegurlzapplication/vnd.ms-excelzapplication/vnd.ms-powerpointzapplication/wasmzapplication/x-bcpiozapplication/x-cpiozapplication/x-cshzapplication/x-dvizapplication/x-gtarzapplication/x-hdfzapplication/x-hdf5zapplication/x-latexzapplication/x-mifzapplication/x-netcdfzapplication/x-pkcs12zapplication/x-pn-realaudiozapplication/x-python-codezapplication/x-shzapplication/x-sharzapplication/x-shockwave-flashzapplication/x-sv4cpiozapplication/x-sv4crczapplication/x-tarzapplication/x-tclzapplication/x-texzapplication/x-texinfozapplication/x-troffzapplication/x-troff-manzapplication/x-troff-mezapplication/x-troff-mszapplication/x-ustarzapplication/x-wais-sourcezapplication/xmlzapplication/zipz audio/basicz audio/mpegz audio/x-aiffzaudio/x-pn-realaudioz audio/x-wavz image/bmpz image/gifz image/iefz image/jpegz image/pngz image/svg+xmlz image/tiffzimage/vnd.microsoft.iconzimage/x-cmu-rasterzimage/x-ms-bmpzimage/x-portable-anymapzimage/x-portable-bitmapzimage/x-portable-graymapzimage/x-portable-pixmapz image/x-rgbzimage/x-xbitmapzimage/x-xpixmapzimage/x-xwindowdumpzmessage/rfc822ztext/cssztext/csvz text/htmlr)z text/richtextztext/tab-separated-valuesz text/x-pythonz text/x-setextz text/x-sgmlz text/x-vcardztext/xmlz video/mp4z video/mpegzvideo/quicktimez video/webmzvideo/x-msvideozvideo/x-sgi-movie)„z.jsz.mjsz.jsonz .webmanifestz.docz.dotz.wizz.binz.az.dllz.exez.oz.objz.soz.odaz.pdfz.p7cz.psz.aiz.epsz.m3uz.m3u8z.xlsz.xlbz.pptz.potz.ppaz.ppsz.pwzz.wasmz.bcpioz.cpioz.cshz.dviz.gtarz.hdfz.h5z.latexz.mifz.cdfz.ncz.p12z.pfxz.ramz.pycz.pyoz.shz.sharz.swfz.sv4cpioz.sv4crcz.tarz.tclz.texz.texiz.texinfoz.roffz.tz.trz.manz.mez.msz.ustarz.srcz.xslz.rdfz.wsdlz.xpdlz.zipz.auz.sndz.mp3z.mp2z.aifz.aifcz.aiffz.raz.wavú.bmpz.gifz.iefú.jpgz.jpez.jpegz.pngz.svgz.tiffz.tifz.icoz.rasr\z.pnmz.pbmz.pgmz.ppmz.rgbz.xbmz.xpmz.xwdz.emlz.mhtz.mhtmlz.nwsz.cssz.csvz.htmlz.htmz.txtz.batz.cz.hz.kshz.plz.rtxz.tsvz.pyz.etxz.sgmz.sgmlz.vcfz.xmlz.mp4z.mpegz.m1vz.mpaz.mpez.mpgz.movz.qtz.webmz.aviz.moviezapplication/rtfz audio/midiz image/jpgz image/pictztext/xul)z.rtfz.midiz.midr]z.pictz.pctz.picz.xul)r rr rr rrrrrrrÚ_default_mime_types€s8ú ü €ü  ør^c sddl}d‰d‡fdd„ }z&| tjdd…ddd d g¡\}}Wn.|jk rn}z|d|ƒW5d}~XYnXd}d}|D]4\}}|d kr–|dƒq||d kr¤d}q||d kr|d}q||D]Z} |rât| |ƒ} | sØtd| ƒnt| ƒq¶t| |ƒ\} } | �std| ƒq¶td| d| ƒq¶dS)Nra4Usage: mimetypes.py [options] type Options: --help / -h -- print this message and exit --lenient / -l -- additionally search of some common, but non-standard types. --extension / -e -- guess extension instead of type More than one type argument may be given. rKcs"tˆƒ|rt|ƒt |¡dSr!)ÚprintÚsysÚexit)ÚcodeÚmsg©ZUSAGErrÚusageFsz_main..usager>ZhleÚhelpZlenientÚ extension)z-hz--help)z-lz --lenient)z-ez --extensionz I don't know anything about typeztype:z encoding:)rK)Úgetoptr`ÚargvÚerrorrr_r) rhreZoptsÚargsrcrrgÚoptÚargZgtypeZguessr4rrdrÚ_main7s8 ÿ       rnÚ__main__)T)T)T)T)N)r*r`r/Z urllib.parser,ÚwinregrHÚ ImportErrorÚ__all__rrrRrrrrrr r r^rnrOrrrrÚs^  ü÷ W      5.