From 28fb66118b743a14c843514c87e32418600b2f9f Mon Sep 17 00:00:00 2001 From: Hunam Date: Thu, 2 Jun 2022 17:07:25 +0200 Subject: [PATCH] vlib: add `net.http.mime` (#14516) --- vlib/net/http/mime/build.vsh | 33 + vlib/net/http/mime/db.v | 15013 +++++++++++++++++++++++++++++++ vlib/net/http/mime/mime.v | 39 + vlib/net/http/mime/mime_test.v | 29 + vlib/vweb/vweb.v | 2 +- 5 files changed, 15115 insertions(+), 1 deletion(-) create mode 100755 vlib/net/http/mime/build.vsh create mode 100644 vlib/net/http/mime/db.v create mode 100644 vlib/net/http/mime/mime.v create mode 100644 vlib/net/http/mime/mime_test.v diff --git a/vlib/net/http/mime/build.vsh b/vlib/net/http/mime/build.vsh new file mode 100755 index 0000000000..db45bd7856 --- /dev/null +++ b/vlib/net/http/mime/build.vsh @@ -0,0 +1,33 @@ +import net.http +import json + +struct MimeType { + source string + extensions []string + compressible bool + charset string +} + +fn main() { + mt_json := http.get('https://raw.githubusercontent.com/jshttp/mime-db/master/db.json')? + mt_map := json.decode(map[string]MimeType, mt_json.text)? + + mut ext_to_mt_str := map[string]string{} + for mt_str, mt in mt_map { + for ext in mt.extensions { + ext_to_mt_str[ext] = mt_str + } + } + + write_file('db.v', ' + module mime + + // FILE AUTOGENERATED BY `build.vsh` - DO NOT MANUALLY EDIT + + const ( + db = $mt_map + ext_to_mt_str = $ext_to_mt_str + ) + ')? + execute('${@VEXE} fmt -w db.v') +} diff --git a/vlib/net/http/mime/db.v b/vlib/net/http/mime/db.v new file mode 100644 index 0000000000..b68e04d926 --- /dev/null +++ b/vlib/net/http/mime/db.v @@ -0,0 +1,15013 @@ +module mime + +// FILE AUTOGENERATED BY `build.vsh` - DO NOT MANUALLY EDIT + +const ( + db = { + 'application/1d-interleaved-parityfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/3gpdash-qoe-report+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/3gpp-ims+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/3gpphal+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/3gpphalforms+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/a2l': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/ace+cbor': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/ace+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/activemessage': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/activity+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/aif+cbor': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/aif+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-cdni+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-cdnifilter+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-costmap+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-costmapfilter+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-directory+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-endpointcost+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-endpointcostparams+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-endpointprop+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-endpointpropparams+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-error+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-networkmap+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-networkmapfilter+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-propmap+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-propmapparams+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-updatestreamcontrol+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/alto-updatestreamparams+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/aml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/andrew-inset': MimeType{ + source: 'iana' + extensions: ['ez'] + compressible: false + charset: '' + } + 'application/applefile': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/applixware': MimeType{ + source: 'apache' + extensions: ['aw'] + compressible: false + charset: '' + } + 'application/at+jwt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/atf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/atfx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/atom+xml': MimeType{ + source: 'iana' + extensions: ['atom'] + compressible: true + charset: '' + } + 'application/atomcat+xml': MimeType{ + source: 'iana' + extensions: ['atomcat'] + compressible: true + charset: '' + } + 'application/atomdeleted+xml': MimeType{ + source: 'iana' + extensions: ['atomdeleted'] + compressible: true + charset: '' + } + 'application/atomicmail': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/atomsvc+xml': MimeType{ + source: 'iana' + extensions: ['atomsvc'] + compressible: true + charset: '' + } + 'application/atsc-dwd+xml': MimeType{ + source: 'iana' + extensions: ['dwd'] + compressible: true + charset: '' + } + 'application/atsc-dynamic-event-message': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/atsc-held+xml': MimeType{ + source: 'iana' + extensions: ['held'] + compressible: true + charset: '' + } + 'application/atsc-rdt+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/atsc-rsat+xml': MimeType{ + source: 'iana' + extensions: ['rsat'] + compressible: true + charset: '' + } + 'application/atxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/auth-policy+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/bacnet-xdd+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/batch-smtp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/bdoc': MimeType{ + source: '' + extensions: ['bdoc'] + compressible: false + charset: '' + } + 'application/beep+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/calendar+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/calendar+xml': MimeType{ + source: 'iana' + extensions: ['xcs'] + compressible: true + charset: '' + } + 'application/call-completion': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/cals-1840': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/captive+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/cbor': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/cbor-seq': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/cccex': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/ccmp+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/ccxml+xml': MimeType{ + source: 'iana' + extensions: ['ccxml'] + compressible: true + charset: '' + } + 'application/cda+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/cdfx+xml': MimeType{ + source: 'iana' + extensions: ['cdfx'] + compressible: true + charset: '' + } + 'application/cdmi-capability': MimeType{ + source: 'iana' + extensions: ['cdmia'] + compressible: false + charset: '' + } + 'application/cdmi-container': MimeType{ + source: 'iana' + extensions: ['cdmic'] + compressible: false + charset: '' + } + 'application/cdmi-domain': MimeType{ + source: 'iana' + extensions: ['cdmid'] + compressible: false + charset: '' + } + 'application/cdmi-object': MimeType{ + source: 'iana' + extensions: ['cdmio'] + compressible: false + charset: '' + } + 'application/cdmi-queue': MimeType{ + source: 'iana' + extensions: ['cdmiq'] + compressible: false + charset: '' + } + 'application/cdni': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/cea': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/cea-2018+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/cellml+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/cfw': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/city+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/clr': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/clue+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/clue_info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/cms': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/cnrp+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/coap-group+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/coap-payload': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/commonground': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/conference-info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/cose': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/cose-key': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/cose-key-set': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/cpl+xml': MimeType{ + source: 'iana' + extensions: ['cpl'] + compressible: true + charset: '' + } + 'application/csrattrs': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/csta+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/cstadata+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/csvm+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/cu-seeme': MimeType{ + source: 'apache' + extensions: ['cu'] + compressible: false + charset: '' + } + 'application/cwl': MimeType{ + source: 'iana' + extensions: ['cwl'] + compressible: false + charset: '' + } + 'application/cwl+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/cwt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/cybercash': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/dart': MimeType{ + source: '' + extensions: [] + compressible: true + charset: '' + } + 'application/dash+xml': MimeType{ + source: 'iana' + extensions: ['mpd'] + compressible: true + charset: '' + } + 'application/dash-patch+xml': MimeType{ + source: 'iana' + extensions: ['mpp'] + compressible: true + charset: '' + } + 'application/dashdelta': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/davmount+xml': MimeType{ + source: 'iana' + extensions: ['davmount'] + compressible: true + charset: '' + } + 'application/dca-rft': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/dcd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/dec-dx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/dialog-info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/dicom': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/dicom+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/dicom+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/dii': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/dit': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/dns': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/dns+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/dns-message': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/docbook+xml': MimeType{ + source: 'apache' + extensions: ['dbk'] + compressible: true + charset: '' + } + 'application/dots+cbor': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/dskpp+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/dssc+der': MimeType{ + source: 'iana' + extensions: ['dssc'] + compressible: false + charset: '' + } + 'application/dssc+xml': MimeType{ + source: 'iana' + extensions: ['xdssc'] + compressible: true + charset: '' + } + 'application/dvcs': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/ecmascript': MimeType{ + source: 'apache' + extensions: ['ecma'] + compressible: true + charset: '' + } + 'application/edi-consent': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/edi-x12': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/edifact': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/efi': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/elm+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/elm+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/emergencycalldata.cap+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/emergencycalldata.comment+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/emergencycalldata.control+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/emergencycalldata.deviceinfo+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/emergencycalldata.ecall.msd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/emergencycalldata.providerinfo+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/emergencycalldata.serviceinfo+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/emergencycalldata.subscriberinfo+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/emergencycalldata.veds+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/emma+xml': MimeType{ + source: 'iana' + extensions: ['emma'] + compressible: true + charset: '' + } + 'application/emotionml+xml': MimeType{ + source: 'iana' + extensions: ['emotionml'] + compressible: true + charset: '' + } + 'application/encaprtp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/epp+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/epub+zip': MimeType{ + source: 'iana' + extensions: ['epub'] + compressible: false + charset: '' + } + 'application/eshop': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/exi': MimeType{ + source: 'iana' + extensions: ['exi'] + compressible: false + charset: '' + } + 'application/expect-ct-report+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/express': MimeType{ + source: 'iana' + extensions: ['exp'] + compressible: false + charset: '' + } + 'application/fastinfoset': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/fastsoap': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/fdf': MimeType{ + source: 'iana' + extensions: ['fdf'] + compressible: false + charset: '' + } + 'application/fdt+xml': MimeType{ + source: 'iana' + extensions: ['fdt'] + compressible: true + charset: '' + } + 'application/fhir+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/fhir+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/fido.trusted-apps+json': MimeType{ + source: '' + extensions: [] + compressible: true + charset: '' + } + 'application/fits': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/flexfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/font-sfnt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/font-tdpfr': MimeType{ + source: 'iana' + extensions: ['pfr'] + compressible: false + charset: '' + } + 'application/font-woff': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/framework-attributes+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/geo+json': MimeType{ + source: 'iana' + extensions: ['geojson'] + compressible: true + charset: '' + } + 'application/geo+json-seq': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/geopackage+sqlite3': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/geoxacml+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/gltf-buffer': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/gml+xml': MimeType{ + source: 'iana' + extensions: ['gml'] + compressible: true + charset: '' + } + 'application/gpx+xml': MimeType{ + source: 'apache' + extensions: ['gpx'] + compressible: true + charset: '' + } + 'application/gxf': MimeType{ + source: 'apache' + extensions: ['gxf'] + compressible: false + charset: '' + } + 'application/gzip': MimeType{ + source: 'iana' + extensions: ['gz'] + compressible: false + charset: '' + } + 'application/h224': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/held+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/hjson': MimeType{ + source: '' + extensions: ['hjson'] + compressible: false + charset: '' + } + 'application/hl7v2+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/http': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/hyperstudio': MimeType{ + source: 'iana' + extensions: ['stk'] + compressible: false + charset: '' + } + 'application/ibe-key-request+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/ibe-pkg-reply+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/ibe-pp-data': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/iges': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/im-iscomposing+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/index': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/index.cmd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/index.obj': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/index.response': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/index.vnd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/inkml+xml': MimeType{ + source: 'iana' + extensions: ['ink', 'inkml'] + compressible: true + charset: '' + } + 'application/iotp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/ipfix': MimeType{ + source: 'iana' + extensions: ['ipfix'] + compressible: false + charset: '' + } + 'application/ipp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/isup': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/its+xml': MimeType{ + source: 'iana' + extensions: ['its'] + compressible: true + charset: '' + } + 'application/java-archive': MimeType{ + source: 'apache' + extensions: ['jar', 'war', 'ear'] + compressible: false + charset: '' + } + 'application/java-serialized-object': MimeType{ + source: 'apache' + extensions: ['ser'] + compressible: false + charset: '' + } + 'application/java-vm': MimeType{ + source: 'apache' + extensions: ['class'] + compressible: false + charset: '' + } + 'application/javascript': MimeType{ + source: 'apache' + extensions: ['js'] + compressible: true + charset: 'UTF-8' + } + 'application/jf2feed+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/jose': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/jose+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/jrd+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/jscalendar+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/json': MimeType{ + source: 'iana' + extensions: ['json', 'map'] + compressible: true + charset: 'UTF-8' + } + 'application/json-patch+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/json-seq': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/json5': MimeType{ + source: '' + extensions: ['json5'] + compressible: false + charset: '' + } + 'application/jsonml+json': MimeType{ + source: 'apache' + extensions: ['jsonml'] + compressible: true + charset: '' + } + 'application/jwk+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/jwk-set+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/jwt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/kpml-request+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/kpml-response+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/ld+json': MimeType{ + source: 'iana' + extensions: ['jsonld'] + compressible: true + charset: '' + } + 'application/lgr+xml': MimeType{ + source: 'iana' + extensions: ['lgr'] + compressible: true + charset: '' + } + 'application/link-format': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/linkset': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/linkset+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/load-control+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/lost+xml': MimeType{ + source: 'iana' + extensions: ['lostxml'] + compressible: true + charset: '' + } + 'application/lostsync+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/lpf+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/lxf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/mac-binhex40': MimeType{ + source: 'iana' + extensions: ['hqx'] + compressible: false + charset: '' + } + 'application/mac-compactpro': MimeType{ + source: 'apache' + extensions: ['cpt'] + compressible: false + charset: '' + } + 'application/macwriteii': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/mads+xml': MimeType{ + source: 'iana' + extensions: ['mads'] + compressible: true + charset: '' + } + 'application/manifest+json': MimeType{ + source: 'iana' + extensions: ['webmanifest'] + compressible: true + charset: 'UTF-8' + } + 'application/marc': MimeType{ + source: 'iana' + extensions: ['mrc'] + compressible: false + charset: '' + } + 'application/marcxml+xml': MimeType{ + source: 'iana' + extensions: ['mrcx'] + compressible: true + charset: '' + } + 'application/mathematica': MimeType{ + source: 'iana' + extensions: ['ma', 'nb', 'mb'] + compressible: false + charset: '' + } + 'application/mathml+xml': MimeType{ + source: 'iana' + extensions: ['mathml'] + compressible: true + charset: '' + } + 'application/mathml-content+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mathml-presentation+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mbms-associated-procedure-description+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mbms-deregister+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mbms-envelope+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mbms-msk+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mbms-msk-response+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mbms-protection-description+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mbms-reception-report+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mbms-register+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mbms-register-response+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mbms-schedule+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mbms-user-service-description+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mbox': MimeType{ + source: 'iana' + extensions: ['mbox'] + compressible: false + charset: '' + } + 'application/media-policy-dataset+xml': MimeType{ + source: 'iana' + extensions: ['mpf'] + compressible: true + charset: '' + } + 'application/media_control+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mediaservercontrol+xml': MimeType{ + source: 'iana' + extensions: ['mscml'] + compressible: true + charset: '' + } + 'application/merge-patch+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/metalink+xml': MimeType{ + source: 'apache' + extensions: ['metalink'] + compressible: true + charset: '' + } + 'application/metalink4+xml': MimeType{ + source: 'iana' + extensions: ['meta4'] + compressible: true + charset: '' + } + 'application/mets+xml': MimeType{ + source: 'iana' + extensions: ['mets'] + compressible: true + charset: '' + } + 'application/mf4': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/mikey': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/mipc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/missing-blocks+cbor-seq': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/mmt-aei+xml': MimeType{ + source: 'iana' + extensions: ['maei'] + compressible: true + charset: '' + } + 'application/mmt-usd+xml': MimeType{ + source: 'iana' + extensions: ['musd'] + compressible: true + charset: '' + } + 'application/mods+xml': MimeType{ + source: 'iana' + extensions: ['mods'] + compressible: true + charset: '' + } + 'application/moss-keys': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/moss-signature': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/mosskey-data': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/mosskey-request': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/mp21': MimeType{ + source: 'iana' + extensions: ['m21', 'mp21'] + compressible: false + charset: '' + } + 'application/mp4': MimeType{ + source: 'iana' + extensions: ['mp4s', 'm4p'] + compressible: false + charset: '' + } + 'application/mpeg4-generic': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/mpeg4-iod': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/mpeg4-iod-xmt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/mrb-consumer+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/mrb-publish+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/msc-ivr+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/msc-mixer+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/msword': MimeType{ + source: 'iana' + extensions: ['doc', 'dot'] + compressible: false + charset: '' + } + 'application/mud+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/multipart-core': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/mxf': MimeType{ + source: 'iana' + extensions: ['mxf'] + compressible: false + charset: '' + } + 'application/n-quads': MimeType{ + source: 'iana' + extensions: ['nq'] + compressible: false + charset: '' + } + 'application/n-triples': MimeType{ + source: 'iana' + extensions: ['nt'] + compressible: false + charset: '' + } + 'application/nasdata': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/news-checkgroups': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: 'US-ASCII' + } + 'application/news-groupinfo': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: 'US-ASCII' + } + 'application/news-transmission': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/nlsml+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/node': MimeType{ + source: 'iana' + extensions: ['cjs'] + compressible: false + charset: '' + } + 'application/nss': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/oauth-authz-req+jwt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/oblivious-dns-message': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/ocsp-request': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/ocsp-response': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/octet-stream': MimeType{ + source: 'iana' + extensions: ['bin', 'dms', 'lrf', 'mar', 'so', 'dist', 'distz', 'pkg', 'bpk', 'dump', + 'elc', 'deploy', 'exe', 'dll', 'deb', 'dmg', 'iso', 'img', 'msi', 'msp', 'msm', + 'buffer'] + compressible: false + charset: '' + } + 'application/oda': MimeType{ + source: 'iana' + extensions: ['oda'] + compressible: false + charset: '' + } + 'application/odm+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/odx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/oebps-package+xml': MimeType{ + source: 'iana' + extensions: ['opf'] + compressible: true + charset: '' + } + 'application/ogg': MimeType{ + source: 'iana' + extensions: ['ogx'] + compressible: false + charset: '' + } + 'application/omdoc+xml': MimeType{ + source: 'apache' + extensions: ['omdoc'] + compressible: true + charset: '' + } + 'application/onenote': MimeType{ + source: 'apache' + extensions: ['onetoc', 'onetoc2', 'onetmp', 'onepkg'] + compressible: false + charset: '' + } + 'application/opc-nodeset+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/oscore': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/oxps': MimeType{ + source: 'iana' + extensions: ['oxps'] + compressible: false + charset: '' + } + 'application/p21': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/p21+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/p2p-overlay+xml': MimeType{ + source: 'iana' + extensions: ['relo'] + compressible: true + charset: '' + } + 'application/parityfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/passport': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/patch-ops-error+xml': MimeType{ + source: 'iana' + extensions: ['xer'] + compressible: true + charset: '' + } + 'application/pdf': MimeType{ + source: 'iana' + extensions: ['pdf'] + compressible: false + charset: '' + } + 'application/pdx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/pem-certificate-chain': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/pgp-encrypted': MimeType{ + source: 'iana' + extensions: ['pgp'] + compressible: false + charset: '' + } + 'application/pgp-keys': MimeType{ + source: 'iana' + extensions: ['asc'] + compressible: false + charset: '' + } + 'application/pgp-signature': MimeType{ + source: 'iana' + extensions: ['sig', 'asc'] + compressible: false + charset: '' + } + 'application/pics-rules': MimeType{ + source: 'apache' + extensions: ['prf'] + compressible: false + charset: '' + } + 'application/pidf+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/pidf-diff+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/pkcs10': MimeType{ + source: 'iana' + extensions: ['p10'] + compressible: false + charset: '' + } + 'application/pkcs12': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/pkcs7-mime': MimeType{ + source: 'iana' + extensions: ['p7m', 'p7c'] + compressible: false + charset: '' + } + 'application/pkcs7-signature': MimeType{ + source: 'iana' + extensions: ['p7s'] + compressible: false + charset: '' + } + 'application/pkcs8': MimeType{ + source: 'iana' + extensions: ['p8'] + compressible: false + charset: '' + } + 'application/pkcs8-encrypted': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/pkix-attr-cert': MimeType{ + source: 'iana' + extensions: ['ac'] + compressible: false + charset: '' + } + 'application/pkix-cert': MimeType{ + source: 'iana' + extensions: ['cer'] + compressible: false + charset: '' + } + 'application/pkix-crl': MimeType{ + source: 'iana' + extensions: ['crl'] + compressible: false + charset: '' + } + 'application/pkix-pkipath': MimeType{ + source: 'iana' + extensions: ['pkipath'] + compressible: false + charset: '' + } + 'application/pkixcmp': MimeType{ + source: 'iana' + extensions: ['pki'] + compressible: false + charset: '' + } + 'application/pls+xml': MimeType{ + source: 'iana' + extensions: ['pls'] + compressible: true + charset: '' + } + 'application/poc-settings+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/postscript': MimeType{ + source: 'iana' + extensions: ['ai', 'eps', 'ps'] + compressible: true + charset: '' + } + 'application/ppsp-tracker+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/problem+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/problem+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/provenance+xml': MimeType{ + source: 'iana' + extensions: ['provx'] + compressible: true + charset: '' + } + 'application/prs.alvestrand.titrax-sheet': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/prs.cww': MimeType{ + source: 'iana' + extensions: ['cww'] + compressible: false + charset: '' + } + 'application/prs.cyn': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '7-BIT' + } + 'application/prs.hpub+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/prs.nprend': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/prs.plucker': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/prs.rdf-xml-crypt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/prs.xsf+xml': MimeType{ + source: 'iana' + extensions: ['xsf'] + compressible: true + charset: '' + } + 'application/pskc+xml': MimeType{ + source: 'iana' + extensions: ['pskcxml'] + compressible: true + charset: '' + } + 'application/pvd+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/qsig': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/raml+yaml': MimeType{ + source: '' + extensions: ['raml'] + compressible: true + charset: '' + } + 'application/raptorfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/rdap+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/rdf+xml': MimeType{ + source: 'iana' + extensions: ['rdf', 'owl'] + compressible: true + charset: '' + } + 'application/reginfo+xml': MimeType{ + source: 'iana' + extensions: ['rif'] + compressible: true + charset: '' + } + 'application/relax-ng-compact-syntax': MimeType{ + source: 'iana' + extensions: ['rnc'] + compressible: false + charset: '' + } + 'application/remote-printing': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/reputon+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/resource-lists+xml': MimeType{ + source: 'iana' + extensions: ['rl'] + compressible: true + charset: '' + } + 'application/resource-lists-diff+xml': MimeType{ + source: 'iana' + extensions: ['rld'] + compressible: true + charset: '' + } + 'application/rfc+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/riscos': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/rlmi+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/rls-services+xml': MimeType{ + source: 'iana' + extensions: ['rs'] + compressible: true + charset: '' + } + 'application/route-apd+xml': MimeType{ + source: 'iana' + extensions: ['rapd'] + compressible: true + charset: '' + } + 'application/route-s-tsid+xml': MimeType{ + source: 'iana' + extensions: ['sls'] + compressible: true + charset: '' + } + 'application/route-usd+xml': MimeType{ + source: 'iana' + extensions: ['rusd'] + compressible: true + charset: '' + } + 'application/rpki-ghostbusters': MimeType{ + source: 'iana' + extensions: ['gbr'] + compressible: false + charset: '' + } + 'application/rpki-manifest': MimeType{ + source: 'iana' + extensions: ['mft'] + compressible: false + charset: '' + } + 'application/rpki-publication': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/rpki-roa': MimeType{ + source: 'iana' + extensions: ['roa'] + compressible: false + charset: '' + } + 'application/rpki-updown': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/rsd+xml': MimeType{ + source: 'apache' + extensions: ['rsd'] + compressible: true + charset: '' + } + 'application/rss+xml': MimeType{ + source: 'apache' + extensions: ['rss'] + compressible: true + charset: '' + } + 'application/rtf': MimeType{ + source: 'iana' + extensions: ['rtf'] + compressible: true + charset: '' + } + 'application/rtploopback': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/rtx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/samlassertion+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/samlmetadata+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/sarif+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/sarif-external-properties+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/sbe': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/sbml+xml': MimeType{ + source: 'iana' + extensions: ['sbml'] + compressible: true + charset: '' + } + 'application/scaip+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/scim+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/scvp-cv-request': MimeType{ + source: 'iana' + extensions: ['scq'] + compressible: false + charset: '' + } + 'application/scvp-cv-response': MimeType{ + source: 'iana' + extensions: ['scs'] + compressible: false + charset: '' + } + 'application/scvp-vp-request': MimeType{ + source: 'iana' + extensions: ['spq'] + compressible: false + charset: '' + } + 'application/scvp-vp-response': MimeType{ + source: 'iana' + extensions: ['spp'] + compressible: false + charset: '' + } + 'application/sdp': MimeType{ + source: 'iana' + extensions: ['sdp'] + compressible: false + charset: '' + } + 'application/secevent+jwt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/senml+cbor': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/senml+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/senml+xml': MimeType{ + source: 'iana' + extensions: ['senmlx'] + compressible: true + charset: '' + } + 'application/senml-etch+cbor': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/senml-etch+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/senml-exi': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/sensml+cbor': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/sensml+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/sensml+xml': MimeType{ + source: 'iana' + extensions: ['sensmlx'] + compressible: true + charset: '' + } + 'application/sensml-exi': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/sep+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/sep-exi': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/session-info': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/set-payment': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/set-payment-initiation': MimeType{ + source: 'iana' + extensions: ['setpay'] + compressible: false + charset: '' + } + 'application/set-registration': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/set-registration-initiation': MimeType{ + source: 'iana' + extensions: ['setreg'] + compressible: false + charset: '' + } + 'application/sgml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/sgml-open-catalog': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/shf+xml': MimeType{ + source: 'iana' + extensions: ['shf'] + compressible: true + charset: '' + } + 'application/sieve': MimeType{ + source: 'iana' + extensions: ['siv', 'sieve'] + compressible: false + charset: '' + } + 'application/simple-filter+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/simple-message-summary': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/simplesymbolcontainer': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/sipc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/slate': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/smil': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/smil+xml': MimeType{ + source: 'iana' + extensions: ['smi', 'smil'] + compressible: true + charset: '' + } + 'application/smpte336m': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/soap+fastinfoset': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/soap+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/sparql-query': MimeType{ + source: 'iana' + extensions: ['rq'] + compressible: false + charset: '' + } + 'application/sparql-results+xml': MimeType{ + source: 'iana' + extensions: ['srx'] + compressible: true + charset: '' + } + 'application/spdx+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/spirits-event+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/sql': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/srgs': MimeType{ + source: 'iana' + extensions: ['gram'] + compressible: false + charset: '' + } + 'application/srgs+xml': MimeType{ + source: 'iana' + extensions: ['grxml'] + compressible: true + charset: '' + } + 'application/sru+xml': MimeType{ + source: 'iana' + extensions: ['sru'] + compressible: true + charset: '' + } + 'application/ssdl+xml': MimeType{ + source: 'apache' + extensions: ['ssdl'] + compressible: true + charset: '' + } + 'application/ssml+xml': MimeType{ + source: 'iana' + extensions: ['ssml'] + compressible: true + charset: '' + } + 'application/stix+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/swid+xml': MimeType{ + source: 'iana' + extensions: ['swidtag'] + compressible: true + charset: '' + } + 'application/tamp-apex-update': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tamp-apex-update-confirm': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tamp-community-update': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tamp-community-update-confirm': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tamp-error': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tamp-sequence-adjust': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tamp-sequence-adjust-confirm': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tamp-status-query': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tamp-status-response': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tamp-update': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tamp-update-confirm': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tar': MimeType{ + source: '' + extensions: [] + compressible: true + charset: '' + } + 'application/taxii+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/td+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/tei+xml': MimeType{ + source: 'iana' + extensions: ['tei', 'teicorpus'] + compressible: true + charset: '' + } + 'application/tetra_isi': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/thraud+xml': MimeType{ + source: 'iana' + extensions: ['tfi'] + compressible: true + charset: '' + } + 'application/timestamp-query': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/timestamp-reply': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/timestamped-data': MimeType{ + source: 'iana' + extensions: ['tsd'] + compressible: false + charset: '' + } + 'application/tlsrpt+gzip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tlsrpt+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/tnauthlist': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/token-introspection+jwt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/toml': MimeType{ + source: '' + extensions: ['toml'] + compressible: true + charset: '' + } + 'application/trickle-ice-sdpfrag': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/trig': MimeType{ + source: 'iana' + extensions: ['trig'] + compressible: false + charset: '' + } + 'application/ttml+xml': MimeType{ + source: 'iana' + extensions: ['ttml'] + compressible: true + charset: '' + } + 'application/tve-trigger': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tzif': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/tzif-leap': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/ubjson': MimeType{ + source: '' + extensions: ['ubj'] + compressible: false + charset: '' + } + 'application/ulpfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/urc-grpsheet+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/urc-ressheet+xml': MimeType{ + source: 'iana' + extensions: ['rsheet'] + compressible: true + charset: '' + } + 'application/urc-targetdesc+xml': MimeType{ + source: 'iana' + extensions: ['td'] + compressible: true + charset: '' + } + 'application/urc-uisocketdesc+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vcard+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vcard+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vemmi': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vividence.scriptfile': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.1000minds.decision-model+xml': MimeType{ + source: 'iana' + extensions: ['1km'] + compressible: true + charset: '' + } + 'application/vnd.3gpp-prose+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp-prose-pc3ch+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp-v2x-local-service-information': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp.5gnas': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp.access-transfer-events+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.bsf+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.gmop+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.gtpc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp.interworking-data': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp.lpp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp.mc-signalling-ear': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp.mcdata-affiliation-command+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcdata-info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcdata-msgstore-ctrl-request+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcdata-payload': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp.mcdata-regroup+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcdata-service-config+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcdata-signalling': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp.mcdata-ue-config+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcdata-user-profile+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcptt-affiliation-command+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcptt-floor-request+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcptt-info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcptt-location-info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcptt-mbms-usage-info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcptt-service-config+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcptt-signed+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcptt-ue-config+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcptt-ue-init-config+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcptt-user-profile+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcvideo-affiliation-command+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcvideo-info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcvideo-location-info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcvideo-mbms-usage-info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcvideo-service-config+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcvideo-transmission-request+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcvideo-ue-config+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mcvideo-user-profile+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.mid-call+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.ngap': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp.pfcp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp.pic-bw-large': MimeType{ + source: 'iana' + extensions: ['plb'] + compressible: false + charset: '' + } + 'application/vnd.3gpp.pic-bw-small': MimeType{ + source: 'iana' + extensions: ['psb'] + compressible: false + charset: '' + } + 'application/vnd.3gpp.pic-bw-var': MimeType{ + source: 'iana' + extensions: ['pvb'] + compressible: false + charset: '' + } + 'application/vnd.3gpp.s1ap': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp.sms': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp.sms+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.srvcc-ext+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.srvcc-info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.state-and-event-info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp.ussd+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp2.bcmcsinfo+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.3gpp2.sms': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3gpp2.tcap': MimeType{ + source: 'iana' + extensions: ['tcap'] + compressible: false + charset: '' + } + 'application/vnd.3lightssoftware.imagescal': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.3m.post-it-notes': MimeType{ + source: 'iana' + extensions: ['pwn'] + compressible: false + charset: '' + } + 'application/vnd.accpac.simply.aso': MimeType{ + source: 'iana' + extensions: ['aso'] + compressible: false + charset: '' + } + 'application/vnd.accpac.simply.imp': MimeType{ + source: 'iana' + extensions: ['imp'] + compressible: false + charset: '' + } + 'application/vnd.acucobol': MimeType{ + source: 'iana' + extensions: ['acu'] + compressible: false + charset: '' + } + 'application/vnd.acucorp': MimeType{ + source: 'iana' + extensions: ['atc', 'acutc'] + compressible: false + charset: '' + } + 'application/vnd.adobe.air-application-installer-package+zip': MimeType{ + source: 'apache' + extensions: ['air'] + compressible: false + charset: '' + } + 'application/vnd.adobe.flash.movie': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.adobe.formscentral.fcdt': MimeType{ + source: 'iana' + extensions: ['fcdt'] + compressible: false + charset: '' + } + 'application/vnd.adobe.fxp': MimeType{ + source: 'iana' + extensions: ['fxp', 'fxpl'] + compressible: false + charset: '' + } + 'application/vnd.adobe.partial-upload': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.adobe.xdp+xml': MimeType{ + source: 'iana' + extensions: ['xdp'] + compressible: true + charset: '' + } + 'application/vnd.adobe.xfdf': MimeType{ + source: 'apache' + extensions: ['xfdf'] + compressible: false + charset: '' + } + 'application/vnd.aether.imp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.afplinedata': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.afplinedata-pagedef': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.cmoca-cmresource': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.foca-charset': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.foca-codedfont': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.foca-codepage': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.modca': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.modca-cmtable': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.modca-formdef': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.modca-mediummap': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.modca-objectcontainer': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.modca-overlay': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.afpc.modca-pagesegment': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.age': MimeType{ + source: 'iana' + extensions: ['age'] + compressible: false + charset: '' + } + 'application/vnd.ah-barcode': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ahead.space': MimeType{ + source: 'iana' + extensions: ['ahead'] + compressible: false + charset: '' + } + 'application/vnd.airzip.filesecure.azf': MimeType{ + source: 'iana' + extensions: ['azf'] + compressible: false + charset: '' + } + 'application/vnd.airzip.filesecure.azs': MimeType{ + source: 'iana' + extensions: ['azs'] + compressible: false + charset: '' + } + 'application/vnd.amadeus+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.amazon.ebook': MimeType{ + source: 'apache' + extensions: ['azw'] + compressible: false + charset: '' + } + 'application/vnd.amazon.mobi8-ebook': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.americandynamics.acc': MimeType{ + source: 'iana' + extensions: ['acc'] + compressible: false + charset: '' + } + 'application/vnd.amiga.ami': MimeType{ + source: 'iana' + extensions: ['ami'] + compressible: false + charset: '' + } + 'application/vnd.amundsen.maze+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.android.ota': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.android.package-archive': MimeType{ + source: 'apache' + extensions: ['apk'] + compressible: false + charset: '' + } + 'application/vnd.anki': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.anser-web-certificate-issue-initiation': MimeType{ + source: 'iana' + extensions: ['cii'] + compressible: false + charset: '' + } + 'application/vnd.anser-web-funds-transfer-initiation': MimeType{ + source: 'apache' + extensions: ['fti'] + compressible: false + charset: '' + } + 'application/vnd.antix.game-component': MimeType{ + source: 'iana' + extensions: ['atx'] + compressible: false + charset: '' + } + 'application/vnd.apache.arrow.file': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.apache.arrow.stream': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.apache.thrift.binary': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.apache.thrift.compact': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.apache.thrift.json': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.api+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.aplextor.warrp+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.apothekende.reservation+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.apple.installer+xml': MimeType{ + source: 'iana' + extensions: ['mpkg'] + compressible: true + charset: '' + } + 'application/vnd.apple.keynote': MimeType{ + source: 'iana' + extensions: ['key'] + compressible: false + charset: '' + } + 'application/vnd.apple.mpegurl': MimeType{ + source: 'iana' + extensions: ['m3u8'] + compressible: false + charset: '' + } + 'application/vnd.apple.numbers': MimeType{ + source: 'iana' + extensions: ['numbers'] + compressible: false + charset: '' + } + 'application/vnd.apple.pages': MimeType{ + source: 'iana' + extensions: ['pages'] + compressible: false + charset: '' + } + 'application/vnd.apple.pkpass': MimeType{ + source: '' + extensions: ['pkpass'] + compressible: false + charset: '' + } + 'application/vnd.arastra.swi': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.aristanetworks.swi': MimeType{ + source: 'iana' + extensions: ['swi'] + compressible: false + charset: '' + } + 'application/vnd.artisan+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.artsquare': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.astraea-software.iota': MimeType{ + source: 'iana' + extensions: ['iota'] + compressible: false + charset: '' + } + 'application/vnd.audiograph': MimeType{ + source: 'iana' + extensions: ['aep'] + compressible: false + charset: '' + } + 'application/vnd.autopackage': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.avalon+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.avistar+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.balsamiq.bmml+xml': MimeType{ + source: 'iana' + extensions: ['bmml'] + compressible: true + charset: '' + } + 'application/vnd.balsamiq.bmpr': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.banana-accounting': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.bbf.usp.error': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.bbf.usp.msg': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.bbf.usp.msg+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.bekitzur-stech+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.belightsoft.lhzd+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.bint.med-content': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.biopax.rdf+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.blink-idb-value-wrapper': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.blueice.multipass': MimeType{ + source: 'iana' + extensions: ['mpm'] + compressible: false + charset: '' + } + 'application/vnd.bluetooth.ep.oob': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.bluetooth.le.oob': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.bmi': MimeType{ + source: 'iana' + extensions: ['bmi'] + compressible: false + charset: '' + } + 'application/vnd.bpf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.bpf3': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.businessobjects': MimeType{ + source: 'iana' + extensions: ['rep'] + compressible: false + charset: '' + } + 'application/vnd.byu.uapi+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.cab-jscript': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.canon-cpdl': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.canon-lips': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.capasystems-pg+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.cendio.thinlinc.clientconf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.century-systems.tcp_stream': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.chemdraw+xml': MimeType{ + source: 'iana' + extensions: ['cdxml'] + compressible: true + charset: '' + } + 'application/vnd.chess-pgn': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.chipnuts.karaoke-mmd': MimeType{ + source: 'iana' + extensions: ['mmd'] + compressible: false + charset: '' + } + 'application/vnd.ciedi': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.cinderella': MimeType{ + source: 'iana' + extensions: ['cdy'] + compressible: false + charset: '' + } + 'application/vnd.cirpack.isdn-ext': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.citationstyles.style+xml': MimeType{ + source: 'iana' + extensions: ['csl'] + compressible: true + charset: '' + } + 'application/vnd.claymore': MimeType{ + source: 'iana' + extensions: ['cla'] + compressible: false + charset: '' + } + 'application/vnd.cloanto.rp9': MimeType{ + source: 'iana' + extensions: ['rp9'] + compressible: false + charset: '' + } + 'application/vnd.clonk.c4group': MimeType{ + source: 'iana' + extensions: ['c4g', 'c4d', 'c4f', 'c4p', 'c4u'] + compressible: false + charset: '' + } + 'application/vnd.cluetrust.cartomobile-config': MimeType{ + source: 'iana' + extensions: ['c11amc'] + compressible: false + charset: '' + } + 'application/vnd.cluetrust.cartomobile-config-pkg': MimeType{ + source: 'iana' + extensions: ['c11amz'] + compressible: false + charset: '' + } + 'application/vnd.coffeescript': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.collabio.xodocuments.document': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.collabio.xodocuments.document-template': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.collabio.xodocuments.presentation': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.collabio.xodocuments.presentation-template': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.collabio.xodocuments.spreadsheet': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.collabio.xodocuments.spreadsheet-template': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.collection+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.collection.doc+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.collection.next+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.comicbook+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.comicbook-rar': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.commerce-battelle': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.commonspace': MimeType{ + source: 'iana' + extensions: ['csp'] + compressible: false + charset: '' + } + 'application/vnd.contact.cmsg': MimeType{ + source: 'iana' + extensions: ['cdbcmsg'] + compressible: false + charset: '' + } + 'application/vnd.coreos.ignition+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.cosmocaller': MimeType{ + source: 'iana' + extensions: ['cmc'] + compressible: false + charset: '' + } + 'application/vnd.crick.clicker': MimeType{ + source: 'iana' + extensions: ['clkx'] + compressible: false + charset: '' + } + 'application/vnd.crick.clicker.keyboard': MimeType{ + source: 'iana' + extensions: ['clkk'] + compressible: false + charset: '' + } + 'application/vnd.crick.clicker.palette': MimeType{ + source: 'iana' + extensions: ['clkp'] + compressible: false + charset: '' + } + 'application/vnd.crick.clicker.template': MimeType{ + source: 'iana' + extensions: ['clkt'] + compressible: false + charset: '' + } + 'application/vnd.crick.clicker.wordbank': MimeType{ + source: 'iana' + extensions: ['clkw'] + compressible: false + charset: '' + } + 'application/vnd.criticaltools.wbs+xml': MimeType{ + source: 'iana' + extensions: ['wbs'] + compressible: true + charset: '' + } + 'application/vnd.cryptii.pipe+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.crypto-shade-file': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.cryptomator.encrypted': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.cryptomator.vault': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ctc-posml': MimeType{ + source: 'iana' + extensions: ['pml'] + compressible: false + charset: '' + } + 'application/vnd.ctct.ws+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.cups-pdf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.cups-postscript': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.cups-ppd': MimeType{ + source: 'iana' + extensions: ['ppd'] + compressible: false + charset: '' + } + 'application/vnd.cups-raster': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.cups-raw': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.curl': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.curl.car': MimeType{ + source: 'apache' + extensions: ['car'] + compressible: false + charset: '' + } + 'application/vnd.curl.pcurl': MimeType{ + source: 'apache' + extensions: ['pcurl'] + compressible: false + charset: '' + } + 'application/vnd.cyan.dean.root+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.cybank': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.cyclonedx+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.cyclonedx+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.d2l.coursepackage1p0+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.d3m-dataset': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.d3m-problem': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dart': MimeType{ + source: 'iana' + extensions: ['dart'] + compressible: true + charset: '' + } + 'application/vnd.data-vision.rdz': MimeType{ + source: 'iana' + extensions: ['rdz'] + compressible: false + charset: '' + } + 'application/vnd.datapackage+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.dataresource+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.dbf': MimeType{ + source: 'iana' + extensions: ['dbf'] + compressible: false + charset: '' + } + 'application/vnd.debian.binary-package': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dece.data': MimeType{ + source: 'iana' + extensions: ['uvf', 'uvvf', 'uvd', 'uvvd'] + compressible: false + charset: '' + } + 'application/vnd.dece.ttml+xml': MimeType{ + source: 'iana' + extensions: ['uvt', 'uvvt'] + compressible: true + charset: '' + } + 'application/vnd.dece.unspecified': MimeType{ + source: 'iana' + extensions: ['uvx', 'uvvx'] + compressible: false + charset: '' + } + 'application/vnd.dece.zip': MimeType{ + source: 'iana' + extensions: ['uvz', 'uvvz'] + compressible: false + charset: '' + } + 'application/vnd.denovo.fcselayout-link': MimeType{ + source: 'iana' + extensions: ['fe_launch'] + compressible: false + charset: '' + } + 'application/vnd.desmume.movie': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dir-bi.plate-dl-nosuffix': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dm.delegation+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.dna': MimeType{ + source: 'iana' + extensions: ['dna'] + compressible: false + charset: '' + } + 'application/vnd.document+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.dolby.mlp': MimeType{ + source: 'apache' + extensions: ['mlp'] + compressible: false + charset: '' + } + 'application/vnd.dolby.mobile.1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dolby.mobile.2': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.doremir.scorecloud-binary-document': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dpgraph': MimeType{ + source: 'iana' + extensions: ['dpg'] + compressible: false + charset: '' + } + 'application/vnd.dreamfactory': MimeType{ + source: 'iana' + extensions: ['dfac'] + compressible: false + charset: '' + } + 'application/vnd.drive+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ds-keypoint': MimeType{ + source: 'apache' + extensions: ['kpxx'] + compressible: false + charset: '' + } + 'application/vnd.dtg.local': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dtg.local.flash': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dtg.local.html': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dvb.ait': MimeType{ + source: 'iana' + extensions: ['ait'] + compressible: false + charset: '' + } + 'application/vnd.dvb.dvbisl+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.dvb.dvbj': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dvb.esgcontainer': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dvb.ipdcdftnotifaccess': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dvb.ipdcesgaccess': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dvb.ipdcesgaccess2': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dvb.ipdcesgpdd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dvb.ipdcroaming': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dvb.iptv.alfec-base': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dvb.iptv.alfec-enhancement': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dvb.notif-aggregate-root+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.dvb.notif-container+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.dvb.notif-generic+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.dvb.notif-ia-msglist+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.dvb.notif-ia-registration-request+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.dvb.notif-ia-registration-response+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.dvb.notif-init+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.dvb.pfr': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dvb.service': MimeType{ + source: 'iana' + extensions: ['svc'] + compressible: false + charset: '' + } + 'application/vnd.dxr': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.dynageo': MimeType{ + source: 'iana' + extensions: ['geo'] + compressible: false + charset: '' + } + 'application/vnd.dzr': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.easykaraoke.cdgdownload': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ecdis-update': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ecip.rlp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.eclipse.ditto+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ecowin.chart': MimeType{ + source: 'iana' + extensions: ['mag'] + compressible: false + charset: '' + } + 'application/vnd.ecowin.filerequest': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ecowin.fileupdate': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ecowin.series': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ecowin.seriesrequest': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ecowin.seriesupdate': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.efi.img': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.efi.iso': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.emclient.accessrequest+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.enliven': MimeType{ + source: 'iana' + extensions: ['nml'] + compressible: false + charset: '' + } + 'application/vnd.enphase.envoy': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.eprints.data+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.epson.esf': MimeType{ + source: 'iana' + extensions: ['esf'] + compressible: false + charset: '' + } + 'application/vnd.epson.msf': MimeType{ + source: 'iana' + extensions: ['msf'] + compressible: false + charset: '' + } + 'application/vnd.epson.quickanime': MimeType{ + source: 'iana' + extensions: ['qam'] + compressible: false + charset: '' + } + 'application/vnd.epson.salt': MimeType{ + source: 'iana' + extensions: ['slt'] + compressible: false + charset: '' + } + 'application/vnd.epson.ssf': MimeType{ + source: 'iana' + extensions: ['ssf'] + compressible: false + charset: '' + } + 'application/vnd.ericsson.quickcall': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.espass-espass+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.eszigno3+xml': MimeType{ + source: 'iana' + extensions: ['es3', 'et3'] + compressible: true + charset: '' + } + 'application/vnd.etsi.aoc+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.asic-e+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.etsi.asic-s+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.etsi.cug+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.iptvcommand+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.iptvdiscovery+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.iptvprofile+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.iptvsad-bc+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.iptvsad-cod+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.iptvsad-npvr+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.iptvservice+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.iptvsync+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.iptvueprofile+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.mcid+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.mheg5': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.etsi.overload-control-policy-dataset+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.pstn+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.sci+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.simservs+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.timestamp-token': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.etsi.tsl+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.etsi.tsl.der': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.eu.kasparian.car+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.eudora.data': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.evolv.ecig.profile': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.evolv.ecig.settings': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.evolv.ecig.theme': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.exstream-empower+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.exstream-package': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ezpix-album': MimeType{ + source: 'iana' + extensions: ['ez2'] + compressible: false + charset: '' + } + 'application/vnd.ezpix-package': MimeType{ + source: 'iana' + extensions: ['ez3'] + compressible: false + charset: '' + } + 'application/vnd.f-secure.mobile': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.familysearch.gedcom+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.fastcopy-disk-image': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.fdf': MimeType{ + source: 'apache' + extensions: ['fdf'] + compressible: false + charset: '' + } + 'application/vnd.fdsn.mseed': MimeType{ + source: 'iana' + extensions: ['mseed'] + compressible: false + charset: '' + } + 'application/vnd.fdsn.seed': MimeType{ + source: 'iana' + extensions: ['seed', 'dataless'] + compressible: false + charset: '' + } + 'application/vnd.ffsns': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ficlab.flb+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.filmit.zfc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.fints': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.firemonkeys.cloudcell': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.flographit': MimeType{ + source: 'iana' + extensions: ['gph'] + compressible: false + charset: '' + } + 'application/vnd.fluxtime.clip': MimeType{ + source: 'iana' + extensions: ['ftc'] + compressible: false + charset: '' + } + 'application/vnd.font-fontforge-sfd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.framemaker': MimeType{ + source: 'iana' + extensions: ['fm', 'frame', 'maker', 'book'] + compressible: false + charset: '' + } + 'application/vnd.frogans.fnc': MimeType{ + source: 'apache' + extensions: ['fnc'] + compressible: false + charset: '' + } + 'application/vnd.frogans.ltf': MimeType{ + source: 'apache' + extensions: ['ltf'] + compressible: false + charset: '' + } + 'application/vnd.fsc.weblaunch': MimeType{ + source: 'iana' + extensions: ['fsc'] + compressible: false + charset: '' + } + 'application/vnd.fujifilm.fb.docuworks': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.fujifilm.fb.docuworks.binder': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.fujifilm.fb.docuworks.container': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.fujifilm.fb.jfi+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.fujitsu.oasys': MimeType{ + source: 'iana' + extensions: ['oas'] + compressible: false + charset: '' + } + 'application/vnd.fujitsu.oasys2': MimeType{ + source: 'iana' + extensions: ['oa2'] + compressible: false + charset: '' + } + 'application/vnd.fujitsu.oasys3': MimeType{ + source: 'iana' + extensions: ['oa3'] + compressible: false + charset: '' + } + 'application/vnd.fujitsu.oasysgp': MimeType{ + source: 'iana' + extensions: ['fg5'] + compressible: false + charset: '' + } + 'application/vnd.fujitsu.oasysprs': MimeType{ + source: 'iana' + extensions: ['bh2'] + compressible: false + charset: '' + } + 'application/vnd.fujixerox.art-ex': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.fujixerox.art4': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.fujixerox.ddd': MimeType{ + source: 'iana' + extensions: ['ddd'] + compressible: false + charset: '' + } + 'application/vnd.fujixerox.docuworks': MimeType{ + source: 'iana' + extensions: ['xdw'] + compressible: false + charset: '' + } + 'application/vnd.fujixerox.docuworks.binder': MimeType{ + source: 'iana' + extensions: ['xbd'] + compressible: false + charset: '' + } + 'application/vnd.fujixerox.docuworks.container': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.fujixerox.hbpl': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.fut-misnet': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.futoin+cbor': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.futoin+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.fuzzysheet': MimeType{ + source: 'iana' + extensions: ['fzs'] + compressible: false + charset: '' + } + 'application/vnd.genomatix.tuxedo': MimeType{ + source: 'iana' + extensions: ['txd'] + compressible: false + charset: '' + } + 'application/vnd.genozip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.gentics.grd+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.geo+json': MimeType{ + source: 'apache' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.geocube+xml': MimeType{ + source: 'apache' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.geogebra.file': MimeType{ + source: 'iana' + extensions: ['ggb'] + compressible: false + charset: '' + } + 'application/vnd.geogebra.slides': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.geogebra.tool': MimeType{ + source: 'iana' + extensions: ['ggt'] + compressible: false + charset: '' + } + 'application/vnd.geometry-explorer': MimeType{ + source: 'iana' + extensions: ['gex', 'gre'] + compressible: false + charset: '' + } + 'application/vnd.geonext': MimeType{ + source: 'iana' + extensions: ['gxt'] + compressible: false + charset: '' + } + 'application/vnd.geoplan': MimeType{ + source: 'iana' + extensions: ['g2w'] + compressible: false + charset: '' + } + 'application/vnd.geospace': MimeType{ + source: 'iana' + extensions: ['g3w'] + compressible: false + charset: '' + } + 'application/vnd.gerber': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.globalplatform.card-content-mgt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.globalplatform.card-content-mgt-response': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.gmx': MimeType{ + source: 'iana' + extensions: ['gmx'] + compressible: false + charset: '' + } + 'application/vnd.gnu.taler.exchange+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.gnu.taler.merchant+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.google-apps.document': MimeType{ + source: '' + extensions: ['gdoc'] + compressible: false + charset: '' + } + 'application/vnd.google-apps.presentation': MimeType{ + source: '' + extensions: ['gslides'] + compressible: false + charset: '' + } + 'application/vnd.google-apps.spreadsheet': MimeType{ + source: '' + extensions: ['gsheet'] + compressible: false + charset: '' + } + 'application/vnd.google-earth.kml+xml': MimeType{ + source: 'iana' + extensions: ['kml'] + compressible: true + charset: '' + } + 'application/vnd.google-earth.kmz': MimeType{ + source: 'iana' + extensions: ['kmz'] + compressible: false + charset: '' + } + 'application/vnd.gov.sk.e-form+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.gov.sk.e-form+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.gov.sk.xmldatacontainer+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.grafeq': MimeType{ + source: 'iana' + extensions: ['gqf', 'gqs'] + compressible: false + charset: '' + } + 'application/vnd.gridmp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.groove-account': MimeType{ + source: 'iana' + extensions: ['gac'] + compressible: false + charset: '' + } + 'application/vnd.groove-help': MimeType{ + source: 'iana' + extensions: ['ghf'] + compressible: false + charset: '' + } + 'application/vnd.groove-identity-message': MimeType{ + source: 'iana' + extensions: ['gim'] + compressible: false + charset: '' + } + 'application/vnd.groove-injector': MimeType{ + source: 'iana' + extensions: ['grv'] + compressible: false + charset: '' + } + 'application/vnd.groove-tool-message': MimeType{ + source: 'iana' + extensions: ['gtm'] + compressible: false + charset: '' + } + 'application/vnd.groove-tool-template': MimeType{ + source: 'iana' + extensions: ['tpl'] + compressible: false + charset: '' + } + 'application/vnd.groove-vcard': MimeType{ + source: 'iana' + extensions: ['vcg'] + compressible: false + charset: '' + } + 'application/vnd.hal+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.hal+xml': MimeType{ + source: 'iana' + extensions: ['hal'] + compressible: true + charset: '' + } + 'application/vnd.handheld-entertainment+xml': MimeType{ + source: 'iana' + extensions: ['zmm'] + compressible: true + charset: '' + } + 'application/vnd.hbci': MimeType{ + source: 'iana' + extensions: ['hbci'] + compressible: false + charset: '' + } + 'application/vnd.hc+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.hcl-bireports': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.hdt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.heroku+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.hhe.lesson-player': MimeType{ + source: 'iana' + extensions: ['les'] + compressible: false + charset: '' + } + 'application/vnd.hp-hpgl': MimeType{ + source: 'iana' + extensions: ['hpgl'] + compressible: false + charset: '' + } + 'application/vnd.hp-hpid': MimeType{ + source: 'iana' + extensions: ['hpid'] + compressible: false + charset: '' + } + 'application/vnd.hp-hps': MimeType{ + source: 'iana' + extensions: ['hps'] + compressible: false + charset: '' + } + 'application/vnd.hp-jlyt': MimeType{ + source: 'iana' + extensions: ['jlt'] + compressible: false + charset: '' + } + 'application/vnd.hp-pcl': MimeType{ + source: 'iana' + extensions: ['pcl'] + compressible: false + charset: '' + } + 'application/vnd.hp-pclxl': MimeType{ + source: 'iana' + extensions: ['pclxl'] + compressible: false + charset: '' + } + 'application/vnd.httphone': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.hydrostatix.sof-data': MimeType{ + source: 'iana' + extensions: ['sfd-hdstx'] + compressible: false + charset: '' + } + 'application/vnd.hyper+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.hyper-item+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.hyperdrive+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.hzn-3d-crossword': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ibm.afplinedata': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ibm.electronic-media': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ibm.minipay': MimeType{ + source: 'iana' + extensions: ['mpy'] + compressible: false + charset: '' + } + 'application/vnd.ibm.modcap': MimeType{ + source: 'apache' + extensions: ['afp', 'listafp', 'list3820'] + compressible: false + charset: '' + } + 'application/vnd.ibm.rights-management': MimeType{ + source: 'iana' + extensions: ['irm'] + compressible: false + charset: '' + } + 'application/vnd.ibm.secure-container': MimeType{ + source: 'iana' + extensions: ['sc'] + compressible: false + charset: '' + } + 'application/vnd.iccprofile': MimeType{ + source: 'iana' + extensions: ['icc', 'icm'] + compressible: false + charset: '' + } + 'application/vnd.ieee.1905': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.igloader': MimeType{ + source: 'iana' + extensions: ['igl'] + compressible: false + charset: '' + } + 'application/vnd.imagemeter.folder+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.imagemeter.image+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.immervision-ivp': MimeType{ + source: 'iana' + extensions: ['ivp'] + compressible: false + charset: '' + } + 'application/vnd.immervision-ivu': MimeType{ + source: 'iana' + extensions: ['ivu'] + compressible: false + charset: '' + } + 'application/vnd.ims.imsccv1p1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ims.imsccv1p2': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ims.imsccv1p3': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ims.lis.v2.result+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ims.lti.v2.toolconsumerprofile+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ims.lti.v2.toolproxy+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ims.lti.v2.toolproxy.id+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ims.lti.v2.toolsettings+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ims.lti.v2.toolsettings.simple+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.informedcontrol.rms+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.informix-visionary': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.infotech.project': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.infotech.project+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.innopath.wamp.notification': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.insors.igm': MimeType{ + source: 'iana' + extensions: ['igm'] + compressible: false + charset: '' + } + 'application/vnd.intercon.formnet': MimeType{ + source: 'iana' + extensions: ['xpw', 'xpx'] + compressible: false + charset: '' + } + 'application/vnd.intergeo': MimeType{ + source: 'iana' + extensions: ['i2g'] + compressible: false + charset: '' + } + 'application/vnd.intertrust.digibox': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.intertrust.nncp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.intu.qbo': MimeType{ + source: 'iana' + extensions: ['qbo'] + compressible: false + charset: '' + } + 'application/vnd.intu.qfx': MimeType{ + source: 'iana' + extensions: ['qfx'] + compressible: false + charset: '' + } + 'application/vnd.ipld.car': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ipld.raw': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.iptc.g2.catalogitem+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.iptc.g2.conceptitem+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.iptc.g2.knowledgeitem+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.iptc.g2.newsitem+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.iptc.g2.newsmessage+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.iptc.g2.packageitem+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.iptc.g2.planningitem+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ipunplugged.rcprofile': MimeType{ + source: 'iana' + extensions: ['rcprofile'] + compressible: false + charset: '' + } + 'application/vnd.irepository.package+xml': MimeType{ + source: 'iana' + extensions: ['irp'] + compressible: true + charset: '' + } + 'application/vnd.is-xpr': MimeType{ + source: 'iana' + extensions: ['xpr'] + compressible: false + charset: '' + } + 'application/vnd.isac.fcs': MimeType{ + source: 'iana' + extensions: ['fcs'] + compressible: false + charset: '' + } + 'application/vnd.iso11783-10+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.jam': MimeType{ + source: 'iana' + extensions: ['jam'] + compressible: false + charset: '' + } + 'application/vnd.japannet-directory-service': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.japannet-jpnstore-wakeup': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.japannet-payment-wakeup': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.japannet-registration': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.japannet-registration-wakeup': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.japannet-setstore-wakeup': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.japannet-verification': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.japannet-verification-wakeup': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.jcp.javame.midlet-rms': MimeType{ + source: 'iana' + extensions: ['rms'] + compressible: false + charset: '' + } + 'application/vnd.jisp': MimeType{ + source: 'iana' + extensions: ['jisp'] + compressible: false + charset: '' + } + 'application/vnd.joost.joda-archive': MimeType{ + source: 'iana' + extensions: ['joda'] + compressible: false + charset: '' + } + 'application/vnd.jsk.isdn-ngn': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.kahootz': MimeType{ + source: 'iana' + extensions: ['ktz', 'ktr'] + compressible: false + charset: '' + } + 'application/vnd.kde.karbon': MimeType{ + source: 'iana' + extensions: ['karbon'] + compressible: false + charset: '' + } + 'application/vnd.kde.kchart': MimeType{ + source: 'iana' + extensions: ['chrt'] + compressible: false + charset: '' + } + 'application/vnd.kde.kformula': MimeType{ + source: 'iana' + extensions: ['kfo'] + compressible: false + charset: '' + } + 'application/vnd.kde.kivio': MimeType{ + source: 'iana' + extensions: ['flw'] + compressible: false + charset: '' + } + 'application/vnd.kde.kontour': MimeType{ + source: 'iana' + extensions: ['kon'] + compressible: false + charset: '' + } + 'application/vnd.kde.kpresenter': MimeType{ + source: 'iana' + extensions: ['kpr', 'kpt'] + compressible: false + charset: '' + } + 'application/vnd.kde.kspread': MimeType{ + source: 'iana' + extensions: ['ksp'] + compressible: false + charset: '' + } + 'application/vnd.kde.kword': MimeType{ + source: 'iana' + extensions: ['kwd', 'kwt'] + compressible: false + charset: '' + } + 'application/vnd.kenameaapp': MimeType{ + source: 'iana' + extensions: ['htke'] + compressible: false + charset: '' + } + 'application/vnd.kidspiration': MimeType{ + source: 'iana' + extensions: ['kia'] + compressible: false + charset: '' + } + 'application/vnd.kinar': MimeType{ + source: 'iana' + extensions: ['kne', 'knp'] + compressible: false + charset: '' + } + 'application/vnd.koan': MimeType{ + source: 'iana' + extensions: ['skp', 'skd', 'skt', 'skm'] + compressible: false + charset: '' + } + 'application/vnd.kodak-descriptor': MimeType{ + source: 'iana' + extensions: ['sse'] + compressible: false + charset: '' + } + 'application/vnd.las': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.las.las+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.las.las+xml': MimeType{ + source: 'iana' + extensions: ['lasxml'] + compressible: true + charset: '' + } + 'application/vnd.laszip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.leap+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.liberty-request+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.llamagraphics.life-balance.desktop': MimeType{ + source: 'iana' + extensions: ['lbd'] + compressible: false + charset: '' + } + 'application/vnd.llamagraphics.life-balance.exchange+xml': MimeType{ + source: 'iana' + extensions: ['lbe'] + compressible: true + charset: '' + } + 'application/vnd.logipipe.circuit+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.loom': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.lotus-1-2-3': MimeType{ + source: 'iana' + extensions: ['123'] + compressible: false + charset: '' + } + 'application/vnd.lotus-approach': MimeType{ + source: 'iana' + extensions: ['apr'] + compressible: false + charset: '' + } + 'application/vnd.lotus-freelance': MimeType{ + source: 'iana' + extensions: ['pre'] + compressible: false + charset: '' + } + 'application/vnd.lotus-notes': MimeType{ + source: 'iana' + extensions: ['nsf'] + compressible: false + charset: '' + } + 'application/vnd.lotus-organizer': MimeType{ + source: 'iana' + extensions: ['org'] + compressible: false + charset: '' + } + 'application/vnd.lotus-screencam': MimeType{ + source: 'iana' + extensions: ['scm'] + compressible: false + charset: '' + } + 'application/vnd.lotus-wordpro': MimeType{ + source: 'iana' + extensions: ['lwp'] + compressible: false + charset: '' + } + 'application/vnd.macports.portpkg': MimeType{ + source: 'iana' + extensions: ['portpkg'] + compressible: false + charset: '' + } + 'application/vnd.mapbox-vector-tile': MimeType{ + source: 'iana' + extensions: ['mvt'] + compressible: false + charset: '' + } + 'application/vnd.marlin.drm.actiontoken+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.marlin.drm.conftoken+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.marlin.drm.license+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.marlin.drm.mdcf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.mason+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.maxar.archive.3tz+zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.maxmind.maxmind-db': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.mcd': MimeType{ + source: 'iana' + extensions: ['mcd'] + compressible: false + charset: '' + } + 'application/vnd.medcalcdata': MimeType{ + source: 'iana' + extensions: ['mc1'] + compressible: false + charset: '' + } + 'application/vnd.mediastation.cdkey': MimeType{ + source: 'iana' + extensions: ['cdkey'] + compressible: false + charset: '' + } + 'application/vnd.meridian-slingshot': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.mfer': MimeType{ + source: 'iana' + extensions: ['mwf'] + compressible: false + charset: '' + } + 'application/vnd.mfmp': MimeType{ + source: 'iana' + extensions: ['mfm'] + compressible: false + charset: '' + } + 'application/vnd.micro+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.micrografx.flo': MimeType{ + source: 'iana' + extensions: ['flo'] + compressible: false + charset: '' + } + 'application/vnd.micrografx.igx': MimeType{ + source: 'iana' + extensions: ['igx'] + compressible: false + charset: '' + } + 'application/vnd.microsoft.portable-executable': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.microsoft.windows.thumbnail-cache': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.miele+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.mif': MimeType{ + source: 'iana' + extensions: ['mif'] + compressible: false + charset: '' + } + 'application/vnd.minisoft-hp3000-save': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.mitsubishi.misty-guard.trustweb': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.mobius.daf': MimeType{ + source: 'iana' + extensions: ['daf'] + compressible: false + charset: '' + } + 'application/vnd.mobius.dis': MimeType{ + source: 'iana' + extensions: ['dis'] + compressible: false + charset: '' + } + 'application/vnd.mobius.mbk': MimeType{ + source: 'iana' + extensions: ['mbk'] + compressible: false + charset: '' + } + 'application/vnd.mobius.mqy': MimeType{ + source: 'iana' + extensions: ['mqy'] + compressible: false + charset: '' + } + 'application/vnd.mobius.msl': MimeType{ + source: 'iana' + extensions: ['msl'] + compressible: false + charset: '' + } + 'application/vnd.mobius.plc': MimeType{ + source: 'iana' + extensions: ['plc'] + compressible: false + charset: '' + } + 'application/vnd.mobius.txf': MimeType{ + source: 'iana' + extensions: ['txf'] + compressible: false + charset: '' + } + 'application/vnd.mophun.application': MimeType{ + source: 'iana' + extensions: ['mpn'] + compressible: false + charset: '' + } + 'application/vnd.mophun.certificate': MimeType{ + source: 'iana' + extensions: ['mpc'] + compressible: false + charset: '' + } + 'application/vnd.motorola.flexsuite': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.motorola.flexsuite.adsi': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.motorola.flexsuite.fis': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.motorola.flexsuite.gotap': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.motorola.flexsuite.kmr': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.motorola.flexsuite.ttc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.motorola.flexsuite.wem': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.motorola.iprm': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.mozilla.xul+xml': MimeType{ + source: 'iana' + extensions: ['xul'] + compressible: true + charset: '' + } + 'application/vnd.ms-3mfdocument': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-artgalry': MimeType{ + source: 'iana' + extensions: ['cil'] + compressible: false + charset: '' + } + 'application/vnd.ms-asf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-cab-compressed': MimeType{ + source: 'iana' + extensions: ['cab'] + compressible: false + charset: '' + } + 'application/vnd.ms-color.iccprofile': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-excel': MimeType{ + source: 'iana' + extensions: ['xls', 'xlm', 'xla', 'xlc', 'xlt', 'xlw'] + compressible: false + charset: '' + } + 'application/vnd.ms-excel.addin.macroenabled.12': MimeType{ + source: 'iana' + extensions: ['xlam'] + compressible: false + charset: '' + } + 'application/vnd.ms-excel.sheet.binary.macroenabled.12': MimeType{ + source: 'iana' + extensions: ['xlsb'] + compressible: false + charset: '' + } + 'application/vnd.ms-excel.sheet.macroenabled.12': MimeType{ + source: 'iana' + extensions: ['xlsm'] + compressible: false + charset: '' + } + 'application/vnd.ms-excel.template.macroenabled.12': MimeType{ + source: 'iana' + extensions: ['xltm'] + compressible: false + charset: '' + } + 'application/vnd.ms-fontobject': MimeType{ + source: 'iana' + extensions: ['eot'] + compressible: true + charset: '' + } + 'application/vnd.ms-htmlhelp': MimeType{ + source: 'iana' + extensions: ['chm'] + compressible: false + charset: '' + } + 'application/vnd.ms-ims': MimeType{ + source: 'iana' + extensions: ['ims'] + compressible: false + charset: '' + } + 'application/vnd.ms-lrm': MimeType{ + source: 'iana' + extensions: ['lrm'] + compressible: false + charset: '' + } + 'application/vnd.ms-office.activex+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ms-officetheme': MimeType{ + source: 'iana' + extensions: ['thmx'] + compressible: false + charset: '' + } + 'application/vnd.ms-opentype': MimeType{ + source: 'apache' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ms-outlook': MimeType{ + source: '' + extensions: ['msg'] + compressible: false + charset: '' + } + 'application/vnd.ms-package.obfuscated-opentype': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-pki.seccat': MimeType{ + source: 'apache' + extensions: ['cat'] + compressible: false + charset: '' + } + 'application/vnd.ms-pki.stl': MimeType{ + source: 'apache' + extensions: ['stl'] + compressible: false + charset: '' + } + 'application/vnd.ms-playready.initiator+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ms-powerpoint': MimeType{ + source: 'iana' + extensions: ['ppt', 'pps', 'pot'] + compressible: false + charset: '' + } + 'application/vnd.ms-powerpoint.addin.macroenabled.12': MimeType{ + source: 'iana' + extensions: ['ppam'] + compressible: false + charset: '' + } + 'application/vnd.ms-powerpoint.presentation.macroenabled.12': MimeType{ + source: 'iana' + extensions: ['pptm'] + compressible: false + charset: '' + } + 'application/vnd.ms-powerpoint.slide.macroenabled.12': MimeType{ + source: 'iana' + extensions: ['sldm'] + compressible: false + charset: '' + } + 'application/vnd.ms-powerpoint.slideshow.macroenabled.12': MimeType{ + source: 'iana' + extensions: ['ppsm'] + compressible: false + charset: '' + } + 'application/vnd.ms-powerpoint.template.macroenabled.12': MimeType{ + source: 'iana' + extensions: ['potm'] + compressible: false + charset: '' + } + 'application/vnd.ms-printdevicecapabilities+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ms-printing.printticket+xml': MimeType{ + source: 'apache' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ms-printschematicket+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ms-project': MimeType{ + source: 'iana' + extensions: ['mpp', 'mpt'] + compressible: false + charset: '' + } + 'application/vnd.ms-tnef': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-windows.devicepairing': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-windows.nwprinting.oob': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-windows.printerpairing': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-windows.wsd.oob': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-wmdrm.lic-chlg-req': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-wmdrm.lic-resp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-wmdrm.meter-chlg-req': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-wmdrm.meter-resp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ms-word.document.macroenabled.12': MimeType{ + source: 'iana' + extensions: ['docm'] + compressible: false + charset: '' + } + 'application/vnd.ms-word.template.macroenabled.12': MimeType{ + source: 'iana' + extensions: ['dotm'] + compressible: false + charset: '' + } + 'application/vnd.ms-works': MimeType{ + source: 'iana' + extensions: ['wps', 'wks', 'wcm', 'wdb'] + compressible: false + charset: '' + } + 'application/vnd.ms-wpl': MimeType{ + source: 'iana' + extensions: ['wpl'] + compressible: false + charset: '' + } + 'application/vnd.ms-xpsdocument': MimeType{ + source: 'iana' + extensions: ['xps'] + compressible: false + charset: '' + } + 'application/vnd.msa-disk-image': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.mseq': MimeType{ + source: 'iana' + extensions: ['mseq'] + compressible: false + charset: '' + } + 'application/vnd.msign': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.multiad.creator': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.multiad.creator.cif': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.music-niff': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.musician': MimeType{ + source: 'iana' + extensions: ['mus'] + compressible: false + charset: '' + } + 'application/vnd.muvee.style': MimeType{ + source: 'iana' + extensions: ['msty'] + compressible: false + charset: '' + } + 'application/vnd.mynfc': MimeType{ + source: 'iana' + extensions: ['taglet'] + compressible: false + charset: '' + } + 'application/vnd.nacamar.ybrid+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.ncd.control': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ncd.reference': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.nearst.inv+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.nebumind.line': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.nervana': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.netfpx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.neurolanguage.nlu': MimeType{ + source: 'iana' + extensions: ['nlu'] + compressible: false + charset: '' + } + 'application/vnd.nimn': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.nintendo.nitro.rom': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.nintendo.snes.rom': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.nitf': MimeType{ + source: 'iana' + extensions: ['ntf', 'nitf'] + compressible: false + charset: '' + } + 'application/vnd.noblenet-directory': MimeType{ + source: 'iana' + extensions: ['nnd'] + compressible: false + charset: '' + } + 'application/vnd.noblenet-sealer': MimeType{ + source: 'iana' + extensions: ['nns'] + compressible: false + charset: '' + } + 'application/vnd.noblenet-web': MimeType{ + source: 'iana' + extensions: ['nnw'] + compressible: false + charset: '' + } + 'application/vnd.nokia.catalogs': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.nokia.conml+wbxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.nokia.conml+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.nokia.iptv.config+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.nokia.isds-radio-presets': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.nokia.landmark+wbxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.nokia.landmark+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.nokia.landmarkcollection+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.nokia.n-gage.ac+xml': MimeType{ + source: 'iana' + extensions: ['ac'] + compressible: true + charset: '' + } + 'application/vnd.nokia.n-gage.data': MimeType{ + source: 'iana' + extensions: ['ngdat'] + compressible: false + charset: '' + } + 'application/vnd.nokia.n-gage.symbian.install': MimeType{ + source: 'apache' + extensions: ['n-gage'] + compressible: false + charset: '' + } + 'application/vnd.nokia.ncd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.nokia.pcd+wbxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.nokia.pcd+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.nokia.radio-preset': MimeType{ + source: 'iana' + extensions: ['rpst'] + compressible: false + charset: '' + } + 'application/vnd.nokia.radio-presets': MimeType{ + source: 'iana' + extensions: ['rpss'] + compressible: false + charset: '' + } + 'application/vnd.novadigm.edm': MimeType{ + source: 'iana' + extensions: ['edm'] + compressible: false + charset: '' + } + 'application/vnd.novadigm.edx': MimeType{ + source: 'iana' + extensions: ['edx'] + compressible: false + charset: '' + } + 'application/vnd.novadigm.ext': MimeType{ + source: 'iana' + extensions: ['ext'] + compressible: false + charset: '' + } + 'application/vnd.ntt-local.content-share': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ntt-local.file-transfer': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ntt-local.ogw_remote-access': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ntt-local.sip-ta_remote': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ntt-local.sip-ta_tcp_stream': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.chart': MimeType{ + source: 'iana' + extensions: ['odc'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.chart-template': MimeType{ + source: 'iana' + extensions: ['otc'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.database': MimeType{ + source: 'iana' + extensions: ['odb'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.formula': MimeType{ + source: 'iana' + extensions: ['odf'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.formula-template': MimeType{ + source: 'iana' + extensions: ['odft'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.graphics': MimeType{ + source: 'iana' + extensions: ['odg'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.graphics-template': MimeType{ + source: 'iana' + extensions: ['otg'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.image': MimeType{ + source: 'iana' + extensions: ['odi'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.image-template': MimeType{ + source: 'iana' + extensions: ['oti'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.presentation': MimeType{ + source: 'iana' + extensions: ['odp'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.presentation-template': MimeType{ + source: 'iana' + extensions: ['otp'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.spreadsheet': MimeType{ + source: 'iana' + extensions: ['ods'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.spreadsheet-template': MimeType{ + source: 'iana' + extensions: ['ots'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.text': MimeType{ + source: 'iana' + extensions: ['odt'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.text-master': MimeType{ + source: 'iana' + extensions: ['odm'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.text-template': MimeType{ + source: 'iana' + extensions: ['ott'] + compressible: false + charset: '' + } + 'application/vnd.oasis.opendocument.text-web': MimeType{ + source: 'iana' + extensions: ['oth'] + compressible: false + charset: '' + } + 'application/vnd.obn': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ocf+cbor': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oci.image.manifest.v1+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oftn.l10n+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oipf.contentaccessdownload+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oipf.contentaccessstreaming+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oipf.cspg-hexbinary': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oipf.dae.svg+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oipf.dae.xhtml+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oipf.mippvcontrolmessage+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oipf.pae.gem': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oipf.spdiscovery+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oipf.spdlist+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oipf.ueprofile+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oipf.userprofile+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.olpc-sugar': MimeType{ + source: 'iana' + extensions: ['xo'] + compressible: false + charset: '' + } + 'application/vnd.oma-scws-config': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma-scws-http-request': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma-scws-http-response': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma.bcast.associated-procedure-parameter+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.bcast.drm-trigger+xml': MimeType{ + source: 'apache' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.bcast.imd+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.bcast.ltkm': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma.bcast.notification+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.bcast.provisioningtrigger': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma.bcast.sgboot': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma.bcast.sgdd+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.bcast.sgdu': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma.bcast.simple-symbol-container': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma.bcast.smartcard-trigger+xml': MimeType{ + source: 'apache' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.bcast.sprov+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.bcast.stkm': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma.cab-address-book+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.cab-feature-handler+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.cab-pcc+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.cab-subs-invite+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.cab-user-prefs+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.dcd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma.dcdc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma.dd2+xml': MimeType{ + source: 'iana' + extensions: ['dd2'] + compressible: true + charset: '' + } + 'application/vnd.oma.drm.risd+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.group-usage-list+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.lwm2m+cbor': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma.lwm2m+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.lwm2m+tlv': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma.pal+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.poc.detailed-progress-report+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.poc.final-report+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.poc.groups+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.poc.invocation-descriptor+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.poc.optimized-progress-report+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.push': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.oma.scidm.messages+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oma.xcap-directory+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.omads-email+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/vnd.omads-file+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/vnd.omads-folder+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/vnd.omaloc-supl-init': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.onepager': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.onepagertamp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.onepagertamx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.onepagertat': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.onepagertatp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.onepagertatx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.onvif.metadata': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.openblox.game+xml': MimeType{ + source: 'iana' + extensions: ['obgx'] + compressible: true + charset: '' + } + 'application/vnd.openblox.game-binary': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.openeye.oeb': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.openofficeorg.extension': MimeType{ + source: 'apache' + extensions: ['oxt'] + compressible: false + charset: '' + } + 'application/vnd.openstreetmap.data+xml': MimeType{ + source: 'iana' + extensions: ['osm'] + compressible: true + charset: '' + } + 'application/vnd.opentimestamps.ots': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.openxmlformats-officedocument.custom-properties+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.customxmlproperties+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.drawing+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.drawingml.chart+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.extended-properties+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.comments+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.presentation': MimeType{ + source: 'iana' + extensions: ['pptx'] + compressible: false + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.presprops+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.slide': MimeType{ + source: 'iana' + extensions: ['sldx'] + compressible: false + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.slide+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.slideshow': MimeType{ + source: 'iana' + extensions: ['ppsx'] + compressible: false + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.tags+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.template': MimeType{ + source: 'iana' + extensions: ['potx'] + compressible: false + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.template.main+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': MimeType{ + source: 'iana' + extensions: ['xlsx'] + compressible: false + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.template': MimeType{ + source: 'iana' + extensions: ['xltx'] + compressible: false + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.theme+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.themeoverride+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.vmldrawing': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.document': MimeType{ + source: 'iana' + extensions: ['docx'] + compressible: false + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.template': MimeType{ + source: 'iana' + extensions: ['dotx'] + compressible: false + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-package.core-properties+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.openxmlformats-package.relationships+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oracle.resource+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.orange.indata': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.osa.netdeploy': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.osgeo.mapguide.package': MimeType{ + source: 'iana' + extensions: ['mgp'] + compressible: false + charset: '' + } + 'application/vnd.osgi.bundle': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.osgi.dp': MimeType{ + source: 'iana' + extensions: ['dp'] + compressible: false + charset: '' + } + 'application/vnd.osgi.subsystem': MimeType{ + source: 'iana' + extensions: ['esa'] + compressible: false + charset: '' + } + 'application/vnd.otps.ct-kip+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.oxli.countgraph': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.pagerduty+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.palm': MimeType{ + source: 'iana' + extensions: ['pdb', 'pqa', 'oprc'] + compressible: false + charset: '' + } + 'application/vnd.panoply': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.paos.xml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.patentdive': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.patientecommsdoc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.pawaafile': MimeType{ + source: 'iana' + extensions: ['paw'] + compressible: false + charset: '' + } + 'application/vnd.pcos': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.pg.format': MimeType{ + source: 'iana' + extensions: ['str'] + compressible: false + charset: '' + } + 'application/vnd.pg.osasli': MimeType{ + source: 'iana' + extensions: ['ei6'] + compressible: false + charset: '' + } + 'application/vnd.piaccess.application-licence': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.picsel': MimeType{ + source: 'iana' + extensions: ['efif'] + compressible: false + charset: '' + } + 'application/vnd.pmi.widget': MimeType{ + source: 'iana' + extensions: ['wg'] + compressible: false + charset: '' + } + 'application/vnd.poc.group-advertisement+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.pocketlearn': MimeType{ + source: 'iana' + extensions: ['plf'] + compressible: false + charset: '' + } + 'application/vnd.powerbuilder6': MimeType{ + source: 'iana' + extensions: ['pbd'] + compressible: false + charset: '' + } + 'application/vnd.powerbuilder6-s': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.powerbuilder7': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.powerbuilder7-s': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.powerbuilder75': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.powerbuilder75-s': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.preminet': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.previewsystems.box': MimeType{ + source: 'iana' + extensions: ['box'] + compressible: false + charset: '' + } + 'application/vnd.proteus.magazine': MimeType{ + source: 'iana' + extensions: ['mgz'] + compressible: false + charset: '' + } + 'application/vnd.psfs': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.publishare-delta-tree': MimeType{ + source: 'iana' + extensions: ['qps'] + compressible: false + charset: '' + } + 'application/vnd.pvi.ptid1': MimeType{ + source: 'iana' + extensions: ['ptid'] + compressible: false + charset: '' + } + 'application/vnd.pwg-multiplexed': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.pwg-xhtml-print+xml': MimeType{ + source: 'iana' + extensions: ['xhtm'] + compressible: true + charset: '' + } + 'application/vnd.qualcomm.brew-app-res': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.quarantainenet': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.quark.quarkxpress': MimeType{ + source: 'iana' + extensions: ['qxd', 'qxt', 'qwd', 'qwt', 'qxl', 'qxb'] + compressible: false + charset: '' + } + 'application/vnd.quobject-quoxdocument': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.radisys.moml+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-audit+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-audit-conf+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-audit-conn+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-audit-dialog+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-audit-stream+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-conf+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-dialog+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-dialog-base+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-dialog-fax-detect+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-dialog-fax-sendrecv+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-dialog-group+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-dialog-speech+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.radisys.msml-dialog-transform+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.rainstor.data': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.rapid': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.rar': MimeType{ + source: 'iana' + extensions: ['rar'] + compressible: false + charset: '' + } + 'application/vnd.realvnc.bed': MimeType{ + source: 'iana' + extensions: ['bed'] + compressible: false + charset: '' + } + 'application/vnd.recordare.musicxml': MimeType{ + source: 'iana' + extensions: ['mxl'] + compressible: false + charset: '' + } + 'application/vnd.recordare.musicxml+xml': MimeType{ + source: 'iana' + extensions: ['musicxml'] + compressible: true + charset: '' + } + 'application/vnd.renlearn.rlprint': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.resilient.logic': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.restful+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.rig.cryptonote': MimeType{ + source: 'iana' + extensions: ['cryptonote'] + compressible: false + charset: '' + } + 'application/vnd.rim.cod': MimeType{ + source: 'apache' + extensions: ['cod'] + compressible: false + charset: '' + } + 'application/vnd.rn-realmedia': MimeType{ + source: 'apache' + extensions: ['rm'] + compressible: false + charset: '' + } + 'application/vnd.rn-realmedia-vbr': MimeType{ + source: 'apache' + extensions: ['rmvb'] + compressible: false + charset: '' + } + 'application/vnd.route66.link66+xml': MimeType{ + source: 'iana' + extensions: ['link66'] + compressible: true + charset: '' + } + 'application/vnd.rs-274x': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ruckus.download': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.s3sms': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sailingtracker.track': MimeType{ + source: 'iana' + extensions: ['st'] + compressible: false + charset: '' + } + 'application/vnd.sar': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sbm.cid': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sbm.mid2': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.scribus': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sealed.3df': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sealed.csf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sealed.doc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sealed.eml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sealed.mht': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sealed.net': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sealed.ppt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sealed.tiff': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sealed.xls': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sealedmedia.softseal.html': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sealedmedia.softseal.pdf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.seemail': MimeType{ + source: 'iana' + extensions: ['see'] + compressible: false + charset: '' + } + 'application/vnd.seis+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.sema': MimeType{ + source: 'iana' + extensions: ['sema'] + compressible: false + charset: '' + } + 'application/vnd.semd': MimeType{ + source: 'iana' + extensions: ['semd'] + compressible: false + charset: '' + } + 'application/vnd.semf': MimeType{ + source: 'iana' + extensions: ['semf'] + compressible: false + charset: '' + } + 'application/vnd.shade-save-file': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.shana.informed.formdata': MimeType{ + source: 'iana' + extensions: ['ifm'] + compressible: false + charset: '' + } + 'application/vnd.shana.informed.formtemplate': MimeType{ + source: 'iana' + extensions: ['itp'] + compressible: false + charset: '' + } + 'application/vnd.shana.informed.interchange': MimeType{ + source: 'iana' + extensions: ['iif'] + compressible: false + charset: '' + } + 'application/vnd.shana.informed.package': MimeType{ + source: 'iana' + extensions: ['ipk'] + compressible: false + charset: '' + } + 'application/vnd.shootproof+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.shopkick+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.shp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.shx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sigrok.session': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.simtech-mindmapper': MimeType{ + source: 'iana' + extensions: ['twd', 'twds'] + compressible: false + charset: '' + } + 'application/vnd.siren+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.smaf': MimeType{ + source: 'iana' + extensions: ['mmf'] + compressible: false + charset: '' + } + 'application/vnd.smart.notebook': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.smart.teacher': MimeType{ + source: 'iana' + extensions: ['teacher'] + compressible: false + charset: '' + } + 'application/vnd.snesdev-page-table': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.software602.filler.form+xml': MimeType{ + source: 'iana' + extensions: ['fo'] + compressible: true + charset: '' + } + 'application/vnd.software602.filler.form-xml-zip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.solent.sdkm+xml': MimeType{ + source: 'iana' + extensions: ['sdkm', 'sdkd'] + compressible: true + charset: '' + } + 'application/vnd.spotfire.dxp': MimeType{ + source: 'iana' + extensions: ['dxp'] + compressible: false + charset: '' + } + 'application/vnd.spotfire.sfs': MimeType{ + source: 'iana' + extensions: ['sfs'] + compressible: false + charset: '' + } + 'application/vnd.sqlite3': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sss-cod': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sss-dtf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sss-ntf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.stardivision.calc': MimeType{ + source: 'apache' + extensions: ['sdc'] + compressible: false + charset: '' + } + 'application/vnd.stardivision.draw': MimeType{ + source: 'apache' + extensions: ['sda'] + compressible: false + charset: '' + } + 'application/vnd.stardivision.impress': MimeType{ + source: 'apache' + extensions: ['sdd'] + compressible: false + charset: '' + } + 'application/vnd.stardivision.math': MimeType{ + source: 'apache' + extensions: ['smf'] + compressible: false + charset: '' + } + 'application/vnd.stardivision.writer': MimeType{ + source: 'apache' + extensions: ['sdw', 'vor'] + compressible: false + charset: '' + } + 'application/vnd.stardivision.writer-global': MimeType{ + source: 'apache' + extensions: ['sgl'] + compressible: false + charset: '' + } + 'application/vnd.stepmania.package': MimeType{ + source: 'iana' + extensions: ['smzip'] + compressible: false + charset: '' + } + 'application/vnd.stepmania.stepchart': MimeType{ + source: 'iana' + extensions: ['sm'] + compressible: false + charset: '' + } + 'application/vnd.street-stream': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sun.wadl+xml': MimeType{ + source: 'iana' + extensions: ['wadl'] + compressible: true + charset: '' + } + 'application/vnd.sun.xml.calc': MimeType{ + source: 'apache' + extensions: ['sxc'] + compressible: false + charset: '' + } + 'application/vnd.sun.xml.calc.template': MimeType{ + source: 'apache' + extensions: ['stc'] + compressible: false + charset: '' + } + 'application/vnd.sun.xml.draw': MimeType{ + source: 'apache' + extensions: ['sxd'] + compressible: false + charset: '' + } + 'application/vnd.sun.xml.draw.template': MimeType{ + source: 'apache' + extensions: ['std'] + compressible: false + charset: '' + } + 'application/vnd.sun.xml.impress': MimeType{ + source: 'apache' + extensions: ['sxi'] + compressible: false + charset: '' + } + 'application/vnd.sun.xml.impress.template': MimeType{ + source: 'apache' + extensions: ['sti'] + compressible: false + charset: '' + } + 'application/vnd.sun.xml.math': MimeType{ + source: 'apache' + extensions: ['sxm'] + compressible: false + charset: '' + } + 'application/vnd.sun.xml.writer': MimeType{ + source: 'apache' + extensions: ['sxw'] + compressible: false + charset: '' + } + 'application/vnd.sun.xml.writer.global': MimeType{ + source: 'apache' + extensions: ['sxg'] + compressible: false + charset: '' + } + 'application/vnd.sun.xml.writer.template': MimeType{ + source: 'apache' + extensions: ['stw'] + compressible: false + charset: '' + } + 'application/vnd.sus-calendar': MimeType{ + source: 'iana' + extensions: ['sus', 'susp'] + compressible: false + charset: '' + } + 'application/vnd.svd': MimeType{ + source: 'iana' + extensions: ['svd'] + compressible: false + charset: '' + } + 'application/vnd.swiftview-ics': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.sycle+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.syft+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.symbian.install': MimeType{ + source: 'apache' + extensions: ['sis', 'sisx'] + compressible: false + charset: '' + } + 'application/vnd.syncml+xml': MimeType{ + source: 'iana' + extensions: ['xsm'] + compressible: true + charset: 'UTF-8' + } + 'application/vnd.syncml.dm+wbxml': MimeType{ + source: 'iana' + extensions: ['bdm'] + compressible: false + charset: 'UTF-8' + } + 'application/vnd.syncml.dm+xml': MimeType{ + source: 'iana' + extensions: ['xdm'] + compressible: true + charset: 'UTF-8' + } + 'application/vnd.syncml.dm.notification': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.syncml.dmddf+wbxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.syncml.dmddf+xml': MimeType{ + source: 'iana' + extensions: ['ddf'] + compressible: true + charset: 'UTF-8' + } + 'application/vnd.syncml.dmtnds+wbxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.syncml.dmtnds+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: 'UTF-8' + } + 'application/vnd.syncml.ds.notification': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.tableschema+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.tao.intent-module-archive': MimeType{ + source: 'iana' + extensions: ['tao'] + compressible: false + charset: '' + } + 'application/vnd.tcpdump.pcap': MimeType{ + source: 'iana' + extensions: ['pcap', 'cap', 'dmp'] + compressible: false + charset: '' + } + 'application/vnd.think-cell.ppttc+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.tmd.mediaflex.api+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.tml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.tmobile-livetv': MimeType{ + source: 'iana' + extensions: ['tmo'] + compressible: false + charset: '' + } + 'application/vnd.tri.onesource': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.trid.tpt': MimeType{ + source: 'iana' + extensions: ['tpt'] + compressible: false + charset: '' + } + 'application/vnd.triscape.mxs': MimeType{ + source: 'iana' + extensions: ['mxs'] + compressible: false + charset: '' + } + 'application/vnd.trueapp': MimeType{ + source: 'iana' + extensions: ['tra'] + compressible: false + charset: '' + } + 'application/vnd.truedoc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ubisoft.webplayer': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ufdl': MimeType{ + source: 'iana' + extensions: ['ufd', 'ufdl'] + compressible: false + charset: '' + } + 'application/vnd.uiq.theme': MimeType{ + source: 'iana' + extensions: ['utz'] + compressible: false + charset: '' + } + 'application/vnd.umajin': MimeType{ + source: 'iana' + extensions: ['umj'] + compressible: false + charset: '' + } + 'application/vnd.unity': MimeType{ + source: 'iana' + extensions: ['unityweb'] + compressible: false + charset: '' + } + 'application/vnd.uoml+xml': MimeType{ + source: 'iana' + extensions: ['uoml', 'uo'] + compressible: true + charset: '' + } + 'application/vnd.uplanet.alert': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uplanet.alert-wbxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uplanet.bearer-choice': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uplanet.bearer-choice-wbxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uplanet.cacheop': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uplanet.cacheop-wbxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uplanet.channel': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uplanet.channel-wbxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uplanet.list': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uplanet.list-wbxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uplanet.listcmd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uplanet.listcmd-wbxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uplanet.signal': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.uri-map': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.valve.source.material': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.vcx': MimeType{ + source: 'iana' + extensions: ['vcx'] + compressible: false + charset: '' + } + 'application/vnd.vd-study': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.vectorworks': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.vel+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.verimatrix.vcas': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.veritone.aion+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.veryant.thin': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.ves.encrypted': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.vidsoft.vidconference': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.visio': MimeType{ + source: 'iana' + extensions: ['vsd', 'vst', 'vss', 'vsw'] + compressible: false + charset: '' + } + 'application/vnd.visionary': MimeType{ + source: 'iana' + extensions: ['vis'] + compressible: false + charset: '' + } + 'application/vnd.vividence.scriptfile': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.vsf': MimeType{ + source: 'iana' + extensions: ['vsf'] + compressible: false + charset: '' + } + 'application/vnd.wap.sic': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.wap.slc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.wap.wbxml': MimeType{ + source: 'iana' + extensions: ['wbxml'] + compressible: false + charset: 'UTF-8' + } + 'application/vnd.wap.wmlc': MimeType{ + source: 'iana' + extensions: ['wmlc'] + compressible: false + charset: '' + } + 'application/vnd.wap.wmlscriptc': MimeType{ + source: 'iana' + extensions: ['wmlsc'] + compressible: false + charset: '' + } + 'application/vnd.webturbo': MimeType{ + source: 'iana' + extensions: ['wtb'] + compressible: false + charset: '' + } + 'application/vnd.wfa.dpp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.wfa.p2p': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.wfa.wsc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.windows.devicepairing': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.wmc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.wmf.bootstrap': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.wolfram.mathematica': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.wolfram.mathematica.package': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.wolfram.player': MimeType{ + source: 'iana' + extensions: ['nbp'] + compressible: false + charset: '' + } + 'application/vnd.wordperfect': MimeType{ + source: 'iana' + extensions: ['wpd'] + compressible: false + charset: '' + } + 'application/vnd.wqd': MimeType{ + source: 'iana' + extensions: ['wqd'] + compressible: false + charset: '' + } + 'application/vnd.wrq-hp3000-labelled': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.wt.stf': MimeType{ + source: 'iana' + extensions: ['stf'] + compressible: false + charset: '' + } + 'application/vnd.wv.csp+wbxml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.wv.csp+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.wv.ssp+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.xacml+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.xara': MimeType{ + source: 'iana' + extensions: ['xar'] + compressible: false + charset: '' + } + 'application/vnd.xfdl': MimeType{ + source: 'iana' + extensions: ['xfdl'] + compressible: false + charset: '' + } + 'application/vnd.xfdl.webform': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.xmi+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vnd.xmpie.cpkg': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.xmpie.dpkg': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.xmpie.plan': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.xmpie.ppkg': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.xmpie.xlim': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.yamaha.hv-dic': MimeType{ + source: 'iana' + extensions: ['hvd'] + compressible: false + charset: '' + } + 'application/vnd.yamaha.hv-script': MimeType{ + source: 'iana' + extensions: ['hvs'] + compressible: false + charset: '' + } + 'application/vnd.yamaha.hv-voice': MimeType{ + source: 'iana' + extensions: ['hvp'] + compressible: false + charset: '' + } + 'application/vnd.yamaha.openscoreformat': MimeType{ + source: 'iana' + extensions: ['osf'] + compressible: false + charset: '' + } + 'application/vnd.yamaha.openscoreformat.osfpvg+xml': MimeType{ + source: 'iana' + extensions: ['osfpvg'] + compressible: true + charset: '' + } + 'application/vnd.yamaha.remote-setup': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.yamaha.smaf-audio': MimeType{ + source: 'iana' + extensions: ['saf'] + compressible: false + charset: '' + } + 'application/vnd.yamaha.smaf-phrase': MimeType{ + source: 'iana' + extensions: ['spf'] + compressible: false + charset: '' + } + 'application/vnd.yamaha.through-ngn': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.yamaha.tunnel-udpencap': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.yaoweme': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/vnd.yellowriver-custom-menu': MimeType{ + source: 'iana' + extensions: ['cmp'] + compressible: false + charset: '' + } + 'application/vnd.zul': MimeType{ + source: 'iana' + extensions: ['zir', 'zirz'] + compressible: false + charset: '' + } + 'application/vnd.zzazz.deck+xml': MimeType{ + source: 'iana' + extensions: ['zaz'] + compressible: true + charset: '' + } + 'application/voicexml+xml': MimeType{ + source: 'iana' + extensions: ['vxml'] + compressible: true + charset: '' + } + 'application/voucher-cms+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/vq-rtcpxr': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/wasm': MimeType{ + source: 'iana' + extensions: ['wasm'] + compressible: true + charset: '' + } + 'application/watcherinfo+xml': MimeType{ + source: 'iana' + extensions: ['wif'] + compressible: true + charset: '' + } + 'application/webpush-options+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/whoispp-query': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/whoispp-response': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/widget': MimeType{ + source: 'iana' + extensions: ['wgt'] + compressible: false + charset: '' + } + 'application/winhlp': MimeType{ + source: 'apache' + extensions: ['hlp'] + compressible: false + charset: '' + } + 'application/wita': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/wordperfect5.1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/wsdl+xml': MimeType{ + source: 'iana' + extensions: ['wsdl'] + compressible: true + charset: '' + } + 'application/wspolicy+xml': MimeType{ + source: 'iana' + extensions: ['wspolicy'] + compressible: true + charset: '' + } + 'application/x-7z-compressed': MimeType{ + source: 'apache' + extensions: ['7z'] + compressible: false + charset: '' + } + 'application/x-abiword': MimeType{ + source: 'apache' + extensions: ['abw'] + compressible: false + charset: '' + } + 'application/x-ace-compressed': MimeType{ + source: 'apache' + extensions: ['ace'] + compressible: false + charset: '' + } + 'application/x-amf': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/x-apple-diskimage': MimeType{ + source: 'apache' + extensions: ['dmg'] + compressible: false + charset: '' + } + 'application/x-arj': MimeType{ + source: '' + extensions: ['arj'] + compressible: false + charset: '' + } + 'application/x-authorware-bin': MimeType{ + source: 'apache' + extensions: ['aab', 'x32', 'u32', 'vox'] + compressible: false + charset: '' + } + 'application/x-authorware-map': MimeType{ + source: 'apache' + extensions: ['aam'] + compressible: false + charset: '' + } + 'application/x-authorware-seg': MimeType{ + source: 'apache' + extensions: ['aas'] + compressible: false + charset: '' + } + 'application/x-bcpio': MimeType{ + source: 'apache' + extensions: ['bcpio'] + compressible: false + charset: '' + } + 'application/x-bdoc': MimeType{ + source: '' + extensions: ['bdoc'] + compressible: false + charset: '' + } + 'application/x-bittorrent': MimeType{ + source: 'apache' + extensions: ['torrent'] + compressible: false + charset: '' + } + 'application/x-blorb': MimeType{ + source: 'apache' + extensions: ['blb', 'blorb'] + compressible: false + charset: '' + } + 'application/x-bzip': MimeType{ + source: 'apache' + extensions: ['bz'] + compressible: false + charset: '' + } + 'application/x-bzip2': MimeType{ + source: 'apache' + extensions: ['bz2', 'boz'] + compressible: false + charset: '' + } + 'application/x-cbr': MimeType{ + source: 'apache' + extensions: ['cbr', 'cba', 'cbt', 'cbz', 'cb7'] + compressible: false + charset: '' + } + 'application/x-cdlink': MimeType{ + source: 'apache' + extensions: ['vcd'] + compressible: false + charset: '' + } + 'application/x-cfs-compressed': MimeType{ + source: 'apache' + extensions: ['cfs'] + compressible: false + charset: '' + } + 'application/x-chat': MimeType{ + source: 'apache' + extensions: ['chat'] + compressible: false + charset: '' + } + 'application/x-chess-pgn': MimeType{ + source: 'apache' + extensions: ['pgn'] + compressible: false + charset: '' + } + 'application/x-chrome-extension': MimeType{ + source: '' + extensions: ['crx'] + compressible: false + charset: '' + } + 'application/x-cocoa': MimeType{ + source: 'nginx' + extensions: ['cco'] + compressible: false + charset: '' + } + 'application/x-compress': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/x-conference': MimeType{ + source: 'apache' + extensions: ['nsc'] + compressible: false + charset: '' + } + 'application/x-cpio': MimeType{ + source: 'apache' + extensions: ['cpio'] + compressible: false + charset: '' + } + 'application/x-csh': MimeType{ + source: 'apache' + extensions: ['csh'] + compressible: false + charset: '' + } + 'application/x-deb': MimeType{ + source: '' + extensions: [] + compressible: false + charset: '' + } + 'application/x-debian-package': MimeType{ + source: 'apache' + extensions: ['deb', 'udeb'] + compressible: false + charset: '' + } + 'application/x-dgc-compressed': MimeType{ + source: 'apache' + extensions: ['dgc'] + compressible: false + charset: '' + } + 'application/x-director': MimeType{ + source: 'apache' + extensions: ['dir', 'dcr', 'dxr', 'cst', 'cct', 'cxt', 'w3d', 'fgd', 'swa'] + compressible: false + charset: '' + } + 'application/x-doom': MimeType{ + source: 'apache' + extensions: ['wad'] + compressible: false + charset: '' + } + 'application/x-dtbncx+xml': MimeType{ + source: 'apache' + extensions: ['ncx'] + compressible: true + charset: '' + } + 'application/x-dtbook+xml': MimeType{ + source: 'apache' + extensions: ['dtb'] + compressible: true + charset: '' + } + 'application/x-dtbresource+xml': MimeType{ + source: 'apache' + extensions: ['res'] + compressible: true + charset: '' + } + 'application/x-dvi': MimeType{ + source: 'apache' + extensions: ['dvi'] + compressible: false + charset: '' + } + 'application/x-envoy': MimeType{ + source: 'apache' + extensions: ['evy'] + compressible: false + charset: '' + } + 'application/x-eva': MimeType{ + source: 'apache' + extensions: ['eva'] + compressible: false + charset: '' + } + 'application/x-font-bdf': MimeType{ + source: 'apache' + extensions: ['bdf'] + compressible: false + charset: '' + } + 'application/x-font-dos': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/x-font-framemaker': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/x-font-ghostscript': MimeType{ + source: 'apache' + extensions: ['gsf'] + compressible: false + charset: '' + } + 'application/x-font-libgrx': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/x-font-linux-psf': MimeType{ + source: 'apache' + extensions: ['psf'] + compressible: false + charset: '' + } + 'application/x-font-pcf': MimeType{ + source: 'apache' + extensions: ['pcf'] + compressible: false + charset: '' + } + 'application/x-font-snf': MimeType{ + source: 'apache' + extensions: ['snf'] + compressible: false + charset: '' + } + 'application/x-font-speedo': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/x-font-sunos-news': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/x-font-type1': MimeType{ + source: 'apache' + extensions: ['pfa', 'pfb', 'pfm', 'afm'] + compressible: false + charset: '' + } + 'application/x-font-vfont': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/x-freearc': MimeType{ + source: 'apache' + extensions: ['arc'] + compressible: false + charset: '' + } + 'application/x-futuresplash': MimeType{ + source: 'apache' + extensions: ['spl'] + compressible: false + charset: '' + } + 'application/x-gca-compressed': MimeType{ + source: 'apache' + extensions: ['gca'] + compressible: false + charset: '' + } + 'application/x-glulx': MimeType{ + source: 'apache' + extensions: ['ulx'] + compressible: false + charset: '' + } + 'application/x-gnumeric': MimeType{ + source: 'apache' + extensions: ['gnumeric'] + compressible: false + charset: '' + } + 'application/x-gramps-xml': MimeType{ + source: 'apache' + extensions: ['gramps'] + compressible: false + charset: '' + } + 'application/x-gtar': MimeType{ + source: 'apache' + extensions: ['gtar'] + compressible: false + charset: '' + } + 'application/x-gzip': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'application/x-hdf': MimeType{ + source: 'apache' + extensions: ['hdf'] + compressible: false + charset: '' + } + 'application/x-httpd-php': MimeType{ + source: '' + extensions: ['php'] + compressible: true + charset: '' + } + 'application/x-install-instructions': MimeType{ + source: 'apache' + extensions: ['install'] + compressible: false + charset: '' + } + 'application/x-iso9660-image': MimeType{ + source: 'apache' + extensions: ['iso'] + compressible: false + charset: '' + } + 'application/x-iwork-keynote-sffkey': MimeType{ + source: '' + extensions: ['key'] + compressible: false + charset: '' + } + 'application/x-iwork-numbers-sffnumbers': MimeType{ + source: '' + extensions: ['numbers'] + compressible: false + charset: '' + } + 'application/x-iwork-pages-sffpages': MimeType{ + source: '' + extensions: ['pages'] + compressible: false + charset: '' + } + 'application/x-java-archive-diff': MimeType{ + source: 'nginx' + extensions: ['jardiff'] + compressible: false + charset: '' + } + 'application/x-java-jnlp-file': MimeType{ + source: 'apache' + extensions: ['jnlp'] + compressible: false + charset: '' + } + 'application/x-javascript': MimeType{ + source: '' + extensions: [] + compressible: true + charset: '' + } + 'application/x-keepass2': MimeType{ + source: '' + extensions: ['kdbx'] + compressible: false + charset: '' + } + 'application/x-latex': MimeType{ + source: 'apache' + extensions: ['latex'] + compressible: false + charset: '' + } + 'application/x-lua-bytecode': MimeType{ + source: '' + extensions: ['luac'] + compressible: false + charset: '' + } + 'application/x-lzh-compressed': MimeType{ + source: 'apache' + extensions: ['lzh', 'lha'] + compressible: false + charset: '' + } + 'application/x-makeself': MimeType{ + source: 'nginx' + extensions: ['run'] + compressible: false + charset: '' + } + 'application/x-mie': MimeType{ + source: 'apache' + extensions: ['mie'] + compressible: false + charset: '' + } + 'application/x-mobipocket-ebook': MimeType{ + source: 'apache' + extensions: ['prc', 'mobi'] + compressible: false + charset: '' + } + 'application/x-mpegurl': MimeType{ + source: '' + extensions: [] + compressible: false + charset: '' + } + 'application/x-ms-application': MimeType{ + source: 'apache' + extensions: ['application'] + compressible: false + charset: '' + } + 'application/x-ms-shortcut': MimeType{ + source: 'apache' + extensions: ['lnk'] + compressible: false + charset: '' + } + 'application/x-ms-wmd': MimeType{ + source: 'apache' + extensions: ['wmd'] + compressible: false + charset: '' + } + 'application/x-ms-wmz': MimeType{ + source: 'apache' + extensions: ['wmz'] + compressible: false + charset: '' + } + 'application/x-ms-xbap': MimeType{ + source: 'apache' + extensions: ['xbap'] + compressible: false + charset: '' + } + 'application/x-msaccess': MimeType{ + source: 'apache' + extensions: ['mdb'] + compressible: false + charset: '' + } + 'application/x-msbinder': MimeType{ + source: 'apache' + extensions: ['obd'] + compressible: false + charset: '' + } + 'application/x-mscardfile': MimeType{ + source: 'apache' + extensions: ['crd'] + compressible: false + charset: '' + } + 'application/x-msclip': MimeType{ + source: 'apache' + extensions: ['clp'] + compressible: false + charset: '' + } + 'application/x-msdos-program': MimeType{ + source: '' + extensions: ['exe'] + compressible: false + charset: '' + } + 'application/x-msdownload': MimeType{ + source: 'apache' + extensions: ['exe', 'dll', 'com', 'bat', 'msi'] + compressible: false + charset: '' + } + 'application/x-msmediaview': MimeType{ + source: 'apache' + extensions: ['mvb', 'm13', 'm14'] + compressible: false + charset: '' + } + 'application/x-msmetafile': MimeType{ + source: 'apache' + extensions: ['wmf', 'wmz', 'emf', 'emz'] + compressible: false + charset: '' + } + 'application/x-msmoney': MimeType{ + source: 'apache' + extensions: ['mny'] + compressible: false + charset: '' + } + 'application/x-mspublisher': MimeType{ + source: 'apache' + extensions: ['pub'] + compressible: false + charset: '' + } + 'application/x-msschedule': MimeType{ + source: 'apache' + extensions: ['scd'] + compressible: false + charset: '' + } + 'application/x-msterminal': MimeType{ + source: 'apache' + extensions: ['trm'] + compressible: false + charset: '' + } + 'application/x-mswrite': MimeType{ + source: 'apache' + extensions: ['wri'] + compressible: false + charset: '' + } + 'application/x-netcdf': MimeType{ + source: 'apache' + extensions: ['nc', 'cdf'] + compressible: false + charset: '' + } + 'application/x-ns-proxy-autoconfig': MimeType{ + source: '' + extensions: ['pac'] + compressible: true + charset: '' + } + 'application/x-nzb': MimeType{ + source: 'apache' + extensions: ['nzb'] + compressible: false + charset: '' + } + 'application/x-perl': MimeType{ + source: 'nginx' + extensions: ['pl', 'pm'] + compressible: false + charset: '' + } + 'application/x-pilot': MimeType{ + source: 'nginx' + extensions: ['prc', 'pdb'] + compressible: false + charset: '' + } + 'application/x-pkcs12': MimeType{ + source: 'apache' + extensions: ['p12', 'pfx'] + compressible: false + charset: '' + } + 'application/x-pkcs7-certificates': MimeType{ + source: 'apache' + extensions: ['p7b', 'spc'] + compressible: false + charset: '' + } + 'application/x-pkcs7-certreqresp': MimeType{ + source: 'apache' + extensions: ['p7r'] + compressible: false + charset: '' + } + 'application/x-pki-message': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/x-rar-compressed': MimeType{ + source: 'apache' + extensions: ['rar'] + compressible: false + charset: '' + } + 'application/x-redhat-package-manager': MimeType{ + source: 'nginx' + extensions: ['rpm'] + compressible: false + charset: '' + } + 'application/x-research-info-systems': MimeType{ + source: 'apache' + extensions: ['ris'] + compressible: false + charset: '' + } + 'application/x-sea': MimeType{ + source: 'nginx' + extensions: ['sea'] + compressible: false + charset: '' + } + 'application/x-sh': MimeType{ + source: 'apache' + extensions: ['sh'] + compressible: true + charset: '' + } + 'application/x-shar': MimeType{ + source: 'apache' + extensions: ['shar'] + compressible: false + charset: '' + } + 'application/x-shockwave-flash': MimeType{ + source: 'apache' + extensions: ['swf'] + compressible: false + charset: '' + } + 'application/x-silverlight-app': MimeType{ + source: 'apache' + extensions: ['xap'] + compressible: false + charset: '' + } + 'application/x-sql': MimeType{ + source: 'apache' + extensions: ['sql'] + compressible: false + charset: '' + } + 'application/x-stuffit': MimeType{ + source: 'apache' + extensions: ['sit'] + compressible: false + charset: '' + } + 'application/x-stuffitx': MimeType{ + source: 'apache' + extensions: ['sitx'] + compressible: false + charset: '' + } + 'application/x-subrip': MimeType{ + source: 'apache' + extensions: ['srt'] + compressible: false + charset: '' + } + 'application/x-sv4cpio': MimeType{ + source: 'apache' + extensions: ['sv4cpio'] + compressible: false + charset: '' + } + 'application/x-sv4crc': MimeType{ + source: 'apache' + extensions: ['sv4crc'] + compressible: false + charset: '' + } + 'application/x-t3vm-image': MimeType{ + source: 'apache' + extensions: ['t3'] + compressible: false + charset: '' + } + 'application/x-tads': MimeType{ + source: 'apache' + extensions: ['gam'] + compressible: false + charset: '' + } + 'application/x-tar': MimeType{ + source: 'apache' + extensions: ['tar'] + compressible: true + charset: '' + } + 'application/x-tcl': MimeType{ + source: 'apache' + extensions: ['tcl', 'tk'] + compressible: false + charset: '' + } + 'application/x-tex': MimeType{ + source: 'apache' + extensions: ['tex'] + compressible: false + charset: '' + } + 'application/x-tex-tfm': MimeType{ + source: 'apache' + extensions: ['tfm'] + compressible: false + charset: '' + } + 'application/x-texinfo': MimeType{ + source: 'apache' + extensions: ['texinfo', 'texi'] + compressible: false + charset: '' + } + 'application/x-tgif': MimeType{ + source: 'apache' + extensions: ['obj'] + compressible: false + charset: '' + } + 'application/x-ustar': MimeType{ + source: 'apache' + extensions: ['ustar'] + compressible: false + charset: '' + } + 'application/x-virtualbox-hdd': MimeType{ + source: '' + extensions: ['hdd'] + compressible: true + charset: '' + } + 'application/x-virtualbox-ova': MimeType{ + source: '' + extensions: ['ova'] + compressible: true + charset: '' + } + 'application/x-virtualbox-ovf': MimeType{ + source: '' + extensions: ['ovf'] + compressible: true + charset: '' + } + 'application/x-virtualbox-vbox': MimeType{ + source: '' + extensions: ['vbox'] + compressible: true + charset: '' + } + 'application/x-virtualbox-vbox-extpack': MimeType{ + source: '' + extensions: ['vbox-extpack'] + compressible: false + charset: '' + } + 'application/x-virtualbox-vdi': MimeType{ + source: '' + extensions: ['vdi'] + compressible: true + charset: '' + } + 'application/x-virtualbox-vhd': MimeType{ + source: '' + extensions: ['vhd'] + compressible: true + charset: '' + } + 'application/x-virtualbox-vmdk': MimeType{ + source: '' + extensions: ['vmdk'] + compressible: true + charset: '' + } + 'application/x-wais-source': MimeType{ + source: 'apache' + extensions: ['src'] + compressible: false + charset: '' + } + 'application/x-web-app-manifest+json': MimeType{ + source: '' + extensions: ['webapp'] + compressible: true + charset: '' + } + 'application/x-www-form-urlencoded': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/x-x509-ca-cert': MimeType{ + source: 'iana' + extensions: ['der', 'crt', 'pem'] + compressible: false + charset: '' + } + 'application/x-x509-ca-ra-cert': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/x-x509-next-ca-cert': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/x-xfig': MimeType{ + source: 'apache' + extensions: ['fig'] + compressible: false + charset: '' + } + 'application/x-xliff+xml': MimeType{ + source: 'apache' + extensions: ['xlf'] + compressible: true + charset: '' + } + 'application/x-xpinstall': MimeType{ + source: 'apache' + extensions: ['xpi'] + compressible: false + charset: '' + } + 'application/x-xz': MimeType{ + source: 'apache' + extensions: ['xz'] + compressible: false + charset: '' + } + 'application/x-zmachine': MimeType{ + source: 'apache' + extensions: ['z1', 'z2', 'z3', 'z4', 'z5', 'z6', 'z7', 'z8'] + compressible: false + charset: '' + } + 'application/x400-bp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/xacml+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/xaml+xml': MimeType{ + source: 'apache' + extensions: ['xaml'] + compressible: true + charset: '' + } + 'application/xcap-att+xml': MimeType{ + source: 'iana' + extensions: ['xav'] + compressible: true + charset: '' + } + 'application/xcap-caps+xml': MimeType{ + source: 'iana' + extensions: ['xca'] + compressible: true + charset: '' + } + 'application/xcap-diff+xml': MimeType{ + source: 'iana' + extensions: ['xdf'] + compressible: true + charset: '' + } + 'application/xcap-el+xml': MimeType{ + source: 'iana' + extensions: ['xel'] + compressible: true + charset: '' + } + 'application/xcap-error+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/xcap-ns+xml': MimeType{ + source: 'iana' + extensions: ['xns'] + compressible: true + charset: '' + } + 'application/xcon-conference-info+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/xcon-conference-info-diff+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/xenc+xml': MimeType{ + source: 'iana' + extensions: ['xenc'] + compressible: true + charset: '' + } + 'application/xfdf': MimeType{ + source: 'iana' + extensions: ['xfdf'] + compressible: false + charset: '' + } + 'application/xhtml+xml': MimeType{ + source: 'iana' + extensions: ['xhtml', 'xht'] + compressible: true + charset: '' + } + 'application/xhtml-voice+xml': MimeType{ + source: 'apache' + extensions: [] + compressible: true + charset: '' + } + 'application/xliff+xml': MimeType{ + source: 'iana' + extensions: ['xlf'] + compressible: true + charset: '' + } + 'application/xml': MimeType{ + source: 'iana' + extensions: ['xml', 'xsl', 'xsd', 'rng'] + compressible: true + charset: '' + } + 'application/xml-dtd': MimeType{ + source: 'iana' + extensions: ['dtd'] + compressible: true + charset: '' + } + 'application/xml-external-parsed-entity': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/xml-patch+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/xmpp+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/xop+xml': MimeType{ + source: 'iana' + extensions: ['xop'] + compressible: true + charset: '' + } + 'application/xproc+xml': MimeType{ + source: 'apache' + extensions: ['xpl'] + compressible: true + charset: '' + } + 'application/xslt+xml': MimeType{ + source: 'iana' + extensions: ['xsl', 'xslt'] + compressible: true + charset: '' + } + 'application/xspf+xml': MimeType{ + source: 'apache' + extensions: ['xspf'] + compressible: true + charset: '' + } + 'application/xv+xml': MimeType{ + source: 'iana' + extensions: ['mxml', 'xhvml', 'xvml', 'xvm'] + compressible: true + charset: '' + } + 'application/yang': MimeType{ + source: 'iana' + extensions: ['yang'] + compressible: false + charset: '' + } + 'application/yang-data+cbor': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/yang-data+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/yang-data+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/yang-patch+json': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/yang-patch+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'application/yin+xml': MimeType{ + source: 'iana' + extensions: ['yin'] + compressible: true + charset: '' + } + 'application/zip': MimeType{ + source: 'iana' + extensions: ['zip'] + compressible: false + charset: '' + } + 'application/zlib': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'application/zstd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/1d-interleaved-parityfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/32kadpcm': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/3gpp': MimeType{ + source: 'iana' + extensions: ['3gpp'] + compressible: false + charset: '' + } + 'audio/3gpp2': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/aac': MimeType{ + source: 'iana' + extensions: ['adts', 'aac'] + compressible: false + charset: '' + } + 'audio/ac3': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/adpcm': MimeType{ + source: 'apache' + extensions: ['adp'] + compressible: false + charset: '' + } + 'audio/amr': MimeType{ + source: 'iana' + extensions: ['amr'] + compressible: false + charset: '' + } + 'audio/amr-wb': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/amr-wb+': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/aptx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/asc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/atrac-advanced-lossless': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/atrac-x': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/atrac3': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/basic': MimeType{ + source: 'iana' + extensions: ['au', 'snd'] + compressible: false + charset: '' + } + 'audio/bv16': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/bv32': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/clearmode': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/cn': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/dat12': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/dls': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/dsr-es201108': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/dsr-es202050': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/dsr-es202211': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/dsr-es202212': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/dv': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/dvi4': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/eac3': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/encaprtp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrc-qcp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrc0': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrc1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrcb': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrcb0': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrcb1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrcnw': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrcnw0': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrcnw1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrcwb': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrcwb0': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evrcwb1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/evs': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/flexfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/fwdred': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g711-0': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g719': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g722': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g7221': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g723': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g726-16': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g726-24': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g726-32': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g726-40': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g728': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g729': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g7291': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g729d': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/g729e': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/gsm': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/gsm-efr': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/gsm-hr-08': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/ilbc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/ip-mr_v2.5': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/isac': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'audio/l16': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/l20': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/l24': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/l8': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/lpc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/melp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/melp1200': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/melp2400': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/melp600': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/mhas': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/midi': MimeType{ + source: 'apache' + extensions: ['mid', 'midi', 'kar', 'rmi'] + compressible: false + charset: '' + } + 'audio/mobile-xmf': MimeType{ + source: 'iana' + extensions: ['mxmf'] + compressible: false + charset: '' + } + 'audio/mp3': MimeType{ + source: '' + extensions: ['mp3'] + compressible: false + charset: '' + } + 'audio/mp4': MimeType{ + source: 'iana' + extensions: ['m4a', 'mp4a'] + compressible: false + charset: '' + } + 'audio/mp4a-latm': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/mpa': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/mpa-robust': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/mpeg': MimeType{ + source: 'iana' + extensions: ['mpga', 'mp2', 'mp2a', 'mp3', 'm2a', 'm3a'] + compressible: false + charset: '' + } + 'audio/mpeg4-generic': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/musepack': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'audio/ogg': MimeType{ + source: 'iana' + extensions: ['oga', 'ogg', 'spx', 'opus'] + compressible: false + charset: '' + } + 'audio/opus': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/parityfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/pcma': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/pcma-wb': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/pcmu': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/pcmu-wb': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/prs.sid': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/qcelp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/raptorfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/red': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/rtp-enc-aescm128': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/rtp-midi': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/rtploopback': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/rtx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/s3m': MimeType{ + source: 'apache' + extensions: ['s3m'] + compressible: false + charset: '' + } + 'audio/scip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/silk': MimeType{ + source: 'apache' + extensions: ['sil'] + compressible: false + charset: '' + } + 'audio/smv': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/smv-qcp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/smv0': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/sofa': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/sp-midi': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/speex': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/t140c': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/t38': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/telephone-event': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/tetra_acelp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/tetra_acelp_bb': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/tone': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/tsvcis': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/uemclip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/ulpfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/usac': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vdvi': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vmr-wb': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.3gpp.iufp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.4sb': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.audiokoz': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.celp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.cisco.nse': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.cmles.radio-events': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.cns.anp1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.cns.inf1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.dece.audio': MimeType{ + source: 'iana' + extensions: ['uva', 'uvva'] + compressible: false + charset: '' + } + 'audio/vnd.digital-winds': MimeType{ + source: 'iana' + extensions: ['eol'] + compressible: false + charset: '' + } + 'audio/vnd.dlna.adts': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.dolby.heaac.1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.dolby.heaac.2': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.dolby.mlp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.dolby.mps': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.dolby.pl2': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.dolby.pl2x': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.dolby.pl2z': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.dolby.pulse.1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.dra': MimeType{ + source: 'iana' + extensions: ['dra'] + compressible: false + charset: '' + } + 'audio/vnd.dts': MimeType{ + source: 'iana' + extensions: ['dts'] + compressible: false + charset: '' + } + 'audio/vnd.dts.hd': MimeType{ + source: 'iana' + extensions: ['dtshd'] + compressible: false + charset: '' + } + 'audio/vnd.dts.uhd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.dvb.file': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.everad.plj': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.hns.audio': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.lucent.voice': MimeType{ + source: 'iana' + extensions: ['lvp'] + compressible: false + charset: '' + } + 'audio/vnd.ms-playready.media.pya': MimeType{ + source: 'iana' + extensions: ['pya'] + compressible: false + charset: '' + } + 'audio/vnd.nokia.mobile-xmf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.nortel.vbk': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.nuera.ecelp4800': MimeType{ + source: 'iana' + extensions: ['ecelp4800'] + compressible: false + charset: '' + } + 'audio/vnd.nuera.ecelp7470': MimeType{ + source: 'iana' + extensions: ['ecelp7470'] + compressible: false + charset: '' + } + 'audio/vnd.nuera.ecelp9600': MimeType{ + source: 'iana' + extensions: ['ecelp9600'] + compressible: false + charset: '' + } + 'audio/vnd.octel.sbc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.presonus.multitrack': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.qcelp': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.rhetorex.32kadpcm': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.rip': MimeType{ + source: 'iana' + extensions: ['rip'] + compressible: false + charset: '' + } + 'audio/vnd.rn-realaudio': MimeType{ + source: '' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.sealedmedia.softseal.mpeg': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.vmx.cvsd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vnd.wave': MimeType{ + source: '' + extensions: [] + compressible: false + charset: '' + } + 'audio/vorbis': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/vorbis-config': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'audio/wav': MimeType{ + source: '' + extensions: ['wav'] + compressible: false + charset: '' + } + 'audio/wave': MimeType{ + source: '' + extensions: ['wav'] + compressible: false + charset: '' + } + 'audio/webm': MimeType{ + source: 'apache' + extensions: ['weba'] + compressible: false + charset: '' + } + 'audio/x-aac': MimeType{ + source: 'apache' + extensions: ['aac'] + compressible: false + charset: '' + } + 'audio/x-aiff': MimeType{ + source: 'apache' + extensions: ['aif', 'aiff', 'aifc'] + compressible: false + charset: '' + } + 'audio/x-caf': MimeType{ + source: 'apache' + extensions: ['caf'] + compressible: false + charset: '' + } + 'audio/x-flac': MimeType{ + source: 'apache' + extensions: ['flac'] + compressible: false + charset: '' + } + 'audio/x-m4a': MimeType{ + source: 'nginx' + extensions: ['m4a'] + compressible: false + charset: '' + } + 'audio/x-matroska': MimeType{ + source: 'apache' + extensions: ['mka'] + compressible: false + charset: '' + } + 'audio/x-mpegurl': MimeType{ + source: 'apache' + extensions: ['m3u'] + compressible: false + charset: '' + } + 'audio/x-ms-wax': MimeType{ + source: 'apache' + extensions: ['wax'] + compressible: false + charset: '' + } + 'audio/x-ms-wma': MimeType{ + source: 'apache' + extensions: ['wma'] + compressible: false + charset: '' + } + 'audio/x-pn-realaudio': MimeType{ + source: 'apache' + extensions: ['ram', 'ra'] + compressible: false + charset: '' + } + 'audio/x-pn-realaudio-plugin': MimeType{ + source: 'apache' + extensions: ['rmp'] + compressible: false + charset: '' + } + 'audio/x-realaudio': MimeType{ + source: 'nginx' + extensions: ['ra'] + compressible: false + charset: '' + } + 'audio/x-tta': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'audio/x-wav': MimeType{ + source: 'apache' + extensions: ['wav'] + compressible: false + charset: '' + } + 'audio/xm': MimeType{ + source: 'apache' + extensions: ['xm'] + compressible: false + charset: '' + } + 'chemical/x-cdx': MimeType{ + source: 'apache' + extensions: ['cdx'] + compressible: false + charset: '' + } + 'chemical/x-cif': MimeType{ + source: 'apache' + extensions: ['cif'] + compressible: false + charset: '' + } + 'chemical/x-cmdf': MimeType{ + source: 'apache' + extensions: ['cmdf'] + compressible: false + charset: '' + } + 'chemical/x-cml': MimeType{ + source: 'apache' + extensions: ['cml'] + compressible: false + charset: '' + } + 'chemical/x-csml': MimeType{ + source: 'apache' + extensions: ['csml'] + compressible: false + charset: '' + } + 'chemical/x-pdb': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'chemical/x-xyz': MimeType{ + source: 'apache' + extensions: ['xyz'] + compressible: false + charset: '' + } + 'font/collection': MimeType{ + source: 'iana' + extensions: ['ttc'] + compressible: false + charset: '' + } + 'font/otf': MimeType{ + source: 'iana' + extensions: ['otf'] + compressible: true + charset: '' + } + 'font/sfnt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'font/ttf': MimeType{ + source: 'iana' + extensions: ['ttf'] + compressible: true + charset: '' + } + 'font/woff': MimeType{ + source: 'iana' + extensions: ['woff'] + compressible: false + charset: '' + } + 'font/woff2': MimeType{ + source: 'iana' + extensions: ['woff2'] + compressible: false + charset: '' + } + 'image/aces': MimeType{ + source: 'iana' + extensions: ['exr'] + compressible: false + charset: '' + } + 'image/apng': MimeType{ + source: '' + extensions: ['apng'] + compressible: false + charset: '' + } + 'image/avci': MimeType{ + source: 'iana' + extensions: ['avci'] + compressible: false + charset: '' + } + 'image/avcs': MimeType{ + source: 'iana' + extensions: ['avcs'] + compressible: false + charset: '' + } + 'image/avif': MimeType{ + source: 'iana' + extensions: ['avif'] + compressible: false + charset: '' + } + 'image/bmp': MimeType{ + source: 'iana' + extensions: ['bmp', 'dib'] + compressible: true + charset: '' + } + 'image/cgm': MimeType{ + source: 'iana' + extensions: ['cgm'] + compressible: false + charset: '' + } + 'image/dicom-rle': MimeType{ + source: 'iana' + extensions: ['drle'] + compressible: false + charset: '' + } + 'image/emf': MimeType{ + source: 'iana' + extensions: ['emf'] + compressible: false + charset: '' + } + 'image/fits': MimeType{ + source: 'iana' + extensions: ['fits'] + compressible: false + charset: '' + } + 'image/g3fax': MimeType{ + source: 'iana' + extensions: ['g3'] + compressible: false + charset: '' + } + 'image/gif': MimeType{ + source: 'iana' + extensions: ['gif'] + compressible: false + charset: '' + } + 'image/heic': MimeType{ + source: 'iana' + extensions: ['heic'] + compressible: false + charset: '' + } + 'image/heic-sequence': MimeType{ + source: 'iana' + extensions: ['heics'] + compressible: false + charset: '' + } + 'image/heif': MimeType{ + source: 'iana' + extensions: ['heif'] + compressible: false + charset: '' + } + 'image/heif-sequence': MimeType{ + source: 'iana' + extensions: ['heifs'] + compressible: false + charset: '' + } + 'image/hej2k': MimeType{ + source: 'iana' + extensions: ['hej2'] + compressible: false + charset: '' + } + 'image/hsj2': MimeType{ + source: 'iana' + extensions: ['hsj2'] + compressible: false + charset: '' + } + 'image/ief': MimeType{ + source: 'iana' + extensions: ['ief'] + compressible: false + charset: '' + } + 'image/jls': MimeType{ + source: 'iana' + extensions: ['jls'] + compressible: false + charset: '' + } + 'image/jp2': MimeType{ + source: 'iana' + extensions: ['jp2', 'jpg2'] + compressible: false + charset: '' + } + 'image/jpeg': MimeType{ + source: 'iana' + extensions: ['jpeg', 'jpg', 'jpe'] + compressible: false + charset: '' + } + 'image/jph': MimeType{ + source: 'iana' + extensions: ['jph'] + compressible: false + charset: '' + } + 'image/jphc': MimeType{ + source: 'iana' + extensions: ['jhc'] + compressible: false + charset: '' + } + 'image/jpm': MimeType{ + source: 'iana' + extensions: ['jpm'] + compressible: false + charset: '' + } + 'image/jpx': MimeType{ + source: 'iana' + extensions: ['jpx', 'jpf'] + compressible: false + charset: '' + } + 'image/jxr': MimeType{ + source: 'iana' + extensions: ['jxr'] + compressible: false + charset: '' + } + 'image/jxra': MimeType{ + source: 'iana' + extensions: ['jxra'] + compressible: false + charset: '' + } + 'image/jxrs': MimeType{ + source: 'iana' + extensions: ['jxrs'] + compressible: false + charset: '' + } + 'image/jxs': MimeType{ + source: 'iana' + extensions: ['jxs'] + compressible: false + charset: '' + } + 'image/jxsc': MimeType{ + source: 'iana' + extensions: ['jxsc'] + compressible: false + charset: '' + } + 'image/jxsi': MimeType{ + source: 'iana' + extensions: ['jxsi'] + compressible: false + charset: '' + } + 'image/jxss': MimeType{ + source: 'iana' + extensions: ['jxss'] + compressible: false + charset: '' + } + 'image/ktx': MimeType{ + source: 'iana' + extensions: ['ktx'] + compressible: false + charset: '' + } + 'image/ktx2': MimeType{ + source: 'iana' + extensions: ['ktx2'] + compressible: false + charset: '' + } + 'image/naplps': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'image/pjpeg': MimeType{ + source: '' + extensions: [] + compressible: false + charset: '' + } + 'image/png': MimeType{ + source: 'iana' + extensions: ['png'] + compressible: false + charset: '' + } + 'image/prs.btif': MimeType{ + source: 'iana' + extensions: ['btif', 'btf'] + compressible: false + charset: '' + } + 'image/prs.pti': MimeType{ + source: 'iana' + extensions: ['pti'] + compressible: false + charset: '' + } + 'image/pwg-raster': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'image/sgi': MimeType{ + source: 'apache' + extensions: ['sgi'] + compressible: false + charset: '' + } + 'image/svg+xml': MimeType{ + source: 'iana' + extensions: ['svg', 'svgz'] + compressible: true + charset: '' + } + 'image/t38': MimeType{ + source: 'iana' + extensions: ['t38'] + compressible: false + charset: '' + } + 'image/tiff': MimeType{ + source: 'iana' + extensions: ['tif', 'tiff'] + compressible: false + charset: '' + } + 'image/tiff-fx': MimeType{ + source: 'iana' + extensions: ['tfx'] + compressible: false + charset: '' + } + 'image/vnd.adobe.photoshop': MimeType{ + source: 'iana' + extensions: ['psd'] + compressible: true + charset: '' + } + 'image/vnd.airzip.accelerator.azv': MimeType{ + source: 'iana' + extensions: ['azv'] + compressible: false + charset: '' + } + 'image/vnd.cns.inf2': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'image/vnd.dece.graphic': MimeType{ + source: 'iana' + extensions: ['uvi', 'uvvi', 'uvg', 'uvvg'] + compressible: false + charset: '' + } + 'image/vnd.djvu': MimeType{ + source: 'iana' + extensions: ['djvu', 'djv'] + compressible: false + charset: '' + } + 'image/vnd.dvb.subtitle': MimeType{ + source: 'iana' + extensions: ['sub'] + compressible: false + charset: '' + } + 'image/vnd.dwg': MimeType{ + source: 'iana' + extensions: ['dwg'] + compressible: false + charset: '' + } + 'image/vnd.dxf': MimeType{ + source: 'iana' + extensions: ['dxf'] + compressible: false + charset: '' + } + 'image/vnd.fastbidsheet': MimeType{ + source: 'iana' + extensions: ['fbs'] + compressible: false + charset: '' + } + 'image/vnd.fpx': MimeType{ + source: 'iana' + extensions: ['fpx'] + compressible: false + charset: '' + } + 'image/vnd.fst': MimeType{ + source: 'iana' + extensions: ['fst'] + compressible: false + charset: '' + } + 'image/vnd.fujixerox.edmics-mmr': MimeType{ + source: 'iana' + extensions: ['mmr'] + compressible: false + charset: '' + } + 'image/vnd.fujixerox.edmics-rlc': MimeType{ + source: 'iana' + extensions: ['rlc'] + compressible: false + charset: '' + } + 'image/vnd.globalgraphics.pgb': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'image/vnd.microsoft.icon': MimeType{ + source: 'iana' + extensions: ['ico'] + compressible: true + charset: '' + } + 'image/vnd.mix': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'image/vnd.mozilla.apng': MimeType{ + source: 'iana' + extensions: ['apng'] + compressible: false + charset: '' + } + 'image/vnd.ms-dds': MimeType{ + source: '' + extensions: ['dds'] + compressible: true + charset: '' + } + 'image/vnd.ms-modi': MimeType{ + source: 'iana' + extensions: ['mdi'] + compressible: false + charset: '' + } + 'image/vnd.ms-photo': MimeType{ + source: 'apache' + extensions: ['wdp'] + compressible: false + charset: '' + } + 'image/vnd.net-fpx': MimeType{ + source: 'iana' + extensions: ['npx'] + compressible: false + charset: '' + } + 'image/vnd.pco.b16': MimeType{ + source: 'iana' + extensions: ['b16'] + compressible: false + charset: '' + } + 'image/vnd.radiance': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'image/vnd.sealed.png': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'image/vnd.sealedmedia.softseal.gif': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'image/vnd.sealedmedia.softseal.jpg': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'image/vnd.svf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'image/vnd.tencent.tap': MimeType{ + source: 'iana' + extensions: ['tap'] + compressible: false + charset: '' + } + 'image/vnd.valve.source.texture': MimeType{ + source: 'iana' + extensions: ['vtf'] + compressible: false + charset: '' + } + 'image/vnd.wap.wbmp': MimeType{ + source: 'iana' + extensions: ['wbmp'] + compressible: false + charset: '' + } + 'image/vnd.xiff': MimeType{ + source: 'iana' + extensions: ['xif'] + compressible: false + charset: '' + } + 'image/vnd.zbrush.pcx': MimeType{ + source: 'iana' + extensions: ['pcx'] + compressible: false + charset: '' + } + 'image/webp': MimeType{ + source: 'apache' + extensions: ['webp'] + compressible: false + charset: '' + } + 'image/wmf': MimeType{ + source: 'iana' + extensions: ['wmf'] + compressible: false + charset: '' + } + 'image/x-3ds': MimeType{ + source: 'apache' + extensions: ['3ds'] + compressible: false + charset: '' + } + 'image/x-cmu-raster': MimeType{ + source: 'apache' + extensions: ['ras'] + compressible: false + charset: '' + } + 'image/x-cmx': MimeType{ + source: 'apache' + extensions: ['cmx'] + compressible: false + charset: '' + } + 'image/x-freehand': MimeType{ + source: 'apache' + extensions: ['fh', 'fhc', 'fh4', 'fh5', 'fh7'] + compressible: false + charset: '' + } + 'image/x-icon': MimeType{ + source: 'apache' + extensions: ['ico'] + compressible: true + charset: '' + } + 'image/x-jng': MimeType{ + source: 'nginx' + extensions: ['jng'] + compressible: false + charset: '' + } + 'image/x-mrsid-image': MimeType{ + source: 'apache' + extensions: ['sid'] + compressible: false + charset: '' + } + 'image/x-ms-bmp': MimeType{ + source: 'nginx' + extensions: ['bmp'] + compressible: true + charset: '' + } + 'image/x-pcx': MimeType{ + source: 'apache' + extensions: ['pcx'] + compressible: false + charset: '' + } + 'image/x-pict': MimeType{ + source: 'apache' + extensions: ['pic', 'pct'] + compressible: false + charset: '' + } + 'image/x-portable-anymap': MimeType{ + source: 'apache' + extensions: ['pnm'] + compressible: false + charset: '' + } + 'image/x-portable-bitmap': MimeType{ + source: 'apache' + extensions: ['pbm'] + compressible: false + charset: '' + } + 'image/x-portable-graymap': MimeType{ + source: 'apache' + extensions: ['pgm'] + compressible: false + charset: '' + } + 'image/x-portable-pixmap': MimeType{ + source: 'apache' + extensions: ['ppm'] + compressible: false + charset: '' + } + 'image/x-rgb': MimeType{ + source: 'apache' + extensions: ['rgb'] + compressible: false + charset: '' + } + 'image/x-tga': MimeType{ + source: 'apache' + extensions: ['tga'] + compressible: false + charset: '' + } + 'image/x-xbitmap': MimeType{ + source: 'apache' + extensions: ['xbm'] + compressible: false + charset: '' + } + 'image/x-xcf': MimeType{ + source: '' + extensions: [] + compressible: false + charset: '' + } + 'image/x-xpixmap': MimeType{ + source: 'apache' + extensions: ['xpm'] + compressible: false + charset: '' + } + 'image/x-xwindowdump': MimeType{ + source: 'apache' + extensions: ['xwd'] + compressible: false + charset: '' + } + 'message/cpim': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'message/delivery-status': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'message/disposition-notification': MimeType{ + source: 'iana' + extensions: ['disposition-notification'] + compressible: false + charset: '' + } + 'message/external-body': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'message/feedback-report': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'message/global': MimeType{ + source: 'iana' + extensions: ['u8msg'] + compressible: false + charset: '' + } + 'message/global-delivery-status': MimeType{ + source: 'iana' + extensions: ['u8dsn'] + compressible: false + charset: '' + } + 'message/global-disposition-notification': MimeType{ + source: 'iana' + extensions: ['u8mdn'] + compressible: false + charset: '' + } + 'message/global-headers': MimeType{ + source: 'iana' + extensions: ['u8hdr'] + compressible: false + charset: '' + } + 'message/http': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'message/imdn+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'message/news': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'message/partial': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'message/rfc822': MimeType{ + source: 'iana' + extensions: ['eml', 'mime'] + compressible: true + charset: '' + } + 'message/s-http': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'message/sip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'message/sipfrag': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'message/tracking-status': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'message/vnd.si.simp': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'message/vnd.wfa.wsc': MimeType{ + source: 'iana' + extensions: ['wsc'] + compressible: false + charset: '' + } + 'model/3mf': MimeType{ + source: 'iana' + extensions: ['3mf'] + compressible: false + charset: '' + } + 'model/e57': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'model/gltf+json': MimeType{ + source: 'iana' + extensions: ['gltf'] + compressible: true + charset: '' + } + 'model/gltf-binary': MimeType{ + source: 'iana' + extensions: ['glb'] + compressible: true + charset: '' + } + 'model/iges': MimeType{ + source: 'iana' + extensions: ['igs', 'iges'] + compressible: false + charset: '' + } + 'model/mesh': MimeType{ + source: 'iana' + extensions: ['msh', 'mesh', 'silo'] + compressible: false + charset: '' + } + 'model/mtl': MimeType{ + source: 'iana' + extensions: ['mtl'] + compressible: false + charset: '' + } + 'model/obj': MimeType{ + source: 'iana' + extensions: ['obj'] + compressible: false + charset: '' + } + 'model/prc': MimeType{ + source: 'iana' + extensions: ['prc'] + compressible: false + charset: '' + } + 'model/step': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'model/step+xml': MimeType{ + source: 'iana' + extensions: ['stpx'] + compressible: true + charset: '' + } + 'model/step+zip': MimeType{ + source: 'iana' + extensions: ['stpz'] + compressible: false + charset: '' + } + 'model/step-xml+zip': MimeType{ + source: 'iana' + extensions: ['stpxz'] + compressible: false + charset: '' + } + 'model/stl': MimeType{ + source: 'iana' + extensions: ['stl'] + compressible: false + charset: '' + } + 'model/u3d': MimeType{ + source: 'iana' + extensions: ['u3d'] + compressible: false + charset: '' + } + 'model/vnd.collada+xml': MimeType{ + source: 'iana' + extensions: ['dae'] + compressible: true + charset: '' + } + 'model/vnd.dwf': MimeType{ + source: 'iana' + extensions: ['dwf'] + compressible: false + charset: '' + } + 'model/vnd.flatland.3dml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'model/vnd.gdl': MimeType{ + source: 'iana' + extensions: ['gdl'] + compressible: false + charset: '' + } + 'model/vnd.gs-gdl': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'model/vnd.gs.gdl': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'model/vnd.gtw': MimeType{ + source: 'iana' + extensions: ['gtw'] + compressible: false + charset: '' + } + 'model/vnd.moml+xml': MimeType{ + source: 'iana' + extensions: [] + compressible: true + charset: '' + } + 'model/vnd.mts': MimeType{ + source: 'iana' + extensions: ['mts'] + compressible: false + charset: '' + } + 'model/vnd.opengex': MimeType{ + source: 'iana' + extensions: ['ogex'] + compressible: false + charset: '' + } + 'model/vnd.parasolid.transmit.binary': MimeType{ + source: 'iana' + extensions: ['x_b'] + compressible: false + charset: '' + } + 'model/vnd.parasolid.transmit.text': MimeType{ + source: 'iana' + extensions: ['x_t'] + compressible: false + charset: '' + } + 'model/vnd.pytha.pyox': MimeType{ + source: 'iana' + extensions: ['pyo', 'pyox'] + compressible: false + charset: '' + } + 'model/vnd.rosette.annotated-data-model': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'model/vnd.sap.vds': MimeType{ + source: 'iana' + extensions: ['vds'] + compressible: false + charset: '' + } + 'model/vnd.usdz+zip': MimeType{ + source: 'iana' + extensions: ['usdz'] + compressible: false + charset: '' + } + 'model/vnd.valve.source.compiled-map': MimeType{ + source: 'iana' + extensions: ['bsp'] + compressible: false + charset: '' + } + 'model/vnd.vtu': MimeType{ + source: 'iana' + extensions: ['vtu'] + compressible: false + charset: '' + } + 'model/vrml': MimeType{ + source: 'iana' + extensions: ['wrl', 'vrml'] + compressible: false + charset: '' + } + 'model/x3d+binary': MimeType{ + source: 'apache' + extensions: ['x3db', 'x3dbz'] + compressible: false + charset: '' + } + 'model/x3d+fastinfoset': MimeType{ + source: 'iana' + extensions: ['x3db'] + compressible: false + charset: '' + } + 'model/x3d+vrml': MimeType{ + source: 'apache' + extensions: ['x3dv', 'x3dvz'] + compressible: false + charset: '' + } + 'model/x3d+xml': MimeType{ + source: 'iana' + extensions: ['x3d', 'x3dz'] + compressible: true + charset: '' + } + 'model/x3d-vrml': MimeType{ + source: 'iana' + extensions: ['x3dv'] + compressible: false + charset: '' + } + 'multipart/alternative': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/appledouble': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/byteranges': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/digest': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/encrypted': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/form-data': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/header-set': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/mixed': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/multilingual': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/parallel': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/related': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/report': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/signed': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/vnd.bint.med-plus': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/voice-message': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'multipart/x-mixed-replace': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/1d-interleaved-parityfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/cache-manifest': MimeType{ + source: 'iana' + extensions: ['appcache', 'manifest'] + compressible: true + charset: '' + } + 'text/calendar': MimeType{ + source: 'iana' + extensions: ['ics', 'ifb'] + compressible: false + charset: '' + } + 'text/calender': MimeType{ + source: '' + extensions: [] + compressible: true + charset: '' + } + 'text/cmd': MimeType{ + source: '' + extensions: [] + compressible: true + charset: '' + } + 'text/coffeescript': MimeType{ + source: '' + extensions: ['coffee', 'litcoffee'] + compressible: false + charset: '' + } + 'text/cql': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/cql-expression': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/cql-identifier': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/css': MimeType{ + source: 'iana' + extensions: ['css'] + compressible: true + charset: 'UTF-8' + } + 'text/csv': MimeType{ + source: 'iana' + extensions: ['csv'] + compressible: true + charset: '' + } + 'text/csv-schema': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/directory': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/dns': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/ecmascript': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'text/encaprtp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/enriched': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/fhirpath': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/flexfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/fwdred': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/gff3': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/grammar-ref-list': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/html': MimeType{ + source: 'iana' + extensions: ['html', 'htm', 'shtml'] + compressible: true + charset: '' + } + 'text/jade': MimeType{ + source: '' + extensions: ['jade'] + compressible: false + charset: '' + } + 'text/javascript': MimeType{ + source: 'iana' + extensions: ['js', 'mjs'] + compressible: true + charset: 'UTF-8' + } + 'text/jcr-cnd': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/jsx': MimeType{ + source: '' + extensions: ['jsx'] + compressible: true + charset: '' + } + 'text/less': MimeType{ + source: '' + extensions: ['less'] + compressible: true + charset: '' + } + 'text/markdown': MimeType{ + source: 'iana' + extensions: ['md', 'markdown'] + compressible: true + charset: '' + } + 'text/mathml': MimeType{ + source: 'nginx' + extensions: ['mml'] + compressible: false + charset: '' + } + 'text/mdx': MimeType{ + source: '' + extensions: ['mdx'] + compressible: true + charset: '' + } + 'text/mizar': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/n3': MimeType{ + source: 'iana' + extensions: ['n3'] + compressible: true + charset: 'UTF-8' + } + 'text/parameters': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: 'UTF-8' + } + 'text/parityfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/plain': MimeType{ + source: 'iana' + extensions: ['txt', 'text', 'conf', 'def', 'list', 'log', 'in', 'ini'] + compressible: true + charset: '' + } + 'text/provenance-notation': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: 'UTF-8' + } + 'text/prs.fallenstein.rst': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/prs.lines.tag': MimeType{ + source: 'iana' + extensions: ['dsc'] + compressible: false + charset: '' + } + 'text/prs.prop.logic': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/raptorfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/red': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/rfc822-headers': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/richtext': MimeType{ + source: 'iana' + extensions: ['rtx'] + compressible: true + charset: '' + } + 'text/rtf': MimeType{ + source: 'iana' + extensions: ['rtf'] + compressible: true + charset: '' + } + 'text/rtp-enc-aescm128': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/rtploopback': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/rtx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/sgml': MimeType{ + source: 'iana' + extensions: ['sgml', 'sgm'] + compressible: false + charset: '' + } + 'text/shaclc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/shex': MimeType{ + source: 'iana' + extensions: ['shex'] + compressible: false + charset: '' + } + 'text/slim': MimeType{ + source: '' + extensions: ['slim', 'slm'] + compressible: false + charset: '' + } + 'text/spdx': MimeType{ + source: 'iana' + extensions: ['spdx'] + compressible: false + charset: '' + } + 'text/strings': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/stylus': MimeType{ + source: '' + extensions: ['stylus', 'styl'] + compressible: false + charset: '' + } + 'text/t140': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/tab-separated-values': MimeType{ + source: 'iana' + extensions: ['tsv'] + compressible: true + charset: '' + } + 'text/troff': MimeType{ + source: 'iana' + extensions: ['t', 'tr', 'roff', 'man', 'me', 'ms'] + compressible: false + charset: '' + } + 'text/turtle': MimeType{ + source: 'iana' + extensions: ['ttl'] + compressible: false + charset: 'UTF-8' + } + 'text/ulpfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/uri-list': MimeType{ + source: 'iana' + extensions: ['uri', 'uris', 'urls'] + compressible: true + charset: '' + } + 'text/vcard': MimeType{ + source: 'iana' + extensions: ['vcard'] + compressible: true + charset: '' + } + 'text/vnd.a': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.abc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.ascii-art': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.curl': MimeType{ + source: 'iana' + extensions: ['curl'] + compressible: false + charset: '' + } + 'text/vnd.curl.dcurl': MimeType{ + source: 'apache' + extensions: ['dcurl'] + compressible: false + charset: '' + } + 'text/vnd.curl.mcurl': MimeType{ + source: 'apache' + extensions: ['mcurl'] + compressible: false + charset: '' + } + 'text/vnd.curl.scurl': MimeType{ + source: 'apache' + extensions: ['scurl'] + compressible: false + charset: '' + } + 'text/vnd.debian.copyright': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: 'UTF-8' + } + 'text/vnd.dmclientscript': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.dvb.subtitle': MimeType{ + source: 'iana' + extensions: ['sub'] + compressible: false + charset: '' + } + 'text/vnd.esmertec.theme-descriptor': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: 'UTF-8' + } + 'text/vnd.familysearch.gedcom': MimeType{ + source: 'iana' + extensions: ['ged'] + compressible: false + charset: '' + } + 'text/vnd.ficlab.flt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.fly': MimeType{ + source: 'iana' + extensions: ['fly'] + compressible: false + charset: '' + } + 'text/vnd.fmi.flexstor': MimeType{ + source: 'iana' + extensions: ['flx'] + compressible: false + charset: '' + } + 'text/vnd.gml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.graphviz': MimeType{ + source: 'iana' + extensions: ['gv'] + compressible: false + charset: '' + } + 'text/vnd.hans': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.hgl': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.in3d.3dml': MimeType{ + source: 'iana' + extensions: ['3dml'] + compressible: false + charset: '' + } + 'text/vnd.in3d.spot': MimeType{ + source: 'iana' + extensions: ['spot'] + compressible: false + charset: '' + } + 'text/vnd.iptc.newsml': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.iptc.nitf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.latex-z': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.motorola.reflex': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.ms-mediapackage': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.net2phone.commcenter.command': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.radisys.msml-basic-layout': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.senx.warpscript': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.si.uricatalogue': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.sosi': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.sun.j2me.app-descriptor': MimeType{ + source: 'iana' + extensions: ['jad'] + compressible: false + charset: 'UTF-8' + } + 'text/vnd.trolltech.linguist': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: 'UTF-8' + } + 'text/vnd.wap.si': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.wap.sl': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/vnd.wap.wml': MimeType{ + source: 'iana' + extensions: ['wml'] + compressible: false + charset: '' + } + 'text/vnd.wap.wmlscript': MimeType{ + source: 'iana' + extensions: ['wmls'] + compressible: false + charset: '' + } + 'text/vtt': MimeType{ + source: 'iana' + extensions: ['vtt'] + compressible: true + charset: 'UTF-8' + } + 'text/x-asm': MimeType{ + source: 'apache' + extensions: ['s', 'asm'] + compressible: false + charset: '' + } + 'text/x-c': MimeType{ + source: 'apache' + extensions: ['c', 'cc', 'cxx', 'cpp', 'h', 'hh', 'dic'] + compressible: false + charset: '' + } + 'text/x-component': MimeType{ + source: 'nginx' + extensions: ['htc'] + compressible: false + charset: '' + } + 'text/x-fortran': MimeType{ + source: 'apache' + extensions: ['f', 'for', 'f77', 'f90'] + compressible: false + charset: '' + } + 'text/x-gwt-rpc': MimeType{ + source: '' + extensions: [] + compressible: true + charset: '' + } + 'text/x-handlebars-template': MimeType{ + source: '' + extensions: ['hbs'] + compressible: false + charset: '' + } + 'text/x-java-source': MimeType{ + source: 'apache' + extensions: ['java'] + compressible: false + charset: '' + } + 'text/x-jquery-tmpl': MimeType{ + source: '' + extensions: [] + compressible: true + charset: '' + } + 'text/x-lua': MimeType{ + source: '' + extensions: ['lua'] + compressible: false + charset: '' + } + 'text/x-markdown': MimeType{ + source: '' + extensions: ['mkd'] + compressible: true + charset: '' + } + 'text/x-nfo': MimeType{ + source: 'apache' + extensions: ['nfo'] + compressible: false + charset: '' + } + 'text/x-opml': MimeType{ + source: 'apache' + extensions: ['opml'] + compressible: false + charset: '' + } + 'text/x-org': MimeType{ + source: '' + extensions: ['org'] + compressible: true + charset: '' + } + 'text/x-pascal': MimeType{ + source: 'apache' + extensions: ['p', 'pas'] + compressible: false + charset: '' + } + 'text/x-processing': MimeType{ + source: '' + extensions: ['pde'] + compressible: true + charset: '' + } + 'text/x-sass': MimeType{ + source: '' + extensions: ['sass'] + compressible: false + charset: '' + } + 'text/x-scss': MimeType{ + source: '' + extensions: ['scss'] + compressible: false + charset: '' + } + 'text/x-setext': MimeType{ + source: 'apache' + extensions: ['etx'] + compressible: false + charset: '' + } + 'text/x-sfv': MimeType{ + source: 'apache' + extensions: ['sfv'] + compressible: false + charset: '' + } + 'text/x-suse-ymp': MimeType{ + source: '' + extensions: ['ymp'] + compressible: true + charset: '' + } + 'text/x-uuencode': MimeType{ + source: 'apache' + extensions: ['uu'] + compressible: false + charset: '' + } + 'text/x-vcalendar': MimeType{ + source: 'apache' + extensions: ['vcs'] + compressible: false + charset: '' + } + 'text/x-vcard': MimeType{ + source: 'apache' + extensions: ['vcf'] + compressible: false + charset: '' + } + 'text/xml': MimeType{ + source: 'iana' + extensions: ['xml'] + compressible: true + charset: '' + } + 'text/xml-external-parsed-entity': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'text/yaml': MimeType{ + source: '' + extensions: ['yaml', 'yml'] + compressible: true + charset: '' + } + 'video/1d-interleaved-parityfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/3gpp': MimeType{ + source: 'iana' + extensions: ['3gp', '3gpp'] + compressible: false + charset: '' + } + 'video/3gpp-tt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/3gpp2': MimeType{ + source: 'iana' + extensions: ['3g2'] + compressible: false + charset: '' + } + 'video/av1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/bmpeg': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/bt656': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/celb': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/dv': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/encaprtp': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/ffv1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/flexfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/h261': MimeType{ + source: 'iana' + extensions: ['h261'] + compressible: false + charset: '' + } + 'video/h263': MimeType{ + source: 'iana' + extensions: ['h263'] + compressible: false + charset: '' + } + 'video/h263-1998': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/h263-2000': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/h264': MimeType{ + source: 'iana' + extensions: ['h264'] + compressible: false + charset: '' + } + 'video/h264-rcdo': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/h264-svc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/h265': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/iso.segment': MimeType{ + source: 'iana' + extensions: ['m4s'] + compressible: false + charset: '' + } + 'video/jpeg': MimeType{ + source: 'iana' + extensions: ['jpgv'] + compressible: false + charset: '' + } + 'video/jpeg2000': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/jpm': MimeType{ + source: 'apache' + extensions: ['jpm', 'jpgm'] + compressible: false + charset: '' + } + 'video/jxsv': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/mj2': MimeType{ + source: 'iana' + extensions: ['mj2', 'mjp2'] + compressible: false + charset: '' + } + 'video/mp1s': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/mp2p': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/mp2t': MimeType{ + source: 'iana' + extensions: ['ts'] + compressible: false + charset: '' + } + 'video/mp4': MimeType{ + source: 'iana' + extensions: ['mp4', 'mp4v', 'mpg4'] + compressible: false + charset: '' + } + 'video/mp4v-es': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/mpeg': MimeType{ + source: 'iana' + extensions: ['mpeg', 'mpg', 'mpe', 'm1v', 'm2v'] + compressible: false + charset: '' + } + 'video/mpeg4-generic': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/mpv': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/nv': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/ogg': MimeType{ + source: 'iana' + extensions: ['ogv'] + compressible: false + charset: '' + } + 'video/parityfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/pointer': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/quicktime': MimeType{ + source: 'iana' + extensions: ['qt', 'mov'] + compressible: false + charset: '' + } + 'video/raptorfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/raw': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/rtp-enc-aescm128': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/rtploopback': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/rtx': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/scip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/smpte291': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/smpte292m': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/ulpfec': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vc1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vc2': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.cctv': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.dece.hd': MimeType{ + source: 'iana' + extensions: ['uvh', 'uvvh'] + compressible: false + charset: '' + } + 'video/vnd.dece.mobile': MimeType{ + source: 'iana' + extensions: ['uvm', 'uvvm'] + compressible: false + charset: '' + } + 'video/vnd.dece.mp4': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.dece.pd': MimeType{ + source: 'iana' + extensions: ['uvp', 'uvvp'] + compressible: false + charset: '' + } + 'video/vnd.dece.sd': MimeType{ + source: 'iana' + extensions: ['uvs', 'uvvs'] + compressible: false + charset: '' + } + 'video/vnd.dece.video': MimeType{ + source: 'iana' + extensions: ['uvv', 'uvvv'] + compressible: false + charset: '' + } + 'video/vnd.directv.mpeg': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.directv.mpeg-tts': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.dlna.mpeg-tts': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.dvb.file': MimeType{ + source: 'iana' + extensions: ['dvb'] + compressible: false + charset: '' + } + 'video/vnd.fvt': MimeType{ + source: 'iana' + extensions: ['fvt'] + compressible: false + charset: '' + } + 'video/vnd.hns.video': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.iptvforum.1dparityfec-1010': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.iptvforum.1dparityfec-2005': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.iptvforum.2dparityfec-1010': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.iptvforum.2dparityfec-2005': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.iptvforum.ttsavc': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.iptvforum.ttsmpeg2': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.motorola.video': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.motorola.videop': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.mpegurl': MimeType{ + source: 'iana' + extensions: ['mxu', 'm4u'] + compressible: false + charset: '' + } + 'video/vnd.ms-playready.media.pyv': MimeType{ + source: 'iana' + extensions: ['pyv'] + compressible: false + charset: '' + } + 'video/vnd.nokia.interleaved-multimedia': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.nokia.mp4vr': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.nokia.videovoip': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.objectvideo': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.radgamettools.bink': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.radgamettools.smacker': MimeType{ + source: 'apache' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.sealed.mpeg1': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.sealed.mpeg4': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.sealed.swf': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.sealedmedia.softseal.mov': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vnd.uvvu.mp4': MimeType{ + source: 'iana' + extensions: ['uvu', 'uvvu'] + compressible: false + charset: '' + } + 'video/vnd.vivo': MimeType{ + source: 'iana' + extensions: ['viv'] + compressible: false + charset: '' + } + 'video/vnd.youtube.yt': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vp8': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/vp9': MimeType{ + source: 'iana' + extensions: [] + compressible: false + charset: '' + } + 'video/webm': MimeType{ + source: 'apache' + extensions: ['webm'] + compressible: false + charset: '' + } + 'video/x-f4v': MimeType{ + source: 'apache' + extensions: ['f4v'] + compressible: false + charset: '' + } + 'video/x-fli': MimeType{ + source: 'apache' + extensions: ['fli'] + compressible: false + charset: '' + } + 'video/x-flv': MimeType{ + source: 'apache' + extensions: ['flv'] + compressible: false + charset: '' + } + 'video/x-m4v': MimeType{ + source: 'apache' + extensions: ['m4v'] + compressible: false + charset: '' + } + 'video/x-matroska': MimeType{ + source: 'apache' + extensions: ['mkv', 'mk3d', 'mks'] + compressible: false + charset: '' + } + 'video/x-mng': MimeType{ + source: 'apache' + extensions: ['mng'] + compressible: false + charset: '' + } + 'video/x-ms-asf': MimeType{ + source: 'apache' + extensions: ['asf', 'asx'] + compressible: false + charset: '' + } + 'video/x-ms-vob': MimeType{ + source: 'apache' + extensions: ['vob'] + compressible: false + charset: '' + } + 'video/x-ms-wm': MimeType{ + source: 'apache' + extensions: ['wm'] + compressible: false + charset: '' + } + 'video/x-ms-wmv': MimeType{ + source: 'apache' + extensions: ['wmv'] + compressible: false + charset: '' + } + 'video/x-ms-wmx': MimeType{ + source: 'apache' + extensions: ['wmx'] + compressible: false + charset: '' + } + 'video/x-ms-wvx': MimeType{ + source: 'apache' + extensions: ['wvx'] + compressible: false + charset: '' + } + 'video/x-msvideo': MimeType{ + source: 'apache' + extensions: ['avi'] + compressible: false + charset: '' + } + 'video/x-sgi-movie': MimeType{ + source: 'apache' + extensions: ['movie'] + compressible: false + charset: '' + } + 'video/x-smv': MimeType{ + source: 'apache' + extensions: ['smv'] + compressible: false + charset: '' + } + 'x-conference/x-cooltalk': MimeType{ + source: 'apache' + extensions: ['ice'] + compressible: false + charset: '' + } + 'x-shader/x-fragment': MimeType{ + source: '' + extensions: [] + compressible: true + charset: '' + } + 'x-shader/x-vertex': MimeType{ + source: '' + extensions: [] + compressible: true + charset: '' + } + } + ext_to_mt_str = { + 'ez': 'application/andrew-inset' + 'aw': 'application/applixware' + 'atom': 'application/atom+xml' + 'atomcat': 'application/atomcat+xml' + 'atomdeleted': 'application/atomdeleted+xml' + 'atomsvc': 'application/atomsvc+xml' + 'dwd': 'application/atsc-dwd+xml' + 'held': 'application/atsc-held+xml' + 'rsat': 'application/atsc-rsat+xml' + 'bdoc': 'application/x-bdoc' + 'xcs': 'application/calendar+xml' + 'ccxml': 'application/ccxml+xml' + 'cdfx': 'application/cdfx+xml' + 'cdmia': 'application/cdmi-capability' + 'cdmic': 'application/cdmi-container' + 'cdmid': 'application/cdmi-domain' + 'cdmio': 'application/cdmi-object' + 'cdmiq': 'application/cdmi-queue' + 'cpl': 'application/cpl+xml' + 'cu': 'application/cu-seeme' + 'cwl': 'application/cwl' + 'mpd': 'application/dash+xml' + 'mpp': 'application/vnd.ms-project' + 'davmount': 'application/davmount+xml' + 'dbk': 'application/docbook+xml' + 'dssc': 'application/dssc+der' + 'xdssc': 'application/dssc+xml' + 'ecma': 'application/ecmascript' + 'emma': 'application/emma+xml' + 'emotionml': 'application/emotionml+xml' + 'epub': 'application/epub+zip' + 'exi': 'application/exi' + 'exp': 'application/express' + 'fdf': 'application/vnd.fdf' + 'fdt': 'application/fdt+xml' + 'pfr': 'application/font-tdpfr' + 'geojson': 'application/geo+json' + 'gml': 'application/gml+xml' + 'gpx': 'application/gpx+xml' + 'gxf': 'application/gxf' + 'gz': 'application/gzip' + 'hjson': 'application/hjson' + 'stk': 'application/hyperstudio' + 'ink': 'application/inkml+xml' + 'inkml': 'application/inkml+xml' + 'ipfix': 'application/ipfix' + 'its': 'application/its+xml' + 'jar': 'application/java-archive' + 'war': 'application/java-archive' + 'ear': 'application/java-archive' + 'ser': 'application/java-serialized-object' + 'class': 'application/java-vm' + 'js': 'text/javascript' + 'json': 'application/json' + 'map': 'application/json' + 'json5': 'application/json5' + 'jsonml': 'application/jsonml+json' + 'jsonld': 'application/ld+json' + 'lgr': 'application/lgr+xml' + 'lostxml': 'application/lost+xml' + 'hqx': 'application/mac-binhex40' + 'cpt': 'application/mac-compactpro' + 'mads': 'application/mads+xml' + 'webmanifest': 'application/manifest+json' + 'mrc': 'application/marc' + 'mrcx': 'application/marcxml+xml' + 'ma': 'application/mathematica' + 'nb': 'application/mathematica' + 'mb': 'application/mathematica' + 'mathml': 'application/mathml+xml' + 'mbox': 'application/mbox' + 'mpf': 'application/media-policy-dataset+xml' + 'mscml': 'application/mediaservercontrol+xml' + 'metalink': 'application/metalink+xml' + 'meta4': 'application/metalink4+xml' + 'mets': 'application/mets+xml' + 'maei': 'application/mmt-aei+xml' + 'musd': 'application/mmt-usd+xml' + 'mods': 'application/mods+xml' + 'm21': 'application/mp21' + 'mp21': 'application/mp21' + 'mp4s': 'application/mp4' + 'm4p': 'application/mp4' + 'doc': 'application/msword' + 'dot': 'application/msword' + 'mxf': 'application/mxf' + 'nq': 'application/n-quads' + 'nt': 'application/n-triples' + 'cjs': 'application/node' + 'bin': 'application/octet-stream' + 'dms': 'application/octet-stream' + 'lrf': 'application/octet-stream' + 'mar': 'application/octet-stream' + 'so': 'application/octet-stream' + 'dist': 'application/octet-stream' + 'distz': 'application/octet-stream' + 'pkg': 'application/octet-stream' + 'bpk': 'application/octet-stream' + 'dump': 'application/octet-stream' + 'elc': 'application/octet-stream' + 'deploy': 'application/octet-stream' + 'exe': 'application/x-msdownload' + 'dll': 'application/x-msdownload' + 'deb': 'application/x-debian-package' + 'dmg': 'application/x-apple-diskimage' + 'iso': 'application/x-iso9660-image' + 'img': 'application/octet-stream' + 'msi': 'application/x-msdownload' + 'msp': 'application/octet-stream' + 'msm': 'application/octet-stream' + 'buffer': 'application/octet-stream' + 'oda': 'application/oda' + 'opf': 'application/oebps-package+xml' + 'ogx': 'application/ogg' + 'omdoc': 'application/omdoc+xml' + 'onetoc': 'application/onenote' + 'onetoc2': 'application/onenote' + 'onetmp': 'application/onenote' + 'onepkg': 'application/onenote' + 'oxps': 'application/oxps' + 'relo': 'application/p2p-overlay+xml' + 'xer': 'application/patch-ops-error+xml' + 'pdf': 'application/pdf' + 'pgp': 'application/pgp-encrypted' + 'asc': 'application/pgp-signature' + 'sig': 'application/pgp-signature' + 'prf': 'application/pics-rules' + 'p10': 'application/pkcs10' + 'p7m': 'application/pkcs7-mime' + 'p7c': 'application/pkcs7-mime' + 'p7s': 'application/pkcs7-signature' + 'p8': 'application/pkcs8' + 'ac': 'application/vnd.nokia.n-gage.ac+xml' + 'cer': 'application/pkix-cert' + 'crl': 'application/pkix-crl' + 'pkipath': 'application/pkix-pkipath' + 'pki': 'application/pkixcmp' + 'pls': 'application/pls+xml' + 'ai': 'application/postscript' + 'eps': 'application/postscript' + 'ps': 'application/postscript' + 'provx': 'application/provenance+xml' + 'cww': 'application/prs.cww' + 'xsf': 'application/prs.xsf+xml' + 'pskcxml': 'application/pskc+xml' + 'raml': 'application/raml+yaml' + 'rdf': 'application/rdf+xml' + 'owl': 'application/rdf+xml' + 'rif': 'application/reginfo+xml' + 'rnc': 'application/relax-ng-compact-syntax' + 'rl': 'application/resource-lists+xml' + 'rld': 'application/resource-lists-diff+xml' + 'rs': 'application/rls-services+xml' + 'rapd': 'application/route-apd+xml' + 'sls': 'application/route-s-tsid+xml' + 'rusd': 'application/route-usd+xml' + 'gbr': 'application/rpki-ghostbusters' + 'mft': 'application/rpki-manifest' + 'roa': 'application/rpki-roa' + 'rsd': 'application/rsd+xml' + 'rss': 'application/rss+xml' + 'rtf': 'text/rtf' + 'sbml': 'application/sbml+xml' + 'scq': 'application/scvp-cv-request' + 'scs': 'application/scvp-cv-response' + 'spq': 'application/scvp-vp-request' + 'spp': 'application/scvp-vp-response' + 'sdp': 'application/sdp' + 'senmlx': 'application/senml+xml' + 'sensmlx': 'application/sensml+xml' + 'setpay': 'application/set-payment-initiation' + 'setreg': 'application/set-registration-initiation' + 'shf': 'application/shf+xml' + 'siv': 'application/sieve' + 'sieve': 'application/sieve' + 'smi': 'application/smil+xml' + 'smil': 'application/smil+xml' + 'rq': 'application/sparql-query' + 'srx': 'application/sparql-results+xml' + 'gram': 'application/srgs' + 'grxml': 'application/srgs+xml' + 'sru': 'application/sru+xml' + 'ssdl': 'application/ssdl+xml' + 'ssml': 'application/ssml+xml' + 'swidtag': 'application/swid+xml' + 'tei': 'application/tei+xml' + 'teicorpus': 'application/tei+xml' + 'tfi': 'application/thraud+xml' + 'tsd': 'application/timestamped-data' + 'toml': 'application/toml' + 'trig': 'application/trig' + 'ttml': 'application/ttml+xml' + 'ubj': 'application/ubjson' + 'rsheet': 'application/urc-ressheet+xml' + 'td': 'application/urc-targetdesc+xml' + '1km': 'application/vnd.1000minds.decision-model+xml' + 'plb': 'application/vnd.3gpp.pic-bw-large' + 'psb': 'application/vnd.3gpp.pic-bw-small' + 'pvb': 'application/vnd.3gpp.pic-bw-var' + 'tcap': 'application/vnd.3gpp2.tcap' + 'pwn': 'application/vnd.3m.post-it-notes' + 'aso': 'application/vnd.accpac.simply.aso' + 'imp': 'application/vnd.accpac.simply.imp' + 'acu': 'application/vnd.acucobol' + 'atc': 'application/vnd.acucorp' + 'acutc': 'application/vnd.acucorp' + 'air': 'application/vnd.adobe.air-application-installer-package+zip' + 'fcdt': 'application/vnd.adobe.formscentral.fcdt' + 'fxp': 'application/vnd.adobe.fxp' + 'fxpl': 'application/vnd.adobe.fxp' + 'xdp': 'application/vnd.adobe.xdp+xml' + 'xfdf': 'application/xfdf' + 'age': 'application/vnd.age' + 'ahead': 'application/vnd.ahead.space' + 'azf': 'application/vnd.airzip.filesecure.azf' + 'azs': 'application/vnd.airzip.filesecure.azs' + 'azw': 'application/vnd.amazon.ebook' + 'acc': 'application/vnd.americandynamics.acc' + 'ami': 'application/vnd.amiga.ami' + 'apk': 'application/vnd.android.package-archive' + 'cii': 'application/vnd.anser-web-certificate-issue-initiation' + 'fti': 'application/vnd.anser-web-funds-transfer-initiation' + 'atx': 'application/vnd.antix.game-component' + 'mpkg': 'application/vnd.apple.installer+xml' + 'key': 'application/x-iwork-keynote-sffkey' + 'm3u8': 'application/vnd.apple.mpegurl' + 'numbers': 'application/x-iwork-numbers-sffnumbers' + 'pages': 'application/x-iwork-pages-sffpages' + 'pkpass': 'application/vnd.apple.pkpass' + 'swi': 'application/vnd.aristanetworks.swi' + 'iota': 'application/vnd.astraea-software.iota' + 'aep': 'application/vnd.audiograph' + 'bmml': 'application/vnd.balsamiq.bmml+xml' + 'mpm': 'application/vnd.blueice.multipass' + 'bmi': 'application/vnd.bmi' + 'rep': 'application/vnd.businessobjects' + 'cdxml': 'application/vnd.chemdraw+xml' + 'mmd': 'application/vnd.chipnuts.karaoke-mmd' + 'cdy': 'application/vnd.cinderella' + 'csl': 'application/vnd.citationstyles.style+xml' + 'cla': 'application/vnd.claymore' + 'rp9': 'application/vnd.cloanto.rp9' + 'c4g': 'application/vnd.clonk.c4group' + 'c4d': 'application/vnd.clonk.c4group' + 'c4f': 'application/vnd.clonk.c4group' + 'c4p': 'application/vnd.clonk.c4group' + 'c4u': 'application/vnd.clonk.c4group' + 'c11amc': 'application/vnd.cluetrust.cartomobile-config' + 'c11amz': 'application/vnd.cluetrust.cartomobile-config-pkg' + 'csp': 'application/vnd.commonspace' + 'cdbcmsg': 'application/vnd.contact.cmsg' + 'cmc': 'application/vnd.cosmocaller' + 'clkx': 'application/vnd.crick.clicker' + 'clkk': 'application/vnd.crick.clicker.keyboard' + 'clkp': 'application/vnd.crick.clicker.palette' + 'clkt': 'application/vnd.crick.clicker.template' + 'clkw': 'application/vnd.crick.clicker.wordbank' + 'wbs': 'application/vnd.criticaltools.wbs+xml' + 'pml': 'application/vnd.ctc-posml' + 'ppd': 'application/vnd.cups-ppd' + 'car': 'application/vnd.curl.car' + 'pcurl': 'application/vnd.curl.pcurl' + 'dart': 'application/vnd.dart' + 'rdz': 'application/vnd.data-vision.rdz' + 'dbf': 'application/vnd.dbf' + 'uvf': 'application/vnd.dece.data' + 'uvvf': 'application/vnd.dece.data' + 'uvd': 'application/vnd.dece.data' + 'uvvd': 'application/vnd.dece.data' + 'uvt': 'application/vnd.dece.ttml+xml' + 'uvvt': 'application/vnd.dece.ttml+xml' + 'uvx': 'application/vnd.dece.unspecified' + 'uvvx': 'application/vnd.dece.unspecified' + 'uvz': 'application/vnd.dece.zip' + 'uvvz': 'application/vnd.dece.zip' + 'fe_launch': 'application/vnd.denovo.fcselayout-link' + 'dna': 'application/vnd.dna' + 'mlp': 'application/vnd.dolby.mlp' + 'dpg': 'application/vnd.dpgraph' + 'dfac': 'application/vnd.dreamfactory' + 'kpxx': 'application/vnd.ds-keypoint' + 'ait': 'application/vnd.dvb.ait' + 'svc': 'application/vnd.dvb.service' + 'geo': 'application/vnd.dynageo' + 'mag': 'application/vnd.ecowin.chart' + 'nml': 'application/vnd.enliven' + 'esf': 'application/vnd.epson.esf' + 'msf': 'application/vnd.epson.msf' + 'qam': 'application/vnd.epson.quickanime' + 'slt': 'application/vnd.epson.salt' + 'ssf': 'application/vnd.epson.ssf' + 'es3': 'application/vnd.eszigno3+xml' + 'et3': 'application/vnd.eszigno3+xml' + 'ez2': 'application/vnd.ezpix-album' + 'ez3': 'application/vnd.ezpix-package' + 'mseed': 'application/vnd.fdsn.mseed' + 'seed': 'application/vnd.fdsn.seed' + 'dataless': 'application/vnd.fdsn.seed' + 'gph': 'application/vnd.flographit' + 'ftc': 'application/vnd.fluxtime.clip' + 'fm': 'application/vnd.framemaker' + 'frame': 'application/vnd.framemaker' + 'maker': 'application/vnd.framemaker' + 'book': 'application/vnd.framemaker' + 'fnc': 'application/vnd.frogans.fnc' + 'ltf': 'application/vnd.frogans.ltf' + 'fsc': 'application/vnd.fsc.weblaunch' + 'oas': 'application/vnd.fujitsu.oasys' + 'oa2': 'application/vnd.fujitsu.oasys2' + 'oa3': 'application/vnd.fujitsu.oasys3' + 'fg5': 'application/vnd.fujitsu.oasysgp' + 'bh2': 'application/vnd.fujitsu.oasysprs' + 'ddd': 'application/vnd.fujixerox.ddd' + 'xdw': 'application/vnd.fujixerox.docuworks' + 'xbd': 'application/vnd.fujixerox.docuworks.binder' + 'fzs': 'application/vnd.fuzzysheet' + 'txd': 'application/vnd.genomatix.tuxedo' + 'ggb': 'application/vnd.geogebra.file' + 'ggt': 'application/vnd.geogebra.tool' + 'gex': 'application/vnd.geometry-explorer' + 'gre': 'application/vnd.geometry-explorer' + 'gxt': 'application/vnd.geonext' + 'g2w': 'application/vnd.geoplan' + 'g3w': 'application/vnd.geospace' + 'gmx': 'application/vnd.gmx' + 'gdoc': 'application/vnd.google-apps.document' + 'gslides': 'application/vnd.google-apps.presentation' + 'gsheet': 'application/vnd.google-apps.spreadsheet' + 'kml': 'application/vnd.google-earth.kml+xml' + 'kmz': 'application/vnd.google-earth.kmz' + 'gqf': 'application/vnd.grafeq' + 'gqs': 'application/vnd.grafeq' + 'gac': 'application/vnd.groove-account' + 'ghf': 'application/vnd.groove-help' + 'gim': 'application/vnd.groove-identity-message' + 'grv': 'application/vnd.groove-injector' + 'gtm': 'application/vnd.groove-tool-message' + 'tpl': 'application/vnd.groove-tool-template' + 'vcg': 'application/vnd.groove-vcard' + 'hal': 'application/vnd.hal+xml' + 'zmm': 'application/vnd.handheld-entertainment+xml' + 'hbci': 'application/vnd.hbci' + 'les': 'application/vnd.hhe.lesson-player' + 'hpgl': 'application/vnd.hp-hpgl' + 'hpid': 'application/vnd.hp-hpid' + 'hps': 'application/vnd.hp-hps' + 'jlt': 'application/vnd.hp-jlyt' + 'pcl': 'application/vnd.hp-pcl' + 'pclxl': 'application/vnd.hp-pclxl' + 'sfd-hdstx': 'application/vnd.hydrostatix.sof-data' + 'mpy': 'application/vnd.ibm.minipay' + 'afp': 'application/vnd.ibm.modcap' + 'listafp': 'application/vnd.ibm.modcap' + 'list3820': 'application/vnd.ibm.modcap' + 'irm': 'application/vnd.ibm.rights-management' + 'sc': 'application/vnd.ibm.secure-container' + 'icc': 'application/vnd.iccprofile' + 'icm': 'application/vnd.iccprofile' + 'igl': 'application/vnd.igloader' + 'ivp': 'application/vnd.immervision-ivp' + 'ivu': 'application/vnd.immervision-ivu' + 'igm': 'application/vnd.insors.igm' + 'xpw': 'application/vnd.intercon.formnet' + 'xpx': 'application/vnd.intercon.formnet' + 'i2g': 'application/vnd.intergeo' + 'qbo': 'application/vnd.intu.qbo' + 'qfx': 'application/vnd.intu.qfx' + 'rcprofile': 'application/vnd.ipunplugged.rcprofile' + 'irp': 'application/vnd.irepository.package+xml' + 'xpr': 'application/vnd.is-xpr' + 'fcs': 'application/vnd.isac.fcs' + 'jam': 'application/vnd.jam' + 'rms': 'application/vnd.jcp.javame.midlet-rms' + 'jisp': 'application/vnd.jisp' + 'joda': 'application/vnd.joost.joda-archive' + 'ktz': 'application/vnd.kahootz' + 'ktr': 'application/vnd.kahootz' + 'karbon': 'application/vnd.kde.karbon' + 'chrt': 'application/vnd.kde.kchart' + 'kfo': 'application/vnd.kde.kformula' + 'flw': 'application/vnd.kde.kivio' + 'kon': 'application/vnd.kde.kontour' + 'kpr': 'application/vnd.kde.kpresenter' + 'kpt': 'application/vnd.kde.kpresenter' + 'ksp': 'application/vnd.kde.kspread' + 'kwd': 'application/vnd.kde.kword' + 'kwt': 'application/vnd.kde.kword' + 'htke': 'application/vnd.kenameaapp' + 'kia': 'application/vnd.kidspiration' + 'kne': 'application/vnd.kinar' + 'knp': 'application/vnd.kinar' + 'skp': 'application/vnd.koan' + 'skd': 'application/vnd.koan' + 'skt': 'application/vnd.koan' + 'skm': 'application/vnd.koan' + 'sse': 'application/vnd.kodak-descriptor' + 'lasxml': 'application/vnd.las.las+xml' + 'lbd': 'application/vnd.llamagraphics.life-balance.desktop' + 'lbe': 'application/vnd.llamagraphics.life-balance.exchange+xml' + '123': 'application/vnd.lotus-1-2-3' + 'apr': 'application/vnd.lotus-approach' + 'pre': 'application/vnd.lotus-freelance' + 'nsf': 'application/vnd.lotus-notes' + 'org': 'text/x-org' + 'scm': 'application/vnd.lotus-screencam' + 'lwp': 'application/vnd.lotus-wordpro' + 'portpkg': 'application/vnd.macports.portpkg' + 'mvt': 'application/vnd.mapbox-vector-tile' + 'mcd': 'application/vnd.mcd' + 'mc1': 'application/vnd.medcalcdata' + 'cdkey': 'application/vnd.mediastation.cdkey' + 'mwf': 'application/vnd.mfer' + 'mfm': 'application/vnd.mfmp' + 'flo': 'application/vnd.micrografx.flo' + 'igx': 'application/vnd.micrografx.igx' + 'mif': 'application/vnd.mif' + 'daf': 'application/vnd.mobius.daf' + 'dis': 'application/vnd.mobius.dis' + 'mbk': 'application/vnd.mobius.mbk' + 'mqy': 'application/vnd.mobius.mqy' + 'msl': 'application/vnd.mobius.msl' + 'plc': 'application/vnd.mobius.plc' + 'txf': 'application/vnd.mobius.txf' + 'mpn': 'application/vnd.mophun.application' + 'mpc': 'application/vnd.mophun.certificate' + 'xul': 'application/vnd.mozilla.xul+xml' + 'cil': 'application/vnd.ms-artgalry' + 'cab': 'application/vnd.ms-cab-compressed' + 'xls': 'application/vnd.ms-excel' + 'xlm': 'application/vnd.ms-excel' + 'xla': 'application/vnd.ms-excel' + 'xlc': 'application/vnd.ms-excel' + 'xlt': 'application/vnd.ms-excel' + 'xlw': 'application/vnd.ms-excel' + 'xlam': 'application/vnd.ms-excel.addin.macroenabled.12' + 'xlsb': 'application/vnd.ms-excel.sheet.binary.macroenabled.12' + 'xlsm': 'application/vnd.ms-excel.sheet.macroenabled.12' + 'xltm': 'application/vnd.ms-excel.template.macroenabled.12' + 'eot': 'application/vnd.ms-fontobject' + 'chm': 'application/vnd.ms-htmlhelp' + 'ims': 'application/vnd.ms-ims' + 'lrm': 'application/vnd.ms-lrm' + 'thmx': 'application/vnd.ms-officetheme' + 'msg': 'application/vnd.ms-outlook' + 'cat': 'application/vnd.ms-pki.seccat' + 'stl': 'model/stl' + 'ppt': 'application/vnd.ms-powerpoint' + 'pps': 'application/vnd.ms-powerpoint' + 'pot': 'application/vnd.ms-powerpoint' + 'ppam': 'application/vnd.ms-powerpoint.addin.macroenabled.12' + 'pptm': 'application/vnd.ms-powerpoint.presentation.macroenabled.12' + 'sldm': 'application/vnd.ms-powerpoint.slide.macroenabled.12' + 'ppsm': 'application/vnd.ms-powerpoint.slideshow.macroenabled.12' + 'potm': 'application/vnd.ms-powerpoint.template.macroenabled.12' + 'mpt': 'application/vnd.ms-project' + 'docm': 'application/vnd.ms-word.document.macroenabled.12' + 'dotm': 'application/vnd.ms-word.template.macroenabled.12' + 'wps': 'application/vnd.ms-works' + 'wks': 'application/vnd.ms-works' + 'wcm': 'application/vnd.ms-works' + 'wdb': 'application/vnd.ms-works' + 'wpl': 'application/vnd.ms-wpl' + 'xps': 'application/vnd.ms-xpsdocument' + 'mseq': 'application/vnd.mseq' + 'mus': 'application/vnd.musician' + 'msty': 'application/vnd.muvee.style' + 'taglet': 'application/vnd.mynfc' + 'nlu': 'application/vnd.neurolanguage.nlu' + 'ntf': 'application/vnd.nitf' + 'nitf': 'application/vnd.nitf' + 'nnd': 'application/vnd.noblenet-directory' + 'nns': 'application/vnd.noblenet-sealer' + 'nnw': 'application/vnd.noblenet-web' + 'ngdat': 'application/vnd.nokia.n-gage.data' + 'n-gage': 'application/vnd.nokia.n-gage.symbian.install' + 'rpst': 'application/vnd.nokia.radio-preset' + 'rpss': 'application/vnd.nokia.radio-presets' + 'edm': 'application/vnd.novadigm.edm' + 'edx': 'application/vnd.novadigm.edx' + 'ext': 'application/vnd.novadigm.ext' + 'odc': 'application/vnd.oasis.opendocument.chart' + 'otc': 'application/vnd.oasis.opendocument.chart-template' + 'odb': 'application/vnd.oasis.opendocument.database' + 'odf': 'application/vnd.oasis.opendocument.formula' + 'odft': 'application/vnd.oasis.opendocument.formula-template' + 'odg': 'application/vnd.oasis.opendocument.graphics' + 'otg': 'application/vnd.oasis.opendocument.graphics-template' + 'odi': 'application/vnd.oasis.opendocument.image' + 'oti': 'application/vnd.oasis.opendocument.image-template' + 'odp': 'application/vnd.oasis.opendocument.presentation' + 'otp': 'application/vnd.oasis.opendocument.presentation-template' + 'ods': 'application/vnd.oasis.opendocument.spreadsheet' + 'ots': 'application/vnd.oasis.opendocument.spreadsheet-template' + 'odt': 'application/vnd.oasis.opendocument.text' + 'odm': 'application/vnd.oasis.opendocument.text-master' + 'ott': 'application/vnd.oasis.opendocument.text-template' + 'oth': 'application/vnd.oasis.opendocument.text-web' + 'xo': 'application/vnd.olpc-sugar' + 'dd2': 'application/vnd.oma.dd2+xml' + 'obgx': 'application/vnd.openblox.game+xml' + 'oxt': 'application/vnd.openofficeorg.extension' + 'osm': 'application/vnd.openstreetmap.data+xml' + 'pptx': 'application/vnd.openxmlformats-officedocument.presentationml.presentation' + 'sldx': 'application/vnd.openxmlformats-officedocument.presentationml.slide' + 'ppsx': 'application/vnd.openxmlformats-officedocument.presentationml.slideshow' + 'potx': 'application/vnd.openxmlformats-officedocument.presentationml.template' + 'xlsx': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' + 'xltx': 'application/vnd.openxmlformats-officedocument.spreadsheetml.template' + 'docx': 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' + 'dotx': 'application/vnd.openxmlformats-officedocument.wordprocessingml.template' + 'mgp': 'application/vnd.osgeo.mapguide.package' + 'dp': 'application/vnd.osgi.dp' + 'esa': 'application/vnd.osgi.subsystem' + 'pdb': 'application/x-pilot' + 'pqa': 'application/vnd.palm' + 'oprc': 'application/vnd.palm' + 'paw': 'application/vnd.pawaafile' + 'str': 'application/vnd.pg.format' + 'ei6': 'application/vnd.pg.osasli' + 'efif': 'application/vnd.picsel' + 'wg': 'application/vnd.pmi.widget' + 'plf': 'application/vnd.pocketlearn' + 'pbd': 'application/vnd.powerbuilder6' + 'box': 'application/vnd.previewsystems.box' + 'mgz': 'application/vnd.proteus.magazine' + 'qps': 'application/vnd.publishare-delta-tree' + 'ptid': 'application/vnd.pvi.ptid1' + 'xhtm': 'application/vnd.pwg-xhtml-print+xml' + 'qxd': 'application/vnd.quark.quarkxpress' + 'qxt': 'application/vnd.quark.quarkxpress' + 'qwd': 'application/vnd.quark.quarkxpress' + 'qwt': 'application/vnd.quark.quarkxpress' + 'qxl': 'application/vnd.quark.quarkxpress' + 'qxb': 'application/vnd.quark.quarkxpress' + 'rar': 'application/x-rar-compressed' + 'bed': 'application/vnd.realvnc.bed' + 'mxl': 'application/vnd.recordare.musicxml' + 'musicxml': 'application/vnd.recordare.musicxml+xml' + 'cryptonote': 'application/vnd.rig.cryptonote' + 'cod': 'application/vnd.rim.cod' + 'rm': 'application/vnd.rn-realmedia' + 'rmvb': 'application/vnd.rn-realmedia-vbr' + 'link66': 'application/vnd.route66.link66+xml' + 'st': 'application/vnd.sailingtracker.track' + 'see': 'application/vnd.seemail' + 'sema': 'application/vnd.sema' + 'semd': 'application/vnd.semd' + 'semf': 'application/vnd.semf' + 'ifm': 'application/vnd.shana.informed.formdata' + 'itp': 'application/vnd.shana.informed.formtemplate' + 'iif': 'application/vnd.shana.informed.interchange' + 'ipk': 'application/vnd.shana.informed.package' + 'twd': 'application/vnd.simtech-mindmapper' + 'twds': 'application/vnd.simtech-mindmapper' + 'mmf': 'application/vnd.smaf' + 'teacher': 'application/vnd.smart.teacher' + 'fo': 'application/vnd.software602.filler.form+xml' + 'sdkm': 'application/vnd.solent.sdkm+xml' + 'sdkd': 'application/vnd.solent.sdkm+xml' + 'dxp': 'application/vnd.spotfire.dxp' + 'sfs': 'application/vnd.spotfire.sfs' + 'sdc': 'application/vnd.stardivision.calc' + 'sda': 'application/vnd.stardivision.draw' + 'sdd': 'application/vnd.stardivision.impress' + 'smf': 'application/vnd.stardivision.math' + 'sdw': 'application/vnd.stardivision.writer' + 'vor': 'application/vnd.stardivision.writer' + 'sgl': 'application/vnd.stardivision.writer-global' + 'smzip': 'application/vnd.stepmania.package' + 'sm': 'application/vnd.stepmania.stepchart' + 'wadl': 'application/vnd.sun.wadl+xml' + 'sxc': 'application/vnd.sun.xml.calc' + 'stc': 'application/vnd.sun.xml.calc.template' + 'sxd': 'application/vnd.sun.xml.draw' + 'std': 'application/vnd.sun.xml.draw.template' + 'sxi': 'application/vnd.sun.xml.impress' + 'sti': 'application/vnd.sun.xml.impress.template' + 'sxm': 'application/vnd.sun.xml.math' + 'sxw': 'application/vnd.sun.xml.writer' + 'sxg': 'application/vnd.sun.xml.writer.global' + 'stw': 'application/vnd.sun.xml.writer.template' + 'sus': 'application/vnd.sus-calendar' + 'susp': 'application/vnd.sus-calendar' + 'svd': 'application/vnd.svd' + 'sis': 'application/vnd.symbian.install' + 'sisx': 'application/vnd.symbian.install' + 'xsm': 'application/vnd.syncml+xml' + 'bdm': 'application/vnd.syncml.dm+wbxml' + 'xdm': 'application/vnd.syncml.dm+xml' + 'ddf': 'application/vnd.syncml.dmddf+xml' + 'tao': 'application/vnd.tao.intent-module-archive' + 'pcap': 'application/vnd.tcpdump.pcap' + 'cap': 'application/vnd.tcpdump.pcap' + 'dmp': 'application/vnd.tcpdump.pcap' + 'tmo': 'application/vnd.tmobile-livetv' + 'tpt': 'application/vnd.trid.tpt' + 'mxs': 'application/vnd.triscape.mxs' + 'tra': 'application/vnd.trueapp' + 'ufd': 'application/vnd.ufdl' + 'ufdl': 'application/vnd.ufdl' + 'utz': 'application/vnd.uiq.theme' + 'umj': 'application/vnd.umajin' + 'unityweb': 'application/vnd.unity' + 'uoml': 'application/vnd.uoml+xml' + 'uo': 'application/vnd.uoml+xml' + 'vcx': 'application/vnd.vcx' + 'vsd': 'application/vnd.visio' + 'vst': 'application/vnd.visio' + 'vss': 'application/vnd.visio' + 'vsw': 'application/vnd.visio' + 'vis': 'application/vnd.visionary' + 'vsf': 'application/vnd.vsf' + 'wbxml': 'application/vnd.wap.wbxml' + 'wmlc': 'application/vnd.wap.wmlc' + 'wmlsc': 'application/vnd.wap.wmlscriptc' + 'wtb': 'application/vnd.webturbo' + 'nbp': 'application/vnd.wolfram.player' + 'wpd': 'application/vnd.wordperfect' + 'wqd': 'application/vnd.wqd' + 'stf': 'application/vnd.wt.stf' + 'xar': 'application/vnd.xara' + 'xfdl': 'application/vnd.xfdl' + 'hvd': 'application/vnd.yamaha.hv-dic' + 'hvs': 'application/vnd.yamaha.hv-script' + 'hvp': 'application/vnd.yamaha.hv-voice' + 'osf': 'application/vnd.yamaha.openscoreformat' + 'osfpvg': 'application/vnd.yamaha.openscoreformat.osfpvg+xml' + 'saf': 'application/vnd.yamaha.smaf-audio' + 'spf': 'application/vnd.yamaha.smaf-phrase' + 'cmp': 'application/vnd.yellowriver-custom-menu' + 'zir': 'application/vnd.zul' + 'zirz': 'application/vnd.zul' + 'zaz': 'application/vnd.zzazz.deck+xml' + 'vxml': 'application/voicexml+xml' + 'wasm': 'application/wasm' + 'wif': 'application/watcherinfo+xml' + 'wgt': 'application/widget' + 'hlp': 'application/winhlp' + 'wsdl': 'application/wsdl+xml' + 'wspolicy': 'application/wspolicy+xml' + '7z': 'application/x-7z-compressed' + 'abw': 'application/x-abiword' + 'ace': 'application/x-ace-compressed' + 'arj': 'application/x-arj' + 'aab': 'application/x-authorware-bin' + 'x32': 'application/x-authorware-bin' + 'u32': 'application/x-authorware-bin' + 'vox': 'application/x-authorware-bin' + 'aam': 'application/x-authorware-map' + 'aas': 'application/x-authorware-seg' + 'bcpio': 'application/x-bcpio' + 'torrent': 'application/x-bittorrent' + 'blb': 'application/x-blorb' + 'blorb': 'application/x-blorb' + 'bz': 'application/x-bzip' + 'bz2': 'application/x-bzip2' + 'boz': 'application/x-bzip2' + 'cbr': 'application/x-cbr' + 'cba': 'application/x-cbr' + 'cbt': 'application/x-cbr' + 'cbz': 'application/x-cbr' + 'cb7': 'application/x-cbr' + 'vcd': 'application/x-cdlink' + 'cfs': 'application/x-cfs-compressed' + 'chat': 'application/x-chat' + 'pgn': 'application/x-chess-pgn' + 'crx': 'application/x-chrome-extension' + 'cco': 'application/x-cocoa' + 'nsc': 'application/x-conference' + 'cpio': 'application/x-cpio' + 'csh': 'application/x-csh' + 'udeb': 'application/x-debian-package' + 'dgc': 'application/x-dgc-compressed' + 'dir': 'application/x-director' + 'dcr': 'application/x-director' + 'dxr': 'application/x-director' + 'cst': 'application/x-director' + 'cct': 'application/x-director' + 'cxt': 'application/x-director' + 'w3d': 'application/x-director' + 'fgd': 'application/x-director' + 'swa': 'application/x-director' + 'wad': 'application/x-doom' + 'ncx': 'application/x-dtbncx+xml' + 'dtb': 'application/x-dtbook+xml' + 'res': 'application/x-dtbresource+xml' + 'dvi': 'application/x-dvi' + 'evy': 'application/x-envoy' + 'eva': 'application/x-eva' + 'bdf': 'application/x-font-bdf' + 'gsf': 'application/x-font-ghostscript' + 'psf': 'application/x-font-linux-psf' + 'pcf': 'application/x-font-pcf' + 'snf': 'application/x-font-snf' + 'pfa': 'application/x-font-type1' + 'pfb': 'application/x-font-type1' + 'pfm': 'application/x-font-type1' + 'afm': 'application/x-font-type1' + 'arc': 'application/x-freearc' + 'spl': 'application/x-futuresplash' + 'gca': 'application/x-gca-compressed' + 'ulx': 'application/x-glulx' + 'gnumeric': 'application/x-gnumeric' + 'gramps': 'application/x-gramps-xml' + 'gtar': 'application/x-gtar' + 'hdf': 'application/x-hdf' + 'php': 'application/x-httpd-php' + 'install': 'application/x-install-instructions' + 'jardiff': 'application/x-java-archive-diff' + 'jnlp': 'application/x-java-jnlp-file' + 'kdbx': 'application/x-keepass2' + 'latex': 'application/x-latex' + 'luac': 'application/x-lua-bytecode' + 'lzh': 'application/x-lzh-compressed' + 'lha': 'application/x-lzh-compressed' + 'run': 'application/x-makeself' + 'mie': 'application/x-mie' + 'prc': 'model/prc' + 'mobi': 'application/x-mobipocket-ebook' + 'application': 'application/x-ms-application' + 'lnk': 'application/x-ms-shortcut' + 'wmd': 'application/x-ms-wmd' + 'wmz': 'application/x-msmetafile' + 'xbap': 'application/x-ms-xbap' + 'mdb': 'application/x-msaccess' + 'obd': 'application/x-msbinder' + 'crd': 'application/x-mscardfile' + 'clp': 'application/x-msclip' + 'com': 'application/x-msdownload' + 'bat': 'application/x-msdownload' + 'mvb': 'application/x-msmediaview' + 'm13': 'application/x-msmediaview' + 'm14': 'application/x-msmediaview' + 'wmf': 'image/wmf' + 'emf': 'image/emf' + 'emz': 'application/x-msmetafile' + 'mny': 'application/x-msmoney' + 'pub': 'application/x-mspublisher' + 'scd': 'application/x-msschedule' + 'trm': 'application/x-msterminal' + 'wri': 'application/x-mswrite' + 'nc': 'application/x-netcdf' + 'cdf': 'application/x-netcdf' + 'pac': 'application/x-ns-proxy-autoconfig' + 'nzb': 'application/x-nzb' + 'pl': 'application/x-perl' + 'pm': 'application/x-perl' + 'p12': 'application/x-pkcs12' + 'pfx': 'application/x-pkcs12' + 'p7b': 'application/x-pkcs7-certificates' + 'spc': 'application/x-pkcs7-certificates' + 'p7r': 'application/x-pkcs7-certreqresp' + 'rpm': 'application/x-redhat-package-manager' + 'ris': 'application/x-research-info-systems' + 'sea': 'application/x-sea' + 'sh': 'application/x-sh' + 'shar': 'application/x-shar' + 'swf': 'application/x-shockwave-flash' + 'xap': 'application/x-silverlight-app' + 'sql': 'application/x-sql' + 'sit': 'application/x-stuffit' + 'sitx': 'application/x-stuffitx' + 'srt': 'application/x-subrip' + 'sv4cpio': 'application/x-sv4cpio' + 'sv4crc': 'application/x-sv4crc' + 't3': 'application/x-t3vm-image' + 'gam': 'application/x-tads' + 'tar': 'application/x-tar' + 'tcl': 'application/x-tcl' + 'tk': 'application/x-tcl' + 'tex': 'application/x-tex' + 'tfm': 'application/x-tex-tfm' + 'texinfo': 'application/x-texinfo' + 'texi': 'application/x-texinfo' + 'obj': 'model/obj' + 'ustar': 'application/x-ustar' + 'hdd': 'application/x-virtualbox-hdd' + 'ova': 'application/x-virtualbox-ova' + 'ovf': 'application/x-virtualbox-ovf' + 'vbox': 'application/x-virtualbox-vbox' + 'vbox-extpack': 'application/x-virtualbox-vbox-extpack' + 'vdi': 'application/x-virtualbox-vdi' + 'vhd': 'application/x-virtualbox-vhd' + 'vmdk': 'application/x-virtualbox-vmdk' + 'src': 'application/x-wais-source' + 'webapp': 'application/x-web-app-manifest+json' + 'der': 'application/x-x509-ca-cert' + 'crt': 'application/x-x509-ca-cert' + 'pem': 'application/x-x509-ca-cert' + 'fig': 'application/x-xfig' + 'xlf': 'application/xliff+xml' + 'xpi': 'application/x-xpinstall' + 'xz': 'application/x-xz' + 'z1': 'application/x-zmachine' + 'z2': 'application/x-zmachine' + 'z3': 'application/x-zmachine' + 'z4': 'application/x-zmachine' + 'z5': 'application/x-zmachine' + 'z6': 'application/x-zmachine' + 'z7': 'application/x-zmachine' + 'z8': 'application/x-zmachine' + 'xaml': 'application/xaml+xml' + 'xav': 'application/xcap-att+xml' + 'xca': 'application/xcap-caps+xml' + 'xdf': 'application/xcap-diff+xml' + 'xel': 'application/xcap-el+xml' + 'xns': 'application/xcap-ns+xml' + 'xenc': 'application/xenc+xml' + 'xhtml': 'application/xhtml+xml' + 'xht': 'application/xhtml+xml' + 'xml': 'text/xml' + 'xsl': 'application/xslt+xml' + 'xsd': 'application/xml' + 'rng': 'application/xml' + 'dtd': 'application/xml-dtd' + 'xop': 'application/xop+xml' + 'xpl': 'application/xproc+xml' + 'xslt': 'application/xslt+xml' + 'xspf': 'application/xspf+xml' + 'mxml': 'application/xv+xml' + 'xhvml': 'application/xv+xml' + 'xvml': 'application/xv+xml' + 'xvm': 'application/xv+xml' + 'yang': 'application/yang' + 'yin': 'application/yin+xml' + 'zip': 'application/zip' + '3gpp': 'video/3gpp' + 'adts': 'audio/aac' + 'aac': 'audio/x-aac' + 'adp': 'audio/adpcm' + 'amr': 'audio/amr' + 'au': 'audio/basic' + 'snd': 'audio/basic' + 'mid': 'audio/midi' + 'midi': 'audio/midi' + 'kar': 'audio/midi' + 'rmi': 'audio/midi' + 'mxmf': 'audio/mobile-xmf' + 'mp3': 'audio/mpeg' + 'm4a': 'audio/x-m4a' + 'mp4a': 'audio/mp4' + 'mpga': 'audio/mpeg' + 'mp2': 'audio/mpeg' + 'mp2a': 'audio/mpeg' + 'm2a': 'audio/mpeg' + 'm3a': 'audio/mpeg' + 'oga': 'audio/ogg' + 'ogg': 'audio/ogg' + 'spx': 'audio/ogg' + 'opus': 'audio/ogg' + 's3m': 'audio/s3m' + 'sil': 'audio/silk' + 'uva': 'audio/vnd.dece.audio' + 'uvva': 'audio/vnd.dece.audio' + 'eol': 'audio/vnd.digital-winds' + 'dra': 'audio/vnd.dra' + 'dts': 'audio/vnd.dts' + 'dtshd': 'audio/vnd.dts.hd' + 'lvp': 'audio/vnd.lucent.voice' + 'pya': 'audio/vnd.ms-playready.media.pya' + 'ecelp4800': 'audio/vnd.nuera.ecelp4800' + 'ecelp7470': 'audio/vnd.nuera.ecelp7470' + 'ecelp9600': 'audio/vnd.nuera.ecelp9600' + 'rip': 'audio/vnd.rip' + 'wav': 'audio/x-wav' + 'weba': 'audio/webm' + 'aif': 'audio/x-aiff' + 'aiff': 'audio/x-aiff' + 'aifc': 'audio/x-aiff' + 'caf': 'audio/x-caf' + 'flac': 'audio/x-flac' + 'mka': 'audio/x-matroska' + 'm3u': 'audio/x-mpegurl' + 'wax': 'audio/x-ms-wax' + 'wma': 'audio/x-ms-wma' + 'ram': 'audio/x-pn-realaudio' + 'ra': 'audio/x-realaudio' + 'rmp': 'audio/x-pn-realaudio-plugin' + 'xm': 'audio/xm' + 'cdx': 'chemical/x-cdx' + 'cif': 'chemical/x-cif' + 'cmdf': 'chemical/x-cmdf' + 'cml': 'chemical/x-cml' + 'csml': 'chemical/x-csml' + 'xyz': 'chemical/x-xyz' + 'ttc': 'font/collection' + 'otf': 'font/otf' + 'ttf': 'font/ttf' + 'woff': 'font/woff' + 'woff2': 'font/woff2' + 'exr': 'image/aces' + 'apng': 'image/vnd.mozilla.apng' + 'avci': 'image/avci' + 'avcs': 'image/avcs' + 'avif': 'image/avif' + 'bmp': 'image/x-ms-bmp' + 'dib': 'image/bmp' + 'cgm': 'image/cgm' + 'drle': 'image/dicom-rle' + 'fits': 'image/fits' + 'g3': 'image/g3fax' + 'gif': 'image/gif' + 'heic': 'image/heic' + 'heics': 'image/heic-sequence' + 'heif': 'image/heif' + 'heifs': 'image/heif-sequence' + 'hej2': 'image/hej2k' + 'hsj2': 'image/hsj2' + 'ief': 'image/ief' + 'jls': 'image/jls' + 'jp2': 'image/jp2' + 'jpg2': 'image/jp2' + 'jpeg': 'image/jpeg' + 'jpg': 'image/jpeg' + 'jpe': 'image/jpeg' + 'jph': 'image/jph' + 'jhc': 'image/jphc' + 'jpm': 'video/jpm' + 'jpx': 'image/jpx' + 'jpf': 'image/jpx' + 'jxr': 'image/jxr' + 'jxra': 'image/jxra' + 'jxrs': 'image/jxrs' + 'jxs': 'image/jxs' + 'jxsc': 'image/jxsc' + 'jxsi': 'image/jxsi' + 'jxss': 'image/jxss' + 'ktx': 'image/ktx' + 'ktx2': 'image/ktx2' + 'png': 'image/png' + 'btif': 'image/prs.btif' + 'btf': 'image/prs.btif' + 'pti': 'image/prs.pti' + 'sgi': 'image/sgi' + 'svg': 'image/svg+xml' + 'svgz': 'image/svg+xml' + 't38': 'image/t38' + 'tif': 'image/tiff' + 'tiff': 'image/tiff' + 'tfx': 'image/tiff-fx' + 'psd': 'image/vnd.adobe.photoshop' + 'azv': 'image/vnd.airzip.accelerator.azv' + 'uvi': 'image/vnd.dece.graphic' + 'uvvi': 'image/vnd.dece.graphic' + 'uvg': 'image/vnd.dece.graphic' + 'uvvg': 'image/vnd.dece.graphic' + 'djvu': 'image/vnd.djvu' + 'djv': 'image/vnd.djvu' + 'sub': 'text/vnd.dvb.subtitle' + 'dwg': 'image/vnd.dwg' + 'dxf': 'image/vnd.dxf' + 'fbs': 'image/vnd.fastbidsheet' + 'fpx': 'image/vnd.fpx' + 'fst': 'image/vnd.fst' + 'mmr': 'image/vnd.fujixerox.edmics-mmr' + 'rlc': 'image/vnd.fujixerox.edmics-rlc' + 'ico': 'image/x-icon' + 'dds': 'image/vnd.ms-dds' + 'mdi': 'image/vnd.ms-modi' + 'wdp': 'image/vnd.ms-photo' + 'npx': 'image/vnd.net-fpx' + 'b16': 'image/vnd.pco.b16' + 'tap': 'image/vnd.tencent.tap' + 'vtf': 'image/vnd.valve.source.texture' + 'wbmp': 'image/vnd.wap.wbmp' + 'xif': 'image/vnd.xiff' + 'pcx': 'image/x-pcx' + 'webp': 'image/webp' + '3ds': 'image/x-3ds' + 'ras': 'image/x-cmu-raster' + 'cmx': 'image/x-cmx' + 'fh': 'image/x-freehand' + 'fhc': 'image/x-freehand' + 'fh4': 'image/x-freehand' + 'fh5': 'image/x-freehand' + 'fh7': 'image/x-freehand' + 'jng': 'image/x-jng' + 'sid': 'image/x-mrsid-image' + 'pic': 'image/x-pict' + 'pct': 'image/x-pict' + 'pnm': 'image/x-portable-anymap' + 'pbm': 'image/x-portable-bitmap' + 'pgm': 'image/x-portable-graymap' + 'ppm': 'image/x-portable-pixmap' + 'rgb': 'image/x-rgb' + 'tga': 'image/x-tga' + 'xbm': 'image/x-xbitmap' + 'xpm': 'image/x-xpixmap' + 'xwd': 'image/x-xwindowdump' + 'disposition-notification': 'message/disposition-notification' + 'u8msg': 'message/global' + 'u8dsn': 'message/global-delivery-status' + 'u8mdn': 'message/global-disposition-notification' + 'u8hdr': 'message/global-headers' + 'eml': 'message/rfc822' + 'mime': 'message/rfc822' + 'wsc': 'message/vnd.wfa.wsc' + '3mf': 'model/3mf' + 'gltf': 'model/gltf+json' + 'glb': 'model/gltf-binary' + 'igs': 'model/iges' + 'iges': 'model/iges' + 'msh': 'model/mesh' + 'mesh': 'model/mesh' + 'silo': 'model/mesh' + 'mtl': 'model/mtl' + 'stpx': 'model/step+xml' + 'stpz': 'model/step+zip' + 'stpxz': 'model/step-xml+zip' + 'u3d': 'model/u3d' + 'dae': 'model/vnd.collada+xml' + 'dwf': 'model/vnd.dwf' + 'gdl': 'model/vnd.gdl' + 'gtw': 'model/vnd.gtw' + 'mts': 'model/vnd.mts' + 'ogex': 'model/vnd.opengex' + 'x_b': 'model/vnd.parasolid.transmit.binary' + 'x_t': 'model/vnd.parasolid.transmit.text' + 'pyo': 'model/vnd.pytha.pyox' + 'pyox': 'model/vnd.pytha.pyox' + 'vds': 'model/vnd.sap.vds' + 'usdz': 'model/vnd.usdz+zip' + 'bsp': 'model/vnd.valve.source.compiled-map' + 'vtu': 'model/vnd.vtu' + 'wrl': 'model/vrml' + 'vrml': 'model/vrml' + 'x3db': 'model/x3d+fastinfoset' + 'x3dbz': 'model/x3d+binary' + 'x3dv': 'model/x3d-vrml' + 'x3dvz': 'model/x3d+vrml' + 'x3d': 'model/x3d+xml' + 'x3dz': 'model/x3d+xml' + 'appcache': 'text/cache-manifest' + 'manifest': 'text/cache-manifest' + 'ics': 'text/calendar' + 'ifb': 'text/calendar' + 'coffee': 'text/coffeescript' + 'litcoffee': 'text/coffeescript' + 'css': 'text/css' + 'csv': 'text/csv' + 'html': 'text/html' + 'htm': 'text/html' + 'shtml': 'text/html' + 'jade': 'text/jade' + 'mjs': 'text/javascript' + 'jsx': 'text/jsx' + 'less': 'text/less' + 'md': 'text/markdown' + 'markdown': 'text/markdown' + 'mml': 'text/mathml' + 'mdx': 'text/mdx' + 'n3': 'text/n3' + 'txt': 'text/plain' + 'text': 'text/plain' + 'conf': 'text/plain' + 'def': 'text/plain' + 'list': 'text/plain' + 'log': 'text/plain' + 'in': 'text/plain' + 'ini': 'text/plain' + 'dsc': 'text/prs.lines.tag' + 'rtx': 'text/richtext' + 'sgml': 'text/sgml' + 'sgm': 'text/sgml' + 'shex': 'text/shex' + 'slim': 'text/slim' + 'slm': 'text/slim' + 'spdx': 'text/spdx' + 'stylus': 'text/stylus' + 'styl': 'text/stylus' + 'tsv': 'text/tab-separated-values' + 't': 'text/troff' + 'tr': 'text/troff' + 'roff': 'text/troff' + 'man': 'text/troff' + 'me': 'text/troff' + 'ms': 'text/troff' + 'ttl': 'text/turtle' + 'uri': 'text/uri-list' + 'uris': 'text/uri-list' + 'urls': 'text/uri-list' + 'vcard': 'text/vcard' + 'curl': 'text/vnd.curl' + 'dcurl': 'text/vnd.curl.dcurl' + 'mcurl': 'text/vnd.curl.mcurl' + 'scurl': 'text/vnd.curl.scurl' + 'ged': 'text/vnd.familysearch.gedcom' + 'fly': 'text/vnd.fly' + 'flx': 'text/vnd.fmi.flexstor' + 'gv': 'text/vnd.graphviz' + '3dml': 'text/vnd.in3d.3dml' + 'spot': 'text/vnd.in3d.spot' + 'jad': 'text/vnd.sun.j2me.app-descriptor' + 'wml': 'text/vnd.wap.wml' + 'wmls': 'text/vnd.wap.wmlscript' + 'vtt': 'text/vtt' + 's': 'text/x-asm' + 'asm': 'text/x-asm' + 'c': 'text/x-c' + 'cc': 'text/x-c' + 'cxx': 'text/x-c' + 'cpp': 'text/x-c' + 'h': 'text/x-c' + 'hh': 'text/x-c' + 'dic': 'text/x-c' + 'htc': 'text/x-component' + 'f': 'text/x-fortran' + 'for': 'text/x-fortran' + 'f77': 'text/x-fortran' + 'f90': 'text/x-fortran' + 'hbs': 'text/x-handlebars-template' + 'java': 'text/x-java-source' + 'lua': 'text/x-lua' + 'mkd': 'text/x-markdown' + 'nfo': 'text/x-nfo' + 'opml': 'text/x-opml' + 'p': 'text/x-pascal' + 'pas': 'text/x-pascal' + 'pde': 'text/x-processing' + 'sass': 'text/x-sass' + 'scss': 'text/x-scss' + 'etx': 'text/x-setext' + 'sfv': 'text/x-sfv' + 'ymp': 'text/x-suse-ymp' + 'uu': 'text/x-uuencode' + 'vcs': 'text/x-vcalendar' + 'vcf': 'text/x-vcard' + 'yaml': 'text/yaml' + 'yml': 'text/yaml' + '3gp': 'video/3gpp' + '3g2': 'video/3gpp2' + 'h261': 'video/h261' + 'h263': 'video/h263' + 'h264': 'video/h264' + 'm4s': 'video/iso.segment' + 'jpgv': 'video/jpeg' + 'jpgm': 'video/jpm' + 'mj2': 'video/mj2' + 'mjp2': 'video/mj2' + 'ts': 'video/mp2t' + 'mp4': 'video/mp4' + 'mp4v': 'video/mp4' + 'mpg4': 'video/mp4' + 'mpeg': 'video/mpeg' + 'mpg': 'video/mpeg' + 'mpe': 'video/mpeg' + 'm1v': 'video/mpeg' + 'm2v': 'video/mpeg' + 'ogv': 'video/ogg' + 'qt': 'video/quicktime' + 'mov': 'video/quicktime' + 'uvh': 'video/vnd.dece.hd' + 'uvvh': 'video/vnd.dece.hd' + 'uvm': 'video/vnd.dece.mobile' + 'uvvm': 'video/vnd.dece.mobile' + 'uvp': 'video/vnd.dece.pd' + 'uvvp': 'video/vnd.dece.pd' + 'uvs': 'video/vnd.dece.sd' + 'uvvs': 'video/vnd.dece.sd' + 'uvv': 'video/vnd.dece.video' + 'uvvv': 'video/vnd.dece.video' + 'dvb': 'video/vnd.dvb.file' + 'fvt': 'video/vnd.fvt' + 'mxu': 'video/vnd.mpegurl' + 'm4u': 'video/vnd.mpegurl' + 'pyv': 'video/vnd.ms-playready.media.pyv' + 'uvu': 'video/vnd.uvvu.mp4' + 'uvvu': 'video/vnd.uvvu.mp4' + 'viv': 'video/vnd.vivo' + 'webm': 'video/webm' + 'f4v': 'video/x-f4v' + 'fli': 'video/x-fli' + 'flv': 'video/x-flv' + 'm4v': 'video/x-m4v' + 'mkv': 'video/x-matroska' + 'mk3d': 'video/x-matroska' + 'mks': 'video/x-matroska' + 'mng': 'video/x-mng' + 'asf': 'video/x-ms-asf' + 'asx': 'video/x-ms-asf' + 'vob': 'video/x-ms-vob' + 'wm': 'video/x-ms-wm' + 'wmv': 'video/x-ms-wmv' + 'wmx': 'video/x-ms-wmx' + 'wvx': 'video/x-ms-wvx' + 'avi': 'video/x-msvideo' + 'movie': 'video/x-sgi-movie' + 'smv': 'video/x-smv' + 'ice': 'x-conference/x-cooltalk' + } +) diff --git a/vlib/net/http/mime/mime.v b/vlib/net/http/mime/mime.v new file mode 100644 index 0000000000..4aa02ff947 --- /dev/null +++ b/vlib/net/http/mime/mime.v @@ -0,0 +1,39 @@ +module mime + +pub struct MimeType { + source string + extensions []string + compressible bool + charset string +} + +// returns a `MimeType` for the given MIME type +pub fn get_complete_mime_type(mt string) MimeType { + return db[mt] +} + +// returns the MIME type for the given file extension +pub fn get_mime_type(ext string) string { + return ext_to_mt_str[ext] +} + +// returns a `content-type` header ready to use for the given MIME type +pub fn get_content_type(mt string) string { + mt_struct := db[mt] + charset := if mt_struct.charset.len > 0 { mt_struct.charset.to_lower() } else { 'utf-8' } + return '$mt; charset=$charset' +} + +// returns the default extension for the given MIME type +pub fn get_default_ext(mt string) string { + return if db[mt].extensions.len > 0 { + db[mt].extensions[0] + } else { + '' + } +} + +// returns true if the given MIME type exists +pub fn exists(mt string) bool { + return mt in db +} diff --git a/vlib/net/http/mime/mime_test.v b/vlib/net/http/mime/mime_test.v new file mode 100644 index 0000000000..ec0b2b6f04 --- /dev/null +++ b/vlib/net/http/mime/mime_test.v @@ -0,0 +1,29 @@ +module mime + +fn test_mime() { + assert get_complete_mime_type('application/json') == MimeType{ + source: 'iana' + extensions: ['json', 'map'] + compressible: true + charset: 'UTF-8' + } + assert get_mime_type('json') == 'application/json' + assert get_content_type('application/json') == 'application/json; charset=utf-8' + assert get_default_ext('application/json') == 'json' + + assert get_complete_mime_type('text/markdown') == MimeType{ + source: 'iana' + extensions: ['md', 'markdown'] + compressible: true + charset: '' + } + assert get_mime_type('md') == 'text/markdown' + assert get_content_type('text/markdown') == 'text/markdown; charset=utf-8' + assert get_default_ext('text/markdown') == 'md' + + assert exists('application/json') == true + assert exists('udfsbsfib') == false + + assert get_default_ext('application/1d-interleaved-parityfec') == '' // valid mime type without associated extension + assert get_default_ext('invalid mime type') == '' // invalid mime type +} diff --git a/vlib/vweb/vweb.v b/vlib/vweb/vweb.v index 0fcdbe9a0a..0619b75aaf 100644 --- a/vlib/vweb/vweb.v +++ b/vlib/vweb/vweb.v @@ -260,7 +260,7 @@ pub fn (mut ctx Context) file(f_path string) Result { return Result{} } content_type := vweb.mime_types[ext] - if content_type == '' { + if content_type.len == O { eprintln('no MIME type found for extension $ext') ctx.server_error(500) } else {