    {-# LANGUAGE OverloadedStrings #-}
    module Network.Mime
        ( -- * Lookups
          mimeByExt
        , defaultMimeLookup
          -- * Defaults
        , defaultMimeType
        , defaultMimeMap
        , defaultExtensionMap
          -- * Utilities
        , fileNameExtensions
          -- * Types
        , FileName
        , MimeType
        , MimeMap
        , Extension
        , ExtensionMap
        ) where

    import qualified Data.List as L
    import Data.Text (Text)
    import qualified Data.Text as T
    import Data.ByteString (ByteString)
    import Data.ByteString.Char8 ()
    import qualified Data.Map as Map

    -- | Maps extensions to mime types.
    type MimeMap = Map.Map Extension MimeType

    -- | Maps mime types to extensions.
    -- The list of extensions is in alphabetical order.
    --
    -- @since 0.1.2.0
    type ExtensionMap = Map.Map MimeType [Extension]

    -- | The filename component of a filepath, leaving off the directory but
    -- keeping all extensions.
    type FileName = Text

    -- | Individual mime type for be served over the wire.
    type MimeType = ByteString

    -- | Look up a mime type from the given mime map and default mime type.
    mimeByExt :: MimeMap
              -> MimeType -- ^ default mime type
              -> FileName
              -> MimeType
    mimeByExt :: MimeMap -> MimeType -> Extension -> MimeType
    mimeByExt MimeMap
    mm MimeType
    def =
        [Extension] -> MimeType
    go ([Extension] -> MimeType)
    -> (Extension -> [Extension]) -> Extension -> MimeType
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Extension -> [Extension]
    fileNameExtensions
      where
        go :: [Extension] -> MimeType
    go [] = MimeType
    def
        go (Extension
    e:[Extension]
    es) =
            case Extension -> MimeMap -> Maybe MimeType
    forall k a. Ord k => k -> Map k a -> Maybe a
    Map.lookup Extension
    e MimeMap
    mm of
                Maybe MimeType
    Nothing -> [Extension] -> MimeType
    go [Extension]
    es
                Just MimeType
    mt -> MimeType
    mt

    -- | @mimeByExt@ applied to @defaultMimeType@ and @defaultMimeMap@.
    defaultMimeLookup :: FileName -> MimeType
    defaultMimeLookup :: Extension -> MimeType
    defaultMimeLookup = MimeMap -> MimeType -> Extension -> MimeType
    mimeByExt MimeMap
    defaultMimeMap MimeType
    defaultMimeType

    -- | Get a list of all of the file name extensions.
    --
    -- > fileNameExtensions "foo.tar.gz" == ["tar.gz", "gz"]
    fileNameExtensions :: FileName -> [Extension]
    fileNameExtensions :: Extension -> [Extension]
    fileNameExtensions =
        Extension -> [Extension]
    go (Extension -> [Extension])
    -> (Extension -> Extension) -> Extension -> [Extension]
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Extension -> Extension
    T.toLower (Extension -> Extension)
    -> (Extension -> Extension) -> Extension -> Extension
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Extension -> Extension
    dropToExt
      where
        dropToExt :: Extension -> Extension
    dropToExt = Int -> Extension -> Extension
    T.drop Int
    1 (Extension -> Extension)
    -> (Extension -> Extension) -> Extension -> Extension
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . (Char -> Bool) -> Extension -> Extension
    T.dropWhile (Char -> Char -> Bool
    forall a. Eq a => a -> a -> Bool
    /= Char
    '.')

        go :: Extension -> [Extension]
    go Extension
    e
            | Extension -> Bool
    T.null Extension
    e = []
            | Bool
    otherwise = Extension
    e Extension -> [Extension] -> [Extension]
    forall a. a -> [a] -> [a]
    : Extension -> [Extension]
    go Extension
    next
          where
            next :: Extension
    next = Extension -> Extension
    dropToExt Extension
    e

    -- | Path extension. May include multiple components, e.g. tar.gz
    type Extension = Text

    -- | The default fallback mime type \"application/octet-stream\".
    defaultMimeType :: MimeType
    defaultMimeType :: MimeType
    defaultMimeType = MimeType
    "application/octet-stream"

    -- | A default mapping from filename extension to mime type.
    --
    -- Generated from the Apache and nginx mime.types files.
    defaultMimeMap :: MimeMap
    defaultMimeMap :: MimeMap
    defaultMimeMap = [(Extension, MimeType)] -> MimeMap
    forall k a. Eq k => [(k, a)] -> Map k a
    Map.fromAscList [(Extension, MimeType)]
    mimeAscList

    -- | A mapping of 'MimeType' to a set of 'Extension's.
    --
    -- @since 0.1.2.0
    defaultExtensionMap :: ExtensionMap
    defaultExtensionMap :: ExtensionMap
    defaultExtensionMap =
        ((Extension, MimeType) -> ExtensionMap -> ExtensionMap)
    -> ExtensionMap -> [(Extension, MimeType)] -> ExtensionMap
    forall a b. (a -> b -> b) -> b -> [a] -> b
    forall (t :: * -> *) a b.
    Foldable t =>
    (a -> b -> b) -> b -> t a -> b
    L.foldr (Extension, MimeType) -> ExtensionMap -> ExtensionMap
    forall {k} {a}. Ord k => (a, k) -> Map k [a] -> Map k [a]
    go ExtensionMap
    forall a. Monoid a => a
    mempty [(Extension, MimeType)]
    mimeAscList
      where
        go :: (a, k) -> Map k [a] -> Map k [a]
    go (a
    ext, k
    mimeType) =
            (Maybe [a] -> Maybe [a]) -> k -> Map k [a] -> Map k [a]
    forall k a.
    Ord k =>
    (Maybe a -> Maybe a) -> k -> Map k a -> Map k a
    Map.alter ([a] -> Maybe [a]
    forall a. a -> Maybe a
    Just ([a] -> Maybe [a]) -> (Maybe [a] -> [a]) -> Maybe [a] -> Maybe [a]
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . [a] -> ([a] -> [a]) -> Maybe [a] -> [a]
    forall b a. b -> (a -> b) -> Maybe a -> b
    maybe [a
    ext] (a
    ext a -> [a] -> [a]
    forall a. a -> [a] -> [a]
    :)) k
    mimeType

    mimeAscList :: [(Extension, MimeType)]
    mimeAscList :: [(Extension, MimeType)]
    mimeAscList =
        [ (Extension
    "123", MimeType
    "application/vnd.lotus-1-2-3")
        , (Extension
    "3dml", MimeType
    "text/vnd.in3d.3dml")
        , (Extension
    "3ds", MimeType
    "image/x-3ds")
        , (Extension
    "3g2", MimeType
    "video/3gpp2")
        , (Extension
    "3gp", MimeType
    "video/3gpp")
        , (Extension
    "3gpp", MimeType
    "video/3gpp")
        , (Extension
    "7z", MimeType
    "application/x-7z-compressed")
        , (Extension
    "aab", MimeType
    "application/x-authorware-bin")
        , (Extension
    "aac", MimeType
    "audio/x-aac")
        , (Extension
    "aam", MimeType
    "application/x-authorware-map")
        , (Extension
    "aas", MimeType
    "application/x-authorware-seg")
        , (Extension
    "abw", MimeType
    "application/x-abiword")
        , (Extension
    "ac", MimeType
    "application/pkix-attr-cert")
        , (Extension
    "acc", MimeType
    "application/vnd.americandynamics.acc")
        , (Extension
    "ace", MimeType
    "application/x-ace-compressed")
        , (Extension
    "acu", MimeType
    "application/vnd.acucobol")
        , (Extension
    "acutc", MimeType
    "application/vnd.acucorp")
        , (Extension
    "adp", MimeType
    "audio/adpcm")
        , (Extension
    "aep", MimeType
    "application/vnd.audiograph")
        , (Extension
    "afm", MimeType
    "application/x-font-type1")
        , (Extension
    "afp", MimeType
    "application/vnd.ibm.modcap")
        , (Extension
    "ahead", MimeType
    "application/vnd.ahead.space")
        , (Extension
    "ai", MimeType
    "application/postscript")
        , (Extension
    "aif", MimeType
    "audio/x-aiff")
        , (Extension
    "aifc", MimeType
    "audio/x-aiff")
        , (Extension
    "aiff", MimeType
    "audio/x-aiff")
        , (Extension
    "air", MimeType
    "application/vnd.adobe.air-application-installer-package+zip")
        , (Extension
    "ait", MimeType
    "application/vnd.dvb.ait")
        , (Extension
    "ami", MimeType
    "application/vnd.amiga.ami")
        , (Extension
    "apk", MimeType
    "application/vnd.android.package-archive")
        , (Extension
    "appcache", MimeType
    "text/cache-manifest")
        , (Extension
    "application", MimeType
    "application/x-ms-application")
        , (Extension
    "apr", MimeType
    "application/vnd.lotus-approach")
        , (Extension
    "arc", MimeType
    "application/x-freearc")
        , (Extension
    "asc", MimeType
    "text/plain")
        , (Extension
    "asf", MimeType
    "video/x-ms-asf")
        , (Extension
    "asm", MimeType
    "text/x-asm")
        , (Extension
    "aso", MimeType
    "application/vnd.accpac.simply.aso")
        , (Extension
    "asx", MimeType
    "video/x-ms-asf")
        , (Extension
    "atc", MimeType
    "application/vnd.acucorp")
        , (Extension
    "atom", MimeType
    "application/atom+xml")
        , (Extension
    "atomcat", MimeType
    "application/atomcat+xml")
        , (Extension
    "atomsvc", MimeType
    "application/atomsvc+xml")
        , (Extension
    "atx", MimeType
    "application/vnd.antix.game-component")
        , (Extension
    "au", MimeType
    "audio/basic")
        , (Extension
    "avi", MimeType
    "video/x-msvideo")
        , (Extension
    "aw", MimeType
    "application/applixware")
        , (Extension
    "azf", MimeType
    "application/vnd.airzip.filesecure.azf")
        , (Extension
    "azs", MimeType
    "application/vnd.airzip.filesecure.azs")
        , (Extension
    "azw", MimeType
    "application/vnd.amazon.ebook")
        , (Extension
    "bat", MimeType
    "application/x-msdownload")
        , (Extension
    "bcpio", MimeType
    "application/x-bcpio")
        , (Extension
    "bdf", MimeType
    "application/x-font-bdf")
        , (Extension
    "bdm", MimeType
    "application/vnd.syncml.dm+wbxml")
        , (Extension
    "bed", MimeType
    "application/vnd.realvnc.bed")
        , (Extension
    "bh2", MimeType
    "application/vnd.fujitsu.oasysprs")
        , (Extension
    "bib", MimeType
    "application/x-bibtex")
        , (Extension
    "bin", MimeType
    "application/octet-stream")
        , (Extension
    "blb", MimeType
    "application/x-blorb")
        , (Extension
    "blorb", MimeType
    "application/x-blorb")
        , (Extension
    "bmi", MimeType
    "application/vnd.bmi")
        , (Extension
    "bmp", MimeType
    "image/bmp")
        , (Extension
    "book", MimeType
    "application/vnd.framemaker")
        , (Extension
    "box", MimeType
    "application/vnd.previewsystems.box")
        , (Extension
    "boz", MimeType
    "application/x-bzip2")
        , (Extension
    "bpk", MimeType
    "application/octet-stream")
        , (Extension
    "btif", MimeType
    "image/prs.btif")
        , (Extension
    "bz", MimeType
    "application/x-bzip")
        , (Extension
    "bz2", MimeType
    "application/x-bzip")
        , (Extension
    "c", MimeType
    "text/plain")
        , (Extension
    "c11amc", MimeType
    "application/vnd.cluetrust.cartomobile-config")
        , (Extension
    "c11amz", MimeType
    "application/vnd.cluetrust.cartomobile-config-pkg")
        , (Extension
    "c4d", MimeType
    "application/vnd.clonk.c4group")
        , (Extension
    "c4f", MimeType
    "application/vnd.clonk.c4group")
        , (Extension
    "c4g", MimeType
    "application/vnd.clonk.c4group")
        , (Extension
    "c4p", MimeType
    "application/vnd.clonk.c4group")
        , (Extension
    "c4u", MimeType
    "application/vnd.clonk.c4group")
        , (Extension
    "cab", MimeType
    "application/vnd.ms-cab-compressed")
        , (Extension
    "caf", MimeType
    "audio/x-caf")
        , (Extension
    "cap", MimeType
    "application/vnd.tcpdump.pcap")
        , (Extension
    "car", MimeType
    "application/vnd.curl.car")
        , (Extension
    "cat", MimeType
    "application/vnd.ms-pki.seccat")
        , (Extension
    "cb7", MimeType
    "application/x-cbr")
        , (Extension
    "cba", MimeType
    "application/x-cbr")
        , (Extension
    "cbr", MimeType
    "application/x-cbr")
        , (Extension
    "cbt", MimeType
    "application/x-cbr")
        , (Extension
    "cbz", MimeType
    "application/x-cbr")
        , (Extension
    "cc", MimeType
    "text/x-c")
        , (Extension
    "cco", MimeType
    "application/x-cocoa")
        , (Extension
    "cct", MimeType
    "application/x-director")
        , (Extension
    "ccxml", MimeType
    "application/ccxml+xml")
        , (Extension
    "cdbcmsg", MimeType
    "application/vnd.contact.cmsg")
        , (Extension
    "cdf", MimeType
    "application/x-netcdf")
        , (Extension
    "cdkey", MimeType
    "application/vnd.mediastation.cdkey")
        , (Extension
    "cdmia", MimeType
    "application/cdmi-capability")
        , (Extension
    "cdmic", MimeType
    "application/cdmi-container")
        , (Extension
    "cdmid", MimeType
    "application/cdmi-domain")
        , (Extension
    "cdmio", MimeType
    "application/cdmi-object")
        , (Extension
    "cdmiq", MimeType
    "application/cdmi-queue")
        , (Extension
    "cdx", MimeType
    "chemical/x-cdx")
        , (Extension
    "cdxml", MimeType
    "application/vnd.chemdraw+xml")
        , (Extension
    "cdy", MimeType
    "application/vnd.cinderella")
        , (Extension
    "cer", MimeType
    "application/pkix-cert")
        , (Extension
    "cfs", MimeType
    "application/x-cfs-compressed")
        , (Extension
    "cgm", MimeType
    "image/cgm")
        , (Extension
    "chat", MimeType
    "application/x-chat")
        , (Extension
    "chm", MimeType
    "application/vnd.ms-htmlhelp")
        , (Extension
    "chrt", MimeType
    "application/vnd.kde.kchart")
        , (Extension
    "cif", MimeType
    "chemical/x-cif")
        , (Extension
    "cii", MimeType
    "application/vnd.anser-web-certificate-issue-initiation")
        , (Extension
    "cil", MimeType
    "application/vnd.ms-artgalry")
        , (Extension
    "cla", MimeType
    "application/vnd.claymore")
        , (Extension
    "class", MimeType
    "application/java-vm")
        , (Extension
    "clkk", MimeType
    "application/vnd.crick.clicker.keyboard")
        , (Extension
    "clkp", MimeType
    "application/vnd.crick.clicker.palette")
        , (Extension
    "clkt", MimeType
    "application/vnd.crick.clicker.template")
        , (Extension
    "clkw", MimeType
    "application/vnd.crick.clicker.wordbank")
        , (Extension
    "clkx", MimeType
    "application/vnd.crick.clicker")
        , (Extension
    "clp", MimeType
    "application/x-msclip")
        , (Extension
    "cls", MimeType
    "application/x-tex")
        , (Extension
    "cmc", MimeType
    "application/vnd.cosmocaller")
        , (Extension
    "cmdf", MimeType
    "chemical/x-cmdf")
        , (Extension
    "cml", MimeType
    "chemical/x-cml")
        , (Extension
    "cmp", MimeType
    "application/vnd.yellowriver-custom-menu")
        , (Extension
    "cmx", MimeType
    "image/x-cmx")
        , (Extension
    "cod", MimeType
    "application/vnd.rim.cod")
        , (Extension
    "com", MimeType
    "application/x-msdownload")
        , (Extension
    "conf", MimeType
    "text/plain")
        , (Extension
    "cpio", MimeType
    "application/x-cpio")
        , (Extension
    "cpp", MimeType
    "text/plain")
        , (Extension
    "cpt", MimeType
    "application/mac-compactpro")
        , (Extension
    "crd", MimeType
    "application/x-mscardfile")
        , (Extension
    "crl", MimeType
    "application/pkix-crl")
        , (Extension
    "crt", MimeType
    "application/x-x509-ca-cert")
        , (Extension
    "cryptonote", MimeType
    "application/vnd.rig.cryptonote")
        , (Extension
    "csh", MimeType
    "application/x-csh")
        , (Extension
    "csml", MimeType
    "chemical/x-csml")
        , (Extension
    "csp", MimeType
    "application/vnd.commonspace")
        , (Extension
    "css", MimeType
    "text/css")
        , (Extension
    "cst", MimeType
    "application/x-director")
        , (Extension
    "csv", MimeType
    "text/csv")
        , (Extension
    "cu", MimeType
    "application/cu-seeme")
        , (Extension
    "curl", MimeType
    "text/vnd.curl")
        , (Extension
    "cww", MimeType
    "application/prs.cww")
        , (Extension
    "cxt", MimeType
    "application/x-director")
        , (Extension
    "cxx", MimeType
    "text/plain")
        , (Extension
    "dae", MimeType
    "model/vnd.collada+xml")
        , (Extension
    "daf", MimeType
    "application/vnd.mobius.daf")
        , (Extension
    "dart", MimeType
    "application/vnd.dart")
        , (Extension
    "dataless", MimeType
    "application/vnd.fdsn.seed")
        , (Extension
    "davmount", MimeType
    "application/davmount+xml")
        , (Extension
    "dbk", MimeType
    "application/docbook+xml")
        , (Extension
    "dcr", MimeType
    "application/x-director")
        , (Extension
    "dcurl", MimeType
    "text/vnd.curl.dcurl")
        , (Extension
    "dd2", MimeType
    "application/vnd.oma.dd2+xml")
        , (Extension
    "ddd", MimeType
    "application/vnd.fujixerox.ddd")
        , (Extension
    "deb", MimeType
    "application/x-debian-package")
        , (Extension
    "def", MimeType
    "text/plain")
        , (Extension
    "deploy", MimeType
    "application/octet-stream")
        , (Extension
    "der", MimeType
    "application/x-x509-ca-cert")
        , (Extension
    "dfac", MimeType
    "application/vnd.dreamfactory")
        , (Extension
    "dgc", MimeType
    "application/x-dgc-compressed")
        , (Extension
    "dic", MimeType
    "text/x-c")
        , (Extension
    "dir", MimeType
    "application/x-director")
        , (Extension
    "dis", MimeType
    "application/vnd.mobius.dis")
        , (Extension
    "dist", MimeType
    "application/octet-stream")
        , (Extension
    "distz", MimeType
    "application/octet-stream")
        , (Extension
    "djv", MimeType
    "image/vnd.djvu")
        , (Extension
    "djvu", MimeType
    "image/vnd.djvu")
        , (Extension
    "dll", MimeType
    "application/x-msdownload")
        , (Extension
    "dmg", MimeType
    "application/x-apple-diskimage")
        , (Extension
    "dmp", MimeType
    "application/vnd.tcpdump.pcap")
        , (Extension
    "dms", MimeType
    "application/octet-stream")
        , (Extension
    "dna", MimeType
    "application/vnd.dna")
        , (Extension
    "doc", MimeType
    "application/msword")
        , (Extension
    "docm", MimeType
    "application/vnd.ms-word.document.macroenabled.12")
        , (Extension
    "docx", MimeType
    "application/vnd.openxmlformats-officedocument.wordprocessingml.document")
        , (Extension
    "dot", MimeType
    "application/msword")
        , (Extension
    "dotm", MimeType
    "application/vnd.ms-word.template.macroenabled.12")
        , (Extension
    "dotx", MimeType
    "application/vnd.openxmlformats-officedocument.wordprocessingml.template")
        , (Extension
    "dp", MimeType
    "application/vnd.osgi.dp")
        , (Extension
    "dpg", MimeType
    "application/vnd.dpgraph")
        , (Extension
    "dra", MimeType
    "audio/vnd.dra")
        , (Extension
    "dsc", MimeType
    "text/prs.lines.tag")
        , (Extension
    "dssc", MimeType
    "application/dssc+der")
        , (Extension
    "dtb", MimeType
    "application/x-dtbook+xml")
        , (Extension
    "dtd", MimeType
    "application/xml-dtd")
        , (Extension
    "dts", MimeType
    "audio/vnd.dts")
        , (Extension
    "dtshd", MimeType
    "audio/vnd.dts.hd")
        , (Extension
    "dump", MimeType
    "application/octet-stream")
        , (Extension
    "dv", MimeType
    "video/dv")
        , (Extension
    "dvb", MimeType
    "video/vnd.dvb.file")
        , (Extension
    "dvi", MimeType
    "application/x-dvi")
        , (Extension
    "dwf", MimeType
    "model/vnd.dwf")
        , (Extension
    "dwg", MimeType
    "image/vnd.dwg")
        , (Extension
    "dxf", MimeType
    "image/vnd.dxf")
        , (Extension
    "dxp", MimeType
    "application/vnd.spotfire.dxp")
        , (Extension
    "dxr", MimeType
    "application/x-director")
        , (Extension
    "ear", MimeType
    "application/java-archive")
        , (Extension
    "ecelp4800", MimeType
    "audio/vnd.nuera.ecelp4800")
        , (Extension
    "ecelp7470", MimeType
    "audio/vnd.nuera.ecelp7470")
        , (Extension
    "ecelp9600", MimeType
    "audio/vnd.nuera.ecelp9600")
        , (Extension
    "ecma", MimeType
    "application/ecmascript")
        , (Extension
    "edm", MimeType
    "application/vnd.novadigm.edm")
        , (Extension
    "edx", MimeType
    "application/vnd.novadigm.edx")
        , (Extension
    "efif", MimeType
    "application/vnd.picsel")
        , (Extension
    "ei6", MimeType
    "application/vnd.pg.osasli")
        , (Extension
    "elc", MimeType
    "application/octet-stream")
        , (Extension
    "emf", MimeType
    "application/x-msmetafile")
        , (Extension
    "eml", MimeType
    "message/rfc822")
        , (Extension
    "emma", MimeType
    "application/emma+xml")
        , (Extension
    "emz", MimeType
    "application/x-msmetafile")
        , (Extension
    "eol", MimeType
    "audio/vnd.digital-winds")
        , (Extension
    "eot", MimeType
    "application/vnd.ms-fontobject")
        , (Extension
    "eps", MimeType
    "application/postscript")
        , (Extension
    "epub", MimeType
    "application/epub+zip")
        , (Extension
    "es3", MimeType
    "application/vnd.eszigno3+xml")
        , (Extension
    "esa", MimeType
    "application/vnd.osgi.subsystem")
        , (Extension
    "esf", MimeType
    "application/vnd.epson.esf")
        , (Extension
    "et3", MimeType
    "application/vnd.eszigno3+xml")
        , (Extension
    "etx", MimeType
    "text/x-setext")
        , (Extension
    "eva", MimeType
    "application/x-eva")
        , (Extension
    "evy", MimeType
    "application/x-envoy")
        , (Extension
    "exe", MimeType
    "application/vnd.microsoft.portable-executable")
        , (Extension
    "exi", MimeType
    "application/exi")
        , (Extension
    "ext", MimeType
    "application/vnd.novadigm.ext")
        , (Extension
    "ez", MimeType
    "application/andrew-inset")
        , (Extension
    "ez2", MimeType
    "application/vnd.ezpix-album")
        , (Extension
    "ez3", MimeType
    "application/vnd.ezpix-package")
        , (Extension
    "f", MimeType
    "text/x-fortran")
        , (Extension
    "f4v", MimeType
    "video/x-f4v")
        , (Extension
    "f77", MimeType
    "text/x-fortran")
        , (Extension
    "f90", MimeType
    "text/x-fortran")
        , (Extension
    "fbs", MimeType
    "image/vnd.fastbidsheet")
        , (Extension
    "fcdt", MimeType
    "application/vnd.adobe.formscentral.fcdt")
        , (Extension
    "fcs", MimeType
    "application/vnd.isac.fcs")
        , (Extension
    "fdf", MimeType
    "application/vnd.fdf")
        , (Extension
    "fe_launch", MimeType
    "application/vnd.denovo.fcselayout-link")
        , (Extension
    "fg5", MimeType
    "application/vnd.fujitsu.oasysgp")
        , (Extension
    "fgd", MimeType
    "application/x-director")
        , (Extension
    "fh", MimeType
    "image/x-freehand")
        , (Extension
    "fh4", MimeType
    "image/x-freehand")
        , (Extension
    "fh5", MimeType
    "image/x-freehand")
        , (Extension
    "fh7", MimeType
    "image/x-freehand")
        , (Extension
    "fhc", MimeType
    "image/x-freehand")
        , (Extension
    "fig", MimeType
    "application/x-xfig")
        , (Extension
    "flac", MimeType
    "audio/x-flac")
        , (Extension
    "fli", MimeType
    "video/x-fli")
        , (Extension
    "flo", MimeType
    "application/vnd.micrografx.flo")
        , (Extension
    "flv", MimeType
    "video/x-flv")
        , (Extension
    "flw", MimeType
    "application/vnd.kde.kivio")
        , (Extension
    "flx", MimeType
    "text/vnd.fmi.flexstor")
        , (Extension
    "fly", MimeType
    "text/vnd.fly")
        , (Extension
    "fm", MimeType
    "application/vnd.framemaker")
        , (Extension
    "fnc", MimeType
    "application/vnd.frogans.fnc")
        , (Extension
    "for", MimeType
    "text/x-fortran")
        , (Extension
    "fpx", MimeType
    "image/vnd.fpx")
        , (Extension
    "frame", MimeType
    "application/vnd.framemaker")
        , (Extension
    "fsc", MimeType
    "application/vnd.fsc.weblaunch")
        , (Extension
    "fst", MimeType
    "image/vnd.fst")
        , (Extension
    "ftc", MimeType
    "application/vnd.fluxtime.clip")
        , (Extension
    "fti", MimeType
    "application/vnd.anser-web-funds-transfer-initiation")
        , (Extension
    "fvt", MimeType
    "video/vnd.fvt")
        , (Extension
    "fxp", MimeType
    "application/vnd.adobe.fxp")
        , (Extension
    "fxpl", MimeType
    "application/vnd.adobe.fxp")
        , (Extension
    "fzs", MimeType
    "application/vnd.fuzzysheet")
        , (Extension
    "g2w", MimeType
    "application/vnd.geoplan")
        , (Extension
    "g3", MimeType
    "image/g3fax")
        , (Extension
    "g3w", MimeType
    "application/vnd.geospace")
        , (Extension
    "gac", MimeType
    "application/vnd.groove-account")
        , (Extension
    "gam", MimeType
    "application/x-tads")
        , (Extension
    "gbr", MimeType
    "application/rpki-ghostbusters")
        , (Extension
    "gca", MimeType
    "application/x-gca-compressed")
        , (Extension
    "gdl", MimeType
    "model/vnd.gdl")
        , (Extension
    "geo", MimeType
    "application/vnd.dynageo")
        , (Extension
    "gex", MimeType
    "application/vnd.geometry-explorer")
        , (Extension
    "gf", MimeType
    "application/x-tex-gf")
        , (Extension
    "ggb", MimeType
    "application/vnd.geogebra.file")
        , (Extension
    "ggt", MimeType
    "application/vnd.geogebra.tool")
        , (Extension
    "ghf", MimeType
    "application/vnd.groove-help")
        , (Extension
    "gif", MimeType
    "image/gif")
        , (Extension
    "gim", MimeType
    "application/vnd.groove-identity-message")
        , (Extension
    "gml", MimeType
    "application/gml+xml")
        , (Extension
    "gmx", MimeType
    "application/vnd.gmx")
        , (Extension
    "gnumeric", MimeType
    "application/x-gnumeric")
        , (Extension
    "gph", MimeType
    "application/vnd.flographit")
        , (Extension
    "gpx", MimeType
    "application/gpx+xml")
        , (Extension
    "gqf", MimeType
    "application/vnd.grafeq")
        , (Extension
    "gqs", MimeType
    "application/vnd.grafeq")
        , (Extension
    "gram", MimeType
    "application/srgs")
        , (Extension
    "gramps", MimeType
    "application/x-gramps-xml")
        , (Extension
    "gre", MimeType
    "application/vnd.geometry-explorer")
        , (Extension
    "grv", MimeType
    "application/vnd.groove-injector")
        , (Extension
    "grxml", MimeType
    "application/srgs+xml")
        , (Extension
    "gsf", MimeType
    "application/x-font-ghostscript")
        , (Extension
    "gtar", MimeType
    "application/x-gtar")
        , (Extension
    "gtm", MimeType
    "application/vnd.groove-tool-message")
        , (Extension
    "gtw", MimeType
    "model/vnd.gtw")
        , (Extension
    "gv", MimeType
    "text/vnd.graphviz")
        , (Extension
    "gxf", MimeType
    "application/gxf")
        , (Extension
    "gxt", MimeType
    "application/vnd.geonext")
        , (Extension
    "gz", MimeType
    "application/gzip")
        , (Extension
    "h", MimeType
    "text/x-c")
        , (Extension
    "h261", MimeType
    "video/h261")
        , (Extension
    "h263", MimeType
    "video/h263")
        , (Extension
    "h264", MimeType
    "video/h264")
        , (Extension
    "hal", MimeType
    "application/vnd.hal+xml")
        , (Extension
    "hbci", MimeType
    "application/vnd.hbci")
        , (Extension
    "hdf", MimeType
    "application/x-hdf")
        , (Extension
    "hh", MimeType
    "text/x-c")
        , (Extension
    "hlp", MimeType
    "application/winhlp")
        , (Extension
    "hpgl", MimeType
    "application/vnd.hp-hpgl")
        , (Extension
    "hpid", MimeType
    "application/vnd.hp-hpid")
        , (Extension
    "hps", MimeType
    "application/vnd.hp-hps")
        , (Extension
    "hqx", MimeType
    "application/mac-binhex40")
        , (Extension
    "hs", MimeType
    "text/plain")
        , (Extension
    "htc", MimeType
    "text/x-component")
        , (Extension
    "htke", MimeType
    "application/vnd.kenameaapp")
        , (Extension
    "htm", MimeType
    "text/html")
        , (Extension
    "html", MimeType
    "text/html")
        , (Extension
    "hvd", MimeType
    "application/vnd.yamaha.hv-dic")
        , (Extension
    "hvp", MimeType
    "application/vnd.yamaha.hv-voice")
        , (Extension
    "hvs", MimeType
    "application/vnd.yamaha.hv-script")
        , (Extension
    "i2g", MimeType
    "application/vnd.intergeo")
        , (Extension
    "icc", MimeType
    "application/vnd.iccprofile")
        , (Extension
    "ice", MimeType
    "x-conference/x-cooltalk")
        , (Extension
    "icm", MimeType
    "application/vnd.iccprofile")
        , (Extension
    "ico", MimeType
    "image/vnd.microsoft.icon")
        , (Extension
    "ics", MimeType
    "text/calendar")
        , (Extension
    "ief", MimeType
    "image/ief")
        , (Extension
    "ifb", MimeType
    "text/calendar")
        , (Extension
    "ifm", MimeType
    "application/vnd.shana.informed.formdata")
        , (Extension
    "iges", MimeType
    "model/iges")
        , (Extension
    "igl", MimeType
    "application/vnd.igloader")
        , (Extension
    "igm", MimeType
    "application/vnd.insors.igm")
        , (Extension
    "igs", MimeType
    "model/iges")
        , (Extension
    "igx", MimeType
    "application/vnd.micrografx.igx")
        , (Extension
    "iif", MimeType
    "application/vnd.shana.informed.interchange")
        , (Extension
    "img", MimeType
    "application/octet-stream")
        , (Extension
    "imp", MimeType
    "application/vnd.accpac.simply.imp")
        , (Extension
    "ims", MimeType
    "application/vnd.ms-ims")
        , (Extension
    "in", MimeType
    "text/plain")
        , (Extension
    "ink", MimeType
    "application/inkml+xml")
        , (Extension
    "inkml", MimeType
    "application/inkml+xml")
        , (Extension
    "install", MimeType
    "application/x-install-instructions")
        , (Extension
    "iota", MimeType
    "application/vnd.astraea-software.iota")
        , (Extension
    "ipfix", MimeType
    "application/ipfix")
        , (Extension
    "ipk", MimeType
    "application/vnd.shana.informed.package")
        , (Extension
    "irm", MimeType
    "application/vnd.ibm.rights-management")
        , (Extension
    "irp", MimeType
    "application/vnd.irepository.package+xml")
        , (Extension
    "iso", MimeType
    "application/x-iso9660-image")
        , (Extension
    "itp", MimeType
    "application/vnd.shana.informed.formtemplate")
        , (Extension
    "ivp", MimeType
    "application/vnd.immervision-ivp")
        , (Extension
    "ivu", MimeType
    "application/vnd.immervision-ivu")
        , (Extension
    "jad", MimeType
    "text/vnd.sun.j2me.app-descriptor")
        , (Extension
    "jam", MimeType
    "application/vnd.jam")
        , (Extension
    "jar", MimeType
    "application/java-archive")
        , (Extension
    "jardiff", MimeType
    "application/x-java-archive-diff")
        , (Extension
    "java", MimeType
    "text/x-java-source")
        , (Extension
    "jisp", MimeType
    "application/vnd.jisp")
        , (Extension
    "jlt", MimeType
    "application/vnd.hp-jlyt")
        , (Extension
    "jng", MimeType
    "image/x-jng")
        , (Extension
    "jnlp", MimeType
    "application/x-java-jnlp-file")
        , (Extension
    "joda", MimeType
    "application/vnd.joost.joda-archive")
        , (Extension
    "jpe", MimeType
    "image/jpeg")
        , (Extension
    "jpeg", MimeType
    "image/jpeg")
        , (Extension
    "jpg", MimeType
    "image/jpeg")
        , (Extension
    "jpgm", MimeType
    "video/jpm")
        , (Extension
    "jpgv", MimeType
    "video/jpeg")
        , (Extension
    "jpm", MimeType
    "video/jpm")
        , (Extension
    "js", MimeType
    "application/javascript")
        , (Extension
    "json", MimeType
    "application/json")
        , (Extension
    "jsonml", MimeType
    "application/jsonml+json")
        , (Extension
    "kar", MimeType
    "audio/midi")
        , (Extension
    "karbon", MimeType
    "application/vnd.kde.karbon")
        , (Extension
    "kfo", MimeType
    "application/vnd.kde.kformula")
        , (Extension
    "kia", MimeType
    "application/vnd.kidspiration")
        , (Extension
    "kml", MimeType
    "application/vnd.google-earth.kml+xml")
        , (Extension
    "kmz", MimeType
    "application/vnd.google-earth.kmz")
        , (Extension
    "kne", MimeType
    "application/vnd.kinar")
        , (Extension
    "knp", MimeType
    "application/vnd.kinar")
        , (Extension
    "kon", MimeType
    "application/vnd.kde.kontour")
        , (Extension
    "kpr", MimeType
    "application/vnd.kde.kpresenter")
        , (Extension
    "kpt", MimeType
    "application/vnd.kde.kpresenter")
        , (Extension
    "kpxx", MimeType
    "application/vnd.ds-keypoint")
        , (Extension
    "ksp", MimeType
    "application/vnd.kde.kspread")
        , (Extension
    "ktr", MimeType
    "application/vnd.kahootz")
        , (Extension
    "ktx", MimeType
    "image/ktx")
        , (Extension
    "ktz", MimeType
    "application/vnd.kahootz")
        , (Extension
    "kwd", MimeType
    "application/vnd.kde.kword")
        , (Extension
    "kwt", MimeType
    "application/vnd.kde.kword")
        , (Extension
    "lasxml", MimeType
    "application/vnd.las.las+xml")
        , (Extension
    "latex", MimeType
    "application/x-latex")
        , (Extension
    "lbd", MimeType
    "application/vnd.llamagraphics.life-balance.desktop")
        , (Extension
    "lbe", MimeType
    "application/vnd.llamagraphics.life-balance.exchange+xml")
        , (Extension
    "les", MimeType
    "application/vnd.hhe.lesson-player")

        -- Added after deliberation in PR (https://github.com/yesodweb/wai/pull/534)
        -- Accepted mainly because of StackOverflow (http://stackoverflow.com/questions/7319555/how-to-add-less-to-iis-7-0)
        , (Extension
    "less", MimeType
    "text/css")

        , (Extension
    "lha", MimeType
    "application/x-lzh-compressed")
        , (Extension
    "link66", MimeType
    "application/vnd.route66.link66+xml")
        , (Extension
    "list", MimeType
    "text/plain")
        , (Extension
    "list3820", MimeType
    "application/vnd.ibm.modcap")
        , (Extension
    "listafp", MimeType
    "application/vnd.ibm.modcap")
        , (Extension
    "lnk", MimeType
    "application/x-ms-shortcut")
        , (Extension
    "log", MimeType
    "text/plain")
        , (Extension
    "lostxml", MimeType
    "application/lost+xml")
        , (Extension
    "lrf", MimeType
    "application/octet-stream")
        , (Extension
    "lrm", MimeType
    "application/vnd.ms-lrm")
        , (Extension
    "ltf", MimeType
    "application/vnd.frogans.ltf")
        , (Extension
    "ltx", MimeType
    "application/x-tex")
        , (Extension
    "lvp", MimeType
    "audio/vnd.lucent.voice")
        , (Extension
    "lwp", MimeType
    "application/vnd.lotus-wordpro")
        , (Extension
    "lzh", MimeType
    "application/x-lzh-compressed")
        , (Extension
    "m13", MimeType
    "application/x-msmediaview")
        , (Extension
    "m14", MimeType
    "application/x-msmediaview")
        , (Extension
    "m1v", MimeType
    "video/mpeg")
        , (Extension
    "m21", MimeType
    "application/mp21")
        , (Extension
    "m2a", MimeType
    "audio/mpeg")
        , (Extension
    "m2v", MimeType
    "video/mpeg")
        , (Extension
    "m3a", MimeType
    "audio/mpeg")
        , (Extension
    "m3u", MimeType
    "application/vnd.apple.mpegurl")
        , (Extension
    "m3u8", MimeType
    "application/vnd.apple.mpegurl")
        , (Extension
    "m4a", MimeType
    "audio/mp4")
        , (Extension
    "m4u", MimeType
    "video/vnd.mpegurl")
        , (Extension
    "m4v", MimeType
    "video/x-m4v")
        , (Extension
    "ma", MimeType
    "application/mathematica")
        , (Extension
    "mads", MimeType
    "application/mads+xml")
        , (Extension
    "mag", MimeType
    "application/vnd.ecowin.chart")
        , (Extension
    "maker", MimeType
    "application/vnd.framemaker")
        , (Extension
    "man", MimeType
    "text/troff")
        , (Extension
    "manifest", MimeType
    "text/cache-manifest")
        , (Extension
    "mar", MimeType
    "application/octet-stream")
        , (Extension
    "markdown", MimeType
    "text/markdown")
        , (Extension
    "mathml", MimeType
    "application/mathml+xml")
        , (Extension
    "mb", MimeType
    "application/mathematica")
        , (Extension
    "mbk", MimeType
    "application/vnd.mobius.mbk")
        , (Extension
    "mbox", MimeType
    "application/mbox")
        , (Extension
    "mc1", MimeType
    "application/vnd.medcalcdata")
        , (Extension
    "mcd", MimeType
    "application/vnd.mcd")
        , (Extension
    "mcurl", MimeType
    "text/vnd.curl.mcurl")
        , (Extension
    "md", MimeType
    "text/markdown")
        , (Extension
    "mdb", MimeType
    "application/x-msaccess")
        , (Extension
    "mdi", MimeType
    "image/vnd.ms-modi")
        , (Extension
    "me", MimeType
    "text/troff")
        , (Extension
    "mesh", MimeType
    "model/mesh")
        , (Extension
    "meta4", MimeType
    "application/metalink4+xml")
        , (Extension
    "metalink", MimeType
    "application/metalink+xml")
        , (Extension
    "mets", MimeType
    "application/mets+xml")
        , (Extension
    "mfm", MimeType
    "application/vnd.mfmp")
        , (Extension
    "mft", MimeType
    "application/rpki-manifest")
        , (Extension
    "mgp", MimeType
    "application/vnd.osgeo.mapguide.package")
        , (Extension
    "mgz", MimeType
    "application/vnd.proteus.magazine")
        , (Extension
    "mid", MimeType
    "audio/midi")
        , (Extension
    "midi", MimeType
    "audio/midi")
        , (Extension
    "mie", MimeType
    "application/x-mie")
        , (Extension
    "mif", MimeType
    "application/vnd.mif")
        , (Extension
    "mime", MimeType
    "message/rfc822")
        , (Extension
    "mj2", MimeType
    "video/mj2")
        , (Extension
    "mjp2", MimeType
    "video/mj2")
        , (Extension
    "mjs", MimeType
    "application/javascript")
        , (Extension
    "mk3d", MimeType
    "video/x-matroska")
        , (Extension
    "mka", MimeType
    "audio/x-matroska")
        , (Extension
    "mks", MimeType
    "video/x-matroska")
        , (Extension
    "mkv", MimeType
    "video/x-matroska")
        , (Extension
    "mlp", MimeType
    "application/vnd.dolby.mlp")
        , (Extension
    "mmd", MimeType
    "application/vnd.chipnuts.karaoke-mmd")
        , (Extension
    "mmf", MimeType
    "application/vnd.smaf")
        , (Extension
    "mml", MimeType
    "text/mathml")
        , (Extension
    "mmr", MimeType
    "image/vnd.fujixerox.edmics-mmr")
        , (Extension
    "mng", MimeType
    "video/x-mng")
        , (Extension
    "mny", MimeType
    "application/x-msmoney")
        , (Extension
    "mobi", MimeType
    "application/x-mobipocket-ebook")
        , (Extension
    "mods", MimeType
    "application/mods+xml")
        , (Extension
    "mov", MimeType
    "video/quicktime")
        , (Extension
    "movie", MimeType
    "video/x-sgi-movie")
        , (Extension
    "mp2", MimeType
    "audio/mpeg")
        , (Extension
    "mp21", MimeType
    "application/mp21")
        , (Extension
    "mp2a", MimeType
    "audio/mpeg")
        , (Extension
    "mp3", MimeType
    "audio/mpeg")
        , (Extension
    "mp4", MimeType
    "video/mp4")
        , (Extension
    "mp4a", MimeType
    "audio/mp4")
        , (Extension
    "mp4s", MimeType
    "application/mp4")
        , (Extension
    "mp4v", MimeType
    "video/mp4")
        , (Extension
    "mpc", MimeType
    "application/vnd.mophun.certificate")
        , (Extension
    "mpe", MimeType
    "video/mpeg")
        , (Extension
    "mpeg", MimeType
    "video/mpeg")
        , (Extension
    "mpg", MimeType
    "video/mpeg")
        , (Extension
    "mpg4", MimeType
    "video/mp4")
        , (Extension
    "mpga", MimeType
    "audio/mpeg")
        , (Extension
    "mpkg", MimeType
    "application/vnd.apple.installer+xml")
        , (Extension
    "mpm", MimeType
    "application/vnd.blueice.multipass")
        , (Extension
    "mpn", MimeType
    "application/vnd.mophun.application")
        , (Extension
    "mpp", MimeType
    "application/vnd.ms-project")
        , (Extension
    "mpt", MimeType
    "application/vnd.ms-project")
        , (Extension
    "mpy", MimeType
    "application/vnd.ibm.minipay")
        , (Extension
    "mqy", MimeType
    "application/vnd.mobius.mqy")
        , (Extension
    "mrc", MimeType
    "application/marc")
        , (Extension
    "mrcx", MimeType
    "application/marcxml+xml")
        , (Extension
    "ms", MimeType
    "text/troff")
        , (Extension
    "mscml", MimeType
    "application/mediaservercontrol+xml")
        , (Extension
    "mseed", MimeType
    "application/vnd.fdsn.mseed")
        , (Extension
    "mseq", MimeType
    "application/vnd.mseq")
        , (Extension
    "msf", MimeType
    "application/vnd.epson.msf")
        , (Extension
    "msh", MimeType
    "model/mesh")
        , (Extension
    "msi", MimeType
    "application/x-msdownload")
        , (Extension
    "msl", MimeType
    "application/vnd.mobius.msl")
        , (Extension
    "msm", MimeType
    "application/octet-stream")
        , (Extension
    "msp", MimeType
    "application/octet-stream")
        , (Extension
    "msty", MimeType
    "application/vnd.muvee.style")
        , (Extension
    "mts", MimeType
    "model/vnd.mts")
        , (Extension
    "mus", MimeType
    "application/vnd.musician")
        , (Extension
    "musicxml", MimeType
    "application/vnd.recordare.musicxml+xml")
        , (Extension
    "mvb", MimeType
    "application/x-msmediaview")
        , (Extension
    "mwf", MimeType
    "application/vnd.mfer")
        , (Extension
    "mxf", MimeType
    "application/mxf")
        , (Extension
    "mxl", MimeType
    "application/vnd.recordare.musicxml")
        , (Extension
    "mxml", MimeType
    "application/xv+xml")
        , (Extension
    "mxs", MimeType
    "application/vnd.triscape.mxs")
        , (Extension
    "mxu", MimeType
    "video/vnd.mpegurl")
        , (Extension
    "n-gage", MimeType
    "application/vnd.nokia.n-gage.symbian.install")
        , (Extension
    "n3", MimeType
    "text/n3")
        , (Extension
    "nb", MimeType
    "application/mathematica")
        , (Extension
    "nbp", MimeType
    "application/vnd.wolfram.player")
        , (Extension
    "nc", MimeType
    "application/x-netcdf")
        , (Extension
    "ncx", MimeType
    "application/x-dtbncx+xml")
        , (Extension
    "nfo", MimeType
    "text/x-nfo")
        , (Extension
    "ngdat", MimeType
    "application/vnd.nokia.n-gage.data")
        , (Extension
    "nitf", MimeType
    "application/vnd.nitf")
        , (Extension
    "nlu", MimeType
    "application/vnd.neurolanguage.nlu")
        , (Extension
    "nml", MimeType
    "application/vnd.enliven")
        , (Extension
    "nnd", MimeType
    "application/vnd.noblenet-directory")
        , (Extension
    "nns", MimeType
    "application/vnd.noblenet-sealer")
        , (Extension
    "nnw", MimeType
    "application/vnd.noblenet-web")
        , (Extension
    "npx", MimeType
    "image/vnd.net-fpx")
        , (Extension
    "nsc", MimeType
    "application/x-conference")
        , (Extension
    "nsf", MimeType
    "application/vnd.lotus-notes")
        , (Extension
    "ntf", MimeType
    "application/vnd.nitf")
        , (Extension
    "nzb", MimeType
    "application/x-nzb")
        , (Extension
    "oa2", MimeType
    "application/vnd.fujitsu.oasys2")
        , (Extension
    "oa3", MimeType
    "application/vnd.fujitsu.oasys3")
        , (Extension
    "oas", MimeType
    "application/vnd.fujitsu.oasys")
        , (Extension
    "obd", MimeType
    "application/x-msbinder")
        , (Extension
    "obj", MimeType
    "application/x-tgif")
        , (Extension
    "oda", MimeType
    "application/oda")
        , (Extension
    "odb", MimeType
    "application/vnd.oasis.opendocument.database")
        , (Extension
    "odc", MimeType
    "application/vnd.oasis.opendocument.chart")
        , (Extension
    "odf", MimeType
    "application/vnd.oasis.opendocument.formula")
        , (Extension
    "odft", MimeType
    "application/vnd.oasis.opendocument.formula-template")
        , (Extension
    "odg", MimeType
    "application/vnd.oasis.opendocument.graphics")
        , (Extension
    "odi", MimeType
    "application/vnd.oasis.opendocument.image")
        , (Extension
    "odm", MimeType
    "application/vnd.oasis.opendocument.text-master")
        , (Extension
    "odp", MimeType
    "application/vnd.oasis.opendocument.presentation")
        , (Extension
    "ods", MimeType
    "application/vnd.oasis.opendocument.spreadsheet")
        , (Extension
    "odt", MimeType
    "application/vnd.oasis.opendocument.text")
        , (Extension
    "oga", MimeType
    "audio/ogg")
        , (Extension
    "ogg", MimeType
    "audio/ogg")
        , (Extension
    "ogv", MimeType
    "video/ogg")
        , (Extension
    "ogx", MimeType
    "application/ogg")
        , (Extension
    "omdoc", MimeType
    "application/omdoc+xml")
        , (Extension
    "onepkg", MimeType
    "application/onenote")
        , (Extension
    "onetmp", MimeType
    "application/onenote")
        , (Extension
    "onetoc", MimeType
    "application/onenote")
        , (Extension
    "onetoc2", MimeType
    "application/onenote")
        , (Extension
    "opf", MimeType
    "application/oebps-package+xml")
        , (Extension
    "opml", MimeType
    "text/x-opml")
        , (Extension
    "oprc", MimeType
    "application/vnd.palm")
        , (Extension
    "opus", MimeType
    "audio/opus")
        , (Extension
    "org", MimeType
    "application/vnd.lotus-organizer")
        , (Extension
    "osf", MimeType
    "application/vnd.yamaha.openscoreformat")
        , (Extension
    "osfpvg", MimeType
    "application/vnd.yamaha.openscoreformat.osfpvg+xml")
        , (Extension
    "otc", MimeType
    "application/vnd.oasis.opendocument.chart-template")
        , (Extension
    "otf", MimeType
    "font/otf")
        , (Extension
    "otg", MimeType
    "application/vnd.oasis.opendocument.graphics-template")
        , (Extension
    "oth", MimeType
    "application/vnd.oasis.opendocument.text-web")
        , (Extension
    "oti", MimeType
    "application/vnd.oasis.opendocument.image-template")
        , (Extension
    "otp", MimeType
    "application/vnd.oasis.opendocument.presentation-template")
        , (Extension
    "ots", MimeType
    "application/vnd.oasis.opendocument.spreadsheet-template")
        , (Extension
    "ott", MimeType
    "application/vnd.oasis.opendocument.text-template")
        , (Extension
    "oxps", MimeType
    "application/oxps")
        , (Extension
    "oxt", MimeType
    "application/vnd.openofficeorg.extension")
        , (Extension
    "p", MimeType
    "text/x-pascal")
        , (Extension
    "p10", MimeType
    "application/pkcs10")
        , (Extension
    "p12", MimeType
    "application/x-pkcs12")
        , (Extension
    "p7b", MimeType
    "application/x-pkcs7-certificates")
        , (Extension
    "p7c", MimeType
    "application/pkcs7-mime")
        , (Extension
    "p7m", MimeType
    "application/pkcs7-mime")
        , (Extension
    "p7r", MimeType
    "application/x-pkcs7-certreqresp")
        , (Extension
    "p7s", MimeType
    "application/pkcs7-signature")
        , (Extension
    "p8", MimeType
    "application/pkcs8")
        , (Extension
    "pac", MimeType
    "application/x-ns-proxy-autoconfig")
        , (Extension
    "pas", MimeType
    "text/x-pascal")
        , (Extension
    "paw", MimeType
    "application/vnd.pawaafile")
        , (Extension
    "pbd", MimeType
    "application/vnd.powerbuilder6")
        , (Extension
    "pbm", MimeType
    "image/x-portable-bitmap")
        , (Extension
    "pcap", MimeType
    "application/vnd.tcpdump.pcap")
        , (Extension
    "pcf", MimeType
    "application/x-font-pcf")
        , (Extension
    "pcl", MimeType
    "application/vnd.hp-pcl")
        , (Extension
    "pclxl", MimeType
    "application/vnd.hp-pclxl")
        , (Extension
    "pct", MimeType
    "image/x-pict")
        , (Extension
    "pcurl", MimeType
    "application/vnd.curl.pcurl")
        , (Extension
    "pcx", MimeType
    "image/vnd.zbrush.pcx")
        , (Extension
    "pdb", MimeType
    "application/vnd.palm")
        , (Extension
    "pdf", MimeType
    "application/pdf")
        , (Extension
    "pem", MimeType
    "application/x-x509-ca-cert")
        , (Extension
    "pfa", MimeType
    "application/x-font-type1")
        , (Extension
    "pfb", MimeType
    "application/x-font-type1")
        , (Extension
    "pfm", MimeType
    "application/x-font-type1")
        , (Extension
    "pfr", MimeType
    "application/font-tdpfr")
        , (Extension
    "pfx", MimeType
    "application/x-pkcs12")
        , (Extension
    "pgm", MimeType
    "image/x-portable-graymap")
        , (Extension
    "pgn", MimeType
    "application/x-chess-pgn")
        , (Extension
    "pgp", MimeType
    "application/pgp-encrypted")
        , (Extension
    "pic", MimeType
    "image/x-pict")
        , (Extension
    "pkg", MimeType
    "application/octet-stream")
        , (Extension
    "pki", MimeType
    "application/pkixcmp")
        , (Extension
    "pkipath", MimeType
    "application/pkix-pkipath")
        , (Extension
    "pl", MimeType
    "application/x-perl")
        , (Extension
    "plb", MimeType
    "application/vnd.3gpp.pic-bw-large")
        , (Extension
    "plc", MimeType
    "application/vnd.mobius.plc")
        , (Extension
    "plf", MimeType
    "application/vnd.pocketlearn")
        , (Extension
    "pls", MimeType
    "application/pls+xml")
        , (Extension
    "pm", MimeType
    "application/x-perl")
        , (Extension
    "pml", MimeType
    "application/vnd.ctc-posml")
        , (Extension
    "png", MimeType
    "image/png")
        , (Extension
    "pnm", MimeType
    "image/x-portable-anymap")
        , (Extension
    "portpkg", MimeType
    "application/vnd.macports.portpkg")
        , (Extension
    "pot", MimeType
    "application/vnd.ms-powerpoint")
        , (Extension
    "potm", MimeType
    "application/vnd.ms-powerpoint.template.macroenabled.12")
        , (Extension
    "potx", MimeType
    "application/vnd.openxmlformats-officedocument.presentationml.template")
        , (Extension
    "ppam", MimeType
    "application/vnd.ms-powerpoint.addin.macroenabled.12")
        , (Extension
    "ppd", MimeType
    "application/vnd.cups-ppd")
        , (Extension
    "ppm", MimeType
    "image/x-portable-pixmap")
        , (Extension
    "pps", MimeType
    "application/vnd.ms-powerpoint")
        , (Extension
    "ppsm", MimeType
    "application/vnd.ms-powerpoint.slideshow.macroenabled.12")
        , (Extension
    "ppsx", MimeType
    "application/vnd.openxmlformats-officedocument.presentationml.slideshow")
        , (Extension
    "ppt", MimeType
    "application/vnd.ms-powerpoint")
        , (Extension
    "pptm", MimeType
    "application/vnd.ms-powerpoint.presentation.macroenabled.12")
        , (Extension
    "pptx", MimeType
    "application/vnd.openxmlformats-officedocument.presentationml.presentation")
        , (Extension
    "pqa", MimeType
    "application/vnd.palm")
        , (Extension
    "prc", MimeType
    "application/x-mobipocket-ebook")
        , (Extension
    "pre", MimeType
    "application/vnd.lotus-freelance")
        , (Extension
    "prf", MimeType
    "application/pics-rules")
        , (Extension
    "ps", MimeType
    "application/postscript")
        , (Extension
    "psb", MimeType
    "application/vnd.3gpp.pic-bw-small")
        , (Extension
    "psd", MimeType
    "image/vnd.adobe.photoshop")
        , (Extension
    "psf", MimeType
    "application/x-font-linux-psf")
        , (Extension
    "pskcxml", MimeType
    "application/pskc+xml")
        , (Extension
    "ptid", MimeType
    "application/vnd.pvi.ptid1")
        , (Extension
    "pub", MimeType
    "application/x-mspublisher")
        , (Extension
    "pvb", MimeType
    "application/vnd.3gpp.pic-bw-var")
        , (Extension
    "pwn", MimeType
    "application/vnd.3m.post-it-notes")
        , (Extension
    "pya", MimeType
    "audio/vnd.ms-playready.media.pya")
        , (Extension
    "pyv", MimeType
    "video/vnd.ms-playready.media.pyv")
        , (Extension
    "qam", MimeType
    "application/vnd.epson.quickanime")
        , (Extension
    "qbo", MimeType
    "application/vnd.intu.qbo")
        , (Extension
    "qfx", MimeType
    "application/vnd.intu.qfx")
        , (Extension
    "qps", MimeType
    "application/vnd.publishare-delta-tree")
        , (Extension
    "qt", MimeType
    "video/quicktime")
        , (Extension
    "qwd", MimeType
    "application/vnd.quark.quarkxpress")
        , (Extension
    "qwt", MimeType
    "application/vnd.quark.quarkxpress")
        , (Extension
    "qxb", MimeType
    "application/vnd.quark.quarkxpress")
        , (Extension
    "qxd", MimeType
    "application/vnd.quark.quarkxpress")
        , (Extension
    "qxl", MimeType
    "application/vnd.quark.quarkxpress")
        , (Extension
    "qxt", MimeType
    "application/vnd.quark.quarkxpress")
        , (Extension
    "ra", MimeType
    "audio/x-pn-realaudio")
        , (Extension
    "ram", MimeType
    "audio/x-pn-realaudio")
        , (Extension
    "rar", MimeType
    "application/vnd.rar")
        , (Extension
    "ras", MimeType
    "image/x-cmu-raster")
        , (Extension
    "rcprofile", MimeType
    "application/vnd.ipunplugged.rcprofile")
        , (Extension
    "rdf", MimeType
    "application/rdf+xml")
        , (Extension
    "rdz", MimeType
    "application/vnd.data-vision.rdz")
        , (Extension
    "rep", MimeType
    "application/vnd.businessobjects")
        , (Extension
    "res", MimeType
    "application/x-dtbresource+xml")
        , (Extension
    "rgb", MimeType
    "image/x-rgb")
        , (Extension
    "rif", MimeType
    "application/reginfo+xml")
        , (Extension
    "rip", MimeType
    "audio/vnd.rip")
        , (Extension
    "ris", MimeType
    "application/x-research-info-systems")
        , (Extension
    "rl", MimeType
    "application/resource-lists+xml")
        , (Extension
    "rlc", MimeType
    "image/vnd.fujixerox.edmics-rlc")
        , (Extension
    "rld", MimeType
    "application/resource-lists-diff+xml")
        , (Extension
    "rm", MimeType
    "application/vnd.rn-realmedia")
        , (Extension
    "rmi", MimeType
    "audio/midi")
        , (Extension
    "rmp", MimeType
    "audio/x-pn-realaudio-plugin")
        , (Extension
    "rms", MimeType
    "application/vnd.jcp.javame.midlet-rms")
        , (Extension
    "rmvb", MimeType
    "application/vnd.rn-realmedia-vbr")
        , (Extension
    "rnc", MimeType
    "application/relax-ng-compact-syntax")
        , (Extension
    "roa", MimeType
    "application/rpki-roa")
        , (Extension
    "roff", MimeType
    "text/troff")
        , (Extension
    "rp9", MimeType
    "application/vnd.cloanto.rp9")
        , (Extension
    "rpm", MimeType
    "application/x-redhat-package-manager")
        , (Extension
    "rpss", MimeType
    "application/vnd.nokia.radio-presets")
        , (Extension
    "rpst", MimeType
    "application/vnd.nokia.radio-preset")
        , (Extension
    "rq", MimeType
    "application/sparql-query")
        , (Extension
    "rs", MimeType
    "application/rls-services+xml")
        , (Extension
    "rsd", MimeType
    "application/rsd+xml")
        , (Extension
    "rss", MimeType
    "application/rss+xml")
        , (Extension
    "rtf", MimeType
    "application/rtf")
        , (Extension
    "rtx", MimeType
    "text/richtext")
        , (Extension
    "run", MimeType
    "application/x-makeself")
        , (Extension
    "s", MimeType
    "text/x-asm")
        , (Extension
    "s3m", MimeType
    "audio/s3m")
        , (Extension
    "saf", MimeType
    "application/vnd.yamaha.smaf-audio")
        , (Extension
    "sbml", MimeType
    "application/sbml+xml")
        , (Extension
    "sc", MimeType
    "application/vnd.ibm.secure-container")
        , (Extension
    "scd", MimeType
    "application/x-msschedule")
        , (Extension
    "scm", MimeType
    "application/vnd.lotus-screencam")
        , (Extension
    "scq", MimeType
    "application/scvp-cv-request")
        , (Extension
    "scs", MimeType
    "application/scvp-cv-response")
        , (Extension
    "scurl", MimeType
    "text/vnd.curl.scurl")
        , (Extension
    "sda", MimeType
    "application/vnd.stardivision.draw")
        , (Extension
    "sdc", MimeType
    "application/vnd.stardivision.calc")
        , (Extension
    "sdd", MimeType
    "application/vnd.stardivision.impress")
        , (Extension
    "sdkd", MimeType
    "application/vnd.solent.sdkm+xml")
        , (Extension
    "sdkm", MimeType
    "application/vnd.solent.sdkm+xml")
        , (Extension
    "sdp", MimeType
    "application/sdp")
        , (Extension
    "sdw", MimeType
    "application/vnd.stardivision.writer")
        , (Extension
    "sea", MimeType
    "application/x-sea")
        , (Extension
    "see", MimeType
    "application/vnd.seemail")
        , (Extension
    "seed", MimeType
    "application/vnd.fdsn.seed")
        , (Extension
    "sema", MimeType
    "application/vnd.sema")
        , (Extension
    "semd", MimeType
    "application/vnd.semd")
        , (Extension
    "semf", MimeType
    "application/vnd.semf")
        , (Extension
    "ser", MimeType
    "application/java-serialized-object")
        , (Extension
    "setpay", MimeType
    "application/set-payment-initiation")
        , (Extension
    "setreg", MimeType
    "application/set-registration-initiation")
        , (Extension
    "sfd-hdstx", MimeType
    "application/vnd.hydrostatix.sof-data")
        , (Extension
    "sfs", MimeType
    "application/vnd.spotfire.sfs")
        , (Extension
    "sfv", MimeType
    "text/x-sfv")
        , (Extension
    "sgi", MimeType
    "image/sgi")
        , (Extension
    "sgl", MimeType
    "application/vnd.stardivision.writer-global")
        , (Extension
    "sgm", MimeType
    "text/sgml")
        , (Extension
    "sgml", MimeType
    "text/sgml")
        , (Extension
    "sh", MimeType
    "application/x-sh")
        , (Extension
    "shar", MimeType
    "application/x-shar")
        , (Extension
    "shf", MimeType
    "application/shf+xml")
        , (Extension
    "shtml", MimeType
    "text/html")
        , (Extension
    "sid", MimeType
    "image/x-mrsid-image")
        , (Extension
    "sig", MimeType
    "application/pgp-signature")
        , (Extension
    "sil", MimeType
    "audio/silk")
        , (Extension
    "silo", MimeType
    "model/mesh")
        , (Extension
    "sis", MimeType
    "application/vnd.symbian.install")
        , (Extension
    "sisx", MimeType
    "application/vnd.symbian.install")
        , (Extension
    "sit", MimeType
    "application/x-stuffit")
        , (Extension
    "sitx", MimeType
    "application/x-stuffitx")
        , (Extension
    "skd", MimeType
    "application/vnd.koan")
        , (Extension
    "skm", MimeType
    "application/vnd.koan")
        , (Extension
    "skp", MimeType
    "application/vnd.koan")
        , (Extension
    "skt", MimeType
    "application/vnd.koan")
        , (Extension
    "sldm", MimeType
    "application/vnd.ms-powerpoint.slide.macroenabled.12")
        , (Extension
    "sldx", MimeType
    "application/vnd.openxmlformats-officedocument.presentationml.slide")
        , (Extension
    "slt", MimeType
    "application/vnd.epson.salt")
        , (Extension
    "sm", MimeType
    "application/vnd.stepmania.stepchart")
        , (Extension
    "smf", MimeType
    "application/vnd.stardivision.math")
        , (Extension
    "smi", MimeType
    "application/smil+xml")
        , (Extension
    "smil", MimeType
    "application/smil+xml")
        , (Extension
    "smv", MimeType
    "video/x-smv")
        , (Extension
    "smzip", MimeType
    "application/vnd.stepmania.package")
        , (Extension
    "snd", MimeType
    "audio/basic")
        , (Extension
    "snf", MimeType
    "application/x-font-snf")
        , (Extension
    "so", MimeType
    "application/octet-stream")
        , (Extension
    "spc", MimeType
    "application/x-pkcs7-certificates")
        , (Extension
    "spf", MimeType
    "application/vnd.yamaha.smaf-phrase")
        , (Extension
    "spl", MimeType
    "application/futuresplash")
        , (Extension
    "spot", MimeType
    "text/vnd.in3d.spot")
        , (Extension
    "spp", MimeType
    "application/scvp-vp-response")
        , (Extension
    "spq", MimeType
    "application/scvp-vp-request")
        , (Extension
    "spx", MimeType
    "audio/ogg")
        , (Extension
    "sql", MimeType
    "application/x-sql")
        , (Extension
    "src", MimeType
    "application/x-wais-source")
        , (Extension
    "srt", MimeType
    "application/x-subrip")
        , (Extension
    "sru", MimeType
    "application/sru+xml")
        , (Extension
    "srx", MimeType
    "application/sparql-results+xml")
        , (Extension
    "ssdl", MimeType
    "application/ssdl+xml")
        , (Extension
    "sse", MimeType
    "application/vnd.kodak-descriptor")
        , (Extension
    "ssf", MimeType
    "application/vnd.epson.ssf")
        , (Extension
    "ssml", MimeType
    "application/ssml+xml")
        , (Extension
    "st", MimeType
    "application/vnd.sailingtracker.track")
        , (Extension
    "stc", MimeType
    "application/vnd.sun.xml.calc.template")
        , (Extension
    "std", MimeType
    "application/vnd.sun.xml.draw.template")
        , (Extension
    "stf", MimeType
    "application/vnd.wt.stf")
        , (Extension
    "sti", MimeType
    "application/vnd.sun.xml.impress.template")
        , (Extension
    "stk", MimeType
    "application/hyperstudio")
        , (Extension
    "stl", MimeType
    "application/vnd.ms-pki.stl")
        , (Extension
    "str", MimeType
    "application/vnd.pg.format")
        , (Extension
    "stw", MimeType
    "application/vnd.sun.xml.writer.template")
        , (Extension
    "sty", MimeType
    "application/x-tex")
        , (Extension
    "sub", MimeType
    "text/vnd.dvb.subtitle")
        , (Extension
    "sus", MimeType
    "application/vnd.sus-calendar")
        , (Extension
    "susp", MimeType
    "application/vnd.sus-calendar")
        , (Extension
    "sv4cpio", MimeType
    "application/x-sv4cpio")
        , (Extension
    "sv4crc", MimeType
    "application/x-sv4crc")
        , (Extension
    "svc", MimeType
    "application/vnd.dvb.service")
        , (Extension
    "svd", MimeType
    "application/vnd.svd")
        , (Extension
    "svg", MimeType
    "image/svg+xml")
        , (Extension
    "svgz", MimeType
    "image/svg+xml")
        , (Extension
    "swa", MimeType
    "application/x-director")
        , (Extension
    "swf", MimeType
    "application/x-shockwave-flash")
        , (Extension
    "swi", MimeType
    "application/vnd.aristanetworks.swi")
        , (Extension
    "sxc", MimeType
    "application/vnd.sun.xml.calc")
        , (Extension
    "sxd", MimeType
    "application/vnd.sun.xml.draw")
        , (Extension
    "sxg", MimeType
    "application/vnd.sun.xml.writer.global")
        , (Extension
    "sxi", MimeType
    "application/vnd.sun.xml.impress")
        , (Extension
    "sxm", MimeType
    "application/vnd.sun.xml.math")
        , (Extension
    "sxw", MimeType
    "application/vnd.sun.xml.writer")
        , (Extension
    "t", MimeType
    "text/troff")
        , (Extension
    "t3", MimeType
    "application/x-t3vm-image")
        , (Extension
    "taglet", MimeType
    "application/vnd.mynfc")
        , (Extension
    "tao", MimeType
    "application/vnd.tao.intent-module-archive")
        , (Extension
    "tar", MimeType
    "application/x-tar")
        , (Extension
    "tar.bz2", MimeType
    "application/x-bzip-compressed-tar")
        , (Extension
    "tar.gz", MimeType
    "application/x-tgz")
        , (Extension
    "tbz", MimeType
    "application/x-bzip-compressed-tar")
        , (Extension
    "tcap", MimeType
    "application/vnd.3gpp2.tcap")
        , (Extension
    "tcl", MimeType
    "application/x-tcl")
        , (Extension
    "teacher", MimeType
    "application/vnd.smart.teacher")
        , (Extension
    "tei", MimeType
    "application/tei+xml")
        , (Extension
    "teicorpus", MimeType
    "application/tei+xml")
        , (Extension
    "tex", MimeType
    "application/x-tex")
        , (Extension
    "texi", MimeType
    "application/x-texinfo")
        , (Extension
    "texinfo", MimeType
    "application/x-texinfo")
        , (Extension
    "text", MimeType
    "text/plain")
        , (Extension
    "tfi", MimeType
    "application/thraud+xml")
        , (Extension
    "tfm", MimeType
    "application/x-tex-tfm")
        , (Extension
    "tga", MimeType
    "image/x-tga")
        , (Extension
    "tgz", MimeType
    "application/x-tgz")
        , (Extension
    "thmx", MimeType
    "application/vnd.ms-officetheme")
        , (Extension
    "tif", MimeType
    "image/tiff")
        , (Extension
    "tiff", MimeType
    "image/tiff")
        , (Extension
    "tk", MimeType
    "application/x-tcl")
        , (Extension
    "tmo", MimeType
    "application/vnd.tmobile-livetv")
        , (Extension
    "torrent", MimeType
    "application/x-bittorrent")
        , (Extension
    "tpl", MimeType
    "application/vnd.groove-tool-template")
        , (Extension
    "tpt", MimeType
    "application/vnd.trid.tpt")
        , (Extension
    "tr", MimeType
    "text/troff")
        , (Extension
    "tra", MimeType
    "application/vnd.trueapp")
        , (Extension
    "trm", MimeType
    "application/x-msterminal")
        , (Extension
    "tsd", MimeType
    "application/timestamped-data")
        , (Extension
    "tsv", MimeType
    "text/tab-separated-values")
        , (Extension
    "ttc", MimeType
    "font/ttf")
        , (Extension
    "ttf", MimeType
    "font/ttf")
        , (Extension
    "ttl", MimeType
    "text/turtle")
        , (Extension
    "twd", MimeType
    "application/vnd.simtech-mindmapper")
        , (Extension
    "twds", MimeType
    "application/vnd.simtech-mindmapper")
        , (Extension
    "txd", MimeType
    "application/vnd.genomatix.tuxedo")
        , (Extension
    "txf", MimeType
    "application/vnd.mobius.txf")
        , (Extension
    "txt", MimeType
    "text/plain")
        , (Extension
    "u32", MimeType
    "application/x-authorware-bin")
        , (Extension
    "udeb", MimeType
    "application/x-debian-package")
        , (Extension
    "ufd", MimeType
    "application/vnd.ufdl")
        , (Extension
    "ufdl", MimeType
    "application/vnd.ufdl")
        , (Extension
    "ulx", MimeType
    "application/x-glulx")
        , (Extension
    "umj", MimeType
    "application/vnd.umajin")
        , (Extension
    "unityweb", MimeType
    "application/vnd.unity")
        , (Extension
    "uoml", MimeType
    "application/vnd.uoml+xml")
        , (Extension
    "uri", MimeType
    "text/uri-list")
        , (Extension
    "uris", MimeType
    "text/uri-list")
        , (Extension
    "urls", MimeType
    "text/uri-list")
        , (Extension
    "ustar", MimeType
    "application/x-ustar")
        , (Extension
    "utz", MimeType
    "application/vnd.uiq.theme")
        , (Extension
    "uu", MimeType
    "text/x-uuencode")
        , (Extension
    "uva", MimeType
    "audio/vnd.dece.audio")
        , (Extension
    "uvd", MimeType
    "application/vnd.dece.data")
        , (Extension
    "uvf", MimeType
    "application/vnd.dece.data")
        , (Extension
    "uvg", MimeType
    "image/vnd.dece.graphic")
        , (Extension
    "uvh", MimeType
    "video/vnd.dece.hd")
        , (Extension
    "uvi", MimeType
    "image/vnd.dece.graphic")
        , (Extension
    "uvm", MimeType
    "video/vnd.dece.mobile")
        , (Extension
    "uvp", MimeType
    "video/vnd.dece.pd")
        , (Extension
    "uvs", MimeType
    "video/vnd.dece.sd")
        , (Extension
    "uvt", MimeType
    "application/vnd.dece.ttml+xml")
        , (Extension
    "uvu", MimeType
    "video/vnd.uvvu.mp4")
        , (Extension
    "uvv", MimeType
    "video/vnd.dece.video")
        , (Extension
    "uvva", MimeType
    "audio/vnd.dece.audio")
        , (Extension
    "uvvd", MimeType
    "application/vnd.dece.data")
        , (Extension
    "uvvf", MimeType
    "application/vnd.dece.data")
        , (Extension
    "uvvg", MimeType
    "image/vnd.dece.graphic")
        , (Extension
    "uvvh", MimeType
    "video/vnd.dece.hd")
        , (Extension
    "uvvi", MimeType
    "image/vnd.dece.graphic")
        , (Extension
    "uvvm", MimeType
    "video/vnd.dece.mobile")
        , (Extension
    "uvvp", MimeType
    "video/vnd.dece.pd")
        , (Extension
    "uvvs", MimeType
    "video/vnd.dece.sd")
        , (Extension
    "uvvt", MimeType
    "application/vnd.dece.ttml+xml")
        , (Extension
    "uvvu", MimeType
    "video/vnd.uvvu.mp4")
        , (Extension
    "uvvv", MimeType
    "video/vnd.dece.video")
        , (Extension
    "uvvx", MimeType
    "application/vnd.dece.unspecified")
        , (Extension
    "uvvz", MimeType
    "application/vnd.dece.zip")
        , (Extension
    "uvx", MimeType
    "application/vnd.dece.unspecified")
        , (Extension
    "uvz", MimeType
    "application/vnd.dece.zip")
        , (Extension
    "vcard", MimeType
    "text/vcard")
        , (Extension
    "vcd", MimeType
    "application/x-cdlink")
        , (Extension
    "vcf", MimeType
    "text/x-vcard")
        , (Extension
    "vcg", MimeType
    "application/vnd.groove-vcard")
        , (Extension
    "vcs", MimeType
    "text/x-vcalendar")
        , (Extension
    "vcx", MimeType
    "application/vnd.vcx")
        , (Extension
    "vis", MimeType
    "application/vnd.visionary")
        , (Extension
    "viv", MimeType
    "video/vnd.vivo")
        , (Extension
    "vob", MimeType
    "video/x-ms-vob")
        , (Extension
    "vor", MimeType
    "application/vnd.stardivision.writer")
        , (Extension
    "vox", MimeType
    "application/x-authorware-bin")
        , (Extension
    "vrml", MimeType
    "model/vrml")
        , (Extension
    "vsd", MimeType
    "application/vnd.visio")
        , (Extension
    "vsf", MimeType
    "application/vnd.vsf")
        , (Extension
    "vss", MimeType
    "application/vnd.visio")
        , (Extension
    "vst", MimeType
    "application/vnd.visio")
        , (Extension
    "vsw", MimeType
    "application/vnd.visio")
        , (Extension
    "vtt", MimeType
    "text/vtt")
        , (Extension
    "vtu", MimeType
    "model/vnd.vtu")
        , (Extension
    "vxml", MimeType
    "application/voicexml+xml")
        , (Extension
    "w3d", MimeType
    "application/x-director")
        , (Extension
    "wad", MimeType
    "application/x-doom")
        , (Extension
    "war", MimeType
    "application/java-archive")
        , (Extension
    "wasm", MimeType
    "application/wasm")
        , (Extension
    "wav", MimeType
    "audio/x-wav")
        , (Extension
    "wax", MimeType
    "audio/x-ms-wax")
        , (Extension
    "wbmp", MimeType
    "image/vnd.wap.wbmp")
        , (Extension
    "wbs", MimeType
    "application/vnd.criticaltools.wbs+xml")
        , (Extension
    "wbxml", MimeType
    "application/vnd.wap.wbxml")
        , (Extension
    "wcm", MimeType
    "application/vnd.ms-works")
        , (Extension
    "wdb", MimeType
    "application/vnd.ms-works")
        , (Extension
    "wdp", MimeType
    "image/vnd.ms-photo")
        , (Extension
    "weba", MimeType
    "audio/webm")
        , (Extension
    "webm", MimeType
    "video/webm")
        , (Extension
    "webp", MimeType
    "image/webp")
        , (Extension
    "wg", MimeType
    "application/vnd.pmi.widget")
        , (Extension
    "wgt", MimeType
    "application/widget")
        , (Extension
    "wks", MimeType
    "application/vnd.ms-works")
        , (Extension
    "wm", MimeType
    "video/x-ms-wm")
        , (Extension
    "wma", MimeType
    "audio/x-ms-wma")
        , (Extension
    "wmd", MimeType
    "application/x-ms-wmd")
        , (Extension
    "wmf", MimeType
    "application/x-msmetafile")
        , (Extension
    "wml", MimeType
    "text/vnd.wap.wml")
        , (Extension
    "wmlc", MimeType
    "application/vnd.wap.wmlc")
        , (Extension
    "wmls", MimeType
    "text/vnd.wap.wmlscript")
        , (Extension
    "wmlsc", MimeType
    "application/vnd.wap.wmlscriptc")
        , (Extension
    "wmv", MimeType
    "video/x-ms-wmv")
        , (Extension
    "wmx", MimeType
    "video/x-ms-wmx")
        , (Extension
    "wmz", MimeType
    "application/x-msmetafile")
        , (Extension
    "woff", MimeType
    "font/woff")
        , (Extension
    "woff2", MimeType
    "font/woff2")
        , (Extension
    "wpd", MimeType
    "application/vnd.wordperfect")
        , (Extension
    "wpl", MimeType
    "application/vnd.ms-wpl")
        , (Extension
    "wps", MimeType
    "application/vnd.ms-works")
        , (Extension
    "wqd", MimeType
    "application/vnd.wqd")
        , (Extension
    "wri", MimeType
    "application/x-mswrite")
        , (Extension
    "wrl", MimeType
    "model/vrml")
        , (Extension
    "wsdl", MimeType
    "application/wsdl+xml")
        , (Extension
    "wspolicy", MimeType
    "application/wspolicy+xml")
        , (Extension
    "wtb", MimeType
    "application/vnd.webturbo")
        , (Extension
    "wvx", MimeType
    "video/x-ms-wvx")
        , (Extension
    "x32", MimeType
    "application/x-authorware-bin")
        , (Extension
    "x3d", MimeType
    "model/x3d+xml")
        , (Extension
    "x3db", MimeType
    "model/x3d+binary")
        , (Extension
    "x3dbz", MimeType
    "model/x3d+binary")
        , (Extension
    "x3dv", MimeType
    "model/x3d+vrml")
        , (Extension
    "x3dvz", MimeType
    "model/x3d+vrml")
        , (Extension
    "x3dz", MimeType
    "model/x3d+xml")
        , (Extension
    "xaml", MimeType
    "application/xaml+xml")
        , (Extension
    "xap", MimeType
    "application/x-silverlight-app")
        , (Extension
    "xar", MimeType
    "application/vnd.xara")
        , (Extension
    "xbap", MimeType
    "application/x-ms-xbap")
        , (Extension
    "xbd", MimeType
    "application/vnd.fujixerox.docuworks.binder")
        , (Extension
    "xbm", MimeType
    "image/x-xbitmap")
        , (Extension
    "xcf", MimeType
    "image/x-xcf")
        , (Extension
    "xdf", MimeType
    "application/xcap-diff+xml")
        , (Extension
    "xdm", MimeType
    "application/vnd.syncml.dm+xml")
        , (Extension
    "xdp", MimeType
    "application/vnd.adobe.xdp+xml")
        , (Extension
    "xdssc", MimeType
    "application/dssc+xml")
        , (Extension
    "xdw", MimeType
    "application/vnd.fujixerox.docuworks")
        , (Extension
    "xenc", MimeType
    "application/xenc+xml")
        , (Extension
    "xer", MimeType
    "application/patch-ops-error+xml")
        , (Extension
    "xfdf", MimeType
    "application/vnd.adobe.xfdf")
        , (Extension
    "xfdl", MimeType
    "application/vnd.xfdl")
        , (Extension
    "xht", MimeType
    "application/xhtml+xml")
        , (Extension
    "xhtml", MimeType
    "application/xhtml+xml")
        , (Extension
    "xhvml", MimeType
    "application/xv+xml")
        , (Extension
    "xif", MimeType
    "image/vnd.xiff")
        , (Extension
    "xla", MimeType
    "application/vnd.ms-excel")
        , (Extension
    "xlam", MimeType
    "application/vnd.ms-excel.addin.macroenabled.12")
        , (Extension
    "xlc", MimeType
    "application/vnd.ms-excel")
        , (Extension
    "xlf", MimeType
    "application/x-xliff+xml")
        , (Extension
    "xlm", MimeType
    "application/vnd.ms-excel")
        , (Extension
    "xls", MimeType
    "application/vnd.ms-excel")
        , (Extension
    "xlsb", MimeType
    "application/vnd.ms-excel.sheet.binary.macroenabled.12")
        , (Extension
    "xlsm", MimeType
    "application/vnd.ms-excel.sheet.macroenabled.12")
        , (Extension
    "xlsx", MimeType
    "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
        , (Extension
    "xlt", MimeType
    "application/vnd.ms-excel")
        , (Extension
    "xltm", MimeType
    "application/vnd.ms-excel.template.macroenabled.12")
        , (Extension
    "xltx", MimeType
    "application/vnd.openxmlformats-officedocument.spreadsheetml.template")
        , (Extension
    "xlw", MimeType
    "application/vnd.ms-excel")
        , (Extension
    "xm", MimeType
    "audio/xm")
        , (Extension
    "xml", MimeType
    "application/xml")
        , (Extension
    "xo", MimeType
    "application/vnd.olpc-sugar")
        , (Extension
    "xop", MimeType
    "application/xop+xml")
        , (Extension
    "xpi", MimeType
    "application/x-xpinstall")
        , (Extension
    "xpl", MimeType
    "application/xproc+xml")
        , (Extension
    "xpm", MimeType
    "image/x-xpixmap")
        , (Extension
    "xpr", MimeType
    "application/vnd.is-xpr")
        , (Extension
    "xps", MimeType
    "application/vnd.ms-xpsdocument")
        , (Extension
    "xpw", MimeType
    "application/vnd.intercon.formnet")
        , (Extension
    "xpx", MimeType
    "application/vnd.intercon.formnet")
        , (Extension
    "xsl", MimeType
    "application/xml")
        , (Extension
    "xslt", MimeType
    "application/xslt+xml")
        , (Extension
    "xsm", MimeType
    "application/vnd.syncml+xml")
        , (Extension
    "xspf", MimeType
    "application/xspf+xml")
        , (Extension
    "xul", MimeType
    "application/vnd.mozilla.xul+xml")
        , (Extension
    "xvm", MimeType
    "application/xv+xml")
        , (Extension
    "xvml", MimeType
    "application/xv+xml")
        , (Extension
    "xwd", MimeType
    "image/x-xwindowdump")
        , (Extension
    "xyz", MimeType
    "chemical/x-xyz")
        , (Extension
    "xz", MimeType
    "application/x-xz")
        , (Extension
    "yang", MimeType
    "application/yang")
        , (Extension
    "yin", MimeType
    "application/yin+xml")
        , (Extension
    "z1", MimeType
    "application/x-zmachine")
        , (Extension
    "z2", MimeType
    "application/x-zmachine")
        , (Extension
    "z3", MimeType
    "application/x-zmachine")
        , (Extension
    "z4", MimeType
    "application/x-zmachine")
        , (Extension
    "z5", MimeType
    "application/x-zmachine")
        , (Extension
    "z6", MimeType
    "application/x-zmachine")
        , (Extension
    "z7", MimeType
    "application/x-zmachine")
        , (Extension
    "z8", MimeType
    "application/x-zmachine")
        , (Extension
    "zaz", MimeType
    "application/vnd.zzazz.deck+xml")
        , (Extension
    "zip", MimeType
    "application/zip")
        , (Extension
    "zir", MimeType
    "application/vnd.zul")
        , (Extension
    "zirz", MimeType
    "application/vnd.zul")
        , (Extension
    "zmm", MimeType
    "application/vnd.handheld-entertainment+xml")
        ]