From df02c9e06cffcf98f5ffed7fbc9844bd47badd43 Mon Sep 17 00:00:00 2001 From: "Kamshory, MT" Date: Fri, 26 Sep 2025 11:17:58 +0700 Subject: [PATCH 1/3] Enhancement: Improved `getDatabaseCredentialsFromPdo` Handling --- CHANGELOG.md | 17 ++++ src/Database/PicoDatabase.php | 169 ++++++++++++++++++++-------------- 2 files changed, 119 insertions(+), 67 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5101950..e51a8e3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1391,6 +1391,23 @@ This provides a **persistent session storage** mechanism using **SQLite** as the * **Lightweight:** Suitable for shared hosting or small applications. * **Reliability:** Prevents session loss when PHP restarts, unlike file-based sessions. +## New Feature: PDO Connection Verification Method + +A new method isPdoConnected() has been introduced to allow developers to verify not only the TCP-level connection, but also the ability of PHP to execute SQL statements on the database. + +Here’s the corrected version with improved grammar and clarity: + + +## Bug Fix: Handle Exception in method getDatabaseCredentialsFromPdo($pdo, $driver, $dbType) + +If an error occurs when executing: + +```php +$dsn = $pdo->getAttribute(PDO::ATTR_CONNECTION_STATUS); +``` + +`getDatabaseCredentialsFromPdo($pdo, $driver, $dbType)` will return an empty instance of `SecretObject`. + ## Enhancement: Improved `getDatabaseCredentialsFromPdo` Handling The method **`getDatabaseCredentialsFromPdo`** has been updated to better handle diff --git a/src/Database/PicoDatabase.php b/src/Database/PicoDatabase.php index 7e58cfb..770b32d 100644 --- a/src/Database/PicoDatabase.php +++ b/src/Database/PicoDatabase.php @@ -101,23 +101,32 @@ class PicoDatabase // NOSONAR /** * Creates a PicoDatabase instance from an existing PDO connection. * - * This static method accepts a PDO connection object, initializes a new - * PicoDatabase instance, and sets up the database connection and type. - * It also marks the database as connected and returns the configured - * PicoDatabase object. - * - * @param PDO $pdo The PDO connection object representing an active connection to the database. + * This static method accepts a PDO connection object and attempts to extract + * database credentials (such as host, port, schema, and timezone) directly + * from the connection. If certain details cannot be retrieved from the PDO + * object (for example, if the driver does not support a specific attribute), + * the method will use the optional $databaseCredentials parameter as a + * fallback source. + * + * The resulting PicoDatabase instance will contain the PDO connection, + * resolved database type, and credentials, and will be marked as connected. + * + * @param PDO $pdo The PDO connection object representing an active + * connection to the database. + * @param SecretObject|null $databaseCredentials Optional fallback credentials + * to use if details cannot be extracted from the PDO object. * @return PicoDatabase Returns a new instance of the PicoDatabase class, - * with the PDO connection and database type set. + * configured with the PDO connection, database type, + * and credentials. */ - public static function fromPdo($pdo) + public static function fromPdo($pdo, $databaseCredentials = null) { $driver = $pdo->getAttribute(PDO::ATTR_DRIVER_NAME); $dbType = self::getDbType($driver); $database = new self(new SecretObject()); $database->databaseConnection = $pdo; $database->databaseType = $dbType; - $database->databaseCredentials = self::getDatabaseCredentialsFromPdo($pdo, $driver, $dbType); + $database->databaseCredentials = self::getDatabaseCredentialsFromPdo($pdo, $driver, $dbType, $databaseCredentials); $database->connected = true; return $database; } @@ -125,86 +134,112 @@ public static function fromPdo($pdo) /** * Retrieves detailed information about a PDO database connection. * - * This method extracts and organizes connection details, including: - * - Database driver (e.g., 'mysql', 'pgsql', 'sqlite'). - * - Host and port (if available). - * - Database name (derived from the connection DSN). - * - Schema (for applicable databases like PostgreSQL). - * - Time zone (calculated from the database offset or default PHP time zone). - * - * The extraction process dynamically adapts to the type of database (e.g., MySQL, PostgreSQL, SQLite). - * For PostgreSQL, the schema is determined using a database query. Time zone information is calculated - * by converting the database offset to a corresponding PHP time zone where possible. - * - * The resulting connection details are encapsulated in a `SecretObject` for secure handling and organized access. - * - * @param PDO $pdo The PDO connection object. - * @param string $driver The name of the database driver (e.g., 'mysql', 'pgsql', 'sqlite'). - * @param string $dbType The database type constant as defined in `PicoDatabaseType`. - * - * @return SecretObject A `SecretObject` instance containing the following properties: - * - `driver`: The database driver (e.g., 'mysql', 'pgsql'). - * - `host`: The database host (e.g., 'localhost'). - * - `port`: The database port (e.g., 3306 for MySQL, 5432 for PostgreSQL). - * - `databaseName`: The name of the database. - * - `databaseSchema`: The schema name (if applicable, e.g., 'public' for PostgreSQL). - * - `timeZone`: The database time zone (e.g., 'UTC+02:00'). - * - * @throws PDOException If an error occurs during database interaction, such as a query failure or - * attribute access issue. + * This method attempts to extract and normalize connection details from a PDO instance. + * It uses `PDO::getAttribute(PDO::ATTR_CONNECTION_STATUS)` when supported, and falls back + * to values provided in `$databaseCredentials` if the driver does not expose certain attributes. + * + * The extracted details include: + * - **Driver**: The PDO driver name (e.g., 'mysql', 'pgsql', 'sqlite'). + * - **Host/Port**: Parsed from the connection DSN, with fallback to `$databaseCredentials`. + * - **Database Name**: Derived from the DSN path or from `$databaseCredentials`. + * - **Schema**: Retrieved dynamically for PostgreSQL (via `SELECT current_schema()`), + * or set to the database name for MySQL/MariaDB. + * - **Time Zone**: Determined by converting the database offset into a PHP-compatible + * time zone string when supported, or falling back to the default + * PHP time zone. + * + * The collected information is encapsulated in a `SecretObject` instance for secure + * handling and consistent access. + * + * @param PDO $pdo The active PDO connection object. + * @param string $driver The PDO driver name (e.g., 'mysql', 'pgsql', 'sqlite'). + * @param string $dbType The database type constant from `PicoDatabaseType`. + * @param SecretObject|null $databaseCredentials Optional fallback credentials if details cannot + * be extracted from the PDO connection. + * + * @return SecretObject Returns a `SecretObject` instance containing: + * - `driver`: Database driver name. + * - `host`: Database host, or `null` if unavailable. + * - `port`: Database port, or `null` if unavailable. + * - `databaseName`: Name of the database, or `null` if unavailable. + * - `databaseSchema`: Schema name, where applicable. + * - `timeZone`: Time zone string. + * + * @throws Exception This method suppresses most driver-specific warnings, but unexpected + * exceptions (e.g., query failures for schema detection) may still be thrown. */ - private static function getDatabaseCredentialsFromPdo($pdo, $driver, $dbType) + private static function getDatabaseCredentialsFromPdo($pdo, $driver, $dbType, $databaseCredentials = null) { - // Get the connection status, which includes the DSN (Data Source Name) - try - { - $dsn = $pdo->getAttribute(PDO::ATTR_CONNECTION_STATUS); - $dsnParts = parse_url($dsn); + try { + // Default values + $dsn = null; + $dsnParts = array(); + + // Try to fetch ATTR_CONNECTION_STATUS (not supported by all drivers) + try { + $dsn = @$pdo->getAttribute(PDO::ATTR_CONNECTION_STATUS); // Suppress warning if unsupported + if ($dsn) { + $dsnParts = parse_url($dsn); + } + } catch (Exception $ignored) { + // Ignore errors, fallback will be used + } - // Extract the host from the DSN (if available) + // Extract host $host = isset($dsnParts['host']) ? $dsnParts['host'] : null; + if ($host === null && $databaseCredentials !== null) { + $host = $databaseCredentials->getHost(); + } - // Extract the port from the DSN (if available) + // Extract port $port = isset($dsnParts['port']) ? $dsnParts['port'] : null; + if ($port === null && $databaseCredentials !== null) { + $port = $databaseCredentials->getPort(); + } - // Get the database name from the DSN (usually found at the end of the DSN after host and port) - $databaseName = isset($dsnParts['path']) ? ltrim($dsnParts['path'], '/') : null; + // Extract database name + if (isset($dsnParts['path'])) { + $databaseName = ltrim($dsnParts['path'], '/'); + } else { + $databaseName = ($databaseCredentials !== null) ? $databaseCredentials->getDatabaseName() : null; + } - // Initialize the schema and time zone + // Schema and timezone initialization $schema = null; $timezone = null; - - // Retrieve the schema and time zone based on the database type + if ($dbType == PicoDatabaseType::DATABASE_TYPE_PGSQL) { - // For PostgreSQL, fetch the current schema and time zone using queries + // PostgreSQL: fetch schema and timezone $stmt = $pdo->query('SELECT current_schema()'); - $schema = $stmt->fetchColumn(); // Fetch the schema name + $schema = $stmt->fetchColumn(); $timezone = self::convertOffsetToTimeZone(self::getTimeZoneOffset($pdo)); } else if ($dbType == PicoDatabaseType::DATABASE_TYPE_MARIADB || $dbType == PicoDatabaseType::DATABASE_TYPE_MYSQL) { - // For MySQL, the schema is the same as the database name - $schema = $databaseName; // MySQL schema is the database name + // MySQL/MariaDB: schema is the database name + $schema = $databaseName; $timezone = self::convertOffsetToTimeZone(self::getTimeZoneOffset($pdo)); } else { - // For other drivers, set schema and time zone to null (or handle it as needed) + // Other databases: use default timezone $schema = null; $timezone = date_default_timezone_get(); } - // Create and populate the SecretObject with the connection details - $databaseCredentials = new SecretObject(); - $databaseCredentials->setDriver($driver); - $databaseCredentials->setHost($host); - $databaseCredentials->setPort($port); - $databaseCredentials->setDatabaseName($databaseName); - $databaseCredentials->setDatabaseSchema($schema); - $databaseCredentials->setTimeZone($timezone); - - // Return the populated SecretObject containing the connection details - return $databaseCredentials; - } - catch (Exception $e) { + // Build the SecretObject with collected credentials + $result = new SecretObject(); + $result->setDriver($driver); + $result->setHost($host); + $result->setPort($port); + $result->setDatabaseName($databaseName); + $result->setDatabaseSchema($schema); + $result->setTimeZone($timezone); + + return $result; + } catch (Exception $e) { + // If everything fails, return the fallback credentials if provided + if ($databaseCredentials !== null) { + return $databaseCredentials; + } return new SecretObject(); } } From 0dd56d5312436c04c10604dc5a0065a4f730c6bf Mon Sep 17 00:00:00 2001 From: "Kamshory, MT" Date: Fri, 26 Sep 2025 11:25:47 +0700 Subject: [PATCH 2/3] Update CHANGELOG.md --- CHANGELOG.md | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e51a8e3..07fccc2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1391,6 +1391,37 @@ This provides a **persistent session storage** mechanism using **SQLite** as the * **Lightweight:** Suitable for shared hosting or small applications. * **Reliability:** Prevents session loss when PHP restarts, unlike file-based sessions. +# MagicObject Version 3.20.0 + +## Change: Removal of Math-Related Classes + +In this release, several math-related classes have been **removed** from MagicObject to keep the core library lightweight and focused. + +### Removed Modules + +1. Complex Numbers +2. Matrix Operations +3. Geometry Utilities + +### Migration + +These classes are **not discontinued**, but have been moved into a **new dedicated repository**: + +👉 [Planetbiru/Math](https://github.com/Planetbiru/Math) + +Developers who rely on these math utilities should install the new package separately: + +```bash +composer require planetbiru/math +``` + +## New Feature: PDO Connection Verification Method + +A new method isPdoConnected() has been introduced to allow developers to verify not only the TCP-level connection, but also the ability of PHP to execute SQL statements on the database. + +Here’s the corrected version with improved grammar and clarity: + + ## New Feature: PDO Connection Verification Method A new method isPdoConnected() has been introduced to allow developers to verify not only the TCP-level connection, but also the ability of PHP to execute SQL statements on the database. From 5b31ffd86d9438a4e22269ef7b8f90e95f1f42f2 Mon Sep 17 00:00:00 2001 From: "Kamshory, MT" Date: Fri, 26 Sep 2025 11:29:21 +0700 Subject: [PATCH 3/3] Update documentation --- CHANGELOG.md | 7 - docs/doc.html | 1018 +++++++++++++++++++++++++------------------------ 2 files changed, 526 insertions(+), 499 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 07fccc2..06d63ca 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1422,13 +1422,6 @@ A new method isPdoConnected() has been introduced to allow developers to verify Here’s the corrected version with improved grammar and clarity: -## New Feature: PDO Connection Verification Method - -A new method isPdoConnected() has been introduced to allow developers to verify not only the TCP-level connection, but also the ability of PHP to execute SQL statements on the database. - -Here’s the corrected version with improved grammar and clarity: - - ## Bug Fix: Handle Exception in method getDatabaseCredentialsFromPdo($pdo, $driver, $dbType) If an error occurs when executing: diff --git a/docs/doc.html b/docs/doc.html index 863fb7b..d3fb43f 100644 --- a/docs/doc.html +++ b/docs/doc.html @@ -16,7 +16,7 @@

Table of Content

MagicObject\DataTable

Declaration

-
class DataTable extends MagicObject\SetterGetter implements Stringable +
class DataTable extends MagicObject\SetterGetter { }
@@ -39,7 +39,7 @@

Description

labels and attributes.

Constants

-
const ANNOTATION_TABLE = 'Table';
const ANNOTATION_ATTRIBUTES = 'Attributes';
const CLASS_LIST = 'ClassList';
const ANNOTATION_ID = 'Id';
const ANNOTATION_COLUMN = 'Column';
const ANNOTATION_VAR = 'var';
const ANNOTATION_GENERATED_VALUE = 'GeneratedValue';
const ANNOTATION_NOT_NULL = 'NotNull';
const ANNOTATION_DEFAULT_COLUMN = 'DefaultColumn';
const ANNOTATION_DEFAULT_COLUMN_LABEL = 'DefaultColumnLabel';
const ANNOTATION_LANGUAGE = 'Language';
const KEY_PROPERTY_TYPE = 'property_type';
const KEY_PROPERTY_NAME = 'property_name';
const KEY_NAME = 'name';
const KEY_CLASS = 'class';
const KEY_VALUE = 'value';
const SQL_DATE_TIME_FORMAT = 'Y-m-d H:i:s';
const DATE_TIME_FORMAT = 'datetimeformat';
const TAG_TABLE = 'table';
const TAG_THEAD = 'thead';
const TAG_TBODY = 'tbody';
const TAG_TR = 'tr';
const TAG_TH = 'th';
const TAG_TD = 'td';
const TD_LABEL = 'td-label';
const TD_VALUE = 'td-value';

Properties

+
const ANNOTATION_TABLE = "Table";
const ANNOTATION_ATTRIBUTES = "Attributes";
const CLASS_LIST = "ClassList";
const ANNOTATION_ID = "Id";
const ANNOTATION_COLUMN = "Column";
const ANNOTATION_VAR = "var";
const ANNOTATION_GENERATED_VALUE = "GeneratedValue";
const ANNOTATION_NOT_NULL = "NotNull";
const ANNOTATION_DEFAULT_COLUMN = "DefaultColumn";
const ANNOTATION_DEFAULT_COLUMN_LABEL = "DefaultColumnLabel";
const ANNOTATION_LANGUAGE = "Language";
const KEY_PROPERTY_TYPE = "property_type";
const KEY_PROPERTY_NAME = "property_name";
const KEY_NAME = "name";
const KEY_CLASS = "class";
const KEY_VALUE = "value";
const SQL_DATE_TIME_FORMAT = "Y-m-d H:i:s";
const DATE_TIME_FORMAT = "datetimeformat";
const TAG_TABLE = "table";
const TAG_THEAD = "thead";
const TAG_TBODY = "tbody";
const TAG_TR = "tr";
const TAG_TH = "th";
const TAG_TD = "td";
const TD_LABEL = "td-label";
const TD_VALUE = "td-value";

Properties

1. _currentLanguage

Declaration

@@ -373,7 +373,7 @@

Return

MagicObject\Getter

Declaration

-
class Getter extends stdClass implements Stringable +
class Getter extends stdClass { }
@@ -401,7 +401,7 @@

Description

Constants

-
const JSON = 'JSON';

Properties

+
const JSON = "JSON";

Properties

1. _classParams

Declaration

@@ -551,7 +551,7 @@

Return

MagicObject\MagicDto

Declaration

-
class MagicDto extends stdClass implements Stringable +
class MagicDto extends stdClass { }
@@ -572,7 +572,7 @@

Description

as needed.

Constants

-
const JSON = 'JSON';
const XML = 'XML';
const PRETTIFY = 'prettify';

Properties

+
const JSON = "JSON";
const XML = "XML";
const PRETTIFY = "prettify";

Properties

1. _classParams

Declaration

@@ -1348,7 +1348,7 @@

Throws

MagicObject\MagicObject

Declaration

-
class MagicObject extends stdClass implements Stringable +
class MagicObject extends stdClass { }
@@ -1368,7 +1368,7 @@

Description

Users can also create properties from other entities using the full name of the class (namespace + class name).

Constants

-
const MESSAGE_NO_DATABASE_CONNECTION = 'No database connection provided';
const MESSAGE_NO_RECORD_FOUND = 'No record found';
const PROPERTY_NAMING_STRATEGY = 'property-naming-strategy';
const PROPERTY_NAMING_STRATEGY_CAMEL = 'propertyNamingStrategy';
const KEY_PROPERTY_TYPE = 'propertyType';
const KEY_NAME = 'name';
const KEY_VALUE = 'value';
const KEY_TYPE = 'type';
const KEY_LENGTH = 'length';
const KEY_DEFAULT_VALUE = 'defaultValue';
const JSON = 'JSON';
const YAML = 'Yaml';
const ATTR_CHECKED = ' checked="checked"';
const ATTR_SELECTED = ' selected="selected"';
const FIND_OPTION_DEFAULT = 0;
const FIND_OPTION_NO_COUNT_DATA = 1;
const FIND_OPTION_NO_FETCH_DATA = 2;
const SNAKE_CASE = 'SNAKE_CASE';
const UPPER_CAMEL_CASE = 'UPPER_CAMEL_CASE';

Properties

+
const MESSAGE_NO_DATABASE_CONNECTION = "No database connection provided";
const MESSAGE_NO_RECORD_FOUND = "No record found";
const PROPERTY_NAMING_STRATEGY = "property-naming-strategy";
const PROPERTY_NAMING_STRATEGY_CAMEL = "propertyNamingStrategy";
const KEY_PROPERTY_TYPE = "propertyType";
const KEY_NAME = "name";
const KEY_VALUE = "value";
const KEY_TYPE = "type";
const KEY_LENGTH = "length";
const KEY_DEFAULT_VALUE = "defaultValue";
const JSON = "JSON";
const YAML = "Yaml";
const ATTR_CHECKED = " checked="checked"";
const ATTR_SELECTED = " selected="selected"";
const FIND_OPTION_DEFAULT = 0;
const FIND_OPTION_NO_COUNT_DATA = 1;
const FIND_OPTION_NO_FETCH_DATA = 2;
const SNAKE_CASE = "SNAKE_CASE";
const UPPER_CAMEL_CASE = "UPPER_CAMEL_CASE";

Properties

1. _readonly

Declaration

@@ -3827,7 +3827,7 @@

Throws

MagicObject\SecretObject

Declaration

-
class SecretObject extends stdClass implements Stringable +
class SecretObject extends stdClass { }
@@ -3859,7 +3859,7 @@

Description

Constants

-
const JSON = 'JSON';
const YAML = 'Yaml';
const PROPERTY_NAMING_STRATEGY = 'property-naming-strategy';
const PROPERTY_NAMING_STRATEGY_CAMEL = 'propertyNamingStrategy';
const KEY_NAME = 'name';
const KEY_VALUE = 'value';
const KEY_PROPERTY_TYPE = 'propertyType';
const KEY_DEFAULT_VALUE = 'defaultValue';
const ANNOTATION_ENCRYPT_IN = 'EncryptIn';
const ANNOTATION_DECRYPT_IN = 'DecryptIn';
const ANNOTATION_ENCRYPT_OUT = 'EncryptOut';
const ANNOTATION_DECRYPT_OUT = 'DecryptOut';
const SNAKE_CASE = 'SNAKE_CASE';
const UPPER_CAMEL_CASE = 'UPPER_CAMEL_CASE';

Properties

+
const JSON = "JSON";
const YAML = "Yaml";
const PROPERTY_NAMING_STRATEGY = "property-naming-strategy";
const PROPERTY_NAMING_STRATEGY_CAMEL = "propertyNamingStrategy";
const KEY_NAME = "name";
const KEY_VALUE = "value";
const KEY_PROPERTY_TYPE = "propertyType";
const KEY_DEFAULT_VALUE = "defaultValue";
const ANNOTATION_ENCRYPT_IN = "EncryptIn";
const ANNOTATION_DECRYPT_IN = "DecryptIn";
const ANNOTATION_ENCRYPT_OUT = "EncryptOut";
const ANNOTATION_DECRYPT_OUT = "DecryptOut";
const SNAKE_CASE = "SNAKE_CASE";
const UPPER_CAMEL_CASE = "UPPER_CAMEL_CASE";

Properties

1. _encryptInProperties

Declaration

@@ -4909,7 +4909,7 @@

Return

MagicObject\SetterGetter

Declaration

-
class SetterGetter extends stdClass implements Stringable +
class SetterGetter extends stdClass { }
@@ -4929,7 +4929,7 @@

Description

Supports annotations for property configuration and JSON serialization.

Constants

-
const JSON = 'JSON';

Properties

+
const JSON = "JSON";

Properties

1. _classParams

Declaration

@@ -5452,43 +5452,43 @@

Constants

1. httpStatus

Declaration

public array $httpStatus = array ( - 100 => 'Continue', - 101 => 'Switching Protocols', - 200 => 'OK', - 201 => 'Created', - 202 => 'Accepted', - 203 => 'Non-Authoritative Information', - 204 => 'No Content', - 205 => 'Reset Content', - 206 => 'Partial Content', - 300 => 'Multiple Choices', - 301 => 'Moved Permanently', - 302 => 'Moved Temporarily', - 303 => 'See Other', - 304 => 'Not Modified', - 305 => 'Use Proxy', - 400 => 'Bad Request', - 401 => 'Unauthorized', - 402 => 'Payment Required', - 403 => 'Forbidden', - 404 => 'Not Found', - 405 => 'Method Not Allowed', - 406 => 'Not Acceptable', - 407 => 'Proxy Authentication Required', - 408 => 'Request Time-out', - 409 => 'Conflict', - 410 => 'Gone', - 411 => 'Length Required', - 412 => 'Precondition Failed', - 413 => 'Request Entity Too Large', - 414 => 'Request-URI Too Large', - 415 => 'Unsupported Media Type', - 500 => 'Internal Server Error', - 501 => 'Not Implemented', - 502 => 'Bad Gateway', - 503 => 'Service Unavailable', - 504 => 'Gateway Time-out', - 505 => 'HTTP Version not supported', + 100 => 'Continue', + 101 => 'Switching Protocols', + 200 => 'OK', + 201 => 'Created', + 202 => 'Accepted', + 203 => 'Non-Authoritative Information', + 204 => 'No Content', + 205 => 'Reset Content', + 206 => 'Partial Content', + 300 => 'Multiple Choices', + 301 => 'Moved Permanently', + 302 => 'Moved Temporarily', + 303 => 'See Other', + 304 => 'Not Modified', + 305 => 'Use Proxy', + 400 => 'Bad Request', + 401 => 'Unauthorized', + 402 => 'Payment Required', + 403 => 'Forbidden', + 404 => 'Not Found', + 405 => 'Method Not Allowed', + 406 => 'Not Acceptable', + 407 => 'Proxy Authentication Required', + 408 => 'Request Time-out', + 409 => 'Conflict', + 410 => 'Gone', + 411 => 'Length Required', + 412 => 'Precondition Failed', + 413 => 'Request Entity Too Large', + 414 => 'Request-URI Too Large', + 415 => 'Unsupported Media Type', + 500 => 'Internal Server Error', + 501 => 'Not Implemented', + 502 => 'Bad Gateway', + 503 => 'Service Unavailable', + 504 => 'Gateway Time-out', + 505 => 'HTTP Version not supported', );

Description

@@ -5519,7 +5519,7 @@

Description

This class contains constants representing various MIME types.

Constants

-
const APPLICATION_STEP = 'application/STEP';
const APPLICATION_ANDREW_INSET = 'application/andrew-inset';
const APPLICATION_APPINSTALLER = 'application/appinstaller';
const APPLICATION_APPLIXWARE = 'application/applixware';
const APPLICATION_APPX = 'application/appx';
const APPLICATION_APPXBUNDLE = 'application/appxbundle';
const APPLICATION_ATOM_XML = 'application/atom+xml';
const APPLICATION_ATOMCAT_XML = 'application/atomcat+xml';
const APPLICATION_ATOMDELETED_XML = 'application/atomdeleted+xml';
const APPLICATION_ATOMSVC_XML = 'application/atomsvc+xml';
const APPLICATION_ATSC_DWD_XML = 'application/atsc-dwd+xml';
const APPLICATION_ATSC_HELD_XML = 'application/atsc-held+xml';
const APPLICATION_ATSC_RSAT_XML = 'application/atsc-rsat+xml';
const APPLICATION_AUTOMATIONML_AML_XML = 'application/automationml-aml+xml';
const APPLICATION_AUTOMATIONML_AMLX_ZIP = 'application/automationml-amlx+zip';
const APPLICATION_BRAILLE = 'application/braille';
const APPLICATION_CALENDAR_XML = 'application/calendar+xml';
const APPLICATION_CCXML_XML = 'application/ccxml+xml';
const APPLICATION_CDFX_XML = 'application/cdfx+xml';
const APPLICATION_CDMI_CAPABILITY = 'application/cdmi-capability';
const APPLICATION_CDMI_CONTAINER = 'application/cdmi-container';
const APPLICATION_CDMI_DOMAIN = 'application/cdmi-domain';
const APPLICATION_CDMI_OBJECT = 'application/cdmi-object';
const APPLICATION_CDMI_QUEUE = 'application/cdmi-queue';
const APPLICATION_CDR = 'application/cdr';
const APPLICATION_CPL_XML = 'application/cpl+xml';
const APPLICATION_CU_SEEME = 'application/cu-seeme';
const APPLICATION_CWL = 'application/cwl';
const APPLICATION_DASH_XML = 'application/dash+xml';
const APPLICATION_DAVMOUNT_XML = 'application/davmount+xml';
const APPLICATION_DOCBOOK_XML = 'application/docbook+xml';
const APPLICATION_DSSC_DER = 'application/dssc+der';
const APPLICATION_DSSC_XML = 'application/dssc+xml';
const APPLICATION_ECMASCRIPT = 'application/ecmascript';
const APPLICATION_EMMA_XML = 'application/emma+xml';
const APPLICATION_EMOTIONML_XML = 'application/emotionml+xml';
const APPLICATION_EPUB_ZIP = 'application/epub+zip';
const APPLICATION_EXCEL = 'application/excel';
const APPLICATION_EXI = 'application/exi';
const APPLICATION_EXPRESS = 'application/express';
const APPLICATION_FDT_XML = 'application/fdt+xml';
const APPLICATION_FONT_TDPFR = 'application/font-tdpfr';
const APPLICATION_GEO_JSON = 'application/geo+json';
const APPLICATION_GML_XML = 'application/gml+xml';
const APPLICATION_GPG_KEYS = 'application/gpg-keys';
const APPLICATION_GPX_XML = 'application/gpx+xml';
const APPLICATION_GXF = 'application/gxf';
const APPLICATION_GZIP = 'application/gzip';
const APPLICATION_HJSON = 'application/hjson';
const APPLICATION_HYPERSTUDIO = 'application/hyperstudio';
const APPLICATION_INKML_XML = 'application/inkml+xml';
const APPLICATION_IPFIX = 'application/ipfix';
const APPLICATION_ITS_XML = 'application/its+xml';
const APPLICATION_JAVA_ARCHIVE = 'application/java-archive';
const APPLICATION_JAVA_SERIALIZED_OBJECT = 'application/java-serialized-object';
const APPLICATION_JAVASCRIPT = 'application/javascript';
const APPLICATION_JSON = 'application/json';
const APPLICATION_JSON5 = 'application/json5';
const APPLICATION_JSONML_JSON = 'application/jsonml+json';
const APPLICATION_LD_JSON = 'application/ld+json';
const APPLICATION_LGR_XML = 'application/lgr+xml';
const APPLICATION_LOST_XML = 'application/lost+xml';
const APPLICATION_MAC_BINHEX40 = 'application/mac-binhex40';
const APPLICATION_MAC_COMPACTPRO = 'application/mac-compactpro';
const APPLICATION_MADS_XML = 'application/mads+xml';
const APPLICATION_MANIFEST_JSON = 'application/manifest+json';
const APPLICATION_MARC = 'application/marc';
const APPLICATION_MARCXML_XML = 'application/marcxml+xml';
const APPLICATION_MATHEMATICA = 'application/mathematica';
const APPLICATION_MATHML_XML = 'application/mathml+xml';
const APPLICATION_MBOX = 'application/mbox';
const APPLICATION_MEDIA_POLICY_DATASET_XML = 'application/media-policy-dataset+xml';
const APPLICATION_MEDIASERVERCONTROL_XML = 'application/mediaservercontrol+xml';
const APPLICATION_METALINK_XML = 'application/metalink+xml';
const APPLICATION_METALINK4_XML = 'application/metalink4+xml';
const APPLICATION_METS_XML = 'application/mets+xml';
const APPLICATION_MMT_AEI_XML = 'application/mmt-aei+xml';
const APPLICATION_MMT_USD_XML = 'application/mmt-usd+xml';
const APPLICATION_MODS_XML = 'application/mods+xml';
const APPLICATION_MP21 = 'application/mp21';
const APPLICATION_MP4 = 'application/mp4';
const APPLICATION_MSIX = 'application/msix';
const APPLICATION_MSIXBUNDLE = 'application/msixbundle';
const APPLICATION_MSWORD = 'application/msword';
const APPLICATION_MXF = 'application/mxf';
const APPLICATION_N_QUADS = 'application/n-quads';
const APPLICATION_N_TRIPLES = 'application/n-triples';
const APPLICATION_NODE = 'application/node';
const APPLICATION_OCTET_STREAM = 'application/octet-stream';
const APPLICATION_ODA = 'application/oda';
const APPLICATION_OEBPS_PACKAGE_XML = 'application/oebps-package+xml';
const APPLICATION_OGG = 'application/ogg';
const APPLICATION_OMDOC_XML = 'application/omdoc+xml';
const APPLICATION_ONENOTE = 'application/onenote';
const APPLICATION_OXPS = 'application/oxps';
const APPLICATION_P2P_OVERLAY_XML = 'application/p2p-overlay+xml';
const APPLICATION_PATCH_OPS_ERROR_XML = 'application/patch-ops-error+xml';
const APPLICATION_PDF = 'application/pdf';
const APPLICATION_PGP = 'application/pgp';
const APPLICATION_PGP_SIGNATURE = 'application/pgp-signature';
const APPLICATION_PICS_RULES = 'application/pics-rules';
const APPLICATION_PKCS7_MIME = 'application/pkcs7-mime';
const APPLICATION_PKCS7_SIGNATURE = 'application/pkcs7-signature';
const APPLICATION_PKCS8 = 'application/pkcs8';
const APPLICATION_PKIX_CERT = 'application/pkix-cert';
const APPLICATION_PKIX_CRL = 'application/pkix-crl';
const APPLICATION_PKIX_PKIPATH = 'application/pkix-pkipath';
const APPLICATION_PKIXCMP = 'application/pkixcmp';
const APPLICATION_PLS_XML = 'application/pls+xml';
const APPLICATION_POSTSCRIPT = 'application/postscript';
const APPLICATION_POWERPOINT = 'application/powerpoint';
const APPLICATION_PROVENANCE_XML = 'application/provenance+xml';
const APPLICATION_PRS_CWW = 'application/prs.cww';
const APPLICATION_PRS_XSF_XML = 'application/prs.xsf+xml';
const APPLICATION_PSKC_XML = 'application/pskc+xml';
const APPLICATION_RAML_YAML = 'application/raml+yaml';
const APPLICATION_RDF_XML = 'application/rdf+xml';
const APPLICATION_REGINFO_XML = 'application/reginfo+xml';
const APPLICATION_RELAX_NG_COMPACT_SYNTAX = 'application/relax-ng-compact-syntax';
const APPLICATION_RESOURCE_LISTS_XML = 'application/resource-lists+xml';
const APPLICATION_RESOURCE_LISTS_DIFF_XML = 'application/resource-lists-diff+xml';
const APPLICATION_RLS_SERVICES_XML = 'application/rls-services+xml';
const APPLICATION_ROUTE_APD_XML = 'application/route-apd+xml';
const APPLICATION_ROUTE_S_TSID_XML = 'application/route-s-tsid+xml';
const APPLICATION_ROUTE_USD_XML = 'application/route-usd+xml';
const APPLICATION_RPKI_GHOSTBUSTERS = 'application/rpki-ghostbusters';
const APPLICATION_RPKI_MANIFEST = 'application/rpki-manifest';
const APPLICATION_RPKI_ROA = 'application/rpki-roa';
const APPLICATION_RSD_XML = 'application/rsd+xml';
const APPLICATION_RSS_XML = 'application/rss+xml';
const APPLICATION_SBML_XML = 'application/sbml+xml';
const APPLICATION_SCVP_CV_REQUEST = 'application/scvp-cv-request';
const APPLICATION_SCVP_CV_RESPONSE = 'application/scvp-cv-response';
const APPLICATION_SCVP_VP_REQUEST = 'application/scvp-vp-request';
const APPLICATION_SCVP_VP_RESPONSE = 'application/scvp-vp-response';
const APPLICATION_SDP = 'application/sdp';
const APPLICATION_SENML_XML = 'application/senml+xml';
const APPLICATION_SENSML_XML = 'application/sensml+xml';
const APPLICATION_SET_PAYMENT_INITIATION = 'application/set-payment-initiation';
const APPLICATION_SET_REGISTRATION_INITIATION = 'application/set-registration-initiation';
const APPLICATION_SHF_XML = 'application/shf+xml';
const APPLICATION_SIEVE = 'application/sieve';
const APPLICATION_SMIL = 'application/smil';
const APPLICATION_SPARQL_QUERY = 'application/sparql-query';
const APPLICATION_SPARQL_RESULTS_XML = 'application/sparql-results+xml';
const APPLICATION_SRGS = 'application/srgs';
const APPLICATION_SRGS_XML = 'application/srgs+xml';
const APPLICATION_SRU_XML = 'application/sru+xml';
const APPLICATION_SSDL_XML = 'application/ssdl+xml';
const APPLICATION_SSML_XML = 'application/ssml+xml';
const APPLICATION_SWID_XML = 'application/swid+xml';
const APPLICATION_TEI_XML = 'application/tei+xml';
const APPLICATION_THRAUD_XML = 'application/thraud+xml';
const APPLICATION_TIMESTAMPED_DATA = 'application/timestamped-data';
const APPLICATION_TOML = 'application/toml';
const APPLICATION_TRIG = 'application/trig';
const APPLICATION_TTML_XML = 'application/ttml+xml';
const APPLICATION_UBJSON = 'application/ubjson';
const APPLICATION_URC_RESSHEET_XML = 'application/urc-ressheet+xml';
const APPLICATION_URC_TARGETDESC_XML = 'application/urc-targetdesc+xml';
const APPLICATION_VIDEOLAN = 'application/videolan';
const APPLICATION_VND_1000MINDS_DECISION_MODEL_XML = 'application/vnd.1000minds.decision-model+xml';
const APPLICATION_VND_3GPP_PIC_BW_LARGE = 'application/vnd.3gpp.pic-bw-large';
const APPLICATION_VND_3GPP_PIC_BW_SMALL = 'application/vnd.3gpp.pic-bw-small';
const APPLICATION_VND_3GPP_PIC_BW_VAR = 'application/vnd.3gpp.pic-bw-var';
const APPLICATION_VND_3GPP2_TCAP = 'application/vnd.3gpp2.tcap';
const APPLICATION_VND_3M_POST_IT_NOTES = 'application/vnd.3m.post-it-notes';
const APPLICATION_VND_ACCPAC_SIMPLY_ASO = 'application/vnd.accpac.simply.aso';
const APPLICATION_VND_ACCPAC_SIMPLY_IMP = 'application/vnd.accpac.simply.imp';
const APPLICATION_VND_ACUCOBOL = 'application/vnd.acucobol';
const APPLICATION_VND_ACUCORP = 'application/vnd.acucorp';
const APPLICATION_VND_ADOBE_AIR_APPLICATION_INSTALLER_PACKAGE_ZIP = 'application/vnd.adobe.air-application-installer-package+zip';
const APPLICATION_VND_ADOBE_FORMSCENTRAL_FCDT = 'application/vnd.adobe.formscentral.fcdt';
const APPLICATION_VND_ADOBE_FXP = 'application/vnd.adobe.fxp';
const APPLICATION_VND_ADOBE_XDP_XML = 'application/vnd.adobe.xdp+xml';
const APPLICATION_VND_AGE = 'application/vnd.age';
const APPLICATION_VND_AHEAD_SPACE = 'application/vnd.ahead.space';
const APPLICATION_VND_AIRZIP_FILESECURE_AZF = 'application/vnd.airzip.filesecure.azf';
const APPLICATION_VND_AIRZIP_FILESECURE_AZS = 'application/vnd.airzip.filesecure.azs';
const APPLICATION_VND_AMAZON_EBOOK = 'application/vnd.amazon.ebook';
const APPLICATION_VND_AMERICANDYNAMICS_ACC = 'application/vnd.americandynamics.acc';
const APPLICATION_VND_AMIGA_AMI = 'application/vnd.amiga.ami';
const APPLICATION_VND_ANDROID_PACKAGE_ARCHIVE = 'application/vnd.android.package-archive';
const APPLICATION_VND_ANSER_WEB_CERTIFICATE_ISSUE_INITIATION = 'application/vnd.anser-web-certificate-issue-initiation';
const APPLICATION_VND_ANSER_WEB_FUNDS_TRANSFER_INITIATION = 'application/vnd.anser-web-funds-transfer-initiation';
const APPLICATION_VND_ANTIX_GAME_COMPONENT = 'application/vnd.antix.game-component';
const APPLICATION_VND_APPLE_INSTALLER_XML = 'application/vnd.apple.installer+xml';
const APPLICATION_VND_APPLE_MPEGURL = 'application/vnd.apple.mpegurl';
const APPLICATION_VND_APPLE_PKPASS = 'application/vnd.apple.pkpass';
const APPLICATION_VND_ARISTANETWORKS_SWI = 'application/vnd.aristanetworks.swi';
const APPLICATION_VND_ASTRAEA_SOFTWARE_IOTA = 'application/vnd.astraea-software.iota';
const APPLICATION_VND_AUDIOGRAPH = 'application/vnd.audiograph';
const APPLICATION_VND_BALSAMIQ_BMML_XML = 'application/vnd.balsamiq.bmml+xml';
const APPLICATION_VND_BLUEICE_MULTIPASS = 'application/vnd.blueice.multipass';
const APPLICATION_VND_BMI = 'application/vnd.bmi';
const APPLICATION_VND_BUSINESSOBJECTS = 'application/vnd.businessobjects';
const APPLICATION_VND_CHEMDRAW_XML = 'application/vnd.chemdraw+xml';
const APPLICATION_VND_CHIPNUTS_KARAOKE_MMD = 'application/vnd.chipnuts.karaoke-mmd';
const APPLICATION_VND_CINDERELLA = 'application/vnd.cinderella';
const APPLICATION_VND_CITATIONSTYLES_STYLE_XML = 'application/vnd.citationstyles.style+xml';
const APPLICATION_VND_CLAYMORE = 'application/vnd.claymore';
const APPLICATION_VND_CLOANTO_RP9 = 'application/vnd.cloanto.rp9';
const APPLICATION_VND_CLONK_C4GROUP = 'application/vnd.clonk.c4group';
const APPLICATION_VND_CLUETRUST_CARTOMOBILE_CONFIG = 'application/vnd.cluetrust.cartomobile-config';
const APPLICATION_VND_CLUETRUST_CARTOMOBILE_CONFIG_PKG = 'application/vnd.cluetrust.cartomobile-config-pkg';
const APPLICATION_VND_COMMONSPACE = 'application/vnd.commonspace';
const APPLICATION_VND_CONTACT_CMSG = 'application/vnd.contact.cmsg';
const APPLICATION_VND_COSMOCALLER = 'application/vnd.cosmocaller';
const APPLICATION_VND_CRICK_CLICKER = 'application/vnd.crick.clicker';
const APPLICATION_VND_CRICK_CLICKER_KEYBOARD = 'application/vnd.crick.clicker.keyboard';
const APPLICATION_VND_CRICK_CLICKER_PALETTE = 'application/vnd.crick.clicker.palette';
const APPLICATION_VND_CRICK_CLICKER_TEMPLATE = 'application/vnd.crick.clicker.template';
const APPLICATION_VND_CRICK_CLICKER_WORDBANK = 'application/vnd.crick.clicker.wordbank';
const APPLICATION_VND_CRITICALTOOLS_WBS_XML = 'application/vnd.criticaltools.wbs+xml';
const APPLICATION_VND_CTC_POSML = 'application/vnd.ctc-posml';
const APPLICATION_VND_CUPS_PPD = 'application/vnd.cups-ppd';
const APPLICATION_VND_CURL_CAR = 'application/vnd.curl.car';
const APPLICATION_VND_CURL_PCURL = 'application/vnd.curl.pcurl';
const APPLICATION_VND_DART = 'application/vnd.dart';
const APPLICATION_VND_DATA_VISION_RDZ = 'application/vnd.data-vision.rdz';
const APPLICATION_VND_DBF = 'application/vnd.dbf';
const APPLICATION_VND_DECE_DATA = 'application/vnd.dece.data';
const APPLICATION_VND_DECE_TTML_XML = 'application/vnd.dece.ttml+xml';
const APPLICATION_VND_DECE_UNSPECIFIED = 'application/vnd.dece.unspecified';
const APPLICATION_VND_DECE_ZIP = 'application/vnd.dece.zip';
const APPLICATION_VND_DENOVO_FCSELAYOUT_LINK = 'application/vnd.denovo.fcselayout-link';
const APPLICATION_VND_DNA = 'application/vnd.dna';
const APPLICATION_VND_DOLBY_MLP = 'application/vnd.dolby.mlp';
const APPLICATION_VND_DPGRAPH = 'application/vnd.dpgraph';
const APPLICATION_VND_DREAMFACTORY = 'application/vnd.dreamfactory';
const APPLICATION_VND_DS_KEYPOINT = 'application/vnd.ds-keypoint';
const APPLICATION_VND_DVB_AIT = 'application/vnd.dvb.ait';
const APPLICATION_VND_DVB_SERVICE = 'application/vnd.dvb.service';
const APPLICATION_VND_DYNAGEO = 'application/vnd.dynageo';
const APPLICATION_VND_ECOWIN_CHART = 'application/vnd.ecowin.chart';
const APPLICATION_VND_ENLIVEN = 'application/vnd.enliven';
const APPLICATION_VND_EPSON_ESF = 'application/vnd.epson.esf';
const APPLICATION_VND_EPSON_MSF = 'application/vnd.epson.msf';
const APPLICATION_VND_EPSON_QUICKANIME = 'application/vnd.epson.quickanime';
const APPLICATION_VND_EPSON_SALT = 'application/vnd.epson.salt';
const APPLICATION_VND_EPSON_SSF = 'application/vnd.epson.ssf';
const APPLICATION_VND_ESZIGNO3_XML = 'application/vnd.eszigno3+xml';
const APPLICATION_VND_EZPIX_ALBUM = 'application/vnd.ezpix-album';
const APPLICATION_VND_EZPIX_PACKAGE = 'application/vnd.ezpix-package';
const APPLICATION_VND_FDF = 'application/vnd.fdf';
const APPLICATION_VND_FDSN_MSEED = 'application/vnd.fdsn.mseed';
const APPLICATION_VND_FDSN_SEED = 'application/vnd.fdsn.seed';
const APPLICATION_VND_FLOGRAPHIT = 'application/vnd.flographit';
const APPLICATION_VND_FLUXTIME_CLIP = 'application/vnd.fluxtime.clip';
const APPLICATION_VND_FRAMEMAKER = 'application/vnd.framemaker';
const APPLICATION_VND_FROGANS_FNC = 'application/vnd.frogans.fnc';
const APPLICATION_VND_FROGANS_LTF = 'application/vnd.frogans.ltf';
const APPLICATION_VND_FSC_WEBLAUNCH = 'application/vnd.fsc.weblaunch';
const APPLICATION_VND_FUJITSU_OASYS = 'application/vnd.fujitsu.oasys';
const APPLICATION_VND_FUJITSU_OASYS2 = 'application/vnd.fujitsu.oasys2';
const APPLICATION_VND_FUJITSU_OASYS3 = 'application/vnd.fujitsu.oasys3';
const APPLICATION_VND_FUJITSU_OASYSGP = 'application/vnd.fujitsu.oasysgp';
const APPLICATION_VND_FUJITSU_OASYSPRS = 'application/vnd.fujitsu.oasysprs';
const APPLICATION_VND_FUJIXEROX_DDD = 'application/vnd.fujixerox.ddd';
const APPLICATION_VND_FUJIXEROX_DOCUWORKS = 'application/vnd.fujixerox.docuworks';
const APPLICATION_VND_FUJIXEROX_DOCUWORKS_BINDER = 'application/vnd.fujixerox.docuworks.binder';
const APPLICATION_VND_FUZZYSHEET = 'application/vnd.fuzzysheet';
const APPLICATION_VND_GENOMATIX_TUXEDO = 'application/vnd.genomatix.tuxedo';
const APPLICATION_VND_GEOGEBRA_FILE = 'application/vnd.geogebra.file';
const APPLICATION_VND_GEOGEBRA_TOOL = 'application/vnd.geogebra.tool';
const APPLICATION_VND_GEOMETRY_EXPLORER = 'application/vnd.geometry-explorer';
const APPLICATION_VND_GEONEXT = 'application/vnd.geonext';
const APPLICATION_VND_GEOPLAN = 'application/vnd.geoplan';
const APPLICATION_VND_GEOSPACE = 'application/vnd.geospace';
const APPLICATION_VND_GMX = 'application/vnd.gmx';
const APPLICATION_VND_GOOGLE_APPS_DOCUMENT = 'application/vnd.google-apps.document';
const APPLICATION_VND_GOOGLE_APPS_PRESENTATION = 'application/vnd.google-apps.presentation';
const APPLICATION_VND_GOOGLE_APPS_SPREADSHEET = 'application/vnd.google-apps.spreadsheet';
const APPLICATION_VND_GOOGLE_EARTH_KML_XML = 'application/vnd.google-earth.kml+xml';
const APPLICATION_VND_GOOGLE_EARTH_KMZ = 'application/vnd.google-earth.kmz';
const APPLICATION_VND_GRAFEQ = 'application/vnd.grafeq';
const APPLICATION_VND_GROOVE_ACCOUNT = 'application/vnd.groove-account';
const APPLICATION_VND_GROOVE_HELP = 'application/vnd.groove-help';
const APPLICATION_VND_GROOVE_IDENTITY_MESSAGE = 'application/vnd.groove-identity-message';
const APPLICATION_VND_GROOVE_INJECTOR = 'application/vnd.groove-injector';
const APPLICATION_VND_GROOVE_TOOL_MESSAGE = 'application/vnd.groove-tool-message';
const APPLICATION_VND_GROOVE_TOOL_TEMPLATE = 'application/vnd.groove-tool-template';
const APPLICATION_VND_GROOVE_VCARD = 'application/vnd.groove-vcard';
const APPLICATION_VND_HAL_XML = 'application/vnd.hal+xml';
const APPLICATION_VND_HANDHELD_ENTERTAINMENT_XML = 'application/vnd.handheld-entertainment+xml';
const APPLICATION_VND_HBCI = 'application/vnd.hbci';
const APPLICATION_VND_HHE_LESSON_PLAYER = 'application/vnd.hhe.lesson-player';
const APPLICATION_VND_HP_HPGL = 'application/vnd.hp-hpgl';
const APPLICATION_VND_HP_HPID = 'application/vnd.hp-hpid';
const APPLICATION_VND_HP_HPS = 'application/vnd.hp-hps';
const APPLICATION_VND_HP_JLYT = 'application/vnd.hp-jlyt';
const APPLICATION_VND_HP_PCL = 'application/vnd.hp-pcl';
const APPLICATION_VND_HP_PCLXL = 'application/vnd.hp-pclxl';
const APPLICATION_VND_HYDROSTATIX_SOF_DATA = 'application/vnd.hydrostatix.sof-data';
const APPLICATION_VND_IBM_MINIPAY = 'application/vnd.ibm.minipay';
const APPLICATION_VND_IBM_MODCAP = 'application/vnd.ibm.modcap';
const APPLICATION_VND_IBM_RIGHTS_MANAGEMENT = 'application/vnd.ibm.rights-management';
const APPLICATION_VND_IBM_SECURE_CONTAINER = 'application/vnd.ibm.secure-container';
const APPLICATION_VND_ICCPROFILE = 'application/vnd.iccprofile';
const APPLICATION_VND_IGLOADER = 'application/vnd.igloader';
const APPLICATION_VND_IMMERVISION_IVP = 'application/vnd.immervision-ivp';
const APPLICATION_VND_IMMERVISION_IVU = 'application/vnd.immervision-ivu';
const APPLICATION_VND_INSORS_IGM = 'application/vnd.insors.igm';
const APPLICATION_VND_INTERCON_FORMNET = 'application/vnd.intercon.formnet';
const APPLICATION_VND_INTERGEO = 'application/vnd.intergeo';
const APPLICATION_VND_INTU_QBO = 'application/vnd.intu.qbo';
const APPLICATION_VND_INTU_QFX = 'application/vnd.intu.qfx';
const APPLICATION_VND_IPUNPLUGGED_RCPROFILE = 'application/vnd.ipunplugged.rcprofile';
const APPLICATION_VND_IREPOSITORY_PACKAGE_XML = 'application/vnd.irepository.package+xml';
const APPLICATION_VND_IS_XPR = 'application/vnd.is-xpr';
const APPLICATION_VND_ISAC_FCS = 'application/vnd.isac.fcs';
const APPLICATION_VND_JAM = 'application/vnd.jam';
const APPLICATION_VND_JCP_JAVAME_MIDLET_RMS = 'application/vnd.jcp.javame.midlet-rms';
const APPLICATION_VND_JISP = 'application/vnd.jisp';
const APPLICATION_VND_JOOST_JODA_ARCHIVE = 'application/vnd.joost.joda-archive';
const APPLICATION_VND_KAHOOTZ = 'application/vnd.kahootz';
const APPLICATION_VND_KDE_KARBON = 'application/vnd.kde.karbon';
const APPLICATION_VND_KDE_KCHART = 'application/vnd.kde.kchart';
const APPLICATION_VND_KDE_KFORMULA = 'application/vnd.kde.kformula';
const APPLICATION_VND_KDE_KIVIO = 'application/vnd.kde.kivio';
const APPLICATION_VND_KDE_KONTOUR = 'application/vnd.kde.kontour';
const APPLICATION_VND_KDE_KPRESENTER = 'application/vnd.kde.kpresenter';
const APPLICATION_VND_KDE_KSPREAD = 'application/vnd.kde.kspread';
const APPLICATION_VND_KDE_KWORD = 'application/vnd.kde.kword';
const APPLICATION_VND_KENAMEAAPP = 'application/vnd.kenameaapp';
const APPLICATION_VND_KIDSPIRATION = 'application/vnd.kidspiration';
const APPLICATION_VND_KINAR = 'application/vnd.kinar';
const APPLICATION_VND_KOAN = 'application/vnd.koan';
const APPLICATION_VND_KODAK_DESCRIPTOR = 'application/vnd.kodak-descriptor';
const APPLICATION_VND_LAS_LAS_XML = 'application/vnd.las.las+xml';
const APPLICATION_VND_LLAMAGRAPHICS_LIFE_BALANCE_DESKTOP = 'application/vnd.llamagraphics.life-balance.desktop';
const APPLICATION_VND_LLAMAGRAPHICS_LIFE_BALANCE_EXCHANGE_XML = 'application/vnd.llamagraphics.life-balance.exchange+xml';
const APPLICATION_VND_LOTUS_1_2_3 = 'application/vnd.lotus-1-2-3';
const APPLICATION_VND_LOTUS_APPROACH = 'application/vnd.lotus-approach';
const APPLICATION_VND_LOTUS_FREELANCE = 'application/vnd.lotus-freelance';
const APPLICATION_VND_LOTUS_NOTES = 'application/vnd.lotus-notes';
const APPLICATION_VND_LOTUS_SCREENCAM = 'application/vnd.lotus-screencam';
const APPLICATION_VND_LOTUS_WORDPRO = 'application/vnd.lotus-wordpro';
const APPLICATION_VND_MACPORTS_PORTPKG = 'application/vnd.macports.portpkg';
const APPLICATION_VND_MAPBOX_VECTOR_TILE = 'application/vnd.mapbox-vector-tile';
const APPLICATION_VND_MCD = 'application/vnd.mcd';
const APPLICATION_VND_MEDCALCDATA = 'application/vnd.medcalcdata';
const APPLICATION_VND_MEDIASTATION_CDKEY = 'application/vnd.mediastation.cdkey';
const APPLICATION_VND_MFER = 'application/vnd.mfer';
const APPLICATION_VND_MFMP = 'application/vnd.mfmp';
const APPLICATION_VND_MICROGRAFX_FLO = 'application/vnd.micrografx.flo';
const APPLICATION_VND_MICROGRAFX_IGX = 'application/vnd.micrografx.igx';
const APPLICATION_VND_MIF = 'application/vnd.mif';
const APPLICATION_VND_MOBIUS_DAF = 'application/vnd.mobius.daf';
const APPLICATION_VND_MOBIUS_DIS = 'application/vnd.mobius.dis';
const APPLICATION_VND_MOBIUS_MBK = 'application/vnd.mobius.mbk';
const APPLICATION_VND_MOBIUS_MQY = 'application/vnd.mobius.mqy';
const APPLICATION_VND_MOBIUS_MSL = 'application/vnd.mobius.msl';
const APPLICATION_VND_MOBIUS_PLC = 'application/vnd.mobius.plc';
const APPLICATION_VND_MOBIUS_TXF = 'application/vnd.mobius.txf';
const APPLICATION_VND_MOPHUN_APPLICATION = 'application/vnd.mophun.application';
const APPLICATION_VND_MOPHUN_CERTIFICATE = 'application/vnd.mophun.certificate';
const APPLICATION_VND_MOZILLA_XUL_XML = 'application/vnd.mozilla.xul+xml';
const APPLICATION_VND_MPEGURL = 'application/vnd.mpegurl';
const APPLICATION_VND_MS_ARTGALRY = 'application/vnd.ms-artgalry';
const APPLICATION_VND_MS_CAB_COMPRESSED = 'application/vnd.ms-cab-compressed';
const APPLICATION_VND_MS_EXCEL = 'application/vnd.ms-excel';
const APPLICATION_VND_MS_EXCEL_ADDIN_MACROENABLED_12 = 'application/vnd.ms-excel.addin.macroEnabled.12';
const APPLICATION_VND_MS_EXCEL_SHEET_BINARY_MACROENABLED_12 = 'application/vnd.ms-excel.sheet.binary.macroEnabled.12';
const APPLICATION_VND_MS_EXCEL_SHEET_MACROENABLED_12 = 'application/vnd.ms-excel.sheet.macroEnabled.12';
const APPLICATION_VND_MS_EXCEL_TEMPLATE_MACROENABLED_12 = 'application/vnd.ms-excel.template.macroEnabled.12';
const APPLICATION_VND_MS_FONTOBJECT = 'application/vnd.ms-fontobject';
const APPLICATION_VND_MS_HTMLHELP = 'application/vnd.ms-htmlhelp';
const APPLICATION_VND_MS_IMS = 'application/vnd.ms-ims';
const APPLICATION_VND_MS_LRM = 'application/vnd.ms-lrm';
const APPLICATION_VND_MS_OFFICETHEME = 'application/vnd.ms-officetheme';
const APPLICATION_VND_MS_OUTLOOK = 'application/vnd.ms-outlook';
const APPLICATION_VND_MS_PKI_SECCAT = 'application/vnd.ms-pki.seccat';
const APPLICATION_VND_MS_POWERPOINT = 'application/vnd.ms-powerpoint';
const APPLICATION_VND_MS_POWERPOINT_ADDIN_MACROENABLED_12 = 'application/vnd.ms-powerpoint.addin.macroEnabled.12';
const APPLICATION_VND_MS_POWERPOINT_PRESENTATION_MACROENABLED_12 = 'application/vnd.ms-powerpoint.presentation.macroEnabled.12';
const APPLICATION_VND_MS_POWERPOINT_SLIDE_MACROENABLED_12 = 'application/vnd.ms-powerpoint.slide.macroenabled.12';
const APPLICATION_VND_MS_POWERPOINT_SLIDESHOW_MACROENABLED_12 = 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12';
const APPLICATION_VND_MS_PROJECT = 'application/vnd.ms-project';
const APPLICATION_VND_MS_WORD_TEMPLATE_MACROENABLED_12 = 'application/vnd.ms-word.template.macroEnabled.12';
const APPLICATION_VND_MS_WORKS = 'application/vnd.ms-works';
const APPLICATION_VND_MS_WPL = 'application/vnd.ms-wpl';
const APPLICATION_VND_MS_XPSDOCUMENT = 'application/vnd.ms-xpsdocument';
const APPLICATION_VND_MSEQ = 'application/vnd.mseq';
const APPLICATION_VND_MUSICIAN = 'application/vnd.musician';
const APPLICATION_VND_MUVEE_STYLE = 'application/vnd.muvee.style';
const APPLICATION_VND_MYNFC = 'application/vnd.mynfc';
const APPLICATION_VND_NEUROLANGUAGE_NLU = 'application/vnd.neurolanguage.nlu';
const APPLICATION_VND_NITF = 'application/vnd.nitf';
const APPLICATION_VND_NOBLENET_DIRECTORY = 'application/vnd.noblenet-directory';
const APPLICATION_VND_NOBLENET_SEALER = 'application/vnd.noblenet-sealer';
const APPLICATION_VND_NOBLENET_WEB = 'application/vnd.noblenet-web';
const APPLICATION_VND_NOKIA_N_GAGE_AC_XML = 'application/vnd.nokia.n-gage.ac+xml';
const APPLICATION_VND_NOKIA_N_GAGE_DATA = 'application/vnd.nokia.n-gage.data';
const APPLICATION_VND_NOKIA_N_GAGE_SYMBIAN_INSTALL = 'application/vnd.nokia.n-gage.symbian.install';
const APPLICATION_VND_NOKIA_RADIO_PRESET = 'application/vnd.nokia.radio-preset';
const APPLICATION_VND_NOKIA_RADIO_PRESETS = 'application/vnd.nokia.radio-presets';
const APPLICATION_VND_NOVADIGM_EDM = 'application/vnd.novadigm.edm';
const APPLICATION_VND_NOVADIGM_EDX = 'application/vnd.novadigm.edx';
const APPLICATION_VND_NOVADIGM_EXT = 'application/vnd.novadigm.ext';
const APPLICATION_VND_OASIS_OPENDOCUMENT_CHART = 'application/vnd.oasis.opendocument.chart';
const APPLICATION_VND_OASIS_OPENDOCUMENT_CHART_TEMPLATE = 'application/vnd.oasis.opendocument.chart-template';
const APPLICATION_VND_OASIS_OPENDOCUMENT_DATABASE = 'application/vnd.oasis.opendocument.database';
const APPLICATION_VND_OASIS_OPENDOCUMENT_FORMULA = 'application/vnd.oasis.opendocument.formula';
const APPLICATION_VND_OASIS_OPENDOCUMENT_FORMULA_TEMPLATE = 'application/vnd.oasis.opendocument.formula-template';
const APPLICATION_VND_OASIS_OPENDOCUMENT_GRAPHICS = 'application/vnd.oasis.opendocument.graphics';
const APPLICATION_VND_OASIS_OPENDOCUMENT_GRAPHICS_TEMPLATE = 'application/vnd.oasis.opendocument.graphics-template';
const APPLICATION_VND_OASIS_OPENDOCUMENT_IMAGE = 'application/vnd.oasis.opendocument.image';
const APPLICATION_VND_OASIS_OPENDOCUMENT_IMAGE_TEMPLATE = 'application/vnd.oasis.opendocument.image-template';
const APPLICATION_VND_OASIS_OPENDOCUMENT_PRESENTATION = 'application/vnd.oasis.opendocument.presentation';
const APPLICATION_VND_OASIS_OPENDOCUMENT_PRESENTATION_TEMPLATE = 'application/vnd.oasis.opendocument.presentation-template';
const APPLICATION_VND_OASIS_OPENDOCUMENT_SPREADSHEET = 'application/vnd.oasis.opendocument.spreadsheet';
const APPLICATION_VND_OASIS_OPENDOCUMENT_SPREADSHEET_TEMPLATE = 'application/vnd.oasis.opendocument.spreadsheet-template';
const APPLICATION_VND_OASIS_OPENDOCUMENT_TEXT = 'application/vnd.oasis.opendocument.text';
const APPLICATION_VND_OASIS_OPENDOCUMENT_TEXT_MASTER = 'application/vnd.oasis.opendocument.text-master';
const APPLICATION_VND_OASIS_OPENDOCUMENT_TEXT_TEMPLATE = 'application/vnd.oasis.opendocument.text-template';
const APPLICATION_VND_OASIS_OPENDOCUMENT_TEXT_WEB = 'application/vnd.oasis.opendocument.text-web';
const APPLICATION_VND_OLPC_SUGAR = 'application/vnd.olpc-sugar';
const APPLICATION_VND_OMA_DD2_XML = 'application/vnd.oma.dd2+xml';
const APPLICATION_VND_OPENBLOX_GAME_XML = 'application/vnd.openblox.game+xml';
const APPLICATION_VND_OPENOFFICEORG_EXTENSION = 'application/vnd.openofficeorg.extension';
const APPLICATION_VND_OPENSTREETMAP_DATA_XML = 'application/vnd.openstreetmap.data+xml';
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_PRESENTATIONML_PRESENTATION = 'application/vnd.openxmlformats-officedocument.presentationml.presentation';
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_PRESENTATIONML_SLIDE = 'application/vnd.openxmlformats-officedocument.presentationml.slide';
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_PRESENTATIONML_SLIDESHOW = 'application/vnd.openxmlformats-officedocument.presentationml.slideshow';
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_PRESENTATIONML_TEMPLATE = 'application/vnd.openxmlformats-officedocument.presentationml.template';
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_SPREADSHEETML_SHEET = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_SPREADSHEETML_TEMPLATE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.template';
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_WORDPROCESSINGML_DOCUMENT = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_WORDPROCESSINGML_TEMPLATE = 'application/vnd.openxmlformats-officedocument.wordprocessingml.template';
const APPLICATION_VND_OSGEO_MAPGUIDE_PACKAGE = 'application/vnd.osgeo.mapguide.package';
const APPLICATION_VND_OSGI_DP = 'application/vnd.osgi.dp';
const APPLICATION_VND_OSGI_SUBSYSTEM = 'application/vnd.osgi.subsystem';
const APPLICATION_VND_PALM = 'application/vnd.palm';
const APPLICATION_VND_PAWAAFILE = 'application/vnd.pawaafile';
const APPLICATION_VND_PG_FORMAT = 'application/vnd.pg.format';
const APPLICATION_VND_PG_OSASLI = 'application/vnd.pg.osasli';
const APPLICATION_VND_PICSEL = 'application/vnd.picsel';
const APPLICATION_VND_PMI_WIDGET = 'application/vnd.pmi.widget';
const APPLICATION_VND_POCKETLEARN = 'application/vnd.pocketlearn';
const APPLICATION_VND_POWERBUILDER6 = 'application/vnd.powerbuilder6';
const APPLICATION_VND_PREVIEWSYSTEMS_BOX = 'application/vnd.previewsystems.box';
const APPLICATION_VND_PROTEUS_MAGAZINE = 'application/vnd.proteus.magazine';
const APPLICATION_VND_PUBLISHARE_DELTA_TREE = 'application/vnd.publishare-delta-tree';
const APPLICATION_VND_PVI_PTID1 = 'application/vnd.pvi.ptid1';
const APPLICATION_VND_PWG_XHTML_PRINT_XML = 'application/vnd.pwg-xhtml-print+xml';
const APPLICATION_VND_QUARK_QUARKXPRESS = 'application/vnd.quark.quarkxpress';
const APPLICATION_VND_REALVNC_BED = 'application/vnd.realvnc.bed';
const APPLICATION_VND_RECORDARE_MUSICXML = 'application/vnd.recordare.musicxml';
const APPLICATION_VND_RECORDARE_MUSICXML_XML = 'application/vnd.recordare.musicxml+xml';
const APPLICATION_VND_RIG_CRYPTONOTE = 'application/vnd.rig.cryptonote';
const APPLICATION_VND_RIM_COD = 'application/vnd.rim.cod';
const APPLICATION_VND_RN_REALMEDIA_VBR = 'application/vnd.rn-realmedia-vbr';
const APPLICATION_VND_ROUTE66_LINK66_XML = 'application/vnd.route66.link66+xml';
const APPLICATION_VND_SAILINGTRACKER_TRACK = 'application/vnd.sailingtracker.track';
const APPLICATION_VND_SEEMAIL = 'application/vnd.seemail';
const APPLICATION_VND_SEMA = 'application/vnd.sema';
const APPLICATION_VND_SEMD = 'application/vnd.semd';
const APPLICATION_VND_SEMF = 'application/vnd.semf';
const APPLICATION_VND_SHANA_INFORMED_FORMDATA = 'application/vnd.shana.informed.formdata';
const APPLICATION_VND_SHANA_INFORMED_FORMTEMPLATE = 'application/vnd.shana.informed.formtemplate';
const APPLICATION_VND_SHANA_INFORMED_INTERCHANGE = 'application/vnd.shana.informed.interchange';
const APPLICATION_VND_SHANA_INFORMED_PACKAGE = 'application/vnd.shana.informed.package';
const APPLICATION_VND_SIMTECH_MINDMAPPER = 'application/vnd.simtech-mindmapper';
const APPLICATION_VND_SMAF = 'application/vnd.smaf';
const APPLICATION_VND_SMART_TEACHER = 'application/vnd.smart.teacher';
const APPLICATION_VND_SOFTWARE602_FILLER_FORM_XML = 'application/vnd.software602.filler.form+xml';
const APPLICATION_VND_SOLENT_SDKM_XML = 'application/vnd.solent.sdkm+xml';
const APPLICATION_VND_SPOTFIRE_DXP = 'application/vnd.spotfire.dxp';
const APPLICATION_VND_SPOTFIRE_SFS = 'application/vnd.spotfire.sfs';
const APPLICATION_VND_STARDIVISION_CALC = 'application/vnd.stardivision.calc';
const APPLICATION_VND_STARDIVISION_DRAW = 'application/vnd.stardivision.draw';
const APPLICATION_VND_STARDIVISION_IMPRESS = 'application/vnd.stardivision.impress';
const APPLICATION_VND_STARDIVISION_MATH = 'application/vnd.stardivision.math';
const APPLICATION_VND_STARDIVISION_WRITER = 'application/vnd.stardivision.writer';
const APPLICATION_VND_STARDIVISION_WRITER_GLOBAL = 'application/vnd.stardivision.writer-global';
const APPLICATION_VND_STEPMANIA_PACKAGE = 'application/vnd.stepmania.package';
const APPLICATION_VND_STEPMANIA_STEPCHART = 'application/vnd.stepmania.stepchart';
const APPLICATION_VND_SUN_WADL_XML = 'application/vnd.sun.wadl+xml';
const APPLICATION_VND_SUN_XML_CALC = 'application/vnd.sun.xml.calc';
const APPLICATION_VND_SUN_XML_CALC_TEMPLATE = 'application/vnd.sun.xml.calc.template';
const APPLICATION_VND_SUN_XML_DRAW = 'application/vnd.sun.xml.draw';
const APPLICATION_VND_SUN_XML_DRAW_TEMPLATE = 'application/vnd.sun.xml.draw.template';
const APPLICATION_VND_SUN_XML_IMPRESS = 'application/vnd.sun.xml.impress';
const APPLICATION_VND_SUN_XML_IMPRESS_TEMPLATE = 'application/vnd.sun.xml.impress.template';
const APPLICATION_VND_SUN_XML_MATH = 'application/vnd.sun.xml.math';
const APPLICATION_VND_SUN_XML_WRITER = 'application/vnd.sun.xml.writer';
const APPLICATION_VND_SUN_XML_WRITER_GLOBAL = 'application/vnd.sun.xml.writer.global';
const APPLICATION_VND_SUN_XML_WRITER_TEMPLATE = 'application/vnd.sun.xml.writer.template';
const APPLICATION_VND_SUS_CALENDAR = 'application/vnd.sus-calendar';
const APPLICATION_VND_SVD = 'application/vnd.svd';
const APPLICATION_VND_SYMBIAN_INSTALL = 'application/vnd.symbian.install';
const APPLICATION_VND_SYNCML_XML = 'application/vnd.syncml+xml';
const APPLICATION_VND_SYNCML_DM_WBXML = 'application/vnd.syncml.dm+wbxml';
const APPLICATION_VND_SYNCML_DM_XML = 'application/vnd.syncml.dm+xml';
const APPLICATION_VND_SYNCML_DMDDF_XML = 'application/vnd.syncml.dmddf+xml';
const APPLICATION_VND_TAO_INTENT_MODULE_ARCHIVE = 'application/vnd.tao.intent-module-archive';
const APPLICATION_VND_TCPDUMP_PCAP = 'application/vnd.tcpdump.pcap';
const APPLICATION_VND_TMOBILE_LIVETV = 'application/vnd.tmobile-livetv';
const APPLICATION_VND_TRID_TPT = 'application/vnd.trid.tpt';
const APPLICATION_VND_TRISCAPE_MXS = 'application/vnd.triscape.mxs';
const APPLICATION_VND_TRUEAPP = 'application/vnd.trueapp';
const APPLICATION_VND_UFDL = 'application/vnd.ufdl';
const APPLICATION_VND_UIQ_THEME = 'application/vnd.uiq.theme';
const APPLICATION_VND_UMAJIN = 'application/vnd.umajin';
const APPLICATION_VND_UNITY = 'application/vnd.unity';
const APPLICATION_VND_UOML_XML = 'application/vnd.uoml+xml';
const APPLICATION_VND_VCX = 'application/vnd.vcx';
const APPLICATION_VND_VISIO = 'application/vnd.visio';
const APPLICATION_VND_VISIONARY = 'application/vnd.visionary';
const APPLICATION_VND_VSF = 'application/vnd.vsf';
const APPLICATION_VND_WAP_WMLSCRIPTC = 'application/vnd.wap.wmlscriptc';
const APPLICATION_VND_WEBTURBO = 'application/vnd.webturbo';
const APPLICATION_VND_WOLFRAM_PLAYER = 'application/vnd.wolfram.player';
const APPLICATION_VND_WORDPERFECT = 'application/vnd.wordperfect';
const APPLICATION_VND_WQD = 'application/vnd.wqd';
const APPLICATION_VND_WT_STF = 'application/vnd.wt.stf';
const APPLICATION_VND_XARA = 'application/vnd.xara';
const APPLICATION_VND_XFDL = 'application/vnd.xfdl';
const APPLICATION_VND_YAMAHA_HV_DIC = 'application/vnd.yamaha.hv-dic';
const APPLICATION_VND_YAMAHA_HV_SCRIPT = 'application/vnd.yamaha.hv-script';
const APPLICATION_VND_YAMAHA_HV_VOICE = 'application/vnd.yamaha.hv-voice';
const APPLICATION_VND_YAMAHA_OPENSCOREFORMAT = 'application/vnd.yamaha.openscoreformat';
const APPLICATION_VND_YAMAHA_OPENSCOREFORMAT_OSFPVG_XML = 'application/vnd.yamaha.openscoreformat.osfpvg+xml';
const APPLICATION_VND_YAMAHA_SMAF_AUDIO = 'application/vnd.yamaha.smaf-audio';
const APPLICATION_VND_YAMAHA_SMAF_PHRASE = 'application/vnd.yamaha.smaf-phrase';
const APPLICATION_VND_YELLOWRIVER_CUSTOM_MENU = 'application/vnd.yellowriver-custom-menu';
const APPLICATION_VND_ZUL = 'application/vnd.zul';
const APPLICATION_VND_ZZAZZ_DECK_XML = 'application/vnd.zzazz.deck+xml';
const APPLICATION_VOICEXML_XML = 'application/voicexml+xml';
const APPLICATION_WASM = 'application/wasm';
const APPLICATION_WATCHERINFO_XML = 'application/watcherinfo+xml';
const APPLICATION_WBXML = 'application/wbxml';
const APPLICATION_WIDGET = 'application/widget';
const APPLICATION_WINHLP = 'application/winhlp';
const APPLICATION_WMLC = 'application/wmlc';
const APPLICATION_WSDL_XML = 'application/wsdl+xml';
const APPLICATION_WSPOLICY_XML = 'application/wspolicy+xml';
const APPLICATION_X_7Z_COMPRESSED = 'application/x-7z-compressed';
const APPLICATION_X_ABIWORD = 'application/x-abiword';
const APPLICATION_X_ACE_COMPRESSED = 'application/x-ace-compressed';
const APPLICATION_X_APPLE_DISKIMAGE = 'application/x-apple-diskimage';
const APPLICATION_X_ARJ = 'application/x-arj';
const APPLICATION_X_AUTHORWARE_BIN = 'application/x-authorware-bin';
const APPLICATION_X_AUTHORWARE_MAP = 'application/x-authorware-map';
const APPLICATION_X_AUTHORWARE_SEG = 'application/x-authorware-seg';
const APPLICATION_X_BCPIO = 'application/x-bcpio';
const APPLICATION_X_BDOC = 'application/x-bdoc';
const APPLICATION_X_BITTORRENT = 'application/x-bittorrent';
const APPLICATION_X_BLORB = 'application/x-blorb';
const APPLICATION_X_BZIP = 'application/x-bzip';
const APPLICATION_X_BZIP2 = 'application/x-bzip2';
const APPLICATION_X_CBR = 'application/x-cbr';
const APPLICATION_X_CDLINK = 'application/x-cdlink';
const APPLICATION_X_CFS_COMPRESSED = 'application/x-cfs-compressed';
const APPLICATION_X_CHAT = 'application/x-chat';
const APPLICATION_X_CHESS_PGN = 'application/x-chess-pgn';
const APPLICATION_X_CHROME_EXTENSION = 'application/x-chrome-extension';
const APPLICATION_X_COCOA = 'application/x-cocoa';
const APPLICATION_X_COMPRESS = 'application/x-compress';
const APPLICATION_X_CONFERENCE = 'application/x-conference';
const APPLICATION_X_CPIO = 'application/x-cpio';
const APPLICATION_X_CSH = 'application/x-csh';
const APPLICATION_X_DEBIAN_PACKAGE = 'application/x-debian-package';
const APPLICATION_X_DGC_COMPRESSED = 'application/x-dgc-compressed';
const APPLICATION_X_DIRECTOR = 'application/x-director';
const APPLICATION_X_DOOM = 'application/x-doom';
const APPLICATION_X_DTBNCX_XML = 'application/x-dtbncx+xml';
const APPLICATION_X_DTBOOK_XML = 'application/x-dtbook+xml';
const APPLICATION_X_DTBRESOURCE_XML = 'application/x-dtbresource+xml';
const APPLICATION_X_DVI = 'application/x-dvi';
const APPLICATION_X_ENVOY = 'application/x-envoy';
const APPLICATION_X_EVA = 'application/x-eva';
const APPLICATION_X_FONT_BDF = 'application/x-font-bdf';
const APPLICATION_X_FONT_GHOSTSCRIPT = 'application/x-font-ghostscript';
const APPLICATION_X_FONT_LINUX_PSF = 'application/x-font-linux-psf';
const APPLICATION_X_FONT_PCF = 'application/x-font-pcf';
const APPLICATION_X_FONT_SNF = 'application/x-font-snf';
const APPLICATION_X_FONT_TYPE1 = 'application/x-font-type1';
const APPLICATION_X_FREEARC = 'application/x-freearc';
const APPLICATION_X_FUTURESPLASH = 'application/x-futuresplash';
const APPLICATION_X_GCA_COMPRESSED = 'application/x-gca-compressed';
const APPLICATION_X_GLULX = 'application/x-glulx';
const APPLICATION_X_GNUMERIC = 'application/x-gnumeric';
const APPLICATION_X_GRAMPS_XML = 'application/x-gramps-xml';
const APPLICATION_X_GTAR = 'application/x-gtar';
const APPLICATION_X_HDF = 'application/x-hdf';
const APPLICATION_X_HTTPD_PHP = 'application/x-httpd-php';
const APPLICATION_X_HTTPD_PHP_SOURCE = 'application/x-httpd-php-source';
const APPLICATION_X_INSTALL_INSTRUCTIONS = 'application/x-install-instructions';
const APPLICATION_X_ISO9660_IMAGE = 'application/x-iso9660-image';
const APPLICATION_X_IWORK_KEYNOTE_SFFKEY = 'application/x-iwork-keynote-sffkey';
const APPLICATION_X_IWORK_NUMBERS_SFFNUMBERS = 'application/x-iwork-numbers-sffnumbers';
const APPLICATION_X_IWORK_PAGES_SFFPAGES = 'application/x-iwork-pages-sffpages';
const APPLICATION_X_JAVA_ARCHIVE_DIFF = 'application/x-java-archive-diff';
const APPLICATION_X_JAVA_JNLP_FILE = 'application/x-java-jnlp-file';
const APPLICATION_X_KEEPASS2 = 'application/x-keepass2';
const APPLICATION_X_LATEX = 'application/x-latex';
const APPLICATION_X_LUA_BYTECODE = 'application/x-lua-bytecode';
const APPLICATION_X_MAKESELF = 'application/x-makeself';
const APPLICATION_X_MIE = 'application/x-mie';
const APPLICATION_X_MOBIPOCKET_EBOOK = 'application/x-mobipocket-ebook';
const APPLICATION_X_MS_APPLICATION = 'application/x-ms-application';
const APPLICATION_X_MS_SHORTCUT = 'application/x-ms-shortcut';
const APPLICATION_X_MS_WMD = 'application/x-ms-wmd';
const APPLICATION_X_MS_XBAP = 'application/x-ms-xbap';
const APPLICATION_X_MSACCESS = 'application/x-msaccess';
const APPLICATION_X_MSBINDER = 'application/x-msbinder';
const APPLICATION_X_MSCARDFILE = 'application/x-mscardfile';
const APPLICATION_X_MSCLIP = 'application/x-msclip';
const APPLICATION_X_MSDOWNLOAD = 'application/x-msdownload';
const APPLICATION_X_MSMEDIAVIEW = 'application/x-msmediaview';
const APPLICATION_X_MSMETAFILE = 'application/x-msmetafile';
const APPLICATION_X_MSMONEY = 'application/x-msmoney';
const APPLICATION_X_MSPUBLISHER = 'application/x-mspublisher';
const APPLICATION_X_MSSCHEDULE = 'application/x-msschedule';
const APPLICATION_X_MSTERMINAL = 'application/x-msterminal';
const APPLICATION_X_MSWRITE = 'application/x-mswrite';
const APPLICATION_X_NDJSON = 'application/x-ndjson';
const APPLICATION_X_NETCDF = 'application/x-netcdf';
const APPLICATION_X_NS_PROXY_AUTOCONFIG = 'application/x-ns-proxy-autoconfig';
const APPLICATION_X_NZB = 'application/x-nzb';
const APPLICATION_X_PERL = 'application/x-perl';
const APPLICATION_X_PHOTOSHOP = 'application/x-photoshop';
const APPLICATION_X_PILOT = 'application/x-pilot';
const APPLICATION_X_PKCS10 = 'application/x-pkcs10';
const APPLICATION_X_PKCS12 = 'application/x-pkcs12';
const APPLICATION_X_PKCS7 = 'application/x-pkcs7';
const APPLICATION_X_PKCS7_CERTIFICATES = 'application/x-pkcs7-certificates';
const APPLICATION_X_PKCS7_CERTREQRESP = 'application/x-pkcs7-certreqresp';
const APPLICATION_X_PKCS7_SIGNATURE = 'application/x-pkcs7-signature';
const APPLICATION_X_RAR = 'application/x-rar';
const APPLICATION_X_RESEARCH_INFO_SYSTEMS = 'application/x-research-info-systems';
const APPLICATION_X_SH = 'application/x-sh';
const APPLICATION_X_SHAR = 'application/x-shar';
const APPLICATION_X_SHOCKWAVE_FLASH = 'application/x-shockwave-flash';
const APPLICATION_X_SILVERLIGHT_APP = 'application/x-silverlight-app';
const APPLICATION_X_SQL = 'application/x-sql';
const APPLICATION_X_STUFFIT = 'application/x-stuffit';
const APPLICATION_X_STUFFITX = 'application/x-stuffitx';
const APPLICATION_X_SUBRIP = 'application/x-subrip';
const APPLICATION_X_SV4CPIO = 'application/x-sv4cpio';
const APPLICATION_X_SV4CRC = 'application/x-sv4crc';
const APPLICATION_X_T3VM_IMAGE = 'application/x-t3vm-image';
const APPLICATION_X_TADS = 'application/x-tads';
const APPLICATION_X_TAR = 'application/x-tar';
const APPLICATION_X_TCL = 'application/x-tcl';
const APPLICATION_X_TEX = 'application/x-tex';
const APPLICATION_X_TEX_TFM = 'application/x-tex-tfm';
const APPLICATION_X_TEXINFO = 'application/x-texinfo';
const APPLICATION_X_USTAR = 'application/x-ustar';
const APPLICATION_X_VIRTUALBOX_HDD = 'application/x-virtualbox-hdd';
const APPLICATION_X_VIRTUALBOX_OVA = 'application/x-virtualbox-ova';
const APPLICATION_X_VIRTUALBOX_OVF = 'application/x-virtualbox-ovf';
const APPLICATION_X_VIRTUALBOX_VBOX = 'application/x-virtualbox-vbox';
const APPLICATION_X_VIRTUALBOX_VBOX_EXTPACK = 'application/x-virtualbox-vbox-extpack';
const APPLICATION_X_VIRTUALBOX_VDI = 'application/x-virtualbox-vdi';
const APPLICATION_X_VIRTUALBOX_VHD = 'application/x-virtualbox-vhd';
const APPLICATION_X_VIRTUALBOX_VMDK = 'application/x-virtualbox-vmdk';
const APPLICATION_X_WAIS_SOURCE = 'application/x-wais-source';
const APPLICATION_X_WEB_APP_MANIFEST_JSON = 'application/x-web-app-manifest+json';
const APPLICATION_X_X509_CA_CERT = 'application/x-x509-ca-cert';
const APPLICATION_X_X509_USER_CERT = 'application/x-x509-user-cert';
const APPLICATION_X_XFIG = 'application/x-xfig';
const APPLICATION_X_XPINSTALL = 'application/x-xpinstall';
const APPLICATION_X_XZ = 'application/x-xz';
const APPLICATION_X_ZMACHINE = 'application/x-zmachine';
const APPLICATION_XAML_XML = 'application/xaml+xml';
const APPLICATION_XCAP_ATT_XML = 'application/xcap-att+xml';
const APPLICATION_XCAP_CAPS_XML = 'application/xcap-caps+xml';
const APPLICATION_XCAP_DIFF_XML = 'application/xcap-diff+xml';
const APPLICATION_XCAP_EL_XML = 'application/xcap-el+xml';
const APPLICATION_XCAP_NS_XML = 'application/xcap-ns+xml';
const APPLICATION_XENC_XML = 'application/xenc+xml';
const APPLICATION_XFDF = 'application/xfdf';
const APPLICATION_XHTML_XML = 'application/xhtml+xml';
const APPLICATION_XLIFF_XML = 'application/xliff+xml';
const APPLICATION_XML = 'application/xml';
const APPLICATION_XML_DTD = 'application/xml-dtd';
const APPLICATION_XOP_XML = 'application/xop+xml';
const APPLICATION_XPROC_XML = 'application/xproc+xml';
const APPLICATION_XSLT_XML = 'application/xslt+xml';
const APPLICATION_XSPF_XML = 'application/xspf+xml';
const APPLICATION_XV_XML = 'application/xv+xml';
const APPLICATION_YANG = 'application/yang';
const APPLICATION_YIN_XML = 'application/yin+xml';
const APPLICATION_ZIP = 'application/zip';
const AUDIO_AAC = 'audio/aac';
const AUDIO_AC3 = 'audio/ac3';
const AUDIO_ACC = 'audio/acc';
const AUDIO_ADPCM = 'audio/adpcm';
const AUDIO_AMR = 'audio/amr';
const AUDIO_BASIC = 'audio/basic';
const AUDIO_MIDI = 'audio/midi';
const AUDIO_MOBILE_XMF = 'audio/mobile-xmf';
const AUDIO_MP4 = 'audio/mp4';
const AUDIO_MPEG = 'audio/mpeg';
const AUDIO_OGG = 'audio/ogg';
const AUDIO_S3M = 'audio/s3m';
const AUDIO_SILK = 'audio/silk';
const AUDIO_VND_DECE_AUDIO = 'audio/vnd.dece.audio';
const AUDIO_VND_DIGITAL_WINDS = 'audio/vnd.digital-winds';
const AUDIO_VND_DRA = 'audio/vnd.dra';
const AUDIO_VND_DTS = 'audio/vnd.dts';
const AUDIO_VND_DTS_HD = 'audio/vnd.dts.hd';
const AUDIO_VND_LUCENT_VOICE = 'audio/vnd.lucent.voice';
const AUDIO_VND_MS_PLAYREADY_MEDIA_PYA = 'audio/vnd.ms-playready.media.pya';
const AUDIO_VND_NUERA_ECELP4800 = 'audio/vnd.nuera.ecelp4800';
const AUDIO_VND_NUERA_ECELP7470 = 'audio/vnd.nuera.ecelp7470';
const AUDIO_VND_NUERA_ECELP9600 = 'audio/vnd.nuera.ecelp9600';
const AUDIO_VND_RIP = 'audio/vnd.rip';
const AUDIO_WEBM = 'audio/webm';
const AUDIO_X_AIFF = 'audio/x-aiff';
const AUDIO_X_AU = 'audio/x-au';
const AUDIO_X_CAF = 'audio/x-caf';
const AUDIO_X_FLAC = 'audio/x-flac';
const AUDIO_X_M4A = 'audio/x-m4a';
const AUDIO_X_MATROSKA = 'audio/x-matroska';
const AUDIO_X_MS_WAX = 'audio/x-ms-wax';
const AUDIO_X_MS_WMA = 'audio/x-ms-wma';
const AUDIO_X_PN_REALAUDIO = 'audio/x-pn-realaudio';
const AUDIO_X_PN_REALAUDIO_PLUGIN = 'audio/x-pn-realaudio-plugin';
const AUDIO_X_REALAUDIO = 'audio/x-realaudio';
const AUDIO_X_WAV = 'audio/x-wav';
const AUDIO_XM = 'audio/xm';
const CHEMICAL_X_CDX = 'chemical/x-cdx';
const CHEMICAL_X_CIF = 'chemical/x-cif';
const CHEMICAL_X_CMDF = 'chemical/x-cmdf';
const CHEMICAL_X_CML = 'chemical/x-cml';
const CHEMICAL_X_CSML = 'chemical/x-csml';
const CHEMICAL_X_XYZ = 'chemical/x-xyz';
const FONT_COLLECTION = 'font/collection';
const FONT_OTF = 'font/otf';
const FONT_TTF = 'font/ttf';
const FONT_WOFF = 'font/woff';
const FONT_WOFF2 = 'font/woff2';
const IMAGE_ACES = 'image/aces';
const IMAGE_APNG = 'image/apng';
const IMAGE_AVCI = 'image/avci';
const IMAGE_AVCS = 'image/avcs';
const IMAGE_AVIF = 'image/avif';
const IMAGE_BMP = 'image/bmp';
const IMAGE_CGM = 'image/cgm';
const IMAGE_DICOM_RLE = 'image/dicom-rle';
const IMAGE_DPX = 'image/dpx';
const IMAGE_EMF = 'image/emf';
const IMAGE_FITS = 'image/fits';
const IMAGE_G3FAX = 'image/g3fax';
const IMAGE_GIF = 'image/gif';
const IMAGE_HEIC = 'image/heic';
const IMAGE_HEIC_SEQUENCE = 'image/heic-sequence';
const IMAGE_HEIF = 'image/heif';
const IMAGE_HEIF_SEQUENCE = 'image/heif-sequence';
const IMAGE_HEJ2K = 'image/hej2k';
const IMAGE_HSJ2 = 'image/hsj2';
const IMAGE_IEF = 'image/ief';
const IMAGE_JLS = 'image/jls';
const IMAGE_JP2 = 'image/jp2';
const IMAGE_JPEG = 'image/jpeg';
const IMAGE_JPH = 'image/jph';
const IMAGE_JPHC = 'image/jphc';
const IMAGE_JPX = 'image/jpx';
const IMAGE_JXR = 'image/jxr';
const IMAGE_JXRA = 'image/jxra';
const IMAGE_JXRS = 'image/jxrs';
const IMAGE_JXS = 'image/jxs';
const IMAGE_JXSC = 'image/jxsc';
const IMAGE_JXSI = 'image/jxsi';
const IMAGE_JXSS = 'image/jxss';
const IMAGE_KTX = 'image/ktx';
const IMAGE_KTX2 = 'image/ktx2';
const IMAGE_PNG = 'image/png';
const IMAGE_PRS_BTIF = 'image/prs.btif';
const IMAGE_PRS_PTI = 'image/prs.pti';
const IMAGE_SGI = 'image/sgi';
const IMAGE_SVG_XML = 'image/svg+xml';
const IMAGE_T38 = 'image/t38';
const IMAGE_TIFF = 'image/tiff';
const IMAGE_TIFF_FX = 'image/tiff-fx';
const IMAGE_VND_AIRZIP_ACCELERATOR_AZV = 'image/vnd.airzip.accelerator.azv';
const IMAGE_VND_DECE_GRAPHIC = 'image/vnd.dece.graphic';
const IMAGE_VND_DJVU = 'image/vnd.djvu';
const IMAGE_VND_DWG = 'image/vnd.dwg';
const IMAGE_VND_DXF = 'image/vnd.dxf';
const IMAGE_VND_FASTBIDSHEET = 'image/vnd.fastbidsheet';
const IMAGE_VND_FPX = 'image/vnd.fpx';
const IMAGE_VND_FST = 'image/vnd.fst';
const IMAGE_VND_FUJIXEROX_EDMICS_MMR = 'image/vnd.fujixerox.edmics-mmr';
const IMAGE_VND_FUJIXEROX_EDMICS_RLC = 'image/vnd.fujixerox.edmics-rlc';
const IMAGE_VND_MS_DDS = 'image/vnd.ms-dds';
const IMAGE_VND_MS_MODI = 'image/vnd.ms-modi';
const IMAGE_VND_MS_PHOTO = 'image/vnd.ms-photo';
const IMAGE_VND_NET_FPX = 'image/vnd.net-fpx';
const IMAGE_VND_PCO_B16 = 'image/vnd.pco.b16';
const IMAGE_VND_TENCENT_TAP = 'image/vnd.tencent.tap';
const IMAGE_VND_VALVE_SOURCE_TEXTURE = 'image/vnd.valve.source.texture';
const IMAGE_VND_WAP_WBMP = 'image/vnd.wap.wbmp';
const IMAGE_VND_XIFF = 'image/vnd.xiff';
const IMAGE_WEBP = 'image/webp';
const IMAGE_WMF = 'image/wmf';
const IMAGE_X_3DS = 'image/x-3ds';
const IMAGE_X_CMU_RASTER = 'image/x-cmu-raster';
const IMAGE_X_CMX = 'image/x-cmx';
const IMAGE_X_FREEHAND = 'image/x-freehand';
const IMAGE_X_ICON = 'image/x-icon';
const IMAGE_X_JNG = 'image/x-jng';
const IMAGE_X_MRSID_IMAGE = 'image/x-mrsid-image';
const IMAGE_X_PCX = 'image/x-pcx';
const IMAGE_X_PICT = 'image/x-pict';
const IMAGE_X_PORTABLE_ANYMAP = 'image/x-portable-anymap';
const IMAGE_X_PORTABLE_BITMAP = 'image/x-portable-bitmap';
const IMAGE_X_PORTABLE_GRAYMAP = 'image/x-portable-graymap';
const IMAGE_X_PORTABLE_PIXMAP = 'image/x-portable-pixmap';
const IMAGE_X_RGB = 'image/x-rgb';
const IMAGE_X_TGA = 'image/x-tga';
const IMAGE_X_XBITMAP = 'image/x-xbitmap';
const IMAGE_X_XPIXMAP = 'image/x-xpixmap';
const IMAGE_X_XWINDOWDUMP = 'image/x-xwindowdump';
const MESSAGE_DISPOSITION_NOTIFICATION = 'message/disposition-notification';
const MESSAGE_GLOBAL = 'message/global';
const MESSAGE_GLOBAL_DELIVERY_STATUS = 'message/global-delivery-status';
const MESSAGE_GLOBAL_DISPOSITION_NOTIFICATION = 'message/global-disposition-notification';
const MESSAGE_GLOBAL_HEADERS = 'message/global-headers';
const MESSAGE_RFC822 = 'message/rfc822';
const MESSAGE_VND_WFA_WSC = 'message/vnd.wfa.wsc';
const MODEL_3MF = 'model/3mf';
const MODEL_GLTF_JSON = 'model/gltf+json';
const MODEL_GLTF_BINARY = 'model/gltf-binary';
const MODEL_IGES = 'model/iges';
const MODEL_JT = 'model/jt';
const MODEL_MESH = 'model/mesh';
const MODEL_MTL = 'model/mtl';
const MODEL_OBJ = 'model/obj';
const MODEL_PRC = 'model/prc';
const MODEL_STEP_XML = 'model/step+xml';
const MODEL_STEP_ZIP = 'model/step+zip';
const MODEL_STEP_XML_ZIP = 'model/step-xml+zip';
const MODEL_STL = 'model/stl';
const MODEL_U3D = 'model/u3d';
const MODEL_VND_CLD = 'model/vnd.cld';
const MODEL_VND_COLLADA_XML = 'model/vnd.collada+xml';
const MODEL_VND_DWF = 'model/vnd.dwf';
const MODEL_VND_GDL = 'model/vnd.gdl';
const MODEL_VND_GTW = 'model/vnd.gtw';
const MODEL_VND_MTS = 'model/vnd.mts';
const MODEL_VND_OPENGEX = 'model/vnd.opengex';
const MODEL_VND_PARASOLID_TRANSMIT_BINARY = 'model/vnd.parasolid.transmit.binary';
const MODEL_VND_PARASOLID_TRANSMIT_TEXT = 'model/vnd.parasolid.transmit.text';
const MODEL_VND_PYTHA_PYOX = 'model/vnd.pytha.pyox';
const MODEL_VND_SAP_VDS = 'model/vnd.sap.vds';
const MODEL_VND_USDA = 'model/vnd.usda';
const MODEL_VND_USDZ_ZIP = 'model/vnd.usdz+zip';
const MODEL_VND_VALVE_SOURCE_COMPILED_MAP = 'model/vnd.valve.source.compiled-map';
const MODEL_VND_VTU = 'model/vnd.vtu';
const MODEL_VRML = 'model/vrml';
const MODEL_X3D_BINARY = 'model/x3d+binary';
const MODEL_X3D_FASTINFOSET = 'model/x3d+fastinfoset';
const MODEL_X3D_VRML = 'model/x3d+vrml';
const MODEL_X3D_XML = 'model/x3d+xml';
const TEXT_CACHE_MANIFEST = 'text/cache-manifest';
const TEXT_CALENDAR = 'text/calendar';
const TEXT_COFFEESCRIPT = 'text/coffeescript';
const TEXT_CSS = 'text/css';
const TEXT_CSV = 'text/csv';
const TEXT_HTML = 'text/html';
const TEXT_JADE = 'text/jade';
const TEXT_JAVASCRIPT = 'text/javascript';
const TEXT_JSX = 'text/jsx';
const TEXT_LESS = 'text/less';
const TEXT_MARKDOWN = 'text/markdown';
const TEXT_MATHML = 'text/mathml';
const TEXT_MDX = 'text/mdx';
const TEXT_N3 = 'text/n3';
const TEXT_PLAIN = 'text/plain';
const TEXT_PRS_LINES_TAG = 'text/prs.lines.tag';
const TEXT_RICHTEXT = 'text/richtext';
const TEXT_RTF = 'text/rtf';
const TEXT_SGML = 'text/sgml';
const TEXT_SHEX = 'text/shex';
const TEXT_SLIM = 'text/slim';
const TEXT_SPDX = 'text/spdx';
const TEXT_STYLUS = 'text/stylus';
const TEXT_TAB_SEPARATED_VALUES = 'text/tab-separated-values';
const TEXT_TROFF = 'text/troff';
const TEXT_TURTLE = 'text/turtle';
const TEXT_URI_LIST = 'text/uri-list';
const TEXT_VCARD = 'text/vcard';
const TEXT_VND_CURL = 'text/vnd.curl';
const TEXT_VND_CURL_DCURL = 'text/vnd.curl.dcurl';
const TEXT_VND_CURL_MCURL = 'text/vnd.curl.mcurl';
const TEXT_VND_CURL_SCURL = 'text/vnd.curl.scurl';
const TEXT_VND_DVB_SUBTITLE = 'text/vnd.dvb.subtitle';
const TEXT_VND_FAMILYSEARCH_GEDCOM = 'text/vnd.familysearch.gedcom';
const TEXT_VND_FLY = 'text/vnd.fly';
const TEXT_VND_FMI_FLEXSTOR = 'text/vnd.fmi.flexstor';
const TEXT_VND_GRAPHVIZ = 'text/vnd.graphviz';
const TEXT_VND_IN3D_3DML = 'text/vnd.in3d.3dml';
const TEXT_VND_IN3D_SPOT = 'text/vnd.in3d.spot';
const TEXT_VND_SUN_J2ME_APP_DESCRIPTOR = 'text/vnd.sun.j2me.app-descriptor';
const TEXT_VND_WAP_WML = 'text/vnd.wap.wml';
const TEXT_VND_WAP_WMLSCRIPT = 'text/vnd.wap.wmlscript';
const TEXT_VTT = 'text/vtt';
const TEXT_WGSL = 'text/wgsl';
const TEXT_X_ASM = 'text/x-asm';
const TEXT_X_C = 'text/x-c';
const TEXT_X_COMPONENT = 'text/x-component';
const TEXT_X_FORTRAN = 'text/x-fortran';
const TEXT_X_HANDLEBARS_TEMPLATE = 'text/x-handlebars-template';
const TEXT_X_JAVA_SOURCE = 'text/x-java-source';
const TEXT_X_LUA = 'text/x-lua';
const TEXT_X_MARKDOWN = 'text/x-markdown';
const TEXT_X_NFO = 'text/x-nfo';
const TEXT_X_OPML = 'text/x-opml';
const TEXT_X_ORG = 'text/x-org';
const TEXT_X_PASCAL = 'text/x-pascal';
const TEXT_X_PROCESSING = 'text/x-processing';
const TEXT_X_SASS = 'text/x-sass';
const TEXT_X_SCRIPTZSH = 'text/x-scriptzsh';
const TEXT_X_SCSS = 'text/x-scss';
const TEXT_X_SETEXT = 'text/x-setext';
const TEXT_X_SFV = 'text/x-sfv';
const TEXT_X_SUSE_YMP = 'text/x-suse-ymp';
const TEXT_X_UUENCODE = 'text/x-uuencode';
const TEXT_X_VCALENDAR = 'text/x-vcalendar';
const TEXT_X_VCARD = 'text/x-vcard';
const TEXT_YAML = 'text/yaml';
const VIDEO_3GP = 'video/3gp';
const VIDEO_3GPP = 'video/3gpp';
const VIDEO_3GPP2 = 'video/3gpp2';
const VIDEO_H261 = 'video/h261';
const VIDEO_H263 = 'video/h263';
const VIDEO_H264 = 'video/h264';
const VIDEO_ISO_SEGMENT = 'video/iso.segment';
const VIDEO_JPEG = 'video/jpeg';
const VIDEO_JPM = 'video/jpm';
const VIDEO_MJ2 = 'video/mj2';
const VIDEO_MP2T = 'video/mp2t';
const VIDEO_MP4 = 'video/mp4';
const VIDEO_MPEG = 'video/mpeg';
const VIDEO_OGG = 'video/ogg';
const VIDEO_QUICKTIME = 'video/quicktime';
const VIDEO_VND_DECE_HD = 'video/vnd.dece.hd';
const VIDEO_VND_DECE_MOBILE = 'video/vnd.dece.mobile';
const VIDEO_VND_DECE_PD = 'video/vnd.dece.pd';
const VIDEO_VND_DECE_SD = 'video/vnd.dece.sd';
const VIDEO_VND_DECE_VIDEO = 'video/vnd.dece.video';
const VIDEO_VND_DVB_FILE = 'video/vnd.dvb.file';
const VIDEO_VND_FVT = 'video/vnd.fvt';
const VIDEO_VND_MPEGURL = 'video/vnd.mpegurl';
const VIDEO_VND_MS_PLAYREADY_MEDIA_PYV = 'video/vnd.ms-playready.media.pyv';
const VIDEO_VND_RN_REALVIDEO = 'video/vnd.rn-realvideo';
const VIDEO_VND_UVVU_MP4 = 'video/vnd.uvvu.mp4';
const VIDEO_VND_VIVO = 'video/vnd.vivo';
const VIDEO_WEBM = 'video/webm';
const VIDEO_X_FLI = 'video/x-fli';
const VIDEO_X_FLV = 'video/x-flv';
const VIDEO_X_M4V = 'video/x-m4v';
const VIDEO_X_MATROSKA = 'video/x-matroska';
const VIDEO_X_MNG = 'video/x-mng';
const VIDEO_X_MS_ASF = 'video/x-ms-asf';
const VIDEO_X_MS_VOB = 'video/x-ms-vob';
const VIDEO_X_MS_WM = 'video/x-ms-wm';
const VIDEO_X_MS_WMV = 'video/x-ms-wmv';
const VIDEO_X_MS_WMX = 'video/x-ms-wmx';
const VIDEO_X_MS_WVX = 'video/x-ms-wvx';
const VIDEO_X_MSVIDEO = 'video/x-msvideo';
const VIDEO_X_SGI_MOVIE = 'video/x-sgi-movie';
const VIDEO_X_SMV = 'video/x-smv';
const X_CONFERENCE_X_COOLTALK = 'x-conference/x-cooltalk';
+
const APPLICATION_STEP = "application/STEP";
const APPLICATION_ANDREW_INSET = "application/andrew-inset";
const APPLICATION_APPINSTALLER = "application/appinstaller";
const APPLICATION_APPLIXWARE = "application/applixware";
const APPLICATION_APPX = "application/appx";
const APPLICATION_APPXBUNDLE = "application/appxbundle";
const APPLICATION_ATOM_XML = "application/atom+xml";
const APPLICATION_ATOMCAT_XML = "application/atomcat+xml";
const APPLICATION_ATOMDELETED_XML = "application/atomdeleted+xml";
const APPLICATION_ATOMSVC_XML = "application/atomsvc+xml";
const APPLICATION_ATSC_DWD_XML = "application/atsc-dwd+xml";
const APPLICATION_ATSC_HELD_XML = "application/atsc-held+xml";
const APPLICATION_ATSC_RSAT_XML = "application/atsc-rsat+xml";
const APPLICATION_AUTOMATIONML_AML_XML = "application/automationml-aml+xml";
const APPLICATION_AUTOMATIONML_AMLX_ZIP = "application/automationml-amlx+zip";
const APPLICATION_BRAILLE = "application/braille";
const APPLICATION_CALENDAR_XML = "application/calendar+xml";
const APPLICATION_CCXML_XML = "application/ccxml+xml";
const APPLICATION_CDFX_XML = "application/cdfx+xml";
const APPLICATION_CDMI_CAPABILITY = "application/cdmi-capability";
const APPLICATION_CDMI_CONTAINER = "application/cdmi-container";
const APPLICATION_CDMI_DOMAIN = "application/cdmi-domain";
const APPLICATION_CDMI_OBJECT = "application/cdmi-object";
const APPLICATION_CDMI_QUEUE = "application/cdmi-queue";
const APPLICATION_CDR = "application/cdr";
const APPLICATION_CPL_XML = "application/cpl+xml";
const APPLICATION_CU_SEEME = "application/cu-seeme";
const APPLICATION_CWL = "application/cwl";
const APPLICATION_DASH_XML = "application/dash+xml";
const APPLICATION_DAVMOUNT_XML = "application/davmount+xml";
const APPLICATION_DOCBOOK_XML = "application/docbook+xml";
const APPLICATION_DSSC_DER = "application/dssc+der";
const APPLICATION_DSSC_XML = "application/dssc+xml";
const APPLICATION_ECMASCRIPT = "application/ecmascript";
const APPLICATION_EMMA_XML = "application/emma+xml";
const APPLICATION_EMOTIONML_XML = "application/emotionml+xml";
const APPLICATION_EPUB_ZIP = "application/epub+zip";
const APPLICATION_EXCEL = "application/excel";
const APPLICATION_EXI = "application/exi";
const APPLICATION_EXPRESS = "application/express";
const APPLICATION_FDT_XML = "application/fdt+xml";
const APPLICATION_FONT_TDPFR = "application/font-tdpfr";
const APPLICATION_GEO_JSON = "application/geo+json";
const APPLICATION_GML_XML = "application/gml+xml";
const APPLICATION_GPG_KEYS = "application/gpg-keys";
const APPLICATION_GPX_XML = "application/gpx+xml";
const APPLICATION_GXF = "application/gxf";
const APPLICATION_GZIP = "application/gzip";
const APPLICATION_HJSON = "application/hjson";
const APPLICATION_HYPERSTUDIO = "application/hyperstudio";
const APPLICATION_INKML_XML = "application/inkml+xml";
const APPLICATION_IPFIX = "application/ipfix";
const APPLICATION_ITS_XML = "application/its+xml";
const APPLICATION_JAVA_ARCHIVE = "application/java-archive";
const APPLICATION_JAVA_SERIALIZED_OBJECT = "application/java-serialized-object";
const APPLICATION_JAVASCRIPT = "application/javascript";
const APPLICATION_JSON = "application/json";
const APPLICATION_JSON5 = "application/json5";
const APPLICATION_JSONML_JSON = "application/jsonml+json";
const APPLICATION_LD_JSON = "application/ld+json";
const APPLICATION_LGR_XML = "application/lgr+xml";
const APPLICATION_LOST_XML = "application/lost+xml";
const APPLICATION_MAC_BINHEX40 = "application/mac-binhex40";
const APPLICATION_MAC_COMPACTPRO = "application/mac-compactpro";
const APPLICATION_MADS_XML = "application/mads+xml";
const APPLICATION_MANIFEST_JSON = "application/manifest+json";
const APPLICATION_MARC = "application/marc";
const APPLICATION_MARCXML_XML = "application/marcxml+xml";
const APPLICATION_MATHEMATICA = "application/mathematica";
const APPLICATION_MATHML_XML = "application/mathml+xml";
const APPLICATION_MBOX = "application/mbox";
const APPLICATION_MEDIA_POLICY_DATASET_XML = "application/media-policy-dataset+xml";
const APPLICATION_MEDIASERVERCONTROL_XML = "application/mediaservercontrol+xml";
const APPLICATION_METALINK_XML = "application/metalink+xml";
const APPLICATION_METALINK4_XML = "application/metalink4+xml";
const APPLICATION_METS_XML = "application/mets+xml";
const APPLICATION_MMT_AEI_XML = "application/mmt-aei+xml";
const APPLICATION_MMT_USD_XML = "application/mmt-usd+xml";
const APPLICATION_MODS_XML = "application/mods+xml";
const APPLICATION_MP21 = "application/mp21";
const APPLICATION_MP4 = "application/mp4";
const APPLICATION_MSIX = "application/msix";
const APPLICATION_MSIXBUNDLE = "application/msixbundle";
const APPLICATION_MSWORD = "application/msword";
const APPLICATION_MXF = "application/mxf";
const APPLICATION_N_QUADS = "application/n-quads";
const APPLICATION_N_TRIPLES = "application/n-triples";
const APPLICATION_NODE = "application/node";
const APPLICATION_OCTET_STREAM = "application/octet-stream";
const APPLICATION_ODA = "application/oda";
const APPLICATION_OEBPS_PACKAGE_XML = "application/oebps-package+xml";
const APPLICATION_OGG = "application/ogg";
const APPLICATION_OMDOC_XML = "application/omdoc+xml";
const APPLICATION_ONENOTE = "application/onenote";
const APPLICATION_OXPS = "application/oxps";
const APPLICATION_P2P_OVERLAY_XML = "application/p2p-overlay+xml";
const APPLICATION_PATCH_OPS_ERROR_XML = "application/patch-ops-error+xml";
const APPLICATION_PDF = "application/pdf";
const APPLICATION_PGP = "application/pgp";
const APPLICATION_PGP_SIGNATURE = "application/pgp-signature";
const APPLICATION_PICS_RULES = "application/pics-rules";
const APPLICATION_PKCS7_MIME = "application/pkcs7-mime";
const APPLICATION_PKCS7_SIGNATURE = "application/pkcs7-signature";
const APPLICATION_PKCS8 = "application/pkcs8";
const APPLICATION_PKIX_CERT = "application/pkix-cert";
const APPLICATION_PKIX_CRL = "application/pkix-crl";
const APPLICATION_PKIX_PKIPATH = "application/pkix-pkipath";
const APPLICATION_PKIXCMP = "application/pkixcmp";
const APPLICATION_PLS_XML = "application/pls+xml";
const APPLICATION_POSTSCRIPT = "application/postscript";
const APPLICATION_POWERPOINT = "application/powerpoint";
const APPLICATION_PROVENANCE_XML = "application/provenance+xml";
const APPLICATION_PRS_CWW = "application/prs.cww";
const APPLICATION_PRS_XSF_XML = "application/prs.xsf+xml";
const APPLICATION_PSKC_XML = "application/pskc+xml";
const APPLICATION_RAML_YAML = "application/raml+yaml";
const APPLICATION_RDF_XML = "application/rdf+xml";
const APPLICATION_REGINFO_XML = "application/reginfo+xml";
const APPLICATION_RELAX_NG_COMPACT_SYNTAX = "application/relax-ng-compact-syntax";
const APPLICATION_RESOURCE_LISTS_XML = "application/resource-lists+xml";
const APPLICATION_RESOURCE_LISTS_DIFF_XML = "application/resource-lists-diff+xml";
const APPLICATION_RLS_SERVICES_XML = "application/rls-services+xml";
const APPLICATION_ROUTE_APD_XML = "application/route-apd+xml";
const APPLICATION_ROUTE_S_TSID_XML = "application/route-s-tsid+xml";
const APPLICATION_ROUTE_USD_XML = "application/route-usd+xml";
const APPLICATION_RPKI_GHOSTBUSTERS = "application/rpki-ghostbusters";
const APPLICATION_RPKI_MANIFEST = "application/rpki-manifest";
const APPLICATION_RPKI_ROA = "application/rpki-roa";
const APPLICATION_RSD_XML = "application/rsd+xml";
const APPLICATION_RSS_XML = "application/rss+xml";
const APPLICATION_SBML_XML = "application/sbml+xml";
const APPLICATION_SCVP_CV_REQUEST = "application/scvp-cv-request";
const APPLICATION_SCVP_CV_RESPONSE = "application/scvp-cv-response";
const APPLICATION_SCVP_VP_REQUEST = "application/scvp-vp-request";
const APPLICATION_SCVP_VP_RESPONSE = "application/scvp-vp-response";
const APPLICATION_SDP = "application/sdp";
const APPLICATION_SENML_XML = "application/senml+xml";
const APPLICATION_SENSML_XML = "application/sensml+xml";
const APPLICATION_SET_PAYMENT_INITIATION = "application/set-payment-initiation";
const APPLICATION_SET_REGISTRATION_INITIATION = "application/set-registration-initiation";
const APPLICATION_SHF_XML = "application/shf+xml";
const APPLICATION_SIEVE = "application/sieve";
const APPLICATION_SMIL = "application/smil";
const APPLICATION_SPARQL_QUERY = "application/sparql-query";
const APPLICATION_SPARQL_RESULTS_XML = "application/sparql-results+xml";
const APPLICATION_SRGS = "application/srgs";
const APPLICATION_SRGS_XML = "application/srgs+xml";
const APPLICATION_SRU_XML = "application/sru+xml";
const APPLICATION_SSDL_XML = "application/ssdl+xml";
const APPLICATION_SSML_XML = "application/ssml+xml";
const APPLICATION_SWID_XML = "application/swid+xml";
const APPLICATION_TEI_XML = "application/tei+xml";
const APPLICATION_THRAUD_XML = "application/thraud+xml";
const APPLICATION_TIMESTAMPED_DATA = "application/timestamped-data";
const APPLICATION_TOML = "application/toml";
const APPLICATION_TRIG = "application/trig";
const APPLICATION_TTML_XML = "application/ttml+xml";
const APPLICATION_UBJSON = "application/ubjson";
const APPLICATION_URC_RESSHEET_XML = "application/urc-ressheet+xml";
const APPLICATION_URC_TARGETDESC_XML = "application/urc-targetdesc+xml";
const APPLICATION_VIDEOLAN = "application/videolan";
const APPLICATION_VND_1000MINDS_DECISION_MODEL_XML = "application/vnd.1000minds.decision-model+xml";
const APPLICATION_VND_3GPP_PIC_BW_LARGE = "application/vnd.3gpp.pic-bw-large";
const APPLICATION_VND_3GPP_PIC_BW_SMALL = "application/vnd.3gpp.pic-bw-small";
const APPLICATION_VND_3GPP_PIC_BW_VAR = "application/vnd.3gpp.pic-bw-var";
const APPLICATION_VND_3GPP2_TCAP = "application/vnd.3gpp2.tcap";
const APPLICATION_VND_3M_POST_IT_NOTES = "application/vnd.3m.post-it-notes";
const APPLICATION_VND_ACCPAC_SIMPLY_ASO = "application/vnd.accpac.simply.aso";
const APPLICATION_VND_ACCPAC_SIMPLY_IMP = "application/vnd.accpac.simply.imp";
const APPLICATION_VND_ACUCOBOL = "application/vnd.acucobol";
const APPLICATION_VND_ACUCORP = "application/vnd.acucorp";
const APPLICATION_VND_ADOBE_AIR_APPLICATION_INSTALLER_PACKAGE_ZIP = "application/vnd.adobe.air-application-installer-package+zip";
const APPLICATION_VND_ADOBE_FORMSCENTRAL_FCDT = "application/vnd.adobe.formscentral.fcdt";
const APPLICATION_VND_ADOBE_FXP = "application/vnd.adobe.fxp";
const APPLICATION_VND_ADOBE_XDP_XML = "application/vnd.adobe.xdp+xml";
const APPLICATION_VND_AGE = "application/vnd.age";
const APPLICATION_VND_AHEAD_SPACE = "application/vnd.ahead.space";
const APPLICATION_VND_AIRZIP_FILESECURE_AZF = "application/vnd.airzip.filesecure.azf";
const APPLICATION_VND_AIRZIP_FILESECURE_AZS = "application/vnd.airzip.filesecure.azs";
const APPLICATION_VND_AMAZON_EBOOK = "application/vnd.amazon.ebook";
const APPLICATION_VND_AMERICANDYNAMICS_ACC = "application/vnd.americandynamics.acc";
const APPLICATION_VND_AMIGA_AMI = "application/vnd.amiga.ami";
const APPLICATION_VND_ANDROID_PACKAGE_ARCHIVE = "application/vnd.android.package-archive";
const APPLICATION_VND_ANSER_WEB_CERTIFICATE_ISSUE_INITIATION = "application/vnd.anser-web-certificate-issue-initiation";
const APPLICATION_VND_ANSER_WEB_FUNDS_TRANSFER_INITIATION = "application/vnd.anser-web-funds-transfer-initiation";
const APPLICATION_VND_ANTIX_GAME_COMPONENT = "application/vnd.antix.game-component";
const APPLICATION_VND_APPLE_INSTALLER_XML = "application/vnd.apple.installer+xml";
const APPLICATION_VND_APPLE_MPEGURL = "application/vnd.apple.mpegurl";
const APPLICATION_VND_APPLE_PKPASS = "application/vnd.apple.pkpass";
const APPLICATION_VND_ARISTANETWORKS_SWI = "application/vnd.aristanetworks.swi";
const APPLICATION_VND_ASTRAEA_SOFTWARE_IOTA = "application/vnd.astraea-software.iota";
const APPLICATION_VND_AUDIOGRAPH = "application/vnd.audiograph";
const APPLICATION_VND_BALSAMIQ_BMML_XML = "application/vnd.balsamiq.bmml+xml";
const APPLICATION_VND_BLUEICE_MULTIPASS = "application/vnd.blueice.multipass";
const APPLICATION_VND_BMI = "application/vnd.bmi";
const APPLICATION_VND_BUSINESSOBJECTS = "application/vnd.businessobjects";
const APPLICATION_VND_CHEMDRAW_XML = "application/vnd.chemdraw+xml";
const APPLICATION_VND_CHIPNUTS_KARAOKE_MMD = "application/vnd.chipnuts.karaoke-mmd";
const APPLICATION_VND_CINDERELLA = "application/vnd.cinderella";
const APPLICATION_VND_CITATIONSTYLES_STYLE_XML = "application/vnd.citationstyles.style+xml";
const APPLICATION_VND_CLAYMORE = "application/vnd.claymore";
const APPLICATION_VND_CLOANTO_RP9 = "application/vnd.cloanto.rp9";
const APPLICATION_VND_CLONK_C4GROUP = "application/vnd.clonk.c4group";
const APPLICATION_VND_CLUETRUST_CARTOMOBILE_CONFIG = "application/vnd.cluetrust.cartomobile-config";
const APPLICATION_VND_CLUETRUST_CARTOMOBILE_CONFIG_PKG = "application/vnd.cluetrust.cartomobile-config-pkg";
const APPLICATION_VND_COMMONSPACE = "application/vnd.commonspace";
const APPLICATION_VND_CONTACT_CMSG = "application/vnd.contact.cmsg";
const APPLICATION_VND_COSMOCALLER = "application/vnd.cosmocaller";
const APPLICATION_VND_CRICK_CLICKER = "application/vnd.crick.clicker";
const APPLICATION_VND_CRICK_CLICKER_KEYBOARD = "application/vnd.crick.clicker.keyboard";
const APPLICATION_VND_CRICK_CLICKER_PALETTE = "application/vnd.crick.clicker.palette";
const APPLICATION_VND_CRICK_CLICKER_TEMPLATE = "application/vnd.crick.clicker.template";
const APPLICATION_VND_CRICK_CLICKER_WORDBANK = "application/vnd.crick.clicker.wordbank";
const APPLICATION_VND_CRITICALTOOLS_WBS_XML = "application/vnd.criticaltools.wbs+xml";
const APPLICATION_VND_CTC_POSML = "application/vnd.ctc-posml";
const APPLICATION_VND_CUPS_PPD = "application/vnd.cups-ppd";
const APPLICATION_VND_CURL_CAR = "application/vnd.curl.car";
const APPLICATION_VND_CURL_PCURL = "application/vnd.curl.pcurl";
const APPLICATION_VND_DART = "application/vnd.dart";
const APPLICATION_VND_DATA_VISION_RDZ = "application/vnd.data-vision.rdz";
const APPLICATION_VND_DBF = "application/vnd.dbf";
const APPLICATION_VND_DECE_DATA = "application/vnd.dece.data";
const APPLICATION_VND_DECE_TTML_XML = "application/vnd.dece.ttml+xml";
const APPLICATION_VND_DECE_UNSPECIFIED = "application/vnd.dece.unspecified";
const APPLICATION_VND_DECE_ZIP = "application/vnd.dece.zip";
const APPLICATION_VND_DENOVO_FCSELAYOUT_LINK = "application/vnd.denovo.fcselayout-link";
const APPLICATION_VND_DNA = "application/vnd.dna";
const APPLICATION_VND_DOLBY_MLP = "application/vnd.dolby.mlp";
const APPLICATION_VND_DPGRAPH = "application/vnd.dpgraph";
const APPLICATION_VND_DREAMFACTORY = "application/vnd.dreamfactory";
const APPLICATION_VND_DS_KEYPOINT = "application/vnd.ds-keypoint";
const APPLICATION_VND_DVB_AIT = "application/vnd.dvb.ait";
const APPLICATION_VND_DVB_SERVICE = "application/vnd.dvb.service";
const APPLICATION_VND_DYNAGEO = "application/vnd.dynageo";
const APPLICATION_VND_ECOWIN_CHART = "application/vnd.ecowin.chart";
const APPLICATION_VND_ENLIVEN = "application/vnd.enliven";
const APPLICATION_VND_EPSON_ESF = "application/vnd.epson.esf";
const APPLICATION_VND_EPSON_MSF = "application/vnd.epson.msf";
const APPLICATION_VND_EPSON_QUICKANIME = "application/vnd.epson.quickanime";
const APPLICATION_VND_EPSON_SALT = "application/vnd.epson.salt";
const APPLICATION_VND_EPSON_SSF = "application/vnd.epson.ssf";
const APPLICATION_VND_ESZIGNO3_XML = "application/vnd.eszigno3+xml";
const APPLICATION_VND_EZPIX_ALBUM = "application/vnd.ezpix-album";
const APPLICATION_VND_EZPIX_PACKAGE = "application/vnd.ezpix-package";
const APPLICATION_VND_FDF = "application/vnd.fdf";
const APPLICATION_VND_FDSN_MSEED = "application/vnd.fdsn.mseed";
const APPLICATION_VND_FDSN_SEED = "application/vnd.fdsn.seed";
const APPLICATION_VND_FLOGRAPHIT = "application/vnd.flographit";
const APPLICATION_VND_FLUXTIME_CLIP = "application/vnd.fluxtime.clip";
const APPLICATION_VND_FRAMEMAKER = "application/vnd.framemaker";
const APPLICATION_VND_FROGANS_FNC = "application/vnd.frogans.fnc";
const APPLICATION_VND_FROGANS_LTF = "application/vnd.frogans.ltf";
const APPLICATION_VND_FSC_WEBLAUNCH = "application/vnd.fsc.weblaunch";
const APPLICATION_VND_FUJITSU_OASYS = "application/vnd.fujitsu.oasys";
const APPLICATION_VND_FUJITSU_OASYS2 = "application/vnd.fujitsu.oasys2";
const APPLICATION_VND_FUJITSU_OASYS3 = "application/vnd.fujitsu.oasys3";
const APPLICATION_VND_FUJITSU_OASYSGP = "application/vnd.fujitsu.oasysgp";
const APPLICATION_VND_FUJITSU_OASYSPRS = "application/vnd.fujitsu.oasysprs";
const APPLICATION_VND_FUJIXEROX_DDD = "application/vnd.fujixerox.ddd";
const APPLICATION_VND_FUJIXEROX_DOCUWORKS = "application/vnd.fujixerox.docuworks";
const APPLICATION_VND_FUJIXEROX_DOCUWORKS_BINDER = "application/vnd.fujixerox.docuworks.binder";
const APPLICATION_VND_FUZZYSHEET = "application/vnd.fuzzysheet";
const APPLICATION_VND_GENOMATIX_TUXEDO = "application/vnd.genomatix.tuxedo";
const APPLICATION_VND_GEOGEBRA_FILE = "application/vnd.geogebra.file";
const APPLICATION_VND_GEOGEBRA_TOOL = "application/vnd.geogebra.tool";
const APPLICATION_VND_GEOMETRY_EXPLORER = "application/vnd.geometry-explorer";
const APPLICATION_VND_GEONEXT = "application/vnd.geonext";
const APPLICATION_VND_GEOPLAN = "application/vnd.geoplan";
const APPLICATION_VND_GEOSPACE = "application/vnd.geospace";
const APPLICATION_VND_GMX = "application/vnd.gmx";
const APPLICATION_VND_GOOGLE_APPS_DOCUMENT = "application/vnd.google-apps.document";
const APPLICATION_VND_GOOGLE_APPS_PRESENTATION = "application/vnd.google-apps.presentation";
const APPLICATION_VND_GOOGLE_APPS_SPREADSHEET = "application/vnd.google-apps.spreadsheet";
const APPLICATION_VND_GOOGLE_EARTH_KML_XML = "application/vnd.google-earth.kml+xml";
const APPLICATION_VND_GOOGLE_EARTH_KMZ = "application/vnd.google-earth.kmz";
const APPLICATION_VND_GRAFEQ = "application/vnd.grafeq";
const APPLICATION_VND_GROOVE_ACCOUNT = "application/vnd.groove-account";
const APPLICATION_VND_GROOVE_HELP = "application/vnd.groove-help";
const APPLICATION_VND_GROOVE_IDENTITY_MESSAGE = "application/vnd.groove-identity-message";
const APPLICATION_VND_GROOVE_INJECTOR = "application/vnd.groove-injector";
const APPLICATION_VND_GROOVE_TOOL_MESSAGE = "application/vnd.groove-tool-message";
const APPLICATION_VND_GROOVE_TOOL_TEMPLATE = "application/vnd.groove-tool-template";
const APPLICATION_VND_GROOVE_VCARD = "application/vnd.groove-vcard";
const APPLICATION_VND_HAL_XML = "application/vnd.hal+xml";
const APPLICATION_VND_HANDHELD_ENTERTAINMENT_XML = "application/vnd.handheld-entertainment+xml";
const APPLICATION_VND_HBCI = "application/vnd.hbci";
const APPLICATION_VND_HHE_LESSON_PLAYER = "application/vnd.hhe.lesson-player";
const APPLICATION_VND_HP_HPGL = "application/vnd.hp-hpgl";
const APPLICATION_VND_HP_HPID = "application/vnd.hp-hpid";
const APPLICATION_VND_HP_HPS = "application/vnd.hp-hps";
const APPLICATION_VND_HP_JLYT = "application/vnd.hp-jlyt";
const APPLICATION_VND_HP_PCL = "application/vnd.hp-pcl";
const APPLICATION_VND_HP_PCLXL = "application/vnd.hp-pclxl";
const APPLICATION_VND_HYDROSTATIX_SOF_DATA = "application/vnd.hydrostatix.sof-data";
const APPLICATION_VND_IBM_MINIPAY = "application/vnd.ibm.minipay";
const APPLICATION_VND_IBM_MODCAP = "application/vnd.ibm.modcap";
const APPLICATION_VND_IBM_RIGHTS_MANAGEMENT = "application/vnd.ibm.rights-management";
const APPLICATION_VND_IBM_SECURE_CONTAINER = "application/vnd.ibm.secure-container";
const APPLICATION_VND_ICCPROFILE = "application/vnd.iccprofile";
const APPLICATION_VND_IGLOADER = "application/vnd.igloader";
const APPLICATION_VND_IMMERVISION_IVP = "application/vnd.immervision-ivp";
const APPLICATION_VND_IMMERVISION_IVU = "application/vnd.immervision-ivu";
const APPLICATION_VND_INSORS_IGM = "application/vnd.insors.igm";
const APPLICATION_VND_INTERCON_FORMNET = "application/vnd.intercon.formnet";
const APPLICATION_VND_INTERGEO = "application/vnd.intergeo";
const APPLICATION_VND_INTU_QBO = "application/vnd.intu.qbo";
const APPLICATION_VND_INTU_QFX = "application/vnd.intu.qfx";
const APPLICATION_VND_IPUNPLUGGED_RCPROFILE = "application/vnd.ipunplugged.rcprofile";
const APPLICATION_VND_IREPOSITORY_PACKAGE_XML = "application/vnd.irepository.package+xml";
const APPLICATION_VND_IS_XPR = "application/vnd.is-xpr";
const APPLICATION_VND_ISAC_FCS = "application/vnd.isac.fcs";
const APPLICATION_VND_JAM = "application/vnd.jam";
const APPLICATION_VND_JCP_JAVAME_MIDLET_RMS = "application/vnd.jcp.javame.midlet-rms";
const APPLICATION_VND_JISP = "application/vnd.jisp";
const APPLICATION_VND_JOOST_JODA_ARCHIVE = "application/vnd.joost.joda-archive";
const APPLICATION_VND_KAHOOTZ = "application/vnd.kahootz";
const APPLICATION_VND_KDE_KARBON = "application/vnd.kde.karbon";
const APPLICATION_VND_KDE_KCHART = "application/vnd.kde.kchart";
const APPLICATION_VND_KDE_KFORMULA = "application/vnd.kde.kformula";
const APPLICATION_VND_KDE_KIVIO = "application/vnd.kde.kivio";
const APPLICATION_VND_KDE_KONTOUR = "application/vnd.kde.kontour";
const APPLICATION_VND_KDE_KPRESENTER = "application/vnd.kde.kpresenter";
const APPLICATION_VND_KDE_KSPREAD = "application/vnd.kde.kspread";
const APPLICATION_VND_KDE_KWORD = "application/vnd.kde.kword";
const APPLICATION_VND_KENAMEAAPP = "application/vnd.kenameaapp";
const APPLICATION_VND_KIDSPIRATION = "application/vnd.kidspiration";
const APPLICATION_VND_KINAR = "application/vnd.kinar";
const APPLICATION_VND_KOAN = "application/vnd.koan";
const APPLICATION_VND_KODAK_DESCRIPTOR = "application/vnd.kodak-descriptor";
const APPLICATION_VND_LAS_LAS_XML = "application/vnd.las.las+xml";
const APPLICATION_VND_LLAMAGRAPHICS_LIFE_BALANCE_DESKTOP = "application/vnd.llamagraphics.life-balance.desktop";
const APPLICATION_VND_LLAMAGRAPHICS_LIFE_BALANCE_EXCHANGE_XML = "application/vnd.llamagraphics.life-balance.exchange+xml";
const APPLICATION_VND_LOTUS_1_2_3 = "application/vnd.lotus-1-2-3";
const APPLICATION_VND_LOTUS_APPROACH = "application/vnd.lotus-approach";
const APPLICATION_VND_LOTUS_FREELANCE = "application/vnd.lotus-freelance";
const APPLICATION_VND_LOTUS_NOTES = "application/vnd.lotus-notes";
const APPLICATION_VND_LOTUS_SCREENCAM = "application/vnd.lotus-screencam";
const APPLICATION_VND_LOTUS_WORDPRO = "application/vnd.lotus-wordpro";
const APPLICATION_VND_MACPORTS_PORTPKG = "application/vnd.macports.portpkg";
const APPLICATION_VND_MAPBOX_VECTOR_TILE = "application/vnd.mapbox-vector-tile";
const APPLICATION_VND_MCD = "application/vnd.mcd";
const APPLICATION_VND_MEDCALCDATA = "application/vnd.medcalcdata";
const APPLICATION_VND_MEDIASTATION_CDKEY = "application/vnd.mediastation.cdkey";
const APPLICATION_VND_MFER = "application/vnd.mfer";
const APPLICATION_VND_MFMP = "application/vnd.mfmp";
const APPLICATION_VND_MICROGRAFX_FLO = "application/vnd.micrografx.flo";
const APPLICATION_VND_MICROGRAFX_IGX = "application/vnd.micrografx.igx";
const APPLICATION_VND_MIF = "application/vnd.mif";
const APPLICATION_VND_MOBIUS_DAF = "application/vnd.mobius.daf";
const APPLICATION_VND_MOBIUS_DIS = "application/vnd.mobius.dis";
const APPLICATION_VND_MOBIUS_MBK = "application/vnd.mobius.mbk";
const APPLICATION_VND_MOBIUS_MQY = "application/vnd.mobius.mqy";
const APPLICATION_VND_MOBIUS_MSL = "application/vnd.mobius.msl";
const APPLICATION_VND_MOBIUS_PLC = "application/vnd.mobius.plc";
const APPLICATION_VND_MOBIUS_TXF = "application/vnd.mobius.txf";
const APPLICATION_VND_MOPHUN_APPLICATION = "application/vnd.mophun.application";
const APPLICATION_VND_MOPHUN_CERTIFICATE = "application/vnd.mophun.certificate";
const APPLICATION_VND_MOZILLA_XUL_XML = "application/vnd.mozilla.xul+xml";
const APPLICATION_VND_MPEGURL = "application/vnd.mpegurl";
const APPLICATION_VND_MS_ARTGALRY = "application/vnd.ms-artgalry";
const APPLICATION_VND_MS_CAB_COMPRESSED = "application/vnd.ms-cab-compressed";
const APPLICATION_VND_MS_EXCEL = "application/vnd.ms-excel";
const APPLICATION_VND_MS_EXCEL_ADDIN_MACROENABLED_12 = "application/vnd.ms-excel.addin.macroEnabled.12";
const APPLICATION_VND_MS_EXCEL_SHEET_BINARY_MACROENABLED_12 = "application/vnd.ms-excel.sheet.binary.macroEnabled.12";
const APPLICATION_VND_MS_EXCEL_SHEET_MACROENABLED_12 = "application/vnd.ms-excel.sheet.macroEnabled.12";
const APPLICATION_VND_MS_EXCEL_TEMPLATE_MACROENABLED_12 = "application/vnd.ms-excel.template.macroEnabled.12";
const APPLICATION_VND_MS_FONTOBJECT = "application/vnd.ms-fontobject";
const APPLICATION_VND_MS_HTMLHELP = "application/vnd.ms-htmlhelp";
const APPLICATION_VND_MS_IMS = "application/vnd.ms-ims";
const APPLICATION_VND_MS_LRM = "application/vnd.ms-lrm";
const APPLICATION_VND_MS_OFFICETHEME = "application/vnd.ms-officetheme";
const APPLICATION_VND_MS_OUTLOOK = "application/vnd.ms-outlook";
const APPLICATION_VND_MS_PKI_SECCAT = "application/vnd.ms-pki.seccat";
const APPLICATION_VND_MS_POWERPOINT = "application/vnd.ms-powerpoint";
const APPLICATION_VND_MS_POWERPOINT_ADDIN_MACROENABLED_12 = "application/vnd.ms-powerpoint.addin.macroEnabled.12";
const APPLICATION_VND_MS_POWERPOINT_PRESENTATION_MACROENABLED_12 = "application/vnd.ms-powerpoint.presentation.macroEnabled.12";
const APPLICATION_VND_MS_POWERPOINT_SLIDE_MACROENABLED_12 = "application/vnd.ms-powerpoint.slide.macroenabled.12";
const APPLICATION_VND_MS_POWERPOINT_SLIDESHOW_MACROENABLED_12 = "application/vnd.ms-powerpoint.slideshow.macroEnabled.12";
const APPLICATION_VND_MS_PROJECT = "application/vnd.ms-project";
const APPLICATION_VND_MS_WORD_TEMPLATE_MACROENABLED_12 = "application/vnd.ms-word.template.macroEnabled.12";
const APPLICATION_VND_MS_WORKS = "application/vnd.ms-works";
const APPLICATION_VND_MS_WPL = "application/vnd.ms-wpl";
const APPLICATION_VND_MS_XPSDOCUMENT = "application/vnd.ms-xpsdocument";
const APPLICATION_VND_MSEQ = "application/vnd.mseq";
const APPLICATION_VND_MUSICIAN = "application/vnd.musician";
const APPLICATION_VND_MUVEE_STYLE = "application/vnd.muvee.style";
const APPLICATION_VND_MYNFC = "application/vnd.mynfc";
const APPLICATION_VND_NEUROLANGUAGE_NLU = "application/vnd.neurolanguage.nlu";
const APPLICATION_VND_NITF = "application/vnd.nitf";
const APPLICATION_VND_NOBLENET_DIRECTORY = "application/vnd.noblenet-directory";
const APPLICATION_VND_NOBLENET_SEALER = "application/vnd.noblenet-sealer";
const APPLICATION_VND_NOBLENET_WEB = "application/vnd.noblenet-web";
const APPLICATION_VND_NOKIA_N_GAGE_AC_XML = "application/vnd.nokia.n-gage.ac+xml";
const APPLICATION_VND_NOKIA_N_GAGE_DATA = "application/vnd.nokia.n-gage.data";
const APPLICATION_VND_NOKIA_N_GAGE_SYMBIAN_INSTALL = "application/vnd.nokia.n-gage.symbian.install";
const APPLICATION_VND_NOKIA_RADIO_PRESET = "application/vnd.nokia.radio-preset";
const APPLICATION_VND_NOKIA_RADIO_PRESETS = "application/vnd.nokia.radio-presets";
const APPLICATION_VND_NOVADIGM_EDM = "application/vnd.novadigm.edm";
const APPLICATION_VND_NOVADIGM_EDX = "application/vnd.novadigm.edx";
const APPLICATION_VND_NOVADIGM_EXT = "application/vnd.novadigm.ext";
const APPLICATION_VND_OASIS_OPENDOCUMENT_CHART = "application/vnd.oasis.opendocument.chart";
const APPLICATION_VND_OASIS_OPENDOCUMENT_CHART_TEMPLATE = "application/vnd.oasis.opendocument.chart-template";
const APPLICATION_VND_OASIS_OPENDOCUMENT_DATABASE = "application/vnd.oasis.opendocument.database";
const APPLICATION_VND_OASIS_OPENDOCUMENT_FORMULA = "application/vnd.oasis.opendocument.formula";
const APPLICATION_VND_OASIS_OPENDOCUMENT_FORMULA_TEMPLATE = "application/vnd.oasis.opendocument.formula-template";
const APPLICATION_VND_OASIS_OPENDOCUMENT_GRAPHICS = "application/vnd.oasis.opendocument.graphics";
const APPLICATION_VND_OASIS_OPENDOCUMENT_GRAPHICS_TEMPLATE = "application/vnd.oasis.opendocument.graphics-template";
const APPLICATION_VND_OASIS_OPENDOCUMENT_IMAGE = "application/vnd.oasis.opendocument.image";
const APPLICATION_VND_OASIS_OPENDOCUMENT_IMAGE_TEMPLATE = "application/vnd.oasis.opendocument.image-template";
const APPLICATION_VND_OASIS_OPENDOCUMENT_PRESENTATION = "application/vnd.oasis.opendocument.presentation";
const APPLICATION_VND_OASIS_OPENDOCUMENT_PRESENTATION_TEMPLATE = "application/vnd.oasis.opendocument.presentation-template";
const APPLICATION_VND_OASIS_OPENDOCUMENT_SPREADSHEET = "application/vnd.oasis.opendocument.spreadsheet";
const APPLICATION_VND_OASIS_OPENDOCUMENT_SPREADSHEET_TEMPLATE = "application/vnd.oasis.opendocument.spreadsheet-template";
const APPLICATION_VND_OASIS_OPENDOCUMENT_TEXT = "application/vnd.oasis.opendocument.text";
const APPLICATION_VND_OASIS_OPENDOCUMENT_TEXT_MASTER = "application/vnd.oasis.opendocument.text-master";
const APPLICATION_VND_OASIS_OPENDOCUMENT_TEXT_TEMPLATE = "application/vnd.oasis.opendocument.text-template";
const APPLICATION_VND_OASIS_OPENDOCUMENT_TEXT_WEB = "application/vnd.oasis.opendocument.text-web";
const APPLICATION_VND_OLPC_SUGAR = "application/vnd.olpc-sugar";
const APPLICATION_VND_OMA_DD2_XML = "application/vnd.oma.dd2+xml";
const APPLICATION_VND_OPENBLOX_GAME_XML = "application/vnd.openblox.game+xml";
const APPLICATION_VND_OPENOFFICEORG_EXTENSION = "application/vnd.openofficeorg.extension";
const APPLICATION_VND_OPENSTREETMAP_DATA_XML = "application/vnd.openstreetmap.data+xml";
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_PRESENTATIONML_PRESENTATION = "application/vnd.openxmlformats-officedocument.presentationml.presentation";
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_PRESENTATIONML_SLIDE = "application/vnd.openxmlformats-officedocument.presentationml.slide";
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_PRESENTATIONML_SLIDESHOW = "application/vnd.openxmlformats-officedocument.presentationml.slideshow";
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_PRESENTATIONML_TEMPLATE = "application/vnd.openxmlformats-officedocument.presentationml.template";
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_SPREADSHEETML_SHEET = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_SPREADSHEETML_TEMPLATE = "application/vnd.openxmlformats-officedocument.spreadsheetml.template";
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_WORDPROCESSINGML_DOCUMENT = "application/vnd.openxmlformats-officedocument.wordprocessingml.document";
const APPLICATION_VND_OPENXMLFORMATS_OFFICEDOCUMENT_WORDPROCESSINGML_TEMPLATE = "application/vnd.openxmlformats-officedocument.wordprocessingml.template";
const APPLICATION_VND_OSGEO_MAPGUIDE_PACKAGE = "application/vnd.osgeo.mapguide.package";
const APPLICATION_VND_OSGI_DP = "application/vnd.osgi.dp";
const APPLICATION_VND_OSGI_SUBSYSTEM = "application/vnd.osgi.subsystem";
const APPLICATION_VND_PALM = "application/vnd.palm";
const APPLICATION_VND_PAWAAFILE = "application/vnd.pawaafile";
const APPLICATION_VND_PG_FORMAT = "application/vnd.pg.format";
const APPLICATION_VND_PG_OSASLI = "application/vnd.pg.osasli";
const APPLICATION_VND_PICSEL = "application/vnd.picsel";
const APPLICATION_VND_PMI_WIDGET = "application/vnd.pmi.widget";
const APPLICATION_VND_POCKETLEARN = "application/vnd.pocketlearn";
const APPLICATION_VND_POWERBUILDER6 = "application/vnd.powerbuilder6";
const APPLICATION_VND_PREVIEWSYSTEMS_BOX = "application/vnd.previewsystems.box";
const APPLICATION_VND_PROTEUS_MAGAZINE = "application/vnd.proteus.magazine";
const APPLICATION_VND_PUBLISHARE_DELTA_TREE = "application/vnd.publishare-delta-tree";
const APPLICATION_VND_PVI_PTID1 = "application/vnd.pvi.ptid1";
const APPLICATION_VND_PWG_XHTML_PRINT_XML = "application/vnd.pwg-xhtml-print+xml";
const APPLICATION_VND_QUARK_QUARKXPRESS = "application/vnd.quark.quarkxpress";
const APPLICATION_VND_REALVNC_BED = "application/vnd.realvnc.bed";
const APPLICATION_VND_RECORDARE_MUSICXML = "application/vnd.recordare.musicxml";
const APPLICATION_VND_RECORDARE_MUSICXML_XML = "application/vnd.recordare.musicxml+xml";
const APPLICATION_VND_RIG_CRYPTONOTE = "application/vnd.rig.cryptonote";
const APPLICATION_VND_RIM_COD = "application/vnd.rim.cod";
const APPLICATION_VND_RN_REALMEDIA_VBR = "application/vnd.rn-realmedia-vbr";
const APPLICATION_VND_ROUTE66_LINK66_XML = "application/vnd.route66.link66+xml";
const APPLICATION_VND_SAILINGTRACKER_TRACK = "application/vnd.sailingtracker.track";
const APPLICATION_VND_SEEMAIL = "application/vnd.seemail";
const APPLICATION_VND_SEMA = "application/vnd.sema";
const APPLICATION_VND_SEMD = "application/vnd.semd";
const APPLICATION_VND_SEMF = "application/vnd.semf";
const APPLICATION_VND_SHANA_INFORMED_FORMDATA = "application/vnd.shana.informed.formdata";
const APPLICATION_VND_SHANA_INFORMED_FORMTEMPLATE = "application/vnd.shana.informed.formtemplate";
const APPLICATION_VND_SHANA_INFORMED_INTERCHANGE = "application/vnd.shana.informed.interchange";
const APPLICATION_VND_SHANA_INFORMED_PACKAGE = "application/vnd.shana.informed.package";
const APPLICATION_VND_SIMTECH_MINDMAPPER = "application/vnd.simtech-mindmapper";
const APPLICATION_VND_SMAF = "application/vnd.smaf";
const APPLICATION_VND_SMART_TEACHER = "application/vnd.smart.teacher";
const APPLICATION_VND_SOFTWARE602_FILLER_FORM_XML = "application/vnd.software602.filler.form+xml";
const APPLICATION_VND_SOLENT_SDKM_XML = "application/vnd.solent.sdkm+xml";
const APPLICATION_VND_SPOTFIRE_DXP = "application/vnd.spotfire.dxp";
const APPLICATION_VND_SPOTFIRE_SFS = "application/vnd.spotfire.sfs";
const APPLICATION_VND_STARDIVISION_CALC = "application/vnd.stardivision.calc";
const APPLICATION_VND_STARDIVISION_DRAW = "application/vnd.stardivision.draw";
const APPLICATION_VND_STARDIVISION_IMPRESS = "application/vnd.stardivision.impress";
const APPLICATION_VND_STARDIVISION_MATH = "application/vnd.stardivision.math";
const APPLICATION_VND_STARDIVISION_WRITER = "application/vnd.stardivision.writer";
const APPLICATION_VND_STARDIVISION_WRITER_GLOBAL = "application/vnd.stardivision.writer-global";
const APPLICATION_VND_STEPMANIA_PACKAGE = "application/vnd.stepmania.package";
const APPLICATION_VND_STEPMANIA_STEPCHART = "application/vnd.stepmania.stepchart";
const APPLICATION_VND_SUN_WADL_XML = "application/vnd.sun.wadl+xml";
const APPLICATION_VND_SUN_XML_CALC = "application/vnd.sun.xml.calc";
const APPLICATION_VND_SUN_XML_CALC_TEMPLATE = "application/vnd.sun.xml.calc.template";
const APPLICATION_VND_SUN_XML_DRAW = "application/vnd.sun.xml.draw";
const APPLICATION_VND_SUN_XML_DRAW_TEMPLATE = "application/vnd.sun.xml.draw.template";
const APPLICATION_VND_SUN_XML_IMPRESS = "application/vnd.sun.xml.impress";
const APPLICATION_VND_SUN_XML_IMPRESS_TEMPLATE = "application/vnd.sun.xml.impress.template";
const APPLICATION_VND_SUN_XML_MATH = "application/vnd.sun.xml.math";
const APPLICATION_VND_SUN_XML_WRITER = "application/vnd.sun.xml.writer";
const APPLICATION_VND_SUN_XML_WRITER_GLOBAL = "application/vnd.sun.xml.writer.global";
const APPLICATION_VND_SUN_XML_WRITER_TEMPLATE = "application/vnd.sun.xml.writer.template";
const APPLICATION_VND_SUS_CALENDAR = "application/vnd.sus-calendar";
const APPLICATION_VND_SVD = "application/vnd.svd";
const APPLICATION_VND_SYMBIAN_INSTALL = "application/vnd.symbian.install";
const APPLICATION_VND_SYNCML_XML = "application/vnd.syncml+xml";
const APPLICATION_VND_SYNCML_DM_WBXML = "application/vnd.syncml.dm+wbxml";
const APPLICATION_VND_SYNCML_DM_XML = "application/vnd.syncml.dm+xml";
const APPLICATION_VND_SYNCML_DMDDF_XML = "application/vnd.syncml.dmddf+xml";
const APPLICATION_VND_TAO_INTENT_MODULE_ARCHIVE = "application/vnd.tao.intent-module-archive";
const APPLICATION_VND_TCPDUMP_PCAP = "application/vnd.tcpdump.pcap";
const APPLICATION_VND_TMOBILE_LIVETV = "application/vnd.tmobile-livetv";
const APPLICATION_VND_TRID_TPT = "application/vnd.trid.tpt";
const APPLICATION_VND_TRISCAPE_MXS = "application/vnd.triscape.mxs";
const APPLICATION_VND_TRUEAPP = "application/vnd.trueapp";
const APPLICATION_VND_UFDL = "application/vnd.ufdl";
const APPLICATION_VND_UIQ_THEME = "application/vnd.uiq.theme";
const APPLICATION_VND_UMAJIN = "application/vnd.umajin";
const APPLICATION_VND_UNITY = "application/vnd.unity";
const APPLICATION_VND_UOML_XML = "application/vnd.uoml+xml";
const APPLICATION_VND_VCX = "application/vnd.vcx";
const APPLICATION_VND_VISIO = "application/vnd.visio";
const APPLICATION_VND_VISIONARY = "application/vnd.visionary";
const APPLICATION_VND_VSF = "application/vnd.vsf";
const APPLICATION_VND_WAP_WMLSCRIPTC = "application/vnd.wap.wmlscriptc";
const APPLICATION_VND_WEBTURBO = "application/vnd.webturbo";
const APPLICATION_VND_WOLFRAM_PLAYER = "application/vnd.wolfram.player";
const APPLICATION_VND_WORDPERFECT = "application/vnd.wordperfect";
const APPLICATION_VND_WQD = "application/vnd.wqd";
const APPLICATION_VND_WT_STF = "application/vnd.wt.stf";
const APPLICATION_VND_XARA = "application/vnd.xara";
const APPLICATION_VND_XFDL = "application/vnd.xfdl";
const APPLICATION_VND_YAMAHA_HV_DIC = "application/vnd.yamaha.hv-dic";
const APPLICATION_VND_YAMAHA_HV_SCRIPT = "application/vnd.yamaha.hv-script";
const APPLICATION_VND_YAMAHA_HV_VOICE = "application/vnd.yamaha.hv-voice";
const APPLICATION_VND_YAMAHA_OPENSCOREFORMAT = "application/vnd.yamaha.openscoreformat";
const APPLICATION_VND_YAMAHA_OPENSCOREFORMAT_OSFPVG_XML = "application/vnd.yamaha.openscoreformat.osfpvg+xml";
const APPLICATION_VND_YAMAHA_SMAF_AUDIO = "application/vnd.yamaha.smaf-audio";
const APPLICATION_VND_YAMAHA_SMAF_PHRASE = "application/vnd.yamaha.smaf-phrase";
const APPLICATION_VND_YELLOWRIVER_CUSTOM_MENU = "application/vnd.yellowriver-custom-menu";
const APPLICATION_VND_ZUL = "application/vnd.zul";
const APPLICATION_VND_ZZAZZ_DECK_XML = "application/vnd.zzazz.deck+xml";
const APPLICATION_VOICEXML_XML = "application/voicexml+xml";
const APPLICATION_WASM = "application/wasm";
const APPLICATION_WATCHERINFO_XML = "application/watcherinfo+xml";
const APPLICATION_WBXML = "application/wbxml";
const APPLICATION_WIDGET = "application/widget";
const APPLICATION_WINHLP = "application/winhlp";
const APPLICATION_WMLC = "application/wmlc";
const APPLICATION_WSDL_XML = "application/wsdl+xml";
const APPLICATION_WSPOLICY_XML = "application/wspolicy+xml";
const APPLICATION_X_7Z_COMPRESSED = "application/x-7z-compressed";
const APPLICATION_X_ABIWORD = "application/x-abiword";
const APPLICATION_X_ACE_COMPRESSED = "application/x-ace-compressed";
const APPLICATION_X_APPLE_DISKIMAGE = "application/x-apple-diskimage";
const APPLICATION_X_ARJ = "application/x-arj";
const APPLICATION_X_AUTHORWARE_BIN = "application/x-authorware-bin";
const APPLICATION_X_AUTHORWARE_MAP = "application/x-authorware-map";
const APPLICATION_X_AUTHORWARE_SEG = "application/x-authorware-seg";
const APPLICATION_X_BCPIO = "application/x-bcpio";
const APPLICATION_X_BDOC = "application/x-bdoc";
const APPLICATION_X_BITTORRENT = "application/x-bittorrent";
const APPLICATION_X_BLORB = "application/x-blorb";
const APPLICATION_X_BZIP = "application/x-bzip";
const APPLICATION_X_BZIP2 = "application/x-bzip2";
const APPLICATION_X_CBR = "application/x-cbr";
const APPLICATION_X_CDLINK = "application/x-cdlink";
const APPLICATION_X_CFS_COMPRESSED = "application/x-cfs-compressed";
const APPLICATION_X_CHAT = "application/x-chat";
const APPLICATION_X_CHESS_PGN = "application/x-chess-pgn";
const APPLICATION_X_CHROME_EXTENSION = "application/x-chrome-extension";
const APPLICATION_X_COCOA = "application/x-cocoa";
const APPLICATION_X_COMPRESS = "application/x-compress";
const APPLICATION_X_CONFERENCE = "application/x-conference";
const APPLICATION_X_CPIO = "application/x-cpio";
const APPLICATION_X_CSH = "application/x-csh";
const APPLICATION_X_DEBIAN_PACKAGE = "application/x-debian-package";
const APPLICATION_X_DGC_COMPRESSED = "application/x-dgc-compressed";
const APPLICATION_X_DIRECTOR = "application/x-director";
const APPLICATION_X_DOOM = "application/x-doom";
const APPLICATION_X_DTBNCX_XML = "application/x-dtbncx+xml";
const APPLICATION_X_DTBOOK_XML = "application/x-dtbook+xml";
const APPLICATION_X_DTBRESOURCE_XML = "application/x-dtbresource+xml";
const APPLICATION_X_DVI = "application/x-dvi";
const APPLICATION_X_ENVOY = "application/x-envoy";
const APPLICATION_X_EVA = "application/x-eva";
const APPLICATION_X_FONT_BDF = "application/x-font-bdf";
const APPLICATION_X_FONT_GHOSTSCRIPT = "application/x-font-ghostscript";
const APPLICATION_X_FONT_LINUX_PSF = "application/x-font-linux-psf";
const APPLICATION_X_FONT_PCF = "application/x-font-pcf";
const APPLICATION_X_FONT_SNF = "application/x-font-snf";
const APPLICATION_X_FONT_TYPE1 = "application/x-font-type1";
const APPLICATION_X_FREEARC = "application/x-freearc";
const APPLICATION_X_FUTURESPLASH = "application/x-futuresplash";
const APPLICATION_X_GCA_COMPRESSED = "application/x-gca-compressed";
const APPLICATION_X_GLULX = "application/x-glulx";
const APPLICATION_X_GNUMERIC = "application/x-gnumeric";
const APPLICATION_X_GRAMPS_XML = "application/x-gramps-xml";
const APPLICATION_X_GTAR = "application/x-gtar";
const APPLICATION_X_HDF = "application/x-hdf";
const APPLICATION_X_HTTPD_PHP = "application/x-httpd-php";
const APPLICATION_X_HTTPD_PHP_SOURCE = "application/x-httpd-php-source";
const APPLICATION_X_INSTALL_INSTRUCTIONS = "application/x-install-instructions";
const APPLICATION_X_ISO9660_IMAGE = "application/x-iso9660-image";
const APPLICATION_X_IWORK_KEYNOTE_SFFKEY = "application/x-iwork-keynote-sffkey";
const APPLICATION_X_IWORK_NUMBERS_SFFNUMBERS = "application/x-iwork-numbers-sffnumbers";
const APPLICATION_X_IWORK_PAGES_SFFPAGES = "application/x-iwork-pages-sffpages";
const APPLICATION_X_JAVA_ARCHIVE_DIFF = "application/x-java-archive-diff";
const APPLICATION_X_JAVA_JNLP_FILE = "application/x-java-jnlp-file";
const APPLICATION_X_KEEPASS2 = "application/x-keepass2";
const APPLICATION_X_LATEX = "application/x-latex";
const APPLICATION_X_LUA_BYTECODE = "application/x-lua-bytecode";
const APPLICATION_X_MAKESELF = "application/x-makeself";
const APPLICATION_X_MIE = "application/x-mie";
const APPLICATION_X_MOBIPOCKET_EBOOK = "application/x-mobipocket-ebook";
const APPLICATION_X_MS_APPLICATION = "application/x-ms-application";
const APPLICATION_X_MS_SHORTCUT = "application/x-ms-shortcut";
const APPLICATION_X_MS_WMD = "application/x-ms-wmd";
const APPLICATION_X_MS_XBAP = "application/x-ms-xbap";
const APPLICATION_X_MSACCESS = "application/x-msaccess";
const APPLICATION_X_MSBINDER = "application/x-msbinder";
const APPLICATION_X_MSCARDFILE = "application/x-mscardfile";
const APPLICATION_X_MSCLIP = "application/x-msclip";
const APPLICATION_X_MSDOWNLOAD = "application/x-msdownload";
const APPLICATION_X_MSMEDIAVIEW = "application/x-msmediaview";
const APPLICATION_X_MSMETAFILE = "application/x-msmetafile";
const APPLICATION_X_MSMONEY = "application/x-msmoney";
const APPLICATION_X_MSPUBLISHER = "application/x-mspublisher";
const APPLICATION_X_MSSCHEDULE = "application/x-msschedule";
const APPLICATION_X_MSTERMINAL = "application/x-msterminal";
const APPLICATION_X_MSWRITE = "application/x-mswrite";
const APPLICATION_X_NDJSON = "application/x-ndjson";
const APPLICATION_X_NETCDF = "application/x-netcdf";
const APPLICATION_X_NS_PROXY_AUTOCONFIG = "application/x-ns-proxy-autoconfig";
const APPLICATION_X_NZB = "application/x-nzb";
const APPLICATION_X_PERL = "application/x-perl";
const APPLICATION_X_PHOTOSHOP = "application/x-photoshop";
const APPLICATION_X_PILOT = "application/x-pilot";
const APPLICATION_X_PKCS10 = "application/x-pkcs10";
const APPLICATION_X_PKCS12 = "application/x-pkcs12";
const APPLICATION_X_PKCS7 = "application/x-pkcs7";
const APPLICATION_X_PKCS7_CERTIFICATES = "application/x-pkcs7-certificates";
const APPLICATION_X_PKCS7_CERTREQRESP = "application/x-pkcs7-certreqresp";
const APPLICATION_X_PKCS7_SIGNATURE = "application/x-pkcs7-signature";
const APPLICATION_X_RAR = "application/x-rar";
const APPLICATION_X_RESEARCH_INFO_SYSTEMS = "application/x-research-info-systems";
const APPLICATION_X_SH = "application/x-sh";
const APPLICATION_X_SHAR = "application/x-shar";
const APPLICATION_X_SHOCKWAVE_FLASH = "application/x-shockwave-flash";
const APPLICATION_X_SILVERLIGHT_APP = "application/x-silverlight-app";
const APPLICATION_X_SQL = "application/x-sql";
const APPLICATION_X_STUFFIT = "application/x-stuffit";
const APPLICATION_X_STUFFITX = "application/x-stuffitx";
const APPLICATION_X_SUBRIP = "application/x-subrip";
const APPLICATION_X_SV4CPIO = "application/x-sv4cpio";
const APPLICATION_X_SV4CRC = "application/x-sv4crc";
const APPLICATION_X_T3VM_IMAGE = "application/x-t3vm-image";
const APPLICATION_X_TADS = "application/x-tads";
const APPLICATION_X_TAR = "application/x-tar";
const APPLICATION_X_TCL = "application/x-tcl";
const APPLICATION_X_TEX = "application/x-tex";
const APPLICATION_X_TEX_TFM = "application/x-tex-tfm";
const APPLICATION_X_TEXINFO = "application/x-texinfo";
const APPLICATION_X_USTAR = "application/x-ustar";
const APPLICATION_X_VIRTUALBOX_HDD = "application/x-virtualbox-hdd";
const APPLICATION_X_VIRTUALBOX_OVA = "application/x-virtualbox-ova";
const APPLICATION_X_VIRTUALBOX_OVF = "application/x-virtualbox-ovf";
const APPLICATION_X_VIRTUALBOX_VBOX = "application/x-virtualbox-vbox";
const APPLICATION_X_VIRTUALBOX_VBOX_EXTPACK = "application/x-virtualbox-vbox-extpack";
const APPLICATION_X_VIRTUALBOX_VDI = "application/x-virtualbox-vdi";
const APPLICATION_X_VIRTUALBOX_VHD = "application/x-virtualbox-vhd";
const APPLICATION_X_VIRTUALBOX_VMDK = "application/x-virtualbox-vmdk";
const APPLICATION_X_WAIS_SOURCE = "application/x-wais-source";
const APPLICATION_X_WEB_APP_MANIFEST_JSON = "application/x-web-app-manifest+json";
const APPLICATION_X_X509_CA_CERT = "application/x-x509-ca-cert";
const APPLICATION_X_X509_USER_CERT = "application/x-x509-user-cert";
const APPLICATION_X_XFIG = "application/x-xfig";
const APPLICATION_X_XPINSTALL = "application/x-xpinstall";
const APPLICATION_X_XZ = "application/x-xz";
const APPLICATION_X_ZMACHINE = "application/x-zmachine";
const APPLICATION_XAML_XML = "application/xaml+xml";
const APPLICATION_XCAP_ATT_XML = "application/xcap-att+xml";
const APPLICATION_XCAP_CAPS_XML = "application/xcap-caps+xml";
const APPLICATION_XCAP_DIFF_XML = "application/xcap-diff+xml";
const APPLICATION_XCAP_EL_XML = "application/xcap-el+xml";
const APPLICATION_XCAP_NS_XML = "application/xcap-ns+xml";
const APPLICATION_XENC_XML = "application/xenc+xml";
const APPLICATION_XFDF = "application/xfdf";
const APPLICATION_XHTML_XML = "application/xhtml+xml";
const APPLICATION_XLIFF_XML = "application/xliff+xml";
const APPLICATION_XML = "application/xml";
const APPLICATION_XML_DTD = "application/xml-dtd";
const APPLICATION_XOP_XML = "application/xop+xml";
const APPLICATION_XPROC_XML = "application/xproc+xml";
const APPLICATION_XSLT_XML = "application/xslt+xml";
const APPLICATION_XSPF_XML = "application/xspf+xml";
const APPLICATION_XV_XML = "application/xv+xml";
const APPLICATION_YANG = "application/yang";
const APPLICATION_YIN_XML = "application/yin+xml";
const APPLICATION_ZIP = "application/zip";
const AUDIO_AAC = "audio/aac";
const AUDIO_AC3 = "audio/ac3";
const AUDIO_ACC = "audio/acc";
const AUDIO_ADPCM = "audio/adpcm";
const AUDIO_AMR = "audio/amr";
const AUDIO_BASIC = "audio/basic";
const AUDIO_MIDI = "audio/midi";
const AUDIO_MOBILE_XMF = "audio/mobile-xmf";
const AUDIO_MP4 = "audio/mp4";
const AUDIO_MPEG = "audio/mpeg";
const AUDIO_OGG = "audio/ogg";
const AUDIO_S3M = "audio/s3m";
const AUDIO_SILK = "audio/silk";
const AUDIO_VND_DECE_AUDIO = "audio/vnd.dece.audio";
const AUDIO_VND_DIGITAL_WINDS = "audio/vnd.digital-winds";
const AUDIO_VND_DRA = "audio/vnd.dra";
const AUDIO_VND_DTS = "audio/vnd.dts";
const AUDIO_VND_DTS_HD = "audio/vnd.dts.hd";
const AUDIO_VND_LUCENT_VOICE = "audio/vnd.lucent.voice";
const AUDIO_VND_MS_PLAYREADY_MEDIA_PYA = "audio/vnd.ms-playready.media.pya";
const AUDIO_VND_NUERA_ECELP4800 = "audio/vnd.nuera.ecelp4800";
const AUDIO_VND_NUERA_ECELP7470 = "audio/vnd.nuera.ecelp7470";
const AUDIO_VND_NUERA_ECELP9600 = "audio/vnd.nuera.ecelp9600";
const AUDIO_VND_RIP = "audio/vnd.rip";
const AUDIO_WEBM = "audio/webm";
const AUDIO_X_AIFF = "audio/x-aiff";
const AUDIO_X_AU = "audio/x-au";
const AUDIO_X_CAF = "audio/x-caf";
const AUDIO_X_FLAC = "audio/x-flac";
const AUDIO_X_M4A = "audio/x-m4a";
const AUDIO_X_MATROSKA = "audio/x-matroska";
const AUDIO_X_MS_WAX = "audio/x-ms-wax";
const AUDIO_X_MS_WMA = "audio/x-ms-wma";
const AUDIO_X_PN_REALAUDIO = "audio/x-pn-realaudio";
const AUDIO_X_PN_REALAUDIO_PLUGIN = "audio/x-pn-realaudio-plugin";
const AUDIO_X_REALAUDIO = "audio/x-realaudio";
const AUDIO_X_WAV = "audio/x-wav";
const AUDIO_XM = "audio/xm";
const CHEMICAL_X_CDX = "chemical/x-cdx";
const CHEMICAL_X_CIF = "chemical/x-cif";
const CHEMICAL_X_CMDF = "chemical/x-cmdf";
const CHEMICAL_X_CML = "chemical/x-cml";
const CHEMICAL_X_CSML = "chemical/x-csml";
const CHEMICAL_X_XYZ = "chemical/x-xyz";
const FONT_COLLECTION = "font/collection";
const FONT_OTF = "font/otf";
const FONT_TTF = "font/ttf";
const FONT_WOFF = "font/woff";
const FONT_WOFF2 = "font/woff2";
const IMAGE_ACES = "image/aces";
const IMAGE_APNG = "image/apng";
const IMAGE_AVCI = "image/avci";
const IMAGE_AVCS = "image/avcs";
const IMAGE_AVIF = "image/avif";
const IMAGE_BMP = "image/bmp";
const IMAGE_CGM = "image/cgm";
const IMAGE_DICOM_RLE = "image/dicom-rle";
const IMAGE_DPX = "image/dpx";
const IMAGE_EMF = "image/emf";
const IMAGE_FITS = "image/fits";
const IMAGE_G3FAX = "image/g3fax";
const IMAGE_GIF = "image/gif";
const IMAGE_HEIC = "image/heic";
const IMAGE_HEIC_SEQUENCE = "image/heic-sequence";
const IMAGE_HEIF = "image/heif";
const IMAGE_HEIF_SEQUENCE = "image/heif-sequence";
const IMAGE_HEJ2K = "image/hej2k";
const IMAGE_HSJ2 = "image/hsj2";
const IMAGE_IEF = "image/ief";
const IMAGE_JLS = "image/jls";
const IMAGE_JP2 = "image/jp2";
const IMAGE_JPEG = "image/jpeg";
const IMAGE_JPH = "image/jph";
const IMAGE_JPHC = "image/jphc";
const IMAGE_JPX = "image/jpx";
const IMAGE_JXR = "image/jxr";
const IMAGE_JXRA = "image/jxra";
const IMAGE_JXRS = "image/jxrs";
const IMAGE_JXS = "image/jxs";
const IMAGE_JXSC = "image/jxsc";
const IMAGE_JXSI = "image/jxsi";
const IMAGE_JXSS = "image/jxss";
const IMAGE_KTX = "image/ktx";
const IMAGE_KTX2 = "image/ktx2";
const IMAGE_PNG = "image/png";
const IMAGE_PRS_BTIF = "image/prs.btif";
const IMAGE_PRS_PTI = "image/prs.pti";
const IMAGE_SGI = "image/sgi";
const IMAGE_SVG_XML = "image/svg+xml";
const IMAGE_T38 = "image/t38";
const IMAGE_TIFF = "image/tiff";
const IMAGE_TIFF_FX = "image/tiff-fx";
const IMAGE_VND_AIRZIP_ACCELERATOR_AZV = "image/vnd.airzip.accelerator.azv";
const IMAGE_VND_DECE_GRAPHIC = "image/vnd.dece.graphic";
const IMAGE_VND_DJVU = "image/vnd.djvu";
const IMAGE_VND_DWG = "image/vnd.dwg";
const IMAGE_VND_DXF = "image/vnd.dxf";
const IMAGE_VND_FASTBIDSHEET = "image/vnd.fastbidsheet";
const IMAGE_VND_FPX = "image/vnd.fpx";
const IMAGE_VND_FST = "image/vnd.fst";
const IMAGE_VND_FUJIXEROX_EDMICS_MMR = "image/vnd.fujixerox.edmics-mmr";
const IMAGE_VND_FUJIXEROX_EDMICS_RLC = "image/vnd.fujixerox.edmics-rlc";
const IMAGE_VND_MS_DDS = "image/vnd.ms-dds";
const IMAGE_VND_MS_MODI = "image/vnd.ms-modi";
const IMAGE_VND_MS_PHOTO = "image/vnd.ms-photo";
const IMAGE_VND_NET_FPX = "image/vnd.net-fpx";
const IMAGE_VND_PCO_B16 = "image/vnd.pco.b16";
const IMAGE_VND_TENCENT_TAP = "image/vnd.tencent.tap";
const IMAGE_VND_VALVE_SOURCE_TEXTURE = "image/vnd.valve.source.texture";
const IMAGE_VND_WAP_WBMP = "image/vnd.wap.wbmp";
const IMAGE_VND_XIFF = "image/vnd.xiff";
const IMAGE_WEBP = "image/webp";
const IMAGE_WMF = "image/wmf";
const IMAGE_X_3DS = "image/x-3ds";
const IMAGE_X_CMU_RASTER = "image/x-cmu-raster";
const IMAGE_X_CMX = "image/x-cmx";
const IMAGE_X_FREEHAND = "image/x-freehand";
const IMAGE_X_ICON = "image/x-icon";
const IMAGE_X_JNG = "image/x-jng";
const IMAGE_X_MRSID_IMAGE = "image/x-mrsid-image";
const IMAGE_X_PCX = "image/x-pcx";
const IMAGE_X_PICT = "image/x-pict";
const IMAGE_X_PORTABLE_ANYMAP = "image/x-portable-anymap";
const IMAGE_X_PORTABLE_BITMAP = "image/x-portable-bitmap";
const IMAGE_X_PORTABLE_GRAYMAP = "image/x-portable-graymap";
const IMAGE_X_PORTABLE_PIXMAP = "image/x-portable-pixmap";
const IMAGE_X_RGB = "image/x-rgb";
const IMAGE_X_TGA = "image/x-tga";
const IMAGE_X_XBITMAP = "image/x-xbitmap";
const IMAGE_X_XPIXMAP = "image/x-xpixmap";
const IMAGE_X_XWINDOWDUMP = "image/x-xwindowdump";
const MESSAGE_DISPOSITION_NOTIFICATION = "message/disposition-notification";
const MESSAGE_GLOBAL = "message/global";
const MESSAGE_GLOBAL_DELIVERY_STATUS = "message/global-delivery-status";
const MESSAGE_GLOBAL_DISPOSITION_NOTIFICATION = "message/global-disposition-notification";
const MESSAGE_GLOBAL_HEADERS = "message/global-headers";
const MESSAGE_RFC822 = "message/rfc822";
const MESSAGE_VND_WFA_WSC = "message/vnd.wfa.wsc";
const MODEL_3MF = "model/3mf";
const MODEL_GLTF_JSON = "model/gltf+json";
const MODEL_GLTF_BINARY = "model/gltf-binary";
const MODEL_IGES = "model/iges";
const MODEL_JT = "model/jt";
const MODEL_MESH = "model/mesh";
const MODEL_MTL = "model/mtl";
const MODEL_OBJ = "model/obj";
const MODEL_PRC = "model/prc";
const MODEL_STEP_XML = "model/step+xml";
const MODEL_STEP_ZIP = "model/step+zip";
const MODEL_STEP_XML_ZIP = "model/step-xml+zip";
const MODEL_STL = "model/stl";
const MODEL_U3D = "model/u3d";
const MODEL_VND_CLD = "model/vnd.cld";
const MODEL_VND_COLLADA_XML = "model/vnd.collada+xml";
const MODEL_VND_DWF = "model/vnd.dwf";
const MODEL_VND_GDL = "model/vnd.gdl";
const MODEL_VND_GTW = "model/vnd.gtw";
const MODEL_VND_MTS = "model/vnd.mts";
const MODEL_VND_OPENGEX = "model/vnd.opengex";
const MODEL_VND_PARASOLID_TRANSMIT_BINARY = "model/vnd.parasolid.transmit.binary";
const MODEL_VND_PARASOLID_TRANSMIT_TEXT = "model/vnd.parasolid.transmit.text";
const MODEL_VND_PYTHA_PYOX = "model/vnd.pytha.pyox";
const MODEL_VND_SAP_VDS = "model/vnd.sap.vds";
const MODEL_VND_USDA = "model/vnd.usda";
const MODEL_VND_USDZ_ZIP = "model/vnd.usdz+zip";
const MODEL_VND_VALVE_SOURCE_COMPILED_MAP = "model/vnd.valve.source.compiled-map";
const MODEL_VND_VTU = "model/vnd.vtu";
const MODEL_VRML = "model/vrml";
const MODEL_X3D_BINARY = "model/x3d+binary";
const MODEL_X3D_FASTINFOSET = "model/x3d+fastinfoset";
const MODEL_X3D_VRML = "model/x3d+vrml";
const MODEL_X3D_XML = "model/x3d+xml";
const TEXT_CACHE_MANIFEST = "text/cache-manifest";
const TEXT_CALENDAR = "text/calendar";
const TEXT_COFFEESCRIPT = "text/coffeescript";
const TEXT_CSS = "text/css";
const TEXT_CSV = "text/csv";
const TEXT_HTML = "text/html";
const TEXT_JADE = "text/jade";
const TEXT_JAVASCRIPT = "text/javascript";
const TEXT_JSX = "text/jsx";
const TEXT_LESS = "text/less";
const TEXT_MARKDOWN = "text/markdown";
const TEXT_MATHML = "text/mathml";
const TEXT_MDX = "text/mdx";
const TEXT_N3 = "text/n3";
const TEXT_PLAIN = "text/plain";
const TEXT_PRS_LINES_TAG = "text/prs.lines.tag";
const TEXT_RICHTEXT = "text/richtext";
const TEXT_RTF = "text/rtf";
const TEXT_SGML = "text/sgml";
const TEXT_SHEX = "text/shex";
const TEXT_SLIM = "text/slim";
const TEXT_SPDX = "text/spdx";
const TEXT_STYLUS = "text/stylus";
const TEXT_TAB_SEPARATED_VALUES = "text/tab-separated-values";
const TEXT_TROFF = "text/troff";
const TEXT_TURTLE = "text/turtle";
const TEXT_URI_LIST = "text/uri-list";
const TEXT_VCARD = "text/vcard";
const TEXT_VND_CURL = "text/vnd.curl";
const TEXT_VND_CURL_DCURL = "text/vnd.curl.dcurl";
const TEXT_VND_CURL_MCURL = "text/vnd.curl.mcurl";
const TEXT_VND_CURL_SCURL = "text/vnd.curl.scurl";
const TEXT_VND_DVB_SUBTITLE = "text/vnd.dvb.subtitle";
const TEXT_VND_FAMILYSEARCH_GEDCOM = "text/vnd.familysearch.gedcom";
const TEXT_VND_FLY = "text/vnd.fly";
const TEXT_VND_FMI_FLEXSTOR = "text/vnd.fmi.flexstor";
const TEXT_VND_GRAPHVIZ = "text/vnd.graphviz";
const TEXT_VND_IN3D_3DML = "text/vnd.in3d.3dml";
const TEXT_VND_IN3D_SPOT = "text/vnd.in3d.spot";
const TEXT_VND_SUN_J2ME_APP_DESCRIPTOR = "text/vnd.sun.j2me.app-descriptor";
const TEXT_VND_WAP_WML = "text/vnd.wap.wml";
const TEXT_VND_WAP_WMLSCRIPT = "text/vnd.wap.wmlscript";
const TEXT_VTT = "text/vtt";
const TEXT_WGSL = "text/wgsl";
const TEXT_X_ASM = "text/x-asm";
const TEXT_X_C = "text/x-c";
const TEXT_X_COMPONENT = "text/x-component";
const TEXT_X_FORTRAN = "text/x-fortran";
const TEXT_X_HANDLEBARS_TEMPLATE = "text/x-handlebars-template";
const TEXT_X_JAVA_SOURCE = "text/x-java-source";
const TEXT_X_LUA = "text/x-lua";
const TEXT_X_MARKDOWN = "text/x-markdown";
const TEXT_X_NFO = "text/x-nfo";
const TEXT_X_OPML = "text/x-opml";
const TEXT_X_ORG = "text/x-org";
const TEXT_X_PASCAL = "text/x-pascal";
const TEXT_X_PROCESSING = "text/x-processing";
const TEXT_X_SASS = "text/x-sass";
const TEXT_X_SCRIPTZSH = "text/x-scriptzsh";
const TEXT_X_SCSS = "text/x-scss";
const TEXT_X_SETEXT = "text/x-setext";
const TEXT_X_SFV = "text/x-sfv";
const TEXT_X_SUSE_YMP = "text/x-suse-ymp";
const TEXT_X_UUENCODE = "text/x-uuencode";
const TEXT_X_VCALENDAR = "text/x-vcalendar";
const TEXT_X_VCARD = "text/x-vcard";
const TEXT_YAML = "text/yaml";
const VIDEO_3GP = "video/3gp";
const VIDEO_3GPP = "video/3gpp";
const VIDEO_3GPP2 = "video/3gpp2";
const VIDEO_H261 = "video/h261";
const VIDEO_H263 = "video/h263";
const VIDEO_H264 = "video/h264";
const VIDEO_ISO_SEGMENT = "video/iso.segment";
const VIDEO_JPEG = "video/jpeg";
const VIDEO_JPM = "video/jpm";
const VIDEO_MJ2 = "video/mj2";
const VIDEO_MP2T = "video/mp2t";
const VIDEO_MP4 = "video/mp4";
const VIDEO_MPEG = "video/mpeg";
const VIDEO_OGG = "video/ogg";
const VIDEO_QUICKTIME = "video/quicktime";
const VIDEO_VND_DECE_HD = "video/vnd.dece.hd";
const VIDEO_VND_DECE_MOBILE = "video/vnd.dece.mobile";
const VIDEO_VND_DECE_PD = "video/vnd.dece.pd";
const VIDEO_VND_DECE_SD = "video/vnd.dece.sd";
const VIDEO_VND_DECE_VIDEO = "video/vnd.dece.video";
const VIDEO_VND_DVB_FILE = "video/vnd.dvb.file";
const VIDEO_VND_FVT = "video/vnd.fvt";
const VIDEO_VND_MPEGURL = "video/vnd.mpegurl";
const VIDEO_VND_MS_PLAYREADY_MEDIA_PYV = "video/vnd.ms-playready.media.pyv";
const VIDEO_VND_RN_REALVIDEO = "video/vnd.rn-realvideo";
const VIDEO_VND_UVVU_MP4 = "video/vnd.uvvu.mp4";
const VIDEO_VND_VIVO = "video/vnd.vivo";
const VIDEO_WEBM = "video/webm";
const VIDEO_X_FLI = "video/x-fli";
const VIDEO_X_FLV = "video/x-flv";
const VIDEO_X_M4V = "video/x-m4v";
const VIDEO_X_MATROSKA = "video/x-matroska";
const VIDEO_X_MNG = "video/x-mng";
const VIDEO_X_MS_ASF = "video/x-ms-asf";
const VIDEO_X_MS_VOB = "video/x-ms-vob";
const VIDEO_X_MS_WM = "video/x-ms-wm";
const VIDEO_X_MS_WMV = "video/x-ms-wmv";
const VIDEO_X_MS_WMX = "video/x-ms-wmx";
const VIDEO_X_MS_WVX = "video/x-ms-wvx";
const VIDEO_X_MSVIDEO = "video/x-msvideo";
const VIDEO_X_SGI_MOVIE = "video/x-sgi-movie";
const VIDEO_X_SMV = "video/x-smv";
const X_CONFERENCE_X_COOLTALK = "x-conference/x-cooltalk";

MagicObject\Constants\PicoMimeMap

Declaration

@@ -5542,7 +5542,7 @@

Description

It can be used to determine the appropriate content type for files based on their extensions.

Constants

-
const MIME_TYPES_FOR_EXTENSIONS = array (\n '1km' => 'application/vnd.1000minds.decision-model+xml',\n '3dml' => 'text/vnd.in3d.3dml',\n '3ds' => 'image/x-3ds',\n '3g2' => 'video/3gpp2',\n '3gp' => 'video/3gp',\n '3gpp' => 'video/3gpp',\n '3mf' => 'model/3mf',\n '7z' => 'application/x-7z-compressed',\n '7zip' => 'application/x-7z-compressed',\n 123 => 'application/vnd.lotus-1-2-3',\n 'aab' => 'application/x-authorware-bin',\n 'aac' => 'audio/acc',\n 'aam' => 'application/x-authorware-map',\n 'aas' => 'application/x-authorware-seg',\n 'abw' => 'application/x-abiword',\n 'ac' => 'application/vnd.nokia.n-gage.ac+xml',\n 'ac3' => 'audio/ac3',\n 'acc' => 'application/vnd.americandynamics.acc',\n 'ace' => 'application/x-ace-compressed',\n 'acu' => 'application/vnd.acucobol',\n 'acutc' => 'application/vnd.acucorp',\n 'adp' => 'audio/adpcm',\n 'adts' => 'audio/aac',\n 'aep' => 'application/vnd.audiograph',\n 'afm' => 'application/x-font-type1',\n 'afp' => 'application/vnd.ibm.modcap',\n 'age' => 'application/vnd.age',\n 'ahead' => 'application/vnd.ahead.space',\n 'ai' => 'application/pdf',\n 'aif' => 'audio/x-aiff',\n 'aifc' => 'audio/x-aiff',\n 'aiff' => 'audio/x-aiff',\n 'air' => 'application/vnd.adobe.air-application-installer-package+zip',\n 'ait' => 'application/vnd.dvb.ait',\n 'ami' => 'application/vnd.amiga.ami',\n 'aml' => 'application/automationml-aml+xml',\n 'amlx' => 'application/automationml-amlx+zip',\n 'amr' => 'audio/amr',\n 'apk' => 'application/vnd.android.package-archive',\n 'apng' => 'image/apng',\n 'appcache' => 'text/cache-manifest',\n 'appinstaller' => 'application/appinstaller',\n 'application' => 'application/x-ms-application',\n 'appx' => 'application/appx',\n 'appxbundle' => 'application/appxbundle',\n 'apr' => 'application/vnd.lotus-approach',\n 'arc' => 'application/x-freearc',\n 'arj' => 'application/x-arj',\n 'asc' => 'application/pgp-signature',\n 'asf' => 'video/x-ms-asf',\n 'asm' => 'text/x-asm',\n 'aso' => 'application/vnd.accpac.simply.aso',\n 'asx' => 'video/x-ms-asf',\n 'atc' => 'application/vnd.acucorp',\n 'atom' => 'application/atom+xml',\n 'atomcat' => 'application/atomcat+xml',\n 'atomdeleted' => 'application/atomdeleted+xml',\n 'atomsvc' => 'application/atomsvc+xml',\n 'atx' => 'application/vnd.antix.game-component',\n 'au' => 'audio/x-au',\n 'avci' => 'image/avci',\n 'avcs' => 'image/avcs',\n 'avi' => 'video/x-msvideo',\n 'avif' => 'image/avif',\n 'aw' => 'application/applixware',\n 'azf' => 'application/vnd.airzip.filesecure.azf',\n 'azs' => 'application/vnd.airzip.filesecure.azs',\n 'azv' => 'image/vnd.airzip.accelerator.azv',\n 'azw' => 'application/vnd.amazon.ebook',\n 'b16' => 'image/vnd.pco.b16',\n 'bat' => 'application/x-msdownload',\n 'bcpio' => 'application/x-bcpio',\n 'bdf' => 'application/x-font-bdf',\n 'bdm' => 'application/vnd.syncml.dm+wbxml',\n 'bdoc' => 'application/x-bdoc',\n 'bed' => 'application/vnd.realvnc.bed',\n 'bh2' => 'application/vnd.fujitsu.oasysprs',\n 'bin' => 'application/octet-stream',\n 'blb' => 'application/x-blorb',\n 'blorb' => 'application/x-blorb',\n 'bmi' => 'application/vnd.bmi',\n 'bmml' => 'application/vnd.balsamiq.bmml+xml',\n 'bmp' => 'image/bmp',\n 'book' => 'application/vnd.framemaker',\n 'box' => 'application/vnd.previewsystems.box',\n 'boz' => 'application/x-bzip2',\n 'bpk' => 'application/octet-stream',\n 'bpmn' => 'application/octet-stream',\n 'brf' => 'application/braille',\n 'bsp' => 'model/vnd.valve.source.compiled-map',\n 'btf' => 'image/prs.btif',\n 'btif' => 'image/prs.btif',\n 'buffer' => 'application/octet-stream',\n 'bz' => 'application/x-bzip',\n 'bz2' => 'application/x-bzip2',\n 'c' => 'text/x-c',\n 'c4d' => 'application/vnd.clonk.c4group',\n 'c4f' => 'application/vnd.clonk.c4group',\n 'c4g' => 'application/vnd.clonk.c4group',\n 'c4p' => 'application/vnd.clonk.c4group',\n 'c4u' => 'application/vnd.clonk.c4group',\n 'c11amc' => 'application/vnd.cluetrust.cartomobile-config',\n 'c11amz' => 'application/vnd.cluetrust.cartomobile-config-pkg',\n 'cab' => 'application/vnd.ms-cab-compressed',\n 'caf' => 'audio/x-caf',\n 'cap' => 'application/vnd.tcpdump.pcap',\n 'car' => 'application/vnd.curl.car',\n 'cat' => 'application/vnd.ms-pki.seccat',\n 'cb7' => 'application/x-cbr',\n 'cba' => 'application/x-cbr',\n 'cbr' => 'application/x-cbr',\n 'cbt' => 'application/x-cbr',\n 'cbz' => 'application/x-cbr',\n 'cc' => 'text/x-c',\n 'cco' => 'application/x-cocoa',\n 'cct' => 'application/x-director',\n 'ccxml' => 'application/ccxml+xml',\n 'cdbcmsg' => 'application/vnd.contact.cmsg',\n 'cdf' => 'application/x-netcdf',\n 'cdfx' => 'application/cdfx+xml',\n 'cdkey' => 'application/vnd.mediastation.cdkey',\n 'cdmia' => 'application/cdmi-capability',\n 'cdmic' => 'application/cdmi-container',\n 'cdmid' => 'application/cdmi-domain',\n 'cdmio' => 'application/cdmi-object',\n 'cdmiq' => 'application/cdmi-queue',\n 'cdr' => 'application/cdr',\n 'cdx' => 'chemical/x-cdx',\n 'cdxml' => 'application/vnd.chemdraw+xml',\n 'cdy' => 'application/vnd.cinderella',\n 'cer' => 'application/pkix-cert',\n 'cfs' => 'application/x-cfs-compressed',\n 'cgm' => 'image/cgm',\n 'chat' => 'application/x-chat',\n 'chm' => 'application/vnd.ms-htmlhelp',\n 'chrt' => 'application/vnd.kde.kchart',\n 'cif' => 'chemical/x-cif',\n 'cii' => 'application/vnd.anser-web-certificate-issue-initiation',\n 'cil' => 'application/vnd.ms-artgalry',\n 'cjs' => 'application/node',\n 'cla' => 'application/vnd.claymore',\n 'class' => 'application/octet-stream',\n 'cld' => 'model/vnd.cld',\n 'clkk' => 'application/vnd.crick.clicker.keyboard',\n 'clkp' => 'application/vnd.crick.clicker.palette',\n 'clkt' => 'application/vnd.crick.clicker.template',\n 'clkw' => 'application/vnd.crick.clicker.wordbank',\n 'clkx' => 'application/vnd.crick.clicker',\n 'clp' => 'application/x-msclip',\n 'cmc' => 'application/vnd.cosmocaller',\n 'cmdf' => 'chemical/x-cmdf',\n 'cml' => 'chemical/x-cml',\n 'cmp' => 'application/vnd.yellowriver-custom-menu',\n 'cmx' => 'image/x-cmx',\n 'cod' => 'application/vnd.rim.cod',\n 'coffee' => 'text/coffeescript',\n 'com' => 'application/x-msdownload',\n 'conf' => 'text/plain',\n 'cpio' => 'application/x-cpio',\n 'cpl' => 'application/cpl+xml',\n 'cpp' => 'text/x-c',\n 'cpt' => 'application/mac-compactpro',\n 'crd' => 'application/x-mscardfile',\n 'crl' => 'application/pkix-crl',\n 'crt' => 'application/x-x509-ca-cert',\n 'crx' => 'application/x-chrome-extension',\n 'cryptonote' => 'application/vnd.rig.cryptonote',\n 'csh' => 'application/x-csh',\n 'csl' => 'application/vnd.citationstyles.style+xml',\n 'csml' => 'chemical/x-csml',\n 'csp' => 'application/vnd.commonspace',\n 'csr' => 'application/octet-stream',\n 'css' => 'text/css',\n 'cst' => 'application/x-director',\n 'csv' => 'text/csv',\n 'cu' => 'application/cu-seeme',\n 'curl' => 'text/vnd.curl',\n 'cwl' => 'application/cwl',\n 'cww' => 'application/prs.cww',\n 'cxt' => 'application/x-director',\n 'cxx' => 'text/x-c',\n 'dae' => 'model/vnd.collada+xml',\n 'daf' => 'application/vnd.mobius.daf',\n 'dart' => 'application/vnd.dart',\n 'dataless' => 'application/vnd.fdsn.seed',\n 'davmount' => 'application/davmount+xml',\n 'dbf' => 'application/vnd.dbf',\n 'dbk' => 'application/docbook+xml',\n 'dcr' => 'application/x-director',\n 'dcurl' => 'text/vnd.curl.dcurl',\n 'dd2' => 'application/vnd.oma.dd2+xml',\n 'ddd' => 'application/vnd.fujixerox.ddd',\n 'ddf' => 'application/vnd.syncml.dmddf+xml',\n 'dds' => 'image/vnd.ms-dds',\n 'deb' => 'application/x-debian-package',\n 'def' => 'text/plain',\n 'deploy' => 'application/octet-stream',\n 'der' => 'application/x-x509-ca-cert',\n 'dfac' => 'application/vnd.dreamfactory',\n 'dgc' => 'application/x-dgc-compressed',\n 'dib' => 'image/bmp',\n 'dic' => 'text/x-c',\n 'dir' => 'application/x-director',\n 'dis' => 'application/vnd.mobius.dis',\n 'disposition-notification' => 'message/disposition-notification',\n 'dist' => 'application/octet-stream',\n 'distz' => 'application/octet-stream',\n 'djv' => 'image/vnd.djvu',\n 'djvu' => 'image/vnd.djvu',\n 'dll' => 'application/octet-stream',\n 'dmg' => 'application/x-apple-diskimage',\n 'dmn' => 'application/octet-stream',\n 'dmp' => 'application/vnd.tcpdump.pcap',\n 'dms' => 'application/octet-stream',\n 'dna' => 'application/vnd.dna',\n 'doc' => 'application/msword',\n 'docm' => 'application/vnd.ms-word.template.macroEnabled.12',\n 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n 'dot' => 'application/msword',\n 'dotm' => 'application/vnd.ms-word.template.macroEnabled.12',\n 'dotx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',\n 'dp' => 'application/vnd.osgi.dp',\n 'dpg' => 'application/vnd.dpgraph',\n 'dpx' => 'image/dpx',\n 'dra' => 'audio/vnd.dra',\n 'drle' => 'image/dicom-rle',\n 'dsc' => 'text/prs.lines.tag',\n 'dssc' => 'application/dssc+der',\n 'dst' => 'application/octet-stream',\n 'dtb' => 'application/x-dtbook+xml',\n 'dtd' => 'application/xml-dtd',\n 'dts' => 'audio/vnd.dts',\n 'dtshd' => 'audio/vnd.dts.hd',\n 'dump' => 'application/octet-stream',\n 'dvb' => 'video/vnd.dvb.file',\n 'dvi' => 'application/x-dvi',\n 'dwd' => 'application/atsc-dwd+xml',\n 'dwf' => 'model/vnd.dwf',\n 'dwg' => 'image/vnd.dwg',\n 'dxf' => 'image/vnd.dxf',\n 'dxp' => 'application/vnd.spotfire.dxp',\n 'dxr' => 'application/x-director',\n 'ear' => 'application/java-archive',\n 'ecelp4800' => 'audio/vnd.nuera.ecelp4800',\n 'ecelp7470' => 'audio/vnd.nuera.ecelp7470',\n 'ecelp9600' => 'audio/vnd.nuera.ecelp9600',\n 'ecma' => 'application/ecmascript',\n 'edm' => 'application/vnd.novadigm.edm',\n 'edx' => 'application/vnd.novadigm.edx',\n 'efif' => 'application/vnd.picsel',\n 'ei6' => 'application/vnd.pg.osasli',\n 'elc' => 'application/octet-stream',\n 'emf' => 'image/emf',\n 'eml' => 'message/rfc822',\n 'emma' => 'application/emma+xml',\n 'emotionml' => 'application/emotionml+xml',\n 'emz' => 'application/x-msmetafile',\n 'eol' => 'audio/vnd.digital-winds',\n 'eot' => 'application/vnd.ms-fontobject',\n 'eps' => 'application/postscript',\n 'epub' => 'application/epub+zip',\n 'es3' => 'application/vnd.eszigno3+xml',\n 'esa' => 'application/vnd.osgi.subsystem',\n 'esf' => 'application/vnd.epson.esf',\n 'et3' => 'application/vnd.eszigno3+xml',\n 'etx' => 'text/x-setext',\n 'eva' => 'application/x-eva',\n 'evy' => 'application/x-envoy',\n 'exe' => 'application/octet-stream',\n 'exi' => 'application/exi',\n 'exp' => 'application/express',\n 'exr' => 'image/aces',\n 'ext' => 'application/vnd.novadigm.ext',\n 'ez' => 'application/andrew-inset',\n 'ez2' => 'application/vnd.ezpix-album',\n 'ez3' => 'application/vnd.ezpix-package',\n 'f' => 'text/x-fortran',\n 'f4v' => 'video/mp4',\n 'f77' => 'text/x-fortran',\n 'f90' => 'text/x-fortran',\n 'fbs' => 'image/vnd.fastbidsheet',\n 'fcdt' => 'application/vnd.adobe.formscentral.fcdt',\n 'fcs' => 'application/vnd.isac.fcs',\n 'fdf' => 'application/vnd.fdf',\n 'fdt' => 'application/fdt+xml',\n 'fe_launch' => 'application/vnd.denovo.fcselayout-link',\n 'fg5' => 'application/vnd.fujitsu.oasysgp',\n 'fgd' => 'application/x-director',\n 'fh' => 'image/x-freehand',\n 'fh4' => 'image/x-freehand',\n 'fh5' => 'image/x-freehand',\n 'fh7' => 'image/x-freehand',\n 'fhc' => 'image/x-freehand',\n 'fig' => 'application/x-xfig',\n 'fits' => 'image/fits',\n 'flac' => 'audio/x-flac',\n 'fli' => 'video/x-fli',\n 'flo' => 'application/vnd.micrografx.flo',\n 'flv' => 'video/x-flv',\n 'flw' => 'application/vnd.kde.kivio',\n 'flx' => 'text/vnd.fmi.flexstor',\n 'fly' => 'text/vnd.fly',\n 'fm' => 'application/vnd.framemaker',\n 'fnc' => 'application/vnd.frogans.fnc',\n 'fo' => 'application/vnd.software602.filler.form+xml',\n 'for' => 'text/x-fortran',\n 'fpx' => 'image/vnd.fpx',\n 'frame' => 'application/vnd.framemaker',\n 'fsc' => 'application/vnd.fsc.weblaunch',\n 'fst' => 'image/vnd.fst',\n 'ftc' => 'application/vnd.fluxtime.clip',\n 'fti' => 'application/vnd.anser-web-funds-transfer-initiation',\n 'fvt' => 'video/vnd.fvt',\n 'fxp' => 'application/vnd.adobe.fxp',\n 'fxpl' => 'application/vnd.adobe.fxp',\n 'fzs' => 'application/vnd.fuzzysheet',\n 'g2w' => 'application/vnd.geoplan',\n 'g3' => 'image/g3fax',\n 'g3w' => 'application/vnd.geospace',\n 'gac' => 'application/vnd.groove-account',\n 'gam' => 'application/x-tads',\n 'gbr' => 'application/rpki-ghostbusters',\n 'gca' => 'application/x-gca-compressed',\n 'gdl' => 'model/vnd.gdl',\n 'gdoc' => 'application/vnd.google-apps.document',\n 'ged' => 'text/vnd.familysearch.gedcom',\n 'geo' => 'application/vnd.dynageo',\n 'geojson' => 'application/geo+json',\n 'gex' => 'application/vnd.geometry-explorer',\n 'ggb' => 'application/vnd.geogebra.file',\n 'ggt' => 'application/vnd.geogebra.tool',\n 'ghf' => 'application/vnd.groove-help',\n 'gif' => 'image/gif',\n 'gim' => 'application/vnd.groove-identity-message',\n 'glb' => 'model/gltf-binary',\n 'gltf' => 'model/gltf+json',\n 'gml' => 'application/gml+xml',\n 'gmx' => 'application/vnd.gmx',\n 'gnumeric' => 'application/x-gnumeric',\n 'gpg' => 'application/gpg-keys',\n 'gph' => 'application/vnd.flographit',\n 'gpx' => 'application/gpx+xml',\n 'gqf' => 'application/vnd.grafeq',\n 'gqs' => 'application/vnd.grafeq',\n 'gram' => 'application/srgs',\n 'gramps' => 'application/x-gramps-xml',\n 'gre' => 'application/vnd.geometry-explorer',\n 'grv' => 'application/vnd.groove-injector',\n 'grxml' => 'application/srgs+xml',\n 'gsf' => 'application/x-font-ghostscript',\n 'gsheet' => 'application/vnd.google-apps.spreadsheet',\n 'gslides' => 'application/vnd.google-apps.presentation',\n 'gtar' => 'application/x-gtar',\n 'gtm' => 'application/vnd.groove-tool-message',\n 'gtw' => 'model/vnd.gtw',\n 'gv' => 'text/vnd.graphviz',\n 'gxf' => 'application/gxf',\n 'gxt' => 'application/vnd.geonext',\n 'gz' => 'application/gzip',\n 'gzip' => 'application/gzip',\n 'h' => 'text/x-c',\n 'h261' => 'video/h261',\n 'h263' => 'video/h263',\n 'h264' => 'video/h264',\n 'hal' => 'application/vnd.hal+xml',\n 'hbci' => 'application/vnd.hbci',\n 'hbs' => 'text/x-handlebars-template',\n 'hdd' => 'application/x-virtualbox-hdd',\n 'hdf' => 'application/x-hdf',\n 'heic' => 'image/heic',\n 'heics' => 'image/heic-sequence',\n 'heif' => 'image/heif',\n 'heifs' => 'image/heif-sequence',\n 'hej2' => 'image/hej2k',\n 'held' => 'application/atsc-held+xml',\n 'hh' => 'text/x-c',\n 'hjson' => 'application/hjson',\n 'hlp' => 'application/winhlp',\n 'hpgl' => 'application/vnd.hp-hpgl',\n 'hpid' => 'application/vnd.hp-hpid',\n 'hps' => 'application/vnd.hp-hps',\n 'hqx' => 'application/mac-binhex40',\n 'hsj2' => 'image/hsj2',\n 'htc' => 'text/x-component',\n 'htke' => 'application/vnd.kenameaapp',\n 'htm' => 'text/html',\n 'html' => 'text/html',\n 'hvd' => 'application/vnd.yamaha.hv-dic',\n 'hvp' => 'application/vnd.yamaha.hv-voice',\n 'hvs' => 'application/vnd.yamaha.hv-script',\n 'i2g' => 'application/vnd.intergeo',\n 'icc' => 'application/vnd.iccprofile',\n 'ice' => 'x-conference/x-cooltalk',\n 'icm' => 'application/vnd.iccprofile',\n 'ico' => 'image/x-icon',\n 'ics' => 'text/calendar',\n 'ief' => 'image/ief',\n 'ifb' => 'text/calendar',\n 'ifm' => 'application/vnd.shana.informed.formdata',\n 'iges' => 'model/iges',\n 'igl' => 'application/vnd.igloader',\n 'igm' => 'application/vnd.insors.igm',\n 'igs' => 'model/iges',\n 'igx' => 'application/vnd.micrografx.igx',\n 'iif' => 'application/vnd.shana.informed.interchange',\n 'img' => 'application/octet-stream',\n 'imp' => 'application/vnd.accpac.simply.imp',\n 'ims' => 'application/vnd.ms-ims',\n 'in' => 'text/plain',\n 'ini' => 'text/plain',\n 'ink' => 'application/inkml+xml',\n 'inkml' => 'application/inkml+xml',\n 'install' => 'application/x-install-instructions',\n 'iota' => 'application/vnd.astraea-software.iota',\n 'ipfix' => 'application/ipfix',\n 'ipk' => 'application/vnd.shana.informed.package',\n 'irm' => 'application/vnd.ibm.rights-management',\n 'irp' => 'application/vnd.irepository.package+xml',\n 'iso' => 'application/x-iso9660-image',\n 'itp' => 'application/vnd.shana.informed.formtemplate',\n 'its' => 'application/its+xml',\n 'ivp' => 'application/vnd.immervision-ivp',\n 'ivu' => 'application/vnd.immervision-ivu',\n 'jad' => 'text/vnd.sun.j2me.app-descriptor',\n 'jade' => 'text/jade',\n 'jam' => 'application/vnd.jam',\n 'jar' => 'application/java-archive',\n 'jardiff' => 'application/x-java-archive-diff',\n 'java' => 'text/x-java-source',\n 'jhc' => 'image/jphc',\n 'jisp' => 'application/vnd.jisp',\n 'jls' => 'image/jls',\n 'jlt' => 'application/vnd.hp-jlyt',\n 'jng' => 'image/x-jng',\n 'jnlp' => 'application/x-java-jnlp-file',\n 'joda' => 'application/vnd.joost.joda-archive',\n 'jp2' => 'image/jp2',\n 'jpe' => 'image/jpeg',\n 'jpeg' => 'image/jpeg',\n 'jpf' => 'image/jpx',\n 'jpg' => 'image/jpeg',\n 'jpg2' => 'image/jp2',\n 'jpgm' => 'video/jpm',\n 'jpgv' => 'video/jpeg',\n 'jph' => 'image/jph',\n 'jpm' => 'video/jpm',\n 'jpx' => 'image/jpx',\n 'js' => 'application/javascript',\n 'json' => 'application/json',\n 'json5' => 'application/json5',\n 'jsonld' => 'application/ld+json',\n 'jsonml' => 'application/jsonml+json',\n 'jsx' => 'text/jsx',\n 'jt' => 'model/jt',\n 'jxr' => 'image/jxr',\n 'jxra' => 'image/jxra',\n 'jxrs' => 'image/jxrs',\n 'jxs' => 'image/jxs',\n 'jxsc' => 'image/jxsc',\n 'jxsi' => 'image/jxsi',\n 'jxss' => 'image/jxss',\n 'kar' => 'audio/midi',\n 'karbon' => 'application/vnd.kde.karbon',\n 'kdb' => 'application/octet-stream',\n 'kdbx' => 'application/x-keepass2',\n 'key' => 'application/x-iwork-keynote-sffkey',\n 'kfo' => 'application/vnd.kde.kformula',\n 'kia' => 'application/vnd.kidspiration',\n 'kml' => 'application/vnd.google-earth.kml+xml',\n 'kmz' => 'application/vnd.google-earth.kmz',\n 'kne' => 'application/vnd.kinar',\n 'knp' => 'application/vnd.kinar',\n 'kon' => 'application/vnd.kde.kontour',\n 'kpr' => 'application/vnd.kde.kpresenter',\n 'kpt' => 'application/vnd.kde.kpresenter',\n 'kpxx' => 'application/vnd.ds-keypoint',\n 'ksp' => 'application/vnd.kde.kspread',\n 'ktr' => 'application/vnd.kahootz',\n 'ktx' => 'image/ktx',\n 'ktx2' => 'image/ktx2',\n 'ktz' => 'application/vnd.kahootz',\n 'kwd' => 'application/vnd.kde.kword',\n 'kwt' => 'application/vnd.kde.kword',\n 'lasxml' => 'application/vnd.las.las+xml',\n 'latex' => 'application/x-latex',\n 'lbd' => 'application/vnd.llamagraphics.life-balance.desktop',\n 'lbe' => 'application/vnd.llamagraphics.life-balance.exchange+xml',\n 'les' => 'application/vnd.hhe.lesson-player',\n 'less' => 'text/less',\n 'lgr' => 'application/lgr+xml',\n 'lha' => 'application/octet-stream',\n 'link66' => 'application/vnd.route66.link66+xml',\n 'list' => 'text/plain',\n 'list3820' => 'application/vnd.ibm.modcap',\n 'listafp' => 'application/vnd.ibm.modcap',\n 'litcoffee' => 'text/coffeescript',\n 'lnk' => 'application/x-ms-shortcut',\n 'log' => 'text/plain',\n 'lostxml' => 'application/lost+xml',\n 'lrf' => 'application/octet-stream',\n 'lrm' => 'application/vnd.ms-lrm',\n 'ltf' => 'application/vnd.frogans.ltf',\n 'lua' => 'text/x-lua',\n 'luac' => 'application/x-lua-bytecode',\n 'lvp' => 'audio/vnd.lucent.voice',\n 'lwp' => 'application/vnd.lotus-wordpro',\n 'lzh' => 'application/octet-stream',\n 'm1v' => 'video/mpeg',\n 'm2a' => 'audio/mpeg',\n 'm2v' => 'video/mpeg',\n 'm3a' => 'audio/mpeg',\n 'm3u' => 'text/plain',\n 'm3u8' => 'application/vnd.apple.mpegurl',\n 'm4a' => 'audio/x-m4a',\n 'm4p' => 'application/mp4',\n 'm4s' => 'video/iso.segment',\n 'm4u' => 'application/vnd.mpegurl',\n 'm4v' => 'video/x-m4v',\n 'm13' => 'application/x-msmediaview',\n 'm14' => 'application/x-msmediaview',\n 'm21' => 'application/mp21',\n 'ma' => 'application/mathematica',\n 'mads' => 'application/mads+xml',\n 'maei' => 'application/mmt-aei+xml',\n 'mag' => 'application/vnd.ecowin.chart',\n 'maker' => 'application/vnd.framemaker',\n 'man' => 'text/troff',\n 'manifest' => 'text/cache-manifest',\n 'map' => 'application/json',\n 'mar' => 'application/octet-stream',\n 'markdown' => 'text/markdown',\n 'mathml' => 'application/mathml+xml',\n 'mb' => 'application/mathematica',\n 'mbk' => 'application/vnd.mobius.mbk',\n 'mbox' => 'application/mbox',\n 'mc1' => 'application/vnd.medcalcdata',\n 'mcd' => 'application/vnd.mcd',\n 'mcurl' => 'text/vnd.curl.mcurl',\n 'md' => 'text/markdown',\n 'mdb' => 'application/x-msaccess',\n 'mdi' => 'image/vnd.ms-modi',\n 'mdx' => 'text/mdx',\n 'me' => 'text/troff',\n 'mesh' => 'model/mesh',\n 'meta4' => 'application/metalink4+xml',\n 'metalink' => 'application/metalink+xml',\n 'mets' => 'application/mets+xml',\n 'mfm' => 'application/vnd.mfmp',\n 'mft' => 'application/rpki-manifest',\n 'mgp' => 'application/vnd.osgeo.mapguide.package',\n 'mgz' => 'application/vnd.proteus.magazine',\n 'mid' => 'audio/midi',\n 'midi' => 'audio/midi',\n 'mie' => 'application/x-mie',\n 'mif' => 'application/vnd.mif',\n 'mime' => 'message/rfc822',\n 'mj2' => 'video/mj2',\n 'mjp2' => 'video/mj2',\n 'mjs' => 'text/javascript',\n 'mk3d' => 'video/x-matroska',\n 'mka' => 'audio/x-matroska',\n 'mkd' => 'text/x-markdown',\n 'mks' => 'video/x-matroska',\n 'mkv' => 'video/x-matroska',\n 'mlp' => 'application/vnd.dolby.mlp',\n 'mmd' => 'application/vnd.chipnuts.karaoke-mmd',\n 'mmf' => 'application/vnd.smaf',\n 'mml' => 'text/mathml',\n 'mmr' => 'image/vnd.fujixerox.edmics-mmr',\n 'mng' => 'video/x-mng',\n 'mny' => 'application/x-msmoney',\n 'mobi' => 'application/x-mobipocket-ebook',\n 'mods' => 'application/mods+xml',\n 'mov' => 'video/quicktime',\n 'movie' => 'video/x-sgi-movie',\n 'mp2' => 'audio/mpeg',\n 'mp2a' => 'audio/mpeg',\n 'mp3' => 'audio/mpeg',\n 'mp4' => 'video/mp4',\n 'mp4a' => 'audio/mp4',\n 'mp4s' => 'application/mp4',\n 'mp4v' => 'video/mp4',\n 'mp21' => 'application/mp21',\n 'mpc' => 'application/vnd.mophun.certificate',\n 'mpd' => 'application/dash+xml',\n 'mpe' => 'video/mpeg',\n 'mpeg' => 'video/mpeg',\n 'mpf' => 'application/media-policy-dataset+xml',\n 'mpg' => 'video/mpeg',\n 'mpg4' => 'video/mp4',\n 'mpga' => 'audio/mpeg',\n 'mpkg' => 'application/vnd.apple.installer+xml',\n 'mpm' => 'application/vnd.blueice.multipass',\n 'mpn' => 'application/vnd.mophun.application',\n 'mpp' => 'application/vnd.ms-project',\n 'mpt' => 'application/vnd.ms-project',\n 'mpy' => 'application/vnd.ibm.minipay',\n 'mqy' => 'application/vnd.mobius.mqy',\n 'mrc' => 'application/marc',\n 'mrcx' => 'application/marcxml+xml',\n 'ms' => 'text/troff',\n 'mscml' => 'application/mediaservercontrol+xml',\n 'mseed' => 'application/vnd.fdsn.mseed',\n 'mseq' => 'application/vnd.mseq',\n 'msf' => 'application/vnd.epson.msf',\n 'msg' => 'application/vnd.ms-outlook',\n 'msh' => 'model/mesh',\n 'msi' => 'application/x-msdownload',\n 'msix' => 'application/msix',\n 'msixbundle' => 'application/msixbundle',\n 'msl' => 'application/vnd.mobius.msl',\n 'msm' => 'application/octet-stream',\n 'msp' => 'application/octet-stream',\n 'msty' => 'application/vnd.muvee.style',\n 'mtl' => 'model/mtl',\n 'mts' => 'model/vnd.mts',\n 'mus' => 'application/vnd.musician',\n 'musd' => 'application/mmt-usd+xml',\n 'musicxml' => 'application/vnd.recordare.musicxml+xml',\n 'mvb' => 'application/x-msmediaview',\n 'mvt' => 'application/vnd.mapbox-vector-tile',\n 'mwf' => 'application/vnd.mfer',\n 'mxf' => 'application/mxf',\n 'mxl' => 'application/vnd.recordare.musicxml',\n 'mxmf' => 'audio/mobile-xmf',\n 'mxml' => 'application/xv+xml',\n 'mxs' => 'application/vnd.triscape.mxs',\n 'mxu' => 'video/vnd.mpegurl',\n 'n-gage' => 'application/vnd.nokia.n-gage.symbian.install',\n 'n3' => 'text/n3',\n 'nb' => 'application/mathematica',\n 'nbp' => 'application/vnd.wolfram.player',\n 'nc' => 'application/x-netcdf',\n 'ncx' => 'application/x-dtbncx+xml',\n 'ndjson' => 'application/x-ndjson',\n 'nfo' => 'text/x-nfo',\n 'ngdat' => 'application/vnd.nokia.n-gage.data',\n 'nitf' => 'application/vnd.nitf',\n 'nlu' => 'application/vnd.neurolanguage.nlu',\n 'nml' => 'application/vnd.enliven',\n 'nnd' => 'application/vnd.noblenet-directory',\n 'nns' => 'application/vnd.noblenet-sealer',\n 'nnw' => 'application/vnd.noblenet-web',\n 'npx' => 'image/vnd.net-fpx',\n 'nq' => 'application/n-quads',\n 'nsc' => 'application/x-conference',\n 'nsf' => 'application/vnd.lotus-notes',\n 'nt' => 'application/n-triples',\n 'ntf' => 'application/vnd.nitf',\n 'numbers' => 'application/x-iwork-numbers-sffnumbers',\n 'nzb' => 'application/x-nzb',\n 'oa2' => 'application/vnd.fujitsu.oasys2',\n 'oa3' => 'application/vnd.fujitsu.oasys3',\n 'oas' => 'application/vnd.fujitsu.oasys',\n 'obd' => 'application/x-msbinder',\n 'obgx' => 'application/vnd.openblox.game+xml',\n 'obj' => 'model/obj',\n 'oda' => 'application/oda',\n 'odb' => 'application/vnd.oasis.opendocument.database',\n 'odc' => 'application/vnd.oasis.opendocument.chart',\n 'odf' => 'application/vnd.oasis.opendocument.formula',\n 'odft' => 'application/vnd.oasis.opendocument.formula-template',\n 'odg' => 'application/vnd.oasis.opendocument.graphics',\n 'odi' => 'application/vnd.oasis.opendocument.image',\n 'odm' => 'application/vnd.oasis.opendocument.text-master',\n 'odp' => 'application/vnd.oasis.opendocument.presentation',\n 'ods' => 'application/vnd.oasis.opendocument.spreadsheet',\n 'odt' => 'application/vnd.oasis.opendocument.text',\n 'oga' => 'audio/ogg',\n 'ogex' => 'model/vnd.opengex',\n 'ogg' => 'audio/ogg',\n 'ogv' => 'video/ogg',\n 'ogx' => 'application/ogg',\n 'omdoc' => 'application/omdoc+xml',\n 'onepkg' => 'application/onenote',\n 'onetmp' => 'application/onenote',\n 'onetoc' => 'application/onenote',\n 'onetoc2' => 'application/onenote',\n 'opf' => 'application/oebps-package+xml',\n 'opml' => 'text/x-opml',\n 'oprc' => 'application/vnd.palm',\n 'opus' => 'audio/ogg',\n 'org' => 'text/x-org',\n 'osf' => 'application/vnd.yamaha.openscoreformat',\n 'osfpvg' => 'application/vnd.yamaha.openscoreformat.osfpvg+xml',\n 'osm' => 'application/vnd.openstreetmap.data+xml',\n 'otc' => 'application/vnd.oasis.opendocument.chart-template',\n 'otf' => 'font/otf',\n 'otg' => 'application/vnd.oasis.opendocument.graphics-template',\n 'oth' => 'application/vnd.oasis.opendocument.text-web',\n 'oti' => 'application/vnd.oasis.opendocument.image-template',\n 'otp' => 'application/vnd.oasis.opendocument.presentation-template',\n 'ots' => 'application/vnd.oasis.opendocument.spreadsheet-template',\n 'ott' => 'application/vnd.oasis.opendocument.text-template',\n 'ova' => 'application/x-virtualbox-ova',\n 'ovf' => 'application/x-virtualbox-ovf',\n 'owl' => 'application/rdf+xml',\n 'oxps' => 'application/oxps',\n 'oxt' => 'application/vnd.openofficeorg.extension',\n 'p' => 'text/x-pascal',\n 'p7a' => 'application/x-pkcs7-signature',\n 'p7b' => 'application/x-pkcs7-certificates',\n 'p7c' => 'application/pkcs7-mime',\n 'p7m' => 'application/pkcs7-mime',\n 'p7r' => 'application/x-pkcs7-certreqresp',\n 'p7s' => 'application/pkcs7-signature',\n 'p8' => 'application/pkcs8',\n 'p10' => 'application/x-pkcs10',\n 'p12' => 'application/x-pkcs12',\n 'pac' => 'application/x-ns-proxy-autoconfig',\n 'pages' => 'application/x-iwork-pages-sffpages',\n 'pas' => 'text/x-pascal',\n 'paw' => 'application/vnd.pawaafile',\n 'pbd' => 'application/vnd.powerbuilder6',\n 'pbm' => 'image/x-portable-bitmap',\n 'pcap' => 'application/vnd.tcpdump.pcap',\n 'pcf' => 'application/x-font-pcf',\n 'pcl' => 'application/vnd.hp-pcl',\n 'pclxl' => 'application/vnd.hp-pclxl',\n 'pct' => 'image/x-pict',\n 'pcurl' => 'application/vnd.curl.pcurl',\n 'pcx' => 'image/x-pcx',\n 'pdb' => 'application/x-pilot',\n 'pde' => 'text/x-processing',\n 'pdf' => 'application/pdf',\n 'pem' => 'application/x-x509-user-cert',\n 'pfa' => 'application/x-font-type1',\n 'pfb' => 'application/x-font-type1',\n 'pfm' => 'application/x-font-type1',\n 'pfr' => 'application/font-tdpfr',\n 'pfx' => 'application/x-pkcs12',\n 'pgm' => 'image/x-portable-graymap',\n 'pgn' => 'application/x-chess-pgn',\n 'pgp' => 'application/pgp',\n 'phar' => 'application/octet-stream',\n 'php' => 'application/x-httpd-php',\n 'php3' => 'application/x-httpd-php',\n 'php4' => 'application/x-httpd-php',\n 'phps' => 'application/x-httpd-php-source',\n 'phtml' => 'application/x-httpd-php',\n 'pic' => 'image/x-pict',\n 'pkg' => 'application/octet-stream',\n 'pki' => 'application/pkixcmp',\n 'pkipath' => 'application/pkix-pkipath',\n 'pkpass' => 'application/vnd.apple.pkpass',\n 'pl' => 'application/x-perl',\n 'plb' => 'application/vnd.3gpp.pic-bw-large',\n 'plc' => 'application/vnd.mobius.plc',\n 'plf' => 'application/vnd.pocketlearn',\n 'pls' => 'application/pls+xml',\n 'pm' => 'application/x-perl',\n 'pml' => 'application/vnd.ctc-posml',\n 'png' => 'image/png',\n 'pnm' => 'image/x-portable-anymap',\n 'portpkg' => 'application/vnd.macports.portpkg',\n 'pot' => 'application/vnd.ms-powerpoint',\n 'potm' => 'application/vnd.ms-powerpoint.presentation.macroEnabled.12',\n 'potx' => 'application/vnd.openxmlformats-officedocument.presentationml.template',\n 'ppa' => 'application/vnd.ms-powerpoint',\n 'ppam' => 'application/vnd.ms-powerpoint.addin.macroEnabled.12',\n 'ppd' => 'application/vnd.cups-ppd',\n 'ppm' => 'image/x-portable-pixmap',\n 'pps' => 'application/vnd.ms-powerpoint',\n 'ppsm' => 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12',\n 'ppsx' => 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',\n 'ppt' => 'application/powerpoint',\n 'pptm' => 'application/vnd.ms-powerpoint.presentation.macroEnabled.12',\n 'pptx' => 'application/vnd.openxmlformats-officedocument.presentationml.presentation',\n 'pqa' => 'application/vnd.palm',\n 'prc' => 'model/prc',\n 'pre' => 'application/vnd.lotus-freelance',\n 'prf' => 'application/pics-rules',\n 'provx' => 'application/provenance+xml',\n 'ps' => 'application/postscript',\n 'psb' => 'application/vnd.3gpp.pic-bw-small',\n 'psd' => 'application/x-photoshop',\n 'psf' => 'application/x-font-linux-psf',\n 'pskcxml' => 'application/pskc+xml',\n 'pti' => 'image/prs.pti',\n 'ptid' => 'application/vnd.pvi.ptid1',\n 'pub' => 'application/x-mspublisher',\n 'pv' => 'application/octet-stream',\n 'pvb' => 'application/vnd.3gpp.pic-bw-var',\n 'pwn' => 'application/vnd.3m.post-it-notes',\n 'pxf' => 'application/octet-stream',\n 'pya' => 'audio/vnd.ms-playready.media.pya',\n 'pyo' => 'model/vnd.pytha.pyox',\n 'pyox' => 'model/vnd.pytha.pyox',\n 'pyv' => 'video/vnd.ms-playready.media.pyv',\n 'qam' => 'application/vnd.epson.quickanime',\n 'qbo' => 'application/vnd.intu.qbo',\n 'qfx' => 'application/vnd.intu.qfx',\n 'qps' => 'application/vnd.publishare-delta-tree',\n 'qt' => 'video/quicktime',\n 'qwd' => 'application/vnd.quark.quarkxpress',\n 'qwt' => 'application/vnd.quark.quarkxpress',\n 'qxb' => 'application/vnd.quark.quarkxpress',\n 'qxd' => 'application/vnd.quark.quarkxpress',\n 'qxl' => 'application/vnd.quark.quarkxpress',\n 'qxt' => 'application/vnd.quark.quarkxpress',\n 'ra' => 'audio/x-realaudio',\n 'ram' => 'audio/x-pn-realaudio',\n 'raml' => 'application/raml+yaml',\n 'rapd' => 'application/route-apd+xml',\n 'rar' => 'application/x-rar',\n 'ras' => 'image/x-cmu-raster',\n 'rcprofile' => 'application/vnd.ipunplugged.rcprofile',\n 'rdf' => 'application/rdf+xml',\n 'rdz' => 'application/vnd.data-vision.rdz',\n 'relo' => 'application/p2p-overlay+xml',\n 'rep' => 'application/vnd.businessobjects',\n 'res' => 'application/x-dtbresource+xml',\n 'rgb' => 'image/x-rgb',\n 'rif' => 'application/reginfo+xml',\n 'rip' => 'audio/vnd.rip',\n 'ris' => 'application/x-research-info-systems',\n 'rl' => 'application/resource-lists+xml',\n 'rlc' => 'image/vnd.fujixerox.edmics-rlc',\n 'rld' => 'application/resource-lists-diff+xml',\n 'rm' => 'audio/x-pn-realaudio',\n 'rmi' => 'audio/midi',\n 'rmp' => 'audio/x-pn-realaudio-plugin',\n 'rms' => 'application/vnd.jcp.javame.midlet-rms',\n 'rmvb' => 'application/vnd.rn-realmedia-vbr',\n 'rnc' => 'application/relax-ng-compact-syntax',\n 'rng' => 'application/xml',\n 'roa' => 'application/rpki-roa',\n 'roff' => 'text/troff',\n 'rp9' => 'application/vnd.cloanto.rp9',\n 'rpm' => 'audio/x-pn-realaudio-plugin',\n 'rpss' => 'application/vnd.nokia.radio-presets',\n 'rpst' => 'application/vnd.nokia.radio-preset',\n 'rq' => 'application/sparql-query',\n 'rs' => 'application/rls-services+xml',\n 'rsa' => 'application/x-pkcs7',\n 'rsat' => 'application/atsc-rsat+xml',\n 'rsd' => 'application/rsd+xml',\n 'rsheet' => 'application/urc-ressheet+xml',\n 'rss' => 'application/rss+xml',\n 'rtf' => 'text/rtf',\n 'rtx' => 'text/richtext',\n 'run' => 'application/x-makeself',\n 'rusd' => 'application/route-usd+xml',\n 'rv' => 'video/vnd.rn-realvideo',\n 's' => 'text/x-asm',\n 's3m' => 'audio/s3m',\n 'saf' => 'application/vnd.yamaha.smaf-audio',\n 'sass' => 'text/x-sass',\n 'sbml' => 'application/sbml+xml',\n 'sc' => 'application/vnd.ibm.secure-container',\n 'scd' => 'application/x-msschedule',\n 'scm' => 'application/vnd.lotus-screencam',\n 'scq' => 'application/scvp-cv-request',\n 'scs' => 'application/scvp-cv-response',\n 'scss' => 'text/x-scss',\n 'scurl' => 'text/vnd.curl.scurl',\n 'sda' => 'application/vnd.stardivision.draw',\n 'sdc' => 'application/vnd.stardivision.calc',\n 'sdd' => 'application/vnd.stardivision.impress',\n 'sdkd' => 'application/vnd.solent.sdkm+xml',\n 'sdkm' => 'application/vnd.solent.sdkm+xml',\n 'sdp' => 'application/sdp',\n 'sdw' => 'application/vnd.stardivision.writer',\n 'sea' => 'application/octet-stream',\n 'see' => 'application/vnd.seemail',\n 'seed' => 'application/vnd.fdsn.seed',\n 'sema' => 'application/vnd.sema',\n 'semd' => 'application/vnd.semd',\n 'semf' => 'application/vnd.semf',\n 'senmlx' => 'application/senml+xml',\n 'sensmlx' => 'application/sensml+xml',\n 'ser' => 'application/java-serialized-object',\n 'setpay' => 'application/set-payment-initiation',\n 'setreg' => 'application/set-registration-initiation',\n 'sfd-hdstx' => 'application/vnd.hydrostatix.sof-data',\n 'sfs' => 'application/vnd.spotfire.sfs',\n 'sfv' => 'text/x-sfv',\n 'sgi' => 'image/sgi',\n 'sgl' => 'application/vnd.stardivision.writer-global',\n 'sgm' => 'text/sgml',\n 'sgml' => 'text/sgml',\n 'sh' => 'application/x-sh',\n 'shar' => 'application/x-shar',\n 'shex' => 'text/shex',\n 'shf' => 'application/shf+xml',\n 'shtml' => 'text/html',\n 'sid' => 'image/x-mrsid-image',\n 'sieve' => 'application/sieve',\n 'sig' => 'application/pgp-signature',\n 'sil' => 'audio/silk',\n 'silo' => 'model/mesh',\n 'sis' => 'application/vnd.symbian.install',\n 'sisx' => 'application/vnd.symbian.install',\n 'sit' => 'application/x-stuffit',\n 'sitx' => 'application/x-stuffitx',\n 'siv' => 'application/sieve',\n 'skd' => 'application/vnd.koan',\n 'skm' => 'application/vnd.koan',\n 'skp' => 'application/vnd.koan',\n 'skt' => 'application/vnd.koan',\n 'sldm' => 'application/vnd.ms-powerpoint.slide.macroenabled.12',\n 'sldx' => 'application/vnd.openxmlformats-officedocument.presentationml.slide',\n 'slim' => 'text/slim',\n 'slm' => 'text/slim',\n 'sls' => 'application/route-s-tsid+xml',\n 'slt' => 'application/vnd.epson.salt',\n 'sm' => 'application/vnd.stepmania.stepchart',\n 'smf' => 'application/vnd.stardivision.math',\n 'smi' => 'application/smil',\n 'smil' => 'application/smil',\n 'smv' => 'video/x-smv',\n 'smzip' => 'application/vnd.stepmania.package',\n 'snd' => 'audio/basic',\n 'snf' => 'application/x-font-snf',\n 'so' => 'application/octet-stream',\n 'spc' => 'application/x-pkcs7-certificates',\n 'spdx' => 'text/spdx',\n 'spf' => 'application/vnd.yamaha.smaf-phrase',\n 'spl' => 'application/x-futuresplash',\n 'spot' => 'text/vnd.in3d.spot',\n 'spp' => 'application/scvp-vp-response',\n 'spq' => 'application/scvp-vp-request',\n 'spx' => 'audio/ogg',\n 'sql' => 'application/x-sql',\n 'src' => 'application/x-wais-source',\n 'srt' => 'application/x-subrip',\n 'sru' => 'application/sru+xml',\n 'srx' => 'application/sparql-results+xml',\n 'ssdl' => 'application/ssdl+xml',\n 'sse' => 'application/vnd.kodak-descriptor',\n 'ssf' => 'application/vnd.epson.ssf',\n 'ssml' => 'application/ssml+xml',\n 'sst' => 'application/octet-stream',\n 'st' => 'application/vnd.sailingtracker.track',\n 'stc' => 'application/vnd.sun.xml.calc.template',\n 'std' => 'application/vnd.sun.xml.draw.template',\n 'step' => 'application/STEP',\n 'stf' => 'application/vnd.wt.stf',\n 'sti' => 'application/vnd.sun.xml.impress.template',\n 'stk' => 'application/hyperstudio',\n 'stl' => 'model/stl',\n 'stp' => 'application/STEP',\n 'stpx' => 'model/step+xml',\n 'stpxz' => 'model/step-xml+zip',\n 'stpz' => 'model/step+zip',\n 'str' => 'application/vnd.pg.format',\n 'stw' => 'application/vnd.sun.xml.writer.template',\n 'styl' => 'text/stylus',\n 'stylus' => 'text/stylus',\n 'sub' => 'text/vnd.dvb.subtitle',\n 'sus' => 'application/vnd.sus-calendar',\n 'susp' => 'application/vnd.sus-calendar',\n 'sv4cpio' => 'application/x-sv4cpio',\n 'sv4crc' => 'application/x-sv4crc',\n 'svc' => 'application/vnd.dvb.service',\n 'svd' => 'application/vnd.svd',\n 'svg' => 'image/svg+xml',\n 'svgz' => 'image/svg+xml',\n 'swa' => 'application/x-director',\n 'swf' => 'application/x-shockwave-flash',\n 'swi' => 'application/vnd.aristanetworks.swi',\n 'swidtag' => 'application/swid+xml',\n 'sxc' => 'application/vnd.sun.xml.calc',\n 'sxd' => 'application/vnd.sun.xml.draw',\n 'sxg' => 'application/vnd.sun.xml.writer.global',\n 'sxi' => 'application/vnd.sun.xml.impress',\n 'sxm' => 'application/vnd.sun.xml.math',\n 'sxw' => 'application/vnd.sun.xml.writer',\n 't' => 'text/troff',\n 't3' => 'application/x-t3vm-image',\n 't38' => 'image/t38',\n 'taglet' => 'application/vnd.mynfc',\n 'tao' => 'application/vnd.tao.intent-module-archive',\n 'tap' => 'image/vnd.tencent.tap',\n 'tar' => 'application/x-tar',\n 'tcap' => 'application/vnd.3gpp2.tcap',\n 'tcl' => 'application/x-tcl',\n 'td' => 'application/urc-targetdesc+xml',\n 'teacher' => 'application/vnd.smart.teacher',\n 'tei' => 'application/tei+xml',\n 'teicorpus' => 'application/tei+xml',\n 'tex' => 'application/x-tex',\n 'texi' => 'application/x-texinfo',\n 'texinfo' => 'application/x-texinfo',\n 'text' => 'text/plain',\n 'tfi' => 'application/thraud+xml',\n 'tfm' => 'application/x-tex-tfm',\n 'tfx' => 'image/tiff-fx',\n 'tga' => 'image/x-tga',\n 'tgz' => 'application/x-tar',\n 'thmx' => 'application/vnd.ms-officetheme',\n 'tif' => 'image/tiff',\n 'tiff' => 'image/tiff',\n 'tk' => 'application/x-tcl',\n 'tmo' => 'application/vnd.tmobile-livetv',\n 'toml' => 'application/toml',\n 'torrent' => 'application/x-bittorrent',\n 'tpl' => 'application/vnd.groove-tool-template',\n 'tpt' => 'application/vnd.trid.tpt',\n 'tr' => 'text/troff',\n 'tra' => 'application/vnd.trueapp',\n 'trig' => 'application/trig',\n 'trm' => 'application/x-msterminal',\n 'ts' => 'video/mp2t',\n 'tsd' => 'application/timestamped-data',\n 'tsv' => 'text/tab-separated-values',\n 'ttc' => 'font/collection',\n 'ttf' => 'font/ttf',\n 'ttl' => 'text/turtle',\n 'ttml' => 'application/ttml+xml',\n 'twd' => 'application/vnd.simtech-mindmapper',\n 'twds' => 'application/vnd.simtech-mindmapper',\n 'txd' => 'application/vnd.genomatix.tuxedo',\n 'txf' => 'application/vnd.mobius.txf',\n 'txt' => 'text/plain',\n 'u3d' => 'model/u3d',\n 'u8dsn' => 'message/global-delivery-status',\n 'u8hdr' => 'message/global-headers',\n 'u8mdn' => 'message/global-disposition-notification',\n 'u8msg' => 'message/global',\n 'u32' => 'application/x-authorware-bin',\n 'ubj' => 'application/ubjson',\n 'udeb' => 'application/x-debian-package',\n 'ufd' => 'application/vnd.ufdl',\n 'ufdl' => 'application/vnd.ufdl',\n 'ulx' => 'application/x-glulx',\n 'umj' => 'application/vnd.umajin',\n 'unityweb' => 'application/vnd.unity',\n 'uo' => 'application/vnd.uoml+xml',\n 'uoml' => 'application/vnd.uoml+xml',\n 'uri' => 'text/uri-list',\n 'uris' => 'text/uri-list',\n 'urls' => 'text/uri-list',\n 'usda' => 'model/vnd.usda',\n 'usdz' => 'model/vnd.usdz+zip',\n 'ustar' => 'application/x-ustar',\n 'utz' => 'application/vnd.uiq.theme',\n 'uu' => 'text/x-uuencode',\n 'uva' => 'audio/vnd.dece.audio',\n 'uvd' => 'application/vnd.dece.data',\n 'uvf' => 'application/vnd.dece.data',\n 'uvg' => 'image/vnd.dece.graphic',\n 'uvh' => 'video/vnd.dece.hd',\n 'uvi' => 'image/vnd.dece.graphic',\n 'uvm' => 'video/vnd.dece.mobile',\n 'uvp' => 'video/vnd.dece.pd',\n 'uvs' => 'video/vnd.dece.sd',\n 'uvt' => 'application/vnd.dece.ttml+xml',\n 'uvu' => 'video/vnd.uvvu.mp4',\n 'uvv' => 'video/vnd.dece.video',\n 'uvva' => 'audio/vnd.dece.audio',\n 'uvvd' => 'application/vnd.dece.data',\n 'uvvf' => 'application/vnd.dece.data',\n 'uvvg' => 'image/vnd.dece.graphic',\n 'uvvh' => 'video/vnd.dece.hd',\n 'uvvi' => 'image/vnd.dece.graphic',\n 'uvvm' => 'video/vnd.dece.mobile',\n 'uvvp' => 'video/vnd.dece.pd',\n 'uvvs' => 'video/vnd.dece.sd',\n 'uvvt' => 'application/vnd.dece.ttml+xml',\n 'uvvu' => 'video/vnd.uvvu.mp4',\n 'uvvv' => 'video/vnd.dece.video',\n 'uvvx' => 'application/vnd.dece.unspecified',\n 'uvvz' => 'application/vnd.dece.zip',\n 'uvx' => 'application/vnd.dece.unspecified',\n 'uvz' => 'application/vnd.dece.zip',\n 'vbox' => 'application/x-virtualbox-vbox',\n 'vbox-extpack' => 'application/x-virtualbox-vbox-extpack',\n 'vcard' => 'text/vcard',\n 'vcd' => 'application/x-cdlink',\n 'vcf' => 'text/x-vcard',\n 'vcg' => 'application/vnd.groove-vcard',\n 'vcs' => 'text/x-vcalendar',\n 'vcx' => 'application/vnd.vcx',\n 'vdi' => 'application/x-virtualbox-vdi',\n 'vds' => 'model/vnd.sap.vds',\n 'vhd' => 'application/x-virtualbox-vhd',\n 'vis' => 'application/vnd.visionary',\n 'viv' => 'video/vnd.vivo',\n 'vlc' => 'application/videolan',\n 'vmdk' => 'application/x-virtualbox-vmdk',\n 'vob' => 'video/x-ms-vob',\n 'vor' => 'application/vnd.stardivision.writer',\n 'vox' => 'application/x-authorware-bin',\n 'vrml' => 'model/vrml',\n 'vsd' => 'application/vnd.visio',\n 'vsf' => 'application/vnd.vsf',\n 'vss' => 'application/vnd.visio',\n 'vst' => 'application/vnd.visio',\n 'vsw' => 'application/vnd.visio',\n 'vtf' => 'image/vnd.valve.source.texture',\n 'vtt' => 'text/vtt',\n 'vtu' => 'model/vnd.vtu',\n 'vxml' => 'application/voicexml+xml',\n 'w3d' => 'application/x-director',\n 'wad' => 'application/x-doom',\n 'wadl' => 'application/vnd.sun.wadl+xml',\n 'war' => 'application/java-archive',\n 'wasm' => 'application/wasm',\n 'wav' => 'audio/x-wav',\n 'wax' => 'audio/x-ms-wax',\n 'wbmp' => 'image/vnd.wap.wbmp',\n 'wbs' => 'application/vnd.criticaltools.wbs+xml',\n 'wbxml' => 'application/wbxml',\n 'wcm' => 'application/vnd.ms-works',\n 'wdb' => 'application/vnd.ms-works',\n 'wdp' => 'image/vnd.ms-photo',\n 'weba' => 'audio/webm',\n 'webapp' => 'application/x-web-app-manifest+json',\n 'webm' => 'video/webm',\n 'webmanifest' => 'application/manifest+json',\n 'webp' => 'image/webp',\n 'wg' => 'application/vnd.pmi.widget',\n 'wgsl' => 'text/wgsl',\n 'wgt' => 'application/widget',\n 'wif' => 'application/watcherinfo+xml',\n 'wks' => 'application/vnd.ms-works',\n 'wm' => 'video/x-ms-wm',\n 'wma' => 'audio/x-ms-wma',\n 'wmd' => 'application/x-ms-wmd',\n 'wmf' => 'image/wmf',\n 'wml' => 'text/vnd.wap.wml',\n 'wmlc' => 'application/wmlc',\n 'wmls' => 'text/vnd.wap.wmlscript',\n 'wmlsc' => 'application/vnd.wap.wmlscriptc',\n 'wmv' => 'video/x-ms-wmv',\n 'wmx' => 'video/x-ms-wmx',\n 'wmz' => 'application/x-msmetafile',\n 'woff' => 'font/woff',\n 'woff2' => 'font/woff2',\n 'word' => 'application/msword',\n 'wpd' => 'application/vnd.wordperfect',\n 'wpl' => 'application/vnd.ms-wpl',\n 'wps' => 'application/vnd.ms-works',\n 'wqd' => 'application/vnd.wqd',\n 'wri' => 'application/x-mswrite',\n 'wrl' => 'model/vrml',\n 'wsc' => 'message/vnd.wfa.wsc',\n 'wsdl' => 'application/wsdl+xml',\n 'wspolicy' => 'application/wspolicy+xml',\n 'wtb' => 'application/vnd.webturbo',\n 'wvx' => 'video/x-ms-wvx',\n 'x3d' => 'model/x3d+xml',\n 'x3db' => 'model/x3d+fastinfoset',\n 'x3dbz' => 'model/x3d+binary',\n 'x3dv' => 'model/x3d-vrml',\n 'x3dvz' => 'model/x3d+vrml',\n 'x3dz' => 'model/x3d+xml',\n 'x32' => 'application/x-authorware-bin',\n 'x_b' => 'model/vnd.parasolid.transmit.binary',\n 'x_t' => 'model/vnd.parasolid.transmit.text',\n 'xaml' => 'application/xaml+xml',\n 'xap' => 'application/x-silverlight-app',\n 'xar' => 'application/vnd.xara',\n 'xav' => 'application/xcap-att+xml',\n 'xbap' => 'application/x-ms-xbap',\n 'xbd' => 'application/vnd.fujixerox.docuworks.binder',\n 'xbm' => 'image/x-xbitmap',\n 'xca' => 'application/xcap-caps+xml',\n 'xcs' => 'application/calendar+xml',\n 'xdf' => 'application/xcap-diff+xml',\n 'xdm' => 'application/vnd.syncml.dm+xml',\n 'xdp' => 'application/vnd.adobe.xdp+xml',\n 'xdssc' => 'application/dssc+xml',\n 'xdw' => 'application/vnd.fujixerox.docuworks',\n 'xel' => 'application/xcap-el+xml',\n 'xenc' => 'application/xenc+xml',\n 'xer' => 'application/patch-ops-error+xml',\n 'xfdf' => 'application/xfdf',\n 'xfdl' => 'application/vnd.xfdl',\n 'xht' => 'application/xhtml+xml',\n 'xhtm' => 'application/vnd.pwg-xhtml-print+xml',\n 'xhtml' => 'application/xhtml+xml',\n 'xhvml' => 'application/xv+xml',\n 'xif' => 'image/vnd.xiff',\n 'xl' => 'application/excel',\n 'xla' => 'application/vnd.ms-excel',\n 'xlam' => 'application/vnd.ms-excel.addin.macroEnabled.12',\n 'xlc' => 'application/vnd.ms-excel',\n 'xlf' => 'application/xliff+xml',\n 'xlm' => 'application/vnd.ms-excel',\n 'xls' => 'application/vnd.ms-excel',\n 'xlsb' => 'application/vnd.ms-excel.sheet.binary.macroEnabled.12',\n 'xlsm' => 'application/vnd.ms-excel.sheet.macroEnabled.12',\n 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n 'xlt' => 'application/vnd.ms-excel',\n 'xltm' => 'application/vnd.ms-excel.template.macroEnabled.12',\n 'xltx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',\n 'xlw' => 'application/vnd.ms-excel',\n 'xm' => 'audio/xm',\n 'xml' => 'application/xml',\n 'xns' => 'application/xcap-ns+xml',\n 'xo' => 'application/vnd.olpc-sugar',\n 'xop' => 'application/xop+xml',\n 'xpi' => 'application/x-xpinstall',\n 'xpl' => 'application/xproc+xml',\n 'xpm' => 'image/x-xpixmap',\n 'xpr' => 'application/vnd.is-xpr',\n 'xps' => 'application/vnd.ms-xpsdocument',\n 'xpw' => 'application/vnd.intercon.formnet',\n 'xpx' => 'application/vnd.intercon.formnet',\n 'xsd' => 'application/xml',\n 'xsf' => 'application/prs.xsf+xml',\n 'xsl' => 'application/xml',\n 'xslt' => 'application/xslt+xml',\n 'xsm' => 'application/vnd.syncml+xml',\n 'xspf' => 'application/xspf+xml',\n 'xul' => 'application/vnd.mozilla.xul+xml',\n 'xvm' => 'application/xv+xml',\n 'xvml' => 'application/xv+xml',\n 'xwd' => 'image/x-xwindowdump',\n 'xyz' => 'chemical/x-xyz',\n 'xz' => 'application/x-xz',\n 'yaml' => 'text/yaml',\n 'yang' => 'application/yang',\n 'yin' => 'application/yin+xml',\n 'yml' => 'text/yaml',\n 'ymp' => 'text/x-suse-ymp',\n 'z' => 'application/x-compress',\n 'z1' => 'application/x-zmachine',\n 'z2' => 'application/x-zmachine',\n 'z3' => 'application/x-zmachine',\n 'z4' => 'application/x-zmachine',\n 'z5' => 'application/x-zmachine',\n 'z6' => 'application/x-zmachine',\n 'z7' => 'application/x-zmachine',\n 'z8' => 'application/x-zmachine',\n 'zaz' => 'application/vnd.zzazz.deck+xml',\n 'zip' => 'application/zip',\n 'zir' => 'application/vnd.zul',\n 'zirz' => 'application/vnd.zul',\n 'zmm' => 'application/vnd.handheld-entertainment+xml',\n 'zsh' => 'text/x-scriptzsh',\n);
const EXTENSIONS_FOR_MIME_TYPES = array (\n 'application/andrew-inset' => \n array (\n 0 => 'ez',\n ),\n 'application/appinstaller' => \n array (\n 0 => 'appinstaller',\n ),\n 'application/applixware' => \n array (\n 0 => 'aw',\n ),\n 'application/appx' => \n array (\n 0 => 'appx',\n ),\n 'application/appxbundle' => \n array (\n 0 => 'appxbundle',\n ),\n 'application/atom+xml' => \n array (\n 0 => 'atom',\n ),\n 'application/atomcat+xml' => \n array (\n 0 => 'atomcat',\n ),\n 'application/atomdeleted+xml' => \n array (\n 0 => 'atomdeleted',\n ),\n 'application/atomsvc+xml' => \n array (\n 0 => 'atomsvc',\n ),\n 'application/atsc-dwd+xml' => \n array (\n 0 => 'dwd',\n ),\n 'application/atsc-held+xml' => \n array (\n 0 => 'held',\n ),\n 'application/atsc-rsat+xml' => \n array (\n 0 => 'rsat',\n ),\n 'application/automationml-aml+xml' => \n array (\n 0 => 'aml',\n ),\n 'application/automationml-amlx+zip' => \n array (\n 0 => 'amlx',\n ),\n 'application/bdoc' => \n array (\n 0 => 'bdoc',\n ),\n 'application/calendar+xml' => \n array (\n 0 => 'xcs',\n ),\n 'application/ccxml+xml' => \n array (\n 0 => 'ccxml',\n ),\n 'application/cdfx+xml' => \n array (\n 0 => 'cdfx',\n ),\n 'application/cdmi-capability' => \n array (\n 0 => 'cdmia',\n ),\n 'application/cdmi-container' => \n array (\n 0 => 'cdmic',\n ),\n 'application/cdmi-domain' => \n array (\n 0 => 'cdmid',\n ),\n 'application/cdmi-object' => \n array (\n 0 => 'cdmio',\n ),\n 'application/cdmi-queue' => \n array (\n 0 => 'cdmiq',\n ),\n 'application/cpl+xml' => \n array (\n 0 => 'cpl',\n ),\n 'application/cu-seeme' => \n array (\n 0 => 'cu',\n ),\n 'application/cwl' => \n array (\n 0 => 'cwl',\n ),\n 'application/dash+xml' => \n array (\n 0 => 'mpd',\n ),\n 'application/dash-patch+xml' => \n array (\n 0 => 'mpp',\n ),\n 'application/davmount+xml' => \n array (\n 0 => 'davmount',\n ),\n 'application/docbook+xml' => \n array (\n 0 => 'dbk',\n ),\n 'application/dssc+der' => \n array (\n 0 => 'dssc',\n ),\n 'application/dssc+xml' => \n array (\n 0 => 'xdssc',\n ),\n 'application/ecmascript' => \n array (\n 0 => 'ecma',\n ),\n 'application/emma+xml' => \n array (\n 0 => 'emma',\n ),\n 'application/emotionml+xml' => \n array (\n 0 => 'emotionml',\n ),\n 'application/epub+zip' => \n array (\n 0 => 'epub',\n ),\n 'application/exi' => \n array (\n 0 => 'exi',\n ),\n 'application/express' => \n array (\n 0 => 'exp',\n ),\n 'application/fdf' => \n array (\n 0 => 'fdf',\n ),\n 'application/fdt+xml' => \n array (\n 0 => 'fdt',\n ),\n 'application/font-tdpfr' => \n array (\n 0 => 'pfr',\n ),\n 'application/geo+json' => \n array (\n 0 => 'geojson',\n ),\n 'application/gml+xml' => \n array (\n 0 => 'gml',\n ),\n 'application/gpx+xml' => \n array (\n 0 => 'gpx',\n ),\n 'application/gxf' => \n array (\n 0 => 'gxf',\n ),\n 'application/gzip' => \n array (\n 0 => 'gz',\n 1 => 'gzip',\n ),\n 'application/hjson' => \n array (\n 0 => 'hjson',\n ),\n 'application/hyperstudio' => \n array (\n 0 => 'stk',\n ),\n 'application/inkml+xml' => \n array (\n 0 => 'ink',\n 1 => 'inkml',\n ),\n 'application/ipfix' => \n array (\n 0 => 'ipfix',\n ),\n 'application/its+xml' => \n array (\n 0 => 'its',\n ),\n 'application/java-archive' => \n array (\n 0 => 'jar',\n 1 => 'war',\n 2 => 'ear',\n ),\n 'application/java-serialized-object' => \n array (\n 0 => 'ser',\n ),\n 'application/java-vm' => \n array (\n 0 => 'class',\n ),\n 'application/javascript' => \n array (\n 0 => 'js',\n ),\n 'application/json' => \n array (\n 0 => 'json',\n 1 => 'map',\n ),\n 'application/json5' => \n array (\n 0 => 'json5',\n ),\n 'application/jsonml+json' => \n array (\n 0 => 'jsonml',\n ),\n 'application/ld+json' => \n array (\n 0 => 'jsonld',\n ),\n 'application/lgr+xml' => \n array (\n 0 => 'lgr',\n ),\n 'application/lost+xml' => \n array (\n 0 => 'lostxml',\n ),\n 'application/mac-binhex40' => \n array (\n 0 => 'hqx',\n ),\n 'application/mac-compactpro' => \n array (\n 0 => 'cpt',\n ),\n 'application/mads+xml' => \n array (\n 0 => 'mads',\n ),\n 'application/manifest+json' => \n array (\n 0 => 'webmanifest',\n ),\n 'application/marc' => \n array (\n 0 => 'mrc',\n ),\n 'application/marcxml+xml' => \n array (\n 0 => 'mrcx',\n ),\n 'application/mathematica' => \n array (\n 0 => 'ma',\n 1 => 'nb',\n 2 => 'mb',\n ),\n 'application/mathml+xml' => \n array (\n 0 => 'mathml',\n ),\n 'application/mbox' => \n array (\n 0 => 'mbox',\n ),\n 'application/media-policy-dataset+xml' => \n array (\n 0 => 'mpf',\n ),\n 'application/mediaservercontrol+xml' => \n array (\n 0 => 'mscml',\n ),\n 'application/metalink+xml' => \n array (\n 0 => 'metalink',\n ),\n 'application/metalink4+xml' => \n array (\n 0 => 'meta4',\n ),\n 'application/mets+xml' => \n array (\n 0 => 'mets',\n ),\n 'application/mmt-aei+xml' => \n array (\n 0 => 'maei',\n ),\n 'application/mmt-usd+xml' => \n array (\n 0 => 'musd',\n ),\n 'application/mods+xml' => \n array (\n 0 => 'mods',\n ),\n 'application/mp21' => \n array (\n 0 => 'm21',\n 1 => 'mp21',\n ),\n 'application/mp4' => \n array (\n 0 => 'mp4',\n 1 => 'mpg4',\n 2 => 'mp4s',\n 3 => 'm4p',\n ),\n 'application/msix' => \n array (\n 0 => 'msix',\n ),\n 'application/msixbundle' => \n array (\n 0 => 'msixbundle',\n ),\n 'application/msword' => \n array (\n 0 => 'doc',\n 1 => 'dot',\n 2 => 'word',\n ),\n 'application/mxf' => \n array (\n 0 => 'mxf',\n ),\n 'application/n-quads' => \n array (\n 0 => 'nq',\n ),\n 'application/n-triples' => \n array (\n 0 => 'nt',\n ),\n 'application/node' => \n array (\n 0 => 'cjs',\n ),\n 'application/octet-stream' => \n array (\n 0 => 'bin',\n 1 => 'dms',\n 2 => 'lrf',\n 3 => 'mar',\n 4 => 'so',\n 5 => 'dist',\n 6 => 'distz',\n 7 => 'pkg',\n 8 => 'bpk',\n 9 => 'dump',\n 10 => 'elc',\n 11 => 'deploy',\n 12 => 'exe',\n 13 => 'dll',\n 14 => 'deb',\n 15 => 'dmg',\n 16 => 'iso',\n 17 => 'img',\n 18 => 'msi',\n 19 => 'msp',\n 20 => 'msm',\n 21 => 'buffer',\n 22 => 'phar',\n 23 => 'lha',\n 24 => 'lzh',\n 25 => 'class',\n 26 => 'sea',\n 27 => 'dmn',\n 28 => 'bpmn',\n 29 => 'kdb',\n 30 => 'sst',\n 31 => 'csr',\n 32 => 'dst',\n 33 => 'pv',\n 34 => 'pxf',\n ),\n 'application/oda' => \n array (\n 0 => 'oda',\n ),\n 'application/oebps-package+xml' => \n array (\n 0 => 'opf',\n ),\n 'application/ogg' => \n array (\n 0 => 'ogx',\n ),\n 'application/omdoc+xml' => \n array (\n 0 => 'omdoc',\n ),\n 'application/onenote' => \n array (\n 0 => 'onetoc',\n 1 => 'onetoc2',\n 2 => 'onetmp',\n 3 => 'onepkg',\n ),\n 'application/oxps' => \n array (\n 0 => 'oxps',\n ),\n 'application/p2p-overlay+xml' => \n array (\n 0 => 'relo',\n ),\n 'application/patch-ops-error+xml' => \n array (\n 0 => 'xer',\n ),\n 'application/pdf' => \n array (\n 0 => 'pdf',\n 1 => 'ai',\n ),\n 'application/pgp-encrypted' => \n array (\n 0 => 'pgp',\n ),\n 'application/pgp-keys' => \n array (\n 0 => 'asc',\n ),\n 'application/pgp-signature' => \n array (\n 0 => 'sig',\n 1 => 'asc',\n ),\n 'application/pics-rules' => \n array (\n 0 => 'prf',\n ),\n 'application/pkcs10' => \n array (\n 0 => 'p10',\n ),\n 'application/pkcs7-mime' => \n array (\n 0 => 'p7m',\n 1 => 'p7c',\n ),\n 'application/pkcs7-signature' => \n array (\n 0 => 'p7s',\n ),\n 'application/pkcs8' => \n array (\n 0 => 'p8',\n ),\n 'application/pkix-attr-cert' => \n array (\n 0 => 'ac',\n ),\n 'application/pkix-cert' => \n array (\n 0 => 'cer',\n ),\n 'application/pkix-crl' => \n array (\n 0 => 'crl',\n ),\n 'application/pkix-pkipath' => \n array (\n 0 => 'pkipath',\n ),\n 'application/pkixcmp' => \n array (\n 0 => 'pki',\n ),\n 'application/pls+xml' => \n array (\n 0 => 'pls',\n ),\n 'application/postscript' => \n array (\n 0 => 'ai',\n 1 => 'eps',\n 2 => 'ps',\n ),\n 'application/provenance+xml' => \n array (\n 0 => 'provx',\n ),\n 'application/prs.cww' => \n array (\n 0 => 'cww',\n ),\n 'application/prs.xsf+xml' => \n array (\n 0 => 'xsf',\n ),\n 'application/pskc+xml' => \n array (\n 0 => 'pskcxml',\n ),\n 'application/raml+yaml' => \n array (\n 0 => 'raml',\n ),\n 'application/rdf+xml' => \n array (\n 0 => 'rdf',\n 1 => 'owl',\n ),\n 'application/reginfo+xml' => \n array (\n 0 => 'rif',\n ),\n 'application/relax-ng-compact-syntax' => \n array (\n 0 => 'rnc',\n ),\n 'application/resource-lists+xml' => \n array (\n 0 => 'rl',\n ),\n 'application/resource-lists-diff+xml' => \n array (\n 0 => 'rld',\n ),\n 'application/rls-services+xml' => \n array (\n 0 => 'rs',\n ),\n 'application/route-apd+xml' => \n array (\n 0 => 'rapd',\n ),\n 'application/route-s-tsid+xml' => \n array (\n 0 => 'sls',\n ),\n 'application/route-usd+xml' => \n array (\n 0 => 'rusd',\n ),\n 'application/rpki-ghostbusters' => \n array (\n 0 => 'gbr',\n ),\n 'application/rpki-manifest' => \n array (\n 0 => 'mft',\n ),\n 'application/rpki-roa' => \n array (\n 0 => 'roa',\n ),\n 'application/rsd+xml' => \n array (\n 0 => 'rsd',\n ),\n 'application/rss+xml' => \n array (\n 0 => 'rss',\n ),\n 'application/rtf' => \n array (\n 0 => 'rtf',\n ),\n 'application/sbml+xml' => \n array (\n 0 => 'sbml',\n ),\n 'application/scvp-cv-request' => \n array (\n 0 => 'scq',\n ),\n 'application/scvp-cv-response' => \n array (\n 0 => 'scs',\n ),\n 'application/scvp-vp-request' => \n array (\n 0 => 'spq',\n ),\n 'application/scvp-vp-response' => \n array (\n 0 => 'spp',\n ),\n 'application/sdp' => \n array (\n 0 => 'sdp',\n ),\n 'application/senml+xml' => \n array (\n 0 => 'senmlx',\n ),\n 'application/sensml+xml' => \n array (\n 0 => 'sensmlx',\n ),\n 'application/set-payment-initiation' => \n array (\n 0 => 'setpay',\n ),\n 'application/set-registration-initiation' => \n array (\n 0 => 'setreg',\n ),\n 'application/shf+xml' => \n array (\n 0 => 'shf',\n ),\n 'application/sieve' => \n array (\n 0 => 'siv',\n 1 => 'sieve',\n ),\n 'application/smil+xml' => \n array (\n 0 => 'smi',\n 1 => 'smil',\n ),\n 'application/sparql-query' => \n array (\n 0 => 'rq',\n ),\n 'application/sparql-results+xml' => \n array (\n 0 => 'srx',\n ),\n 'application/sql' => \n array (\n 0 => 'sql',\n ),\n 'application/srgs' => \n array (\n 0 => 'gram',\n ),\n 'application/srgs+xml' => \n array (\n 0 => 'grxml',\n ),\n 'application/sru+xml' => \n array (\n 0 => 'sru',\n ),\n 'application/ssdl+xml' => \n array (\n 0 => 'ssdl',\n ),\n 'application/ssml+xml' => \n array (\n 0 => 'ssml',\n ),\n 'application/swid+xml' => \n array (\n 0 => 'swidtag',\n ),\n 'application/tei+xml' => \n array (\n 0 => 'tei',\n 1 => 'teicorpus',\n ),\n 'application/thraud+xml' => \n array (\n 0 => 'tfi',\n ),\n 'application/timestamped-data' => \n array (\n 0 => 'tsd',\n ),\n 'application/toml' => \n array (\n 0 => 'toml',\n ),\n 'application/trig' => \n array (\n 0 => 'trig',\n ),\n 'application/ttml+xml' => \n array (\n 0 => 'ttml',\n ),\n 'application/ubjson' => \n array (\n 0 => 'ubj',\n ),\n 'application/urc-ressheet+xml' => \n array (\n 0 => 'rsheet',\n ),\n 'application/urc-targetdesc+xml' => \n array (\n 0 => 'td',\n ),\n 'application/vnd.1000minds.decision-model+xml' => \n array (\n 0 => '1km',\n ),\n 'application/vnd.3gpp.pic-bw-large' => \n array (\n 0 => 'plb',\n ),\n 'application/vnd.3gpp.pic-bw-small' => \n array (\n 0 => 'psb',\n ),\n 'application/vnd.3gpp.pic-bw-var' => \n array (\n 0 => 'pvb',\n ),\n 'application/vnd.3gpp2.tcap' => \n array (\n 0 => 'tcap',\n ),\n 'application/vnd.3m.post-it-notes' => \n array (\n 0 => 'pwn',\n ),\n 'application/vnd.accpac.simply.aso' => \n array (\n 0 => 'aso',\n ),\n 'application/vnd.accpac.simply.imp' => \n array (\n 0 => 'imp',\n ),\n 'application/vnd.acucobol' => \n array (\n 0 => 'acu',\n ),\n 'application/vnd.acucorp' => \n array (\n 0 => 'atc',\n 1 => 'acutc',\n ),\n 'application/vnd.adobe.air-application-installer-package+zip' => \n array (\n 0 => 'air',\n ),\n 'application/vnd.adobe.formscentral.fcdt' => \n array (\n 0 => 'fcdt',\n ),\n 'application/vnd.adobe.fxp' => \n array (\n 0 => 'fxp',\n 1 => 'fxpl',\n ),\n 'application/vnd.adobe.xdp+xml' => \n array (\n 0 => 'xdp',\n ),\n 'application/vnd.adobe.xfdf' => \n array (\n 0 => 'xfdf',\n ),\n 'application/vnd.age' => \n array (\n 0 => 'age',\n ),\n 'application/vnd.ahead.space' => \n array (\n 0 => 'ahead',\n ),\n 'application/vnd.airzip.filesecure.azf' => \n array (\n 0 => 'azf',\n ),\n 'application/vnd.airzip.filesecure.azs' => \n array (\n 0 => 'azs',\n ),\n 'application/vnd.amazon.ebook' => \n array (\n 0 => 'azw',\n ),\n 'application/vnd.americandynamics.acc' => \n array (\n 0 => 'acc',\n ),\n 'application/vnd.amiga.ami' => \n array (\n 0 => 'ami',\n ),\n 'application/vnd.android.package-archive' => \n array (\n 0 => 'apk',\n ),\n 'application/vnd.anser-web-certificate-issue-initiation' => \n array (\n 0 => 'cii',\n ),\n 'application/vnd.anser-web-funds-transfer-initiation' => \n array (\n 0 => 'fti',\n ),\n 'application/vnd.antix.game-component' => \n array (\n 0 => 'atx',\n ),\n 'application/vnd.apple.installer+xml' => \n array (\n 0 => 'mpkg',\n ),\n 'application/vnd.apple.keynote' => \n array (\n 0 => 'key',\n ),\n 'application/vnd.apple.mpegurl' => \n array (\n 0 => 'm3u8',\n ),\n 'application/vnd.apple.numbers' => \n array (\n 0 => 'numbers',\n ),\n 'application/vnd.apple.pages' => \n array (\n 0 => 'pages',\n ),\n 'application/vnd.apple.pkpass' => \n array (\n 0 => 'pkpass',\n ),\n 'application/vnd.aristanetworks.swi' => \n array (\n 0 => 'swi',\n ),\n 'application/vnd.astraea-software.iota' => \n array (\n 0 => 'iota',\n ),\n 'application/vnd.audiograph' => \n array (\n 0 => 'aep',\n ),\n 'application/vnd.balsamiq.bmml+xml' => \n array (\n 0 => 'bmml',\n ),\n 'application/vnd.blueice.multipass' => \n array (\n 0 => 'mpm',\n ),\n 'application/vnd.bmi' => \n array (\n 0 => 'bmi',\n ),\n 'application/vnd.businessobjects' => \n array (\n 0 => 'rep',\n ),\n 'application/vnd.chemdraw+xml' => \n array (\n 0 => 'cdxml',\n ),\n 'application/vnd.chipnuts.karaoke-mmd' => \n array (\n 0 => 'mmd',\n ),\n 'application/vnd.cinderella' => \n array (\n 0 => 'cdy',\n ),\n 'application/vnd.citationstyles.style+xml' => \n array (\n 0 => 'csl',\n ),\n 'application/vnd.claymore' => \n array (\n 0 => 'cla',\n ),\n 'application/vnd.cloanto.rp9' => \n array (\n 0 => 'rp9',\n ),\n 'application/vnd.clonk.c4group' => \n array (\n 0 => 'c4g',\n 1 => 'c4d',\n 2 => 'c4f',\n 3 => 'c4p',\n 4 => 'c4u',\n ),\n 'application/vnd.cluetrust.cartomobile-config' => \n array (\n 0 => 'c11amc',\n ),\n 'application/vnd.cluetrust.cartomobile-config-pkg' => \n array (\n 0 => 'c11amz',\n ),\n 'application/vnd.commonspace' => \n array (\n 0 => 'csp',\n ),\n 'application/vnd.contact.cmsg' => \n array (\n 0 => 'cdbcmsg',\n ),\n 'application/vnd.cosmocaller' => \n array (\n 0 => 'cmc',\n ),\n 'application/vnd.crick.clicker' => \n array (\n 0 => 'clkx',\n ),\n 'application/vnd.crick.clicker.keyboard' => \n array (\n 0 => 'clkk',\n ),\n 'application/vnd.crick.clicker.palette' => \n array (\n 0 => 'clkp',\n ),\n 'application/vnd.crick.clicker.template' => \n array (\n 0 => 'clkt',\n ),\n 'application/vnd.crick.clicker.wordbank' => \n array (\n 0 => 'clkw',\n ),\n 'application/vnd.criticaltools.wbs+xml' => \n array (\n 0 => 'wbs',\n ),\n 'application/vnd.ctc-posml' => \n array (\n 0 => 'pml',\n ),\n 'application/vnd.cups-ppd' => \n array (\n 0 => 'ppd',\n ),\n 'application/vnd.curl.car' => \n array (\n 0 => 'car',\n ),\n 'application/vnd.curl.pcurl' => \n array (\n 0 => 'pcurl',\n ),\n 'application/vnd.dart' => \n array (\n 0 => 'dart',\n ),\n 'application/vnd.data-vision.rdz' => \n array (\n 0 => 'rdz',\n ),\n 'application/vnd.dbf' => \n array (\n 0 => 'dbf',\n ),\n 'application/vnd.dece.data' => \n array (\n 0 => 'uvf',\n 1 => 'uvvf',\n 2 => 'uvd',\n 3 => 'uvvd',\n ),\n 'application/vnd.dece.ttml+xml' => \n array (\n 0 => 'uvt',\n 1 => 'uvvt',\n ),\n 'application/vnd.dece.unspecified' => \n array (\n 0 => 'uvx',\n 1 => 'uvvx',\n ),\n 'application/vnd.dece.zip' => \n array (\n 0 => 'uvz',\n 1 => 'uvvz',\n ),\n 'application/vnd.denovo.fcselayout-link' => \n array (\n 0 => 'fe_launch',\n ),\n 'application/vnd.dna' => \n array (\n 0 => 'dna',\n ),\n 'application/vnd.dolby.mlp' => \n array (\n 0 => 'mlp',\n ),\n 'application/vnd.dpgraph' => \n array (\n 0 => 'dpg',\n ),\n 'application/vnd.dreamfactory' => \n array (\n 0 => 'dfac',\n ),\n 'application/vnd.ds-keypoint' => \n array (\n 0 => 'kpxx',\n ),\n 'application/vnd.dvb.ait' => \n array (\n 0 => 'ait',\n ),\n 'application/vnd.dvb.service' => \n array (\n 0 => 'svc',\n ),\n 'application/vnd.dynageo' => \n array (\n 0 => 'geo',\n ),\n 'application/vnd.ecowin.chart' => \n array (\n 0 => 'mag',\n ),\n 'application/vnd.enliven' => \n array (\n 0 => 'nml',\n ),\n 'application/vnd.epson.esf' => \n array (\n 0 => 'esf',\n ),\n 'application/vnd.epson.msf' => \n array (\n 0 => 'msf',\n ),\n 'application/vnd.epson.quickanime' => \n array (\n 0 => 'qam',\n ),\n 'application/vnd.epson.salt' => \n array (\n 0 => 'slt',\n ),\n 'application/vnd.epson.ssf' => \n array (\n 0 => 'ssf',\n ),\n 'application/vnd.eszigno3+xml' => \n array (\n 0 => 'es3',\n 1 => 'et3',\n ),\n 'application/vnd.ezpix-album' => \n array (\n 0 => 'ez2',\n ),\n 'application/vnd.ezpix-package' => \n array (\n 0 => 'ez3',\n ),\n 'application/vnd.fdf' => \n array (\n 0 => 'fdf',\n ),\n 'application/vnd.fdsn.mseed' => \n array (\n 0 => 'mseed',\n ),\n 'application/vnd.fdsn.seed' => \n array (\n 0 => 'seed',\n 1 => 'dataless',\n ),\n 'application/vnd.flographit' => \n array (\n 0 => 'gph',\n ),\n 'application/vnd.fluxtime.clip' => \n array (\n 0 => 'ftc',\n ),\n 'application/vnd.framemaker' => \n array (\n 0 => 'fm',\n 1 => 'frame',\n 2 => 'maker',\n 3 => 'book',\n ),\n 'application/vnd.frogans.fnc' => \n array (\n 0 => 'fnc',\n ),\n 'application/vnd.frogans.ltf' => \n array (\n 0 => 'ltf',\n ),\n 'application/vnd.fsc.weblaunch' => \n array (\n 0 => 'fsc',\n ),\n 'application/vnd.fujitsu.oasys' => \n array (\n 0 => 'oas',\n ),\n 'application/vnd.fujitsu.oasys2' => \n array (\n 0 => 'oa2',\n ),\n 'application/vnd.fujitsu.oasys3' => \n array (\n 0 => 'oa3',\n ),\n 'application/vnd.fujitsu.oasysgp' => \n array (\n 0 => 'fg5',\n ),\n 'application/vnd.fujitsu.oasysprs' => \n array (\n 0 => 'bh2',\n ),\n 'application/vnd.fujixerox.ddd' => \n array (\n 0 => 'ddd',\n ),\n 'application/vnd.fujixerox.docuworks' => \n array (\n 0 => 'xdw',\n ),\n 'application/vnd.fujixerox.docuworks.binder' => \n array (\n 0 => 'xbd',\n ),\n 'application/vnd.fuzzysheet' => \n array (\n 0 => 'fzs',\n ),\n 'application/vnd.genomatix.tuxedo' => \n array (\n 0 => 'txd',\n ),\n 'application/vnd.geogebra.file' => \n array (\n 0 => 'ggb',\n ),\n 'application/vnd.geogebra.tool' => \n array (\n 0 => 'ggt',\n ),\n 'application/vnd.geometry-explorer' => \n array (\n 0 => 'gex',\n 1 => 'gre',\n ),\n 'application/vnd.geonext' => \n array (\n 0 => 'gxt',\n ),\n 'application/vnd.geoplan' => \n array (\n 0 => 'g2w',\n ),\n 'application/vnd.geospace' => \n array (\n 0 => 'g3w',\n ),\n 'application/vnd.gmx' => \n array (\n 0 => 'gmx',\n ),\n 'application/vnd.google-apps.document' => \n array (\n 0 => 'gdoc',\n ),\n 'application/vnd.google-apps.presentation' => \n array (\n 0 => 'gslides',\n ),\n 'application/vnd.google-apps.spreadsheet' => \n array (\n 0 => 'gsheet',\n ),\n 'application/vnd.google-earth.kml+xml' => \n array (\n 0 => 'kml',\n ),\n 'application/vnd.google-earth.kmz' => \n array (\n 0 => 'kmz',\n ),\n 'application/vnd.grafeq' => \n array (\n 0 => 'gqf',\n 1 => 'gqs',\n ),\n 'application/vnd.groove-account' => \n array (\n 0 => 'gac',\n ),\n 'application/vnd.groove-help' => \n array (\n 0 => 'ghf',\n ),\n 'application/vnd.groove-identity-message' => \n array (\n 0 => 'gim',\n ),\n 'application/vnd.groove-injector' => \n array (\n 0 => 'grv',\n ),\n 'application/vnd.groove-tool-message' => \n array (\n 0 => 'gtm',\n ),\n 'application/vnd.groove-tool-template' => \n array (\n 0 => 'tpl',\n ),\n 'application/vnd.groove-vcard' => \n array (\n 0 => 'vcg',\n ),\n 'application/vnd.hal+xml' => \n array (\n 0 => 'hal',\n ),\n 'application/vnd.handheld-entertainment+xml' => \n array (\n 0 => 'zmm',\n ),\n 'application/vnd.hbci' => \n array (\n 0 => 'hbci',\n ),\n 'application/vnd.hhe.lesson-player' => \n array (\n 0 => 'les',\n ),\n 'application/vnd.hp-hpgl' => \n array (\n 0 => 'hpgl',\n ),\n 'application/vnd.hp-hpid' => \n array (\n 0 => 'hpid',\n ),\n 'application/vnd.hp-hps' => \n array (\n 0 => 'hps',\n ),\n 'application/vnd.hp-jlyt' => \n array (\n 0 => 'jlt',\n ),\n 'application/vnd.hp-pcl' => \n array (\n 0 => 'pcl',\n ),\n 'application/vnd.hp-pclxl' => \n array (\n 0 => 'pclxl',\n ),\n 'application/vnd.hydrostatix.sof-data' => \n array (\n 0 => 'sfd-hdstx',\n ),\n 'application/vnd.ibm.minipay' => \n array (\n 0 => 'mpy',\n ),\n 'application/vnd.ibm.modcap' => \n array (\n 0 => 'afp',\n 1 => 'listafp',\n 2 => 'list3820',\n ),\n 'application/vnd.ibm.rights-management' => \n array (\n 0 => 'irm',\n ),\n 'application/vnd.ibm.secure-container' => \n array (\n 0 => 'sc',\n ),\n 'application/vnd.iccprofile' => \n array (\n 0 => 'icc',\n 1 => 'icm',\n ),\n 'application/vnd.igloader' => \n array (\n 0 => 'igl',\n ),\n 'application/vnd.immervision-ivp' => \n array (\n 0 => 'ivp',\n ),\n 'application/vnd.immervision-ivu' => \n array (\n 0 => 'ivu',\n ),\n 'application/vnd.insors.igm' => \n array (\n 0 => 'igm',\n ),\n 'application/vnd.intercon.formnet' => \n array (\n 0 => 'xpw',\n 1 => 'xpx',\n ),\n 'application/vnd.intergeo' => \n array (\n 0 => 'i2g',\n ),\n 'application/vnd.intu.qbo' => \n array (\n 0 => 'qbo',\n ),\n 'application/vnd.intu.qfx' => \n array (\n 0 => 'qfx',\n ),\n 'application/vnd.ipunplugged.rcprofile' => \n array (\n 0 => 'rcprofile',\n ),\n 'application/vnd.irepository.package+xml' => \n array (\n 0 => 'irp',\n ),\n 'application/vnd.is-xpr' => \n array (\n 0 => 'xpr',\n ),\n 'application/vnd.isac.fcs' => \n array (\n 0 => 'fcs',\n ),\n 'application/vnd.jam' => \n array (\n 0 => 'jam',\n ),\n 'application/vnd.jcp.javame.midlet-rms' => \n array (\n 0 => 'rms',\n ),\n 'application/vnd.jisp' => \n array (\n 0 => 'jisp',\n ),\n 'application/vnd.joost.joda-archive' => \n array (\n 0 => 'joda',\n ),\n 'application/vnd.kahootz' => \n array (\n 0 => 'ktz',\n 1 => 'ktr',\n ),\n 'application/vnd.kde.karbon' => \n array (\n 0 => 'karbon',\n ),\n 'application/vnd.kde.kchart' => \n array (\n 0 => 'chrt',\n ),\n 'application/vnd.kde.kformula' => \n array (\n 0 => 'kfo',\n ),\n 'application/vnd.kde.kivio' => \n array (\n 0 => 'flw',\n ),\n 'application/vnd.kde.kontour' => \n array (\n 0 => 'kon',\n ),\n 'application/vnd.kde.kpresenter' => \n array (\n 0 => 'kpr',\n 1 => 'kpt',\n ),\n 'application/vnd.kde.kspread' => \n array (\n 0 => 'ksp',\n ),\n 'application/vnd.kde.kword' => \n array (\n 0 => 'kwd',\n 1 => 'kwt',\n ),\n 'application/vnd.kenameaapp' => \n array (\n 0 => 'htke',\n ),\n 'application/vnd.kidspiration' => \n array (\n 0 => 'kia',\n ),\n 'application/vnd.kinar' => \n array (\n 0 => 'kne',\n 1 => 'knp',\n ),\n 'application/vnd.koan' => \n array (\n 0 => 'skp',\n 1 => 'skd',\n 2 => 'skt',\n 3 => 'skm',\n ),\n 'application/vnd.kodak-descriptor' => \n array (\n 0 => 'sse',\n ),\n 'application/vnd.las.las+xml' => \n array (\n 0 => 'lasxml',\n ),\n 'application/vnd.llamagraphics.life-balance.desktop' => \n array (\n 0 => 'lbd',\n ),\n 'application/vnd.llamagraphics.life-balance.exchange+xml' => \n array (\n 0 => 'lbe',\n ),\n 'application/vnd.lotus-1-2-3' => \n array (\n 0 => '123',\n ),\n 'application/vnd.lotus-approach' => \n array (\n 0 => 'apr',\n ),\n 'application/vnd.lotus-freelance' => \n array (\n 0 => 'pre',\n ),\n 'application/vnd.lotus-notes' => \n array (\n 0 => 'nsf',\n ),\n 'application/vnd.lotus-organizer' => \n array (\n 0 => 'org',\n ),\n 'application/vnd.lotus-screencam' => \n array (\n 0 => 'scm',\n ),\n 'application/vnd.lotus-wordpro' => \n array (\n 0 => 'lwp',\n ),\n 'application/vnd.macports.portpkg' => \n array (\n 0 => 'portpkg',\n ),\n 'application/vnd.mapbox-vector-tile' => \n array (\n 0 => 'mvt',\n ),\n 'application/vnd.mcd' => \n array (\n 0 => 'mcd',\n ),\n 'application/vnd.medcalcdata' => \n array (\n 0 => 'mc1',\n ),\n 'application/vnd.mediastation.cdkey' => \n array (\n 0 => 'cdkey',\n ),\n 'application/vnd.mfer' => \n array (\n 0 => 'mwf',\n ),\n 'application/vnd.mfmp' => \n array (\n 0 => 'mfm',\n ),\n 'application/vnd.micrografx.flo' => \n array (\n 0 => 'flo',\n ),\n 'application/vnd.micrografx.igx' => \n array (\n 0 => 'igx',\n ),\n 'application/vnd.mif' => \n array (\n 0 => 'mif',\n ),\n 'application/vnd.mobius.daf' => \n array (\n 0 => 'daf',\n ),\n 'application/vnd.mobius.dis' => \n array (\n 0 => 'dis',\n ),\n 'application/vnd.mobius.mbk' => \n array (\n 0 => 'mbk',\n ),\n 'application/vnd.mobius.mqy' => \n array (\n 0 => 'mqy',\n ),\n 'application/vnd.mobius.msl' => \n array (\n 0 => 'msl',\n ),\n 'application/vnd.mobius.plc' => \n array (\n 0 => 'plc',\n ),\n 'application/vnd.mobius.txf' => \n array (\n 0 => 'txf',\n ),\n 'application/vnd.mophun.application' => \n array (\n 0 => 'mpn',\n ),\n 'application/vnd.mophun.certificate' => \n array (\n 0 => 'mpc',\n ),\n 'application/vnd.mozilla.xul+xml' => \n array (\n 0 => 'xul',\n ),\n 'application/vnd.ms-artgalry' => \n array (\n 0 => 'cil',\n ),\n 'application/vnd.ms-cab-compressed' => \n array (\n 0 => 'cab',\n ),\n 'application/vnd.ms-excel' => \n array (\n 0 => 'xls',\n 1 => 'xlm',\n 2 => 'xla',\n 3 => 'xlc',\n 4 => 'xlt',\n 5 => 'xlw',\n ),\n 'application/vnd.ms-excel.addin.macroenabled.12' => \n array (\n 0 => 'xlam',\n ),\n 'application/vnd.ms-excel.sheet.binary.macroenabled.12' => \n array (\n 0 => 'xlsb',\n ),\n 'application/vnd.ms-excel.sheet.macroenabled.12' => \n array (\n 0 => 'xlsm',\n ),\n 'application/vnd.ms-excel.template.macroenabled.12' => \n array (\n 0 => 'xltm',\n ),\n 'application/vnd.ms-fontobject' => \n array (\n 0 => 'eot',\n ),\n 'application/vnd.ms-htmlhelp' => \n array (\n 0 => 'chm',\n ),\n 'application/vnd.ms-ims' => \n array (\n 0 => 'ims',\n ),\n 'application/vnd.ms-lrm' => \n array (\n 0 => 'lrm',\n ),\n 'application/vnd.ms-officetheme' => \n array (\n 0 => 'thmx',\n ),\n 'application/vnd.ms-outlook' => \n array (\n 0 => 'msg',\n ),\n 'application/vnd.ms-pki.seccat' => \n array (\n 0 => 'cat',\n ),\n 'application/vnd.ms-pki.stl' => \n array (\n 0 => 'stl',\n ),\n 'application/vnd.ms-powerpoint' => \n array (\n 0 => 'ppt',\n 1 => 'pps',\n 2 => 'pot',\n 3 => 'ppa',\n ),\n 'application/vnd.ms-powerpoint.addin.macroenabled.12' => \n array (\n 0 => 'ppam',\n ),\n 'application/vnd.ms-powerpoint.presentation.macroenabled.12' => \n array (\n 0 => 'pptm',\n ),\n 'application/vnd.ms-powerpoint.slide.macroenabled.12' => \n array (\n 0 => 'sldm',\n ),\n 'application/vnd.ms-powerpoint.slideshow.macroenabled.12' => \n array (\n 0 => 'ppsm',\n ),\n 'application/vnd.ms-powerpoint.template.macroenabled.12' => \n array (\n 0 => 'potm',\n ),\n 'application/vnd.ms-project' => \n array (\n 0 => 'mpp',\n 1 => 'mpt',\n ),\n 'application/vnd.ms-word.document.macroenabled.12' => \n array (\n 0 => 'docm',\n ),\n 'application/vnd.ms-word.template.macroenabled.12' => \n array (\n 0 => 'dotm',\n ),\n 'application/vnd.ms-works' => \n array (\n 0 => 'wps',\n 1 => 'wks',\n 2 => 'wcm',\n 3 => 'wdb',\n ),\n 'application/vnd.ms-wpl' => \n array (\n 0 => 'wpl',\n ),\n 'application/vnd.ms-xpsdocument' => \n array (\n 0 => 'xps',\n ),\n 'application/vnd.mseq' => \n array (\n 0 => 'mseq',\n ),\n 'application/vnd.musician' => \n array (\n 0 => 'mus',\n ),\n 'application/vnd.muvee.style' => \n array (\n 0 => 'msty',\n ),\n 'application/vnd.mynfc' => \n array (\n 0 => 'taglet',\n ),\n 'application/vnd.neurolanguage.nlu' => \n array (\n 0 => 'nlu',\n ),\n 'application/vnd.nitf' => \n array (\n 0 => 'ntf',\n 1 => 'nitf',\n ),\n 'application/vnd.noblenet-directory' => \n array (\n 0 => 'nnd',\n ),\n 'application/vnd.noblenet-sealer' => \n array (\n 0 => 'nns',\n ),\n 'application/vnd.noblenet-web' => \n array (\n 0 => 'nnw',\n ),\n 'application/vnd.nokia.n-gage.ac+xml' => \n array (\n 0 => 'ac',\n ),\n 'application/vnd.nokia.n-gage.data' => \n array (\n 0 => 'ngdat',\n ),\n 'application/vnd.nokia.n-gage.symbian.install' => \n array (\n 0 => 'n-gage',\n ),\n 'application/vnd.nokia.radio-preset' => \n array (\n 0 => 'rpst',\n ),\n 'application/vnd.nokia.radio-presets' => \n array (\n 0 => 'rpss',\n ),\n 'application/vnd.novadigm.edm' => \n array (\n 0 => 'edm',\n ),\n 'application/vnd.novadigm.edx' => \n array (\n 0 => 'edx',\n ),\n 'application/vnd.novadigm.ext' => \n array (\n 0 => 'ext',\n ),\n 'application/vnd.oasis.opendocument.chart' => \n array (\n 0 => 'odc',\n ),\n 'application/vnd.oasis.opendocument.chart-template' => \n array (\n 0 => 'otc',\n ),\n 'application/vnd.oasis.opendocument.database' => \n array (\n 0 => 'odb',\n ),\n 'application/vnd.oasis.opendocument.formula' => \n array (\n 0 => 'odf',\n ),\n 'application/vnd.oasis.opendocument.formula-template' => \n array (\n 0 => 'odft',\n ),\n 'application/vnd.oasis.opendocument.graphics' => \n array (\n 0 => 'odg',\n ),\n 'application/vnd.oasis.opendocument.graphics-template' => \n array (\n 0 => 'otg',\n ),\n 'application/vnd.oasis.opendocument.image' => \n array (\n 0 => 'odi',\n ),\n 'application/vnd.oasis.opendocument.image-template' => \n array (\n 0 => 'oti',\n ),\n 'application/vnd.oasis.opendocument.presentation' => \n array (\n 0 => 'odp',\n ),\n 'application/vnd.oasis.opendocument.presentation-template' => \n array (\n 0 => 'otp',\n ),\n 'application/vnd.oasis.opendocument.spreadsheet' => \n array (\n 0 => 'ods',\n ),\n 'application/vnd.oasis.opendocument.spreadsheet-template' => \n array (\n 0 => 'ots',\n ),\n 'application/vnd.oasis.opendocument.text' => \n array (\n 0 => 'odt',\n ),\n 'application/vnd.oasis.opendocument.text-master' => \n array (\n 0 => 'odm',\n ),\n 'application/vnd.oasis.opendocument.text-template' => \n array (\n 0 => 'ott',\n ),\n 'application/vnd.oasis.opendocument.text-web' => \n array (\n 0 => 'oth',\n ),\n 'application/vnd.olpc-sugar' => \n array (\n 0 => 'xo',\n ),\n 'application/vnd.oma.dd2+xml' => \n array (\n 0 => 'dd2',\n ),\n 'application/vnd.openblox.game+xml' => \n array (\n 0 => 'obgx',\n ),\n 'application/vnd.openofficeorg.extension' => \n array (\n 0 => 'oxt',\n ),\n 'application/vnd.openstreetmap.data+xml' => \n array (\n 0 => 'osm',\n ),\n 'application/vnd.openxmlformats-officedocument.presentationml.presentation' => \n array (\n 0 => 'pptx',\n ),\n 'application/vnd.openxmlformats-officedocument.presentationml.slide' => \n array (\n 0 => 'sldx',\n ),\n 'application/vnd.openxmlformats-officedocument.presentationml.slideshow' => \n array (\n 0 => 'ppsx',\n ),\n 'application/vnd.openxmlformats-officedocument.presentationml.template' => \n array (\n 0 => 'potx',\n ),\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' => \n array (\n 0 => 'xlsx',\n ),\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.template' => \n array (\n 0 => 'xltx',\n ),\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' => \n array (\n 0 => 'docx',\n ),\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.template' => \n array (\n 0 => 'dotx',\n ),\n 'application/vnd.osgeo.mapguide.package' => \n array (\n 0 => 'mgp',\n ),\n 'application/vnd.osgi.dp' => \n array (\n 0 => 'dp',\n ),\n 'application/vnd.osgi.subsystem' => \n array (\n 0 => 'esa',\n ),\n 'application/vnd.palm' => \n array (\n 0 => 'pdb',\n 1 => 'pqa',\n 2 => 'oprc',\n ),\n 'application/vnd.pawaafile' => \n array (\n 0 => 'paw',\n ),\n 'application/vnd.pg.format' => \n array (\n 0 => 'str',\n ),\n 'application/vnd.pg.osasli' => \n array (\n 0 => 'ei6',\n ),\n 'application/vnd.picsel' => \n array (\n 0 => 'efif',\n ),\n 'application/vnd.pmi.widget' => \n array (\n 0 => 'wg',\n ),\n 'application/vnd.pocketlearn' => \n array (\n 0 => 'plf',\n ),\n 'application/vnd.powerbuilder6' => \n array (\n 0 => 'pbd',\n ),\n 'application/vnd.previewsystems.box' => \n array (\n 0 => 'box',\n ),\n 'application/vnd.proteus.magazine' => \n array (\n 0 => 'mgz',\n ),\n 'application/vnd.publishare-delta-tree' => \n array (\n 0 => 'qps',\n ),\n 'application/vnd.pvi.ptid1' => \n array (\n 0 => 'ptid',\n ),\n 'application/vnd.pwg-xhtml-print+xml' => \n array (\n 0 => 'xhtm',\n ),\n 'application/vnd.quark.quarkxpress' => \n array (\n 0 => 'qxd',\n 1 => 'qxt',\n 2 => 'qwd',\n 3 => 'qwt',\n 4 => 'qxl',\n 5 => 'qxb',\n ),\n 'application/vnd.rar' => \n array (\n 0 => 'rar',\n ),\n 'application/vnd.realvnc.bed' => \n array (\n 0 => 'bed',\n ),\n 'application/vnd.recordare.musicxml' => \n array (\n 0 => 'mxl',\n ),\n 'application/vnd.recordare.musicxml+xml' => \n array (\n 0 => 'musicxml',\n ),\n 'application/vnd.rig.cryptonote' => \n array (\n 0 => 'cryptonote',\n ),\n 'application/vnd.rim.cod' => \n array (\n 0 => 'cod',\n ),\n 'application/vnd.rn-realmedia' => \n array (\n 0 => 'rm',\n ),\n 'application/vnd.rn-realmedia-vbr' => \n array (\n 0 => 'rmvb',\n ),\n 'application/vnd.route66.link66+xml' => \n array (\n 0 => 'link66',\n ),\n 'application/vnd.sailingtracker.track' => \n array (\n 0 => 'st',\n ),\n 'application/vnd.seemail' => \n array (\n 0 => 'see',\n ),\n 'application/vnd.sema' => \n array (\n 0 => 'sema',\n ),\n 'application/vnd.semd' => \n array (\n 0 => 'semd',\n ),\n 'application/vnd.semf' => \n array (\n 0 => 'semf',\n ),\n 'application/vnd.shana.informed.formdata' => \n array (\n 0 => 'ifm',\n ),\n 'application/vnd.shana.informed.formtemplate' => \n array (\n 0 => 'itp',\n ),\n 'application/vnd.shana.informed.interchange' => \n array (\n 0 => 'iif',\n ),\n 'application/vnd.shana.informed.package' => \n array (\n 0 => 'ipk',\n ),\n 'application/vnd.simtech-mindmapper' => \n array (\n 0 => 'twd',\n 1 => 'twds',\n ),\n 'application/vnd.smaf' => \n array (\n 0 => 'mmf',\n ),\n 'application/vnd.smart.teacher' => \n array (\n 0 => 'teacher',\n ),\n 'application/vnd.software602.filler.form+xml' => \n array (\n 0 => 'fo',\n ),\n 'application/vnd.solent.sdkm+xml' => \n array (\n 0 => 'sdkm',\n 1 => 'sdkd',\n ),\n 'application/vnd.spotfire.dxp' => \n array (\n 0 => 'dxp',\n ),\n 'application/vnd.spotfire.sfs' => \n array (\n 0 => 'sfs',\n ),\n 'application/vnd.stardivision.calc' => \n array (\n 0 => 'sdc',\n ),\n 'application/vnd.stardivision.draw' => \n array (\n 0 => 'sda',\n ),\n 'application/vnd.stardivision.impress' => \n array (\n 0 => 'sdd',\n ),\n 'application/vnd.stardivision.math' => \n array (\n 0 => 'smf',\n ),\n 'application/vnd.stardivision.writer' => \n array (\n 0 => 'sdw',\n 1 => 'vor',\n ),\n 'application/vnd.stardivision.writer-global' => \n array (\n 0 => 'sgl',\n ),\n 'application/vnd.stepmania.package' => \n array (\n 0 => 'smzip',\n ),\n 'application/vnd.stepmania.stepchart' => \n array (\n 0 => 'sm',\n ),\n 'application/vnd.sun.wadl+xml' => \n array (\n 0 => 'wadl',\n ),\n 'application/vnd.sun.xml.calc' => \n array (\n 0 => 'sxc',\n ),\n 'application/vnd.sun.xml.calc.template' => \n array (\n 0 => 'stc',\n ),\n 'application/vnd.sun.xml.draw' => \n array (\n 0 => 'sxd',\n ),\n 'application/vnd.sun.xml.draw.template' => \n array (\n 0 => 'std',\n ),\n 'application/vnd.sun.xml.impress' => \n array (\n 0 => 'sxi',\n ),\n 'application/vnd.sun.xml.impress.template' => \n array (\n 0 => 'sti',\n ),\n 'application/vnd.sun.xml.math' => \n array (\n 0 => 'sxm',\n ),\n 'application/vnd.sun.xml.writer' => \n array (\n 0 => 'sxw',\n ),\n 'application/vnd.sun.xml.writer.global' => \n array (\n 0 => 'sxg',\n ),\n 'application/vnd.sun.xml.writer.template' => \n array (\n 0 => 'stw',\n ),\n 'application/vnd.sus-calendar' => \n array (\n 0 => 'sus',\n 1 => 'susp',\n ),\n 'application/vnd.svd' => \n array (\n 0 => 'svd',\n ),\n 'application/vnd.symbian.install' => \n array (\n 0 => 'sis',\n 1 => 'sisx',\n ),\n 'application/vnd.syncml+xml' => \n array (\n 0 => 'xsm',\n ),\n 'application/vnd.syncml.dm+wbxml' => \n array (\n 0 => 'bdm',\n ),\n 'application/vnd.syncml.dm+xml' => \n array (\n 0 => 'xdm',\n ),\n 'application/vnd.syncml.dmddf+xml' => \n array (\n 0 => 'ddf',\n ),\n 'application/vnd.tao.intent-module-archive' => \n array (\n 0 => 'tao',\n ),\n 'application/vnd.tcpdump.pcap' => \n array (\n 0 => 'pcap',\n 1 => 'cap',\n 2 => 'dmp',\n ),\n 'application/vnd.tmobile-livetv' => \n array (\n 0 => 'tmo',\n ),\n 'application/vnd.trid.tpt' => \n array (\n 0 => 'tpt',\n ),\n 'application/vnd.triscape.mxs' => \n array (\n 0 => 'mxs',\n ),\n 'application/vnd.trueapp' => \n array (\n 0 => 'tra',\n ),\n 'application/vnd.ufdl' => \n array (\n 0 => 'ufd',\n 1 => 'ufdl',\n ),\n 'application/vnd.uiq.theme' => \n array (\n 0 => 'utz',\n ),\n 'application/vnd.umajin' => \n array (\n 0 => 'umj',\n ),\n 'application/vnd.unity' => \n array (\n 0 => 'unityweb',\n ),\n 'application/vnd.uoml+xml' => \n array (\n 0 => 'uoml',\n 1 => 'uo',\n ),\n 'application/vnd.vcx' => \n array (\n 0 => 'vcx',\n ),\n 'application/vnd.visio' => \n array (\n 0 => 'vsd',\n 1 => 'vst',\n 2 => 'vss',\n 3 => 'vsw',\n ),\n 'application/vnd.visionary' => \n array (\n 0 => 'vis',\n ),\n 'application/vnd.vsf' => \n array (\n 0 => 'vsf',\n ),\n 'application/vnd.wap.wbxml' => \n array (\n 0 => 'wbxml',\n ),\n 'application/vnd.wap.wmlc' => \n array (\n 0 => 'wmlc',\n ),\n 'application/vnd.wap.wmlscriptc' => \n array (\n 0 => 'wmlsc',\n ),\n 'application/vnd.webturbo' => \n array (\n 0 => 'wtb',\n ),\n 'application/vnd.wolfram.player' => \n array (\n 0 => 'nbp',\n ),\n 'application/vnd.wordperfect' => \n array (\n 0 => 'wpd',\n ),\n 'application/vnd.wqd' => \n array (\n 0 => 'wqd',\n ),\n 'application/vnd.wt.stf' => \n array (\n 0 => 'stf',\n ),\n 'application/vnd.xara' => \n array (\n 0 => 'xar',\n ),\n 'application/vnd.xfdl' => \n array (\n 0 => 'xfdl',\n ),\n 'application/vnd.yamaha.hv-dic' => \n array (\n 0 => 'hvd',\n ),\n 'application/vnd.yamaha.hv-script' => \n array (\n 0 => 'hvs',\n ),\n 'application/vnd.yamaha.hv-voice' => \n array (\n 0 => 'hvp',\n ),\n 'application/vnd.yamaha.openscoreformat' => \n array (\n 0 => 'osf',\n ),\n 'application/vnd.yamaha.openscoreformat.osfpvg+xml' => \n array (\n 0 => 'osfpvg',\n ),\n 'application/vnd.yamaha.smaf-audio' => \n array (\n 0 => 'saf',\n ),\n 'application/vnd.yamaha.smaf-phrase' => \n array (\n 0 => 'spf',\n ),\n 'application/vnd.yellowriver-custom-menu' => \n array (\n 0 => 'cmp',\n ),\n 'application/vnd.zul' => \n array (\n 0 => 'zir',\n 1 => 'zirz',\n ),\n 'application/vnd.zzazz.deck+xml' => \n array (\n 0 => 'zaz',\n ),\n 'application/voicexml+xml' => \n array (\n 0 => 'vxml',\n ),\n 'application/wasm' => \n array (\n 0 => 'wasm',\n ),\n 'application/watcherinfo+xml' => \n array (\n 0 => 'wif',\n ),\n 'application/widget' => \n array (\n 0 => 'wgt',\n ),\n 'application/winhlp' => \n array (\n 0 => 'hlp',\n ),\n 'application/wsdl+xml' => \n array (\n 0 => 'wsdl',\n ),\n 'application/wspolicy+xml' => \n array (\n 0 => 'wspolicy',\n ),\n 'application/x-7z-compressed' => \n array (\n 0 => '7z',\n 1 => '7zip',\n ),\n 'application/x-abiword' => \n array (\n 0 => 'abw',\n ),\n 'application/x-ace-compressed' => \n array (\n 0 => 'ace',\n ),\n 'application/x-apple-diskimage' => \n array (\n 0 => 'dmg',\n ),\n 'application/x-arj' => \n array (\n 0 => 'arj',\n ),\n 'application/x-authorware-bin' => \n array (\n 0 => 'aab',\n 1 => 'x32',\n 2 => 'u32',\n 3 => 'vox',\n ),\n 'application/x-authorware-map' => \n array (\n 0 => 'aam',\n ),\n 'application/x-authorware-seg' => \n array (\n 0 => 'aas',\n ),\n 'application/x-bcpio' => \n array (\n 0 => 'bcpio',\n ),\n 'application/x-bdoc' => \n array (\n 0 => 'bdoc',\n ),\n 'application/x-bittorrent' => \n array (\n 0 => 'torrent',\n ),\n 'application/x-blorb' => \n array (\n 0 => 'blb',\n 1 => 'blorb',\n ),\n 'application/x-bzip' => \n array (\n 0 => 'bz',\n ),\n 'application/x-bzip2' => \n array (\n 0 => 'bz2',\n 1 => 'boz',\n ),\n 'application/x-cbr' => \n array (\n 0 => 'cbr',\n 1 => 'cba',\n 2 => 'cbt',\n 3 => 'cbz',\n 4 => 'cb7',\n ),\n 'application/x-cdlink' => \n array (\n 0 => 'vcd',\n ),\n 'application/x-cfs-compressed' => \n array (\n 0 => 'cfs',\n ),\n 'application/x-chat' => \n array (\n 0 => 'chat',\n ),\n 'application/x-chess-pgn' => \n array (\n 0 => 'pgn',\n ),\n 'application/x-chrome-extension' => \n array (\n 0 => 'crx',\n ),\n 'application/x-cocoa' => \n array (\n 0 => 'cco',\n ),\n 'application/x-conference' => \n array (\n 0 => 'nsc',\n ),\n 'application/x-cpio' => \n array (\n 0 => 'cpio',\n ),\n 'application/x-csh' => \n array (\n 0 => 'csh',\n ),\n 'application/x-debian-package' => \n array (\n 0 => 'deb',\n 1 => 'udeb',\n ),\n 'application/x-dgc-compressed' => \n array (\n 0 => 'dgc',\n ),\n 'application/x-director' => \n array (\n 0 => 'dir',\n 1 => 'dcr',\n 2 => 'dxr',\n 3 => 'cst',\n 4 => 'cct',\n 5 => 'cxt',\n 6 => 'w3d',\n 7 => 'fgd',\n 8 => 'swa',\n ),\n 'application/x-doom' => \n array (\n 0 => 'wad',\n ),\n 'application/x-dtbncx+xml' => \n array (\n 0 => 'ncx',\n ),\n 'application/x-dtbook+xml' => \n array (\n 0 => 'dtb',\n ),\n 'application/x-dtbresource+xml' => \n array (\n 0 => 'res',\n ),\n 'application/x-dvi' => \n array (\n 0 => 'dvi',\n ),\n 'application/x-envoy' => \n array (\n 0 => 'evy',\n ),\n 'application/x-eva' => \n array (\n 0 => 'eva',\n ),\n 'application/x-font-bdf' => \n array (\n 0 => 'bdf',\n ),\n 'application/x-font-ghostscript' => \n array (\n 0 => 'gsf',\n ),\n 'application/x-font-linux-psf' => \n array (\n 0 => 'psf',\n ),\n 'application/x-font-pcf' => \n array (\n 0 => 'pcf',\n ),\n 'application/x-font-snf' => \n array (\n 0 => 'snf',\n ),\n 'application/x-font-type1' => \n array (\n 0 => 'pfa',\n 1 => 'pfb',\n 2 => 'pfm',\n 3 => 'afm',\n ),\n 'application/x-freearc' => \n array (\n 0 => 'arc',\n ),\n 'application/x-futuresplash' => \n array (\n 0 => 'spl',\n ),\n 'application/x-gca-compressed' => \n array (\n 0 => 'gca',\n ),\n 'application/x-glulx' => \n array (\n 0 => 'ulx',\n ),\n 'application/x-gnumeric' => \n array (\n 0 => 'gnumeric',\n ),\n 'application/x-gramps-xml' => \n array (\n 0 => 'gramps',\n ),\n 'application/x-gtar' => \n array (\n 0 => 'gtar',\n ),\n 'application/x-hdf' => \n array (\n 0 => 'hdf',\n ),\n 'application/x-httpd-php' => \n array (\n 0 => 'php',\n 1 => 'php4',\n 2 => 'php3',\n 3 => 'phtml',\n ),\n 'application/x-install-instructions' => \n array (\n 0 => 'install',\n ),\n 'application/x-iso9660-image' => \n array (\n 0 => 'iso',\n ),\n 'application/x-iwork-keynote-sffkey' => \n array (\n 0 => 'key',\n ),\n 'application/x-iwork-numbers-sffnumbers' => \n array (\n 0 => 'numbers',\n ),\n 'application/x-iwork-pages-sffpages' => \n array (\n 0 => 'pages',\n ),\n 'application/x-java-archive-diff' => \n array (\n 0 => 'jardiff',\n ),\n 'application/x-java-jnlp-file' => \n array (\n 0 => 'jnlp',\n ),\n 'application/x-keepass2' => \n array (\n 0 => 'kdbx',\n ),\n 'application/x-latex' => \n array (\n 0 => 'latex',\n ),\n 'application/x-lua-bytecode' => \n array (\n 0 => 'luac',\n ),\n 'application/x-lzh-compressed' => \n array (\n 0 => 'lzh',\n 1 => 'lha',\n ),\n 'application/x-makeself' => \n array (\n 0 => 'run',\n ),\n 'application/x-mie' => \n array (\n 0 => 'mie',\n ),\n 'application/x-mobipocket-ebook' => \n array (\n 0 => 'prc',\n 1 => 'mobi',\n ),\n 'application/x-ms-application' => \n array (\n 0 => 'application',\n ),\n 'application/x-ms-shortcut' => \n array (\n 0 => 'lnk',\n ),\n 'application/x-ms-wmd' => \n array (\n 0 => 'wmd',\n ),\n 'application/x-ms-wmz' => \n array (\n 0 => 'wmz',\n ),\n 'application/x-ms-xbap' => \n array (\n 0 => 'xbap',\n ),\n 'application/x-msaccess' => \n array (\n 0 => 'mdb',\n ),\n 'application/x-msbinder' => \n array (\n 0 => 'obd',\n ),\n 'application/x-mscardfile' => \n array (\n 0 => 'crd',\n ),\n 'application/x-msclip' => \n array (\n 0 => 'clp',\n ),\n 'application/x-msdos-program' => \n array (\n 0 => 'exe',\n ),\n 'application/x-msdownload' => \n array (\n 0 => 'exe',\n 1 => 'dll',\n 2 => 'com',\n 3 => 'bat',\n 4 => 'msi',\n ),\n 'application/x-msmediaview' => \n array (\n 0 => 'mvb',\n 1 => 'm13',\n 2 => 'm14',\n ),\n 'application/x-msmetafile' => \n array (\n 0 => 'wmf',\n 1 => 'wmz',\n 2 => 'emf',\n 3 => 'emz',\n ),\n 'application/x-msmoney' => \n array (\n 0 => 'mny',\n ),\n 'application/x-mspublisher' => \n array (\n 0 => 'pub',\n ),\n 'application/x-msschedule' => \n array (\n 0 => 'scd',\n ),\n 'application/x-msterminal' => \n array (\n 0 => 'trm',\n ),\n 'application/x-mswrite' => \n array (\n 0 => 'wri',\n ),\n 'application/x-netcdf' => \n array (\n 0 => 'nc',\n 1 => 'cdf',\n ),\n 'application/x-ns-proxy-autoconfig' => \n array (\n 0 => 'pac',\n ),\n 'application/x-nzb' => \n array (\n 0 => 'nzb',\n ),\n 'application/x-perl' => \n array (\n 0 => 'pl',\n 1 => 'pm',\n ),\n 'application/x-pilot' => \n array (\n 0 => 'prc',\n 1 => 'pdb',\n ),\n 'application/x-pkcs12' => \n array (\n 0 => 'p12',\n 1 => 'pfx',\n ),\n 'application/x-pkcs7-certificates' => \n array (\n 0 => 'p7b',\n 1 => 'spc',\n ),\n 'application/x-pkcs7-certreqresp' => \n array (\n 0 => 'p7r',\n ),\n 'application/x-rar-compressed' => \n array (\n 0 => 'rar',\n ),\n 'application/x-redhat-package-manager' => \n array (\n 0 => 'rpm',\n ),\n 'application/x-research-info-systems' => \n array (\n 0 => 'ris',\n ),\n 'application/x-sea' => \n array (\n 0 => 'sea',\n ),\n 'application/x-sh' => \n array (\n 0 => 'sh',\n ),\n 'application/x-shar' => \n array (\n 0 => 'shar',\n ),\n 'application/x-shockwave-flash' => \n array (\n 0 => 'swf',\n ),\n 'application/x-silverlight-app' => \n array (\n 0 => 'xap',\n ),\n 'application/x-sql' => \n array (\n 0 => 'sql',\n ),\n 'application/x-stuffit' => \n array (\n 0 => 'sit',\n ),\n 'application/x-stuffitx' => \n array (\n 0 => 'sitx',\n ),\n 'application/x-subrip' => \n array (\n 0 => 'srt',\n ),\n 'application/x-sv4cpio' => \n array (\n 0 => 'sv4cpio',\n ),\n 'application/x-sv4crc' => \n array (\n 0 => 'sv4crc',\n ),\n 'application/x-t3vm-image' => \n array (\n 0 => 't3',\n ),\n 'application/x-tads' => \n array (\n 0 => 'gam',\n ),\n 'application/x-tar' => \n array (\n 0 => 'tar',\n 1 => 'tgz',\n ),\n 'application/x-tcl' => \n array (\n 0 => 'tcl',\n 1 => 'tk',\n ),\n 'application/x-tex' => \n array (\n 0 => 'tex',\n ),\n 'application/x-tex-tfm' => \n array (\n 0 => 'tfm',\n ),\n 'application/x-texinfo' => \n array (\n 0 => 'texinfo',\n 1 => 'texi',\n ),\n 'application/x-tgif' => \n array (\n 0 => 'obj',\n ),\n 'application/x-ustar' => \n array (\n 0 => 'ustar',\n ),\n 'application/x-virtualbox-hdd' => \n array (\n 0 => 'hdd',\n ),\n 'application/x-virtualbox-ova' => \n array (\n 0 => 'ova',\n ),\n 'application/x-virtualbox-ovf' => \n array (\n 0 => 'ovf',\n ),\n 'application/x-virtualbox-vbox' => \n array (\n 0 => 'vbox',\n ),\n 'application/x-virtualbox-vbox-extpack' => \n array (\n 0 => 'vbox-extpack',\n ),\n 'application/x-virtualbox-vdi' => \n array (\n 0 => 'vdi',\n ),\n 'application/x-virtualbox-vhd' => \n array (\n 0 => 'vhd',\n ),\n 'application/x-virtualbox-vmdk' => \n array (\n 0 => 'vmdk',\n ),\n 'application/x-wais-source' => \n array (\n 0 => 'src',\n ),\n 'application/x-web-app-manifest+json' => \n array (\n 0 => 'webapp',\n ),\n 'application/x-x509-ca-cert' => \n array (\n 0 => 'der',\n 1 => 'crt',\n 2 => 'pem',\n ),\n 'application/x-xfig' => \n array (\n 0 => 'fig',\n ),\n 'application/x-xliff+xml' => \n array (\n 0 => 'xlf',\n ),\n 'application/x-xpinstall' => \n array (\n 0 => 'xpi',\n ),\n 'application/x-xz' => \n array (\n 0 => 'xz',\n ),\n 'application/x-zmachine' => \n array (\n 0 => 'z1',\n 1 => 'z2',\n 2 => 'z3',\n 3 => 'z4',\n 4 => 'z5',\n 5 => 'z6',\n 6 => 'z7',\n 7 => 'z8',\n ),\n 'application/xaml+xml' => \n array (\n 0 => 'xaml',\n ),\n 'application/xcap-att+xml' => \n array (\n 0 => 'xav',\n ),\n 'application/xcap-caps+xml' => \n array (\n 0 => 'xca',\n ),\n 'application/xcap-diff+xml' => \n array (\n 0 => 'xdf',\n ),\n 'application/xcap-el+xml' => \n array (\n 0 => 'xel',\n ),\n 'application/xcap-ns+xml' => \n array (\n 0 => 'xns',\n ),\n 'application/xenc+xml' => \n array (\n 0 => 'xenc',\n ),\n 'application/xfdf' => \n array (\n 0 => 'xfdf',\n ),\n 'application/xhtml+xml' => \n array (\n 0 => 'xhtml',\n 1 => 'xht',\n ),\n 'application/xliff+xml' => \n array (\n 0 => 'xlf',\n ),\n 'application/xml' => \n array (\n 0 => 'xml',\n 1 => 'xsl',\n 2 => 'xsd',\n 3 => 'rng',\n ),\n 'application/xml-dtd' => \n array (\n 0 => 'dtd',\n ),\n 'application/xop+xml' => \n array (\n 0 => 'xop',\n ),\n 'application/xproc+xml' => \n array (\n 0 => 'xpl',\n ),\n 'application/xslt+xml' => \n array (\n 0 => 'xsl',\n 1 => 'xslt',\n ),\n 'application/xspf+xml' => \n array (\n 0 => 'xspf',\n ),\n 'application/xv+xml' => \n array (\n 0 => 'mxml',\n 1 => 'xhvml',\n 2 => 'xvml',\n 3 => 'xvm',\n ),\n 'application/yang' => \n array (\n 0 => 'yang',\n ),\n 'application/yin+xml' => \n array (\n 0 => 'yin',\n ),\n 'application/zip' => \n array (\n 0 => 'zip',\n ),\n 'audio/3gpp' => \n array (\n 0 => '3gpp',\n ),\n 'audio/aac' => \n array (\n 0 => 'adts',\n 1 => 'aac',\n ),\n 'audio/adpcm' => \n array (\n 0 => 'adp',\n ),\n 'audio/amr' => \n array (\n 0 => 'amr',\n ),\n 'audio/basic' => \n array (\n 0 => 'au',\n 1 => 'snd',\n ),\n 'audio/midi' => \n array (\n 0 => 'mid',\n 1 => 'midi',\n 2 => 'kar',\n 3 => 'rmi',\n ),\n 'audio/mobile-xmf' => \n array (\n 0 => 'mxmf',\n ),\n 'audio/mp3' => \n array (\n 0 => 'mp3',\n ),\n 'audio/mp4' => \n array (\n 0 => 'm4a',\n 1 => 'mp4a',\n ),\n 'audio/mpeg' => \n array (\n 0 => 'mpga',\n 1 => 'mp2',\n 2 => 'mp2a',\n 3 => 'mp3',\n 4 => 'm2a',\n 5 => 'm3a',\n ),\n 'audio/ogg' => \n array (\n 0 => 'oga',\n 1 => 'ogg',\n 2 => 'spx',\n 3 => 'opus',\n ),\n 'audio/s3m' => \n array (\n 0 => 's3m',\n ),\n 'audio/silk' => \n array (\n 0 => 'sil',\n ),\n 'audio/vnd.dece.audio' => \n array (\n 0 => 'uva',\n 1 => 'uvva',\n ),\n 'audio/vnd.digital-winds' => \n array (\n 0 => 'eol',\n ),\n 'audio/vnd.dra' => \n array (\n 0 => 'dra',\n ),\n 'audio/vnd.dts' => \n array (\n 0 => 'dts',\n ),\n 'audio/vnd.dts.hd' => \n array (\n 0 => 'dtshd',\n ),\n 'audio/vnd.lucent.voice' => \n array (\n 0 => 'lvp',\n ),\n 'audio/vnd.ms-playready.media.pya' => \n array (\n 0 => 'pya',\n ),\n 'audio/vnd.nuera.ecelp4800' => \n array (\n 0 => 'ecelp4800',\n ),\n 'audio/vnd.nuera.ecelp7470' => \n array (\n 0 => 'ecelp7470',\n ),\n 'audio/vnd.nuera.ecelp9600' => \n array (\n 0 => 'ecelp9600',\n ),\n 'audio/vnd.rip' => \n array (\n 0 => 'rip',\n ),\n 'audio/wav' => \n array (\n 0 => 'wav',\n ),\n 'audio/wave' => \n array (\n 0 => 'wav',\n ),\n 'audio/webm' => \n array (\n 0 => 'weba',\n ),\n 'audio/x-aac' => \n array (\n 0 => 'aac',\n ),\n 'audio/x-aiff' => \n array (\n 0 => 'aif',\n 1 => 'aiff',\n 2 => 'aifc',\n ),\n 'audio/x-caf' => \n array (\n 0 => 'caf',\n ),\n 'audio/x-flac' => \n array (\n 0 => 'flac',\n ),\n 'audio/x-m4a' => \n array (\n 0 => 'm4a',\n ),\n 'audio/x-matroska' => \n array (\n 0 => 'mka',\n ),\n 'audio/x-mpegurl' => \n array (\n 0 => 'm3u',\n ),\n 'audio/x-ms-wax' => \n array (\n 0 => 'wax',\n ),\n 'audio/x-ms-wma' => \n array (\n 0 => 'wma',\n ),\n 'audio/x-pn-realaudio' => \n array (\n 0 => 'ram',\n 1 => 'ra',\n 2 => 'rm',\n ),\n 'audio/x-pn-realaudio-plugin' => \n array (\n 0 => 'rmp',\n 1 => 'rpm',\n ),\n 'audio/x-realaudio' => \n array (\n 0 => 'ra',\n ),\n 'audio/x-wav' => \n array (\n 0 => 'wav',\n ),\n 'audio/xm' => \n array (\n 0 => 'xm',\n ),\n 'chemical/x-cdx' => \n array (\n 0 => 'cdx',\n ),\n 'chemical/x-cif' => \n array (\n 0 => 'cif',\n ),\n 'chemical/x-cmdf' => \n array (\n 0 => 'cmdf',\n ),\n 'chemical/x-cml' => \n array (\n 0 => 'cml',\n ),\n 'chemical/x-csml' => \n array (\n 0 => 'csml',\n ),\n 'chemical/x-xyz' => \n array (\n 0 => 'xyz',\n ),\n 'font/collection' => \n array (\n 0 => 'ttc',\n ),\n 'font/otf' => \n array (\n 0 => 'otf',\n ),\n 'font/ttf' => \n array (\n 0 => 'ttf',\n ),\n 'font/woff' => \n array (\n 0 => 'woff',\n ),\n 'font/woff2' => \n array (\n 0 => 'woff2',\n ),\n 'image/aces' => \n array (\n 0 => 'exr',\n ),\n 'image/apng' => \n array (\n 0 => 'apng',\n ),\n 'image/avci' => \n array (\n 0 => 'avci',\n ),\n 'image/avcs' => \n array (\n 0 => 'avcs',\n ),\n 'image/avif' => \n array (\n 0 => 'avif',\n ),\n 'image/bmp' => \n array (\n 0 => 'bmp',\n 1 => 'dib',\n ),\n 'image/cgm' => \n array (\n 0 => 'cgm',\n ),\n 'image/dicom-rle' => \n array (\n 0 => 'drle',\n ),\n 'image/dpx' => \n array (\n 0 => 'dpx',\n ),\n 'image/emf' => \n array (\n 0 => 'emf',\n ),\n 'image/fits' => \n array (\n 0 => 'fits',\n ),\n 'image/g3fax' => \n array (\n 0 => 'g3',\n ),\n 'image/gif' => \n array (\n 0 => 'gif',\n ),\n 'image/heic' => \n array (\n 0 => 'heic',\n ),\n 'image/heic-sequence' => \n array (\n 0 => 'heics',\n ),\n 'image/heif' => \n array (\n 0 => 'heif',\n ),\n 'image/heif-sequence' => \n array (\n 0 => 'heifs',\n ),\n 'image/hej2k' => \n array (\n 0 => 'hej2',\n ),\n 'image/hsj2' => \n array (\n 0 => 'hsj2',\n ),\n 'image/ief' => \n array (\n 0 => 'ief',\n ),\n 'image/jls' => \n array (\n 0 => 'jls',\n ),\n 'image/jp2' => \n array (\n 0 => 'jp2',\n 1 => 'jpg2',\n ),\n 'image/jpeg' => \n array (\n 0 => 'jpeg',\n 1 => 'jpg',\n 2 => 'jpe',\n ),\n 'image/jph' => \n array (\n 0 => 'jph',\n ),\n 'image/jphc' => \n array (\n 0 => 'jhc',\n ),\n 'image/jpm' => \n array (\n 0 => 'jpm',\n 1 => 'jpgm',\n ),\n 'image/jpx' => \n array (\n 0 => 'jpx',\n 1 => 'jpf',\n ),\n 'image/jxr' => \n array (\n 0 => 'jxr',\n ),\n 'image/jxra' => \n array (\n 0 => 'jxra',\n ),\n 'image/jxrs' => \n array (\n 0 => 'jxrs',\n ),\n 'image/jxs' => \n array (\n 0 => 'jxs',\n ),\n 'image/jxsc' => \n array (\n 0 => 'jxsc',\n ),\n 'image/jxsi' => \n array (\n 0 => 'jxsi',\n ),\n 'image/jxss' => \n array (\n 0 => 'jxss',\n ),\n 'image/ktx' => \n array (\n 0 => 'ktx',\n ),\n 'image/ktx2' => \n array (\n 0 => 'ktx2',\n ),\n 'image/png' => \n array (\n 0 => 'png',\n ),\n 'image/prs.btif' => \n array (\n 0 => 'btif',\n 1 => 'btf',\n ),\n 'image/prs.pti' => \n array (\n 0 => 'pti',\n ),\n 'image/sgi' => \n array (\n 0 => 'sgi',\n ),\n 'image/svg+xml' => \n array (\n 0 => 'svg',\n 1 => 'svgz',\n ),\n 'image/t38' => \n array (\n 0 => 't38',\n ),\n 'image/tiff' => \n array (\n 0 => 'tif',\n 1 => 'tiff',\n ),\n 'image/tiff-fx' => \n array (\n 0 => 'tfx',\n ),\n 'image/vnd.adobe.photoshop' => \n array (\n 0 => 'psd',\n ),\n 'image/vnd.airzip.accelerator.azv' => \n array (\n 0 => 'azv',\n ),\n 'image/vnd.dece.graphic' => \n array (\n 0 => 'uvi',\n 1 => 'uvvi',\n 2 => 'uvg',\n 3 => 'uvvg',\n ),\n 'image/vnd.djvu' => \n array (\n 0 => 'djvu',\n 1 => 'djv',\n ),\n 'image/vnd.dvb.subtitle' => \n array (\n 0 => 'sub',\n ),\n 'image/vnd.dwg' => \n array (\n 0 => 'dwg',\n ),\n 'image/vnd.dxf' => \n array (\n 0 => 'dxf',\n ),\n 'image/vnd.fastbidsheet' => \n array (\n 0 => 'fbs',\n ),\n 'image/vnd.fpx' => \n array (\n 0 => 'fpx',\n ),\n 'image/vnd.fst' => \n array (\n 0 => 'fst',\n ),\n 'image/vnd.fujixerox.edmics-mmr' => \n array (\n 0 => 'mmr',\n ),\n 'image/vnd.fujixerox.edmics-rlc' => \n array (\n 0 => 'rlc',\n ),\n 'image/vnd.microsoft.icon' => \n array (\n 0 => 'ico',\n ),\n 'image/vnd.ms-dds' => \n array (\n 0 => 'dds',\n ),\n 'image/vnd.ms-modi' => \n array (\n 0 => 'mdi',\n ),\n 'image/vnd.ms-photo' => \n array (\n 0 => 'wdp',\n ),\n 'image/vnd.net-fpx' => \n array (\n 0 => 'npx',\n ),\n 'image/vnd.pco.b16' => \n array (\n 0 => 'b16',\n ),\n 'image/vnd.tencent.tap' => \n array (\n 0 => 'tap',\n ),\n 'image/vnd.valve.source.texture' => \n array (\n 0 => 'vtf',\n ),\n 'image/vnd.wap.wbmp' => \n array (\n 0 => 'wbmp',\n ),\n 'image/vnd.xiff' => \n array (\n 0 => 'xif',\n ),\n 'image/vnd.zbrush.pcx' => \n array (\n 0 => 'pcx',\n ),\n 'image/webp' => \n array (\n 0 => 'webp',\n ),\n 'image/wmf' => \n array (\n 0 => 'wmf',\n ),\n 'image/x-3ds' => \n array (\n 0 => '3ds',\n ),\n 'image/x-cmu-raster' => \n array (\n 0 => 'ras',\n ),\n 'image/x-cmx' => \n array (\n 0 => 'cmx',\n ),\n 'image/x-freehand' => \n array (\n 0 => 'fh',\n 1 => 'fhc',\n 2 => 'fh4',\n 3 => 'fh5',\n 4 => 'fh7',\n ),\n 'image/x-icon' => \n array (\n 0 => 'ico',\n ),\n 'image/x-jng' => \n array (\n 0 => 'jng',\n ),\n 'image/x-mrsid-image' => \n array (\n 0 => 'sid',\n ),\n 'image/x-ms-bmp' => \n array (\n 0 => 'bmp',\n ),\n 'image/x-pcx' => \n array (\n 0 => 'pcx',\n ),\n 'image/x-pict' => \n array (\n 0 => 'pic',\n 1 => 'pct',\n ),\n 'image/x-portable-anymap' => \n array (\n 0 => 'pnm',\n ),\n 'image/x-portable-bitmap' => \n array (\n 0 => 'pbm',\n ),\n 'image/x-portable-graymap' => \n array (\n 0 => 'pgm',\n ),\n 'image/x-portable-pixmap' => \n array (\n 0 => 'ppm',\n ),\n 'image/x-rgb' => \n array (\n 0 => 'rgb',\n ),\n 'image/x-tga' => \n array (\n 0 => 'tga',\n ),\n 'image/x-xbitmap' => \n array (\n 0 => 'xbm',\n ),\n 'image/x-xpixmap' => \n array (\n 0 => 'xpm',\n ),\n 'image/x-xwindowdump' => \n array (\n 0 => 'xwd',\n ),\n 'message/disposition-notification' => \n array (\n 0 => 'disposition-notification',\n ),\n 'message/global' => \n array (\n 0 => 'u8msg',\n ),\n 'message/global-delivery-status' => \n array (\n 0 => 'u8dsn',\n ),\n 'message/global-disposition-notification' => \n array (\n 0 => 'u8mdn',\n ),\n 'message/global-headers' => \n array (\n 0 => 'u8hdr',\n ),\n 'message/rfc822' => \n array (\n 0 => 'eml',\n 1 => 'mime',\n ),\n 'message/vnd.wfa.wsc' => \n array (\n 0 => 'wsc',\n ),\n 'model/3mf' => \n array (\n 0 => '3mf',\n ),\n 'model/gltf+json' => \n array (\n 0 => 'gltf',\n ),\n 'model/gltf-binary' => \n array (\n 0 => 'glb',\n ),\n 'model/iges' => \n array (\n 0 => 'igs',\n 1 => 'iges',\n ),\n 'model/jt' => \n array (\n 0 => 'jt',\n ),\n 'model/mesh' => \n array (\n 0 => 'msh',\n 1 => 'mesh',\n 2 => 'silo',\n ),\n 'model/mtl' => \n array (\n 0 => 'mtl',\n ),\n 'model/obj' => \n array (\n 0 => 'obj',\n ),\n 'model/prc' => \n array (\n 0 => 'prc',\n ),\n 'model/step+xml' => \n array (\n 0 => 'stpx',\n ),\n 'model/step+zip' => \n array (\n 0 => 'stpz',\n ),\n 'model/step-xml+zip' => \n array (\n 0 => 'stpxz',\n ),\n 'model/stl' => \n array (\n 0 => 'stl',\n ),\n 'model/u3d' => \n array (\n 0 => 'u3d',\n ),\n 'model/vnd.cld' => \n array (\n 0 => 'cld',\n ),\n 'model/vnd.collada+xml' => \n array (\n 0 => 'dae',\n ),\n 'model/vnd.dwf' => \n array (\n 0 => 'dwf',\n ),\n 'model/vnd.gdl' => \n array (\n 0 => 'gdl',\n ),\n 'model/vnd.gtw' => \n array (\n 0 => 'gtw',\n ),\n 'model/vnd.mts' => \n array (\n 0 => 'mts',\n ),\n 'model/vnd.opengex' => \n array (\n 0 => 'ogex',\n ),\n 'model/vnd.parasolid.transmit.binary' => \n array (\n 0 => 'x_b',\n ),\n 'model/vnd.parasolid.transmit.text' => \n array (\n 0 => 'x_t',\n ),\n 'model/vnd.pytha.pyox' => \n array (\n 0 => 'pyo',\n 1 => 'pyox',\n ),\n 'model/vnd.sap.vds' => \n array (\n 0 => 'vds',\n ),\n 'model/vnd.usda' => \n array (\n 0 => 'usda',\n ),\n 'model/vnd.usdz+zip' => \n array (\n 0 => 'usdz',\n ),\n 'model/vnd.valve.source.compiled-map' => \n array (\n 0 => 'bsp',\n ),\n 'model/vnd.vtu' => \n array (\n 0 => 'vtu',\n ),\n 'model/vrml' => \n array (\n 0 => 'wrl',\n 1 => 'vrml',\n ),\n 'model/x3d+binary' => \n array (\n 0 => 'x3db',\n 1 => 'x3dbz',\n ),\n 'model/x3d+fastinfoset' => \n array (\n 0 => 'x3db',\n ),\n 'model/x3d+vrml' => \n array (\n 0 => 'x3dv',\n 1 => 'x3dvz',\n ),\n 'model/x3d+xml' => \n array (\n 0 => 'x3d',\n 1 => 'x3dz',\n ),\n 'model/x3d-vrml' => \n array (\n 0 => 'x3dv',\n ),\n 'text/cache-manifest' => \n array (\n 0 => 'appcache',\n 1 => 'manifest',\n ),\n 'text/calendar' => \n array (\n 0 => 'ics',\n 1 => 'ifb',\n ),\n 'text/coffeescript' => \n array (\n 0 => 'coffee',\n 1 => 'litcoffee',\n ),\n 'text/css' => \n array (\n 0 => 'css',\n ),\n 'text/csv' => \n array (\n 0 => 'csv',\n ),\n 'text/html' => \n array (\n 0 => 'html',\n 1 => 'htm',\n 2 => 'shtml',\n ),\n 'text/jade' => \n array (\n 0 => 'jade',\n ),\n 'text/javascript' => \n array (\n 0 => 'js',\n 1 => 'mjs',\n ),\n 'text/jsx' => \n array (\n 0 => 'jsx',\n ),\n 'text/less' => \n array (\n 0 => 'less',\n ),\n 'text/markdown' => \n array (\n 0 => 'md',\n 1 => 'markdown',\n ),\n 'text/mathml' => \n array (\n 0 => 'mml',\n ),\n 'text/mdx' => \n array (\n 0 => 'mdx',\n ),\n 'text/n3' => \n array (\n 0 => 'n3',\n ),\n 'text/plain' => \n array (\n 0 => 'txt',\n 1 => 'text',\n 2 => 'conf',\n 3 => 'def',\n 4 => 'list',\n 5 => 'log',\n 6 => 'in',\n 7 => 'ini',\n 8 => 'm3u',\n ),\n 'text/prs.lines.tag' => \n array (\n 0 => 'dsc',\n ),\n 'text/richtext' => \n array (\n 0 => 'rtx',\n ),\n 'text/rtf' => \n array (\n 0 => 'rtf',\n ),\n 'text/sgml' => \n array (\n 0 => 'sgml',\n 1 => 'sgm',\n ),\n 'text/shex' => \n array (\n 0 => 'shex',\n ),\n 'text/slim' => \n array (\n 0 => 'slim',\n 1 => 'slm',\n ),\n 'text/spdx' => \n array (\n 0 => 'spdx',\n ),\n 'text/stylus' => \n array (\n 0 => 'stylus',\n 1 => 'styl',\n ),\n 'text/tab-separated-values' => \n array (\n 0 => 'tsv',\n ),\n 'text/troff' => \n array (\n 0 => 't',\n 1 => 'tr',\n 2 => 'roff',\n 3 => 'man',\n 4 => 'me',\n 5 => 'ms',\n ),\n 'text/turtle' => \n array (\n 0 => 'ttl',\n ),\n 'text/uri-list' => \n array (\n 0 => 'uri',\n 1 => 'uris',\n 2 => 'urls',\n ),\n 'text/vcard' => \n array (\n 0 => 'vcard',\n ),\n 'text/vnd.curl' => \n array (\n 0 => 'curl',\n ),\n 'text/vnd.curl.dcurl' => \n array (\n 0 => 'dcurl',\n ),\n 'text/vnd.curl.mcurl' => \n array (\n 0 => 'mcurl',\n ),\n 'text/vnd.curl.scurl' => \n array (\n 0 => 'scurl',\n ),\n 'text/vnd.dvb.subtitle' => \n array (\n 0 => 'sub',\n ),\n 'text/vnd.familysearch.gedcom' => \n array (\n 0 => 'ged',\n ),\n 'text/vnd.fly' => \n array (\n 0 => 'fly',\n ),\n 'text/vnd.fmi.flexstor' => \n array (\n 0 => 'flx',\n ),\n 'text/vnd.graphviz' => \n array (\n 0 => 'gv',\n ),\n 'text/vnd.in3d.3dml' => \n array (\n 0 => '3dml',\n ),\n 'text/vnd.in3d.spot' => \n array (\n 0 => 'spot',\n ),\n 'text/vnd.sun.j2me.app-descriptor' => \n array (\n 0 => 'jad',\n ),\n 'text/vnd.wap.wml' => \n array (\n 0 => 'wml',\n ),\n 'text/vnd.wap.wmlscript' => \n array (\n 0 => 'wmls',\n ),\n 'text/vtt' => \n array (\n 0 => 'vtt',\n ),\n 'text/wgsl' => \n array (\n 0 => 'wgsl',\n ),\n 'text/x-asm' => \n array (\n 0 => 's',\n 1 => 'asm',\n ),\n 'text/x-c' => \n array (\n 0 => 'c',\n 1 => 'cc',\n 2 => 'cxx',\n 3 => 'cpp',\n 4 => 'h',\n 5 => 'hh',\n 6 => 'dic',\n ),\n 'text/x-component' => \n array (\n 0 => 'htc',\n ),\n 'text/x-fortran' => \n array (\n 0 => 'f',\n 1 => 'for',\n 2 => 'f77',\n 3 => 'f90',\n ),\n 'text/x-handlebars-template' => \n array (\n 0 => 'hbs',\n ),\n 'text/x-java-source' => \n array (\n 0 => 'java',\n ),\n 'text/x-lua' => \n array (\n 0 => 'lua',\n ),\n 'text/x-markdown' => \n array (\n 0 => 'mkd',\n ),\n 'text/x-nfo' => \n array (\n 0 => 'nfo',\n ),\n 'text/x-opml' => \n array (\n 0 => 'opml',\n ),\n 'text/x-org' => \n array (\n 0 => 'org',\n ),\n 'text/x-pascal' => \n array (\n 0 => 'p',\n 1 => 'pas',\n ),\n 'text/x-processing' => \n array (\n 0 => 'pde',\n ),\n 'text/x-sass' => \n array (\n 0 => 'sass',\n ),\n 'text/x-scss' => \n array (\n 0 => 'scss',\n ),\n 'text/x-setext' => \n array (\n 0 => 'etx',\n ),\n 'text/x-sfv' => \n array (\n 0 => 'sfv',\n ),\n 'text/x-suse-ymp' => \n array (\n 0 => 'ymp',\n ),\n 'text/x-uuencode' => \n array (\n 0 => 'uu',\n ),\n 'text/x-vcalendar' => \n array (\n 0 => 'vcs',\n ),\n 'text/x-vcard' => \n array (\n 0 => 'vcf',\n ),\n 'text/xml' => \n array (\n 0 => 'xml',\n ),\n 'text/yaml' => \n array (\n 0 => 'yaml',\n 1 => 'yml',\n ),\n 'video/3gpp' => \n array (\n 0 => '3gp',\n 1 => '3gpp',\n ),\n 'video/3gpp2' => \n array (\n 0 => '3g2',\n ),\n 'video/h261' => \n array (\n 0 => 'h261',\n ),\n 'video/h263' => \n array (\n 0 => 'h263',\n ),\n 'video/h264' => \n array (\n 0 => 'h264',\n ),\n 'video/iso.segment' => \n array (\n 0 => 'm4s',\n ),\n 'video/jpeg' => \n array (\n 0 => 'jpgv',\n ),\n 'video/jpm' => \n array (\n 0 => 'jpm',\n 1 => 'jpgm',\n ),\n 'video/mj2' => \n array (\n 0 => 'mj2',\n 1 => 'mjp2',\n ),\n 'video/mp2t' => \n array (\n 0 => 'ts',\n ),\n 'video/mp4' => \n array (\n 0 => 'mp4',\n 1 => 'mp4v',\n 2 => 'mpg4',\n 3 => 'f4v',\n ),\n 'video/mpeg' => \n array (\n 0 => 'mpeg',\n 1 => 'mpg',\n 2 => 'mpe',\n 3 => 'm1v',\n 4 => 'm2v',\n ),\n 'video/ogg' => \n array (\n 0 => 'ogv',\n ),\n 'video/quicktime' => \n array (\n 0 => 'qt',\n 1 => 'mov',\n ),\n 'video/vnd.dece.hd' => \n array (\n 0 => 'uvh',\n 1 => 'uvvh',\n ),\n 'video/vnd.dece.mobile' => \n array (\n 0 => 'uvm',\n 1 => 'uvvm',\n ),\n 'video/vnd.dece.pd' => \n array (\n 0 => 'uvp',\n 1 => 'uvvp',\n ),\n 'video/vnd.dece.sd' => \n array (\n 0 => 'uvs',\n 1 => 'uvvs',\n ),\n 'video/vnd.dece.video' => \n array (\n 0 => 'uvv',\n 1 => 'uvvv',\n ),\n 'video/vnd.dvb.file' => \n array (\n 0 => 'dvb',\n ),\n 'video/vnd.fvt' => \n array (\n 0 => 'fvt',\n ),\n 'video/vnd.mpegurl' => \n array (\n 0 => 'mxu',\n 1 => 'm4u',\n ),\n 'video/vnd.ms-playready.media.pyv' => \n array (\n 0 => 'pyv',\n ),\n 'video/vnd.uvvu.mp4' => \n array (\n 0 => 'uvu',\n 1 => 'uvvu',\n ),\n 'video/vnd.vivo' => \n array (\n 0 => 'viv',\n ),\n 'video/webm' => \n array (\n 0 => 'webm',\n ),\n 'video/x-f4v' => \n array (\n 0 => 'f4v',\n ),\n 'video/x-fli' => \n array (\n 0 => 'fli',\n ),\n 'video/x-flv' => \n array (\n 0 => 'flv',\n ),\n 'video/x-m4v' => \n array (\n 0 => 'm4v',\n ),\n 'video/x-matroska' => \n array (\n 0 => 'mkv',\n 1 => 'mk3d',\n 2 => 'mks',\n ),\n 'video/x-mng' => \n array (\n 0 => 'mng',\n ),\n 'video/x-ms-asf' => \n array (\n 0 => 'asf',\n 1 => 'asx',\n ),\n 'video/x-ms-vob' => \n array (\n 0 => 'vob',\n ),\n 'video/x-ms-wm' => \n array (\n 0 => 'wm',\n ),\n 'video/x-ms-wmv' => \n array (\n 0 => 'wmv',\n ),\n 'video/x-ms-wmx' => \n array (\n 0 => 'wmx',\n ),\n 'video/x-ms-wvx' => \n array (\n 0 => 'wvx',\n ),\n 'video/x-msvideo' => \n array (\n 0 => 'avi',\n ),\n 'video/x-sgi-movie' => \n array (\n 0 => 'movie',\n ),\n 'video/x-smv' => \n array (\n 0 => 'smv',\n ),\n 'x-conference/x-cooltalk' => \n array (\n 0 => 'ice',\n ),\n 'application/x-photoshop' => \n array (\n 0 => 'psd',\n ),\n 'application/smil' => \n array (\n 0 => 'smi',\n 1 => 'smil',\n ),\n 'application/powerpoint' => \n array (\n 0 => 'ppt',\n ),\n 'application/vnd.ms-powerpoint.addin.macroEnabled.12' => \n array (\n 0 => 'ppam',\n ),\n 'application/vnd.ms-powerpoint.presentation.macroEnabled.12' => \n array (\n 0 => 'pptm',\n 1 => 'potm',\n ),\n 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12' => \n array (\n 0 => 'ppsm',\n ),\n 'application/wbxml' => \n array (\n 0 => 'wbxml',\n ),\n 'application/wmlc' => \n array (\n 0 => 'wmlc',\n ),\n 'application/x-httpd-php-source' => \n array (\n 0 => 'phps',\n ),\n 'application/x-compress' => \n array (\n 0 => 'z',\n ),\n 'application/x-rar' => \n array (\n 0 => 'rar',\n ),\n 'video/vnd.rn-realvideo' => \n array (\n 0 => 'rv',\n ),\n 'application/vnd.ms-word.template.macroEnabled.12' => \n array (\n 0 => 'docm',\n 1 => 'dotm',\n ),\n 'application/vnd.ms-excel.sheet.macroEnabled.12' => \n array (\n 0 => 'xlsm',\n ),\n 'application/vnd.ms-excel.template.macroEnabled.12' => \n array (\n 0 => 'xltm',\n ),\n 'application/vnd.ms-excel.addin.macroEnabled.12' => \n array (\n 0 => 'xlam',\n ),\n 'application/vnd.ms-excel.sheet.binary.macroEnabled.12' => \n array (\n 0 => 'xlsb',\n ),\n 'application/excel' => \n array (\n 0 => 'xl',\n ),\n 'application/x-x509-user-cert' => \n array (\n 0 => 'pem',\n ),\n 'application/x-pkcs10' => \n array (\n 0 => 'p10',\n ),\n 'application/x-pkcs7-signature' => \n array (\n 0 => 'p7a',\n ),\n 'application/pgp' => \n array (\n 0 => 'pgp',\n ),\n 'application/gpg-keys' => \n array (\n 0 => 'gpg',\n ),\n 'application/x-pkcs7' => \n array (\n 0 => 'rsa',\n ),\n 'video/3gp' => \n array (\n 0 => '3gp',\n ),\n 'audio/acc' => \n array (\n 0 => 'aac',\n ),\n 'application/vnd.mpegurl' => \n array (\n 0 => 'm4u',\n ),\n 'application/videolan' => \n array (\n 0 => 'vlc',\n ),\n 'audio/x-au' => \n array (\n 0 => 'au',\n ),\n 'audio/ac3' => \n array (\n 0 => 'ac3',\n ),\n 'text/x-scriptzsh' => \n array (\n 0 => 'zsh',\n ),\n 'application/cdr' => \n array (\n 0 => 'cdr',\n ),\n 'application/STEP' => \n array (\n 0 => 'step',\n 1 => 'stp',\n ),\n 'application/x-ndjson' => \n array (\n 0 => 'ndjson',\n ),\n 'application/braille' => \n array (\n 0 => 'brf',\n ),\n);

Methods

+
const MIME_TYPES_FOR_EXTENSIONS = array (\n '1km' => 'application/vnd.1000minds.decision-model+xml',\n '3dml' => 'text/vnd.in3d.3dml',\n '3ds' => 'image/x-3ds',\n '3g2' => 'video/3gpp2',\n '3gp' => 'video/3gp',\n '3gpp' => 'video/3gpp',\n '3mf' => 'model/3mf',\n '7z' => 'application/x-7z-compressed',\n '7zip' => 'application/x-7z-compressed',\n 123 => 'application/vnd.lotus-1-2-3',\n 'aab' => 'application/x-authorware-bin',\n 'aac' => 'audio/acc',\n 'aam' => 'application/x-authorware-map',\n 'aas' => 'application/x-authorware-seg',\n 'abw' => 'application/x-abiword',\n 'ac' => 'application/vnd.nokia.n-gage.ac+xml',\n 'ac3' => 'audio/ac3',\n 'acc' => 'application/vnd.americandynamics.acc',\n 'ace' => 'application/x-ace-compressed',\n 'acu' => 'application/vnd.acucobol',\n 'acutc' => 'application/vnd.acucorp',\n 'adp' => 'audio/adpcm',\n 'adts' => 'audio/aac',\n 'aep' => 'application/vnd.audiograph',\n 'afm' => 'application/x-font-type1',\n 'afp' => 'application/vnd.ibm.modcap',\n 'age' => 'application/vnd.age',\n 'ahead' => 'application/vnd.ahead.space',\n 'ai' => 'application/pdf',\n 'aif' => 'audio/x-aiff',\n 'aifc' => 'audio/x-aiff',\n 'aiff' => 'audio/x-aiff',\n 'air' => 'application/vnd.adobe.air-application-installer-package+zip',\n 'ait' => 'application/vnd.dvb.ait',\n 'ami' => 'application/vnd.amiga.ami',\n 'aml' => 'application/automationml-aml+xml',\n 'amlx' => 'application/automationml-amlx+zip',\n 'amr' => 'audio/amr',\n 'apk' => 'application/vnd.android.package-archive',\n 'apng' => 'image/apng',\n 'appcache' => 'text/cache-manifest',\n 'appinstaller' => 'application/appinstaller',\n 'application' => 'application/x-ms-application',\n 'appx' => 'application/appx',\n 'appxbundle' => 'application/appxbundle',\n 'apr' => 'application/vnd.lotus-approach',\n 'arc' => 'application/x-freearc',\n 'arj' => 'application/x-arj',\n 'asc' => 'application/pgp-signature',\n 'asf' => 'video/x-ms-asf',\n 'asm' => 'text/x-asm',\n 'aso' => 'application/vnd.accpac.simply.aso',\n 'asx' => 'video/x-ms-asf',\n 'atc' => 'application/vnd.acucorp',\n 'atom' => 'application/atom+xml',\n 'atomcat' => 'application/atomcat+xml',\n 'atomdeleted' => 'application/atomdeleted+xml',\n 'atomsvc' => 'application/atomsvc+xml',\n 'atx' => 'application/vnd.antix.game-component',\n 'au' => 'audio/x-au',\n 'avci' => 'image/avci',\n 'avcs' => 'image/avcs',\n 'avi' => 'video/x-msvideo',\n 'avif' => 'image/avif',\n 'aw' => 'application/applixware',\n 'azf' => 'application/vnd.airzip.filesecure.azf',\n 'azs' => 'application/vnd.airzip.filesecure.azs',\n 'azv' => 'image/vnd.airzip.accelerator.azv',\n 'azw' => 'application/vnd.amazon.ebook',\n 'b16' => 'image/vnd.pco.b16',\n 'bat' => 'application/x-msdownload',\n 'bcpio' => 'application/x-bcpio',\n 'bdf' => 'application/x-font-bdf',\n 'bdm' => 'application/vnd.syncml.dm+wbxml',\n 'bdoc' => 'application/x-bdoc',\n 'bed' => 'application/vnd.realvnc.bed',\n 'bh2' => 'application/vnd.fujitsu.oasysprs',\n 'bin' => 'application/octet-stream',\n 'blb' => 'application/x-blorb',\n 'blorb' => 'application/x-blorb',\n 'bmi' => 'application/vnd.bmi',\n 'bmml' => 'application/vnd.balsamiq.bmml+xml',\n 'bmp' => 'image/bmp',\n 'book' => 'application/vnd.framemaker',\n 'box' => 'application/vnd.previewsystems.box',\n 'boz' => 'application/x-bzip2',\n 'bpk' => 'application/octet-stream',\n 'bpmn' => 'application/octet-stream',\n 'brf' => 'application/braille',\n 'bsp' => 'model/vnd.valve.source.compiled-map',\n 'btf' => 'image/prs.btif',\n 'btif' => 'image/prs.btif',\n 'buffer' => 'application/octet-stream',\n 'bz' => 'application/x-bzip',\n 'bz2' => 'application/x-bzip2',\n 'c' => 'text/x-c',\n 'c4d' => 'application/vnd.clonk.c4group',\n 'c4f' => 'application/vnd.clonk.c4group',\n 'c4g' => 'application/vnd.clonk.c4group',\n 'c4p' => 'application/vnd.clonk.c4group',\n 'c4u' => 'application/vnd.clonk.c4group',\n 'c11amc' => 'application/vnd.cluetrust.cartomobile-config',\n 'c11amz' => 'application/vnd.cluetrust.cartomobile-config-pkg',\n 'cab' => 'application/vnd.ms-cab-compressed',\n 'caf' => 'audio/x-caf',\n 'cap' => 'application/vnd.tcpdump.pcap',\n 'car' => 'application/vnd.curl.car',\n 'cat' => 'application/vnd.ms-pki.seccat',\n 'cb7' => 'application/x-cbr',\n 'cba' => 'application/x-cbr',\n 'cbr' => 'application/x-cbr',\n 'cbt' => 'application/x-cbr',\n 'cbz' => 'application/x-cbr',\n 'cc' => 'text/x-c',\n 'cco' => 'application/x-cocoa',\n 'cct' => 'application/x-director',\n 'ccxml' => 'application/ccxml+xml',\n 'cdbcmsg' => 'application/vnd.contact.cmsg',\n 'cdf' => 'application/x-netcdf',\n 'cdfx' => 'application/cdfx+xml',\n 'cdkey' => 'application/vnd.mediastation.cdkey',\n 'cdmia' => 'application/cdmi-capability',\n 'cdmic' => 'application/cdmi-container',\n 'cdmid' => 'application/cdmi-domain',\n 'cdmio' => 'application/cdmi-object',\n 'cdmiq' => 'application/cdmi-queue',\n 'cdr' => 'application/cdr',\n 'cdx' => 'chemical/x-cdx',\n 'cdxml' => 'application/vnd.chemdraw+xml',\n 'cdy' => 'application/vnd.cinderella',\n 'cer' => 'application/pkix-cert',\n 'cfs' => 'application/x-cfs-compressed',\n 'cgm' => 'image/cgm',\n 'chat' => 'application/x-chat',\n 'chm' => 'application/vnd.ms-htmlhelp',\n 'chrt' => 'application/vnd.kde.kchart',\n 'cif' => 'chemical/x-cif',\n 'cii' => 'application/vnd.anser-web-certificate-issue-initiation',\n 'cil' => 'application/vnd.ms-artgalry',\n 'cjs' => 'application/node',\n 'cla' => 'application/vnd.claymore',\n 'class' => 'application/octet-stream',\n 'cld' => 'model/vnd.cld',\n 'clkk' => 'application/vnd.crick.clicker.keyboard',\n 'clkp' => 'application/vnd.crick.clicker.palette',\n 'clkt' => 'application/vnd.crick.clicker.template',\n 'clkw' => 'application/vnd.crick.clicker.wordbank',\n 'clkx' => 'application/vnd.crick.clicker',\n 'clp' => 'application/x-msclip',\n 'cmc' => 'application/vnd.cosmocaller',\n 'cmdf' => 'chemical/x-cmdf',\n 'cml' => 'chemical/x-cml',\n 'cmp' => 'application/vnd.yellowriver-custom-menu',\n 'cmx' => 'image/x-cmx',\n 'cod' => 'application/vnd.rim.cod',\n 'coffee' => 'text/coffeescript',\n 'com' => 'application/x-msdownload',\n 'conf' => 'text/plain',\n 'cpio' => 'application/x-cpio',\n 'cpl' => 'application/cpl+xml',\n 'cpp' => 'text/x-c',\n 'cpt' => 'application/mac-compactpro',\n 'crd' => 'application/x-mscardfile',\n 'crl' => 'application/pkix-crl',\n 'crt' => 'application/x-x509-ca-cert',\n 'crx' => 'application/x-chrome-extension',\n 'cryptonote' => 'application/vnd.rig.cryptonote',\n 'csh' => 'application/x-csh',\n 'csl' => 'application/vnd.citationstyles.style+xml',\n 'csml' => 'chemical/x-csml',\n 'csp' => 'application/vnd.commonspace',\n 'csr' => 'application/octet-stream',\n 'css' => 'text/css',\n 'cst' => 'application/x-director',\n 'csv' => 'text/csv',\n 'cu' => 'application/cu-seeme',\n 'curl' => 'text/vnd.curl',\n 'cwl' => 'application/cwl',\n 'cww' => 'application/prs.cww',\n 'cxt' => 'application/x-director',\n 'cxx' => 'text/x-c',\n 'dae' => 'model/vnd.collada+xml',\n 'daf' => 'application/vnd.mobius.daf',\n 'dart' => 'application/vnd.dart',\n 'dataless' => 'application/vnd.fdsn.seed',\n 'davmount' => 'application/davmount+xml',\n 'dbf' => 'application/vnd.dbf',\n 'dbk' => 'application/docbook+xml',\n 'dcr' => 'application/x-director',\n 'dcurl' => 'text/vnd.curl.dcurl',\n 'dd2' => 'application/vnd.oma.dd2+xml',\n 'ddd' => 'application/vnd.fujixerox.ddd',\n 'ddf' => 'application/vnd.syncml.dmddf+xml',\n 'dds' => 'image/vnd.ms-dds',\n 'deb' => 'application/x-debian-package',\n 'def' => 'text/plain',\n 'deploy' => 'application/octet-stream',\n 'der' => 'application/x-x509-ca-cert',\n 'dfac' => 'application/vnd.dreamfactory',\n 'dgc' => 'application/x-dgc-compressed',\n 'dib' => 'image/bmp',\n 'dic' => 'text/x-c',\n 'dir' => 'application/x-director',\n 'dis' => 'application/vnd.mobius.dis',\n 'disposition-notification' => 'message/disposition-notification',\n 'dist' => 'application/octet-stream',\n 'distz' => 'application/octet-stream',\n 'djv' => 'image/vnd.djvu',\n 'djvu' => 'image/vnd.djvu',\n 'dll' => 'application/octet-stream',\n 'dmg' => 'application/x-apple-diskimage',\n 'dmn' => 'application/octet-stream',\n 'dmp' => 'application/vnd.tcpdump.pcap',\n 'dms' => 'application/octet-stream',\n 'dna' => 'application/vnd.dna',\n 'doc' => 'application/msword',\n 'docm' => 'application/vnd.ms-word.template.macroEnabled.12',\n 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n 'dot' => 'application/msword',\n 'dotm' => 'application/vnd.ms-word.template.macroEnabled.12',\n 'dotx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',\n 'dp' => 'application/vnd.osgi.dp',\n 'dpg' => 'application/vnd.dpgraph',\n 'dpx' => 'image/dpx',\n 'dra' => 'audio/vnd.dra',\n 'drle' => 'image/dicom-rle',\n 'dsc' => 'text/prs.lines.tag',\n 'dssc' => 'application/dssc+der',\n 'dst' => 'application/octet-stream',\n 'dtb' => 'application/x-dtbook+xml',\n 'dtd' => 'application/xml-dtd',\n 'dts' => 'audio/vnd.dts',\n 'dtshd' => 'audio/vnd.dts.hd',\n 'dump' => 'application/octet-stream',\n 'dvb' => 'video/vnd.dvb.file',\n 'dvi' => 'application/x-dvi',\n 'dwd' => 'application/atsc-dwd+xml',\n 'dwf' => 'model/vnd.dwf',\n 'dwg' => 'image/vnd.dwg',\n 'dxf' => 'image/vnd.dxf',\n 'dxp' => 'application/vnd.spotfire.dxp',\n 'dxr' => 'application/x-director',\n 'ear' => 'application/java-archive',\n 'ecelp4800' => 'audio/vnd.nuera.ecelp4800',\n 'ecelp7470' => 'audio/vnd.nuera.ecelp7470',\n 'ecelp9600' => 'audio/vnd.nuera.ecelp9600',\n 'ecma' => 'application/ecmascript',\n 'edm' => 'application/vnd.novadigm.edm',\n 'edx' => 'application/vnd.novadigm.edx',\n 'efif' => 'application/vnd.picsel',\n 'ei6' => 'application/vnd.pg.osasli',\n 'elc' => 'application/octet-stream',\n 'emf' => 'image/emf',\n 'eml' => 'message/rfc822',\n 'emma' => 'application/emma+xml',\n 'emotionml' => 'application/emotionml+xml',\n 'emz' => 'application/x-msmetafile',\n 'eol' => 'audio/vnd.digital-winds',\n 'eot' => 'application/vnd.ms-fontobject',\n 'eps' => 'application/postscript',\n 'epub' => 'application/epub+zip',\n 'es3' => 'application/vnd.eszigno3+xml',\n 'esa' => 'application/vnd.osgi.subsystem',\n 'esf' => 'application/vnd.epson.esf',\n 'et3' => 'application/vnd.eszigno3+xml',\n 'etx' => 'text/x-setext',\n 'eva' => 'application/x-eva',\n 'evy' => 'application/x-envoy',\n 'exe' => 'application/octet-stream',\n 'exi' => 'application/exi',\n 'exp' => 'application/express',\n 'exr' => 'image/aces',\n 'ext' => 'application/vnd.novadigm.ext',\n 'ez' => 'application/andrew-inset',\n 'ez2' => 'application/vnd.ezpix-album',\n 'ez3' => 'application/vnd.ezpix-package',\n 'f' => 'text/x-fortran',\n 'f4v' => 'video/mp4',\n 'f77' => 'text/x-fortran',\n 'f90' => 'text/x-fortran',\n 'fbs' => 'image/vnd.fastbidsheet',\n 'fcdt' => 'application/vnd.adobe.formscentral.fcdt',\n 'fcs' => 'application/vnd.isac.fcs',\n 'fdf' => 'application/vnd.fdf',\n 'fdt' => 'application/fdt+xml',\n 'fe_launch' => 'application/vnd.denovo.fcselayout-link',\n 'fg5' => 'application/vnd.fujitsu.oasysgp',\n 'fgd' => 'application/x-director',\n 'fh' => 'image/x-freehand',\n 'fh4' => 'image/x-freehand',\n 'fh5' => 'image/x-freehand',\n 'fh7' => 'image/x-freehand',\n 'fhc' => 'image/x-freehand',\n 'fig' => 'application/x-xfig',\n 'fits' => 'image/fits',\n 'flac' => 'audio/x-flac',\n 'fli' => 'video/x-fli',\n 'flo' => 'application/vnd.micrografx.flo',\n 'flv' => 'video/x-flv',\n 'flw' => 'application/vnd.kde.kivio',\n 'flx' => 'text/vnd.fmi.flexstor',\n 'fly' => 'text/vnd.fly',\n 'fm' => 'application/vnd.framemaker',\n 'fnc' => 'application/vnd.frogans.fnc',\n 'fo' => 'application/vnd.software602.filler.form+xml',\n 'for' => 'text/x-fortran',\n 'fpx' => 'image/vnd.fpx',\n 'frame' => 'application/vnd.framemaker',\n 'fsc' => 'application/vnd.fsc.weblaunch',\n 'fst' => 'image/vnd.fst',\n 'ftc' => 'application/vnd.fluxtime.clip',\n 'fti' => 'application/vnd.anser-web-funds-transfer-initiation',\n 'fvt' => 'video/vnd.fvt',\n 'fxp' => 'application/vnd.adobe.fxp',\n 'fxpl' => 'application/vnd.adobe.fxp',\n 'fzs' => 'application/vnd.fuzzysheet',\n 'g2w' => 'application/vnd.geoplan',\n 'g3' => 'image/g3fax',\n 'g3w' => 'application/vnd.geospace',\n 'gac' => 'application/vnd.groove-account',\n 'gam' => 'application/x-tads',\n 'gbr' => 'application/rpki-ghostbusters',\n 'gca' => 'application/x-gca-compressed',\n 'gdl' => 'model/vnd.gdl',\n 'gdoc' => 'application/vnd.google-apps.document',\n 'ged' => 'text/vnd.familysearch.gedcom',\n 'geo' => 'application/vnd.dynageo',\n 'geojson' => 'application/geo+json',\n 'gex' => 'application/vnd.geometry-explorer',\n 'ggb' => 'application/vnd.geogebra.file',\n 'ggt' => 'application/vnd.geogebra.tool',\n 'ghf' => 'application/vnd.groove-help',\n 'gif' => 'image/gif',\n 'gim' => 'application/vnd.groove-identity-message',\n 'glb' => 'model/gltf-binary',\n 'gltf' => 'model/gltf+json',\n 'gml' => 'application/gml+xml',\n 'gmx' => 'application/vnd.gmx',\n 'gnumeric' => 'application/x-gnumeric',\n 'gpg' => 'application/gpg-keys',\n 'gph' => 'application/vnd.flographit',\n 'gpx' => 'application/gpx+xml',\n 'gqf' => 'application/vnd.grafeq',\n 'gqs' => 'application/vnd.grafeq',\n 'gram' => 'application/srgs',\n 'gramps' => 'application/x-gramps-xml',\n 'gre' => 'application/vnd.geometry-explorer',\n 'grv' => 'application/vnd.groove-injector',\n 'grxml' => 'application/srgs+xml',\n 'gsf' => 'application/x-font-ghostscript',\n 'gsheet' => 'application/vnd.google-apps.spreadsheet',\n 'gslides' => 'application/vnd.google-apps.presentation',\n 'gtar' => 'application/x-gtar',\n 'gtm' => 'application/vnd.groove-tool-message',\n 'gtw' => 'model/vnd.gtw',\n 'gv' => 'text/vnd.graphviz',\n 'gxf' => 'application/gxf',\n 'gxt' => 'application/vnd.geonext',\n 'gz' => 'application/gzip',\n 'gzip' => 'application/gzip',\n 'h' => 'text/x-c',\n 'h261' => 'video/h261',\n 'h263' => 'video/h263',\n 'h264' => 'video/h264',\n 'hal' => 'application/vnd.hal+xml',\n 'hbci' => 'application/vnd.hbci',\n 'hbs' => 'text/x-handlebars-template',\n 'hdd' => 'application/x-virtualbox-hdd',\n 'hdf' => 'application/x-hdf',\n 'heic' => 'image/heic',\n 'heics' => 'image/heic-sequence',\n 'heif' => 'image/heif',\n 'heifs' => 'image/heif-sequence',\n 'hej2' => 'image/hej2k',\n 'held' => 'application/atsc-held+xml',\n 'hh' => 'text/x-c',\n 'hjson' => 'application/hjson',\n 'hlp' => 'application/winhlp',\n 'hpgl' => 'application/vnd.hp-hpgl',\n 'hpid' => 'application/vnd.hp-hpid',\n 'hps' => 'application/vnd.hp-hps',\n 'hqx' => 'application/mac-binhex40',\n 'hsj2' => 'image/hsj2',\n 'htc' => 'text/x-component',\n 'htke' => 'application/vnd.kenameaapp',\n 'htm' => 'text/html',\n 'html' => 'text/html',\n 'hvd' => 'application/vnd.yamaha.hv-dic',\n 'hvp' => 'application/vnd.yamaha.hv-voice',\n 'hvs' => 'application/vnd.yamaha.hv-script',\n 'i2g' => 'application/vnd.intergeo',\n 'icc' => 'application/vnd.iccprofile',\n 'ice' => 'x-conference/x-cooltalk',\n 'icm' => 'application/vnd.iccprofile',\n 'ico' => 'image/x-icon',\n 'ics' => 'text/calendar',\n 'ief' => 'image/ief',\n 'ifb' => 'text/calendar',\n 'ifm' => 'application/vnd.shana.informed.formdata',\n 'iges' => 'model/iges',\n 'igl' => 'application/vnd.igloader',\n 'igm' => 'application/vnd.insors.igm',\n 'igs' => 'model/iges',\n 'igx' => 'application/vnd.micrografx.igx',\n 'iif' => 'application/vnd.shana.informed.interchange',\n 'img' => 'application/octet-stream',\n 'imp' => 'application/vnd.accpac.simply.imp',\n 'ims' => 'application/vnd.ms-ims',\n 'in' => 'text/plain',\n 'ini' => 'text/plain',\n 'ink' => 'application/inkml+xml',\n 'inkml' => 'application/inkml+xml',\n 'install' => 'application/x-install-instructions',\n 'iota' => 'application/vnd.astraea-software.iota',\n 'ipfix' => 'application/ipfix',\n 'ipk' => 'application/vnd.shana.informed.package',\n 'irm' => 'application/vnd.ibm.rights-management',\n 'irp' => 'application/vnd.irepository.package+xml',\n 'iso' => 'application/x-iso9660-image',\n 'itp' => 'application/vnd.shana.informed.formtemplate',\n 'its' => 'application/its+xml',\n 'ivp' => 'application/vnd.immervision-ivp',\n 'ivu' => 'application/vnd.immervision-ivu',\n 'jad' => 'text/vnd.sun.j2me.app-descriptor',\n 'jade' => 'text/jade',\n 'jam' => 'application/vnd.jam',\n 'jar' => 'application/java-archive',\n 'jardiff' => 'application/x-java-archive-diff',\n 'java' => 'text/x-java-source',\n 'jhc' => 'image/jphc',\n 'jisp' => 'application/vnd.jisp',\n 'jls' => 'image/jls',\n 'jlt' => 'application/vnd.hp-jlyt',\n 'jng' => 'image/x-jng',\n 'jnlp' => 'application/x-java-jnlp-file',\n 'joda' => 'application/vnd.joost.joda-archive',\n 'jp2' => 'image/jp2',\n 'jpe' => 'image/jpeg',\n 'jpeg' => 'image/jpeg',\n 'jpf' => 'image/jpx',\n 'jpg' => 'image/jpeg',\n 'jpg2' => 'image/jp2',\n 'jpgm' => 'video/jpm',\n 'jpgv' => 'video/jpeg',\n 'jph' => 'image/jph',\n 'jpm' => 'video/jpm',\n 'jpx' => 'image/jpx',\n 'js' => 'application/javascript',\n 'json' => 'application/json',\n 'json5' => 'application/json5',\n 'jsonld' => 'application/ld+json',\n 'jsonml' => 'application/jsonml+json',\n 'jsx' => 'text/jsx',\n 'jt' => 'model/jt',\n 'jxr' => 'image/jxr',\n 'jxra' => 'image/jxra',\n 'jxrs' => 'image/jxrs',\n 'jxs' => 'image/jxs',\n 'jxsc' => 'image/jxsc',\n 'jxsi' => 'image/jxsi',\n 'jxss' => 'image/jxss',\n 'kar' => 'audio/midi',\n 'karbon' => 'application/vnd.kde.karbon',\n 'kdb' => 'application/octet-stream',\n 'kdbx' => 'application/x-keepass2',\n 'key' => 'application/x-iwork-keynote-sffkey',\n 'kfo' => 'application/vnd.kde.kformula',\n 'kia' => 'application/vnd.kidspiration',\n 'kml' => 'application/vnd.google-earth.kml+xml',\n 'kmz' => 'application/vnd.google-earth.kmz',\n 'kne' => 'application/vnd.kinar',\n 'knp' => 'application/vnd.kinar',\n 'kon' => 'application/vnd.kde.kontour',\n 'kpr' => 'application/vnd.kde.kpresenter',\n 'kpt' => 'application/vnd.kde.kpresenter',\n 'kpxx' => 'application/vnd.ds-keypoint',\n 'ksp' => 'application/vnd.kde.kspread',\n 'ktr' => 'application/vnd.kahootz',\n 'ktx' => 'image/ktx',\n 'ktx2' => 'image/ktx2',\n 'ktz' => 'application/vnd.kahootz',\n 'kwd' => 'application/vnd.kde.kword',\n 'kwt' => 'application/vnd.kde.kword',\n 'lasxml' => 'application/vnd.las.las+xml',\n 'latex' => 'application/x-latex',\n 'lbd' => 'application/vnd.llamagraphics.life-balance.desktop',\n 'lbe' => 'application/vnd.llamagraphics.life-balance.exchange+xml',\n 'les' => 'application/vnd.hhe.lesson-player',\n 'less' => 'text/less',\n 'lgr' => 'application/lgr+xml',\n 'lha' => 'application/octet-stream',\n 'link66' => 'application/vnd.route66.link66+xml',\n 'list' => 'text/plain',\n 'list3820' => 'application/vnd.ibm.modcap',\n 'listafp' => 'application/vnd.ibm.modcap',\n 'litcoffee' => 'text/coffeescript',\n 'lnk' => 'application/x-ms-shortcut',\n 'log' => 'text/plain',\n 'lostxml' => 'application/lost+xml',\n 'lrf' => 'application/octet-stream',\n 'lrm' => 'application/vnd.ms-lrm',\n 'ltf' => 'application/vnd.frogans.ltf',\n 'lua' => 'text/x-lua',\n 'luac' => 'application/x-lua-bytecode',\n 'lvp' => 'audio/vnd.lucent.voice',\n 'lwp' => 'application/vnd.lotus-wordpro',\n 'lzh' => 'application/octet-stream',\n 'm1v' => 'video/mpeg',\n 'm2a' => 'audio/mpeg',\n 'm2v' => 'video/mpeg',\n 'm3a' => 'audio/mpeg',\n 'm3u' => 'text/plain',\n 'm3u8' => 'application/vnd.apple.mpegurl',\n 'm4a' => 'audio/x-m4a',\n 'm4p' => 'application/mp4',\n 'm4s' => 'video/iso.segment',\n 'm4u' => 'application/vnd.mpegurl',\n 'm4v' => 'video/x-m4v',\n 'm13' => 'application/x-msmediaview',\n 'm14' => 'application/x-msmediaview',\n 'm21' => 'application/mp21',\n 'ma' => 'application/mathematica',\n 'mads' => 'application/mads+xml',\n 'maei' => 'application/mmt-aei+xml',\n 'mag' => 'application/vnd.ecowin.chart',\n 'maker' => 'application/vnd.framemaker',\n 'man' => 'text/troff',\n 'manifest' => 'text/cache-manifest',\n 'map' => 'application/json',\n 'mar' => 'application/octet-stream',\n 'markdown' => 'text/markdown',\n 'mathml' => 'application/mathml+xml',\n 'mb' => 'application/mathematica',\n 'mbk' => 'application/vnd.mobius.mbk',\n 'mbox' => 'application/mbox',\n 'mc1' => 'application/vnd.medcalcdata',\n 'mcd' => 'application/vnd.mcd',\n 'mcurl' => 'text/vnd.curl.mcurl',\n 'md' => 'text/markdown',\n 'mdb' => 'application/x-msaccess',\n 'mdi' => 'image/vnd.ms-modi',\n 'mdx' => 'text/mdx',\n 'me' => 'text/troff',\n 'mesh' => 'model/mesh',\n 'meta4' => 'application/metalink4+xml',\n 'metalink' => 'application/metalink+xml',\n 'mets' => 'application/mets+xml',\n 'mfm' => 'application/vnd.mfmp',\n 'mft' => 'application/rpki-manifest',\n 'mgp' => 'application/vnd.osgeo.mapguide.package',\n 'mgz' => 'application/vnd.proteus.magazine',\n 'mid' => 'audio/midi',\n 'midi' => 'audio/midi',\n 'mie' => 'application/x-mie',\n 'mif' => 'application/vnd.mif',\n 'mime' => 'message/rfc822',\n 'mj2' => 'video/mj2',\n 'mjp2' => 'video/mj2',\n 'mjs' => 'text/javascript',\n 'mk3d' => 'video/x-matroska',\n 'mka' => 'audio/x-matroska',\n 'mkd' => 'text/x-markdown',\n 'mks' => 'video/x-matroska',\n 'mkv' => 'video/x-matroska',\n 'mlp' => 'application/vnd.dolby.mlp',\n 'mmd' => 'application/vnd.chipnuts.karaoke-mmd',\n 'mmf' => 'application/vnd.smaf',\n 'mml' => 'text/mathml',\n 'mmr' => 'image/vnd.fujixerox.edmics-mmr',\n 'mng' => 'video/x-mng',\n 'mny' => 'application/x-msmoney',\n 'mobi' => 'application/x-mobipocket-ebook',\n 'mods' => 'application/mods+xml',\n 'mov' => 'video/quicktime',\n 'movie' => 'video/x-sgi-movie',\n 'mp2' => 'audio/mpeg',\n 'mp2a' => 'audio/mpeg',\n 'mp3' => 'audio/mpeg',\n 'mp4' => 'video/mp4',\n 'mp4a' => 'audio/mp4',\n 'mp4s' => 'application/mp4',\n 'mp4v' => 'video/mp4',\n 'mp21' => 'application/mp21',\n 'mpc' => 'application/vnd.mophun.certificate',\n 'mpd' => 'application/dash+xml',\n 'mpe' => 'video/mpeg',\n 'mpeg' => 'video/mpeg',\n 'mpf' => 'application/media-policy-dataset+xml',\n 'mpg' => 'video/mpeg',\n 'mpg4' => 'video/mp4',\n 'mpga' => 'audio/mpeg',\n 'mpkg' => 'application/vnd.apple.installer+xml',\n 'mpm' => 'application/vnd.blueice.multipass',\n 'mpn' => 'application/vnd.mophun.application',\n 'mpp' => 'application/vnd.ms-project',\n 'mpt' => 'application/vnd.ms-project',\n 'mpy' => 'application/vnd.ibm.minipay',\n 'mqy' => 'application/vnd.mobius.mqy',\n 'mrc' => 'application/marc',\n 'mrcx' => 'application/marcxml+xml',\n 'ms' => 'text/troff',\n 'mscml' => 'application/mediaservercontrol+xml',\n 'mseed' => 'application/vnd.fdsn.mseed',\n 'mseq' => 'application/vnd.mseq',\n 'msf' => 'application/vnd.epson.msf',\n 'msg' => 'application/vnd.ms-outlook',\n 'msh' => 'model/mesh',\n 'msi' => 'application/x-msdownload',\n 'msix' => 'application/msix',\n 'msixbundle' => 'application/msixbundle',\n 'msl' => 'application/vnd.mobius.msl',\n 'msm' => 'application/octet-stream',\n 'msp' => 'application/octet-stream',\n 'msty' => 'application/vnd.muvee.style',\n 'mtl' => 'model/mtl',\n 'mts' => 'model/vnd.mts',\n 'mus' => 'application/vnd.musician',\n 'musd' => 'application/mmt-usd+xml',\n 'musicxml' => 'application/vnd.recordare.musicxml+xml',\n 'mvb' => 'application/x-msmediaview',\n 'mvt' => 'application/vnd.mapbox-vector-tile',\n 'mwf' => 'application/vnd.mfer',\n 'mxf' => 'application/mxf',\n 'mxl' => 'application/vnd.recordare.musicxml',\n 'mxmf' => 'audio/mobile-xmf',\n 'mxml' => 'application/xv+xml',\n 'mxs' => 'application/vnd.triscape.mxs',\n 'mxu' => 'video/vnd.mpegurl',\n 'n-gage' => 'application/vnd.nokia.n-gage.symbian.install',\n 'n3' => 'text/n3',\n 'nb' => 'application/mathematica',\n 'nbp' => 'application/vnd.wolfram.player',\n 'nc' => 'application/x-netcdf',\n 'ncx' => 'application/x-dtbncx+xml',\n 'ndjson' => 'application/x-ndjson',\n 'nfo' => 'text/x-nfo',\n 'ngdat' => 'application/vnd.nokia.n-gage.data',\n 'nitf' => 'application/vnd.nitf',\n 'nlu' => 'application/vnd.neurolanguage.nlu',\n 'nml' => 'application/vnd.enliven',\n 'nnd' => 'application/vnd.noblenet-directory',\n 'nns' => 'application/vnd.noblenet-sealer',\n 'nnw' => 'application/vnd.noblenet-web',\n 'npx' => 'image/vnd.net-fpx',\n 'nq' => 'application/n-quads',\n 'nsc' => 'application/x-conference',\n 'nsf' => 'application/vnd.lotus-notes',\n 'nt' => 'application/n-triples',\n 'ntf' => 'application/vnd.nitf',\n 'numbers' => 'application/x-iwork-numbers-sffnumbers',\n 'nzb' => 'application/x-nzb',\n 'oa2' => 'application/vnd.fujitsu.oasys2',\n 'oa3' => 'application/vnd.fujitsu.oasys3',\n 'oas' => 'application/vnd.fujitsu.oasys',\n 'obd' => 'application/x-msbinder',\n 'obgx' => 'application/vnd.openblox.game+xml',\n 'obj' => 'model/obj',\n 'oda' => 'application/oda',\n 'odb' => 'application/vnd.oasis.opendocument.database',\n 'odc' => 'application/vnd.oasis.opendocument.chart',\n 'odf' => 'application/vnd.oasis.opendocument.formula',\n 'odft' => 'application/vnd.oasis.opendocument.formula-template',\n 'odg' => 'application/vnd.oasis.opendocument.graphics',\n 'odi' => 'application/vnd.oasis.opendocument.image',\n 'odm' => 'application/vnd.oasis.opendocument.text-master',\n 'odp' => 'application/vnd.oasis.opendocument.presentation',\n 'ods' => 'application/vnd.oasis.opendocument.spreadsheet',\n 'odt' => 'application/vnd.oasis.opendocument.text',\n 'oga' => 'audio/ogg',\n 'ogex' => 'model/vnd.opengex',\n 'ogg' => 'audio/ogg',\n 'ogv' => 'video/ogg',\n 'ogx' => 'application/ogg',\n 'omdoc' => 'application/omdoc+xml',\n 'onepkg' => 'application/onenote',\n 'onetmp' => 'application/onenote',\n 'onetoc' => 'application/onenote',\n 'onetoc2' => 'application/onenote',\n 'opf' => 'application/oebps-package+xml',\n 'opml' => 'text/x-opml',\n 'oprc' => 'application/vnd.palm',\n 'opus' => 'audio/ogg',\n 'org' => 'text/x-org',\n 'osf' => 'application/vnd.yamaha.openscoreformat',\n 'osfpvg' => 'application/vnd.yamaha.openscoreformat.osfpvg+xml',\n 'osm' => 'application/vnd.openstreetmap.data+xml',\n 'otc' => 'application/vnd.oasis.opendocument.chart-template',\n 'otf' => 'font/otf',\n 'otg' => 'application/vnd.oasis.opendocument.graphics-template',\n 'oth' => 'application/vnd.oasis.opendocument.text-web',\n 'oti' => 'application/vnd.oasis.opendocument.image-template',\n 'otp' => 'application/vnd.oasis.opendocument.presentation-template',\n 'ots' => 'application/vnd.oasis.opendocument.spreadsheet-template',\n 'ott' => 'application/vnd.oasis.opendocument.text-template',\n 'ova' => 'application/x-virtualbox-ova',\n 'ovf' => 'application/x-virtualbox-ovf',\n 'owl' => 'application/rdf+xml',\n 'oxps' => 'application/oxps',\n 'oxt' => 'application/vnd.openofficeorg.extension',\n 'p' => 'text/x-pascal',\n 'p7a' => 'application/x-pkcs7-signature',\n 'p7b' => 'application/x-pkcs7-certificates',\n 'p7c' => 'application/pkcs7-mime',\n 'p7m' => 'application/pkcs7-mime',\n 'p7r' => 'application/x-pkcs7-certreqresp',\n 'p7s' => 'application/pkcs7-signature',\n 'p8' => 'application/pkcs8',\n 'p10' => 'application/x-pkcs10',\n 'p12' => 'application/x-pkcs12',\n 'pac' => 'application/x-ns-proxy-autoconfig',\n 'pages' => 'application/x-iwork-pages-sffpages',\n 'pas' => 'text/x-pascal',\n 'paw' => 'application/vnd.pawaafile',\n 'pbd' => 'application/vnd.powerbuilder6',\n 'pbm' => 'image/x-portable-bitmap',\n 'pcap' => 'application/vnd.tcpdump.pcap',\n 'pcf' => 'application/x-font-pcf',\n 'pcl' => 'application/vnd.hp-pcl',\n 'pclxl' => 'application/vnd.hp-pclxl',\n 'pct' => 'image/x-pict',\n 'pcurl' => 'application/vnd.curl.pcurl',\n 'pcx' => 'image/x-pcx',\n 'pdb' => 'application/x-pilot',\n 'pde' => 'text/x-processing',\n 'pdf' => 'application/pdf',\n 'pem' => 'application/x-x509-user-cert',\n 'pfa' => 'application/x-font-type1',\n 'pfb' => 'application/x-font-type1',\n 'pfm' => 'application/x-font-type1',\n 'pfr' => 'application/font-tdpfr',\n 'pfx' => 'application/x-pkcs12',\n 'pgm' => 'image/x-portable-graymap',\n 'pgn' => 'application/x-chess-pgn',\n 'pgp' => 'application/pgp',\n 'phar' => 'application/octet-stream',\n 'php' => 'application/x-httpd-php',\n 'php3' => 'application/x-httpd-php',\n 'php4' => 'application/x-httpd-php',\n 'phps' => 'application/x-httpd-php-source',\n 'phtml' => 'application/x-httpd-php',\n 'pic' => 'image/x-pict',\n 'pkg' => 'application/octet-stream',\n 'pki' => 'application/pkixcmp',\n 'pkipath' => 'application/pkix-pkipath',\n 'pkpass' => 'application/vnd.apple.pkpass',\n 'pl' => 'application/x-perl',\n 'plb' => 'application/vnd.3gpp.pic-bw-large',\n 'plc' => 'application/vnd.mobius.plc',\n 'plf' => 'application/vnd.pocketlearn',\n 'pls' => 'application/pls+xml',\n 'pm' => 'application/x-perl',\n 'pml' => 'application/vnd.ctc-posml',\n 'png' => 'image/png',\n 'pnm' => 'image/x-portable-anymap',\n 'portpkg' => 'application/vnd.macports.portpkg',\n 'pot' => 'application/vnd.ms-powerpoint',\n 'potm' => 'application/vnd.ms-powerpoint.presentation.macroEnabled.12',\n 'potx' => 'application/vnd.openxmlformats-officedocument.presentationml.template',\n 'ppa' => 'application/vnd.ms-powerpoint',\n 'ppam' => 'application/vnd.ms-powerpoint.addin.macroEnabled.12',\n 'ppd' => 'application/vnd.cups-ppd',\n 'ppm' => 'image/x-portable-pixmap',\n 'pps' => 'application/vnd.ms-powerpoint',\n 'ppsm' => 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12',\n 'ppsx' => 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',\n 'ppt' => 'application/powerpoint',\n 'pptm' => 'application/vnd.ms-powerpoint.presentation.macroEnabled.12',\n 'pptx' => 'application/vnd.openxmlformats-officedocument.presentationml.presentation',\n 'pqa' => 'application/vnd.palm',\n 'prc' => 'model/prc',\n 'pre' => 'application/vnd.lotus-freelance',\n 'prf' => 'application/pics-rules',\n 'provx' => 'application/provenance+xml',\n 'ps' => 'application/postscript',\n 'psb' => 'application/vnd.3gpp.pic-bw-small',\n 'psd' => 'application/x-photoshop',\n 'psf' => 'application/x-font-linux-psf',\n 'pskcxml' => 'application/pskc+xml',\n 'pti' => 'image/prs.pti',\n 'ptid' => 'application/vnd.pvi.ptid1',\n 'pub' => 'application/x-mspublisher',\n 'pv' => 'application/octet-stream',\n 'pvb' => 'application/vnd.3gpp.pic-bw-var',\n 'pwn' => 'application/vnd.3m.post-it-notes',\n 'pxf' => 'application/octet-stream',\n 'pya' => 'audio/vnd.ms-playready.media.pya',\n 'pyo' => 'model/vnd.pytha.pyox',\n 'pyox' => 'model/vnd.pytha.pyox',\n 'pyv' => 'video/vnd.ms-playready.media.pyv',\n 'qam' => 'application/vnd.epson.quickanime',\n 'qbo' => 'application/vnd.intu.qbo',\n 'qfx' => 'application/vnd.intu.qfx',\n 'qps' => 'application/vnd.publishare-delta-tree',\n 'qt' => 'video/quicktime',\n 'qwd' => 'application/vnd.quark.quarkxpress',\n 'qwt' => 'application/vnd.quark.quarkxpress',\n 'qxb' => 'application/vnd.quark.quarkxpress',\n 'qxd' => 'application/vnd.quark.quarkxpress',\n 'qxl' => 'application/vnd.quark.quarkxpress',\n 'qxt' => 'application/vnd.quark.quarkxpress',\n 'ra' => 'audio/x-realaudio',\n 'ram' => 'audio/x-pn-realaudio',\n 'raml' => 'application/raml+yaml',\n 'rapd' => 'application/route-apd+xml',\n 'rar' => 'application/x-rar',\n 'ras' => 'image/x-cmu-raster',\n 'rcprofile' => 'application/vnd.ipunplugged.rcprofile',\n 'rdf' => 'application/rdf+xml',\n 'rdz' => 'application/vnd.data-vision.rdz',\n 'relo' => 'application/p2p-overlay+xml',\n 'rep' => 'application/vnd.businessobjects',\n 'res' => 'application/x-dtbresource+xml',\n 'rgb' => 'image/x-rgb',\n 'rif' => 'application/reginfo+xml',\n 'rip' => 'audio/vnd.rip',\n 'ris' => 'application/x-research-info-systems',\n 'rl' => 'application/resource-lists+xml',\n 'rlc' => 'image/vnd.fujixerox.edmics-rlc',\n 'rld' => 'application/resource-lists-diff+xml',\n 'rm' => 'audio/x-pn-realaudio',\n 'rmi' => 'audio/midi',\n 'rmp' => 'audio/x-pn-realaudio-plugin',\n 'rms' => 'application/vnd.jcp.javame.midlet-rms',\n 'rmvb' => 'application/vnd.rn-realmedia-vbr',\n 'rnc' => 'application/relax-ng-compact-syntax',\n 'rng' => 'application/xml',\n 'roa' => 'application/rpki-roa',\n 'roff' => 'text/troff',\n 'rp9' => 'application/vnd.cloanto.rp9',\n 'rpm' => 'audio/x-pn-realaudio-plugin',\n 'rpss' => 'application/vnd.nokia.radio-presets',\n 'rpst' => 'application/vnd.nokia.radio-preset',\n 'rq' => 'application/sparql-query',\n 'rs' => 'application/rls-services+xml',\n 'rsa' => 'application/x-pkcs7',\n 'rsat' => 'application/atsc-rsat+xml',\n 'rsd' => 'application/rsd+xml',\n 'rsheet' => 'application/urc-ressheet+xml',\n 'rss' => 'application/rss+xml',\n 'rtf' => 'text/rtf',\n 'rtx' => 'text/richtext',\n 'run' => 'application/x-makeself',\n 'rusd' => 'application/route-usd+xml',\n 'rv' => 'video/vnd.rn-realvideo',\n 's' => 'text/x-asm',\n 's3m' => 'audio/s3m',\n 'saf' => 'application/vnd.yamaha.smaf-audio',\n 'sass' => 'text/x-sass',\n 'sbml' => 'application/sbml+xml',\n 'sc' => 'application/vnd.ibm.secure-container',\n 'scd' => 'application/x-msschedule',\n 'scm' => 'application/vnd.lotus-screencam',\n 'scq' => 'application/scvp-cv-request',\n 'scs' => 'application/scvp-cv-response',\n 'scss' => 'text/x-scss',\n 'scurl' => 'text/vnd.curl.scurl',\n 'sda' => 'application/vnd.stardivision.draw',\n 'sdc' => 'application/vnd.stardivision.calc',\n 'sdd' => 'application/vnd.stardivision.impress',\n 'sdkd' => 'application/vnd.solent.sdkm+xml',\n 'sdkm' => 'application/vnd.solent.sdkm+xml',\n 'sdp' => 'application/sdp',\n 'sdw' => 'application/vnd.stardivision.writer',\n 'sea' => 'application/octet-stream',\n 'see' => 'application/vnd.seemail',\n 'seed' => 'application/vnd.fdsn.seed',\n 'sema' => 'application/vnd.sema',\n 'semd' => 'application/vnd.semd',\n 'semf' => 'application/vnd.semf',\n 'senmlx' => 'application/senml+xml',\n 'sensmlx' => 'application/sensml+xml',\n 'ser' => 'application/java-serialized-object',\n 'setpay' => 'application/set-payment-initiation',\n 'setreg' => 'application/set-registration-initiation',\n 'sfd-hdstx' => 'application/vnd.hydrostatix.sof-data',\n 'sfs' => 'application/vnd.spotfire.sfs',\n 'sfv' => 'text/x-sfv',\n 'sgi' => 'image/sgi',\n 'sgl' => 'application/vnd.stardivision.writer-global',\n 'sgm' => 'text/sgml',\n 'sgml' => 'text/sgml',\n 'sh' => 'application/x-sh',\n 'shar' => 'application/x-shar',\n 'shex' => 'text/shex',\n 'shf' => 'application/shf+xml',\n 'shtml' => 'text/html',\n 'sid' => 'image/x-mrsid-image',\n 'sieve' => 'application/sieve',\n 'sig' => 'application/pgp-signature',\n 'sil' => 'audio/silk',\n 'silo' => 'model/mesh',\n 'sis' => 'application/vnd.symbian.install',\n 'sisx' => 'application/vnd.symbian.install',\n 'sit' => 'application/x-stuffit',\n 'sitx' => 'application/x-stuffitx',\n 'siv' => 'application/sieve',\n 'skd' => 'application/vnd.koan',\n 'skm' => 'application/vnd.koan',\n 'skp' => 'application/vnd.koan',\n 'skt' => 'application/vnd.koan',\n 'sldm' => 'application/vnd.ms-powerpoint.slide.macroenabled.12',\n 'sldx' => 'application/vnd.openxmlformats-officedocument.presentationml.slide',\n 'slim' => 'text/slim',\n 'slm' => 'text/slim',\n 'sls' => 'application/route-s-tsid+xml',\n 'slt' => 'application/vnd.epson.salt',\n 'sm' => 'application/vnd.stepmania.stepchart',\n 'smf' => 'application/vnd.stardivision.math',\n 'smi' => 'application/smil',\n 'smil' => 'application/smil',\n 'smv' => 'video/x-smv',\n 'smzip' => 'application/vnd.stepmania.package',\n 'snd' => 'audio/basic',\n 'snf' => 'application/x-font-snf',\n 'so' => 'application/octet-stream',\n 'spc' => 'application/x-pkcs7-certificates',\n 'spdx' => 'text/spdx',\n 'spf' => 'application/vnd.yamaha.smaf-phrase',\n 'spl' => 'application/x-futuresplash',\n 'spot' => 'text/vnd.in3d.spot',\n 'spp' => 'application/scvp-vp-response',\n 'spq' => 'application/scvp-vp-request',\n 'spx' => 'audio/ogg',\n 'sql' => 'application/x-sql',\n 'src' => 'application/x-wais-source',\n 'srt' => 'application/x-subrip',\n 'sru' => 'application/sru+xml',\n 'srx' => 'application/sparql-results+xml',\n 'ssdl' => 'application/ssdl+xml',\n 'sse' => 'application/vnd.kodak-descriptor',\n 'ssf' => 'application/vnd.epson.ssf',\n 'ssml' => 'application/ssml+xml',\n 'sst' => 'application/octet-stream',\n 'st' => 'application/vnd.sailingtracker.track',\n 'stc' => 'application/vnd.sun.xml.calc.template',\n 'std' => 'application/vnd.sun.xml.draw.template',\n 'step' => 'application/STEP',\n 'stf' => 'application/vnd.wt.stf',\n 'sti' => 'application/vnd.sun.xml.impress.template',\n 'stk' => 'application/hyperstudio',\n 'stl' => 'model/stl',\n 'stp' => 'application/STEP',\n 'stpx' => 'model/step+xml',\n 'stpxz' => 'model/step-xml+zip',\n 'stpz' => 'model/step+zip',\n 'str' => 'application/vnd.pg.format',\n 'stw' => 'application/vnd.sun.xml.writer.template',\n 'styl' => 'text/stylus',\n 'stylus' => 'text/stylus',\n 'sub' => 'text/vnd.dvb.subtitle',\n 'sus' => 'application/vnd.sus-calendar',\n 'susp' => 'application/vnd.sus-calendar',\n 'sv4cpio' => 'application/x-sv4cpio',\n 'sv4crc' => 'application/x-sv4crc',\n 'svc' => 'application/vnd.dvb.service',\n 'svd' => 'application/vnd.svd',\n 'svg' => 'image/svg+xml',\n 'svgz' => 'image/svg+xml',\n 'swa' => 'application/x-director',\n 'swf' => 'application/x-shockwave-flash',\n 'swi' => 'application/vnd.aristanetworks.swi',\n 'swidtag' => 'application/swid+xml',\n 'sxc' => 'application/vnd.sun.xml.calc',\n 'sxd' => 'application/vnd.sun.xml.draw',\n 'sxg' => 'application/vnd.sun.xml.writer.global',\n 'sxi' => 'application/vnd.sun.xml.impress',\n 'sxm' => 'application/vnd.sun.xml.math',\n 'sxw' => 'application/vnd.sun.xml.writer',\n 't' => 'text/troff',\n 't3' => 'application/x-t3vm-image',\n 't38' => 'image/t38',\n 'taglet' => 'application/vnd.mynfc',\n 'tao' => 'application/vnd.tao.intent-module-archive',\n 'tap' => 'image/vnd.tencent.tap',\n 'tar' => 'application/x-tar',\n 'tcap' => 'application/vnd.3gpp2.tcap',\n 'tcl' => 'application/x-tcl',\n 'td' => 'application/urc-targetdesc+xml',\n 'teacher' => 'application/vnd.smart.teacher',\n 'tei' => 'application/tei+xml',\n 'teicorpus' => 'application/tei+xml',\n 'tex' => 'application/x-tex',\n 'texi' => 'application/x-texinfo',\n 'texinfo' => 'application/x-texinfo',\n 'text' => 'text/plain',\n 'tfi' => 'application/thraud+xml',\n 'tfm' => 'application/x-tex-tfm',\n 'tfx' => 'image/tiff-fx',\n 'tga' => 'image/x-tga',\n 'tgz' => 'application/x-tar',\n 'thmx' => 'application/vnd.ms-officetheme',\n 'tif' => 'image/tiff',\n 'tiff' => 'image/tiff',\n 'tk' => 'application/x-tcl',\n 'tmo' => 'application/vnd.tmobile-livetv',\n 'toml' => 'application/toml',\n 'torrent' => 'application/x-bittorrent',\n 'tpl' => 'application/vnd.groove-tool-template',\n 'tpt' => 'application/vnd.trid.tpt',\n 'tr' => 'text/troff',\n 'tra' => 'application/vnd.trueapp',\n 'trig' => 'application/trig',\n 'trm' => 'application/x-msterminal',\n 'ts' => 'video/mp2t',\n 'tsd' => 'application/timestamped-data',\n 'tsv' => 'text/tab-separated-values',\n 'ttc' => 'font/collection',\n 'ttf' => 'font/ttf',\n 'ttl' => 'text/turtle',\n 'ttml' => 'application/ttml+xml',\n 'twd' => 'application/vnd.simtech-mindmapper',\n 'twds' => 'application/vnd.simtech-mindmapper',\n 'txd' => 'application/vnd.genomatix.tuxedo',\n 'txf' => 'application/vnd.mobius.txf',\n 'txt' => 'text/plain',\n 'u3d' => 'model/u3d',\n 'u8dsn' => 'message/global-delivery-status',\n 'u8hdr' => 'message/global-headers',\n 'u8mdn' => 'message/global-disposition-notification',\n 'u8msg' => 'message/global',\n 'u32' => 'application/x-authorware-bin',\n 'ubj' => 'application/ubjson',\n 'udeb' => 'application/x-debian-package',\n 'ufd' => 'application/vnd.ufdl',\n 'ufdl' => 'application/vnd.ufdl',\n 'ulx' => 'application/x-glulx',\n 'umj' => 'application/vnd.umajin',\n 'unityweb' => 'application/vnd.unity',\n 'uo' => 'application/vnd.uoml+xml',\n 'uoml' => 'application/vnd.uoml+xml',\n 'uri' => 'text/uri-list',\n 'uris' => 'text/uri-list',\n 'urls' => 'text/uri-list',\n 'usda' => 'model/vnd.usda',\n 'usdz' => 'model/vnd.usdz+zip',\n 'ustar' => 'application/x-ustar',\n 'utz' => 'application/vnd.uiq.theme',\n 'uu' => 'text/x-uuencode',\n 'uva' => 'audio/vnd.dece.audio',\n 'uvd' => 'application/vnd.dece.data',\n 'uvf' => 'application/vnd.dece.data',\n 'uvg' => 'image/vnd.dece.graphic',\n 'uvh' => 'video/vnd.dece.hd',\n 'uvi' => 'image/vnd.dece.graphic',\n 'uvm' => 'video/vnd.dece.mobile',\n 'uvp' => 'video/vnd.dece.pd',\n 'uvs' => 'video/vnd.dece.sd',\n 'uvt' => 'application/vnd.dece.ttml+xml',\n 'uvu' => 'video/vnd.uvvu.mp4',\n 'uvv' => 'video/vnd.dece.video',\n 'uvva' => 'audio/vnd.dece.audio',\n 'uvvd' => 'application/vnd.dece.data',\n 'uvvf' => 'application/vnd.dece.data',\n 'uvvg' => 'image/vnd.dece.graphic',\n 'uvvh' => 'video/vnd.dece.hd',\n 'uvvi' => 'image/vnd.dece.graphic',\n 'uvvm' => 'video/vnd.dece.mobile',\n 'uvvp' => 'video/vnd.dece.pd',\n 'uvvs' => 'video/vnd.dece.sd',\n 'uvvt' => 'application/vnd.dece.ttml+xml',\n 'uvvu' => 'video/vnd.uvvu.mp4',\n 'uvvv' => 'video/vnd.dece.video',\n 'uvvx' => 'application/vnd.dece.unspecified',\n 'uvvz' => 'application/vnd.dece.zip',\n 'uvx' => 'application/vnd.dece.unspecified',\n 'uvz' => 'application/vnd.dece.zip',\n 'vbox' => 'application/x-virtualbox-vbox',\n 'vbox-extpack' => 'application/x-virtualbox-vbox-extpack',\n 'vcard' => 'text/vcard',\n 'vcd' => 'application/x-cdlink',\n 'vcf' => 'text/x-vcard',\n 'vcg' => 'application/vnd.groove-vcard',\n 'vcs' => 'text/x-vcalendar',\n 'vcx' => 'application/vnd.vcx',\n 'vdi' => 'application/x-virtualbox-vdi',\n 'vds' => 'model/vnd.sap.vds',\n 'vhd' => 'application/x-virtualbox-vhd',\n 'vis' => 'application/vnd.visionary',\n 'viv' => 'video/vnd.vivo',\n 'vlc' => 'application/videolan',\n 'vmdk' => 'application/x-virtualbox-vmdk',\n 'vob' => 'video/x-ms-vob',\n 'vor' => 'application/vnd.stardivision.writer',\n 'vox' => 'application/x-authorware-bin',\n 'vrml' => 'model/vrml',\n 'vsd' => 'application/vnd.visio',\n 'vsf' => 'application/vnd.vsf',\n 'vss' => 'application/vnd.visio',\n 'vst' => 'application/vnd.visio',\n 'vsw' => 'application/vnd.visio',\n 'vtf' => 'image/vnd.valve.source.texture',\n 'vtt' => 'text/vtt',\n 'vtu' => 'model/vnd.vtu',\n 'vxml' => 'application/voicexml+xml',\n 'w3d' => 'application/x-director',\n 'wad' => 'application/x-doom',\n 'wadl' => 'application/vnd.sun.wadl+xml',\n 'war' => 'application/java-archive',\n 'wasm' => 'application/wasm',\n 'wav' => 'audio/x-wav',\n 'wax' => 'audio/x-ms-wax',\n 'wbmp' => 'image/vnd.wap.wbmp',\n 'wbs' => 'application/vnd.criticaltools.wbs+xml',\n 'wbxml' => 'application/wbxml',\n 'wcm' => 'application/vnd.ms-works',\n 'wdb' => 'application/vnd.ms-works',\n 'wdp' => 'image/vnd.ms-photo',\n 'weba' => 'audio/webm',\n 'webapp' => 'application/x-web-app-manifest+json',\n 'webm' => 'video/webm',\n 'webmanifest' => 'application/manifest+json',\n 'webp' => 'image/webp',\n 'wg' => 'application/vnd.pmi.widget',\n 'wgsl' => 'text/wgsl',\n 'wgt' => 'application/widget',\n 'wif' => 'application/watcherinfo+xml',\n 'wks' => 'application/vnd.ms-works',\n 'wm' => 'video/x-ms-wm',\n 'wma' => 'audio/x-ms-wma',\n 'wmd' => 'application/x-ms-wmd',\n 'wmf' => 'image/wmf',\n 'wml' => 'text/vnd.wap.wml',\n 'wmlc' => 'application/wmlc',\n 'wmls' => 'text/vnd.wap.wmlscript',\n 'wmlsc' => 'application/vnd.wap.wmlscriptc',\n 'wmv' => 'video/x-ms-wmv',\n 'wmx' => 'video/x-ms-wmx',\n 'wmz' => 'application/x-msmetafile',\n 'woff' => 'font/woff',\n 'woff2' => 'font/woff2',\n 'word' => 'application/msword',\n 'wpd' => 'application/vnd.wordperfect',\n 'wpl' => 'application/vnd.ms-wpl',\n 'wps' => 'application/vnd.ms-works',\n 'wqd' => 'application/vnd.wqd',\n 'wri' => 'application/x-mswrite',\n 'wrl' => 'model/vrml',\n 'wsc' => 'message/vnd.wfa.wsc',\n 'wsdl' => 'application/wsdl+xml',\n 'wspolicy' => 'application/wspolicy+xml',\n 'wtb' => 'application/vnd.webturbo',\n 'wvx' => 'video/x-ms-wvx',\n 'x3d' => 'model/x3d+xml',\n 'x3db' => 'model/x3d+fastinfoset',\n 'x3dbz' => 'model/x3d+binary',\n 'x3dv' => 'model/x3d-vrml',\n 'x3dvz' => 'model/x3d+vrml',\n 'x3dz' => 'model/x3d+xml',\n 'x32' => 'application/x-authorware-bin',\n 'x_b' => 'model/vnd.parasolid.transmit.binary',\n 'x_t' => 'model/vnd.parasolid.transmit.text',\n 'xaml' => 'application/xaml+xml',\n 'xap' => 'application/x-silverlight-app',\n 'xar' => 'application/vnd.xara',\n 'xav' => 'application/xcap-att+xml',\n 'xbap' => 'application/x-ms-xbap',\n 'xbd' => 'application/vnd.fujixerox.docuworks.binder',\n 'xbm' => 'image/x-xbitmap',\n 'xca' => 'application/xcap-caps+xml',\n 'xcs' => 'application/calendar+xml',\n 'xdf' => 'application/xcap-diff+xml',\n 'xdm' => 'application/vnd.syncml.dm+xml',\n 'xdp' => 'application/vnd.adobe.xdp+xml',\n 'xdssc' => 'application/dssc+xml',\n 'xdw' => 'application/vnd.fujixerox.docuworks',\n 'xel' => 'application/xcap-el+xml',\n 'xenc' => 'application/xenc+xml',\n 'xer' => 'application/patch-ops-error+xml',\n 'xfdf' => 'application/xfdf',\n 'xfdl' => 'application/vnd.xfdl',\n 'xht' => 'application/xhtml+xml',\n 'xhtm' => 'application/vnd.pwg-xhtml-print+xml',\n 'xhtml' => 'application/xhtml+xml',\n 'xhvml' => 'application/xv+xml',\n 'xif' => 'image/vnd.xiff',\n 'xl' => 'application/excel',\n 'xla' => 'application/vnd.ms-excel',\n 'xlam' => 'application/vnd.ms-excel.addin.macroEnabled.12',\n 'xlc' => 'application/vnd.ms-excel',\n 'xlf' => 'application/xliff+xml',\n 'xlm' => 'application/vnd.ms-excel',\n 'xls' => 'application/vnd.ms-excel',\n 'xlsb' => 'application/vnd.ms-excel.sheet.binary.macroEnabled.12',\n 'xlsm' => 'application/vnd.ms-excel.sheet.macroEnabled.12',\n 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n 'xlt' => 'application/vnd.ms-excel',\n 'xltm' => 'application/vnd.ms-excel.template.macroEnabled.12',\n 'xltx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',\n 'xlw' => 'application/vnd.ms-excel',\n 'xm' => 'audio/xm',\n 'xml' => 'application/xml',\n 'xns' => 'application/xcap-ns+xml',\n 'xo' => 'application/vnd.olpc-sugar',\n 'xop' => 'application/xop+xml',\n 'xpi' => 'application/x-xpinstall',\n 'xpl' => 'application/xproc+xml',\n 'xpm' => 'image/x-xpixmap',\n 'xpr' => 'application/vnd.is-xpr',\n 'xps' => 'application/vnd.ms-xpsdocument',\n 'xpw' => 'application/vnd.intercon.formnet',\n 'xpx' => 'application/vnd.intercon.formnet',\n 'xsd' => 'application/xml',\n 'xsf' => 'application/prs.xsf+xml',\n 'xsl' => 'application/xml',\n 'xslt' => 'application/xslt+xml',\n 'xsm' => 'application/vnd.syncml+xml',\n 'xspf' => 'application/xspf+xml',\n 'xul' => 'application/vnd.mozilla.xul+xml',\n 'xvm' => 'application/xv+xml',\n 'xvml' => 'application/xv+xml',\n 'xwd' => 'image/x-xwindowdump',\n 'xyz' => 'chemical/x-xyz',\n 'xz' => 'application/x-xz',\n 'yaml' => 'text/yaml',\n 'yang' => 'application/yang',\n 'yin' => 'application/yin+xml',\n 'yml' => 'text/yaml',\n 'ymp' => 'text/x-suse-ymp',\n 'z' => 'application/x-compress',\n 'z1' => 'application/x-zmachine',\n 'z2' => 'application/x-zmachine',\n 'z3' => 'application/x-zmachine',\n 'z4' => 'application/x-zmachine',\n 'z5' => 'application/x-zmachine',\n 'z6' => 'application/x-zmachine',\n 'z7' => 'application/x-zmachine',\n 'z8' => 'application/x-zmachine',\n 'zaz' => 'application/vnd.zzazz.deck+xml',\n 'zip' => 'application/zip',\n 'zir' => 'application/vnd.zul',\n 'zirz' => 'application/vnd.zul',\n 'zmm' => 'application/vnd.handheld-entertainment+xml',\n 'zsh' => 'text/x-scriptzsh',\n);
const EXTENSIONS_FOR_MIME_TYPES = array (\n 'application/andrew-inset' => \n array (\n 0 => 'ez',\n ),\n 'application/appinstaller' => \n array (\n 0 => 'appinstaller',\n ),\n 'application/applixware' => \n array (\n 0 => 'aw',\n ),\n 'application/appx' => \n array (\n 0 => 'appx',\n ),\n 'application/appxbundle' => \n array (\n 0 => 'appxbundle',\n ),\n 'application/atom+xml' => \n array (\n 0 => 'atom',\n ),\n 'application/atomcat+xml' => \n array (\n 0 => 'atomcat',\n ),\n 'application/atomdeleted+xml' => \n array (\n 0 => 'atomdeleted',\n ),\n 'application/atomsvc+xml' => \n array (\n 0 => 'atomsvc',\n ),\n 'application/atsc-dwd+xml' => \n array (\n 0 => 'dwd',\n ),\n 'application/atsc-held+xml' => \n array (\n 0 => 'held',\n ),\n 'application/atsc-rsat+xml' => \n array (\n 0 => 'rsat',\n ),\n 'application/automationml-aml+xml' => \n array (\n 0 => 'aml',\n ),\n 'application/automationml-amlx+zip' => \n array (\n 0 => 'amlx',\n ),\n 'application/bdoc' => \n array (\n 0 => 'bdoc',\n ),\n 'application/calendar+xml' => \n array (\n 0 => 'xcs',\n ),\n 'application/ccxml+xml' => \n array (\n 0 => 'ccxml',\n ),\n 'application/cdfx+xml' => \n array (\n 0 => 'cdfx',\n ),\n 'application/cdmi-capability' => \n array (\n 0 => 'cdmia',\n ),\n 'application/cdmi-container' => \n array (\n 0 => 'cdmic',\n ),\n 'application/cdmi-domain' => \n array (\n 0 => 'cdmid',\n ),\n 'application/cdmi-object' => \n array (\n 0 => 'cdmio',\n ),\n 'application/cdmi-queue' => \n array (\n 0 => 'cdmiq',\n ),\n 'application/cpl+xml' => \n array (\n 0 => 'cpl',\n ),\n 'application/cu-seeme' => \n array (\n 0 => 'cu',\n ),\n 'application/cwl' => \n array (\n 0 => 'cwl',\n ),\n 'application/dash+xml' => \n array (\n 0 => 'mpd',\n ),\n 'application/dash-patch+xml' => \n array (\n 0 => 'mpp',\n ),\n 'application/davmount+xml' => \n array (\n 0 => 'davmount',\n ),\n 'application/docbook+xml' => \n array (\n 0 => 'dbk',\n ),\n 'application/dssc+der' => \n array (\n 0 => 'dssc',\n ),\n 'application/dssc+xml' => \n array (\n 0 => 'xdssc',\n ),\n 'application/ecmascript' => \n array (\n 0 => 'ecma',\n ),\n 'application/emma+xml' => \n array (\n 0 => 'emma',\n ),\n 'application/emotionml+xml' => \n array (\n 0 => 'emotionml',\n ),\n 'application/epub+zip' => \n array (\n 0 => 'epub',\n ),\n 'application/exi' => \n array (\n 0 => 'exi',\n ),\n 'application/express' => \n array (\n 0 => 'exp',\n ),\n 'application/fdf' => \n array (\n 0 => 'fdf',\n ),\n 'application/fdt+xml' => \n array (\n 0 => 'fdt',\n ),\n 'application/font-tdpfr' => \n array (\n 0 => 'pfr',\n ),\n 'application/geo+json' => \n array (\n 0 => 'geojson',\n ),\n 'application/gml+xml' => \n array (\n 0 => 'gml',\n ),\n 'application/gpx+xml' => \n array (\n 0 => 'gpx',\n ),\n 'application/gxf' => \n array (\n 0 => 'gxf',\n ),\n 'application/gzip' => \n array (\n 0 => 'gz',\n 1 => 'gzip',\n ),\n 'application/hjson' => \n array (\n 0 => 'hjson',\n ),\n 'application/hyperstudio' => \n array (\n 0 => 'stk',\n ),\n 'application/inkml+xml' => \n array (\n 0 => 'ink',\n 1 => 'inkml',\n ),\n 'application/ipfix' => \n array (\n 0 => 'ipfix',\n ),\n 'application/its+xml' => \n array (\n 0 => 'its',\n ),\n 'application/java-archive' => \n array (\n 0 => 'jar',\n 1 => 'war',\n 2 => 'ear',\n ),\n 'application/java-serialized-object' => \n array (\n 0 => 'ser',\n ),\n 'application/java-vm' => \n array (\n 0 => 'class',\n ),\n 'application/javascript' => \n array (\n 0 => 'js',\n ),\n 'application/json' => \n array (\n 0 => 'json',\n 1 => 'map',\n ),\n 'application/json5' => \n array (\n 0 => 'json5',\n ),\n 'application/jsonml+json' => \n array (\n 0 => 'jsonml',\n ),\n 'application/ld+json' => \n array (\n 0 => 'jsonld',\n ),\n 'application/lgr+xml' => \n array (\n 0 => 'lgr',\n ),\n 'application/lost+xml' => \n array (\n 0 => 'lostxml',\n ),\n 'application/mac-binhex40' => \n array (\n 0 => 'hqx',\n ),\n 'application/mac-compactpro' => \n array (\n 0 => 'cpt',\n ),\n 'application/mads+xml' => \n array (\n 0 => 'mads',\n ),\n 'application/manifest+json' => \n array (\n 0 => 'webmanifest',\n ),\n 'application/marc' => \n array (\n 0 => 'mrc',\n ),\n 'application/marcxml+xml' => \n array (\n 0 => 'mrcx',\n ),\n 'application/mathematica' => \n array (\n 0 => 'ma',\n 1 => 'nb',\n 2 => 'mb',\n ),\n 'application/mathml+xml' => \n array (\n 0 => 'mathml',\n ),\n 'application/mbox' => \n array (\n 0 => 'mbox',\n ),\n 'application/media-policy-dataset+xml' => \n array (\n 0 => 'mpf',\n ),\n 'application/mediaservercontrol+xml' => \n array (\n 0 => 'mscml',\n ),\n 'application/metalink+xml' => \n array (\n 0 => 'metalink',\n ),\n 'application/metalink4+xml' => \n array (\n 0 => 'meta4',\n ),\n 'application/mets+xml' => \n array (\n 0 => 'mets',\n ),\n 'application/mmt-aei+xml' => \n array (\n 0 => 'maei',\n ),\n 'application/mmt-usd+xml' => \n array (\n 0 => 'musd',\n ),\n 'application/mods+xml' => \n array (\n 0 => 'mods',\n ),\n 'application/mp21' => \n array (\n 0 => 'm21',\n 1 => 'mp21',\n ),\n 'application/mp4' => \n array (\n 0 => 'mp4',\n 1 => 'mpg4',\n 2 => 'mp4s',\n 3 => 'm4p',\n ),\n 'application/msix' => \n array (\n 0 => 'msix',\n ),\n 'application/msixbundle' => \n array (\n 0 => 'msixbundle',\n ),\n 'application/msword' => \n array (\n 0 => 'doc',\n 1 => 'dot',\n 2 => 'word',\n ),\n 'application/mxf' => \n array (\n 0 => 'mxf',\n ),\n 'application/n-quads' => \n array (\n 0 => 'nq',\n ),\n 'application/n-triples' => \n array (\n 0 => 'nt',\n ),\n 'application/node' => \n array (\n 0 => 'cjs',\n ),\n 'application/octet-stream' => \n array (\n 0 => 'bin',\n 1 => 'dms',\n 2 => 'lrf',\n 3 => 'mar',\n 4 => 'so',\n 5 => 'dist',\n 6 => 'distz',\n 7 => 'pkg',\n 8 => 'bpk',\n 9 => 'dump',\n 10 => 'elc',\n 11 => 'deploy',\n 12 => 'exe',\n 13 => 'dll',\n 14 => 'deb',\n 15 => 'dmg',\n 16 => 'iso',\n 17 => 'img',\n 18 => 'msi',\n 19 => 'msp',\n 20 => 'msm',\n 21 => 'buffer',\n 22 => 'phar',\n 23 => 'lha',\n 24 => 'lzh',\n 25 => 'class',\n 26 => 'sea',\n 27 => 'dmn',\n 28 => 'bpmn',\n 29 => 'kdb',\n 30 => 'sst',\n 31 => 'csr',\n 32 => 'dst',\n 33 => 'pv',\n 34 => 'pxf',\n ),\n 'application/oda' => \n array (\n 0 => 'oda',\n ),\n 'application/oebps-package+xml' => \n array (\n 0 => 'opf',\n ),\n 'application/ogg' => \n array (\n 0 => 'ogx',\n ),\n 'application/omdoc+xml' => \n array (\n 0 => 'omdoc',\n ),\n 'application/onenote' => \n array (\n 0 => 'onetoc',\n 1 => 'onetoc2',\n 2 => 'onetmp',\n 3 => 'onepkg',\n ),\n 'application/oxps' => \n array (\n 0 => 'oxps',\n ),\n 'application/p2p-overlay+xml' => \n array (\n 0 => 'relo',\n ),\n 'application/patch-ops-error+xml' => \n array (\n 0 => 'xer',\n ),\n 'application/pdf' => \n array (\n 0 => 'pdf',\n 1 => 'ai',\n ),\n 'application/pgp-encrypted' => \n array (\n 0 => 'pgp',\n ),\n 'application/pgp-keys' => \n array (\n 0 => 'asc',\n ),\n 'application/pgp-signature' => \n array (\n 0 => 'sig',\n 1 => 'asc',\n ),\n 'application/pics-rules' => \n array (\n 0 => 'prf',\n ),\n 'application/pkcs10' => \n array (\n 0 => 'p10',\n ),\n 'application/pkcs7-mime' => \n array (\n 0 => 'p7m',\n 1 => 'p7c',\n ),\n 'application/pkcs7-signature' => \n array (\n 0 => 'p7s',\n ),\n 'application/pkcs8' => \n array (\n 0 => 'p8',\n ),\n 'application/pkix-attr-cert' => \n array (\n 0 => 'ac',\n ),\n 'application/pkix-cert' => \n array (\n 0 => 'cer',\n ),\n 'application/pkix-crl' => \n array (\n 0 => 'crl',\n ),\n 'application/pkix-pkipath' => \n array (\n 0 => 'pkipath',\n ),\n 'application/pkixcmp' => \n array (\n 0 => 'pki',\n ),\n 'application/pls+xml' => \n array (\n 0 => 'pls',\n ),\n 'application/postscript' => \n array (\n 0 => 'ai',\n 1 => 'eps',\n 2 => 'ps',\n ),\n 'application/provenance+xml' => \n array (\n 0 => 'provx',\n ),\n 'application/prs.cww' => \n array (\n 0 => 'cww',\n ),\n 'application/prs.xsf+xml' => \n array (\n 0 => 'xsf',\n ),\n 'application/pskc+xml' => \n array (\n 0 => 'pskcxml',\n ),\n 'application/raml+yaml' => \n array (\n 0 => 'raml',\n ),\n 'application/rdf+xml' => \n array (\n 0 => 'rdf',\n 1 => 'owl',\n ),\n 'application/reginfo+xml' => \n array (\n 0 => 'rif',\n ),\n 'application/relax-ng-compact-syntax' => \n array (\n 0 => 'rnc',\n ),\n 'application/resource-lists+xml' => \n array (\n 0 => 'rl',\n ),\n 'application/resource-lists-diff+xml' => \n array (\n 0 => 'rld',\n ),\n 'application/rls-services+xml' => \n array (\n 0 => 'rs',\n ),\n 'application/route-apd+xml' => \n array (\n 0 => 'rapd',\n ),\n 'application/route-s-tsid+xml' => \n array (\n 0 => 'sls',\n ),\n 'application/route-usd+xml' => \n array (\n 0 => 'rusd',\n ),\n 'application/rpki-ghostbusters' => \n array (\n 0 => 'gbr',\n ),\n 'application/rpki-manifest' => \n array (\n 0 => 'mft',\n ),\n 'application/rpki-roa' => \n array (\n 0 => 'roa',\n ),\n 'application/rsd+xml' => \n array (\n 0 => 'rsd',\n ),\n 'application/rss+xml' => \n array (\n 0 => 'rss',\n ),\n 'application/rtf' => \n array (\n 0 => 'rtf',\n ),\n 'application/sbml+xml' => \n array (\n 0 => 'sbml',\n ),\n 'application/scvp-cv-request' => \n array (\n 0 => 'scq',\n ),\n 'application/scvp-cv-response' => \n array (\n 0 => 'scs',\n ),\n 'application/scvp-vp-request' => \n array (\n 0 => 'spq',\n ),\n 'application/scvp-vp-response' => \n array (\n 0 => 'spp',\n ),\n 'application/sdp' => \n array (\n 0 => 'sdp',\n ),\n 'application/senml+xml' => \n array (\n 0 => 'senmlx',\n ),\n 'application/sensml+xml' => \n array (\n 0 => 'sensmlx',\n ),\n 'application/set-payment-initiation' => \n array (\n 0 => 'setpay',\n ),\n 'application/set-registration-initiation' => \n array (\n 0 => 'setreg',\n ),\n 'application/shf+xml' => \n array (\n 0 => 'shf',\n ),\n 'application/sieve' => \n array (\n 0 => 'siv',\n 1 => 'sieve',\n ),\n 'application/smil+xml' => \n array (\n 0 => 'smi',\n 1 => 'smil',\n ),\n 'application/sparql-query' => \n array (\n 0 => 'rq',\n ),\n 'application/sparql-results+xml' => \n array (\n 0 => 'srx',\n ),\n 'application/sql' => \n array (\n 0 => 'sql',\n ),\n 'application/srgs' => \n array (\n 0 => 'gram',\n ),\n 'application/srgs+xml' => \n array (\n 0 => 'grxml',\n ),\n 'application/sru+xml' => \n array (\n 0 => 'sru',\n ),\n 'application/ssdl+xml' => \n array (\n 0 => 'ssdl',\n ),\n 'application/ssml+xml' => \n array (\n 0 => 'ssml',\n ),\n 'application/swid+xml' => \n array (\n 0 => 'swidtag',\n ),\n 'application/tei+xml' => \n array (\n 0 => 'tei',\n 1 => 'teicorpus',\n ),\n 'application/thraud+xml' => \n array (\n 0 => 'tfi',\n ),\n 'application/timestamped-data' => \n array (\n 0 => 'tsd',\n ),\n 'application/toml' => \n array (\n 0 => 'toml',\n ),\n 'application/trig' => \n array (\n 0 => 'trig',\n ),\n 'application/ttml+xml' => \n array (\n 0 => 'ttml',\n ),\n 'application/ubjson' => \n array (\n 0 => 'ubj',\n ),\n 'application/urc-ressheet+xml' => \n array (\n 0 => 'rsheet',\n ),\n 'application/urc-targetdesc+xml' => \n array (\n 0 => 'td',\n ),\n 'application/vnd.1000minds.decision-model+xml' => \n array (\n 0 => '1km',\n ),\n 'application/vnd.3gpp.pic-bw-large' => \n array (\n 0 => 'plb',\n ),\n 'application/vnd.3gpp.pic-bw-small' => \n array (\n 0 => 'psb',\n ),\n 'application/vnd.3gpp.pic-bw-var' => \n array (\n 0 => 'pvb',\n ),\n 'application/vnd.3gpp2.tcap' => \n array (\n 0 => 'tcap',\n ),\n 'application/vnd.3m.post-it-notes' => \n array (\n 0 => 'pwn',\n ),\n 'application/vnd.accpac.simply.aso' => \n array (\n 0 => 'aso',\n ),\n 'application/vnd.accpac.simply.imp' => \n array (\n 0 => 'imp',\n ),\n 'application/vnd.acucobol' => \n array (\n 0 => 'acu',\n ),\n 'application/vnd.acucorp' => \n array (\n 0 => 'atc',\n 1 => 'acutc',\n ),\n 'application/vnd.adobe.air-application-installer-package+zip' => \n array (\n 0 => 'air',\n ),\n 'application/vnd.adobe.formscentral.fcdt' => \n array (\n 0 => 'fcdt',\n ),\n 'application/vnd.adobe.fxp' => \n array (\n 0 => 'fxp',\n 1 => 'fxpl',\n ),\n 'application/vnd.adobe.xdp+xml' => \n array (\n 0 => 'xdp',\n ),\n 'application/vnd.adobe.xfdf' => \n array (\n 0 => 'xfdf',\n ),\n 'application/vnd.age' => \n array (\n 0 => 'age',\n ),\n 'application/vnd.ahead.space' => \n array (\n 0 => 'ahead',\n ),\n 'application/vnd.airzip.filesecure.azf' => \n array (\n 0 => 'azf',\n ),\n 'application/vnd.airzip.filesecure.azs' => \n array (\n 0 => 'azs',\n ),\n 'application/vnd.amazon.ebook' => \n array (\n 0 => 'azw',\n ),\n 'application/vnd.americandynamics.acc' => \n array (\n 0 => 'acc',\n ),\n 'application/vnd.amiga.ami' => \n array (\n 0 => 'ami',\n ),\n 'application/vnd.android.package-archive' => \n array (\n 0 => 'apk',\n ),\n 'application/vnd.anser-web-certificate-issue-initiation' => \n array (\n 0 => 'cii',\n ),\n 'application/vnd.anser-web-funds-transfer-initiation' => \n array (\n 0 => 'fti',\n ),\n 'application/vnd.antix.game-component' => \n array (\n 0 => 'atx',\n ),\n 'application/vnd.apple.installer+xml' => \n array (\n 0 => 'mpkg',\n ),\n 'application/vnd.apple.keynote' => \n array (\n 0 => 'key',\n ),\n 'application/vnd.apple.mpegurl' => \n array (\n 0 => 'm3u8',\n ),\n 'application/vnd.apple.numbers' => \n array (\n 0 => 'numbers',\n ),\n 'application/vnd.apple.pages' => \n array (\n 0 => 'pages',\n ),\n 'application/vnd.apple.pkpass' => \n array (\n 0 => 'pkpass',\n ),\n 'application/vnd.aristanetworks.swi' => \n array (\n 0 => 'swi',\n ),\n 'application/vnd.astraea-software.iota' => \n array (\n 0 => 'iota',\n ),\n 'application/vnd.audiograph' => \n array (\n 0 => 'aep',\n ),\n 'application/vnd.balsamiq.bmml+xml' => \n array (\n 0 => 'bmml',\n ),\n 'application/vnd.blueice.multipass' => \n array (\n 0 => 'mpm',\n ),\n 'application/vnd.bmi' => \n array (\n 0 => 'bmi',\n ),\n 'application/vnd.businessobjects' => \n array (\n 0 => 'rep',\n ),\n 'application/vnd.chemdraw+xml' => \n array (\n 0 => 'cdxml',\n ),\n 'application/vnd.chipnuts.karaoke-mmd' => \n array (\n 0 => 'mmd',\n ),\n 'application/vnd.cinderella' => \n array (\n 0 => 'cdy',\n ),\n 'application/vnd.citationstyles.style+xml' => \n array (\n 0 => 'csl',\n ),\n 'application/vnd.claymore' => \n array (\n 0 => 'cla',\n ),\n 'application/vnd.cloanto.rp9' => \n array (\n 0 => 'rp9',\n ),\n 'application/vnd.clonk.c4group' => \n array (\n 0 => 'c4g',\n 1 => 'c4d',\n 2 => 'c4f',\n 3 => 'c4p',\n 4 => 'c4u',\n ),\n 'application/vnd.cluetrust.cartomobile-config' => \n array (\n 0 => 'c11amc',\n ),\n 'application/vnd.cluetrust.cartomobile-config-pkg' => \n array (\n 0 => 'c11amz',\n ),\n 'application/vnd.commonspace' => \n array (\n 0 => 'csp',\n ),\n 'application/vnd.contact.cmsg' => \n array (\n 0 => 'cdbcmsg',\n ),\n 'application/vnd.cosmocaller' => \n array (\n 0 => 'cmc',\n ),\n 'application/vnd.crick.clicker' => \n array (\n 0 => 'clkx',\n ),\n 'application/vnd.crick.clicker.keyboard' => \n array (\n 0 => 'clkk',\n ),\n 'application/vnd.crick.clicker.palette' => \n array (\n 0 => 'clkp',\n ),\n 'application/vnd.crick.clicker.template' => \n array (\n 0 => 'clkt',\n ),\n 'application/vnd.crick.clicker.wordbank' => \n array (\n 0 => 'clkw',\n ),\n 'application/vnd.criticaltools.wbs+xml' => \n array (\n 0 => 'wbs',\n ),\n 'application/vnd.ctc-posml' => \n array (\n 0 => 'pml',\n ),\n 'application/vnd.cups-ppd' => \n array (\n 0 => 'ppd',\n ),\n 'application/vnd.curl.car' => \n array (\n 0 => 'car',\n ),\n 'application/vnd.curl.pcurl' => \n array (\n 0 => 'pcurl',\n ),\n 'application/vnd.dart' => \n array (\n 0 => 'dart',\n ),\n 'application/vnd.data-vision.rdz' => \n array (\n 0 => 'rdz',\n ),\n 'application/vnd.dbf' => \n array (\n 0 => 'dbf',\n ),\n 'application/vnd.dece.data' => \n array (\n 0 => 'uvf',\n 1 => 'uvvf',\n 2 => 'uvd',\n 3 => 'uvvd',\n ),\n 'application/vnd.dece.ttml+xml' => \n array (\n 0 => 'uvt',\n 1 => 'uvvt',\n ),\n 'application/vnd.dece.unspecified' => \n array (\n 0 => 'uvx',\n 1 => 'uvvx',\n ),\n 'application/vnd.dece.zip' => \n array (\n 0 => 'uvz',\n 1 => 'uvvz',\n ),\n 'application/vnd.denovo.fcselayout-link' => \n array (\n 0 => 'fe_launch',\n ),\n 'application/vnd.dna' => \n array (\n 0 => 'dna',\n ),\n 'application/vnd.dolby.mlp' => \n array (\n 0 => 'mlp',\n ),\n 'application/vnd.dpgraph' => \n array (\n 0 => 'dpg',\n ),\n 'application/vnd.dreamfactory' => \n array (\n 0 => 'dfac',\n ),\n 'application/vnd.ds-keypoint' => \n array (\n 0 => 'kpxx',\n ),\n 'application/vnd.dvb.ait' => \n array (\n 0 => 'ait',\n ),\n 'application/vnd.dvb.service' => \n array (\n 0 => 'svc',\n ),\n 'application/vnd.dynageo' => \n array (\n 0 => 'geo',\n ),\n 'application/vnd.ecowin.chart' => \n array (\n 0 => 'mag',\n ),\n 'application/vnd.enliven' => \n array (\n 0 => 'nml',\n ),\n 'application/vnd.epson.esf' => \n array (\n 0 => 'esf',\n ),\n 'application/vnd.epson.msf' => \n array (\n 0 => 'msf',\n ),\n 'application/vnd.epson.quickanime' => \n array (\n 0 => 'qam',\n ),\n 'application/vnd.epson.salt' => \n array (\n 0 => 'slt',\n ),\n 'application/vnd.epson.ssf' => \n array (\n 0 => 'ssf',\n ),\n 'application/vnd.eszigno3+xml' => \n array (\n 0 => 'es3',\n 1 => 'et3',\n ),\n 'application/vnd.ezpix-album' => \n array (\n 0 => 'ez2',\n ),\n 'application/vnd.ezpix-package' => \n array (\n 0 => 'ez3',\n ),\n 'application/vnd.fdf' => \n array (\n 0 => 'fdf',\n ),\n 'application/vnd.fdsn.mseed' => \n array (\n 0 => 'mseed',\n ),\n 'application/vnd.fdsn.seed' => \n array (\n 0 => 'seed',\n 1 => 'dataless',\n ),\n 'application/vnd.flographit' => \n array (\n 0 => 'gph',\n ),\n 'application/vnd.fluxtime.clip' => \n array (\n 0 => 'ftc',\n ),\n 'application/vnd.framemaker' => \n array (\n 0 => 'fm',\n 1 => 'frame',\n 2 => 'maker',\n 3 => 'book',\n ),\n 'application/vnd.frogans.fnc' => \n array (\n 0 => 'fnc',\n ),\n 'application/vnd.frogans.ltf' => \n array (\n 0 => 'ltf',\n ),\n 'application/vnd.fsc.weblaunch' => \n array (\n 0 => 'fsc',\n ),\n 'application/vnd.fujitsu.oasys' => \n array (\n 0 => 'oas',\n ),\n 'application/vnd.fujitsu.oasys2' => \n array (\n 0 => 'oa2',\n ),\n 'application/vnd.fujitsu.oasys3' => \n array (\n 0 => 'oa3',\n ),\n 'application/vnd.fujitsu.oasysgp' => \n array (\n 0 => 'fg5',\n ),\n 'application/vnd.fujitsu.oasysprs' => \n array (\n 0 => 'bh2',\n ),\n 'application/vnd.fujixerox.ddd' => \n array (\n 0 => 'ddd',\n ),\n 'application/vnd.fujixerox.docuworks' => \n array (\n 0 => 'xdw',\n ),\n 'application/vnd.fujixerox.docuworks.binder' => \n array (\n 0 => 'xbd',\n ),\n 'application/vnd.fuzzysheet' => \n array (\n 0 => 'fzs',\n ),\n 'application/vnd.genomatix.tuxedo' => \n array (\n 0 => 'txd',\n ),\n 'application/vnd.geogebra.file' => \n array (\n 0 => 'ggb',\n ),\n 'application/vnd.geogebra.tool' => \n array (\n 0 => 'ggt',\n ),\n 'application/vnd.geometry-explorer' => \n array (\n 0 => 'gex',\n 1 => 'gre',\n ),\n 'application/vnd.geonext' => \n array (\n 0 => 'gxt',\n ),\n 'application/vnd.geoplan' => \n array (\n 0 => 'g2w',\n ),\n 'application/vnd.geospace' => \n array (\n 0 => 'g3w',\n ),\n 'application/vnd.gmx' => \n array (\n 0 => 'gmx',\n ),\n 'application/vnd.google-apps.document' => \n array (\n 0 => 'gdoc',\n ),\n 'application/vnd.google-apps.presentation' => \n array (\n 0 => 'gslides',\n ),\n 'application/vnd.google-apps.spreadsheet' => \n array (\n 0 => 'gsheet',\n ),\n 'application/vnd.google-earth.kml+xml' => \n array (\n 0 => 'kml',\n ),\n 'application/vnd.google-earth.kmz' => \n array (\n 0 => 'kmz',\n ),\n 'application/vnd.grafeq' => \n array (\n 0 => 'gqf',\n 1 => 'gqs',\n ),\n 'application/vnd.groove-account' => \n array (\n 0 => 'gac',\n ),\n 'application/vnd.groove-help' => \n array (\n 0 => 'ghf',\n ),\n 'application/vnd.groove-identity-message' => \n array (\n 0 => 'gim',\n ),\n 'application/vnd.groove-injector' => \n array (\n 0 => 'grv',\n ),\n 'application/vnd.groove-tool-message' => \n array (\n 0 => 'gtm',\n ),\n 'application/vnd.groove-tool-template' => \n array (\n 0 => 'tpl',\n ),\n 'application/vnd.groove-vcard' => \n array (\n 0 => 'vcg',\n ),\n 'application/vnd.hal+xml' => \n array (\n 0 => 'hal',\n ),\n 'application/vnd.handheld-entertainment+xml' => \n array (\n 0 => 'zmm',\n ),\n 'application/vnd.hbci' => \n array (\n 0 => 'hbci',\n ),\n 'application/vnd.hhe.lesson-player' => \n array (\n 0 => 'les',\n ),\n 'application/vnd.hp-hpgl' => \n array (\n 0 => 'hpgl',\n ),\n 'application/vnd.hp-hpid' => \n array (\n 0 => 'hpid',\n ),\n 'application/vnd.hp-hps' => \n array (\n 0 => 'hps',\n ),\n 'application/vnd.hp-jlyt' => \n array (\n 0 => 'jlt',\n ),\n 'application/vnd.hp-pcl' => \n array (\n 0 => 'pcl',\n ),\n 'application/vnd.hp-pclxl' => \n array (\n 0 => 'pclxl',\n ),\n 'application/vnd.hydrostatix.sof-data' => \n array (\n 0 => 'sfd-hdstx',\n ),\n 'application/vnd.ibm.minipay' => \n array (\n 0 => 'mpy',\n ),\n 'application/vnd.ibm.modcap' => \n array (\n 0 => 'afp',\n 1 => 'listafp',\n 2 => 'list3820',\n ),\n 'application/vnd.ibm.rights-management' => \n array (\n 0 => 'irm',\n ),\n 'application/vnd.ibm.secure-container' => \n array (\n 0 => 'sc',\n ),\n 'application/vnd.iccprofile' => \n array (\n 0 => 'icc',\n 1 => 'icm',\n ),\n 'application/vnd.igloader' => \n array (\n 0 => 'igl',\n ),\n 'application/vnd.immervision-ivp' => \n array (\n 0 => 'ivp',\n ),\n 'application/vnd.immervision-ivu' => \n array (\n 0 => 'ivu',\n ),\n 'application/vnd.insors.igm' => \n array (\n 0 => 'igm',\n ),\n 'application/vnd.intercon.formnet' => \n array (\n 0 => 'xpw',\n 1 => 'xpx',\n ),\n 'application/vnd.intergeo' => \n array (\n 0 => 'i2g',\n ),\n 'application/vnd.intu.qbo' => \n array (\n 0 => 'qbo',\n ),\n 'application/vnd.intu.qfx' => \n array (\n 0 => 'qfx',\n ),\n 'application/vnd.ipunplugged.rcprofile' => \n array (\n 0 => 'rcprofile',\n ),\n 'application/vnd.irepository.package+xml' => \n array (\n 0 => 'irp',\n ),\n 'application/vnd.is-xpr' => \n array (\n 0 => 'xpr',\n ),\n 'application/vnd.isac.fcs' => \n array (\n 0 => 'fcs',\n ),\n 'application/vnd.jam' => \n array (\n 0 => 'jam',\n ),\n 'application/vnd.jcp.javame.midlet-rms' => \n array (\n 0 => 'rms',\n ),\n 'application/vnd.jisp' => \n array (\n 0 => 'jisp',\n ),\n 'application/vnd.joost.joda-archive' => \n array (\n 0 => 'joda',\n ),\n 'application/vnd.kahootz' => \n array (\n 0 => 'ktz',\n 1 => 'ktr',\n ),\n 'application/vnd.kde.karbon' => \n array (\n 0 => 'karbon',\n ),\n 'application/vnd.kde.kchart' => \n array (\n 0 => 'chrt',\n ),\n 'application/vnd.kde.kformula' => \n array (\n 0 => 'kfo',\n ),\n 'application/vnd.kde.kivio' => \n array (\n 0 => 'flw',\n ),\n 'application/vnd.kde.kontour' => \n array (\n 0 => 'kon',\n ),\n 'application/vnd.kde.kpresenter' => \n array (\n 0 => 'kpr',\n 1 => 'kpt',\n ),\n 'application/vnd.kde.kspread' => \n array (\n 0 => 'ksp',\n ),\n 'application/vnd.kde.kword' => \n array (\n 0 => 'kwd',\n 1 => 'kwt',\n ),\n 'application/vnd.kenameaapp' => \n array (\n 0 => 'htke',\n ),\n 'application/vnd.kidspiration' => \n array (\n 0 => 'kia',\n ),\n 'application/vnd.kinar' => \n array (\n 0 => 'kne',\n 1 => 'knp',\n ),\n 'application/vnd.koan' => \n array (\n 0 => 'skp',\n 1 => 'skd',\n 2 => 'skt',\n 3 => 'skm',\n ),\n 'application/vnd.kodak-descriptor' => \n array (\n 0 => 'sse',\n ),\n 'application/vnd.las.las+xml' => \n array (\n 0 => 'lasxml',\n ),\n 'application/vnd.llamagraphics.life-balance.desktop' => \n array (\n 0 => 'lbd',\n ),\n 'application/vnd.llamagraphics.life-balance.exchange+xml' => \n array (\n 0 => 'lbe',\n ),\n 'application/vnd.lotus-1-2-3' => \n array (\n 0 => '123',\n ),\n 'application/vnd.lotus-approach' => \n array (\n 0 => 'apr',\n ),\n 'application/vnd.lotus-freelance' => \n array (\n 0 => 'pre',\n ),\n 'application/vnd.lotus-notes' => \n array (\n 0 => 'nsf',\n ),\n 'application/vnd.lotus-organizer' => \n array (\n 0 => 'org',\n ),\n 'application/vnd.lotus-screencam' => \n array (\n 0 => 'scm',\n ),\n 'application/vnd.lotus-wordpro' => \n array (\n 0 => 'lwp',\n ),\n 'application/vnd.macports.portpkg' => \n array (\n 0 => 'portpkg',\n ),\n 'application/vnd.mapbox-vector-tile' => \n array (\n 0 => 'mvt',\n ),\n 'application/vnd.mcd' => \n array (\n 0 => 'mcd',\n ),\n 'application/vnd.medcalcdata' => \n array (\n 0 => 'mc1',\n ),\n 'application/vnd.mediastation.cdkey' => \n array (\n 0 => 'cdkey',\n ),\n 'application/vnd.mfer' => \n array (\n 0 => 'mwf',\n ),\n 'application/vnd.mfmp' => \n array (\n 0 => 'mfm',\n ),\n 'application/vnd.micrografx.flo' => \n array (\n 0 => 'flo',\n ),\n 'application/vnd.micrografx.igx' => \n array (\n 0 => 'igx',\n ),\n 'application/vnd.mif' => \n array (\n 0 => 'mif',\n ),\n 'application/vnd.mobius.daf' => \n array (\n 0 => 'daf',\n ),\n 'application/vnd.mobius.dis' => \n array (\n 0 => 'dis',\n ),\n 'application/vnd.mobius.mbk' => \n array (\n 0 => 'mbk',\n ),\n 'application/vnd.mobius.mqy' => \n array (\n 0 => 'mqy',\n ),\n 'application/vnd.mobius.msl' => \n array (\n 0 => 'msl',\n ),\n 'application/vnd.mobius.plc' => \n array (\n 0 => 'plc',\n ),\n 'application/vnd.mobius.txf' => \n array (\n 0 => 'txf',\n ),\n 'application/vnd.mophun.application' => \n array (\n 0 => 'mpn',\n ),\n 'application/vnd.mophun.certificate' => \n array (\n 0 => 'mpc',\n ),\n 'application/vnd.mozilla.xul+xml' => \n array (\n 0 => 'xul',\n ),\n 'application/vnd.ms-artgalry' => \n array (\n 0 => 'cil',\n ),\n 'application/vnd.ms-cab-compressed' => \n array (\n 0 => 'cab',\n ),\n 'application/vnd.ms-excel' => \n array (\n 0 => 'xls',\n 1 => 'xlm',\n 2 => 'xla',\n 3 => 'xlc',\n 4 => 'xlt',\n 5 => 'xlw',\n ),\n 'application/vnd.ms-excel.addin.macroenabled.12' => \n array (\n 0 => 'xlam',\n ),\n 'application/vnd.ms-excel.sheet.binary.macroenabled.12' => \n array (\n 0 => 'xlsb',\n ),\n 'application/vnd.ms-excel.sheet.macroenabled.12' => \n array (\n 0 => 'xlsm',\n ),\n 'application/vnd.ms-excel.template.macroenabled.12' => \n array (\n 0 => 'xltm',\n ),\n 'application/vnd.ms-fontobject' => \n array (\n 0 => 'eot',\n ),\n 'application/vnd.ms-htmlhelp' => \n array (\n 0 => 'chm',\n ),\n 'application/vnd.ms-ims' => \n array (\n 0 => 'ims',\n ),\n 'application/vnd.ms-lrm' => \n array (\n 0 => 'lrm',\n ),\n 'application/vnd.ms-officetheme' => \n array (\n 0 => 'thmx',\n ),\n 'application/vnd.ms-outlook' => \n array (\n 0 => 'msg',\n ),\n 'application/vnd.ms-pki.seccat' => \n array (\n 0 => 'cat',\n ),\n 'application/vnd.ms-pki.stl' => \n array (\n 0 => 'stl',\n ),\n 'application/vnd.ms-powerpoint' => \n array (\n 0 => 'ppt',\n 1 => 'pps',\n 2 => 'pot',\n 3 => 'ppa',\n ),\n 'application/vnd.ms-powerpoint.addin.macroenabled.12' => \n array (\n 0 => 'ppam',\n ),\n 'application/vnd.ms-powerpoint.presentation.macroenabled.12' => \n array (\n 0 => 'pptm',\n ),\n 'application/vnd.ms-powerpoint.slide.macroenabled.12' => \n array (\n 0 => 'sldm',\n ),\n 'application/vnd.ms-powerpoint.slideshow.macroenabled.12' => \n array (\n 0 => 'ppsm',\n ),\n 'application/vnd.ms-powerpoint.template.macroenabled.12' => \n array (\n 0 => 'potm',\n ),\n 'application/vnd.ms-project' => \n array (\n 0 => 'mpp',\n 1 => 'mpt',\n ),\n 'application/vnd.ms-word.document.macroenabled.12' => \n array (\n 0 => 'docm',\n ),\n 'application/vnd.ms-word.template.macroenabled.12' => \n array (\n 0 => 'dotm',\n ),\n 'application/vnd.ms-works' => \n array (\n 0 => 'wps',\n 1 => 'wks',\n 2 => 'wcm',\n 3 => 'wdb',\n ),\n 'application/vnd.ms-wpl' => \n array (\n 0 => 'wpl',\n ),\n 'application/vnd.ms-xpsdocument' => \n array (\n 0 => 'xps',\n ),\n 'application/vnd.mseq' => \n array (\n 0 => 'mseq',\n ),\n 'application/vnd.musician' => \n array (\n 0 => 'mus',\n ),\n 'application/vnd.muvee.style' => \n array (\n 0 => 'msty',\n ),\n 'application/vnd.mynfc' => \n array (\n 0 => 'taglet',\n ),\n 'application/vnd.neurolanguage.nlu' => \n array (\n 0 => 'nlu',\n ),\n 'application/vnd.nitf' => \n array (\n 0 => 'ntf',\n 1 => 'nitf',\n ),\n 'application/vnd.noblenet-directory' => \n array (\n 0 => 'nnd',\n ),\n 'application/vnd.noblenet-sealer' => \n array (\n 0 => 'nns',\n ),\n 'application/vnd.noblenet-web' => \n array (\n 0 => 'nnw',\n ),\n 'application/vnd.nokia.n-gage.ac+xml' => \n array (\n 0 => 'ac',\n ),\n 'application/vnd.nokia.n-gage.data' => \n array (\n 0 => 'ngdat',\n ),\n 'application/vnd.nokia.n-gage.symbian.install' => \n array (\n 0 => 'n-gage',\n ),\n 'application/vnd.nokia.radio-preset' => \n array (\n 0 => 'rpst',\n ),\n 'application/vnd.nokia.radio-presets' => \n array (\n 0 => 'rpss',\n ),\n 'application/vnd.novadigm.edm' => \n array (\n 0 => 'edm',\n ),\n 'application/vnd.novadigm.edx' => \n array (\n 0 => 'edx',\n ),\n 'application/vnd.novadigm.ext' => \n array (\n 0 => 'ext',\n ),\n 'application/vnd.oasis.opendocument.chart' => \n array (\n 0 => 'odc',\n ),\n 'application/vnd.oasis.opendocument.chart-template' => \n array (\n 0 => 'otc',\n ),\n 'application/vnd.oasis.opendocument.database' => \n array (\n 0 => 'odb',\n ),\n 'application/vnd.oasis.opendocument.formula' => \n array (\n 0 => 'odf',\n ),\n 'application/vnd.oasis.opendocument.formula-template' => \n array (\n 0 => 'odft',\n ),\n 'application/vnd.oasis.opendocument.graphics' => \n array (\n 0 => 'odg',\n ),\n 'application/vnd.oasis.opendocument.graphics-template' => \n array (\n 0 => 'otg',\n ),\n 'application/vnd.oasis.opendocument.image' => \n array (\n 0 => 'odi',\n ),\n 'application/vnd.oasis.opendocument.image-template' => \n array (\n 0 => 'oti',\n ),\n 'application/vnd.oasis.opendocument.presentation' => \n array (\n 0 => 'odp',\n ),\n 'application/vnd.oasis.opendocument.presentation-template' => \n array (\n 0 => 'otp',\n ),\n 'application/vnd.oasis.opendocument.spreadsheet' => \n array (\n 0 => 'ods',\n ),\n 'application/vnd.oasis.opendocument.spreadsheet-template' => \n array (\n 0 => 'ots',\n ),\n 'application/vnd.oasis.opendocument.text' => \n array (\n 0 => 'odt',\n ),\n 'application/vnd.oasis.opendocument.text-master' => \n array (\n 0 => 'odm',\n ),\n 'application/vnd.oasis.opendocument.text-template' => \n array (\n 0 => 'ott',\n ),\n 'application/vnd.oasis.opendocument.text-web' => \n array (\n 0 => 'oth',\n ),\n 'application/vnd.olpc-sugar' => \n array (\n 0 => 'xo',\n ),\n 'application/vnd.oma.dd2+xml' => \n array (\n 0 => 'dd2',\n ),\n 'application/vnd.openblox.game+xml' => \n array (\n 0 => 'obgx',\n ),\n 'application/vnd.openofficeorg.extension' => \n array (\n 0 => 'oxt',\n ),\n 'application/vnd.openstreetmap.data+xml' => \n array (\n 0 => 'osm',\n ),\n 'application/vnd.openxmlformats-officedocument.presentationml.presentation' => \n array (\n 0 => 'pptx',\n ),\n 'application/vnd.openxmlformats-officedocument.presentationml.slide' => \n array (\n 0 => 'sldx',\n ),\n 'application/vnd.openxmlformats-officedocument.presentationml.slideshow' => \n array (\n 0 => 'ppsx',\n ),\n 'application/vnd.openxmlformats-officedocument.presentationml.template' => \n array (\n 0 => 'potx',\n ),\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' => \n array (\n 0 => 'xlsx',\n ),\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.template' => \n array (\n 0 => 'xltx',\n ),\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' => \n array (\n 0 => 'docx',\n ),\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.template' => \n array (\n 0 => 'dotx',\n ),\n 'application/vnd.osgeo.mapguide.package' => \n array (\n 0 => 'mgp',\n ),\n 'application/vnd.osgi.dp' => \n array (\n 0 => 'dp',\n ),\n 'application/vnd.osgi.subsystem' => \n array (\n 0 => 'esa',\n ),\n 'application/vnd.palm' => \n array (\n 0 => 'pdb',\n 1 => 'pqa',\n 2 => 'oprc',\n ),\n 'application/vnd.pawaafile' => \n array (\n 0 => 'paw',\n ),\n 'application/vnd.pg.format' => \n array (\n 0 => 'str',\n ),\n 'application/vnd.pg.osasli' => \n array (\n 0 => 'ei6',\n ),\n 'application/vnd.picsel' => \n array (\n 0 => 'efif',\n ),\n 'application/vnd.pmi.widget' => \n array (\n 0 => 'wg',\n ),\n 'application/vnd.pocketlearn' => \n array (\n 0 => 'plf',\n ),\n 'application/vnd.powerbuilder6' => \n array (\n 0 => 'pbd',\n ),\n 'application/vnd.previewsystems.box' => \n array (\n 0 => 'box',\n ),\n 'application/vnd.proteus.magazine' => \n array (\n 0 => 'mgz',\n ),\n 'application/vnd.publishare-delta-tree' => \n array (\n 0 => 'qps',\n ),\n 'application/vnd.pvi.ptid1' => \n array (\n 0 => 'ptid',\n ),\n 'application/vnd.pwg-xhtml-print+xml' => \n array (\n 0 => 'xhtm',\n ),\n 'application/vnd.quark.quarkxpress' => \n array (\n 0 => 'qxd',\n 1 => 'qxt',\n 2 => 'qwd',\n 3 => 'qwt',\n 4 => 'qxl',\n 5 => 'qxb',\n ),\n 'application/vnd.rar' => \n array (\n 0 => 'rar',\n ),\n 'application/vnd.realvnc.bed' => \n array (\n 0 => 'bed',\n ),\n 'application/vnd.recordare.musicxml' => \n array (\n 0 => 'mxl',\n ),\n 'application/vnd.recordare.musicxml+xml' => \n array (\n 0 => 'musicxml',\n ),\n 'application/vnd.rig.cryptonote' => \n array (\n 0 => 'cryptonote',\n ),\n 'application/vnd.rim.cod' => \n array (\n 0 => 'cod',\n ),\n 'application/vnd.rn-realmedia' => \n array (\n 0 => 'rm',\n ),\n 'application/vnd.rn-realmedia-vbr' => \n array (\n 0 => 'rmvb',\n ),\n 'application/vnd.route66.link66+xml' => \n array (\n 0 => 'link66',\n ),\n 'application/vnd.sailingtracker.track' => \n array (\n 0 => 'st',\n ),\n 'application/vnd.seemail' => \n array (\n 0 => 'see',\n ),\n 'application/vnd.sema' => \n array (\n 0 => 'sema',\n ),\n 'application/vnd.semd' => \n array (\n 0 => 'semd',\n ),\n 'application/vnd.semf' => \n array (\n 0 => 'semf',\n ),\n 'application/vnd.shana.informed.formdata' => \n array (\n 0 => 'ifm',\n ),\n 'application/vnd.shana.informed.formtemplate' => \n array (\n 0 => 'itp',\n ),\n 'application/vnd.shana.informed.interchange' => \n array (\n 0 => 'iif',\n ),\n 'application/vnd.shana.informed.package' => \n array (\n 0 => 'ipk',\n ),\n 'application/vnd.simtech-mindmapper' => \n array (\n 0 => 'twd',\n 1 => 'twds',\n ),\n 'application/vnd.smaf' => \n array (\n 0 => 'mmf',\n ),\n 'application/vnd.smart.teacher' => \n array (\n 0 => 'teacher',\n ),\n 'application/vnd.software602.filler.form+xml' => \n array (\n 0 => 'fo',\n ),\n 'application/vnd.solent.sdkm+xml' => \n array (\n 0 => 'sdkm',\n 1 => 'sdkd',\n ),\n 'application/vnd.spotfire.dxp' => \n array (\n 0 => 'dxp',\n ),\n 'application/vnd.spotfire.sfs' => \n array (\n 0 => 'sfs',\n ),\n 'application/vnd.stardivision.calc' => \n array (\n 0 => 'sdc',\n ),\n 'application/vnd.stardivision.draw' => \n array (\n 0 => 'sda',\n ),\n 'application/vnd.stardivision.impress' => \n array (\n 0 => 'sdd',\n ),\n 'application/vnd.stardivision.math' => \n array (\n 0 => 'smf',\n ),\n 'application/vnd.stardivision.writer' => \n array (\n 0 => 'sdw',\n 1 => 'vor',\n ),\n 'application/vnd.stardivision.writer-global' => \n array (\n 0 => 'sgl',\n ),\n 'application/vnd.stepmania.package' => \n array (\n 0 => 'smzip',\n ),\n 'application/vnd.stepmania.stepchart' => \n array (\n 0 => 'sm',\n ),\n 'application/vnd.sun.wadl+xml' => \n array (\n 0 => 'wadl',\n ),\n 'application/vnd.sun.xml.calc' => \n array (\n 0 => 'sxc',\n ),\n 'application/vnd.sun.xml.calc.template' => \n array (\n 0 => 'stc',\n ),\n 'application/vnd.sun.xml.draw' => \n array (\n 0 => 'sxd',\n ),\n 'application/vnd.sun.xml.draw.template' => \n array (\n 0 => 'std',\n ),\n 'application/vnd.sun.xml.impress' => \n array (\n 0 => 'sxi',\n ),\n 'application/vnd.sun.xml.impress.template' => \n array (\n 0 => 'sti',\n ),\n 'application/vnd.sun.xml.math' => \n array (\n 0 => 'sxm',\n ),\n 'application/vnd.sun.xml.writer' => \n array (\n 0 => 'sxw',\n ),\n 'application/vnd.sun.xml.writer.global' => \n array (\n 0 => 'sxg',\n ),\n 'application/vnd.sun.xml.writer.template' => \n array (\n 0 => 'stw',\n ),\n 'application/vnd.sus-calendar' => \n array (\n 0 => 'sus',\n 1 => 'susp',\n ),\n 'application/vnd.svd' => \n array (\n 0 => 'svd',\n ),\n 'application/vnd.symbian.install' => \n array (\n 0 => 'sis',\n 1 => 'sisx',\n ),\n 'application/vnd.syncml+xml' => \n array (\n 0 => 'xsm',\n ),\n 'application/vnd.syncml.dm+wbxml' => \n array (\n 0 => 'bdm',\n ),\n 'application/vnd.syncml.dm+xml' => \n array (\n 0 => 'xdm',\n ),\n 'application/vnd.syncml.dmddf+xml' => \n array (\n 0 => 'ddf',\n ),\n 'application/vnd.tao.intent-module-archive' => \n array (\n 0 => 'tao',\n ),\n 'application/vnd.tcpdump.pcap' => \n array (\n 0 => 'pcap',\n 1 => 'cap',\n 2 => 'dmp',\n ),\n 'application/vnd.tmobile-livetv' => \n array (\n 0 => 'tmo',\n ),\n 'application/vnd.trid.tpt' => \n array (\n 0 => 'tpt',\n ),\n 'application/vnd.triscape.mxs' => \n array (\n 0 => 'mxs',\n ),\n 'application/vnd.trueapp' => \n array (\n 0 => 'tra',\n ),\n 'application/vnd.ufdl' => \n array (\n 0 => 'ufd',\n 1 => 'ufdl',\n ),\n 'application/vnd.uiq.theme' => \n array (\n 0 => 'utz',\n ),\n 'application/vnd.umajin' => \n array (\n 0 => 'umj',\n ),\n 'application/vnd.unity' => \n array (\n 0 => 'unityweb',\n ),\n 'application/vnd.uoml+xml' => \n array (\n 0 => 'uoml',\n 1 => 'uo',\n ),\n 'application/vnd.vcx' => \n array (\n 0 => 'vcx',\n ),\n 'application/vnd.visio' => \n array (\n 0 => 'vsd',\n 1 => 'vst',\n 2 => 'vss',\n 3 => 'vsw',\n ),\n 'application/vnd.visionary' => \n array (\n 0 => 'vis',\n ),\n 'application/vnd.vsf' => \n array (\n 0 => 'vsf',\n ),\n 'application/vnd.wap.wbxml' => \n array (\n 0 => 'wbxml',\n ),\n 'application/vnd.wap.wmlc' => \n array (\n 0 => 'wmlc',\n ),\n 'application/vnd.wap.wmlscriptc' => \n array (\n 0 => 'wmlsc',\n ),\n 'application/vnd.webturbo' => \n array (\n 0 => 'wtb',\n ),\n 'application/vnd.wolfram.player' => \n array (\n 0 => 'nbp',\n ),\n 'application/vnd.wordperfect' => \n array (\n 0 => 'wpd',\n ),\n 'application/vnd.wqd' => \n array (\n 0 => 'wqd',\n ),\n 'application/vnd.wt.stf' => \n array (\n 0 => 'stf',\n ),\n 'application/vnd.xara' => \n array (\n 0 => 'xar',\n ),\n 'application/vnd.xfdl' => \n array (\n 0 => 'xfdl',\n ),\n 'application/vnd.yamaha.hv-dic' => \n array (\n 0 => 'hvd',\n ),\n 'application/vnd.yamaha.hv-script' => \n array (\n 0 => 'hvs',\n ),\n 'application/vnd.yamaha.hv-voice' => \n array (\n 0 => 'hvp',\n ),\n 'application/vnd.yamaha.openscoreformat' => \n array (\n 0 => 'osf',\n ),\n 'application/vnd.yamaha.openscoreformat.osfpvg+xml' => \n array (\n 0 => 'osfpvg',\n ),\n 'application/vnd.yamaha.smaf-audio' => \n array (\n 0 => 'saf',\n ),\n 'application/vnd.yamaha.smaf-phrase' => \n array (\n 0 => 'spf',\n ),\n 'application/vnd.yellowriver-custom-menu' => \n array (\n 0 => 'cmp',\n ),\n 'application/vnd.zul' => \n array (\n 0 => 'zir',\n 1 => 'zirz',\n ),\n 'application/vnd.zzazz.deck+xml' => \n array (\n 0 => 'zaz',\n ),\n 'application/voicexml+xml' => \n array (\n 0 => 'vxml',\n ),\n 'application/wasm' => \n array (\n 0 => 'wasm',\n ),\n 'application/watcherinfo+xml' => \n array (\n 0 => 'wif',\n ),\n 'application/widget' => \n array (\n 0 => 'wgt',\n ),\n 'application/winhlp' => \n array (\n 0 => 'hlp',\n ),\n 'application/wsdl+xml' => \n array (\n 0 => 'wsdl',\n ),\n 'application/wspolicy+xml' => \n array (\n 0 => 'wspolicy',\n ),\n 'application/x-7z-compressed' => \n array (\n 0 => '7z',\n 1 => '7zip',\n ),\n 'application/x-abiword' => \n array (\n 0 => 'abw',\n ),\n 'application/x-ace-compressed' => \n array (\n 0 => 'ace',\n ),\n 'application/x-apple-diskimage' => \n array (\n 0 => 'dmg',\n ),\n 'application/x-arj' => \n array (\n 0 => 'arj',\n ),\n 'application/x-authorware-bin' => \n array (\n 0 => 'aab',\n 1 => 'x32',\n 2 => 'u32',\n 3 => 'vox',\n ),\n 'application/x-authorware-map' => \n array (\n 0 => 'aam',\n ),\n 'application/x-authorware-seg' => \n array (\n 0 => 'aas',\n ),\n 'application/x-bcpio' => \n array (\n 0 => 'bcpio',\n ),\n 'application/x-bdoc' => \n array (\n 0 => 'bdoc',\n ),\n 'application/x-bittorrent' => \n array (\n 0 => 'torrent',\n ),\n 'application/x-blorb' => \n array (\n 0 => 'blb',\n 1 => 'blorb',\n ),\n 'application/x-bzip' => \n array (\n 0 => 'bz',\n ),\n 'application/x-bzip2' => \n array (\n 0 => 'bz2',\n 1 => 'boz',\n ),\n 'application/x-cbr' => \n array (\n 0 => 'cbr',\n 1 => 'cba',\n 2 => 'cbt',\n 3 => 'cbz',\n 4 => 'cb7',\n ),\n 'application/x-cdlink' => \n array (\n 0 => 'vcd',\n ),\n 'application/x-cfs-compressed' => \n array (\n 0 => 'cfs',\n ),\n 'application/x-chat' => \n array (\n 0 => 'chat',\n ),\n 'application/x-chess-pgn' => \n array (\n 0 => 'pgn',\n ),\n 'application/x-chrome-extension' => \n array (\n 0 => 'crx',\n ),\n 'application/x-cocoa' => \n array (\n 0 => 'cco',\n ),\n 'application/x-conference' => \n array (\n 0 => 'nsc',\n ),\n 'application/x-cpio' => \n array (\n 0 => 'cpio',\n ),\n 'application/x-csh' => \n array (\n 0 => 'csh',\n ),\n 'application/x-debian-package' => \n array (\n 0 => 'deb',\n 1 => 'udeb',\n ),\n 'application/x-dgc-compressed' => \n array (\n 0 => 'dgc',\n ),\n 'application/x-director' => \n array (\n 0 => 'dir',\n 1 => 'dcr',\n 2 => 'dxr',\n 3 => 'cst',\n 4 => 'cct',\n 5 => 'cxt',\n 6 => 'w3d',\n 7 => 'fgd',\n 8 => 'swa',\n ),\n 'application/x-doom' => \n array (\n 0 => 'wad',\n ),\n 'application/x-dtbncx+xml' => \n array (\n 0 => 'ncx',\n ),\n 'application/x-dtbook+xml' => \n array (\n 0 => 'dtb',\n ),\n 'application/x-dtbresource+xml' => \n array (\n 0 => 'res',\n ),\n 'application/x-dvi' => \n array (\n 0 => 'dvi',\n ),\n 'application/x-envoy' => \n array (\n 0 => 'evy',\n ),\n 'application/x-eva' => \n array (\n 0 => 'eva',\n ),\n 'application/x-font-bdf' => \n array (\n 0 => 'bdf',\n ),\n 'application/x-font-ghostscript' => \n array (\n 0 => 'gsf',\n ),\n 'application/x-font-linux-psf' => \n array (\n 0 => 'psf',\n ),\n 'application/x-font-pcf' => \n array (\n 0 => 'pcf',\n ),\n 'application/x-font-snf' => \n array (\n 0 => 'snf',\n ),\n 'application/x-font-type1' => \n array (\n 0 => 'pfa',\n 1 => 'pfb',\n 2 => 'pfm',\n 3 => 'afm',\n ),\n 'application/x-freearc' => \n array (\n 0 => 'arc',\n ),\n 'application/x-futuresplash' => \n array (\n 0 => 'spl',\n ),\n 'application/x-gca-compressed' => \n array (\n 0 => 'gca',\n ),\n 'application/x-glulx' => \n array (\n 0 => 'ulx',\n ),\n 'application/x-gnumeric' => \n array (\n 0 => 'gnumeric',\n ),\n 'application/x-gramps-xml' => \n array (\n 0 => 'gramps',\n ),\n 'application/x-gtar' => \n array (\n 0 => 'gtar',\n ),\n 'application/x-hdf' => \n array (\n 0 => 'hdf',\n ),\n 'application/x-httpd-php' => \n array (\n 0 => 'php',\n 1 => 'php4',\n 2 => 'php3',\n 3 => 'phtml',\n ),\n 'application/x-install-instructions' => \n array (\n 0 => 'install',\n ),\n 'application/x-iso9660-image' => \n array (\n 0 => 'iso',\n ),\n 'application/x-iwork-keynote-sffkey' => \n array (\n 0 => 'key',\n ),\n 'application/x-iwork-numbers-sffnumbers' => \n array (\n 0 => 'numbers',\n ),\n 'application/x-iwork-pages-sffpages' => \n array (\n 0 => 'pages',\n ),\n 'application/x-java-archive-diff' => \n array (\n 0 => 'jardiff',\n ),\n 'application/x-java-jnlp-file' => \n array (\n 0 => 'jnlp',\n ),\n 'application/x-keepass2' => \n array (\n 0 => 'kdbx',\n ),\n 'application/x-latex' => \n array (\n 0 => 'latex',\n ),\n 'application/x-lua-bytecode' => \n array (\n 0 => 'luac',\n ),\n 'application/x-lzh-compressed' => \n array (\n 0 => 'lzh',\n 1 => 'lha',\n ),\n 'application/x-makeself' => \n array (\n 0 => 'run',\n ),\n 'application/x-mie' => \n array (\n 0 => 'mie',\n ),\n 'application/x-mobipocket-ebook' => \n array (\n 0 => 'prc',\n 1 => 'mobi',\n ),\n 'application/x-ms-application' => \n array (\n 0 => 'application',\n ),\n 'application/x-ms-shortcut' => \n array (\n 0 => 'lnk',\n ),\n 'application/x-ms-wmd' => \n array (\n 0 => 'wmd',\n ),\n 'application/x-ms-wmz' => \n array (\n 0 => 'wmz',\n ),\n 'application/x-ms-xbap' => \n array (\n 0 => 'xbap',\n ),\n 'application/x-msaccess' => \n array (\n 0 => 'mdb',\n ),\n 'application/x-msbinder' => \n array (\n 0 => 'obd',\n ),\n 'application/x-mscardfile' => \n array (\n 0 => 'crd',\n ),\n 'application/x-msclip' => \n array (\n 0 => 'clp',\n ),\n 'application/x-msdos-program' => \n array (\n 0 => 'exe',\n ),\n 'application/x-msdownload' => \n array (\n 0 => 'exe',\n 1 => 'dll',\n 2 => 'com',\n 3 => 'bat',\n 4 => 'msi',\n ),\n 'application/x-msmediaview' => \n array (\n 0 => 'mvb',\n 1 => 'm13',\n 2 => 'm14',\n ),\n 'application/x-msmetafile' => \n array (\n 0 => 'wmf',\n 1 => 'wmz',\n 2 => 'emf',\n 3 => 'emz',\n ),\n 'application/x-msmoney' => \n array (\n 0 => 'mny',\n ),\n 'application/x-mspublisher' => \n array (\n 0 => 'pub',\n ),\n 'application/x-msschedule' => \n array (\n 0 => 'scd',\n ),\n 'application/x-msterminal' => \n array (\n 0 => 'trm',\n ),\n 'application/x-mswrite' => \n array (\n 0 => 'wri',\n ),\n 'application/x-netcdf' => \n array (\n 0 => 'nc',\n 1 => 'cdf',\n ),\n 'application/x-ns-proxy-autoconfig' => \n array (\n 0 => 'pac',\n ),\n 'application/x-nzb' => \n array (\n 0 => 'nzb',\n ),\n 'application/x-perl' => \n array (\n 0 => 'pl',\n 1 => 'pm',\n ),\n 'application/x-pilot' => \n array (\n 0 => 'prc',\n 1 => 'pdb',\n ),\n 'application/x-pkcs12' => \n array (\n 0 => 'p12',\n 1 => 'pfx',\n ),\n 'application/x-pkcs7-certificates' => \n array (\n 0 => 'p7b',\n 1 => 'spc',\n ),\n 'application/x-pkcs7-certreqresp' => \n array (\n 0 => 'p7r',\n ),\n 'application/x-rar-compressed' => \n array (\n 0 => 'rar',\n ),\n 'application/x-redhat-package-manager' => \n array (\n 0 => 'rpm',\n ),\n 'application/x-research-info-systems' => \n array (\n 0 => 'ris',\n ),\n 'application/x-sea' => \n array (\n 0 => 'sea',\n ),\n 'application/x-sh' => \n array (\n 0 => 'sh',\n ),\n 'application/x-shar' => \n array (\n 0 => 'shar',\n ),\n 'application/x-shockwave-flash' => \n array (\n 0 => 'swf',\n ),\n 'application/x-silverlight-app' => \n array (\n 0 => 'xap',\n ),\n 'application/x-sql' => \n array (\n 0 => 'sql',\n ),\n 'application/x-stuffit' => \n array (\n 0 => 'sit',\n ),\n 'application/x-stuffitx' => \n array (\n 0 => 'sitx',\n ),\n 'application/x-subrip' => \n array (\n 0 => 'srt',\n ),\n 'application/x-sv4cpio' => \n array (\n 0 => 'sv4cpio',\n ),\n 'application/x-sv4crc' => \n array (\n 0 => 'sv4crc',\n ),\n 'application/x-t3vm-image' => \n array (\n 0 => 't3',\n ),\n 'application/x-tads' => \n array (\n 0 => 'gam',\n ),\n 'application/x-tar' => \n array (\n 0 => 'tar',\n 1 => 'tgz',\n ),\n 'application/x-tcl' => \n array (\n 0 => 'tcl',\n 1 => 'tk',\n ),\n 'application/x-tex' => \n array (\n 0 => 'tex',\n ),\n 'application/x-tex-tfm' => \n array (\n 0 => 'tfm',\n ),\n 'application/x-texinfo' => \n array (\n 0 => 'texinfo',\n 1 => 'texi',\n ),\n 'application/x-tgif' => \n array (\n 0 => 'obj',\n ),\n 'application/x-ustar' => \n array (\n 0 => 'ustar',\n ),\n 'application/x-virtualbox-hdd' => \n array (\n 0 => 'hdd',\n ),\n 'application/x-virtualbox-ova' => \n array (\n 0 => 'ova',\n ),\n 'application/x-virtualbox-ovf' => \n array (\n 0 => 'ovf',\n ),\n 'application/x-virtualbox-vbox' => \n array (\n 0 => 'vbox',\n ),\n 'application/x-virtualbox-vbox-extpack' => \n array (\n 0 => 'vbox-extpack',\n ),\n 'application/x-virtualbox-vdi' => \n array (\n 0 => 'vdi',\n ),\n 'application/x-virtualbox-vhd' => \n array (\n 0 => 'vhd',\n ),\n 'application/x-virtualbox-vmdk' => \n array (\n 0 => 'vmdk',\n ),\n 'application/x-wais-source' => \n array (\n 0 => 'src',\n ),\n 'application/x-web-app-manifest+json' => \n array (\n 0 => 'webapp',\n ),\n 'application/x-x509-ca-cert' => \n array (\n 0 => 'der',\n 1 => 'crt',\n 2 => 'pem',\n ),\n 'application/x-xfig' => \n array (\n 0 => 'fig',\n ),\n 'application/x-xliff+xml' => \n array (\n 0 => 'xlf',\n ),\n 'application/x-xpinstall' => \n array (\n 0 => 'xpi',\n ),\n 'application/x-xz' => \n array (\n 0 => 'xz',\n ),\n 'application/x-zmachine' => \n array (\n 0 => 'z1',\n 1 => 'z2',\n 2 => 'z3',\n 3 => 'z4',\n 4 => 'z5',\n 5 => 'z6',\n 6 => 'z7',\n 7 => 'z8',\n ),\n 'application/xaml+xml' => \n array (\n 0 => 'xaml',\n ),\n 'application/xcap-att+xml' => \n array (\n 0 => 'xav',\n ),\n 'application/xcap-caps+xml' => \n array (\n 0 => 'xca',\n ),\n 'application/xcap-diff+xml' => \n array (\n 0 => 'xdf',\n ),\n 'application/xcap-el+xml' => \n array (\n 0 => 'xel',\n ),\n 'application/xcap-ns+xml' => \n array (\n 0 => 'xns',\n ),\n 'application/xenc+xml' => \n array (\n 0 => 'xenc',\n ),\n 'application/xfdf' => \n array (\n 0 => 'xfdf',\n ),\n 'application/xhtml+xml' => \n array (\n 0 => 'xhtml',\n 1 => 'xht',\n ),\n 'application/xliff+xml' => \n array (\n 0 => 'xlf',\n ),\n 'application/xml' => \n array (\n 0 => 'xml',\n 1 => 'xsl',\n 2 => 'xsd',\n 3 => 'rng',\n ),\n 'application/xml-dtd' => \n array (\n 0 => 'dtd',\n ),\n 'application/xop+xml' => \n array (\n 0 => 'xop',\n ),\n 'application/xproc+xml' => \n array (\n 0 => 'xpl',\n ),\n 'application/xslt+xml' => \n array (\n 0 => 'xsl',\n 1 => 'xslt',\n ),\n 'application/xspf+xml' => \n array (\n 0 => 'xspf',\n ),\n 'application/xv+xml' => \n array (\n 0 => 'mxml',\n 1 => 'xhvml',\n 2 => 'xvml',\n 3 => 'xvm',\n ),\n 'application/yang' => \n array (\n 0 => 'yang',\n ),\n 'application/yin+xml' => \n array (\n 0 => 'yin',\n ),\n 'application/zip' => \n array (\n 0 => 'zip',\n ),\n 'audio/3gpp' => \n array (\n 0 => '3gpp',\n ),\n 'audio/aac' => \n array (\n 0 => 'adts',\n 1 => 'aac',\n ),\n 'audio/adpcm' => \n array (\n 0 => 'adp',\n ),\n 'audio/amr' => \n array (\n 0 => 'amr',\n ),\n 'audio/basic' => \n array (\n 0 => 'au',\n 1 => 'snd',\n ),\n 'audio/midi' => \n array (\n 0 => 'mid',\n 1 => 'midi',\n 2 => 'kar',\n 3 => 'rmi',\n ),\n 'audio/mobile-xmf' => \n array (\n 0 => 'mxmf',\n ),\n 'audio/mp3' => \n array (\n 0 => 'mp3',\n ),\n 'audio/mp4' => \n array (\n 0 => 'm4a',\n 1 => 'mp4a',\n ),\n 'audio/mpeg' => \n array (\n 0 => 'mpga',\n 1 => 'mp2',\n 2 => 'mp2a',\n 3 => 'mp3',\n 4 => 'm2a',\n 5 => 'm3a',\n ),\n 'audio/ogg' => \n array (\n 0 => 'oga',\n 1 => 'ogg',\n 2 => 'spx',\n 3 => 'opus',\n ),\n 'audio/s3m' => \n array (\n 0 => 's3m',\n ),\n 'audio/silk' => \n array (\n 0 => 'sil',\n ),\n 'audio/vnd.dece.audio' => \n array (\n 0 => 'uva',\n 1 => 'uvva',\n ),\n 'audio/vnd.digital-winds' => \n array (\n 0 => 'eol',\n ),\n 'audio/vnd.dra' => \n array (\n 0 => 'dra',\n ),\n 'audio/vnd.dts' => \n array (\n 0 => 'dts',\n ),\n 'audio/vnd.dts.hd' => \n array (\n 0 => 'dtshd',\n ),\n 'audio/vnd.lucent.voice' => \n array (\n 0 => 'lvp',\n ),\n 'audio/vnd.ms-playready.media.pya' => \n array (\n 0 => 'pya',\n ),\n 'audio/vnd.nuera.ecelp4800' => \n array (\n 0 => 'ecelp4800',\n ),\n 'audio/vnd.nuera.ecelp7470' => \n array (\n 0 => 'ecelp7470',\n ),\n 'audio/vnd.nuera.ecelp9600' => \n array (\n 0 => 'ecelp9600',\n ),\n 'audio/vnd.rip' => \n array (\n 0 => 'rip',\n ),\n 'audio/wav' => \n array (\n 0 => 'wav',\n ),\n 'audio/wave' => \n array (\n 0 => 'wav',\n ),\n 'audio/webm' => \n array (\n 0 => 'weba',\n ),\n 'audio/x-aac' => \n array (\n 0 => 'aac',\n ),\n 'audio/x-aiff' => \n array (\n 0 => 'aif',\n 1 => 'aiff',\n 2 => 'aifc',\n ),\n 'audio/x-caf' => \n array (\n 0 => 'caf',\n ),\n 'audio/x-flac' => \n array (\n 0 => 'flac',\n ),\n 'audio/x-m4a' => \n array (\n 0 => 'm4a',\n ),\n 'audio/x-matroska' => \n array (\n 0 => 'mka',\n ),\n 'audio/x-mpegurl' => \n array (\n 0 => 'm3u',\n ),\n 'audio/x-ms-wax' => \n array (\n 0 => 'wax',\n ),\n 'audio/x-ms-wma' => \n array (\n 0 => 'wma',\n ),\n 'audio/x-pn-realaudio' => \n array (\n 0 => 'ram',\n 1 => 'ra',\n 2 => 'rm',\n ),\n 'audio/x-pn-realaudio-plugin' => \n array (\n 0 => 'rmp',\n 1 => 'rpm',\n ),\n 'audio/x-realaudio' => \n array (\n 0 => 'ra',\n ),\n 'audio/x-wav' => \n array (\n 0 => 'wav',\n ),\n 'audio/xm' => \n array (\n 0 => 'xm',\n ),\n 'chemical/x-cdx' => \n array (\n 0 => 'cdx',\n ),\n 'chemical/x-cif' => \n array (\n 0 => 'cif',\n ),\n 'chemical/x-cmdf' => \n array (\n 0 => 'cmdf',\n ),\n 'chemical/x-cml' => \n array (\n 0 => 'cml',\n ),\n 'chemical/x-csml' => \n array (\n 0 => 'csml',\n ),\n 'chemical/x-xyz' => \n array (\n 0 => 'xyz',\n ),\n 'font/collection' => \n array (\n 0 => 'ttc',\n ),\n 'font/otf' => \n array (\n 0 => 'otf',\n ),\n 'font/ttf' => \n array (\n 0 => 'ttf',\n ),\n 'font/woff' => \n array (\n 0 => 'woff',\n ),\n 'font/woff2' => \n array (\n 0 => 'woff2',\n ),\n 'image/aces' => \n array (\n 0 => 'exr',\n ),\n 'image/apng' => \n array (\n 0 => 'apng',\n ),\n 'image/avci' => \n array (\n 0 => 'avci',\n ),\n 'image/avcs' => \n array (\n 0 => 'avcs',\n ),\n 'image/avif' => \n array (\n 0 => 'avif',\n ),\n 'image/bmp' => \n array (\n 0 => 'bmp',\n 1 => 'dib',\n ),\n 'image/cgm' => \n array (\n 0 => 'cgm',\n ),\n 'image/dicom-rle' => \n array (\n 0 => 'drle',\n ),\n 'image/dpx' => \n array (\n 0 => 'dpx',\n ),\n 'image/emf' => \n array (\n 0 => 'emf',\n ),\n 'image/fits' => \n array (\n 0 => 'fits',\n ),\n 'image/g3fax' => \n array (\n 0 => 'g3',\n ),\n 'image/gif' => \n array (\n 0 => 'gif',\n ),\n 'image/heic' => \n array (\n 0 => 'heic',\n ),\n 'image/heic-sequence' => \n array (\n 0 => 'heics',\n ),\n 'image/heif' => \n array (\n 0 => 'heif',\n ),\n 'image/heif-sequence' => \n array (\n 0 => 'heifs',\n ),\n 'image/hej2k' => \n array (\n 0 => 'hej2',\n ),\n 'image/hsj2' => \n array (\n 0 => 'hsj2',\n ),\n 'image/ief' => \n array (\n 0 => 'ief',\n ),\n 'image/jls' => \n array (\n 0 => 'jls',\n ),\n 'image/jp2' => \n array (\n 0 => 'jp2',\n 1 => 'jpg2',\n ),\n 'image/jpeg' => \n array (\n 0 => 'jpeg',\n 1 => 'jpg',\n 2 => 'jpe',\n ),\n 'image/jph' => \n array (\n 0 => 'jph',\n ),\n 'image/jphc' => \n array (\n 0 => 'jhc',\n ),\n 'image/jpm' => \n array (\n 0 => 'jpm',\n 1 => 'jpgm',\n ),\n 'image/jpx' => \n array (\n 0 => 'jpx',\n 1 => 'jpf',\n ),\n 'image/jxr' => \n array (\n 0 => 'jxr',\n ),\n 'image/jxra' => \n array (\n 0 => 'jxra',\n ),\n 'image/jxrs' => \n array (\n 0 => 'jxrs',\n ),\n 'image/jxs' => \n array (\n 0 => 'jxs',\n ),\n 'image/jxsc' => \n array (\n 0 => 'jxsc',\n ),\n 'image/jxsi' => \n array (\n 0 => 'jxsi',\n ),\n 'image/jxss' => \n array (\n 0 => 'jxss',\n ),\n 'image/ktx' => \n array (\n 0 => 'ktx',\n ),\n 'image/ktx2' => \n array (\n 0 => 'ktx2',\n ),\n 'image/png' => \n array (\n 0 => 'png',\n ),\n 'image/prs.btif' => \n array (\n 0 => 'btif',\n 1 => 'btf',\n ),\n 'image/prs.pti' => \n array (\n 0 => 'pti',\n ),\n 'image/sgi' => \n array (\n 0 => 'sgi',\n ),\n 'image/svg+xml' => \n array (\n 0 => 'svg',\n 1 => 'svgz',\n ),\n 'image/t38' => \n array (\n 0 => 't38',\n ),\n 'image/tiff' => \n array (\n 0 => 'tif',\n 1 => 'tiff',\n ),\n 'image/tiff-fx' => \n array (\n 0 => 'tfx',\n ),\n 'image/vnd.adobe.photoshop' => \n array (\n 0 => 'psd',\n ),\n 'image/vnd.airzip.accelerator.azv' => \n array (\n 0 => 'azv',\n ),\n 'image/vnd.dece.graphic' => \n array (\n 0 => 'uvi',\n 1 => 'uvvi',\n 2 => 'uvg',\n 3 => 'uvvg',\n ),\n 'image/vnd.djvu' => \n array (\n 0 => 'djvu',\n 1 => 'djv',\n ),\n 'image/vnd.dvb.subtitle' => \n array (\n 0 => 'sub',\n ),\n 'image/vnd.dwg' => \n array (\n 0 => 'dwg',\n ),\n 'image/vnd.dxf' => \n array (\n 0 => 'dxf',\n ),\n 'image/vnd.fastbidsheet' => \n array (\n 0 => 'fbs',\n ),\n 'image/vnd.fpx' => \n array (\n 0 => 'fpx',\n ),\n 'image/vnd.fst' => \n array (\n 0 => 'fst',\n ),\n 'image/vnd.fujixerox.edmics-mmr' => \n array (\n 0 => 'mmr',\n ),\n 'image/vnd.fujixerox.edmics-rlc' => \n array (\n 0 => 'rlc',\n ),\n 'image/vnd.microsoft.icon' => \n array (\n 0 => 'ico',\n ),\n 'image/vnd.ms-dds' => \n array (\n 0 => 'dds',\n ),\n 'image/vnd.ms-modi' => \n array (\n 0 => 'mdi',\n ),\n 'image/vnd.ms-photo' => \n array (\n 0 => 'wdp',\n ),\n 'image/vnd.net-fpx' => \n array (\n 0 => 'npx',\n ),\n 'image/vnd.pco.b16' => \n array (\n 0 => 'b16',\n ),\n 'image/vnd.tencent.tap' => \n array (\n 0 => 'tap',\n ),\n 'image/vnd.valve.source.texture' => \n array (\n 0 => 'vtf',\n ),\n 'image/vnd.wap.wbmp' => \n array (\n 0 => 'wbmp',\n ),\n 'image/vnd.xiff' => \n array (\n 0 => 'xif',\n ),\n 'image/vnd.zbrush.pcx' => \n array (\n 0 => 'pcx',\n ),\n 'image/webp' => \n array (\n 0 => 'webp',\n ),\n 'image/wmf' => \n array (\n 0 => 'wmf',\n ),\n 'image/x-3ds' => \n array (\n 0 => '3ds',\n ),\n 'image/x-cmu-raster' => \n array (\n 0 => 'ras',\n ),\n 'image/x-cmx' => \n array (\n 0 => 'cmx',\n ),\n 'image/x-freehand' => \n array (\n 0 => 'fh',\n 1 => 'fhc',\n 2 => 'fh4',\n 3 => 'fh5',\n 4 => 'fh7',\n ),\n 'image/x-icon' => \n array (\n 0 => 'ico',\n ),\n 'image/x-jng' => \n array (\n 0 => 'jng',\n ),\n 'image/x-mrsid-image' => \n array (\n 0 => 'sid',\n ),\n 'image/x-ms-bmp' => \n array (\n 0 => 'bmp',\n ),\n 'image/x-pcx' => \n array (\n 0 => 'pcx',\n ),\n 'image/x-pict' => \n array (\n 0 => 'pic',\n 1 => 'pct',\n ),\n 'image/x-portable-anymap' => \n array (\n 0 => 'pnm',\n ),\n 'image/x-portable-bitmap' => \n array (\n 0 => 'pbm',\n ),\n 'image/x-portable-graymap' => \n array (\n 0 => 'pgm',\n ),\n 'image/x-portable-pixmap' => \n array (\n 0 => 'ppm',\n ),\n 'image/x-rgb' => \n array (\n 0 => 'rgb',\n ),\n 'image/x-tga' => \n array (\n 0 => 'tga',\n ),\n 'image/x-xbitmap' => \n array (\n 0 => 'xbm',\n ),\n 'image/x-xpixmap' => \n array (\n 0 => 'xpm',\n ),\n 'image/x-xwindowdump' => \n array (\n 0 => 'xwd',\n ),\n 'message/disposition-notification' => \n array (\n 0 => 'disposition-notification',\n ),\n 'message/global' => \n array (\n 0 => 'u8msg',\n ),\n 'message/global-delivery-status' => \n array (\n 0 => 'u8dsn',\n ),\n 'message/global-disposition-notification' => \n array (\n 0 => 'u8mdn',\n ),\n 'message/global-headers' => \n array (\n 0 => 'u8hdr',\n ),\n 'message/rfc822' => \n array (\n 0 => 'eml',\n 1 => 'mime',\n ),\n 'message/vnd.wfa.wsc' => \n array (\n 0 => 'wsc',\n ),\n 'model/3mf' => \n array (\n 0 => '3mf',\n ),\n 'model/gltf+json' => \n array (\n 0 => 'gltf',\n ),\n 'model/gltf-binary' => \n array (\n 0 => 'glb',\n ),\n 'model/iges' => \n array (\n 0 => 'igs',\n 1 => 'iges',\n ),\n 'model/jt' => \n array (\n 0 => 'jt',\n ),\n 'model/mesh' => \n array (\n 0 => 'msh',\n 1 => 'mesh',\n 2 => 'silo',\n ),\n 'model/mtl' => \n array (\n 0 => 'mtl',\n ),\n 'model/obj' => \n array (\n 0 => 'obj',\n ),\n 'model/prc' => \n array (\n 0 => 'prc',\n ),\n 'model/step+xml' => \n array (\n 0 => 'stpx',\n ),\n 'model/step+zip' => \n array (\n 0 => 'stpz',\n ),\n 'model/step-xml+zip' => \n array (\n 0 => 'stpxz',\n ),\n 'model/stl' => \n array (\n 0 => 'stl',\n ),\n 'model/u3d' => \n array (\n 0 => 'u3d',\n ),\n 'model/vnd.cld' => \n array (\n 0 => 'cld',\n ),\n 'model/vnd.collada+xml' => \n array (\n 0 => 'dae',\n ),\n 'model/vnd.dwf' => \n array (\n 0 => 'dwf',\n ),\n 'model/vnd.gdl' => \n array (\n 0 => 'gdl',\n ),\n 'model/vnd.gtw' => \n array (\n 0 => 'gtw',\n ),\n 'model/vnd.mts' => \n array (\n 0 => 'mts',\n ),\n 'model/vnd.opengex' => \n array (\n 0 => 'ogex',\n ),\n 'model/vnd.parasolid.transmit.binary' => \n array (\n 0 => 'x_b',\n ),\n 'model/vnd.parasolid.transmit.text' => \n array (\n 0 => 'x_t',\n ),\n 'model/vnd.pytha.pyox' => \n array (\n 0 => 'pyo',\n 1 => 'pyox',\n ),\n 'model/vnd.sap.vds' => \n array (\n 0 => 'vds',\n ),\n 'model/vnd.usda' => \n array (\n 0 => 'usda',\n ),\n 'model/vnd.usdz+zip' => \n array (\n 0 => 'usdz',\n ),\n 'model/vnd.valve.source.compiled-map' => \n array (\n 0 => 'bsp',\n ),\n 'model/vnd.vtu' => \n array (\n 0 => 'vtu',\n ),\n 'model/vrml' => \n array (\n 0 => 'wrl',\n 1 => 'vrml',\n ),\n 'model/x3d+binary' => \n array (\n 0 => 'x3db',\n 1 => 'x3dbz',\n ),\n 'model/x3d+fastinfoset' => \n array (\n 0 => 'x3db',\n ),\n 'model/x3d+vrml' => \n array (\n 0 => 'x3dv',\n 1 => 'x3dvz',\n ),\n 'model/x3d+xml' => \n array (\n 0 => 'x3d',\n 1 => 'x3dz',\n ),\n 'model/x3d-vrml' => \n array (\n 0 => 'x3dv',\n ),\n 'text/cache-manifest' => \n array (\n 0 => 'appcache',\n 1 => 'manifest',\n ),\n 'text/calendar' => \n array (\n 0 => 'ics',\n 1 => 'ifb',\n ),\n 'text/coffeescript' => \n array (\n 0 => 'coffee',\n 1 => 'litcoffee',\n ),\n 'text/css' => \n array (\n 0 => 'css',\n ),\n 'text/csv' => \n array (\n 0 => 'csv',\n ),\n 'text/html' => \n array (\n 0 => 'html',\n 1 => 'htm',\n 2 => 'shtml',\n ),\n 'text/jade' => \n array (\n 0 => 'jade',\n ),\n 'text/javascript' => \n array (\n 0 => 'js',\n 1 => 'mjs',\n ),\n 'text/jsx' => \n array (\n 0 => 'jsx',\n ),\n 'text/less' => \n array (\n 0 => 'less',\n ),\n 'text/markdown' => \n array (\n 0 => 'md',\n 1 => 'markdown',\n ),\n 'text/mathml' => \n array (\n 0 => 'mml',\n ),\n 'text/mdx' => \n array (\n 0 => 'mdx',\n ),\n 'text/n3' => \n array (\n 0 => 'n3',\n ),\n 'text/plain' => \n array (\n 0 => 'txt',\n 1 => 'text',\n 2 => 'conf',\n 3 => 'def',\n 4 => 'list',\n 5 => 'log',\n 6 => 'in',\n 7 => 'ini',\n 8 => 'm3u',\n ),\n 'text/prs.lines.tag' => \n array (\n 0 => 'dsc',\n ),\n 'text/richtext' => \n array (\n 0 => 'rtx',\n ),\n 'text/rtf' => \n array (\n 0 => 'rtf',\n ),\n 'text/sgml' => \n array (\n 0 => 'sgml',\n 1 => 'sgm',\n ),\n 'text/shex' => \n array (\n 0 => 'shex',\n ),\n 'text/slim' => \n array (\n 0 => 'slim',\n 1 => 'slm',\n ),\n 'text/spdx' => \n array (\n 0 => 'spdx',\n ),\n 'text/stylus' => \n array (\n 0 => 'stylus',\n 1 => 'styl',\n ),\n 'text/tab-separated-values' => \n array (\n 0 => 'tsv',\n ),\n 'text/troff' => \n array (\n 0 => 't',\n 1 => 'tr',\n 2 => 'roff',\n 3 => 'man',\n 4 => 'me',\n 5 => 'ms',\n ),\n 'text/turtle' => \n array (\n 0 => 'ttl',\n ),\n 'text/uri-list' => \n array (\n 0 => 'uri',\n 1 => 'uris',\n 2 => 'urls',\n ),\n 'text/vcard' => \n array (\n 0 => 'vcard',\n ),\n 'text/vnd.curl' => \n array (\n 0 => 'curl',\n ),\n 'text/vnd.curl.dcurl' => \n array (\n 0 => 'dcurl',\n ),\n 'text/vnd.curl.mcurl' => \n array (\n 0 => 'mcurl',\n ),\n 'text/vnd.curl.scurl' => \n array (\n 0 => 'scurl',\n ),\n 'text/vnd.dvb.subtitle' => \n array (\n 0 => 'sub',\n ),\n 'text/vnd.familysearch.gedcom' => \n array (\n 0 => 'ged',\n ),\n 'text/vnd.fly' => \n array (\n 0 => 'fly',\n ),\n 'text/vnd.fmi.flexstor' => \n array (\n 0 => 'flx',\n ),\n 'text/vnd.graphviz' => \n array (\n 0 => 'gv',\n ),\n 'text/vnd.in3d.3dml' => \n array (\n 0 => '3dml',\n ),\n 'text/vnd.in3d.spot' => \n array (\n 0 => 'spot',\n ),\n 'text/vnd.sun.j2me.app-descriptor' => \n array (\n 0 => 'jad',\n ),\n 'text/vnd.wap.wml' => \n array (\n 0 => 'wml',\n ),\n 'text/vnd.wap.wmlscript' => \n array (\n 0 => 'wmls',\n ),\n 'text/vtt' => \n array (\n 0 => 'vtt',\n ),\n 'text/wgsl' => \n array (\n 0 => 'wgsl',\n ),\n 'text/x-asm' => \n array (\n 0 => 's',\n 1 => 'asm',\n ),\n 'text/x-c' => \n array (\n 0 => 'c',\n 1 => 'cc',\n 2 => 'cxx',\n 3 => 'cpp',\n 4 => 'h',\n 5 => 'hh',\n 6 => 'dic',\n ),\n 'text/x-component' => \n array (\n 0 => 'htc',\n ),\n 'text/x-fortran' => \n array (\n 0 => 'f',\n 1 => 'for',\n 2 => 'f77',\n 3 => 'f90',\n ),\n 'text/x-handlebars-template' => \n array (\n 0 => 'hbs',\n ),\n 'text/x-java-source' => \n array (\n 0 => 'java',\n ),\n 'text/x-lua' => \n array (\n 0 => 'lua',\n ),\n 'text/x-markdown' => \n array (\n 0 => 'mkd',\n ),\n 'text/x-nfo' => \n array (\n 0 => 'nfo',\n ),\n 'text/x-opml' => \n array (\n 0 => 'opml',\n ),\n 'text/x-org' => \n array (\n 0 => 'org',\n ),\n 'text/x-pascal' => \n array (\n 0 => 'p',\n 1 => 'pas',\n ),\n 'text/x-processing' => \n array (\n 0 => 'pde',\n ),\n 'text/x-sass' => \n array (\n 0 => 'sass',\n ),\n 'text/x-scss' => \n array (\n 0 => 'scss',\n ),\n 'text/x-setext' => \n array (\n 0 => 'etx',\n ),\n 'text/x-sfv' => \n array (\n 0 => 'sfv',\n ),\n 'text/x-suse-ymp' => \n array (\n 0 => 'ymp',\n ),\n 'text/x-uuencode' => \n array (\n 0 => 'uu',\n ),\n 'text/x-vcalendar' => \n array (\n 0 => 'vcs',\n ),\n 'text/x-vcard' => \n array (\n 0 => 'vcf',\n ),\n 'text/xml' => \n array (\n 0 => 'xml',\n ),\n 'text/yaml' => \n array (\n 0 => 'yaml',\n 1 => 'yml',\n ),\n 'video/3gpp' => \n array (\n 0 => '3gp',\n 1 => '3gpp',\n ),\n 'video/3gpp2' => \n array (\n 0 => '3g2',\n ),\n 'video/h261' => \n array (\n 0 => 'h261',\n ),\n 'video/h263' => \n array (\n 0 => 'h263',\n ),\n 'video/h264' => \n array (\n 0 => 'h264',\n ),\n 'video/iso.segment' => \n array (\n 0 => 'm4s',\n ),\n 'video/jpeg' => \n array (\n 0 => 'jpgv',\n ),\n 'video/jpm' => \n array (\n 0 => 'jpm',\n 1 => 'jpgm',\n ),\n 'video/mj2' => \n array (\n 0 => 'mj2',\n 1 => 'mjp2',\n ),\n 'video/mp2t' => \n array (\n 0 => 'ts',\n ),\n 'video/mp4' => \n array (\n 0 => 'mp4',\n 1 => 'mp4v',\n 2 => 'mpg4',\n 3 => 'f4v',\n ),\n 'video/mpeg' => \n array (\n 0 => 'mpeg',\n 1 => 'mpg',\n 2 => 'mpe',\n 3 => 'm1v',\n 4 => 'm2v',\n ),\n 'video/ogg' => \n array (\n 0 => 'ogv',\n ),\n 'video/quicktime' => \n array (\n 0 => 'qt',\n 1 => 'mov',\n ),\n 'video/vnd.dece.hd' => \n array (\n 0 => 'uvh',\n 1 => 'uvvh',\n ),\n 'video/vnd.dece.mobile' => \n array (\n 0 => 'uvm',\n 1 => 'uvvm',\n ),\n 'video/vnd.dece.pd' => \n array (\n 0 => 'uvp',\n 1 => 'uvvp',\n ),\n 'video/vnd.dece.sd' => \n array (\n 0 => 'uvs',\n 1 => 'uvvs',\n ),\n 'video/vnd.dece.video' => \n array (\n 0 => 'uvv',\n 1 => 'uvvv',\n ),\n 'video/vnd.dvb.file' => \n array (\n 0 => 'dvb',\n ),\n 'video/vnd.fvt' => \n array (\n 0 => 'fvt',\n ),\n 'video/vnd.mpegurl' => \n array (\n 0 => 'mxu',\n 1 => 'm4u',\n ),\n 'video/vnd.ms-playready.media.pyv' => \n array (\n 0 => 'pyv',\n ),\n 'video/vnd.uvvu.mp4' => \n array (\n 0 => 'uvu',\n 1 => 'uvvu',\n ),\n 'video/vnd.vivo' => \n array (\n 0 => 'viv',\n ),\n 'video/webm' => \n array (\n 0 => 'webm',\n ),\n 'video/x-f4v' => \n array (\n 0 => 'f4v',\n ),\n 'video/x-fli' => \n array (\n 0 => 'fli',\n ),\n 'video/x-flv' => \n array (\n 0 => 'flv',\n ),\n 'video/x-m4v' => \n array (\n 0 => 'm4v',\n ),\n 'video/x-matroska' => \n array (\n 0 => 'mkv',\n 1 => 'mk3d',\n 2 => 'mks',\n ),\n 'video/x-mng' => \n array (\n 0 => 'mng',\n ),\n 'video/x-ms-asf' => \n array (\n 0 => 'asf',\n 1 => 'asx',\n ),\n 'video/x-ms-vob' => \n array (\n 0 => 'vob',\n ),\n 'video/x-ms-wm' => \n array (\n 0 => 'wm',\n ),\n 'video/x-ms-wmv' => \n array (\n 0 => 'wmv',\n ),\n 'video/x-ms-wmx' => \n array (\n 0 => 'wmx',\n ),\n 'video/x-ms-wvx' => \n array (\n 0 => 'wvx',\n ),\n 'video/x-msvideo' => \n array (\n 0 => 'avi',\n ),\n 'video/x-sgi-movie' => \n array (\n 0 => 'movie',\n ),\n 'video/x-smv' => \n array (\n 0 => 'smv',\n ),\n 'x-conference/x-cooltalk' => \n array (\n 0 => 'ice',\n ),\n 'application/x-photoshop' => \n array (\n 0 => 'psd',\n ),\n 'application/smil' => \n array (\n 0 => 'smi',\n 1 => 'smil',\n ),\n 'application/powerpoint' => \n array (\n 0 => 'ppt',\n ),\n 'application/vnd.ms-powerpoint.addin.macroEnabled.12' => \n array (\n 0 => 'ppam',\n ),\n 'application/vnd.ms-powerpoint.presentation.macroEnabled.12' => \n array (\n 0 => 'pptm',\n 1 => 'potm',\n ),\n 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12' => \n array (\n 0 => 'ppsm',\n ),\n 'application/wbxml' => \n array (\n 0 => 'wbxml',\n ),\n 'application/wmlc' => \n array (\n 0 => 'wmlc',\n ),\n 'application/x-httpd-php-source' => \n array (\n 0 => 'phps',\n ),\n 'application/x-compress' => \n array (\n 0 => 'z',\n ),\n 'application/x-rar' => \n array (\n 0 => 'rar',\n ),\n 'video/vnd.rn-realvideo' => \n array (\n 0 => 'rv',\n ),\n 'application/vnd.ms-word.template.macroEnabled.12' => \n array (\n 0 => 'docm',\n 1 => 'dotm',\n ),\n 'application/vnd.ms-excel.sheet.macroEnabled.12' => \n array (\n 0 => 'xlsm',\n ),\n 'application/vnd.ms-excel.template.macroEnabled.12' => \n array (\n 0 => 'xltm',\n ),\n 'application/vnd.ms-excel.addin.macroEnabled.12' => \n array (\n 0 => 'xlam',\n ),\n 'application/vnd.ms-excel.sheet.binary.macroEnabled.12' => \n array (\n 0 => 'xlsb',\n ),\n 'application/excel' => \n array (\n 0 => 'xl',\n ),\n 'application/x-x509-user-cert' => \n array (\n 0 => 'pem',\n ),\n 'application/x-pkcs10' => \n array (\n 0 => 'p10',\n ),\n 'application/x-pkcs7-signature' => \n array (\n 0 => 'p7a',\n ),\n 'application/pgp' => \n array (\n 0 => 'pgp',\n ),\n 'application/gpg-keys' => \n array (\n 0 => 'gpg',\n ),\n 'application/x-pkcs7' => \n array (\n 0 => 'rsa',\n ),\n 'video/3gp' => \n array (\n 0 => '3gp',\n ),\n 'audio/acc' => \n array (\n 0 => 'aac',\n ),\n 'application/vnd.mpegurl' => \n array (\n 0 => 'm4u',\n ),\n 'application/videolan' => \n array (\n 0 => 'vlc',\n ),\n 'audio/x-au' => \n array (\n 0 => 'au',\n ),\n 'audio/ac3' => \n array (\n 0 => 'ac3',\n ),\n 'text/x-scriptzsh' => \n array (\n 0 => 'zsh',\n ),\n 'application/cdr' => \n array (\n 0 => 'cdr',\n ),\n 'application/STEP' => \n array (\n 0 => 'step',\n 1 => 'stp',\n ),\n 'application/x-ndjson' => \n array (\n 0 => 'ndjson',\n ),\n 'application/braille' => \n array (\n 0 => 'brf',\n ),\n);

Methods

1. lookupMimeType

Declaration

@@ -5598,7 +5598,7 @@

Return

MagicObject\Database\PicoDatabase

Declaration

-
class PicoDatabase implements Stringable +
class PicoDatabase { }
@@ -5633,7 +5633,7 @@

Description

Constants

-
const QUERY_INSERT = 'insert';
const QUERY_UPDATE = 'update';
const QUERY_DELETE = 'delete';
const QUERY_TRANSACTION = 'transaction';
const DATABASE_NONECTION_IS_NULL = 'Database connection is null';

Properties

+
const QUERY_INSERT = "insert";
const QUERY_UPDATE = "update";
const QUERY_DELETE = "delete";
const QUERY_TRANSACTION = "transaction";
const DATABASE_NONECTION_IS_NULL = "Database connection is null";

Properties

1. databaseCredentials

Declaration

@@ -5673,7 +5673,7 @@

Description

5. databaseType

Declaration

-
protected string $databaseType = '';
+
protected string $databaseType = '';

Description

Database type.

@@ -5702,22 +5702,32 @@

Methods

1. fromPdo

Declaration

public static function fromPdo(
-    PDO $pdo
+    PDO $pdo,
+    SecretObject|null $databaseCredentials = null
) : PicoDatabase
{
}

Description

Creates a PicoDatabase instance from an existing PDO connection.

-

This static method accepts a PDO connection object, initializes a new -PicoDatabase instance, and sets up the database connection and type. -It also marks the database as connected and returns the configured -PicoDatabase object.

+

This static method accepts a PDO connection object and attempts to extract +database credentials (such as host, port, schema, and timezone) directly +from the connection. If certain details cannot be retrieved from the PDO +object (for example, if the driver does not support a specific attribute), +the method will use the optional $databaseCredentials parameter as a +fallback source.

+

The resulting PicoDatabase instance will contain the PDO connection, +resolved database type, and credentials, and will be marked as connected.

Parameters

$pdo
-

The PDO connection object representing an active connection to the database.

+

The PDO connection object representing an active +connection to the database.

+
$databaseCredentials
+

Optional fallback credentials +to use if details cannot be extracted from the PDO object.

Return

PicoDatabase

Returns a new instance of the PicoDatabase class, -with the PDO connection and database type set.

+configured with the PDO connection, database type, +and credentials.

@@ -5726,47 +5736,55 @@

Declaration

private static function getDatabaseCredentialsFromPdo(
    PDO $pdo,
    string $driver,
-    string $dbType
+    string $dbType,
+    SecretObject|null $databaseCredentials = null
) : SecretObject
{
}

Description

Retrieves detailed information about a PDO database connection.

-

This method extracts and organizes connection details, including:

+

This method attempts to extract and normalize connection details from a PDO instance. +It uses PDO::getAttribute(PDO::ATTR_CONNECTION_STATUS) when supported, and falls back +to values provided in $databaseCredentials if the driver does not expose certain attributes.

+

The extracted details include:

    -
  • Database driver (e.g., 'mysql', 'pgsql', 'sqlite').
  • -
  • Host and port (if available).
  • -
  • Database name (derived from the connection DSN).
  • -
  • Schema (for applicable databases like PostgreSQL).
  • +
  • Driver: The PDO driver name (e.g., 'mysql', 'pgsql', 'sqlite').
  • +
  • Host/Port: Parsed from the connection DSN, with fallback to $databaseCredentials.
  • +
  • Database Name: Derived from the DSN path or from $databaseCredentials.
  • +
  • Schema: Retrieved dynamically for PostgreSQL (via SELECT current_schema()), +or set to the database name for MySQL/MariaDB.
  • -

    Time zone (calculated from the database offset or default PHP time zone).

    -

    The extraction process dynamically adapts to the type of database (e.g., MySQL, PostgreSQL, SQLite). -For PostgreSQL, the schema is determined using a database query. Time zone information is calculated -by converting the database offset to a corresponding PHP time zone where possible.

    -

    The resulting connection details are encapsulated in a SecretObject for secure handling and organized access.

    +

    Time Zone: Determined by converting the database offset into a PHP-compatible +time zone string when supported, or falling back to the default +PHP time zone.

    +

    The collected information is encapsulated in a SecretObject instance for secure +handling and consistent access.

Parameters

$pdo
-

The PDO connection object.

+

The active PDO connection object.

$driver
-

The name of the database driver (e.g., 'mysql', 'pgsql', 'sqlite').

+

The PDO driver name (e.g., 'mysql', 'pgsql', 'sqlite').

$dbType
-

The database type constant as defined in PicoDatabaseType.

+

The database type constant from PicoDatabaseType.

+
$databaseCredentials
+

Optional fallback credentials if details cannot +be extracted from the PDO connection.

Return

SecretObject
-

A SecretObject instance containing the following properties:

+

Returns a SecretObject instance containing:

    -
  • driver: The database driver (e.g., 'mysql', 'pgsql').
  • -
  • host: The database host (e.g., 'localhost').
  • -
  • port: The database port (e.g., 3306 for MySQL, 5432 for PostgreSQL).
  • -
  • databaseName: The name of the database.
  • -
  • databaseSchema: The schema name (if applicable, e.g., 'public' for PostgreSQL).
  • -
  • timeZone: The database time zone (e.g., 'UTC+02:00').
  • +
  • driver: Database driver name.
  • +
  • host: Database host, or null if unavailable.
  • +
  • port: Database port, or null if unavailable.
  • +
  • databaseName: Name of the database, or null if unavailable.
  • +
  • databaseSchema: Schema name, where applicable.
  • +
  • timeZone: Time zone string.

Throws

-
PDOException
-

If an error occurs during database interaction, such as a query failure or -attribute access issue.

+
Exception
+

This method suppresses most driver-specific warnings, but unexpected +exceptions (e.g., query failures for schema detection) may still be thrown.

@@ -6709,11 +6727,27 @@

Return

Returns the current instance for method chaining.

+
+
49. isPdoConnected
+

Declaration

+
public function isPdoConnected() : bool
{
}
+
+

Description

+

Checks whether the PDO connection is fully active and able to execute queries.

+

This method not only verifies that a TCP connection to the database exists, +but also ensures that PHP can successfully execute a simple SQL statement +on the target database. By running SELECT 1 + 1 AS two, it validates +both the connection and query execution capability.

+

Return

+
bool
+

True if the connection and query execution are successful, false otherwise.

+
+

MagicObject\Database\PicoDatabaseCredentials

Declaration

-
class PicoDatabaseCredentials extends MagicObject\SecretObject implements Stringable +
class PicoDatabaseCredentials extends MagicObject\SecretObject { }
@@ -7012,7 +7046,7 @@

Description

Database persistence

Constants

-
const ANNOTATION_TABLE = 'Table';
const ANNOTATION_CACHE = 'Cache';
const ANNOTATION_COLUMN = 'Column';
const ANNOTATION_JOIN_COLUMN = 'JoinColumn';
const ANNOTATION_VAR = 'var';
const ANNOTATION_ID = 'Id';
const ANNOTATION_GENERATED_VALUE = 'GeneratedValue';
const ANNOTATION_NOT_NULL = 'NotNull';
const ANNOTATION_DEFAULT_COLUMN = 'DefaultColumn';
const ANNOTATION_JSON_FORMAT = 'JsonFormat';
const ANNOTATION_PACKAGE = 'package';
const SQL_DATE_TIME_FORMAT = 'SqlDateTimeFormat';
const KEY_NAME = 'name';
const KEY_REFERENCE_COLUMN_NAME = 'referenceColumnName';
const KEY_NULL = 'null';
const KEY_NOT_NULL = 'notnull';
const KEY_NULLABLE = 'nullable';
const KEY_INSERTABLE = 'insertable';
const KEY_UPDATABLE = 'updatable';
const KEY_STRATEGY = 'strategy';
const KEY_GENERATOR = 'generator';
const KEY_PROPERTY_TYPE = 'propertyType';
const KEY_VALUE = 'value';
const KEY_TYPE = 'type';
const KEY_ENABLE = 'enable';
const KEY_ENTITY_OBJECT = 'entityObject';
const VALUE_TRUE = 'true';
const VALUE_FALSE = 'false';
const ORDER_ASC = 'asc';
const ORDER_DESC = 'desc';
const MESSAGE_NO_PRIMARY_KEY_DEFINED = 'No primary key is defined.';
const MESSAGE_NO_RECORD_FOUND = 'No records found.';
const MESSAGE_INVALID_FILTER = 'Invalid filter';
const SQL_DATETIME_FORMAT = 'Y-m-d H:i:s';
const DATE_TIME_FORMAT = 'datetimeformat';
const NAMESPACE_SEPARATOR = '\\';
const JOIN_TABLE_SUBFIX = '__jn__';
const MAX_LINE_LENGTH = 80;
const COMMA = ', ';
const COMMA_RETURN = ', \r\n';
const INLINE_TRIM = ' \r\n\t ';
const ALWAYS_TRUE = '(1=1)';

Properties

+
const ANNOTATION_TABLE = "Table";
const ANNOTATION_CACHE = "Cache";
const ANNOTATION_COLUMN = "Column";
const ANNOTATION_JOIN_COLUMN = "JoinColumn";
const ANNOTATION_VAR = "var";
const ANNOTATION_ID = "Id";
const ANNOTATION_GENERATED_VALUE = "GeneratedValue";
const ANNOTATION_NOT_NULL = "NotNull";
const ANNOTATION_DEFAULT_COLUMN = "DefaultColumn";
const ANNOTATION_JSON_FORMAT = "JsonFormat";
const ANNOTATION_PACKAGE = "package";
const SQL_DATE_TIME_FORMAT = "SqlDateTimeFormat";
const KEY_NAME = "name";
const KEY_REFERENCE_COLUMN_NAME = "referenceColumnName";
const KEY_NULL = "null";
const KEY_NOT_NULL = "notnull";
const KEY_NULLABLE = "nullable";
const KEY_INSERTABLE = "insertable";
const KEY_UPDATABLE = "updatable";
const KEY_STRATEGY = "strategy";
const KEY_GENERATOR = "generator";
const KEY_PROPERTY_TYPE = "propertyType";
const KEY_VALUE = "value";
const KEY_TYPE = "type";
const KEY_ENABLE = "enable";
const KEY_ENTITY_OBJECT = "entityObject";
const VALUE_TRUE = "true";
const VALUE_FALSE = "false";
const ORDER_ASC = "asc";
const ORDER_DESC = "desc";
const MESSAGE_NO_PRIMARY_KEY_DEFINED = "No primary key is defined.";
const MESSAGE_NO_RECORD_FOUND = "No records found.";
const MESSAGE_INVALID_FILTER = "Invalid filter";
const SQL_DATETIME_FORMAT = "Y-m-d H:i:s";
const DATE_TIME_FORMAT = "datetimeformat";
const NAMESPACE_SEPARATOR = "\\";
const JOIN_TABLE_SUBFIX = "__jn__";
const MAX_LINE_LENGTH = 80;
const COMMA = ", ";
const COMMA_RETURN = ", \r\n";
const INLINE_TRIM = " \r\n\t ";
const ALWAYS_TRUE = "(1=1)";

Properties

1. database

Declaration

@@ -7034,7 +7068,7 @@

Description

3. className

Declaration

-
protected string $className = '';
+
protected string $className = '';

Description

Class name

@@ -7070,7 +7104,7 @@

Description

7. namespaceName

Declaration

-
private string $namespaceName = '';
+
private string $namespaceName = '';

Description

Get namespace of class

@@ -10219,7 +10253,7 @@

Return

MagicObject\Database\PicoDatabasePersistenceExtended

Declaration

-
class PicoDatabasePersistenceExtended extends MagicObject\Database\PicoDatabasePersistence implements Stringable +
class PicoDatabasePersistenceExtended extends MagicObject\Database\PicoDatabasePersistence { }
@@ -10267,7 +10301,7 @@

Description

4. className

Declaration

-
protected string $className = '';
+
protected string $className = '';

Description

Class name

@@ -10497,7 +10531,7 @@

Return

MagicObject\Database\PicoDatabaseQueryBuilder

Declaration

-
class PicoDatabaseQueryBuilder implements Stringable +
class PicoDatabaseQueryBuilder { }
@@ -10534,7 +10568,7 @@

Properties

1. buffer

Declaration

-
private string $buffer = '';
+
private string $buffer = '';

Description

Buffer to hold the constructed SQL query.

@@ -10570,7 +10604,7 @@

Description

5. databaseType

Declaration

-
private string $databaseType = 'mysql';
+
private string $databaseType = 'mysql';

Description

The type of database being used.

@@ -11509,7 +11543,7 @@

Return

MagicObject\Database\PicoDatabaseQueryTemplate

Declaration

-
class PicoDatabaseQueryTemplate implements Stringable +
class PicoDatabaseQueryTemplate { }
@@ -11615,7 +11649,7 @@

Description

and for handling column attributes like nullable, primary, and notnull.

Constants

-
const ANNOTATION_TABLE = 'Table';
const ANNOTATION_COLUMN = 'Column';
const ANNOTATION_ID = 'Id';
const KEY_NAME = 'name';
const KEY_TYPE = 'type';
const KEY_NULL = 'null';
const KEY_NOT_NULL = 'notnull';
const KEY_NULLABLE = 'nullable';
const KEY_PRIMARY = 'primary';

Properties

+
const ANNOTATION_TABLE = "Table";
const ANNOTATION_COLUMN = "Column";
const ANNOTATION_ID = "Id";
const KEY_NAME = "name";
const KEY_TYPE = "type";
const KEY_NULL = "null";
const KEY_NOT_NULL = "notnull";
const KEY_NULLABLE = "nullable";
const KEY_PRIMARY = "primary";

Properties

1. object

Declaration

@@ -11628,7 +11662,7 @@

Description

2. className

Declaration

-
private string $className = '';
+
private string $className = '';

Description

The name of the class representing the table.

@@ -11788,7 +11822,7 @@

Description

Constants

-
const DATABASE_TYPE_MYSQL = 'mysql';
const DATABASE_TYPE_MARIADB = 'mariadb';
const DATABASE_TYPE_POSTGRESQL = 'postgresql';
const DATABASE_TYPE_PGSQL = 'pgsql';
const DATABASE_TYPE_SQLITE = 'sqlite';
const DATABASE_TYPE_SQLSERVER = 'sqlsrv';
+
const DATABASE_TYPE_MYSQL = "mysql";
const DATABASE_TYPE_MARIADB = "mariadb";
const DATABASE_TYPE_POSTGRESQL = "postgresql";
const DATABASE_TYPE_PGSQL = "pgsql";
const DATABASE_TYPE_SQLITE = "sqlite";
const DATABASE_TYPE_SQLSERVER = "sqlsrv";

MagicObject\Database\PicoDataComparation

Declaration

@@ -11816,11 +11850,11 @@

Description

applied to values of various types, including strings, booleans, and numbers.

Constants

-
const EQUALS = '=';
const NOT_EQUALS = '!=';
const IN = 'IN';
const BETWEEN = 'BETWEEN';
const NOT_IN = 'NOT IN';
const IS = 'IS';
const IS_NOT = 'IS NOT';
const LIKE = 'LIKE ';
const NOT_LIKE = 'NOT LIKE';
const LESS_THAN = '<';
const GREATER_THAN = '>';
const LESS_THAN_OR_EQUALS = '<=';
const GREATER_THAN_OR_EQUALS = '>=';
const TYPE_STRING = 'string';
const TYPE_BOOLEAN = 'boolean';
const TYPE_NUMERIC = 'numeric';
const TYPE_NULL = 'null';

Properties

+
const EQUALS = "=";
const NOT_EQUALS = "!=";
const IN = "IN";
const BETWEEN = "BETWEEN";
const NOT_IN = "NOT IN";
const IS = "IS";
const IS_NOT = "IS NOT";
const LIKE = "LIKE ";
const NOT_LIKE = "NOT LIKE";
const LESS_THAN = "<";
const GREATER_THAN = ">";
const LESS_THAN_OR_EQUALS = "<=";
const GREATER_THAN_OR_EQUALS = ">=";
const TYPE_STRING = "string";
const TYPE_BOOLEAN = "boolean";
const TYPE_NUMERIC = "numeric";
const TYPE_NULL = "null";

Properties

1. comparison

Declaration

-
private string $comparison = '=';
+
private string $comparison = '=';

Description

The comparison operator.

@@ -11838,7 +11872,7 @@

Description

3. type

Declaration

-
private string $type = 'null';
+
private string $type = 'null';

Description

The type of the value.

@@ -12231,7 +12265,7 @@

Description

5. functionFormat

Declaration

-
private string $functionFormat = '%s';
+
private string $functionFormat = '%s';

Description

The function format for the field.

@@ -12343,7 +12377,7 @@

Description

Provides methods to retrieve and filter entity metadata, including labels, columns, and other attributes.

Constants

-
const ANNOTATION_TABLE = 'Table';
const ANNOTATION_LABEL = 'label';
const ANNOTATION_COLUMN = 'Column';
const ANNOTATION_JOIN_COLUMN = 'JoinColumn';
const ANNOTATION_VAR = 'var';
const ANNOTATION_ID = 'Id';
const ANNOTATION_GENERATED_VALUE = 'GeneratedValue';
const ANNOTATION_NOT_NULL = 'NotNull';
const ANNOTATION_DEFAULT_COLUMN = 'DefaultColumn';
const KEY_NAME = 'name';
const KEY_NULL = 'null';
const KEY_NOT_NULL = 'notnull';
const KEY_NULLABLE = 'nullable';
const KEY_INSERTABLE = 'insertable';
const KEY_UPDATABLE = 'updatable';
const KEY_STRATEGY = 'strategy';
const KEY_GENERATOR = 'generator';
const KEY_PROPERTY_TYPE = 'propertyType';
const KEY_VALUE = 'value';
const KEY_ENTITY_OBJECT = 'entityObject';
const VALUE_TRUE = 'true';
const VALUE_FALSE = 'false';

Properties

+
const ANNOTATION_TABLE = "Table";
const ANNOTATION_LABEL = "label";
const ANNOTATION_COLUMN = "Column";
const ANNOTATION_JOIN_COLUMN = "JoinColumn";
const ANNOTATION_VAR = "var";
const ANNOTATION_ID = "Id";
const ANNOTATION_GENERATED_VALUE = "GeneratedValue";
const ANNOTATION_NOT_NULL = "NotNull";
const ANNOTATION_DEFAULT_COLUMN = "DefaultColumn";
const KEY_NAME = "name";
const KEY_NULL = "null";
const KEY_NOT_NULL = "notnull";
const KEY_NULLABLE = "nullable";
const KEY_INSERTABLE = "insertable";
const KEY_UPDATABLE = "updatable";
const KEY_STRATEGY = "strategy";
const KEY_GENERATOR = "generator";
const KEY_PROPERTY_TYPE = "propertyType";
const KEY_VALUE = "value";
const KEY_ENTITY_OBJECT = "entityObject";
const VALUE_TRUE = "true";
const VALUE_FALSE = "false";

Properties

1. className

Declaration

@@ -12459,7 +12493,7 @@

Return

MagicObject\Database\PicoJoinMap

Declaration

-
class PicoJoinMap implements Stringable +
class PicoJoinMap { }
@@ -12627,7 +12661,7 @@

Return

MagicObject\Database\PicoLimit

Declaration

-
class PicoLimit implements Stringable +
class PicoLimit { }
@@ -12802,7 +12836,7 @@

Return

MagicObject\Database\PicoPage

Declaration

-
class PicoPage implements Stringable +
class PicoPage { }
@@ -12984,7 +13018,7 @@

Return

MagicObject\Database\PicoPageable

Declaration

-
class PicoPageable implements Stringable +
class PicoPageable { }
@@ -13222,7 +13256,7 @@

Return

MagicObject\Database\PicoPageControl

Declaration

-
class PicoPageControl implements Stringable +
class PicoPageControl { }
@@ -13310,7 +13344,7 @@

Description

8. formatPageNumber

Declaration

-
private string $formatPageNumber = '<span class="page-selector page-selector-number%s" data-page-number="%d"><a href="%s">%s</a></span>';
+
private string $formatPageNumber = '<span class="page-selector page-selector-number%s" data-page-number="%d"><a href="%s">%s</a></span>';

Description

Template for rendering a specific page number in pagination.

@@ -13319,7 +13353,7 @@

Description

9. formatStepOne

Declaration

-
private string $formatStepOne = '<span class="page-selector page-selector-step-one%s" data-page-number="%d"><a href="%s">%s</a></span>';
+
private string $formatStepOne = '<span class="page-selector page-selector-step-one%s" data-page-number="%d"><a href="%s">%s</a></span>';

Description

Template for rendering navigation buttons like "next" or "prev" in pagination.

@@ -13328,7 +13362,7 @@

Description

10. formatStartEnd

Declaration

-
private string $formatStartEnd = '<span class="page-selector page-selector-end%s" data-page-number="%d"><a href="%s">%s</a></span>';
+
private string $formatStartEnd = '<span class="page-selector page-selector-end%s" data-page-number="%d"><a href="%s">%s</a></span>';

Description

Template for rendering navigation buttons like "first" or "last" in pagination.

@@ -13681,7 +13715,7 @@

Return

MagicObject\Database\PicoPageData

Declaration

-
class PicoPageData implements Stringable +
class PicoPageData { }
@@ -13708,7 +13742,7 @@

Key Features

Constants

-
const RESULT = 'result';
const PAGEABLE = 'pageable';

Properties

+
const RESULT = "result";
const PAGEABLE = "pageable";

Properties

1. result

Declaration

@@ -14181,7 +14215,7 @@

Return

MagicObject\Database\PicoPredicate

Declaration

-
class PicoPredicate implements Stringable +
class PicoPredicate { }
@@ -14779,7 +14813,7 @@

Return

MagicObject\Database\PicoSort

Declaration

-
class PicoSort implements Stringable +
class PicoSort { }
@@ -14799,11 +14833,11 @@

Description

direction of sorting (ascending or descending).

Constants

-
const ORDER_TYPE_ASC = 'asc';
const ORDER_TYPE_DESC = 'desc';
const SORT_BY = 'sortBy';

Properties

+
const ORDER_TYPE_ASC = "asc";
const ORDER_TYPE_DESC = "desc";
const SORT_BY = "sortBy";

Properties

1. sortBy

Declaration

-
private string $sortBy = '';
+
private string $sortBy = '';

Description

The field to sort by.

@@ -14812,7 +14846,7 @@

Description

2. sortType

Declaration

-
private string $sortType = '';
+
private string $sortType = '';

Description

The type of sorting (ascending or descending).

@@ -14992,7 +15026,7 @@

Return

MagicObject\Database\PicoSortable

Declaration

-
class PicoSortable implements Stringable +
class PicoSortable { }
@@ -15254,7 +15288,7 @@

Return

MagicObject\Database\PicoSpecification

Declaration

-
class PicoSpecification implements Stringable +
class PicoSpecification { }
@@ -15273,7 +15307,7 @@

Description

allowing for the combination of predicates using logical operators (AND, OR).

Constants

-
const LOGIC_AND = 'AND';
const LOGIC_OR = 'OR';

Properties

+
const LOGIC_AND = "AND";
const LOGIC_OR = "OR";

Properties

1. parentFilterLogic

Declaration

@@ -15304,7 +15338,7 @@

Description

4. defaultLogic

Declaration

-
private string $defaultLogic = 'AND';
+
private string $defaultLogic = 'AND';

Description

Default logic for combining predicates (AND/OR).

@@ -15979,7 +16013,7 @@

Return

MagicObject\Database\PicoSpecificationFilter

Declaration

-
class PicoSpecificationFilter implements Stringable +
class PicoSpecificationFilter { }
@@ -15998,7 +16032,7 @@

Description

and providing methods to convert values based on the defined type.

Constants

-
const DATA_TYPE_NUMBER = 'number';
const DATA_TYPE_STRING = 'string';
const DATA_TYPE_BOOLEAN = 'boolean';
const DATA_TYPE_ARRAY_NUMBER = 'number[]';
const DATA_TYPE_ARRAY_STRING = 'string[]';
const DATA_TYPE_ARRAY_BOOLEAN = 'boolean[]';
const DATA_TYPE_FULLTEXT = 'fulltext';
const DATA_TYPE_TEXT_EQUALS = 'textequals';

Properties

+
const DATA_TYPE_NUMBER = "number";
const DATA_TYPE_STRING = "string";
const DATA_TYPE_BOOLEAN = "boolean";
const DATA_TYPE_ARRAY_NUMBER = "number[]";
const DATA_TYPE_ARRAY_STRING = "string[]";
const DATA_TYPE_ARRAY_BOOLEAN = "boolean[]";
const DATA_TYPE_FULLTEXT = "fulltext";
const DATA_TYPE_TEXT_EQUALS = "textequals";

Properties

1. columnName

Declaration

@@ -16274,7 +16308,7 @@

Return

MagicObject\Database\PicoSqlite

Declaration

-
class PicoSqlite extends MagicObject\Database\PicoDatabase implements Stringable +
class PicoSqlite extends MagicObject\Database\PicoDatabase { }
@@ -16299,7 +16333,7 @@

Description

This class extends the PicoDatabase class, which provides additional database interaction capabilities.

Constants

-
const LOGIC_AND = ' and ';

Properties

+
const LOGIC_AND = " and ";

Properties

1. databaseFilePath

Declaration

@@ -16348,7 +16382,7 @@

Description

6. databaseType

Declaration

-
protected string $databaseType = '';
+
protected string $databaseType = '';

Description

Database type.

@@ -16498,7 +16532,7 @@

Return

MagicObject\Database\PicoSqlJson

Declaration

-
class PicoSqlJson implements Stringable +
class PicoSqlJson { }
@@ -16560,7 +16594,7 @@

Return

MagicObject\Database\PicoTableInfo

Declaration

-
class PicoTableInfo implements Stringable +
class PicoTableInfo { }
@@ -17064,7 +17098,7 @@

Return

MagicObject\Database\PicoTableInfoExtended

Declaration

-
class PicoTableInfoExtended extends MagicObject\Database\PicoTableInfo implements Stringable +
class PicoTableInfoExtended extends MagicObject\Database\PicoTableInfo { }
@@ -17084,7 +17118,7 @@

Description

default values, and not-null columns.

Constants

-
const NAME = 'name';
const PREV_NAME = 'prevColumnName';
const ELEMENT = 'element';

Properties

+
const NAME = "name";
const PREV_NAME = "prevColumnName";
const ELEMENT = "element";

Properties

1. tableName

Declaration

@@ -17394,7 +17428,7 @@

Return

MagicObject\DataLabel\PicoDataLabel

Declaration

-
class PicoDataLabel extends MagicObject\SetterGetter implements Stringable +
class PicoDataLabel extends MagicObject\SetterGetter { }
@@ -17412,7 +17446,7 @@

Description

This class uses annotations to define properties and their metadata.

Constants

-
const ANNOTATION_PROPERTIES = 'Properties';
const ANNOTATION_TABLE = 'Table';
const KEY_NAME = 'name';
const ANNOTATION_VAR = 'var';

Properties

+
const ANNOTATION_PROPERTIES = "Properties";
const ANNOTATION_TABLE = "Table";
const KEY_NAME = "name";
const ANNOTATION_VAR = "var";

Properties

1. classParams

Declaration

@@ -17425,7 +17459,7 @@

Description

2. className

Declaration

-
private string $className = '';
+
private string $className = '';

Description

Name of the class.

@@ -17507,7 +17541,7 @@

Description

MagicObject\Exceptions\ClassNotFoundException

Declaration

-
class ClassNotFoundException extends Exception implements Throwable, Stringable +
class ClassNotFoundException extends Exception implements Throwable { }
@@ -17555,7 +17589,7 @@

Return

MagicObject\Exceptions\CurlException

Declaration

-
class CurlException extends Exception implements Throwable, Stringable +
class CurlException extends Exception implements Throwable { }
@@ -17605,7 +17639,7 @@

Return

MagicObject\Exceptions\DatabaseConversionException

Declaration

-
class DatabaseConversionException extends Exception implements Throwable, Stringable +
class DatabaseConversionException extends Exception implements Throwable { }
@@ -17652,7 +17686,7 @@

Return

MagicObject\Exceptions\DataRetrievalException

Declaration

-
class DataRetrievalException extends Exception implements Throwable, Stringable +
class DataRetrievalException extends Exception implements Throwable { }
@@ -17698,7 +17732,7 @@

Return

MagicObject\Exceptions\EmptyResultException

Declaration

-
class EmptyResultException extends Exception implements Throwable, Stringable +
class EmptyResultException extends Exception implements Throwable { }
@@ -17744,7 +17778,7 @@

Return

MagicObject\Exceptions\EntityException

Declaration

-
class EntityException extends Exception implements Throwable, Stringable +
class EntityException extends Exception implements Throwable { }
@@ -17790,7 +17824,7 @@

Return

MagicObject\Exceptions\ErrorConnectionException

Declaration

-
class ErrorConnectionException extends Exception implements Throwable, Stringable +
class ErrorConnectionException extends Exception implements Throwable { }
@@ -17838,7 +17872,7 @@

Return

MagicObject\Exceptions\FileNotFoundException

Declaration

-
class FileNotFoundException extends Exception implements Throwable, Stringable +
class FileNotFoundException extends Exception implements Throwable { }
@@ -17884,7 +17918,7 @@

Return

MagicObject\Exceptions\FindOptionException

Declaration

-
class FindOptionException extends Exception implements Throwable, Stringable +
class FindOptionException extends Exception implements Throwable { }
@@ -17931,7 +17965,7 @@

Return

MagicObject\Exceptions\InvalidAddressException

Declaration

-
class InvalidAddressException extends Exception implements Throwable, Stringable +
class InvalidAddressException extends Exception implements Throwable { }
@@ -17979,7 +18013,7 @@

Return

MagicObject\Exceptions\InvalidAnnotationException

Declaration

-
class InvalidAnnotationException extends Exception implements Throwable, Stringable +
class InvalidAnnotationException extends Exception implements Throwable { }
@@ -18026,7 +18060,7 @@

Return

MagicObject\Exceptions\InvalidClassException

Declaration

-
class InvalidClassException extends Exception implements Throwable, Stringable +
class InvalidClassException extends Exception implements Throwable { }
@@ -18073,7 +18107,7 @@

Return

MagicObject\Exceptions\InvalidDatabaseConfiguration

Declaration

-
class InvalidDatabaseConfiguration extends Exception implements Throwable, Stringable +
class InvalidDatabaseConfiguration extends Exception implements Throwable { }
@@ -18119,7 +18153,7 @@

Return

MagicObject\Exceptions\InvalidFileAccessException

Declaration

-
class InvalidFileAccessException extends Exception implements Throwable, Stringable +
class InvalidFileAccessException extends Exception implements Throwable { }
@@ -18163,7 +18197,7 @@

Return

MagicObject\Exceptions\InvalidFileFormatException

Declaration

-
class InvalidFileFormatException extends Exception implements Throwable, Stringable +
class InvalidFileFormatException extends Exception implements Throwable { }
@@ -18211,7 +18245,7 @@

Return

MagicObject\Exceptions\InvalidFilterException

Declaration

-
class InvalidFilterException extends Exception implements Throwable, Stringable +
class InvalidFilterException extends Exception implements Throwable { }
@@ -18258,7 +18292,7 @@

Return

MagicObject\Exceptions\InvalidInputFormatException

Declaration

-
class InvalidInputFormatException extends Exception implements Throwable, Stringable +
class InvalidInputFormatException extends Exception implements Throwable { }
@@ -18306,7 +18340,7 @@

Return

MagicObject\Exceptions\InvalidParameterException

Declaration

-
class InvalidParameterException extends Exception implements Throwable, Stringable +
class InvalidParameterException extends Exception implements Throwable { }
@@ -18353,7 +18387,7 @@

Return

MagicObject\Exceptions\InvalidPolygonException

Declaration

-
class InvalidPolygonException extends Exception implements Throwable, Stringable +
class InvalidPolygonException extends Exception implements Throwable { }
@@ -18401,7 +18435,7 @@

Return

MagicObject\Exceptions\InvalidQueryInputException

Declaration

-
class InvalidQueryInputException extends Exception implements Throwable, Stringable +
class InvalidQueryInputException extends Exception implements Throwable { }
@@ -18461,7 +18495,7 @@

Return

MagicObject\Exceptions\InvalidReturnTypeException

Declaration

-
class InvalidReturnTypeException extends Exception implements Throwable, Stringable +
class InvalidReturnTypeException extends Exception implements Throwable { }
@@ -18505,7 +18539,7 @@

Return

MagicObject\Exceptions\InvalidValueException

Declaration

-
class InvalidValueException extends Exception implements Throwable, Stringable +
class InvalidValueException extends Exception implements Throwable { }
@@ -18562,7 +18596,7 @@

Return

MagicObject\Exceptions\MandatoryTableNameException

Declaration

-
class MandatoryTableNameException extends Exception implements Throwable, Stringable +
class MandatoryTableNameException extends Exception implements Throwable { }
@@ -18610,7 +18644,7 @@

Return

MagicObject\Exceptions\NoColumnMatchException

Declaration

-
class NoColumnMatchException extends Exception implements Throwable, Stringable +
class NoColumnMatchException extends Exception implements Throwable { }
@@ -18659,7 +18693,7 @@

Return

MagicObject\Exceptions\NoColumnUpdatedException

Declaration

-
class NoColumnUpdatedException extends Exception implements Throwable, Stringable +
class NoColumnUpdatedException extends Exception implements Throwable { }
@@ -18708,7 +18742,7 @@

Return

MagicObject\Exceptions\NoDatabaseConnectionException

Declaration

-
class NoDatabaseConnectionException extends Exception implements Throwable, Stringable +
class NoDatabaseConnectionException extends Exception implements Throwable { }
@@ -18757,7 +18791,7 @@

Return

MagicObject\Exceptions\NoInsertableColumnException

Declaration

-
class NoInsertableColumnException extends Exception implements Throwable, Stringable +
class NoInsertableColumnException extends Exception implements Throwable { }
@@ -18807,7 +18841,7 @@

Return

MagicObject\Exceptions\NoPrimaryKeyDefinedException

Declaration

-
class NoPrimaryKeyDefinedException extends Exception implements Throwable, Stringable +
class NoPrimaryKeyDefinedException extends Exception implements Throwable { }
@@ -18856,7 +18890,7 @@

Return

MagicObject\Exceptions\NoRecordFoundException

Declaration

-
class NoRecordFoundException extends Exception implements Throwable, Stringable +
class NoRecordFoundException extends Exception implements Throwable { }
@@ -18906,7 +18940,7 @@

Return

MagicObject\Exceptions\NotNullColumnException

Declaration

-
class NotNullColumnException extends Exception implements Throwable, Stringable +
class NotNullColumnException extends Exception implements Throwable { }
@@ -18956,7 +18990,7 @@

Return

MagicObject\Exceptions\NoUpdatableColumnException

Declaration

-
class NoUpdatableColumnException extends Exception implements Throwable, Stringable +
class NoUpdatableColumnException extends Exception implements Throwable { }
@@ -19006,7 +19040,7 @@

Return

MagicObject\Exceptions\NullPointerException

Declaration

-
class NullPointerException extends Exception implements Throwable, Stringable +
class NullPointerException extends Exception implements Throwable { }
@@ -19056,7 +19090,7 @@

Return

MagicObject\Exceptions\ObjectParsingError

Declaration

-
class ObjectParsingError extends Exception implements Throwable, Stringable +
class ObjectParsingError extends Exception implements Throwable { }
@@ -19094,7 +19128,7 @@

Return

MagicObject\Exceptions\UnknownErrorException

Declaration

-
class UnknownErrorException extends Exception implements Throwable, Stringable +
class UnknownErrorException extends Exception implements Throwable { }
@@ -19144,7 +19178,7 @@

Return

MagicObject\Exceptions\UnsupportedDatabaseException

Declaration

-
class UnsupportedDatabaseException extends Exception implements Throwable, Stringable +
class UnsupportedDatabaseException extends Exception implements Throwable { }
@@ -19194,7 +19228,7 @@

Return

MagicObject\Exceptions\YamlException

Declaration

-
class YamlException extends Exception implements Throwable, Stringable +
class YamlException extends Exception implements Throwable { }
@@ -19242,7 +19276,7 @@

Return

MagicObject\Exceptions\ZeroArgumentException

Declaration

-
class ZeroArgumentException extends InvalidArgumentException implements Throwable, Stringable +
class ZeroArgumentException extends InvalidArgumentException implements Throwable { }
@@ -19618,7 +19652,7 @@

Return

MagicObject\File\PicoUploadFile

Declaration

-
class PicoUploadFile implements Stringable +
class PicoUploadFile { }
@@ -19781,7 +19815,7 @@

Return

MagicObject\File\PicoUploadFileContainer

Declaration

-
class PicoUploadFileContainer implements Stringable +
class PicoUploadFileContainer { }
@@ -20176,7 +20210,7 @@

Description

2. picoTableName

Declaration

-
protected string $picoTableName = '';
+
protected string $picoTableName = '';

Description

Table name

@@ -20761,7 +20795,7 @@

Description

2. baseDir

Declaration

-
protected string $baseDir = '';
+
protected string $baseDir = '';

Description

Base directory for saving generated DTO files.

@@ -20770,7 +20804,7 @@

Description

3. baseNamespaceDto

Declaration

-
protected string $baseNamespaceDto = '';
+
protected string $baseNamespaceDto = '';

Description

Base namespace for the generated DTOs.

@@ -20779,7 +20813,7 @@

Description

4. tableName

Declaration

-
protected string $tableName = '';
+
protected string $tableName = '';

Description

Table name to generate DTO for.

@@ -20998,7 +21032,7 @@

Description

Users must provide appropriate parameters so that the entity class can be directly used in the application.

Constants

-
const TYPE_CHARACTER_VARYING = 'character varying';
const TYPE_TINYINT_1 = 'tinyint(1)';
const TYPE_VARCHAR_255 = 'varchar(255)';
const TYPE_TIMESTAMP_WITH_TIME_ZONE = 'timestamp with time zone';
const TYPE_TIMESTAMP_WITHOUT_TIME_ZONE = 'timestamp without time zone';

Properties

+
const TYPE_CHARACTER_VARYING = "character varying";
const TYPE_TINYINT_1 = "tinyint(1)";
const TYPE_VARCHAR_255 = "varchar(255)";
const TYPE_TIMESTAMP_WITH_TIME_ZONE = "timestamp with time zone";
const TYPE_TIMESTAMP_WITHOUT_TIME_ZONE = "timestamp without time zone";

Properties

1. database

Declaration

@@ -21011,7 +21045,7 @@

Description

2. baseDir

Declaration

-
protected string $baseDir = '';
+
protected string $baseDir = '';

Description

Base directory for generated files.

@@ -21020,7 +21054,7 @@

Description

3. baseNamespace

Declaration

-
protected string $baseNamespace = '';
+
protected string $baseNamespace = '';

Description

Base namespace for the entity classes.

@@ -21029,7 +21063,7 @@

Description

4. tableName

Declaration

-
protected string $tableName = '';
+
protected string $tableName = '';

Description

Table name for which the entity is generated.

@@ -21347,7 +21381,7 @@

Return

MagicObject\Language\PicoEntityLanguage

Declaration

-
class PicoEntityLanguage implements Stringable +
class PicoEntityLanguage { }
@@ -21366,7 +21400,7 @@

Description

labels and handling different language options.

Constants

-
const ANNOTATION_TABLE = 'Table';
const ANNOTATION_LANGUAGE = 'Language';

Properties

+
const ANNOTATION_TABLE = "Table";
const ANNOTATION_LANGUAGE = "Language";

Properties

2. _currentLanguage

Declaration

@@ -21406,7 +21440,7 @@

Description

6. _entityClassName

Declaration

-
private string $_entityClassName = '';
+
private string $_entityClassName = '';

Description

Entity class name.

@@ -21415,7 +21449,7 @@

Description

7. _entityLanguage

Declaration

-
private string $_entityLanguage = '';
+
private string $_entityLanguage = '';

Description

Entity language code.

@@ -22088,7 +22122,7 @@

Description

5. orderType

Declaration

-
private string $orderType = '';
+
private string $orderType = '';

Description

Type of order (ASC or DESC).

@@ -22532,7 +22566,7 @@

Return

MagicObject\Request\InputCookie

Declaration

-
class InputCookie extends MagicObject\Request\PicoRequestBase implements Stringable +
class InputCookie extends MagicObject\Request\PicoRequestBase { }
@@ -22601,7 +22635,7 @@

Return

MagicObject\Request\InputEnv

Declaration

-
class InputEnv extends MagicObject\Request\PicoRequestBase implements Stringable +
class InputEnv extends MagicObject\Request\PicoRequestBase { }
@@ -22656,7 +22690,7 @@

Description

MagicObject\Request\InputFiles

Declaration

-
class InputFiles extends MagicObject\File\PicoUploadFile implements Stringable +
class InputFiles extends MagicObject\File\PicoUploadFile { }
@@ -22670,7 +22704,7 @@

Package

MagicObject\Request\InputGet

Declaration

-
class InputGet extends MagicObject\Request\PicoRequestBase implements Stringable +
class InputGet extends MagicObject\Request\PicoRequestBase { }
@@ -22738,7 +22772,7 @@

Return

MagicObject\Request\InputPost

Declaration

-
class InputPost extends MagicObject\Request\PicoRequestBase implements Stringable +
class InputPost extends MagicObject\Request\PicoRequestBase { }
@@ -22806,7 +22840,7 @@

Return

MagicObject\Request\InputRequest

Declaration

-
class InputRequest extends MagicObject\Request\PicoRequestBase implements Stringable +
class InputRequest extends MagicObject\Request\PicoRequestBase { }
@@ -22861,7 +22895,7 @@

Description

MagicObject\Request\InputServer

Declaration

-
class InputServer extends MagicObject\Request\PicoRequestBase implements Stringable +
class InputServer extends MagicObject\Request\PicoRequestBase { }
@@ -23002,7 +23036,7 @@

Return

MagicObject\Request\InputSessions

Declaration

-
class InputSessions extends MagicObject\Session\PicoSession implements Stringable +
class InputSessions extends MagicObject\Session\PicoSession { }
@@ -23063,7 +23097,7 @@

Constants

MagicObject\Request\PicoRequest

Declaration

-
class PicoRequest extends MagicObject\Request\PicoRequestBase implements Stringable +
class PicoRequest extends MagicObject\Request\PicoRequestBase { }
@@ -23082,7 +23116,7 @@

Description

various types of HTTP requests (GET, POST, COOKIE, ENV, SERVER).

Constants

-
const ACTION_DETAIL = 'detail';
const ACTION_EDIT = 'edit';
const ACTION_ADD = 'add';

Properties

+
const ACTION_DETAIL = "detail";
const ACTION_EDIT = "edit";
const ACTION_ADD = "add";

Properties

1. _forceScalar

Declaration

@@ -23166,7 +23200,7 @@

Return

MagicObject\Request\PicoRequestBase

Declaration

-
class PicoRequestBase extends stdClass implements Stringable +
class PicoRequestBase extends stdClass { }
@@ -23184,7 +23218,7 @@

Description

and request type checking (GET, POST, AJAX, etc.).

Constants

-
const JSON = 'JSON';

Properties

+
const JSON = "JSON";

Properties

1. _classParams

Declaration

@@ -23881,7 +23915,7 @@

Return

MagicObject\Response\Generated\JSONSelectOption

Declaration

-
class JSONSelectOption implements Stringable +
class JSONSelectOption { }
@@ -23974,7 +24008,7 @@

Return

MagicObject\Response\Generated\PicoSelectOption

Declaration

-
class PicoSelectOption implements Stringable +
class PicoSelectOption { }
@@ -24160,7 +24194,7 @@

Description

Handles sending HTTP responses with various content types and status codes.

Constants

-
const APPLICATION_JSON = 'application/json';

Methods

+
const APPLICATION_JSON = "application/json";

Methods

1. sendJSON

Declaration

@@ -24391,11 +24425,11 @@

Description

WARNING: Use your own key instead of using default key

Constants

-
const RANDOM_KEY_1 = '68e656b251e67e8358bef8483ab0d51c';
const RANDOM_KEY_2 = '6619f3e7a1a9f0e75838d41ff368f728';
+
const RANDOM_KEY_1 = "68e656b251e67e8358bef8483ab0d51c";
const RANDOM_KEY_2 = "6619f3e7a1a9f0e75838d41ff368f728";

MagicObject\Session\PicoSession

Declaration

-
class PicoSession implements Stringable +
class PicoSession { }
@@ -24415,7 +24449,7 @@

Description

configuration, and the ability to store/retrieve session data.

Constants

-
const SESSION_STARTED = true;
const SESSION_NOT_STARTED = false;
const SAME_SITE_LAX = 'Lax';
const SAME_SITE_STRICT = 'Strict';
const SAME_SITE_NONE = 'None';

Properties

+
const SESSION_STARTED = true;
const SESSION_NOT_STARTED = false;
const SAME_SITE_LAX = "Lax";
const SAME_SITE_STRICT = "Strict";
const SAME_SITE_NONE = "None";

Properties

1. _sessionState

Declaration

@@ -24898,7 +24932,7 @@

Description

2. table

Declaration

-
private string $table = 'sessions';
+
private string $table = 'sessions';

Description

Table name used for storing session data.

@@ -25114,7 +25148,7 @@

Return

MagicObject\Util\ClassUtil\ExtendedReflectionClass

Declaration

-
class ExtendedReflectionClass extends ReflectionClass implements Reflector, Stringable +
class ExtendedReflectionClass extends ReflectionClass implements Reflector { }
@@ -25280,7 +25314,7 @@

Description

that rely on annotations for configuration, routing, or metadata purposes.

Constants

-
const METHOD = 'method';
const PROPERTY = 'property';

Properties

+
const METHOD = "method";
const PROPERTY = "property";

Properties

1. rawDocBlock

Declaration

@@ -25302,7 +25336,7 @@

Description

3. keyPattern

Declaration

-
private string $keyPattern = '[A-z0-9\\_\\-]+';
+
private string $keyPattern = '[A-z0-9\\_\\-]+';

Description

Key pattern

@@ -25311,9 +25345,9 @@

Description

4. endPattern

Declaration

-
private string $endPattern = '[ ]*(?:@| +
private string $endPattern = '[ ]*(?:@| | -)';
+)'
;

Description

End pattern

@@ -26095,31 +26129,31 @@

Package

Constants

-
const TYPE_TINYINT_1 = 'tinyint(1)';
const TYPE_DOUBLE_PRECISION = 'double precision';
const TYPE_CHARACTER_VARYING = 'character varying';

Properties

+
const TYPE_TINYINT_1 = "tinyint(1)";
const TYPE_DOUBLE_PRECISION = "double precision";
const TYPE_CHARACTER_VARYING = "character varying";

Properties

1. mysqlToPostgresql

Declaration

private array $mysqlToPostgresql = array ( - 'tinyint(1)' => 'boolean', - 'tinyint' => 'smallint', - 'smallint' => 'smallint', - 'int' => 'integer', - 'bigint' => 'bigint', - 'float' => 'real', - 'double' => 'double precision', - 'decimal' => 'numeric', - 'varchar' => 'character varying', - 'char' => 'character', - 'text' => 'text', - 'longtext' => 'text', - 'tinytext' => 'text', - 'datetime' => 'timestamp', - 'timestamp' => 'timestamp with time zone', - 'date' => 'date', - 'time' => 'time', - 'year' => 'smallint', - 'json' => 'jsonb', - 'uuid' => 'uuid', + 'tinyint(1)' => 'boolean', + 'tinyint' => 'smallint', + 'smallint' => 'smallint', + 'int' => 'integer', + 'bigint' => 'bigint', + 'float' => 'real', + 'double' => 'double precision', + 'decimal' => 'numeric', + 'varchar' => 'character varying', + 'char' => 'character', + 'text' => 'text', + 'longtext' => 'text', + 'tinytext' => 'text', + 'datetime' => 'timestamp', + 'timestamp' => 'timestamp with time zone', + 'date' => 'date', + 'time' => 'time', + 'year' => 'smallint', + 'json' => 'jsonb', + 'uuid' => 'uuid', );

Description

@@ -26130,26 +26164,26 @@

Description

2. mysqlToSQLite

Declaration

private array $mysqlToSQLite = array ( - 'tinyint(1)' => 'INTEGER', - 'tinyint' => 'INTEGER', - 'smallint' => 'INTEGER', - 'int' => 'INTEGER', - 'bigint' => 'INTEGER', - 'float' => 'REAL', - 'double' => 'REAL', - 'decimal' => 'REAL', - 'varchar' => 'NVARCHAR', - 'char' => 'TEXT', - 'longtext' => 'TEXT', - 'text' => 'TEXT', - 'tinytext' => 'TEXT', - 'datetime' => 'DATETIME', - 'timestamp' => 'TIMESTAMP', - 'date' => 'DATE', - 'time' => 'TIME', - 'year' => 'INTEGER', - 'json' => 'TEXT', - 'uuid' => 'TEXT', + 'tinyint(1)' => 'INTEGER', + 'tinyint' => 'INTEGER', + 'smallint' => 'INTEGER', + 'int' => 'INTEGER', + 'bigint' => 'INTEGER', + 'float' => 'REAL', + 'double' => 'REAL', + 'decimal' => 'REAL', + 'varchar' => 'NVARCHAR', + 'char' => 'TEXT', + 'longtext' => 'TEXT', + 'text' => 'TEXT', + 'tinytext' => 'TEXT', + 'datetime' => 'DATETIME', + 'timestamp' => 'TIMESTAMP', + 'date' => 'DATE', + 'time' => 'TIME', + 'year' => 'INTEGER', + 'json' => 'TEXT', + 'uuid' => 'TEXT', );

Description

@@ -26160,22 +26194,22 @@

Description

3. postgresqlToMySQL

Declaration

private array $postgresqlToMySQL = array ( - 'boolean' => 'tinyint(1)', - 'smallint' => 'smallint', - 'integer' => 'int', - 'bigint' => 'bigint', - 'real' => 'float', - 'double precision' => 'double', - 'character varying' => 'varchar', - 'character' => 'char', - 'text' => 'text', - 'timestamp' => 'datetime', - 'timestamp with time zone' => 'timestamp', - 'timestamptz' => 'timestamp', - 'date' => 'date', - 'time' => 'time', - 'jsonb' => 'json', - 'uuid' => 'uuid', + 'boolean' => 'tinyint(1)', + 'smallint' => 'smallint', + 'integer' => 'int', + 'bigint' => 'bigint', + 'real' => 'float', + 'double precision' => 'double', + 'character varying' => 'varchar', + 'character' => 'char', + 'text' => 'text', + 'timestamp' => 'datetime', + 'timestamp with time zone' => 'timestamp', + 'timestamptz' => 'timestamp', + 'date' => 'date', + 'time' => 'time', + 'jsonb' => 'json', + 'uuid' => 'uuid', );

Description

@@ -26186,21 +26220,21 @@

Description

4. postgresqlToSQLite

Declaration

private array $postgresqlToSQLite = array ( - 'boolean' => 'INTEGER', - 'smallint' => 'INTEGER', - 'integer' => 'INTEGER', - 'bigint' => 'INTEGER', - 'real' => 'REAL', - 'double precision' => 'REAL', - 'character varying' => 'TEXT', - 'character' => 'TEXT', - 'text' => 'TEXT', - 'timestamp' => 'TIMESTAMP', - 'datetime' => 'DATETIME', - 'date' => 'DATE', - 'time' => 'TIME', - 'jsonb' => 'TEXT', - 'uuid' => 'TEXT', + 'boolean' => 'INTEGER', + 'smallint' => 'INTEGER', + 'integer' => 'INTEGER', + 'bigint' => 'INTEGER', + 'real' => 'REAL', + 'double precision' => 'REAL', + 'character varying' => 'TEXT', + 'character' => 'TEXT', + 'text' => 'TEXT', + 'timestamp' => 'TIMESTAMP', + 'datetime' => 'DATETIME', + 'date' => 'DATE', + 'time' => 'TIME', + 'jsonb' => 'TEXT', + 'uuid' => 'TEXT', );

Description

@@ -26211,11 +26245,11 @@

Description

5. sqliteToMySQL

Declaration

private array $sqliteToMySQL = array ( - 'NVARCHAR' => 'varchar', - 'INTEGER' => 'int', - 'REAL' => 'float', - 'TEXT' => 'text', - 'BLOB' => 'blob', + 'NVARCHAR' => 'varchar', + 'INTEGER' => 'int', + 'REAL' => 'float', + 'TEXT' => 'text', + 'BLOB' => 'blob', );

Description

@@ -26226,11 +26260,11 @@

Description

6. sqliteToPostgresql

Declaration

private array $sqliteToPostgresql = array ( - 'NVARCHAR' => 'character varying', - 'INTEGER' => 'integer', - 'REAL' => 'real', - 'TEXT' => 'text', - 'BLOB' => 'bytea', + 'NVARCHAR' => 'character varying', + 'INTEGER' => 'integer', + 'REAL' => 'real', + 'TEXT' => 'text', + 'BLOB' => 'bytea', );

Description

@@ -27074,7 +27108,7 @@

Package

Constants

-
const INVALID_CREATE_TABLE_STATEMENT_MYSQL = 'Invalid MySQL CREATE TABLE statement format.';

Properties

+
const INVALID_CREATE_TABLE_STATEMENT_MYSQL = "Invalid MySQL CREATE TABLE statement format.";

Properties

1. dbToSqlite

Declaration

@@ -27858,7 +27892,7 @@

Description

and manage data types, ensuring safe and efficient interactions with the database.

Constants

-
const INLINE_TRIM = ' \r\n\t ';

Methods

+
const INLINE_TRIM = " \r\n\t ";

Methods

2. specificationFromParams

Declaration

@@ -28221,7 +28255,7 @@

Declaration

{ }

Constants

-
const KEY_PRIMARY_KEY = 'primary_key';
const KEY_NULLABLE = 'nullable';
const KEY_AUTO_INCREMENT = 'auto_increment';

Methods

+
const KEY_PRIMARY_KEY = "primary_key";
const KEY_NULLABLE = "nullable";
const KEY_AUTO_INCREMENT = "auto_increment";

Methods

1. getAutoIncrementKey

Declaration

@@ -29906,7 +29940,7 @@

Description

Constants

-
const TINYINT_1 = 'tinyint(1)';

Methods

+
const TINYINT_1 = "tinyint(1)";

Methods

1. getColumnList

Declaration

@@ -30869,7 +30903,7 @@

Description

Constants

-
const KEY_COLUMN_NAME = 'Field';
const KEY_PRIMARY_KEY = 'Key';
const KEY_TYPE = 'Type';
const KEY_LENGTH = 'Length';
const KEY_NULLABLE = 'Nullable';
const KEY_DEFAULT = 'Default';

Properties

+
const KEY_COLUMN_NAME = "Field";
const KEY_PRIMARY_KEY = "Key";
const KEY_TYPE = "Type";
const KEY_LENGTH = "Length";
const KEY_NULLABLE = "Nullable";
const KEY_DEFAULT = "Default";

Properties

1. typeList

Declaration

@@ -32747,7 +32781,7 @@

Description

MagicObject\Util\Image\ImageUtilException

Declaration

-
class ImageUtilException extends Exception implements Throwable, Stringable +
class ImageUtilException extends Exception implements Throwable { }
@@ -32794,7 +32828,7 @@

Description

with this source code.

Constants

-
const VERSION = '1.7.4';

Properties

+
const VERSION = "1.7.4";

Properties

1. breaksEnabled

Declaration

@@ -32835,20 +32869,20 @@

Description

5. safeLinksWhitelist

Declaration

protected array $safeLinksWhitelist = array ( - 0 => 'http://', - 1 => 'https://', - 2 => 'ftp://', - 3 => 'ftps://', - 4 => 'mailto:', - 5 => 'data:image/png;base64,', - 6 => 'data:image/gif;base64,', - 7 => 'data:image/jpeg;base64,', - 8 => 'irc:', - 9 => 'ircs:', - 10 => 'git:', - 11 => 'ssh:', - 12 => 'news:', - 13 => 'steam:', + 0 => 'http://', + 1 => 'https://', + 2 => 'ftp://', + 3 => 'ftps://', + 4 => 'mailto:', + 5 => 'data:image/png;base64,', + 6 => 'data:image/gif;base64,', + 7 => 'data:image/jpeg;base64,', + 8 => 'irc:', + 9 => 'ircs:', + 10 => 'git:', + 11 => 'ssh:', + 12 => 'news:', + 13 => 'steam:', );

Description

@@ -32859,102 +32893,102 @@

Description

6. blockTypes

Declaration

protected array $blockTypes = array ( - '#' => + '#' => array ( - 0 => 'Header', + 0 => 'Header', ), - '*' => + '*' => array ( - 0 => 'Rule', - 1 => 'List', + 0 => 'Rule', + 1 => 'List', ), - '+' => + '+' => array ( - 0 => 'List', + 0 => 'List', ), - '-' => + '-' => array ( - 0 => 'SetextHeader', - 1 => 'Table', - 2 => 'Rule', - 3 => 'List', + 0 => 'SetextHeader', + 1 => 'Table', + 2 => 'Rule', + 3 => 'List', ), 0 => array ( - 0 => 'List', + 0 => 'List', ), 1 => array ( - 0 => 'List', + 0 => 'List', ), 2 => array ( - 0 => 'List', + 0 => 'List', ), 3 => array ( - 0 => 'List', + 0 => 'List', ), 4 => array ( - 0 => 'List', + 0 => 'List', ), 5 => array ( - 0 => 'List', + 0 => 'List', ), 6 => array ( - 0 => 'List', + 0 => 'List', ), 7 => array ( - 0 => 'List', + 0 => 'List', ), 8 => array ( - 0 => 'List', + 0 => 'List', ), 9 => array ( - 0 => 'List', + 0 => 'List', ), - ':' => + ':' => array ( - 0 => 'Table', + 0 => 'Table', ), - '<' => + '<' => array ( - 0 => 'Comment', - 1 => 'Markup', + 0 => 'Comment', + 1 => 'Markup', ), - '=' => + '=' => array ( - 0 => 'SetextHeader', + 0 => 'SetextHeader', ), - '>' => + '>' => array ( - 0 => 'Quote', + 0 => 'Quote', ), - '[' => + '[' => array ( - 0 => 'Reference', + 0 => 'Reference', ), - '_' => + '_' => array ( - 0 => 'Rule', + 0 => 'Rule', ), - '`' => + '`' => array ( - 0 => 'FencedCode', + 0 => 'FencedCode', ), - '|' => + '|' => array ( - 0 => 'Table', + 0 => 'Table', ), - '~' => + '~' => array ( - 0 => 'FencedCode', + 0 => 'FencedCode', ), );
@@ -32966,7 +33000,7 @@

Description

7. unmarkedBlockTypes

Declaration

protected array $unmarkedBlockTypes = array ( - 0 => 'Code', + 0 => 'Code', );

Description

@@ -32977,56 +33011,56 @@

Description

8. inlineTypes

Declaration

protected $inlineTypes = array ( - '"' => + '"' => array ( - 0 => 'SpecialCharacter', + 0 => 'SpecialCharacter', ), - '!' => + '!' => array ( - 0 => 'Image', + 0 => 'Image', ), - '&' => + '&' => array ( - 0 => 'SpecialCharacter', + 0 => 'SpecialCharacter', ), - '*' => + '*' => array ( - 0 => 'Emphasis', + 0 => 'Emphasis', ), - ':' => + ':' => array ( - 0 => 'Url', + 0 => 'Url', ), - '<' => + '<' => array ( - 0 => 'UrlTag', - 1 => 'EmailTag', - 2 => 'Markup', - 3 => 'SpecialCharacter', + 0 => 'UrlTag', + 1 => 'EmailTag', + 2 => 'Markup', + 3 => 'SpecialCharacter', ), - '>' => + '>' => array ( - 0 => 'SpecialCharacter', + 0 => 'SpecialCharacter', ), - '[' => + '[' => array ( - 0 => 'Link', + 0 => 'Link', ), - '_' => + '_' => array ( - 0 => 'Emphasis', + 0 => 'Emphasis', ), - '`' => + '`' => array ( - 0 => 'Code', + 0 => 'Code', ), - '~' => + '~' => array ( - 0 => 'Strikethrough', + 0 => 'Strikethrough', ), - '\\' => + '\\' => array ( - 0 => 'EscapeSequence', + 0 => 'EscapeSequence', ), );
@@ -33061,23 +33095,23 @@

Declaration

12. specialCharacters

Declaration

protected array List of special characters used in parsing. $specialCharacters = array ( - 0 => '\\', - 1 => '`', - 2 => '*', - 3 => '_', - 4 => '{', - 5 => '}', - 6 => '[', - 7 => ']', - 8 => '(', - 9 => ')', - 10 => '>', - 11 => '#', - 12 => '+', - 13 => '-', - 14 => '.', - 15 => '!', - 16 => '|', + 0 => '\\', + 1 => '`', + 2 => '*', + 3 => '_', + 4 => '{', + 5 => '}', + 6 => '[', + 7 => ']', + 8 => '(', + 9 => ')', + 10 => '>', + 11 => '#', + 12 => '+', + 13 => '-', + 14 => '.', + 15 => '!', + 16 => '|', );
@@ -33086,8 +33120,8 @@

Declaration

13. strongRegex

Declaration

protected array Regular expressions for strong emphasis syntax. $strongRegex = array ( - '*' => '/^[*]{2}((?:\\\\\\*|[^*]|[*][^*]*[*])+?)[*]{2}(?![*])/s', - '_' => '/^__((?:\\\\_|[^_]|_[^_]*_)+?)__(?!_)/us', + '*' => '/^[*]{2}((?:\\\\\\*|[^*]|[*][^*]*[*])+?)[*]{2}(?![*])/s', + '_' => '/^__((?:\\\\_|[^_]|_[^_]*_)+?)__(?!_)/us', );
@@ -33096,8 +33130,8 @@

Declaration

14. emRegex

Declaration

protected array Regular expressions for emphasis syntax. $emRegex = array ( - '*' => '/^[*]((?:\\\\\\*|[^*]|[*][*][^*]+?[*][*])+?)[*](?![*])/s', - '_' => '/^_((?:\\\\_|[^_]|__[^_]*__)+?)_(?!_)\\b/us', + '*' => '/^[*]((?:\\\\\\*|[^*]|[*][*][^*]+?[*][*])+?)[*](?![*])/s', + '_' => '/^_((?:\\\\_|[^_]|__[^_]*__)+?)_(?!_)\\b/us', );
@@ -33105,7 +33139,7 @@

Declaration

15. regexHtmlAttribute

Declaration

-
protected string Regular expression for validating HTML attributes. $regexHtmlAttribute = '[a-zA-Z_:][\\w:.-]*(?:\\s*=\\s*(?:[^"\'=<>`\\s]+|"[^"]*"|\'[^\']*\'))?';
+
protected string Regular expression for validating HTML attributes. $regexHtmlAttribute = '[a-zA-Z_:][\\w:.-]*(?:\\s*=\\s*(?:[^"\'=<>`\\s]+|"[^"]*"|\'[^\']*\'))?';
@@ -33113,19 +33147,19 @@

Declaration

16. voidElements

Declaration

protected array List of void elements that do not have closing tags. $voidElements = array ( - 0 => 'area', - 1 => 'base', - 2 => 'br', - 3 => 'col', - 4 => 'command', - 5 => 'embed', - 6 => 'hr', - 7 => 'img', - 8 => 'input', - 9 => 'link', - 10 => 'meta', - 11 => 'param', - 12 => 'source', + 0 => 'area', + 1 => 'base', + 2 => 'br', + 3 => 'col', + 4 => 'command', + 5 => 'embed', + 6 => 'hr', + 7 => 'img', + 8 => 'input', + 9 => 'link', + 10 => 'meta', + 11 => 'param', + 12 => 'source', );
@@ -33134,46 +33168,46 @@

Declaration

17. textLevelElements

Declaration

protected array List of text-level elements for inline formatting. $textLevelElements = array ( - 0 => 'a', - 1 => 'br', - 2 => 'bdo', - 3 => 'abbr', - 4 => 'blink', - 5 => 'nextid', - 6 => 'acronym', - 7 => 'basefont', - 8 => 'b', - 9 => 'em', - 10 => 'big', - 11 => 'cite', - 12 => 'small', - 13 => 'spacer', - 14 => 'listing', - 15 => 'i', - 16 => 'rp', - 17 => 'del', - 18 => 'code', - 19 => 'strike', - 20 => 'marquee', - 21 => 'q', - 22 => 'rt', - 23 => 'ins', - 24 => 'font', - 25 => 'strong', - 26 => 's', - 27 => 'tt', - 28 => 'kbd', - 29 => 'mark', - 30 => 'u', - 31 => 'xm', - 32 => 'sub', - 33 => 'nobr', - 34 => 'sup', - 35 => 'ruby', - 36 => 'var', - 37 => 'span', - 38 => 'wbr', - 39 => 'time', + 0 => 'a', + 1 => 'br', + 2 => 'bdo', + 3 => 'abbr', + 4 => 'blink', + 5 => 'nextid', + 6 => 'acronym', + 7 => 'basefont', + 8 => 'b', + 9 => 'em', + 10 => 'big', + 11 => 'cite', + 12 => 'small', + 13 => 'spacer', + 14 => 'listing', + 15 => 'i', + 16 => 'rp', + 17 => 'del', + 18 => 'code', + 19 => 'strike', + 20 => 'marquee', + 21 => 'q', + 22 => 'rt', + 23 => 'ins', + 24 => 'font', + 25 => 'strong', + 26 => 's', + 27 => 'tt', + 28 => 'kbd', + 29 => 'mark', + 30 => 'u', + 31 => 'xm', + 32 => 'sub', + 33 => 'nobr', + 34 => 'sup', + 35 => 'ruby', + 36 => 'var', + 37 => 'span', + 38 => 'wbr', + 39 => 'time', );
@@ -34350,7 +34384,7 @@

Description

4. responseBody

Declaration

-
private string $responseBody = '';
+
private string $responseBody = '';

Description

Response body from the last request

@@ -35430,7 +35464,7 @@

Description

Each constant corresponds to a specific locale, which can be used in applications to handle internationalization (i18n), localization (l10n), and formatting of data such as dates, currencies, and numbers, based on the user's regional settings.

Constants

-
const EN_IE = 'en_IE';
const RO_MD = 'ro_MD';
const BR = 'br';
const EN_GY = 'en_GY';
const ES_GT = 'es_GT';
const SHI_TFNG_M = 'shi-Tfng_M';
const MR = 'mr';
const BS = 'bs';
const EN_AS = 'en_AS';
const KSF = 'ksf';
const BS_CYRL = 'bs-Cyrl';
const EN_PR = 'en_PR';
const MS = 'ms';
const SR_LATN_ME = 'sr-Latn_ME';
const MT = 'mt';
const HA = 'ha';
const NB_NO = 'nb_NO';
const EN_SE = 'en_SE';
const EN_BZ = 'en_BZ';
const PT_BR = 'pt_BR';
const OR_IN = 'or_IN';
const IS_IS = 'is_IS';
const MN_MN = 'mn_MN';
const AR_IQ = 'ar_IQ';
const HE = 'he';
const IT_SM = 'it_SM';
const EN_AT = 'en_AT';
const BAS = 'bas';
const CKB = 'ckb';
const MY = 'my';
const ZH_CN = 'zh_CN';
const MER = 'mer';
const KS_ARAB_IN = 'ks-Arab_IN';
const EN_JM = 'en_JM';
const DZ_BT = 'dz_BT';
const MS_ARAB_BN = 'ms-Arab_BN';
const CY_GB = 'cy_GB';
const SG = 'sg';
const IT_CH = 'it_CH';
const TEO_KE = 'teo_KE';
const DE_LU = 'de_LU';
const EN_US = 'en_US';
const HI = 'hi';
const HU_HU = 'hu_HU';
const UZ_LATN_UZ = 'uz-Latn_UZ';
const AF_NA = 'af_NA';
const SI = 'si';
const FR_BI = 'fr_BI';
const GA_IE = 'ga_IE';
const MFE = 'mfe';
const EN_CA = 'en_CA';
const NE_IN = 'ne_IN';
const RWK_TZ = 'rwk_TZ';
const EN_AU = 'en_AU';
const SK = 'sk';
const TEO = 'teo';
const EN_PT = 'en_PT';
const EN_NG = 'en_NG';
const SL = 'sl';
const TK_TM = 'tk_TM';
const TZM = 'tzm';
const EE_GH = 'ee_GH';
const KDE = 'kde';
const SN = 'sn';
const DYO_SN = 'dyo_SN';
const EN_SG = 'en_SG';
const MAS_TZ = 'mas_TZ';
const SO = 'so';
const NYN_UG = 'nyn_UG';
const BR_FR = 'br_FR';
const FR_BJ = 'fr_BJ';
const ES_IC = 'es_IC';
const PT_MZ = 'pt_MZ';
const HR = 'hr';
const AZ = 'az';
const SQ = 'sq';
const SR = 'sr';
const SW_KE = 'sw_KE';
const CA = 'ca';
const HU = 'hu';
const ET_EE = 'et_EE';
const LAG_TZ = 'lag_TZ';
const BN_IN = 'bn_IN';
const NB = 'nb';
const SV = 'sv';
const TH_TH = 'th_TH';
const ML_IN = 'ml_IN';
const SR_RS = 'sr_RS';
const SW = 'sw';
const ND = 'nd';
const TA_IN = 'ta_IN';
const FR_MQ = 'fr_MQ';
const HY = 'hy';
const EN_TO = 'en_TO';
const ES_AR = 'es_AR';
const NE = 'ne';
const PT_AO = 'pt_AO';
const NE_NP = 'ne_NP';
const AR_BH = 'ar_BH';
const EN_SI = 'en_SI';
const BO_IN = 'bo_IN';
const HI_IN = 'hi_IN';
const SEH = 'seh';
const DE_DE = 'de_DE';
const KO_KP = 'ko_KP';
const FR_BL = 'fr_BL';
const FR_MR = 'fr_MR';
const CA_AD = 'ca_AD';
const FA_IR = 'fa_IR';
const NL = 'nl';
const ES_PR = 'es_PR';
const EN_PW = 'en_PW';
const RN_BI = 'rn_BI';
const NN = 'nn';
const KK = 'kk';
const EN_DK = 'en_DK';
const SL_SI = 'sl_SI';
const DUA = 'dua';
const KEA = 'kea';
const MS_ARAB_MY = 'ms-Arab_MY';
const IG_NG = 'ig_NG';
const KLN = 'kln';
const YO = 'yo';
const FR_DZ = 'fr_DZ';
const SV_FI = 'sv_FI';
const FR_SY = 'fr_SY';
const RU_MD = 'ru_MD';
const EN_ZW = 'en_ZW';
const BRX_IN = 'brx_IN';
const SW_UG = 'sw_UG';
const FIL_PH = 'fil_PH';
const CS = 'cs';
const PT_GW = 'pt_GW';
const BN_BD = 'bn_BD';
const DE_AT = 'de_AT';
const FR_PF = 'fr_PF';
const LUO = 'luo';
const SK_SK = 'sk_SK';
const AR_001 = 'ar_001';
const ES_US = 'es_US';
const EN_SK = 'en_SK';
const TA = 'ta';
const FR_HT = 'fr_HT';
const MK_MK = 'mk_MK';
const OM_KE = 'om_KE';
const DA_DK = 'da_DK';
const EN_ME = 'en_ME';
const KO_KR = 'ko_KR';
const FF_SN = 'ff_SN';
const ID = 'id';
const EN_KY = 'en_KY';
const KDE_TZ = 'kde_TZ';
const SHI = 'shi';
const CY = 'cy';
const EN_ES = 'en_ES';
const MGH = 'mgh';
const EN_TR = 'en_TR';
const SR_ME = 'sr_ME';
const TE = 'te';
const FR_GN = 'fr_GN';
const FO_FO = 'fo_FO';
const EN_NL = 'en_NL';
const IG = 'ig';
const IT_IT = 'it_IT';
const UK_UA = 'uk_UA';
const TG = 'tg';
const EN_DM = 'en_DM';
const BM_ML = 'bm_ML';
const VAI = 'vai';
const EN_SL = 'en_SL';
const II = 'ii';
const EN_150 = 'en_150';
const SES = 'ses';
const TH = 'th';
const TI = 'ti';
const EN_IM = 'en_IM';
const RU_KZ = 'ru_KZ';
const FR_MU = 'fr_MU';
const IU_CANS_CA = 'iu-Cans_CA';
const CS_CZ = 'cs_CZ';
const AR_AE = 'ar_AE';
const TE_IN = 'te_IN';
const TK = 'tk';
const BRX = 'brx';
const HAW = 'haw';
const TZM_MA = 'tzm_MA';
const SO_DJ = 'so_DJ';
const UZ_UZ = 'uz_UZ';
const EN_BA = 'en_BA';
const TO = 'to';
const EN_MG = 'en_MG';
const EWO_CM = 'ewo_CM';
const AR_MR = 'ar_MR';
const NL_AW = 'nl_AW';
const EN_IN = 'en_IN';
const MGO = 'mgo';
const SN_ZW = 'sn_ZW';
const EN_CH = 'en_CH';
const EN_TT = 'en_TT';
const TR = 'tr';
const IS = 'is';
const FR_GP = 'fr_GP';
const LUY = 'luy';
const ES_NI = 'es_NI';
const PT_TL = 'pt_TL';
const IT = 'it';
const MS_ARAB = 'ms-Arab';
const DA = 'da';
const KLN_KE = 'kln_KE';
const IU = 'iu';
const EN_BB = 'en_BB';
const AR_DZ = 'ar_DZ';
const AR_SY = 'ar_SY';
const EN_MH = 'en_MH';
const MR_IN = 'mr_IN';
const EN_GB = 'en_GB';
const DE = 'de';
const FR_GQ = 'fr_GQ';
const EN_NO = 'en_NO';
const KY_KG = 'ky_KG';
const PT_PT = 'pt_PT';
const FR_RW = 'fr_RW';
const NUS_SD = 'nus_SD';
const ASA = 'asa';
const ZH = 'zh';
const HA_GH = 'ha_GH';
const BO_CN = 'bo_CN';
const KAM_KE = 'kam_KE';
const DUA_CM = 'dua_CM';
const KHQ_ML = 'khq_ML';
const UR_IN = 'ur_IN';
const EN_LC = 'en_LC';
const FR_TD = 'fr_TD';
const KSB_TZ = 'ksb_TZ';
const GU_IN = 'gu_IN';
const OM = 'om';
const JMC = 'jmc';
const RO_RO = 'ro_RO';
const JA_JP = 'ja_JP';
const LN_AO = 'ln_AO';
const SO_ET = 'so_ET';
const EN_GD = 'en_GD';
const NL_NL = 'nl_NL';
const ES_ES = 'es_ES';
const EN_VC = 'en_VC';
const OR = 'or';
const YO_NG = 'yo_NG';
const ES_PY = 'es_PY';
const MUA_CM = 'mua_CM';
const FA_AF = 'fa_AF';
const EN_HK = 'en_HK';
const JA = 'ja';
const LUO_KE = 'luo_KE';
const TWQ = 'twq';
const EN_BE = 'en_BE';
const ES_UY = 'es_UY';
const DJE_NE = 'dje_NE';
const LUY_KE = 'luy_KE';
const NAQ = 'naq';
const SI_LK = 'si_LK';
const ZU = 'zu';
const ZH_HANS_MO = 'zh-Hans_MO';
const FR_KM = 'fr_KM';
const ZH_HK = 'zh_HK';
const DZ = 'dz';
const SWC = 'swc';
const ASA_TZ = 'asa_TZ';
const JGO_CM = 'jgo_CM';
const AZ_CYRL = 'az-Cyrl';
const EWO = 'ewo';
const GV_GB = 'gv_GB';
const TI_ER = 'ti_ER';
const BE_BY = 'be_BY';
const EN_IS = 'en_IS';
const EN_CM = 'en_CM';
const UK = 'uk';
const CGG_UG = 'cgg_UG';
const NYN = 'nyn';
const TR_CY = 'tr_CY';
const DE_CH = 'de_CH';
const FR_TG = 'fr_TG';
const JMC_TZ = 'jmc_TZ';
const TA_LK = 'ta_LK';
const SO_SO = 'so_SO';
const ES_DO = 'es_DO';
const FR_LU = 'fr_LU';
const SHI_MA = 'shi_MA';
const EN_SS = 'en_SS';
const SWC_CD = 'swc_CD';
const KN_IN = 'kn_IN';
const HY_AM = 'hy_AM';
const EN_IT = 'en_IT';
const EN_GG = 'en_GG';
const FIL = 'fil';
const BAS_CM = 'bas_CM';
const EN_TZ = 'en_TZ';
const AR_TD = 'ar_TD';
const UR = 'ur';
const BEZ_TZ = 'bez_TZ';
const HAW_US = 'haw_US';
const FR_VU = 'fr_VU';
const PA = 'pa';
const BS_BA = 'bs_BA';
const EE_TG = 'ee_TG';
const TI_ET = 'ti_ET';
const SR_LATN_BA = 'sr-Latn_BA';
const EN_GH = 'en_GH';
const EE = 'ee';
const EN_VG = 'en_VG';
const SV_SE = 'sv_SE';
const KI_KE = 'ki_KE';
const ZH_HANS = 'zh-Hans';
const BEM = 'bem';
const UZ = 'uz';
const AR_YE = 'ar_YE';
const FR_NC = 'fr_NC';
const SEH_MZ = 'seh_MZ';
const RU_UA = 'ru_UA';
const FR_SC = 'fr_SC';
const AR_KM = 'ar_KM';
const EN_ZA = 'en_ZA';
const EN_GI = 'en_GI';
const MAS_KE = 'mas_KE';
const NN_NO = 'nn_NO';
const AR_EG = 'ar_EG';
const EL = 'el';
const EN_RO = 'en_RO';
const PL = 'pl';
const NL_BE = 'nl_BE';
const EN = 'en';
const UZ_LATN = 'uz-Latn';
const EO = 'eo';
const KOK = 'kok';
const MAS = 'mas';
const FR_FR = 'fr_FR';
const ROF = 'rof';
const EN_MP = 'en_MP';
const DE_BE = 'de_BE';
const HR_BA = 'hr_BA';
const AR_EH = 'ar_EH';
const ES_CL = 'es_CL';
const EN_AD = 'en_AD';
const ES = 'es';
const EN_VI = 'en_VI';
const PS = 'ps';
const ET = 'et';
const NL_SR = 'nl_SR';
const VAI_LATN = 'vai-Latn';
const PT = 'pt';
const EU = 'eu';
const KA = 'ka';
const FR_NE = 'fr_NE';
const EU_ES = 'eu_ES';
const MGH_MZ = 'mgh_MZ';
const ZU_ZA = 'zu_ZA';
const AR_SA = 'ar_SA';
const CHR_US = 'chr_US';
const CGG = 'cgg';
const SQ_MK = 'sq_MK';
const LAG = 'lag';
const AZ_AZ = 'az_AZ';
const ES_VE = 'es_VE';
const KS_ARAB = 'ks-Arab';
const EN_HR = 'en_HR';
const EL_GR = 'el_GR';
const EL_CY = 'el_CY';
const MFE_MU = 'mfe_MU';
const KI = 'ki';
const VI = 'vi';
const EN_KE = 'en_KE';
const RWK = 'rwk';
const BEZ = 'bez';
const KL = 'kl';
const ZH_HANT = 'zh-Hant';
const FR_CA = 'fr_CA';
const KM = 'km';
const ES_HN = 'es_HN';
const AGQ_CM = 'agq_CM';
const KN = 'kn';
const II_CN = 'ii_CN';
const MN = 'mn';
const EN_BM = 'en_BM';
const KO = 'ko';
const SV_AX = 'sv_AX';
const LN_CD = 'ln_CD';
const EN_GM = 'en_GM';
const IU_CANS = 'iu-Cans';
const FR_MA = 'fr_MA';
const ES_CO = 'es_CO';
const EN_AG = 'en_AG';
const GUZ_KE = 'guz_KE';
const KS = 'ks';
const ES_PA = 'es_PA';
const TWQ_NE = 'twq_NE';
const EN_NZ = 'en_NZ';
const FR_TN = 'fr_TN';
const FA = 'fa';
const EN_US_POSI = 'en_US_POSI';
const DAV_KE = 'dav_KE';
const EN_WS = 'en_WS';
const LT_LT = 'lt_LT';
const EN_SZ = 'en_SZ';
const AR_SD = 'ar_SD';
const ROF_TZ = 'rof_TZ';
const UZ_ARAB_AF = 'uz-Arab_AF';
const VI_VN = 'vi_VN';
const EN_MT = 'en_MT';
const KW = 'kw';
const YAV_CM = 'yav_CM';
const TA_MY = 'ta_MY';
const RU_KG = 'ru_KG';
const KAB = 'kab';
const KY = 'ky';
const FF = 'ff';
const EN_PG = 'en_PG';
const TO_TO = 'to_TO';
const AR_LY = 'ar_LY';
const JGO = 'jgo';
const EN_HU = 'en_HU';
const AF_ZA = 'af_ZA';
const EN_UG = 'en_UG';
const DE_LI = 'de_LI';
const FI = 'fi';
const ES_SV = 'es_SV';
const KHQ = 'khq';
const GSW = 'gsw';
const KSF_CM = 'ksf_CM';
const FR_DJ = 'fr_DJ';
const EN_MU = 'en_MU';
const LN_CF = 'ln_CF';
const KEA_CV = 'kea_CV';
const PL_PL = 'pl_PL';
const PA_ARAB = 'pa-Arab';
const FR_MC = 'fr_MC';
const SR_BA = 'sr_BA';
const SR_LATN = 'sr-Latn';
const EN_RU = 'en_RU';
const EN_PH = 'en_PH';
const SAQ = 'saq';
const AR_PS = 'ar_PS';
const FR_CD = 'fr_CD';
const BEM_ZM = 'bem_ZM';
const RU_RU = 'ru_RU';
const EN_FI = 'en_FI';
const FO = 'fo';
const SO_KE = 'so_KE';
const LN_CG = 'ln_CG';
const AR_OM = 'ar_OM';
const PT_ST = 'pt_ST';
const EN_KI = 'en_KI';
const KL_GL = 'kl_GL';
const FR = 'fr';
const ES_CR = 'es_CR';
const SES_ML = 'ses_ML';
const MER_KE = 'mer_KE';
const XOG = 'xog';
const XOG_UG = 'xog_UG';
const NL_SX = 'nl_SX';
const EN_FJ = 'en_FJ';
const MS_BN = 'ms_BN';
const EN_MW = 'en_MW';
const AR_MA = 'ar_MA';
const PT_MO = 'pt_MO';
const KAM = 'kam';
const EN_TC = 'en_TC';
const AF = 'af';
const AR_TN = 'ar_TN';
const AM_ET = 'am_ET';
const ES_PE = 'es_PE';
const SBP_TZ = 'sbp_TZ';
const FR_CF = 'fr_CF';
const VUN_TZ = 'vun_TZ';
const FR_RE = 'fr_RE';
const AR_JO = 'ar_JO';
const EBU = 'ebu';
const LG = 'lg';
const HA_NG = 'ha_NG';
const LV_LV = 'lv_LV';
const AK = 'ak';
const CHR = 'chr';
const AZ_CYRL_AZ = 'az-Cyrl_AZ';
const DAV = 'dav';
const EN_EE = 'en_EE';
const ES_419 = 'es_419';
const EBU_KE = 'ebu_KE';
const EN_CY = 'en_CY';
const FR_MF = 'fr_MF';
const EN_AL = 'en_AL';
const AM = 'am';
const EN_PK = 'en_PK';
const MGO_CM = 'mgo_CM';
const FR_CG = 'fr_CG';
const DJE = 'dje';
const EN_JE = 'en_JE';
const EN_LR = 'en_LR';
const DYO = 'dyo';
const LN = 'ln';
const AK_GH = 'ak_GH';
const PA_IN = 'pa_IN';
const AR_DJ = 'ar_DJ';
const EN_BS = 'en_BS';
const LO = 'lo';
const ZH_TW = 'zh_TW';
const LG_UG = 'lg_UG';
const AR_KW = 'ar_KW';
const AR = 'ar';
const BS_CYRL_BA = 'bs-Cyrl_BA';
const ES_EA = 'es_EA';
const FR_MG = 'fr_MG';
const CA_ES = 'ca_ES';
const AS = 'as';
const HE_IL = 'he_IL';
const ES_CU = 'es_CU';
const EN_CZ = 'en_CZ';
const EN_PL = 'en_PL';
const FR_GA = 'fr_GA';
const MG_MG = 'mg_MG';
const FR_CH = 'fr_CH';
const EN_LS = 'en_LS';
const LT = 'lt';
const MY_MM = 'my_MM';
const KK_KZ = 'kk_KZ';
const GA = 'ga';
const EN_FM = 'en_FM';
const LU = 'lu';
const PS_AF = 'ps_AF';
const NMG = 'nmg';
const ES_BO = 'es_BO';
const SBP = 'sbp';
const LV = 'lv';
const VUN = 'vun';
const FR_YT = 'fr_YT';
const KM_KH = 'km_KH';
const TEO_UG = 'teo_UG';
const FR_SN = 'fr_SN';
const OM_ET = 'om_ET';
const AR_ER = 'ar_ER';
const GSW_CH = 'gsw_CH';
const ES_PH = 'es_PH';
const FI_FI = 'fi_FI';
const TR_TR = 'tr_TR';
const FR_CI = 'fr_CI';
const EN_LT = 'en_LT';
const EN_UM = 'en_UM';
const UR_PK = 'ur_PK';
const HR_HR = 'hr_HR';
const NL_CW = 'nl_CW';
const EN_KN = 'en_KN';
const MS_MY = 'ms_MY';
const AR_IL = 'ar_IL';
const EN_ZM = 'en_ZM';
const ES_EC = 'es_EC';
const GL_ES = 'gl_ES';
const EN_GU = 'en_GU';
const GL = 'gl';
const NMG_CM = 'nmg_CM';
const ZH_MO = 'zh_MO';
const EN_NA = 'en_NA';
const HA_NE = 'ha_NE';
const MT_MT = 'mt_MT';
const RM = 'rm';
const KW_GB = 'kw_GB';
const ZH_SG = 'zh_SG';
const RN = 'rn';
const RO = 'ro';
const RM_CH = 'rm_CH';
const SAQ_KE = 'saq_KE';
const VAI_LR = 'vai_LR';
const KA_GE = 'ka_GE';
const ES_GQ = 'es_GQ';
const SR_LATN_RS = 'sr-Latn_RS';
const EN_VU = 'en_VU';
const ZH_HANS_HK = 'zh-Hans_HK';
const EN_LV = 'en_LV';
const AGQ = 'agq';
const GU = 'gu';
const LO_LA = 'lo_LA';
const RU = 'ru';
const EN_SB = 'en_SB';
const GV = 'gv';
const EN_BW = 'en_BW';
const YAV = 'yav';
const TA_SG = 'ta_SG';
const FR_BE = 'fr_BE';
const BG_BG = 'bg_BG';
const ES_MX = 'es_MX';
const RW = 'rw';
const BE = 'be';
const ND_ZW = 'nd_ZW';
const KAB_DZ = 'kab_DZ';
const MUA = 'mua';
const PT_CV = 'pt_CV';
const BG = 'bg';
const TG_TJ = 'tg_TJ';
const MS_SG = 'ms_SG';
const MG = 'mg';
const SG_CF = 'sg_CF';
const PA_ARAB_PK = 'pa-Arab_PK';
const SW_TZ = 'sw_TZ';
const EN_SC = 'en_SC';
const NUS = 'nus';
const SHI_TFNG = 'shi-Tfng';
const AR_QA = 'ar_QA';
const NAQ_NA = 'naq_NA';
const FR_BF = 'fr_BF';
const RW_RW = 'rw_RW';
const AS_IN = 'as_IN';
const GUZ = 'guz';
const KSB = 'ksb';
const FR_ML = 'fr_ML';
const MK = 'mk';
const KOK_IN = 'kok_IN';
const SQ_AL = 'sq_AL';
const ML = 'ml';
const FR_GF = 'fr_GF';
const BM = 'bm';
const LU_CD = 'lu_CD';
const FR_CM = 'fr_CM';
const BN = 'bn';
const AR_LB = 'ar_LB';
const ID_ID = 'id_ID';
const UZ_ARAB = 'uz-Arab';
const BO = 'bo';
const EN_FR = 'en_FR';
const EN_DE = 'en_DE';
const VAI_LATN_L = 'vai-Latn_L';
const AR_SO = 'ar_SO';
const RU_BY = 'ru_BY';

Methods

+
const EN_IE = "en_IE";
const RO_MD = "ro_MD";
const BR = "br";
const EN_GY = "en_GY";
const ES_GT = "es_GT";
const SHI_TFNG_M = "shi-Tfng_M";
const MR = "mr";
const BS = "bs";
const EN_AS = "en_AS";
const KSF = "ksf";
const BS_CYRL = "bs-Cyrl";
const EN_PR = "en_PR";
const MS = "ms";
const SR_LATN_ME = "sr-Latn_ME";
const MT = "mt";
const HA = "ha";
const NB_NO = "nb_NO";
const EN_SE = "en_SE";
const EN_BZ = "en_BZ";
const PT_BR = "pt_BR";
const OR_IN = "or_IN";
const IS_IS = "is_IS";
const MN_MN = "mn_MN";
const AR_IQ = "ar_IQ";
const HE = "he";
const IT_SM = "it_SM";
const EN_AT = "en_AT";
const BAS = "bas";
const CKB = "ckb";
const MY = "my";
const ZH_CN = "zh_CN";
const MER = "mer";
const KS_ARAB_IN = "ks-Arab_IN";
const EN_JM = "en_JM";
const DZ_BT = "dz_BT";
const MS_ARAB_BN = "ms-Arab_BN";
const CY_GB = "cy_GB";
const SG = "sg";
const IT_CH = "it_CH";
const TEO_KE = "teo_KE";
const DE_LU = "de_LU";
const EN_US = "en_US";
const HI = "hi";
const HU_HU = "hu_HU";
const UZ_LATN_UZ = "uz-Latn_UZ";
const AF_NA = "af_NA";
const SI = "si";
const FR_BI = "fr_BI";
const GA_IE = "ga_IE";
const MFE = "mfe";
const EN_CA = "en_CA";
const NE_IN = "ne_IN";
const RWK_TZ = "rwk_TZ";
const EN_AU = "en_AU";
const SK = "sk";
const TEO = "teo";
const EN_PT = "en_PT";
const EN_NG = "en_NG";
const SL = "sl";
const TK_TM = "tk_TM";
const TZM = "tzm";
const EE_GH = "ee_GH";
const KDE = "kde";
const SN = "sn";
const DYO_SN = "dyo_SN";
const EN_SG = "en_SG";
const MAS_TZ = "mas_TZ";
const SO = "so";
const NYN_UG = "nyn_UG";
const BR_FR = "br_FR";
const FR_BJ = "fr_BJ";
const ES_IC = "es_IC";
const PT_MZ = "pt_MZ";
const HR = "hr";
const AZ = "az";
const SQ = "sq";
const SR = "sr";
const SW_KE = "sw_KE";
const CA = "ca";
const HU = "hu";
const ET_EE = "et_EE";
const LAG_TZ = "lag_TZ";
const BN_IN = "bn_IN";
const NB = "nb";
const SV = "sv";
const TH_TH = "th_TH";
const ML_IN = "ml_IN";
const SR_RS = "sr_RS";
const SW = "sw";
const ND = "nd";
const TA_IN = "ta_IN";
const FR_MQ = "fr_MQ";
const HY = "hy";
const EN_TO = "en_TO";
const ES_AR = "es_AR";
const NE = "ne";
const PT_AO = "pt_AO";
const NE_NP = "ne_NP";
const AR_BH = "ar_BH";
const EN_SI = "en_SI";
const BO_IN = "bo_IN";
const HI_IN = "hi_IN";
const SEH = "seh";
const DE_DE = "de_DE";
const KO_KP = "ko_KP";
const FR_BL = "fr_BL";
const FR_MR = "fr_MR";
const CA_AD = "ca_AD";
const FA_IR = "fa_IR";
const NL = "nl";
const ES_PR = "es_PR";
const EN_PW = "en_PW";
const RN_BI = "rn_BI";
const NN = "nn";
const KK = "kk";
const EN_DK = "en_DK";
const SL_SI = "sl_SI";
const DUA = "dua";
const KEA = "kea";
const MS_ARAB_MY = "ms-Arab_MY";
const IG_NG = "ig_NG";
const KLN = "kln";
const YO = "yo";
const FR_DZ = "fr_DZ";
const SV_FI = "sv_FI";
const FR_SY = "fr_SY";
const RU_MD = "ru_MD";
const EN_ZW = "en_ZW";
const BRX_IN = "brx_IN";
const SW_UG = "sw_UG";
const FIL_PH = "fil_PH";
const CS = "cs";
const PT_GW = "pt_GW";
const BN_BD = "bn_BD";
const DE_AT = "de_AT";
const FR_PF = "fr_PF";
const LUO = "luo";
const SK_SK = "sk_SK";
const AR_001 = "ar_001";
const ES_US = "es_US";
const EN_SK = "en_SK";
const TA = "ta";
const FR_HT = "fr_HT";
const MK_MK = "mk_MK";
const OM_KE = "om_KE";
const DA_DK = "da_DK";
const EN_ME = "en_ME";
const KO_KR = "ko_KR";
const FF_SN = "ff_SN";
const ID = "id";
const EN_KY = "en_KY";
const KDE_TZ = "kde_TZ";
const SHI = "shi";
const CY = "cy";
const EN_ES = "en_ES";
const MGH = "mgh";
const EN_TR = "en_TR";
const SR_ME = "sr_ME";
const TE = "te";
const FR_GN = "fr_GN";
const FO_FO = "fo_FO";
const EN_NL = "en_NL";
const IG = "ig";
const IT_IT = "it_IT";
const UK_UA = "uk_UA";
const TG = "tg";
const EN_DM = "en_DM";
const BM_ML = "bm_ML";
const VAI = "vai";
const EN_SL = "en_SL";
const II = "ii";
const EN_150 = "en_150";
const SES = "ses";
const TH = "th";
const TI = "ti";
const EN_IM = "en_IM";
const RU_KZ = "ru_KZ";
const FR_MU = "fr_MU";
const IU_CANS_CA = "iu-Cans_CA";
const CS_CZ = "cs_CZ";
const AR_AE = "ar_AE";
const TE_IN = "te_IN";
const TK = "tk";
const BRX = "brx";
const HAW = "haw";
const TZM_MA = "tzm_MA";
const SO_DJ = "so_DJ";
const UZ_UZ = "uz_UZ";
const EN_BA = "en_BA";
const TO = "to";
const EN_MG = "en_MG";
const EWO_CM = "ewo_CM";
const AR_MR = "ar_MR";
const NL_AW = "nl_AW";
const EN_IN = "en_IN";
const MGO = "mgo";
const SN_ZW = "sn_ZW";
const EN_CH = "en_CH";
const EN_TT = "en_TT";
const TR = "tr";
const IS = "is";
const FR_GP = "fr_GP";
const LUY = "luy";
const ES_NI = "es_NI";
const PT_TL = "pt_TL";
const IT = "it";
const MS_ARAB = "ms-Arab";
const DA = "da";
const KLN_KE = "kln_KE";
const IU = "iu";
const EN_BB = "en_BB";
const AR_DZ = "ar_DZ";
const AR_SY = "ar_SY";
const EN_MH = "en_MH";
const MR_IN = "mr_IN";
const EN_GB = "en_GB";
const DE = "de";
const FR_GQ = "fr_GQ";
const EN_NO = "en_NO";
const KY_KG = "ky_KG";
const PT_PT = "pt_PT";
const FR_RW = "fr_RW";
const NUS_SD = "nus_SD";
const ASA = "asa";
const ZH = "zh";
const HA_GH = "ha_GH";
const BO_CN = "bo_CN";
const KAM_KE = "kam_KE";
const DUA_CM = "dua_CM";
const KHQ_ML = "khq_ML";
const UR_IN = "ur_IN";
const EN_LC = "en_LC";
const FR_TD = "fr_TD";
const KSB_TZ = "ksb_TZ";
const GU_IN = "gu_IN";
const OM = "om";
const JMC = "jmc";
const RO_RO = "ro_RO";
const JA_JP = "ja_JP";
const LN_AO = "ln_AO";
const SO_ET = "so_ET";
const EN_GD = "en_GD";
const NL_NL = "nl_NL";
const ES_ES = "es_ES";
const EN_VC = "en_VC";
const OR = "or";
const YO_NG = "yo_NG";
const ES_PY = "es_PY";
const MUA_CM = "mua_CM";
const FA_AF = "fa_AF";
const EN_HK = "en_HK";
const JA = "ja";
const LUO_KE = "luo_KE";
const TWQ = "twq";
const EN_BE = "en_BE";
const ES_UY = "es_UY";
const DJE_NE = "dje_NE";
const LUY_KE = "luy_KE";
const NAQ = "naq";
const SI_LK = "si_LK";
const ZU = "zu";
const ZH_HANS_MO = "zh-Hans_MO";
const FR_KM = "fr_KM";
const ZH_HK = "zh_HK";
const DZ = "dz";
const SWC = "swc";
const ASA_TZ = "asa_TZ";
const JGO_CM = "jgo_CM";
const AZ_CYRL = "az-Cyrl";
const EWO = "ewo";
const GV_GB = "gv_GB";
const TI_ER = "ti_ER";
const BE_BY = "be_BY";
const EN_IS = "en_IS";
const EN_CM = "en_CM";
const UK = "uk";
const CGG_UG = "cgg_UG";
const NYN = "nyn";
const TR_CY = "tr_CY";
const DE_CH = "de_CH";
const FR_TG = "fr_TG";
const JMC_TZ = "jmc_TZ";
const TA_LK = "ta_LK";
const SO_SO = "so_SO";
const ES_DO = "es_DO";
const FR_LU = "fr_LU";
const SHI_MA = "shi_MA";
const EN_SS = "en_SS";
const SWC_CD = "swc_CD";
const KN_IN = "kn_IN";
const HY_AM = "hy_AM";
const EN_IT = "en_IT";
const EN_GG = "en_GG";
const FIL = "fil";
const BAS_CM = "bas_CM";
const EN_TZ = "en_TZ";
const AR_TD = "ar_TD";
const UR = "ur";
const BEZ_TZ = "bez_TZ";
const HAW_US = "haw_US";
const FR_VU = "fr_VU";
const PA = "pa";
const BS_BA = "bs_BA";
const EE_TG = "ee_TG";
const TI_ET = "ti_ET";
const SR_LATN_BA = "sr-Latn_BA";
const EN_GH = "en_GH";
const EE = "ee";
const EN_VG = "en_VG";
const SV_SE = "sv_SE";
const KI_KE = "ki_KE";
const ZH_HANS = "zh-Hans";
const BEM = "bem";
const UZ = "uz";
const AR_YE = "ar_YE";
const FR_NC = "fr_NC";
const SEH_MZ = "seh_MZ";
const RU_UA = "ru_UA";
const FR_SC = "fr_SC";
const AR_KM = "ar_KM";
const EN_ZA = "en_ZA";
const EN_GI = "en_GI";
const MAS_KE = "mas_KE";
const NN_NO = "nn_NO";
const AR_EG = "ar_EG";
const EL = "el";
const EN_RO = "en_RO";
const PL = "pl";
const NL_BE = "nl_BE";
const EN = "en";
const UZ_LATN = "uz-Latn";
const EO = "eo";
const KOK = "kok";
const MAS = "mas";
const FR_FR = "fr_FR";
const ROF = "rof";
const EN_MP = "en_MP";
const DE_BE = "de_BE";
const HR_BA = "hr_BA";
const AR_EH = "ar_EH";
const ES_CL = "es_CL";
const EN_AD = "en_AD";
const ES = "es";
const EN_VI = "en_VI";
const PS = "ps";
const ET = "et";
const NL_SR = "nl_SR";
const VAI_LATN = "vai-Latn";
const PT = "pt";
const EU = "eu";
const KA = "ka";
const FR_NE = "fr_NE";
const EU_ES = "eu_ES";
const MGH_MZ = "mgh_MZ";
const ZU_ZA = "zu_ZA";
const AR_SA = "ar_SA";
const CHR_US = "chr_US";
const CGG = "cgg";
const SQ_MK = "sq_MK";
const LAG = "lag";
const AZ_AZ = "az_AZ";
const ES_VE = "es_VE";
const KS_ARAB = "ks-Arab";
const EN_HR = "en_HR";
const EL_GR = "el_GR";
const EL_CY = "el_CY";
const MFE_MU = "mfe_MU";
const KI = "ki";
const VI = "vi";
const EN_KE = "en_KE";
const RWK = "rwk";
const BEZ = "bez";
const KL = "kl";
const ZH_HANT = "zh-Hant";
const FR_CA = "fr_CA";
const KM = "km";
const ES_HN = "es_HN";
const AGQ_CM = "agq_CM";
const KN = "kn";
const II_CN = "ii_CN";
const MN = "mn";
const EN_BM = "en_BM";
const KO = "ko";
const SV_AX = "sv_AX";
const LN_CD = "ln_CD";
const EN_GM = "en_GM";
const IU_CANS = "iu-Cans";
const FR_MA = "fr_MA";
const ES_CO = "es_CO";
const EN_AG = "en_AG";
const GUZ_KE = "guz_KE";
const KS = "ks";
const ES_PA = "es_PA";
const TWQ_NE = "twq_NE";
const EN_NZ = "en_NZ";
const FR_TN = "fr_TN";
const FA = "fa";
const EN_US_POSI = "en_US_POSI";
const DAV_KE = "dav_KE";
const EN_WS = "en_WS";
const LT_LT = "lt_LT";
const EN_SZ = "en_SZ";
const AR_SD = "ar_SD";
const ROF_TZ = "rof_TZ";
const UZ_ARAB_AF = "uz-Arab_AF";
const VI_VN = "vi_VN";
const EN_MT = "en_MT";
const KW = "kw";
const YAV_CM = "yav_CM";
const TA_MY = "ta_MY";
const RU_KG = "ru_KG";
const KAB = "kab";
const KY = "ky";
const FF = "ff";
const EN_PG = "en_PG";
const TO_TO = "to_TO";
const AR_LY = "ar_LY";
const JGO = "jgo";
const EN_HU = "en_HU";
const AF_ZA = "af_ZA";
const EN_UG = "en_UG";
const DE_LI = "de_LI";
const FI = "fi";
const ES_SV = "es_SV";
const KHQ = "khq";
const GSW = "gsw";
const KSF_CM = "ksf_CM";
const FR_DJ = "fr_DJ";
const EN_MU = "en_MU";
const LN_CF = "ln_CF";
const KEA_CV = "kea_CV";
const PL_PL = "pl_PL";
const PA_ARAB = "pa-Arab";
const FR_MC = "fr_MC";
const SR_BA = "sr_BA";
const SR_LATN = "sr-Latn";
const EN_RU = "en_RU";
const EN_PH = "en_PH";
const SAQ = "saq";
const AR_PS = "ar_PS";
const FR_CD = "fr_CD";
const BEM_ZM = "bem_ZM";
const RU_RU = "ru_RU";
const EN_FI = "en_FI";
const FO = "fo";
const SO_KE = "so_KE";
const LN_CG = "ln_CG";
const AR_OM = "ar_OM";
const PT_ST = "pt_ST";
const EN_KI = "en_KI";
const KL_GL = "kl_GL";
const FR = "fr";
const ES_CR = "es_CR";
const SES_ML = "ses_ML";
const MER_KE = "mer_KE";
const XOG = "xog";
const XOG_UG = "xog_UG";
const NL_SX = "nl_SX";
const EN_FJ = "en_FJ";
const MS_BN = "ms_BN";
const EN_MW = "en_MW";
const AR_MA = "ar_MA";
const PT_MO = "pt_MO";
const KAM = "kam";
const EN_TC = "en_TC";
const AF = "af";
const AR_TN = "ar_TN";
const AM_ET = "am_ET";
const ES_PE = "es_PE";
const SBP_TZ = "sbp_TZ";
const FR_CF = "fr_CF";
const VUN_TZ = "vun_TZ";
const FR_RE = "fr_RE";
const AR_JO = "ar_JO";
const EBU = "ebu";
const LG = "lg";
const HA_NG = "ha_NG";
const LV_LV = "lv_LV";
const AK = "ak";
const CHR = "chr";
const AZ_CYRL_AZ = "az-Cyrl_AZ";
const DAV = "dav";
const EN_EE = "en_EE";
const ES_419 = "es_419";
const EBU_KE = "ebu_KE";
const EN_CY = "en_CY";
const FR_MF = "fr_MF";
const EN_AL = "en_AL";
const AM = "am";
const EN_PK = "en_PK";
const MGO_CM = "mgo_CM";
const FR_CG = "fr_CG";
const DJE = "dje";
const EN_JE = "en_JE";
const EN_LR = "en_LR";
const DYO = "dyo";
const LN = "ln";
const AK_GH = "ak_GH";
const PA_IN = "pa_IN";
const AR_DJ = "ar_DJ";
const EN_BS = "en_BS";
const LO = "lo";
const ZH_TW = "zh_TW";
const LG_UG = "lg_UG";
const AR_KW = "ar_KW";
const AR = "ar";
const BS_CYRL_BA = "bs-Cyrl_BA";
const ES_EA = "es_EA";
const FR_MG = "fr_MG";
const CA_ES = "ca_ES";
const AS = "as";
const HE_IL = "he_IL";
const ES_CU = "es_CU";
const EN_CZ = "en_CZ";
const EN_PL = "en_PL";
const FR_GA = "fr_GA";
const MG_MG = "mg_MG";
const FR_CH = "fr_CH";
const EN_LS = "en_LS";
const LT = "lt";
const MY_MM = "my_MM";
const KK_KZ = "kk_KZ";
const GA = "ga";
const EN_FM = "en_FM";
const LU = "lu";
const PS_AF = "ps_AF";
const NMG = "nmg";
const ES_BO = "es_BO";
const SBP = "sbp";
const LV = "lv";
const VUN = "vun";
const FR_YT = "fr_YT";
const KM_KH = "km_KH";
const TEO_UG = "teo_UG";
const FR_SN = "fr_SN";
const OM_ET = "om_ET";
const AR_ER = "ar_ER";
const GSW_CH = "gsw_CH";
const ES_PH = "es_PH";
const FI_FI = "fi_FI";
const TR_TR = "tr_TR";
const FR_CI = "fr_CI";
const EN_LT = "en_LT";
const EN_UM = "en_UM";
const UR_PK = "ur_PK";
const HR_HR = "hr_HR";
const NL_CW = "nl_CW";
const EN_KN = "en_KN";
const MS_MY = "ms_MY";
const AR_IL = "ar_IL";
const EN_ZM = "en_ZM";
const ES_EC = "es_EC";
const GL_ES = "gl_ES";
const EN_GU = "en_GU";
const GL = "gl";
const NMG_CM = "nmg_CM";
const ZH_MO = "zh_MO";
const EN_NA = "en_NA";
const HA_NE = "ha_NE";
const MT_MT = "mt_MT";
const RM = "rm";
const KW_GB = "kw_GB";
const ZH_SG = "zh_SG";
const RN = "rn";
const RO = "ro";
const RM_CH = "rm_CH";
const SAQ_KE = "saq_KE";
const VAI_LR = "vai_LR";
const KA_GE = "ka_GE";
const ES_GQ = "es_GQ";
const SR_LATN_RS = "sr-Latn_RS";
const EN_VU = "en_VU";
const ZH_HANS_HK = "zh-Hans_HK";
const EN_LV = "en_LV";
const AGQ = "agq";
const GU = "gu";
const LO_LA = "lo_LA";
const RU = "ru";
const EN_SB = "en_SB";
const GV = "gv";
const EN_BW = "en_BW";
const YAV = "yav";
const TA_SG = "ta_SG";
const FR_BE = "fr_BE";
const BG_BG = "bg_BG";
const ES_MX = "es_MX";
const RW = "rw";
const BE = "be";
const ND_ZW = "nd_ZW";
const KAB_DZ = "kab_DZ";
const MUA = "mua";
const PT_CV = "pt_CV";
const BG = "bg";
const TG_TJ = "tg_TJ";
const MS_SG = "ms_SG";
const MG = "mg";
const SG_CF = "sg_CF";
const PA_ARAB_PK = "pa-Arab_PK";
const SW_TZ = "sw_TZ";
const EN_SC = "en_SC";
const NUS = "nus";
const SHI_TFNG = "shi-Tfng";
const AR_QA = "ar_QA";
const NAQ_NA = "naq_NA";
const FR_BF = "fr_BF";
const RW_RW = "rw_RW";
const AS_IN = "as_IN";
const GUZ = "guz";
const KSB = "ksb";
const FR_ML = "fr_ML";
const MK = "mk";
const KOK_IN = "kok_IN";
const SQ_AL = "sq_AL";
const ML = "ml";
const FR_GF = "fr_GF";
const BM = "bm";
const LU_CD = "lu_CD";
const FR_CM = "fr_CM";
const BN = "bn";
const AR_LB = "ar_LB";
const ID_ID = "id_ID";
const UZ_ARAB = "uz-Arab";
const BO = "bo";
const EN_FR = "en_FR";
const EN_DE = "en_DE";
const VAI_LATN_L = "vai-Latn_L";
const AR_SO = "ar_SO";
const RU_BY = "ru_BY";

Methods

MagicObject\Util\PicoPasswordUtil

@@ -35461,11 +35495,11 @@

Description

$hashedPassword = $passwordUtil->getHash('YourSecureP@ssw0rd!');

Constants

-
const ALG_MD2 = 'md2';
const ALG_MD4 = 'md4';
const ALG_MD5 = 'md5';
const ALG_SHA1 = 'sha1';
const ALG_SHA224 = 'sha224';
const ALG_SHA256 = 'sha256';
const ALG_SHA384 = 'sha384';
const ALG_SHA512_224 = 'sha512/224';
const ALG_SHA512_256 = 'sha512/256';
const ALG_SHA512 = 'sha512';
const ALG_SHA3_224 = 'sha3-224';
const ALG_SHA3_256 = 'sha3-256';
const ALG_SHA3_384 = 'sha3-384';
const ALG_SHA3_512 = 'sha3-512';
const ALG_RIPEMD128 = 'ripemd128';
const ALG_RIPEMD160 = 'ripemd160';
const ALG_RIPEMD256 = 'ripemd256';
const ALG_RIPEMD320 = 'ripemd320';
const ALG_WHIRLPOOL = 'whirlpool';
const ALG_TIGER128_3 = 'tiger128,3';
const ALG_TIGER160_3 = 'tiger160,3';
const ALG_TIGER192_3 = 'tiger192,3';
const ALG_TIGER128_4 = 'tiger128,4';
const ALG_TIGER160_4 = 'tiger160,4';
const ALG_TIGER192_4 = 'tiger192,4';
const ALG_SNEFRU = 'snefru';
const ALG_SNEFRU256 = 'snefru256';
const ALG_GOST = 'gost';
const ALG_GOST_CRYPTO = 'gost-crypto';
const ALG_ADLER32 = 'adler32';
const ALG_CRC32 = 'crc32';
const ALG_CRC32B = 'crc32b';
const ALG_CRC32C = 'crc32c';
const ALG_FNV132 = 'fnv132';
const ALG_FNV1A32 = 'fnv1a32';
const ALG_FNV164 = 'fnv164';
const ALG_FNV1A64 = 'fnv1a64';
const ALG_JOAAT = 'joaat';
const ALG_HAVAL128_3 = 'haval128,3';
const ALG_HAVAL160_3 = 'haval160,3';
const ALG_HAVAL192_3 = 'haval192,3';
const ALG_HAVAL224_3 = 'haval224,3';
const ALG_HAVAL256_3 = 'haval256,3';
const ALG_HAVAL128_4 = 'haval128,4';
const ALG_HAVAL160_4 = 'haval160,4';
const ALG_HAVAL192_4 = 'haval192,4';
const ALG_HAVAL224_4 = 'haval224,4';
const ALG_HAVAL256_4 = 'haval256,4';
const ALG_HAVAL128_5 = 'haval128,5';
const ALG_HAVAL160_5 = 'haval160,5';
const ALG_HAVAL192_5 = 'haval192,5';
const ALG_HAVAL224_5 = 'haval224,5';
const ALG_HAVAL256_5 = 'haval256,5';

Properties

+
const ALG_MD2 = "md2";
const ALG_MD4 = "md4";
const ALG_MD5 = "md5";
const ALG_SHA1 = "sha1";
const ALG_SHA224 = "sha224";
const ALG_SHA256 = "sha256";
const ALG_SHA384 = "sha384";
const ALG_SHA512_224 = "sha512/224";
const ALG_SHA512_256 = "sha512/256";
const ALG_SHA512 = "sha512";
const ALG_SHA3_224 = "sha3-224";
const ALG_SHA3_256 = "sha3-256";
const ALG_SHA3_384 = "sha3-384";
const ALG_SHA3_512 = "sha3-512";
const ALG_RIPEMD128 = "ripemd128";
const ALG_RIPEMD160 = "ripemd160";
const ALG_RIPEMD256 = "ripemd256";
const ALG_RIPEMD320 = "ripemd320";
const ALG_WHIRLPOOL = "whirlpool";
const ALG_TIGER128_3 = "tiger128,3";
const ALG_TIGER160_3 = "tiger160,3";
const ALG_TIGER192_3 = "tiger192,3";
const ALG_TIGER128_4 = "tiger128,4";
const ALG_TIGER160_4 = "tiger160,4";
const ALG_TIGER192_4 = "tiger192,4";
const ALG_SNEFRU = "snefru";
const ALG_SNEFRU256 = "snefru256";
const ALG_GOST = "gost";
const ALG_GOST_CRYPTO = "gost-crypto";
const ALG_ADLER32 = "adler32";
const ALG_CRC32 = "crc32";
const ALG_CRC32B = "crc32b";
const ALG_CRC32C = "crc32c";
const ALG_FNV132 = "fnv132";
const ALG_FNV1A32 = "fnv1a32";
const ALG_FNV164 = "fnv164";
const ALG_FNV1A64 = "fnv1a64";
const ALG_JOAAT = "joaat";
const ALG_HAVAL128_3 = "haval128,3";
const ALG_HAVAL160_3 = "haval160,3";
const ALG_HAVAL192_3 = "haval192,3";
const ALG_HAVAL224_3 = "haval224,3";
const ALG_HAVAL256_3 = "haval256,3";
const ALG_HAVAL128_4 = "haval128,4";
const ALG_HAVAL160_4 = "haval160,4";
const ALG_HAVAL192_4 = "haval192,4";
const ALG_HAVAL224_4 = "haval224,4";
const ALG_HAVAL256_4 = "haval256,4";
const ALG_HAVAL128_5 = "haval128,5";
const ALG_HAVAL160_5 = "haval160,5";
const ALG_HAVAL192_5 = "haval192,5";
const ALG_HAVAL224_5 = "haval224,5";
const ALG_HAVAL256_5 = "haval256,5";

Properties

1. regex

Declaration

-
private string $regex = '/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{%d,}$/';
+
private string $regex = '/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{%d,}$/';

Description

Regular expression format for password validation.

@@ -35487,7 +35521,7 @@

Description

3. hashAlgorithm

Declaration

-
private string $hashAlgorithm = 'sha1';
+
private string $hashAlgorithm = 'sha1';

Description

Hash algorithm to be used for password hashing.

@@ -36522,7 +36556,7 @@

Description

thereby avoiding confusion for users when debugging code errors.

Constants

-
const REMPTY = '' . "\0" . '' . "\0" . '' . "\0" . '' . "\0" . '' . "\0" . '';

Properties

+
const REMPTY = "' . "\0" . '' . "\0" . '' . "\0" . '' . "\0" . '' . "\0" . '";

Properties

1. dumpForceQuotes

Declaration

@@ -36600,7 +36634,7 @@

Description

9. literalPlaceHolder

Declaration

-
private string $literalPlaceHolder = '___YAML_Literal_Block___';
+
private string $literalPlaceHolder = '___YAML_Literal_Block___';

Description

Placeholder for YAML literal blocks.

@@ -37738,14 +37772,14 @@

Properties

1. encodingFrom

Declaration

-
private string $encodingFrom The source encoding (default is ISO-8859-2). $encodingFrom = 'ISO-8859-2';
+
private string $encodingFrom The source encoding (default is ISO-8859-2). $encodingFrom = 'ISO-8859-2';
2. encodingTo

Declaration

-
private string $encodingTo The target encoding (default is UTF-8). $encodingTo = 'UTF-8';
+
private string $encodingTo The target encoding (default is UTF-8). $encodingTo = 'UTF-8';
@@ -37776,32 +37810,32 @@

Declaration

4. mapChrString

Declaration

private array $mapChrString Mapping of character codes to HTML entities. $mapChrString = array ( - 128 => '&euro;', - 130 => '&sbquo;', - 132 => '&bdquo;', - 133 => '&hellip;', - 134 => '&dagger;', - 135 => '&Dagger;', - 137 => '&permil;', - 139 => '&lsaquo;', - 145 => '&lsquo;', - 146 => '&rsquo;', - 147 => '&ldquo;', - 148 => '&rdquo;', - 149 => '&bull;', - 150 => '&ndash;', - 151 => '&mdash;', - 153 => '&trade;', - 155 => '&rsquo;', - 166 => '&brvbar;', - 169 => '&copy;', - 171 => '&laquo;', - 174 => '&reg;', - 177 => '&plusmn;', - 181 => '&micro;', - 182 => '&para;', - 183 => '&middot;', - 187 => '&raquo;', + 128 => '&euro;', + 130 => '&sbquo;', + 132 => '&bdquo;', + 133 => '&hellip;', + 134 => '&dagger;', + 135 => '&Dagger;', + 137 => '&permil;', + 139 => '&lsaquo;', + 145 => '&lsquo;', + 146 => '&rsquo;', + 147 => '&ldquo;', + 148 => '&rdquo;', + 149 => '&bull;', + 150 => '&ndash;', + 151 => '&mdash;', + 153 => '&trade;', + 155 => '&rsquo;', + 166 => '&brvbar;', + 169 => '&copy;', + 171 => '&laquo;', + 174 => '&reg;', + 177 => '&plusmn;', + 181 => '&micro;', + 182 => '&para;', + 183 => '&middot;', + 187 => '&raquo;', );