You are here

class DrupalMap in Sophron 8

Class for mapping file extensions to MIME types.

This is Drupal's default map for MimeMap.

Hierarchy

  • class \Drupal\sophron\Map\DrupalMap extends \FileEye\MimeMap\Map\AbstractMap

Expanded class hierarchy of DrupalMap

2 files declare their use of DrupalMap
MimeMapManager.php in src/MimeMapManager.php
SophronApiTest.php in tests/src/Kernel/SophronApiTest.php

File

src/Map/DrupalMap.php, line 12

Namespace

Drupal\sophron\Map
View source
class DrupalMap extends AbstractMap {

  /**
   * Singleton instance.
   *
   * @var \FileEye\MimeMap\Map\AbstractMap
   */
  protected static $instance;

  /**
   * Returns this file's fully qualified filename.
   *
   * @return string
   *   The full file path of this file.
   */
  public function getFileName() {
    return __FILE__;
  }

  // @codingStandardsIgnoreStart
  // phpcs:disable

  /**
   * Mapping between file extensions and MIME types.
   *
   * The array has three main keys, 't' that stores MIME types, 'e' that map
   * file extensions to MIME types, and 'a' that store MIME type aliases.
   *
   * The entire map is created automatically by running
   *  $ fileeye-mimemap update --class=\Drupal\sophron\Map\DrupalMap --script=[PATH_TO_MODULE]/resources/drupal_map_build.yml
   * on the command line. The utility application fetches MimeMap's default
   * map, and integrates its definitions with the adjustments required to
   * match Drupal cores's settings.
   *
   * DO NOT CHANGE THE MAPPING ARRAY MANUALLY.
   *
   * @var array
   *
   * @internal
   */
  protected static $map = array(
    't' => array(
      'application/andrew-inset' => array(
        'desc' => array(
          0 => 'ATK inset',
          1 => 'ATK: Andrew Toolkit',
        ),
        'e' => array(
          0 => 'ez',
        ),
      ),
      'application/annodex' => array(
        'a' => array(
          0 => 'application/x-annodex',
        ),
        'desc' => array(
          0 => 'Annodex exchange format',
        ),
        'e' => array(
          0 => 'anx',
        ),
      ),
      'application/applixware' => array(
        'e' => array(
          0 => 'aw',
        ),
      ),
      'application/atom+xml' => array(
        'a' => array(
          0 => 'application/atom',
        ),
        'desc' => array(
          0 => 'Atom syndication feed',
        ),
        'e' => array(
          0 => 'atom',
        ),
      ),
      'application/atomcat+xml' => array(
        'e' => array(
          0 => 'atomcat',
        ),
      ),
      'application/atomserv+xml' => array(
        'e' => array(
          0 => 'atomsrv',
        ),
      ),
      'application/atomsvc+xml' => array(
        'e' => array(
          0 => 'atomsvc',
        ),
      ),
      'application/ccxml+xml' => array(
        'e' => array(
          0 => 'ccxml',
        ),
      ),
      'application/cdmi-capability' => array(
        'e' => array(
          0 => 'cdmia',
        ),
      ),
      'application/cdmi-container' => array(
        'e' => array(
          0 => 'cdmic',
        ),
      ),
      'application/cdmi-domain' => array(
        'e' => array(
          0 => 'cdmid',
        ),
      ),
      'application/cdmi-object' => array(
        'e' => array(
          0 => 'cdmio',
        ),
      ),
      'application/cdmi-queue' => array(
        'e' => array(
          0 => 'cdmiq',
        ),
      ),
      'application/cu-seeme' => array(
        'e' => array(
          0 => 'cu',
        ),
      ),
      'application/davmount+xml' => array(
        'e' => array(
          0 => 'davmount',
        ),
      ),
      'application/dicom' => array(
        'desc' => array(
          0 => 'DICOM image',
          1 => 'DICOM: Digital Imaging and Communications in Medicine',
        ),
        'e' => array(
          0 => 'dcm',
        ),
      ),
      'application/dsptype' => array(
        'e' => array(
          0 => 'tsp',
        ),
      ),
      'application/dssc+der' => array(
        'e' => array(
          0 => 'dssc',
        ),
      ),
      'application/dssc+xml' => array(
        'e' => array(
          0 => 'xdssc',
        ),
      ),
      'application/ecmascript' => array(
        'a' => array(
          0 => 'text/ecmascript',
        ),
        'desc' => array(
          0 => 'ECMAScript program',
        ),
        'e' => array(
          0 => 'ecma',
          1 => 'es',
        ),
      ),
      'application/emma+xml' => array(
        'e' => array(
          0 => 'emma',
        ),
      ),
      'application/epub+zip' => array(
        'desc' => array(
          0 => 'electronic book document',
        ),
        'e' => array(
          0 => 'epub',
        ),
      ),
      'application/exi' => array(
        'e' => array(
          0 => 'exi',
        ),
      ),
      'application/font-tdpfr' => array(
        'e' => array(
          0 => 'pfr',
        ),
      ),
      'application/geo+json' => array(
        'a' => array(
          0 => 'application/vnd.geo+json',
        ),
        'desc' => array(
          0 => 'GeoJSON geospatial data',
        ),
        'e' => array(
          0 => 'geojson',
          1 => 'geo.json',
        ),
      ),
      'application/gml+xml' => array(
        'desc' => array(
          0 => 'GML document',
          1 => 'GML: Geography Markup Language',
        ),
        'e' => array(
          0 => 'gml',
        ),
      ),
      'application/gnunet-directory' => array(
        'desc' => array(
          0 => 'GNUnet search file',
        ),
        'e' => array(
          0 => 'gnd',
        ),
      ),
      'application/gpx+xml' => array(
        'a' => array(
          0 => 'application/gpx',
          1 => 'application/x-gpx+xml',
          2 => 'application/x-gpx',
        ),
        'desc' => array(
          0 => 'GPX geographic data',
          1 => 'GPX: GPS Exchange Format',
        ),
        'e' => array(
          0 => 'gpx',
        ),
      ),
      'application/gxf' => array(
        'e' => array(
          0 => 'gxf',
        ),
      ),
      'application/gzip' => array(
        'a' => array(
          0 => 'application/x-gzip',
        ),
        'desc' => array(
          0 => 'Gzip archive',
        ),
        'e' => array(
          0 => 'gz',
        ),
      ),
      'application/hta' => array(
        'e' => array(
          0 => 'hta',
        ),
      ),
      'application/hyperstudio' => array(
        'e' => array(
          0 => 'stk',
        ),
      ),
      'application/illustrator' => array(
        'a' => array(
          0 => 'application/vnd.adobe.illustrator',
        ),
        'desc' => array(
          0 => 'Adobe Illustrator document',
        ),
        'e' => array(
          0 => 'ai',
        ),
      ),
      'application/inkml+xml' => array(
        'e' => array(
          0 => 'ink',
          1 => 'inkml',
        ),
      ),
      'application/ipfix' => array(
        'e' => array(
          0 => 'ipfix',
        ),
      ),
      'application/java-serialized-object' => array(
        'e' => array(
          0 => 'ser',
        ),
      ),
      'application/javascript' => array(
        'a' => array(
          0 => 'application/x-javascript',
          1 => 'text/javascript',
        ),
        'desc' => array(
          0 => 'JavaScript program',
        ),
        'e' => array(
          0 => 'js',
          1 => 'jsm',
          2 => 'mjs',
        ),
      ),
      'application/jrd+json' => array(
        'desc' => array(
          0 => 'JRD document',
          1 => 'JRD: JSON Resource Descriptor',
        ),
        'e' => array(
          0 => 'jrd',
        ),
      ),
      'application/json' => array(
        'desc' => array(
          0 => 'JSON document',
          1 => 'JSON: JavaScript Object Notation',
        ),
        'e' => array(
          0 => 'json',
        ),
      ),
      'application/json-patch+json' => array(
        'desc' => array(
          0 => 'JSON patch',
          1 => 'JSON: JavaScript Object Notation',
        ),
        'e' => array(
          0 => 'json-patch',
        ),
      ),
      'application/jsonml+json' => array(
        'e' => array(
          0 => 'jsonml',
        ),
      ),
      'application/ld+json' => array(
        'desc' => array(
          0 => 'JSON-LD document',
          1 => 'JSON-LD: JavaScript Object Notation for Linked Data',
        ),
        'e' => array(
          0 => 'jsonld',
        ),
      ),
      'application/lost+xml' => array(
        'e' => array(
          0 => 'lostxml',
        ),
      ),
      'application/mac-binhex40' => array(
        'e' => array(
          0 => 'hqx',
        ),
      ),
      'application/mac-compactpro' => array(
        'e' => array(
          0 => 'cpt',
        ),
      ),
      'application/mads+xml' => array(
        'e' => array(
          0 => 'mads',
        ),
      ),
      'application/marc' => array(
        'e' => array(
          0 => 'mrc',
        ),
      ),
      'application/marcxml+xml' => array(
        'e' => array(
          0 => 'mrcx',
        ),
      ),
      'application/mathematica' => array(
        'a' => array(
          0 => 'application/x-mathematica',
        ),
        'desc' => array(
          0 => 'Mathematica Notebook file',
        ),
        'e' => array(
          0 => 'ma',
          1 => 'nb',
          2 => 'mb',
        ),
      ),
      'application/mathml+xml' => array(
        'a' => array(
          0 => 'text/mathml',
        ),
        'desc' => array(
          0 => 'MathML document',
          1 => 'MathML: Mathematical Markup Language',
        ),
        'e' => array(
          0 => 'mathml',
          1 => 'mml',
        ),
      ),
      'application/mbox' => array(
        'desc' => array(
          0 => 'mailbox file',
        ),
        'e' => array(
          0 => 'mbox',
        ),
      ),
      'application/mediaservercontrol+xml' => array(
        'e' => array(
          0 => 'mscml',
        ),
      ),
      'application/metalink+xml' => array(
        'desc' => array(
          0 => 'Metalink file',
        ),
        'e' => array(
          0 => 'metalink',
        ),
      ),
      'application/metalink4+xml' => array(
        'desc' => array(
          0 => 'Metalink file',
        ),
        'e' => array(
          0 => 'meta4',
        ),
      ),
      'application/mets+xml' => array(
        'e' => array(
          0 => 'mets',
        ),
      ),
      'application/mods+xml' => array(
        'e' => array(
          0 => 'mods',
        ),
      ),
      'application/mp21' => array(
        'e' => array(
          0 => 'm21',
          1 => 'mp21',
        ),
      ),
      'application/mp4' => array(
        'e' => array(
          0 => 'mp4s',
        ),
      ),
      'application/msword' => array(
        'a' => array(
          0 => 'application/vnd.ms-word',
          1 => 'application/x-msword',
          2 => 'zz-application/zz-winassoc-doc',
        ),
        'desc' => array(
          0 => 'Word document',
        ),
        'e' => array(
          0 => 'doc',
          1 => 'dot',
        ),
      ),
      'application/msword-template' => array(
        'desc' => array(
          0 => 'Word template',
        ),
        'e' => array(
          0 => 'dot',
        ),
      ),
      'application/mxf' => array(
        'desc' => array(
          0 => 'MXF video',
          1 => 'MXF: Material Exchange Format',
        ),
        'e' => array(
          0 => 'mxf',
        ),
      ),
      'application/octet-stream' => array(
        'e' => array(
          0 => 'bin',
          1 => 'dms',
          2 => 'lrf',
          3 => 'mar',
          4 => 'so',
          5 => 'dist',
          6 => 'distz',
          7 => 'pkg',
          8 => 'bpk',
          9 => 'dump',
          10 => 'elc',
          11 => 'deploy',
        ),
      ),
      'application/oda' => array(
        'desc' => array(
          0 => 'ODA document',
          1 => 'ODA: Office Document Architecture',
        ),
        'e' => array(
          0 => 'oda',
        ),
      ),
      'application/oebps-package+xml' => array(
        'e' => array(
          0 => 'opf',
        ),
      ),
      'application/ogg' => array(
        'a' => array(
          0 => 'application/x-ogg',
        ),
        'desc' => array(
          0 => 'Ogg multimedia file',
        ),
        'e' => array(
          0 => 'ogx',
        ),
      ),
      'application/omdoc+xml' => array(
        'e' => array(
          0 => 'omdoc',
        ),
      ),
      'application/onenote' => array(
        'e' => array(
          0 => 'onetoc',
          1 => 'onetoc2',
          2 => 'onetmp',
          3 => 'onepkg',
        ),
      ),
      'application/owl+xml' => array(
        'desc' => array(
          0 => 'OWL XML file',
          1 => 'OWL: Web Ontology Language',
        ),
        'e' => array(
          0 => 'owx',
        ),
      ),
      'application/oxps' => array(
        'a' => array(
          0 => 'application/vnd.ms-xpsdocument',
          1 => 'application/xps',
        ),
        'desc' => array(
          0 => 'XPS document',
          1 => 'XPS: Open XML Paper Specification',
        ),
        'e' => array(
          0 => 'oxps',
          1 => 'xps',
        ),
      ),
      'application/patch-ops-error+xml' => array(
        'e' => array(
          0 => 'xer',
        ),
      ),
      'application/pdf' => array(
        'a' => array(
          0 => 'application/x-pdf',
          1 => 'image/pdf',
          2 => 'application/acrobat',
          3 => 'application/nappdf',
        ),
        'desc' => array(
          0 => 'PDF document',
          1 => 'PDF: Portable Document Format',
        ),
        'e' => array(
          0 => 'pdf',
        ),
      ),
      'application/pgp-encrypted' => array(
        'a' => array(
          0 => 'application/pgp',
        ),
        'desc' => array(
          0 => 'PGP/MIME-encrypted message header',
        ),
        'e' => array(
          0 => 'pgp',
          1 => 'gpg',
          2 => 'asc',
        ),
      ),
      'application/pgp-keys' => array(
        'desc' => array(
          0 => 'PGP keys',
          1 => 'PGP: Pretty Good Privacy',
        ),
        'e' => array(
          0 => 'skr',
          1 => 'pkr',
          2 => 'asc',
          3 => 'pgp',
          4 => 'gpg',
          5 => 'key',
        ),
      ),
      'application/pgp-signature' => array(
        'desc' => array(
          0 => 'detached OpenPGP signature',
        ),
        'e' => array(
          0 => 'asc',
          1 => 'sig',
          2 => 'pgp',
          3 => 'gpg',
        ),
      ),
      'application/pics-rules' => array(
        'e' => array(
          0 => 'prf',
        ),
      ),
      'application/pkcs10' => array(
        'desc' => array(
          0 => 'PKCS#10 certification request',
          1 => 'PKCS: Public-Key Cryptography Standards',
        ),
        'e' => array(
          0 => 'p10',
        ),
      ),
      'application/pkcs12' => array(
        'a' => array(
          0 => 'application/x-pkcs12',
        ),
        'desc' => array(
          0 => 'PKCS#12 certificate bundle',
          1 => 'PKCS: Public-Key Cryptography Standards',
        ),
        'e' => array(
          0 => 'p12',
          1 => 'pfx',
        ),
      ),
      'application/pkcs7-mime' => array(
        'desc' => array(
          0 => 'PKCS#7 file',
          1 => 'PKCS: Public-Key Cryptography Standards',
        ),
        'e' => array(
          0 => 'p7m',
          1 => 'p7c',
        ),
      ),
      'application/pkcs7-signature' => array(
        'desc' => array(
          0 => 'detached S/MIME signature',
          1 => 'S/MIME: Secure/Multipurpose Internet Mail Extensions',
        ),
        'e' => array(
          0 => 'p7s',
        ),
      ),
      'application/pkcs8' => array(
        'desc' => array(
          0 => 'PKCS#8 private key',
          1 => 'PKCS: Public-Key Cryptography Standards',
        ),
        'e' => array(
          0 => 'p8',
        ),
      ),
      'application/pkcs8-encrypted' => array(
        'desc' => array(
          0 => 'PKCS#8 private key (encrypted)',
          1 => 'PKCS: Public-Key Cryptography Standards',
        ),
        'e' => array(
          0 => 'p8e',
        ),
      ),
      'application/pkix-attr-cert' => array(
        'e' => array(
          0 => 'ac',
        ),
      ),
      'application/pkix-cert' => array(
        'desc' => array(
          0 => 'X.509 certificate',
        ),
        'e' => array(
          0 => 'cer',
        ),
      ),
      'application/pkix-crl' => array(
        'a' => array(
          0 => 'application/x-pkcs7-crl',
        ),
        'desc' => array(
          0 => 'certificate revocation list',
        ),
        'e' => array(
          0 => 'crl',
        ),
      ),
      'application/pkix-pkipath' => array(
        'desc' => array(
          0 => 'PkiPath certification path',
        ),
        'e' => array(
          0 => 'pkipath',
        ),
      ),
      'application/pkixcmp' => array(
        'e' => array(
          0 => 'pki',
        ),
      ),
      'application/pls+xml' => array(
        'e' => array(
          0 => 'pls',
        ),
      ),
      'application/postscript' => array(
        'desc' => array(
          0 => 'PostScript document',
        ),
        'e' => array(
          0 => 'ai',
          1 => 'eps',
          2 => 'ps',
        ),
      ),
      'application/prs.cww' => array(
        'e' => array(
          0 => 'cww',
        ),
      ),
      'application/pskc+xml' => array(
        'e' => array(
          0 => 'pskcxml',
        ),
      ),
      'application/ram' => array(
        'desc' => array(
          0 => 'RealMedia playlist',
        ),
        'e' => array(
          0 => 'ram',
        ),
      ),
      'application/raml+yaml' => array(
        'desc' => array(
          0 => 'RAML document',
          1 => 'RAML: RESTful API Modeling Language',
        ),
        'e' => array(
          0 => 'raml',
        ),
      ),
      'application/rdf+xml' => array(
        'a' => array(
          0 => 'text/rdf',
        ),
        'desc' => array(
          0 => 'RDF file',
          1 => 'RDF: Resource Description Framework',
        ),
        'e' => array(
          0 => 'rdf',
          1 => 'rdfs',
          2 => 'owl',
        ),
      ),
      'application/reginfo+xml' => array(
        'e' => array(
          0 => 'rif',
        ),
      ),
      'application/relax-ng-compact-syntax' => array(
        'a' => array(
          0 => 'application/x-rnc',
        ),
        'desc' => array(
          0 => 'RELAX NG XML schema',
          1 => 'RELAX NG: REgular LAnguage for XML Next Generation',
        ),
        'e' => array(
          0 => 'rnc',
        ),
      ),
      'application/resource-lists+xml' => array(
        'e' => array(
          0 => 'rl',
        ),
      ),
      'application/resource-lists-diff+xml' => array(
        'e' => array(
          0 => 'rld',
        ),
      ),
      'application/rls-services+xml' => array(
        'e' => array(
          0 => 'rs',
        ),
      ),
      'application/rpki-ghostbusters' => array(
        'e' => array(
          0 => 'gbr',
        ),
      ),
      'application/rpki-manifest' => array(
        'e' => array(
          0 => 'mft',
        ),
      ),
      'application/rpki-roa' => array(
        'e' => array(
          0 => 'roa',
        ),
      ),
      'application/rsd+xml' => array(
        'e' => array(
          0 => 'rsd',
        ),
      ),
      'application/rss+xml' => array(
        'a' => array(
          0 => 'text/rss',
        ),
        'desc' => array(
          0 => 'RSS summary',
          1 => 'RSS: RDF Site Summary',
        ),
        'e' => array(
          0 => 'rss',
        ),
      ),
      'application/rtf' => array(
        'a' => array(
          0 => 'text/rtf',
        ),
        'desc' => array(
          0 => 'RTF document',
          1 => 'RTF: Rich Text Format',
        ),
        'e' => array(
          0 => 'rtf',
        ),
      ),
      'application/sbml+xml' => array(
        'e' => array(
          0 => 'sbml',
        ),
      ),
      'application/scvp-cv-request' => array(
        'e' => array(
          0 => 'scq',
        ),
      ),
      'application/scvp-cv-response' => array(
        'e' => array(
          0 => 'scs',
        ),
      ),
      'application/scvp-vp-request' => array(
        'e' => array(
          0 => 'spq',
        ),
      ),
      'application/scvp-vp-response' => array(
        'e' => array(
          0 => 'spp',
        ),
      ),
      'application/sdp' => array(
        'a' => array(
          0 => 'application/x-sdp',
          1 => 'application/vnd.sdp',
        ),
        'desc' => array(
          0 => 'SDP multicast stream file',
          1 => 'SDP: Session Description Protocol',
        ),
        'e' => array(
          0 => 'sdp',
        ),
      ),
      'application/set-payment-initiation' => array(
        'e' => array(
          0 => 'setpay',
        ),
      ),
      'application/set-registration-initiation' => array(
        'e' => array(
          0 => 'setreg',
        ),
      ),
      'application/shf+xml' => array(
        'e' => array(
          0 => 'shf',
        ),
      ),
      'application/sieve' => array(
        'desc' => array(
          0 => 'Sieve mail filter script',
        ),
        'e' => array(
          0 => 'siv',
        ),
      ),
      'application/smil+xml' => array(
        'a' => array(
          0 => 'application/smil',
        ),
        'desc' => array(
          0 => 'SMIL document',
          1 => 'SMIL: Synchronized Multimedia Integration Language',
        ),
        'e' => array(
          0 => 'smi',
          1 => 'smil',
          2 => 'sml',
          3 => 'kino',
        ),
      ),
      'application/sparql-query' => array(
        'e' => array(
          0 => 'rq',
        ),
      ),
      'application/sparql-results+xml' => array(
        'e' => array(
          0 => 'srx',
        ),
      ),
      'application/sql' => array(
        'a' => array(
          0 => 'text/x-sql',
        ),
        'desc' => array(
          0 => 'SQL code',
        ),
        'e' => array(
          0 => 'sql',
        ),
      ),
      'application/srgs' => array(
        'e' => array(
          0 => 'gram',
        ),
      ),
      'application/srgs+xml' => array(
        'e' => array(
          0 => 'grxml',
        ),
      ),
      'application/sru+xml' => array(
        'e' => array(
          0 => 'sru',
        ),
      ),
      'application/ssdl+xml' => array(
        'e' => array(
          0 => 'ssdl',
        ),
      ),
      'application/ssml+xml' => array(
        'e' => array(
          0 => 'ssml',
        ),
      ),
      'application/tei+xml' => array(
        'e' => array(
          0 => 'tei',
          1 => 'teicorpus',
        ),
      ),
      'application/thraud+xml' => array(
        'e' => array(
          0 => 'tfi',
        ),
      ),
      'application/timestamped-data' => array(
        'e' => array(
          0 => 'tsd',
        ),
      ),
      'application/trig' => array(
        'a' => array(
          0 => 'application/x-trig',
        ),
        'desc' => array(
          0 => 'TriG RDF document',
          1 => 'TriG: TriG RDF Graph Triple Language',
        ),
        'e' => array(
          0 => 'trig',
        ),
      ),
      'application/vnd.3gpp.pic-bw-large' => array(
        'e' => array(
          0 => 'plb',
        ),
      ),
      'application/vnd.3gpp.pic-bw-small' => array(
        'e' => array(
          0 => 'psb',
        ),
      ),
      'application/vnd.3gpp.pic-bw-var' => array(
        'e' => array(
          0 => 'pvb',
        ),
      ),
      'application/vnd.3gpp2.tcap' => array(
        'e' => array(
          0 => 'tcap',
        ),
      ),
      'application/vnd.3m.post-it-notes' => array(
        'e' => array(
          0 => 'pwn',
        ),
      ),
      'application/vnd.accpac.simply.aso' => array(
        'e' => array(
          0 => 'aso',
        ),
      ),
      'application/vnd.accpac.simply.imp' => array(
        'e' => array(
          0 => 'imp',
        ),
      ),
      'application/vnd.acucobol' => array(
        'e' => array(
          0 => 'acu',
        ),
      ),
      'application/vnd.acucorp' => array(
        'e' => array(
          0 => 'atc',
          1 => 'acutc',
        ),
      ),
      'application/vnd.adobe.air-application-installer-package+zip' => array(
        'e' => array(
          0 => 'air',
        ),
      ),
      'application/vnd.adobe.flash.movie' => array(
        'a' => array(
          0 => 'application/x-shockwave-flash',
          1 => 'application/futuresplash',
        ),
        'desc' => array(
          0 => 'Shockwave Flash file',
        ),
        'e' => array(
          0 => 'swf',
          1 => 'spl',
          2 => 'swfl',
        ),
      ),
      'application/vnd.adobe.formscentral.fcdt' => array(
        'e' => array(
          0 => 'fcdt',
        ),
      ),
      'application/vnd.adobe.fxp' => array(
        'e' => array(
          0 => 'fxp',
          1 => 'fxpl',
        ),
      ),
      'application/vnd.adobe.xdp+xml' => array(
        'e' => array(
          0 => 'xdp',
        ),
      ),
      'application/vnd.adobe.xfdf' => array(
        'e' => array(
          0 => 'xfdf',
        ),
      ),
      'application/vnd.ahead.space' => array(
        'e' => array(
          0 => 'ahead',
        ),
      ),
      'application/vnd.airzip.filesecure.azf' => array(
        'e' => array(
          0 => 'azf',
        ),
      ),
      'application/vnd.airzip.filesecure.azs' => array(
        'e' => array(
          0 => 'azs',
        ),
      ),
      'application/vnd.amazon.ebook' => array(
        'e' => array(
          0 => 'azw',
        ),
      ),
      'application/vnd.amazon.mobi8-ebook' => array(
        'a' => array(
          0 => 'application/x-mobi8-ebook',
        ),
        'desc' => array(
          0 => 'Kindle book document',
        ),
        'e' => array(
          0 => 'azw3',
          1 => 'kfx',
        ),
      ),
      'application/vnd.americandynamics.acc' => array(
        'e' => array(
          0 => 'acc',
        ),
      ),
      'application/vnd.amiga.ami' => array(
        'e' => array(
          0 => 'ami',
        ),
      ),
      'application/vnd.android.package-archive' => array(
        'desc' => array(
          0 => 'Android package',
        ),
        'e' => array(
          0 => 'apk',
        ),
      ),
      'application/vnd.anser-web-certificate-issue-initiation' => array(
        'e' => array(
          0 => 'cii',
        ),
      ),
      'application/vnd.anser-web-funds-transfer-initiation' => array(
        'e' => array(
          0 => 'fti',
        ),
      ),
      'application/vnd.antix.game-component' => array(
        'e' => array(
          0 => 'atx',
        ),
      ),
      'application/vnd.appimage' => array(
        'desc' => array(
          0 => 'AppImage application bundle',
        ),
        'e' => array(
          0 => 'appimage',
        ),
      ),
      'application/vnd.apple.installer+xml' => array(
        'e' => array(
          0 => 'mpkg',
        ),
      ),
      'application/vnd.apple.mpegurl' => array(
        'desc' => array(
          0 => 'HTTP Live Streaming playlist',
        ),
        'e' => array(
          0 => 'm3u8',
          1 => 'm3u',
        ),
      ),
      'application/vnd.aristanetworks.swi' => array(
        'e' => array(
          0 => 'swi',
        ),
      ),
      'application/vnd.astraea-software.iota' => array(
        'e' => array(
          0 => 'iota',
        ),
      ),
      'application/vnd.audiograph' => array(
        'e' => array(
          0 => 'aep',
        ),
      ),
      'application/vnd.blueice.multipass' => array(
        'e' => array(
          0 => 'mpm',
        ),
      ),
      'application/vnd.bmi' => array(
        'e' => array(
          0 => 'bmi',
        ),
      ),
      'application/vnd.businessobjects' => array(
        'e' => array(
          0 => 'rep',
        ),
      ),
      'application/vnd.chemdraw+xml' => array(
        'e' => array(
          0 => 'cdxml',
        ),
      ),
      'application/vnd.chess-pgn' => array(
        'a' => array(
          0 => 'application/x-chess-pgn',
        ),
        'desc' => array(
          0 => 'PGN chess game notation',
          1 => 'PGN: Portable Game Notation',
        ),
        'e' => array(
          0 => 'pgn',
        ),
      ),
      'application/vnd.chipnuts.karaoke-mmd' => array(
        'e' => array(
          0 => 'mmd',
        ),
      ),
      'application/vnd.cinderella' => array(
        'e' => array(
          0 => 'cdy',
        ),
      ),
      'application/vnd.claymore' => array(
        'e' => array(
          0 => 'cla',
        ),
      ),
      'application/vnd.cloanto.rp9' => array(
        'e' => array(
          0 => 'rp9',
        ),
      ),
      'application/vnd.clonk.c4group' => array(
        'e' => array(
          0 => 'c4g',
          1 => 'c4d',
          2 => 'c4f',
          3 => 'c4p',
          4 => 'c4u',
        ),
      ),
      'application/vnd.cluetrust.cartomobile-config' => array(
        'e' => array(
          0 => 'c11amc',
        ),
      ),
      'application/vnd.cluetrust.cartomobile-config-pkg' => array(
        'e' => array(
          0 => 'c11amz',
        ),
      ),
      'application/vnd.coffeescript' => array(
        'desc' => array(
          0 => 'CoffeeScript document',
        ),
        'e' => array(
          0 => 'coffee',
        ),
      ),
      'application/vnd.comicbook+zip' => array(
        'a' => array(
          0 => 'application/x-cbz',
        ),
        'desc' => array(
          0 => 'comic book archive',
        ),
        'e' => array(
          0 => 'cbz',
        ),
      ),
      'application/vnd.comicbook-rar' => array(
        'a' => array(
          0 => 'application/x-cbr',
        ),
        'desc' => array(
          0 => 'comic book archive',
        ),
        'e' => array(
          0 => 'cbr',
          1 => 'cba',
        ),
      ),
      'application/vnd.commonspace' => array(
        'e' => array(
          0 => 'csp',
        ),
      ),
      'application/vnd.contact.cmsg' => array(
        'e' => array(
          0 => 'cdbcmsg',
        ),
      ),
      'application/vnd.corel-draw' => array(
        'a' => array(
          0 => 'application/cdr',
          1 => 'application/coreldraw',
          2 => 'application/x-cdr',
          3 => 'application/x-coreldraw',
          4 => 'image/cdr',
          5 => 'image/x-cdr',
          6 => 'zz-application/zz-winassoc-cdr',
          7 => 'image/x-coreldraw',
        ),
        'desc' => array(
          0 => 'Corel Draw drawing',
        ),
        'e' => array(
          0 => 'cdr',
        ),
      ),
      'application/vnd.cosmocaller' => array(
        'e' => array(
          0 => 'cmc',
        ),
      ),
      'application/vnd.crick.clicker' => array(
        'e' => array(
          0 => 'clkx',
        ),
      ),
      'application/vnd.crick.clicker.keyboard' => array(
        'e' => array(
          0 => 'clkk',
        ),
      ),
      'application/vnd.crick.clicker.palette' => array(
        'e' => array(
          0 => 'clkp',
        ),
      ),
      'application/vnd.crick.clicker.template' => array(
        'e' => array(
          0 => 'clkt',
        ),
      ),
      'application/vnd.crick.clicker.wordbank' => array(
        'e' => array(
          0 => 'clkw',
        ),
      ),
      'application/vnd.criticaltools.wbs+xml' => array(
        'e' => array(
          0 => 'wbs',
        ),
      ),
      'application/vnd.ctc-posml' => array(
        'e' => array(
          0 => 'pml',
        ),
      ),
      'application/vnd.cups-ppd' => array(
        'e' => array(
          0 => 'ppd',
        ),
      ),
      'application/vnd.curl.car' => array(
        'e' => array(
          0 => 'car',
        ),
      ),
      'application/vnd.curl.pcurl' => array(
        'e' => array(
          0 => 'pcurl',
        ),
      ),
      'application/vnd.dart' => array(
        'e' => array(
          0 => 'dart',
        ),
      ),
      'application/vnd.data-vision.rdz' => array(
        'e' => array(
          0 => 'rdz',
        ),
      ),
      'application/vnd.debian.binary-package' => array(
        'a' => array(
          0 => 'application/x-deb',
          1 => 'application/x-debian-package',
        ),
        'desc' => array(
          0 => 'Debian package',
        ),
        'e' => array(
          0 => 'deb',
          1 => 'udeb',
        ),
      ),
      'application/vnd.dece.data' => array(
        'e' => array(
          0 => 'uvf',
          1 => 'uvvf',
          2 => 'uvd',
          3 => 'uvvd',
        ),
      ),
      'application/vnd.dece.ttml+xml' => array(
        'e' => array(
          0 => 'uvt',
          1 => 'uvvt',
        ),
      ),
      'application/vnd.dece.unspecified' => array(
        'e' => array(
          0 => 'uvx',
          1 => 'uvvx',
        ),
      ),
      'application/vnd.dece.zip' => array(
        'e' => array(
          0 => 'uvz',
          1 => 'uvvz',
        ),
      ),
      'application/vnd.denovo.fcselayout-link' => array(
        'e' => array(
          0 => 'fe_launch',
        ),
      ),
      'application/vnd.dna' => array(
        'e' => array(
          0 => 'dna',
        ),
      ),
      'application/vnd.dolby.mlp' => array(
        'e' => array(
          0 => 'mlp',
        ),
      ),
      'application/vnd.dpgraph' => array(
        'e' => array(
          0 => 'dpg',
        ),
      ),
      'application/vnd.dreamfactory' => array(
        'e' => array(
          0 => 'dfac',
        ),
      ),
      'application/vnd.ds-keypoint' => array(
        'e' => array(
          0 => 'kpxx',
        ),
      ),
      'application/vnd.dvb.ait' => array(
        'e' => array(
          0 => 'ait',
        ),
      ),
      'application/vnd.dvb.service' => array(
        'e' => array(
          0 => 'svc',
        ),
      ),
      'application/vnd.dynageo' => array(
        'e' => array(
          0 => 'geo',
        ),
      ),
      'application/vnd.ecowin.chart' => array(
        'e' => array(
          0 => 'mag',
        ),
      ),
      'application/vnd.emusic-emusic_package' => array(
        'desc' => array(
          0 => 'eMusic download package',
        ),
        'e' => array(
          0 => 'emp',
        ),
      ),
      'application/vnd.enliven' => array(
        'e' => array(
          0 => 'nml',
        ),
      ),
      'application/vnd.epson.esf' => array(
        'e' => array(
          0 => 'esf',
        ),
      ),
      'application/vnd.epson.msf' => array(
        'e' => array(
          0 => 'msf',
        ),
      ),
      'application/vnd.epson.quickanime' => array(
        'e' => array(
          0 => 'qam',
        ),
      ),
      'application/vnd.epson.salt' => array(
        'e' => array(
          0 => 'slt',
        ),
      ),
      'application/vnd.epson.ssf' => array(
        'e' => array(
          0 => 'ssf',
        ),
      ),
      'application/vnd.eszigno3+xml' => array(
        'e' => array(
          0 => 'es3',
          1 => 'et3',
        ),
      ),
      'application/vnd.ezpix-album' => array(
        'e' => array(
          0 => 'ez2',
        ),
      ),
      'application/vnd.ezpix-package' => array(
        'e' => array(
          0 => 'ez3',
        ),
      ),
      'application/vnd.fdf' => array(
        'e' => array(
          0 => 'fdf',
        ),
      ),
      'application/vnd.fdsn.mseed' => array(
        'e' => array(
          0 => 'mseed',
        ),
      ),
      'application/vnd.fdsn.seed' => array(
        'e' => array(
          0 => 'seed',
          1 => 'dataless',
        ),
      ),
      'application/vnd.flatpak' => array(
        'a' => array(
          0 => 'application/vnd.xdgapp',
        ),
        'desc' => array(
          0 => 'Flatpak application bundle',
        ),
        'e' => array(
          0 => 'flatpak',
          1 => 'xdgapp',
        ),
      ),
      'application/vnd.flatpak.ref' => array(
        'desc' => array(
          0 => 'Flatpak repository reference',
        ),
        'e' => array(
          0 => 'flatpakref',
        ),
      ),
      'application/vnd.flatpak.repo' => array(
        'desc' => array(
          0 => 'Flatpak repository description',
        ),
        'e' => array(
          0 => 'flatpakrepo',
        ),
      ),
      'application/vnd.flographit' => array(
        'e' => array(
          0 => 'gph',
        ),
      ),
      'application/vnd.fluxtime.clip' => array(
        'e' => array(
          0 => 'ftc',
        ),
      ),
      'application/vnd.framemaker' => array(
        'a' => array(
          0 => 'application/x-frame',
        ),
        'desc' => array(
          0 => 'Adobe FrameMaker document',
        ),
        'e' => array(
          0 => 'fm',
          1 => 'frame',
          2 => 'maker',
          3 => 'book',
        ),
      ),
      'application/vnd.frogans.fnc' => array(
        'e' => array(
          0 => 'fnc',
        ),
      ),
      'application/vnd.frogans.ltf' => array(
        'e' => array(
          0 => 'ltf',
        ),
      ),
      'application/vnd.fsc.weblaunch' => array(
        'e' => array(
          0 => 'fsc',
        ),
      ),
      'application/vnd.fujitsu.oasys' => array(
        'e' => array(
          0 => 'oas',
        ),
      ),
      'application/vnd.fujitsu.oasys2' => array(
        'e' => array(
          0 => 'oa2',
        ),
      ),
      'application/vnd.fujitsu.oasys3' => array(
        'e' => array(
          0 => 'oa3',
        ),
      ),
      'application/vnd.fujitsu.oasysgp' => array(
        'e' => array(
          0 => 'fg5',
        ),
      ),
      'application/vnd.fujitsu.oasysprs' => array(
        'e' => array(
          0 => 'bh2',
        ),
      ),
      'application/vnd.fujixerox.ddd' => array(
        'e' => array(
          0 => 'ddd',
        ),
      ),
      'application/vnd.fujixerox.docuworks' => array(
        'e' => array(
          0 => 'xdw',
        ),
      ),
      'application/vnd.fujixerox.docuworks.binder' => array(
        'e' => array(
          0 => 'xbd',
        ),
      ),
      'application/vnd.fuzzysheet' => array(
        'e' => array(
          0 => 'fzs',
        ),
      ),
      'application/vnd.genomatix.tuxedo' => array(
        'e' => array(
          0 => 'txd',
        ),
      ),
      'application/vnd.geogebra.file' => array(
        'e' => array(
          0 => 'ggb',
        ),
      ),
      'application/vnd.geogebra.tool' => array(
        'e' => array(
          0 => 'ggt',
        ),
      ),
      'application/vnd.geometry-explorer' => array(
        'e' => array(
          0 => 'gex',
          1 => 'gre',
        ),
      ),
      'application/vnd.geonext' => array(
        'e' => array(
          0 => 'gxt',
        ),
      ),
      'application/vnd.geoplan' => array(
        'e' => array(
          0 => 'g2w',
        ),
      ),
      'application/vnd.geospace' => array(
        'e' => array(
          0 => 'g3w',
        ),
      ),
      'application/vnd.gmx' => array(
        'e' => array(
          0 => 'gmx',
        ),
      ),
      'application/vnd.google-earth.kml+xml' => array(
        'desc' => array(
          0 => 'KML geographic data',
          1 => 'KML: Keyhole Markup Language',
        ),
        'e' => array(
          0 => 'kml',
        ),
      ),
      'application/vnd.google-earth.kmz' => array(
        'desc' => array(
          0 => 'KML geographic compressed data',
          1 => 'KML: Keyhole Markup Language',
        ),
        'e' => array(
          0 => 'kmz',
        ),
      ),
      'application/vnd.grafeq' => array(
        'e' => array(
          0 => 'gqf',
          1 => 'gqs',
        ),
      ),
      'application/vnd.groove-account' => array(
        'e' => array(
          0 => 'gac',
        ),
      ),
      'application/vnd.groove-help' => array(
        'e' => array(
          0 => 'ghf',
        ),
      ),
      'application/vnd.groove-identity-message' => array(
        'e' => array(
          0 => 'gim',
        ),
      ),
      'application/vnd.groove-injector' => array(
        'e' => array(
          0 => 'grv',
        ),
      ),
      'application/vnd.groove-tool-message' => array(
        'e' => array(
          0 => 'gtm',
        ),
      ),
      'application/vnd.groove-tool-template' => array(
        'e' => array(
          0 => 'tpl',
        ),
      ),
      'application/vnd.groove-vcard' => array(
        'e' => array(
          0 => 'vcg',
        ),
      ),
      'application/vnd.hal+xml' => array(
        'e' => array(
          0 => 'hal',
        ),
      ),
      'application/vnd.handheld-entertainment+xml' => array(
        'e' => array(
          0 => 'zmm',
        ),
      ),
      'application/vnd.hbci' => array(
        'e' => array(
          0 => 'hbci',
        ),
      ),
      'application/vnd.hhe.lesson-player' => array(
        'e' => array(
          0 => 'les',
        ),
      ),
      'application/vnd.hp-hpgl' => array(
        'desc' => array(
          0 => 'HPGL file',
          1 => 'HPGL: HP Graphics Language',
        ),
        'e' => array(
          0 => 'hpgl',
        ),
      ),
      'application/vnd.hp-hpid' => array(
        'e' => array(
          0 => 'hpid',
        ),
      ),
      'application/vnd.hp-hps' => array(
        'e' => array(
          0 => 'hps',
        ),
      ),
      'application/vnd.hp-jlyt' => array(
        'e' => array(
          0 => 'jlt',
        ),
      ),
      'application/vnd.hp-pcl' => array(
        'desc' => array(
          0 => 'PCL file',
          1 => 'PCL: HP Printer Control Language',
        ),
        'e' => array(
          0 => 'pcl',
        ),
      ),
      'application/vnd.hp-pclxl' => array(
        'e' => array(
          0 => 'pclxl',
        ),
      ),
      'application/vnd.hydrostatix.sof-data' => array(
        'e' => array(
          0 => 'sfd-hdstx',
        ),
      ),
      'application/vnd.ibm.minipay' => array(
        'e' => array(
          0 => 'mpy',
        ),
      ),
      'application/vnd.ibm.modcap' => array(
        'e' => array(
          0 => 'afp',
          1 => 'listafp',
          2 => 'list3820',
        ),
      ),
      'application/vnd.ibm.rights-management' => array(
        'e' => array(
          0 => 'irm',
        ),
      ),
      'application/vnd.ibm.secure-container' => array(
        'e' => array(
          0 => 'sc',
        ),
      ),
      'application/vnd.iccprofile' => array(
        'desc' => array(
          0 => 'ICC profile',
        ),
        'e' => array(
          0 => 'icc',
          1 => 'icm',
        ),
      ),
      'application/vnd.igloader' => array(
        'e' => array(
          0 => 'igl',
        ),
      ),
      'application/vnd.immervision-ivp' => array(
        'e' => array(
          0 => 'ivp',
        ),
      ),
      'application/vnd.immervision-ivu' => array(
        'e' => array(
          0 => 'ivu',
        ),
      ),
      'application/vnd.insors.igm' => array(
        'e' => array(
          0 => 'igm',
        ),
      ),
      'application/vnd.intercon.formnet' => array(
        'e' => array(
          0 => 'xpw',
          1 => 'xpx',
        ),
      ),
      'application/vnd.intergeo' => array(
        'e' => array(
          0 => 'i2g',
        ),
      ),
      'application/vnd.intu.qbo' => array(
        'e' => array(
          0 => 'qbo',
        ),
      ),
      'application/vnd.intu.qfx' => array(
        'e' => array(
          0 => 'qfx',
        ),
      ),
      'application/vnd.ipunplugged.rcprofile' => array(
        'e' => array(
          0 => 'rcprofile',
        ),
      ),
      'application/vnd.irepository.package+xml' => array(
        'e' => array(
          0 => 'irp',
        ),
      ),
      'application/vnd.is-xpr' => array(
        'e' => array(
          0 => 'xpr',
        ),
      ),
      'application/vnd.isac.fcs' => array(
        'e' => array(
          0 => 'fcs',
        ),
      ),
      'application/vnd.jam' => array(
        'e' => array(
          0 => 'jam',
        ),
      ),
      'application/vnd.jcp.javame.midlet-rms' => array(
        'e' => array(
          0 => 'rms',
        ),
      ),
      'application/vnd.jisp' => array(
        'e' => array(
          0 => 'jisp',
        ),
      ),
      'application/vnd.joost.joda-archive' => array(
        'e' => array(
          0 => 'joda',
        ),
      ),
      'application/vnd.kahootz' => array(
        'e' => array(
          0 => 'ktz',
          1 => 'ktr',
        ),
      ),
      'application/vnd.kde.karbon' => array(
        'e' => array(
          0 => 'karbon',
        ),
      ),
      'application/vnd.kde.kchart' => array(
        'e' => array(
          0 => 'chrt',
        ),
      ),
      'application/vnd.kde.kformula' => array(
        'e' => array(
          0 => 'kfo',
        ),
      ),
      'application/vnd.kde.kivio' => array(
        'e' => array(
          0 => 'flw',
        ),
      ),
      'application/vnd.kde.kontour' => array(
        'e' => array(
          0 => 'kon',
        ),
      ),
      'application/vnd.kde.kpresenter' => array(
        'e' => array(
          0 => 'kpr',
          1 => 'kpt',
        ),
      ),
      'application/vnd.kde.kspread' => array(
        'e' => array(
          0 => 'ksp',
        ),
      ),
      'application/vnd.kde.kword' => array(
        'e' => array(
          0 => 'kwd',
          1 => 'kwt',
        ),
      ),
      'application/vnd.kenameaapp' => array(
        'e' => array(
          0 => 'htke',
        ),
      ),
      'application/vnd.kidspiration' => array(
        'e' => array(
          0 => 'kia',
        ),
      ),
      'application/vnd.kinar' => array(
        'e' => array(
          0 => 'kne',
          1 => 'knp',
        ),
      ),
      'application/vnd.koan' => array(
        'a' => array(
          0 => 'application/x-koan',
        ),
        'e' => array(
          0 => 'skp',
          1 => 'skd',
          2 => 'skt',
          3 => 'skm',
        ),
      ),
      'application/vnd.kodak-descriptor' => array(
        'e' => array(
          0 => 'sse',
        ),
      ),
      'application/vnd.las.las+xml' => array(
        'e' => array(
          0 => 'lasxml',
        ),
      ),
      'application/vnd.llamagraphics.life-balance.desktop' => array(
        'e' => array(
          0 => 'lbd',
        ),
      ),
      'application/vnd.llamagraphics.life-balance.exchange+xml' => array(
        'e' => array(
          0 => 'lbe',
        ),
      ),
      'application/vnd.lotus-1-2-3' => array(
        'a' => array(
          0 => 'application/x-lotus123',
          1 => 'application/x-123',
          2 => 'application/lotus123',
          3 => 'application/wk1',
          4 => 'zz-application/zz-winassoc-123',
        ),
        'desc' => array(
          0 => 'Lotus 1-2-3 spreadsheet',
        ),
        'e' => array(
          0 => '123',
          1 => 'wk1',
          2 => 'wk3',
          3 => 'wk4',
          4 => 'wks',
          5 => 'wk',
        ),
      ),
      'application/vnd.lotus-approach' => array(
        'e' => array(
          0 => 'apr',
        ),
      ),
      'application/vnd.lotus-freelance' => array(
        'e' => array(
          0 => 'pre',
        ),
      ),
      'application/vnd.lotus-notes' => array(
        'e' => array(
          0 => 'nsf',
        ),
      ),
      'application/vnd.lotus-organizer' => array(
        'e' => array(
          0 => 'org',
        ),
      ),
      'application/vnd.lotus-screencam' => array(
        'e' => array(
          0 => 'scm',
        ),
      ),
      'application/vnd.lotus-wordpro' => array(
        'desc' => array(
          0 => 'Lotus Word Pro document',
        ),
        'e' => array(
          0 => 'lwp',
        ),
      ),
      'application/vnd.macports.portpkg' => array(
        'e' => array(
          0 => 'portpkg',
        ),
      ),
      'application/vnd.mcd' => array(
        'e' => array(
          0 => 'mcd',
        ),
      ),
      'application/vnd.medcalcdata' => array(
        'e' => array(
          0 => 'mc1',
        ),
      ),
      'application/vnd.mediastation.cdkey' => array(
        'e' => array(
          0 => 'cdkey',
        ),
      ),
      'application/vnd.mfer' => array(
        'e' => array(
          0 => 'mwf',
        ),
      ),
      'application/vnd.mfmp' => array(
        'e' => array(
          0 => 'mfm',
        ),
      ),
      'application/vnd.micrografx.flo' => array(
        'e' => array(
          0 => 'flo',
        ),
      ),
      'application/vnd.micrografx.igx' => array(
        'e' => array(
          0 => 'igx',
        ),
      ),
      'application/vnd.mif' => array(
        'e' => array(
          0 => 'mif',
        ),
      ),
      'application/vnd.mobius.daf' => array(
        'e' => array(
          0 => 'daf',
        ),
      ),
      'application/vnd.mobius.dis' => array(
        'e' => array(
          0 => 'dis',
        ),
      ),
      'application/vnd.mobius.mbk' => array(
        'e' => array(
          0 => 'mbk',
        ),
      ),
      'application/vnd.mobius.mqy' => array(
        'e' => array(
          0 => 'mqy',
        ),
      ),
      'application/vnd.mobius.msl' => array(
        'e' => array(
          0 => 'msl',
        ),
      ),
      'application/vnd.mobius.plc' => array(
        'e' => array(
          0 => 'plc',
        ),
      ),
      'application/vnd.mobius.txf' => array(
        'e' => array(
          0 => 'txf',
        ),
      ),
      'application/vnd.mophun.application' => array(
        'e' => array(
          0 => 'mpn',
        ),
      ),
      'application/vnd.mophun.certificate' => array(
        'e' => array(
          0 => 'mpc',
        ),
      ),
      'application/vnd.mozilla.xul+xml' => array(
        'desc' => array(
          0 => 'XUL interface document',
          1 => 'XUL: XML User interface markup Language',
        ),
        'e' => array(
          0 => 'xul',
        ),
      ),
      'application/vnd.ms-access' => array(
        'a' => array(
          0 => 'application/x-msaccess',
          1 => 'application/msaccess',
          2 => 'application/vnd.msaccess',
          3 => 'application/mdb',
          4 => 'application/x-mdb',
          5 => 'zz-application/zz-winassoc-mdb',
        ),
        'desc' => array(
          0 => 'JET database',
          1 => 'JET: Joint Engine Technology',
        ),
        'e' => array(
          0 => 'mdb',
        ),
      ),
      'application/vnd.ms-artgalry' => array(
        'e' => array(
          0 => 'cil',
        ),
      ),
      'application/vnd.ms-asf' => array(
        'a' => array(
          0 => 'video/x-ms-wm',
          1 => 'video/x-ms-asf',
          2 => 'video/x-ms-asf-plugin',
        ),
        'desc' => array(
          0 => 'ASF video',
          1 => 'ASF: Advanced Streaming Format',
        ),
        'e' => array(
          0 => 'asf',
          1 => 'wm',
          2 => 'asx',
        ),
      ),
      'application/vnd.ms-cab-compressed' => array(
        'a' => array(
          0 => 'zz-application/zz-winassoc-cab',
          1 => 'application/x-cab',
        ),
        'desc' => array(
          0 => 'Microsoft Cabinet archive',
        ),
        'e' => array(
          0 => 'cab',
        ),
      ),
      'application/vnd.ms-excel' => array(
        'a' => array(
          0 => 'application/msexcel',
          1 => 'application/x-msexcel',
          2 => 'zz-application/zz-winassoc-xls',
        ),
        'desc' => array(
          0 => 'Excel spreadsheet',
        ),
        'e' => array(
          0 => 'xls',
          1 => 'xlm',
          2 => 'xla',
          3 => 'xlc',
          4 => 'xlt',
          5 => 'xlw',
          6 => 'xll',
          7 => 'xld',
          8 => 'xlb',
        ),
      ),
      'application/vnd.ms-excel.addin.macroenabled.12' => array(
        'desc' => array(
          0 => 'Excel add-in',
        ),
        'e' => array(
          0 => 'xlam',
        ),
      ),
      'application/vnd.ms-excel.sheet.binary.macroenabled.12' => array(
        'desc' => array(
          0 => 'Excel 2007 binary spreadsheet',
        ),
        'e' => array(
          0 => 'xlsb',
        ),
      ),
      'application/vnd.ms-excel.sheet.macroenabled.12' => array(
        'desc' => array(
          0 => 'Excel spreadsheet',
        ),
        'e' => array(
          0 => 'xlsm',
        ),
      ),
      'application/vnd.ms-excel.template.macroenabled.12' => array(
        'desc' => array(
          0 => 'Excel spreadsheet template',
        ),
        'e' => array(
          0 => 'xltm',
        ),
      ),
      'application/vnd.ms-fontobject' => array(
        'e' => array(
          0 => 'eot',
        ),
      ),
      'application/vnd.ms-htmlhelp' => array(
        'a' => array(
          0 => 'application/x-chm',
        ),
        'desc' => array(
          0 => 'CHM document',
          1 => 'CHM: Compiled Help Modules',
        ),
        'e' => array(
          0 => 'chm',
        ),
      ),
      'application/vnd.ms-ims' => array(
        'e' => array(
          0 => 'ims',
        ),
      ),
      'application/vnd.ms-lrm' => array(
        'e' => array(
          0 => 'lrm',
        ),
      ),
      'application/vnd.ms-officetheme' => array(
        'e' => array(
          0 => 'thmx',
        ),
      ),
      'application/vnd.ms-pki.seccat' => array(
        'e' => array(
          0 => 'cat',
        ),
      ),
      'application/vnd.ms-pki.stl' => array(
        'e' => array(
          0 => 'stl',
        ),
      ),
      'application/vnd.ms-powerpoint' => array(
        'a' => array(
          0 => 'application/powerpoint',
          1 => 'application/mspowerpoint',
          2 => 'application/x-mspowerpoint',
        ),
        'desc' => array(
          0 => 'PowerPoint presentation',
        ),
        'e' => array(
          0 => 'ppt',
          1 => 'pps',
          2 => 'pot',
          3 => 'ppz',
        ),
      ),
      'application/vnd.ms-powerpoint.addin.macroenabled.12' => array(
        'desc' => array(
          0 => 'PowerPoint add-in',
        ),
        'e' => array(
          0 => 'ppam',
        ),
      ),
      'application/vnd.ms-powerpoint.presentation.macroenabled.12' => array(
        'desc' => array(
          0 => 'PowerPoint presentation',
        ),
        'e' => array(
          0 => 'pptm',
        ),
      ),
      'application/vnd.ms-powerpoint.slide.macroenabled.12' => array(
        'desc' => array(
          0 => 'PowerPoint slide',
        ),
        'e' => array(
          0 => 'sldm',
        ),
      ),
      'application/vnd.ms-powerpoint.slideshow.macroenabled.12' => array(
        'desc' => array(
          0 => 'PowerPoint presentation',
        ),
        'e' => array(
          0 => 'ppsm',
        ),
      ),
      'application/vnd.ms-powerpoint.template.macroenabled.12' => array(
        'desc' => array(
          0 => 'PowerPoint presentation template',
        ),
        'e' => array(
          0 => 'potm',
        ),
      ),
      'application/vnd.ms-project' => array(
        'e' => array(
          0 => 'mpp',
          1 => 'mpt',
        ),
      ),
      'application/vnd.ms-publisher' => array(
        'desc' => array(
          0 => 'Microsoft Publisher document',
        ),
        'e' => array(
          0 => 'pub',
        ),
      ),
      'application/vnd.ms-tnef' => array(
        'a' => array(
          0 => 'application/ms-tnef',
        ),
        'desc' => array(
          0 => 'TNEF message',
          1 => 'TNEF: Transport Neutral Encapsulation Format',
        ),
        'e' => array(
          0 => 'tnef',
          1 => 'tnf',
        ),
      ),
      'application/vnd.ms-visio.drawing.macroenabled.main+xml' => array(
        'desc' => array(
          0 => 'Office Open XML Visio drawing',
        ),
        'e' => array(
          0 => 'vsdm',
        ),
      ),
      'application/vnd.ms-visio.drawing.main+xml' => array(
        'desc' => array(
          0 => 'Office Open XML Visio drawing',
        ),
        'e' => array(
          0 => 'vsdx',
        ),
      ),
      'application/vnd.ms-visio.stencil.macroenabled.main+xml' => array(
        'desc' => array(
          0 => 'Office Open XML Visio stencil',
        ),
        'e' => array(
          0 => 'vssm',
        ),
      ),
      'application/vnd.ms-visio.stencil.main+xml' => array(
        'desc' => array(
          0 => 'Office Open XML Visio stencil',
        ),
        'e' => array(
          0 => 'vssx',
        ),
      ),
      'application/vnd.ms-visio.template.macroenabled.main+xml' => array(
        'desc' => array(
          0 => 'Office Open XML Visio template',
        ),
        'e' => array(
          0 => 'vstm',
        ),
      ),
      'application/vnd.ms-visio.template.main+xml' => array(
        'desc' => array(
          0 => 'Office Open XML Visio template',
        ),
        'e' => array(
          0 => 'vstx',
        ),
      ),
      'application/vnd.ms-word.document.macroenabled.12' => array(
        'desc' => array(
          0 => 'Word document',
        ),
        'e' => array(
          0 => 'docm',
        ),
      ),
      'application/vnd.ms-word.template.macroenabled.12' => array(
        'desc' => array(
          0 => 'Word document template',
        ),
        'e' => array(
          0 => 'dotm',
        ),
      ),
      'application/vnd.ms-works' => array(
        'desc' => array(
          0 => 'Microsoft Works document',
        ),
        'e' => array(
          0 => 'wps',
          1 => 'wks',
          2 => 'wcm',
          3 => 'wdb',
          4 => 'xlr',
        ),
      ),
      'application/vnd.ms-wpl' => array(
        'desc' => array(
          0 => 'WPL playlist',
          1 => 'WPL: Windows Media Player Playlist',
        ),
        'e' => array(
          0 => 'wpl',
        ),
      ),
      'application/vnd.mseq' => array(
        'e' => array(
          0 => 'mseq',
        ),
      ),
      'application/vnd.musician' => array(
        'e' => array(
          0 => 'mus',
        ),
      ),
      'application/vnd.muvee.style' => array(
        'e' => array(
          0 => 'msty',
        ),
      ),
      'application/vnd.mynfc' => array(
        'e' => array(
          0 => 'taglet',
        ),
      ),
      'application/vnd.neurolanguage.nlu' => array(
        'e' => array(
          0 => 'nlu',
        ),
      ),
      'application/vnd.nintendo.snes.rom' => array(
        'a' => array(
          0 => 'application/x-snes-rom',
        ),
        'desc' => array(
          0 => 'Super NES ROM',
        ),
        'e' => array(
          0 => 'sfc',
          1 => 'smc',
        ),
      ),
      'application/vnd.nitf' => array(
        'e' => array(
          0 => 'ntf',
          1 => 'nitf',
        ),
      ),
      'application/vnd.noblenet-directory' => array(
        'e' => array(
          0 => 'nnd',
        ),
      ),
      'application/vnd.noblenet-sealer' => array(
        'e' => array(
          0 => 'nns',
        ),
      ),
      'application/vnd.noblenet-web' => array(
        'e' => array(
          0 => 'nnw',
        ),
      ),
      'application/vnd.nokia.n-gage.data' => array(
        'e' => array(
          0 => 'ngdat',
        ),
      ),
      'application/vnd.nokia.n-gage.symbian.install' => array(
        'e' => array(
          0 => 'n-gage',
        ),
      ),
      'application/vnd.nokia.radio-preset' => array(
        'e' => array(
          0 => 'rpst',
        ),
      ),
      'application/vnd.nokia.radio-presets' => array(
        'e' => array(
          0 => 'rpss',
        ),
      ),
      'application/vnd.novadigm.edm' => array(
        'e' => array(
          0 => 'edm',
        ),
      ),
      'application/vnd.novadigm.edx' => array(
        'e' => array(
          0 => 'edx',
        ),
      ),
      'application/vnd.novadigm.ext' => array(
        'e' => array(
          0 => 'ext',
        ),
      ),
      'application/vnd.oasis.opendocument.chart' => array(
        'desc' => array(
          0 => 'ODC chart',
          1 => 'ODC: OpenDocument Chart',
        ),
        'e' => array(
          0 => 'odc',
        ),
      ),
      'application/vnd.oasis.opendocument.chart-template' => array(
        'desc' => array(
          0 => 'ODC template',
          1 => 'ODC: OpenDocument Chart',
        ),
        'e' => array(
          0 => 'otc',
        ),
      ),
      'application/vnd.oasis.opendocument.database' => array(
        'a' => array(
          0 => 'application/vnd.sun.xml.base',
        ),
        'desc' => array(
          0 => 'ODB database',
          1 => 'ODB: OpenDocument Database',
        ),
        'e' => array(
          0 => 'odb',
        ),
      ),
      'application/vnd.oasis.opendocument.formula' => array(
        'desc' => array(
          0 => 'ODF formula',
          1 => 'ODF: OpenDocument Formula',
        ),
        'e' => array(
          0 => 'odf',
        ),
      ),
      'application/vnd.oasis.opendocument.formula-template' => array(
        'desc' => array(
          0 => 'ODF template',
          1 => 'ODF: OpenDocument Formula',
        ),
        'e' => array(
          0 => 'odft',
          1 => 'otf',
        ),
      ),
      'application/vnd.oasis.opendocument.graphics' => array(
        'desc' => array(
          0 => 'ODG drawing',
          1 => 'ODG: OpenDocument Drawing',
        ),
        'e' => array(
          0 => 'odg',
        ),
      ),
      'application/vnd.oasis.opendocument.graphics-flat-xml' => array(
        'desc' => array(
          0 => 'ODG drawing (Flat XML)',
          1 => 'FODG: OpenDocument Drawing (Flat XML)',
        ),
        'e' => array(
          0 => 'fodg',
        ),
      ),
      'application/vnd.oasis.opendocument.graphics-template' => array(
        'desc' => array(
          0 => 'ODG template',
          1 => 'ODG: OpenDocument Drawing',
        ),
        'e' => array(
          0 => 'otg',
        ),
      ),
      'application/vnd.oasis.opendocument.image' => array(
        'desc' => array(
          0 => 'ODI image',
          1 => 'ODI: OpenDocument Image',
        ),
        'e' => array(
          0 => 'odi',
        ),
      ),
      'application/vnd.oasis.opendocument.image-template' => array(
        'e' => array(
          0 => 'oti',
        ),
      ),
      'application/vnd.oasis.opendocument.presentation' => array(
        'desc' => array(
          0 => 'ODP presentation',
          1 => 'ODP: OpenDocument Presentation',
        ),
        'e' => array(
          0 => 'odp',
        ),
      ),
      'application/vnd.oasis.opendocument.presentation-flat-xml' => array(
        'desc' => array(
          0 => 'ODP presentation (Flat XML)',
          1 => 'FODP: OpenDocument Presentation (Flat XML)',
        ),
        'e' => array(
          0 => 'fodp',
        ),
      ),
      'application/vnd.oasis.opendocument.presentation-template' => array(
        'desc' => array(
          0 => 'ODP template',
          1 => 'ODP: OpenDocument Presentation',
        ),
        'e' => array(
          0 => 'otp',
        ),
      ),
      'application/vnd.oasis.opendocument.spreadsheet' => array(
        'desc' => array(
          0 => 'ODS spreadsheet',
          1 => 'ODS: OpenDocument Spreadsheet',
        ),
        'e' => array(
          0 => 'ods',
        ),
      ),
      'application/vnd.oasis.opendocument.spreadsheet-flat-xml' => array(
        'desc' => array(
          0 => 'ODS spreadsheet (Flat XML)',
          1 => 'FODS: OpenDocument Spreadsheet (Flat XML)',
        ),
        'e' => array(
          0 => 'fods',
        ),
      ),
      'application/vnd.oasis.opendocument.spreadsheet-template' => array(
        'desc' => array(
          0 => 'ODS template',
          1 => 'ODS: OpenDocument Spreadsheet',
        ),
        'e' => array(
          0 => 'ots',
        ),
      ),
      'application/vnd.oasis.opendocument.text' => array(
        'desc' => array(
          0 => 'ODT document',
          1 => 'ODT: OpenDocument Text',
        ),
        'e' => array(
          0 => 'odt',
        ),
      ),
      'application/vnd.oasis.opendocument.text-flat-xml' => array(
        'desc' => array(
          0 => 'ODT document (Flat XML)',
          1 => 'FODT: OpenDocument Text (Flat XML)',
        ),
        'e' => array(
          0 => 'fodt',
        ),
      ),
      'application/vnd.oasis.opendocument.text-master' => array(
        'desc' => array(
          0 => 'ODM document',
          1 => 'ODM: OpenDocument Master',
        ),
        'e' => array(
          0 => 'odm',
        ),
      ),
      'application/vnd.oasis.opendocument.text-template' => array(
        'desc' => array(
          0 => 'ODT template',
          1 => 'ODT: OpenDocument Text',
        ),
        'e' => array(
          0 => 'ott',
        ),
      ),
      'application/vnd.oasis.opendocument.text-web' => array(
        'desc' => array(
          0 => 'OTH template',
          1 => 'OTH: OpenDocument HTML',
        ),
        'e' => array(
          0 => 'oth',
        ),
      ),
      'application/vnd.olpc-sugar' => array(
        'e' => array(
          0 => 'xo',
        ),
      ),
      'application/vnd.oma.dd2+xml' => array(
        'e' => array(
          0 => 'dd2',
        ),
      ),
      'application/vnd.openofficeorg.extension' => array(
        'desc' => array(
          0 => 'OpenOffice.org extension',
        ),
        'e' => array(
          0 => 'oxt',
        ),
      ),
      'application/vnd.openxmlformats-officedocument.presentationml.presentation' => array(
        'desc' => array(
          0 => 'PowerPoint 2007 presentation',
        ),
        'e' => array(
          0 => 'pptx',
        ),
      ),
      'application/vnd.openxmlformats-officedocument.presentationml.slide' => array(
        'desc' => array(
          0 => 'PowerPoint 2007 slide',
        ),
        'e' => array(
          0 => 'sldx',
        ),
      ),
      'application/vnd.openxmlformats-officedocument.presentationml.slideshow' => array(
        'desc' => array(
          0 => 'PowerPoint 2007 show',
        ),
        'e' => array(
          0 => 'ppsx',
        ),
      ),
      'application/vnd.openxmlformats-officedocument.presentationml.template' => array(
        'desc' => array(
          0 => 'PowerPoint 2007 presentation template',
        ),
        'e' => array(
          0 => 'potx',
        ),
      ),
      'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' => array(
        'desc' => array(
          0 => 'Excel 2007 spreadsheet',
        ),
        'e' => array(
          0 => 'xlsx',
        ),
      ),
      'application/vnd.openxmlformats-officedocument.spreadsheetml.template' => array(
        'desc' => array(
          0 => 'Excel 2007 spreadsheet template',
        ),
        'e' => array(
          0 => 'xltx',
        ),
      ),
      'application/vnd.openxmlformats-officedocument.wordprocessingml.document' => array(
        'desc' => array(
          0 => 'Word 2007 document',
        ),
        'e' => array(
          0 => 'docx',
        ),
      ),
      'application/vnd.openxmlformats-officedocument.wordprocessingml.template' => array(
        'desc' => array(
          0 => 'Word 2007 document template',
        ),
        'e' => array(
          0 => 'dotx',
        ),
      ),
      'application/vnd.osgeo.mapguide.package' => array(
        'e' => array(
          0 => 'mgp',
        ),
      ),
      'application/vnd.osgi.dp' => array(
        'e' => array(
          0 => 'dp',
        ),
      ),
      'application/vnd.osgi.subsystem' => array(
        'e' => array(
          0 => 'esa',
        ),
      ),
      'application/vnd.palm' => array(
        'a' => array(
          0 => 'application/x-palm-database',
        ),
        'desc' => array(
          0 => 'Palm OS database',
        ),
        'e' => array(
          0 => 'pdb',
          1 => 'pqa',
          2 => 'oprc',
          3 => 'prc',
        ),
      ),
      'application/vnd.pawaafile' => array(
        'e' => array(
          0 => 'paw',
        ),
      ),
      'application/vnd.pg.format' => array(
        'e' => array(
          0 => 'str',
        ),
      ),
      'application/vnd.pg.osasli' => array(
        'e' => array(
          0 => 'ei6',
        ),
      ),
      'application/vnd.picsel' => array(
        'e' => array(
          0 => 'efif',
        ),
      ),
      'application/vnd.pmi.widget' => array(
        'e' => array(
          0 => 'wg',
        ),
      ),
      'application/vnd.pocketlearn' => array(
        'e' => array(
          0 => 'plf',
        ),
      ),
      'application/vnd.powerbuilder6' => array(
        'e' => array(
          0 => 'pbd',
        ),
      ),
      'application/vnd.previewsystems.box' => array(
        'e' => array(
          0 => 'box',
        ),
      ),
      'application/vnd.proteus.magazine' => array(
        'e' => array(
          0 => 'mgz',
        ),
      ),
      'application/vnd.publishare-delta-tree' => array(
        'e' => array(
          0 => 'qps',
        ),
      ),
      'application/vnd.pvi.ptid1' => array(
        'e' => array(
          0 => 'ptid',
        ),
      ),
      'application/vnd.quark.quarkxpress' => array(
        'e' => array(
          0 => 'qxd',
          1 => 'qxt',
          2 => 'qwd',
          3 => 'qwt',
          4 => 'qxl',
          5 => 'qxb',
        ),
      ),
      'application/vnd.rar' => array(
        'a' => array(
          0 => 'application/x-rar',
          1 => 'application/x-rar-compressed',
          2 => 'application/rar',
        ),
        'desc' => array(
          0 => 'RAR archive',
          1 => 'RAR: Roshal ARchive',
        ),
        'e' => array(
          0 => 'rar',
        ),
      ),
      'application/vnd.realvnc.bed' => array(
        'e' => array(
          0 => 'bed',
        ),
      ),
      'application/vnd.recordare.musicxml' => array(
        'e' => array(
          0 => 'mxl',
        ),
      ),
      'application/vnd.recordare.musicxml+xml' => array(
        'e' => array(
          0 => 'musicxml',
        ),
      ),
      'application/vnd.rig.cryptonote' => array(
        'e' => array(
          0 => 'cryptonote',
        ),
      ),
      'application/vnd.rim.cod' => array(
        'e' => array(
          0 => 'cod',
        ),
      ),
      'application/vnd.rn-realmedia' => array(
        'a' => array(
          0 => 'application/vnd.rn-realmedia-vbr',
        ),
        'desc' => array(
          0 => 'RealMedia document',
        ),
        'e' => array(
          0 => 'rm',
          1 => 'rmj',
          2 => 'rmm',
          3 => 'rms',
          4 => 'rmx',
          5 => 'rmvb',
        ),
      ),
      'application/vnd.route66.link66+xml' => array(
        'e' => array(
          0 => 'link66',
        ),
      ),
      'application/vnd.sailingtracker.track' => array(
        'e' => array(
          0 => 'st',
        ),
      ),
      'application/vnd.seemail' => array(
        'e' => array(
          0 => 'see',
        ),
      ),
      'application/vnd.sema' => array(
        'e' => array(
          0 => 'sema',
        ),
      ),
      'application/vnd.semd' => array(
        'e' => array(
          0 => 'semd',
        ),
      ),
      'application/vnd.semf' => array(
        'e' => array(
          0 => 'semf',
        ),
      ),
      'application/vnd.shana.informed.formdata' => array(
        'e' => array(
          0 => 'ifm',
        ),
      ),
      'application/vnd.shana.informed.formtemplate' => array(
        'e' => array(
          0 => 'itp',
        ),
      ),
      'application/vnd.shana.informed.interchange' => array(
        'e' => array(
          0 => 'iif',
        ),
      ),
      'application/vnd.shana.informed.package' => array(
        'e' => array(
          0 => 'ipk',
        ),
      ),
      'application/vnd.simtech-mindmapper' => array(
        'e' => array(
          0 => 'twd',
          1 => 'twds',
        ),
      ),
      'application/vnd.smart.teacher' => array(
        'e' => array(
          0 => 'teacher',
        ),
      ),
      'application/vnd.snap' => array(
        'desc' => array(
          0 => 'Snap package',
        ),
        'e' => array(
          0 => 'snap',
        ),
      ),
      'application/vnd.solent.sdkm+xml' => array(
        'e' => array(
          0 => 'sdkm',
          1 => 'sdkd',
        ),
      ),
      'application/vnd.spotfire.dxp' => array(
        'e' => array(
          0 => 'dxp',
        ),
      ),
      'application/vnd.spotfire.sfs' => array(
        'e' => array(
          0 => 'sfs',
        ),
      ),
      'application/vnd.sqlite3' => array(
        'a' => array(
          0 => 'application/x-sqlite3',
        ),
        'desc' => array(
          0 => 'SQLite3 database',
        ),
        'e' => array(
          0 => 'sqlite3',
        ),
      ),
      'application/vnd.squashfs' => array(
        'desc' => array(
          0 => 'Squashfs filesystem image',
        ),
        'e' => array(
          0 => 'sqsh',
        ),
      ),
      'application/vnd.stardivision.calc' => array(
        'desc' => array(
          0 => 'StarCalc spreadsheet',
        ),
        'e' => array(
          0 => 'sdc',
        ),
      ),
      'application/vnd.stardivision.chart' => array(
        'desc' => array(
          0 => 'StarChart chart',
        ),
        'e' => array(
          0 => 'sds',
        ),
      ),
      'application/vnd.stardivision.draw' => array(
        'desc' => array(
          0 => 'StarDraw drawing',
        ),
        'e' => array(
          0 => 'sda',
        ),
      ),
      'application/vnd.stardivision.impress' => array(
        'desc' => array(
          0 => 'StarImpress presentation',
        ),
        'e' => array(
          0 => 'sdd',
          1 => 'sdp',
        ),
      ),
      'application/vnd.stardivision.mail' => array(
        'desc' => array(
          0 => 'StarMail email',
        ),
        'e' => array(
          0 => 'smd',
        ),
      ),
      'application/vnd.stardivision.math' => array(
        'desc' => array(
          0 => 'StarMath formula',
        ),
        'e' => array(
          0 => 'smf',
        ),
      ),
      'application/vnd.stardivision.writer' => array(
        'a' => array(
          0 => 'application/vnd.stardivision.writer-global',
        ),
        'desc' => array(
          0 => 'StarWriter document',
        ),
        'e' => array(
          0 => 'sdw',
          1 => 'vor',
          2 => 'sgl',
        ),
      ),
      'application/vnd.stepmania.package' => array(
        'e' => array(
          0 => 'smzip',
        ),
      ),
      'application/vnd.stepmania.stepchart' => array(
        'e' => array(
          0 => 'sm',
        ),
      ),
      'application/vnd.sun.xml.calc' => array(
        'desc' => array(
          0 => 'OpenOffice Calc spreadsheet',
        ),
        'e' => array(
          0 => 'sxc',
        ),
      ),
      'application/vnd.sun.xml.calc.template' => array(
        'desc' => array(
          0 => 'OpenOffice Calc template',
        ),
        'e' => array(
          0 => 'stc',
        ),
      ),
      'application/vnd.sun.xml.draw' => array(
        'desc' => array(
          0 => 'OpenOffice Draw drawing',
        ),
        'e' => array(
          0 => 'sxd',
        ),
      ),
      'application/vnd.sun.xml.draw.template' => array(
        'desc' => array(
          0 => 'OpenOffice Draw template',
        ),
        'e' => array(
          0 => 'std',
        ),
      ),
      'application/vnd.sun.xml.impress' => array(
        'desc' => array(
          0 => 'OpenOffice Impress presentation',
        ),
        'e' => array(
          0 => 'sxi',
        ),
      ),
      'application/vnd.sun.xml.impress.template' => array(
        'desc' => array(
          0 => 'OpenOffice Impress template',
        ),
        'e' => array(
          0 => 'sti',
        ),
      ),
      'application/vnd.sun.xml.math' => array(
        'desc' => array(
          0 => 'OpenOffice Math formula',
        ),
        'e' => array(
          0 => 'sxm',
        ),
      ),
      'application/vnd.sun.xml.writer' => array(
        'desc' => array(
          0 => 'OpenOffice Writer document',
        ),
        'e' => array(
          0 => 'sxw',
        ),
      ),
      'application/vnd.sun.xml.writer.global' => array(
        'desc' => array(
          0 => 'OpenOffice Writer global document',
        ),
        'e' => array(
          0 => 'sxg',
        ),
      ),
      'application/vnd.sun.xml.writer.template' => array(
        'desc' => array(
          0 => 'OpenOffice Writer template',
        ),
        'e' => array(
          0 => 'stw',
        ),
      ),
      'application/vnd.sus-calendar' => array(
        'e' => array(
          0 => 'sus',
          1 => 'susp',
        ),
      ),
      'application/vnd.svd' => array(
        'e' => array(
          0 => 'svd',
        ),
      ),
      'application/vnd.symbian.install' => array(
        'desc' => array(
          0 => 'SIS package',
          1 => 'SIS: Symbian Installation File',
        ),
        'e' => array(
          0 => 'sis',
          1 => 'sisx',
        ),
      ),
      'application/vnd.syncml+xml' => array(
        'e' => array(
          0 => 'xsm',
        ),
      ),
      'application/vnd.syncml.dm+wbxml' => array(
        'e' => array(
          0 => 'bdm',
        ),
      ),
      'application/vnd.syncml.dm+xml' => array(
        'e' => array(
          0 => 'xdm',
        ),
      ),
      'application/vnd.tao.intent-module-archive' => array(
        'e' => array(
          0 => 'tao',
        ),
      ),
      'application/vnd.tcpdump.pcap' => array(
        'a' => array(
          0 => 'application/x-pcap',
          1 => 'application/pcap',
          2 => 'application/cap',
        ),
        'desc' => array(
          0 => 'network packet capture',
        ),
        'e' => array(
          0 => 'pcap',
          1 => 'cap',
          2 => 'dmp',
        ),
      ),
      'application/vnd.tmobile-livetv' => array(
        'e' => array(
          0 => 'tmo',
        ),
      ),
      'application/vnd.trid.tpt' => array(
        'e' => array(
          0 => 'tpt',
        ),
      ),
      'application/vnd.triscape.mxs' => array(
        'e' => array(
          0 => 'mxs',
        ),
      ),
      'application/vnd.trueapp' => array(
        'e' => array(
          0 => 'tra',
        ),
      ),
      'application/vnd.ufdl' => array(
        'e' => array(
          0 => 'ufd',
          1 => 'ufdl',
        ),
      ),
      'application/vnd.uiq.theme' => array(
        'e' => array(
          0 => 'utz',
        ),
      ),
      'application/vnd.umajin' => array(
        'e' => array(
          0 => 'umj',
        ),
      ),
      'application/vnd.unity' => array(
        'e' => array(
          0 => 'unityweb',
        ),
      ),
      'application/vnd.uoml+xml' => array(
        'e' => array(
          0 => 'uoml',
        ),
      ),
      'application/vnd.vcx' => array(
        'e' => array(
          0 => 'vcx',
        ),
      ),
      'application/vnd.visio' => array(
        'desc' => array(
          0 => 'Microsoft Visio document',
        ),
        'e' => array(
          0 => 'vsd',
          1 => 'vst',
          2 => 'vss',
          3 => 'vsw',
        ),
      ),
      'application/vnd.visionary' => array(
        'e' => array(
          0 => 'vis',
        ),
      ),
      'application/vnd.vsf' => array(
        'e' => array(
          0 => 'vsf',
        ),
      ),
      'application/vnd.wap.wbxml' => array(
        'e' => array(
          0 => 'wbxml',
        ),
      ),
      'application/vnd.wap.wmlc' => array(
        'e' => array(
          0 => 'wmlc',
        ),
      ),
      'application/vnd.wap.wmlscriptc' => array(
        'e' => array(
          0 => 'wmlsc',
        ),
      ),
      'application/vnd.webturbo' => array(
        'e' => array(
          0 => 'wtb',
        ),
      ),
      'application/vnd.wolfram.player' => array(
        'e' => array(
          0 => 'nbp',
        ),
      ),
      'application/vnd.wordperfect' => array(
        'a' => array(
          0 => 'application/x-wordperfect',
          1 => 'application/wordperfect',
        ),
        'desc' => array(
          0 => 'WordPerfect document',
        ),
        'e' => array(
          0 => 'wpd',
          1 => 'wp',
          2 => 'wp4',
          3 => 'wp5',
          4 => 'wp6',
          5 => 'wpp',
        ),
      ),
      'application/vnd.wqd' => array(
        'e' => array(
          0 => 'wqd',
        ),
      ),
      'application/vnd.wt.stf' => array(
        'e' => array(
          0 => 'stf',
        ),
      ),
      'application/vnd.xara' => array(
        'e' => array(
          0 => 'xar',
        ),
      ),
      'application/vnd.xfdl' => array(
        'e' => array(
          0 => 'xfdl',
        ),
      ),
      'application/vnd.yamaha.hv-dic' => array(
        'e' => array(
          0 => 'hvd',
        ),
      ),
      'application/vnd.yamaha.hv-script' => array(
        'e' => array(
          0 => 'hvs',
        ),
      ),
      'application/vnd.yamaha.hv-voice' => array(
        'e' => array(
          0 => 'hvp',
        ),
      ),
      'application/vnd.yamaha.openscoreformat' => array(
        'e' => array(
          0 => 'osf',
        ),
      ),
      'application/vnd.yamaha.openscoreformat.osfpvg+xml' => array(
        'e' => array(
          0 => 'osfpvg',
        ),
      ),
      'application/vnd.yamaha.smaf-audio' => array(
        'e' => array(
          0 => 'saf',
        ),
      ),
      'application/vnd.yamaha.smaf-phrase' => array(
        'e' => array(
          0 => 'spf',
        ),
      ),
      'application/vnd.yellowriver-custom-menu' => array(
        'e' => array(
          0 => 'cmp',
        ),
      ),
      'application/vnd.youtube.yt' => array(
        'desc' => array(
          0 => 'YouTube media archive',
        ),
        'e' => array(
          0 => 'yt',
        ),
      ),
      'application/vnd.zul' => array(
        'e' => array(
          0 => 'zir',
          1 => 'zirz',
        ),
      ),
      'application/vnd.zzazz.deck+xml' => array(
        'e' => array(
          0 => 'zaz',
        ),
      ),
      'application/voicexml+xml' => array(
        'e' => array(
          0 => 'vxml',
        ),
      ),
      'application/widget' => array(
        'e' => array(
          0 => 'wgt',
        ),
      ),
      'application/winhlp' => array(
        'a' => array(
          0 => 'zz-application/zz-winassoc-hlp',
        ),
        'desc' => array(
          0 => 'WinHelp help file',
        ),
        'e' => array(
          0 => 'hlp',
        ),
      ),
      'application/wordperfect5.1' => array(
        'e' => array(
          0 => 'wp5',
        ),
      ),
      'application/wsdl+xml' => array(
        'e' => array(
          0 => 'wsdl',
        ),
      ),
      'application/wspolicy+xml' => array(
        'e' => array(
          0 => 'wspolicy',
        ),
      ),
      'application/x-7z-compressed' => array(
        'desc' => array(
          0 => '7-zip archive',
        ),
        'e' => array(
          0 => '7z',
        ),
      ),
      'application/x-abiword' => array(
        'desc' => array(
          0 => 'AbiWord document',
        ),
        'e' => array(
          0 => 'abw',
          1 => 'abw.crashed',
          2 => 'abw.gz',
          3 => 'zabw',
        ),
      ),
      'application/x-ace' => array(
        'desc' => array(
          0 => 'ACE archive',
        ),
        'e' => array(
          0 => 'ace',
        ),
      ),
      'application/x-ace-compressed' => array(
        'e' => array(
          0 => 'ace',
        ),
      ),
      'application/x-alz' => array(
        'desc' => array(
          0 => 'Alzip archive',
        ),
        'e' => array(
          0 => 'alz',
        ),
      ),
      'application/x-amiga-disk-format' => array(
        'desc' => array(
          0 => 'Amiga disk image',
        ),
        'e' => array(
          0 => 'adf',
        ),
      ),
      'application/x-amipro' => array(
        'desc' => array(
          0 => 'Lotus AmiPro document',
        ),
        'e' => array(
          0 => 'sam',
        ),
      ),
      'application/x-aportisdoc' => array(
        'desc' => array(
          0 => 'AportisDoc document',
        ),
        'e' => array(
          0 => 'pdb',
          1 => 'pdc',
        ),
      ),
      'application/x-apple-diskimage' => array(
        'desc' => array(
          0 => 'Apple disk image',
        ),
        'e' => array(
          0 => 'dmg',
        ),
      ),
      'application/x-apple-systemprofiler+xml' => array(
        'desc' => array(
          0 => 'Apple System Profiler',
        ),
        'e' => array(
          0 => 'spx',
        ),
      ),
      'application/x-appleworks-document' => array(
        'desc' => array(
          0 => 'AppleWorks document',
        ),
        'e' => array(
          0 => 'cwk',
        ),
      ),
      'application/x-applix-spreadsheet' => array(
        'desc' => array(
          0 => 'Applix Spreadsheets spreadsheet',
        ),
        'e' => array(
          0 => 'as',
        ),
      ),
      'application/x-applix-word' => array(
        'desc' => array(
          0 => 'Applix Words document',
        ),
        'e' => array(
          0 => 'aw',
        ),
      ),
      'application/x-archive' => array(
        'desc' => array(
          0 => 'AR archive',
        ),
        'e' => array(
          0 => 'a',
          1 => 'ar',
        ),
      ),
      'application/x-arj' => array(
        'desc' => array(
          0 => 'ARJ archive',
          1 => 'ARJ: Archived by Robert Jung',
        ),
        'e' => array(
          0 => 'arj',
        ),
      ),
      'application/x-asp' => array(
        'desc' => array(
          0 => 'ASP page',
          1 => 'ASP: Active Server Page',
        ),
        'e' => array(
          0 => 'asp',
        ),
      ),
      'application/x-atari-2600-rom' => array(
        'desc' => array(
          0 => 'Atari 2600 ROM',
        ),
        'e' => array(
          0 => 'a26',
        ),
      ),
      'application/x-atari-7800-rom' => array(
        'desc' => array(
          0 => 'Atari 7800 ROM',
        ),
        'e' => array(
          0 => 'a78',
        ),
      ),
      'application/x-atari-lynx-rom' => array(
        'desc' => array(
          0 => 'Atari Lynx ROM',
        ),
        'e' => array(
          0 => 'lnx',
        ),
      ),
      'application/x-authorware-bin' => array(
        'e' => array(
          0 => 'aab',
          1 => 'x32',
          2 => 'u32',
          3 => 'vox',
        ),
      ),
      'application/x-authorware-map' => array(
        'e' => array(
          0 => 'aam',
        ),
      ),
      'application/x-authorware-seg' => array(
        'e' => array(
          0 => 'aas',
        ),
      ),
      'application/x-awk' => array(
        'desc' => array(
          0 => 'AWK script',
        ),
        'e' => array(
          0 => 'awk',
        ),
      ),
      'application/x-bcpio' => array(
        'desc' => array(
          0 => 'BCPIO document',
          1 => 'BCPIO: Binary CPIO',
        ),
        'e' => array(
          0 => 'bcpio',
        ),
      ),
      'application/x-bittorrent' => array(
        'desc' => array(
          0 => 'BitTorrent seed file',
        ),
        'e' => array(
          0 => 'torrent',
        ),
      ),
      'application/x-blender' => array(
        'desc' => array(
          0 => 'Blender scene',
        ),
        'e' => array(
          0 => 'blender',
          1 => 'blend',
        ),
      ),
      'application/x-blorb' => array(
        'e' => array(
          0 => 'blb',
          1 => 'blorb',
        ),
      ),
      'application/x-bps-patch' => array(
        'desc' => array(
          0 => 'BPS patch',
          1 => 'BPS: Binary Patching System',
        ),
        'e' => array(
          0 => 'bps',
        ),
      ),
      'application/x-bsdiff' => array(
        'desc' => array(
          0 => 'binary differences between files',
        ),
        'e' => array(
          0 => 'bsdiff',
        ),
      ),
      'application/x-bzdvi' => array(
        'desc' => array(
          0 => 'TeX DVI document (bzip-compressed)',
        ),
        'e' => array(
          0 => 'dvi.bz2',
        ),
      ),
      'application/x-bzip' => array(
        'a' => array(
          0 => 'application/x-bzip2',
          1 => 'application/bzip2',
        ),
        'desc' => array(
          0 => 'Bzip archive',
        ),
        'e' => array(
          0 => 'bz',
          1 => 'bz2',
          2 => 'boz',
        ),
      ),
      'application/x-bzip-compressed-tar' => array(
        'desc' => array(
          0 => 'Tar archive (bzip-compressed)',
        ),
        'e' => array(
          0 => 'tar.bz2',
          1 => 'tar.bz',
          2 => 'tbz2',
          3 => 'tbz',
          4 => 'tb2',
        ),
      ),
      'application/x-bzpdf' => array(
        'desc' => array(
          0 => 'PDF document (bzip-compressed)',
        ),
        'e' => array(
          0 => 'pdf.bz2',
        ),
      ),
      'application/x-bzpostscript' => array(
        'desc' => array(
          0 => 'PostScript document (bzip-compressed)',
        ),
        'e' => array(
          0 => 'ps.bz2',
        ),
      ),
      'application/x-cb7' => array(
        'desc' => array(
          0 => 'comic book archive',
        ),
        'e' => array(
          0 => 'cb7',
        ),
      ),
      'application/x-cbt' => array(
        'desc' => array(
          0 => 'comic book archive',
        ),
        'e' => array(
          0 => 'cbt',
        ),
      ),
      'application/x-ccmx' => array(
        'desc' => array(
          0 => 'CCMX color correction file',
        ),
        'e' => array(
          0 => 'ccmx',
        ),
      ),
      'application/x-cd-image' => array(
        'a' => array(
          0 => 'application/x-iso9660-image',
        ),
        'desc' => array(
          0 => 'raw CD image',
        ),
        'e' => array(
          0 => 'iso',
          1 => 'iso9660',
        ),
      ),
      'application/x-cdlink' => array(
        'e' => array(
          0 => 'vcd',
        ),
      ),
      'application/x-cdrdao-toc' => array(
        'desc' => array(
          0 => 'CD Table Of Contents',
        ),
        'e' => array(
          0 => 'toc',
        ),
      ),
      'application/x-cfs-compressed' => array(
        'e' => array(
          0 => 'cfs',
        ),
      ),
      'application/x-chat' => array(
        'e' => array(
          0 => 'chat',
        ),
      ),
      'application/x-cisco-vpn-settings' => array(
        'desc' => array(
          0 => 'Cisco VPN settings',
        ),
        'e' => array(
          0 => 'pcf',
        ),
      ),
      'application/x-compress' => array(
        'desc' => array(
          0 => 'UNIX-compressed file',
        ),
        'e' => array(
          0 => 'z',
        ),
      ),
      'application/x-compressed-tar' => array(
        'desc' => array(
          0 => 'Tar archive (gzip-compressed)',
        ),
        'e' => array(
          0 => 'tar.gz',
          1 => 'tgz',
        ),
      ),
      'application/x-conference' => array(
        'e' => array(
          0 => 'nsc',
        ),
      ),
      'application/x-cpio' => array(
        'desc' => array(
          0 => 'CPIO archive',
        ),
        'e' => array(
          0 => 'cpio',
        ),
      ),
      'application/x-cpio-compressed' => array(
        'desc' => array(
          0 => 'CPIO archive (gzip-compressed)',
        ),
        'e' => array(
          0 => 'cpio.gz',
        ),
      ),
      'application/x-csh' => array(
        'a' => array(
          0 => 'text/x-csh',
        ),
        'desc' => array(
          0 => 'C shell script',
        ),
        'e' => array(
          0 => 'csh',
        ),
      ),
      'application/x-cue' => array(
        'desc' => array(
          0 => 'CD image cuesheet',
        ),
        'e' => array(
          0 => 'cue',
        ),
      ),
      'application/x-dar' => array(
        'desc' => array(
          0 => 'DAR archive',
        ),
        'e' => array(
          0 => 'dar',
        ),
      ),
      'application/x-dbf' => array(
        'a' => array(
          0 => 'application/x-dbase',
          1 => 'application/dbf',
          2 => 'application/dbase',
        ),
        'desc' => array(
          0 => 'Xbase document',
        ),
        'e' => array(
          0 => 'dbf',
        ),
      ),
      'application/x-dc-rom' => array(
        'desc' => array(
          0 => 'Dreamcast disc image',
        ),
        'e' => array(
          0 => 'dc',
        ),
      ),
      'application/x-designer' => array(
        'desc' => array(
          0 => 'Qt Designer interface document',
        ),
        'e' => array(
          0 => 'ui',
        ),
      ),
      'application/x-desktop' => array(
        'a' => array(
          0 => 'application/x-gnome-app-info',
        ),
        'desc' => array(
          0 => 'desktop configuration file',
        ),
        'e' => array(
          0 => 'desktop',
          1 => 'kdelnk',
        ),
      ),
      'application/x-dgc-compressed' => array(
        'e' => array(
          0 => 'dgc',
        ),
      ),
      'application/x-dia-diagram' => array(
        'desc' => array(
          0 => 'Dia diagram',
        ),
        'e' => array(
          0 => 'dia',
        ),
      ),
      'application/x-dia-shape' => array(
        'desc' => array(
          0 => 'Dia shape',
        ),
        'e' => array(
          0 => 'shape',
        ),
      ),
      'application/x-director' => array(
        'e' => array(
          0 => 'dir',
          1 => 'dcr',
          2 => 'dxr',
          3 => 'cst',
          4 => 'cct',
          5 => 'cxt',
          6 => 'w3d',
          7 => 'fgd',
          8 => 'swa',
        ),
      ),
      'application/x-dms' => array(
        'e' => array(
          0 => 'dms',
        ),
      ),
      'application/x-docbook+xml' => array(
        'a' => array(
          0 => 'application/docbook+xml',
          1 => 'application/vnd.oasis.docbook+xml',
        ),
        'desc' => array(
          0 => 'DocBook document',
        ),
        'e' => array(
          0 => 'dbk',
          1 => 'docbook',
        ),
      ),
      'application/x-doom' => array(
        'e' => array(
          0 => 'wad',
        ),
      ),
      'application/x-doom-wad' => array(
        'desc' => array(
          0 => 'Doom WAD file',
          1 => 'WAD: Where\'s All the Data',
        ),
        'e' => array(
          0 => 'wad',
        ),
      ),
      'application/x-dtbncx+xml' => array(
        'e' => array(
          0 => 'ncx',
        ),
      ),
      'application/x-dtbook+xml' => array(
        'e' => array(
          0 => 'dtb',
        ),
      ),
      'application/x-dtbresource+xml' => array(
        'e' => array(
          0 => 'res',
        ),
      ),
      'application/x-dvi' => array(
        'desc' => array(
          0 => 'TeX DVI document',
          1 => 'DVI: Device independent file format',
        ),
        'e' => array(
          0 => 'dvi',
        ),
      ),
      'application/x-e-theme' => array(
        'desc' => array(
          0 => 'Enlightenment theme',
        ),
        'e' => array(
          0 => 'etheme',
        ),
      ),
      'application/x-egon' => array(
        'desc' => array(
          0 => 'Egon Animator animation',
        ),
        'e' => array(
          0 => 'egon',
        ),
      ),
      'application/x-envoy' => array(
        'e' => array(
          0 => 'evy',
        ),
      ),
      'application/x-eva' => array(
        'e' => array(
          0 => 'eva',
        ),
      ),
      'application/x-fds-disk' => array(
        'desc' => array(
          0 => 'Nintendo FDS disk image',
          1 => 'FDS: Famicom Disk System',
        ),
        'e' => array(
          0 => 'fds',
        ),
      ),
      'application/x-fictionbook+xml' => array(
        'a' => array(
          0 => 'application/x-fictionbook',
        ),
        'desc' => array(
          0 => 'FictionBook document',
        ),
        'e' => array(
          0 => 'fb2',
        ),
      ),
      'application/x-fluid' => array(
        'desc' => array(
          0 => 'FLTK Fluid file',
          1 => 'FLTK: Fast Light Toolkit',
        ),
        'e' => array(
          0 => 'fl',
        ),
      ),
      'application/x-font-afm' => array(
        'desc' => array(
          0 => 'Adobe font metrics',
        ),
        'e' => array(
          0 => 'afm',
        ),
      ),
      'application/x-font-bdf' => array(
        'desc' => array(
          0 => 'BDF font',
        ),
        'e' => array(
          0 => 'bdf',
        ),
      ),
      'application/x-font-ghostscript' => array(
        'a' => array(
          0 => 'application/x-font',
        ),
        'e' => array(
          0 => 'gsf',
          1 => 'pcf.z',
          2 => 'pcf',
          3 => 'pfa',
          4 => 'pfb',
        ),
      ),
      'application/x-font-linux-psf' => array(
        'desc' => array(
          0 => 'Linux PSF console font',
        ),
        'e' => array(
          0 => 'psf',
        ),
      ),
      'application/x-font-pcf' => array(
        'desc' => array(
          0 => 'PCF font',
        ),
        'e' => array(
          0 => 'pcf',
          1 => 'pcf.z',
          2 => 'pcf.gz',
        ),
      ),
      'application/x-font-snf' => array(
        'e' => array(
          0 => 'snf',
        ),
      ),
      'application/x-font-speedo' => array(
        'desc' => array(
          0 => 'Speedo font',
        ),
        'e' => array(
          0 => 'spd',
        ),
      ),
      'application/x-font-ttx' => array(
        'desc' => array(
          0 => 'TrueType XML font',
        ),
        'e' => array(
          0 => 'ttx',
        ),
      ),
      'application/x-font-type1' => array(
        'desc' => array(
          0 => 'PostScript type-1 font',
        ),
        'e' => array(
          0 => 'pfa',
          1 => 'pfb',
          2 => 'pfm',
          3 => 'afm',
          4 => 'gsf',
        ),
      ),
      'application/x-freearc' => array(
        'e' => array(
          0 => 'arc',
        ),
      ),
      'application/x-freemind' => array(
        'e' => array(
          0 => 'mm',
        ),
      ),
      'application/x-futuresplash' => array(
        'e' => array(
          0 => 'spl',
        ),
      ),
      'application/x-gameboy-color-rom' => array(
        'desc' => array(
          0 => 'Game Boy Color ROM',
        ),
        'e' => array(
          0 => 'gbc',
          1 => 'cgb',
        ),
      ),
      'application/x-gameboy-rom' => array(
        'desc' => array(
          0 => 'Game Boy ROM',
        ),
        'e' => array(
          0 => 'gb',
          1 => 'sgb',
        ),
      ),
      'application/x-gamecube-rom' => array(
        'a' => array(
          0 => 'application/x-gamecube-iso-image',
        ),
        'desc' => array(
          0 => 'GameCube disc image',
        ),
        'e' => array(
          0 => 'iso',
        ),
      ),
      'application/x-gamegear-rom' => array(
        'desc' => array(
          0 => 'Game Gear ROM',
        ),
        'e' => array(
          0 => 'gg',
        ),
      ),
      'application/x-gba-rom' => array(
        'desc' => array(
          0 => 'Game Boy Advance ROM',
        ),
        'e' => array(
          0 => 'gba',
          1 => 'agb',
        ),
      ),
      'application/x-gca-compressed' => array(
        'e' => array(
          0 => 'gca',
        ),
      ),
      'application/x-gedcom' => array(
        'a' => array(
          0 => 'text/gedcom',
        ),
        'desc' => array(
          0 => 'GEDCOM family history',
          1 => 'GEDCOM: GEnealogical Data COMmunication',
        ),
        'e' => array(
          0 => 'ged',
          1 => 'gedcom',
        ),
      ),
      'application/x-genesis-32x-rom' => array(
        'desc' => array(
          0 => 'Genesis 32X ROM',
        ),
        'e' => array(
          0 => '32x',
          1 => 'mdx',
        ),
      ),
      'application/x-genesis-rom' => array(
        'desc' => array(
          0 => 'Genesis ROM',
        ),
        'e' => array(
          0 => 'gen',
          1 => 'smd',
          2 => 'sgd',
        ),
      ),
      'application/x-gettext-translation' => array(
        'desc' => array(
          0 => 'translated messages (machine-readable)',
        ),
        'e' => array(
          0 => 'gmo',
          1 => 'mo',
        ),
      ),
      'application/x-glade' => array(
        'desc' => array(
          0 => 'Glade project',
        ),
        'e' => array(
          0 => 'glade',
        ),
      ),
      'application/x-glulx' => array(
        'e' => array(
          0 => 'ulx',
        ),
      ),
      'application/x-gnucash' => array(
        'desc' => array(
          0 => 'GnuCash financial data',
        ),
        'e' => array(
          0 => 'gnucash',
          1 => 'gnc',
          2 => 'xac',
        ),
      ),
      'application/x-gnumeric' => array(
        'desc' => array(
          0 => 'Gnumeric spreadsheet',
        ),
        'e' => array(
          0 => 'gnumeric',
        ),
      ),
      'application/x-gnuplot' => array(
        'desc' => array(
          0 => 'Gnuplot document',
        ),
        'e' => array(
          0 => 'gp',
          1 => 'gplt',
          2 => 'gnuplot',
        ),
      ),
      'application/x-go-sgf' => array(
        'desc' => array(
          0 => 'SGF record',
          1 => 'SGF: Smart Game Format',
        ),
        'e' => array(
          0 => 'sgf',
        ),
      ),
      'application/x-gramps-xml' => array(
        'e' => array(
          0 => 'gramps',
        ),
      ),
      'application/x-graphing-calculator' => array(
        'e' => array(
          0 => 'gcf',
        ),
      ),
      'application/x-graphite' => array(
        'desc' => array(
          0 => 'Graphite scientific graph',
        ),
        'e' => array(
          0 => 'gra',
        ),
      ),
      'application/x-gtk-builder' => array(
        'desc' => array(
          0 => 'GTK+ Builder interface document',
        ),
        'e' => array(
          0 => 'ui',
        ),
      ),
      'application/x-gz-font-linux-psf' => array(
        'desc' => array(
          0 => 'Linux PSF console font (gzip-compressed)',
        ),
        'e' => array(
          0 => 'psf.gz',
        ),
      ),
      'application/x-gzdvi' => array(
        'desc' => array(
          0 => 'TeX DVI document (gzip-compressed)',
        ),
        'e' => array(
          0 => 'dvi.gz',
        ),
      ),
      'application/x-gzpdf' => array(
        'desc' => array(
          0 => 'PDF document (gzip-compressed)',
        ),
        'e' => array(
          0 => 'pdf.gz',
        ),
      ),
      'application/x-gzpostscript' => array(
        'desc' => array(
          0 => 'PostScript document (gzip-compressed)',
        ),
        'e' => array(
          0 => 'ps.gz',
        ),
      ),
      'application/x-hdf' => array(
        'desc' => array(
          0 => 'HDF document',
          1 => 'HDF: Hierarchical Data Format',
        ),
        'e' => array(
          0 => 'hdf',
          1 => 'hdf4',
          2 => 'h4',
          3 => 'hdf5',
          4 => 'h5',
        ),
      ),
      'application/x-hfe-floppy-image' => array(
        'a' => array(
          0 => 'application/x-hfe-file',
        ),
        'desc' => array(
          0 => 'HFE floppy disk image',
          1 => 'HFE: HxC Floppy Emulator',
        ),
        'e' => array(
          0 => 'hfe',
        ),
      ),
      'application/x-httpd-eruby' => array(
        'e' => array(
          0 => 'rhtml',
        ),
      ),
      'application/x-httpd-php' => array(
        'a' => array(
          0 => 'application/x-httpd-php-source',
          1 => 'application/x-httpd-php3',
          2 => 'application/x-httpd-php4',
        ),
        'e' => array(
          0 => 'php3',
          1 => 'php4',
          2 => 'php',
          3 => 'phps',
          4 => 'pht',
          5 => 'phtml',
        ),
      ),
      'application/x-httpd-php3-preprocessed' => array(
        'e' => array(
          0 => 'php3p',
        ),
      ),
      'application/x-hwp' => array(
        'a' => array(
          0 => 'application/vnd.haansoft-hwp',
        ),
        'desc' => array(
          0 => 'Haansoft Hangul document',
        ),
        'e' => array(
          0 => 'hwp',
        ),
      ),
      'application/x-hwt' => array(
        'a' => array(
          0 => 'application/vnd.haansoft-hwt',
        ),
        'desc' => array(
          0 => 'Haansoft Hangul document template',
        ),
        'e' => array(
          0 => 'hwt',
        ),
      ),
      'application/x-ica' => array(
        'desc' => array(
          0 => 'Citrix ICA settings file',
          1 => 'ICA: Independent Computing Architecture',
        ),
        'e' => array(
          0 => 'ica',
        ),
      ),
      'application/x-install-instructions' => array(
        'e' => array(
          0 => 'install',
        ),
      ),
      'application/x-internet-signup' => array(
        'e' => array(
          0 => 'ins',
          1 => 'isp',
        ),
      ),
      'application/x-iphone' => array(
        'e' => array(
          0 => 'iii',
        ),
      ),
      'application/x-ips-patch' => array(
        'desc' => array(
          0 => 'IPS patch',
          1 => 'IPS: International Patching System',
        ),
        'e' => array(
          0 => 'ips',
        ),
      ),
      'application/x-ipynb+json' => array(
        'desc' => array(
          0 => 'Jupyter notebook document',
        ),
        'e' => array(
          0 => 'ipynb',
        ),
      ),
      'application/x-iso9660-appimage' => array(
        'desc' => array(
          0 => 'AppImage application bundle',
        ),
        'e' => array(
          0 => 'appimage',
        ),
      ),
      'application/x-it87' => array(
        'desc' => array(
          0 => 'IT 8.7 color calibration file',
        ),
        'e' => array(
          0 => 'it87',
        ),
      ),
      'application/x-iwork-keynote-sffkey' => array(
        'a' => array(
          0 => 'application/vnd.apple.keynote',
        ),
        'desc' => array(
          0 => 'Apple Keynote 5 presentation',
        ),
        'e' => array(
          0 => 'key',
        ),
      ),
      'application/x-java' => array(
        'a' => array(
          0 => 'application/java',
          1 => 'application/java-byte-code',
          2 => 'application/java-vm',
          3 => 'application/x-java-class',
          4 => 'application/x-java-vm',
        ),
        'desc' => array(
          0 => 'Java class',
        ),
        'e' => array(
          0 => 'class',
        ),
      ),
      'application/x-java-archive' => array(
        'a' => array(
          0 => 'application/x-jar',
          1 => 'application/java-archive',
        ),
        'desc' => array(
          0 => 'Java archive',
        ),
        'e' => array(
          0 => 'jar',
        ),
      ),
      'application/x-java-jce-keystore' => array(
        'desc' => array(
          0 => 'Java JCE keystore',
          1 => 'JCE: Java Cryptography Extension',
        ),
        'e' => array(
          0 => 'jceks',
        ),
      ),
      'application/x-java-jnlp-file' => array(
        'desc' => array(
          0 => 'JNLP file',
          1 => 'JNLP: Java Network Launching Protocol',
        ),
        'e' => array(
          0 => 'jnlp',
        ),
      ),
      'application/x-java-keystore' => array(
        'desc' => array(
          0 => 'Java keystore',
        ),
        'e' => array(
          0 => 'jks',
          1 => 'ks',
        ),
      ),
      'application/x-java-pack200' => array(
        'desc' => array(
          0 => 'Pack200 Java archive',
        ),
        'e' => array(
          0 => 'pack',
        ),
      ),
      'application/x-jbuilder-project' => array(
        'desc' => array(
          0 => 'JBuilder project',
        ),
        'e' => array(
          0 => 'jpr',
          1 => 'jpx',
        ),
      ),
      'application/x-jmol' => array(
        'e' => array(
          0 => 'jmz',
        ),
      ),
      'application/x-karbon' => array(
        'desc' => array(
          0 => 'Karbon14 drawing',
        ),
        'e' => array(
          0 => 'karbon',
        ),
      ),
      'application/x-kchart' => array(
        'desc' => array(
          0 => 'KChart chart',
        ),
        'e' => array(
          0 => 'chrt',
        ),
      ),
      'application/x-kexi-connectiondata' => array(
        'desc' => array(
          0 => 'Kexi settings',
        ),
        'e' => array(
          0 => 'kexic',
        ),
      ),
      'application/x-kexiproject-shortcut' => array(
        'desc' => array(
          0 => 'Kexi shortcut',
        ),
        'e' => array(
          0 => 'kexis',
        ),
      ),
      'application/x-kexiproject-sqlite2' => array(
        'desc' => array(
          0 => 'Kexi database file',
        ),
        'e' => array(
          0 => 'kexi',
        ),
      ),
      'application/x-kexiproject-sqlite3' => array(
        'a' => array(
          0 => 'application/x-vnd.kde.kexi',
          1 => 'application/x-kexiproject-sqlite',
        ),
        'desc' => array(
          0 => 'Kexi database file',
        ),
        'e' => array(
          0 => 'kexi',
        ),
      ),
      'application/x-kformula' => array(
        'desc' => array(
          0 => 'KFormula formula',
        ),
        'e' => array(
          0 => 'kfo',
        ),
      ),
      'application/x-killustrator' => array(
        'desc' => array(
          0 => 'KIllustrator drawing',
        ),
        'e' => array(
          0 => 'kil',
        ),
      ),
      'application/x-kivio' => array(
        'desc' => array(
          0 => 'Kivio flowchart',
        ),
        'e' => array(
          0 => 'flw',
        ),
      ),
      'application/x-kontour' => array(
        'desc' => array(
          0 => 'Kontour drawing',
        ),
        'e' => array(
          0 => 'kon',
        ),
      ),
      'application/x-kpovmodeler' => array(
        'desc' => array(
          0 => 'KPovModeler scene',
        ),
        'e' => array(
          0 => 'kpm',
        ),
      ),
      'application/x-kpresenter' => array(
        'desc' => array(
          0 => 'KPresenter presentation',
        ),
        'e' => array(
          0 => 'kpr',
          1 => 'kpt',
        ),
      ),
      'application/x-krita' => array(
        'desc' => array(
          0 => 'Krita document',
        ),
        'e' => array(
          0 => 'kra',
        ),
      ),
      'application/x-kspread' => array(
        'desc' => array(
          0 => 'KSpread spreadsheet',
        ),
        'e' => array(
          0 => 'ksp',
        ),
      ),
      'application/x-kugar' => array(
        'desc' => array(
          0 => 'Kugar document',
        ),
        'e' => array(
          0 => 'kud',
        ),
      ),
      'application/x-kword' => array(
        'desc' => array(
          0 => 'KWord document',
        ),
        'e' => array(
          0 => 'kwd',
          1 => 'kwt',
        ),
      ),
      'application/x-latex' => array(
        'e' => array(
          0 => 'latex',
        ),
      ),
      'application/x-lha' => array(
        'a' => array(
          0 => 'application/x-lzh-compressed',
          1 => 'application/x-lzh',
        ),
        'desc' => array(
          0 => 'LHA archive',
        ),
        'e' => array(
          0 => 'lha',
          1 => 'lzh',
        ),
      ),
      'application/x-lhz' => array(
        'desc' => array(
          0 => 'LHZ archive',
        ),
        'e' => array(
          0 => 'lhz',
        ),
      ),
      'application/x-lrzip' => array(
        'desc' => array(
          0 => 'Lrzip archive',
        ),
        'e' => array(
          0 => 'lrz',
        ),
      ),
      'application/x-lrzip-compressed-tar' => array(
        'desc' => array(
          0 => 'Tar archive (lrzip-compressed)',
        ),
        'e' => array(
          0 => 'tar.lrz',
          1 => 'tlrz',
        ),
      ),
      'application/x-lyx' => array(
        'a' => array(
          0 => 'text/x-lyx',
        ),
        'desc' => array(
          0 => 'LyX document',
        ),
        'e' => array(
          0 => 'lyx',
        ),
      ),
      'application/x-lz4' => array(
        'desc' => array(
          0 => 'LZ4 archive',
        ),
        'e' => array(
          0 => 'lz4',
        ),
      ),
      'application/x-lz4-compressed-tar' => array(
        'desc' => array(
          0 => 'Tar archive (LZ4-compressed)',
        ),
        'e' => array(
          0 => 'tar.lz4',
        ),
      ),
      'application/x-lzip' => array(
        'desc' => array(
          0 => 'Lzip archive',
        ),
        'e' => array(
          0 => 'lz',
        ),
      ),
      'application/x-lzip-compressed-tar' => array(
        'desc' => array(
          0 => 'Tar archive (lzip-compressed)',
        ),
        'e' => array(
          0 => 'tar.lz',
        ),
      ),
      'application/x-lzma' => array(
        'desc' => array(
          0 => 'LZMA archive',
          1 => 'LZMA: Lempel-Ziv-Markov chain-Algorithm',
        ),
        'e' => array(
          0 => 'lzma',
        ),
      ),
      'application/x-lzma-compressed-tar' => array(
        'desc' => array(
          0 => 'Tar archive (LZMA-compressed)',
        ),
        'e' => array(
          0 => 'tar.lzma',
          1 => 'tlz',
        ),
      ),
      'application/x-lzop' => array(
        'desc' => array(
          0 => 'LZO archive',
          1 => 'LZO: Lempel-Ziv-Oberhumer',
        ),
        'e' => array(
          0 => 'lzo',
        ),
      ),
      'application/x-lzpdf' => array(
        'desc' => array(
          0 => 'PDF document (lzip-compressed)',
        ),
        'e' => array(
          0 => 'pdf.lz',
        ),
      ),
      'application/x-lzx' => array(
        'e' => array(
          0 => 'lzx',
        ),
      ),
      'application/x-m4' => array(
        'desc' => array(
          0 => 'M4 macro',
        ),
        'e' => array(
          0 => 'm4',
        ),
      ),
      'application/x-magicpoint' => array(
        'desc' => array(
          0 => 'MagicPoint presentation',
        ),
        'e' => array(
          0 => 'mgp',
        ),
      ),
      'application/x-maker' => array(
        'e' => array(
          0 => 'book',
          1 => 'fb',
          2 => 'fbdoc',
          3 => 'fm',
          4 => 'frame',
          5 => 'frm',
          6 => 'maker',
        ),
      ),
      'application/x-markaby' => array(
        'desc' => array(
          0 => 'Markaby script',
        ),
        'e' => array(
          0 => 'mab',
        ),
      ),
      'application/x-mie' => array(
        'e' => array(
          0 => 'mie',
        ),
      ),
      'application/x-mif' => array(
        'desc' => array(
          0 => 'Adobe FrameMaker MIF document',
        ),
        'e' => array(
          0 => 'mif',
        ),
      ),
      'application/x-mimearchive' => array(
        'desc' => array(
          0 => 'MHTML web archive',
          1 => 'MHTML: MIME HTML',
        ),
        'e' => array(
          0 => 'mhtml',
          1 => 'mht',
        ),
      ),
      'application/x-mobipocket-ebook' => array(
        'desc' => array(
          0 => 'Mobipocket e-book',
        ),
        'e' => array(
          0 => 'prc',
          1 => 'mobi',
        ),
      ),
      'application/x-ms-application' => array(
        'e' => array(
          0 => 'application',
        ),
      ),
      'application/x-ms-dos-executable' => array(
        'desc' => array(
          0 => 'DOS/Windows executable',
        ),
        'e' => array(
          0 => 'exe',
        ),
      ),
      'application/x-ms-shortcut' => array(
        'e' => array(
          0 => 'lnk',
        ),
      ),
      'application/x-ms-wim' => array(
        'desc' => array(
          0 => 'WIM disk image',
          1 => 'WIM: Windows Imaging Format',
        ),
        'e' => array(
          0 => 'wim',
          1 => 'swm',
        ),
      ),
      'application/x-ms-wmd' => array(
        'e' => array(
          0 => 'wmd',
        ),
      ),
      'application/x-ms-wmz' => array(
        'e' => array(
          0 => 'wmz',
        ),
      ),
      'application/x-ms-xbap' => array(
        'e' => array(
          0 => 'xbap',
        ),
      ),
      'application/x-msbinder' => array(
        'e' => array(
          0 => 'obd',
        ),
      ),
      'application/x-mscardfile' => array(
        'e' => array(
          0 => 'crd',
        ),
      ),
      'application/x-msclip' => array(
        'e' => array(
          0 => 'clp',
        ),
      ),
      'application/x-msdos-program' => array(
        'e' => array(
          0 => 'bat',
          1 => 'com',
          2 => 'dll',
          3 => 'exe',
        ),
      ),
      'application/x-msdownload' => array(
        'e' => array(
          0 => 'exe',
          1 => 'dll',
          2 => 'com',
          3 => 'bat',
          4 => 'msi',
        ),
      ),
      'application/x-msi' => array(
        'desc' => array(
          0 => 'Windows Installer package',
        ),
        'e' => array(
          0 => 'msi',
        ),
      ),
      'application/x-msmediaview' => array(
        'e' => array(
          0 => 'mvb',
          1 => 'm13',
          2 => 'm14',
        ),
      ),
      'application/x-msmoney' => array(
        'e' => array(
          0 => 'mny',
        ),
      ),
      'application/x-mspublisher' => array(
        'e' => array(
          0 => 'pub',
        ),
      ),
      'application/x-msschedule' => array(
        'e' => array(
          0 => 'scd',
        ),
      ),
      'application/x-msterminal' => array(
        'e' => array(
          0 => 'trm',
        ),
      ),
      'application/x-mswinurl' => array(
        'desc' => array(
          0 => 'Internet shortcut',
        ),
        'e' => array(
          0 => 'url',
        ),
      ),
      'application/x-mswrite' => array(
        'desc' => array(
          0 => 'WRI document',
        ),
        'e' => array(
          0 => 'wri',
        ),
      ),
      'application/x-msx-rom' => array(
        'desc' => array(
          0 => 'MSX ROM',
        ),
        'e' => array(
          0 => 'msx',
        ),
      ),
      'application/x-n64-rom' => array(
        'desc' => array(
          0 => 'Nintendo64 ROM',
        ),
        'e' => array(
          0 => 'n64',
          1 => 'z64',
          2 => 'v64',
        ),
      ),
      'application/x-navi-animation' => array(
        'desc' => array(
          0 => 'Windows animated cursor',
        ),
        'e' => array(
          0 => 'ani',
        ),
      ),
      'application/x-neo-geo-pocket-color-rom' => array(
        'desc' => array(
          0 => 'Neo-Geo Pocket Color ROM',
        ),
        'e' => array(
          0 => 'ngc',
        ),
      ),
      'application/x-neo-geo-pocket-rom' => array(
        'desc' => array(
          0 => 'Neo-Geo Pocket ROM',
        ),
        'e' => array(
          0 => 'ngp',
        ),
      ),
      'application/x-nes-rom' => array(
        'desc' => array(
          0 => 'NES ROM',
        ),
        'e' => array(
          0 => 'nes',
          1 => 'nez',
          2 => 'unf',
          3 => 'unif',
        ),
      ),
      'application/x-netcdf' => array(
        'a' => array(
          0 => 'application/x-cdf',
        ),
        'desc' => array(
          0 => 'Unidata NetCDF document',
          1 => 'NetCDF: Network Common Data Form',
        ),
        'e' => array(
          0 => 'nc',
          1 => 'cdf',
        ),
      ),
      'application/x-netshow-channel' => array(
        'desc' => array(
          0 => 'Windows Media Station file',
        ),
        'e' => array(
          0 => 'nsc',
        ),
      ),
      'application/x-nintendo-ds-rom' => array(
        'desc' => array(
          0 => 'Nintendo DS ROM',
        ),
        'e' => array(
          0 => 'nds',
        ),
      ),
      'application/x-ns-proxy-autoconfig' => array(
        'e' => array(
          0 => 'pac',
        ),
      ),
      'application/x-nwc' => array(
        'e' => array(
          0 => 'nwc',
        ),
      ),
      'application/x-nzb' => array(
        'desc' => array(
          0 => 'NewzBin usenet index',
        ),
        'e' => array(
          0 => 'nzb',
        ),
      ),
      'application/x-object' => array(
        'desc' => array(
          0 => 'object code',
        ),
        'e' => array(
          0 => 'o',
        ),
      ),
      'application/x-oleo' => array(
        'desc' => array(
          0 => 'GNU Oleo spreadsheet',
        ),
        'e' => array(
          0 => 'oleo',
        ),
      ),
      'application/x-oz-application' => array(
        'e' => array(
          0 => 'oza',
        ),
      ),
      'application/x-pagemaker' => array(
        'desc' => array(
          0 => 'Adobe PageMaker document',
        ),
        'e' => array(
          0 => 'p65',
          1 => 'pm',
          2 => 'pm6',
          3 => 'pmd',
        ),
      ),
      'application/x-pak' => array(
        'desc' => array(
          0 => 'PAK archive',
        ),
        'e' => array(
          0 => 'pak',
        ),
      ),
      'application/x-par2' => array(
        'desc' => array(
          0 => 'Parchive archive',
          1 => 'Parchive: Parity Volume Set Archive',
        ),
        'e' => array(
          0 => 'par2',
        ),
      ),
      'application/x-partial-download' => array(
        'desc' => array(
          0 => 'Partially downloaded file',
        ),
        'e' => array(
          0 => 'wkdownload',
          1 => 'crdownload',
          2 => 'part',
        ),
      ),
      'application/x-pc-engine-rom' => array(
        'desc' => array(
          0 => 'PC Engine ROM',
        ),
        'e' => array(
          0 => 'pce',
        ),
      ),
      'application/x-perl' => array(
        'a' => array(
          0 => 'text/x-perl',
        ),
        'desc' => array(
          0 => 'Perl script',
        ),
        'e' => array(
          0 => 'pl',
          1 => 'pm',
          2 => 'al',
          3 => 'perl',
          4 => 'pod',
          5 => 't',
        ),
      ),
      'application/x-php' => array(
        'desc' => array(
          0 => 'PHP script',
        ),
        'e' => array(
          0 => 'php',
          1 => 'php3',
          2 => 'php4',
          3 => 'php5',
          4 => 'phps',
        ),
      ),
      'application/x-pkcs7-certificates' => array(
        'desc' => array(
          0 => 'PKCS#7 certificate bundle',
          1 => 'PKCS: Public-Key Cryptography Standards',
        ),
        'e' => array(
          0 => 'p7b',
          1 => 'spc',
        ),
      ),
      'application/x-pkcs7-certreqresp' => array(
        'e' => array(
          0 => 'p7r',
        ),
      ),
      'application/x-planperfect' => array(
        'desc' => array(
          0 => 'PlanPerfect spreadsheet',
        ),
        'e' => array(
          0 => 'pln',
        ),
      ),
      'application/x-pocket-word' => array(
        'desc' => array(
          0 => 'Pocket Word document',
        ),
        'e' => array(
          0 => 'psw',
        ),
      ),
      'application/x-pw' => array(
        'desc' => array(
          0 => 'Pathetic Writer document',
        ),
        'e' => array(
          0 => 'pw',
        ),
      ),
      'application/x-pyspread-bz-spreadsheet' => array(
        'desc' => array(
          0 => 'Pyspread spreadsheet (bzip-compressed)',
        ),
        'e' => array(
          0 => 'pys',
        ),
      ),
      'application/x-pyspread-spreadsheet' => array(
        'desc' => array(
          0 => 'Pyspread spreadsheet',
        ),
        'e' => array(
          0 => 'pysu',
        ),
      ),
      'application/x-python-bytecode' => array(
        'a' => array(
          0 => 'application/x-python-code',
        ),
        'desc' => array(
          0 => 'Python bytecode',
        ),
        'e' => array(
          0 => 'pyc',
          1 => 'pyo',
        ),
      ),
      'application/x-qemu-disk' => array(
        'desc' => array(
          0 => 'QEMU QCOW disk image',
          1 => 'QCOW: QEMU Copy On Write',
        ),
        'e' => array(
          0 => 'qcow2',
          1 => 'qcow',
        ),
      ),
      'application/x-qpress' => array(
        'desc' => array(
          0 => 'Qpress archive',
        ),
        'e' => array(
          0 => 'qp',
        ),
      ),
      'application/x-qtiplot' => array(
        'desc' => array(
          0 => 'QtiPlot document',
        ),
        'e' => array(
          0 => 'qti',
          1 => 'qti.gz',
        ),
      ),
      'application/x-quattropro' => array(
        'desc' => array(
          0 => 'Quattro Pro spreadsheet',
        ),
        'e' => array(
          0 => 'wb1',
          1 => 'wb2',
          2 => 'wb3',
        ),
      ),
      'application/x-quicktime-media-link' => array(
        'a' => array(
          0 => 'application/x-quicktimeplayer',
        ),
        'desc' => array(
          0 => 'QuickTime playlist',
        ),
        'e' => array(
          0 => 'qtl',
        ),
      ),
      'application/x-qw' => array(
        'desc' => array(
          0 => 'Quicken document',
        ),
        'e' => array(
          0 => 'qif',
        ),
      ),
      'application/x-raw-disk-image' => array(
        'desc' => array(
          0 => 'Raw disk image',
        ),
        'e' => array(
          0 => 'raw-disk-image',
          1 => 'img',
        ),
      ),
      'application/x-raw-disk-image-xz-compressed' => array(
        'desc' => array(
          0 => 'Raw disk image (XZ-compressed)',
        ),
        'e' => array(
          0 => 'raw-disk-image.xz',
          1 => 'img.xz',
        ),
      ),
      'application/x-raw-floppy-disk-image' => array(
        'a' => array(
          0 => 'application/x-fd-file',
        ),
        'desc' => array(
          0 => 'Floppy disk image',
        ),
        'e' => array(
          0 => 'fd',
          1 => 'qd',
        ),
      ),
      'application/x-research-info-systems' => array(
        'e' => array(
          0 => 'ris',
        ),
      ),
      'application/x-rpm' => array(
        'a' => array(
          0 => 'application/x-redhat-package-manager',
        ),
        'desc' => array(
          0 => 'RPM package',
        ),
        'e' => array(
          0 => 'rpm',
        ),
      ),
      'application/x-ruby' => array(
        'desc' => array(
          0 => 'Ruby script',
        ),
        'e' => array(
          0 => 'rb',
        ),
      ),
      'application/x-sami' => array(
        'desc' => array(
          0 => 'SAMI subtitles',
          1 => 'SAMI: Synchronized Accessible Media Interchange',
        ),
        'e' => array(
          0 => 'smi',
          1 => 'sami',
        ),
      ),
      'application/x-saturn-rom' => array(
        'desc' => array(
          0 => 'Sega Saturn disc image',
        ),
        'e' => array(
          0 => 'iso',
        ),
      ),
      'application/x-sega-cd-rom' => array(
        'desc' => array(
          0 => 'Sega CD disc image',
        ),
        'e' => array(
          0 => 'iso',
        ),
      ),
      'application/x-sg1000-rom' => array(
        'desc' => array(
          0 => 'SG-1000 ROM',
        ),
        'e' => array(
          0 => 'sg',
        ),
      ),
      'application/x-sh' => array(
        'e' => array(
          0 => 'sh',
        ),
      ),
      'application/x-shar' => array(
        'desc' => array(
          0 => 'shell archive',
        ),
        'e' => array(
          0 => 'shar',
        ),
      ),
      'application/x-shared-library-la' => array(
        'desc' => array(
          0 => 'libtool shared library',
        ),
        'e' => array(
          0 => 'la',
        ),
      ),
      'application/x-sharedlib' => array(
        'desc' => array(
          0 => 'shared library',
        ),
        'e' => array(
          0 => 'so',
        ),
      ),
      'application/x-shellscript' => array(
        'a' => array(
          0 => 'text/x-sh',
        ),
        'desc' => array(
          0 => 'shell script',
        ),
        'e' => array(
          0 => 'sh',
        ),
      ),
      'application/x-shorten' => array(
        'a' => array(
          0 => 'audio/x-shorten',
        ),
        'desc' => array(
          0 => 'Shorten audio',
        ),
        'e' => array(
          0 => 'shn',
        ),
      ),
      'application/x-siag' => array(
        'desc' => array(
          0 => 'Siag spreadsheet',
        ),
        'e' => array(
          0 => 'siag',
        ),
      ),
      'application/x-silverlight-app' => array(
        'e' => array(
          0 => 'xap',
        ),
      ),
      'application/x-smaf' => array(
        'a' => array(
          0 => 'application/vnd.smaf',
        ),
        'desc' => array(
          0 => 'SMAF audio',
          1 => 'SMAF: Synthetic music Mobile Application Format',
        ),
        'e' => array(
          0 => 'mmf',
          1 => 'smaf',
        ),
      ),
      'application/x-sms-rom' => array(
        'desc' => array(
          0 => 'Master System ROM',
        ),
        'e' => array(
          0 => 'sms',
        ),
      ),
      'application/x-source-rpm' => array(
        'desc' => array(
          0 => 'Source RPM package',
        ),
        'e' => array(
          0 => 'src.rpm',
          1 => 'spm',
        ),
      ),
      'application/x-spss-por' => array(
        'desc' => array(
          0 => 'SPSS portable data file',
          1 => 'SPSS: Statistical Package for the Social Sciences',
        ),
        'e' => array(
          0 => 'por',
        ),
      ),
      'application/x-spss-sav' => array(
        'a' => array(
          0 => 'application/x-spss-savefile',
        ),
        'desc' => array(
          0 => 'SPSS data file',
          1 => 'SPSS: Statistical Package for the Social Sciences',
        ),
        'e' => array(
          0 => 'sav',
          1 => 'zsav',
        ),
      ),
      'application/x-sql' => array(
        'e' => array(
          0 => 'sql',
        ),
      ),
      'application/x-sqlite2' => array(
        'desc' => array(
          0 => 'SQLite2 database',
        ),
        'e' => array(
          0 => 'sqlite2',
        ),
      ),
      'application/x-stuffit' => array(
        'a' => array(
          0 => 'application/stuffit',
          1 => 'application/x-sit',
        ),
        'desc' => array(
          0 => 'StuffIt archive',
        ),
        'e' => array(
          0 => 'sit',
          1 => 'sitx',
        ),
      ),
      'application/x-stuffitx' => array(
        'e' => array(
          0 => 'sitx',
        ),
      ),
      'application/x-subrip' => array(
        'a' => array(
          0 => 'application/x-srt',
        ),
        'desc' => array(
          0 => 'SubRip subtitles',
        ),
        'e' => array(
          0 => 'srt',
        ),
      ),
      'application/x-sv4cpio' => array(
        'desc' => array(
          0 => 'SV4 CPIO archive',
        ),
        'e' => array(
          0 => 'sv4cpio',
        ),
      ),
      'application/x-sv4crc' => array(
        'desc' => array(
          0 => 'SV4 CPIO archive (with CRC)',
        ),
        'e' => array(
          0 => 'sv4crc',
        ),
      ),
      'application/x-t3vm-image' => array(
        'e' => array(
          0 => 't3',
        ),
      ),
      'application/x-t602' => array(
        'desc' => array(
          0 => 'T602 document',
        ),
        'e' => array(
          0 => '602',
        ),
      ),
      'application/x-tads' => array(
        'e' => array(
          0 => 'gam',
        ),
      ),
      'application/x-tar' => array(
        'a' => array(
          0 => 'application/x-gtar',
        ),
        'desc' => array(
          0 => 'Tar archive',
        ),
        'e' => array(
          0 => 'tar',
          1 => 'gtar',
          2 => 'gem',
          3 => 'taz',
          4 => 'tgz',
        ),
      ),
      'application/x-tarz' => array(
        'desc' => array(
          0 => 'Tar archive (compressed)',
        ),
        'e' => array(
          0 => 'tar.z',
          1 => 'taz',
        ),
      ),
      'application/x-tcl' => array(
        'e' => array(
          0 => 'tcl',
        ),
      ),
      'application/x-tex-gf' => array(
        'desc' => array(
          0 => 'generic font file',
        ),
        'e' => array(
          0 => 'gf',
        ),
      ),
      'application/x-tex-pk' => array(
        'desc' => array(
          0 => 'packed font file',
        ),
        'e' => array(
          0 => 'pk',
        ),
      ),
      'application/x-tex-tfm' => array(
        'e' => array(
          0 => 'tfm',
        ),
      ),
      'application/x-texinfo' => array(
        'e' => array(
          0 => 'texinfo',
          1 => 'texi',
        ),
      ),
      'application/x-tgif' => array(
        'desc' => array(
          0 => 'TGIF document',
        ),
        'e' => array(
          0 => 'obj',
        ),
      ),
      'application/x-theme' => array(
        'desc' => array(
          0 => 'theme',
        ),
        'e' => array(
          0 => 'theme',
        ),
      ),
      'application/x-thomson-cartridge-memo7' => array(
        'desc' => array(
          0 => 'Thomson Mémo7 cartridge',
        ),
        'e' => array(
          0 => 'm7',
        ),
      ),
      'application/x-thomson-cassette' => array(
        'desc' => array(
          0 => 'Thomson cassette',
        ),
        'e' => array(
          0 => 'k7',
        ),
      ),
      'application/x-thomson-sap-image' => array(
        'a' => array(
          0 => 'application/x-sap-file',
        ),
        'desc' => array(
          0 => 'SAP Thomson floppy disk image',
          1 => 'SAP: Système d\'Archivage Pukall',
        ),
        'e' => array(
          0 => 'sap',
        ),
      ),
      'application/x-trash' => array(
        'desc' => array(
          0 => 'backup file',
        ),
        'e' => array(
          0 => 'bak',
          1 => 'old',
          2 => 'sik',
          3 => '%',
          4 => '~',
        ),
      ),
      'application/x-troff-man' => array(
        'desc' => array(
          0 => 'Manpage manual document',
        ),
        'e' => array(
          0 => 'man',
        ),
      ),
      'application/x-tzo' => array(
        'desc' => array(
          0 => 'Tar archive (LZO-compressed)',
        ),
        'e' => array(
          0 => 'tar.lzo',
          1 => 'tzo',
        ),
      ),
      'application/x-ufraw' => array(
        'desc' => array(
          0 => 'UFRaw ID image',
          1 => 'UFRaw: Unidentified Flying Raw',
        ),
        'e' => array(
          0 => 'ufraw',
        ),
      ),
      'application/x-ustar' => array(
        'desc' => array(
          0 => 'Ustar archive',
        ),
        'e' => array(
          0 => 'ustar',
        ),
      ),
      'application/x-virtual-boy-rom' => array(
        'desc' => array(
          0 => 'Virtual Boy ROM',
        ),
        'e' => array(
          0 => 'vb',
        ),
      ),
      'application/x-wais-source' => array(
        'desc' => array(
          0 => 'WAIS source code',
        ),
        'e' => array(
          0 => 'src',
        ),
      ),
      'application/x-wii-rom' => array(
        'a' => array(
          0 => 'application/x-wii-iso-image',
          1 => 'application/x-wbfs',
          2 => 'application/x-wia',
        ),
        'desc' => array(
          0 => 'Wii disc image',
        ),
        'e' => array(
          0 => 'iso',
        ),
      ),
      'application/x-wii-wad' => array(
        'desc' => array(
          0 => 'WiiWare bundle',
        ),
        'e' => array(
          0 => 'wad',
        ),
      ),
      'application/x-windows-themepack' => array(
        'desc' => array(
          0 => 'Microsoft Windows theme pack',
        ),
        'e' => array(
          0 => 'themepack',
        ),
      ),
      'application/x-wingz' => array(
        'e' => array(
          0 => 'wz',
        ),
      ),
      'application/x-wonderswan-color-rom' => array(
        'desc' => array(
          0 => 'Bandai WonderSwan Color ROM',
        ),
        'e' => array(
          0 => 'wsc',
        ),
      ),
      'application/x-wonderswan-rom' => array(
        'desc' => array(
          0 => 'Bandai WonderSwan ROM',
        ),
        'e' => array(
          0 => 'ws',
        ),
      ),
      'application/x-wpg' => array(
        'desc' => array(
          0 => 'WordPerfect/Drawperfect image',
        ),
        'e' => array(
          0 => 'wpg',
        ),
      ),
      'application/x-wwf' => array(
        'a' => array(
          0 => 'application/wwf',
        ),
        'desc' => array(
          0 => 'WWF document',
        ),
        'e' => array(
          0 => 'wwf',
        ),
      ),
      'application/x-x509-ca-cert' => array(
        'desc' => array(
          0 => 'DER/PEM/Netscape-encoded X.509 certificate',
        ),
        'e' => array(
          0 => 'der',
          1 => 'crt',
          2 => 'cert',
          3 => 'pem',
        ),
      ),
      'application/x-xar' => array(
        'desc' => array(
          0 => 'XAR archive',
          1 => 'XAR: eXtensible ARchive',
        ),
        'e' => array(
          0 => 'xar',
          1 => 'pkg',
        ),
      ),
      'application/x-xbel' => array(
        'desc' => array(
          0 => 'XBEL bookmarks',
          1 => 'XBEL: XML Bookmark Exchange Language',
        ),
        'e' => array(
          0 => 'xbel',
        ),
      ),
      'application/x-xfig' => array(
        'e' => array(
          0 => 'fig',
        ),
      ),
      'application/x-xliff+xml' => array(
        'e' => array(
          0 => 'xlf',
        ),
      ),
      'application/x-xpinstall' => array(
        'desc' => array(
          0 => 'XPInstall installer module',
        ),
        'e' => array(
          0 => 'xpi',
        ),
      ),
      'application/x-xz' => array(
        'desc' => array(
          0 => 'XZ archive',
        ),
        'e' => array(
          0 => 'xz',
        ),
      ),
      'application/x-xz-compressed-tar' => array(
        'desc' => array(
          0 => 'Tar archive (XZ-compressed)',
        ),
        'e' => array(
          0 => 'tar.xz',
          1 => 'txz',
        ),
      ),
      'application/x-xzpdf' => array(
        'desc' => array(
          0 => 'PDF document (XZ-compressed)',
        ),
        'e' => array(
          0 => 'pdf.xz',
        ),
      ),
      'application/x-yaml' => array(
        'a' => array(
          0 => 'text/yaml',
          1 => 'text/x-yaml',
        ),
        'desc' => array(
          0 => 'YAML document',
          1 => 'YAML: YAML Ain\'t Markup Language',
        ),
        'e' => array(
          0 => 'yaml',
          1 => 'yml',
        ),
      ),
      'application/x-zip-compressed-fb2' => array(
        'desc' => array(
          0 => 'Compressed FictionBook document',
        ),
        'e' => array(
          0 => 'fb2.zip',
        ),
      ),
      'application/x-zmachine' => array(
        'e' => array(
          0 => 'z1',
          1 => 'z2',
          2 => 'z3',
          3 => 'z4',
          4 => 'z5',
          5 => 'z6',
          6 => 'z7',
          7 => 'z8',
        ),
      ),
      'application/x-zoo' => array(
        'desc' => array(
          0 => 'Zoo archive',
        ),
        'e' => array(
          0 => 'zoo',
        ),
      ),
      'application/x-zstd-compressed-tar' => array(
        'desc' => array(
          0 => 'Tar archive (Zstandard-compressed)',
        ),
        'e' => array(
          0 => 'tar.zst',
          1 => 'tzst',
        ),
      ),
      'application/xaml+xml' => array(
        'e' => array(
          0 => 'xaml',
        ),
      ),
      'application/xcap-diff+xml' => array(
        'e' => array(
          0 => 'xdf',
        ),
      ),
      'application/xenc+xml' => array(
        'e' => array(
          0 => 'xenc',
        ),
      ),
      'application/xhtml+xml' => array(
        'desc' => array(
          0 => 'XHTML page',
          1 => 'XHTML: Extensible HyperText Markup Language',
        ),
        'e' => array(
          0 => 'xhtml',
          1 => 'xht',
          2 => 'html',
          3 => 'htm',
        ),
      ),
      'application/xliff+xml' => array(
        'a' => array(
          0 => 'application/x-xliff',
        ),
        'desc' => array(
          0 => 'XLIFF translation file',
          1 => 'XLIFF: XML Localization Interchange File Format',
        ),
        'e' => array(
          0 => 'xlf',
          1 => 'xliff',
        ),
      ),
      'application/xml' => array(
        'a' => array(
          0 => 'text/xml',
        ),
        'desc' => array(
          0 => 'XML document',
          1 => 'XML: eXtensible Markup Language',
        ),
        'e' => array(
          0 => 'xml',
          1 => 'xsl',
          2 => 'xbl',
          3 => 'xsd',
          4 => 'rng',
        ),
      ),
      'application/xml-dtd' => array(
        'a' => array(
          0 => 'text/x-dtd',
        ),
        'desc' => array(
          0 => 'DTD file',
          1 => 'DTD: Document Type Definition',
        ),
        'e' => array(
          0 => 'dtd',
        ),
      ),
      'application/xml-external-parsed-entity' => array(
        'a' => array(
          0 => 'text/xml-external-parsed-entity',
        ),
        'desc' => array(
          0 => 'XML entities document',
          1 => 'XML: eXtensible Markup Language',
        ),
        'e' => array(
          0 => 'ent',
        ),
      ),
      'application/xop+xml' => array(
        'e' => array(
          0 => 'xop',
        ),
      ),
      'application/xproc+xml' => array(
        'e' => array(
          0 => 'xpl',
        ),
      ),
      'application/xslt+xml' => array(
        'desc' => array(
          0 => 'XSLT stylesheet',
          1 => 'XSLT: eXtensible Stylesheet Language Transformation',
        ),
        'e' => array(
          0 => 'xslt',
          1 => 'xsl',
        ),
      ),
      'application/xspf+xml' => array(
        'a' => array(
          0 => 'application/x-xspf+xml',
        ),
        'desc' => array(
          0 => 'XSPF playlist',
          1 => 'XSPF: XML Shareable Playlist Format',
        ),
        'e' => array(
          0 => 'xspf',
        ),
      ),
      'application/xv+xml' => array(
        'e' => array(
          0 => 'mxml',
          1 => 'xhvml',
          2 => 'xvml',
          3 => 'xvm',
        ),
      ),
      'application/yang' => array(
        'e' => array(
          0 => 'yang',
        ),
      ),
      'application/yin+xml' => array(
        'e' => array(
          0 => 'yin',
        ),
      ),
      'application/zip' => array(
        'a' => array(
          0 => 'application/x-zip-compressed',
          1 => 'application/x-zip',
        ),
        'desc' => array(
          0 => 'Zip archive',
        ),
        'e' => array(
          0 => 'zip',
        ),
      ),
      'application/zlib' => array(
        'desc' => array(
          0 => 'Zlib archive',
        ),
        'e' => array(
          0 => 'zz',
        ),
      ),
      'application/zstd' => array(
        'desc' => array(
          0 => 'Zstandard archive',
        ),
        'e' => array(
          0 => 'zst',
        ),
      ),
      'audio/aac' => array(
        'a' => array(
          0 => 'audio/x-aac',
        ),
        'desc' => array(
          0 => 'AAC audio',
          1 => 'AAC: Advanced Audio Coding',
        ),
        'e' => array(
          0 => 'aac',
          1 => 'adts',
          2 => 'ass',
        ),
      ),
      'audio/ac3' => array(
        'desc' => array(
          0 => 'Dolby Digital audio',
        ),
        'e' => array(
          0 => 'ac3',
        ),
      ),
      'audio/adpcm' => array(
        'e' => array(
          0 => 'adp',
        ),
      ),
      'audio/amr' => array(
        'a' => array(
          0 => 'audio/amr-encrypted',
        ),
        'desc' => array(
          0 => 'AMR audio',
          1 => 'AMR: Adaptive Multi-Rate',
        ),
        'e' => array(
          0 => 'amr',
        ),
      ),
      'audio/amr-wb' => array(
        'a' => array(
          0 => 'audio/amr-wb-encrypted',
        ),
        'desc' => array(
          0 => 'AMR-WB audio',
          1 => 'AMR-WB: Adaptive Multi-Rate Wideband',
        ),
        'e' => array(
          0 => 'awb',
        ),
      ),
      'audio/annodex' => array(
        'a' => array(
          0 => 'audio/x-annodex',
        ),
        'desc' => array(
          0 => 'Annodex audio',
        ),
        'e' => array(
          0 => 'axa',
        ),
      ),
      'audio/basic' => array(
        'desc' => array(
          0 => 'ULAW (Sun) audio',
        ),
        'e' => array(
          0 => 'au',
          1 => 'snd',
        ),
      ),
      'audio/flac' => array(
        'a' => array(
          0 => 'audio/x-flac',
          1 => 'application/x-flac',
        ),
        'desc' => array(
          0 => 'FLAC audio',
        ),
        'e' => array(
          0 => 'flac',
        ),
      ),
      'audio/midi' => array(
        'a' => array(
          0 => 'audio/x-midi',
        ),
        'desc' => array(
          0 => 'MIDI audio',
        ),
        'e' => array(
          0 => 'mid',
          1 => 'midi',
          2 => 'kar',
          3 => 'rmi',
        ),
      ),
      'audio/mp2' => array(
        'a' => array(
          0 => 'audio/x-mp2',
        ),
        'desc' => array(
          0 => 'MP2 audio',
        ),
        'e' => array(
          0 => 'mp2',
        ),
      ),
      'audio/mp4' => array(
        'a' => array(
          0 => 'audio/x-m4a',
          1 => 'audio/m4a',
        ),
        'desc' => array(
          0 => 'MPEG-4 audio',
        ),
        'e' => array(
          0 => 'm4a',
          1 => 'mp4a',
          2 => 'f4a',
          3 => 'f4b',
        ),
      ),
      'audio/mpeg' => array(
        'a' => array(
          0 => 'audio/x-mp3',
          1 => 'audio/x-mpg',
          2 => 'audio/x-mpeg',
          3 => 'audio/mp3',
        ),
        'desc' => array(
          0 => 'MP3 audio',
        ),
        'e' => array(
          0 => 'mpga',
          1 => 'mp2',
          2 => 'mp2a',
          3 => 'mp3',
          4 => 'm2a',
          5 => 'm3a',
          6 => 'm4a',
          7 => 'mpega',
        ),
      ),
      'audio/ogg' => array(
        'a' => array(
          0 => 'audio/x-ogg',
        ),
        'desc' => array(
          0 => 'Ogg audio',
        ),
        'e' => array(
          0 => 'oga',
          1 => 'ogg',
          2 => 'spx',
          3 => 'opus',
        ),
      ),
      'audio/prs.sid' => array(
        'desc' => array(
          0 => 'Commodore 64 audio',
        ),
        'e' => array(
          0 => 'sid',
          1 => 'psid',
        ),
      ),
      'audio/s3m' => array(
        'e' => array(
          0 => 's3m',
        ),
      ),
      'audio/silk' => array(
        'e' => array(
          0 => 'sil',
        ),
      ),
      'audio/usac' => array(
        'desc' => array(
          0 => 'USAC audio',
          1 => 'USAC: Unified Speech and Audio Coding',
        ),
        'e' => array(
          0 => 'loas',
          1 => 'xhe',
        ),
      ),
      'audio/vnd.audible.aax' => array(
        'desc' => array(
          0 => 'Audible Enhanced audio',
        ),
        'e' => array(
          0 => 'aax',
        ),
      ),
      'audio/vnd.dece.audio' => array(
        'e' => array(
          0 => 'uva',
          1 => 'uvva',
        ),
      ),
      'audio/vnd.digital-winds' => array(
        'e' => array(
          0 => 'eol',
        ),
      ),
      'audio/vnd.dra' => array(
        'e' => array(
          0 => 'dra',
        ),
      ),
      'audio/vnd.dts' => array(
        'a' => array(
          0 => 'audio/x-dts',
        ),
        'desc' => array(
          0 => 'DTS audio',
        ),
        'e' => array(
          0 => 'dts',
        ),
      ),
      'audio/vnd.dts.hd' => array(
        'a' => array(
          0 => 'audio/x-dtshd',
        ),
        'desc' => array(
          0 => 'DTSHD audio',
        ),
        'e' => array(
          0 => 'dtshd',
        ),
      ),
      'audio/vnd.lucent.voice' => array(
        'e' => array(
          0 => 'lvp',
        ),
      ),
      'audio/vnd.ms-playready.media.pya' => array(
        'e' => array(
          0 => 'pya',
        ),
      ),
      'audio/vnd.nuera.ecelp4800' => array(
        'e' => array(
          0 => 'ecelp4800',
        ),
      ),
      'audio/vnd.nuera.ecelp7470' => array(
        'e' => array(
          0 => 'ecelp7470',
        ),
      ),
      'audio/vnd.nuera.ecelp9600' => array(
        'e' => array(
          0 => 'ecelp9600',
        ),
      ),
      'audio/vnd.rip' => array(
        'e' => array(
          0 => 'rip',
        ),
      ),
      'audio/vnd.rn-realaudio' => array(
        'a' => array(
          0 => 'audio/x-pn-realaudio',
          1 => 'audio/vnd.m-realaudio',
          2 => 'audio/x-realaudio',
        ),
        'desc' => array(
          0 => 'RealAudio document',
        ),
        'e' => array(
          0 => 'ra',
          1 => 'rax',
          2 => 'ram',
          3 => 'rm',
        ),
      ),
      'audio/webm' => array(
        'e' => array(
          0 => 'weba',
        ),
      ),
      'audio/x-aifc' => array(
        'a' => array(
          0 => 'audio/x-aiffc',
        ),
        'desc' => array(
          0 => 'AIFC audio',
          1 => 'AIFC: Audio Interchange File format Compressed',
        ),
        'e' => array(
          0 => 'aifc',
          1 => 'aiffc',
        ),
      ),
      'audio/x-aiff' => array(
        'desc' => array(
          0 => 'AIFF/Amiga/Mac audio',
          1 => 'AIFF: Audio Interchange File Format',
        ),
        'e' => array(
          0 => 'aif',
          1 => 'aiff',
          2 => 'aifc',
        ),
      ),
      'audio/x-amzxml' => array(
        'desc' => array(
          0 => 'AmazonMP3 download file',
        ),
        'e' => array(
          0 => 'amz',
        ),
      ),
      'audio/x-ape' => array(
        'desc' => array(
          0 => 'Monkey\'s audio',
        ),
        'e' => array(
          0 => 'ape',
        ),
      ),
      'audio/x-caf' => array(
        'e' => array(
          0 => 'caf',
        ),
      ),
      'audio/x-flac+ogg' => array(
        'a' => array(
          0 => 'audio/x-oggflac',
        ),
        'desc' => array(
          0 => 'Ogg FLAC audio',
        ),
        'e' => array(
          0 => 'oga',
          1 => 'ogg',
        ),
      ),
      'audio/x-gsm' => array(
        'desc' => array(
          0 => 'GSM 06.10 audio',
          1 => 'GSM: Global System for Mobile communications',
        ),
        'e' => array(
          0 => 'gsm',
        ),
      ),
      'audio/x-iriver-pla' => array(
        'desc' => array(
          0 => 'iRiver playlist',
        ),
        'e' => array(
          0 => 'pla',
        ),
      ),
      'audio/x-it' => array(
        'desc' => array(
          0 => 'Impulse Tracker audio',
        ),
        'e' => array(
          0 => 'it',
        ),
      ),
      'audio/x-m4b' => array(
        'desc' => array(
          0 => 'MPEG-4 audio book',
        ),
        'e' => array(
          0 => 'm4b',
          1 => 'f4b',
        ),
      ),
      'audio/x-m4r' => array(
        'desc' => array(
          0 => 'MPEG-4 ringtone',
        ),
        'e' => array(
          0 => 'm4r',
        ),
      ),
      'audio/x-matroska' => array(
        'desc' => array(
          0 => 'Matroska audio',
        ),
        'e' => array(
          0 => 'mka',
        ),
      ),
      'audio/x-minipsf' => array(
        'desc' => array(
          0 => 'MiniPSF audio',
          1 => 'MiniPSF: Miniature Portable Sound Format',
        ),
        'e' => array(
          0 => 'minipsf',
        ),
      ),
      'audio/x-mo3' => array(
        'desc' => array(
          0 => 'compressed Tracker audio',
        ),
        'e' => array(
          0 => 'mo3',
        ),
      ),
      'audio/x-mod' => array(
        'desc' => array(
          0 => 'Amiga SoundTracker audio',
        ),
        'e' => array(
          0 => 'mod',
          1 => 'ult',
          2 => 'uni',
          3 => 'm15',
          4 => 'mtm',
          5 => '669',
          6 => 'med',
        ),
      ),
      'audio/x-mpegurl' => array(
        'a' => array(
          0 => 'audio/mpegurl',
          1 => 'application/m3u',
          2 => 'audio/x-mp3-playlist',
          3 => 'audio/m3u',
          4 => 'audio/x-m3u',
        ),
        'desc' => array(
          0 => 'MP3 audio (streamed)',
        ),
        'e' => array(
          0 => 'm3u',
          1 => 'm3u8',
          2 => 'vlc',
        ),
      ),
      'audio/x-ms-asx' => array(
        'a' => array(
          0 => 'video/x-ms-wvx',
          1 => 'video/x-ms-wax',
          2 => 'video/x-ms-wmx',
          3 => 'application/x-ms-asx',
        ),
        'desc' => array(
          0 => 'Microsoft ASX playlist',
        ),
        'e' => array(
          0 => 'asx',
          1 => 'wax',
          2 => 'wvx',
          3 => 'wmx',
        ),
      ),
      'audio/x-ms-wax' => array(
        'e' => array(
          0 => 'wax',
        ),
      ),
      'audio/x-ms-wma' => array(
        'a' => array(
          0 => 'audio/wma',
        ),
        'desc' => array(
          0 => 'Windows Media audio',
        ),
        'e' => array(
          0 => 'wma',
        ),
      ),
      'audio/x-musepack' => array(
        'desc' => array(
          0 => 'Musepack audio',
        ),
        'e' => array(
          0 => 'mpc',
          1 => 'mpp',
          2 => 'mp+',
        ),
      ),
      'audio/x-opus+ogg' => array(
        'desc' => array(
          0 => 'Opus audio',
        ),
        'e' => array(
          0 => 'opus',
        ),
      ),
      'audio/x-pn-audibleaudio' => array(
        'a' => array(
          0 => 'audio/vnd.audible',
        ),
        'desc' => array(
          0 => 'Audible.Com audio',
        ),
        'e' => array(
          0 => 'aa',
        ),
      ),
      'audio/x-pn-realaudio-plugin' => array(
        'e' => array(
          0 => 'rmp',
        ),
      ),
      'audio/x-psf' => array(
        'desc' => array(
          0 => 'PSF audio',
          1 => 'PSF: Portable Sound Format',
        ),
        'e' => array(
          0 => 'psf',
        ),
      ),
      'audio/x-psflib' => array(
        'desc' => array(
          0 => 'PSFlib audio library',
          1 => 'PSFlib: Portable Sound Format Library',
        ),
        'e' => array(
          0 => 'psflib',
        ),
      ),
      'audio/x-s3m' => array(
        'desc' => array(
          0 => 'Scream Tracker 3 audio',
        ),
        'e' => array(
          0 => 's3m',
        ),
      ),
      'audio/x-scpls' => array(
        'a' => array(
          0 => 'application/pls',
          1 => 'audio/scpls',
        ),
        'desc' => array(
          0 => 'MP3 ShoutCast playlist',
        ),
        'e' => array(
          0 => 'pls',
        ),
      ),
      'audio/x-sd2' => array(
        'e' => array(
          0 => 'sd2',
        ),
      ),
      'audio/x-speex' => array(
        'desc' => array(
          0 => 'Speex audio',
        ),
        'e' => array(
          0 => 'spx',
        ),
      ),
      'audio/x-speex+ogg' => array(
        'desc' => array(
          0 => 'Ogg Speex audio',
        ),
        'e' => array(
          0 => 'oga',
          1 => 'ogg',
          2 => 'spx',
        ),
      ),
      'audio/x-stm' => array(
        'desc' => array(
          0 => 'Scream Tracker audio',
        ),
        'e' => array(
          0 => 'stm',
        ),
      ),
      'audio/x-tta' => array(
        'a' => array(
          0 => 'audio/tta',
        ),
        'desc' => array(
          0 => 'TrueAudio audio',
        ),
        'e' => array(
          0 => 'tta',
        ),
      ),
      'audio/x-voc' => array(
        'desc' => array(
          0 => 'VOC audio',
        ),
        'e' => array(
          0 => 'voc',
        ),
      ),
      'audio/x-vorbis+ogg' => array(
        'a' => array(
          0 => 'audio/vorbis',
          1 => 'audio/x-vorbis',
        ),
        'desc' => array(
          0 => 'Ogg Vorbis audio',
        ),
        'e' => array(
          0 => 'oga',
          1 => 'ogg',
        ),
      ),
      'audio/x-wav' => array(
        'a' => array(
          0 => 'audio/wav',
          1 => 'audio/vnd.wave',
        ),
        'desc' => array(
          0 => 'WAV audio',
        ),
        'e' => array(
          0 => 'wav',
        ),
      ),
      'audio/x-wavpack' => array(
        'desc' => array(
          0 => 'WavPack audio',
        ),
        'e' => array(
          0 => 'wv',
          1 => 'wvp',
        ),
      ),
      'audio/x-wavpack-correction' => array(
        'desc' => array(
          0 => 'WavPack audio correction file',
        ),
        'e' => array(
          0 => 'wvc',
        ),
      ),
      'audio/x-xi' => array(
        'desc' => array(
          0 => 'Scream Tracker instrument',
        ),
        'e' => array(
          0 => 'xi',
        ),
      ),
      'audio/x-xm' => array(
        'desc' => array(
          0 => 'FastTracker II audio',
        ),
        'e' => array(
          0 => 'xm',
        ),
      ),
      'audio/x-xmf' => array(
        'a' => array(
          0 => 'audio/xmf',
          1 => 'audio/mobile-xmf',
        ),
        'desc' => array(
          0 => 'XMF audio',
          1 => 'XMF: eXtensible Music Format',
        ),
        'e' => array(
          0 => 'xmf',
        ),
      ),
      'audio/xm' => array(
        'e' => array(
          0 => 'xm',
        ),
      ),
      'chemical/x-alchemy' => array(
        'e' => array(
          0 => 'alc',
        ),
      ),
      'chemical/x-cache' => array(
        'e' => array(
          0 => 'cac',
          1 => 'cache',
        ),
      ),
      'chemical/x-cache-csf' => array(
        'e' => array(
          0 => 'csf',
        ),
      ),
      'chemical/x-cactvs-binary' => array(
        'e' => array(
          0 => 'cascii',
          1 => 'cbin',
          2 => 'ctab',
        ),
      ),
      'chemical/x-cdx' => array(
        'e' => array(
          0 => 'cdx',
        ),
      ),
      'chemical/x-cerius' => array(
        'e' => array(
          0 => 'cer',
        ),
      ),
      'chemical/x-chem3d' => array(
        'e' => array(
          0 => 'c3d',
        ),
      ),
      'chemical/x-chemdraw' => array(
        'e' => array(
          0 => 'chm',
        ),
      ),
      'chemical/x-cif' => array(
        'e' => array(
          0 => 'cif',
        ),
      ),
      'chemical/x-cmdf' => array(
        'e' => array(
          0 => 'cmdf',
        ),
      ),
      'chemical/x-cml' => array(
        'e' => array(
          0 => 'cml',
        ),
      ),
      'chemical/x-compass' => array(
        'e' => array(
          0 => 'cpa',
        ),
      ),
      'chemical/x-crossfire' => array(
        'e' => array(
          0 => 'bsd',
        ),
      ),
      'chemical/x-csml' => array(
        'e' => array(
          0 => 'csml',
          1 => 'csm',
        ),
      ),
      'chemical/x-ctx' => array(
        'e' => array(
          0 => 'ctx',
        ),
      ),
      'chemical/x-cxf' => array(
        'e' => array(
          0 => 'cef',
          1 => 'cxf',
        ),
      ),
      'chemical/x-embl-dl-nucleotide' => array(
        'e' => array(
          0 => 'emb',
          1 => 'embl',
        ),
      ),
      'chemical/x-galactic-spc' => array(
        'e' => array(
          0 => 'spc',
        ),
      ),
      'chemical/x-gamess-input' => array(
        'e' => array(
          0 => 'gam',
          1 => 'gamin',
          2 => 'inp',
        ),
      ),
      'chemical/x-gaussian-checkpoint' => array(
        'e' => array(
          0 => 'fch',
          1 => 'fchk',
        ),
      ),
      'chemical/x-gaussian-cube' => array(
        'e' => array(
          0 => 'cub',
        ),
      ),
      'chemical/x-gaussian-input' => array(
        'e' => array(
          0 => 'gau',
          1 => 'gjc',
          2 => 'gjf',
        ),
      ),
      'chemical/x-gaussian-log' => array(
        'e' => array(
          0 => 'gal',
        ),
      ),
      'chemical/x-gcg8-sequence' => array(
        'e' => array(
          0 => 'gcg',
        ),
      ),
      'chemical/x-genbank' => array(
        'e' => array(
          0 => 'gen',
        ),
      ),
      'chemical/x-hin' => array(
        'e' => array(
          0 => 'hin',
        ),
      ),
      'chemical/x-isostar' => array(
        'e' => array(
          0 => 'ist',
          1 => 'istr',
        ),
      ),
      'chemical/x-jcamp-dx' => array(
        'e' => array(
          0 => 'dx',
          1 => 'jdx',
        ),
      ),
      'chemical/x-kinemage' => array(
        'e' => array(
          0 => 'kin',
        ),
      ),
      'chemical/x-macmolecule' => array(
        'e' => array(
          0 => 'mcm',
        ),
      ),
      'chemical/x-macromodel-input' => array(
        'e' => array(
          0 => 'mmd',
          1 => 'mmod',
        ),
      ),
      'chemical/x-mdl-molfile' => array(
        'e' => array(
          0 => 'mol',
        ),
      ),
      'chemical/x-mdl-rdfile' => array(
        'e' => array(
          0 => 'rd',
        ),
      ),
      'chemical/x-mdl-rxnfile' => array(
        'e' => array(
          0 => 'rxn',
        ),
      ),
      'chemical/x-mdl-sdfile' => array(
        'e' => array(
          0 => 'sd',
          1 => 'sdf',
        ),
      ),
      'chemical/x-mdl-tgf' => array(
        'e' => array(
          0 => 'tgf',
        ),
      ),
      'chemical/x-mmcif' => array(
        'e' => array(
          0 => 'mcif',
        ),
      ),
      'chemical/x-mol2' => array(
        'e' => array(
          0 => 'mol2',
        ),
      ),
      'chemical/x-molconn-z' => array(
        'e' => array(
          0 => 'b',
        ),
      ),
      'chemical/x-mopac-graph' => array(
        'e' => array(
          0 => 'gpt',
        ),
      ),
      'chemical/x-mopac-input' => array(
        'e' => array(
          0 => 'dat',
          1 => 'mop',
          2 => 'mopcrt',
          3 => 'mpc',
          4 => 'zmt',
        ),
      ),
      'chemical/x-mopac-out' => array(
        'e' => array(
          0 => 'moo',
        ),
      ),
      'chemical/x-mopac-vib' => array(
        'e' => array(
          0 => 'mvb',
        ),
      ),
      'chemical/x-ncbi-asn1-ascii' => array(
        'e' => array(
          0 => 'prt',
        ),
      ),
      'chemical/x-ncbi-asn1-binary' => array(
        'e' => array(
          0 => 'aso',
          1 => 'val',
        ),
      ),
      'chemical/x-ncbi-asn1-spec' => array(
        'e' => array(
          0 => 'asn',
        ),
      ),
      'chemical/x-pdb' => array(
        'e' => array(
          0 => 'ent',
          1 => 'pdb',
        ),
      ),
      'chemical/x-rosdal' => array(
        'e' => array(
          0 => 'ros',
        ),
      ),
      'chemical/x-swissprot' => array(
        'e' => array(
          0 => 'sw',
        ),
      ),
      'chemical/x-vamas-iso14976' => array(
        'e' => array(
          0 => 'vms',
        ),
      ),
      'chemical/x-vmd' => array(
        'e' => array(
          0 => 'vmd',
        ),
      ),
      'chemical/x-xtel' => array(
        'e' => array(
          0 => 'xtel',
        ),
      ),
      'chemical/x-xyz' => array(
        'e' => array(
          0 => 'xyz',
        ),
      ),
      'font/collection' => array(
        'desc' => array(
          0 => 'Font collection',
        ),
        'e' => array(
          0 => 'ttc',
        ),
      ),
      'font/otf' => array(
        'a' => array(
          0 => 'application/x-font-otf',
        ),
        'desc' => array(
          0 => 'OpenType font',
        ),
        'e' => array(
          0 => 'otf',
        ),
      ),
      'font/ttf' => array(
        'a' => array(
          0 => 'application/x-font-ttf',
        ),
        'desc' => array(
          0 => 'TrueType font',
        ),
        'e' => array(
          0 => 'ttf',
        ),
      ),
      'font/woff' => array(
        'a' => array(
          0 => 'application/font-woff',
        ),
        'desc' => array(
          0 => 'WOFF font',
          1 => 'WOFF: Web Open Font Format',
        ),
        'e' => array(
          0 => 'woff',
        ),
      ),
      'font/woff2' => array(
        'desc' => array(
          0 => 'WOFF2 font',
          1 => 'WOFF2: Web Open Font Format 2.0',
        ),
        'e' => array(
          0 => 'woff2',
        ),
      ),
      'image/avif' => array(
        'desc' => array(
          0 => 'AV1 Image File Format (AVIF)',
        ),
        'e' => array(
          0 => 'avif',
        ),
      ),
      'image/avif-sequence' => array(
        'desc' => array(
          0 => 'AVIF image sequence',
        ),
        'e' => array(
          0 => 'avifs',
        ),
      ),
      'image/bmp' => array(
        'a' => array(
          0 => 'image/x-bmp',
          1 => 'image/x-ms-bmp',
        ),
        'desc' => array(
          0 => 'Windows BMP image',
        ),
        'e' => array(
          0 => 'bmp',
          1 => 'dib',
        ),
      ),
      'image/cgm' => array(
        'desc' => array(
          0 => 'CGM image',
          1 => 'CGM: Computer Graphics Metafile',
        ),
        'e' => array(
          0 => 'cgm',
        ),
      ),
      'image/emf' => array(
        'a' => array(
          0 => 'image/x-emf',
          1 => 'application/x-emf',
          2 => 'application/emf',
        ),
        'desc' => array(
          0 => 'EMF image',
          1 => 'EMF: Enhanced MetaFile',
        ),
        'e' => array(
          0 => 'emf',
        ),
      ),
      'image/fax-g3' => array(
        'a' => array(
          0 => 'image/g3fax',
        ),
        'desc' => array(
          0 => 'CCITT G3 fax image',
        ),
        'e' => array(
          0 => 'g3',
        ),
      ),
      'image/fits' => array(
        'a' => array(
          0 => 'image/x-fits',
        ),
        'desc' => array(
          0 => 'FITS document',
          1 => 'FITS: Flexible Image Transport System',
        ),
        'e' => array(
          0 => 'fits',
        ),
      ),
      'image/gif' => array(
        'desc' => array(
          0 => 'GIF image',
        ),
        'e' => array(
          0 => 'gif',
        ),
      ),
      'image/heif' => array(
        'a' => array(
          0 => 'image/heic',
          1 => 'image/heic-sequence',
          2 => 'image/heif-sequence',
        ),
        'desc' => array(
          0 => 'HEIF image',
          1 => 'HEIF: High Efficiency Image File',
        ),
        'e' => array(
          0 => 'heic',
          1 => 'heif',
        ),
      ),
      'image/ief' => array(
        'desc' => array(
          0 => 'IEF image',
        ),
        'e' => array(
          0 => 'ief',
        ),
      ),
      'image/jp2' => array(
        'a' => array(
          0 => 'image/jpeg2000',
          1 => 'image/jpeg2000-image',
          2 => 'image/x-jpeg2000-image',
        ),
        'desc' => array(
          0 => 'JPEG-2000 JP2 image',
          1 => 'JP2: JPEG-2000',
        ),
        'e' => array(
          0 => 'jp2',
          1 => 'jpg2',
        ),
      ),
      'image/jpeg' => array(
        'a' => array(
          0 => 'image/pjpeg',
        ),
        'desc' => array(
          0 => 'JPEG image',
        ),
        'e' => array(
          0 => 'jpeg',
          1 => 'jpg',
          2 => 'jpe',
        ),
      ),
      'image/jpm' => array(
        'desc' => array(
          0 => 'JPEG-2000 JPM image',
          1 => 'JPM: JPEG-2000 Mixed',
        ),
        'e' => array(
          0 => 'jpm',
          1 => 'jpgm',
        ),
      ),
      'image/jpx' => array(
        'desc' => array(
          0 => 'JPEG-2000 JPX image',
          1 => 'JPX: JPEG-2000 eXtended',
        ),
        'e' => array(
          0 => 'jpf',
          1 => 'jpx',
        ),
      ),
      'image/ktx' => array(
        'desc' => array(
          0 => 'Khronos texture image',
        ),
        'e' => array(
          0 => 'ktx',
        ),
      ),
      'image/openraster' => array(
        'desc' => array(
          0 => 'OpenRaster image',
        ),
        'e' => array(
          0 => 'ora',
        ),
      ),
      'image/png' => array(
        'desc' => array(
          0 => 'PNG image',
        ),
        'e' => array(
          0 => 'png',
        ),
      ),
      'image/prs.btif' => array(
        'e' => array(
          0 => 'btif',
        ),
      ),
      'image/rle' => array(
        'desc' => array(
          0 => 'RLE bitmap image',
          1 => 'RLE: Run Length Encoded',
        ),
        'e' => array(
          0 => 'rle',
        ),
      ),
      'image/sgi' => array(
        'e' => array(
          0 => 'sgi',
        ),
      ),
      'image/svg+xml' => array(
        'desc' => array(
          0 => 'SVG image',
          1 => 'SVG: Scalable Vector Graphics',
        ),
        'e' => array(
          0 => 'svg',
          1 => 'svgz',
        ),
      ),
      'image/svg+xml-compressed' => array(
        'desc' => array(
          0 => 'compressed SVG image',
          1 => 'SVG: Scalable Vector Graphics',
        ),
        'e' => array(
          0 => 'svgz',
        ),
      ),
      'image/tiff' => array(
        'desc' => array(
          0 => 'TIFF image',
          1 => 'TIFF: Tagged Image File Format',
        ),
        'e' => array(
          0 => 'tiff',
          1 => 'tif',
        ),
      ),
      'image/vnd.adobe.photoshop' => array(
        'a' => array(
          0 => 'image/psd',
          1 => 'image/x-psd',
          2 => 'image/photoshop',
          3 => 'image/x-photoshop',
          4 => 'application/photoshop',
          5 => 'application/x-photoshop',
        ),
        'desc' => array(
          0 => 'Photoshop image',
        ),
        'e' => array(
          0 => 'psd',
        ),
      ),
      'image/vnd.dece.graphic' => array(
        'e' => array(
          0 => 'uvi',
          1 => 'uvvi',
          2 => 'uvg',
          3 => 'uvvg',
        ),
      ),
      'image/vnd.djvu' => array(
        'a' => array(
          0 => 'image/x-djvu',
          1 => 'image/x.djvu',
        ),
        'desc' => array(
          0 => 'DjVu image',
        ),
        'e' => array(
          0 => 'djvu',
          1 => 'djv',
        ),
      ),
      'image/vnd.djvu+multipage' => array(
        'desc' => array(
          0 => 'DjVu document',
        ),
        'e' => array(
          0 => 'djvu',
          1 => 'djv',
        ),
      ),
      'image/vnd.dvb.subtitle' => array(
        'e' => array(
          0 => 'sub',
        ),
      ),
      'image/vnd.dwg' => array(
        'desc' => array(
          0 => 'AutoCAD image',
        ),
        'e' => array(
          0 => 'dwg',
        ),
      ),
      'image/vnd.dxf' => array(
        'desc' => array(
          0 => 'DXF vector image',
        ),
        'e' => array(
          0 => 'dxf',
        ),
      ),
      'image/vnd.fastbidsheet' => array(
        'e' => array(
          0 => 'fbs',
        ),
      ),
      'image/vnd.fpx' => array(
        'e' => array(
          0 => 'fpx',
        ),
      ),
      'image/vnd.fst' => array(
        'e' => array(
          0 => 'fst',
        ),
      ),
      'image/vnd.fujixerox.edmics-mmr' => array(
        'e' => array(
          0 => 'mmr',
        ),
      ),
      'image/vnd.fujixerox.edmics-rlc' => array(
        'e' => array(
          0 => 'rlc',
        ),
      ),
      'image/vnd.microsoft.icon' => array(
        'a' => array(
          0 => 'application/ico',
          1 => 'image/ico',
          2 => 'image/icon',
          3 => 'image/x-ico',
          4 => 'image/x-icon',
          5 => 'text/ico',
        ),
        'desc' => array(
          0 => 'Windows icon',
        ),
        'e' => array(
          0 => 'ico',
        ),
      ),
      'image/vnd.ms-modi' => array(
        'desc' => array(
          0 => 'MDI image',
          1 => 'MDI: Microsoft Document Imaging',
        ),
        'e' => array(
          0 => 'mdi',
        ),
      ),
      'image/vnd.ms-photo' => array(
        'e' => array(
          0 => 'wdp',
        ),
      ),
      'image/vnd.net-fpx' => array(
        'e' => array(
          0 => 'npx',
        ),
      ),
      'image/vnd.rn-realpix' => array(
        'desc' => array(
          0 => 'RealPix document',
        ),
        'e' => array(
          0 => 'rp',
        ),
      ),
      'image/vnd.wap.wbmp' => array(
        'desc' => array(
          0 => 'WBMP image',
          1 => 'WBMP: WAP bitmap',
        ),
        'e' => array(
          0 => 'wbmp',
        ),
      ),
      'image/vnd.xiff' => array(
        'e' => array(
          0 => 'xif',
        ),
      ),
      'image/vnd.zbrush.pcx' => array(
        'a' => array(
          0 => 'image/x-pcx',
          1 => 'image/pcx',
        ),
        'desc' => array(
          0 => 'PCX image',
          1 => 'PCX: PiCture eXchange',
        ),
        'e' => array(
          0 => 'pcx',
        ),
      ),
      'image/webp' => array(
        'desc' => array(
          0 => 'WebP image',
        ),
        'e' => array(
          0 => 'webp',
        ),
      ),
      'image/wmf' => array(
        'a' => array(
          0 => 'image/x-wmf',
          1 => 'image/x-win-metafile',
          2 => 'application/x-wmf',
          3 => 'application/wmf',
          4 => 'application/x-msmetafile',
        ),
        'desc' => array(
          0 => 'WMF image',
          1 => 'WMF: Windows Metafile',
        ),
        'e' => array(
          0 => 'wmf',
          1 => 'emz',
        ),
      ),
      'image/x-3ds' => array(
        'desc' => array(
          0 => '3D Studio image',
        ),
        'e' => array(
          0 => '3ds',
        ),
      ),
      'image/x-adobe-dng' => array(
        'desc' => array(
          0 => 'Adobe DNG negative',
          1 => 'DNG: Digital Negative',
        ),
        'e' => array(
          0 => 'dng',
        ),
      ),
      'image/x-applix-graphics' => array(
        'desc' => array(
          0 => 'Applix Graphics image',
        ),
        'e' => array(
          0 => 'ag',
        ),
      ),
      'image/x-bzeps' => array(
        'desc' => array(
          0 => 'EPS image (bzip-compressed)',
        ),
        'e' => array(
          0 => 'eps.bz2',
          1 => 'epsi.bz2',
          2 => 'epsf.bz2',
        ),
      ),
      'image/x-canon-cr2' => array(
        'desc' => array(
          0 => 'Canon CR2 raw image',
          1 => 'CR2: Canon Raw 2',
        ),
        'e' => array(
          0 => 'cr2',
        ),
      ),
      'image/x-canon-crw' => array(
        'desc' => array(
          0 => 'Canon CRW raw image',
          1 => 'CRW: Canon RaW',
        ),
        'e' => array(
          0 => 'crw',
        ),
      ),
      'image/x-cmu-raster' => array(
        'desc' => array(
          0 => 'CMU raster image',
        ),
        'e' => array(
          0 => 'ras',
        ),
      ),
      'image/x-cmx' => array(
        'e' => array(
          0 => 'cmx',
        ),
      ),
      'image/x-compressed-xcf' => array(
        'desc' => array(
          0 => 'compressed GIMP image',
        ),
        'e' => array(
          0 => 'xcf.gz',
          1 => 'xcf.bz2',
        ),
      ),
      'image/x-coreldrawpattern' => array(
        'e' => array(
          0 => 'pat',
        ),
      ),
      'image/x-coreldrawtemplate' => array(
        'e' => array(
          0 => 'cdt',
        ),
      ),
      'image/x-corelphotopaint' => array(
        'e' => array(
          0 => 'cpt',
        ),
      ),
      'image/x-dds' => array(
        'desc' => array(
          0 => 'DirectDraw surface',
        ),
        'e' => array(
          0 => 'dds',
        ),
      ),
      'image/x-eps' => array(
        'desc' => array(
          0 => 'EPS image',
          1 => 'EPS: Encapsulated PostScript',
        ),
        'e' => array(
          0 => 'eps',
          1 => 'epsi',
          2 => 'epsf',
        ),
      ),
      'image/x-exr' => array(
        'desc' => array(
          0 => 'EXR image',
        ),
        'e' => array(
          0 => 'exr',
        ),
      ),
      'image/x-freehand' => array(
        'e' => array(
          0 => 'fh',
          1 => 'fhc',
          2 => 'fh4',
          3 => 'fh5',
          4 => 'fh7',
        ),
      ),
      'image/x-fuji-raf' => array(
        'desc' => array(
          0 => 'Fuji RAF raw image',
          1 => 'RAF: RAw Format',
        ),
        'e' => array(
          0 => 'raf',
        ),
      ),
      'image/x-gimp-gbr' => array(
        'desc' => array(
          0 => 'GIMP brush',
        ),
        'e' => array(
          0 => 'gbr',
        ),
      ),
      'image/x-gimp-gih' => array(
        'desc' => array(
          0 => 'GIMP brush pipe',
        ),
        'e' => array(
          0 => 'gih',
        ),
      ),
      'image/x-gimp-pat' => array(
        'desc' => array(
          0 => 'GIMP pattern',
        ),
        'e' => array(
          0 => 'pat',
        ),
      ),
      'image/x-gzeps' => array(
        'desc' => array(
          0 => 'EPS image (gzip-compressed)',
        ),
        'e' => array(
          0 => 'eps.gz',
          1 => 'epsi.gz',
          2 => 'epsf.gz',
        ),
      ),
      'image/x-icns' => array(
        'desc' => array(
          0 => 'MacOS X icon',
        ),
        'e' => array(
          0 => 'icns',
        ),
      ),
      'image/x-ilbm' => array(
        'a' => array(
          0 => 'image/x-iff',
        ),
        'desc' => array(
          0 => 'ILBM image',
          1 => 'ILBM: InterLeaved BitMap',
        ),
        'e' => array(
          0 => 'iff',
          1 => 'ilbm',
          2 => 'lbm',
        ),
      ),
      'image/x-jg' => array(
        'e' => array(
          0 => 'art',
        ),
      ),
      'image/x-jng' => array(
        'desc' => array(
          0 => 'JNG image',
          1 => 'JNG: JPEG Network Graphics',
        ),
        'e' => array(
          0 => 'jng',
        ),
      ),
      'image/x-jp2-codestream' => array(
        'desc' => array(
          0 => 'JPEG-2000 codestream',
        ),
        'e' => array(
          0 => 'j2c',
          1 => 'j2k',
          2 => 'jpc',
        ),
      ),
      'image/x-kodak-dcr' => array(
        'desc' => array(
          0 => 'Kodak DCR raw image',
          1 => 'DCR: Digital Camera Raw',
        ),
        'e' => array(
          0 => 'dcr',
        ),
      ),
      'image/x-kodak-k25' => array(
        'desc' => array(
          0 => 'Kodak K25 raw image',
          1 => 'K25: Kodak DC25',
        ),
        'e' => array(
          0 => 'k25',
        ),
      ),
      'image/x-kodak-kdc' => array(
        'desc' => array(
          0 => 'Kodak KDC raw image',
          1 => 'KDC: Kodak Digital Camera',
        ),
        'e' => array(
          0 => 'kdc',
        ),
      ),
      'image/x-lwo' => array(
        'desc' => array(
          0 => 'LightWave object',
        ),
        'e' => array(
          0 => 'lwo',
          1 => 'lwob',
        ),
      ),
      'image/x-lws' => array(
        'desc' => array(
          0 => 'LightWave scene',
        ),
        'e' => array(
          0 => 'lws',
        ),
      ),
      'image/x-macpaint' => array(
        'desc' => array(
          0 => 'MacPaint Bitmap image',
        ),
        'e' => array(
          0 => 'pntg',
        ),
      ),
      'image/x-minolta-mrw' => array(
        'desc' => array(
          0 => 'Minolta MRW raw image',
          1 => 'MRW: Minolta RaW',
        ),
        'e' => array(
          0 => 'mrw',
        ),
      ),
      'image/x-mrsid-image' => array(
        'e' => array(
          0 => 'sid',
        ),
      ),
      'image/x-msod' => array(
        'desc' => array(
          0 => 'Office drawing',
        ),
        'e' => array(
          0 => 'msod',
        ),
      ),
      'image/x-nikon-nef' => array(
        'desc' => array(
          0 => 'Nikon NEF raw image',
          1 => 'NEF: Nikon Electronic Format',
        ),
        'e' => array(
          0 => 'nef',
        ),
      ),
      'image/x-olympus-orf' => array(
        'desc' => array(
          0 => 'Olympus ORF raw image',
          1 => 'ORF: Olympus Raw Format',
        ),
        'e' => array(
          0 => 'orf',
        ),
      ),
      'image/x-panasonic-rw' => array(
        'a' => array(
          0 => 'image/x-panasonic-raw',
        ),
        'desc' => array(
          0 => 'Panasonic raw image',
        ),
        'e' => array(
          0 => 'raw',
        ),
      ),
      'image/x-panasonic-rw2' => array(
        'a' => array(
          0 => 'image/x-panasonic-raw2',
        ),
        'desc' => array(
          0 => 'Panasonic raw image',
        ),
        'e' => array(
          0 => 'rw2',
        ),
      ),
      'image/x-pentax-pef' => array(
        'desc' => array(
          0 => 'Pentax PEF raw image',
          1 => 'PEF: Pentax Electronic Format',
        ),
        'e' => array(
          0 => 'pef',
        ),
      ),
      'image/x-photo-cd' => array(
        'desc' => array(
          0 => 'PCD image',
          1 => 'PCD: PhotoCD',
        ),
        'e' => array(
          0 => 'pcd',
        ),
      ),
      'image/x-pict' => array(
        'desc' => array(
          0 => 'Macintosh Quickdraw/PICT drawing',
        ),
        'e' => array(
          0 => 'pic',
          1 => 'pct',
          2 => 'pict',
          3 => 'pict1',
          4 => 'pict2',
        ),
      ),
      'image/x-portable-anymap' => array(
        'desc' => array(
          0 => 'PNM image',
        ),
        'e' => array(
          0 => 'pnm',
        ),
      ),
      'image/x-portable-bitmap' => array(
        'desc' => array(
          0 => 'PBM image',
          1 => 'PBM: Portable BitMap',
        ),
        'e' => array(
          0 => 'pbm',
        ),
      ),
      'image/x-portable-graymap' => array(
        'desc' => array(
          0 => 'PGM image',
          1 => 'PGM: Portable GrayMap',
        ),
        'e' => array(
          0 => 'pgm',
        ),
      ),
      'image/x-portable-pixmap' => array(
        'desc' => array(
          0 => 'PPM image',
          1 => 'PPM: Portable PixMap',
        ),
        'e' => array(
          0 => 'ppm',
        ),
      ),
      'image/x-quicktime' => array(
        'desc' => array(
          0 => 'QuickTime image',
        ),
        'e' => array(
          0 => 'qtif',
          1 => 'qif',
        ),
      ),
      'image/x-rgb' => array(
        'desc' => array(
          0 => 'RGB image',
        ),
        'e' => array(
          0 => 'rgb',
        ),
      ),
      'image/x-sgi' => array(
        'desc' => array(
          0 => 'SGI image',
        ),
        'e' => array(
          0 => 'sgi',
        ),
      ),
      'image/x-sigma-x3f' => array(
        'desc' => array(
          0 => 'Sigma X3F raw image',
          1 => 'X3F: X3 Foveon',
        ),
        'e' => array(
          0 => 'x3f',
        ),
      ),
      'image/x-skencil' => array(
        'desc' => array(
          0 => 'Skencil document',
        ),
        'e' => array(
          0 => 'sk',
          1 => 'sk1',
        ),
      ),
      'image/x-sony-arw' => array(
        'desc' => array(
          0 => 'Sony ARW raw image',
          1 => 'ARW: Alpha Raw format',
        ),
        'e' => array(
          0 => 'arw',
        ),
      ),
      'image/x-sony-sr2' => array(
        'desc' => array(
          0 => 'Sony SR2 raw image',
          1 => 'SR2: Sony Raw format 2',
        ),
        'e' => array(
          0 => 'sr2',
        ),
      ),
      'image/x-sony-srf' => array(
        'desc' => array(
          0 => 'Sony SRF raw image',
          1 => 'SRF: Sony Raw Format',
        ),
        'e' => array(
          0 => 'srf',
        ),
      ),
      'image/x-sun-raster' => array(
        'desc' => array(
          0 => 'Sun raster image',
        ),
        'e' => array(
          0 => 'sun',
        ),
      ),
      'image/x-tga' => array(
        'a' => array(
          0 => 'image/x-icb',
        ),
        'desc' => array(
          0 => 'TGA image',
          1 => 'TGA: Truevision Graphics Adapter',
        ),
        'e' => array(
          0 => 'tga',
          1 => 'icb',
          2 => 'tpic',
          3 => 'vda',
          4 => 'vst',
        ),
      ),
      'image/x-win-bitmap' => array(
        'desc' => array(
          0 => 'Windows cursor',
        ),
        'e' => array(
          0 => 'cur',
        ),
      ),
      'image/x-xbitmap' => array(
        'desc' => array(
          0 => 'XBM image',
          1 => 'XBM: X BitMap',
        ),
        'e' => array(
          0 => 'xbm',
        ),
      ),
      'image/x-xcf' => array(
        'a' => array(
          0 => 'application/x-xcf',
        ),
        'desc' => array(
          0 => 'GIMP image',
        ),
        'e' => array(
          0 => 'xcf',
        ),
      ),
      'image/x-xfig' => array(
        'desc' => array(
          0 => 'XFig image',
        ),
        'e' => array(
          0 => 'fig',
        ),
      ),
      'image/x-xpixmap' => array(
        'a' => array(
          0 => 'image/x-xpm',
        ),
        'desc' => array(
          0 => 'XPM image',
          1 => 'XPM: X PixMap',
        ),
        'e' => array(
          0 => 'xpm',
        ),
      ),
      'image/x-xwindowdump' => array(
        'desc' => array(
          0 => 'X window image',
        ),
        'e' => array(
          0 => 'xwd',
        ),
      ),
      'message/rfc822' => array(
        'desc' => array(
          0 => 'email message',
        ),
        'e' => array(
          0 => 'eml',
          1 => 'mime',
        ),
      ),
      'model/iges' => array(
        'desc' => array(
          0 => 'IGES document',
          1 => 'IGES: Initial Graphics Exchange Specification',
        ),
        'e' => array(
          0 => 'igs',
          1 => 'iges',
        ),
      ),
      'model/mesh' => array(
        'e' => array(
          0 => 'msh',
          1 => 'mesh',
          2 => 'silo',
        ),
      ),
      'model/stl' => array(
        'a' => array(
          0 => 'model/x.stl-ascii',
          1 => 'model/x.stl-binary',
        ),
        'desc' => array(
          0 => 'STL 3D model',
          1 => 'STL: StereoLithography',
        ),
        'e' => array(
          0 => 'stl',
        ),
      ),
      'model/vnd.collada+xml' => array(
        'e' => array(
          0 => 'dae',
        ),
      ),
      'model/vnd.dwf' => array(
        'e' => array(
          0 => 'dwf',
        ),
      ),
      'model/vnd.gdl' => array(
        'e' => array(
          0 => 'gdl',
        ),
      ),
      'model/vnd.gtw' => array(
        'e' => array(
          0 => 'gtw',
        ),
      ),
      'model/vnd.mts' => array(
        'e' => array(
          0 => 'mts',
        ),
      ),
      'model/vnd.vtu' => array(
        'e' => array(
          0 => 'vtu',
        ),
      ),
      'model/vrml' => array(
        'a' => array(
          0 => 'x-world/x-vrml',
        ),
        'desc' => array(
          0 => 'VRML document',
          1 => 'VRML: Virtual Reality Modeling Language',
        ),
        'e' => array(
          0 => 'wrl',
          1 => 'vrml',
          2 => 'vrm',
        ),
      ),
      'model/x3d+binary' => array(
        'e' => array(
          0 => 'x3db',
          1 => 'x3dbz',
        ),
      ),
      'model/x3d+vrml' => array(
        'e' => array(
          0 => 'x3dv',
          1 => 'x3dvz',
        ),
      ),
      'model/x3d+xml' => array(
        'e' => array(
          0 => 'x3d',
          1 => 'x3dz',
        ),
      ),
      'text/cache-manifest' => array(
        'desc' => array(
          0 => 'Web application cache file',
        ),
        'e' => array(
          0 => 'appcache',
          1 => 'manifest',
        ),
      ),
      'text/calendar' => array(
        'a' => array(
          0 => 'text/x-vcalendar',
          1 => 'application/ics',
        ),
        'desc' => array(
          0 => 'VCS/ICS calendar',
          1 => 'VCS/ICS: vCalendar/iCalendar',
        ),
        'e' => array(
          0 => 'ics',
          1 => 'ifb',
          2 => 'vcs',
          3 => 'icz',
        ),
      ),
      'text/css' => array(
        'desc' => array(
          0 => 'CSS stylesheet',
          1 => 'CSS: Cascading Style Sheets',
        ),
        'e' => array(
          0 => 'css',
        ),
      ),
      'text/csv' => array(
        'a' => array(
          0 => 'text/x-comma-separated-values',
          1 => 'text/x-csv',
        ),
        'desc' => array(
          0 => 'CSV document',
          1 => 'CSV: Comma Separated Values',
        ),
        'e' => array(
          0 => 'csv',
        ),
      ),
      'text/csv-schema' => array(
        'desc' => array(
          0 => 'CSV Schema document',
          1 => 'CSV: Comma Separated Values',
        ),
        'e' => array(
          0 => 'csvs',
        ),
      ),
      'text/h323' => array(
        'e' => array(
          0 => '323',
        ),
      ),
      'text/html' => array(
        'desc' => array(
          0 => 'HTML document',
          1 => 'HTML: HyperText Markup Language',
        ),
        'e' => array(
          0 => 'html',
          1 => 'htm',
          2 => 'shtml',
        ),
      ),
      'text/iuls' => array(
        'e' => array(
          0 => 'uls',
        ),
      ),
      'text/markdown' => array(
        'a' => array(
          0 => 'text/x-markdown',
        ),
        'desc' => array(
          0 => 'Markdown document',
        ),
        'e' => array(
          0 => 'md',
          1 => 'mkd',
          2 => 'markdown',
        ),
      ),
      'text/n3' => array(
        'e' => array(
          0 => 'n3',
        ),
      ),
      'text/plain' => array(
        'desc' => array(
          0 => 'plain text document',
        ),
        'e' => array(
          0 => 'txt',
          1 => 'text',
          2 => 'conf',
          3 => 'def',
          4 => 'list',
          5 => 'log',
          6 => 'in',
          7 => 'asc',
          8 => 'pot',
        ),
      ),
      'text/prs.lines.tag' => array(
        'e' => array(
          0 => 'dsc',
        ),
      ),
      'text/richtext' => array(
        'desc' => array(
          0 => 'rich text document',
        ),
        'e' => array(
          0 => 'rtx',
        ),
      ),
      'text/rust' => array(
        'desc' => array(
          0 => 'Rust source code',
        ),
        'e' => array(
          0 => 'rs',
        ),
      ),
      'text/scriptlet' => array(
        'e' => array(
          0 => 'sct',
          1 => 'wsc',
        ),
      ),
      'text/sgml' => array(
        'desc' => array(
          0 => 'SGML document',
          1 => 'SGML: Standard Generalized Markup Language',
        ),
        'e' => array(
          0 => 'sgml',
          1 => 'sgm',
        ),
      ),
      'text/spreadsheet' => array(
        'desc' => array(
          0 => 'spreadsheet interchange document',
        ),
        'e' => array(
          0 => 'sylk',
          1 => 'slk',
        ),
      ),
      'text/tab-separated-values' => array(
        'desc' => array(
          0 => 'TSV document',
          1 => 'TSV: Tab Separated Values',
        ),
        'e' => array(
          0 => 'tsv',
        ),
      ),
      'text/tcl' => array(
        'a' => array(
          0 => 'text/x-tcl',
        ),
        'desc' => array(
          0 => 'Tcl script',
        ),
        'e' => array(
          0 => 'tcl',
          1 => 'tk',
        ),
      ),
      'text/texmacs' => array(
        'e' => array(
          0 => 'tm',
          1 => 'ts',
        ),
      ),
      'text/troff' => array(
        'a' => array(
          0 => 'application/x-troff',
          1 => 'text/x-troff',
          2 => 'application/x-troff-me',
          3 => 'application/x-troff-ms',
        ),
        'desc' => array(
          0 => 'Troff document',
        ),
        'e' => array(
          0 => 't',
          1 => 'tr',
          2 => 'roff',
          3 => 'man',
          4 => 'me',
          5 => 'ms',
        ),
      ),
      'text/turtle' => array(
        'desc' => array(
          0 => 'Turtle document',
        ),
        'e' => array(
          0 => 'ttl',
        ),
      ),
      'text/uri-list' => array(
        'e' => array(
          0 => 'uri',
          1 => 'uris',
          2 => 'urls',
        ),
      ),
      'text/vbscript' => array(
        'a' => array(
          0 => 'text/vbs',
        ),
        'desc' => array(
          0 => 'VBScript program',
        ),
        'e' => array(
          0 => 'vbs',
        ),
      ),
      'text/vcard' => array(
        'a' => array(
          0 => 'text/directory',
          1 => 'text/x-vcard',
        ),
        'desc' => array(
          0 => 'electronic business card',
        ),
        'e' => array(
          0 => 'vcard',
          1 => 'vcf',
          2 => 'vct',
          3 => 'gcrd',
        ),
      ),
      'text/vnd.curl' => array(
        'e' => array(
          0 => 'curl',
        ),
      ),
      'text/vnd.curl.dcurl' => array(
        'e' => array(
          0 => 'dcurl',
        ),
      ),
      'text/vnd.curl.mcurl' => array(
        'e' => array(
          0 => 'mcurl',
        ),
      ),
      'text/vnd.curl.scurl' => array(
        'e' => array(
          0 => 'scurl',
        ),
      ),
      'text/vnd.dvb.subtitle' => array(
        'e' => array(
          0 => 'sub',
        ),
      ),
      'text/vnd.fly' => array(
        'e' => array(
          0 => 'fly',
        ),
      ),
      'text/vnd.fmi.flexstor' => array(
        'e' => array(
          0 => 'flx',
        ),
      ),
      'text/vnd.graphviz' => array(
        'desc' => array(
          0 => 'Graphviz DOT graph',
        ),
        'e' => array(
          0 => 'gv',
          1 => 'dot',
        ),
      ),
      'text/vnd.in3d.3dml' => array(
        'e' => array(
          0 => '3dml',
        ),
      ),
      'text/vnd.in3d.spot' => array(
        'e' => array(
          0 => 'spot',
        ),
      ),
      'text/vnd.qt.linguist' => array(
        'a' => array(
          0 => 'application/x-linguist',
          1 => 'text/vnd.trolltech.linguist',
        ),
        'desc' => array(
          0 => 'message catalog',
        ),
        'e' => array(
          0 => 'ts',
        ),
      ),
      'text/vnd.rn-realtext' => array(
        'desc' => array(
          0 => 'RealText document',
        ),
        'e' => array(
          0 => 'rt',
        ),
      ),
      'text/vnd.senx.warpscript' => array(
        'desc' => array(
          0 => 'WarpScript source code',
        ),
        'e' => array(
          0 => 'mc2',
        ),
      ),
      'text/vnd.sun.j2me.app-descriptor' => array(
        'desc' => array(
          0 => 'JAD document',
          1 => 'JAD: Java Application Descriptor',
        ),
        'e' => array(
          0 => 'jad',
        ),
      ),
      'text/vnd.wap.wml' => array(
        'desc' => array(
          0 => 'WML document',
          1 => 'WML: Wireless Markup Language',
        ),
        'e' => array(
          0 => 'wml',
        ),
      ),
      'text/vnd.wap.wmlscript' => array(
        'desc' => array(
          0 => 'WMLScript program',
        ),
        'e' => array(
          0 => 'wmls',
        ),
      ),
      'text/vtt' => array(
        'desc' => array(
          0 => 'WebVTT subtitles',
          1 => 'VTT: Video Text Tracks',
        ),
        'e' => array(
          0 => 'vtt',
        ),
      ),
      'text/x-adasrc' => array(
        'desc' => array(
          0 => 'Ada source code',
        ),
        'e' => array(
          0 => 'adb',
          1 => 'ads',
        ),
      ),
      'text/x-asm' => array(
        'e' => array(
          0 => 's',
          1 => 'asm',
        ),
      ),
      'text/x-bibtex' => array(
        'desc' => array(
          0 => 'BibTeX document',
        ),
        'e' => array(
          0 => 'bib',
        ),
      ),
      'text/x-boo' => array(
        'e' => array(
          0 => 'boo',
        ),
      ),
      'text/x-c++hdr' => array(
        'desc' => array(
          0 => 'C++ header',
        ),
        'e' => array(
          0 => 'hh',
          1 => 'hp',
          2 => 'hpp',
          3 => 'h++',
          4 => 'hxx',
        ),
      ),
      'text/x-c++src' => array(
        'desc' => array(
          0 => 'C++ source code',
        ),
        'e' => array(
          0 => 'cpp',
          1 => 'cxx',
          2 => 'cc',
          3 => 'c',
          4 => 'c++',
        ),
      ),
      'text/x-chdr' => array(
        'desc' => array(
          0 => 'C header',
        ),
        'e' => array(
          0 => 'h',
        ),
      ),
      'text/x-cmake' => array(
        'desc' => array(
          0 => 'CMake source code',
        ),
        'e' => array(
          0 => 'cmake',
        ),
      ),
      'text/x-cobol' => array(
        'desc' => array(
          0 => 'COBOL source code',
          1 => 'COBOL: COmmon Business Oriented Language',
        ),
        'e' => array(
          0 => 'cbl',
          1 => 'cob',
        ),
      ),
      'text/x-common-lisp' => array(
        'desc' => array(
          0 => 'Common Lisp source code',
        ),
        'e' => array(
          0 => 'asd',
          1 => 'fasl',
          2 => 'lisp',
          3 => 'ros',
        ),
      ),
      'text/x-component' => array(
        'e' => array(
          0 => 'htc',
        ),
      ),
      'text/x-csharp' => array(
        'desc' => array(
          0 => 'C# source code',
        ),
        'e' => array(
          0 => 'cs',
        ),
      ),
      'text/x-csrc' => array(
        'a' => array(
          0 => 'text/x-c',
        ),
        'desc' => array(
          0 => 'C source code',
        ),
        'e' => array(
          0 => 'c',
          1 => 'dic',
        ),
      ),
      'text/x-dbus-service' => array(
        'desc' => array(
          0 => 'D-Bus service file',
        ),
        'e' => array(
          0 => 'service',
        ),
      ),
      'text/x-dcl' => array(
        'desc' => array(
          0 => 'DCL script',
          1 => 'DCL: Data Conversion Laboratory',
        ),
        'e' => array(
          0 => 'dcl',
        ),
      ),
      'text/x-dsl' => array(
        'desc' => array(
          0 => 'DSSSL document',
          1 => 'DSSSL: Document Style Semantics and Specification Language',
        ),
        'e' => array(
          0 => 'dsl',
        ),
      ),
      'text/x-dsrc' => array(
        'desc' => array(
          0 => 'D source code',
        ),
        'e' => array(
          0 => 'd',
          1 => 'di',
        ),
      ),
      'text/x-eiffel' => array(
        'desc' => array(
          0 => 'Eiffel source code',
        ),
        'e' => array(
          0 => 'e',
          1 => 'eif',
        ),
      ),
      'text/x-emacs-lisp' => array(
        'desc' => array(
          0 => 'Emacs Lisp source code',
        ),
        'e' => array(
          0 => 'el',
        ),
      ),
      'text/x-erlang' => array(
        'desc' => array(
          0 => 'Erlang source code',
        ),
        'e' => array(
          0 => 'erl',
        ),
      ),
      'text/x-fortran' => array(
        'desc' => array(
          0 => 'Fortran source code',
        ),
        'e' => array(
          0 => 'f',
          1 => 'for',
          2 => 'f77',
          3 => 'f90',
          4 => 'f95',
        ),
      ),
      'text/x-genie' => array(
        'desc' => array(
          0 => 'Genie source code',
        ),
        'e' => array(
          0 => 'gs',
        ),
      ),
      'text/x-gettext-translation' => array(
        'a' => array(
          0 => 'text/x-po',
          1 => 'application/x-gettext',
        ),
        'desc' => array(
          0 => 'translation file',
        ),
        'e' => array(
          0 => 'po',
        ),
      ),
      'text/x-gettext-translation-template' => array(
        'a' => array(
          0 => 'text/x-pot',
        ),
        'desc' => array(
          0 => 'translation template',
        ),
        'e' => array(
          0 => 'pot',
        ),
      ),
      'text/x-gherkin' => array(
        'desc' => array(
          0 => 'Gherkin document',
        ),
        'e' => array(
          0 => 'feature',
        ),
      ),
      'text/x-go' => array(
        'desc' => array(
          0 => 'Go source code',
        ),
        'e' => array(
          0 => 'go',
        ),
      ),
      'text/x-google-video-pointer' => array(
        'a' => array(
          0 => 'text/google-video-pointer',
        ),
        'desc' => array(
          0 => 'Google Video Pointer shortcut',
        ),
        'e' => array(
          0 => 'gvp',
        ),
      ),
      'text/x-gradle' => array(
        'desc' => array(
          0 => 'Gradle scripts',
        ),
        'e' => array(
          0 => 'gradle',
        ),
      ),
      'text/x-groovy' => array(
        'desc' => array(
          0 => 'Groovy source code',
        ),
        'e' => array(
          0 => 'groovy',
          1 => 'gvy',
          2 => 'gy',
          3 => 'gsh',
        ),
      ),
      'text/x-haskell' => array(
        'desc' => array(
          0 => 'Haskell source code',
        ),
        'e' => array(
          0 => 'hs',
        ),
      ),
      'text/x-idl' => array(
        'desc' => array(
          0 => 'IDL document',
          1 => 'IDL: Interface Definition Language',
        ),
        'e' => array(
          0 => 'idl',
        ),
      ),
      'text/x-imelody' => array(
        'a' => array(
          0 => 'audio/x-imelody',
          1 => 'audio/imelody',
        ),
        'desc' => array(
          0 => 'iMelody ringtone',
        ),
        'e' => array(
          0 => 'imy',
          1 => 'ime',
        ),
      ),
      'text/x-iptables' => array(
        'desc' => array(
          0 => 'iptables configuration file',
        ),
        'e' => array(
          0 => 'iptables',
        ),
      ),
      'text/x-java' => array(
        'desc' => array(
          0 => 'Java source code',
        ),
        'e' => array(
          0 => 'java',
        ),
      ),
      'text/x-java-source' => array(
        'e' => array(
          0 => 'java',
        ),
      ),
      'text/x-kotlin' => array(
        'desc' => array(
          0 => 'Kotlin source code',
        ),
        'e' => array(
          0 => 'kt',
        ),
      ),
      'text/x-ldif' => array(
        'desc' => array(
          0 => 'LDIF address book',
          1 => 'LDIF: LDAP Data Interchange Format',
        ),
        'e' => array(
          0 => 'ldif',
        ),
      ),
      'text/x-lilypond' => array(
        'desc' => array(
          0 => 'Lilypond music sheet',
        ),
        'e' => array(
          0 => 'ly',
        ),
      ),
      'text/x-literate-haskell' => array(
        'desc' => array(
          0 => 'LHS source code',
          1 => 'LHS: Literate Haskell source code',
        ),
        'e' => array(
          0 => 'lhs',
        ),
      ),
      'text/x-log' => array(
        'desc' => array(
          0 => 'application log',
        ),
        'e' => array(
          0 => 'log',
        ),
      ),
      'text/x-lua' => array(
        'desc' => array(
          0 => 'Lua script',
        ),
        'e' => array(
          0 => 'lua',
        ),
      ),
      'text/x-makefile' => array(
        'desc' => array(
          0 => 'Makefile build file',
        ),
        'e' => array(
          0 => 'mk',
          1 => 'mak',
        ),
      ),
      'text/x-matlab' => array(
        'a' => array(
          0 => 'text/x-octave',
        ),
        'desc' => array(
          0 => 'MATLAB file',
        ),
        'e' => array(
          0 => 'm',
        ),
      ),
      'text/x-microdvd' => array(
        'desc' => array(
          0 => 'MicroDVD subtitles',
        ),
        'e' => array(
          0 => 'sub',
        ),
      ),
      'text/x-moc' => array(
        'desc' => array(
          0 => 'Qt MOC file',
          1 => 'Qt MOC: Qt Meta Object Compiler',
        ),
        'e' => array(
          0 => 'moc',
        ),
      ),
      'text/x-modelica' => array(
        'desc' => array(
          0 => 'Modelica model',
        ),
        'e' => array(
          0 => 'mo',
        ),
      ),
      'text/x-mof' => array(
        'desc' => array(
          0 => 'MOF file',
          1 => 'MOF: Windows Managed Object File',
        ),
        'e' => array(
          0 => 'mof',
        ),
      ),
      'text/x-mpsub' => array(
        'desc' => array(
          0 => 'MPSub subtitles',
          1 => 'MPSub: MPlayer Subtitle',
        ),
        'e' => array(
          0 => 'sub',
        ),
      ),
      'text/x-mrml' => array(
        'desc' => array(
          0 => 'MRML playlist',
          1 => 'MRML: Multimedia Retrieval Markup Language',
        ),
        'e' => array(
          0 => 'mrml',
          1 => 'mrl',
        ),
      ),
      'text/x-ms-regedit' => array(
        'desc' => array(
          0 => 'Windows Registry extract',
        ),
        'e' => array(
          0 => 'reg',
        ),
      ),
      'text/x-mup' => array(
        'desc' => array(
          0 => 'Mup musical composition document',
        ),
        'e' => array(
          0 => 'mup',
          1 => 'not',
        ),
      ),
      'text/x-nfo' => array(
        'desc' => array(
          0 => 'NFO document',
        ),
        'e' => array(
          0 => 'nfo',
        ),
      ),
      'text/x-objcsrc' => array(
        'desc' => array(
          0 => 'Objective-C source code',
        ),
        'e' => array(
          0 => 'm',
        ),
      ),
      'text/x-ocaml' => array(
        'desc' => array(
          0 => 'OCaml source code',
        ),
        'e' => array(
          0 => 'ml',
          1 => 'mli',
        ),
      ),
      'text/x-ocl' => array(
        'desc' => array(
          0 => 'OCL file',
          1 => 'OCL: Object Constraint Language',
        ),
        'e' => array(
          0 => 'ocl',
        ),
      ),
      'text/x-ooc' => array(
        'desc' => array(
          0 => 'OOC source code',
          1 => 'OOC: Out Of Class',
        ),
        'e' => array(
          0 => 'ooc',
        ),
      ),
      'text/x-opencl-src' => array(
        'desc' => array(
          0 => 'OpenCL source code',
          1 => 'OpenCL: Open Computing Language',
        ),
        'e' => array(
          0 => 'cl',
        ),
      ),
      'text/x-opml+xml' => array(
        'a' => array(
          0 => 'text/x-opml',
        ),
        'desc' => array(
          0 => 'OPML syndication feed',
        ),
        'e' => array(
          0 => 'opml',
        ),
      ),
      'text/x-pascal' => array(
        'desc' => array(
          0 => 'Pascal source code',
        ),
        'e' => array(
          0 => 'p',
          1 => 'pas',
        ),
      ),
      'text/x-patch' => array(
        'a' => array(
          0 => 'text/x-diff',
        ),
        'desc' => array(
          0 => 'differences between files',
        ),
        'e' => array(
          0 => 'diff',
          1 => 'patch',
        ),
      ),
      'text/x-pcs-gcd' => array(
        'e' => array(
          0 => 'gcd',
        ),
      ),
      'text/x-python' => array(
        'desc' => array(
          0 => 'Python script',
        ),
        'e' => array(
          0 => 'py',
          1 => 'pyx',
          2 => 'wsgi',
        ),
      ),
      'text/x-python3' => array(
        'desc' => array(
          0 => 'Python 3 script',
        ),
        'e' => array(
          0 => 'py',
          1 => 'py3',
          2 => 'py3x',
        ),
      ),
      'text/x-qml' => array(
        'desc' => array(
          0 => 'Qt Markup Language file',
        ),
        'e' => array(
          0 => 'qml',
          1 => 'qmltypes',
          2 => 'qmlproject',
        ),
      ),
      'text/x-reject' => array(
        'a' => array(
          0 => 'application/x-reject',
        ),
        'desc' => array(
          0 => 'rejected patch',
        ),
        'e' => array(
          0 => 'rej',
        ),
      ),
      'text/x-rpm-spec' => array(
        'desc' => array(
          0 => 'RPM spec file',
          1 => 'RPM: Red Hat Package Manager',
        ),
        'e' => array(
          0 => 'spec',
        ),
      ),
      'text/x-rst' => array(
        'desc' => array(
          0 => 'reStructuredText document',
        ),
        'e' => array(
          0 => 'rst',
        ),
      ),
      'text/x-sass' => array(
        'desc' => array(
          0 => 'Sass CSS pre-processor file',
          1 => 'Sass: Syntactically Awesome Style Sheets',
        ),
        'e' => array(
          0 => 'sass',
        ),
      ),
      'text/x-scala' => array(
        'desc' => array(
          0 => 'Scala source code',
        ),
        'e' => array(
          0 => 'scala',
        ),
      ),
      'text/x-scheme' => array(
        'desc' => array(
          0 => 'Scheme source code',
        ),
        'e' => array(
          0 => 'scm',
          1 => 'ss',
        ),
      ),
      'text/x-scss' => array(
        'desc' => array(
          0 => 'SCSS pre-processor file',
          1 => 'SCSS: Sassy CSS',
        ),
        'e' => array(
          0 => 'scss',
        ),
      ),
      'text/x-setext' => array(
        'desc' => array(
          0 => 'Setext document',
        ),
        'e' => array(
          0 => 'etx',
        ),
      ),
      'text/x-sfv' => array(
        'e' => array(
          0 => 'sfv',
        ),
      ),
      'text/x-ssa' => array(
        'desc' => array(
          0 => 'SSA subtitles',
          1 => 'SSA: SubStation Alpha',
        ),
        'e' => array(
          0 => 'ssa',
          1 => 'ass',
        ),
      ),
      'text/x-subviewer' => array(
        'desc' => array(
          0 => 'SubViewer subtitles',
        ),
        'e' => array(
          0 => 'sub',
        ),
      ),
      'text/x-svhdr' => array(
        'desc' => array(
          0 => 'SystemVerilog header',
        ),
        'e' => array(
          0 => 'svh',
        ),
      ),
      'text/x-svsrc' => array(
        'desc' => array(
          0 => 'SystemVerilog source code',
        ),
        'e' => array(
          0 => 'sv',
        ),
      ),
      'text/x-systemd-unit' => array(
        'desc' => array(
          0 => 'systemd unit file',
        ),
        'e' => array(
          0 => 'automount',
          1 => 'device',
          2 => 'mount',
          3 => 'path',
          4 => 'scope',
          5 => 'service',
          6 => 'slice',
          7 => 'socket',
          8 => 'swap',
          9 => 'target',
          10 => 'timer',
        ),
      ),
      'text/x-tex' => array(
        'a' => array(
          0 => 'application/x-tex',
        ),
        'desc' => array(
          0 => 'TeX document',
        ),
        'e' => array(
          0 => 'tex',
          1 => 'ltx',
          2 => 'sty',
          3 => 'cls',
          4 => 'dtx',
          5 => 'ins',
          6 => 'latex',
        ),
      ),
      'text/x-texinfo' => array(
        'desc' => array(
          0 => 'TeXInfo document',
        ),
        'e' => array(
          0 => 'texi',
          1 => 'texinfo',
        ),
      ),
      'text/x-troff-me' => array(
        'desc' => array(
          0 => 'Troff ME input document',
        ),
        'e' => array(
          0 => 'me',
        ),
      ),
      'text/x-troff-mm' => array(
        'desc' => array(
          0 => 'Troff MM input document',
        ),
        'e' => array(
          0 => 'mm',
        ),
      ),
      'text/x-troff-ms' => array(
        'desc' => array(
          0 => 'Troff MS input document',
        ),
        'e' => array(
          0 => 'ms',
        ),
      ),
      'text/x-twig' => array(
        'desc' => array(
          0 => 'Twig template',
        ),
        'e' => array(
          0 => 'twig',
        ),
      ),
      'text/x-txt2tags' => array(
        'desc' => array(
          0 => 'txt2tags document',
        ),
        'e' => array(
          0 => 't2t',
        ),
      ),
      'text/x-uil' => array(
        'desc' => array(
          0 => 'X-Motif UIL table',
        ),
        'e' => array(
          0 => 'uil',
        ),
      ),
      'text/x-uuencode' => array(
        'a' => array(
          0 => 'zz-application/zz-winassoc-uu',
        ),
        'desc' => array(
          0 => 'uuencoded file',
        ),
        'e' => array(
          0 => 'uu',
          1 => 'uue',
        ),
      ),
      'text/x-vala' => array(
        'desc' => array(
          0 => 'Vala source code',
        ),
        'e' => array(
          0 => 'vala',
          1 => 'vapi',
        ),
      ),
      'text/x-verilog' => array(
        'desc' => array(
          0 => 'Verilog source code',
        ),
        'e' => array(
          0 => 'v',
        ),
      ),
      'text/x-vhdl' => array(
        'desc' => array(
          0 => 'VHDL source code',
          1 => 'VHDL: Very-High-Speed Integrated Circuit Hardware Description Language',
        ),
        'e' => array(
          0 => 'vhd',
          1 => 'vhdl',
        ),
      ),
      'text/x-xmi' => array(
        'desc' => array(
          0 => 'XMI file',
          1 => 'XMI: XML Metadata Interchange',
        ),
        'e' => array(
          0 => 'xmi',
        ),
      ),
      'text/x-xslfo' => array(
        'desc' => array(
          0 => 'XSL FO file',
          1 => 'XSL FO: XSL Formatting Objects',
        ),
        'e' => array(
          0 => 'fo',
          1 => 'xslfo',
        ),
      ),
      'text/x.gcode' => array(
        'desc' => array(
          0 => 'G-code file',
        ),
        'e' => array(
          0 => 'gcode',
        ),
      ),
      'video/3gpp' => array(
        'a' => array(
          0 => 'video/3gp',
          1 => 'audio/3gpp',
          2 => 'video/3gpp-encrypted',
          3 => 'audio/3gpp-encrypted',
          4 => 'audio/x-rn-3gpp-amr',
          5 => 'audio/x-rn-3gpp-amr-encrypted',
          6 => 'audio/x-rn-3gpp-amr-wb',
          7 => 'audio/x-rn-3gpp-amr-wb-encrypted',
        ),
        'desc' => array(
          0 => '3GPP multimedia file',
          1 => '3GPP: 3rd Generation Partnership Project',
        ),
        'e' => array(
          0 => '3gp',
          1 => '3gpp',
          2 => '3ga',
        ),
      ),
      'video/3gpp2' => array(
        'a' => array(
          0 => 'audio/3gpp2',
        ),
        'desc' => array(
          0 => '3GPP2 multimedia file',
          1 => '3GPP2: 3rd Generation Partnership Project 2',
        ),
        'e' => array(
          0 => '3g2',
          1 => '3gp2',
          2 => '3gpp2',
        ),
      ),
      'video/annodex' => array(
        'a' => array(
          0 => 'video/x-annodex',
        ),
        'desc' => array(
          0 => 'Annodex video',
        ),
        'e' => array(
          0 => 'axv',
        ),
      ),
      'video/dl' => array(
        'e' => array(
          0 => 'dl',
        ),
      ),
      'video/dv' => array(
        'desc' => array(
          0 => 'DV video',
          1 => 'DV: Digital Video',
        ),
        'e' => array(
          0 => 'dv',
          1 => 'dif',
        ),
      ),
      'video/gl' => array(
        'e' => array(
          0 => 'gl',
        ),
      ),
      'video/h261' => array(
        'e' => array(
          0 => 'h261',
        ),
      ),
      'video/h263' => array(
        'e' => array(
          0 => 'h263',
        ),
      ),
      'video/h264' => array(
        'e' => array(
          0 => 'h264',
        ),
      ),
      'video/jpeg' => array(
        'e' => array(
          0 => 'jpgv',
        ),
      ),
      'video/jpm' => array(
        'e' => array(
          0 => 'jpm',
          1 => 'jpgm',
        ),
      ),
      'video/mj2' => array(
        'desc' => array(
          0 => 'JPEG-2000 MJ2 video',
          1 => 'MJ2: Motion JPEG-2000',
        ),
        'e' => array(
          0 => 'mj2',
          1 => 'mjp2',
        ),
      ),
      'video/mp2t' => array(
        'desc' => array(
          0 => 'MPEG-2 transport stream',
          1 => 'MPEG-2 TS: Moving Picture Experts Group 2 Transport Stream',
        ),
        'e' => array(
          0 => 'm2t',
          1 => 'm2ts',
          2 => 'ts',
          3 => 'mts',
          4 => 'cpi',
          5 => 'clpi',
          6 => 'mpl',
          7 => 'mpls',
          8 => 'bdm',
          9 => 'bdmv',
        ),
      ),
      'video/mp4' => array(
        'a' => array(
          0 => 'video/mp4v-es',
          1 => 'video/x-m4v',
        ),
        'desc' => array(
          0 => 'MPEG-4 video',
        ),
        'e' => array(
          0 => 'mp4',
          1 => 'mp4v',
          2 => 'mpg4',
          3 => 'm4v',
          4 => 'f4v',
          5 => 'lrv',
          6 => 'f4p',
        ),
      ),
      'video/mpeg' => array(
        'a' => array(
          0 => 'video/x-mpeg',
          1 => 'video/mpeg-system',
          2 => 'video/x-mpeg-system',
          3 => 'video/x-mpeg2',
        ),
        'desc' => array(
          0 => 'MPEG video',
          1 => 'MPEG: Moving Picture Experts Group',
        ),
        'e' => array(
          0 => 'mpeg',
          1 => 'mpg',
          2 => 'mpe',
          3 => 'm1v',
          4 => 'm2v',
          5 => 'mp2',
          6 => 'vob',
        ),
      ),
      'video/ogg' => array(
        'a' => array(
          0 => 'video/x-ogg',
        ),
        'desc' => array(
          0 => 'Ogg video',
        ),
        'e' => array(
          0 => 'ogv',
          1 => 'ogg',
        ),
      ),
      'video/quicktime' => array(
        'desc' => array(
          0 => 'QuickTime video',
        ),
        'e' => array(
          0 => 'qt',
          1 => 'mov',
          2 => 'moov',
          3 => 'qtvr',
        ),
      ),
      'video/vnd.dece.hd' => array(
        'e' => array(
          0 => 'uvh',
          1 => 'uvvh',
        ),
      ),
      'video/vnd.dece.mobile' => array(
        'e' => array(
          0 => 'uvm',
          1 => 'uvvm',
        ),
      ),
      'video/vnd.dece.pd' => array(
        'e' => array(
          0 => 'uvp',
          1 => 'uvvp',
        ),
      ),
      'video/vnd.dece.sd' => array(
        'e' => array(
          0 => 'uvs',
          1 => 'uvvs',
        ),
      ),
      'video/vnd.dece.video' => array(
        'e' => array(
          0 => 'uvv',
          1 => 'uvvv',
        ),
      ),
      'video/vnd.dvb.file' => array(
        'e' => array(
          0 => 'dvb',
        ),
      ),
      'video/vnd.fvt' => array(
        'e' => array(
          0 => 'fvt',
        ),
      ),
      'video/vnd.mpegurl' => array(
        'a' => array(
          0 => 'video/x-mpegurl',
        ),
        'desc' => array(
          0 => 'MPEG video (streamed)',
        ),
        'e' => array(
          0 => 'mxu',
          1 => 'm4u',
          2 => 'm1u',
        ),
      ),
      'video/vnd.ms-playready.media.pyv' => array(
        'e' => array(
          0 => 'pyv',
        ),
      ),
      'video/vnd.rn-realvideo' => array(
        'a' => array(
          0 => 'video/x-real-video',
        ),
        'desc' => array(
          0 => 'RealVideo document',
        ),
        'e' => array(
          0 => 'rv',
          1 => 'rvx',
        ),
      ),
      'video/vnd.uvvu.mp4' => array(
        'e' => array(
          0 => 'uvu',
          1 => 'uvvu',
        ),
      ),
      'video/vnd.vivo' => array(
        'a' => array(
          0 => 'video/vivo',
        ),
        'desc' => array(
          0 => 'Vivo video',
        ),
        'e' => array(
          0 => 'viv',
          1 => 'vivo',
        ),
      ),
      'video/webm' => array(
        'desc' => array(
          0 => 'WebM video',
        ),
        'e' => array(
          0 => 'webm',
        ),
      ),
      'video/x-anim' => array(
        'desc' => array(
          0 => 'ANIM animation',
        ),
        'e' => array(
          0 => 'anim1',
          1 => 'anim2',
          2 => 'anim3',
          3 => 'anim4',
          4 => 'anim5',
          5 => 'anim6',
          6 => 'anim7',
          7 => 'anim8',
          8 => 'anim9',
          9 => 'animj',
        ),
      ),
      'video/x-f4v' => array(
        'e' => array(
          0 => 'f4v',
        ),
      ),
      'video/x-flic' => array(
        'a' => array(
          0 => 'video/fli',
          1 => 'video/x-fli',
        ),
        'desc' => array(
          0 => 'FLIC animation',
        ),
        'e' => array(
          0 => 'fli',
          1 => 'flc',
        ),
      ),
      'video/x-flv' => array(
        'a' => array(
          0 => 'application/x-flash-video',
          1 => 'flv-application/octet-stream',
          2 => 'video/flv',
        ),
        'desc' => array(
          0 => 'Flash video',
        ),
        'e' => array(
          0 => 'flv',
        ),
      ),
      'video/x-javafx' => array(
        'desc' => array(
          0 => 'JavaFX video',
        ),
        'e' => array(
          0 => 'fxm',
        ),
      ),
      'video/x-la-asf' => array(
        'e' => array(
          0 => 'lsf',
          1 => 'lsx',
        ),
      ),
      'video/x-matroska' => array(
        'desc' => array(
          0 => 'Matroska video',
        ),
        'e' => array(
          0 => 'mkv',
          1 => 'mk3d',
          2 => 'mks',
        ),
      ),
      'video/x-matroska-3d' => array(
        'desc' => array(
          0 => 'Matroska 3D video',
        ),
        'e' => array(
          0 => 'mk3d',
        ),
      ),
      'video/x-mjpeg' => array(
        'desc' => array(
          0 => 'MJPEG video stream',
          1 => 'MJPEG: Motion JPEG',
        ),
        'e' => array(
          0 => 'mjpeg',
          1 => 'mjpg',
        ),
      ),
      'video/x-mng' => array(
        'desc' => array(
          0 => 'MNG animation',
          1 => 'MNG: Multiple-Image Network Graphics',
        ),
        'e' => array(
          0 => 'mng',
        ),
      ),
      'video/x-ms-vob' => array(
        'e' => array(
          0 => 'vob',
        ),
      ),
      'video/x-ms-wmv' => array(
        'desc' => array(
          0 => 'Windows Media video',
        ),
        'e' => array(
          0 => 'wmv',
        ),
      ),
      'video/x-msvideo' => array(
        'a' => array(
          0 => 'video/x-avi',
          1 => 'video/avi',
          2 => 'video/divx',
          3 => 'video/msvideo',
          4 => 'video/vnd.divx',
        ),
        'desc' => array(
          0 => 'AVI video',
          1 => 'AVI: Audio Video Interleave',
        ),
        'e' => array(
          0 => 'avi',
          1 => 'avf',
          2 => 'divx',
        ),
      ),
      'video/x-nsv' => array(
        'desc' => array(
          0 => 'NullSoft video',
        ),
        'e' => array(
          0 => 'nsv',
        ),
      ),
      'video/x-ogm+ogg' => array(
        'a' => array(
          0 => 'video/x-ogm',
        ),
        'desc' => array(
          0 => 'OGM video',
        ),
        'e' => array(
          0 => 'ogm',
        ),
      ),
      'video/x-sgi-movie' => array(
        'desc' => array(
          0 => 'SGI video',
        ),
        'e' => array(
          0 => 'movie',
        ),
      ),
      'video/x-smv' => array(
        'e' => array(
          0 => 'smv',
        ),
      ),
      'video/x-theora+ogg' => array(
        'a' => array(
          0 => 'video/x-theora',
        ),
        'desc' => array(
          0 => 'Ogg Theora video',
        ),
        'e' => array(
          0 => 'ogg',
        ),
      ),
      'x-conference/x-cooltalk' => array(
        'e' => array(
          0 => 'ice',
        ),
      ),
      'x-epoc/x-sisx-app' => array(
        'desc' => array(
          0 => 'SISX package',
          1 => 'SIS: Symbian Installation File',
        ),
        'e' => array(
          0 => 'sisx',
        ),
      ),
    ),
    'e' => array(
      '%' => array(
        't' => array(
          0 => 'application/x-trash',
        ),
      ),
      '32x' => array(
        't' => array(
          0 => 'application/x-genesis-32x-rom',
        ),
      ),
      '3dml' => array(
        't' => array(
          0 => 'text/vnd.in3d.3dml',
        ),
      ),
      '3ds' => array(
        't' => array(
          0 => 'image/x-3ds',
        ),
      ),
      '3g2' => array(
        't' => array(
          0 => 'video/3gpp2',
        ),
      ),
      '3ga' => array(
        't' => array(
          0 => 'video/3gpp',
        ),
      ),
      '3gp' => array(
        't' => array(
          0 => 'video/3gpp',
        ),
      ),
      '3gp2' => array(
        't' => array(
          0 => 'video/3gpp2',
        ),
      ),
      '3gpp' => array(
        't' => array(
          0 => 'video/3gpp',
        ),
      ),
      '3gpp2' => array(
        't' => array(
          0 => 'video/3gpp2',
        ),
      ),
      '7z' => array(
        't' => array(
          0 => 'application/x-7z-compressed',
        ),
      ),
      'a' => array(
        't' => array(
          0 => 'application/x-archive',
        ),
      ),
      'a26' => array(
        't' => array(
          0 => 'application/x-atari-2600-rom',
        ),
      ),
      'a78' => array(
        't' => array(
          0 => 'application/x-atari-7800-rom',
        ),
      ),
      'aa' => array(
        't' => array(
          0 => 'audio/x-pn-audibleaudio',
        ),
      ),
      'aab' => array(
        't' => array(
          0 => 'application/x-authorware-bin',
        ),
      ),
      'aac' => array(
        't' => array(
          0 => 'audio/aac',
        ),
      ),
      'aam' => array(
        't' => array(
          0 => 'application/x-authorware-map',
        ),
      ),
      'aas' => array(
        't' => array(
          0 => 'application/x-authorware-seg',
        ),
      ),
      'aax' => array(
        't' => array(
          0 => 'audio/vnd.audible.aax',
        ),
      ),
      'abw' => array(
        't' => array(
          0 => 'application/x-abiword',
        ),
      ),
      'abw.crashed' => array(
        't' => array(
          0 => 'application/x-abiword',
        ),
      ),
      'abw.gz' => array(
        't' => array(
          0 => 'application/x-abiword',
        ),
      ),
      'ac' => array(
        't' => array(
          0 => 'application/pkix-attr-cert',
        ),
      ),
      'ac3' => array(
        't' => array(
          0 => 'audio/ac3',
        ),
      ),
      'acc' => array(
        't' => array(
          0 => 'application/vnd.americandynamics.acc',
        ),
      ),
      'ace' => array(
        't' => array(
          0 => 'application/x-ace-compressed',
          1 => 'application/x-ace',
        ),
      ),
      'acu' => array(
        't' => array(
          0 => 'application/vnd.acucobol',
        ),
      ),
      'acutc' => array(
        't' => array(
          0 => 'application/vnd.acucorp',
        ),
      ),
      'adb' => array(
        't' => array(
          0 => 'text/x-adasrc',
        ),
      ),
      'adf' => array(
        't' => array(
          0 => 'application/x-amiga-disk-format',
        ),
      ),
      'adp' => array(
        't' => array(
          0 => 'audio/adpcm',
        ),
      ),
      'ads' => array(
        't' => array(
          0 => 'text/x-adasrc',
        ),
      ),
      'adts' => array(
        't' => array(
          0 => 'audio/aac',
        ),
      ),
      'aep' => array(
        't' => array(
          0 => 'application/vnd.audiograph',
        ),
      ),
      'afm' => array(
        't' => array(
          0 => 'application/x-font-type1',
          1 => 'application/x-font-afm',
        ),
      ),
      'afp' => array(
        't' => array(
          0 => 'application/vnd.ibm.modcap',
        ),
      ),
      'ag' => array(
        't' => array(
          0 => 'image/x-applix-graphics',
        ),
      ),
      'agb' => array(
        't' => array(
          0 => 'application/x-gba-rom',
        ),
      ),
      'ahead' => array(
        't' => array(
          0 => 'application/vnd.ahead.space',
        ),
      ),
      'ai' => array(
        't' => array(
          0 => 'application/postscript',
          1 => 'application/illustrator',
        ),
      ),
      'aif' => array(
        't' => array(
          0 => 'audio/x-aiff',
        ),
      ),
      'aifc' => array(
        't' => array(
          0 => 'audio/x-aiff',
          1 => 'audio/x-aifc',
        ),
      ),
      'aiff' => array(
        't' => array(
          0 => 'audio/x-aiff',
        ),
      ),
      'aiffc' => array(
        't' => array(
          0 => 'audio/x-aifc',
        ),
      ),
      'air' => array(
        't' => array(
          0 => 'application/vnd.adobe.air-application-installer-package+zip',
        ),
      ),
      'ait' => array(
        't' => array(
          0 => 'application/vnd.dvb.ait',
        ),
      ),
      'al' => array(
        't' => array(
          0 => 'application/x-perl',
        ),
      ),
      'alc' => array(
        't' => array(
          0 => 'chemical/x-alchemy',
        ),
      ),
      'alz' => array(
        't' => array(
          0 => 'application/x-alz',
        ),
      ),
      'ami' => array(
        't' => array(
          0 => 'application/vnd.amiga.ami',
        ),
      ),
      'amr' => array(
        't' => array(
          0 => 'audio/amr',
        ),
      ),
      'amz' => array(
        't' => array(
          0 => 'audio/x-amzxml',
        ),
      ),
      'ani' => array(
        't' => array(
          0 => 'application/x-navi-animation',
        ),
      ),
      'anim1' => array(
        't' => array(
          0 => 'video/x-anim',
        ),
      ),
      'anim2' => array(
        't' => array(
          0 => 'video/x-anim',
        ),
      ),
      'anim3' => array(
        't' => array(
          0 => 'video/x-anim',
        ),
      ),
      'anim4' => array(
        't' => array(
          0 => 'video/x-anim',
        ),
      ),
      'anim5' => array(
        't' => array(
          0 => 'video/x-anim',
        ),
      ),
      'anim6' => array(
        't' => array(
          0 => 'video/x-anim',
        ),
      ),
      'anim7' => array(
        't' => array(
          0 => 'video/x-anim',
        ),
      ),
      'anim8' => array(
        't' => array(
          0 => 'video/x-anim',
        ),
      ),
      'anim9' => array(
        't' => array(
          0 => 'video/x-anim',
        ),
      ),
      'animj' => array(
        't' => array(
          0 => 'video/x-anim',
        ),
      ),
      'anx' => array(
        't' => array(
          0 => 'application/annodex',
        ),
      ),
      'ape' => array(
        't' => array(
          0 => 'audio/x-ape',
        ),
      ),
      'apk' => array(
        't' => array(
          0 => 'application/vnd.android.package-archive',
        ),
      ),
      'appcache' => array(
        't' => array(
          0 => 'text/cache-manifest',
        ),
      ),
      'appimage' => array(
        't' => array(
          0 => 'application/x-iso9660-appimage',
          1 => 'application/vnd.appimage',
        ),
      ),
      'application' => array(
        't' => array(
          0 => 'application/x-ms-application',
        ),
      ),
      'apr' => array(
        't' => array(
          0 => 'application/vnd.lotus-approach',
        ),
      ),
      'ar' => array(
        't' => array(
          0 => 'application/x-archive',
        ),
      ),
      'arc' => array(
        't' => array(
          0 => 'application/x-freearc',
        ),
      ),
      'arj' => array(
        't' => array(
          0 => 'application/x-arj',
        ),
      ),
      'art' => array(
        't' => array(
          0 => 'image/x-jg',
        ),
      ),
      'arw' => array(
        't' => array(
          0 => 'image/x-sony-arw',
        ),
      ),
      'as' => array(
        't' => array(
          0 => 'application/x-applix-spreadsheet',
        ),
      ),
      'asc' => array(
        't' => array(
          0 => 'text/plain',
          1 => 'application/pgp-signature',
          2 => 'application/pgp-encrypted',
          3 => 'application/pgp-keys',
        ),
      ),
      'asd' => array(
        't' => array(
          0 => 'text/x-common-lisp',
        ),
      ),
      'asf' => array(
        't' => array(
          0 => 'video/x-ms-asf',
          1 => 'application/vnd.ms-asf',
        ),
      ),
      'asm' => array(
        't' => array(
          0 => 'text/x-asm',
        ),
      ),
      'asn' => array(
        't' => array(
          0 => 'chemical/x-ncbi-asn1-spec',
        ),
      ),
      'aso' => array(
        't' => array(
          0 => 'chemical/x-ncbi-asn1-binary',
          1 => 'application/vnd.accpac.simply.aso',
        ),
      ),
      'asp' => array(
        't' => array(
          0 => 'application/x-asp',
        ),
      ),
      'ass' => array(
        't' => array(
          0 => 'text/x-ssa',
          1 => 'audio/aac',
        ),
      ),
      'asx' => array(
        't' => array(
          0 => 'video/x-ms-asf',
          1 => 'audio/x-ms-asx',
          2 => 'application/vnd.ms-asf',
        ),
      ),
      'atc' => array(
        't' => array(
          0 => 'application/vnd.acucorp',
        ),
      ),
      'atom' => array(
        't' => array(
          0 => 'application/atom',
          1 => 'application/atom+xml',
        ),
      ),
      'atomcat' => array(
        't' => array(
          0 => 'application/atomcat+xml',
        ),
      ),
      'atomsrv' => array(
        't' => array(
          0 => 'application/atomserv+xml',
        ),
      ),
      'atomsvc' => array(
        't' => array(
          0 => 'application/atomsvc+xml',
        ),
      ),
      'atx' => array(
        't' => array(
          0 => 'application/vnd.antix.game-component',
        ),
      ),
      'au' => array(
        't' => array(
          0 => 'audio/basic',
        ),
      ),
      'automount' => array(
        't' => array(
          0 => 'text/x-systemd-unit',
        ),
      ),
      'avf' => array(
        't' => array(
          0 => 'video/x-msvideo',
        ),
      ),
      'avi' => array(
        't' => array(
          0 => 'video/x-msvideo',
        ),
      ),
      'avif' => array(
        't' => array(
          0 => 'image/avif',
        ),
      ),
      'avifs' => array(
        't' => array(
          0 => 'image/avif-sequence',
        ),
      ),
      'aw' => array(
        't' => array(
          0 => 'application/applixware',
          1 => 'application/x-applix-word',
        ),
      ),
      'awb' => array(
        't' => array(
          0 => 'audio/amr-wb',
        ),
      ),
      'awk' => array(
        't' => array(
          0 => 'application/x-awk',
        ),
      ),
      'axa' => array(
        't' => array(
          0 => 'audio/annodex',
        ),
      ),
      'axv' => array(
        't' => array(
          0 => 'video/annodex',
        ),
      ),
      'azf' => array(
        't' => array(
          0 => 'application/vnd.airzip.filesecure.azf',
        ),
      ),
      'azs' => array(
        't' => array(
          0 => 'application/vnd.airzip.filesecure.azs',
        ),
      ),
      'azw' => array(
        't' => array(
          0 => 'application/vnd.amazon.ebook',
        ),
      ),
      'azw3' => array(
        't' => array(
          0 => 'application/vnd.amazon.mobi8-ebook',
        ),
      ),
      'b' => array(
        't' => array(
          0 => 'chemical/x-molconn-z',
        ),
      ),
      'bak' => array(
        't' => array(
          0 => 'application/x-trash',
        ),
      ),
      'bat' => array(
        't' => array(
          0 => 'application/x-msdos-program',
          1 => 'application/x-msdownload',
        ),
      ),
      'bcpio' => array(
        't' => array(
          0 => 'application/x-bcpio',
        ),
      ),
      'bdf' => array(
        't' => array(
          0 => 'application/x-font-bdf',
        ),
      ),
      'bdm' => array(
        't' => array(
          0 => 'application/vnd.syncml.dm+wbxml',
          1 => 'video/mp2t',
        ),
      ),
      'bdmv' => array(
        't' => array(
          0 => 'video/mp2t',
        ),
      ),
      'bed' => array(
        't' => array(
          0 => 'application/vnd.realvnc.bed',
        ),
      ),
      'bh2' => array(
        't' => array(
          0 => 'application/vnd.fujitsu.oasysprs',
        ),
      ),
      'bib' => array(
        't' => array(
          0 => 'text/x-bibtex',
        ),
      ),
      'bin' => array(
        't' => array(
          0 => 'application/octet-stream',
        ),
      ),
      'blb' => array(
        't' => array(
          0 => 'application/x-blorb',
        ),
      ),
      'blend' => array(
        't' => array(
          0 => 'application/x-blender',
        ),
      ),
      'blender' => array(
        't' => array(
          0 => 'application/x-blender',
        ),
      ),
      'blorb' => array(
        't' => array(
          0 => 'application/x-blorb',
        ),
      ),
      'bmi' => array(
        't' => array(
          0 => 'application/vnd.bmi',
        ),
      ),
      'bmp' => array(
        't' => array(
          0 => 'image/x-ms-bmp',
          1 => 'image/bmp',
        ),
      ),
      'boo' => array(
        't' => array(
          0 => 'text/x-boo',
        ),
      ),
      'book' => array(
        't' => array(
          0 => 'application/x-maker',
          1 => 'application/vnd.framemaker',
        ),
      ),
      'box' => array(
        't' => array(
          0 => 'application/vnd.previewsystems.box',
        ),
      ),
      'boz' => array(
        't' => array(
          0 => 'application/x-bzip',
        ),
      ),
      'bpk' => array(
        't' => array(
          0 => 'application/octet-stream',
        ),
      ),
      'bps' => array(
        't' => array(
          0 => 'application/x-bps-patch',
        ),
      ),
      'bsd' => array(
        't' => array(
          0 => 'chemical/x-crossfire',
        ),
      ),
      'bsdiff' => array(
        't' => array(
          0 => 'application/x-bsdiff',
        ),
      ),
      'btif' => array(
        't' => array(
          0 => 'image/prs.btif',
        ),
      ),
      'bz' => array(
        't' => array(
          0 => 'application/x-bzip',
        ),
      ),
      'bz2' => array(
        't' => array(
          0 => 'application/x-bzip',
        ),
      ),
      'c' => array(
        't' => array(
          0 => 'text/x-csrc',
          1 => 'text/x-c++src',
        ),
      ),
      'c++' => array(
        't' => array(
          0 => 'text/x-c++src',
        ),
      ),
      'c11amc' => array(
        't' => array(
          0 => 'application/vnd.cluetrust.cartomobile-config',
        ),
      ),
      'c11amz' => array(
        't' => array(
          0 => 'application/vnd.cluetrust.cartomobile-config-pkg',
        ),
      ),
      'c3d' => array(
        't' => array(
          0 => 'chemical/x-chem3d',
        ),
      ),
      'c4d' => array(
        't' => array(
          0 => 'application/vnd.clonk.c4group',
        ),
      ),
      'c4f' => array(
        't' => array(
          0 => 'application/vnd.clonk.c4group',
        ),
      ),
      'c4g' => array(
        't' => array(
          0 => 'application/vnd.clonk.c4group',
        ),
      ),
      'c4p' => array(
        't' => array(
          0 => 'application/vnd.clonk.c4group',
        ),
      ),
      'c4u' => array(
        't' => array(
          0 => 'application/vnd.clonk.c4group',
        ),
      ),
      'cab' => array(
        't' => array(
          0 => 'application/x-cab',
          1 => 'application/vnd.ms-cab-compressed',
        ),
      ),
      'cac' => array(
        't' => array(
          0 => 'chemical/x-cache',
        ),
      ),
      'cache' => array(
        't' => array(
          0 => 'chemical/x-cache',
        ),
      ),
      'caf' => array(
        't' => array(
          0 => 'audio/x-caf',
        ),
      ),
      'cap' => array(
        't' => array(
          0 => 'application/cap',
          1 => 'application/vnd.tcpdump.pcap',
        ),
      ),
      'car' => array(
        't' => array(
          0 => 'application/vnd.curl.car',
        ),
      ),
      'cascii' => array(
        't' => array(
          0 => 'chemical/x-cactvs-binary',
        ),
      ),
      'cat' => array(
        't' => array(
          0 => 'application/vnd.ms-pki.seccat',
        ),
      ),
      'cb7' => array(
        't' => array(
          0 => 'application/x-cb7',
        ),
      ),
      'cba' => array(
        't' => array(
          0 => 'application/vnd.comicbook-rar',
        ),
      ),
      'cbin' => array(
        't' => array(
          0 => 'chemical/x-cactvs-binary',
        ),
      ),
      'cbl' => array(
        't' => array(
          0 => 'text/x-cobol',
        ),
      ),
      'cbr' => array(
        't' => array(
          0 => 'application/x-cbr',
          1 => 'application/vnd.comicbook-rar',
        ),
      ),
      'cbt' => array(
        't' => array(
          0 => 'application/x-cbt',
        ),
      ),
      'cbz' => array(
        't' => array(
          0 => 'application/x-cbz',
          1 => 'application/vnd.comicbook+zip',
        ),
      ),
      'cc' => array(
        't' => array(
          0 => 'text/x-c++src',
        ),
      ),
      'ccmx' => array(
        't' => array(
          0 => 'application/x-ccmx',
        ),
      ),
      'cct' => array(
        't' => array(
          0 => 'application/x-director',
        ),
      ),
      'ccxml' => array(
        't' => array(
          0 => 'application/ccxml+xml',
        ),
      ),
      'cdbcmsg' => array(
        't' => array(
          0 => 'application/vnd.contact.cmsg',
        ),
      ),
      'cdf' => array(
        't' => array(
          0 => 'application/x-cdf',
          1 => 'application/x-netcdf',
        ),
      ),
      'cdkey' => array(
        't' => array(
          0 => 'application/vnd.mediastation.cdkey',
        ),
      ),
      'cdmia' => array(
        't' => array(
          0 => 'application/cdmi-capability',
        ),
      ),
      'cdmic' => array(
        't' => array(
          0 => 'application/cdmi-container',
        ),
      ),
      'cdmid' => array(
        't' => array(
          0 => 'application/cdmi-domain',
        ),
      ),
      'cdmio' => array(
        't' => array(
          0 => 'application/cdmi-object',
        ),
      ),
      'cdmiq' => array(
        't' => array(
          0 => 'application/cdmi-queue',
        ),
      ),
      'cdr' => array(
        't' => array(
          0 => 'image/x-coreldraw',
          1 => 'application/vnd.corel-draw',
        ),
      ),
      'cdt' => array(
        't' => array(
          0 => 'image/x-coreldrawtemplate',
        ),
      ),
      'cdx' => array(
        't' => array(
          0 => 'chemical/x-cdx',
        ),
      ),
      'cdxml' => array(
        't' => array(
          0 => 'application/vnd.chemdraw+xml',
        ),
      ),
      'cdy' => array(
        't' => array(
          0 => 'application/vnd.cinderella',
        ),
      ),
      'cef' => array(
        't' => array(
          0 => 'chemical/x-cxf',
        ),
      ),
      'cer' => array(
        't' => array(
          0 => 'chemical/x-cerius',
          1 => 'application/pkix-cert',
        ),
      ),
      'cert' => array(
        't' => array(
          0 => 'application/x-x509-ca-cert',
        ),
      ),
      'cfs' => array(
        't' => array(
          0 => 'application/x-cfs-compressed',
        ),
      ),
      'cgb' => array(
        't' => array(
          0 => 'application/x-gameboy-color-rom',
        ),
      ),
      'cgm' => array(
        't' => array(
          0 => 'image/cgm',
        ),
      ),
      'chat' => array(
        't' => array(
          0 => 'application/x-chat',
        ),
      ),
      'chm' => array(
        't' => array(
          0 => 'chemical/x-chemdraw',
          1 => 'application/vnd.ms-htmlhelp',
        ),
      ),
      'chrt' => array(
        't' => array(
          0 => 'application/x-kchart',
          1 => 'application/vnd.kde.kchart',
        ),
      ),
      'cif' => array(
        't' => array(
          0 => 'chemical/x-cif',
        ),
      ),
      'cii' => array(
        't' => array(
          0 => 'application/vnd.anser-web-certificate-issue-initiation',
        ),
      ),
      'cil' => array(
        't' => array(
          0 => 'application/vnd.ms-artgalry',
        ),
      ),
      'cl' => array(
        't' => array(
          0 => 'text/x-opencl-src',
        ),
      ),
      'cla' => array(
        't' => array(
          0 => 'application/vnd.claymore',
        ),
      ),
      'class' => array(
        't' => array(
          0 => 'application/java-vm',
          1 => 'application/x-java',
        ),
      ),
      'clkk' => array(
        't' => array(
          0 => 'application/vnd.crick.clicker.keyboard',
        ),
      ),
      'clkp' => array(
        't' => array(
          0 => 'application/vnd.crick.clicker.palette',
        ),
      ),
      'clkt' => array(
        't' => array(
          0 => 'application/vnd.crick.clicker.template',
        ),
      ),
      'clkw' => array(
        't' => array(
          0 => 'application/vnd.crick.clicker.wordbank',
        ),
      ),
      'clkx' => array(
        't' => array(
          0 => 'application/vnd.crick.clicker',
        ),
      ),
      'clp' => array(
        't' => array(
          0 => 'application/x-msclip',
        ),
      ),
      'clpi' => array(
        't' => array(
          0 => 'video/mp2t',
        ),
      ),
      'cls' => array(
        't' => array(
          0 => 'text/x-tex',
        ),
      ),
      'cmake' => array(
        't' => array(
          0 => 'text/x-cmake',
        ),
      ),
      'cmc' => array(
        't' => array(
          0 => 'application/vnd.cosmocaller',
        ),
      ),
      'cmdf' => array(
        't' => array(
          0 => 'chemical/x-cmdf',
        ),
      ),
      'cml' => array(
        't' => array(
          0 => 'chemical/x-cml',
        ),
      ),
      'cmp' => array(
        't' => array(
          0 => 'application/vnd.yellowriver-custom-menu',
        ),
      ),
      'cmx' => array(
        't' => array(
          0 => 'image/x-cmx',
        ),
      ),
      'cob' => array(
        't' => array(
          0 => 'text/x-cobol',
        ),
      ),
      'cod' => array(
        't' => array(
          0 => 'application/vnd.rim.cod',
        ),
      ),
      'coffee' => array(
        't' => array(
          0 => 'application/vnd.coffeescript',
        ),
      ),
      'com' => array(
        't' => array(
          0 => 'application/x-msdos-program',
          1 => 'application/x-msdownload',
        ),
      ),
      'conf' => array(
        't' => array(
          0 => 'text/plain',
        ),
      ),
      'cpa' => array(
        't' => array(
          0 => 'chemical/x-compass',
        ),
      ),
      'cpi' => array(
        't' => array(
          0 => 'video/mp2t',
        ),
      ),
      'cpio' => array(
        't' => array(
          0 => 'application/x-cpio',
        ),
      ),
      'cpio.gz' => array(
        't' => array(
          0 => 'application/x-cpio-compressed',
        ),
      ),
      'cpp' => array(
        't' => array(
          0 => 'text/x-c++src',
        ),
      ),
      'cpt' => array(
        't' => array(
          0 => 'image/x-corelphotopaint',
          1 => 'application/mac-compactpro',
        ),
      ),
      'cr2' => array(
        't' => array(
          0 => 'image/x-canon-cr2',
        ),
      ),
      'crd' => array(
        't' => array(
          0 => 'application/x-mscardfile',
        ),
      ),
      'crdownload' => array(
        't' => array(
          0 => 'application/x-partial-download',
        ),
      ),
      'crl' => array(
        't' => array(
          0 => 'application/x-pkcs7-crl',
          1 => 'application/pkix-crl',
        ),
      ),
      'crt' => array(
        't' => array(
          0 => 'application/x-x509-ca-cert',
        ),
      ),
      'crw' => array(
        't' => array(
          0 => 'image/x-canon-crw',
        ),
      ),
      'cryptonote' => array(
        't' => array(
          0 => 'application/vnd.rig.cryptonote',
        ),
      ),
      'cs' => array(
        't' => array(
          0 => 'text/x-csharp',
        ),
      ),
      'csf' => array(
        't' => array(
          0 => 'chemical/x-cache-csf',
        ),
      ),
      'csh' => array(
        't' => array(
          0 => 'text/x-csh',
          1 => 'application/x-csh',
        ),
      ),
      'csm' => array(
        't' => array(
          0 => 'chemical/x-csml',
        ),
      ),
      'csml' => array(
        't' => array(
          0 => 'chemical/x-csml',
        ),
      ),
      'csp' => array(
        't' => array(
          0 => 'application/vnd.commonspace',
        ),
      ),
      'css' => array(
        't' => array(
          0 => 'text/css',
        ),
      ),
      'cst' => array(
        't' => array(
          0 => 'application/x-director',
        ),
      ),
      'csv' => array(
        't' => array(
          0 => 'text/csv',
        ),
      ),
      'csvs' => array(
        't' => array(
          0 => 'text/csv-schema',
        ),
      ),
      'ctab' => array(
        't' => array(
          0 => 'chemical/x-cactvs-binary',
        ),
      ),
      'ctx' => array(
        't' => array(
          0 => 'chemical/x-ctx',
        ),
      ),
      'cu' => array(
        't' => array(
          0 => 'application/cu-seeme',
        ),
      ),
      'cub' => array(
        't' => array(
          0 => 'chemical/x-gaussian-cube',
        ),
      ),
      'cue' => array(
        't' => array(
          0 => 'application/x-cue',
        ),
      ),
      'cur' => array(
        't' => array(
          0 => 'image/x-win-bitmap',
        ),
      ),
      'curl' => array(
        't' => array(
          0 => 'text/vnd.curl',
        ),
      ),
      'cwk' => array(
        't' => array(
          0 => 'application/x-appleworks-document',
        ),
      ),
      'cww' => array(
        't' => array(
          0 => 'application/prs.cww',
        ),
      ),
      'cxf' => array(
        't' => array(
          0 => 'chemical/x-cxf',
        ),
      ),
      'cxt' => array(
        't' => array(
          0 => 'application/x-director',
        ),
      ),
      'cxx' => array(
        't' => array(
          0 => 'text/x-c++src',
        ),
      ),
      'd' => array(
        't' => array(
          0 => 'text/x-dsrc',
        ),
      ),
      'dae' => array(
        't' => array(
          0 => 'model/vnd.collada+xml',
        ),
      ),
      'daf' => array(
        't' => array(
          0 => 'application/vnd.mobius.daf',
        ),
      ),
      'dar' => array(
        't' => array(
          0 => 'application/x-dar',
        ),
      ),
      'dart' => array(
        't' => array(
          0 => 'application/vnd.dart',
        ),
      ),
      'dat' => array(
        't' => array(
          0 => 'chemical/x-mopac-input',
        ),
      ),
      'dataless' => array(
        't' => array(
          0 => 'application/vnd.fdsn.seed',
        ),
      ),
      'davmount' => array(
        't' => array(
          0 => 'application/davmount+xml',
        ),
      ),
      'dbf' => array(
        't' => array(
          0 => 'application/x-dbf',
        ),
      ),
      'dbk' => array(
        't' => array(
          0 => 'application/x-docbook+xml',
        ),
      ),
      'dc' => array(
        't' => array(
          0 => 'application/x-dc-rom',
        ),
      ),
      'dcl' => array(
        't' => array(
          0 => 'text/x-dcl',
        ),
      ),
      'dcm' => array(
        't' => array(
          0 => 'application/dicom',
        ),
      ),
      'dcr' => array(
        't' => array(
          0 => 'application/x-director',
          1 => 'image/x-kodak-dcr',
        ),
      ),
      'dcurl' => array(
        't' => array(
          0 => 'text/vnd.curl.dcurl',
        ),
      ),
      'dd2' => array(
        't' => array(
          0 => 'application/vnd.oma.dd2+xml',
        ),
      ),
      'ddd' => array(
        't' => array(
          0 => 'application/vnd.fujixerox.ddd',
        ),
      ),
      'dds' => array(
        't' => array(
          0 => 'image/x-dds',
        ),
      ),
      'deb' => array(
        't' => array(
          0 => 'application/x-debian-package',
          1 => 'application/vnd.debian.binary-package',
        ),
      ),
      'def' => array(
        't' => array(
          0 => 'text/plain',
        ),
      ),
      'deploy' => array(
        't' => array(
          0 => 'application/octet-stream',
        ),
      ),
      'der' => array(
        't' => array(
          0 => 'application/x-x509-ca-cert',
        ),
      ),
      'desktop' => array(
        't' => array(
          0 => 'application/x-desktop',
        ),
      ),
      'device' => array(
        't' => array(
          0 => 'text/x-systemd-unit',
        ),
      ),
      'dfac' => array(
        't' => array(
          0 => 'application/vnd.dreamfactory',
        ),
      ),
      'dgc' => array(
        't' => array(
          0 => 'application/x-dgc-compressed',
        ),
      ),
      'di' => array(
        't' => array(
          0 => 'text/x-dsrc',
        ),
      ),
      'dia' => array(
        't' => array(
          0 => 'application/x-dia-diagram',
        ),
      ),
      'dib' => array(
        't' => array(
          0 => 'image/bmp',
        ),
      ),
      'dic' => array(
        't' => array(
          0 => 'text/x-csrc',
        ),
      ),
      'dif' => array(
        't' => array(
          0 => 'video/dv',
        ),
      ),
      'diff' => array(
        't' => array(
          0 => 'text/x-diff',
          1 => 'text/x-patch',
        ),
      ),
      'dir' => array(
        't' => array(
          0 => 'application/x-director',
        ),
      ),
      'dis' => array(
        't' => array(
          0 => 'application/vnd.mobius.dis',
        ),
      ),
      'dist' => array(
        't' => array(
          0 => 'application/octet-stream',
        ),
      ),
      'distz' => array(
        't' => array(
          0 => 'application/octet-stream',
        ),
      ),
      'divx' => array(
        't' => array(
          0 => 'video/x-msvideo',
        ),
      ),
      'djv' => array(
        't' => array(
          0 => 'image/vnd.djvu',
          1 => 'image/vnd.djvu+multipage',
        ),
      ),
      'djvu' => array(
        't' => array(
          0 => 'image/vnd.djvu',
          1 => 'image/vnd.djvu+multipage',
        ),
      ),
      'dl' => array(
        't' => array(
          0 => 'video/dl',
        ),
      ),
      'dll' => array(
        't' => array(
          0 => 'application/x-msdos-program',
          1 => 'application/x-msdownload',
        ),
      ),
      'dmg' => array(
        't' => array(
          0 => 'application/x-apple-diskimage',
        ),
      ),
      'dmp' => array(
        't' => array(
          0 => 'application/vnd.tcpdump.pcap',
        ),
      ),
      'dms' => array(
        't' => array(
          0 => 'application/x-dms',
          1 => 'application/octet-stream',
        ),
      ),
      'dna' => array(
        't' => array(
          0 => 'application/vnd.dna',
        ),
      ),
      'dng' => array(
        't' => array(
          0 => 'image/x-adobe-dng',
        ),
      ),
      'doc' => array(
        't' => array(
          0 => 'application/msword',
        ),
      ),
      'docbook' => array(
        't' => array(
          0 => 'application/x-docbook+xml',
        ),
      ),
      'docm' => array(
        't' => array(
          0 => 'application/vnd.ms-word.document.macroenabled.12',
        ),
      ),
      'docx' => array(
        't' => array(
          0 => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
        ),
      ),
      'dot' => array(
        't' => array(
          0 => 'application/msword',
          1 => 'application/msword-template',
          2 => 'text/vnd.graphviz',
        ),
      ),
      'dotm' => array(
        't' => array(
          0 => 'application/vnd.ms-word.template.macroenabled.12',
        ),
      ),
      'dotx' => array(
        't' => array(
          0 => 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',
        ),
      ),
      'dp' => array(
        't' => array(
          0 => 'application/vnd.osgi.dp',
        ),
      ),
      'dpg' => array(
        't' => array(
          0 => 'application/vnd.dpgraph',
        ),
      ),
      'dra' => array(
        't' => array(
          0 => 'audio/vnd.dra',
        ),
      ),
      'dsc' => array(
        't' => array(
          0 => 'text/prs.lines.tag',
        ),
      ),
      'dsl' => array(
        't' => array(
          0 => 'text/x-dsl',
        ),
      ),
      'dssc' => array(
        't' => array(
          0 => 'application/dssc+der',
        ),
      ),
      'dtb' => array(
        't' => array(
          0 => 'application/x-dtbook+xml',
        ),
      ),
      'dtd' => array(
        't' => array(
          0 => 'application/xml-dtd',
        ),
      ),
      'dts' => array(
        't' => array(
          0 => 'audio/vnd.dts',
        ),
      ),
      'dtshd' => array(
        't' => array(
          0 => 'audio/vnd.dts.hd',
        ),
      ),
      'dtx' => array(
        't' => array(
          0 => 'text/x-tex',
        ),
      ),
      'dump' => array(
        't' => array(
          0 => 'application/octet-stream',
        ),
      ),
      'dv' => array(
        't' => array(
          0 => 'video/dv',
        ),
      ),
      'dvb' => array(
        't' => array(
          0 => 'video/vnd.dvb.file',
        ),
      ),
      'dvi' => array(
        't' => array(
          0 => 'application/x-dvi',
        ),
      ),
      'dvi.bz2' => array(
        't' => array(
          0 => 'application/x-bzdvi',
        ),
      ),
      'dvi.gz' => array(
        't' => array(
          0 => 'application/x-gzdvi',
        ),
      ),
      'dwf' => array(
        't' => array(
          0 => 'model/vnd.dwf',
        ),
      ),
      'dwg' => array(
        't' => array(
          0 => 'image/vnd.dwg',
        ),
      ),
      'dx' => array(
        't' => array(
          0 => 'chemical/x-jcamp-dx',
        ),
      ),
      'dxf' => array(
        't' => array(
          0 => 'image/vnd.dxf',
        ),
      ),
      'dxp' => array(
        't' => array(
          0 => 'application/vnd.spotfire.dxp',
        ),
      ),
      'dxr' => array(
        't' => array(
          0 => 'application/x-director',
        ),
      ),
      'e' => array(
        't' => array(
          0 => 'text/x-eiffel',
        ),
      ),
      'ecelp4800' => array(
        't' => array(
          0 => 'audio/vnd.nuera.ecelp4800',
        ),
      ),
      'ecelp7470' => array(
        't' => array(
          0 => 'audio/vnd.nuera.ecelp7470',
        ),
      ),
      'ecelp9600' => array(
        't' => array(
          0 => 'audio/vnd.nuera.ecelp9600',
        ),
      ),
      'ecma' => array(
        't' => array(
          0 => 'application/ecmascript',
        ),
      ),
      'edm' => array(
        't' => array(
          0 => 'application/vnd.novadigm.edm',
        ),
      ),
      'edx' => array(
        't' => array(
          0 => 'application/vnd.novadigm.edx',
        ),
      ),
      'efif' => array(
        't' => array(
          0 => 'application/vnd.picsel',
        ),
      ),
      'egon' => array(
        't' => array(
          0 => 'application/x-egon',
        ),
      ),
      'ei6' => array(
        't' => array(
          0 => 'application/vnd.pg.osasli',
        ),
      ),
      'eif' => array(
        't' => array(
          0 => 'text/x-eiffel',
        ),
      ),
      'el' => array(
        't' => array(
          0 => 'text/x-emacs-lisp',
        ),
      ),
      'elc' => array(
        't' => array(
          0 => 'application/octet-stream',
        ),
      ),
      'emb' => array(
        't' => array(
          0 => 'chemical/x-embl-dl-nucleotide',
        ),
      ),
      'embl' => array(
        't' => array(
          0 => 'chemical/x-embl-dl-nucleotide',
        ),
      ),
      'emf' => array(
        't' => array(
          0 => 'image/emf',
        ),
      ),
      'eml' => array(
        't' => array(
          0 => 'message/rfc822',
        ),
      ),
      'emma' => array(
        't' => array(
          0 => 'application/emma+xml',
        ),
      ),
      'emp' => array(
        't' => array(
          0 => 'application/vnd.emusic-emusic_package',
        ),
      ),
      'emz' => array(
        't' => array(
          0 => 'image/wmf',
        ),
      ),
      'ent' => array(
        't' => array(
          0 => 'chemical/x-pdb',
          1 => 'application/xml-external-parsed-entity',
        ),
      ),
      'eol' => array(
        't' => array(
          0 => 'audio/vnd.digital-winds',
        ),
      ),
      'eot' => array(
        't' => array(
          0 => 'application/vnd.ms-fontobject',
        ),
      ),
      'eps' => array(
        't' => array(
          0 => 'application/postscript',
          1 => 'image/x-eps',
        ),
      ),
      'eps.bz2' => array(
        't' => array(
          0 => 'image/x-bzeps',
        ),
      ),
      'eps.gz' => array(
        't' => array(
          0 => 'image/x-gzeps',
        ),
      ),
      'epsf' => array(
        't' => array(
          0 => 'image/x-eps',
        ),
      ),
      'epsf.bz2' => array(
        't' => array(
          0 => 'image/x-bzeps',
        ),
      ),
      'epsf.gz' => array(
        't' => array(
          0 => 'image/x-gzeps',
        ),
      ),
      'epsi' => array(
        't' => array(
          0 => 'image/x-eps',
        ),
      ),
      'epsi.bz2' => array(
        't' => array(
          0 => 'image/x-bzeps',
        ),
      ),
      'epsi.gz' => array(
        't' => array(
          0 => 'image/x-gzeps',
        ),
      ),
      'epub' => array(
        't' => array(
          0 => 'application/epub+zip',
        ),
      ),
      'erl' => array(
        't' => array(
          0 => 'text/x-erlang',
        ),
      ),
      'es' => array(
        't' => array(
          0 => 'application/ecmascript',
        ),
      ),
      'es3' => array(
        't' => array(
          0 => 'application/vnd.eszigno3+xml',
        ),
      ),
      'esa' => array(
        't' => array(
          0 => 'application/vnd.osgi.subsystem',
        ),
      ),
      'esf' => array(
        't' => array(
          0 => 'application/vnd.epson.esf',
        ),
      ),
      'et3' => array(
        't' => array(
          0 => 'application/vnd.eszigno3+xml',
        ),
      ),
      'etheme' => array(
        't' => array(
          0 => 'application/x-e-theme',
        ),
      ),
      'etx' => array(
        't' => array(
          0 => 'text/x-setext',
        ),
      ),
      'eva' => array(
        't' => array(
          0 => 'application/x-eva',
        ),
      ),
      'evy' => array(
        't' => array(
          0 => 'application/x-envoy',
        ),
      ),
      'exe' => array(
        't' => array(
          0 => 'application/x-msdos-program',
          1 => 'application/x-msdownload',
          2 => 'application/x-ms-dos-executable',
        ),
      ),
      'exi' => array(
        't' => array(
          0 => 'application/exi',
        ),
      ),
      'exr' => array(
        't' => array(
          0 => 'image/x-exr',
        ),
      ),
      'ext' => array(
        't' => array(
          0 => 'application/vnd.novadigm.ext',
        ),
      ),
      'ez' => array(
        't' => array(
          0 => 'application/andrew-inset',
        ),
      ),
      'ez2' => array(
        't' => array(
          0 => 'application/vnd.ezpix-album',
        ),
      ),
      'ez3' => array(
        't' => array(
          0 => 'application/vnd.ezpix-package',
        ),
      ),
      'f' => array(
        't' => array(
          0 => 'text/x-fortran',
        ),
      ),
      'f4a' => array(
        't' => array(
          0 => 'audio/mp4',
        ),
      ),
      'f4b' => array(
        't' => array(
          0 => 'audio/mp4',
          1 => 'audio/x-m4b',
        ),
      ),
      'f4p' => array(
        't' => array(
          0 => 'video/mp4',
        ),
      ),
      'f4v' => array(
        't' => array(
          0 => 'video/mp4',
          1 => 'video/x-f4v',
        ),
      ),
      'f77' => array(
        't' => array(
          0 => 'text/x-fortran',
        ),
      ),
      'f90' => array(
        't' => array(
          0 => 'text/x-fortran',
        ),
      ),
      'f95' => array(
        't' => array(
          0 => 'text/x-fortran',
        ),
      ),
      'fasl' => array(
        't' => array(
          0 => 'text/x-common-lisp',
        ),
      ),
      'fb' => array(
        't' => array(
          0 => 'application/x-maker',
        ),
      ),
      'fb2' => array(
        't' => array(
          0 => 'application/x-fictionbook+xml',
        ),
      ),
      'fb2.zip' => array(
        't' => array(
          0 => 'application/x-zip-compressed-fb2',
        ),
      ),
      'fbdoc' => array(
        't' => array(
          0 => 'application/x-maker',
        ),
      ),
      'fbs' => array(
        't' => array(
          0 => 'image/vnd.fastbidsheet',
        ),
      ),
      'fcdt' => array(
        't' => array(
          0 => 'application/vnd.adobe.formscentral.fcdt',
        ),
      ),
      'fch' => array(
        't' => array(
          0 => 'chemical/x-gaussian-checkpoint',
        ),
      ),
      'fchk' => array(
        't' => array(
          0 => 'chemical/x-gaussian-checkpoint',
        ),
      ),
      'fcs' => array(
        't' => array(
          0 => 'application/vnd.isac.fcs',
        ),
      ),
      'fd' => array(
        't' => array(
          0 => 'application/x-raw-floppy-disk-image',
        ),
      ),
      'fdf' => array(
        't' => array(
          0 => 'application/vnd.fdf',
        ),
      ),
      'fds' => array(
        't' => array(
          0 => 'application/x-fds-disk',
        ),
      ),
      'fe_launch' => array(
        't' => array(
          0 => 'application/vnd.denovo.fcselayout-link',
        ),
      ),
      'feature' => array(
        't' => array(
          0 => 'text/x-gherkin',
        ),
      ),
      'fg5' => array(
        't' => array(
          0 => 'application/vnd.fujitsu.oasysgp',
        ),
      ),
      'fgd' => array(
        't' => array(
          0 => 'application/x-director',
        ),
      ),
      'fh' => array(
        't' => array(
          0 => 'image/x-freehand',
        ),
      ),
      'fh4' => array(
        't' => array(
          0 => 'image/x-freehand',
        ),
      ),
      'fh5' => array(
        't' => array(
          0 => 'image/x-freehand',
        ),
      ),
      'fh7' => array(
        't' => array(
          0 => 'image/x-freehand',
        ),
      ),
      'fhc' => array(
        't' => array(
          0 => 'image/x-freehand',
        ),
      ),
      'fig' => array(
        't' => array(
          0 => 'application/x-xfig',
          1 => 'image/x-xfig',
        ),
      ),
      'fits' => array(
        't' => array(
          0 => 'image/fits',
        ),
      ),
      'fl' => array(
        't' => array(
          0 => 'application/x-fluid',
        ),
      ),
      'flac' => array(
        't' => array(
          0 => 'application/x-flac',
          1 => 'audio/flac',
        ),
      ),
      'flatpak' => array(
        't' => array(
          0 => 'application/vnd.flatpak',
        ),
      ),
      'flatpakref' => array(
        't' => array(
          0 => 'application/vnd.flatpak.ref',
        ),
      ),
      'flatpakrepo' => array(
        't' => array(
          0 => 'application/vnd.flatpak.repo',
        ),
      ),
      'flc' => array(
        't' => array(
          0 => 'video/x-flic',
        ),
      ),
      'fli' => array(
        't' => array(
          0 => 'video/fli',
          1 => 'video/x-flic',
        ),
      ),
      'flo' => array(
        't' => array(
          0 => 'application/vnd.micrografx.flo',
        ),
      ),
      'flv' => array(
        't' => array(
          0 => 'video/x-flv',
        ),
      ),
      'flw' => array(
        't' => array(
          0 => 'application/vnd.kde.kivio',
          1 => 'application/x-kivio',
        ),
      ),
      'flx' => array(
        't' => array(
          0 => 'text/vnd.fmi.flexstor',
        ),
      ),
      'fly' => array(
        't' => array(
          0 => 'text/vnd.fly',
        ),
      ),
      'fm' => array(
        't' => array(
          0 => 'application/x-maker',
          1 => 'application/vnd.framemaker',
        ),
      ),
      'fnc' => array(
        't' => array(
          0 => 'application/vnd.frogans.fnc',
        ),
      ),
      'fo' => array(
        't' => array(
          0 => 'text/x-xslfo',
        ),
      ),
      'fodg' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.graphics-flat-xml',
        ),
      ),
      'fodp' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.presentation-flat-xml',
        ),
      ),
      'fods' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.spreadsheet-flat-xml',
        ),
      ),
      'fodt' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.text-flat-xml',
        ),
      ),
      'for' => array(
        't' => array(
          0 => 'text/x-fortran',
        ),
      ),
      'fpx' => array(
        't' => array(
          0 => 'image/vnd.fpx',
        ),
      ),
      'frame' => array(
        't' => array(
          0 => 'application/x-maker',
          1 => 'application/vnd.framemaker',
        ),
      ),
      'frm' => array(
        't' => array(
          0 => 'application/x-maker',
        ),
      ),
      'fsc' => array(
        't' => array(
          0 => 'application/vnd.fsc.weblaunch',
        ),
      ),
      'fst' => array(
        't' => array(
          0 => 'image/vnd.fst',
        ),
      ),
      'ftc' => array(
        't' => array(
          0 => 'application/vnd.fluxtime.clip',
        ),
      ),
      'fti' => array(
        't' => array(
          0 => 'application/vnd.anser-web-funds-transfer-initiation',
        ),
      ),
      'fvt' => array(
        't' => array(
          0 => 'video/vnd.fvt',
        ),
      ),
      'fxm' => array(
        't' => array(
          0 => 'video/x-javafx',
        ),
      ),
      'fxp' => array(
        't' => array(
          0 => 'application/vnd.adobe.fxp',
        ),
      ),
      'fxpl' => array(
        't' => array(
          0 => 'application/vnd.adobe.fxp',
        ),
      ),
      'fzs' => array(
        't' => array(
          0 => 'application/vnd.fuzzysheet',
        ),
      ),
      'g2w' => array(
        't' => array(
          0 => 'application/vnd.geoplan',
        ),
      ),
      'g3' => array(
        't' => array(
          0 => 'image/fax-g3',
        ),
      ),
      'g3w' => array(
        't' => array(
          0 => 'application/vnd.geospace',
        ),
      ),
      'gac' => array(
        't' => array(
          0 => 'application/vnd.groove-account',
        ),
      ),
      'gal' => array(
        't' => array(
          0 => 'chemical/x-gaussian-log',
        ),
      ),
      'gam' => array(
        't' => array(
          0 => 'chemical/x-gamess-input',
          1 => 'application/x-tads',
        ),
      ),
      'gamin' => array(
        't' => array(
          0 => 'chemical/x-gamess-input',
        ),
      ),
      'gau' => array(
        't' => array(
          0 => 'chemical/x-gaussian-input',
        ),
      ),
      'gb' => array(
        't' => array(
          0 => 'application/x-gameboy-rom',
        ),
      ),
      'gba' => array(
        't' => array(
          0 => 'application/x-gba-rom',
        ),
      ),
      'gbc' => array(
        't' => array(
          0 => 'application/x-gameboy-color-rom',
        ),
      ),
      'gbr' => array(
        't' => array(
          0 => 'application/rpki-ghostbusters',
          1 => 'image/x-gimp-gbr',
        ),
      ),
      'gca' => array(
        't' => array(
          0 => 'application/x-gca-compressed',
        ),
      ),
      'gcd' => array(
        't' => array(
          0 => 'text/x-pcs-gcd',
        ),
      ),
      'gcf' => array(
        't' => array(
          0 => 'application/x-graphing-calculator',
        ),
      ),
      'gcg' => array(
        't' => array(
          0 => 'chemical/x-gcg8-sequence',
        ),
      ),
      'gcode' => array(
        't' => array(
          0 => 'text/x.gcode',
        ),
      ),
      'gcrd' => array(
        't' => array(
          0 => 'text/vcard',
        ),
      ),
      'gdl' => array(
        't' => array(
          0 => 'model/vnd.gdl',
        ),
      ),
      'ged' => array(
        't' => array(
          0 => 'application/x-gedcom',
        ),
      ),
      'gedcom' => array(
        't' => array(
          0 => 'application/x-gedcom',
        ),
      ),
      'gem' => array(
        't' => array(
          0 => 'application/x-tar',
        ),
      ),
      'gen' => array(
        't' => array(
          0 => 'chemical/x-genbank',
          1 => 'application/x-genesis-rom',
        ),
      ),
      'geo' => array(
        't' => array(
          0 => 'application/vnd.dynageo',
        ),
      ),
      'geo.json' => array(
        't' => array(
          0 => 'application/geo+json',
        ),
      ),
      'geojson' => array(
        't' => array(
          0 => 'application/geo+json',
        ),
      ),
      'gex' => array(
        't' => array(
          0 => 'application/vnd.geometry-explorer',
        ),
      ),
      'gf' => array(
        't' => array(
          0 => 'application/x-tex-gf',
        ),
      ),
      'gg' => array(
        't' => array(
          0 => 'application/x-gamegear-rom',
        ),
      ),
      'ggb' => array(
        't' => array(
          0 => 'application/vnd.geogebra.file',
        ),
      ),
      'ggt' => array(
        't' => array(
          0 => 'application/vnd.geogebra.tool',
        ),
      ),
      'ghf' => array(
        't' => array(
          0 => 'application/vnd.groove-help',
        ),
      ),
      'gif' => array(
        't' => array(
          0 => 'image/gif',
        ),
      ),
      'gih' => array(
        't' => array(
          0 => 'image/x-gimp-gih',
        ),
      ),
      'gim' => array(
        't' => array(
          0 => 'application/vnd.groove-identity-message',
        ),
      ),
      'gjc' => array(
        't' => array(
          0 => 'chemical/x-gaussian-input',
        ),
      ),
      'gjf' => array(
        't' => array(
          0 => 'chemical/x-gaussian-input',
        ),
      ),
      'gl' => array(
        't' => array(
          0 => 'video/gl',
        ),
      ),
      'glade' => array(
        't' => array(
          0 => 'application/x-glade',
        ),
      ),
      'gml' => array(
        't' => array(
          0 => 'application/gml+xml',
        ),
      ),
      'gmo' => array(
        't' => array(
          0 => 'application/x-gettext-translation',
        ),
      ),
      'gmx' => array(
        't' => array(
          0 => 'application/vnd.gmx',
        ),
      ),
      'gnc' => array(
        't' => array(
          0 => 'application/x-gnucash',
        ),
      ),
      'gnd' => array(
        't' => array(
          0 => 'application/gnunet-directory',
        ),
      ),
      'gnucash' => array(
        't' => array(
          0 => 'application/x-gnucash',
        ),
      ),
      'gnumeric' => array(
        't' => array(
          0 => 'application/x-gnumeric',
        ),
      ),
      'gnuplot' => array(
        't' => array(
          0 => 'application/x-gnuplot',
        ),
      ),
      'go' => array(
        't' => array(
          0 => 'text/x-go',
        ),
      ),
      'gp' => array(
        't' => array(
          0 => 'application/x-gnuplot',
        ),
      ),
      'gpg' => array(
        't' => array(
          0 => 'application/pgp-encrypted',
          1 => 'application/pgp-keys',
          2 => 'application/pgp-signature',
        ),
      ),
      'gph' => array(
        't' => array(
          0 => 'application/vnd.flographit',
        ),
      ),
      'gplt' => array(
        't' => array(
          0 => 'application/x-gnuplot',
        ),
      ),
      'gpt' => array(
        't' => array(
          0 => 'chemical/x-mopac-graph',
        ),
      ),
      'gpx' => array(
        't' => array(
          0 => 'application/gpx+xml',
        ),
      ),
      'gqf' => array(
        't' => array(
          0 => 'application/vnd.grafeq',
        ),
      ),
      'gqs' => array(
        't' => array(
          0 => 'application/vnd.grafeq',
        ),
      ),
      'gra' => array(
        't' => array(
          0 => 'application/x-graphite',
        ),
      ),
      'gradle' => array(
        't' => array(
          0 => 'text/x-gradle',
        ),
      ),
      'gram' => array(
        't' => array(
          0 => 'application/srgs',
        ),
      ),
      'gramps' => array(
        't' => array(
          0 => 'application/x-gramps-xml',
        ),
      ),
      'gre' => array(
        't' => array(
          0 => 'application/vnd.geometry-explorer',
        ),
      ),
      'groovy' => array(
        't' => array(
          0 => 'text/x-groovy',
        ),
      ),
      'grv' => array(
        't' => array(
          0 => 'application/vnd.groove-injector',
        ),
      ),
      'grxml' => array(
        't' => array(
          0 => 'application/srgs+xml',
        ),
      ),
      'gs' => array(
        't' => array(
          0 => 'text/x-genie',
        ),
      ),
      'gsf' => array(
        't' => array(
          0 => 'application/x-font',
          1 => 'application/x-font-ghostscript',
          2 => 'application/x-font-type1',
        ),
      ),
      'gsh' => array(
        't' => array(
          0 => 'text/x-groovy',
        ),
      ),
      'gsm' => array(
        't' => array(
          0 => 'audio/x-gsm',
        ),
      ),
      'gtar' => array(
        't' => array(
          0 => 'application/x-gtar',
          1 => 'application/x-tar',
        ),
      ),
      'gtm' => array(
        't' => array(
          0 => 'application/vnd.groove-tool-message',
        ),
      ),
      'gtw' => array(
        't' => array(
          0 => 'model/vnd.gtw',
        ),
      ),
      'gv' => array(
        't' => array(
          0 => 'text/vnd.graphviz',
        ),
      ),
      'gvp' => array(
        't' => array(
          0 => 'text/x-google-video-pointer',
        ),
      ),
      'gvy' => array(
        't' => array(
          0 => 'text/x-groovy',
        ),
      ),
      'gxf' => array(
        't' => array(
          0 => 'application/gxf',
        ),
      ),
      'gxt' => array(
        't' => array(
          0 => 'application/vnd.geonext',
        ),
      ),
      'gy' => array(
        't' => array(
          0 => 'text/x-groovy',
        ),
      ),
      'gz' => array(
        't' => array(
          0 => 'application/gzip',
        ),
      ),
      'h' => array(
        't' => array(
          0 => 'text/x-chdr',
        ),
      ),
      'h++' => array(
        't' => array(
          0 => 'text/x-c++hdr',
        ),
      ),
      'h261' => array(
        't' => array(
          0 => 'video/h261',
        ),
      ),
      'h263' => array(
        't' => array(
          0 => 'video/h263',
        ),
      ),
      'h264' => array(
        't' => array(
          0 => 'video/h264',
        ),
      ),
      'h4' => array(
        't' => array(
          0 => 'application/x-hdf',
        ),
      ),
      'h5' => array(
        't' => array(
          0 => 'application/x-hdf',
        ),
      ),
      'hal' => array(
        't' => array(
          0 => 'application/vnd.hal+xml',
        ),
      ),
      'hbci' => array(
        't' => array(
          0 => 'application/vnd.hbci',
        ),
      ),
      'hdf' => array(
        't' => array(
          0 => 'application/x-hdf',
        ),
      ),
      'hdf4' => array(
        't' => array(
          0 => 'application/x-hdf',
        ),
      ),
      'hdf5' => array(
        't' => array(
          0 => 'application/x-hdf',
        ),
      ),
      'heic' => array(
        't' => array(
          0 => 'image/heif',
        ),
      ),
      'heif' => array(
        't' => array(
          0 => 'image/heif',
        ),
      ),
      'hfe' => array(
        't' => array(
          0 => 'application/x-hfe-floppy-image',
        ),
      ),
      'hh' => array(
        't' => array(
          0 => 'text/x-c++hdr',
        ),
      ),
      'hin' => array(
        't' => array(
          0 => 'chemical/x-hin',
        ),
      ),
      'hlp' => array(
        't' => array(
          0 => 'application/winhlp',
        ),
      ),
      'hp' => array(
        't' => array(
          0 => 'text/x-c++hdr',
        ),
      ),
      'hpgl' => array(
        't' => array(
          0 => 'application/vnd.hp-hpgl',
        ),
      ),
      'hpid' => array(
        't' => array(
          0 => 'application/vnd.hp-hpid',
        ),
      ),
      'hpp' => array(
        't' => array(
          0 => 'text/x-c++hdr',
        ),
      ),
      'hps' => array(
        't' => array(
          0 => 'application/vnd.hp-hps',
        ),
      ),
      'hqx' => array(
        't' => array(
          0 => 'application/mac-binhex40',
        ),
      ),
      'hs' => array(
        't' => array(
          0 => 'text/x-haskell',
        ),
      ),
      'hta' => array(
        't' => array(
          0 => 'application/hta',
        ),
      ),
      'htc' => array(
        't' => array(
          0 => 'text/x-component',
        ),
      ),
      'htke' => array(
        't' => array(
          0 => 'application/vnd.kenameaapp',
        ),
      ),
      'htm' => array(
        't' => array(
          0 => 'text/html',
          1 => 'application/xhtml+xml',
        ),
      ),
      'html' => array(
        't' => array(
          0 => 'text/html',
          1 => 'application/xhtml+xml',
        ),
      ),
      'hvd' => array(
        't' => array(
          0 => 'application/vnd.yamaha.hv-dic',
        ),
      ),
      'hvp' => array(
        't' => array(
          0 => 'application/vnd.yamaha.hv-voice',
        ),
      ),
      'hvs' => array(
        't' => array(
          0 => 'application/vnd.yamaha.hv-script',
        ),
      ),
      'hwp' => array(
        't' => array(
          0 => 'application/x-hwp',
        ),
      ),
      'hwt' => array(
        't' => array(
          0 => 'application/x-hwt',
        ),
      ),
      'hxx' => array(
        't' => array(
          0 => 'text/x-c++hdr',
        ),
      ),
      'i2g' => array(
        't' => array(
          0 => 'application/vnd.intergeo',
        ),
      ),
      'ica' => array(
        't' => array(
          0 => 'application/x-ica',
        ),
      ),
      'icb' => array(
        't' => array(
          0 => 'image/x-tga',
        ),
      ),
      'icc' => array(
        't' => array(
          0 => 'application/vnd.iccprofile',
        ),
      ),
      'ice' => array(
        't' => array(
          0 => 'x-conference/x-cooltalk',
        ),
      ),
      'icm' => array(
        't' => array(
          0 => 'application/vnd.iccprofile',
        ),
      ),
      'icns' => array(
        't' => array(
          0 => 'image/x-icns',
        ),
      ),
      'ico' => array(
        't' => array(
          0 => 'image/vnd.microsoft.icon',
        ),
      ),
      'ics' => array(
        't' => array(
          0 => 'text/calendar',
        ),
      ),
      'icz' => array(
        't' => array(
          0 => 'text/calendar',
        ),
      ),
      'idl' => array(
        't' => array(
          0 => 'text/x-idl',
        ),
      ),
      'ief' => array(
        't' => array(
          0 => 'image/ief',
        ),
      ),
      'ifb' => array(
        't' => array(
          0 => 'text/calendar',
        ),
      ),
      'iff' => array(
        't' => array(
          0 => 'image/x-ilbm',
        ),
      ),
      'ifm' => array(
        't' => array(
          0 => 'application/vnd.shana.informed.formdata',
        ),
      ),
      'iges' => array(
        't' => array(
          0 => 'model/iges',
        ),
      ),
      'igl' => array(
        't' => array(
          0 => 'application/vnd.igloader',
        ),
      ),
      'igm' => array(
        't' => array(
          0 => 'application/vnd.insors.igm',
        ),
      ),
      'igs' => array(
        't' => array(
          0 => 'model/iges',
        ),
      ),
      'igx' => array(
        't' => array(
          0 => 'application/vnd.micrografx.igx',
        ),
      ),
      'iif' => array(
        't' => array(
          0 => 'application/vnd.shana.informed.interchange',
        ),
      ),
      'iii' => array(
        't' => array(
          0 => 'application/x-iphone',
        ),
      ),
      'ilbm' => array(
        't' => array(
          0 => 'image/x-ilbm',
        ),
      ),
      'ime' => array(
        't' => array(
          0 => 'text/x-imelody',
        ),
      ),
      'img' => array(
        't' => array(
          0 => 'application/x-raw-disk-image',
        ),
      ),
      'img.xz' => array(
        't' => array(
          0 => 'application/x-raw-disk-image-xz-compressed',
        ),
      ),
      'imp' => array(
        't' => array(
          0 => 'application/vnd.accpac.simply.imp',
        ),
      ),
      'ims' => array(
        't' => array(
          0 => 'application/vnd.ms-ims',
        ),
      ),
      'imy' => array(
        't' => array(
          0 => 'text/x-imelody',
        ),
      ),
      'in' => array(
        't' => array(
          0 => 'text/plain',
        ),
      ),
      'ink' => array(
        't' => array(
          0 => 'application/inkml+xml',
        ),
      ),
      'inkml' => array(
        't' => array(
          0 => 'application/inkml+xml',
        ),
      ),
      'inp' => array(
        't' => array(
          0 => 'chemical/x-gamess-input',
        ),
      ),
      'ins' => array(
        't' => array(
          0 => 'application/x-internet-signup',
          1 => 'text/x-tex',
        ),
      ),
      'install' => array(
        't' => array(
          0 => 'application/x-install-instructions',
        ),
      ),
      'iota' => array(
        't' => array(
          0 => 'application/vnd.astraea-software.iota',
        ),
      ),
      'ipfix' => array(
        't' => array(
          0 => 'application/ipfix',
        ),
      ),
      'ipk' => array(
        't' => array(
          0 => 'application/vnd.shana.informed.package',
        ),
      ),
      'ips' => array(
        't' => array(
          0 => 'application/x-ips-patch',
        ),
      ),
      'iptables' => array(
        't' => array(
          0 => 'text/x-iptables',
        ),
      ),
      'ipynb' => array(
        't' => array(
          0 => 'application/x-ipynb+json',
        ),
      ),
      'irm' => array(
        't' => array(
          0 => 'application/vnd.ibm.rights-management',
        ),
      ),
      'irp' => array(
        't' => array(
          0 => 'application/vnd.irepository.package+xml',
        ),
      ),
      'iso' => array(
        't' => array(
          0 => 'application/x-iso9660-image',
          1 => 'application/x-cd-image',
          2 => 'application/x-sega-cd-rom',
          3 => 'application/x-saturn-rom',
          4 => 'application/x-wii-rom',
          5 => 'application/x-gamecube-rom',
        ),
      ),
      'iso9660' => array(
        't' => array(
          0 => 'application/x-cd-image',
        ),
      ),
      'isp' => array(
        't' => array(
          0 => 'application/x-internet-signup',
        ),
      ),
      'ist' => array(
        't' => array(
          0 => 'chemical/x-isostar',
        ),
      ),
      'istr' => array(
        't' => array(
          0 => 'chemical/x-isostar',
        ),
      ),
      'it' => array(
        't' => array(
          0 => 'audio/x-it',
        ),
      ),
      'it87' => array(
        't' => array(
          0 => 'application/x-it87',
        ),
      ),
      'itp' => array(
        't' => array(
          0 => 'application/vnd.shana.informed.formtemplate',
        ),
      ),
      'ivp' => array(
        't' => array(
          0 => 'application/vnd.immervision-ivp',
        ),
      ),
      'ivu' => array(
        't' => array(
          0 => 'application/vnd.immervision-ivu',
        ),
      ),
      'j2c' => array(
        't' => array(
          0 => 'image/x-jp2-codestream',
        ),
      ),
      'j2k' => array(
        't' => array(
          0 => 'image/x-jp2-codestream',
        ),
      ),
      'jad' => array(
        't' => array(
          0 => 'text/vnd.sun.j2me.app-descriptor',
        ),
      ),
      'jam' => array(
        't' => array(
          0 => 'application/vnd.jam',
        ),
      ),
      'jar' => array(
        't' => array(
          0 => 'application/java-archive',
          1 => 'application/x-java-archive',
        ),
      ),
      'java' => array(
        't' => array(
          0 => 'text/x-java',
          1 => 'text/x-java-source',
        ),
      ),
      'jceks' => array(
        't' => array(
          0 => 'application/x-java-jce-keystore',
        ),
      ),
      'jdx' => array(
        't' => array(
          0 => 'chemical/x-jcamp-dx',
        ),
      ),
      'jisp' => array(
        't' => array(
          0 => 'application/vnd.jisp',
        ),
      ),
      'jks' => array(
        't' => array(
          0 => 'application/x-java-keystore',
        ),
      ),
      'jlt' => array(
        't' => array(
          0 => 'application/vnd.hp-jlyt',
        ),
      ),
      'jmz' => array(
        't' => array(
          0 => 'application/x-jmol',
        ),
      ),
      'jng' => array(
        't' => array(
          0 => 'image/x-jng',
        ),
      ),
      'jnlp' => array(
        't' => array(
          0 => 'application/x-java-jnlp-file',
        ),
      ),
      'joda' => array(
        't' => array(
          0 => 'application/vnd.joost.joda-archive',
        ),
      ),
      'jp2' => array(
        't' => array(
          0 => 'image/jp2',
        ),
      ),
      'jpc' => array(
        't' => array(
          0 => 'image/x-jp2-codestream',
        ),
      ),
      'jpe' => array(
        't' => array(
          0 => 'image/jpeg',
        ),
      ),
      'jpeg' => array(
        't' => array(
          0 => 'image/jpeg',
        ),
      ),
      'jpf' => array(
        't' => array(
          0 => 'image/jpx',
        ),
      ),
      'jpg' => array(
        't' => array(
          0 => 'image/jpeg',
        ),
      ),
      'jpg2' => array(
        't' => array(
          0 => 'image/jp2',
        ),
      ),
      'jpgm' => array(
        't' => array(
          0 => 'video/jpm',
          1 => 'image/jpm',
        ),
      ),
      'jpgv' => array(
        't' => array(
          0 => 'video/jpeg',
        ),
      ),
      'jpm' => array(
        't' => array(
          0 => 'video/jpm',
          1 => 'image/jpm',
        ),
      ),
      'jpr' => array(
        't' => array(
          0 => 'application/x-jbuilder-project',
        ),
      ),
      'jpx' => array(
        't' => array(
          0 => 'application/x-jbuilder-project',
          1 => 'image/jpx',
        ),
      ),
      'jrd' => array(
        't' => array(
          0 => 'application/jrd+json',
        ),
      ),
      'js' => array(
        't' => array(
          0 => 'application/javascript',
        ),
      ),
      'jsm' => array(
        't' => array(
          0 => 'application/javascript',
        ),
      ),
      'json' => array(
        't' => array(
          0 => 'application/json',
        ),
      ),
      'json-patch' => array(
        't' => array(
          0 => 'application/json-patch+json',
        ),
      ),
      'jsonld' => array(
        't' => array(
          0 => 'application/ld+json',
        ),
      ),
      'jsonml' => array(
        't' => array(
          0 => 'application/jsonml+json',
        ),
      ),
      'k25' => array(
        't' => array(
          0 => 'image/x-kodak-k25',
        ),
      ),
      'k7' => array(
        't' => array(
          0 => 'application/x-thomson-cassette',
        ),
      ),
      'kar' => array(
        't' => array(
          0 => 'audio/midi',
        ),
      ),
      'karbon' => array(
        't' => array(
          0 => 'application/vnd.kde.karbon',
          1 => 'application/x-karbon',
        ),
      ),
      'kdc' => array(
        't' => array(
          0 => 'image/x-kodak-kdc',
        ),
      ),
      'kdelnk' => array(
        't' => array(
          0 => 'application/x-desktop',
        ),
      ),
      'kexi' => array(
        't' => array(
          0 => 'application/x-kexiproject-sqlite2',
          1 => 'application/x-kexiproject-sqlite3',
        ),
      ),
      'kexic' => array(
        't' => array(
          0 => 'application/x-kexi-connectiondata',
        ),
      ),
      'kexis' => array(
        't' => array(
          0 => 'application/x-kexiproject-shortcut',
        ),
      ),
      'key' => array(
        't' => array(
          0 => 'application/pgp-keys',
          1 => 'application/x-iwork-keynote-sffkey',
        ),
      ),
      'kfo' => array(
        't' => array(
          0 => 'application/vnd.kde.kformula',
          1 => 'application/x-kformula',
        ),
      ),
      'kfx' => array(
        't' => array(
          0 => 'application/vnd.amazon.mobi8-ebook',
        ),
      ),
      'kia' => array(
        't' => array(
          0 => 'application/vnd.kidspiration',
        ),
      ),
      'kil' => array(
        't' => array(
          0 => 'application/x-killustrator',
        ),
      ),
      'kin' => array(
        't' => array(
          0 => 'chemical/x-kinemage',
        ),
      ),
      'kino' => array(
        't' => array(
          0 => 'application/smil+xml',
        ),
      ),
      'kml' => array(
        't' => array(
          0 => 'application/vnd.google-earth.kml+xml',
        ),
      ),
      'kmz' => array(
        't' => array(
          0 => 'application/vnd.google-earth.kmz',
        ),
      ),
      'kne' => array(
        't' => array(
          0 => 'application/vnd.kinar',
        ),
      ),
      'knp' => array(
        't' => array(
          0 => 'application/vnd.kinar',
        ),
      ),
      'kon' => array(
        't' => array(
          0 => 'application/vnd.kde.kontour',
          1 => 'application/x-kontour',
        ),
      ),
      'kpm' => array(
        't' => array(
          0 => 'application/x-kpovmodeler',
        ),
      ),
      'kpr' => array(
        't' => array(
          0 => 'application/x-kpresenter',
          1 => 'application/vnd.kde.kpresenter',
        ),
      ),
      'kpt' => array(
        't' => array(
          0 => 'application/x-kpresenter',
          1 => 'application/vnd.kde.kpresenter',
        ),
      ),
      'kpxx' => array(
        't' => array(
          0 => 'application/vnd.ds-keypoint',
        ),
      ),
      'kra' => array(
        't' => array(
          0 => 'application/x-krita',
        ),
      ),
      'ks' => array(
        't' => array(
          0 => 'application/x-java-keystore',
        ),
      ),
      'ksp' => array(
        't' => array(
          0 => 'application/x-kspread',
          1 => 'application/vnd.kde.kspread',
        ),
      ),
      'kt' => array(
        't' => array(
          0 => 'text/x-kotlin',
        ),
      ),
      'ktr' => array(
        't' => array(
          0 => 'application/vnd.kahootz',
        ),
      ),
      'ktx' => array(
        't' => array(
          0 => 'image/ktx',
        ),
      ),
      'ktz' => array(
        't' => array(
          0 => 'application/vnd.kahootz',
        ),
      ),
      'kud' => array(
        't' => array(
          0 => 'application/x-kugar',
        ),
      ),
      'kwd' => array(
        't' => array(
          0 => 'application/x-kword',
          1 => 'application/vnd.kde.kword',
        ),
      ),
      'kwt' => array(
        't' => array(
          0 => 'application/x-kword',
          1 => 'application/vnd.kde.kword',
        ),
      ),
      'la' => array(
        't' => array(
          0 => 'application/x-shared-library-la',
        ),
      ),
      'lasxml' => array(
        't' => array(
          0 => 'application/vnd.las.las+xml',
        ),
      ),
      'latex' => array(
        't' => array(
          0 => 'application/x-latex',
          1 => 'text/x-tex',
        ),
      ),
      'lbd' => array(
        't' => array(
          0 => 'application/vnd.llamagraphics.life-balance.desktop',
        ),
      ),
      'lbe' => array(
        't' => array(
          0 => 'application/vnd.llamagraphics.life-balance.exchange+xml',
        ),
      ),
      'lbm' => array(
        't' => array(
          0 => 'image/x-ilbm',
        ),
      ),
      'ldif' => array(
        't' => array(
          0 => 'text/x-ldif',
        ),
      ),
      'les' => array(
        't' => array(
          0 => 'application/vnd.hhe.lesson-player',
        ),
      ),
      'lha' => array(
        't' => array(
          0 => 'application/x-lha',
        ),
      ),
      'lhs' => array(
        't' => array(
          0 => 'text/x-literate-haskell',
        ),
      ),
      'lhz' => array(
        't' => array(
          0 => 'application/x-lhz',
        ),
      ),
      'link66' => array(
        't' => array(
          0 => 'application/vnd.route66.link66+xml',
        ),
      ),
      'lisp' => array(
        't' => array(
          0 => 'text/x-common-lisp',
        ),
      ),
      'list' => array(
        't' => array(
          0 => 'text/plain',
        ),
      ),
      'list3820' => array(
        't' => array(
          0 => 'application/vnd.ibm.modcap',
        ),
      ),
      'listafp' => array(
        't' => array(
          0 => 'application/vnd.ibm.modcap',
        ),
      ),
      'lnk' => array(
        't' => array(
          0 => 'application/x-ms-shortcut',
        ),
      ),
      'lnx' => array(
        't' => array(
          0 => 'application/x-atari-lynx-rom',
        ),
      ),
      'loas' => array(
        't' => array(
          0 => 'audio/usac',
        ),
      ),
      'log' => array(
        't' => array(
          0 => 'text/plain',
          1 => 'text/x-log',
        ),
      ),
      'lostxml' => array(
        't' => array(
          0 => 'application/lost+xml',
        ),
      ),
      'lrf' => array(
        't' => array(
          0 => 'application/octet-stream',
        ),
      ),
      'lrm' => array(
        't' => array(
          0 => 'application/vnd.ms-lrm',
        ),
      ),
      'lrv' => array(
        't' => array(
          0 => 'video/mp4',
        ),
      ),
      'lrz' => array(
        't' => array(
          0 => 'application/x-lrzip',
        ),
      ),
      'lsf' => array(
        't' => array(
          0 => 'video/x-la-asf',
        ),
      ),
      'lsx' => array(
        't' => array(
          0 => 'video/x-la-asf',
        ),
      ),
      'ltf' => array(
        't' => array(
          0 => 'application/vnd.frogans.ltf',
        ),
      ),
      'ltx' => array(
        't' => array(
          0 => 'text/x-tex',
        ),
      ),
      'lua' => array(
        't' => array(
          0 => 'text/x-lua',
        ),
      ),
      'lvp' => array(
        't' => array(
          0 => 'audio/vnd.lucent.voice',
        ),
      ),
      'lwo' => array(
        't' => array(
          0 => 'image/x-lwo',
        ),
      ),
      'lwob' => array(
        't' => array(
          0 => 'image/x-lwo',
        ),
      ),
      'lwp' => array(
        't' => array(
          0 => 'application/vnd.lotus-wordpro',
        ),
      ),
      'lws' => array(
        't' => array(
          0 => 'image/x-lws',
        ),
      ),
      'ly' => array(
        't' => array(
          0 => 'text/x-lilypond',
        ),
      ),
      'lyx' => array(
        't' => array(
          0 => 'application/x-lyx',
        ),
      ),
      'lz' => array(
        't' => array(
          0 => 'application/x-lzip',
        ),
      ),
      'lz4' => array(
        't' => array(
          0 => 'application/x-lz4',
        ),
      ),
      'lzh' => array(
        't' => array(
          0 => 'application/x-lzh',
          1 => 'application/x-lha',
        ),
      ),
      'lzma' => array(
        't' => array(
          0 => 'application/x-lzma',
        ),
      ),
      'lzo' => array(
        't' => array(
          0 => 'application/x-lzop',
        ),
      ),
      'lzx' => array(
        't' => array(
          0 => 'application/x-lzx',
        ),
      ),
      'm' => array(
        't' => array(
          0 => 'text/x-objcsrc',
          1 => 'text/x-matlab',
        ),
      ),
      'm13' => array(
        't' => array(
          0 => 'application/x-msmediaview',
        ),
      ),
      'm14' => array(
        't' => array(
          0 => 'application/x-msmediaview',
        ),
      ),
      'm15' => array(
        't' => array(
          0 => 'audio/x-mod',
        ),
      ),
      'm1u' => array(
        't' => array(
          0 => 'video/vnd.mpegurl',
        ),
      ),
      'm1v' => array(
        't' => array(
          0 => 'video/mpeg',
        ),
      ),
      'm21' => array(
        't' => array(
          0 => 'application/mp21',
        ),
      ),
      'm2a' => array(
        't' => array(
          0 => 'audio/mpeg',
        ),
      ),
      'm2t' => array(
        't' => array(
          0 => 'video/mp2t',
        ),
      ),
      'm2ts' => array(
        't' => array(
          0 => 'video/mp2t',
        ),
      ),
      'm2v' => array(
        't' => array(
          0 => 'video/mpeg',
        ),
      ),
      'm3a' => array(
        't' => array(
          0 => 'audio/mpeg',
        ),
      ),
      'm3u' => array(
        't' => array(
          0 => 'audio/x-mpegurl',
          1 => 'application/vnd.apple.mpegurl',
        ),
      ),
      'm3u8' => array(
        't' => array(
          0 => 'application/vnd.apple.mpegurl',
          1 => 'audio/x-mpegurl',
        ),
      ),
      'm4' => array(
        't' => array(
          0 => 'application/x-m4',
        ),
      ),
      'm4a' => array(
        't' => array(
          0 => 'audio/mpeg',
          1 => 'audio/mp4',
        ),
      ),
      'm4b' => array(
        't' => array(
          0 => 'audio/x-m4b',
        ),
      ),
      'm4r' => array(
        't' => array(
          0 => 'audio/x-m4r',
        ),
      ),
      'm4u' => array(
        't' => array(
          0 => 'video/vnd.mpegurl',
        ),
      ),
      'm4v' => array(
        't' => array(
          0 => 'video/x-m4v',
          1 => 'video/mp4',
        ),
      ),
      'm7' => array(
        't' => array(
          0 => 'application/x-thomson-cartridge-memo7',
        ),
      ),
      'ma' => array(
        't' => array(
          0 => 'application/mathematica',
        ),
      ),
      'mab' => array(
        't' => array(
          0 => 'application/x-markaby',
        ),
      ),
      'mads' => array(
        't' => array(
          0 => 'application/mads+xml',
        ),
      ),
      'mag' => array(
        't' => array(
          0 => 'application/vnd.ecowin.chart',
        ),
      ),
      'mak' => array(
        't' => array(
          0 => 'text/x-makefile',
        ),
      ),
      'maker' => array(
        't' => array(
          0 => 'application/x-maker',
          1 => 'application/vnd.framemaker',
        ),
      ),
      'man' => array(
        't' => array(
          0 => 'application/x-troff-man',
          1 => 'text/troff',
        ),
      ),
      'manifest' => array(
        't' => array(
          0 => 'text/cache-manifest',
        ),
      ),
      'mar' => array(
        't' => array(
          0 => 'application/octet-stream',
        ),
      ),
      'markdown' => array(
        't' => array(
          0 => 'text/markdown',
        ),
      ),
      'mathml' => array(
        't' => array(
          0 => 'application/mathml+xml',
        ),
      ),
      'mb' => array(
        't' => array(
          0 => 'application/mathematica',
        ),
      ),
      'mbk' => array(
        't' => array(
          0 => 'application/vnd.mobius.mbk',
        ),
      ),
      'mbox' => array(
        't' => array(
          0 => 'application/mbox',
        ),
      ),
      'mc1' => array(
        't' => array(
          0 => 'application/vnd.medcalcdata',
        ),
      ),
      'mc2' => array(
        't' => array(
          0 => 'text/vnd.senx.warpscript',
        ),
      ),
      'mcd' => array(
        't' => array(
          0 => 'application/vnd.mcd',
        ),
      ),
      'mcif' => array(
        't' => array(
          0 => 'chemical/x-mmcif',
        ),
      ),
      'mcm' => array(
        't' => array(
          0 => 'chemical/x-macmolecule',
        ),
      ),
      'mcurl' => array(
        't' => array(
          0 => 'text/vnd.curl.mcurl',
        ),
      ),
      'md' => array(
        't' => array(
          0 => 'text/markdown',
        ),
      ),
      'mdb' => array(
        't' => array(
          0 => 'application/msaccess',
          1 => 'application/vnd.ms-access',
        ),
      ),
      'mdi' => array(
        't' => array(
          0 => 'image/vnd.ms-modi',
        ),
      ),
      'mdx' => array(
        't' => array(
          0 => 'application/x-genesis-32x-rom',
        ),
      ),
      'me' => array(
        't' => array(
          0 => 'application/x-troff-me',
          1 => 'text/troff',
          2 => 'text/x-troff-me',
        ),
      ),
      'med' => array(
        't' => array(
          0 => 'audio/x-mod',
        ),
      ),
      'mesh' => array(
        't' => array(
          0 => 'model/mesh',
        ),
      ),
      'meta4' => array(
        't' => array(
          0 => 'application/metalink4+xml',
        ),
      ),
      'metalink' => array(
        't' => array(
          0 => 'application/metalink+xml',
        ),
      ),
      'mets' => array(
        't' => array(
          0 => 'application/mets+xml',
        ),
      ),
      'mfm' => array(
        't' => array(
          0 => 'application/vnd.mfmp',
        ),
      ),
      'mft' => array(
        't' => array(
          0 => 'application/rpki-manifest',
        ),
      ),
      'mgp' => array(
        't' => array(
          0 => 'application/vnd.osgeo.mapguide.package',
          1 => 'application/x-magicpoint',
        ),
      ),
      'mgz' => array(
        't' => array(
          0 => 'application/vnd.proteus.magazine',
        ),
      ),
      'mht' => array(
        't' => array(
          0 => 'application/x-mimearchive',
        ),
      ),
      'mhtml' => array(
        't' => array(
          0 => 'application/x-mimearchive',
        ),
      ),
      'mid' => array(
        't' => array(
          0 => 'audio/midi',
        ),
      ),
      'midi' => array(
        't' => array(
          0 => 'audio/midi',
        ),
      ),
      'mie' => array(
        't' => array(
          0 => 'application/x-mie',
        ),
      ),
      'mif' => array(
        't' => array(
          0 => 'application/x-mif',
          1 => 'application/vnd.mif',
        ),
      ),
      'mime' => array(
        't' => array(
          0 => 'message/rfc822',
        ),
      ),
      'minipsf' => array(
        't' => array(
          0 => 'audio/x-minipsf',
        ),
      ),
      'mj2' => array(
        't' => array(
          0 => 'video/mj2',
        ),
      ),
      'mjp2' => array(
        't' => array(
          0 => 'video/mj2',
        ),
      ),
      'mjpeg' => array(
        't' => array(
          0 => 'video/x-mjpeg',
        ),
      ),
      'mjpg' => array(
        't' => array(
          0 => 'video/x-mjpeg',
        ),
      ),
      'mjs' => array(
        't' => array(
          0 => 'application/javascript',
        ),
      ),
      'mk' => array(
        't' => array(
          0 => 'text/x-makefile',
        ),
      ),
      'mk3d' => array(
        't' => array(
          0 => 'video/x-matroska',
          1 => 'video/x-matroska-3d',
        ),
      ),
      'mka' => array(
        't' => array(
          0 => 'audio/x-matroska',
        ),
      ),
      'mkd' => array(
        't' => array(
          0 => 'text/markdown',
        ),
      ),
      'mks' => array(
        't' => array(
          0 => 'video/x-matroska',
        ),
      ),
      'mkv' => array(
        't' => array(
          0 => 'video/x-matroska',
        ),
      ),
      'ml' => array(
        't' => array(
          0 => 'text/x-ocaml',
        ),
      ),
      'mli' => array(
        't' => array(
          0 => 'text/x-ocaml',
        ),
      ),
      'mlp' => array(
        't' => array(
          0 => 'application/vnd.dolby.mlp',
        ),
      ),
      'mm' => array(
        't' => array(
          0 => 'application/x-freemind',
          1 => 'text/x-troff-mm',
        ),
      ),
      'mmd' => array(
        't' => array(
          0 => 'chemical/x-macromodel-input',
          1 => 'application/vnd.chipnuts.karaoke-mmd',
        ),
      ),
      'mmf' => array(
        't' => array(
          0 => 'application/vnd.smaf',
          1 => 'application/x-smaf',
        ),
      ),
      'mml' => array(
        't' => array(
          0 => 'text/mathml',
          1 => 'application/mathml+xml',
        ),
      ),
      'mmod' => array(
        't' => array(
          0 => 'chemical/x-macromodel-input',
        ),
      ),
      'mmr' => array(
        't' => array(
          0 => 'image/vnd.fujixerox.edmics-mmr',
        ),
      ),
      'mng' => array(
        't' => array(
          0 => 'video/x-mng',
        ),
      ),
      'mny' => array(
        't' => array(
          0 => 'application/x-msmoney',
        ),
      ),
      'mo' => array(
        't' => array(
          0 => 'application/x-gettext-translation',
          1 => 'text/x-modelica',
        ),
      ),
      'mo3' => array(
        't' => array(
          0 => 'audio/x-mo3',
        ),
      ),
      'mobi' => array(
        't' => array(
          0 => 'application/x-mobipocket-ebook',
        ),
      ),
      'moc' => array(
        't' => array(
          0 => 'text/x-moc',
        ),
      ),
      'mod' => array(
        't' => array(
          0 => 'audio/x-mod',
        ),
      ),
      'mods' => array(
        't' => array(
          0 => 'application/mods+xml',
        ),
      ),
      'mof' => array(
        't' => array(
          0 => 'text/x-mof',
        ),
      ),
      'mol' => array(
        't' => array(
          0 => 'chemical/x-mdl-molfile',
        ),
      ),
      'mol2' => array(
        't' => array(
          0 => 'chemical/x-mol2',
        ),
      ),
      'moo' => array(
        't' => array(
          0 => 'chemical/x-mopac-out',
        ),
      ),
      'moov' => array(
        't' => array(
          0 => 'video/quicktime',
        ),
      ),
      'mop' => array(
        't' => array(
          0 => 'chemical/x-mopac-input',
        ),
      ),
      'mopcrt' => array(
        't' => array(
          0 => 'chemical/x-mopac-input',
        ),
      ),
      'mount' => array(
        't' => array(
          0 => 'text/x-systemd-unit',
        ),
      ),
      'mov' => array(
        't' => array(
          0 => 'video/quicktime',
        ),
      ),
      'movie' => array(
        't' => array(
          0 => 'video/x-sgi-movie',
        ),
      ),
      'mp+' => array(
        't' => array(
          0 => 'audio/x-musepack',
        ),
      ),
      'mp2' => array(
        't' => array(
          0 => 'audio/mpeg',
          1 => 'audio/mp2',
          2 => 'video/mpeg',
        ),
      ),
      'mp21' => array(
        't' => array(
          0 => 'application/mp21',
        ),
      ),
      'mp2a' => array(
        't' => array(
          0 => 'audio/mpeg',
        ),
      ),
      'mp3' => array(
        't' => array(
          0 => 'audio/mpeg',
        ),
      ),
      'mp4' => array(
        't' => array(
          0 => 'video/mp4',
        ),
      ),
      'mp4a' => array(
        't' => array(
          0 => 'audio/mp4',
        ),
      ),
      'mp4s' => array(
        't' => array(
          0 => 'application/mp4',
        ),
      ),
      'mp4v' => array(
        't' => array(
          0 => 'video/mp4',
        ),
      ),
      'mpc' => array(
        't' => array(
          0 => 'chemical/x-mopac-input',
          1 => 'application/vnd.mophun.certificate',
          2 => 'audio/x-musepack',
        ),
      ),
      'mpe' => array(
        't' => array(
          0 => 'video/mpeg',
        ),
      ),
      'mpeg' => array(
        't' => array(
          0 => 'video/mpeg',
        ),
      ),
      'mpega' => array(
        't' => array(
          0 => 'audio/mpeg',
        ),
      ),
      'mpg' => array(
        't' => array(
          0 => 'video/mpeg',
        ),
      ),
      'mpg4' => array(
        't' => array(
          0 => 'video/mp4',
        ),
      ),
      'mpga' => array(
        't' => array(
          0 => 'audio/mpeg',
        ),
      ),
      'mpkg' => array(
        't' => array(
          0 => 'application/vnd.apple.installer+xml',
        ),
      ),
      'mpl' => array(
        't' => array(
          0 => 'video/mp2t',
        ),
      ),
      'mpls' => array(
        't' => array(
          0 => 'video/mp2t',
        ),
      ),
      'mpm' => array(
        't' => array(
          0 => 'application/vnd.blueice.multipass',
        ),
      ),
      'mpn' => array(
        't' => array(
          0 => 'application/vnd.mophun.application',
        ),
      ),
      'mpp' => array(
        't' => array(
          0 => 'application/vnd.ms-project',
          1 => 'audio/x-musepack',
        ),
      ),
      'mpt' => array(
        't' => array(
          0 => 'application/vnd.ms-project',
        ),
      ),
      'mpy' => array(
        't' => array(
          0 => 'application/vnd.ibm.minipay',
        ),
      ),
      'mqy' => array(
        't' => array(
          0 => 'application/vnd.mobius.mqy',
        ),
      ),
      'mrc' => array(
        't' => array(
          0 => 'application/marc',
        ),
      ),
      'mrcx' => array(
        't' => array(
          0 => 'application/marcxml+xml',
        ),
      ),
      'mrl' => array(
        't' => array(
          0 => 'text/x-mrml',
        ),
      ),
      'mrml' => array(
        't' => array(
          0 => 'text/x-mrml',
        ),
      ),
      'mrw' => array(
        't' => array(
          0 => 'image/x-minolta-mrw',
        ),
      ),
      'ms' => array(
        't' => array(
          0 => 'application/x-troff-ms',
          1 => 'text/troff',
          2 => 'text/x-troff-ms',
        ),
      ),
      'mscml' => array(
        't' => array(
          0 => 'application/mediaservercontrol+xml',
        ),
      ),
      'mseed' => array(
        't' => array(
          0 => 'application/vnd.fdsn.mseed',
        ),
      ),
      'mseq' => array(
        't' => array(
          0 => 'application/vnd.mseq',
        ),
      ),
      'msf' => array(
        't' => array(
          0 => 'application/vnd.epson.msf',
        ),
      ),
      'msh' => array(
        't' => array(
          0 => 'model/mesh',
        ),
      ),
      'msi' => array(
        't' => array(
          0 => 'application/x-msi',
          1 => 'application/x-msdownload',
        ),
      ),
      'msl' => array(
        't' => array(
          0 => 'application/vnd.mobius.msl',
        ),
      ),
      'msod' => array(
        't' => array(
          0 => 'image/x-msod',
        ),
      ),
      'msty' => array(
        't' => array(
          0 => 'application/vnd.muvee.style',
        ),
      ),
      'msx' => array(
        't' => array(
          0 => 'application/x-msx-rom',
        ),
      ),
      'mtm' => array(
        't' => array(
          0 => 'audio/x-mod',
        ),
      ),
      'mts' => array(
        't' => array(
          0 => 'model/vnd.mts',
          1 => 'video/mp2t',
        ),
      ),
      'mup' => array(
        't' => array(
          0 => 'text/x-mup',
        ),
      ),
      'mus' => array(
        't' => array(
          0 => 'application/vnd.musician',
        ),
      ),
      'musicxml' => array(
        't' => array(
          0 => 'application/vnd.recordare.musicxml+xml',
        ),
      ),
      'mvb' => array(
        't' => array(
          0 => 'chemical/x-mopac-vib',
          1 => 'application/x-msmediaview',
        ),
      ),
      'mwf' => array(
        't' => array(
          0 => 'application/vnd.mfer',
        ),
      ),
      'mxf' => array(
        't' => array(
          0 => 'application/mxf',
        ),
      ),
      'mxl' => array(
        't' => array(
          0 => 'application/vnd.recordare.musicxml',
        ),
      ),
      'mxml' => array(
        't' => array(
          0 => 'application/xv+xml',
        ),
      ),
      'mxs' => array(
        't' => array(
          0 => 'application/vnd.triscape.mxs',
        ),
      ),
      'mxu' => array(
        't' => array(
          0 => 'video/vnd.mpegurl',
        ),
      ),
      'n-gage' => array(
        't' => array(
          0 => 'application/vnd.nokia.n-gage.symbian.install',
        ),
      ),
      'n3' => array(
        't' => array(
          0 => 'text/n3',
        ),
      ),
      'n64' => array(
        't' => array(
          0 => 'application/x-n64-rom',
        ),
      ),
      'nb' => array(
        't' => array(
          0 => 'application/mathematica',
        ),
      ),
      'nbp' => array(
        't' => array(
          0 => 'application/vnd.wolfram.player',
        ),
      ),
      'nc' => array(
        't' => array(
          0 => 'application/x-netcdf',
        ),
      ),
      'ncx' => array(
        't' => array(
          0 => 'application/x-dtbncx+xml',
        ),
      ),
      'nds' => array(
        't' => array(
          0 => 'application/x-nintendo-ds-rom',
        ),
      ),
      'nef' => array(
        't' => array(
          0 => 'image/x-nikon-nef',
        ),
      ),
      'nes' => array(
        't' => array(
          0 => 'application/x-nes-rom',
        ),
      ),
      'nez' => array(
        't' => array(
          0 => 'application/x-nes-rom',
        ),
      ),
      'nfo' => array(
        't' => array(
          0 => 'text/x-nfo',
        ),
      ),
      'ngc' => array(
        't' => array(
          0 => 'application/x-neo-geo-pocket-color-rom',
        ),
      ),
      'ngdat' => array(
        't' => array(
          0 => 'application/vnd.nokia.n-gage.data',
        ),
      ),
      'ngp' => array(
        't' => array(
          0 => 'application/x-neo-geo-pocket-rom',
        ),
      ),
      'nitf' => array(
        't' => array(
          0 => 'application/vnd.nitf',
        ),
      ),
      'nlu' => array(
        't' => array(
          0 => 'application/vnd.neurolanguage.nlu',
        ),
      ),
      'nml' => array(
        't' => array(
          0 => 'application/vnd.enliven',
        ),
      ),
      'nnd' => array(
        't' => array(
          0 => 'application/vnd.noblenet-directory',
        ),
      ),
      'nns' => array(
        't' => array(
          0 => 'application/vnd.noblenet-sealer',
        ),
      ),
      'nnw' => array(
        't' => array(
          0 => 'application/vnd.noblenet-web',
        ),
      ),
      'not' => array(
        't' => array(
          0 => 'text/x-mup',
        ),
      ),
      'npx' => array(
        't' => array(
          0 => 'image/vnd.net-fpx',
        ),
      ),
      'nsc' => array(
        't' => array(
          0 => 'application/x-conference',
          1 => 'application/x-netshow-channel',
        ),
      ),
      'nsf' => array(
        't' => array(
          0 => 'application/vnd.lotus-notes',
        ),
      ),
      'nsv' => array(
        't' => array(
          0 => 'video/x-nsv',
        ),
      ),
      'ntf' => array(
        't' => array(
          0 => 'application/vnd.nitf',
        ),
      ),
      'nwc' => array(
        't' => array(
          0 => 'application/x-nwc',
        ),
      ),
      'nzb' => array(
        't' => array(
          0 => 'application/x-nzb',
        ),
      ),
      'o' => array(
        't' => array(
          0 => 'application/x-object',
        ),
      ),
      'oa2' => array(
        't' => array(
          0 => 'application/vnd.fujitsu.oasys2',
        ),
      ),
      'oa3' => array(
        't' => array(
          0 => 'application/vnd.fujitsu.oasys3',
        ),
      ),
      'oas' => array(
        't' => array(
          0 => 'application/vnd.fujitsu.oasys',
        ),
      ),
      'obd' => array(
        't' => array(
          0 => 'application/x-msbinder',
        ),
      ),
      'obj' => array(
        't' => array(
          0 => 'application/x-tgif',
        ),
      ),
      'ocl' => array(
        't' => array(
          0 => 'text/x-ocl',
        ),
      ),
      'oda' => array(
        't' => array(
          0 => 'application/oda',
        ),
      ),
      'odb' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.database',
        ),
      ),
      'odc' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.chart',
        ),
      ),
      'odf' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.formula',
        ),
      ),
      'odft' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.formula-template',
        ),
      ),
      'odg' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.graphics',
        ),
      ),
      'odi' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.image',
        ),
      ),
      'odm' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.text-master',
        ),
      ),
      'odp' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.presentation',
        ),
      ),
      'ods' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.spreadsheet',
        ),
      ),
      'odt' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.text',
        ),
      ),
      'oga' => array(
        't' => array(
          0 => 'audio/ogg',
          1 => 'audio/x-vorbis+ogg',
          2 => 'audio/x-flac+ogg',
          3 => 'audio/x-speex+ogg',
        ),
      ),
      'ogg' => array(
        't' => array(
          0 => 'audio/ogg',
          1 => 'video/ogg',
          2 => 'audio/x-vorbis+ogg',
          3 => 'audio/x-flac+ogg',
          4 => 'audio/x-speex+ogg',
          5 => 'video/x-theora+ogg',
        ),
      ),
      'ogm' => array(
        't' => array(
          0 => 'video/x-ogm+ogg',
        ),
      ),
      'ogv' => array(
        't' => array(
          0 => 'video/ogg',
        ),
      ),
      'ogx' => array(
        't' => array(
          0 => 'application/ogg',
        ),
      ),
      'old' => array(
        't' => array(
          0 => 'application/x-trash',
        ),
      ),
      'oleo' => array(
        't' => array(
          0 => 'application/x-oleo',
        ),
      ),
      'omdoc' => array(
        't' => array(
          0 => 'application/omdoc+xml',
        ),
      ),
      'onepkg' => array(
        't' => array(
          0 => 'application/onenote',
        ),
      ),
      'onetmp' => array(
        't' => array(
          0 => 'application/onenote',
        ),
      ),
      'onetoc' => array(
        't' => array(
          0 => 'application/onenote',
        ),
      ),
      'onetoc2' => array(
        't' => array(
          0 => 'application/onenote',
        ),
      ),
      'ooc' => array(
        't' => array(
          0 => 'text/x-ooc',
        ),
      ),
      'opf' => array(
        't' => array(
          0 => 'application/oebps-package+xml',
        ),
      ),
      'opml' => array(
        't' => array(
          0 => 'text/x-opml+xml',
        ),
      ),
      'oprc' => array(
        't' => array(
          0 => 'application/vnd.palm',
        ),
      ),
      'opus' => array(
        't' => array(
          0 => 'audio/ogg',
          1 => 'audio/x-opus+ogg',
        ),
      ),
      'ora' => array(
        't' => array(
          0 => 'image/openraster',
        ),
      ),
      'orf' => array(
        't' => array(
          0 => 'image/x-olympus-orf',
        ),
      ),
      'org' => array(
        't' => array(
          0 => 'application/vnd.lotus-organizer',
        ),
      ),
      'osf' => array(
        't' => array(
          0 => 'application/vnd.yamaha.openscoreformat',
        ),
      ),
      'osfpvg' => array(
        't' => array(
          0 => 'application/vnd.yamaha.openscoreformat.osfpvg+xml',
        ),
      ),
      'otc' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.chart-template',
        ),
      ),
      'otf' => array(
        't' => array(
          0 => 'font/otf',
          1 => 'application/vnd.oasis.opendocument.formula-template',
        ),
      ),
      'otg' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.graphics-template',
        ),
      ),
      'oth' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.text-web',
        ),
      ),
      'oti' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.image-template',
        ),
      ),
      'otp' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.presentation-template',
        ),
      ),
      'ots' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.spreadsheet-template',
        ),
      ),
      'ott' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.text-template',
        ),
      ),
      'owl' => array(
        't' => array(
          0 => 'application/rdf+xml',
        ),
      ),
      'owx' => array(
        't' => array(
          0 => 'application/owl+xml',
        ),
      ),
      'oxps' => array(
        't' => array(
          0 => 'application/oxps',
        ),
      ),
      'oxt' => array(
        't' => array(
          0 => 'application/vnd.openofficeorg.extension',
        ),
      ),
      'oza' => array(
        't' => array(
          0 => 'application/x-oz-application',
        ),
      ),
      'p' => array(
        't' => array(
          0 => 'text/x-pascal',
        ),
      ),
      'p10' => array(
        't' => array(
          0 => 'application/pkcs10',
        ),
      ),
      'p12' => array(
        't' => array(
          0 => 'application/pkcs12',
        ),
      ),
      'p65' => array(
        't' => array(
          0 => 'application/x-pagemaker',
        ),
      ),
      'p7b' => array(
        't' => array(
          0 => 'application/x-pkcs7-certificates',
        ),
      ),
      'p7c' => array(
        't' => array(
          0 => 'application/pkcs7-mime',
        ),
      ),
      'p7m' => array(
        't' => array(
          0 => 'application/pkcs7-mime',
        ),
      ),
      'p7r' => array(
        't' => array(
          0 => 'application/x-pkcs7-certreqresp',
        ),
      ),
      'p7s' => array(
        't' => array(
          0 => 'application/pkcs7-signature',
        ),
      ),
      'p8' => array(
        't' => array(
          0 => 'application/pkcs8',
        ),
      ),
      'p8e' => array(
        't' => array(
          0 => 'application/pkcs8-encrypted',
        ),
      ),
      'pac' => array(
        't' => array(
          0 => 'application/x-ns-proxy-autoconfig',
        ),
      ),
      'pack' => array(
        't' => array(
          0 => 'application/x-java-pack200',
        ),
      ),
      'pak' => array(
        't' => array(
          0 => 'application/x-pak',
        ),
      ),
      'par2' => array(
        't' => array(
          0 => 'application/x-par2',
        ),
      ),
      'part' => array(
        't' => array(
          0 => 'application/x-partial-download',
        ),
      ),
      'pas' => array(
        't' => array(
          0 => 'text/x-pascal',
        ),
      ),
      'pat' => array(
        't' => array(
          0 => 'image/x-coreldrawpattern',
          1 => 'image/x-gimp-pat',
        ),
      ),
      'patch' => array(
        't' => array(
          0 => 'text/x-diff',
          1 => 'text/x-patch',
        ),
      ),
      'path' => array(
        't' => array(
          0 => 'text/x-systemd-unit',
        ),
      ),
      'paw' => array(
        't' => array(
          0 => 'application/vnd.pawaafile',
        ),
      ),
      'pbd' => array(
        't' => array(
          0 => 'application/vnd.powerbuilder6',
        ),
      ),
      'pbm' => array(
        't' => array(
          0 => 'image/x-portable-bitmap',
        ),
      ),
      'pcap' => array(
        't' => array(
          0 => 'application/cap',
          1 => 'application/vnd.tcpdump.pcap',
        ),
      ),
      'pcd' => array(
        't' => array(
          0 => 'image/x-photo-cd',
        ),
      ),
      'pce' => array(
        't' => array(
          0 => 'application/x-pc-engine-rom',
        ),
      ),
      'pcf' => array(
        't' => array(
          0 => 'application/x-font',
          1 => 'application/x-font-pcf',
          2 => 'application/x-cisco-vpn-settings',
          3 => 'application/x-font-ghostscript',
        ),
      ),
      'pcf.gz' => array(
        't' => array(
          0 => 'application/x-font-pcf',
        ),
      ),
      'pcf.z' => array(
        't' => array(
          0 => 'application/x-font',
          1 => 'application/x-font-pcf',
          2 => 'application/x-font-ghostscript',
        ),
      ),
      'pcl' => array(
        't' => array(
          0 => 'application/vnd.hp-pcl',
        ),
      ),
      'pclxl' => array(
        't' => array(
          0 => 'application/vnd.hp-pclxl',
        ),
      ),
      'pct' => array(
        't' => array(
          0 => 'image/x-pict',
        ),
      ),
      'pcurl' => array(
        't' => array(
          0 => 'application/vnd.curl.pcurl',
        ),
      ),
      'pcx' => array(
        't' => array(
          0 => 'image/pcx',
          1 => 'image/vnd.zbrush.pcx',
        ),
      ),
      'pdb' => array(
        't' => array(
          0 => 'chemical/x-pdb',
          1 => 'application/vnd.palm',
          2 => 'application/x-aportisdoc',
        ),
      ),
      'pdc' => array(
        't' => array(
          0 => 'application/x-aportisdoc',
        ),
      ),
      'pdf' => array(
        't' => array(
          0 => 'application/pdf',
        ),
      ),
      'pdf.bz2' => array(
        't' => array(
          0 => 'application/x-bzpdf',
        ),
      ),
      'pdf.gz' => array(
        't' => array(
          0 => 'application/x-gzpdf',
        ),
      ),
      'pdf.lz' => array(
        't' => array(
          0 => 'application/x-lzpdf',
        ),
      ),
      'pdf.xz' => array(
        't' => array(
          0 => 'application/x-xzpdf',
        ),
      ),
      'pef' => array(
        't' => array(
          0 => 'image/x-pentax-pef',
        ),
      ),
      'pem' => array(
        't' => array(
          0 => 'application/x-x509-ca-cert',
        ),
      ),
      'perl' => array(
        't' => array(
          0 => 'application/x-perl',
        ),
      ),
      'pfa' => array(
        't' => array(
          0 => 'application/x-font',
          1 => 'application/x-font-type1',
          2 => 'application/x-font-ghostscript',
        ),
      ),
      'pfb' => array(
        't' => array(
          0 => 'application/x-font',
          1 => 'application/x-font-type1',
          2 => 'application/x-font-ghostscript',
        ),
      ),
      'pfm' => array(
        't' => array(
          0 => 'application/x-font-type1',
        ),
      ),
      'pfr' => array(
        't' => array(
          0 => 'application/font-tdpfr',
        ),
      ),
      'pfx' => array(
        't' => array(
          0 => 'application/pkcs12',
        ),
      ),
      'pgm' => array(
        't' => array(
          0 => 'image/x-portable-graymap',
        ),
      ),
      'pgn' => array(
        't' => array(
          0 => 'application/x-chess-pgn',
          1 => 'application/vnd.chess-pgn',
        ),
      ),
      'pgp' => array(
        't' => array(
          0 => 'application/pgp-signature',
          1 => 'application/pgp-encrypted',
          2 => 'application/pgp-keys',
        ),
      ),
      'php' => array(
        't' => array(
          0 => 'application/x-httpd-php',
          1 => 'application/x-php',
        ),
      ),
      'php3' => array(
        't' => array(
          0 => 'application/x-httpd-php3',
          1 => 'application/x-php',
          2 => 'application/x-httpd-php',
        ),
      ),
      'php3p' => array(
        't' => array(
          0 => 'application/x-httpd-php3-preprocessed',
        ),
      ),
      'php4' => array(
        't' => array(
          0 => 'application/x-httpd-php4',
          1 => 'application/x-php',
          2 => 'application/x-httpd-php',
        ),
      ),
      'php5' => array(
        't' => array(
          0 => 'application/x-php',
        ),
      ),
      'phps' => array(
        't' => array(
          0 => 'application/x-httpd-php-source',
          1 => 'application/x-php',
          2 => 'application/x-httpd-php',
        ),
      ),
      'pht' => array(
        't' => array(
          0 => 'application/x-httpd-php',
        ),
      ),
      'phtml' => array(
        't' => array(
          0 => 'application/x-httpd-php',
        ),
      ),
      'pic' => array(
        't' => array(
          0 => 'image/x-pict',
        ),
      ),
      'pict' => array(
        't' => array(
          0 => 'image/x-pict',
        ),
      ),
      'pict1' => array(
        't' => array(
          0 => 'image/x-pict',
        ),
      ),
      'pict2' => array(
        't' => array(
          0 => 'image/x-pict',
        ),
      ),
      'pk' => array(
        't' => array(
          0 => 'application/x-tex-pk',
        ),
      ),
      'pkg' => array(
        't' => array(
          0 => 'application/octet-stream',
          1 => 'application/x-xar',
        ),
      ),
      'pki' => array(
        't' => array(
          0 => 'application/pkixcmp',
        ),
      ),
      'pkipath' => array(
        't' => array(
          0 => 'application/pkix-pkipath',
        ),
      ),
      'pkr' => array(
        't' => array(
          0 => 'application/pgp-keys',
        ),
      ),
      'pl' => array(
        't' => array(
          0 => 'text/x-perl',
          1 => 'application/x-perl',
        ),
      ),
      'pla' => array(
        't' => array(
          0 => 'audio/x-iriver-pla',
        ),
      ),
      'plb' => array(
        't' => array(
          0 => 'application/vnd.3gpp.pic-bw-large',
        ),
      ),
      'plc' => array(
        't' => array(
          0 => 'application/vnd.mobius.plc',
        ),
      ),
      'plf' => array(
        't' => array(
          0 => 'application/vnd.pocketlearn',
        ),
      ),
      'pln' => array(
        't' => array(
          0 => 'application/x-planperfect',
        ),
      ),
      'pls' => array(
        't' => array(
          0 => 'audio/x-scpls',
          1 => 'application/pls+xml',
        ),
      ),
      'pm' => array(
        't' => array(
          0 => 'text/x-perl',
          1 => 'application/x-perl',
          2 => 'application/x-pagemaker',
        ),
      ),
      'pm6' => array(
        't' => array(
          0 => 'application/x-pagemaker',
        ),
      ),
      'pmd' => array(
        't' => array(
          0 => 'application/x-pagemaker',
        ),
      ),
      'pml' => array(
        't' => array(
          0 => 'application/vnd.ctc-posml',
        ),
      ),
      'png' => array(
        't' => array(
          0 => 'image/png',
        ),
      ),
      'pnm' => array(
        't' => array(
          0 => 'image/x-portable-anymap',
        ),
      ),
      'pntg' => array(
        't' => array(
          0 => 'image/x-macpaint',
        ),
      ),
      'po' => array(
        't' => array(
          0 => 'text/x-gettext-translation',
        ),
      ),
      'pod' => array(
        't' => array(
          0 => 'application/x-perl',
        ),
      ),
      'por' => array(
        't' => array(
          0 => 'application/x-spss-por',
        ),
      ),
      'portpkg' => array(
        't' => array(
          0 => 'application/vnd.macports.portpkg',
        ),
      ),
      'pot' => array(
        't' => array(
          0 => 'text/plain',
          1 => 'application/vnd.ms-powerpoint',
          2 => 'text/x-gettext-translation-template',
        ),
      ),
      'potm' => array(
        't' => array(
          0 => 'application/vnd.ms-powerpoint.template.macroenabled.12',
        ),
      ),
      'potx' => array(
        't' => array(
          0 => 'application/vnd.openxmlformats-officedocument.presentationml.template',
        ),
      ),
      'ppam' => array(
        't' => array(
          0 => 'application/vnd.ms-powerpoint.addin.macroenabled.12',
        ),
      ),
      'ppd' => array(
        't' => array(
          0 => 'application/vnd.cups-ppd',
        ),
      ),
      'ppm' => array(
        't' => array(
          0 => 'image/x-portable-pixmap',
        ),
      ),
      'pps' => array(
        't' => array(
          0 => 'application/vnd.ms-powerpoint',
        ),
      ),
      'ppsm' => array(
        't' => array(
          0 => 'application/vnd.ms-powerpoint.slideshow.macroenabled.12',
        ),
      ),
      'ppsx' => array(
        't' => array(
          0 => 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',
        ),
      ),
      'ppt' => array(
        't' => array(
          0 => 'application/vnd.ms-powerpoint',
        ),
      ),
      'pptm' => array(
        't' => array(
          0 => 'application/vnd.ms-powerpoint.presentation.macroenabled.12',
        ),
      ),
      'pptx' => array(
        't' => array(
          0 => 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
        ),
      ),
      'ppz' => array(
        't' => array(
          0 => 'application/vnd.ms-powerpoint',
        ),
      ),
      'pqa' => array(
        't' => array(
          0 => 'application/vnd.palm',
        ),
      ),
      'prc' => array(
        't' => array(
          0 => 'application/x-mobipocket-ebook',
          1 => 'application/vnd.palm',
        ),
      ),
      'pre' => array(
        't' => array(
          0 => 'application/vnd.lotus-freelance',
        ),
      ),
      'prf' => array(
        't' => array(
          0 => 'application/pics-rules',
        ),
      ),
      'prt' => array(
        't' => array(
          0 => 'chemical/x-ncbi-asn1-ascii',
        ),
      ),
      'ps' => array(
        't' => array(
          0 => 'application/postscript',
        ),
      ),
      'ps.bz2' => array(
        't' => array(
          0 => 'application/x-bzpostscript',
        ),
      ),
      'ps.gz' => array(
        't' => array(
          0 => 'application/x-gzpostscript',
        ),
      ),
      'psb' => array(
        't' => array(
          0 => 'application/vnd.3gpp.pic-bw-small',
        ),
      ),
      'psd' => array(
        't' => array(
          0 => 'image/x-photoshop',
          1 => 'image/vnd.adobe.photoshop',
        ),
      ),
      'psf' => array(
        't' => array(
          0 => 'application/x-font-linux-psf',
          1 => 'audio/x-psf',
        ),
      ),
      'psf.gz' => array(
        't' => array(
          0 => 'application/x-gz-font-linux-psf',
        ),
      ),
      'psflib' => array(
        't' => array(
          0 => 'audio/x-psflib',
        ),
      ),
      'psid' => array(
        't' => array(
          0 => 'audio/prs.sid',
        ),
      ),
      'pskcxml' => array(
        't' => array(
          0 => 'application/pskc+xml',
        ),
      ),
      'psw' => array(
        't' => array(
          0 => 'application/x-pocket-word',
        ),
      ),
      'ptid' => array(
        't' => array(
          0 => 'application/vnd.pvi.ptid1',
        ),
      ),
      'pub' => array(
        't' => array(
          0 => 'application/x-mspublisher',
          1 => 'application/vnd.ms-publisher',
        ),
      ),
      'pvb' => array(
        't' => array(
          0 => 'application/vnd.3gpp.pic-bw-var',
        ),
      ),
      'pw' => array(
        't' => array(
          0 => 'application/x-pw',
        ),
      ),
      'pwn' => array(
        't' => array(
          0 => 'application/vnd.3m.post-it-notes',
        ),
      ),
      'py' => array(
        't' => array(
          0 => 'text/x-python',
          1 => 'text/x-python3',
        ),
      ),
      'py3' => array(
        't' => array(
          0 => 'text/x-python3',
        ),
      ),
      'py3x' => array(
        't' => array(
          0 => 'text/x-python3',
        ),
      ),
      'pya' => array(
        't' => array(
          0 => 'audio/vnd.ms-playready.media.pya',
        ),
      ),
      'pyc' => array(
        't' => array(
          0 => 'application/x-python-code',
          1 => 'application/x-python-bytecode',
        ),
      ),
      'pyo' => array(
        't' => array(
          0 => 'application/x-python-code',
          1 => 'application/x-python-bytecode',
        ),
      ),
      'pys' => array(
        't' => array(
          0 => 'application/x-pyspread-bz-spreadsheet',
        ),
      ),
      'pysu' => array(
        't' => array(
          0 => 'application/x-pyspread-spreadsheet',
        ),
      ),
      'pyv' => array(
        't' => array(
          0 => 'video/vnd.ms-playready.media.pyv',
        ),
      ),
      'pyx' => array(
        't' => array(
          0 => 'text/x-python',
        ),
      ),
      'qam' => array(
        't' => array(
          0 => 'application/vnd.epson.quickanime',
        ),
      ),
      'qbo' => array(
        't' => array(
          0 => 'application/vnd.intu.qbo',
        ),
      ),
      'qcow' => array(
        't' => array(
          0 => 'application/x-qemu-disk',
        ),
      ),
      'qcow2' => array(
        't' => array(
          0 => 'application/x-qemu-disk',
        ),
      ),
      'qd' => array(
        't' => array(
          0 => 'application/x-raw-floppy-disk-image',
        ),
      ),
      'qfx' => array(
        't' => array(
          0 => 'application/vnd.intu.qfx',
        ),
      ),
      'qif' => array(
        't' => array(
          0 => 'application/x-qw',
          1 => 'image/x-quicktime',
        ),
      ),
      'qml' => array(
        't' => array(
          0 => 'text/x-qml',
        ),
      ),
      'qmlproject' => array(
        't' => array(
          0 => 'text/x-qml',
        ),
      ),
      'qmltypes' => array(
        't' => array(
          0 => 'text/x-qml',
        ),
      ),
      'qp' => array(
        't' => array(
          0 => 'application/x-qpress',
        ),
      ),
      'qps' => array(
        't' => array(
          0 => 'application/vnd.publishare-delta-tree',
        ),
      ),
      'qt' => array(
        't' => array(
          0 => 'video/quicktime',
        ),
      ),
      'qti' => array(
        't' => array(
          0 => 'application/x-qtiplot',
        ),
      ),
      'qti.gz' => array(
        't' => array(
          0 => 'application/x-qtiplot',
        ),
      ),
      'qtif' => array(
        't' => array(
          0 => 'image/x-quicktime',
        ),
      ),
      'qtl' => array(
        't' => array(
          0 => 'application/x-quicktimeplayer',
          1 => 'application/x-quicktime-media-link',
        ),
      ),
      'qtvr' => array(
        't' => array(
          0 => 'video/quicktime',
        ),
      ),
      'qwd' => array(
        't' => array(
          0 => 'application/vnd.quark.quarkxpress',
        ),
      ),
      'qwt' => array(
        't' => array(
          0 => 'application/vnd.quark.quarkxpress',
        ),
      ),
      'qxb' => array(
        't' => array(
          0 => 'application/vnd.quark.quarkxpress',
        ),
      ),
      'qxd' => array(
        't' => array(
          0 => 'application/vnd.quark.quarkxpress',
        ),
      ),
      'qxl' => array(
        't' => array(
          0 => 'application/vnd.quark.quarkxpress',
        ),
      ),
      'qxt' => array(
        't' => array(
          0 => 'application/vnd.quark.quarkxpress',
        ),
      ),
      'ra' => array(
        't' => array(
          0 => 'audio/x-realaudio',
          1 => 'audio/vnd.rn-realaudio',
        ),
      ),
      'raf' => array(
        't' => array(
          0 => 'image/x-fuji-raf',
        ),
      ),
      'ram' => array(
        't' => array(
          0 => 'audio/x-pn-realaudio',
          1 => 'application/ram',
          2 => 'audio/vnd.rn-realaudio',
        ),
      ),
      'raml' => array(
        't' => array(
          0 => 'application/raml+yaml',
        ),
      ),
      'rar' => array(
        't' => array(
          0 => 'application/rar',
          1 => 'application/vnd.rar',
        ),
      ),
      'ras' => array(
        't' => array(
          0 => 'image/x-cmu-raster',
        ),
      ),
      'raw' => array(
        't' => array(
          0 => 'image/x-panasonic-rw',
        ),
      ),
      'raw-disk-image' => array(
        't' => array(
          0 => 'application/x-raw-disk-image',
        ),
      ),
      'raw-disk-image.xz' => array(
        't' => array(
          0 => 'application/x-raw-disk-image-xz-compressed',
        ),
      ),
      'rax' => array(
        't' => array(
          0 => 'audio/vnd.rn-realaudio',
        ),
      ),
      'rb' => array(
        't' => array(
          0 => 'application/x-ruby',
        ),
      ),
      'rcprofile' => array(
        't' => array(
          0 => 'application/vnd.ipunplugged.rcprofile',
        ),
      ),
      'rd' => array(
        't' => array(
          0 => 'chemical/x-mdl-rdfile',
        ),
      ),
      'rdf' => array(
        't' => array(
          0 => 'application/rdf+xml',
        ),
      ),
      'rdfs' => array(
        't' => array(
          0 => 'application/rdf+xml',
        ),
      ),
      'rdz' => array(
        't' => array(
          0 => 'application/vnd.data-vision.rdz',
        ),
      ),
      'reg' => array(
        't' => array(
          0 => 'text/x-ms-regedit',
        ),
      ),
      'rej' => array(
        't' => array(
          0 => 'text/x-reject',
        ),
      ),
      'rep' => array(
        't' => array(
          0 => 'application/vnd.businessobjects',
        ),
      ),
      'res' => array(
        't' => array(
          0 => 'application/x-dtbresource+xml',
        ),
      ),
      'rgb' => array(
        't' => array(
          0 => 'image/x-rgb',
        ),
      ),
      'rhtml' => array(
        't' => array(
          0 => 'application/x-httpd-eruby',
        ),
      ),
      'rif' => array(
        't' => array(
          0 => 'application/reginfo+xml',
        ),
      ),
      'rip' => array(
        't' => array(
          0 => 'audio/vnd.rip',
        ),
      ),
      'ris' => array(
        't' => array(
          0 => 'application/x-research-info-systems',
        ),
      ),
      'rl' => array(
        't' => array(
          0 => 'application/resource-lists+xml',
        ),
      ),
      'rlc' => array(
        't' => array(
          0 => 'image/vnd.fujixerox.edmics-rlc',
        ),
      ),
      'rld' => array(
        't' => array(
          0 => 'application/resource-lists-diff+xml',
        ),
      ),
      'rle' => array(
        't' => array(
          0 => 'image/rle',
        ),
      ),
      'rm' => array(
        't' => array(
          0 => 'audio/x-pn-realaudio',
          1 => 'application/vnd.rn-realmedia',
          2 => 'audio/vnd.rn-realaudio',
        ),
      ),
      'rmi' => array(
        't' => array(
          0 => 'audio/midi',
        ),
      ),
      'rmj' => array(
        't' => array(
          0 => 'application/vnd.rn-realmedia',
        ),
      ),
      'rmm' => array(
        't' => array(
          0 => 'application/vnd.rn-realmedia',
        ),
      ),
      'rmp' => array(
        't' => array(
          0 => 'audio/x-pn-realaudio-plugin',
        ),
      ),
      'rms' => array(
        't' => array(
          0 => 'application/vnd.jcp.javame.midlet-rms',
          1 => 'application/vnd.rn-realmedia',
        ),
      ),
      'rmvb' => array(
        't' => array(
          0 => 'application/vnd.rn-realmedia',
        ),
      ),
      'rmx' => array(
        't' => array(
          0 => 'application/vnd.rn-realmedia',
        ),
      ),
      'rnc' => array(
        't' => array(
          0 => 'application/relax-ng-compact-syntax',
        ),
      ),
      'rng' => array(
        't' => array(
          0 => 'application/xml',
        ),
      ),
      'roa' => array(
        't' => array(
          0 => 'application/rpki-roa',
        ),
      ),
      'roff' => array(
        't' => array(
          0 => 'application/x-troff',
          1 => 'text/troff',
        ),
      ),
      'ros' => array(
        't' => array(
          0 => 'chemical/x-rosdal',
          1 => 'text/x-common-lisp',
        ),
      ),
      'rp' => array(
        't' => array(
          0 => 'image/vnd.rn-realpix',
        ),
      ),
      'rp9' => array(
        't' => array(
          0 => 'application/vnd.cloanto.rp9',
        ),
      ),
      'rpm' => array(
        't' => array(
          0 => 'application/x-redhat-package-manager',
          1 => 'application/x-rpm',
        ),
      ),
      'rpss' => array(
        't' => array(
          0 => 'application/vnd.nokia.radio-presets',
        ),
      ),
      'rpst' => array(
        't' => array(
          0 => 'application/vnd.nokia.radio-preset',
        ),
      ),
      'rq' => array(
        't' => array(
          0 => 'application/sparql-query',
        ),
      ),
      'rs' => array(
        't' => array(
          0 => 'application/rls-services+xml',
          1 => 'text/rust',
        ),
      ),
      'rsd' => array(
        't' => array(
          0 => 'application/rsd+xml',
        ),
      ),
      'rss' => array(
        't' => array(
          0 => 'application/rss+xml',
        ),
      ),
      'rst' => array(
        't' => array(
          0 => 'text/x-rst',
        ),
      ),
      'rt' => array(
        't' => array(
          0 => 'text/vnd.rn-realtext',
        ),
      ),
      'rtf' => array(
        't' => array(
          0 => 'application/rtf',
        ),
      ),
      'rtx' => array(
        't' => array(
          0 => 'text/richtext',
        ),
      ),
      'rv' => array(
        't' => array(
          0 => 'video/vnd.rn-realvideo',
        ),
      ),
      'rvx' => array(
        't' => array(
          0 => 'video/vnd.rn-realvideo',
        ),
      ),
      'rw2' => array(
        't' => array(
          0 => 'image/x-panasonic-rw2',
        ),
      ),
      'rxn' => array(
        't' => array(
          0 => 'chemical/x-mdl-rxnfile',
        ),
      ),
      's' => array(
        't' => array(
          0 => 'text/x-asm',
        ),
      ),
      's3m' => array(
        't' => array(
          0 => 'audio/s3m',
          1 => 'audio/x-s3m',
        ),
      ),
      'saf' => array(
        't' => array(
          0 => 'application/vnd.yamaha.smaf-audio',
        ),
      ),
      'sam' => array(
        't' => array(
          0 => 'application/x-amipro',
        ),
      ),
      'sami' => array(
        't' => array(
          0 => 'application/x-sami',
        ),
      ),
      'sap' => array(
        't' => array(
          0 => 'application/x-thomson-sap-image',
        ),
      ),
      'sass' => array(
        't' => array(
          0 => 'text/x-sass',
        ),
      ),
      'sav' => array(
        't' => array(
          0 => 'application/x-spss-sav',
        ),
      ),
      'sbml' => array(
        't' => array(
          0 => 'application/sbml+xml',
        ),
      ),
      'sc' => array(
        't' => array(
          0 => 'application/vnd.ibm.secure-container',
        ),
      ),
      'scala' => array(
        't' => array(
          0 => 'text/x-scala',
        ),
      ),
      'scd' => array(
        't' => array(
          0 => 'application/x-msschedule',
        ),
      ),
      'scm' => array(
        't' => array(
          0 => 'application/vnd.lotus-screencam',
          1 => 'text/x-scheme',
        ),
      ),
      'scope' => array(
        't' => array(
          0 => 'text/x-systemd-unit',
        ),
      ),
      'scq' => array(
        't' => array(
          0 => 'application/scvp-cv-request',
        ),
      ),
      'scs' => array(
        't' => array(
          0 => 'application/scvp-cv-response',
        ),
      ),
      'scss' => array(
        't' => array(
          0 => 'text/x-scss',
        ),
      ),
      'sct' => array(
        't' => array(
          0 => 'text/scriptlet',
        ),
      ),
      'scurl' => array(
        't' => array(
          0 => 'text/vnd.curl.scurl',
        ),
      ),
      'sd' => array(
        't' => array(
          0 => 'chemical/x-mdl-sdfile',
        ),
      ),
      'sd2' => array(
        't' => array(
          0 => 'audio/x-sd2',
        ),
      ),
      'sda' => array(
        't' => array(
          0 => 'application/vnd.stardivision.draw',
        ),
      ),
      'sdc' => array(
        't' => array(
          0 => 'application/vnd.stardivision.calc',
        ),
      ),
      'sdd' => array(
        't' => array(
          0 => 'application/vnd.stardivision.impress',
        ),
      ),
      'sdf' => array(
        't' => array(
          0 => 'chemical/x-mdl-sdfile',
        ),
      ),
      'sdkd' => array(
        't' => array(
          0 => 'application/vnd.solent.sdkm+xml',
        ),
      ),
      'sdkm' => array(
        't' => array(
          0 => 'application/vnd.solent.sdkm+xml',
        ),
      ),
      'sdp' => array(
        't' => array(
          0 => 'application/sdp',
          1 => 'application/vnd.stardivision.impress',
        ),
      ),
      'sds' => array(
        't' => array(
          0 => 'application/vnd.stardivision.chart',
        ),
      ),
      'sdw' => array(
        't' => array(
          0 => 'application/vnd.stardivision.writer',
        ),
      ),
      'see' => array(
        't' => array(
          0 => 'application/vnd.seemail',
        ),
      ),
      'seed' => array(
        't' => array(
          0 => 'application/vnd.fdsn.seed',
        ),
      ),
      'sema' => array(
        't' => array(
          0 => 'application/vnd.sema',
        ),
      ),
      'semd' => array(
        't' => array(
          0 => 'application/vnd.semd',
        ),
      ),
      'semf' => array(
        't' => array(
          0 => 'application/vnd.semf',
        ),
      ),
      'ser' => array(
        't' => array(
          0 => 'application/java-serialized-object',
        ),
      ),
      'service' => array(
        't' => array(
          0 => 'text/x-dbus-service',
          1 => 'text/x-systemd-unit',
        ),
      ),
      'setpay' => array(
        't' => array(
          0 => 'application/set-payment-initiation',
        ),
      ),
      'setreg' => array(
        't' => array(
          0 => 'application/set-registration-initiation',
        ),
      ),
      'sfc' => array(
        't' => array(
          0 => 'application/vnd.nintendo.snes.rom',
        ),
      ),
      'sfd-hdstx' => array(
        't' => array(
          0 => 'application/vnd.hydrostatix.sof-data',
        ),
      ),
      'sfs' => array(
        't' => array(
          0 => 'application/vnd.spotfire.sfs',
        ),
      ),
      'sfv' => array(
        't' => array(
          0 => 'text/x-sfv',
        ),
      ),
      'sg' => array(
        't' => array(
          0 => 'application/x-sg1000-rom',
        ),
      ),
      'sgb' => array(
        't' => array(
          0 => 'application/x-gameboy-rom',
        ),
      ),
      'sgd' => array(
        't' => array(
          0 => 'application/x-genesis-rom',
        ),
      ),
      'sgf' => array(
        't' => array(
          0 => 'application/x-go-sgf',
        ),
      ),
      'sgi' => array(
        't' => array(
          0 => 'image/sgi',
          1 => 'image/x-sgi',
        ),
      ),
      'sgl' => array(
        't' => array(
          0 => 'application/vnd.stardivision.writer-global',
          1 => 'application/vnd.stardivision.writer',
        ),
      ),
      'sgm' => array(
        't' => array(
          0 => 'text/sgml',
        ),
      ),
      'sgml' => array(
        't' => array(
          0 => 'text/sgml',
        ),
      ),
      'sh' => array(
        't' => array(
          0 => 'text/x-sh',
          1 => 'application/x-sh',
          2 => 'application/x-shellscript',
        ),
      ),
      'shape' => array(
        't' => array(
          0 => 'application/x-dia-shape',
        ),
      ),
      'shar' => array(
        't' => array(
          0 => 'application/x-shar',
        ),
      ),
      'shf' => array(
        't' => array(
          0 => 'application/shf+xml',
        ),
      ),
      'shn' => array(
        't' => array(
          0 => 'application/x-shorten',
        ),
      ),
      'shtml' => array(
        't' => array(
          0 => 'text/html',
        ),
      ),
      'siag' => array(
        't' => array(
          0 => 'application/x-siag',
        ),
      ),
      'sid' => array(
        't' => array(
          0 => 'audio/prs.sid',
          1 => 'image/x-mrsid-image',
        ),
      ),
      'sig' => array(
        't' => array(
          0 => 'application/pgp-signature',
        ),
      ),
      'sik' => array(
        't' => array(
          0 => 'application/x-trash',
        ),
      ),
      'sil' => array(
        't' => array(
          0 => 'audio/silk',
        ),
      ),
      'silo' => array(
        't' => array(
          0 => 'model/mesh',
        ),
      ),
      'sis' => array(
        't' => array(
          0 => 'application/vnd.symbian.install',
        ),
      ),
      'sisx' => array(
        't' => array(
          0 => 'x-epoc/x-sisx-app',
          1 => 'application/vnd.symbian.install',
        ),
      ),
      'sit' => array(
        't' => array(
          0 => 'application/x-stuffit',
        ),
      ),
      'sitx' => array(
        't' => array(
          0 => 'application/x-stuffit',
          1 => 'application/x-stuffitx',
        ),
      ),
      'siv' => array(
        't' => array(
          0 => 'application/sieve',
        ),
      ),
      'sk' => array(
        't' => array(
          0 => 'image/x-skencil',
        ),
      ),
      'sk1' => array(
        't' => array(
          0 => 'image/x-skencil',
        ),
      ),
      'skd' => array(
        't' => array(
          0 => 'application/x-koan',
          1 => 'application/vnd.koan',
        ),
      ),
      'skm' => array(
        't' => array(
          0 => 'application/x-koan',
          1 => 'application/vnd.koan',
        ),
      ),
      'skp' => array(
        't' => array(
          0 => 'application/x-koan',
          1 => 'application/vnd.koan',
        ),
      ),
      'skr' => array(
        't' => array(
          0 => 'application/pgp-keys',
        ),
      ),
      'skt' => array(
        't' => array(
          0 => 'application/x-koan',
          1 => 'application/vnd.koan',
        ),
      ),
      'sldm' => array(
        't' => array(
          0 => 'application/vnd.ms-powerpoint.slide.macroenabled.12',
        ),
      ),
      'sldx' => array(
        't' => array(
          0 => 'application/vnd.openxmlformats-officedocument.presentationml.slide',
        ),
      ),
      'slice' => array(
        't' => array(
          0 => 'text/x-systemd-unit',
        ),
      ),
      'slk' => array(
        't' => array(
          0 => 'text/spreadsheet',
        ),
      ),
      'slt' => array(
        't' => array(
          0 => 'application/vnd.epson.salt',
        ),
      ),
      'sm' => array(
        't' => array(
          0 => 'application/vnd.stepmania.stepchart',
        ),
      ),
      'smaf' => array(
        't' => array(
          0 => 'application/x-smaf',
        ),
      ),
      'smc' => array(
        't' => array(
          0 => 'application/vnd.nintendo.snes.rom',
        ),
      ),
      'smd' => array(
        't' => array(
          0 => 'application/vnd.stardivision.mail',
          1 => 'application/x-genesis-rom',
        ),
      ),
      'smf' => array(
        't' => array(
          0 => 'application/vnd.stardivision.math',
        ),
      ),
      'smi' => array(
        't' => array(
          0 => 'application/smil',
          1 => 'application/smil+xml',
          2 => 'application/x-sami',
        ),
      ),
      'smil' => array(
        't' => array(
          0 => 'application/smil',
          1 => 'application/smil+xml',
        ),
      ),
      'sml' => array(
        't' => array(
          0 => 'application/smil+xml',
        ),
      ),
      'sms' => array(
        't' => array(
          0 => 'application/x-sms-rom',
        ),
      ),
      'smv' => array(
        't' => array(
          0 => 'video/x-smv',
        ),
      ),
      'smzip' => array(
        't' => array(
          0 => 'application/vnd.stepmania.package',
        ),
      ),
      'snap' => array(
        't' => array(
          0 => 'application/vnd.snap',
        ),
      ),
      'snd' => array(
        't' => array(
          0 => 'audio/basic',
        ),
      ),
      'snf' => array(
        't' => array(
          0 => 'application/x-font-snf',
        ),
      ),
      'so' => array(
        't' => array(
          0 => 'application/octet-stream',
          1 => 'application/x-sharedlib',
        ),
      ),
      'socket' => array(
        't' => array(
          0 => 'text/x-systemd-unit',
        ),
      ),
      'spc' => array(
        't' => array(
          0 => 'chemical/x-galactic-spc',
          1 => 'application/x-pkcs7-certificates',
        ),
      ),
      'spd' => array(
        't' => array(
          0 => 'application/x-font-speedo',
        ),
      ),
      'spec' => array(
        't' => array(
          0 => 'text/x-rpm-spec',
        ),
      ),
      'spf' => array(
        't' => array(
          0 => 'application/vnd.yamaha.smaf-phrase',
        ),
      ),
      'spl' => array(
        't' => array(
          0 => 'application/x-futuresplash',
          1 => 'application/vnd.adobe.flash.movie',
        ),
      ),
      'spm' => array(
        't' => array(
          0 => 'application/x-source-rpm',
        ),
      ),
      'spot' => array(
        't' => array(
          0 => 'text/vnd.in3d.spot',
        ),
      ),
      'spp' => array(
        't' => array(
          0 => 'application/scvp-vp-response',
        ),
      ),
      'spq' => array(
        't' => array(
          0 => 'application/scvp-vp-request',
        ),
      ),
      'spx' => array(
        't' => array(
          0 => 'audio/ogg',
          1 => 'application/x-apple-systemprofiler+xml',
          2 => 'audio/x-speex+ogg',
          3 => 'audio/x-speex',
        ),
      ),
      'sql' => array(
        't' => array(
          0 => 'application/x-sql',
          1 => 'application/sql',
        ),
      ),
      'sqlite2' => array(
        't' => array(
          0 => 'application/x-sqlite2',
        ),
      ),
      'sqlite3' => array(
        't' => array(
          0 => 'application/vnd.sqlite3',
        ),
      ),
      'sqsh' => array(
        't' => array(
          0 => 'application/vnd.squashfs',
        ),
      ),
      'sr2' => array(
        't' => array(
          0 => 'image/x-sony-sr2',
        ),
      ),
      'src' => array(
        't' => array(
          0 => 'application/x-wais-source',
        ),
      ),
      'src.rpm' => array(
        't' => array(
          0 => 'application/x-source-rpm',
        ),
      ),
      'srf' => array(
        't' => array(
          0 => 'image/x-sony-srf',
        ),
      ),
      'srt' => array(
        't' => array(
          0 => 'application/x-subrip',
        ),
      ),
      'sru' => array(
        't' => array(
          0 => 'application/sru+xml',
        ),
      ),
      'srx' => array(
        't' => array(
          0 => 'application/sparql-results+xml',
        ),
      ),
      'ss' => array(
        't' => array(
          0 => 'text/x-scheme',
        ),
      ),
      'ssa' => array(
        't' => array(
          0 => 'text/x-ssa',
        ),
      ),
      'ssdl' => array(
        't' => array(
          0 => 'application/ssdl+xml',
        ),
      ),
      'sse' => array(
        't' => array(
          0 => 'application/vnd.kodak-descriptor',
        ),
      ),
      'ssf' => array(
        't' => array(
          0 => 'application/vnd.epson.ssf',
        ),
      ),
      'ssml' => array(
        't' => array(
          0 => 'application/ssml+xml',
        ),
      ),
      'st' => array(
        't' => array(
          0 => 'application/vnd.sailingtracker.track',
        ),
      ),
      'stc' => array(
        't' => array(
          0 => 'application/vnd.sun.xml.calc.template',
        ),
      ),
      'std' => array(
        't' => array(
          0 => 'application/vnd.sun.xml.draw.template',
        ),
      ),
      'stf' => array(
        't' => array(
          0 => 'application/vnd.wt.stf',
        ),
      ),
      'sti' => array(
        't' => array(
          0 => 'application/vnd.sun.xml.impress.template',
        ),
      ),
      'stk' => array(
        't' => array(
          0 => 'application/hyperstudio',
        ),
      ),
      'stl' => array(
        't' => array(
          0 => 'application/vnd.ms-pki.stl',
          1 => 'model/stl',
        ),
      ),
      'stm' => array(
        't' => array(
          0 => 'audio/x-stm',
        ),
      ),
      'str' => array(
        't' => array(
          0 => 'application/vnd.pg.format',
        ),
      ),
      'stw' => array(
        't' => array(
          0 => 'application/vnd.sun.xml.writer.template',
        ),
      ),
      'sty' => array(
        't' => array(
          0 => 'text/x-tex',
        ),
      ),
      'sub' => array(
        't' => array(
          0 => 'text/vnd.dvb.subtitle',
          1 => 'image/vnd.dvb.subtitle',
          2 => 'text/x-microdvd',
          3 => 'text/x-mpsub',
          4 => 'text/x-subviewer',
        ),
      ),
      'sun' => array(
        't' => array(
          0 => 'image/x-sun-raster',
        ),
      ),
      'sus' => array(
        't' => array(
          0 => 'application/vnd.sus-calendar',
        ),
      ),
      'susp' => array(
        't' => array(
          0 => 'application/vnd.sus-calendar',
        ),
      ),
      'sv' => array(
        't' => array(
          0 => 'text/x-svsrc',
        ),
      ),
      'sv4cpio' => array(
        't' => array(
          0 => 'application/x-sv4cpio',
        ),
      ),
      'sv4crc' => array(
        't' => array(
          0 => 'application/x-sv4crc',
        ),
      ),
      'svc' => array(
        't' => array(
          0 => 'application/vnd.dvb.service',
        ),
      ),
      'svd' => array(
        't' => array(
          0 => 'application/vnd.svd',
        ),
      ),
      'svg' => array(
        't' => array(
          0 => 'image/svg+xml',
        ),
      ),
      'svgz' => array(
        't' => array(
          0 => 'image/svg+xml',
          1 => 'image/svg+xml-compressed',
        ),
      ),
      'svh' => array(
        't' => array(
          0 => 'text/x-svhdr',
        ),
      ),
      'sw' => array(
        't' => array(
          0 => 'chemical/x-swissprot',
        ),
      ),
      'swa' => array(
        't' => array(
          0 => 'application/x-director',
        ),
      ),
      'swap' => array(
        't' => array(
          0 => 'text/x-systemd-unit',
        ),
      ),
      'swf' => array(
        't' => array(
          0 => 'application/x-shockwave-flash',
          1 => 'application/vnd.adobe.flash.movie',
        ),
      ),
      'swfl' => array(
        't' => array(
          0 => 'application/x-shockwave-flash',
          1 => 'application/vnd.adobe.flash.movie',
        ),
      ),
      'swi' => array(
        't' => array(
          0 => 'application/vnd.aristanetworks.swi',
        ),
      ),
      'swm' => array(
        't' => array(
          0 => 'application/x-ms-wim',
        ),
      ),
      'sxc' => array(
        't' => array(
          0 => 'application/vnd.sun.xml.calc',
        ),
      ),
      'sxd' => array(
        't' => array(
          0 => 'application/vnd.sun.xml.draw',
        ),
      ),
      'sxg' => array(
        't' => array(
          0 => 'application/vnd.sun.xml.writer.global',
        ),
      ),
      'sxi' => array(
        't' => array(
          0 => 'application/vnd.sun.xml.impress',
        ),
      ),
      'sxm' => array(
        't' => array(
          0 => 'application/vnd.sun.xml.math',
        ),
      ),
      'sxw' => array(
        't' => array(
          0 => 'application/vnd.sun.xml.writer',
        ),
      ),
      'sylk' => array(
        't' => array(
          0 => 'text/spreadsheet',
        ),
      ),
      't' => array(
        't' => array(
          0 => 'application/x-troff',
          1 => 'text/troff',
          2 => 'application/x-perl',
        ),
      ),
      't2t' => array(
        't' => array(
          0 => 'text/x-txt2tags',
        ),
      ),
      't3' => array(
        't' => array(
          0 => 'application/x-t3vm-image',
        ),
      ),
      'taglet' => array(
        't' => array(
          0 => 'application/vnd.mynfc',
        ),
      ),
      'tao' => array(
        't' => array(
          0 => 'application/vnd.tao.intent-module-archive',
        ),
      ),
      'tar' => array(
        't' => array(
          0 => 'application/x-tar',
        ),
      ),
      'tar.bz' => array(
        't' => array(
          0 => 'application/x-bzip-compressed-tar',
        ),
      ),
      'tar.bz2' => array(
        't' => array(
          0 => 'application/x-bzip-compressed-tar',
        ),
      ),
      'tar.gz' => array(
        't' => array(
          0 => 'application/x-compressed-tar',
        ),
      ),
      'tar.lrz' => array(
        't' => array(
          0 => 'application/x-lrzip-compressed-tar',
        ),
      ),
      'tar.lz' => array(
        't' => array(
          0 => 'application/x-lzip-compressed-tar',
        ),
      ),
      'tar.lz4' => array(
        't' => array(
          0 => 'application/x-lz4-compressed-tar',
        ),
      ),
      'tar.lzma' => array(
        't' => array(
          0 => 'application/x-lzma-compressed-tar',
        ),
      ),
      'tar.lzo' => array(
        't' => array(
          0 => 'application/x-tzo',
        ),
      ),
      'tar.xz' => array(
        't' => array(
          0 => 'application/x-xz-compressed-tar',
        ),
      ),
      'tar.z' => array(
        't' => array(
          0 => 'application/x-tarz',
        ),
      ),
      'tar.zst' => array(
        't' => array(
          0 => 'application/x-zstd-compressed-tar',
        ),
      ),
      'target' => array(
        't' => array(
          0 => 'text/x-systemd-unit',
        ),
      ),
      'taz' => array(
        't' => array(
          0 => 'application/x-gtar',
          1 => 'application/x-tarz',
          2 => 'application/x-tar',
        ),
      ),
      'tb2' => array(
        't' => array(
          0 => 'application/x-bzip-compressed-tar',
        ),
      ),
      'tbz' => array(
        't' => array(
          0 => 'application/x-bzip-compressed-tar',
        ),
      ),
      'tbz2' => array(
        't' => array(
          0 => 'application/x-bzip-compressed-tar',
        ),
      ),
      'tcap' => array(
        't' => array(
          0 => 'application/vnd.3gpp2.tcap',
        ),
      ),
      'tcl' => array(
        't' => array(
          0 => 'text/x-tcl',
          1 => 'application/x-tcl',
          2 => 'text/tcl',
        ),
      ),
      'teacher' => array(
        't' => array(
          0 => 'application/vnd.smart.teacher',
        ),
      ),
      'tei' => array(
        't' => array(
          0 => 'application/tei+xml',
        ),
      ),
      'teicorpus' => array(
        't' => array(
          0 => 'application/tei+xml',
        ),
      ),
      'tex' => array(
        't' => array(
          0 => 'text/x-tex',
        ),
      ),
      'texi' => array(
        't' => array(
          0 => 'application/x-texinfo',
          1 => 'text/x-texinfo',
        ),
      ),
      'texinfo' => array(
        't' => array(
          0 => 'application/x-texinfo',
          1 => 'text/x-texinfo',
        ),
      ),
      'text' => array(
        't' => array(
          0 => 'text/plain',
        ),
      ),
      'tfi' => array(
        't' => array(
          0 => 'application/thraud+xml',
        ),
      ),
      'tfm' => array(
        't' => array(
          0 => 'application/x-tex-tfm',
        ),
      ),
      'tga' => array(
        't' => array(
          0 => 'image/x-tga',
        ),
      ),
      'tgf' => array(
        't' => array(
          0 => 'chemical/x-mdl-tgf',
        ),
      ),
      'tgz' => array(
        't' => array(
          0 => 'application/x-gtar',
          1 => 'application/x-compressed-tar',
          2 => 'application/x-tar',
        ),
      ),
      'theme' => array(
        't' => array(
          0 => 'application/x-theme',
        ),
      ),
      'themepack' => array(
        't' => array(
          0 => 'application/x-windows-themepack',
        ),
      ),
      'thmx' => array(
        't' => array(
          0 => 'application/vnd.ms-officetheme',
        ),
      ),
      'tif' => array(
        't' => array(
          0 => 'image/tiff',
        ),
      ),
      'tiff' => array(
        't' => array(
          0 => 'image/tiff',
        ),
      ),
      'timer' => array(
        't' => array(
          0 => 'text/x-systemd-unit',
        ),
      ),
      'tk' => array(
        't' => array(
          0 => 'text/x-tcl',
          1 => 'text/tcl',
        ),
      ),
      'tlrz' => array(
        't' => array(
          0 => 'application/x-lrzip-compressed-tar',
        ),
      ),
      'tlz' => array(
        't' => array(
          0 => 'application/x-lzma-compressed-tar',
        ),
      ),
      'tm' => array(
        't' => array(
          0 => 'text/texmacs',
        ),
      ),
      'tmo' => array(
        't' => array(
          0 => 'application/vnd.tmobile-livetv',
        ),
      ),
      'tnef' => array(
        't' => array(
          0 => 'application/vnd.ms-tnef',
        ),
      ),
      'tnf' => array(
        't' => array(
          0 => 'application/vnd.ms-tnef',
        ),
      ),
      'toc' => array(
        't' => array(
          0 => 'application/x-cdrdao-toc',
        ),
      ),
      'torrent' => array(
        't' => array(
          0 => 'application/x-bittorrent',
        ),
      ),
      'tpic' => array(
        't' => array(
          0 => 'image/x-tga',
        ),
      ),
      'tpl' => array(
        't' => array(
          0 => 'application/vnd.groove-tool-template',
        ),
      ),
      'tpt' => array(
        't' => array(
          0 => 'application/vnd.trid.tpt',
        ),
      ),
      'tr' => array(
        't' => array(
          0 => 'application/x-troff',
          1 => 'text/troff',
        ),
      ),
      'tra' => array(
        't' => array(
          0 => 'application/vnd.trueapp',
        ),
      ),
      'trig' => array(
        't' => array(
          0 => 'application/trig',
        ),
      ),
      'trm' => array(
        't' => array(
          0 => 'application/x-msterminal',
        ),
      ),
      'ts' => array(
        't' => array(
          0 => 'text/texmacs',
          1 => 'text/vnd.qt.linguist',
          2 => 'video/mp2t',
        ),
      ),
      'tsd' => array(
        't' => array(
          0 => 'application/timestamped-data',
        ),
      ),
      'tsp' => array(
        't' => array(
          0 => 'application/dsptype',
        ),
      ),
      'tsv' => array(
        't' => array(
          0 => 'text/tab-separated-values',
        ),
      ),
      'tta' => array(
        't' => array(
          0 => 'audio/x-tta',
        ),
      ),
      'ttc' => array(
        't' => array(
          0 => 'font/collection',
        ),
      ),
      'ttf' => array(
        't' => array(
          0 => 'font/ttf',
        ),
      ),
      'ttl' => array(
        't' => array(
          0 => 'text/turtle',
        ),
      ),
      'ttx' => array(
        't' => array(
          0 => 'application/x-font-ttx',
        ),
      ),
      'twd' => array(
        't' => array(
          0 => 'application/vnd.simtech-mindmapper',
        ),
      ),
      'twds' => array(
        't' => array(
          0 => 'application/vnd.simtech-mindmapper',
        ),
      ),
      'twig' => array(
        't' => array(
          0 => 'text/x-twig',
        ),
      ),
      'txd' => array(
        't' => array(
          0 => 'application/vnd.genomatix.tuxedo',
        ),
      ),
      'txf' => array(
        't' => array(
          0 => 'application/vnd.mobius.txf',
        ),
      ),
      'txt' => array(
        't' => array(
          0 => 'text/plain',
        ),
      ),
      'txz' => array(
        't' => array(
          0 => 'application/x-xz-compressed-tar',
        ),
      ),
      'tzo' => array(
        't' => array(
          0 => 'application/x-tzo',
        ),
      ),
      'tzst' => array(
        't' => array(
          0 => 'application/x-zstd-compressed-tar',
        ),
      ),
      'u32' => array(
        't' => array(
          0 => 'application/x-authorware-bin',
        ),
      ),
      'udeb' => array(
        't' => array(
          0 => 'application/x-debian-package',
          1 => 'application/vnd.debian.binary-package',
        ),
      ),
      'ufd' => array(
        't' => array(
          0 => 'application/vnd.ufdl',
        ),
      ),
      'ufdl' => array(
        't' => array(
          0 => 'application/vnd.ufdl',
        ),
      ),
      'ufraw' => array(
        't' => array(
          0 => 'application/x-ufraw',
        ),
      ),
      'ui' => array(
        't' => array(
          0 => 'application/x-designer',
          1 => 'application/x-gtk-builder',
        ),
      ),
      'uil' => array(
        't' => array(
          0 => 'text/x-uil',
        ),
      ),
      'uls' => array(
        't' => array(
          0 => 'text/iuls',
        ),
      ),
      'ult' => array(
        't' => array(
          0 => 'audio/x-mod',
        ),
      ),
      'ulx' => array(
        't' => array(
          0 => 'application/x-glulx',
        ),
      ),
      'umj' => array(
        't' => array(
          0 => 'application/vnd.umajin',
        ),
      ),
      'unf' => array(
        't' => array(
          0 => 'application/x-nes-rom',
        ),
      ),
      'uni' => array(
        't' => array(
          0 => 'audio/x-mod',
        ),
      ),
      'unif' => array(
        't' => array(
          0 => 'application/x-nes-rom',
        ),
      ),
      'unityweb' => array(
        't' => array(
          0 => 'application/vnd.unity',
        ),
      ),
      'uoml' => array(
        't' => array(
          0 => 'application/vnd.uoml+xml',
        ),
      ),
      'uri' => array(
        't' => array(
          0 => 'text/uri-list',
        ),
      ),
      'uris' => array(
        't' => array(
          0 => 'text/uri-list',
        ),
      ),
      'url' => array(
        't' => array(
          0 => 'application/x-mswinurl',
        ),
      ),
      'urls' => array(
        't' => array(
          0 => 'text/uri-list',
        ),
      ),
      'ustar' => array(
        't' => array(
          0 => 'application/x-ustar',
        ),
      ),
      'utz' => array(
        't' => array(
          0 => 'application/vnd.uiq.theme',
        ),
      ),
      'uu' => array(
        't' => array(
          0 => 'text/x-uuencode',
        ),
      ),
      'uue' => array(
        't' => array(
          0 => 'text/x-uuencode',
        ),
      ),
      'uva' => array(
        't' => array(
          0 => 'audio/vnd.dece.audio',
        ),
      ),
      'uvd' => array(
        't' => array(
          0 => 'application/vnd.dece.data',
        ),
      ),
      'uvf' => array(
        't' => array(
          0 => 'application/vnd.dece.data',
        ),
      ),
      'uvg' => array(
        't' => array(
          0 => 'image/vnd.dece.graphic',
        ),
      ),
      'uvh' => array(
        't' => array(
          0 => 'video/vnd.dece.hd',
        ),
      ),
      'uvi' => array(
        't' => array(
          0 => 'image/vnd.dece.graphic',
        ),
      ),
      'uvm' => array(
        't' => array(
          0 => 'video/vnd.dece.mobile',
        ),
      ),
      'uvp' => array(
        't' => array(
          0 => 'video/vnd.dece.pd',
        ),
      ),
      'uvs' => array(
        't' => array(
          0 => 'video/vnd.dece.sd',
        ),
      ),
      'uvt' => array(
        't' => array(
          0 => 'application/vnd.dece.ttml+xml',
        ),
      ),
      'uvu' => array(
        't' => array(
          0 => 'video/vnd.uvvu.mp4',
        ),
      ),
      'uvv' => array(
        't' => array(
          0 => 'video/vnd.dece.video',
        ),
      ),
      'uvva' => array(
        't' => array(
          0 => 'audio/vnd.dece.audio',
        ),
      ),
      'uvvd' => array(
        't' => array(
          0 => 'application/vnd.dece.data',
        ),
      ),
      'uvvf' => array(
        't' => array(
          0 => 'application/vnd.dece.data',
        ),
      ),
      'uvvg' => array(
        't' => array(
          0 => 'image/vnd.dece.graphic',
        ),
      ),
      'uvvh' => array(
        't' => array(
          0 => 'video/vnd.dece.hd',
        ),
      ),
      'uvvi' => array(
        't' => array(
          0 => 'image/vnd.dece.graphic',
        ),
      ),
      'uvvm' => array(
        't' => array(
          0 => 'video/vnd.dece.mobile',
        ),
      ),
      'uvvp' => array(
        't' => array(
          0 => 'video/vnd.dece.pd',
        ),
      ),
      'uvvs' => array(
        't' => array(
          0 => 'video/vnd.dece.sd',
        ),
      ),
      'uvvt' => array(
        't' => array(
          0 => 'application/vnd.dece.ttml+xml',
        ),
      ),
      'uvvu' => array(
        't' => array(
          0 => 'video/vnd.uvvu.mp4',
        ),
      ),
      'uvvv' => array(
        't' => array(
          0 => 'video/vnd.dece.video',
        ),
      ),
      'uvvx' => array(
        't' => array(
          0 => 'application/vnd.dece.unspecified',
        ),
      ),
      'uvvz' => array(
        't' => array(
          0 => 'application/vnd.dece.zip',
        ),
      ),
      'uvx' => array(
        't' => array(
          0 => 'application/vnd.dece.unspecified',
        ),
      ),
      'uvz' => array(
        't' => array(
          0 => 'application/vnd.dece.zip',
        ),
      ),
      'v' => array(
        't' => array(
          0 => 'text/x-verilog',
        ),
      ),
      'v64' => array(
        't' => array(
          0 => 'application/x-n64-rom',
        ),
      ),
      'val' => array(
        't' => array(
          0 => 'chemical/x-ncbi-asn1-binary',
        ),
      ),
      'vala' => array(
        't' => array(
          0 => 'text/x-vala',
        ),
      ),
      'vapi' => array(
        't' => array(
          0 => 'text/x-vala',
        ),
      ),
      'vb' => array(
        't' => array(
          0 => 'application/x-virtual-boy-rom',
        ),
      ),
      'vbs' => array(
        't' => array(
          0 => 'text/vbscript',
        ),
      ),
      'vcard' => array(
        't' => array(
          0 => 'text/vcard',
        ),
      ),
      'vcd' => array(
        't' => array(
          0 => 'application/x-cdlink',
        ),
      ),
      'vcf' => array(
        't' => array(
          0 => 'text/x-vcard',
          1 => 'text/vcard',
        ),
      ),
      'vcg' => array(
        't' => array(
          0 => 'application/vnd.groove-vcard',
        ),
      ),
      'vcs' => array(
        't' => array(
          0 => 'text/x-vcalendar',
          1 => 'text/calendar',
        ),
      ),
      'vct' => array(
        't' => array(
          0 => 'text/vcard',
        ),
      ),
      'vcx' => array(
        't' => array(
          0 => 'application/vnd.vcx',
        ),
      ),
      'vda' => array(
        't' => array(
          0 => 'image/x-tga',
        ),
      ),
      'vhd' => array(
        't' => array(
          0 => 'text/x-vhdl',
        ),
      ),
      'vhdl' => array(
        't' => array(
          0 => 'text/x-vhdl',
        ),
      ),
      'vis' => array(
        't' => array(
          0 => 'application/vnd.visionary',
        ),
      ),
      'viv' => array(
        't' => array(
          0 => 'video/vnd.vivo',
        ),
      ),
      'vivo' => array(
        't' => array(
          0 => 'video/vnd.vivo',
        ),
      ),
      'vlc' => array(
        't' => array(
          0 => 'audio/x-mpegurl',
        ),
      ),
      'vmd' => array(
        't' => array(
          0 => 'chemical/x-vmd',
        ),
      ),
      'vms' => array(
        't' => array(
          0 => 'chemical/x-vamas-iso14976',
        ),
      ),
      'vob' => array(
        't' => array(
          0 => 'video/x-ms-vob',
          1 => 'video/mpeg',
        ),
      ),
      'voc' => array(
        't' => array(
          0 => 'audio/x-voc',
        ),
      ),
      'vor' => array(
        't' => array(
          0 => 'application/vnd.stardivision.writer',
        ),
      ),
      'vox' => array(
        't' => array(
          0 => 'application/x-authorware-bin',
        ),
      ),
      'vrm' => array(
        't' => array(
          0 => 'x-world/x-vrml',
          1 => 'model/vrml',
        ),
      ),
      'vrml' => array(
        't' => array(
          0 => 'x-world/x-vrml',
          1 => 'model/vrml',
        ),
      ),
      'vsd' => array(
        't' => array(
          0 => 'application/vnd.visio',
        ),
      ),
      'vsdm' => array(
        't' => array(
          0 => 'application/vnd.ms-visio.drawing.macroenabled.main+xml',
        ),
      ),
      'vsdx' => array(
        't' => array(
          0 => 'application/vnd.ms-visio.drawing.main+xml',
        ),
      ),
      'vsf' => array(
        't' => array(
          0 => 'application/vnd.vsf',
        ),
      ),
      'vss' => array(
        't' => array(
          0 => 'application/vnd.visio',
        ),
      ),
      'vssm' => array(
        't' => array(
          0 => 'application/vnd.ms-visio.stencil.macroenabled.main+xml',
        ),
      ),
      'vssx' => array(
        't' => array(
          0 => 'application/vnd.ms-visio.stencil.main+xml',
        ),
      ),
      'vst' => array(
        't' => array(
          0 => 'application/vnd.visio',
          1 => 'image/x-tga',
        ),
      ),
      'vstm' => array(
        't' => array(
          0 => 'application/vnd.ms-visio.template.macroenabled.main+xml',
        ),
      ),
      'vstx' => array(
        't' => array(
          0 => 'application/vnd.ms-visio.template.main+xml',
        ),
      ),
      'vsw' => array(
        't' => array(
          0 => 'application/vnd.visio',
        ),
      ),
      'vtt' => array(
        't' => array(
          0 => 'text/vtt',
        ),
      ),
      'vtu' => array(
        't' => array(
          0 => 'model/vnd.vtu',
        ),
      ),
      'vxml' => array(
        't' => array(
          0 => 'application/voicexml+xml',
        ),
      ),
      'w3d' => array(
        't' => array(
          0 => 'application/x-director',
        ),
      ),
      'wad' => array(
        't' => array(
          0 => 'application/x-doom',
          1 => 'application/x-wii-wad',
          2 => 'application/x-doom-wad',
        ),
      ),
      'wav' => array(
        't' => array(
          0 => 'audio/x-wav',
        ),
      ),
      'wax' => array(
        't' => array(
          0 => 'audio/x-ms-wax',
          1 => 'audio/x-ms-asx',
        ),
      ),
      'wb1' => array(
        't' => array(
          0 => 'application/x-quattropro',
        ),
      ),
      'wb2' => array(
        't' => array(
          0 => 'application/x-quattropro',
        ),
      ),
      'wb3' => array(
        't' => array(
          0 => 'application/x-quattropro',
        ),
      ),
      'wbmp' => array(
        't' => array(
          0 => 'image/vnd.wap.wbmp',
        ),
      ),
      'wbs' => array(
        't' => array(
          0 => 'application/vnd.criticaltools.wbs+xml',
        ),
      ),
      'wbxml' => array(
        't' => array(
          0 => 'application/vnd.wap.wbxml',
        ),
      ),
      'wcm' => array(
        't' => array(
          0 => 'application/vnd.ms-works',
        ),
      ),
      'wdb' => array(
        't' => array(
          0 => 'application/vnd.ms-works',
        ),
      ),
      'wdp' => array(
        't' => array(
          0 => 'image/vnd.ms-photo',
        ),
      ),
      'weba' => array(
        't' => array(
          0 => 'audio/webm',
        ),
      ),
      'webm' => array(
        't' => array(
          0 => 'video/webm',
        ),
      ),
      'webp' => array(
        't' => array(
          0 => 'image/webp',
        ),
      ),
      'wg' => array(
        't' => array(
          0 => 'application/vnd.pmi.widget',
        ),
      ),
      'wgt' => array(
        't' => array(
          0 => 'application/widget',
        ),
      ),
      'wim' => array(
        't' => array(
          0 => 'application/x-ms-wim',
        ),
      ),
      'wk' => array(
        't' => array(
          0 => 'application/x-123',
          1 => 'application/vnd.lotus-1-2-3',
        ),
      ),
      'wk1' => array(
        't' => array(
          0 => 'application/vnd.lotus-1-2-3',
        ),
      ),
      'wk3' => array(
        't' => array(
          0 => 'application/vnd.lotus-1-2-3',
        ),
      ),
      'wk4' => array(
        't' => array(
          0 => 'application/vnd.lotus-1-2-3',
        ),
      ),
      'wkdownload' => array(
        't' => array(
          0 => 'application/x-partial-download',
        ),
      ),
      'wks' => array(
        't' => array(
          0 => 'application/vnd.ms-works',
          1 => 'application/vnd.lotus-1-2-3',
        ),
      ),
      'wm' => array(
        't' => array(
          0 => 'video/x-ms-wm',
          1 => 'application/vnd.ms-asf',
        ),
      ),
      'wma' => array(
        't' => array(
          0 => 'audio/x-ms-wma',
        ),
      ),
      'wmd' => array(
        't' => array(
          0 => 'application/x-ms-wmd',
        ),
      ),
      'wmf' => array(
        't' => array(
          0 => 'image/wmf',
        ),
      ),
      'wml' => array(
        't' => array(
          0 => 'text/vnd.wap.wml',
        ),
      ),
      'wmlc' => array(
        't' => array(
          0 => 'application/vnd.wap.wmlc',
        ),
      ),
      'wmls' => array(
        't' => array(
          0 => 'text/vnd.wap.wmlscript',
        ),
      ),
      'wmlsc' => array(
        't' => array(
          0 => 'application/vnd.wap.wmlscriptc',
        ),
      ),
      'wmv' => array(
        't' => array(
          0 => 'video/x-ms-wmv',
        ),
      ),
      'wmx' => array(
        't' => array(
          0 => 'video/x-ms-wmx',
          1 => 'audio/x-ms-asx',
        ),
      ),
      'wmz' => array(
        't' => array(
          0 => 'application/x-ms-wmz',
        ),
      ),
      'woff' => array(
        't' => array(
          0 => 'font/woff',
        ),
      ),
      'woff2' => array(
        't' => array(
          0 => 'font/woff2',
        ),
      ),
      'wp' => array(
        't' => array(
          0 => 'application/vnd.wordperfect',
        ),
      ),
      'wp4' => array(
        't' => array(
          0 => 'application/vnd.wordperfect',
        ),
      ),
      'wp5' => array(
        't' => array(
          0 => 'application/wordperfect5.1',
          1 => 'application/vnd.wordperfect',
        ),
      ),
      'wp6' => array(
        't' => array(
          0 => 'application/vnd.wordperfect',
        ),
      ),
      'wpd' => array(
        't' => array(
          0 => 'application/wordperfect',
          1 => 'application/vnd.wordperfect',
        ),
      ),
      'wpg' => array(
        't' => array(
          0 => 'application/x-wpg',
        ),
      ),
      'wpl' => array(
        't' => array(
          0 => 'application/vnd.ms-wpl',
        ),
      ),
      'wpp' => array(
        't' => array(
          0 => 'application/vnd.wordperfect',
        ),
      ),
      'wps' => array(
        't' => array(
          0 => 'application/vnd.ms-works',
        ),
      ),
      'wqd' => array(
        't' => array(
          0 => 'application/vnd.wqd',
        ),
      ),
      'wri' => array(
        't' => array(
          0 => 'application/x-mswrite',
        ),
      ),
      'wrl' => array(
        't' => array(
          0 => 'x-world/x-vrml',
          1 => 'model/vrml',
        ),
      ),
      'ws' => array(
        't' => array(
          0 => 'application/x-wonderswan-rom',
        ),
      ),
      'wsc' => array(
        't' => array(
          0 => 'text/scriptlet',
          1 => 'application/x-wonderswan-color-rom',
        ),
      ),
      'wsdl' => array(
        't' => array(
          0 => 'application/wsdl+xml',
        ),
      ),
      'wsgi' => array(
        't' => array(
          0 => 'text/x-python',
        ),
      ),
      'wspolicy' => array(
        't' => array(
          0 => 'application/wspolicy+xml',
        ),
      ),
      'wtb' => array(
        't' => array(
          0 => 'application/vnd.webturbo',
        ),
      ),
      'wv' => array(
        't' => array(
          0 => 'audio/x-wavpack',
        ),
      ),
      'wvc' => array(
        't' => array(
          0 => 'audio/x-wavpack-correction',
        ),
      ),
      'wvp' => array(
        't' => array(
          0 => 'audio/x-wavpack',
        ),
      ),
      'wvx' => array(
        't' => array(
          0 => 'video/x-ms-wvx',
          1 => 'audio/x-ms-asx',
        ),
      ),
      'wwf' => array(
        't' => array(
          0 => 'application/x-wwf',
        ),
      ),
      'wz' => array(
        't' => array(
          0 => 'application/x-wingz',
        ),
      ),
      'x32' => array(
        't' => array(
          0 => 'application/x-authorware-bin',
        ),
      ),
      'x3d' => array(
        't' => array(
          0 => 'model/x3d+xml',
        ),
      ),
      'x3db' => array(
        't' => array(
          0 => 'model/x3d+binary',
        ),
      ),
      'x3dbz' => array(
        't' => array(
          0 => 'model/x3d+binary',
        ),
      ),
      'x3dv' => array(
        't' => array(
          0 => 'model/x3d+vrml',
        ),
      ),
      'x3dvz' => array(
        't' => array(
          0 => 'model/x3d+vrml',
        ),
      ),
      'x3dz' => array(
        't' => array(
          0 => 'model/x3d+xml',
        ),
      ),
      'x3f' => array(
        't' => array(
          0 => 'image/x-sigma-x3f',
        ),
      ),
      'xac' => array(
        't' => array(
          0 => 'application/x-gnucash',
        ),
      ),
      'xaml' => array(
        't' => array(
          0 => 'application/xaml+xml',
        ),
      ),
      'xap' => array(
        't' => array(
          0 => 'application/x-silverlight-app',
        ),
      ),
      'xar' => array(
        't' => array(
          0 => 'application/vnd.xara',
          1 => 'application/x-xar',
        ),
      ),
      'xbap' => array(
        't' => array(
          0 => 'application/x-ms-xbap',
        ),
      ),
      'xbd' => array(
        't' => array(
          0 => 'application/vnd.fujixerox.docuworks.binder',
        ),
      ),
      'xbel' => array(
        't' => array(
          0 => 'application/x-xbel',
        ),
      ),
      'xbl' => array(
        't' => array(
          0 => 'application/xml',
        ),
      ),
      'xbm' => array(
        't' => array(
          0 => 'image/x-xbitmap',
        ),
      ),
      'xcf' => array(
        't' => array(
          0 => 'application/x-xcf',
          1 => 'image/x-xcf',
        ),
      ),
      'xcf.bz2' => array(
        't' => array(
          0 => 'image/x-compressed-xcf',
        ),
      ),
      'xcf.gz' => array(
        't' => array(
          0 => 'image/x-compressed-xcf',
        ),
      ),
      'xdf' => array(
        't' => array(
          0 => 'application/xcap-diff+xml',
        ),
      ),
      'xdgapp' => array(
        't' => array(
          0 => 'application/vnd.flatpak',
        ),
      ),
      'xdm' => array(
        't' => array(
          0 => 'application/vnd.syncml.dm+xml',
        ),
      ),
      'xdp' => array(
        't' => array(
          0 => 'application/vnd.adobe.xdp+xml',
        ),
      ),
      'xdssc' => array(
        't' => array(
          0 => 'application/dssc+xml',
        ),
      ),
      'xdw' => array(
        't' => array(
          0 => 'application/vnd.fujixerox.docuworks',
        ),
      ),
      'xenc' => array(
        't' => array(
          0 => 'application/xenc+xml',
        ),
      ),
      'xer' => array(
        't' => array(
          0 => 'application/patch-ops-error+xml',
        ),
      ),
      'xfdf' => array(
        't' => array(
          0 => 'application/vnd.adobe.xfdf',
        ),
      ),
      'xfdl' => array(
        't' => array(
          0 => 'application/vnd.xfdl',
        ),
      ),
      'xhe' => array(
        't' => array(
          0 => 'audio/usac',
        ),
      ),
      'xht' => array(
        't' => array(
          0 => 'application/xhtml+xml',
        ),
      ),
      'xhtml' => array(
        't' => array(
          0 => 'application/xhtml+xml',
        ),
      ),
      'xhvml' => array(
        't' => array(
          0 => 'application/xv+xml',
        ),
      ),
      'xi' => array(
        't' => array(
          0 => 'audio/x-xi',
        ),
      ),
      'xif' => array(
        't' => array(
          0 => 'image/vnd.xiff',
        ),
      ),
      'xla' => array(
        't' => array(
          0 => 'application/vnd.ms-excel',
        ),
      ),
      'xlam' => array(
        't' => array(
          0 => 'application/vnd.ms-excel.addin.macroenabled.12',
        ),
      ),
      'xlb' => array(
        't' => array(
          0 => 'application/vnd.ms-excel',
        ),
      ),
      'xlc' => array(
        't' => array(
          0 => 'application/vnd.ms-excel',
        ),
      ),
      'xld' => array(
        't' => array(
          0 => 'application/vnd.ms-excel',
        ),
      ),
      'xlf' => array(
        't' => array(
          0 => 'application/x-xliff+xml',
          1 => 'application/xliff+xml',
        ),
      ),
      'xliff' => array(
        't' => array(
          0 => 'application/xliff+xml',
        ),
      ),
      'xll' => array(
        't' => array(
          0 => 'application/vnd.ms-excel',
        ),
      ),
      'xlm' => array(
        't' => array(
          0 => 'application/vnd.ms-excel',
        ),
      ),
      'xlr' => array(
        't' => array(
          0 => 'application/vnd.ms-works',
        ),
      ),
      'xls' => array(
        't' => array(
          0 => 'application/vnd.ms-excel',
        ),
      ),
      'xlsb' => array(
        't' => array(
          0 => 'application/vnd.ms-excel.sheet.binary.macroenabled.12',
        ),
      ),
      'xlsm' => array(
        't' => array(
          0 => 'application/vnd.ms-excel.sheet.macroenabled.12',
        ),
      ),
      'xlsx' => array(
        't' => array(
          0 => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
        ),
      ),
      'xlt' => array(
        't' => array(
          0 => 'application/vnd.ms-excel',
        ),
      ),
      'xltm' => array(
        't' => array(
          0 => 'application/vnd.ms-excel.template.macroenabled.12',
        ),
      ),
      'xltx' => array(
        't' => array(
          0 => 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',
        ),
      ),
      'xlw' => array(
        't' => array(
          0 => 'application/vnd.ms-excel',
        ),
      ),
      'xm' => array(
        't' => array(
          0 => 'audio/xm',
          1 => 'audio/x-xm',
        ),
      ),
      'xmf' => array(
        't' => array(
          0 => 'audio/x-xmf',
        ),
      ),
      'xmi' => array(
        't' => array(
          0 => 'text/x-xmi',
        ),
      ),
      'xml' => array(
        't' => array(
          0 => 'application/xml',
        ),
      ),
      'xo' => array(
        't' => array(
          0 => 'application/vnd.olpc-sugar',
        ),
      ),
      'xop' => array(
        't' => array(
          0 => 'application/xop+xml',
        ),
      ),
      'xpi' => array(
        't' => array(
          0 => 'application/x-xpinstall',
        ),
      ),
      'xpl' => array(
        't' => array(
          0 => 'application/xproc+xml',
        ),
      ),
      'xpm' => array(
        't' => array(
          0 => 'image/x-xpixmap',
        ),
      ),
      'xpr' => array(
        't' => array(
          0 => 'application/vnd.is-xpr',
        ),
      ),
      'xps' => array(
        't' => array(
          0 => 'application/vnd.ms-xpsdocument',
          1 => 'application/oxps',
        ),
      ),
      'xpw' => array(
        't' => array(
          0 => 'application/vnd.intercon.formnet',
        ),
      ),
      'xpx' => array(
        't' => array(
          0 => 'application/vnd.intercon.formnet',
        ),
      ),
      'xsd' => array(
        't' => array(
          0 => 'application/xml',
        ),
      ),
      'xsl' => array(
        't' => array(
          0 => 'application/xml',
          1 => 'application/xslt+xml',
        ),
      ),
      'xslfo' => array(
        't' => array(
          0 => 'text/x-xslfo',
        ),
      ),
      'xslt' => array(
        't' => array(
          0 => 'application/xslt+xml',
        ),
      ),
      'xsm' => array(
        't' => array(
          0 => 'application/vnd.syncml+xml',
        ),
      ),
      'xspf' => array(
        't' => array(
          0 => 'application/xspf+xml',
        ),
      ),
      'xtel' => array(
        't' => array(
          0 => 'chemical/x-xtel',
        ),
      ),
      'xul' => array(
        't' => array(
          0 => 'application/vnd.mozilla.xul+xml',
        ),
      ),
      'xvm' => array(
        't' => array(
          0 => 'application/xv+xml',
        ),
      ),
      'xvml' => array(
        't' => array(
          0 => 'application/xv+xml',
        ),
      ),
      'xwd' => array(
        't' => array(
          0 => 'image/x-xwindowdump',
        ),
      ),
      'xyz' => array(
        't' => array(
          0 => 'chemical/x-xyz',
        ),
      ),
      'xz' => array(
        't' => array(
          0 => 'application/x-xz',
        ),
      ),
      'yaml' => array(
        't' => array(
          0 => 'application/x-yaml',
        ),
      ),
      'yang' => array(
        't' => array(
          0 => 'application/yang',
        ),
      ),
      'yin' => array(
        't' => array(
          0 => 'application/yin+xml',
        ),
      ),
      'yml' => array(
        't' => array(
          0 => 'application/x-yaml',
        ),
      ),
      'yt' => array(
        't' => array(
          0 => 'application/vnd.youtube.yt',
        ),
      ),
      'z' => array(
        't' => array(
          0 => 'application/x-compress',
        ),
      ),
      'z1' => array(
        't' => array(
          0 => 'application/x-zmachine',
        ),
      ),
      'z2' => array(
        't' => array(
          0 => 'application/x-zmachine',
        ),
      ),
      'z3' => array(
        't' => array(
          0 => 'application/x-zmachine',
        ),
      ),
      'z4' => array(
        't' => array(
          0 => 'application/x-zmachine',
        ),
      ),
      'z5' => array(
        't' => array(
          0 => 'application/x-zmachine',
        ),
      ),
      'z6' => array(
        't' => array(
          0 => 'application/x-zmachine',
        ),
      ),
      'z64' => array(
        't' => array(
          0 => 'application/x-n64-rom',
        ),
      ),
      'z7' => array(
        't' => array(
          0 => 'application/x-zmachine',
        ),
      ),
      'z8' => array(
        't' => array(
          0 => 'application/x-zmachine',
        ),
      ),
      'zabw' => array(
        't' => array(
          0 => 'application/x-abiword',
        ),
      ),
      'zaz' => array(
        't' => array(
          0 => 'application/vnd.zzazz.deck+xml',
        ),
      ),
      'zip' => array(
        't' => array(
          0 => 'application/zip',
        ),
      ),
      'zir' => array(
        't' => array(
          0 => 'application/vnd.zul',
        ),
      ),
      'zirz' => array(
        't' => array(
          0 => 'application/vnd.zul',
        ),
      ),
      'zmm' => array(
        't' => array(
          0 => 'application/vnd.handheld-entertainment+xml',
        ),
      ),
      'zmt' => array(
        't' => array(
          0 => 'chemical/x-mopac-input',
        ),
      ),
      'zoo' => array(
        't' => array(
          0 => 'application/x-zoo',
        ),
      ),
      'zsav' => array(
        't' => array(
          0 => 'application/x-spss-sav',
        ),
      ),
      'zst' => array(
        't' => array(
          0 => 'application/zstd',
        ),
      ),
      'zz' => array(
        't' => array(
          0 => 'application/zlib',
        ),
      ),
      '~' => array(
        't' => array(
          0 => 'application/x-trash',
        ),
      ),
      123 => array(
        't' => array(
          0 => 'application/vnd.lotus-1-2-3',
        ),
      ),
      323 => array(
        't' => array(
          0 => 'text/h323',
        ),
      ),
      602 => array(
        't' => array(
          0 => 'application/x-t602',
        ),
      ),
      669 => array(
        't' => array(
          0 => 'audio/x-mod',
        ),
      ),
    ),
    'a' => array(
      'application/acrobat' => array(
        't' => array(
          0 => 'application/pdf',
        ),
      ),
      'application/atom' => array(
        'e' => array(
          0 => 'atom',
        ),
        't' => array(
          0 => 'application/atom+xml',
        ),
      ),
      'application/bzip2' => array(
        't' => array(
          0 => 'application/x-bzip',
        ),
      ),
      'application/cap' => array(
        'e' => array(
          0 => 'cap',
          1 => 'pcap',
        ),
        't' => array(
          0 => 'application/vnd.tcpdump.pcap',
        ),
      ),
      'application/cdr' => array(
        't' => array(
          0 => 'application/vnd.corel-draw',
        ),
      ),
      'application/coreldraw' => array(
        't' => array(
          0 => 'application/vnd.corel-draw',
        ),
      ),
      'application/dbase' => array(
        't' => array(
          0 => 'application/x-dbf',
        ),
      ),
      'application/dbf' => array(
        't' => array(
          0 => 'application/x-dbf',
        ),
      ),
      'application/docbook+xml' => array(
        't' => array(
          0 => 'application/x-docbook+xml',
        ),
      ),
      'application/emf' => array(
        't' => array(
          0 => 'image/emf',
        ),
      ),
      'application/font-woff' => array(
        't' => array(
          0 => 'font/woff',
        ),
      ),
      'application/futuresplash' => array(
        't' => array(
          0 => 'application/vnd.adobe.flash.movie',
        ),
      ),
      'application/gpx' => array(
        't' => array(
          0 => 'application/gpx+xml',
        ),
      ),
      'application/ico' => array(
        't' => array(
          0 => 'image/vnd.microsoft.icon',
        ),
      ),
      'application/ics' => array(
        't' => array(
          0 => 'text/calendar',
        ),
      ),
      'application/java' => array(
        't' => array(
          0 => 'application/x-java',
        ),
      ),
      'application/java-archive' => array(
        'e' => array(
          0 => 'jar',
        ),
        't' => array(
          0 => 'application/x-java-archive',
        ),
      ),
      'application/java-byte-code' => array(
        't' => array(
          0 => 'application/x-java',
        ),
      ),
      'application/java-vm' => array(
        'e' => array(
          0 => 'class',
        ),
        't' => array(
          0 => 'application/x-java',
        ),
      ),
      'application/lotus123' => array(
        't' => array(
          0 => 'application/vnd.lotus-1-2-3',
        ),
      ),
      'application/m3u' => array(
        't' => array(
          0 => 'audio/x-mpegurl',
        ),
      ),
      'application/mdb' => array(
        't' => array(
          0 => 'application/vnd.ms-access',
        ),
      ),
      'application/ms-tnef' => array(
        't' => array(
          0 => 'application/vnd.ms-tnef',
        ),
      ),
      'application/msaccess' => array(
        'e' => array(
          0 => 'mdb',
        ),
        't' => array(
          0 => 'application/vnd.ms-access',
        ),
      ),
      'application/msexcel' => array(
        't' => array(
          0 => 'application/vnd.ms-excel',
        ),
      ),
      'application/mspowerpoint' => array(
        't' => array(
          0 => 'application/vnd.ms-powerpoint',
        ),
      ),
      'application/nappdf' => array(
        't' => array(
          0 => 'application/pdf',
        ),
      ),
      'application/pcap' => array(
        't' => array(
          0 => 'application/vnd.tcpdump.pcap',
        ),
      ),
      'application/pgp' => array(
        't' => array(
          0 => 'application/pgp-encrypted',
        ),
      ),
      'application/photoshop' => array(
        't' => array(
          0 => 'image/vnd.adobe.photoshop',
        ),
      ),
      'application/pls' => array(
        't' => array(
          0 => 'audio/x-scpls',
        ),
      ),
      'application/powerpoint' => array(
        't' => array(
          0 => 'application/vnd.ms-powerpoint',
        ),
      ),
      'application/rar' => array(
        'e' => array(
          0 => 'rar',
        ),
        't' => array(
          0 => 'application/vnd.rar',
        ),
      ),
      'application/smil' => array(
        'e' => array(
          0 => 'smi',
          1 => 'smil',
        ),
        't' => array(
          0 => 'application/smil+xml',
        ),
      ),
      'application/stuffit' => array(
        't' => array(
          0 => 'application/x-stuffit',
        ),
      ),
      'application/vnd.adobe.illustrator' => array(
        't' => array(
          0 => 'application/illustrator',
        ),
      ),
      'application/vnd.apple.keynote' => array(
        't' => array(
          0 => 'application/x-iwork-keynote-sffkey',
        ),
      ),
      'application/vnd.geo+json' => array(
        't' => array(
          0 => 'application/geo+json',
        ),
      ),
      'application/vnd.haansoft-hwp' => array(
        't' => array(
          0 => 'application/x-hwp',
        ),
      ),
      'application/vnd.haansoft-hwt' => array(
        't' => array(
          0 => 'application/x-hwt',
        ),
      ),
      'application/vnd.ms-word' => array(
        't' => array(
          0 => 'application/msword',
        ),
      ),
      'application/vnd.ms-xpsdocument' => array(
        'e' => array(
          0 => 'xps',
        ),
        't' => array(
          0 => 'application/oxps',
        ),
      ),
      'application/vnd.msaccess' => array(
        't' => array(
          0 => 'application/vnd.ms-access',
        ),
      ),
      'application/vnd.oasis.docbook+xml' => array(
        't' => array(
          0 => 'application/x-docbook+xml',
        ),
      ),
      'application/vnd.rn-realmedia-vbr' => array(
        't' => array(
          0 => 'application/vnd.rn-realmedia',
        ),
      ),
      'application/vnd.sdp' => array(
        't' => array(
          0 => 'application/sdp',
        ),
      ),
      'application/vnd.smaf' => array(
        'e' => array(
          0 => 'mmf',
        ),
        't' => array(
          0 => 'application/x-smaf',
        ),
      ),
      'application/vnd.stardivision.writer-global' => array(
        'e' => array(
          0 => 'sgl',
        ),
        't' => array(
          0 => 'application/vnd.stardivision.writer',
        ),
      ),
      'application/vnd.sun.xml.base' => array(
        't' => array(
          0 => 'application/vnd.oasis.opendocument.database',
        ),
      ),
      'application/vnd.xdgapp' => array(
        't' => array(
          0 => 'application/vnd.flatpak',
        ),
      ),
      'application/wk1' => array(
        't' => array(
          0 => 'application/vnd.lotus-1-2-3',
        ),
      ),
      'application/wmf' => array(
        't' => array(
          0 => 'image/wmf',
        ),
      ),
      'application/wordperfect' => array(
        'e' => array(
          0 => 'wpd',
        ),
        't' => array(
          0 => 'application/vnd.wordperfect',
        ),
      ),
      'application/wwf' => array(
        't' => array(
          0 => 'application/x-wwf',
        ),
      ),
      'application/x-123' => array(
        'e' => array(
          0 => 'wk',
        ),
        't' => array(
          0 => 'application/vnd.lotus-1-2-3',
        ),
      ),
      'application/x-annodex' => array(
        't' => array(
          0 => 'application/annodex',
        ),
      ),
      'application/x-bzip2' => array(
        't' => array(
          0 => 'application/x-bzip',
        ),
      ),
      'application/x-cab' => array(
        'e' => array(
          0 => 'cab',
        ),
        't' => array(
          0 => 'application/vnd.ms-cab-compressed',
        ),
      ),
      'application/x-cbr' => array(
        'e' => array(
          0 => 'cbr',
        ),
        't' => array(
          0 => 'application/vnd.comicbook-rar',
        ),
      ),
      'application/x-cbz' => array(
        'e' => array(
          0 => 'cbz',
        ),
        't' => array(
          0 => 'application/vnd.comicbook+zip',
        ),
      ),
      'application/x-cdf' => array(
        'e' => array(
          0 => 'cdf',
        ),
        't' => array(
          0 => 'application/x-netcdf',
        ),
      ),
      'application/x-cdr' => array(
        't' => array(
          0 => 'application/vnd.corel-draw',
        ),
      ),
      'application/x-chess-pgn' => array(
        'e' => array(
          0 => 'pgn',
        ),
        't' => array(
          0 => 'application/vnd.chess-pgn',
        ),
      ),
      'application/x-chm' => array(
        't' => array(
          0 => 'application/vnd.ms-htmlhelp',
        ),
      ),
      'application/x-coreldraw' => array(
        't' => array(
          0 => 'application/vnd.corel-draw',
        ),
      ),
      'application/x-dbase' => array(
        't' => array(
          0 => 'application/x-dbf',
        ),
      ),
      'application/x-deb' => array(
        't' => array(
          0 => 'application/vnd.debian.binary-package',
        ),
      ),
      'application/x-debian-package' => array(
        'e' => array(
          0 => 'deb',
          1 => 'udeb',
        ),
        't' => array(
          0 => 'application/vnd.debian.binary-package',
        ),
      ),
      'application/x-emf' => array(
        't' => array(
          0 => 'image/emf',
        ),
      ),
      'application/x-fd-file' => array(
        't' => array(
          0 => 'application/x-raw-floppy-disk-image',
        ),
      ),
      'application/x-fictionbook' => array(
        't' => array(
          0 => 'application/x-fictionbook+xml',
        ),
      ),
      'application/x-flac' => array(
        'e' => array(
          0 => 'flac',
        ),
        't' => array(
          0 => 'audio/flac',
        ),
      ),
      'application/x-flash-video' => array(
        't' => array(
          0 => 'video/x-flv',
        ),
      ),
      'application/x-font' => array(
        'e' => array(
          0 => 'gsf',
          1 => 'pcf',
          2 => 'pcf.z',
          3 => 'pfa',
          4 => 'pfb',
        ),
        't' => array(
          0 => 'application/x-font-ghostscript',
        ),
      ),
      'application/x-font-otf' => array(
        't' => array(
          0 => 'font/otf',
        ),
      ),
      'application/x-font-ttf' => array(
        't' => array(
          0 => 'font/ttf',
        ),
      ),
      'application/x-frame' => array(
        't' => array(
          0 => 'application/vnd.framemaker',
        ),
      ),
      'application/x-gamecube-iso-image' => array(
        't' => array(
          0 => 'application/x-gamecube-rom',
        ),
      ),
      'application/x-gettext' => array(
        't' => array(
          0 => 'text/x-gettext-translation',
        ),
      ),
      'application/x-gnome-app-info' => array(
        't' => array(
          0 => 'application/x-desktop',
        ),
      ),
      'application/x-gpx' => array(
        't' => array(
          0 => 'application/gpx+xml',
        ),
      ),
      'application/x-gpx+xml' => array(
        't' => array(
          0 => 'application/gpx+xml',
        ),
      ),
      'application/x-gtar' => array(
        'e' => array(
          0 => 'gtar',
          1 => 'taz',
          2 => 'tgz',
        ),
        't' => array(
          0 => 'application/x-tar',
        ),
      ),
      'application/x-gzip' => array(
        't' => array(
          0 => 'application/gzip',
        ),
      ),
      'application/x-hfe-file' => array(
        't' => array(
          0 => 'application/x-hfe-floppy-image',
        ),
      ),
      'application/x-httpd-php-source' => array(
        'e' => array(
          0 => 'phps',
        ),
        't' => array(
          0 => 'application/x-httpd-php',
        ),
      ),
      'application/x-httpd-php3' => array(
        'e' => array(
          0 => 'php3',
        ),
        't' => array(
          0 => 'application/x-httpd-php',
        ),
      ),
      'application/x-httpd-php4' => array(
        'e' => array(
          0 => 'php4',
        ),
        't' => array(
          0 => 'application/x-httpd-php',
        ),
      ),
      'application/x-iso9660-image' => array(
        'e' => array(
          0 => 'iso',
        ),
        't' => array(
          0 => 'application/x-cd-image',
        ),
      ),
      'application/x-jar' => array(
        't' => array(
          0 => 'application/x-java-archive',
        ),
      ),
      'application/x-java-class' => array(
        't' => array(
          0 => 'application/x-java',
        ),
      ),
      'application/x-java-vm' => array(
        't' => array(
          0 => 'application/x-java',
        ),
      ),
      'application/x-javascript' => array(
        't' => array(
          0 => 'application/javascript',
        ),
      ),
      'application/x-kexiproject-sqlite' => array(
        't' => array(
          0 => 'application/x-kexiproject-sqlite3',
        ),
      ),
      'application/x-koan' => array(
        'e' => array(
          0 => 'skd',
          1 => 'skm',
          2 => 'skp',
          3 => 'skt',
        ),
        't' => array(
          0 => 'application/vnd.koan',
        ),
      ),
      'application/x-linguist' => array(
        't' => array(
          0 => 'text/vnd.qt.linguist',
        ),
      ),
      'application/x-lotus123' => array(
        't' => array(
          0 => 'application/vnd.lotus-1-2-3',
        ),
      ),
      'application/x-lzh' => array(
        'e' => array(
          0 => 'lzh',
        ),
        't' => array(
          0 => 'application/x-lha',
        ),
      ),
      'application/x-lzh-compressed' => array(
        't' => array(
          0 => 'application/x-lha',
        ),
      ),
      'application/x-mathematica' => array(
        't' => array(
          0 => 'application/mathematica',
        ),
      ),
      'application/x-mdb' => array(
        't' => array(
          0 => 'application/vnd.ms-access',
        ),
      ),
      'application/x-mobi8-ebook' => array(
        't' => array(
          0 => 'application/vnd.amazon.mobi8-ebook',
        ),
      ),
      'application/x-ms-asx' => array(
        't' => array(
          0 => 'audio/x-ms-asx',
        ),
      ),
      'application/x-msaccess' => array(
        't' => array(
          0 => 'application/vnd.ms-access',
        ),
      ),
      'application/x-msexcel' => array(
        't' => array(
          0 => 'application/vnd.ms-excel',
        ),
      ),
      'application/x-msmetafile' => array(
        't' => array(
          0 => 'image/wmf',
        ),
      ),
      'application/x-mspowerpoint' => array(
        't' => array(
          0 => 'application/vnd.ms-powerpoint',
        ),
      ),
      'application/x-msword' => array(
        't' => array(
          0 => 'application/msword',
        ),
      ),
      'application/x-ogg' => array(
        't' => array(
          0 => 'application/ogg',
        ),
      ),
      'application/x-palm-database' => array(
        't' => array(
          0 => 'application/vnd.palm',
        ),
      ),
      'application/x-pcap' => array(
        't' => array(
          0 => 'application/vnd.tcpdump.pcap',
        ),
      ),
      'application/x-pdf' => array(
        't' => array(
          0 => 'application/pdf',
        ),
      ),
      'application/x-photoshop' => array(
        't' => array(
          0 => 'image/vnd.adobe.photoshop',
        ),
      ),
      'application/x-pkcs12' => array(
        't' => array(
          0 => 'application/pkcs12',
        ),
      ),
      'application/x-pkcs7-crl' => array(
        'e' => array(
          0 => 'crl',
        ),
        't' => array(
          0 => 'application/pkix-crl',
        ),
      ),
      'application/x-python-code' => array(
        'e' => array(
          0 => 'pyc',
          1 => 'pyo',
        ),
        't' => array(
          0 => 'application/x-python-bytecode',
        ),
      ),
      'application/x-quicktimeplayer' => array(
        'e' => array(
          0 => 'qtl',
        ),
        't' => array(
          0 => 'application/x-quicktime-media-link',
        ),
      ),
      'application/x-rar' => array(
        't' => array(
          0 => 'application/vnd.rar',
        ),
      ),
      'application/x-rar-compressed' => array(
        't' => array(
          0 => 'application/vnd.rar',
        ),
      ),
      'application/x-redhat-package-manager' => array(
        'e' => array(
          0 => 'rpm',
        ),
        't' => array(
          0 => 'application/x-rpm',
        ),
      ),
      'application/x-reject' => array(
        't' => array(
          0 => 'text/x-reject',
        ),
      ),
      'application/x-rnc' => array(
        't' => array(
          0 => 'application/relax-ng-compact-syntax',
        ),
      ),
      'application/x-sap-file' => array(
        't' => array(
          0 => 'application/x-thomson-sap-image',
        ),
      ),
      'application/x-sdp' => array(
        't' => array(
          0 => 'application/sdp',
        ),
      ),
      'application/x-shockwave-flash' => array(
        'e' => array(
          0 => 'swf',
          1 => 'swfl',
        ),
        't' => array(
          0 => 'application/vnd.adobe.flash.movie',
        ),
      ),
      'application/x-sit' => array(
        't' => array(
          0 => 'application/x-stuffit',
        ),
      ),
      'application/x-snes-rom' => array(
        't' => array(
          0 => 'application/vnd.nintendo.snes.rom',
        ),
      ),
      'application/x-spss-savefile' => array(
        't' => array(
          0 => 'application/x-spss-sav',
        ),
      ),
      'application/x-sqlite3' => array(
        't' => array(
          0 => 'application/vnd.sqlite3',
        ),
      ),
      'application/x-srt' => array(
        't' => array(
          0 => 'application/x-subrip',
        ),
      ),
      'application/x-tex' => array(
        't' => array(
          0 => 'text/x-tex',
        ),
      ),
      'application/x-trig' => array(
        't' => array(
          0 => 'application/trig',
        ),
      ),
      'application/x-troff' => array(
        'e' => array(
          0 => 'roff',
          1 => 't',
          2 => 'tr',
        ),
        't' => array(
          0 => 'text/troff',
        ),
      ),
      'application/x-troff-me' => array(
        'e' => array(
          0 => 'me',
        ),
        't' => array(
          0 => 'text/troff',
        ),
      ),
      'application/x-troff-ms' => array(
        'e' => array(
          0 => 'ms',
        ),
        't' => array(
          0 => 'text/troff',
        ),
      ),
      'application/x-vnd.kde.kexi' => array(
        't' => array(
          0 => 'application/x-kexiproject-sqlite3',
        ),
      ),
      'application/x-wbfs' => array(
        't' => array(
          0 => 'application/x-wii-rom',
        ),
      ),
      'application/x-wia' => array(
        't' => array(
          0 => 'application/x-wii-rom',
        ),
      ),
      'application/x-wii-iso-image' => array(
        't' => array(
          0 => 'application/x-wii-rom',
        ),
      ),
      'application/x-wmf' => array(
        't' => array(
          0 => 'image/wmf',
        ),
      ),
      'application/x-wordperfect' => array(
        't' => array(
          0 => 'application/vnd.wordperfect',
        ),
      ),
      'application/x-xcf' => array(
        'e' => array(
          0 => 'xcf',
        ),
        't' => array(
          0 => 'image/x-xcf',
        ),
      ),
      'application/x-xliff' => array(
        't' => array(
          0 => 'application/xliff+xml',
        ),
      ),
      'application/x-xspf+xml' => array(
        't' => array(
          0 => 'application/xspf+xml',
        ),
      ),
      'application/x-zip' => array(
        't' => array(
          0 => 'application/zip',
        ),
      ),
      'application/x-zip-compressed' => array(
        't' => array(
          0 => 'application/zip',
        ),
      ),
      'application/xps' => array(
        't' => array(
          0 => 'application/oxps',
        ),
      ),
      'audio/3gpp' => array(
        't' => array(
          0 => 'video/3gpp',
        ),
      ),
      'audio/3gpp-encrypted' => array(
        't' => array(
          0 => 'video/3gpp',
        ),
      ),
      'audio/3gpp2' => array(
        't' => array(
          0 => 'video/3gpp2',
        ),
      ),
      'audio/amr-encrypted' => array(
        't' => array(
          0 => 'audio/amr',
        ),
      ),
      'audio/amr-wb-encrypted' => array(
        't' => array(
          0 => 'audio/amr-wb',
        ),
      ),
      'audio/imelody' => array(
        't' => array(
          0 => 'text/x-imelody',
        ),
      ),
      'audio/m3u' => array(
        't' => array(
          0 => 'audio/x-mpegurl',
        ),
      ),
      'audio/m4a' => array(
        't' => array(
          0 => 'audio/mp4',
        ),
      ),
      'audio/mobile-xmf' => array(
        't' => array(
          0 => 'audio/x-xmf',
        ),
      ),
      'audio/mp3' => array(
        't' => array(
          0 => 'audio/mpeg',
        ),
      ),
      'audio/mpegurl' => array(
        't' => array(
          0 => 'audio/x-mpegurl',
        ),
      ),
      'audio/scpls' => array(
        't' => array(
          0 => 'audio/x-scpls',
        ),
      ),
      'audio/tta' => array(
        't' => array(
          0 => 'audio/x-tta',
        ),
      ),
      'audio/vnd.audible' => array(
        't' => array(
          0 => 'audio/x-pn-audibleaudio',
        ),
      ),
      'audio/vnd.m-realaudio' => array(
        't' => array(
          0 => 'audio/vnd.rn-realaudio',
        ),
      ),
      'audio/vnd.wave' => array(
        't' => array(
          0 => 'audio/x-wav',
        ),
      ),
      'audio/vorbis' => array(
        't' => array(
          0 => 'audio/x-vorbis+ogg',
        ),
      ),
      'audio/wav' => array(
        't' => array(
          0 => 'audio/x-wav',
        ),
      ),
      'audio/wma' => array(
        't' => array(
          0 => 'audio/x-ms-wma',
        ),
      ),
      'audio/x-aac' => array(
        't' => array(
          0 => 'audio/aac',
        ),
      ),
      'audio/x-aiffc' => array(
        't' => array(
          0 => 'audio/x-aifc',
        ),
      ),
      'audio/x-annodex' => array(
        't' => array(
          0 => 'audio/annodex',
        ),
      ),
      'audio/x-dts' => array(
        't' => array(
          0 => 'audio/vnd.dts',
        ),
      ),
      'audio/x-dtshd' => array(
        't' => array(
          0 => 'audio/vnd.dts.hd',
        ),
      ),
      'audio/x-flac' => array(
        't' => array(
          0 => 'audio/flac',
        ),
      ),
      'audio/x-imelody' => array(
        't' => array(
          0 => 'text/x-imelody',
        ),
      ),
      'audio/x-m3u' => array(
        't' => array(
          0 => 'audio/x-mpegurl',
        ),
      ),
      'audio/x-m4a' => array(
        't' => array(
          0 => 'audio/mp4',
        ),
      ),
      'audio/x-midi' => array(
        't' => array(
          0 => 'audio/midi',
        ),
      ),
      'audio/x-mp2' => array(
        't' => array(
          0 => 'audio/mp2',
        ),
      ),
      'audio/x-mp3' => array(
        't' => array(
          0 => 'audio/mpeg',
        ),
      ),
      'audio/x-mp3-playlist' => array(
        't' => array(
          0 => 'audio/x-mpegurl',
        ),
      ),
      'audio/x-mpeg' => array(
        't' => array(
          0 => 'audio/mpeg',
        ),
      ),
      'audio/x-mpg' => array(
        't' => array(
          0 => 'audio/mpeg',
        ),
      ),
      'audio/x-ogg' => array(
        't' => array(
          0 => 'audio/ogg',
        ),
      ),
      'audio/x-oggflac' => array(
        't' => array(
          0 => 'audio/x-flac+ogg',
        ),
      ),
      'audio/x-pn-realaudio' => array(
        'e' => array(
          0 => 'ram',
          1 => 'rm',
        ),
        't' => array(
          0 => 'audio/vnd.rn-realaudio',
        ),
      ),
      'audio/x-realaudio' => array(
        'e' => array(
          0 => 'ra',
        ),
        't' => array(
          0 => 'audio/vnd.rn-realaudio',
        ),
      ),
      'audio/x-rn-3gpp-amr' => array(
        't' => array(
          0 => 'video/3gpp',
        ),
      ),
      'audio/x-rn-3gpp-amr-encrypted' => array(
        't' => array(
          0 => 'video/3gpp',
        ),
      ),
      'audio/x-rn-3gpp-amr-wb' => array(
        't' => array(
          0 => 'video/3gpp',
        ),
      ),
      'audio/x-rn-3gpp-amr-wb-encrypted' => array(
        't' => array(
          0 => 'video/3gpp',
        ),
      ),
      'audio/x-shorten' => array(
        't' => array(
          0 => 'application/x-shorten',
        ),
      ),
      'audio/x-vorbis' => array(
        't' => array(
          0 => 'audio/x-vorbis+ogg',
        ),
      ),
      'audio/xmf' => array(
        't' => array(
          0 => 'audio/x-xmf',
        ),
      ),
      'flv-application/octet-stream' => array(
        't' => array(
          0 => 'video/x-flv',
        ),
      ),
      'image/cdr' => array(
        't' => array(
          0 => 'application/vnd.corel-draw',
        ),
      ),
      'image/g3fax' => array(
        't' => array(
          0 => 'image/fax-g3',
        ),
      ),
      'image/heic' => array(
        't' => array(
          0 => 'image/heif',
        ),
      ),
      'image/heic-sequence' => array(
        't' => array(
          0 => 'image/heif',
        ),
      ),
      'image/heif-sequence' => array(
        't' => array(
          0 => 'image/heif',
        ),
      ),
      'image/ico' => array(
        't' => array(
          0 => 'image/vnd.microsoft.icon',
        ),
      ),
      'image/icon' => array(
        't' => array(
          0 => 'image/vnd.microsoft.icon',
        ),
      ),
      'image/jpeg2000' => array(
        't' => array(
          0 => 'image/jp2',
        ),
      ),
      'image/jpeg2000-image' => array(
        't' => array(
          0 => 'image/jp2',
        ),
      ),
      'image/pcx' => array(
        'e' => array(
          0 => 'pcx',
        ),
        't' => array(
          0 => 'image/vnd.zbrush.pcx',
        ),
      ),
      'image/pdf' => array(
        't' => array(
          0 => 'application/pdf',
        ),
      ),
      'image/photoshop' => array(
        't' => array(
          0 => 'image/vnd.adobe.photoshop',
        ),
      ),
      'image/pjpeg' => array(
        't' => array(
          0 => 'image/jpeg',
        ),
      ),
      'image/psd' => array(
        't' => array(
          0 => 'image/vnd.adobe.photoshop',
        ),
      ),
      'image/x-bmp' => array(
        't' => array(
          0 => 'image/bmp',
        ),
      ),
      'image/x-cdr' => array(
        't' => array(
          0 => 'application/vnd.corel-draw',
        ),
      ),
      'image/x-coreldraw' => array(
        'e' => array(
          0 => 'cdr',
        ),
        't' => array(
          0 => 'application/vnd.corel-draw',
        ),
      ),
      'image/x-djvu' => array(
        't' => array(
          0 => 'image/vnd.djvu',
        ),
      ),
      'image/x-emf' => array(
        't' => array(
          0 => 'image/emf',
        ),
      ),
      'image/x-fits' => array(
        't' => array(
          0 => 'image/fits',
        ),
      ),
      'image/x-icb' => array(
        't' => array(
          0 => 'image/x-tga',
        ),
      ),
      'image/x-ico' => array(
        't' => array(
          0 => 'image/vnd.microsoft.icon',
        ),
      ),
      'image/x-icon' => array(
        't' => array(
          0 => 'image/vnd.microsoft.icon',
        ),
      ),
      'image/x-iff' => array(
        't' => array(
          0 => 'image/x-ilbm',
        ),
      ),
      'image/x-jpeg2000-image' => array(
        't' => array(
          0 => 'image/jp2',
        ),
      ),
      'image/x-ms-bmp' => array(
        'e' => array(
          0 => 'bmp',
        ),
        't' => array(
          0 => 'image/bmp',
        ),
      ),
      'image/x-panasonic-raw' => array(
        't' => array(
          0 => 'image/x-panasonic-rw',
        ),
      ),
      'image/x-panasonic-raw2' => array(
        't' => array(
          0 => 'image/x-panasonic-rw2',
        ),
      ),
      'image/x-pcx' => array(
        't' => array(
          0 => 'image/vnd.zbrush.pcx',
        ),
      ),
      'image/x-photoshop' => array(
        'e' => array(
          0 => 'psd',
        ),
        't' => array(
          0 => 'image/vnd.adobe.photoshop',
        ),
      ),
      'image/x-psd' => array(
        't' => array(
          0 => 'image/vnd.adobe.photoshop',
        ),
      ),
      'image/x-win-metafile' => array(
        't' => array(
          0 => 'image/wmf',
        ),
      ),
      'image/x-wmf' => array(
        't' => array(
          0 => 'image/wmf',
        ),
      ),
      'image/x-xpm' => array(
        't' => array(
          0 => 'image/x-xpixmap',
        ),
      ),
      'image/x.djvu' => array(
        't' => array(
          0 => 'image/vnd.djvu',
        ),
      ),
      'model/x.stl-ascii' => array(
        't' => array(
          0 => 'model/stl',
        ),
      ),
      'model/x.stl-binary' => array(
        't' => array(
          0 => 'model/stl',
        ),
      ),
      'text/directory' => array(
        't' => array(
          0 => 'text/vcard',
        ),
      ),
      'text/ecmascript' => array(
        't' => array(
          0 => 'application/ecmascript',
        ),
      ),
      'text/gedcom' => array(
        't' => array(
          0 => 'application/x-gedcom',
        ),
      ),
      'text/google-video-pointer' => array(
        't' => array(
          0 => 'text/x-google-video-pointer',
        ),
      ),
      'text/ico' => array(
        't' => array(
          0 => 'image/vnd.microsoft.icon',
        ),
      ),
      'text/javascript' => array(
        't' => array(
          0 => 'application/javascript',
        ),
      ),
      'text/mathml' => array(
        'e' => array(
          0 => 'mml',
        ),
        't' => array(
          0 => 'application/mathml+xml',
        ),
      ),
      'text/rdf' => array(
        't' => array(
          0 => 'application/rdf+xml',
        ),
      ),
      'text/rss' => array(
        't' => array(
          0 => 'application/rss+xml',
        ),
      ),
      'text/rtf' => array(
        't' => array(
          0 => 'application/rtf',
        ),
      ),
      'text/vbs' => array(
        't' => array(
          0 => 'text/vbscript',
        ),
      ),
      'text/vnd.trolltech.linguist' => array(
        't' => array(
          0 => 'text/vnd.qt.linguist',
        ),
      ),
      'text/x-c' => array(
        't' => array(
          0 => 'text/x-csrc',
        ),
      ),
      'text/x-comma-separated-values' => array(
        't' => array(
          0 => 'text/csv',
        ),
      ),
      'text/x-csh' => array(
        'e' => array(
          0 => 'csh',
        ),
        't' => array(
          0 => 'application/x-csh',
        ),
      ),
      'text/x-csv' => array(
        't' => array(
          0 => 'text/csv',
        ),
      ),
      'text/x-diff' => array(
        'e' => array(
          0 => 'diff',
          1 => 'patch',
        ),
        't' => array(
          0 => 'text/x-patch',
        ),
      ),
      'text/x-dtd' => array(
        't' => array(
          0 => 'application/xml-dtd',
        ),
      ),
      'text/x-lyx' => array(
        't' => array(
          0 => 'application/x-lyx',
        ),
      ),
      'text/x-markdown' => array(
        't' => array(
          0 => 'text/markdown',
        ),
      ),
      'text/x-octave' => array(
        't' => array(
          0 => 'text/x-matlab',
        ),
      ),
      'text/x-opml' => array(
        't' => array(
          0 => 'text/x-opml+xml',
        ),
      ),
      'text/x-perl' => array(
        'e' => array(
          0 => 'pl',
          1 => 'pm',
        ),
        't' => array(
          0 => 'application/x-perl',
        ),
      ),
      'text/x-po' => array(
        't' => array(
          0 => 'text/x-gettext-translation',
        ),
      ),
      'text/x-pot' => array(
        't' => array(
          0 => 'text/x-gettext-translation-template',
        ),
      ),
      'text/x-sh' => array(
        'e' => array(
          0 => 'sh',
        ),
        't' => array(
          0 => 'application/x-shellscript',
        ),
      ),
      'text/x-sql' => array(
        't' => array(
          0 => 'application/sql',
        ),
      ),
      'text/x-tcl' => array(
        'e' => array(
          0 => 'tcl',
          1 => 'tk',
        ),
        't' => array(
          0 => 'text/tcl',
        ),
      ),
      'text/x-troff' => array(
        't' => array(
          0 => 'text/troff',
        ),
      ),
      'text/x-vcalendar' => array(
        'e' => array(
          0 => 'vcs',
        ),
        't' => array(
          0 => 'text/calendar',
        ),
      ),
      'text/x-vcard' => array(
        'e' => array(
          0 => 'vcf',
        ),
        't' => array(
          0 => 'text/vcard',
        ),
      ),
      'text/x-yaml' => array(
        't' => array(
          0 => 'application/x-yaml',
        ),
      ),
      'text/xml' => array(
        't' => array(
          0 => 'application/xml',
        ),
      ),
      'text/xml-external-parsed-entity' => array(
        't' => array(
          0 => 'application/xml-external-parsed-entity',
        ),
      ),
      'text/yaml' => array(
        't' => array(
          0 => 'application/x-yaml',
        ),
      ),
      'video/3gp' => array(
        't' => array(
          0 => 'video/3gpp',
        ),
      ),
      'video/3gpp-encrypted' => array(
        't' => array(
          0 => 'video/3gpp',
        ),
      ),
      'video/avi' => array(
        't' => array(
          0 => 'video/x-msvideo',
        ),
      ),
      'video/divx' => array(
        't' => array(
          0 => 'video/x-msvideo',
        ),
      ),
      'video/fli' => array(
        'e' => array(
          0 => 'fli',
        ),
        't' => array(
          0 => 'video/x-flic',
        ),
      ),
      'video/flv' => array(
        't' => array(
          0 => 'video/x-flv',
        ),
      ),
      'video/mp4v-es' => array(
        't' => array(
          0 => 'video/mp4',
        ),
      ),
      'video/mpeg-system' => array(
        't' => array(
          0 => 'video/mpeg',
        ),
      ),
      'video/msvideo' => array(
        't' => array(
          0 => 'video/x-msvideo',
        ),
      ),
      'video/vivo' => array(
        't' => array(
          0 => 'video/vnd.vivo',
        ),
      ),
      'video/vnd.divx' => array(
        't' => array(
          0 => 'video/x-msvideo',
        ),
      ),
      'video/x-annodex' => array(
        't' => array(
          0 => 'video/annodex',
        ),
      ),
      'video/x-avi' => array(
        't' => array(
          0 => 'video/x-msvideo',
        ),
      ),
      'video/x-fli' => array(
        't' => array(
          0 => 'video/x-flic',
        ),
      ),
      'video/x-m4v' => array(
        'e' => array(
          0 => 'm4v',
        ),
        't' => array(
          0 => 'video/mp4',
        ),
      ),
      'video/x-mpeg' => array(
        't' => array(
          0 => 'video/mpeg',
        ),
      ),
      'video/x-mpeg-system' => array(
        't' => array(
          0 => 'video/mpeg',
        ),
      ),
      'video/x-mpeg2' => array(
        't' => array(
          0 => 'video/mpeg',
        ),
      ),
      'video/x-mpegurl' => array(
        't' => array(
          0 => 'video/vnd.mpegurl',
        ),
      ),
      'video/x-ms-asf' => array(
        'e' => array(
          0 => 'asf',
          1 => 'asx',
        ),
        't' => array(
          0 => 'application/vnd.ms-asf',
        ),
      ),
      'video/x-ms-asf-plugin' => array(
        't' => array(
          0 => 'application/vnd.ms-asf',
        ),
      ),
      'video/x-ms-wax' => array(
        't' => array(
          0 => 'audio/x-ms-asx',
        ),
      ),
      'video/x-ms-wm' => array(
        'e' => array(
          0 => 'wm',
        ),
        't' => array(
          0 => 'application/vnd.ms-asf',
        ),
      ),
      'video/x-ms-wmx' => array(
        'e' => array(
          0 => 'wmx',
        ),
        't' => array(
          0 => 'audio/x-ms-asx',
        ),
      ),
      'video/x-ms-wvx' => array(
        'e' => array(
          0 => 'wvx',
        ),
        't' => array(
          0 => 'audio/x-ms-asx',
        ),
      ),
      'video/x-ogg' => array(
        't' => array(
          0 => 'video/ogg',
        ),
      ),
      'video/x-ogm' => array(
        't' => array(
          0 => 'video/x-ogm+ogg',
        ),
      ),
      'video/x-real-video' => array(
        't' => array(
          0 => 'video/vnd.rn-realvideo',
        ),
      ),
      'video/x-theora' => array(
        't' => array(
          0 => 'video/x-theora+ogg',
        ),
      ),
      'x-world/x-vrml' => array(
        'e' => array(
          0 => 'vrm',
          1 => 'vrml',
          2 => 'wrl',
        ),
        't' => array(
          0 => 'model/vrml',
        ),
      ),
      'zz-application/zz-winassoc-123' => array(
        't' => array(
          0 => 'application/vnd.lotus-1-2-3',
        ),
      ),
      'zz-application/zz-winassoc-cab' => array(
        't' => array(
          0 => 'application/vnd.ms-cab-compressed',
        ),
      ),
      'zz-application/zz-winassoc-cdr' => array(
        't' => array(
          0 => 'application/vnd.corel-draw',
        ),
      ),
      'zz-application/zz-winassoc-doc' => array(
        't' => array(
          0 => 'application/msword',
        ),
      ),
      'zz-application/zz-winassoc-hlp' => array(
        't' => array(
          0 => 'application/winhlp',
        ),
      ),
      'zz-application/zz-winassoc-mdb' => array(
        't' => array(
          0 => 'application/vnd.ms-access',
        ),
      ),
      'zz-application/zz-winassoc-uu' => array(
        't' => array(
          0 => 'text/x-uuencode',
        ),
      ),
      'zz-application/zz-winassoc-xls' => array(
        't' => array(
          0 => 'application/vnd.ms-excel',
        ),
      ),
    ),
  );

}

Members

Namesort descending Modifiers Type Description Overrides
DrupalMap::$instance protected static property Singleton instance.
DrupalMap::$map protected static property Mapping between file extensions and MIME types.
DrupalMap::getFileName public function Returns this file's fully qualified filename.