github.com/bshelton229/agent@v3.5.4+incompatible/mime/mime.go (about)

     1  package mime
     2  
     3  import (
     4  	"mime"
     5  	"sync"
     6  )
     7  
     8  var initialized = false
     9  var mutex sync.Mutex
    10  
    11  // Function is a mirror of http://godoc.org/mime#TypeByExtension but adds extra
    12  // extensions before checking.
    13  func TypeByExtension(ext string) string {
    14  	// Lock the mutex while we add the extra extensions so multiple threads
    15  	// don't try and add the extra extensions at the same time.
    16  	mutex.Lock()
    17  	if !initialized {
    18  		for i := 0; i < len(types); i += 2 {
    19  			mime.AddExtensionType("."+types[i], types[i+1])
    20  		}
    21  		initialized = true
    22  	}
    23  	mutex.Unlock()
    24  
    25  	return mime.TypeByExtension(ext)
    26  }
    27  
    28  var types = []string{
    29  	"ez", "application/andrew-inset",
    30  	"anx", "application/annodex",
    31  	"atom", "application/atom+xml",
    32  	"atomcat", "application/atomcat+xml",
    33  	"atomsrv", "application/atomserv+xml",
    34  	"lin", "application/bbolin",
    35  	"cu", "application/cu-seeme",
    36  	"davmount", "application/davmount+xml",
    37  	"dcm", "application/dicom",
    38  	"tsp", "application/dsptype",
    39  	"es", "application/ecmascript",
    40  	"spl", "application/futuresplash",
    41  	"hta", "application/hta",
    42  	"jar", "application/java-archive",
    43  	"ser", "application/java-serialized-object",
    44  	"class", "application/java-vm",
    45  	"js", "application/javascript",
    46  	"json", "application/json",
    47  	"m3g", "application/m3g",
    48  	"hqx", "application/mac-binhex40",
    49  	"cpt", "application/mac-compactpro",
    50  	"nb", "application/mathematica",
    51  	"nbp", "application/mathematica",
    52  	"mbox", "application/mbox",
    53  	"mdb", "application/msaccess",
    54  	"doc", "application/msword",
    55  	"dot", "application/msword",
    56  	"mxf", "application/mxf",
    57  	"bin", "application/octet-stream",
    58  	"oda", "application/oda",
    59  	"ogx", "application/ogg",
    60  	"one", "application/onenote",
    61  	"onetoc2", "application/onenote",
    62  	"onetmp", "application/onenote",
    63  	"onepkg", "application/onenote",
    64  	"pdf", "application/pdf",
    65  	"pgp", "application/pgp-encrypted",
    66  	"key", "application/pgp-keys",
    67  	"sig", "application/pgp-signature",
    68  	"prf", "application/pics-rules",
    69  	"ps", "application/postscript",
    70  	"ai", "application/postscript",
    71  	"eps", "application/postscript",
    72  	"epsi", "application/postscript",
    73  	"epsf", "application/postscript",
    74  	"eps2", "application/postscript",
    75  	"eps3", "application/postscript",
    76  	"rar", "application/rar",
    77  	"rdf", "application/rdf+xml",
    78  	"rtf", "application/rtf",
    79  	"stl", "application/sla",
    80  	"smi", "application/smil+xml",
    81  	"smil", "application/smil+xml",
    82  	"xhtml", "application/xhtml+xml",
    83  	"xht", "application/xhtml+xml",
    84  	"xml", "application/xml",
    85  	"xsd", "application/xml",
    86  	"xsl", "application/xslt+xml",
    87  	"xslt", "application/xslt+xml",
    88  	"xspf", "application/xspf+xml",
    89  	"zip", "application/zip",
    90  	"apk", "application/vnd.android.package-archive",
    91  	"cdy", "application/vnd.cinderella",
    92  	"kml", "application/vnd.google-earth.kml+xml",
    93  	"kmz", "application/vnd.google-earth.kmz",
    94  	"xul", "application/vnd.mozilla.xul+xml",
    95  	"xls", "application/vnd.ms-excel",
    96  	"xlb", "application/vnd.ms-excel",
    97  	"xlt", "application/vnd.ms-excel",
    98  	"xlam", "application/vnd.ms-excel.addin.macroEnabled.12",
    99  	"xlsb", "application/vnd.ms-excel.sheet.binary.macroEnabled.12",
   100  	"xlsm", "application/vnd.ms-excel.sheet.macroEnabled.12",
   101  	"xltm", "application/vnd.ms-excel.template.macroEnabled.12",
   102  	"eot", "application/vnd.ms-fontobject",
   103  	"thmx", "application/vnd.ms-officetheme",
   104  	"cat", "application/vnd.ms-pki.seccat",
   105  	"stl", "#application/vnd.ms-pki.stl",
   106  	"ppt", "application/vnd.ms-powerpoint",
   107  	"pps", "application/vnd.ms-powerpoint",
   108  	"ppam", "application/vnd.ms-powerpoint.addin.macroEnabled.12",
   109  	"pptm", "application/vnd.ms-powerpoint.presentation.macroEnabled.12",
   110  	"sldm", "application/vnd.ms-powerpoint.slide.macroEnabled.12",
   111  	"ppsm", "application/vnd.ms-powerpoint.slideshow.macroEnabled.12",
   112  	"potm", "application/vnd.ms-powerpoint.template.macroEnabled.12",
   113  	"docm", "application/vnd.ms-word.document.macroEnabled.12",
   114  	"dotm", "application/vnd.ms-word.template.macroEnabled.12",
   115  	"odc", "application/vnd.oasis.opendocument.chart",
   116  	"odb", "application/vnd.oasis.opendocument.database",
   117  	"odf", "application/vnd.oasis.opendocument.formula",
   118  	"odg", "application/vnd.oasis.opendocument.graphics",
   119  	"otg", "application/vnd.oasis.opendocument.graphics-template",
   120  	"odi", "application/vnd.oasis.opendocument.image",
   121  	"odp", "application/vnd.oasis.opendocument.presentation",
   122  	"otp", "application/vnd.oasis.opendocument.presentation-template",
   123  	"ods", "application/vnd.oasis.opendocument.spreadsheet",
   124  	"ots", "application/vnd.oasis.opendocument.spreadsheet-template",
   125  	"odt", "application/vnd.oasis.opendocument.text",
   126  	"odm", "application/vnd.oasis.opendocument.text-master",
   127  	"ott", "application/vnd.oasis.opendocument.text-template",
   128  	"oth", "application/vnd.oasis.opendocument.text-web",
   129  	"pptx", "application/vnd.openxmlformats-officedocument.presentationml.presentation",
   130  	"sldx", "application/vnd.openxmlformats-officedocument.presentationml.slide",
   131  	"ppsx", "application/vnd.openxmlformats-officedocument.presentationml.slideshow",
   132  	"potx", "application/vnd.openxmlformats-officedocument.presentationml.template",
   133  	"xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
   134  	"xltx", "application/vnd.openxmlformats-officedocument.spreadsheetml.template",
   135  	"docx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
   136  	"dotx", "application/vnd.openxmlformats-officedocument.wordprocessingml.template",
   137  	"cod", "application/vnd.rim.cod",
   138  	"mmf", "application/vnd.smaf",
   139  	"sdc", "application/vnd.stardivision.calc",
   140  	"sds", "application/vnd.stardivision.chart",
   141  	"sda", "application/vnd.stardivision.draw",
   142  	"sdd", "application/vnd.stardivision.impress",
   143  	"sdf", "application/vnd.stardivision.math",
   144  	"sdw", "application/vnd.stardivision.writer",
   145  	"sgl", "application/vnd.stardivision.writer-global",
   146  	"sxc", "application/vnd.sun.xml.calc",
   147  	"stc", "application/vnd.sun.xml.calc.template",
   148  	"sxd", "application/vnd.sun.xml.draw",
   149  	"std", "application/vnd.sun.xml.draw.template",
   150  	"sxi", "application/vnd.sun.xml.impress",
   151  	"sti", "application/vnd.sun.xml.impress.template",
   152  	"sxm", "application/vnd.sun.xml.math",
   153  	"sxw", "application/vnd.sun.xml.writer",
   154  	"sxg", "application/vnd.sun.xml.writer.global",
   155  	"stw", "application/vnd.sun.xml.writer.template",
   156  	"sis", "application/vnd.symbian.install",
   157  	"cap", "application/vnd.tcpdump.pcap",
   158  	"pcap", "application/vnd.tcpdump.pcap",
   159  	"vsd", "application/vnd.visio",
   160  	"wbxml", "application/vnd.wap.wbxml",
   161  	"wmlc", "application/vnd.wap.wmlc",
   162  	"wmlsc", "application/vnd.wap.wmlscriptc",
   163  	"wpd", "application/vnd.wordperfect",
   164  	"wp5", "application/vnd.wordperfect5.1",
   165  	"wk", "application/x-123",
   166  	"7z", "application/x-7z-compressed",
   167  	"abw", "application/x-abiword",
   168  	"dmg", "application/x-apple-diskimage",
   169  	"bcpio", "application/x-bcpio",
   170  	"torrent", "application/x-bittorrent",
   171  	"cab", "application/x-cab",
   172  	"cbr", "application/x-cbr",
   173  	"cbz", "application/x-cbz",
   174  	"cdf", "application/x-cdf",
   175  	"cda", "application/x-cdf",
   176  	"vcd", "application/x-cdlink",
   177  	"pgn", "application/x-chess-pgn",
   178  	"mph", "application/x-comsol",
   179  	"cpio", "application/x-cpio",
   180  	"csh", "application/x-csh",
   181  	"deb", "application/x-debian-package",
   182  	"udeb", "application/x-debian-package",
   183  	"dcr", "application/x-director",
   184  	"dir", "application/x-director",
   185  	"dxr", "application/x-director",
   186  	"dms", "application/x-dms",
   187  	"wad", "application/x-doom",
   188  	"dvi", "application/x-dvi",
   189  	"pfa", "application/x-font",
   190  	"pfb", "application/x-font",
   191  	"gsf", "application/x-font",
   192  	"pcf", "application/x-font",
   193  	"woff", "application/x-font-woff",
   194  	"mm", "application/x-freemind",
   195  	"spl", "application/x-futuresplash",
   196  	"gan", "application/x-ganttproject",
   197  	"gnumeric", "application/x-gnumeric",
   198  	"sgf", "application/x-go-sgf",
   199  	"gcf", "application/x-graphing-calculator",
   200  	"gtar", "application/x-gtar",
   201  	"tgz", "application/x-gtar-compressed",
   202  	"taz", "application/x-gtar-compressed",
   203  	"hdf", "application/x-hdf",
   204  	"rhtml", "#application/x-httpd-eruby",
   205  	"phtml", "#application/x-httpd-php",
   206  	"pht", "#application/x-httpd-php",
   207  	"php", "#application/x-httpd-php",
   208  	"phps", "#application/x-httpd-php-source",
   209  	"php3", "#application/x-httpd-php3",
   210  	"php3p", "#application/x-httpd-php3-preprocessed",
   211  	"php4", "#application/x-httpd-php4",
   212  	"php5", "#application/x-httpd-php5",
   213  	"hwp", "application/x-hwp",
   214  	"ica", "application/x-ica",
   215  	"info", "application/x-info",
   216  	"ins", "application/x-internet-signup",
   217  	"isp", "application/x-internet-signup",
   218  	"iii", "application/x-iphone",
   219  	"iso", "application/x-iso9660-image",
   220  	"jam", "application/x-jam",
   221  	"jnlp", "application/x-java-jnlp-file",
   222  	"jmz", "application/x-jmol",
   223  	"chrt", "application/x-kchart",
   224  	"kil", "application/x-killustrator",
   225  	"skp", "application/x-koan",
   226  	"skd", "application/x-koan",
   227  	"skt", "application/x-koan",
   228  	"skm", "application/x-koan",
   229  	"kpr", "application/x-kpresenter",
   230  	"kpt", "application/x-kpresenter",
   231  	"ksp", "application/x-kspread",
   232  	"kwd", "application/x-kword",
   233  	"kwt", "application/x-kword",
   234  	"latex", "application/x-latex",
   235  	"lha", "application/x-lha",
   236  	"lyx", "application/x-lyx",
   237  	"lzh", "application/x-lzh",
   238  	"lzx", "application/x-lzx",
   239  	"frm", "application/x-maker",
   240  	"maker", "application/x-maker",
   241  	"frame", "application/x-maker",
   242  	"fm", "application/x-maker",
   243  	"fb", "application/x-maker",
   244  	"book", "application/x-maker",
   245  	"fbdoc", "application/x-maker",
   246  	"md5", "application/x-md5",
   247  	"mif", "application/x-mif",
   248  	"m3u8", "application/x-mpegURL",
   249  	"wmd", "application/x-ms-wmd",
   250  	"wmz", "application/x-ms-wmz",
   251  	"com", "application/x-msdos-program",
   252  	"exe", "application/x-msdos-program",
   253  	"bat", "application/x-msdos-program",
   254  	"dll", "application/x-msdos-program",
   255  	"msi", "application/x-msi",
   256  	"nc", "application/x-netcdf",
   257  	"pac", "application/x-ns-proxy-autoconfig",
   258  	"dat", "application/x-ns-proxy-autoconfig",
   259  	"nwc", "application/x-nwc",
   260  	"o", "application/x-object",
   261  	"oza", "application/x-oz-application",
   262  	"p7r", "application/x-pkcs7-certreqresp",
   263  	"crl", "application/x-pkcs7-crl",
   264  	"pyc", "application/x-python-code",
   265  	"pyo", "application/x-python-code",
   266  	"qgs", "application/x-qgis",
   267  	"shp", "application/x-qgis",
   268  	"shx", "application/x-qgis",
   269  	"qtl", "application/x-quicktimeplayer",
   270  	"rdp", "application/x-rdp",
   271  	"rpm", "application/x-redhat-package-manager",
   272  	"rss", "application/x-rss+xml",
   273  	"rb", "application/x-ruby",
   274  	"sci", "application/x-scilab",
   275  	"sce", "application/x-scilab",
   276  	"xcos", "application/x-scilab-xcos",
   277  	"sh", "application/x-sh",
   278  	"sha1", "application/x-sha1",
   279  	"shar", "application/x-shar",
   280  	"swf", "application/x-shockwave-flash",
   281  	"swfl", "application/x-shockwave-flash",
   282  	"scr", "application/x-silverlight",
   283  	"sql", "application/x-sql",
   284  	"sit", "application/x-stuffit",
   285  	"sitx", "application/x-stuffit",
   286  	"sv4cpio", "application/x-sv4cpio",
   287  	"sv4crc", "application/x-sv4crc",
   288  	"tar", "application/x-tar",
   289  	"tcl", "application/x-tcl",
   290  	"gf", "application/x-tex-gf",
   291  	"pk", "application/x-tex-pk",
   292  	"texinfo", "application/x-texinfo",
   293  	"texi", "application/x-texinfo",
   294  	"t", "application/x-troff",
   295  	"tr", "application/x-troff",
   296  	"roff", "application/x-troff",
   297  	"man", "application/x-troff-man",
   298  	"me", "application/x-troff-me",
   299  	"ms", "application/x-troff-ms",
   300  	"ustar", "application/x-ustar",
   301  	"src", "application/x-wais-source",
   302  	"wz", "application/x-wingz",
   303  	"crt", "application/x-x509-ca-cert",
   304  	"xcf", "application/x-xcf",
   305  	"fig", "application/x-xfig",
   306  	"xpi", "application/x-xpinstall",
   307  	"amr", "audio/amr",
   308  	"awb", "audio/amr-wb",
   309  	"axa", "audio/annodex",
   310  	"au", "audio/basic",
   311  	"snd", "audio/basic",
   312  	"csd", "audio/csound",
   313  	"orc", "audio/csound",
   314  	"sco", "audio/csound",
   315  	"flac", "audio/flac",
   316  	"mid", "audio/midi",
   317  	"midi", "audio/midi",
   318  	"kar", "audio/midi",
   319  	"mpga", "audio/mpeg",
   320  	"mpega", "audio/mpeg",
   321  	"mp2", "audio/mpeg",
   322  	"mp3", "audio/mpeg",
   323  	"m4a", "audio/mpeg",
   324  	"m3u", "audio/mpegurl",
   325  	"oga", "audio/ogg",
   326  	"ogg", "audio/ogg",
   327  	"opus", "audio/ogg",
   328  	"spx", "audio/ogg",
   329  	"sid", "audio/prs.sid",
   330  	"aif", "audio/x-aiff",
   331  	"aiff", "audio/x-aiff",
   332  	"aifc", "audio/x-aiff",
   333  	"gsm", "audio/x-gsm",
   334  	"m3u", "audio/x-mpegurl",
   335  	"wma", "audio/x-ms-wma",
   336  	"wax", "audio/x-ms-wax",
   337  	"ra", "audio/x-pn-realaudio",
   338  	"rm", "audio/x-pn-realaudio",
   339  	"ram", "audio/x-pn-realaudio",
   340  	"ra", "audio/x-realaudio",
   341  	"pls", "audio/x-scpls",
   342  	"sd2", "audio/x-sd2",
   343  	"wav", "audio/x-wav",
   344  	"alc", "chemical/x-alchemy",
   345  	"cac", "chemical/x-cache",
   346  	"cache", "chemical/x-cache",
   347  	"csf", "chemical/x-cache-csf",
   348  	"cbin", "chemical/x-cactvs-binary",
   349  	"cascii", "chemical/x-cactvs-binary",
   350  	"ctab", "chemical/x-cactvs-binary",
   351  	"cdx", "chemical/x-cdx",
   352  	"cer", "chemical/x-cerius",
   353  	"c3d", "chemical/x-chem3d",
   354  	"chm", "chemical/x-chemdraw",
   355  	"cif", "chemical/x-cif",
   356  	"cmdf", "chemical/x-cmdf",
   357  	"cml", "chemical/x-cml",
   358  	"cpa", "chemical/x-compass",
   359  	"bsd", "chemical/x-crossfire",
   360  	"csml", "chemical/x-csml",
   361  	"csm", "chemical/x-csml",
   362  	"ctx", "chemical/x-ctx",
   363  	"cxf", "chemical/x-cxf",
   364  	"cef", "chemical/x-cxf",
   365  	"smi", "#chemical/x-daylight-smiles",
   366  	"emb", "chemical/x-embl-dl-nucleotide",
   367  	"embl", "chemical/x-embl-dl-nucleotide",
   368  	"spc", "chemical/x-galactic-spc",
   369  	"inp", "chemical/x-gamess-input",
   370  	"gam", "chemical/x-gamess-input",
   371  	"gamin", "chemical/x-gamess-input",
   372  	"fch", "chemical/x-gaussian-checkpoint",
   373  	"fchk", "chemical/x-gaussian-checkpoint",
   374  	"cub", "chemical/x-gaussian-cube",
   375  	"gau", "chemical/x-gaussian-input",
   376  	"gjc", "chemical/x-gaussian-input",
   377  	"gjf", "chemical/x-gaussian-input",
   378  	"gal", "chemical/x-gaussian-log",
   379  	"gcg", "chemical/x-gcg8-sequence",
   380  	"gen", "chemical/x-genbank",
   381  	"hin", "chemical/x-hin",
   382  	"istr", "chemical/x-isostar",
   383  	"ist", "chemical/x-isostar",
   384  	"jdx", "chemical/x-jcamp-dx",
   385  	"dx", "chemical/x-jcamp-dx",
   386  	"kin", "chemical/x-kinemage",
   387  	"mcm", "chemical/x-macmolecule",
   388  	"mmd", "chemical/x-macromodel-input",
   389  	"mmod", "chemical/x-macromodel-input",
   390  	"mol", "chemical/x-mdl-molfile",
   391  	"rd", "chemical/x-mdl-rdfile",
   392  	"rxn", "chemical/x-mdl-rxnfile",
   393  	"sd", "chemical/x-mdl-sdfile",
   394  	"sdf", "chemical/x-mdl-sdfile",
   395  	"tgf", "chemical/x-mdl-tgf",
   396  	"mif", "#chemical/x-mif",
   397  	"mcif", "chemical/x-mmcif",
   398  	"mol2", "chemical/x-mol2",
   399  	"b", "chemical/x-molconn-Z",
   400  	"gpt", "chemical/x-mopac-graph",
   401  	"mop", "chemical/x-mopac-input",
   402  	"mopcrt", "chemical/x-mopac-input",
   403  	"mpc", "chemical/x-mopac-input",
   404  	"zmt", "chemical/x-mopac-input",
   405  	"moo", "chemical/x-mopac-out",
   406  	"mvb", "chemical/x-mopac-vib",
   407  	"asn", "chemical/x-ncbi-asn1",
   408  	"prt", "chemical/x-ncbi-asn1-ascii",
   409  	"ent", "chemical/x-ncbi-asn1-ascii",
   410  	"val", "chemical/x-ncbi-asn1-binary",
   411  	"aso", "chemical/x-ncbi-asn1-binary",
   412  	"asn", "chemical/x-ncbi-asn1-spec",
   413  	"pdb", "chemical/x-pdb",
   414  	"ent", "chemical/x-pdb",
   415  	"ros", "chemical/x-rosdal",
   416  	"sw", "chemical/x-swissprot",
   417  	"vms", "chemical/x-vamas-iso14976",
   418  	"vmd", "chemical/x-vmd",
   419  	"xtel", "chemical/x-xtel",
   420  	"xyz", "chemical/x-xyz",
   421  	"gif", "image/gif",
   422  	"ief", "image/ief",
   423  	"jp2", "image/jp2",
   424  	"jpg2", "image/jp2",
   425  	"jpeg", "image/jpeg",
   426  	"jpg", "image/jpeg",
   427  	"jpe", "image/jpeg",
   428  	"jpm", "image/jpm",
   429  	"jpx", "image/jpx",
   430  	"jpf", "image/jpx",
   431  	"pcx", "image/pcx",
   432  	"png", "image/png",
   433  	"svg", "image/svg+xml",
   434  	"svgz", "image/svg+xml",
   435  	"tiff", "image/tiff",
   436  	"tif", "image/tiff",
   437  	"djvu", "image/vnd.djvu",
   438  	"djv", "image/vnd.djvu",
   439  	"ico", "image/vnd.microsoft.icon",
   440  	"wbmp", "image/vnd.wap.wbmp",
   441  	"cr2", "image/x-canon-cr2",
   442  	"crw", "image/x-canon-crw",
   443  	"ras", "image/x-cmu-raster",
   444  	"cdr", "image/x-coreldraw",
   445  	"pat", "image/x-coreldrawpattern",
   446  	"cdt", "image/x-coreldrawtemplate",
   447  	"cpt", "image/x-corelphotopaint",
   448  	"erf", "image/x-epson-erf",
   449  	"art", "image/x-jg",
   450  	"jng", "image/x-jng",
   451  	"bmp", "image/x-ms-bmp",
   452  	"nef", "image/x-nikon-nef",
   453  	"orf", "image/x-olympus-orf",
   454  	"psd", "image/x-photoshop",
   455  	"pnm", "image/x-portable-anymap",
   456  	"pbm", "image/x-portable-bitmap",
   457  	"pgm", "image/x-portable-graymap",
   458  	"ppm", "image/x-portable-pixmap",
   459  	"rgb", "image/x-rgb",
   460  	"xbm", "image/x-xbitmap",
   461  	"xpm", "image/x-xpixmap",
   462  	"xwd", "image/x-xwindowdump",
   463  	"eml", "message/rfc822",
   464  	"igs", "model/iges",
   465  	"iges", "model/iges",
   466  	"msh", "model/mesh",
   467  	"mesh", "model/mesh",
   468  	"silo", "model/mesh",
   469  	"wrl", "model/vrml",
   470  	"vrml", "model/vrml",
   471  	"x3dv", "model/x3d+vrml",
   472  	"x3d", "model/x3d+xml",
   473  	"x3db", "model/x3d+binary",
   474  	"appcache", "text/cache-manifest",
   475  	"ics", "text/calendar",
   476  	"icz", "text/calendar",
   477  	"css", "text/css",
   478  	"csv", "text/csv",
   479  	"323", "text/h323",
   480  	"html", "text/html",
   481  	"htm", "text/html",
   482  	"shtml", "text/html",
   483  	"uls", "text/iuls",
   484  	"mml", "text/mathml",
   485  	"asc", "text/plain",
   486  	"txt", "text/plain",
   487  	"text", "text/plain",
   488  	"pot", "text/plain",
   489  	"brf", "text/plain",
   490  	"srt", "text/plain",
   491  	"log", "text/plain",
   492  	"rtx", "text/richtext",
   493  	"sct", "text/scriptlet",
   494  	"wsc", "text/scriptlet",
   495  	"tm", "text/texmacs",
   496  	"tsv", "text/tab-separated-values",
   497  	"ttl", "text/turtle",
   498  	"jad", "text/vnd.sun.j2me.app-descriptor",
   499  	"wml", "text/vnd.wap.wml",
   500  	"wmls", "text/vnd.wap.wmlscript",
   501  	"bib", "text/x-bibtex",
   502  	"boo", "text/x-boo",
   503  	"h", "text/x-chdr",
   504  	"htc", "text/x-component",
   505  	"csh", "text/x-csh",
   506  	"c", "text/x-csrc",
   507  	"d", "text/x-dsrc",
   508  	"diff", "text/x-diff",
   509  	"patch", "text/x-diff",
   510  	"hs", "text/x-haskell",
   511  	"java", "text/x-java",
   512  	"ly", "text/x-lilypond",
   513  	"lhs", "text/x-literate-haskell",
   514  	"moc", "text/x-moc",
   515  	"p", "text/x-pascal",
   516  	"pas", "text/x-pascal",
   517  	"gcd", "text/x-pcs-gcd",
   518  	"pl", "text/x-perl",
   519  	"pm", "text/x-perl",
   520  	"py", "text/x-python",
   521  	"scala", "text/x-scala",
   522  	"etx", "text/x-setext",
   523  	"sfv", "text/x-sfv",
   524  	"sh", "text/x-sh",
   525  	"tcl", "text/x-tcl",
   526  	"tk", "text/x-tcl",
   527  	"tex", "text/x-tex",
   528  	"ltx", "text/x-tex",
   529  	"sty", "text/x-tex",
   530  	"cls", "text/x-tex",
   531  	"vcs", "text/x-vcalendar",
   532  	"vcf", "text/x-vcard",
   533  	"yml", "text/x-yaml",
   534  	"3gp", "video/3gpp",
   535  	"axv", "video/annodex",
   536  	"dl", "video/dl",
   537  	"dif", "video/dv",
   538  	"dv", "video/dv",
   539  	"fli", "video/fli",
   540  	"gl", "video/gl",
   541  	"mpeg", "video/mpeg",
   542  	"mpg", "video/mpeg",
   543  	"mpe", "video/mpeg",
   544  	"ts", "video/MP2T",
   545  	"mp4", "video/mp4",
   546  	"qt", "video/quicktime",
   547  	"mov", "video/quicktime",
   548  	"ogv", "video/ogg",
   549  	"webm", "video/webm",
   550  	"mxu", "video/vnd.mpegurl",
   551  	"flv", "video/x-flv",
   552  	"lsf", "video/x-la-asf",
   553  	"lsx", "video/x-la-asf",
   554  	"mng", "video/x-mng",
   555  	"asf", "video/x-ms-asf",
   556  	"asx", "video/x-ms-asf",
   557  	"wm", "video/x-ms-wm",
   558  	"wmv", "video/x-ms-wmv",
   559  	"wmx", "video/x-ms-wmx",
   560  	"wvx", "video/x-ms-wvx",
   561  	"avi", "video/x-msvideo",
   562  	"movie", "video/x-sgi-movie",
   563  	"mpv", "video/x-matroska",
   564  	"mkv", "video/x-matroska",
   565  	"ice", "x-conference/x-cooltalk",
   566  	"sisx", "x-epoc/x-sisx-app",
   567  	"vrm", "x-world/x-vrml",
   568  	"vrml", "x-world/x-vrml",
   569  	"wrl", "x-world/x-vrml",
   570  }