[Pkg-javascript-commits] [node-mime-types] 06/19: bunbld mime-db as patch
Leo Iannacone
l3on-guest at moszumanska.debian.org
Fri Oct 10 10:12:35 UTC 2014
This is an automated email from the git hooks/post-receive script.
l3on-guest pushed a commit to branch master
in repository node-mime-types.
commit 861b92e5861e2f9e9da70e2533d02370426612e8
Author: Leo Iannacone <l3on at ubuntu.com>
Date: Tue Oct 7 11:37:47 2014 +0200
bunbld mime-db as patch
---
debian/patches/0000-bundle_mime-db.patch | 7361 ++++++++++++++++++++++++++++++
1 file changed, 7361 insertions(+)
diff --git a/debian/patches/0000-bundle_mime-db.patch b/debian/patches/0000-bundle_mime-db.patch
new file mode 100644
index 0000000..0c010d7
--- /dev/null
+++ b/debian/patches/0000-bundle_mime-db.patch
@@ -0,0 +1,7361 @@
+Description: Import mime-db as patch.
+Author: Leo Iannacone <l3on at ubuntu.com>
+Forwarded: not-needed
+Last-Update: 2014-10-07
+
+---
+ node_modules/mime-db/LICENSE | 22
+ node_modules/mime-db/README.md | 72
+ node_modules/mime-db/db.json | 6327 +++++++++++++++++++++++++++
+ node_modules/mime-db/index.js | 11
+ node_modules/mime-db/lib/charsets.json | 5
+ node_modules/mime-db/lib/compressible.json | 500 ++
+ node_modules/mime-db/lib/extensions.json | 30
+ node_modules/mime-db/package.json | 46
+ node_modules/mime-db/scripts/build.js | 87
+ node_modules/mime-db/scripts/extensions.js | 53
+ node_modules/mime-db/scripts/lib/write-db.js | 43
+ node_modules/mime-db/scripts/types.js | 42
+ node_modules/mime-db/src/iana.json | 1
+ node_modules/mime-db/src/mime.json | 1
+ node_modules/mime-db/src/node.json | 1
+ node_modules/mime-db/test/index.js | 45
+ 16 files changed, 7286 insertions(+)
+
+--- /dev/null
++++ b/node_modules/mime-db/LICENSE
+@@ -0,0 +1,22 @@
++
++The MIT License (MIT)
++
++Copyright (c) 2014 Jonathan Ong me at jongleberry.com
++
++Permission is hereby granted, free of charge, to any person obtaining a copy
++of this software and associated documentation files (the "Software"), to deal
++in the Software without restriction, including without limitation the rights
++to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
++copies of the Software, and to permit persons to whom the Software is
++furnished to do so, subject to the following conditions:
++
++The above copyright notice and this permission notice shall be included in
++all copies or substantial portions of the Software.
++
++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
++AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
++OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
++THE SOFTWARE.
+--- /dev/null
++++ b/node_modules/mime-db/README.md
+@@ -0,0 +1,72 @@
++# mime-db
++
++[![NPM Version][npm-version-image]][npm-url]
++[![NPM Downloads][npm-downloads-image]][npm-url]
++[![Node.js Version][node-image]][node-url]
++[![Build Status][travis-image]][travis-url]
++[![Coverage Status][coveralls-image]][coveralls-url]
++
++This is a database of all mime types.
++It consistents of a single, public JSON file and does not include any logic,
++allowing it to remain as unopinionated as possible with an API.
++It aggregates data from the following sources:
++
++- http://www.iana.org/assignments/media-types/media-types.xhtml
++- http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types
++
++## Usage
++
++```bash
++npm i mime-db
++```
++
++```js
++var db = require('mime-db');
++
++// grab data on .js files
++var data = db['application/javascript'];
++```
++
++If you're crazy enough to use this in the browser,
++you can just grab the JSON file:
++
++```
++https://cdn.rawgit.com/jshttp/mime-db/master/db.json
++```
++
++## Data Structure
++
++The JSON file is a map lookup for lowercased mime types.
++Each mime type has the following properties:
++
++- `.source` - where the mime type is defined.
++ If not set, it's probably a custom media type.
++ - `apache` - [Apache common media types](http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types)
++ - `iana` - [IANA-defined media types](http://www.iana.org/assignments/media-types/media-types.xhtml)
++- `.extensions[]` - known extensions associated with this mime type.
++- `.compressible` - whether a file of this type is can be gzipped.
++- `.charset` - the default charset associated with this type, if any.
++
++If unknown, every property could be `undefined`.
++
++## Repository Structure
++
++- `scripts` - these are scripts to run to build the database
++- `src/` - this is a folder of files created from remote sources like Apache and IANA
++- `lib/` - this is a folder of our own custom sources and db, which will be merged into `db.json`
++- `db.json` - the final built JSON file for end-user usage
++
++## Contributing
++
++To edit the database, only make PRs against files in the `lib/` folder.
++To update the build, run `npm run update`.
++
++[npm-version-image]: https://img.shields.io/npm/v/mime-db.svg?style=flat
++[npm-downloads-image]: https://img.shields.io/npm/dm/mime-db.svg?style=flat
++[npm-url]: https://npmjs.org/package/mime-db
++[travis-image]: https://img.shields.io/travis/jshttp/mime-db.svg?style=flat
++[travis-url]: https://travis-ci.org/jshttp/mime-db
++[coveralls-image]: https://img.shields.io/coveralls/jshttp/mime-db.svg?style=flat
++[coveralls-url]: https://coveralls.io/r/jshttp/mime-db?branch=master
++[node-image]: https://img.shields.io/node/v/mime-db.svg?style=flat
++[node-url]: http://nodejs.org/download/
+--- /dev/null
++++ b/node_modules/mime-db/db.json
+@@ -0,0 +1,6327 @@
++{
++ "application/1d-interleaved-parityfec": {
++ "source": "iana"
++ },
++ "application/3gpdash-qoe-report+xml": {
++ "source": "iana"
++ },
++ "application/3gpp-ims+xml": {
++ "source": "iana"
++ },
++ "application/activemessage": {
++ "source": "iana"
++ },
++ "application/alto-costmap+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/alto-costmapfilter+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/alto-directory+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/alto-endpointcost+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/alto-endpointcostparams+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/alto-endpointprop+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/alto-endpointpropparams+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/alto-error+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/alto-networkmap+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/alto-networkmapfilter+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/andrew-inset": {
++ "source": "iana",
++ "extensions": ["ez"]
++ },
++ "application/applefile": {
++ "source": "iana"
++ },
++ "application/applixware": {
++ "source": "apache",
++ "extensions": ["aw"]
++ },
++ "application/atf": {
++ "source": "iana"
++ },
++ "application/atom+xml": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["atom"]
++ },
++ "application/atomcat+xml": {
++ "source": "iana",
++ "extensions": ["atomcat"]
++ },
++ "application/atomdeleted+xml": {
++ "source": "iana"
++ },
++ "application/atomicmail": {
++ "source": "iana"
++ },
++ "application/atomsvc+xml": {
++ "source": "iana",
++ "extensions": ["atomsvc"]
++ },
++ "application/auth-policy+xml": {
++ "source": "iana"
++ },
++ "application/bacnet-xdd+zip": {
++ "source": "iana"
++ },
++ "application/batch-smtp": {
++ "source": "iana"
++ },
++ "application/beep+xml": {
++ "source": "iana"
++ },
++ "application/calendar+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/calendar+xml": {
++ "source": "iana"
++ },
++ "application/call-completion": {
++ "source": "iana"
++ },
++ "application/cals-1840": {
++ "source": "iana"
++ },
++ "application/cbor": {
++ "source": "iana"
++ },
++ "application/ccmp+xml": {
++ "source": "iana"
++ },
++ "application/ccxml+xml": {
++ "source": "iana",
++ "extensions": ["ccxml"]
++ },
++ "application/cdmi-capability": {
++ "source": "iana",
++ "extensions": ["cdmia"]
++ },
++ "application/cdmi-container": {
++ "source": "iana",
++ "extensions": ["cdmic"]
++ },
++ "application/cdmi-domain": {
++ "source": "iana",
++ "extensions": ["cdmid"]
++ },
++ "application/cdmi-object": {
++ "source": "iana",
++ "extensions": ["cdmio"]
++ },
++ "application/cdmi-queue": {
++ "source": "iana",
++ "extensions": ["cdmiq"]
++ },
++ "application/cea-2018+xml": {
++ "source": "iana"
++ },
++ "application/cellml+xml": {
++ "source": "iana"
++ },
++ "application/cfw": {
++ "source": "iana"
++ },
++ "application/cms": {
++ "source": "iana"
++ },
++ "application/cnrp+xml": {
++ "source": "iana"
++ },
++ "application/coap-group+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/commonground": {
++ "source": "iana"
++ },
++ "application/conference-info+xml": {
++ "source": "iana"
++ },
++ "application/cpl+xml": {
++ "source": "iana"
++ },
++ "application/csrattrs": {
++ "source": "iana"
++ },
++ "application/csta+xml": {
++ "source": "iana"
++ },
++ "application/cstadata+xml": {
++ "source": "iana"
++ },
++ "application/cu-seeme": {
++ "source": "apache",
++ "extensions": ["cu"]
++ },
++ "application/cybercash": {
++ "source": "iana"
++ },
++ "application/dart": {
++ "compressible": true
++ },
++ "application/dash+xml": {
++ "source": "iana",
++ "extensions": ["mdp"]
++ },
++ "application/dashdelta": {
++ "source": "iana"
++ },
++ "application/davmount+xml": {
++ "source": "iana",
++ "extensions": ["davmount"]
++ },
++ "application/dca-rft": {
++ "source": "iana"
++ },
++ "application/dcd": {
++ "source": "iana"
++ },
++ "application/dec-dx": {
++ "source": "iana"
++ },
++ "application/dialog-info+xml": {
++ "source": "iana"
++ },
++ "application/dicom": {
++ "source": "iana"
++ },
++ "application/dns": {
++ "source": "iana"
++ },
++ "application/docbook+xml": {
++ "source": "apache",
++ "extensions": ["dbk"]
++ },
++ "application/dskpp+xml": {
++ "source": "iana"
++ },
++ "application/dssc+der": {
++ "source": "iana",
++ "extensions": ["dssc"]
++ },
++ "application/dssc+xml": {
++ "source": "iana",
++ "extensions": ["xdssc"]
++ },
++ "application/dvcs": {
++ "source": "iana"
++ },
++ "application/ecmascript": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["ecma"]
++ },
++ "application/edi-consent": {
++ "source": "iana"
++ },
++ "application/edi-x12": {
++ "source": "iana",
++ "compressible": false
++ },
++ "application/edifact": {
++ "source": "iana",
++ "compressible": false
++ },
++ "application/emma+xml": {
++ "source": "iana",
++ "extensions": ["emma"]
++ },
++ "application/emotionml+xml": {
++ "source": "iana"
++ },
++ "application/encaprtp": {
++ "source": "iana"
++ },
++ "application/epp+xml": {
++ "source": "iana"
++ },
++ "application/epub+zip": {
++ "source": "apache",
++ "extensions": ["epub"]
++ },
++ "application/eshop": {
++ "source": "iana"
++ },
++ "application/example": {
++ "source": "iana"
++ },
++ "application/exi": {
++ "source": "iana",
++ "extensions": ["exi"]
++ },
++ "application/fastinfoset": {
++ "source": "iana"
++ },
++ "application/fastsoap": {
++ "source": "iana"
++ },
++ "application/fdt+xml": {
++ "source": "iana"
++ },
++ "application/fits": {
++ "source": "iana"
++ },
++ "application/font-sfnt": {
++ "source": "iana"
++ },
++ "application/font-tdpfr": {
++ "source": "iana",
++ "extensions": ["pfr"]
++ },
++ "application/font-woff": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["woff"]
++ },
++ "application/font-woff2": {
++ "compressible": false,
++ "extensions": ["woff2"]
++ },
++ "application/framework-attributes+xml": {
++ "source": "iana"
++ },
++ "application/gml+xml": {
++ "source": "apache",
++ "extensions": ["gml"]
++ },
++ "application/gpx+xml": {
++ "source": "apache",
++ "extensions": ["gpx"]
++ },
++ "application/gxf": {
++ "source": "apache",
++ "extensions": ["gxf"]
++ },
++ "application/gzip": {
++ "source": "iana",
++ "compressible": false
++ },
++ "application/h224": {
++ "source": "iana"
++ },
++ "application/held+xml": {
++ "source": "iana"
++ },
++ "application/http": {
++ "source": "iana"
++ },
++ "application/hyperstudio": {
++ "source": "iana",
++ "extensions": ["stk"]
++ },
++ "application/ibe-key-request+xml": {
++ "source": "iana"
++ },
++ "application/ibe-pkg-reply+xml": {
++ "source": "iana"
++ },
++ "application/ibe-pp-data": {
++ "source": "iana"
++ },
++ "application/iges": {
++ "source": "iana"
++ },
++ "application/im-iscomposing+xml": {
++ "source": "iana"
++ },
++ "application/index": {
++ "source": "iana"
++ },
++ "application/index.cmd": {
++ "source": "iana"
++ },
++ "application/index.obj": {
++ "source": "iana"
++ },
++ "application/index.response": {
++ "source": "iana"
++ },
++ "application/index.vnd": {
++ "source": "iana"
++ },
++ "application/inkml+xml": {
++ "source": "iana",
++ "extensions": ["ink","inkml"]
++ },
++ "application/iotp": {
++ "source": "iana"
++ },
++ "application/ipfix": {
++ "source": "iana",
++ "extensions": ["ipfix"]
++ },
++ "application/ipp": {
++ "source": "iana"
++ },
++ "application/isup": {
++ "source": "iana"
++ },
++ "application/its+xml": {
++ "source": "iana"
++ },
++ "application/java-archive": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["jar"]
++ },
++ "application/java-serialized-object": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["ser"]
++ },
++ "application/java-vm": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["class"]
++ },
++ "application/javascript": {
++ "source": "iana",
++ "charset": "UTF-8",
++ "compressible": true,
++ "extensions": ["js"]
++ },
++ "application/jrd+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/json": {
++ "source": "iana",
++ "charset": "UTF-8",
++ "compressible": true,
++ "extensions": ["json","map"]
++ },
++ "application/json-patch+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/jsonml+json": {
++ "source": "apache",
++ "compressible": true,
++ "extensions": ["jsonml"]
++ },
++ "application/kpml-request+xml": {
++ "source": "iana"
++ },
++ "application/kpml-response+xml": {
++ "source": "iana"
++ },
++ "application/ld+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/link-format": {
++ "source": "iana"
++ },
++ "application/load-control+xml": {
++ "source": "iana"
++ },
++ "application/lost+xml": {
++ "source": "iana",
++ "extensions": ["lostxml"]
++ },
++ "application/lostsync+xml": {
++ "source": "iana"
++ },
++ "application/mac-binhex40": {
++ "source": "iana",
++ "extensions": ["hqx"]
++ },
++ "application/mac-compactpro": {
++ "source": "apache",
++ "extensions": ["cpt"]
++ },
++ "application/macwriteii": {
++ "source": "iana"
++ },
++ "application/mads+xml": {
++ "source": "iana",
++ "extensions": ["mads"]
++ },
++ "application/marc": {
++ "source": "iana",
++ "extensions": ["mrc"]
++ },
++ "application/marcxml+xml": {
++ "source": "iana",
++ "extensions": ["mrcx"]
++ },
++ "application/mathematica": {
++ "source": "iana",
++ "extensions": ["ma","nb","mb"]
++ },
++ "application/mathml+xml": {
++ "source": "iana",
++ "extensions": ["mathml"]
++ },
++ "application/mathml-content+xml": {
++ "source": "iana"
++ },
++ "application/mathml-presentation+xml": {
++ "source": "iana"
++ },
++ "application/mbms-associated-procedure-description+xml": {
++ "source": "iana"
++ },
++ "application/mbms-deregister+xml": {
++ "source": "iana"
++ },
++ "application/mbms-envelope+xml": {
++ "source": "iana"
++ },
++ "application/mbms-msk+xml": {
++ "source": "iana"
++ },
++ "application/mbms-msk-response+xml": {
++ "source": "iana"
++ },
++ "application/mbms-protection-description+xml": {
++ "source": "iana"
++ },
++ "application/mbms-reception-report+xml": {
++ "source": "iana"
++ },
++ "application/mbms-register+xml": {
++ "source": "iana"
++ },
++ "application/mbms-register-response+xml": {
++ "source": "iana"
++ },
++ "application/mbms-schedule+xml": {
++ "source": "iana"
++ },
++ "application/mbms-user-service-description+xml": {
++ "source": "iana"
++ },
++ "application/mbox": {
++ "source": "apache",
++ "extensions": ["mbox"]
++ },
++ "application/mbox+xml": {
++ "source": "iana"
++ },
++ "application/media-policy-dataset+xml": {
++ "source": "iana"
++ },
++ "application/media_control+xml": {
++ "source": "iana"
++ },
++ "application/mediaservercontrol+xml": {
++ "source": "iana",
++ "extensions": ["mscml"]
++ },
++ "application/merge-patch+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/metalink+xml": {
++ "source": "apache",
++ "extensions": ["metalink"]
++ },
++ "application/metalink4+xml": {
++ "source": "iana",
++ "extensions": ["meta4"]
++ },
++ "application/mets+xml": {
++ "source": "iana",
++ "extensions": ["mets"]
++ },
++ "application/mikey": {
++ "source": "iana"
++ },
++ "application/mods+xml": {
++ "source": "iana",
++ "extensions": ["mods"]
++ },
++ "application/moss-keys": {
++ "source": "iana"
++ },
++ "application/moss-signature": {
++ "source": "iana"
++ },
++ "application/mosskey-data": {
++ "source": "iana"
++ },
++ "application/mosskey-request": {
++ "source": "iana"
++ },
++ "application/mp21": {
++ "source": "iana",
++ "extensions": ["m21","mp21"]
++ },
++ "application/mp4": {
++ "source": "iana",
++ "extensions": ["mp4s","m4p"]
++ },
++ "application/mpeg4-generic": {
++ "source": "iana"
++ },
++ "application/mpeg4-iod": {
++ "source": "iana"
++ },
++ "application/mpeg4-iod-xmt": {
++ "source": "iana"
++ },
++ "application/mrb-consumer+xml": {
++ "source": "iana"
++ },
++ "application/mrb-publish+xml": {
++ "source": "iana"
++ },
++ "application/msc-ivr+xml": {
++ "source": "iana"
++ },
++ "application/msc-mixer+xml": {
++ "source": "iana"
++ },
++ "application/msword": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["doc","dot"]
++ },
++ "application/mxf": {
++ "source": "iana",
++ "extensions": ["mxf"]
++ },
++ "application/nasdata": {
++ "source": "iana"
++ },
++ "application/news-checkgroups": {
++ "source": "iana"
++ },
++ "application/news-groupinfo": {
++ "source": "iana"
++ },
++ "application/news-transmission": {
++ "source": "iana"
++ },
++ "application/nlsml+xml": {
++ "source": "iana"
++ },
++ "application/nss": {
++ "source": "iana"
++ },
++ "application/ocsp-request": {
++ "source": "iana"
++ },
++ "application/ocsp-response": {
++ "source": "apache"
++ },
++ "application/octet-stream": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","buffer"]
++ },
++ "application/oda": {
++ "source": "iana",
++ "extensions": ["oda"]
++ },
++ "application/odx": {
++ "source": "iana"
++ },
++ "application/oebps-package+xml": {
++ "source": "iana",
++ "extensions": ["opf"]
++ },
++ "application/ogg": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["ogx"]
++ },
++ "application/omdoc+xml": {
++ "source": "apache",
++ "extensions": ["omdoc"]
++ },
++ "application/onenote": {
++ "source": "apache",
++ "extensions": ["onetoc","onetoc2","onetmp","onepkg"]
++ },
++ "application/oscp-response": {
++ "source": "iana"
++ },
++ "application/oxps": {
++ "source": "iana",
++ "extensions": ["oxps"]
++ },
++ "application/p2p-overlay+xml": {
++ "source": "iana"
++ },
++ "application/parityfec": {
++ "source": "iana"
++ },
++ "application/patch-ops-error+xml": {
++ "source": "iana",
++ "extensions": ["xer"]
++ },
++ "application/pdf": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["pdf"]
++ },
++ "application/pdx": {
++ "source": "iana"
++ },
++ "application/pgp-encrypted": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["pgp"]
++ },
++ "application/pgp-keys": {
++ "source": "iana"
++ },
++ "application/pgp-signature": {
++ "source": "iana",
++ "extensions": ["asc","sig"]
++ },
++ "application/pics-rules": {
++ "source": "apache",
++ "extensions": ["prf"]
++ },
++ "application/pidf+xml": {
++ "source": "iana"
++ },
++ "application/pidf-diff+xml": {
++ "source": "iana"
++ },
++ "application/pkcs10": {
++ "source": "iana",
++ "extensions": ["p10"]
++ },
++ "application/pkcs7-mime": {
++ "source": "iana",
++ "extensions": ["p7m","p7c"]
++ },
++ "application/pkcs7-signature": {
++ "source": "iana",
++ "extensions": ["p7s"]
++ },
++ "application/pkcs8": {
++ "source": "iana",
++ "extensions": ["p8"]
++ },
++ "application/pkix-attr-cert": {
++ "source": "iana",
++ "extensions": ["ac"]
++ },
++ "application/pkix-cert": {
++ "source": "iana",
++ "extensions": ["cer"]
++ },
++ "application/pkix-crl": {
++ "source": "iana",
++ "extensions": ["crl"]
++ },
++ "application/pkix-pkipath": {
++ "source": "iana",
++ "extensions": ["pkipath"]
++ },
++ "application/pkixcmp": {
++ "source": "iana",
++ "extensions": ["pki"]
++ },
++ "application/pls+xml": {
++ "source": "iana",
++ "extensions": ["pls"]
++ },
++ "application/poc-settings+xml": {
++ "source": "iana"
++ },
++ "application/postscript": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["ai","eps","ps"]
++ },
++ "application/provenance+xml": {
++ "source": "iana"
++ },
++ "application/prs.alvestrand.titrax-sheet": {
++ "source": "iana"
++ },
++ "application/prs.cww": {
++ "source": "iana",
++ "extensions": ["cww"]
++ },
++ "application/prs.hpub+zip": {
++ "source": "iana"
++ },
++ "application/prs.nprend": {
++ "source": "iana"
++ },
++ "application/prs.plucker": {
++ "source": "iana"
++ },
++ "application/prs.rdf-xml-crypt": {
++ "source": "iana"
++ },
++ "application/prs.xsf+xml": {
++ "source": "iana"
++ },
++ "application/pskc+xml": {
++ "source": "iana",
++ "extensions": ["pskcxml"]
++ },
++ "application/qsig": {
++ "source": "iana"
++ },
++ "application/raptorfec": {
++ "source": "iana"
++ },
++ "application/rdf+xml": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["rdf"]
++ },
++ "application/reginfo+xml": {
++ "source": "iana",
++ "extensions": ["rif"]
++ },
++ "application/relax-ng-compact-syntax": {
++ "source": "iana",
++ "extensions": ["rnc"]
++ },
++ "application/remote-printing": {
++ "source": "iana"
++ },
++ "application/reputon+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/resource-lists+xml": {
++ "source": "iana",
++ "extensions": ["rl"]
++ },
++ "application/resource-lists-diff+xml": {
++ "source": "iana",
++ "extensions": ["rld"]
++ },
++ "application/riscos": {
++ "source": "iana"
++ },
++ "application/rlmi+xml": {
++ "source": "iana"
++ },
++ "application/rls-services+xml": {
++ "source": "iana",
++ "extensions": ["rs"]
++ },
++ "application/rpki-ghostbusters": {
++ "source": "iana",
++ "extensions": ["gbr"]
++ },
++ "application/rpki-manifest": {
++ "source": "iana",
++ "extensions": ["mft"]
++ },
++ "application/rpki-roa": {
++ "source": "iana",
++ "extensions": ["roa"]
++ },
++ "application/rpki-updown": {
++ "source": "iana"
++ },
++ "application/rsd+xml": {
++ "source": "apache",
++ "extensions": ["rsd"]
++ },
++ "application/rss+xml": {
++ "source": "apache",
++ "compressible": true,
++ "extensions": ["rss"]
++ },
++ "application/rtf": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["rtf"]
++ },
++ "application/rtploopback": {
++ "source": "iana"
++ },
++ "application/rtx": {
++ "source": "iana"
++ },
++ "application/samlassertion+xml": {
++ "source": "iana"
++ },
++ "application/samlmetadata+xml": {
++ "source": "iana"
++ },
++ "application/sbml+xml": {
++ "source": "iana",
++ "extensions": ["sbml"]
++ },
++ "application/scaip+xml": {
++ "source": "iana"
++ },
++ "application/scvp-cv-request": {
++ "source": "iana",
++ "extensions": ["scq"]
++ },
++ "application/scvp-cv-response": {
++ "source": "iana",
++ "extensions": ["scs"]
++ },
++ "application/scvp-vp-request": {
++ "source": "iana",
++ "extensions": ["spq"]
++ },
++ "application/scvp-vp-response": {
++ "source": "iana",
++ "extensions": ["spp"]
++ },
++ "application/sdp": {
++ "source": "iana",
++ "extensions": ["sdp"]
++ },
++ "application/sep+xml": {
++ "source": "iana"
++ },
++ "application/sep-exi": {
++ "source": "iana"
++ },
++ "application/session-info": {
++ "source": "iana"
++ },
++ "application/set-payment": {
++ "source": "iana"
++ },
++ "application/set-payment-initiation": {
++ "source": "iana",
++ "extensions": ["setpay"]
++ },
++ "application/set-registration": {
++ "source": "iana"
++ },
++ "application/set-registration-initiation": {
++ "source": "iana",
++ "extensions": ["setreg"]
++ },
++ "application/sgml": {
++ "source": "iana"
++ },
++ "application/sgml-open-catalog": {
++ "source": "iana"
++ },
++ "application/shf+xml": {
++ "source": "iana",
++ "extensions": ["shf"]
++ },
++ "application/sieve": {
++ "source": "iana"
++ },
++ "application/simple-filter+xml": {
++ "source": "iana"
++ },
++ "application/simple-message-summary": {
++ "source": "iana"
++ },
++ "application/simplesymbolcontainer": {
++ "source": "iana"
++ },
++ "application/slate": {
++ "source": "iana"
++ },
++ "application/smil": {
++ "source": "iana"
++ },
++ "application/smil+xml": {
++ "source": "iana",
++ "extensions": ["smi","smil"]
++ },
++ "application/smpte336m": {
++ "source": "iana"
++ },
++ "application/soap+fastinfoset": {
++ "source": "iana"
++ },
++ "application/soap+xml": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/sparql-query": {
++ "source": "iana",
++ "extensions": ["rq"]
++ },
++ "application/sparql-results+xml": {
++ "source": "iana",
++ "extensions": ["srx"]
++ },
++ "application/spirits-event+xml": {
++ "source": "iana"
++ },
++ "application/sql": {
++ "source": "iana"
++ },
++ "application/srgs": {
++ "source": "iana",
++ "extensions": ["gram"]
++ },
++ "application/srgs+xml": {
++ "source": "iana",
++ "extensions": ["grxml"]
++ },
++ "application/sru+xml": {
++ "source": "iana",
++ "extensions": ["sru"]
++ },
++ "application/ssdl+xml": {
++ "source": "apache",
++ "extensions": ["ssdl"]
++ },
++ "application/ssml+xml": {
++ "source": "iana",
++ "extensions": ["ssml"]
++ },
++ "application/tamp-apex-update": {
++ "source": "iana"
++ },
++ "application/tamp-apex-update-confirm": {
++ "source": "iana"
++ },
++ "application/tamp-community-update": {
++ "source": "iana"
++ },
++ "application/tamp-community-update-confirm": {
++ "source": "iana"
++ },
++ "application/tamp-error": {
++ "source": "iana"
++ },
++ "application/tamp-sequence-adjust": {
++ "source": "iana"
++ },
++ "application/tamp-sequence-adjust-confirm": {
++ "source": "iana"
++ },
++ "application/tamp-status-query": {
++ "source": "iana"
++ },
++ "application/tamp-status-response": {
++ "source": "iana"
++ },
++ "application/tamp-update": {
++ "source": "iana"
++ },
++ "application/tamp-update-confirm": {
++ "source": "iana"
++ },
++ "application/tar": {
++ "compressible": true
++ },
++ "application/tei+xml": {
++ "source": "iana",
++ "extensions": ["tei","teicorpus"]
++ },
++ "application/thraud+xml": {
++ "source": "iana",
++ "extensions": ["tfi"]
++ },
++ "application/timestamp-query": {
++ "source": "iana"
++ },
++ "application/timestamp-reply": {
++ "source": "iana"
++ },
++ "application/timestamped-data": {
++ "source": "iana",
++ "extensions": ["tsd"]
++ },
++ "application/ttml+xml": {
++ "source": "iana"
++ },
++ "application/tve-trigger": {
++ "source": "iana"
++ },
++ "application/ulpfec": {
++ "source": "iana"
++ },
++ "application/urc-grpsheet+xml": {
++ "source": "iana"
++ },
++ "application/urc-ressheet+xml": {
++ "source": "iana"
++ },
++ "application/urc-targetdesc+xml": {
++ "source": "iana"
++ },
++ "application/urc-uisocketdesc+xml": {
++ "source": "iana"
++ },
++ "application/vcard+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vcard+xml": {
++ "source": "iana"
++ },
++ "application/vemmi": {
++ "source": "iana"
++ },
++ "application/vividence.scriptfile": {
++ "source": "apache"
++ },
++ "application/vnd-acucobol": {
++ "source": "iana"
++ },
++ "application/vnd-curl": {
++ "source": "iana"
++ },
++ "application/vnd-dart": {
++ "source": "iana"
++ },
++ "application/vnd-dxr": {
++ "source": "iana"
++ },
++ "application/vnd-fdf": {
++ "source": "iana"
++ },
++ "application/vnd-mif": {
++ "source": "iana"
++ },
++ "application/vnd-sema": {
++ "source": "iana"
++ },
++ "application/vnd-wap-wmlc": {
++ "source": "iana"
++ },
++ "application/vnd.3gpp.bsf+xml": {
++ "source": "iana"
++ },
++ "application/vnd.3gpp.pic-bw-large": {
++ "source": "iana",
++ "extensions": ["plb"]
++ },
++ "application/vnd.3gpp.pic-bw-small": {
++ "source": "iana",
++ "extensions": ["psb"]
++ },
++ "application/vnd.3gpp.pic-bw-var": {
++ "source": "iana",
++ "extensions": ["pvb"]
++ },
++ "application/vnd.3gpp.sms": {
++ "source": "iana"
++ },
++ "application/vnd.3gpp2.bcmcsinfo+xml": {
++ "source": "iana"
++ },
++ "application/vnd.3gpp2.sms": {
++ "source": "iana"
++ },
++ "application/vnd.3gpp2.tcap": {
++ "source": "iana",
++ "extensions": ["tcap"]
++ },
++ "application/vnd.3m.post-it-notes": {
++ "source": "iana",
++ "extensions": ["pwn"]
++ },
++ "application/vnd.accpac.simply.aso": {
++ "source": "iana",
++ "extensions": ["aso"]
++ },
++ "application/vnd.accpac.simply.imp": {
++ "source": "iana",
++ "extensions": ["imp"]
++ },
++ "application/vnd.acucobol": {
++ "source": "apache",
++ "extensions": ["acu"]
++ },
++ "application/vnd.acucorp": {
++ "source": "iana",
++ "extensions": ["atc","acutc"]
++ },
++ "application/vnd.adobe.air-application-installer-package+zip": {
++ "source": "apache",
++ "extensions": ["air"]
++ },
++ "application/vnd.adobe.flash-movie": {
++ "source": "iana"
++ },
++ "application/vnd.adobe.formscentral.fcdt": {
++ "source": "iana",
++ "extensions": ["fcdt"]
++ },
++ "application/vnd.adobe.fxp": {
++ "source": "iana",
++ "extensions": ["fxp","fxpl"]
++ },
++ "application/vnd.adobe.partial-upload": {
++ "source": "iana"
++ },
++ "application/vnd.adobe.xdp+xml": {
++ "source": "iana",
++ "extensions": ["xdp"]
++ },
++ "application/vnd.adobe.xfdf": {
++ "source": "iana",
++ "extensions": ["xfdf"]
++ },
++ "application/vnd.aether.imp": {
++ "source": "iana"
++ },
++ "application/vnd.ah-barcode": {
++ "source": "iana"
++ },
++ "application/vnd.ahead.space": {
++ "source": "iana",
++ "extensions": ["ahead"]
++ },
++ "application/vnd.airzip.filesecure.azf": {
++ "source": "iana",
++ "extensions": ["azf"]
++ },
++ "application/vnd.airzip.filesecure.azs": {
++ "source": "iana",
++ "extensions": ["azs"]
++ },
++ "application/vnd.amazon.ebook": {
++ "source": "apache",
++ "extensions": ["azw"]
++ },
++ "application/vnd.americandynamics.acc": {
++ "source": "iana",
++ "extensions": ["acc"]
++ },
++ "application/vnd.amiga.ami": {
++ "source": "iana",
++ "extensions": ["ami"]
++ },
++ "application/vnd.amundsen.maze+xml": {
++ "source": "iana"
++ },
++ "application/vnd.android.package-archive": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["apk"]
++ },
++ "application/vnd.anser-web-certificate-issue-initiation": {
++ "source": "iana",
++ "extensions": ["cii"]
++ },
++ "application/vnd.anser-web-funds-transfer-initiation": {
++ "source": "apache",
++ "extensions": ["fti"]
++ },
++ "application/vnd.antix.game-component": {
++ "source": "iana",
++ "extensions": ["atx"]
++ },
++ "application/vnd.apache.thrift.binary": {
++ "source": "iana"
++ },
++ "application/vnd.api+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.apple.installer+xml": {
++ "source": "iana",
++ "extensions": ["mpkg"]
++ },
++ "application/vnd.apple.mpegurl": {
++ "source": "iana",
++ "extensions": ["m3u8"]
++ },
++ "application/vnd.arastra.swi": {
++ "source": "iana"
++ },
++ "application/vnd.aristanetworks.swi": {
++ "source": "iana",
++ "extensions": ["swi"]
++ },
++ "application/vnd.artsquare": {
++ "source": "iana"
++ },
++ "application/vnd.astraea-software.iota": {
++ "source": "iana",
++ "extensions": ["iota"]
++ },
++ "application/vnd.audiograph": {
++ "source": "iana",
++ "extensions": ["aep"]
++ },
++ "application/vnd.autopackage": {
++ "source": "iana"
++ },
++ "application/vnd.avistar+xml": {
++ "source": "iana"
++ },
++ "application/vnd.balsamiq.bmml+xml": {
++ "source": "iana"
++ },
++ "application/vnd.bekitzur-stech+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.blueice.multipass": {
++ "source": "iana",
++ "extensions": ["mpm"]
++ },
++ "application/vnd.bluetooth.ep.oob": {
++ "source": "iana"
++ },
++ "application/vnd.bluetooth.le.oob": {
++ "source": "iana"
++ },
++ "application/vnd.bmi": {
++ "source": "iana",
++ "extensions": ["bmi"]
++ },
++ "application/vnd.businessobjects": {
++ "source": "iana",
++ "extensions": ["rep"]
++ },
++ "application/vnd.cab-jscript": {
++ "source": "iana"
++ },
++ "application/vnd.canon-cpdl": {
++ "source": "iana"
++ },
++ "application/vnd.canon-lips": {
++ "source": "iana"
++ },
++ "application/vnd.cendio.thinlinc.clientconf": {
++ "source": "iana"
++ },
++ "application/vnd.century-systems.tcp_stream": {
++ "source": "iana"
++ },
++ "application/vnd.chemdraw+xml": {
++ "source": "iana",
++ "extensions": ["cdxml"]
++ },
++ "application/vnd.chipnuts.karaoke-mmd": {
++ "source": "iana",
++ "extensions": ["mmd"]
++ },
++ "application/vnd.cinderella": {
++ "source": "iana",
++ "extensions": ["cdy"]
++ },
++ "application/vnd.cirpack.isdn-ext": {
++ "source": "iana"
++ },
++ "application/vnd.claymore": {
++ "source": "iana",
++ "extensions": ["cla"]
++ },
++ "application/vnd.cloanto.rp9": {
++ "source": "iana",
++ "extensions": ["rp9"]
++ },
++ "application/vnd.clonk.c4group": {
++ "source": "iana",
++ "extensions": ["c4g","c4d","c4f","c4p","c4u"]
++ },
++ "application/vnd.cluetrust.cartomobile-config": {
++ "source": "iana",
++ "extensions": ["c11amc"]
++ },
++ "application/vnd.cluetrust.cartomobile-config-pkg": {
++ "source": "iana",
++ "extensions": ["c11amz"]
++ },
++ "application/vnd.collection+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.collection.doc+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.collection.next+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.commerce-battelle": {
++ "source": "iana"
++ },
++ "application/vnd.commonspace": {
++ "source": "iana",
++ "extensions": ["csp"]
++ },
++ "application/vnd.contact.cmsg": {
++ "source": "iana",
++ "extensions": ["cdbcmsg"]
++ },
++ "application/vnd.cosmocaller": {
++ "source": "iana",
++ "extensions": ["cmc"]
++ },
++ "application/vnd.crick.clicker": {
++ "source": "iana",
++ "extensions": ["clkx"]
++ },
++ "application/vnd.crick.clicker.keyboard": {
++ "source": "iana",
++ "extensions": ["clkk"]
++ },
++ "application/vnd.crick.clicker.palette": {
++ "source": "iana",
++ "extensions": ["clkp"]
++ },
++ "application/vnd.crick.clicker.template": {
++ "source": "iana",
++ "extensions": ["clkt"]
++ },
++ "application/vnd.crick.clicker.wordbank": {
++ "source": "iana",
++ "extensions": ["clkw"]
++ },
++ "application/vnd.criticaltools.wbs+xml": {
++ "source": "iana",
++ "extensions": ["wbs"]
++ },
++ "application/vnd.ctc-posml": {
++ "source": "iana",
++ "extensions": ["pml"]
++ },
++ "application/vnd.ctct.ws+xml": {
++ "source": "iana"
++ },
++ "application/vnd.cups-pdf": {
++ "source": "iana"
++ },
++ "application/vnd.cups-postscript": {
++ "source": "iana"
++ },
++ "application/vnd.cups-ppd": {
++ "source": "iana",
++ "extensions": ["ppd"]
++ },
++ "application/vnd.cups-raster": {
++ "source": "iana"
++ },
++ "application/vnd.cups-raw": {
++ "source": "iana"
++ },
++ "application/vnd.curl": {
++ "source": "apache"
++ },
++ "application/vnd.curl.car": {
++ "source": "apache",
++ "extensions": ["car"]
++ },
++ "application/vnd.curl.pcurl": {
++ "source": "apache",
++ "extensions": ["pcurl"]
++ },
++ "application/vnd.cyan.dean.root+xml": {
++ "source": "iana"
++ },
++ "application/vnd.cybank": {
++ "source": "iana"
++ },
++ "application/vnd.dart": {
++ "source": "apache",
++ "compressible": true,
++ "extensions": ["dart"]
++ },
++ "application/vnd.data-vision.rdz": {
++ "source": "iana",
++ "extensions": ["rdz"]
++ },
++ "application/vnd.debian.binary-package": {
++ "source": "iana"
++ },
++ "application/vnd.dece-zip": {
++ "source": "iana"
++ },
++ "application/vnd.dece.data": {
++ "source": "iana",
++ "extensions": ["uvf","uvvf","uvd","uvvd"]
++ },
++ "application/vnd.dece.ttml+xml": {
++ "source": "iana",
++ "extensions": ["uvt","uvvt"]
++ },
++ "application/vnd.dece.unspecified": {
++ "source": "iana",
++ "extensions": ["uvx","uvvx"]
++ },
++ "application/vnd.dece.zip": {
++ "source": "apache",
++ "extensions": ["uvz","uvvz"]
++ },
++ "application/vnd.denovo.fcselayout-link": {
++ "source": "iana",
++ "extensions": ["fe_launch"]
++ },
++ "application/vnd.desmume-movie": {
++ "source": "iana"
++ },
++ "application/vnd.dir-bi.plate-dl-nosuffix": {
++ "source": "iana"
++ },
++ "application/vnd.dm.delegation+xml": {
++ "source": "iana"
++ },
++ "application/vnd.dna": {
++ "source": "iana",
++ "extensions": ["dna"]
++ },
++ "application/vnd.document+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.dolby.mlp": {
++ "source": "apache",
++ "extensions": ["mlp"]
++ },
++ "application/vnd.dolby.mobile.1": {
++ "source": "iana"
++ },
++ "application/vnd.dolby.mobile.2": {
++ "source": "iana"
++ },
++ "application/vnd.doremir.scorecloud-binary-document": {
++ "source": "iana"
++ },
++ "application/vnd.dpgraph": {
++ "source": "iana",
++ "extensions": ["dpg"]
++ },
++ "application/vnd.dreamfactory": {
++ "source": "iana",
++ "extensions": ["dfac"]
++ },
++ "application/vnd.ds-keypoint": {
++ "source": "apache",
++ "extensions": ["kpxx"]
++ },
++ "application/vnd.dtg.local": {
++ "source": "iana"
++ },
++ "application/vnd.dtg.local.flash": {
++ "source": "iana"
++ },
++ "application/vnd.dtg.local.html": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.ait": {
++ "source": "iana",
++ "extensions": ["ait"]
++ },
++ "application/vnd.dvb.dvbj": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.esgcontainer": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.ipdcdftnotifaccess": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.ipdcesgaccess": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.ipdcesgaccess2": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.ipdcesgpdd": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.ipdcroaming": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.iptv.alfec-base": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.iptv.alfec-enhancement": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.notif-aggregate-root+xml": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.notif-container+xml": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.notif-generic+xml": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.notif-ia-msglist+xml": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.notif-ia-registration-request+xml": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.notif-ia-registration-response+xml": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.notif-init+xml": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.pfr": {
++ "source": "iana"
++ },
++ "application/vnd.dvb.service": {
++ "source": "apache",
++ "extensions": ["svc"]
++ },
++ "application/vnd.dvb_service": {
++ "source": "iana"
++ },
++ "application/vnd.dxr": {
++ "source": "apache"
++ },
++ "application/vnd.dynageo": {
++ "source": "iana",
++ "extensions": ["geo"]
++ },
++ "application/vnd.dzr": {
++ "source": "iana"
++ },
++ "application/vnd.easykaraoke.cdgdownload": {
++ "source": "iana"
++ },
++ "application/vnd.ecdis-update": {
++ "source": "iana"
++ },
++ "application/vnd.ecowin.chart": {
++ "source": "iana",
++ "extensions": ["mag"]
++ },
++ "application/vnd.ecowin.filerequest": {
++ "source": "iana"
++ },
++ "application/vnd.ecowin.fileupdate": {
++ "source": "iana"
++ },
++ "application/vnd.ecowin.series": {
++ "source": "iana"
++ },
++ "application/vnd.ecowin.seriesrequest": {
++ "source": "iana"
++ },
++ "application/vnd.ecowin.seriesupdate": {
++ "source": "iana"
++ },
++ "application/vnd.emclient.accessrequest+xml": {
++ "source": "iana"
++ },
++ "application/vnd.enliven": {
++ "source": "iana",
++ "extensions": ["nml"]
++ },
++ "application/vnd.eprints.data+xml": {
++ "source": "iana"
++ },
++ "application/vnd.epson.esf": {
++ "source": "iana",
++ "extensions": ["esf"]
++ },
++ "application/vnd.epson.msf": {
++ "source": "iana",
++ "extensions": ["msf"]
++ },
++ "application/vnd.epson.quickanime": {
++ "source": "iana",
++ "extensions": ["qam"]
++ },
++ "application/vnd.epson.salt": {
++ "source": "iana",
++ "extensions": ["slt"]
++ },
++ "application/vnd.epson.ssf": {
++ "source": "iana",
++ "extensions": ["ssf"]
++ },
++ "application/vnd.ericsson.quickcall": {
++ "source": "iana"
++ },
++ "application/vnd.eszigno3+xml": {
++ "source": "iana",
++ "extensions": ["es3","et3"]
++ },
++ "application/vnd.etsi.aoc+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.asic-e+zip": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.asic-s+zip": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.cug+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.iptvcommand+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.iptvdiscovery+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.iptvprofile+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.iptvsad-bc+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.iptvsad-cod+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.iptvsad-npvr+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.iptvservice+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.iptvsync+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.iptvueprofile+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.mcid+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.mheg5": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.overload-control-policy-dataset+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.pstn+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.sci+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.simservs+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.timestamp-token": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.tsl+xml": {
++ "source": "iana"
++ },
++ "application/vnd.etsi.tsl.der": {
++ "source": "iana"
++ },
++ "application/vnd.eudora.data": {
++ "source": "iana"
++ },
++ "application/vnd.ezpix-album": {
++ "source": "iana",
++ "extensions": ["ez2"]
++ },
++ "application/vnd.ezpix-package": {
++ "source": "iana",
++ "extensions": ["ez3"]
++ },
++ "application/vnd.f-secure.mobile": {
++ "source": "iana"
++ },
++ "application/vnd.fdf": {
++ "source": "apache",
++ "extensions": ["fdf"]
++ },
++ "application/vnd.fdsn.mseed": {
++ "source": "iana",
++ "extensions": ["mseed"]
++ },
++ "application/vnd.fdsn.seed": {
++ "source": "iana",
++ "extensions": ["seed","dataless"]
++ },
++ "application/vnd.ffsns": {
++ "source": "iana"
++ },
++ "application/vnd.fints": {
++ "source": "iana"
++ },
++ "application/vnd.flographit": {
++ "source": "iana",
++ "extensions": ["gph"]
++ },
++ "application/vnd.fluxtime.clip": {
++ "source": "iana",
++ "extensions": ["ftc"]
++ },
++ "application/vnd.font-fontforge-sfd": {
++ "source": "iana"
++ },
++ "application/vnd.framemaker": {
++ "source": "iana",
++ "extensions": ["fm","frame","maker","book"]
++ },
++ "application/vnd.frogans.fnc": {
++ "source": "iana",
++ "extensions": ["fnc"]
++ },
++ "application/vnd.frogans.ltf": {
++ "source": "iana",
++ "extensions": ["ltf"]
++ },
++ "application/vnd.fsc.weblaunch": {
++ "source": "iana",
++ "extensions": ["fsc"]
++ },
++ "application/vnd.fujitsu.oasys": {
++ "source": "iana",
++ "extensions": ["oas"]
++ },
++ "application/vnd.fujitsu.oasys2": {
++ "source": "iana",
++ "extensions": ["oa2"]
++ },
++ "application/vnd.fujitsu.oasys3": {
++ "source": "iana",
++ "extensions": ["oa3"]
++ },
++ "application/vnd.fujitsu.oasysgp": {
++ "source": "iana",
++ "extensions": ["fg5"]
++ },
++ "application/vnd.fujitsu.oasysprs": {
++ "source": "iana",
++ "extensions": ["bh2"]
++ },
++ "application/vnd.fujixerox.art-ex": {
++ "source": "iana"
++ },
++ "application/vnd.fujixerox.art4": {
++ "source": "iana"
++ },
++ "application/vnd.fujixerox.ddd": {
++ "source": "iana",
++ "extensions": ["ddd"]
++ },
++ "application/vnd.fujixerox.docuworks": {
++ "source": "iana",
++ "extensions": ["xdw"]
++ },
++ "application/vnd.fujixerox.docuworks.binder": {
++ "source": "iana",
++ "extensions": ["xbd"]
++ },
++ "application/vnd.fujixerox.docuworks.container": {
++ "source": "iana"
++ },
++ "application/vnd.fujixerox.hbpl": {
++ "source": "iana"
++ },
++ "application/vnd.fut-misnet": {
++ "source": "iana"
++ },
++ "application/vnd.fuzzysheet": {
++ "source": "iana",
++ "extensions": ["fzs"]
++ },
++ "application/vnd.genomatix.tuxedo": {
++ "source": "iana",
++ "extensions": ["txd"]
++ },
++ "application/vnd.geo+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.geocube+xml": {
++ "source": "iana"
++ },
++ "application/vnd.geogebra.file": {
++ "source": "iana",
++ "extensions": ["ggb"]
++ },
++ "application/vnd.geogebra.tool": {
++ "source": "iana",
++ "extensions": ["ggt"]
++ },
++ "application/vnd.geometry-explorer": {
++ "source": "iana",
++ "extensions": ["gex","gre"]
++ },
++ "application/vnd.geonext": {
++ "source": "iana",
++ "extensions": ["gxt"]
++ },
++ "application/vnd.geoplan": {
++ "source": "iana",
++ "extensions": ["g2w"]
++ },
++ "application/vnd.geospace": {
++ "source": "iana",
++ "extensions": ["g3w"]
++ },
++ "application/vnd.globalplatform.card-content-mgt": {
++ "source": "iana"
++ },
++ "application/vnd.globalplatform.card-content-mgt-response": {
++ "source": "iana"
++ },
++ "application/vnd.gmx": {
++ "source": "iana",
++ "extensions": ["gmx"]
++ },
++ "application/vnd.google-earth.kml+xml": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["kml"]
++ },
++ "application/vnd.google-earth.kmz": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["kmz"]
++ },
++ "application/vnd.grafeq": {
++ "source": "iana",
++ "extensions": ["gqf","gqs"]
++ },
++ "application/vnd.gridmp": {
++ "source": "iana"
++ },
++ "application/vnd.groove-account": {
++ "source": "iana",
++ "extensions": ["gac"]
++ },
++ "application/vnd.groove-help": {
++ "source": "iana",
++ "extensions": ["ghf"]
++ },
++ "application/vnd.groove-identity-message": {
++ "source": "iana",
++ "extensions": ["gim"]
++ },
++ "application/vnd.groove-injector": {
++ "source": "iana",
++ "extensions": ["grv"]
++ },
++ "application/vnd.groove-tool-message": {
++ "source": "iana",
++ "extensions": ["gtm"]
++ },
++ "application/vnd.groove-tool-template": {
++ "source": "iana",
++ "extensions": ["tpl"]
++ },
++ "application/vnd.groove-vcard": {
++ "source": "iana",
++ "extensions": ["vcg"]
++ },
++ "application/vnd.hal+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.hal+xml": {
++ "source": "iana",
++ "extensions": ["hal"]
++ },
++ "application/vnd.handheld-entertainment+xml": {
++ "source": "iana",
++ "extensions": ["zmm"]
++ },
++ "application/vnd.hbci": {
++ "source": "iana",
++ "extensions": ["hbci"]
++ },
++ "application/vnd.hcl-bireports": {
++ "source": "iana"
++ },
++ "application/vnd.heroku+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.hhe.lesson-player": {
++ "source": "iana",
++ "extensions": ["les"]
++ },
++ "application/vnd.hp-hpgl": {
++ "source": "iana",
++ "extensions": ["hpgl"]
++ },
++ "application/vnd.hp-hpid": {
++ "source": "iana",
++ "extensions": ["hpid"]
++ },
++ "application/vnd.hp-hps": {
++ "source": "iana",
++ "extensions": ["hps"]
++ },
++ "application/vnd.hp-jlyt": {
++ "source": "iana",
++ "extensions": ["jlt"]
++ },
++ "application/vnd.hp-pcl": {
++ "source": "iana",
++ "extensions": ["pcl"]
++ },
++ "application/vnd.hp-pclxl": {
++ "source": "iana",
++ "extensions": ["pclxl"]
++ },
++ "application/vnd.httphone": {
++ "source": "iana"
++ },
++ "application/vnd.hydrostatix.sof-data": {
++ "source": "iana"
++ },
++ "application/vnd.hzn-3d-crossword": {
++ "source": "iana"
++ },
++ "application/vnd.ibm.afplinedata": {
++ "source": "iana"
++ },
++ "application/vnd.ibm.electronic-media": {
++ "source": "iana"
++ },
++ "application/vnd.ibm.minipay": {
++ "source": "iana",
++ "extensions": ["mpy"]
++ },
++ "application/vnd.ibm.modcap": {
++ "source": "iana",
++ "extensions": ["afp","listafp","list3820"]
++ },
++ "application/vnd.ibm.rights-management": {
++ "source": "iana",
++ "extensions": ["irm"]
++ },
++ "application/vnd.ibm.secure-container": {
++ "source": "iana",
++ "extensions": ["sc"]
++ },
++ "application/vnd.iccprofile": {
++ "source": "iana",
++ "extensions": ["icc","icm"]
++ },
++ "application/vnd.ieee.1905": {
++ "source": "iana"
++ },
++ "application/vnd.igloader": {
++ "source": "iana",
++ "extensions": ["igl"]
++ },
++ "application/vnd.immervision-ivp": {
++ "source": "iana",
++ "extensions": ["ivp"]
++ },
++ "application/vnd.immervision-ivu": {
++ "source": "iana",
++ "extensions": ["ivu"]
++ },
++ "application/vnd.ims.lis.v2.result+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.ims.lti.v2.toolconsumerprofile+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.ims.lti.v2.toolproxy+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.ims.lti.v2.toolproxy.id+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.ims.lti.v2.toolsettings+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.ims.lti.v2.toolsettings.simple+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.informedcontrol.rms+xml": {
++ "source": "iana"
++ },
++ "application/vnd.informix-visionary": {
++ "source": "iana"
++ },
++ "application/vnd.infotech.project": {
++ "source": "iana"
++ },
++ "application/vnd.infotech.project+xml": {
++ "source": "iana"
++ },
++ "application/vnd.innopath.wamp.notification": {
++ "source": "iana"
++ },
++ "application/vnd.insors.igm": {
++ "source": "iana",
++ "extensions": ["igm"]
++ },
++ "application/vnd.intercon.formnet": {
++ "source": "iana",
++ "extensions": ["xpw","xpx"]
++ },
++ "application/vnd.intergeo": {
++ "source": "iana",
++ "extensions": ["i2g"]
++ },
++ "application/vnd.intertrust.digibox": {
++ "source": "iana"
++ },
++ "application/vnd.intertrust.nncp": {
++ "source": "iana"
++ },
++ "application/vnd.intu.qbo": {
++ "source": "iana",
++ "extensions": ["qbo"]
++ },
++ "application/vnd.intu.qfx": {
++ "source": "iana",
++ "extensions": ["qfx"]
++ },
++ "application/vnd.iptc.g2.catalogitem+xml": {
++ "source": "iana"
++ },
++ "application/vnd.iptc.g2.conceptitem+xml": {
++ "source": "iana"
++ },
++ "application/vnd.iptc.g2.knowledgeitem+xml": {
++ "source": "iana"
++ },
++ "application/vnd.iptc.g2.newsitem+xml": {
++ "source": "iana"
++ },
++ "application/vnd.iptc.g2.newsmessage+xml": {
++ "source": "iana"
++ },
++ "application/vnd.iptc.g2.packageitem+xml": {
++ "source": "iana"
++ },
++ "application/vnd.iptc.g2.planningitem+xml": {
++ "source": "iana"
++ },
++ "application/vnd.ipunplugged.rcprofile": {
++ "source": "iana",
++ "extensions": ["rcprofile"]
++ },
++ "application/vnd.irepository.package+xml": {
++ "source": "iana",
++ "extensions": ["irp"]
++ },
++ "application/vnd.is-xpr": {
++ "source": "iana",
++ "extensions": ["xpr"]
++ },
++ "application/vnd.isac.fcs": {
++ "source": "iana",
++ "extensions": ["fcs"]
++ },
++ "application/vnd.jam": {
++ "source": "iana",
++ "extensions": ["jam"]
++ },
++ "application/vnd.japannet-directory-service": {
++ "source": "iana"
++ },
++ "application/vnd.japannet-jpnstore-wakeup": {
++ "source": "iana"
++ },
++ "application/vnd.japannet-payment-wakeup": {
++ "source": "iana"
++ },
++ "application/vnd.japannet-registration": {
++ "source": "iana"
++ },
++ "application/vnd.japannet-registration-wakeup": {
++ "source": "iana"
++ },
++ "application/vnd.japannet-setstore-wakeup": {
++ "source": "iana"
++ },
++ "application/vnd.japannet-verification": {
++ "source": "iana"
++ },
++ "application/vnd.japannet-verification-wakeup": {
++ "source": "iana"
++ },
++ "application/vnd.jcp.javame.midlet-rms": {
++ "source": "iana",
++ "extensions": ["rms"]
++ },
++ "application/vnd.jisp": {
++ "source": "iana",
++ "extensions": ["jisp"]
++ },
++ "application/vnd.joost.joda-archive": {
++ "source": "iana",
++ "extensions": ["joda"]
++ },
++ "application/vnd.jsk.isdn-ngn": {
++ "source": "iana"
++ },
++ "application/vnd.kahootz": {
++ "source": "iana",
++ "extensions": ["ktz","ktr"]
++ },
++ "application/vnd.kde.karbon": {
++ "source": "iana",
++ "extensions": ["karbon"]
++ },
++ "application/vnd.kde.kchart": {
++ "source": "iana",
++ "extensions": ["chrt"]
++ },
++ "application/vnd.kde.kformula": {
++ "source": "iana",
++ "extensions": ["kfo"]
++ },
++ "application/vnd.kde.kivio": {
++ "source": "iana",
++ "extensions": ["flw"]
++ },
++ "application/vnd.kde.kontour": {
++ "source": "iana",
++ "extensions": ["kon"]
++ },
++ "application/vnd.kde.kpresenter": {
++ "source": "iana",
++ "extensions": ["kpr","kpt"]
++ },
++ "application/vnd.kde.kspread": {
++ "source": "iana",
++ "extensions": ["ksp"]
++ },
++ "application/vnd.kde.kword": {
++ "source": "iana",
++ "extensions": ["kwd","kwt"]
++ },
++ "application/vnd.kenameaapp": {
++ "source": "iana",
++ "extensions": ["htke"]
++ },
++ "application/vnd.kidspiration": {
++ "source": "iana",
++ "extensions": ["kia"]
++ },
++ "application/vnd.kinar": {
++ "source": "iana",
++ "extensions": ["kne","knp"]
++ },
++ "application/vnd.koan": {
++ "source": "iana",
++ "extensions": ["skp","skd","skt","skm"]
++ },
++ "application/vnd.kodak-descriptor": {
++ "source": "iana",
++ "extensions": ["sse"]
++ },
++ "application/vnd.las.las+xml": {
++ "source": "iana",
++ "extensions": ["lasxml"]
++ },
++ "application/vnd.liberty-request+xml": {
++ "source": "iana"
++ },
++ "application/vnd.llamagraphics.life-balance.desktop": {
++ "source": "iana",
++ "extensions": ["lbd"]
++ },
++ "application/vnd.llamagraphics.life-balance.exchange+xml": {
++ "source": "iana",
++ "extensions": ["lbe"]
++ },
++ "application/vnd.lotus-1-2-3": {
++ "source": "iana",
++ "extensions": ["123"]
++ },
++ "application/vnd.lotus-approach": {
++ "source": "iana",
++ "extensions": ["apr"]
++ },
++ "application/vnd.lotus-freelance": {
++ "source": "iana",
++ "extensions": ["pre"]
++ },
++ "application/vnd.lotus-notes": {
++ "source": "iana",
++ "extensions": ["nsf"]
++ },
++ "application/vnd.lotus-organizer": {
++ "source": "iana",
++ "extensions": ["org"]
++ },
++ "application/vnd.lotus-screencam": {
++ "source": "iana",
++ "extensions": ["scm"]
++ },
++ "application/vnd.lotus-wordpro": {
++ "source": "iana",
++ "extensions": ["lwp"]
++ },
++ "application/vnd.macports.portpkg": {
++ "source": "iana",
++ "extensions": ["portpkg"]
++ },
++ "application/vnd.marlin.drm.actiontoken+xml": {
++ "source": "iana"
++ },
++ "application/vnd.marlin.drm.conftoken+xml": {
++ "source": "iana"
++ },
++ "application/vnd.marlin.drm.license+xml": {
++ "source": "iana"
++ },
++ "application/vnd.marlin.drm.mdcf": {
++ "source": "iana"
++ },
++ "application/vnd.mason+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.maxmind.maxmind-db": {
++ "source": "iana"
++ },
++ "application/vnd.mcd": {
++ "source": "iana",
++ "extensions": ["mcd"]
++ },
++ "application/vnd.medcalcdata": {
++ "source": "iana",
++ "extensions": ["mc1"]
++ },
++ "application/vnd.mediastation.cdkey": {
++ "source": "iana",
++ "extensions": ["cdkey"]
++ },
++ "application/vnd.meridian-slingshot": {
++ "source": "iana"
++ },
++ "application/vnd.mfer": {
++ "source": "iana",
++ "extensions": ["mwf"]
++ },
++ "application/vnd.mfmp": {
++ "source": "iana",
++ "extensions": ["mfm"]
++ },
++ "application/vnd.micrografx-igx": {
++ "source": "iana"
++ },
++ "application/vnd.micrografx.flo": {
++ "source": "iana",
++ "extensions": ["flo"]
++ },
++ "application/vnd.micrografx.igx": {
++ "source": "apache",
++ "extensions": ["igx"]
++ },
++ "application/vnd.miele+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.mif": {
++ "source": "apache",
++ "extensions": ["mif"]
++ },
++ "application/vnd.minisoft-hp3000-save": {
++ "source": "iana"
++ },
++ "application/vnd.mitsubishi.misty-guard.trustweb": {
++ "source": "iana"
++ },
++ "application/vnd.mobius.daf": {
++ "source": "iana",
++ "extensions": ["daf"]
++ },
++ "application/vnd.mobius.dis": {
++ "source": "iana",
++ "extensions": ["dis"]
++ },
++ "application/vnd.mobius.mbk": {
++ "source": "iana",
++ "extensions": ["mbk"]
++ },
++ "application/vnd.mobius.mqy": {
++ "source": "iana",
++ "extensions": ["mqy"]
++ },
++ "application/vnd.mobius.msl": {
++ "source": "iana",
++ "extensions": ["msl"]
++ },
++ "application/vnd.mobius.plc": {
++ "source": "iana",
++ "extensions": ["plc"]
++ },
++ "application/vnd.mobius.txf": {
++ "source": "iana",
++ "extensions": ["txf"]
++ },
++ "application/vnd.mophun.application": {
++ "source": "iana",
++ "extensions": ["mpn"]
++ },
++ "application/vnd.mophun.certificate": {
++ "source": "iana",
++ "extensions": ["mpc"]
++ },
++ "application/vnd.motorola.flexsuite": {
++ "source": "iana"
++ },
++ "application/vnd.motorola.flexsuite.adsi": {
++ "source": "iana"
++ },
++ "application/vnd.motorola.flexsuite.fis": {
++ "source": "iana"
++ },
++ "application/vnd.motorola.flexsuite.gotap": {
++ "source": "iana"
++ },
++ "application/vnd.motorola.flexsuite.kmr": {
++ "source": "iana"
++ },
++ "application/vnd.motorola.flexsuite.ttc": {
++ "source": "iana"
++ },
++ "application/vnd.motorola.flexsuite.wem": {
++ "source": "iana"
++ },
++ "application/vnd.motorola.iprm": {
++ "source": "iana"
++ },
++ "application/vnd.mozilla.xul+xml": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["xul"]
++ },
++ "application/vnd.ms-3mfdocument": {
++ "source": "iana"
++ },
++ "application/vnd.ms-artgalry": {
++ "source": "iana",
++ "extensions": ["cil"]
++ },
++ "application/vnd.ms-asf": {
++ "source": "iana"
++ },
++ "application/vnd.ms-cab-compressed": {
++ "source": "iana",
++ "extensions": ["cab"]
++ },
++ "application/vnd.ms-color.iccprofile": {
++ "source": "apache"
++ },
++ "application/vnd.ms-excel": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["xls","xlm","xla","xlc","xlt","xlw"]
++ },
++ "application/vnd.ms-excel.addin.macroenabled.12": {
++ "source": "iana",
++ "extensions": ["xlam"]
++ },
++ "application/vnd.ms-excel.sheet.binary.macroenabled.12": {
++ "source": "iana",
++ "extensions": ["xlsb"]
++ },
++ "application/vnd.ms-excel.sheet.macroenabled.12": {
++ "source": "iana",
++ "extensions": ["xlsm"]
++ },
++ "application/vnd.ms-excel.template.macroenabled.12": {
++ "source": "iana",
++ "extensions": ["xltm"]
++ },
++ "application/vnd.ms-fontobject": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["eot"]
++ },
++ "application/vnd.ms-htmlhelp": {
++ "source": "iana",
++ "extensions": ["chm"]
++ },
++ "application/vnd.ms-ims": {
++ "source": "iana",
++ "extensions": ["ims"]
++ },
++ "application/vnd.ms-lrm": {
++ "source": "iana",
++ "extensions": ["lrm"]
++ },
++ "application/vnd.ms-office.activex+xml": {
++ "source": "iana"
++ },
++ "application/vnd.ms-officetheme": {
++ "source": "iana",
++ "extensions": ["thmx"]
++ },
++ "application/vnd.ms-opentype": {
++ "source": "apache",
++ "compressible": true
++ },
++ "application/vnd.ms-package.obfuscated-opentype": {
++ "source": "apache"
++ },
++ "application/vnd.ms-pki.seccat": {
++ "source": "apache",
++ "extensions": ["cat"]
++ },
++ "application/vnd.ms-pki.stl": {
++ "source": "apache",
++ "extensions": ["stl"]
++ },
++ "application/vnd.ms-playready.initiator+xml": {
++ "source": "iana"
++ },
++ "application/vnd.ms-powerpoint": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["ppt","pps","pot"]
++ },
++ "application/vnd.ms-powerpoint.addin.macroenabled.12": {
++ "source": "iana",
++ "extensions": ["ppam"]
++ },
++ "application/vnd.ms-powerpoint.presentation.macroenabled.12": {
++ "source": "iana",
++ "extensions": ["pptm"]
++ },
++ "application/vnd.ms-powerpoint.slide.macroenabled.12": {
++ "source": "iana",
++ "extensions": ["sldm"]
++ },
++ "application/vnd.ms-powerpoint.slideshow.macroenabled.12": {
++ "source": "iana",
++ "extensions": ["ppsm"]
++ },
++ "application/vnd.ms-powerpoint.template.macroenabled.12": {
++ "source": "iana",
++ "extensions": ["potm"]
++ },
++ "application/vnd.ms-printing.printticket+xml": {
++ "source": "apache"
++ },
++ "application/vnd.ms-project": {
++ "source": "iana",
++ "extensions": ["mpp","mpt"]
++ },
++ "application/vnd.ms-tnef": {
++ "source": "iana"
++ },
++ "application/vnd.ms-windows.printerpairing": {
++ "source": "iana"
++ },
++ "application/vnd.ms-wmdrm.lic-chlg-req": {
++ "source": "iana"
++ },
++ "application/vnd.ms-wmdrm.lic-resp": {
++ "source": "iana"
++ },
++ "application/vnd.ms-wmdrm.meter-chlg-req": {
++ "source": "iana"
++ },
++ "application/vnd.ms-wmdrm.meter-resp": {
++ "source": "iana"
++ },
++ "application/vnd.ms-word.document.macroenabled.12": {
++ "source": "iana",
++ "extensions": ["docm"]
++ },
++ "application/vnd.ms-word.template.macroenabled.12": {
++ "source": "iana",
++ "extensions": ["dotm"]
++ },
++ "application/vnd.ms-works": {
++ "source": "iana",
++ "extensions": ["wps","wks","wcm","wdb"]
++ },
++ "application/vnd.ms-wpl": {
++ "source": "iana",
++ "extensions": ["wpl"]
++ },
++ "application/vnd.ms-xpsdocument": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["xps"]
++ },
++ "application/vnd.mseq": {
++ "source": "iana",
++ "extensions": ["mseq"]
++ },
++ "application/vnd.msign": {
++ "source": "iana"
++ },
++ "application/vnd.multiad.creator": {
++ "source": "iana"
++ },
++ "application/vnd.multiad.creator.cif": {
++ "source": "iana"
++ },
++ "application/vnd.music-niff": {
++ "source": "iana"
++ },
++ "application/vnd.musician": {
++ "source": "iana",
++ "extensions": ["mus"]
++ },
++ "application/vnd.muvee.style": {
++ "source": "iana",
++ "extensions": ["msty"]
++ },
++ "application/vnd.mynfc": {
++ "source": "iana",
++ "extensions": ["taglet"]
++ },
++ "application/vnd.ncd.control": {
++ "source": "iana"
++ },
++ "application/vnd.ncd.reference": {
++ "source": "iana"
++ },
++ "application/vnd.nervana": {
++ "source": "iana"
++ },
++ "application/vnd.netfpx": {
++ "source": "iana"
++ },
++ "application/vnd.neurolanguage.nlu": {
++ "source": "iana",
++ "extensions": ["nlu"]
++ },
++ "application/vnd.nintendo.nitro.rom": {
++ "source": "iana"
++ },
++ "application/vnd.nintendo.snes.rom": {
++ "source": "iana"
++ },
++ "application/vnd.nitf": {
++ "source": "iana",
++ "extensions": ["ntf","nitf"]
++ },
++ "application/vnd.noblenet-directory": {
++ "source": "iana",
++ "extensions": ["nnd"]
++ },
++ "application/vnd.noblenet-sealer": {
++ "source": "iana",
++ "extensions": ["nns"]
++ },
++ "application/vnd.noblenet-web": {
++ "source": "iana",
++ "extensions": ["nnw"]
++ },
++ "application/vnd.nokia.catalogs": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.conml+wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.conml+xml": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.iptv.config+xml": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.isds-radio-presets": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.landmark+wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.landmark+xml": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.landmarkcollection+xml": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.n-gage.ac+xml": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.n-gage.data": {
++ "source": "iana",
++ "extensions": ["ngdat"]
++ },
++ "application/vnd.nokia.n-gage.symbian.install": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.ncd": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.pcd+wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.pcd+xml": {
++ "source": "iana"
++ },
++ "application/vnd.nokia.radio-preset": {
++ "source": "iana",
++ "extensions": ["rpst"]
++ },
++ "application/vnd.nokia.radio-presets": {
++ "source": "iana",
++ "extensions": ["rpss"]
++ },
++ "application/vnd.novadigm.edm": {
++ "source": "iana",
++ "extensions": ["edm"]
++ },
++ "application/vnd.novadigm.edx": {
++ "source": "iana",
++ "extensions": ["edx"]
++ },
++ "application/vnd.novadigm.ext": {
++ "source": "iana",
++ "extensions": ["ext"]
++ },
++ "application/vnd.ntt-local.content-share": {
++ "source": "iana"
++ },
++ "application/vnd.ntt-local.file-transfer": {
++ "source": "iana"
++ },
++ "application/vnd.ntt-local.ogw_remote-access": {
++ "source": "iana"
++ },
++ "application/vnd.ntt-local.sip-ta_remote": {
++ "source": "iana"
++ },
++ "application/vnd.ntt-local.sip-ta_tcp_stream": {
++ "source": "iana"
++ },
++ "application/vnd.oasis.opendocument.chart": {
++ "source": "iana",
++ "extensions": ["odc"]
++ },
++ "application/vnd.oasis.opendocument.chart-template": {
++ "source": "iana",
++ "extensions": ["otc"]
++ },
++ "application/vnd.oasis.opendocument.database": {
++ "source": "iana",
++ "extensions": ["odb"]
++ },
++ "application/vnd.oasis.opendocument.formula": {
++ "source": "iana",
++ "extensions": ["odf"]
++ },
++ "application/vnd.oasis.opendocument.formula-template": {
++ "source": "iana",
++ "extensions": ["odft"]
++ },
++ "application/vnd.oasis.opendocument.graphics": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["odg"]
++ },
++ "application/vnd.oasis.opendocument.graphics-template": {
++ "source": "iana",
++ "extensions": ["otg"]
++ },
++ "application/vnd.oasis.opendocument.image": {
++ "source": "iana",
++ "extensions": ["odi"]
++ },
++ "application/vnd.oasis.opendocument.image-template": {
++ "source": "iana",
++ "extensions": ["oti"]
++ },
++ "application/vnd.oasis.opendocument.presentation": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["odp"]
++ },
++ "application/vnd.oasis.opendocument.presentation-template": {
++ "source": "iana",
++ "extensions": ["otp"]
++ },
++ "application/vnd.oasis.opendocument.spreadsheet": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["ods"]
++ },
++ "application/vnd.oasis.opendocument.spreadsheet-template": {
++ "source": "iana",
++ "extensions": ["ots"]
++ },
++ "application/vnd.oasis.opendocument.text": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["odt"]
++ },
++ "application/vnd.oasis.opendocument.text-master": {
++ "source": "iana",
++ "extensions": ["odm"]
++ },
++ "application/vnd.oasis.opendocument.text-template": {
++ "source": "iana",
++ "extensions": ["ott"]
++ },
++ "application/vnd.oasis.opendocument.text-web": {
++ "source": "iana",
++ "extensions": ["oth"]
++ },
++ "application/vnd.obn": {
++ "source": "iana"
++ },
++ "application/vnd.oftn.l10n+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.oipf.contentaccessdownload+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oipf.contentaccessstreaming+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oipf.cspg-hexbinary": {
++ "source": "iana"
++ },
++ "application/vnd.oipf.dae.svg+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oipf.dae.xhtml+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oipf.mippvcontrolmessage+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oipf.pae.gem": {
++ "source": "iana"
++ },
++ "application/vnd.oipf.spdiscovery+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oipf.spdlist+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oipf.ueprofile+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oipf.userprofile+xml": {
++ "source": "iana"
++ },
++ "application/vnd.olpc-sugar": {
++ "source": "iana",
++ "extensions": ["xo"]
++ },
++ "application/vnd.oma-scws-config": {
++ "source": "iana"
++ },
++ "application/vnd.oma-scws-http-request": {
++ "source": "iana"
++ },
++ "application/vnd.oma-scws-http-response": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.associated-procedure-parameter+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.drm-trigger+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.imd+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.ltkm": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.notification+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.provisioningtrigger": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.sgboot": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.sgdd+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.sgdu": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.simple-symbol-container": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.smartcard-trigger+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.sprov+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.bcast.stkm": {
++ "source": "iana"
++ },
++ "application/vnd.oma.cab-address-book+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.cab-feature-handler+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.cab-pcc+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.cab-subs-invite+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.cab-user-prefs+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.dcd": {
++ "source": "iana"
++ },
++ "application/vnd.oma.dcdc": {
++ "source": "iana"
++ },
++ "application/vnd.oma.dd2+xml": {
++ "source": "iana",
++ "extensions": ["dd2"]
++ },
++ "application/vnd.oma.drm.risd+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.group-usage-list+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.pal+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.poc.detailed-progress-report+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.poc.final-report+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.poc.groups+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.poc.invocation-descriptor+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.poc.optimized-progress-report+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.push": {
++ "source": "iana"
++ },
++ "application/vnd.oma.scidm.messages+xml": {
++ "source": "iana"
++ },
++ "application/vnd.oma.xcap-directory+xml": {
++ "source": "iana"
++ },
++ "application/vnd.omads-email+xml": {
++ "source": "iana"
++ },
++ "application/vnd.omads-file+xml": {
++ "source": "iana"
++ },
++ "application/vnd.omads-folder+xml": {
++ "source": "iana"
++ },
++ "application/vnd.omaloc-supl-init": {
++ "source": "iana"
++ },
++ "application/vnd.openeye.oeb": {
++ "source": "iana"
++ },
++ "application/vnd.openofficeorg.extension": {
++ "source": "apache",
++ "extensions": ["oxt"]
++ },
++ "application/vnd.openxmlformats-officedocument.custom-properties+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.customxmlproperties+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.drawing+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.drawingml.chart+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.extended-properties+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml-template": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.comments+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.presentation": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["pptx"]
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.presprops+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.slide": {
++ "source": "iana",
++ "extensions": ["sldx"]
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.slide+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.slideshow": {
++ "source": "iana",
++ "extensions": ["ppsx"]
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.tags+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.template": {
++ "source": "apache",
++ "extensions": ["potx"]
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.template.main+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml-template": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["xlsx"]
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.template": {
++ "source": "apache",
++ "extensions": ["xltx"]
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.theme+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.themeoverride+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.vmldrawing": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml-template": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.document": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["docx"]
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.template": {
++ "source": "apache",
++ "extensions": ["dotx"]
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-package.core-properties+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml": {
++ "source": "iana"
++ },
++ "application/vnd.openxmlformats-package.relationships+xml": {
++ "source": "iana"
++ },
++ "application/vnd.orange.indata": {
++ "source": "iana"
++ },
++ "application/vnd.osa.netdeploy": {
++ "source": "iana"
++ },
++ "application/vnd.osgeo.mapguide.package": {
++ "source": "iana",
++ "extensions": ["mgp"]
++ },
++ "application/vnd.osgi.bundle": {
++ "source": "iana"
++ },
++ "application/vnd.osgi.dp": {
++ "source": "iana",
++ "extensions": ["dp"]
++ },
++ "application/vnd.osgi.subsystem": {
++ "source": "iana",
++ "extensions": ["esa"]
++ },
++ "application/vnd.otps.ct-kip+xml": {
++ "source": "iana"
++ },
++ "application/vnd.palm": {
++ "source": "iana",
++ "extensions": ["pdb","pqa","oprc"]
++ },
++ "application/vnd.panoply": {
++ "source": "iana"
++ },
++ "application/vnd.paos+xml": {
++ "source": "iana"
++ },
++ "application/vnd.paos.xml": {
++ "source": "apache"
++ },
++ "application/vnd.pawaafile": {
++ "source": "iana",
++ "extensions": ["paw"]
++ },
++ "application/vnd.pcos": {
++ "source": "iana"
++ },
++ "application/vnd.pg.format": {
++ "source": "iana",
++ "extensions": ["str"]
++ },
++ "application/vnd.pg.osasli": {
++ "source": "iana",
++ "extensions": ["ei6"]
++ },
++ "application/vnd.piaccess.application-licence": {
++ "source": "iana"
++ },
++ "application/vnd.picsel": {
++ "source": "iana",
++ "extensions": ["efif"]
++ },
++ "application/vnd.pmi.widget": {
++ "source": "iana",
++ "extensions": ["wg"]
++ },
++ "application/vnd.poc.group-advertisement+xml": {
++ "source": "iana"
++ },
++ "application/vnd.pocketlearn": {
++ "source": "iana",
++ "extensions": ["plf"]
++ },
++ "application/vnd.powerbuilder6": {
++ "source": "iana",
++ "extensions": ["pbd"]
++ },
++ "application/vnd.powerbuilder6-s": {
++ "source": "iana"
++ },
++ "application/vnd.powerbuilder7": {
++ "source": "iana"
++ },
++ "application/vnd.powerbuilder7-s": {
++ "source": "iana"
++ },
++ "application/vnd.powerbuilder75": {
++ "source": "iana"
++ },
++ "application/vnd.powerbuilder75-s": {
++ "source": "iana"
++ },
++ "application/vnd.preminet": {
++ "source": "iana"
++ },
++ "application/vnd.previewsystems.box": {
++ "source": "iana",
++ "extensions": ["box"]
++ },
++ "application/vnd.proteus.magazine": {
++ "source": "iana",
++ "extensions": ["mgz"]
++ },
++ "application/vnd.publishare-delta-tree": {
++ "source": "iana",
++ "extensions": ["qps"]
++ },
++ "application/vnd.pvi.ptid1": {
++ "source": "iana",
++ "extensions": ["ptid"]
++ },
++ "application/vnd.pwg-multiplexed": {
++ "source": "apache"
++ },
++ "application/vnd.pwg-xhtml-print+xml": {
++ "source": "iana"
++ },
++ "application/vnd.qualcomm.brew-app-res": {
++ "source": "iana"
++ },
++ "application/vnd.quark.quarkxpress": {
++ "source": "iana",
++ "extensions": ["qxd","qxt","qwd","qwt","qxl","qxb"]
++ },
++ "application/vnd.quobject-quoxdocument": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.moml+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-audit+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-audit-conf+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-audit-conn+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-audit-dialog+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-audit-stream+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-conf+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-dialog+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-dialog-base+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-dialog-fax-detect+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-dialog-fax-sendrecv+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-dialog-group+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-dialog-speech+xml": {
++ "source": "iana"
++ },
++ "application/vnd.radisys.msml-dialog-transform+xml": {
++ "source": "iana"
++ },
++ "application/vnd.rainstor.data": {
++ "source": "iana"
++ },
++ "application/vnd.rapid": {
++ "source": "iana"
++ },
++ "application/vnd.realvnc.bed": {
++ "source": "iana",
++ "extensions": ["bed"]
++ },
++ "application/vnd.recordare.musicxml": {
++ "source": "iana",
++ "extensions": ["mxl"]
++ },
++ "application/vnd.recordare.musicxml+xml": {
++ "source": "iana",
++ "extensions": ["musicxml"]
++ },
++ "application/vnd.renlearn.rlprint": {
++ "source": "iana"
++ },
++ "application/vnd.rig.cryptonote": {
++ "source": "iana",
++ "extensions": ["cryptonote"]
++ },
++ "application/vnd.rim.cod": {
++ "source": "apache",
++ "extensions": ["cod"]
++ },
++ "application/vnd.rn-realmedia": {
++ "source": "apache",
++ "extensions": ["rm"]
++ },
++ "application/vnd.rn-realmedia-vbr": {
++ "source": "apache",
++ "extensions": ["rmvb"]
++ },
++ "application/vnd.route66.link66+xml": {
++ "source": "iana",
++ "extensions": ["link66"]
++ },
++ "application/vnd.rs-274x": {
++ "source": "iana"
++ },
++ "application/vnd.ruckus.download": {
++ "source": "iana"
++ },
++ "application/vnd.s3sms": {
++ "source": "iana"
++ },
++ "application/vnd.sailingtracker.track": {
++ "source": "iana",
++ "extensions": ["st"]
++ },
++ "application/vnd.sbm.cid": {
++ "source": "iana"
++ },
++ "application/vnd.sbm.mid2": {
++ "source": "iana"
++ },
++ "application/vnd.scribus": {
++ "source": "iana"
++ },
++ "application/vnd.sealed-doc": {
++ "source": "iana"
++ },
++ "application/vnd.sealed-eml": {
++ "source": "iana"
++ },
++ "application/vnd.sealed-mht": {
++ "source": "iana"
++ },
++ "application/vnd.sealed-ppt": {
++ "source": "iana"
++ },
++ "application/vnd.sealed-tiff": {
++ "source": "iana"
++ },
++ "application/vnd.sealed-xls": {
++ "source": "iana"
++ },
++ "application/vnd.sealed.3df": {
++ "source": "iana"
++ },
++ "application/vnd.sealed.csf": {
++ "source": "iana"
++ },
++ "application/vnd.sealed.doc": {
++ "source": "apache"
++ },
++ "application/vnd.sealed.eml": {
++ "source": "apache"
++ },
++ "application/vnd.sealed.mht": {
++ "source": "apache"
++ },
++ "application/vnd.sealed.net": {
++ "source": "iana"
++ },
++ "application/vnd.sealed.ppt": {
++ "source": "apache"
++ },
++ "application/vnd.sealed.tiff": {
++ "source": "apache"
++ },
++ "application/vnd.sealed.xls": {
++ "source": "apache"
++ },
++ "application/vnd.sealedmedia.softseal-html": {
++ "source": "iana"
++ },
++ "application/vnd.sealedmedia.softseal-pdf": {
++ "source": "iana"
++ },
++ "application/vnd.sealedmedia.softseal.html": {
++ "source": "apache"
++ },
++ "application/vnd.sealedmedia.softseal.pdf": {
++ "source": "apache"
++ },
++ "application/vnd.seemail": {
++ "source": "iana",
++ "extensions": ["see"]
++ },
++ "application/vnd.sema": {
++ "source": "apache",
++ "extensions": ["sema"]
++ },
++ "application/vnd.semd": {
++ "source": "iana",
++ "extensions": ["semd"]
++ },
++ "application/vnd.semf": {
++ "source": "iana",
++ "extensions": ["semf"]
++ },
++ "application/vnd.shana.informed.formdata": {
++ "source": "iana",
++ "extensions": ["ifm"]
++ },
++ "application/vnd.shana.informed.formtemplate": {
++ "source": "iana",
++ "extensions": ["itp"]
++ },
++ "application/vnd.shana.informed.interchange": {
++ "source": "iana",
++ "extensions": ["iif"]
++ },
++ "application/vnd.shana.informed.package": {
++ "source": "iana",
++ "extensions": ["ipk"]
++ },
++ "application/vnd.simtech-mindmapper": {
++ "source": "iana",
++ "extensions": ["twd","twds"]
++ },
++ "application/vnd.siren+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.smaf": {
++ "source": "iana",
++ "extensions": ["mmf"]
++ },
++ "application/vnd.smart.notebook": {
++ "source": "iana"
++ },
++ "application/vnd.smart.teacher": {
++ "source": "iana",
++ "extensions": ["teacher"]
++ },
++ "application/vnd.software602.filler.form+xml": {
++ "source": "iana"
++ },
++ "application/vnd.software602.filler.form-xml-zip": {
++ "source": "iana"
++ },
++ "application/vnd.solent.sdkm+xml": {
++ "source": "iana",
++ "extensions": ["sdkm","sdkd"]
++ },
++ "application/vnd.spotfire.dxp": {
++ "source": "iana",
++ "extensions": ["dxp"]
++ },
++ "application/vnd.spotfire.sfs": {
++ "source": "iana",
++ "extensions": ["sfs"]
++ },
++ "application/vnd.sss-cod": {
++ "source": "iana"
++ },
++ "application/vnd.sss-dtf": {
++ "source": "iana"
++ },
++ "application/vnd.sss-ntf": {
++ "source": "iana"
++ },
++ "application/vnd.stardivision.calc": {
++ "source": "apache",
++ "extensions": ["sdc"]
++ },
++ "application/vnd.stardivision.draw": {
++ "source": "apache",
++ "extensions": ["sda"]
++ },
++ "application/vnd.stardivision.impress": {
++ "source": "apache",
++ "extensions": ["sdd"]
++ },
++ "application/vnd.stardivision.math": {
++ "source": "apache",
++ "extensions": ["smf"]
++ },
++ "application/vnd.stardivision.writer": {
++ "source": "apache",
++ "extensions": ["sdw","vor"]
++ },
++ "application/vnd.stardivision.writer-global": {
++ "source": "apache",
++ "extensions": ["sgl"]
++ },
++ "application/vnd.stepmania.package": {
++ "source": "iana",
++ "extensions": ["smzip"]
++ },
++ "application/vnd.stepmania.stepchart": {
++ "source": "iana",
++ "extensions": ["sm"]
++ },
++ "application/vnd.street-stream": {
++ "source": "iana"
++ },
++ "application/vnd.sun.wadl+xml": {
++ "source": "iana"
++ },
++ "application/vnd.sun.xml.calc": {
++ "source": "apache",
++ "extensions": ["sxc"]
++ },
++ "application/vnd.sun.xml.calc.template": {
++ "source": "apache",
++ "extensions": ["stc"]
++ },
++ "application/vnd.sun.xml.draw": {
++ "source": "apache",
++ "extensions": ["sxd"]
++ },
++ "application/vnd.sun.xml.draw.template": {
++ "source": "apache",
++ "extensions": ["std"]
++ },
++ "application/vnd.sun.xml.impress": {
++ "source": "apache",
++ "extensions": ["sxi"]
++ },
++ "application/vnd.sun.xml.impress.template": {
++ "source": "apache",
++ "extensions": ["sti"]
++ },
++ "application/vnd.sun.xml.math": {
++ "source": "apache",
++ "extensions": ["sxm"]
++ },
++ "application/vnd.sun.xml.writer": {
++ "source": "apache",
++ "extensions": ["sxw"]
++ },
++ "application/vnd.sun.xml.writer.global": {
++ "source": "apache",
++ "extensions": ["sxg"]
++ },
++ "application/vnd.sun.xml.writer.template": {
++ "source": "apache",
++ "extensions": ["stw"]
++ },
++ "application/vnd.sus-calendar": {
++ "source": "iana",
++ "extensions": ["sus","susp"]
++ },
++ "application/vnd.svd": {
++ "source": "iana",
++ "extensions": ["svd"]
++ },
++ "application/vnd.swiftview-ics": {
++ "source": "iana"
++ },
++ "application/vnd.symbian.install": {
++ "source": "apache",
++ "extensions": ["sis","sisx"]
++ },
++ "application/vnd.syncml+xml": {
++ "source": "iana",
++ "extensions": ["xsm"]
++ },
++ "application/vnd.syncml.dm+wbxml": {
++ "source": "iana",
++ "extensions": ["bdm"]
++ },
++ "application/vnd.syncml.dm+xml": {
++ "source": "iana",
++ "extensions": ["xdm"]
++ },
++ "application/vnd.syncml.dm.notification": {
++ "source": "iana"
++ },
++ "application/vnd.syncml.dmddf+wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.syncml.dmddf+xml": {
++ "source": "iana"
++ },
++ "application/vnd.syncml.dmtnds+wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.syncml.dmtnds+xml": {
++ "source": "iana"
++ },
++ "application/vnd.syncml.ds.notification": {
++ "source": "iana"
++ },
++ "application/vnd.tao.intent-module-archive": {
++ "source": "iana",
++ "extensions": ["tao"]
++ },
++ "application/vnd.tcpdump.pcap": {
++ "source": "iana",
++ "extensions": ["pcap","cap","dmp"]
++ },
++ "application/vnd.tmobile-livetv": {
++ "source": "iana",
++ "extensions": ["tmo"]
++ },
++ "application/vnd.trid.tpt": {
++ "source": "iana",
++ "extensions": ["tpt"]
++ },
++ "application/vnd.triscape.mxs": {
++ "source": "iana",
++ "extensions": ["mxs"]
++ },
++ "application/vnd.trueapp": {
++ "source": "iana",
++ "extensions": ["tra"]
++ },
++ "application/vnd.truedoc": {
++ "source": "iana"
++ },
++ "application/vnd.ubisoft.webplayer": {
++ "source": "iana"
++ },
++ "application/vnd.ufdl": {
++ "source": "iana",
++ "extensions": ["ufd","ufdl"]
++ },
++ "application/vnd.uiq.theme": {
++ "source": "iana",
++ "extensions": ["utz"]
++ },
++ "application/vnd.umajin": {
++ "source": "iana",
++ "extensions": ["umj"]
++ },
++ "application/vnd.unity": {
++ "source": "iana",
++ "extensions": ["unityweb"]
++ },
++ "application/vnd.uoml+xml": {
++ "source": "iana",
++ "extensions": ["uoml"]
++ },
++ "application/vnd.uplanet.alert": {
++ "source": "iana"
++ },
++ "application/vnd.uplanet.alert-wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.uplanet.bearer-choice": {
++ "source": "iana"
++ },
++ "application/vnd.uplanet.bearer-choice-wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.uplanet.cacheop": {
++ "source": "iana"
++ },
++ "application/vnd.uplanet.cacheop-wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.uplanet.channel": {
++ "source": "iana"
++ },
++ "application/vnd.uplanet.channel-wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.uplanet.list": {
++ "source": "iana"
++ },
++ "application/vnd.uplanet.list-wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.uplanet.listcmd": {
++ "source": "iana"
++ },
++ "application/vnd.uplanet.listcmd-wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.uplanet.signal": {
++ "source": "iana"
++ },
++ "application/vnd.valve.source.material": {
++ "source": "iana"
++ },
++ "application/vnd.vcx": {
++ "source": "iana",
++ "extensions": ["vcx"]
++ },
++ "application/vnd.vd-study": {
++ "source": "iana"
++ },
++ "application/vnd.vectorworks": {
++ "source": "iana"
++ },
++ "application/vnd.verimatrix.vcas": {
++ "source": "iana"
++ },
++ "application/vnd.vidsoft.vidconference": {
++ "source": "iana"
++ },
++ "application/vnd.visio": {
++ "source": "iana",
++ "extensions": ["vsd","vst","vss","vsw"]
++ },
++ "application/vnd.visionary": {
++ "source": "iana",
++ "extensions": ["vis"]
++ },
++ "application/vnd.vividence.scriptfile": {
++ "source": "iana"
++ },
++ "application/vnd.vsf": {
++ "source": "iana",
++ "extensions": ["vsf"]
++ },
++ "application/vnd.wap-slc": {
++ "source": "iana"
++ },
++ "application/vnd.wap-wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.wap.sic": {
++ "source": "iana"
++ },
++ "application/vnd.wap.slc": {
++ "source": "apache"
++ },
++ "application/vnd.wap.wbxml": {
++ "source": "apache",
++ "extensions": ["wbxml"]
++ },
++ "application/vnd.wap.wmlc": {
++ "source": "apache",
++ "extensions": ["wmlc"]
++ },
++ "application/vnd.wap.wmlscriptc": {
++ "source": "iana",
++ "extensions": ["wmlsc"]
++ },
++ "application/vnd.webturbo": {
++ "source": "iana",
++ "extensions": ["wtb"]
++ },
++ "application/vnd.wfa.p2p": {
++ "source": "iana"
++ },
++ "application/vnd.wfa.wsc": {
++ "source": "iana"
++ },
++ "application/vnd.windows.devicepairing": {
++ "source": "iana"
++ },
++ "application/vnd.wmc": {
++ "source": "iana"
++ },
++ "application/vnd.wmf.bootstrap": {
++ "source": "iana"
++ },
++ "application/vnd.wolfram.mathematica": {
++ "source": "iana"
++ },
++ "application/vnd.wolfram.mathematica.package": {
++ "source": "iana"
++ },
++ "application/vnd.wolfram.player": {
++ "source": "iana",
++ "extensions": ["nbp"]
++ },
++ "application/vnd.wordperfect": {
++ "source": "iana",
++ "extensions": ["wpd"]
++ },
++ "application/vnd.wqd": {
++ "source": "iana",
++ "extensions": ["wqd"]
++ },
++ "application/vnd.wrq-hp3000-labelled": {
++ "source": "iana"
++ },
++ "application/vnd.wt.stf": {
++ "source": "iana",
++ "extensions": ["stf"]
++ },
++ "application/vnd.wv.csp+wbxml": {
++ "source": "iana"
++ },
++ "application/vnd.wv.csp+xml": {
++ "source": "iana"
++ },
++ "application/vnd.wv.ssp+xml": {
++ "source": "iana"
++ },
++ "application/vnd.xacml+json": {
++ "source": "iana",
++ "compressible": true
++ },
++ "application/vnd.xara": {
++ "source": "iana",
++ "extensions": ["xar"]
++ },
++ "application/vnd.xfdl": {
++ "source": "iana",
++ "extensions": ["xfdl"]
++ },
++ "application/vnd.xfdl.webform": {
++ "source": "iana"
++ },
++ "application/vnd.xmi+xml": {
++ "source": "iana"
++ },
++ "application/vnd.xmpie.cpkg": {
++ "source": "iana"
++ },
++ "application/vnd.xmpie.dpkg": {
++ "source": "iana"
++ },
++ "application/vnd.xmpie.plan": {
++ "source": "iana"
++ },
++ "application/vnd.xmpie.ppkg": {
++ "source": "iana"
++ },
++ "application/vnd.xmpie.xlim": {
++ "source": "iana"
++ },
++ "application/vnd.yamaha.hv-dic": {
++ "source": "iana",
++ "extensions": ["hvd"]
++ },
++ "application/vnd.yamaha.hv-script": {
++ "source": "iana",
++ "extensions": ["hvs"]
++ },
++ "application/vnd.yamaha.hv-voice": {
++ "source": "iana",
++ "extensions": ["hvp"]
++ },
++ "application/vnd.yamaha.openscoreformat": {
++ "source": "iana",
++ "extensions": ["osf"]
++ },
++ "application/vnd.yamaha.openscoreformat.osfpvg+xml": {
++ "source": "iana",
++ "extensions": ["osfpvg"]
++ },
++ "application/vnd.yamaha.remote-setup": {
++ "source": "iana"
++ },
++ "application/vnd.yamaha.smaf-audio": {
++ "source": "iana",
++ "extensions": ["saf"]
++ },
++ "application/vnd.yamaha.smaf-phrase": {
++ "source": "iana",
++ "extensions": ["spf"]
++ },
++ "application/vnd.yamaha.through-ngn": {
++ "source": "iana"
++ },
++ "application/vnd.yamaha.tunnel-udpencap": {
++ "source": "iana"
++ },
++ "application/vnd.yaoweme": {
++ "source": "iana"
++ },
++ "application/vnd.yellowriver-custom-menu": {
++ "source": "iana",
++ "extensions": ["cmp"]
++ },
++ "application/vnd.zul": {
++ "source": "iana",
++ "extensions": ["zir","zirz"]
++ },
++ "application/vnd.zzazz.deck+xml": {
++ "source": "iana",
++ "extensions": ["zaz"]
++ },
++ "application/voicexml+xml": {
++ "source": "iana",
++ "extensions": ["vxml"]
++ },
++ "application/vq-rtcpxr": {
++ "source": "iana"
++ },
++ "application/vwg-multiplexed": {
++ "source": "iana"
++ },
++ "application/watcherinfo+xml": {
++ "source": "iana"
++ },
++ "application/whoispp-query": {
++ "source": "iana"
++ },
++ "application/whoispp-response": {
++ "source": "iana"
++ },
++ "application/widget": {
++ "source": "iana",
++ "extensions": ["wgt"]
++ },
++ "application/winhlp": {
++ "source": "apache",
++ "extensions": ["hlp"]
++ },
++ "application/wita": {
++ "source": "iana"
++ },
++ "application/wordperfect5.1": {
++ "source": "iana"
++ },
++ "application/wsdl+xml": {
++ "source": "iana",
++ "extensions": ["wsdl"]
++ },
++ "application/wspolicy+xml": {
++ "source": "iana",
++ "extensions": ["wspolicy"]
++ },
++ "application/x-7z-compressed": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["7z"]
++ },
++ "application/x-abiword": {
++ "source": "apache",
++ "extensions": ["abw"]
++ },
++ "application/x-ace-compressed": {
++ "source": "apache",
++ "extensions": ["ace"]
++ },
++ "application/x-amf": {
++ "source": "apache"
++ },
++ "application/x-apple-diskimage": {
++ "source": "apache",
++ "extensions": ["dmg"]
++ },
++ "application/x-authorware-bin": {
++ "source": "apache",
++ "extensions": ["aab","x32","u32","vox"]
++ },
++ "application/x-authorware-map": {
++ "source": "apache",
++ "extensions": ["aam"]
++ },
++ "application/x-authorware-seg": {
++ "source": "apache",
++ "extensions": ["aas"]
++ },
++ "application/x-bcpio": {
++ "source": "apache",
++ "extensions": ["bcpio"]
++ },
++ "application/x-bittorrent": {
++ "source": "apache",
++ "extensions": ["torrent"]
++ },
++ "application/x-blorb": {
++ "source": "apache",
++ "extensions": ["blb","blorb"]
++ },
++ "application/x-bzip": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["bz"]
++ },
++ "application/x-bzip2": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["bz2","boz"]
++ },
++ "application/x-cbr": {
++ "source": "apache",
++ "extensions": ["cbr","cba","cbt","cbz","cb7"]
++ },
++ "application/x-cdlink": {
++ "source": "apache",
++ "extensions": ["vcd"]
++ },
++ "application/x-cfs-compressed": {
++ "source": "apache",
++ "extensions": ["cfs"]
++ },
++ "application/x-chat": {
++ "source": "apache",
++ "extensions": ["chat"]
++ },
++ "application/x-chess-pgn": {
++ "source": "apache",
++ "extensions": ["pgn"]
++ },
++ "application/x-chrome-extension": {
++ "extensions": ["crx"]
++ },
++ "application/x-compress": {
++ "source": "apache"
++ },
++ "application/x-conference": {
++ "source": "apache",
++ "extensions": ["nsc"]
++ },
++ "application/x-cpio": {
++ "source": "apache",
++ "extensions": ["cpio"]
++ },
++ "application/x-csh": {
++ "source": "apache",
++ "extensions": ["csh"]
++ },
++ "application/x-deb": {
++ "compressible": false
++ },
++ "application/x-debian-package": {
++ "source": "apache",
++ "extensions": ["deb","udeb"]
++ },
++ "application/x-dgc-compressed": {
++ "source": "apache",
++ "extensions": ["dgc"]
++ },
++ "application/x-director": {
++ "source": "apache",
++ "extensions": ["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]
++ },
++ "application/x-doom": {
++ "source": "apache",
++ "extensions": ["wad"]
++ },
++ "application/x-dtbncx+xml": {
++ "source": "apache",
++ "extensions": ["ncx"]
++ },
++ "application/x-dtbook+xml": {
++ "source": "apache",
++ "extensions": ["dtb"]
++ },
++ "application/x-dtbresource+xml": {
++ "source": "apache",
++ "extensions": ["res"]
++ },
++ "application/x-dvi": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["dvi"]
++ },
++ "application/x-envoy": {
++ "source": "apache",
++ "extensions": ["evy"]
++ },
++ "application/x-eva": {
++ "source": "apache",
++ "extensions": ["eva"]
++ },
++ "application/x-font-bdf": {
++ "source": "apache",
++ "extensions": ["bdf"]
++ },
++ "application/x-font-dos": {
++ "source": "apache"
++ },
++ "application/x-font-framemaker": {
++ "source": "apache"
++ },
++ "application/x-font-ghostscript": {
++ "source": "apache",
++ "extensions": ["gsf"]
++ },
++ "application/x-font-libgrx": {
++ "source": "apache"
++ },
++ "application/x-font-linux-psf": {
++ "source": "apache",
++ "extensions": ["psf"]
++ },
++ "application/x-font-otf": {
++ "source": "apache",
++ "compressible": true,
++ "extensions": ["otf"]
++ },
++ "application/x-font-pcf": {
++ "source": "apache",
++ "extensions": ["pcf"]
++ },
++ "application/x-font-snf": {
++ "source": "apache",
++ "extensions": ["snf"]
++ },
++ "application/x-font-speedo": {
++ "source": "apache"
++ },
++ "application/x-font-sunos-news": {
++ "source": "apache"
++ },
++ "application/x-font-ttf": {
++ "source": "apache",
++ "compressible": true,
++ "extensions": ["ttf","ttc"]
++ },
++ "application/x-font-type1": {
++ "source": "apache",
++ "extensions": ["pfa","pfb","pfm","afm"]
++ },
++ "application/x-font-vfont": {
++ "source": "apache"
++ },
++ "application/x-freearc": {
++ "source": "apache",
++ "extensions": ["arc"]
++ },
++ "application/x-futuresplash": {
++ "source": "apache",
++ "extensions": ["spl"]
++ },
++ "application/x-gca-compressed": {
++ "source": "apache",
++ "extensions": ["gca"]
++ },
++ "application/x-glulx": {
++ "source": "apache",
++ "extensions": ["ulx"]
++ },
++ "application/x-gnumeric": {
++ "source": "apache",
++ "extensions": ["gnumeric"]
++ },
++ "application/x-gramps-xml": {
++ "source": "apache",
++ "extensions": ["gramps"]
++ },
++ "application/x-gtar": {
++ "source": "apache",
++ "extensions": ["gtar"]
++ },
++ "application/x-gzip": {
++ "source": "apache"
++ },
++ "application/x-hdf": {
++ "source": "apache",
++ "extensions": ["hdf"]
++ },
++ "application/x-install-instructions": {
++ "source": "apache",
++ "extensions": ["install"]
++ },
++ "application/x-iso9660-image": {
++ "source": "apache",
++ "extensions": ["iso"]
++ },
++ "application/x-java-jnlp-file": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["jnlp"]
++ },
++ "application/x-javascript": {
++ "compressible": true
++ },
++ "application/x-latex": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["latex"]
++ },
++ "application/x-lua-bytecode": {
++ "extensions": ["luac"]
++ },
++ "application/x-lzh-compressed": {
++ "source": "apache",
++ "extensions": ["lzh","lha"]
++ },
++ "application/x-mie": {
++ "source": "apache",
++ "extensions": ["mie"]
++ },
++ "application/x-mobipocket-ebook": {
++ "source": "apache",
++ "extensions": ["prc","mobi"]
++ },
++ "application/x-mpegurl": {
++ "compressible": false
++ },
++ "application/x-ms-application": {
++ "source": "apache",
++ "extensions": ["application"]
++ },
++ "application/x-ms-shortcut": {
++ "source": "apache",
++ "extensions": ["lnk"]
++ },
++ "application/x-ms-wmd": {
++ "source": "apache",
++ "extensions": ["wmd"]
++ },
++ "application/x-ms-wmz": {
++ "source": "apache",
++ "extensions": ["wmz"]
++ },
++ "application/x-ms-xbap": {
++ "source": "apache",
++ "extensions": ["xbap"]
++ },
++ "application/x-msaccess": {
++ "source": "apache",
++ "extensions": ["mdb"]
++ },
++ "application/x-msbinder": {
++ "source": "apache",
++ "extensions": ["obd"]
++ },
++ "application/x-mscardfile": {
++ "source": "apache",
++ "extensions": ["crd"]
++ },
++ "application/x-msclip": {
++ "source": "apache",
++ "extensions": ["clp"]
++ },
++ "application/x-msdownload": {
++ "source": "apache",
++ "extensions": ["exe","dll","com","bat","msi"]
++ },
++ "application/x-msmediaview": {
++ "source": "apache",
++ "extensions": ["mvb","m13","m14"]
++ },
++ "application/x-msmetafile": {
++ "source": "apache",
++ "extensions": ["wmf","wmz","emf","emz"]
++ },
++ "application/x-msmoney": {
++ "source": "apache",
++ "extensions": ["mny"]
++ },
++ "application/x-mspublisher": {
++ "source": "apache",
++ "extensions": ["pub"]
++ },
++ "application/x-msschedule": {
++ "source": "apache",
++ "extensions": ["scd"]
++ },
++ "application/x-msterminal": {
++ "source": "apache",
++ "extensions": ["trm"]
++ },
++ "application/x-mswrite": {
++ "source": "apache",
++ "extensions": ["wri"]
++ },
++ "application/x-netcdf": {
++ "source": "apache",
++ "extensions": ["nc","cdf"]
++ },
++ "application/x-nzb": {
++ "source": "apache",
++ "extensions": ["nzb"]
++ },
++ "application/x-pkcs12": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["p12","pfx"]
++ },
++ "application/x-pkcs7-certificates": {
++ "source": "apache",
++ "extensions": ["p7b","spc"]
++ },
++ "application/x-pkcs7-certreqresp": {
++ "source": "apache",
++ "extensions": ["p7r"]
++ },
++ "application/x-rar-compressed": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["rar"]
++ },
++ "application/x-research-info-systems": {
++ "source": "apache",
++ "extensions": ["ris"]
++ },
++ "application/x-sh": {
++ "source": "apache",
++ "compressible": true,
++ "extensions": ["sh"]
++ },
++ "application/x-shar": {
++ "source": "apache",
++ "extensions": ["shar"]
++ },
++ "application/x-shockwave-flash": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["swf"]
++ },
++ "application/x-silverlight-app": {
++ "source": "apache",
++ "extensions": ["xap"]
++ },
++ "application/x-sql": {
++ "source": "apache",
++ "extensions": ["sql"]
++ },
++ "application/x-stuffit": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["sit"]
++ },
++ "application/x-stuffitx": {
++ "source": "apache",
++ "extensions": ["sitx"]
++ },
++ "application/x-subrip": {
++ "source": "apache",
++ "extensions": ["srt"]
++ },
++ "application/x-sv4cpio": {
++ "source": "apache",
++ "extensions": ["sv4cpio"]
++ },
++ "application/x-sv4crc": {
++ "source": "apache",
++ "extensions": ["sv4crc"]
++ },
++ "application/x-t3vm-image": {
++ "source": "apache",
++ "extensions": ["t3"]
++ },
++ "application/x-tads": {
++ "source": "apache",
++ "extensions": ["gam"]
++ },
++ "application/x-tar": {
++ "source": "apache",
++ "compressible": true,
++ "extensions": ["tar"]
++ },
++ "application/x-tcl": {
++ "source": "apache",
++ "extensions": ["tcl"]
++ },
++ "application/x-tex": {
++ "source": "apache",
++ "extensions": ["tex"]
++ },
++ "application/x-tex-tfm": {
++ "source": "apache",
++ "extensions": ["tfm"]
++ },
++ "application/x-texinfo": {
++ "source": "apache",
++ "extensions": ["texinfo","texi"]
++ },
++ "application/x-tgif": {
++ "source": "apache",
++ "extensions": ["obj"]
++ },
++ "application/x-ustar": {
++ "source": "apache",
++ "extensions": ["ustar"]
++ },
++ "application/x-wais-source": {
++ "source": "apache",
++ "extensions": ["src"]
++ },
++ "application/x-web-app-manifest+json": {
++ "compressible": true,
++ "extensions": ["webapp"]
++ },
++ "application/x-www-form-urlencode": {
++ "compressible": false
++ },
++ "application/x-www-form-urlencoded": {
++ "source": "iana"
++ },
++ "application/x-x509-ca-cert": {
++ "source": "apache",
++ "extensions": ["der","crt"]
++ },
++ "application/x-xfig": {
++ "source": "apache",
++ "extensions": ["fig"]
++ },
++ "application/x-xliff+xml": {
++ "source": "apache",
++ "extensions": ["xlf"]
++ },
++ "application/x-xpinstall": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["xpi"]
++ },
++ "application/x-xz": {
++ "source": "apache",
++ "extensions": ["xz"]
++ },
++ "application/x-zmachine": {
++ "source": "apache",
++ "extensions": ["z1","z2","z3","z4","z5","z6","z7","z8"]
++ },
++ "application/x400-bp": {
++ "source": "iana"
++ },
++ "application/xacml+xml": {
++ "source": "iana"
++ },
++ "application/xaml+xml": {
++ "source": "apache",
++ "extensions": ["xaml"]
++ },
++ "application/xcap-att+xml": {
++ "source": "iana"
++ },
++ "application/xcap-caps+xml": {
++ "source": "iana"
++ },
++ "application/xcap-diff+xml": {
++ "source": "iana",
++ "extensions": ["xdf"]
++ },
++ "application/xcap-el+xml": {
++ "source": "iana"
++ },
++ "application/xcap-error+xml": {
++ "source": "iana"
++ },
++ "application/xcap-ns+xml": {
++ "source": "iana"
++ },
++ "application/xcon-conference-info+xml": {
++ "source": "iana"
++ },
++ "application/xcon-conference-info-diff+xml": {
++ "source": "iana"
++ },
++ "application/xenc+xml": {
++ "source": "iana",
++ "extensions": ["xenc"]
++ },
++ "application/xhtml+xml": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["xhtml","xht"]
++ },
++ "application/xhtml-voice+xml": {
++ "source": "iana"
++ },
++ "application/xml": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["xml","xsl","xsd"]
++ },
++ "application/xml-dtd": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["dtd"]
++ },
++ "application/xml-external-parsed-entity": {
++ "source": "iana"
++ },
++ "application/xml-patch+xml": {
++ "source": "iana"
++ },
++ "application/xmpp+xml": {
++ "source": "iana"
++ },
++ "application/xop+xml": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["xop"]
++ },
++ "application/xproc+xml": {
++ "source": "apache",
++ "extensions": ["xpl"]
++ },
++ "application/xslt+xml": {
++ "source": "iana",
++ "extensions": ["xslt"]
++ },
++ "application/xspf+xml": {
++ "source": "apache",
++ "extensions": ["xspf"]
++ },
++ "application/xv+xml": {
++ "source": "iana",
++ "extensions": ["mxml","xhvml","xvml","xvm"]
++ },
++ "application/yang": {
++ "source": "iana",
++ "extensions": ["yang"]
++ },
++ "application/yin+xml": {
++ "source": "iana",
++ "extensions": ["yin"]
++ },
++ "application/zip": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["zip"]
++ },
++ "application/zlib": {
++ "source": "iana"
++ },
++ "audio/1d-interleaved-parityfec": {
++ "source": "iana"
++ },
++ "audio/32kadpcm": {
++ "source": "iana"
++ },
++ "audio/3gpp": {
++ "source": "iana"
++ },
++ "audio/3gpp2": {
++ "source": "iana"
++ },
++ "audio/ac3": {
++ "source": "iana"
++ },
++ "audio/adpcm": {
++ "source": "apache",
++ "extensions": ["adp"]
++ },
++ "audio/amr": {
++ "source": "iana"
++ },
++ "audio/amr-wb": {
++ "source": "iana"
++ },
++ "audio/amr-wb+": {
++ "source": "iana"
++ },
++ "audio/aptx": {
++ "source": "iana"
++ },
++ "audio/asc": {
++ "source": "iana"
++ },
++ "audio/atrac-advanced-lossless": {
++ "source": "iana"
++ },
++ "audio/atrac-x": {
++ "source": "iana"
++ },
++ "audio/atrac3": {
++ "source": "iana"
++ },
++ "audio/basic": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["au","snd"]
++ },
++ "audio/bv16": {
++ "source": "iana"
++ },
++ "audio/bv32": {
++ "source": "iana"
++ },
++ "audio/clearmode": {
++ "source": "iana"
++ },
++ "audio/cn": {
++ "source": "iana"
++ },
++ "audio/dat12": {
++ "source": "iana"
++ },
++ "audio/dls": {
++ "source": "iana"
++ },
++ "audio/dsr-es201108": {
++ "source": "iana"
++ },
++ "audio/dsr-es202050": {
++ "source": "iana"
++ },
++ "audio/dsr-es202211": {
++ "source": "iana"
++ },
++ "audio/dsr-es202212": {
++ "source": "iana"
++ },
++ "audio/dv": {
++ "source": "iana"
++ },
++ "audio/dvi4": {
++ "source": "iana"
++ },
++ "audio/eac3": {
++ "source": "iana"
++ },
++ "audio/encaprtp": {
++ "source": "iana"
++ },
++ "audio/evrc": {
++ "source": "iana"
++ },
++ "audio/evrc-qcp": {
++ "source": "iana"
++ },
++ "audio/evrc0": {
++ "source": "iana"
++ },
++ "audio/evrc1": {
++ "source": "iana"
++ },
++ "audio/evrcb": {
++ "source": "iana"
++ },
++ "audio/evrcb0": {
++ "source": "iana"
++ },
++ "audio/evrcb1": {
++ "source": "iana"
++ },
++ "audio/evrcnw": {
++ "source": "iana"
++ },
++ "audio/evrcnw0": {
++ "source": "iana"
++ },
++ "audio/evrcnw1": {
++ "source": "iana"
++ },
++ "audio/evrcwb": {
++ "source": "iana"
++ },
++ "audio/evrcwb0": {
++ "source": "iana"
++ },
++ "audio/evrcwb1": {
++ "source": "iana"
++ },
++ "audio/example": {
++ "source": "iana"
++ },
++ "audio/fwdred": {
++ "source": "iana"
++ },
++ "audio/g719": {
++ "source": "iana"
++ },
++ "audio/g721": {
++ "source": "iana"
++ },
++ "audio/g722": {
++ "source": "iana"
++ },
++ "audio/g7221": {
++ "source": "apache"
++ },
++ "audio/g723": {
++ "source": "iana"
++ },
++ "audio/g726-16": {
++ "source": "iana"
++ },
++ "audio/g726-24": {
++ "source": "iana"
++ },
++ "audio/g726-32": {
++ "source": "iana"
++ },
++ "audio/g726-40": {
++ "source": "iana"
++ },
++ "audio/g728": {
++ "source": "iana"
++ },
++ "audio/g729": {
++ "source": "iana"
++ },
++ "audio/g7291": {
++ "source": "iana"
++ },
++ "audio/g729d": {
++ "source": "iana"
++ },
++ "audio/g729e": {
++ "source": "iana"
++ },
++ "audio/gsm": {
++ "source": "iana"
++ },
++ "audio/gsm-efr": {
++ "source": "iana"
++ },
++ "audio/gsm-hr-08": {
++ "source": "iana"
++ },
++ "audio/ilbc": {
++ "source": "iana"
++ },
++ "audio/ip-mr_v2.5": {
++ "source": "iana"
++ },
++ "audio/isac": {
++ "source": "apache"
++ },
++ "audio/l16": {
++ "source": "iana"
++ },
++ "audio/l20": {
++ "source": "iana"
++ },
++ "audio/l24": {
++ "source": "iana",
++ "compressible": false
++ },
++ "audio/l8": {
++ "source": "iana"
++ },
++ "audio/lpc": {
++ "source": "iana"
++ },
++ "audio/midi": {
++ "source": "apache",
++ "extensions": ["mid","midi","kar","rmi"]
++ },
++ "audio/mobile-xmf": {
++ "source": "iana"
++ },
++ "audio/mp4": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["mp4a","m4a"]
++ },
++ "audio/mp4a-latm": {
++ "source": "iana"
++ },
++ "audio/mpa": {
++ "source": "iana"
++ },
++ "audio/mpa-robust": {
++ "source": "iana"
++ },
++ "audio/mpeg": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["mpga","mp2","mp2a","mp3","m2a","m3a"]
++ },
++ "audio/mpeg4-generic": {
++ "source": "iana"
++ },
++ "audio/musepack": {
++ "source": "apache"
++ },
++ "audio/ogg": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["oga","ogg","spx"]
++ },
++ "audio/opus": {
++ "source": "apache"
++ },
++ "audio/parityfec": {
++ "source": "iana"
++ },
++ "audio/pcma": {
++ "source": "iana"
++ },
++ "audio/pcma-wb": {
++ "source": "iana"
++ },
++ "audio/pcmu": {
++ "source": "iana"
++ },
++ "audio/pcmu-wb": {
++ "source": "iana"
++ },
++ "audio/prs.sid": {
++ "source": "iana"
++ },
++ "audio/qcelp": {
++ "source": "iana"
++ },
++ "audio/raptorfec": {
++ "source": "iana"
++ },
++ "audio/red": {
++ "source": "iana"
++ },
++ "audio/rtp-enc-aescm128": {
++ "source": "iana"
++ },
++ "audio/rtp-midi": {
++ "source": "iana"
++ },
++ "audio/rtploopback": {
++ "source": "iana"
++ },
++ "audio/rtx": {
++ "source": "iana"
++ },
++ "audio/s3m": {
++ "source": "apache",
++ "extensions": ["s3m"]
++ },
++ "audio/silk": {
++ "source": "apache",
++ "extensions": ["sil"]
++ },
++ "audio/smv": {
++ "source": "iana"
++ },
++ "audio/smv-qcp": {
++ "source": "iana"
++ },
++ "audio/smv0": {
++ "source": "iana"
++ },
++ "audio/sp-midi": {
++ "source": "iana"
++ },
++ "audio/speex": {
++ "source": "iana"
++ },
++ "audio/t140c": {
++ "source": "iana"
++ },
++ "audio/t38": {
++ "source": "iana"
++ },
++ "audio/telephone-event": {
++ "source": "iana"
++ },
++ "audio/tone": {
++ "source": "iana"
++ },
++ "audio/uemclip": {
++ "source": "iana"
++ },
++ "audio/ulpfec": {
++ "source": "iana"
++ },
++ "audio/vdvi": {
++ "source": "iana"
++ },
++ "audio/vmr-wb": {
++ "source": "iana"
++ },
++ "audio/vnd.3gpp.iufp": {
++ "source": "iana"
++ },
++ "audio/vnd.4sb": {
++ "source": "iana"
++ },
++ "audio/vnd.audiokoz": {
++ "source": "iana"
++ },
++ "audio/vnd.celp": {
++ "source": "iana"
++ },
++ "audio/vnd.cisco.nse": {
++ "source": "iana"
++ },
++ "audio/vnd.cmles.radio-events": {
++ "source": "iana"
++ },
++ "audio/vnd.cns.anp1": {
++ "source": "iana"
++ },
++ "audio/vnd.cns.inf1": {
++ "source": "iana"
++ },
++ "audio/vnd.dece.audio": {
++ "source": "iana",
++ "extensions": ["uva","uvva"]
++ },
++ "audio/vnd.digital-winds": {
++ "source": "iana",
++ "extensions": ["eol"]
++ },
++ "audio/vnd.dlna.adts": {
++ "source": "iana"
++ },
++ "audio/vnd.dolby.heaac.1": {
++ "source": "iana"
++ },
++ "audio/vnd.dolby.heaac.2": {
++ "source": "iana"
++ },
++ "audio/vnd.dolby.mlp": {
++ "source": "iana"
++ },
++ "audio/vnd.dolby.mps": {
++ "source": "iana"
++ },
++ "audio/vnd.dolby.pl2": {
++ "source": "iana"
++ },
++ "audio/vnd.dolby.pl2x": {
++ "source": "iana"
++ },
++ "audio/vnd.dolby.pl2z": {
++ "source": "iana"
++ },
++ "audio/vnd.dolby.pulse.1": {
++ "source": "iana"
++ },
++ "audio/vnd.dra": {
++ "source": "iana",
++ "extensions": ["dra"]
++ },
++ "audio/vnd.dts": {
++ "source": "iana",
++ "extensions": ["dts"]
++ },
++ "audio/vnd.dts.hd": {
++ "source": "iana",
++ "extensions": ["dtshd"]
++ },
++ "audio/vnd.dvb.file": {
++ "source": "iana"
++ },
++ "audio/vnd.everad.plj": {
++ "source": "iana"
++ },
++ "audio/vnd.hns.audio": {
++ "source": "iana"
++ },
++ "audio/vnd.lucent.voice": {
++ "source": "iana",
++ "extensions": ["lvp"]
++ },
++ "audio/vnd.ms-playready.media.pya": {
++ "source": "iana",
++ "extensions": ["pya"]
++ },
++ "audio/vnd.nokia.mobile-xmf": {
++ "source": "iana"
++ },
++ "audio/vnd.nortel.vbk": {
++ "source": "iana"
++ },
++ "audio/vnd.nuera.ecelp4800": {
++ "source": "iana",
++ "extensions": ["ecelp4800"]
++ },
++ "audio/vnd.nuera.ecelp7470": {
++ "source": "iana",
++ "extensions": ["ecelp7470"]
++ },
++ "audio/vnd.nuera.ecelp9600": {
++ "source": "iana",
++ "extensions": ["ecelp9600"]
++ },
++ "audio/vnd.octel.sbc": {
++ "source": "iana"
++ },
++ "audio/vnd.qcelp": {
++ "source": "iana"
++ },
++ "audio/vnd.rhetorex.32kadpcm": {
++ "source": "iana"
++ },
++ "audio/vnd.rip": {
++ "source": "iana",
++ "extensions": ["rip"]
++ },
++ "audio/vnd.rn-realaudio": {
++ "compressible": false
++ },
++ "audio/vnd.sealedmedia.softseal-mpeg": {
++ "source": "iana"
++ },
++ "audio/vnd.sealedmedia.softseal.mpeg": {
++ "source": "apache"
++ },
++ "audio/vnd.vmx.cvsd": {
++ "source": "iana"
++ },
++ "audio/vnd.wave": {
++ "compressible": false
++ },
++ "audio/vorbis": {
++ "source": "iana",
++ "compressible": false
++ },
++ "audio/vorbis-config": {
++ "source": "iana"
++ },
++ "audio/webm": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["weba"]
++ },
++ "audio/x-aac": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["aac"]
++ },
++ "audio/x-aiff": {
++ "source": "apache",
++ "extensions": ["aif","aiff","aifc"]
++ },
++ "audio/x-caf": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["caf"]
++ },
++ "audio/x-flac": {
++ "source": "apache",
++ "extensions": ["flac"]
++ },
++ "audio/x-matroska": {
++ "source": "apache",
++ "extensions": ["mka"]
++ },
++ "audio/x-mpegurl": {
++ "source": "apache",
++ "extensions": ["m3u"]
++ },
++ "audio/x-ms-wax": {
++ "source": "apache",
++ "extensions": ["wax"]
++ },
++ "audio/x-ms-wma": {
++ "source": "apache",
++ "extensions": ["wma"]
++ },
++ "audio/x-pn-realaudio": {
++ "source": "apache",
++ "extensions": ["ram","ra"]
++ },
++ "audio/x-pn-realaudio-plugin": {
++ "source": "apache",
++ "extensions": ["rmp"]
++ },
++ "audio/x-tta": {
++ "source": "apache"
++ },
++ "audio/x-wav": {
++ "source": "apache",
++ "extensions": ["wav"]
++ },
++ "audio/xm": {
++ "source": "apache",
++ "extensions": ["xm"]
++ },
++ "chemical/x-cdx": {
++ "source": "apache",
++ "extensions": ["cdx"]
++ },
++ "chemical/x-cif": {
++ "source": "apache",
++ "extensions": ["cif"]
++ },
++ "chemical/x-cmdf": {
++ "source": "apache",
++ "extensions": ["cmdf"]
++ },
++ "chemical/x-cml": {
++ "source": "apache",
++ "extensions": ["cml"]
++ },
++ "chemical/x-csml": {
++ "source": "apache",
++ "extensions": ["csml"]
++ },
++ "chemical/x-pdb": {
++ "source": "apache"
++ },
++ "chemical/x-xyz": {
++ "source": "apache",
++ "extensions": ["xyz"]
++ },
++ "font/opentype": {
++ "compressible": true,
++ "extensions": ["otf"]
++ },
++ "image/bmp": {
++ "source": "apache",
++ "compressible": true,
++ "extensions": ["bmp"]
++ },
++ "image/cgm": {
++ "source": "iana",
++ "extensions": ["cgm"]
++ },
++ "image/example": {
++ "source": "iana"
++ },
++ "image/fits": {
++ "source": "iana"
++ },
++ "image/g3fax": {
++ "source": "iana",
++ "extensions": ["g3"]
++ },
++ "image/gif": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["gif"]
++ },
++ "image/ief": {
++ "source": "iana",
++ "extensions": ["ief"]
++ },
++ "image/jp2": {
++ "source": "iana"
++ },
++ "image/jpeg": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["jpeg","jpg","jpe"]
++ },
++ "image/jpm": {
++ "source": "iana"
++ },
++ "image/jpx": {
++ "source": "iana"
++ },
++ "image/ktx": {
++ "source": "iana",
++ "extensions": ["ktx"]
++ },
++ "image/naplps": {
++ "source": "iana"
++ },
++ "image/pjpeg": {
++ "compressible": false
++ },
++ "image/png": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["png"]
++ },
++ "image/prs.btif": {
++ "source": "iana",
++ "extensions": ["btif"]
++ },
++ "image/prs.pti": {
++ "source": "iana"
++ },
++ "image/pwg-raster": {
++ "source": "iana"
++ },
++ "image/sgi": {
++ "source": "apache",
++ "extensions": ["sgi"]
++ },
++ "image/svg+xml": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["svg","svgz"]
++ },
++ "image/t38": {
++ "source": "iana"
++ },
++ "image/tiff": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["tiff","tif"]
++ },
++ "image/tiff-fx": {
++ "source": "iana"
++ },
++ "image/vnd-djvu": {
++ "source": "iana"
++ },
++ "image/vnd-svf": {
++ "source": "iana"
++ },
++ "image/vnd-wap-wbmp": {
++ "source": "iana"
++ },
++ "image/vnd.adobe.photoshop": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["psd"]
++ },
++ "image/vnd.airzip.accelerator.azv": {
++ "source": "iana"
++ },
++ "image/vnd.cns.inf2": {
++ "source": "iana"
++ },
++ "image/vnd.dece.graphic": {
++ "source": "iana",
++ "extensions": ["uvi","uvvi","uvg","uvvg"]
++ },
++ "image/vnd.djvu": {
++ "source": "apache",
++ "extensions": ["djvu","djv"]
++ },
++ "image/vnd.dvb.subtitle": {
++ "source": "iana",
++ "extensions": ["sub"]
++ },
++ "image/vnd.dwg": {
++ "source": "iana",
++ "extensions": ["dwg"]
++ },
++ "image/vnd.dxf": {
++ "source": "iana",
++ "extensions": ["dxf"]
++ },
++ "image/vnd.fastbidsheet": {
++ "source": "iana",
++ "extensions": ["fbs"]
++ },
++ "image/vnd.fpx": {
++ "source": "iana",
++ "extensions": ["fpx"]
++ },
++ "image/vnd.fst": {
++ "source": "iana",
++ "extensions": ["fst"]
++ },
++ "image/vnd.fujixerox.edmics-mmr": {
++ "source": "iana",
++ "extensions": ["mmr"]
++ },
++ "image/vnd.fujixerox.edmics-rlc": {
++ "source": "iana",
++ "extensions": ["rlc"]
++ },
++ "image/vnd.globalgraphics.pgb": {
++ "source": "iana"
++ },
++ "image/vnd.microsoft.icon": {
++ "source": "iana"
++ },
++ "image/vnd.mix": {
++ "source": "iana"
++ },
++ "image/vnd.ms-modi": {
++ "source": "iana",
++ "extensions": ["mdi"]
++ },
++ "image/vnd.ms-photo": {
++ "source": "apache",
++ "extensions": ["wdp"]
++ },
++ "image/vnd.net-fpx": {
++ "source": "iana",
++ "extensions": ["npx"]
++ },
++ "image/vnd.radiance": {
++ "source": "iana"
++ },
++ "image/vnd.sealed-png": {
++ "source": "iana"
++ },
++ "image/vnd.sealed.png": {
++ "source": "apache"
++ },
++ "image/vnd.sealedmedia.softseal-gif": {
++ "source": "iana"
++ },
++ "image/vnd.sealedmedia.softseal-jpg": {
++ "source": "iana"
++ },
++ "image/vnd.sealedmedia.softseal.gif": {
++ "source": "apache"
++ },
++ "image/vnd.sealedmedia.softseal.jpg": {
++ "source": "apache"
++ },
++ "image/vnd.svf": {
++ "source": "apache"
++ },
++ "image/vnd.tencent.tap": {
++ "source": "iana"
++ },
++ "image/vnd.valve.source.texture": {
++ "source": "iana"
++ },
++ "image/vnd.wap.wbmp": {
++ "source": "apache",
++ "extensions": ["wbmp"]
++ },
++ "image/vnd.xiff": {
++ "source": "iana",
++ "extensions": ["xif"]
++ },
++ "image/webp": {
++ "source": "apache",
++ "extensions": ["webp"]
++ },
++ "image/x-3ds": {
++ "source": "apache",
++ "extensions": ["3ds"]
++ },
++ "image/x-cmu-raster": {
++ "source": "apache",
++ "extensions": ["ras"]
++ },
++ "image/x-cmx": {
++ "source": "apache",
++ "extensions": ["cmx"]
++ },
++ "image/x-freehand": {
++ "source": "apache",
++ "extensions": ["fh","fhc","fh4","fh5","fh7"]
++ },
++ "image/x-icon": {
++ "source": "apache",
++ "compressible": true,
++ "extensions": ["ico"]
++ },
++ "image/x-mrsid-image": {
++ "source": "apache",
++ "extensions": ["sid"]
++ },
++ "image/x-pcx": {
++ "source": "apache",
++ "extensions": ["pcx"]
++ },
++ "image/x-pict": {
++ "source": "apache",
++ "extensions": ["pic","pct"]
++ },
++ "image/x-portable-anymap": {
++ "source": "apache",
++ "extensions": ["pnm"]
++ },
++ "image/x-portable-bitmap": {
++ "source": "apache",
++ "extensions": ["pbm"]
++ },
++ "image/x-portable-graymap": {
++ "source": "apache",
++ "extensions": ["pgm"]
++ },
++ "image/x-portable-pixmap": {
++ "source": "apache",
++ "extensions": ["ppm"]
++ },
++ "image/x-rgb": {
++ "source": "apache",
++ "extensions": ["rgb"]
++ },
++ "image/x-tga": {
++ "source": "apache",
++ "extensions": ["tga"]
++ },
++ "image/x-xbitmap": {
++ "source": "apache",
++ "extensions": ["xbm"]
++ },
++ "image/x-xcf": {
++ "compressible": false
++ },
++ "image/x-xpixmap": {
++ "source": "apache",
++ "extensions": ["xpm"]
++ },
++ "image/x-xwindowdump": {
++ "source": "apache",
++ "extensions": ["xwd"]
++ },
++ "message/cpim": {
++ "source": "iana"
++ },
++ "message/delivery-status": {
++ "source": "iana"
++ },
++ "message/disposition-notification": {
++ "source": "iana"
++ },
++ "message/example": {
++ "source": "iana"
++ },
++ "message/external-body": {
++ "source": "iana"
++ },
++ "message/feedback-report": {
++ "source": "iana"
++ },
++ "message/global": {
++ "source": "iana"
++ },
++ "message/global-delivery-status": {
++ "source": "iana"
++ },
++ "message/global-disposition-notification": {
++ "source": "iana"
++ },
++ "message/global-headers": {
++ "source": "iana"
++ },
++ "message/http": {
++ "source": "iana",
++ "compressible": false
++ },
++ "message/imdn+xml": {
++ "source": "iana",
++ "compressible": true
++ },
++ "message/news": {
++ "source": "iana"
++ },
++ "message/partial": {
++ "source": "iana",
++ "compressible": false
++ },
++ "message/rfc822": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["eml","mime"]
++ },
++ "message/s-http": {
++ "source": "iana"
++ },
++ "message/sip": {
++ "source": "iana"
++ },
++ "message/sipfrag": {
++ "source": "iana"
++ },
++ "message/tracking-status": {
++ "source": "iana"
++ },
++ "message/vnd.si.simp": {
++ "source": "iana"
++ },
++ "message/vnd.wfa.wsc": {
++ "source": "iana"
++ },
++ "model/example": {
++ "source": "iana",
++ "compressible": false
++ },
++ "model/iges": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["igs","iges"]
++ },
++ "model/mesh": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["msh","mesh","silo"]
++ },
++ "model/vnd-dwf": {
++ "source": "iana"
++ },
++ "model/vnd.collada+xml": {
++ "source": "iana",
++ "extensions": ["dae"]
++ },
++ "model/vnd.dwf": {
++ "source": "apache",
++ "extensions": ["dwf"]
++ },
++ "model/vnd.flatland.3dml": {
++ "source": "iana"
++ },
++ "model/vnd.gdl": {
++ "source": "iana",
++ "extensions": ["gdl"]
++ },
++ "model/vnd.gs-gdl": {
++ "source": "iana"
++ },
++ "model/vnd.gs.gdl": {
++ "source": "apache"
++ },
++ "model/vnd.gtw": {
++ "source": "iana",
++ "extensions": ["gtw"]
++ },
++ "model/vnd.moml+xml": {
++ "source": "iana"
++ },
++ "model/vnd.mts": {
++ "source": "iana",
++ "extensions": ["mts"]
++ },
++ "model/vnd.opengex": {
++ "source": "iana"
++ },
++ "model/vnd.parasolid.transmit-binary": {
++ "source": "iana"
++ },
++ "model/vnd.parasolid.transmit-text": {
++ "source": "iana"
++ },
++ "model/vnd.parasolid.transmit.binary": {
++ "source": "apache"
++ },
++ "model/vnd.parasolid.transmit.text": {
++ "source": "apache"
++ },
++ "model/vnd.valve.source.compiled-map": {
++ "source": "iana"
++ },
++ "model/vnd.vtu": {
++ "source": "iana",
++ "extensions": ["vtu"]
++ },
++ "model/vrml": {
++ "source": "iana",
++ "compressible": false,
++ "extensions": ["wrl","vrml"]
++ },
++ "model/x3d+binary": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["x3db","x3dbz"]
++ },
++ "model/x3d+fastinfoset": {
++ "source": "iana"
++ },
++ "model/x3d+vrml": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["x3dv","x3dvz"]
++ },
++ "model/x3d+xml": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["x3d","x3dz"]
++ },
++ "model/x3d-vrml": {
++ "source": "iana"
++ },
++ "multipart/alternative": {
++ "source": "iana",
++ "compressible": false
++ },
++ "multipart/appledouble": {
++ "source": "iana"
++ },
++ "multipart/byteranges": {
++ "source": "iana"
++ },
++ "multipart/digest": {
++ "source": "iana"
++ },
++ "multipart/encrypted": {
++ "source": "iana",
++ "compressible": false
++ },
++ "multipart/example": {
++ "source": "iana"
++ },
++ "multipart/form-data": {
++ "source": "iana",
++ "compressible": false
++ },
++ "multipart/header-set": {
++ "source": "iana"
++ },
++ "multipart/mixed": {
++ "source": "iana",
++ "compressible": false
++ },
++ "multipart/parallel": {
++ "source": "iana"
++ },
++ "multipart/related": {
++ "source": "iana",
++ "compressible": false
++ },
++ "multipart/report": {
++ "source": "iana"
++ },
++ "multipart/signed": {
++ "source": "iana",
++ "compressible": false
++ },
++ "multipart/voice-message": {
++ "source": "iana"
++ },
++ "multipart/x-mixed-replace": {
++ "source": "iana"
++ },
++ "text/1d-interleaved-parityfec": {
++ "source": "iana"
++ },
++ "text/cache-manifest": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["appcache","manifest"]
++ },
++ "text/calendar": {
++ "source": "iana",
++ "extensions": ["ics","ifb"]
++ },
++ "text/calender": {
++ "compressible": true
++ },
++ "text/cmd": {
++ "compressible": true
++ },
++ "text/coffeescript": {
++ "extensions": ["coffee"]
++ },
++ "text/css": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["css"]
++ },
++ "text/csv": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["csv"]
++ },
++ "text/directory": {
++ "source": "iana"
++ },
++ "text/dns": {
++ "source": "iana"
++ },
++ "text/ecmascript": {
++ "source": "iana"
++ },
++ "text/encaprtp": {
++ "source": "iana"
++ },
++ "text/enriched": {
++ "source": "iana"
++ },
++ "text/example": {
++ "source": "iana"
++ },
++ "text/fwdred": {
++ "source": "iana"
++ },
++ "text/grammar-ref-list": {
++ "source": "iana"
++ },
++ "text/html": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["html","htm"]
++ },
++ "text/jade": {
++ "extensions": ["jade"]
++ },
++ "text/javascript": {
++ "source": "iana",
++ "compressible": true
++ },
++ "text/jcr-cnd": {
++ "source": "iana"
++ },
++ "text/jsx": {
++ "compressible": true,
++ "extensions": ["jsx"]
++ },
++ "text/less": {
++ "extensions": ["less"]
++ },
++ "text/mizar": {
++ "source": "iana"
++ },
++ "text/n3": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["n3"]
++ },
++ "text/parameters": {
++ "source": "iana"
++ },
++ "text/parityfec": {
++ "source": "iana"
++ },
++ "text/plain": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["txt","text","conf","def","list","log","in","ini"]
++ },
++ "text/provenance-notation": {
++ "source": "iana"
++ },
++ "text/prs.fallenstein.rst": {
++ "source": "iana"
++ },
++ "text/prs.lines.tag": {
++ "source": "iana",
++ "extensions": ["dsc"]
++ },
++ "text/raptorfec": {
++ "source": "iana"
++ },
++ "text/red": {
++ "source": "iana"
++ },
++ "text/rfc822-headers": {
++ "source": "iana"
++ },
++ "text/richtext": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["rtx"]
++ },
++ "text/rtf": {
++ "source": "iana"
++ },
++ "text/rtp-enc-aescm128": {
++ "source": "iana"
++ },
++ "text/rtploopback": {
++ "source": "iana"
++ },
++ "text/rtx": {
++ "source": "iana"
++ },
++ "text/sgml": {
++ "source": "iana",
++ "extensions": ["sgml","sgm"]
++ },
++ "text/stylus": {
++ "extensions": ["stylus","styl"]
++ },
++ "text/t140": {
++ "source": "iana"
++ },
++ "text/tab-separated-values": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["tsv"]
++ },
++ "text/troff": {
++ "source": "iana",
++ "extensions": ["t","tr","roff","man","me","ms"]
++ },
++ "text/turtle": {
++ "source": "iana",
++ "extensions": ["ttl"]
++ },
++ "text/ulpfec": {
++ "source": "iana"
++ },
++ "text/uri-list": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["uri","uris","urls"]
++ },
++ "text/vcard": {
++ "source": "iana",
++ "compressible": true,
++ "extensions": ["vcard"]
++ },
++ "text/vnd-a": {
++ "source": "iana"
++ },
++ "text/vnd-curl": {
++ "source": "iana"
++ },
++ "text/vnd.abc": {
++ "source": "iana"
++ },
++ "text/vnd.curl": {
++ "source": "apache",
++ "extensions": ["curl"]
++ },
++ "text/vnd.curl.dcurl": {
++ "source": "apache",
++ "extensions": ["dcurl"]
++ },
++ "text/vnd.curl.mcurl": {
++ "source": "apache",
++ "extensions": ["mcurl"]
++ },
++ "text/vnd.curl.scurl": {
++ "source": "apache",
++ "extensions": ["scurl"]
++ },
++ "text/vnd.debian.copyright": {
++ "source": "iana"
++ },
++ "text/vnd.dmclientscript": {
++ "source": "iana"
++ },
++ "text/vnd.dvb.subtitle": {
++ "source": "iana",
++ "extensions": ["sub"]
++ },
++ "text/vnd.esmertec.theme-descriptor": {
++ "source": "iana"
++ },
++ "text/vnd.fly": {
++ "source": "iana",
++ "extensions": ["fly"]
++ },
++ "text/vnd.fmi.flexstor": {
++ "source": "iana",
++ "extensions": ["flx"]
++ },
++ "text/vnd.graphviz": {
++ "source": "iana",
++ "extensions": ["gv"]
++ },
++ "text/vnd.in3d.3dml": {
++ "source": "iana",
++ "extensions": ["3dml"]
++ },
++ "text/vnd.in3d.spot": {
++ "source": "iana",
++ "extensions": ["spot"]
++ },
++ "text/vnd.iptc.newsml": {
++ "source": "iana"
++ },
++ "text/vnd.iptc.nitf": {
++ "source": "iana"
++ },
++ "text/vnd.latex-z": {
++ "source": "iana"
++ },
++ "text/vnd.motorola.reflex": {
++ "source": "iana"
++ },
++ "text/vnd.ms-mediapackage": {
++ "source": "iana"
++ },
++ "text/vnd.net2phone.commcenter.command": {
++ "source": "iana"
++ },
++ "text/vnd.radisys.msml-basic-layout": {
++ "source": "iana"
++ },
++ "text/vnd.si.uricatalogue": {
++ "source": "iana"
++ },
++ "text/vnd.sun.j2me.app-descriptor": {
++ "source": "iana",
++ "extensions": ["jad"]
++ },
++ "text/vnd.trolltech.linguist": {
++ "source": "iana"
++ },
++ "text/vnd.wap-wml": {
++ "source": "iana"
++ },
++ "text/vnd.wap.si": {
++ "source": "iana"
++ },
++ "text/vnd.wap.sl": {
++ "source": "iana"
++ },
++ "text/vnd.wap.wml": {
++ "source": "apache",
++ "extensions": ["wml"]
++ },
++ "text/vnd.wap.wmlscript": {
++ "source": "iana",
++ "extensions": ["wmls"]
++ },
++ "text/vtt": {
++ "charset": "UTF-8",
++ "compressible": true,
++ "extensions": ["vtt"]
++ },
++ "text/x-asm": {
++ "source": "apache",
++ "extensions": ["s","asm"]
++ },
++ "text/x-c": {
++ "source": "apache",
++ "extensions": ["c","cc","cxx","cpp","h","hh","dic"]
++ },
++ "text/x-component": {
++ "extensions": ["htc"]
++ },
++ "text/x-fortran": {
++ "source": "apache",
++ "extensions": ["f","for","f77","f90"]
++ },
++ "text/x-gwt-rpc": {
++ "compressible": true
++ },
++ "text/x-handlebars-template": {
++ "extensions": ["hbs"]
++ },
++ "text/x-java-source": {
++ "source": "apache",
++ "extensions": ["java"]
++ },
++ "text/x-jquery-tmpl": {
++ "compressible": true
++ },
++ "text/x-lua": {
++ "extensions": ["lua"]
++ },
++ "text/x-markdown": {
++ "compressible": true,
++ "extensions": ["markdown","md","mkd"]
++ },
++ "text/x-nfo": {
++ "source": "apache",
++ "extensions": ["nfo"]
++ },
++ "text/x-opml": {
++ "source": "apache",
++ "extensions": ["opml"]
++ },
++ "text/x-pascal": {
++ "source": "apache",
++ "extensions": ["p","pas"]
++ },
++ "text/x-sass": {
++ "extensions": ["sass"]
++ },
++ "text/x-scss": {
++ "extensions": ["scss"]
++ },
++ "text/x-setext": {
++ "source": "apache",
++ "extensions": ["etx"]
++ },
++ "text/x-sfv": {
++ "source": "apache",
++ "extensions": ["sfv"]
++ },
++ "text/x-uuencode": {
++ "source": "apache",
++ "extensions": ["uu"]
++ },
++ "text/x-vcalendar": {
++ "source": "apache",
++ "extensions": ["vcs"]
++ },
++ "text/x-vcard": {
++ "source": "apache",
++ "extensions": ["vcf"]
++ },
++ "text/xml": {
++ "source": "iana",
++ "compressible": true
++ },
++ "text/xml-external-parsed-entity": {
++ "source": "iana"
++ },
++ "video/1d-interleaved-parityfec": {
++ "source": "apache"
++ },
++ "video/3gpp": {
++ "source": "apache",
++ "extensions": ["3gp"]
++ },
++ "video/3gpp-tt": {
++ "source": "apache"
++ },
++ "video/3gpp2": {
++ "source": "apache",
++ "extensions": ["3g2"]
++ },
++ "video/bmpeg": {
++ "source": "apache"
++ },
++ "video/bt656": {
++ "source": "apache"
++ },
++ "video/celb": {
++ "source": "apache"
++ },
++ "video/dv": {
++ "source": "apache"
++ },
++ "video/example": {
++ "source": "apache"
++ },
++ "video/h261": {
++ "source": "apache",
++ "extensions": ["h261"]
++ },
++ "video/h263": {
++ "source": "apache",
++ "extensions": ["h263"]
++ },
++ "video/h263-1998": {
++ "source": "apache"
++ },
++ "video/h263-2000": {
++ "source": "apache"
++ },
++ "video/h264": {
++ "source": "apache",
++ "extensions": ["h264"]
++ },
++ "video/h264-rcdo": {
++ "source": "apache"
++ },
++ "video/h264-svc": {
++ "source": "apache"
++ },
++ "video/jpeg": {
++ "source": "apache",
++ "extensions": ["jpgv"]
++ },
++ "video/jpeg2000": {
++ "source": "apache"
++ },
++ "video/jpm": {
++ "source": "apache",
++ "extensions": ["jpm","jpgm"]
++ },
++ "video/mj2": {
++ "source": "apache",
++ "extensions": ["mj2","mjp2"]
++ },
++ "video/mp1s": {
++ "source": "apache"
++ },
++ "video/mp2p": {
++ "source": "apache"
++ },
++ "video/mp2t": {
++ "source": "apache",
++ "extensions": ["ts"]
++ },
++ "video/mp4": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["mp4","mp4v","mpg4"]
++ },
++ "video/mp4v-es": {
++ "source": "apache"
++ },
++ "video/mpeg": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["mpeg","mpg","mpe","m1v","m2v"]
++ },
++ "video/mpeg4-generic": {
++ "source": "apache"
++ },
++ "video/mpv": {
++ "source": "apache"
++ },
++ "video/nv": {
++ "source": "apache"
++ },
++ "video/ogg": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["ogv"]
++ },
++ "video/parityfec": {
++ "source": "apache"
++ },
++ "video/pointer": {
++ "source": "apache"
++ },
++ "video/quicktime": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["qt","mov"]
++ },
++ "video/raw": {
++ "source": "apache"
++ },
++ "video/rtp-enc-aescm128": {
++ "source": "apache"
++ },
++ "video/rtx": {
++ "source": "apache"
++ },
++ "video/smpte292m": {
++ "source": "apache"
++ },
++ "video/ulpfec": {
++ "source": "apache"
++ },
++ "video/vc1": {
++ "source": "apache"
++ },
++ "video/vnd.cctv": {
++ "source": "apache"
++ },
++ "video/vnd.dece.hd": {
++ "source": "apache",
++ "extensions": ["uvh","uvvh"]
++ },
++ "video/vnd.dece.mobile": {
++ "source": "apache",
++ "extensions": ["uvm","uvvm"]
++ },
++ "video/vnd.dece.mp4": {
++ "source": "apache"
++ },
++ "video/vnd.dece.pd": {
++ "source": "apache",
++ "extensions": ["uvp","uvvp"]
++ },
++ "video/vnd.dece.sd": {
++ "source": "apache",
++ "extensions": ["uvs","uvvs"]
++ },
++ "video/vnd.dece.video": {
++ "source": "apache",
++ "extensions": ["uvv","uvvv"]
++ },
++ "video/vnd.directv.mpeg": {
++ "source": "apache"
++ },
++ "video/vnd.directv.mpeg-tts": {
++ "source": "apache"
++ },
++ "video/vnd.dlna.mpeg-tts": {
++ "source": "apache"
++ },
++ "video/vnd.dvb.file": {
++ "source": "apache",
++ "extensions": ["dvb"]
++ },
++ "video/vnd.fvt": {
++ "source": "apache",
++ "extensions": ["fvt"]
++ },
++ "video/vnd.hns.video": {
++ "source": "apache"
++ },
++ "video/vnd.iptvforum.1dparityfec-1010": {
++ "source": "apache"
++ },
++ "video/vnd.iptvforum.1dparityfec-2005": {
++ "source": "apache"
++ },
++ "video/vnd.iptvforum.2dparityfec-1010": {
++ "source": "apache"
++ },
++ "video/vnd.iptvforum.2dparityfec-2005": {
++ "source": "apache"
++ },
++ "video/vnd.iptvforum.ttsavc": {
++ "source": "apache"
++ },
++ "video/vnd.iptvforum.ttsmpeg2": {
++ "source": "apache"
++ },
++ "video/vnd.motorola.video": {
++ "source": "apache"
++ },
++ "video/vnd.motorola.videop": {
++ "source": "apache"
++ },
++ "video/vnd.mpegurl": {
++ "source": "apache",
++ "extensions": ["mxu","m4u"]
++ },
++ "video/vnd.ms-playready.media.pyv": {
++ "source": "apache",
++ "extensions": ["pyv"]
++ },
++ "video/vnd.nokia.interleaved-multimedia": {
++ "source": "apache"
++ },
++ "video/vnd.nokia.videovoip": {
++ "source": "apache"
++ },
++ "video/vnd.objectvideo": {
++ "source": "apache"
++ },
++ "video/vnd.sealed.mpeg1": {
++ "source": "apache"
++ },
++ "video/vnd.sealed.mpeg4": {
++ "source": "apache"
++ },
++ "video/vnd.sealed.swf": {
++ "source": "apache"
++ },
++ "video/vnd.sealedmedia.softseal.mov": {
++ "source": "apache"
++ },
++ "video/vnd.uvvu.mp4": {
++ "source": "apache",
++ "extensions": ["uvu","uvvu"]
++ },
++ "video/vnd.vivo": {
++ "source": "apache",
++ "extensions": ["viv"]
++ },
++ "video/webm": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["webm"]
++ },
++ "video/x-f4v": {
++ "source": "apache",
++ "extensions": ["f4v"]
++ },
++ "video/x-fli": {
++ "source": "apache",
++ "extensions": ["fli"]
++ },
++ "video/x-flv": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["flv"]
++ },
++ "video/x-m4v": {
++ "source": "apache",
++ "extensions": ["m4v"]
++ },
++ "video/x-matroska": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["mkv","mk3d","mks"]
++ },
++ "video/x-mng": {
++ "source": "apache",
++ "extensions": ["mng"]
++ },
++ "video/x-ms-asf": {
++ "source": "apache",
++ "extensions": ["asf","asx"]
++ },
++ "video/x-ms-vob": {
++ "source": "apache",
++ "extensions": ["vob"]
++ },
++ "video/x-ms-wm": {
++ "source": "apache",
++ "extensions": ["wm"]
++ },
++ "video/x-ms-wmv": {
++ "source": "apache",
++ "compressible": false,
++ "extensions": ["wmv"]
++ },
++ "video/x-ms-wmx": {
++ "source": "apache",
++ "extensions": ["wmx"]
++ },
++ "video/x-ms-wvx": {
++ "source": "apache",
++ "extensions": ["wvx"]
++ },
++ "video/x-msvideo": {
++ "source": "apache",
++ "extensions": ["avi"]
++ },
++ "video/x-sgi-movie": {
++ "source": "apache",
++ "extensions": ["movie"]
++ },
++ "video/x-smv": {
++ "source": "apache",
++ "extensions": ["smv"]
++ },
++ "x-conference/x-cooltalk": {
++ "source": "apache",
++ "extensions": ["ice"]
++ },
++ "x-shader/x-fragment": {
++ "compressible": true
++ },
++ "x-shader/x-vertex": {
++ "compressible": true
++ }
++}
+--- /dev/null
++++ b/node_modules/mime-db/index.js
+@@ -0,0 +1,11 @@
++/*!
++ * mime-db
++ * Copyright(c) 2014 Jonathan Ong
++ * MIT Licensed
++ */
++
++/**
++ * Module exports.
++ */
++
++module.exports = require('./db.json')
+--- /dev/null
++++ b/node_modules/mime-db/lib/charsets.json
+@@ -0,0 +1,5 @@
++{
++ "application/json": "UTF-8",
++ "application/javascript": "UTF-8",
++ "text/vtt": "UTF-8"
++}
+--- /dev/null
++++ b/node_modules/mime-db/lib/compressible.json
+@@ -0,0 +1,500 @@
++{
++ "+json": {
++ "compressible": true,
++ "notes": "+json means it is JSON, which is compressible."
++ },
++ "application/atom+xml": {
++ "compressible": true,
++ "sources": [
++ "http://en.wikipedia.org/wiki/Atom_(standard)"
++ ]
++ },
++ "application/dart": {
++ "compressible": true
++ },
++ "application/edi-x12": {
++ "compressible": false
++ },
++ "application/edifact": {
++ "compressible": false
++ },
++ "application/ecmascript": {
++ "compressible": true
++ },
++ "application/font-woff": {
++ "compressible": false,
++ "sources": [
++ "https://github.com/h5bp/server-configs-apache/issues/42"
++ ],
++ "notes": "File type is already compressed."
++ },
++ "application/font-woff2": {
++ "compressible": false,
++ "sources": [
++ "http://dev.w3.org/webfonts/WOFF2/spec/#IMT"
++ ],
++ "notes": "File type is already compressed."
++ },
++ "application/gzip": {
++ "compressible": false
++ },
++ "application/java-archive": {
++ "compressible": false
++ },
++ "application/java-serialized-object": {
++ "compressible": false
++ },
++ "application/java-vm": {
++ "compressible": false
++ },
++ "application/javascript": {
++ "compressible": true
++ },
++ "application/json": {
++ "compressible": true
++ },
++ "application/msword": {
++ "compressible": false
++ },
++ "application/octet-stream": {
++ "compressible": false,
++ "sources": [
++ "https://github.com/broofa/node-mime/blob/master/types/mime.types#L154"
++ ]
++ },
++ "application/ogg": {
++ "compressible": false
++ },
++ "application/pdf": {
++ "compressible": false
++ },
++ "application/pgp-encrypted": {
++ "compressible": false
++ },
++ "application/postscript": {
++ "compressible": true
++ },
++ "application/rdf+xml": {
++ "compressible": true,
++ "sources": [
++ "http://en.wikipedia.org/wiki/RDF/XML"
++ ]
++ },
++ "application/rss+xml": {
++ "compressible": true
++ },
++ "application/rtf": {
++ "compressible": true
++ },
++ "application/soap+xml": {
++ "compressible": true,
++ "sources": [
++ "http://en.wikipedia.org/wiki/SOAP"
++ ]
++ },
++ "application/tar": {
++ "compressible": true
++ },
++ "application/vnd.android.package-archive": {
++ "compressible": false
++ },
++ "application/vnd.dart": {
++ "compressible": true
++ },
++ "application/vnd.google-earth.kml+xml": {
++ "compressible": true,
++ "sources": [
++ "https://developers.google.com/kml/documentation/kml_tut"
++ ]
++ },
++ "application/vnd.google-earth.kmz": {
++ "compressible": false
++ },
++ "application/vnd.mozilla.xul+xml": {
++ "compressible": true,
++ "sources": [
++ "http://en.wikipedia.org/wiki/XUL"
++ ]
++ },
++ "application/vnd.ms-excel": {
++ "compressible": false
++ },
++ "application/vnd.ms-fontobject": {
++ "compressible": true,
++ "sources": [
++ "http://www.phpied.com/gzip-your-font-face-files/"
++ ]
++ },
++ "application/vnd.ms-opentype": {
++ "compressible": true,
++ "sources": [
++ "http://www.phpied.com/gzip-your-font-face-files/"
++ ]
++ },
++ "application/vnd.ms-powerpoint": {
++ "compressible": false
++ },
++ "application/vnd.ms-xpsdocument": {
++ "compressible": false
++ },
++ "application/vnd.oasis.opendocument.graphics": {
++ "compressible": false
++ },
++ "application/vnd.oasis.opendocument.presentation": {
++ "compressible": false
++ },
++ "application/vnd.oasis.opendocument.spreadsheet": {
++ "compressible": false
++ },
++ "application/vnd.oasis.opendocument.text": {
++ "compressible": false,
++ "sources": [
++ "http://en.wikipedia.org/wiki/OpenDocument_technical_specification#File_types"
++ ]
++ },
++ "application/vnd.openxmlformats-officedocument.presentationml.presentation": {
++ "compressible": false
++ },
++ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": {
++ "compressible": false
++ },
++ "application/vnd.openxmlformats-officedocument.wordprocessingml.document": {
++ "compressible": false
++ },
++ "application/x-7z-compressed": {
++ "compressible": false
++ },
++ "application/x-bzip": {
++ "compressible": false
++ },
++ "application/x-bzip2": {
++ "compressible": false
++ },
++ "application/x-deb": {
++ "compressible": false
++ },
++ "application/x-dvi": {
++ "compressible": false
++ },
++ "application/x-font-otf": {
++ "compressible": true,
++ "sources": [
++ "http://www.phpied.com/gzip-your-font-face-files/"
++ ]
++ },
++ "application/x-font-ttf": {
++ "compressible": true,
++ "sources": [
++ "http://www.phpied.com/gzip-your-font-face-files/"
++ ]
++ },
++ "application/x-java-jnlp-file": {
++ "compressible": false
++ },
++ "application/x-javascript": {
++ "compressible": true
++ },
++ "application/x-latex": {
++ "compressible": false
++ },
++ "application/x-mpegurl": {
++ "compressible": false
++ },
++ "application/x-pkcs12": {
++ "compressible": false
++ },
++ "application/x-rar-compressed": {
++ "compressible": false
++ },
++ "application/x-sh": {
++ "compressible": true
++ },
++ "application/x-shockwave-flash": {
++ "compressible": false
++ },
++ "application/x-stuffit": {
++ "compressible": false
++ },
++ "application/x-tar": {
++ "compressible": true
++ },
++ "application/x-www-form-urlencode": {
++ "compressible": false
++ },
++ "application/x-xpinstall": {
++ "compressible": false
++ },
++ "application/xhtml+xml": {
++ "compressible": true
++ },
++ "application/xml": {
++ "compressible": true
++ },
++ "application/xml-dtd": {
++ "compressible": true,
++ "sources": [
++ "http://en.wikipedia.org/wiki/Document_type_definition"
++ ]
++ },
++ "application/xop+xml": {
++ "compressible": true
++ },
++ "application/zip": {
++ "compressible": false
++ },
++ "audio/l24": {
++ "compressible": false
++ },
++ "audio/basic": {
++ "compressible": false
++ },
++ "audio/mp4": {
++ "compressible": false
++ },
++ "audio/mpeg": {
++ "compressible": false
++ },
++ "audio/ogg": {
++ "compressible": false
++ },
++ "audio/vnd.rn-realaudio": {
++ "compressible": false
++ },
++ "audio/vnd.wave": {
++ "compressible": false
++ },
++ "audio/vorbis": {
++ "compressible": false
++ },
++ "audio/webm": {
++ "compressible": false
++ },
++ "audio/x-aac": {
++ "compressible": false
++ },
++ "audio/x-caf": {
++ "compressible": false
++ },
++ "font/opentype": {
++ "compressible": true,
++ "sources": [
++ "http://www.phpied.com/gzip-your-font-face-files/"
++ ]
++ },
++ "image/bmp": {
++ "compressible": true,
++ "sources": [
++ "http://stackoverflow.com/a/12770116"
++ ]
++ },
++ "image/gif": {
++ "compressible": false
++ },
++ "image/jpeg": {
++ "compressible": false
++ },
++ "image/pjpeg": {
++ "compressible": false
++ },
++ "image/png": {
++ "compressible": false
++ },
++ "image/svg+xml": {
++ "compressible": true
++ },
++ "image/tiff": {
++ "compressible": false,
++ "sources": [
++ "http://stackoverflow.com/a/12770116"
++ ],
++ "notes": "Gains insignificant in testing."
++ },
++ "image/vnd.adobe.photoshop": {
++ "compressible": true
++ },
++ "image/x-icon": {
++ "compressible": true,
++ "sources": [
++ "http://en.wikipedia.org/wiki/ICO_(file_format)"
++ ],
++ "notes": "Usually a wrapper for .bmp formated images."
++ },
++ "image/x-xcf": {
++ "compressible": false
++ },
++ "message/http": {
++ "compressible": false,
++ "sources": [
++ "http://stackoverflow.com/a/1450163"
++ ],
++ "notes": "It is safest to leave these uncompressed."
++ },
++ "message/imdn+xml": {
++ "compressible": true,
++ "sources": [
++ "http://tools.ietf.org/html/rfc5438"
++ ]
++ },
++ "message/partial": {
++ "compressible": false
++ },
++ "message/rfc822": {
++ "compressible": true,
++ "sources": [
++ "http://en.wikipedia.org/wiki/MIME#Multipart_subtypes"
++ ]
++ },
++ "model/example": {
++ "compressible": false
++ },
++ "model/iges": {
++ "compressible": false
++ },
++ "model/mesh": {
++ "compressible": false
++ },
++ "model/vrml": {
++ "compressible": false
++ },
++ "model/x3d+binary": {
++ "compressible": false
++ },
++ "model/x3d+vrml": {
++ "compressible": false
++ },
++ "model/x3d+xml": {
++ "compressible": true,
++ "sources": [
++ "http://edutechwiki.unige.ch/en/X3D_file_structure"
++ ]
++ },
++ "multipart/alternative": {
++ "compressible": false
++ },
++ "multipart/encrypted": {
++ "compressible": false
++ },
++ "multipart/form-data": {
++ "compressible": false
++ },
++ "multipart/mixed": {
++ "compressible": false
++ },
++ "multipart/related": {
++ "compressible": false
++ },
++ "multipart/signed": {
++ "compressible": false
++ },
++ "text/cache-manifest": {
++ "compressible": true,
++ "sources": [
++ "https://bugzilla.mozilla.org/show_bug.cgi?id=715191#c2"
++ ],
++ "notes": "I think so."
++ },
++ "text/calender": {
++ "compressible": true,
++ "sources": [
++ "http://en.wikipedia.org/wiki/ICalendar"
++ ],
++ "notes": "Probably needs to be uncompressed before sent to iCalender."
++ },
++ "text/cmd": {
++ "compressible": true
++ },
++ "text/css": {
++ "compressible": true
++ },
++ "text/csv": {
++ "compressible": true
++ },
++ "text/html": {
++ "compressible": true
++ },
++ "text/javascript": {
++ "compressible": true
++ },
++ "text/jsx": {
++ "compressible": true,
++ "sources": [
++ "http://facebook.github.io/react/docs/getting-started.html"
++ ]
++ },
++ "text/n3": {
++ "compressible": true,
++ "sources": [
++ "http://en.wikipedia.org/wiki/Notation3"
++ ]
++ },
++ "text/plain": {
++ "compressible": true
++ },
++ "text/richtext": {
++ "compressible": true
++ },
++ "text/tab-separated-values": {
++ "compressible": true
++ },
++ "text/uri-list": {
++ "compressible": true
++ },
++ "text/vcard": {
++ "compressible": true
++ },
++ "text/vtt": {
++ "compressible": true,
++ "sources": [
++ "http://tools.ietf.org/html/draft-pantos-http-live-streaming-13"
++ ]
++ },
++ "text/x-gwt-rpc": {
++ "compressible": true
++ },
++ "text/x-jquery-tmpl": {
++ "compressible": true
++ },
++ "text/x-markdown": {
++ "compressible": true
++ },
++ "text/xml": {
++ "compressible": true
++ },
++ "video/mp4": {
++ "compressible": false
++ },
++ "video/mpeg": {
++ "compressible": false
++ },
++ "video/ogg": {
++ "compressible": false
++ },
++ "video/quicktime": {
++ "compressible": false
++ },
++ "video/webm": {
++ "compressible": false
++ },
++ "video/x-flv": {
++ "compressible": false
++ },
++ "video/x-matroska": {
++ "compressible": false
++ },
++ "video/x-ms-wmv": {
++ "compressible": false
++ },
++ "x-shader/x-fragment": {
++ "compressible": true,
++ "sources": [
++ "https://developer.mozilla.org/en-US/docs/Web/WebGL/Adding_2D_content_to_a_WebGL_context",
++ "https://bugzilla.mozilla.org/show_bug.cgi?id=715191#c2"
++ ]
++ },
++ "x-shader/x-vertex": {
++ "compressible": true,
++ "sources": [
++ "https://developer.mozilla.org/en-US/docs/Web/WebGL/Adding_2D_content_to_a_WebGL_context"
++ ]
++ }
++}
+--- /dev/null
++++ b/node_modules/mime-db/lib/extensions.json
+@@ -0,0 +1,30 @@
++{
++ "application/font-woff2": [
++ "woff2"
++ ],
++ "text/jade": [
++ "jade"
++ ],
++ "text/stylus": [
++ "stylus",
++ "styl"
++ ],
++ "text/less": [
++ "less"
++ ],
++ "text/x-sass": [
++ "sass"
++ ],
++ "text/x-scss": [
++ "scss"
++ ],
++ "text/coffeescript": [
++ "coffee"
++ ],
++ "text/x-handlebars-template": [
++ "hbs"
++ ],
++ "text/jsx": [
++ "jsx"
++ ]
++}
+--- /dev/null
++++ b/node_modules/mime-db/package.json
+@@ -0,0 +1,46 @@
++{
++ "name": "mime-db",
++ "description": "Media Type Database",
++ "version": "1.1.0",
++ "author": {
++ "name": "Jonathan Ong",
++ "email": "me at jongleberry.com",
++ "url": "http://jongleberry.com",
++ "twitter": "https://twitter.com/jongleberry"
++ },
++ "license": "MIT",
++ "repository": "jshttp/mime-db",
++ "devDependencies": {
++ "co": "3",
++ "cogent": "1",
++ "csv-parse": "0",
++ "gnode": "0.1.0",
++ "istanbul": "0.3.2",
++ "mocha": "~1.21.4",
++ "stream-to-array": "2"
++ },
++ "engines": {
++ "node": ">= 0.6"
++ },
++ "files": [
++ "LICENSE",
++ "db.json",
++ "index.js"
++ ],
++ "scripts": {
++ "update": "gnode scripts/extensions && gnode scripts/types && node scripts/build",
++ "clean": "rm src/*",
++ "test": "mocha --reporter spec --bail --check-leaks test/",
++ "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/",
++ "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/"
++ },
++ "keywords": [
++ "mime",
++ "db",
++ "type",
++ "types",
++ "database",
++ "charset",
++ "charsets"
++ ]
++}
+--- /dev/null
++++ b/node_modules/mime-db/scripts/build.js
+@@ -0,0 +1,87 @@
++
++var db = {}
++
++// initialize with all the IANA types
++require('../src/iana.json').forEach(function (mime) {
++ // i don't think the name is useful,
++ // and i don't think we need to bother with the "Reference"
++ // just look at the site yourself!
++
++ var name = mime[0]
++ var template = mime[1]
++ // for some reason, references are split into multiple values...
++ var type = mime[mime.length - 1]
++
++ if (!template) {
++ // some types don't have a template, so we guess it
++ console.log('guessing: %s/%s', type, name)
++ template = type + '/' + name
++ }
++
++ if (!~template.indexOf('/')) {
++ // i don't know what templates exactly are,
++ // but some aren't valid mime types.
++ console.log('prefixing: %s/%s', type, template)
++ template = type + '/' + template
++ }
++
++ db[template.toLowerCase()] = {
++ source: 'iana'
++ }
++})
++
++// add the mime extensions from Apache
++var mime = require('../src/mime.json')
++Object.keys(mime).forEach(function (type) {
++ var e = mime[type]
++ var t = type.toLowerCase()
++ var o = db[t] = db[t] || {source: 'apache'}
++ if (e.length) o.extensions = (o.extensions || []).concat(e)
++})
++
++// add all of node mime's mime extensions
++// though i think we should just put this in `types.json`
++var mime = require('../src/node.json')
++Object.keys(mime).forEach(function (type) {
++ var e = mime[type]
++ var t = type.toLowerCase()
++ var o = db[t] = db[t] || {}
++ if (e.length) o.extensions = (o.extensions || []).concat(e)
++})
++
++// now add all our custom extensions
++var mime = require('../lib/extensions.json')
++Object.keys(mime).forEach(function (type) {
++ var e = mime[type]
++ var t = type.toLowerCase()
++ var o = db[t] = db[t] || {}
++ if (e.length) o.extensions = (o.extensions || []).concat(e)
++})
++
++// add all the compressible metadata
++var mime = require('../lib/compressible.json')
++Object.keys(mime).sort().forEach(function (type) {
++ var e = mime[type]
++ var t = type.toLowerCase()
++
++ if (type[0] === '+') {
++ // suffix handling
++ Object.keys(db).forEach(function (type) {
++ if (type.substr(0 - t.length) !== t) return
++ db[type].compressible = e.compressible
++ })
++ return
++ }
++
++ var o = db[t] = db[t] || {}
++ o.compressible = e.compressible
++})
++
++// set the default charsets
++var charsets = require('../lib/charsets')
++Object.keys(charsets).forEach(function (name) {
++ db[name].charset = charsets[name]
++})
++
++// write db
++require('./lib/write-db')('db.json', db)
+--- /dev/null
++++ b/node_modules/mime-db/scripts/extensions.js
+@@ -0,0 +1,53 @@
++
++/**
++ * Convert these text files to JSON for browser usage.
++ */
++
++var co = require('co')
++var fs = require('fs')
++var path = require('path')
++var cogent = require('cogent')
++
++co(function* () {
++ yield [
++ get('http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types'),
++ get('https://raw.githubusercontent.com/broofa/node-mime/master/types/node.types')
++ ]
++})()
++
++function* get(url) {
++ var res = yield* cogent(url, {
++ string: true
++ })
++
++ if (res.statusCode !== 200)
++ throw new Error('got status code ' + res.statusCode + ' from ' + url)
++
++ var text = res.text
++ var json = {}
++ // http://en.wikipedia.org/wiki/Internet_media_type#Naming
++ /**
++ * Mime types and associated extensions are stored in the form:
++ *
++ * <type> <ext> <ext> <ext>
++ *
++ * And some are commented out with a leading `#` because they have no associated extensions.
++ * This regexp checks whether a single line matches this format, ignoring lines that are just comments.
++ * We could also just remove all lines that start with `#` if we want to make the JSON files smaller
++ * and ignore all mime types without associated extensions.
++ */
++ var re = /^(?:# )?([\w-]+\/[\w\+\.-]+)(?:\s+\w+)*$/
++ text = text.split('\n')
++ .filter(Boolean)
++ .forEach(function (line) {
++ line = line.trim()
++ if (!line) return
++ var match = re.exec(line)
++ if (!match) return
++ // remove the leading # and <type> and return all the <ext>s
++ json[match[1]] = line.replace(/^(?:# )?([\w-]+\/[\w\+\.-]+)/, '')
++ .split(/\s+/)
++ .filter(Boolean)
++ })
++ fs.writeFileSync('src/' + path.basename(url).split('.')[0] + '.json', JSON.stringify(json))
++}
+--- /dev/null
++++ b/node_modules/mime-db/scripts/lib/write-db.js
+@@ -0,0 +1,43 @@
++
++var fs = require('fs')
++
++module.exports = function writeDatabaseSync(fileName, obj) {
++ var fd = fs.openSync(fileName, 'w')
++ var keys = Object.keys(obj).sort()
++
++ fs.writeSync(fd, '{\n');
++
++ keys.forEach(function (key, i, arr) {
++ fs.writeSync(fd, ' ' + JSON.stringify(key) + ': {\n');
++
++ var end = endLine.apply(this, arguments)
++ var data = obj[key]
++ var keys = Object.keys(data).sort(sortDataKeys)
++
++ keys.forEach(function (key, i, arr) {
++ var end = endLine.apply(this, arguments)
++ fs.writeSync(fd, ' ' + JSON.stringify(key) + ': ' + JSON.stringify(data[key]) + end);
++ })
++
++ fs.writeSync(fd, ' }' + end);
++ })
++
++ fs.writeSync(fd, '}\n');
++
++ fs.closeSync(fd);
++};
++
++function endLine(key, i, arr) {
++ var comma = i + 1 === arr.length
++ ? ''
++ : ','
++ return comma + '\n'
++}
++
++function sortDataKeys(a, b) {
++ var cmp = a.localeCompare(b)
++
++ return a !== 'source' || !cmp
++ ? cmp
++ : -1
++}
+--- /dev/null
++++ b/node_modules/mime-db/scripts/types.js
+@@ -0,0 +1,42 @@
++
++/**
++ * Convert the IANA definitions from CSV to local.
++ */
++
++var co = require('co')
++var fs = require('fs')
++var cogent = require('cogent')
++var parser = require('csv-parse')
++var toArray = require('stream-to-array')
++
++co(function* () {
++ var results = yield [
++ get('application'),
++ get('audio'),
++ get('image'),
++ get('message'),
++ get('model'),
++ get('multipart'),
++ get('text'),
++ get('audio'),
++ ]
++
++ fs.writeFileSync('src/iana.json', JSON.stringify(results.reduce(concat, [])))
++})()
++
++function* get(type) {
++ var res = yield* cogent('http://www.iana.org/assignments/media-types/' + type + '.csv')
++ if (res.statusCode !== 200)
++ throw new Error('got status code ' + res.statusCode + ' from ' + type)
++
++ var mimes = yield toArray(res.pipe(parser()))
++ mimes.shift() // remove the header
++ return mimes.map(function (mime) {
++ mime.push(type)
++ return mime
++ })
++}
++
++function concat(a, b) {
++ return a.concat(b)
++}
+--- /dev/null
++++ b/node_modules/mime-db/src/iana.json
+@@ -0,0 +1 @@
++[["1d-interleaved-parityfec","application/1d-interleaved-parityfec","[RFC6015]","application"],["3gpdash-qoe-report+xml","application/3gpdash-qoe-report+xml","[Ozgur_Oyman][ThreeGPP]","application"],["3gpp-ims+xml","application/3gpp-ims+xml","[John_M_Meredith]","application"],["activemessage","application/activemessage","[Ehud_Shapiro]","application"],["activemessage","application/activemessage","[Ehud_Shapiro]","application"],["alto-costmap+json","application/alto-costmap+json","[RFC72 [...]
+\ No newline at end of file
+--- /dev/null
++++ b/node_modules/mime-db/src/mime.json
+@@ -0,0 +1 @@
++{"application/1d-interleaved-parityfec":[],"application/3gpp-ims+xml":[],"application/activemessage":[],"application/andrew-inset":["ez"],"application/applefile":[],"application/applixware":["aw"],"application/atom+xml":["atom"],"application/atomcat+xml":["atomcat"],"application/atomicmail":[],"application/atomsvc+xml":["atomsvc"],"application/auth-policy+xml":[],"application/batch-smtp":[],"application/beep+xml":[],"application/calendar+xml":[],"application/cals-1840":[],"application/c [...]
+\ No newline at end of file
+--- /dev/null
++++ b/node_modules/mime-db/src/node.json
+@@ -0,0 +1 @@
++{"text/vtt":["vtt"],"application/x-chrome-extension":["crx"],"text/x-component":["htc"],"text/cache-manifest":["manifest"],"application/octet-stream":["buffer"],"application/mp4":["m4p"],"audio/mp4":["m4a"],"video/MP2T":["ts"],"application/x-web-app-manifest+json":["webapp"],"text/x-lua":["lua"],"application/x-lua-bytecode":["luac"],"text/x-markdown":["markdown","md","mkd"],"text/plain":["ini"],"application/dash+xml":["mdp"],"font/opentype":["otf"],"application/json":["map"],"applicatio [...]
+\ No newline at end of file
+--- /dev/null
++++ b/node_modules/mime-db/test/index.js
+@@ -0,0 +1,45 @@
++
++var assert = require('assert')
++
++var db = require('..')
++
++describe('mime-db', function () {
++ it('should all be mime types', function () {
++ assert(Object.keys(db).every(function (name) {
++ return ~name.indexOf('/') || console.log(name)
++ }))
++ })
++
++ it('should not have any uppercased letters in names', function () {
++ assert(Object.keys(db).every(function (name) {
++ return name === name.toLowerCase()
++ }))
++ })
++
++ it('should have .json and .js as having UTF-8 charsets', function () {
++ assert.equal('UTF-8', db['application/json'].charset)
++ assert.equal('UTF-8', db['application/javascript'].charset)
++ })
++
++ it('should set audio/x-flac with extension=flac', function () {
++ assert.equal('flac', db['audio/x-flac'].extensions[0])
++ })
++
++ it('should have guessed application/mathml+xml', function () {
++ // because it doesn't have a "template"
++ assert(db['application/mathml+xml'])
++ })
++
++ it('should not have an empty .extensions', function () {
++ assert(Object.keys(db).every(function (name) {
++ var mime = db[name]
++ if (!mime.extensions) return true
++ return mime.extensions.length
++ }))
++ })
++
++ it('should have the default .extension as the first', function () {
++assert.equal(db['text/plain'].extensions[0], 'txt')
++assert.equal(db['video/x-matroska'].extensions[0], 'mkv')
++ })
++})
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/node-mime-types.git
More information about the Pkg-javascript-commits
mailing list