Merge pull request #52862 from nextcloud/feat/mimes-names

This commit is contained in:
John Molakvoæ 2025-05-15 17:44:35 +02:00 committed by GitHub
commit 1987b176a5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 143 additions and 12 deletions

View file

@ -97,6 +97,7 @@
import { FileType, formatFileSize } from '@nextcloud/files'
import { useHotKey } from '@nextcloud/vue/composables/useHotKey'
import { defineComponent } from 'vue'
import { t } from '@nextcloud/l10n'
import NcDateTime from '@nextcloud/vue/components/NcDateTime'
import { useNavigation } from '../composables/useNavigation.ts'
@ -208,6 +209,25 @@ export default defineComponent({
return t('files', 'Unknown file type')
}
if (window.OC?.MimeTypeList?.names?.[this.source.mime]) {
return window.OC.MimeTypeList.names[this.source.mime]
}
const baseType = this.source.mime.split('/')[0]
const ext = this.source?.extension?.toUpperCase().replace(/^\./, '') || ''
if (baseType === 'image') {
return t('files', '{ext} image', { ext })
}
if (baseType === 'video') {
return t('files', '{ext} video', { ext })
}
if (baseType === 'audio') {
return t('files', '{ext} audio', { ext })
}
if (baseType === 'text') {
return t('files', '{ext} text', { ext })
}
return this.source.mime
},
size() {

View file

@ -73,7 +73,7 @@ class GenerateMimetypeFileBuilder {
$namesOutput = '';
foreach ($names as $key => $name) {
if (str_starts_with($key, '_')) {
if (str_starts_with($key, '_') || trim($name) === '') {
// Skip internal names
continue;
}

View file

@ -152,12 +152,19 @@ OC.MimeTypeList={
"x-office-spreadsheet"
],
themes: [],
names: {'application/epub+zip': t('core', "Electronic book document"),
names: {'application/cmd': t('core', "Windows Command Script"),
'application/epub+zip': t('core', "Electronic book document"),
'application/font-sfnt': t('core', "TrueType Font Collection"),
'application/font-woff': t('core', "Web Open Font Format"),
'application/gpx+xml': t('core', "GPX geographic data"),
'application/gzip': t('core', "Gzip archive"),
'application/illustrator': t('core', "Adobe Illustrator document"),
'application/java': t('core', "Java source code"),
'application/javascript': t('core', "JavaScript source code"),
'application/json': t('core', "JSON document"),
'application/msword': t('core', "Word document"),
'application/msaccess': t('core', "Microsoft Access database"),
'application/msonenote': t('core', "Microsoft OneNote document"),
'application/msword': t('core', "Microsoft Word document"),
'application/octet-stream': t('core', "Unknown"),
'application/pdf': t('core', "PDF document"),
'application/postscript': t('core', "PostScript document"),
@ -171,6 +178,7 @@ OC.MimeTypeList={
'application/vnd.ms-excel.sheet.binary.macroEnabled.12': t('core', "Excel 2007 binary spreadsheet"),
'application/vnd.ms-excel.sheet.macroEnabled.12': t('core', "Excel spreadsheet"),
'application/vnd.ms-excel.template.macroEnabled.12': t('core', "Excel spreadsheet template"),
'application/vnd.ms-outlook': t('core', "Outlook Message"),
'application/vnd.ms-powerpoint': t('core', "PowerPoint presentation"),
'application/vnd.ms-powerpoint.addin.macroEnabled.12': t('core', "PowerPoint add-in"),
'application/vnd.ms-powerpoint.presentation.macroEnabled.12': t('core', "PowerPoint presentation"),
@ -202,7 +210,9 @@ OC.MimeTypeList={
'application/x-7z-compressed': t('core', "7-zip archive"),
'application/x-blender': t('core', "Blender scene"),
'application/x-bzip2': t('core', "Bzip2 archive"),
'application/x-deb': t('core', "Debian package"),
'application/x-fictionbook+xml': t('core', "FictionBook document"),
'application/x-font': t('core', "Unknown font"),
'application/x-krita': t('core', "Krita document"),
'application/x-mobipocket-ebook': t('core', "Mobipocket e-book"),
'application/x-msi': t('core', "Windows Installer package"),
@ -218,19 +228,24 @@ OC.MimeTypeList={
'audio/mp4': t('core', "MPEG-4 audio"),
'audio/mpeg': t('core', "MP3 audio"),
'audio/ogg': t('core', "Ogg audio"),
'audio/wav': t('core', "RIFF\/WAVe standard Audio"),
'audio/webm': t('core', "WebM audio"),
'audio/x-scpls': t('core', "MP3 ShoutCast playlist"),
'image/bmp': t('core', "Windows BMP image"),
'image/bpg': t('core', "Better Portable Graphics image"),
'image/emf': t('core', "EMF image"),
'image/gif': t('core', "GIF image"),
'image/heic': t('core', "HEIC image"),
'image/heif': t('core', "HEIF image"),
'image/jp2': t('core', "JPEG-2000 JP2 image"),
'image/jpeg': t('core', "JPEG image"),
'image/png': t('core', "PNG image"),
'image/svg+xml': t('core', "SVG image"),
'image/tga': t('core', "Truevision Targa image"),
'image/tiff': t('core', "TIFF image"),
'image/webp': t('core', "WebP image"),
'image/x-dcraw': t('core', "Digital raw image"),
'image/x-icon': t('core', "Windows Icon"),
'message/rfc822': t('core', "Email message"),
'text/calendar': t('core', "VCS\/ICS calendar"),
'text/css': t('core', "CSS stylesheet"),
@ -239,13 +254,17 @@ OC.MimeTypeList={
'text/markdown': t('core', "Markdown document"),
'text/org': t('core', "Org-mode file"),
'text/plain': t('core', "Plain text document"),
'text/rtf': t('core', "Rich Text document"),
'text/vcard': t('core', "Electronic business card"),
'text/x-c++src': t('core', "C++ source code"),
'text/x-java-source': t('core', "Java source code"),
'text/x-ldif': t('core', "LDIF address book"),
'text/x-nfo': t('core', "NFO document"),
'text/x-php': t('core', "PHP source"),
'text/x-python': t('core', "Python script"),
'text/x-rst': t('core', "ReStructuredText document"),
'video/3gpp': t('core', "3GPP multimedia file"),
'video/MP2T': t('core', "MPEG video"),
'video/dv': t('core', "DV video"),
'video/mp2t': t('core', "MPEG-2 transport stream"),
'video/mp4': t('core', "MPEG-4 video"),
@ -256,5 +275,6 @@ OC.MimeTypeList={
'video/x-flv': t('core', "Flash video"),
'video/x-matroska': t('core', "Matroska video"),
'video/x-ms-wmv': t('core', "Windows Media video"),
'video/x-msvideo': t('core', "AVI video"),
},
};

4
dist/files-main.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -48,6 +48,7 @@ while read -r MIME; do
MATCHED_COUNT=$((MATCHED_COUNT + 1))
else
echo " > Warning: No description found for MIME type $MIME ⚠️"
jq --arg key "$MIME" --arg value "" '. + {($key): $value}' "$OUTPUT_JSON.tmp" > "$OUTPUT_JSON.tmp2" && mv "$OUTPUT_JSON.tmp2" "$OUTPUT_JSON.tmp"
MISSING_COUNT=$((MISSING_COUNT + 1))
fi
done <<< "$MIME_TYPES"

View file

@ -5,17 +5,38 @@
"_comment4": "After any change to mimetypenames.json run:",
"_comment5": "./occ maintenance:mimetype:update-js",
"_comment6": "Otherwise your update won't propagate through the system.",
"_comment7": "You can search for missing formats in https://www.digipres.org/formats/.",
"_comment8": "You can also try to autocomplete missing formats by executing the mimetypenames-update.sh script.",
"application/cmd": "Windows Command Script",
"application/comicbook+7z": "",
"application/comicbook+ace": "",
"application/comicbook+rar": "",
"application/comicbook+tar": "",
"application/comicbook+truecrypt": "",
"application/comicbook+zip": "",
"application/coreldraw": "",
"application/epub+zip": "Electronic book document",
"application/font-sfnt": "TrueType Font Collection",
"application/font-woff": "Web Open Font Format",
"application/gpx+xml": "GPX geographic data",
"application/gzip": "Gzip archive",
"application/illustrator": "Adobe Illustrator document",
"application/internet-shortcut": "",
"application/java": "Java source code",
"application/javascript": "JavaScript source code",
"application/json": "JSON document",
"application/msword": "Word document",
"application/km": "",
"application/msaccess": "Microsoft Access database",
"application/msonenote": "Microsoft OneNote document",
"application/msword": "Microsoft Word document",
"application/octet-stream": "Unknown",
"application/pdf": "PDF document",
"application/postscript": "PostScript document",
"application/rss+xml": "RSS summary",
"application/sgf": "",
"application/vnd.android.package-archive": "Android package",
"application/vnd.excalidraw+json": "",
"application/vnd.garmin.tcx+xml": "",
"application/vnd.google-earth.kml+xml": "KML geographic data",
"application/vnd.google-earth.kmz": "KML geographic compressed data",
"application/vnd.lotus-wordpro": "Lotus Word Pro document",
@ -24,11 +45,19 @@
"application/vnd.ms-excel.sheet.binary.macroEnabled.12": "Excel 2007 binary spreadsheet",
"application/vnd.ms-excel.sheet.macroEnabled.12": "Excel spreadsheet",
"application/vnd.ms-excel.template.macroEnabled.12": "Excel spreadsheet template",
"application/vnd.ms-fontobject": "",
"application/vnd.ms-outlook": "Outlook Message",
"application/vnd.ms-powerpoint": "PowerPoint presentation",
"application/vnd.ms-powerpoint.addin.macroEnabled.12": "PowerPoint add-in",
"application/vnd.ms-powerpoint.presentation.macroEnabled.12": "PowerPoint presentation",
"application/vnd.ms-powerpoint.slideshow.macroEnabled.12": "PowerPoint presentation",
"application/vnd.ms-powerpoint.template.macroEnabled.12": "PowerPoint presentation template",
"application/vnd.ms-visio.drawing": "",
"application/vnd.ms-visio.drawing.macroEnabled.12": "",
"application/vnd.ms-visio.stencil": "",
"application/vnd.ms-visio.stencil.macroEnabled.12": "",
"application/vnd.ms-visio.template": "",
"application/vnd.ms-visio.template.macroEnabled.12": "",
"application/vnd.ms-word.document.macroEnabled.12": "Word document",
"application/vnd.oasis.opendocument.formula": "ODF formula",
"application/vnd.oasis.opendocument.graphics": "ODG drawing",
@ -49,57 +78,97 @@
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": "Excel 2007 spreadsheet",
"application/vnd.openxmlformats-officedocument.spreadsheetml.template": "Excel 2007 spreadsheet template",
"application/vnd.openxmlformats-officedocument.wordprocessingml.document": "Word 2007 document",
"application/vnd.openxmlformats-officedocument.wordprocessingml.document.docxf": "",
"application/vnd.openxmlformats-officedocument.wordprocessingml.document.oform": "",
"application/vnd.openxmlformats-officedocument.wordprocessingml.template": "Word 2007 document template",
"application/vnd.recordare.musicxml": "",
"application/vnd.recordare.musicxml+xml": "",
"application/vnd.visio": "Microsoft Visio document",
"application/vnd.wordperfect": "WordPerfect document",
"application/vnd.xmind.workbook": "",
"application/x-7z-compressed": "7-zip archive",
"application/x-bin": "",
"application/x-blender": "Blender scene",
"application/x-bzip2": "Bzip2 archive",
"application/x-cbr": "",
"application/x-deb": "Debian package",
"application/x-fictionbook+xml": "FictionBook document",
"application/x-font": "Unknown font",
"application/x-freemind": "",
"application/x-gimp": "",
"application/x-iwork-keynote-sffkey": "",
"application/x-iwork-numbers-sffnumbers": "",
"application/x-iwork-pages-sffpages": "",
"application/x-kdbx": "",
"application/x-krita": "Krita document",
"application/x-mobipocket-ebook": "Mobipocket e-book",
"application/x-ms-dos-executable": "",
"application/x-msdos-program": "",
"application/x-msi": "Windows Installer package",
"application/x-perl": "Perl script",
"application/x-photoshop": "",
"application/x-php": "PHP script",
"application/x-rar-compressed": "",
"application/x-shockwave-flash": "",
"application/x-tar": "Tar archive",
"application/x-tex": "",
"application/xml": "XML document",
"application/yaml": "YAML document",
"application/zip": "Zip archive",
"application/zstd": "Zstandard archive",
"audio/aac": "AAC audio",
"audio/flac": "FLAC audio",
"audio/m4b": "",
"audio/mp4": "MPEG-4 audio",
"audio/mpeg": "MP3 audio",
"audio/mpegurl": "",
"audio/ogg": "Ogg audio",
"audio/wav": "RIFF/WAVe standard Audio",
"audio/webm": "WebM audio",
"audio/x-scpls": "MP3 ShoutCast playlist",
"image/bmp": "Windows BMP image",
"image/bpg": "Better Portable Graphics image",
"image/emf": "EMF image",
"image/gif": "GIF image",
"image/heic": "HEIC image",
"image/heif": "HEIF image",
"image/jp2": "JPEG-2000 JP2 image",
"image/jpeg": "JPEG image",
"image/png": "PNG image",
"image/sgi": "",
"image/svg+xml": "SVG image",
"image/tga": "Truevision Targa image",
"image/tiff": "TIFF image",
"image/webp": "WebP image",
"image/x-dcraw": "Digital raw image",
"image/x-icon": "Windows Icon",
"message/rfc822": "Email message",
"text/asciidoc": "",
"text/calendar": "VCS/ICS calendar",
"text/css": "CSS stylesheet",
"text/csv": "CSV document",
"text/html": "HTML document",
"text/impress": "",
"text/markdown": "Markdown document",
"text/org": "Org-mode file",
"text/plain": "Plain text document",
"text/reveal": "",
"text/rtf": "Rich Text document",
"text/vcard": "Electronic business card",
"text/x-c": "",
"text/x-c++src": "C++ source code",
"text/x-h": "",
"text/x-java-source": "Java source code",
"text/x-ldif": "LDIF address book",
"text/x-nfo": "NFO document",
"text/x-php": "PHP source",
"text/x-python": "Python script",
"text/x-rst": "ReStructuredText document",
"text/x-shellscript": "",
"video/3gpp": "3GPP multimedia file",
"video/MP2T": "MPEG video",
"video/dv": "DV video",
"video/dvd": "",
"video/mp2t": "MPEG-2 transport stream",
"video/mp4": "MPEG-4 video",
"video/mpeg": "MPEG video",
@ -108,5 +177,6 @@
"video/webm": "WebM video",
"video/x-flv": "Flash video",
"video/x-matroska": "Matroska video",
"video/x-ms-wmv": "Windows Media video"
"video/x-ms-wmv": "Windows Media video",
"video/x-msvideo": "AVI video"
}

View file

@ -153,12 +153,19 @@ OC.MimeTypeList={
"x-office-spreadsheet"
],
themes: [],
names: {'application/epub+zip': t('core', "Electronic book document"),
names: {'application/cmd': t('core', "Windows Command Script"),
'application/epub+zip': t('core', "Electronic book document"),
'application/font-sfnt': t('core', "TrueType Font Collection"),
'application/font-woff': t('core', "Web Open Font Format"),
'application/gpx+xml': t('core', "GPX geographic data"),
'application/gzip': t('core', "Gzip archive"),
'application/illustrator': t('core', "Adobe Illustrator document"),
'application/java': t('core', "Java source code"),
'application/javascript': t('core', "JavaScript source code"),
'application/json': t('core', "JSON document"),
'application/msword': t('core', "Word document"),
'application/msaccess': t('core', "Microsoft Access database"),
'application/msonenote': t('core', "Microsoft OneNote document"),
'application/msword': t('core', "Microsoft Word document"),
'application/octet-stream': t('core', "Unknown"),
'application/pdf': t('core', "PDF document"),
'application/postscript': t('core', "PostScript document"),
@ -172,6 +179,7 @@ OC.MimeTypeList={
'application/vnd.ms-excel.sheet.binary.macroEnabled.12': t('core', "Excel 2007 binary spreadsheet"),
'application/vnd.ms-excel.sheet.macroEnabled.12': t('core', "Excel spreadsheet"),
'application/vnd.ms-excel.template.macroEnabled.12': t('core', "Excel spreadsheet template"),
'application/vnd.ms-outlook': t('core', "Outlook Message"),
'application/vnd.ms-powerpoint': t('core', "PowerPoint presentation"),
'application/vnd.ms-powerpoint.addin.macroEnabled.12': t('core', "PowerPoint add-in"),
'application/vnd.ms-powerpoint.presentation.macroEnabled.12': t('core', "PowerPoint presentation"),
@ -203,7 +211,9 @@ OC.MimeTypeList={
'application/x-7z-compressed': t('core', "7-zip archive"),
'application/x-blender': t('core', "Blender scene"),
'application/x-bzip2': t('core', "Bzip2 archive"),
'application/x-deb': t('core', "Debian package"),
'application/x-fictionbook+xml': t('core', "FictionBook document"),
'application/x-font': t('core', "Unknown font"),
'application/x-krita': t('core', "Krita document"),
'application/x-mobipocket-ebook': t('core', "Mobipocket e-book"),
'application/x-msi': t('core', "Windows Installer package"),
@ -219,19 +229,24 @@ OC.MimeTypeList={
'audio/mp4': t('core', "MPEG-4 audio"),
'audio/mpeg': t('core', "MP3 audio"),
'audio/ogg': t('core', "Ogg audio"),
'audio/wav': t('core', "RIFF\/WAVe standard Audio"),
'audio/webm': t('core', "WebM audio"),
'audio/x-scpls': t('core', "MP3 ShoutCast playlist"),
'image/bmp': t('core', "Windows BMP image"),
'image/bpg': t('core', "Better Portable Graphics image"),
'image/emf': t('core', "EMF image"),
'image/gif': t('core', "GIF image"),
'image/heic': t('core', "HEIC image"),
'image/heif': t('core', "HEIF image"),
'image/jp2': t('core', "JPEG-2000 JP2 image"),
'image/jpeg': t('core', "JPEG image"),
'image/png': t('core', "PNG image"),
'image/svg+xml': t('core', "SVG image"),
'image/tga': t('core', "Truevision Targa image"),
'image/tiff': t('core', "TIFF image"),
'image/webp': t('core', "WebP image"),
'image/x-dcraw': t('core', "Digital raw image"),
'image/x-icon': t('core', "Windows Icon"),
'message/rfc822': t('core', "Email message"),
'text/calendar': t('core', "VCS\/ICS calendar"),
'text/css': t('core', "CSS stylesheet"),
@ -240,13 +255,17 @@ OC.MimeTypeList={
'text/markdown': t('core', "Markdown document"),
'text/org': t('core', "Org-mode file"),
'text/plain': t('core', "Plain text document"),
'text/rtf': t('core', "Rich Text document"),
'text/vcard': t('core', "Electronic business card"),
'text/x-c++src': t('core', "C++ source code"),
'text/x-java-source': t('core', "Java source code"),
'text/x-ldif': t('core', "LDIF address book"),
'text/x-nfo': t('core', "NFO document"),
'text/x-php': t('core', "PHP source"),
'text/x-python': t('core', "Python script"),
'text/x-rst': t('core', "ReStructuredText document"),
'video/3gpp': t('core', "3GPP multimedia file"),
'video/MP2T': t('core', "MPEG video"),
'video/dv': t('core', "DV video"),
'video/mp2t': t('core', "MPEG-2 transport stream"),
'video/mp4': t('core', "MPEG-4 video"),
@ -257,6 +276,7 @@ OC.MimeTypeList={
'video/x-flv': t('core', "Flash video"),
'video/x-matroska': t('core', "Matroska video"),
'video/x-ms-wmv': t('core', "Windows Media video"),
'video/x-msvideo': t('core', "AVI video"),
'my-custom/mimetype': t('core', "Custom Document"),
},
};

View file

@ -1,7 +1,7 @@
{
"hashes": {
"core\/js\/mimetypelist.js": "1f672ccc11dd5f0cf8753461476b05fbf6fec018db00fc59b074947953ba99481103f84ace140255995278da7ef4e3b49d263cc29a4b29786fb19413083fe928"
"core\/js\/mimetypelist.js": "1bb7ea82996776ad23da2841beefe7b80b3d25d410c6aaf53f73d094705ad95694520427888c16922286645208d7619de3c71c9c8e22c13dabc7c8bf26c92b57"
},
"signature": "V7eDZqrauafx5b\/taQ0Z2GYyuX6gjLU2\/igpQxs4o3YGG+ruBNk5PFoJxBbLogt5QrUIPilVJy3+2f4BkzWl7E2El51d2O+Ctg+cWATCvF6SJyhCdzZQLknyLXr4n+r7FlvHpiSQ8c88Aq2gNrBpK34Lq7YKjfln7q19vWIGUIYcE5gJJzhloSTF76\/yq3gIw48EXVrYMdT0nhE5zzk+pKJSvJCmtZGeyocXfHdRKGViH1egKvB8AJkTMByDbLKd9ZXhGrrQ1QWtJHLCDLrv6oBykz7N9J8yRbrKXjeuBtDAUfYHZeUbx7DYStNEWa3npXtst1HSJ7mMV5QYT9S9HbQp7qMQQBoze81QH3DS7jpksSkRr5w\/kE6FiNe8B8s56DMrNUo6NOFhsNRZF\/SNkVMgbRuckpCDHAE6hkz3+DwTQB7uYGu3qc965Yxn9YiGD83ep++c9CkEMOQL2q+CftbVMXVjF++Ml9P\/9N+ARF1t9mffEC8vOGaU1OR6DmPsbl1mlvkdP1RMKwa3Kp0nWEsWhDjjcB9b1hf4KCsPb6iiiyAV21qgigK73Aq\/8NRy0RlNB4rWsbb1NAV2tnnrJRbwdJrtS5dvTBADmsazt73jzkpc36vJNhBRaMUKTW05x7wnrw9K6MQDkjLuzfXJQWEJQtr+4dP9oyasamBufKc=",
"signature": "g+orHgCwPo9+RODiV5AgTdXTeQrN0avYsww7M1jHefef12kPX38MDUVWaMYYjEMw3r7G9pgHqfBPzQcZ4WmTaPnUm7E3Anb8P71jTpFwOzKdR4o\/uu1QfEeMcIMNfoD7ikkg4IKsroD+XreRPJOxVL81Ouse+QnTOGcicUS2V2uFFxc9Is7I9TeGCVawWzDYOLXkbTGRekSS863vz3tdmgCEmFCcCd498GHPTnkCvm5D52zqbeJCnVitjNzvtPY+zUmEpei\/CMOQoAQul9\/bP\/89bSgOgJYaWIgmN7X3FGuPOAiS62XZ6eBlBDdjT67m8VbVw75zFY3HV6YwrcOri6zvTv4Uc6Xy2fm+mxNuIkn+0vnOnhik0bW46gFFpBlBrFbMS7fZgPhvjLwkew1GjL+sAnejnuLEUYVHbisJr4CtmkJFzeG\/WK85PQOTPfHiZd550vu7RH8sYrRpXHrAFu\/w4Ziw93CJO0CU0xXHATmtb9mn47dtsXLEYw0NbZWMxWAV7JPGHbW6qxn1nYm+1aKpm+UEhZ2ZbBW5LnGEGU+hTg7LpR9OHyvo2ASORvrgWF5c4S3US8MRLXmDrv76Oux0WaktRNZUm7W0r9HyUCkCdzOJi4ZWB1w951wJgvplTDWQtYkZ3T7ujsRPT6YGH\/WvvBSKcLKi5PcZUmCiH\/Q=",
"certificate": "-----BEGIN CERTIFICATE-----\r\nMIIEvjCCAqagAwIBAgIUc\/0FxYrsgSs9rDxp03EJmbjN0NwwDQYJKoZIhvcNAQEF\r\nBQAwIzEhMB8GA1UECgwYb3duQ2xvdWQgQ29kZSBTaWduaW5nIENBMB4XDTE1MTEw\r\nMzIxMDMzM1oXDTE2MTEwMzIxMDMzM1owDzENMAsGA1UEAwwEY29yZTCCAiIwDQYJ\r\nKoZIhvcNAQEBBQADggIPADCCAgoCggIBALb6EgHpkAqZbO5vRO8XSh7G7XGWHw5s\r\niOf4RwPXR6SE9bWZEm\/b72SfWk\/\/J6AbrD8WiOzBuT\/ODy6k5T1arEdHO+Pux0W1\r\nMxYJJI4kH74KKgMpC0SB0Rt+8WrMqV1r3hhJ46df6Xr\/xolP3oD+eLbShPcblhdS\r\nVtkZEkoev8Sh6L2wDCeHDyPxzvj1w2dTdGVO9Kztn0xIlyfEBakqvBWtcxyi3Ln0\r\nklnxlMx3tPDUE4kqvpia9qNiB1AN2PV93eNr5\/2riAzIssMFSCarWCx0AKYb54+d\r\nxLpcYFyqPJ0ydBCkF78DD45RCZet6PNYkdzgbqlUWEGGomkuDoJbBg4wzgzO0D77\r\nH87KFhYW8tKFFvF1V3AHl\/sFQ9tDHaxM9Y0pZ2jPp\/ccdiqnmdkBxBDqsiRvHvVB\r\nCn6qpb4vWGFC7vHOBfYspmEL1zLlKXZv3ezMZEZw7O9ZvUP3VO\/wAtd2vUW8UFiq\r\ns2v1QnNLN6jNh51obcwmrBvWhJy9vQIdtIjQbDxqWTHh1zUSrw9wrlklCBZ\/zrM0\r\ni8nfCFwTxWRxp3H9KoECzO\/zS5R5KIS7s3\/wq\/w9T2Ie4rcecgXwDizwnn0C\/aKc\r\nbDIjujpL1s9HO05pcD\/V3wKcPZ1izymBkmMyIbL52iRVN5FTVHeZdXPpFuq+CTQJ\r\nQ238lC+A\/KOVAgMBAAEwDQYJKoZIhvcNAQEFBQADggIBAGoKTnh8RfJV4sQItVC2\r\nAvfJagkrIqZ3iiQTUBQGTKBsTnAqE1H7QgUSV9vSd+8rgvHkyZsRjmtyR1e3A6Ji\r\noNCXUbExC\/0iCPUqdHZIVb+Lc\/vWuv4ByFMybGPydgtLoEUX2ZrKFWmcgZFDUSRd\r\n9Uj26vtUhCC4bU4jgu6hIrR9IuxOBLQUxGTRZyAcXvj7obqRAEZwFAKQgFpfpqTb\r\nH+kjcbZSaAlLVSF7vBc1syyI8RGYbqpwvtREqJtl5IEIwe6huEqJ3zPnlP2th\/55\r\ncf3Fovj6JJgbb9XFxrdnsOsDOu\/tpnaRWlvv5ib4+SzG5wWFT5UUEo4Wg2STQiiX\r\nuVSRQxK1LE1yg84bs3NZk9FSQh4B8vZVuRr5FaJsZZkwlFlhRO\/\/+TJtXRbyNgsf\r\noMRZGi8DLGU2SGEAHcRH\/QZHq\/XDUWVzdxrSBYcy7GSpT7UDVzGv1rEJUrn5veP1\r\n0KmauAqtiIaYRm4f6YBsn0INcZxzIPZ0p8qFtVZBPeHhvQtvOt0iXI\/XUxEWOa2F\r\nK2EqhErgMK\/N07U1JJJay5tYZRtvkGq46oP\/5kQG8hYST0MDK6VihJoPpvCmAm4E\r\npEYKQ96x6A4EH9Y9mZlYozH\/eqmxPbTK8n89\/p7Ydun4rI+B2iiLnY8REWWy6+UQ\r\nV204fGUkJqW5CrKy3P3XvY9X\r\n-----END CERTIFICATE-----"
}