diff options
Diffstat (limited to 'src')
180 files changed, 7230 insertions, 7969 deletions
diff --git a/src/_locales/ar/messages.json b/src/_locales/ar/messages.json index 217f7f5c..6868e013 100644 --- a/src/_locales/ar/messages.json +++ b/src/_locales/ar/messages.json @@ -8,7 +8,7 @@ "description": "description of the extension" }, "switchInstance": { - "message": "تبديل النظير", + "message": "تبديل النُسخة", "description": "used in the popup" }, "settings": { @@ -80,12 +80,11 @@ "description": "used in the settings page" }, "addYourFavoriteInstances": { - "message": "أضف نظرائك المفضلين", + "message": "أضِف نُسخك المُفضلة", "description": "used in the settings page" }, - "copyRaw": { - "message": "الرابط الأصلي", - "description": "used in the popup" + "copyOriginal": { + "message": "Copy Original" }, "copied": { "message": "تم النسخ", @@ -103,12 +102,60 @@ "message": "عن" }, "unsupportedIframesHandling": { - "message": "التعامل مع إطارات iframe غير المدعومة" + "message": "التعامل مع embeds غير المدعوم" }, "fetchPublicInstances": { - "message": "جلب الخوادم العامة" + "message": "اجلب النُسخ العامة" }, "disable": { "message": "عطّل" + }, + "pingInstances": { + "message": "بينج النُسخ" + }, + "exportSettingsToSync": { + "message": "Export Settings to Sync" + }, + "importSettingsFromSync": { + "message": "Import Settings from Sync" + }, + "services": { + "message": "Services" + }, + "service": { + "message": "Service" + }, + "bookmarksMenu": { + "message": "Bookmarks menu" + }, + "redirectOnlyInIncognito": { + "message": "Redirect Only in Incognito" + }, + "bypass": { + "message": "Bypass" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>here</a>." + }, + "redirect": { + "message": "Redirect" + }, + "autoPickInstance": { + "message": "اختر النُسخ تلقائيًا" + }, + "redirectGoogle": { + "message": "إعادة توجيه جوجل" + }, + "search_frontend": { + "message": "واجهة البحث" + }, + "searchService": { + "message": "خدمة البحث" + }, + "embedFrontend": { + "message": "واجهة Embed" } } \ No newline at end of file diff --git a/src/_locales/bn/messages.json b/src/_locales/bn/messages.json index cdde0c45..60b91d65 100644 --- a/src/_locales/bn/messages.json +++ b/src/_locales/bn/messages.json @@ -1,22 +1,42 @@ { - "dark": { - "message": "অন্ধকার", + "extensionName": { + "message": "লিবরিডাইরেক্ট", + "description": "name of the extension" + }, + "extensionDescription": { + "message": "একটি ওয়েব এক্সটেনশন যা জনপ্রিয় সাইটগুলোকে বিকল্প গোপনীয়তা-বান্ধব ফ্রন্টএন্ড এবং ব্যাকএন্ডে পুনর্নির্দেশ করে", + "description": "description of the extension" + }, + "switchInstance": { + "message": "ইন্সট্যান্স পাল্টাও", + "description": "used in manifest.json as shortcut description" + }, + "settings": { + "message": "পছন্দসমূহ", + "description": "used in the popup" + }, + "general": { + "message": "সাধারণ", "description": "used in the settings page" }, - "auto": { - "message": "স্বয়ংক্রিয়", + "theme": { + "message": "রঙ", "description": "used in the settings page" }, - "enable": { - "message": "সক্রিয়", + "light": { + "message": "সাদা", "description": "used in the settings page" }, - "frontend": { - "message": "সামনের অংশ", + "dark": { + "message": "অন্ধকার", "description": "used in the settings page" }, - "both": { - "message": "উভয়", + "auto": { + "message": "স্বয়ংক্রিয়", + "description": "used in the settings page" + }, + "excludeFromRedirecting": { + "message": "পুনঃনির্দেশ থেকে বাদ দেওয়া", "description": "used in the settings page" }, "importSettings": { @@ -31,73 +51,95 @@ "message": "পছন্দসমূহ সহজাত অবস্থায় ফিরত নাও", "description": "used in the settings page" }, + "enable": { + "message": "সক্রিয়", + "description": "used in the settings page" + }, + "showInPopup": { + "message": "পপআপে দেখাও", + "description": "used in the settings page" + }, + "frontend": { + "message": "সামনের অংশ", + "description": "used in the settings page" + }, "redirectType": { "message": "পুনঃনির্দেশ ধরণ", "description": "used in the settings page" }, - "excludeFromRedirecting": { - "message": "পুনঃনির্দেশ থেকে বাদ দেওয়া", + "both": { + "message": "উভয়", "description": "used in the settings page" }, - "showInPopup": { - "message": "পপআপে দেখাও", + "onlyEmbedded": { + "message": "শুধু এমবেডকৃত", "description": "used in the settings page" }, - "copyRaw": { - "message": "কাঁচা অনুলিপি" - }, "onlyNotEmbedded": { "message": "এমবেডকৃত নয়", "description": "used in the settings page" }, - "about": { - "message": "আমাদের সম্পর্কে" + "addYourFavoriteInstances": { + "message": "পছন্দের ইন্সট্যান্স যোগ করো", + "description": "used in the settings page" + }, + "copyOriginal": { + "message": "Copy Original" + }, + "copied": { + "message": "অনুলিপিত" + }, + "redirectToOriginal": { + "message": "আসলটায় পুনঃনির্দেশ করো", + "description": "Used in context menus when right clicking on a page/tab" }, "redirectLink": { "message": "পুনঃনির্দেশ করার চেষ্টা করো", "description": "Used in context menus when right clicking on a hyperlink" }, - "extensionName": { - "message": "লিবরিডাইরেক্ট", - "description": "name of the extension" + "about": { + "message": "আমাদের সম্পর্কে" }, - "theme": { - "message": "রঙ", - "description": "used in the settings page" + "unsupportedIframesHandling": { + "message": "Unsupported embeds handling" }, - "light": { - "message": "সাদা", - "description": "used in the settings page" + "fetchPublicInstances": { + "message": "Fetch public instances" }, - "copied": { - "message": "অনুলিপিত" + "disable": { + "message": "Disable" }, - "extensionDescription": { - "message": "একটি ওয়েব এক্সটেনশন যা জনপ্রিয় সাইটগুলোকে বিকল্প গোপনীয়তা-বান্ধব ফ্রন্টএন্ড এবং ব্যাকএন্ডে পুনর্নির্দেশ করে", - "description": "description of the extension" + "pingInstances": { + "message": "Ping Instances" }, - "redirectToOriginal": { - "message": "আসলটায় পুনঃনির্দেশ করো", - "description": "Used in context menus when right clicking on a page/tab" + "exportSettingsToSync": { + "message": "Export Settings to Sync" }, - "addYourFavoriteInstances": { - "message": "পছন্দের ইন্সট্যান্স যোগ করো", - "description": "used in the settings page" + "importSettingsFromSync": { + "message": "Import Settings from Sync" }, - "settings": { - "message": "পছন্দসমূহ", - "description": "used in the popup" + "services": { + "message": "Services" }, - "general": { - "message": "সাধারণ", - "description": "used in the settings page" + "service": { + "message": "Service" }, - "switchInstance": { - "message": "ইন্সট্যান্স পাল্টাও", - "description": "used in manifest.json as shortcut description" + "bookmarksMenu": { + "message": "Bookmarks menu" }, - "onlyEmbedded": { - "message": "শুধু এমবেডকৃত", - "description": "used in the settings page" + "redirectOnlyInIncognito": { + "message": "Redirect Only in Incognito" + }, + "bypass": { + "message": "Bypass" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>here</a>." + }, + "redirect": { + "message": "Redirect" } -} +} \ No newline at end of file diff --git a/src/_locales/bs/messages.json b/src/_locales/bs/messages.json deleted file mode 100644 index 9cf59d06..00000000 --- a/src/_locales/bs/messages.json +++ /dev/null @@ -1,112 +0,0 @@ -{ - "extensionName": { - "message": "vhack-LibRedirect", - "description": "name of the extension" - }, - "extensionDescription": { - "message": "A soft fork of the LibRedirect extension, preconfigured with the vhack.eu services", - "description": "description of the extension" - }, - "switchInstance": { - "message": "Prebaci instancu", - "description": "used in manifest.json as shortcut description" - }, - "settings": { - "message": "Podešavanja", - "description": "used in the popup" - }, - "general": { - "message": "Općenito", - "description": "used in the settings page" - }, - "theme": { - "message": "Tema", - "description": "used in the settings page" - }, - "light": { - "message": "Svjetla", - "description": "used in the settings page" - }, - "dark": { - "message": "Mračna", - "description": "used in the settings page" - }, - "auto": { - "message": "Auto", - "description": "used in the settings page" - }, - "excludeFromRedirecting": { - "message": "Isključeno iz preusmjeravanja", - "description": "used in the settings page" - }, - "importSettings": { - "message": "Uvozne Postavke", - "description": "used in the settings page" - }, - "exportSettings": { - "message": "Izvozne Postavke", - "description": "used in the settings page" - }, - "resetSettings": { - "message": "Obnovite Postavke", - "description": "used in the settings page" - }, - "enable": { - "message": "Omogući", - "description": "used in the settings page" - }, - "showInPopup": { - "message": "Prikaži u skočnom prozoru", - "description": "used in the settings page" - }, - "frontend": { - "message": "Sučelje", - "description": "used in the settings page" - }, - "redirectType": { - "message": "Vrsta Preusmjeravanja", - "description": "used in the settings page" - }, - "both": { - "message": "oba", - "description": "used in the settings page" - }, - "onlyEmbedded": { - "message": "samo ugrađeno", - "description": "used in the settings page" - }, - "onlyNotEmbedded": { - "message": "samo neugrađeno", - "description": "used in the settings page" - }, - "addYourFavoriteInstances": { - "message": "Dodajte vaše omiljene instance", - "description": "used in the settings page" - }, - "copyRaw": { - "message": "Kopirajte neobrađenu kodu" - }, - "copied": { - "message": "Kopirano" - }, - "redirectToOriginal": { - "message": "Preusmjerite prema originalnoj", - "description": "Used in context menus when right clicking on a page/tab" - }, - "redirectLink": { - "message": "Pokušajte preusmjeriti", - "description": "Used in context menus when right clicking on a hyperlink" - }, - "about": { - "message": "O" - }, - "unsupportedIframesHandling": { - "message": "Unsupported iframes handling" - }, - "fetchPublicInstances": { - "message": "Fetch public instances" - }, - "disable": { - "message": "Disable" - } -} \ No newline at end of file diff --git a/src/_locales/cs/messages.json b/src/_locales/cs/messages.json index 2a60320f..48bb0d7c 100644 --- a/src/_locales/cs/messages.json +++ b/src/_locales/cs/messages.json @@ -83,8 +83,8 @@ "message": "Přidejte své oblíbené instance", "description": "used in the settings page" }, - "copyRaw": { - "message": "Zkopírovat surové" + "copyOriginal": { + "message": "Kopírovat originál" }, "copied": { "message": "Zkopírováno" @@ -108,5 +108,53 @@ }, "disable": { "message": "Zakázat" + }, + "pingInstances": { + "message": "Otestovat odezvu instancí" + }, + "exportSettingsToSync": { + "message": "Exportovat nastavení do synchronizace" + }, + "importSettingsFromSync": { + "message": "Importovat nastavení ze synchronizace" + }, + "services": { + "message": "Služby" + }, + "service": { + "message": "Služba" + }, + "bookmarksMenu": { + "message": "Nabídka záložek" + }, + "redirectOnlyInIncognito": { + "message": "Přesměrovat pouze v anonymním okně" + }, + "bypass": { + "message": "Obejít" + }, + "block": { + "message": "Blokovat" + }, + "searchHint": { + "message": "Nastavte LibRedirect jako výchozí vyhledávač. Návod pro Chromium prohlížeče naleznete <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>zde</a>." + }, + "redirect": { + "message": "Přesměrovat" + }, + "autoPickInstance": { + "message": "Automaticky vybrat instanci" + }, + "searchService": { + "message": "Služba vyhledávání" + }, + "redirectGoogle": { + "message": "Přesměrovat Google" + }, + "search_frontend": { + "message": "Frontend vyhledávání" + }, + "embedFrontend": { + "message": "Vložený frontend" } } \ No newline at end of file diff --git a/src/_locales/de/messages.json b/src/_locales/de/messages.json deleted file mode 100644 index 75688fdf..00000000 --- a/src/_locales/de/messages.json +++ /dev/null @@ -1,112 +0,0 @@ -{ - "extensionName": { - "message": "vhack-LibRedirect", - "description": "name of the extension" - }, - "extensionDescription": { - "message": "A soft fork of the LibRedirect extension, preconfigured with the vhack.eu services", - "description": "description of the extension" - }, - "switchInstance": { - "message": "Instanz wechseln", - "description": "used in manifest.json as shortcut description" - }, - "settings": { - "message": "Einstellungen", - "description": "used in the popup" - }, - "general": { - "message": "Allgemein", - "description": "used in the settings page" - }, - "theme": { - "message": "Farbschema", - "description": "used in the settings page" - }, - "light": { - "message": "Hell", - "description": "used in the settings page" - }, - "dark": { - "message": "Dunkel", - "description": "used in the settings page" - }, - "auto": { - "message": "System", - "description": "used in the settings page" - }, - "excludeFromRedirecting": { - "message": "Vom Umleiten ausschließen", - "description": "used in the settings page" - }, - "importSettings": { - "message": "Einstellungen importieren", - "description": "used in the settings page" - }, - "exportSettings": { - "message": "Einstellungen exportieren", - "description": "used in the settings page" - }, - "resetSettings": { - "message": "Einstellungen zurücksetzen", - "description": "used in the settings page" - }, - "enable": { - "message": "Aktivieren", - "description": "used in the settings page" - }, - "showInPopup": { - "message": "Im Pop-up-Fenster anzeigen", - "description": "used in the settings page" - }, - "frontend": { - "message": "Frontend", - "description": "used in the settings page" - }, - "redirectType": { - "message": "Art der Umleitung", - "description": "used in the settings page" - }, - "both": { - "message": "beides", - "description": "used in the settings page" - }, - "onlyEmbedded": { - "message": "nur eingebettet", - "description": "used in the settings page" - }, - "onlyNotEmbedded": { - "message": "nur nicht eingebettet", - "description": "used in the settings page" - }, - "addYourFavoriteInstances": { - "message": "Eigene Instanz hinzufügen", - "description": "used in the settings page" - }, - "copyRaw": { - "message": "Original-Link kopieren" - }, - "copied": { - "message": "Kopiert" - }, - "redirectToOriginal": { - "message": "Zur Originalseite umleiten", - "description": "Used in context menus when right clicking on a page/tab" - }, - "redirectLink": { - "message": "Versuchen umzuleiten", - "description": "Used in context menus when right clicking on a hyperlink" - }, - "about": { - "message": "Über" - }, - "unsupportedIframesHandling": { - "message": "Unsupported iframes handling" - }, - "fetchPublicInstances": { - "message": "Fetch public instances" - }, - "disable": { - "message": "Disable" - } -} \ No newline at end of file diff --git a/src/_locales/delete.py b/src/_locales/delete.py index 13bfe546..d5360c95 100644 --- a/src/_locales/delete.py +++ b/src/_locales/delete.py @@ -11,15 +11,21 @@ with open('./en/messages.json') as data: keys = ['extensionName', 'extensionDescription', 'general', + 'services', + 'service', 'theme', 'auto', 'light', 'dark', 'excludeFromRedirecting', + 'fetchPublicInstances', 'importSettings', 'exportSettings', + 'exportSettingsToSync', + 'importSettingsFromSync', 'resetSettings', 'enable', + 'disable', 'showInPopup', 'frontend', 'redirectType', @@ -28,12 +34,27 @@ keys = ['extensionName', 'onlyNotEmbedded', 'addYourFavoriteInstances', 'switchInstance', - 'copyRaw', + 'copyOriginal', 'copied', 'settings', 'about', 'redirectToOriginal', 'redirectLink', + 'redirectOnlyInIncognito', + 'bookmarksMenu', + 'showInPopup', + 'unsupportedIframesHandling', + 'bypass', + 'block', + 'searchHint', + 'excludeFromRedirecting', + 'pingInstances', + 'redirect', + 'autoPickInstance', + 'redirectGoogle', + 'search_frontend', + 'searchService', + 'embedFrontend', ] tmp = {} diff --git a/src/_locales/en/messages.json b/src/_locales/en/messages.json index 64fa479c..1fd7306b 100644 --- a/src/_locales/en/messages.json +++ b/src/_locales/en/messages.json @@ -83,8 +83,8 @@ "message": "Add your favorite instances", "description": "used in the settings page" }, - "copyRaw": { - "message": "Copy Raw" + "copyOriginal": { + "message": "Copy Original" }, "copied": { "message": "Copied" @@ -101,12 +101,60 @@ "message": "About" }, "unsupportedIframesHandling": { - "message": "Unsupported iframes handling" + "message": "Unsupported embeds handling" }, "fetchPublicInstances": { "message": "Fetch public instances" }, "disable": { "message": "Disable" + }, + "pingInstances": { + "message": "Ping Instances" + }, + "exportSettingsToSync": { + "message": "Export Settings to Sync" + }, + "importSettingsFromSync": { + "message": "Import Settings from Sync" + }, + "services": { + "message": "Services" + }, + "service": { + "message": "Service" + }, + "bookmarksMenu": { + "message": "Bookmarks menu" + }, + "redirectOnlyInIncognito": { + "message": "Redirect Only in Incognito" + }, + "bypass": { + "message": "Bypass" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>here</a>." + }, + "redirect": { + "message": "Redirect" + }, + "autoPickInstance": { + "message": "Auto Pick Instance" + }, + "redirectGoogle": { + "message": "Redirect Google" + }, + "search_frontend": { + "message": "Search Frontend" + }, + "searchService": { + "message": "Search Service" + }, + "embedFrontend": { + "message": "Embed Frontend" } } diff --git a/src/_locales/vi/messages.json b/src/_locales/eo/messages.json index 4b4dfb80..885c7802 100644 --- a/src/_locales/vi/messages.json +++ b/src/_locales/eo/messages.json @@ -1,38 +1,38 @@ { "extensionName": { - "message": "vhack-LibRedirect", + "message": "LibRedirect", "description": "name of the extension" }, "extensionDescription": { - "message": "A soft fork of the LibRedirect extension, preconfigured with the vhack.eu services", + "message": "A web extension that redirects popular sites to alternative privacy-friendly frontends and backends", "description": "description of the extension" }, "switchInstance": { - "message": "Đổi Instance", + "message": "Switch Instance", "description": "used in manifest.json as shortcut description" }, "settings": { - "message": "Cài Đặt", + "message": "Settings", "description": "used in the popup" }, "general": { - "message": "Cài đặt chung", + "message": "General", "description": "used in the settings page" }, "theme": { - "message": "Giao diện", + "message": "Theme", "description": "used in the settings page" }, "light": { - "message": "Sáng", + "message": "Light", "description": "used in the settings page" }, "dark": { - "message": "Tối", + "message": "Dark", "description": "used in the settings page" }, "auto": { - "message": "Tự động", + "message": "Auto", "description": "used in the settings page" }, "excludeFromRedirecting": { @@ -40,23 +40,23 @@ "description": "used in the settings page" }, "importSettings": { - "message": "Nhập cài đặt", + "message": "Import Settings", "description": "used in the settings page" }, "exportSettings": { - "message": "Xuất cài đặt", + "message": "Export Settings", "description": "used in the settings page" }, "resetSettings": { - "message": "Đặt lại cài đặt", + "message": "Reset Settings", "description": "used in the settings page" }, "enable": { - "message": "Bật", + "message": "Enable", "description": "used in the settings page" }, "showInPopup": { - "message": "Hiển thị trong cửa sổ bật lên", + "message": "Show in popup", "description": "used in the settings page" }, "frontend": { @@ -64,11 +64,11 @@ "description": "used in the settings page" }, "redirectType": { - "message": "Loại chuyển hướng", + "message": "Redirect Type", "description": "used in the settings page" }, "both": { - "message": "cả hai", + "message": "both", "description": "used in the settings page" }, "onlyEmbedded": { @@ -83,30 +83,63 @@ "message": "Add your favorite instances", "description": "used in the settings page" }, - "copyRaw": { - "message": "Copy Raw" + "copyOriginal": { + "message": "Copy Original" }, "copied": { - "message": "Đã Sao Chép" + "message": "Copied" }, "redirectToOriginal": { "message": "Redirect to original", "description": "Used in context menus when right clicking on a page/tab" }, "redirectLink": { - "message": "Chuyển hướng liên kết này", + "message": "Attempt to redirect", "description": "Used in context menus when right clicking on a hyperlink" }, "about": { - "message": "Về tiện ích" + "message": "About" }, "unsupportedIframesHandling": { - "message": "Unsupported iframes handling" + "message": "Unsupported embeds handling" }, "fetchPublicInstances": { "message": "Fetch public instances" }, "disable": { "message": "Disable" + }, + "pingInstances": { + "message": "Ping Instances" + }, + "exportSettingsToSync": { + "message": "Export Settings to Sync" + }, + "importSettingsFromSync": { + "message": "Import Settings from Sync" + }, + "services": { + "message": "Services" + }, + "service": { + "message": "Service" + }, + "bookmarksMenu": { + "message": "Bookmarks menu" + }, + "redirectOnlyInIncognito": { + "message": "Redirect Only in Incognito" + }, + "bypass": { + "message": "Bypass" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>here</a>." + }, + "redirect": { + "message": "Redirect" } } \ No newline at end of file diff --git a/src/_locales/es/messages.json b/src/_locales/es/messages.json index dfe6e093..c5e99fed 100644 --- a/src/_locales/es/messages.json +++ b/src/_locales/es/messages.json @@ -83,8 +83,8 @@ "message": "Añade tus instancias preferidas", "description": "used in the settings page" }, - "copyRaw": { - "message": "Copiar Original" + "copyOriginal": { + "message": "Copiar original" }, "copied": { "message": "Copiado" @@ -101,12 +101,60 @@ "message": "Acerca de" }, "unsupportedIframesHandling": { - "message": "Gestión de los iframes no compatibles" + "message": "Manejo de incrustaciones de código no soportado" }, "fetchPublicInstances": { "message": "Recuperar las instancias públicas" }, "disable": { "message": "Desactivar" + }, + "pingInstances": { + "message": "Prueba de velocidad de las instancias" + }, + "exportSettingsToSync": { + "message": "Exportar configuraciones para sincronizar" + }, + "importSettingsFromSync": { + "message": "Importar configuraciones para sincronizar" + }, + "services": { + "message": "Servicios" + }, + "service": { + "message": "Service" + }, + "bookmarksMenu": { + "message": "Menú de marcadores" + }, + "redirectOnlyInIncognito": { + "message": "Redirigir solo en modo incógnito" + }, + "bypass": { + "message": "Bypass" + }, + "block": { + "message": "Bloquear" + }, + "searchHint": { + "message": "Establece LibRedirect como motor de búsqueda predeterminado. Para saber cómo hacerlo en los navegadores Chromium, haz clic <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>aquí</a>." + }, + "redirect": { + "message": "Redirigir" + }, + "search_frontend": { + "message": "Interfaz de búsqueda" + }, + "searchService": { + "message": "Servicio de búsqueda" + }, + "embedFrontend": { + "message": "Integrar Frontend" + }, + "autoPickInstance": { + "message": "Selección automática de instancias" + }, + "redirectGoogle": { + "message": "Redirigir a Google" } } \ No newline at end of file diff --git a/src/_locales/fi/messages.json b/src/_locales/fi/messages.json index 0b6b797b..ee2793b5 100644 --- a/src/_locales/fi/messages.json +++ b/src/_locales/fi/messages.json @@ -1,21 +1,43 @@ { - "excludeFromRedirecting": { - "message": "Poissuljettu uudelleenohjaukselta", - "description": "used in the settings page" - }, - "copyRaw": { - "message": "Kopioi alkuperäinen" + "extensionName": { + "message": "LibRedirect", + "description": "name of the extension" }, - "both": { - "message": "molemmat", - "description": "used in the settings page" + "extensionDescription": { + "message": "Selainlaajennus joka uudelleenohjaa suositut sivustot vaihtoehtoisiin yksityisyysystävällisiin käyttöliittymiin", + "description": "description of the extension" }, "switchInstance": { "message": "Vaihda instanssi", "description": "used in manifest.json as shortcut description" }, - "unsupportedIframesHandling": { - "message": "Tukemattomien iframejen käsittely" + "settings": { + "message": "Asetukset", + "description": "used in the popup" + }, + "general": { + "message": "Yleiset", + "description": "used in the settings page" + }, + "theme": { + "message": "Teema", + "description": "used in the settings page" + }, + "light": { + "message": "Vaalea", + "description": "used in the settings page" + }, + "dark": { + "message": "Tumma", + "description": "used in the settings page" + }, + "auto": { + "message": "Automaattinen", + "description": "used in the settings page" + }, + "excludeFromRedirecting": { + "message": "Poissuljettu uudelleenohjaukselta", + "description": "used in the settings page" }, "importSettings": { "message": "Tuo asetukset", @@ -25,88 +47,99 @@ "message": "Vie asetukset", "description": "used in the settings page" }, - "fetchPublicInstances": { - "message": "Hae julkiset instanssit" - }, - "addYourFavoriteInstances": { - "message": "Lisää suosikki-instanssisi", + "resetSettings": { + "message": "Nollaa asetukset", "description": "used in the settings page" }, - "extensionName": { - "message": "LibRedirect", - "description": "name of the extension" + "enable": { + "message": "Ota käyttöön", + "description": "used in the settings page" }, "showInPopup": { "message": "Näytä ponnahdusvalikossa", "description": "used in the settings page" }, - "theme": { - "message": "Teema", + "frontend": { + "message": "Käyttöliittymä", + "description": "used in the settings page" + }, + "redirectType": { + "message": "Uudelleenohjauksen tyyppi", + "description": "used in the settings page" + }, + "both": { + "message": "molemmat", "description": "used in the settings page" }, "onlyEmbedded": { "message": "vain upotteet", "description": "used in the settings page" }, - "light": { - "message": "Vaalea", + "onlyNotEmbedded": { + "message": "vain muut kuin upotteet", "description": "used in the settings page" }, - "frontend": { - "message": "Käyttöliittymä", + "addYourFavoriteInstances": { + "message": "Lisää suosikki-instanssisi", "description": "used in the settings page" }, - "extensionDescription": { - "message": "Selainlaajennus joka uudelleenohjaa suositut sivustot vaihtoehtoisiin yksityisyysystävällisiin käyttöliittymiin", - "description": "description of the extension" + "copyOriginal": { + "message": "Copy Original" }, "copied": { "message": "Kopioitu" }, - "onlyNotEmbedded": { - "message": "vain muut kuin upotteet", - "description": "used in the settings page" - }, - "about": { - "message": "Tietoja" + "redirectToOriginal": { + "message": "Uudelleenohjaa alkuperäiseen", + "description": "Used in context menus when right clicking on a page/tab" }, "redirectLink": { "message": "Yritä uudelleenohjata", "description": "Used in context menus when right clicking on a hyperlink" }, - "redirectType": { - "message": "Uudelleenohjauksen tyyppi", - "description": "used in the settings page" - }, - "dark": { - "message": "Tumma", - "description": "used in the settings page" + "about": { + "message": "Tietoja" }, - "general": { - "message": "Yleiset", - "description": "used in the settings page" + "unsupportedIframesHandling": { + "message": "Tukemattomien iframejen käsittely" }, - "enable": { - "message": "Ota käyttöön", - "description": "used in the settings page" + "fetchPublicInstances": { + "message": "Hae julkiset instanssit" }, "disable": { "message": "Poista käytöstä" }, - "redirectToOriginal": { - "message": "Uudelleenohjaa alkuperäiseen", - "description": "Used in context menus when right clicking on a page/tab" + "pingInstances": { + "message": "Ping Instances" }, - "auto": { - "message": "Automaattinen", - "description": "used in the settings page" + "exportSettingsToSync": { + "message": "Export Settings to Sync" }, - "settings": { - "message": "Asetukset", - "description": "used in the popup" + "importSettingsFromSync": { + "message": "Import Settings from Sync" }, - "resetSettings": { - "message": "Nollaa asetukset", - "description": "used in the settings page" + "services": { + "message": "Services" + }, + "service": { + "message": "Service" + }, + "bookmarksMenu": { + "message": "Bookmarks menu" + }, + "redirectOnlyInIncognito": { + "message": "Redirect Only in Incognito" + }, + "bypass": { + "message": "Bypass" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>here</a>." + }, + "redirect": { + "message": "Redirect" } } diff --git a/src/_locales/filter.py b/src/_locales/filter.py index c60a6a4b..b6a30f04 100644 --- a/src/_locales/filter.py +++ b/src/_locales/filter.py @@ -3,16 +3,21 @@ import json langs = [ 'ar', + 'bn', 'bs', 'cs', 'de', + 'eo', 'es', + 'fi', 'fr', 'gl', + 'hi', 'hr', 'id', 'it', 'ja', + 'jv', 'ko', 'nb_NO', 'nl', @@ -26,6 +31,7 @@ langs = [ 'uk', 'vi', 'zh_Hans', + 'zh_Hant', ] en_json = {} diff --git a/src/_locales/fr/messages.json b/src/_locales/fr/messages.json deleted file mode 100644 index 993271aa..00000000 --- a/src/_locales/fr/messages.json +++ /dev/null @@ -1,113 +0,0 @@ -{ - "extensionName": { - "message": "vhack-LibRedirect", - "description": "name of the extension" - }, - "extensionDescription": { - "message": "A soft fork of the LibRedirect extension, preconfigured with the vhack.eu services", - "description": "description of the extension" - }, - "switchInstance": { - "message": "Changer d'instance", - "description": "used in manifest.json as shortcut description" - }, - "settings": { - "message": "Paramètres", - "description": "used in the popup" - }, - "general": { - "message": "Général", - "description": "used in the settings page" - }, - "theme": { - "message": "Thème", - "description": "used in the settings page" - }, - "light": { - "message": "Clair", - "description": "used in the settings page" - }, - "dark": { - "message": "Sombre", - "description": "used in the settings page" - }, - "auto": { - "message": "Auto", - "description": "used in the settings page" - }, - "excludeFromRedirecting": { - "message": "Exclus de la redirection", - "description": "used in the settings page" - }, - "importSettings": { - "message": "Importer les paramètres", - "description": "used in the settings page" - }, - "exportSettings": { - "message": "Exporter les paramètres", - "description": "used in the settings page" - }, - "resetSettings": { - "message": "Réinitialiser les paramètres", - "description": "used in the settings page" - }, - "enable": { - "message": "Activer", - "description": "used in the settings page" - }, - "showInPopup": { - "message": "Afficher dans la fenêtre contextuelle", - "description": "used in the settings page" - }, - "frontend": { - "message": "Interface", - "description": "used in the settings page" - }, - "redirectType": { - "message": "Type de redirection", - "description": "used in the settings page" - }, - "both": { - "message": "les deux", - "description": "used in the settings page" - }, - "onlyEmbedded": { - "message": "uniquement intégré", - "description": "used in the settings page" - }, - "onlyNotEmbedded": { - "message": "seulement non intégré", - "description": "used in the settings page" - }, - "addYourFavoriteInstances": { - "message": "Ajoutez vos instances favorites", - "description": "used in the settings page" - }, - "copyRaw": { - "message": "Copier le lien original" - }, - "copied": { - "message": "Copié" - }, - "redirectToOriginal": { - "message": "Rediriger vers l'original", - "description": "Used in context menus when right clicking on a page/tab" - }, - "redirectLink": { - "message": "Essayer de rediriger", - "description": "Used in context menus when right clicking on a hyperlink" - }, - "about": { - "message": "À propos" - }, - "unsupportedIframesHandling": { - "message": "Unsupported iframes handling" - }, - }, - "fetchPublicInstances": { - "message": "Rechercher des instances publiques" - }, - "disable": { - "message": "Désactiver" - } -} diff --git a/src/_locales/gl/messages.json b/src/_locales/gl/messages.json index 64771e6b..5fe31474 100644 --- a/src/_locales/gl/messages.json +++ b/src/_locales/gl/messages.json @@ -36,7 +36,7 @@ "description": "used in the settings page" }, "excludeFromRedirecting": { - "message": "Excluded from redirecting", + "message": "Excluído da redirección", "description": "used in the settings page" }, "importSettings": { @@ -56,7 +56,7 @@ "description": "used in the settings page" }, "showInPopup": { - "message": "Show in popup", + "message": "Mostrar nunha xanela emerxente", "description": "used in the settings page" }, "frontend": { @@ -76,21 +76,21 @@ "description": "used in the settings page" }, "onlyNotEmbedded": { - "message": "non só incrustados", + "message": "só non incrustados", "description": "used in the settings page" }, "addYourFavoriteInstances": { - "message": "Add your favorite instances", + "message": "Engade as túas instancias favoritas", "description": "used in the settings page" }, - "copyRaw": { - "message": "Copiar en crú" + "copyOriginal": { + "message": "Copiar Orixinal" }, "copied": { - "message": "Copied" + "message": "Copiouse" }, "redirectToOriginal": { - "message": "Redirect to original", + "message": "Ir ao orixinal", "description": "Used in context menus when right clicking on a page/tab" }, "redirectLink": { @@ -98,15 +98,63 @@ "description": "Used in context menus when right clicking on a hyperlink" }, "about": { - "message": "About" + "message": "Acerca de" }, "unsupportedIframesHandling": { - "message": "Sen soporte para a xestión de iframes" + "message": "Xestión de incrustacións sen soporte" }, "fetchPublicInstances": { "message": "Obter instancias públicas" }, "disable": { "message": "Desactivar" + }, + "pingInstances": { + "message": "Comprobar Instancias" + }, + "exportSettingsToSync": { + "message": "Exportar Axustes a Sincr." + }, + "importSettingsFromSync": { + "message": "Importar Axustes de Sincr" + }, + "services": { + "message": "Servizos" + }, + "service": { + "message": "Service" + }, + "bookmarksMenu": { + "message": "Menú dos marcadores" + }, + "redirectOnlyInIncognito": { + "message": "Redirect só en Incógnito" + }, + "bypass": { + "message": "Omitir" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Establece a LibRedirect como Motor de Busca predeterminado. Para facelo nos navegadores chromium, preme <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>aquí</a>." + }, + "redirect": { + "message": "Redirect" + }, + "autoPickInstance": { + "message": "Selección Autom. de instancia" + }, + "redirectGoogle": { + "message": "Redirect a Google" + }, + "search_frontend": { + "message": "Buscar Interface Alt." + }, + "searchService": { + "message": "Buscar Servizo" + }, + "embedFrontend": { + "message": "Incrustar Interface" } } \ No newline at end of file diff --git a/src/_locales/hi/messages.json b/src/_locales/hi/messages.json new file mode 100644 index 00000000..0967ef42 --- /dev/null +++ b/src/_locales/hi/messages.json @@ -0,0 +1 @@ +{} diff --git a/src/_locales/hr/messages.json b/src/_locales/hr/messages.json index b9d40ec0..3b0a8243 100644 --- a/src/_locales/hr/messages.json +++ b/src/_locales/hr/messages.json @@ -32,7 +32,7 @@ "description": "used in the settings page" }, "auto": { - "message": "Auto", + "message": "Automatski", "description": "used in the settings page" }, "excludeFromRedirecting": { @@ -68,7 +68,7 @@ "description": "used in the settings page" }, "both": { - "message": "obje", + "message": "oboje", "description": "used in the settings page" }, "onlyEmbedded": { @@ -80,10 +80,10 @@ "description": "used in the settings page" }, "addYourFavoriteInstances": { - "message": "Dodajte svoje omiljene instance", + "message": "Dodaj svoje omiljene instance", "description": "used in the settings page" }, - "copyRaw": { + "copyOriginal": { "message": "Kopiraj original" }, "copied": { @@ -108,5 +108,53 @@ }, "disable": { "message": "Deaktiviraj" + }, + "pingInstances": { + "message": "Testiraj instance" + }, + "exportSettingsToSync": { + "message": "Izvezi postavke za sinkronizaciju" + }, + "importSettingsFromSync": { + "message": "Uvezi postavke iz sinkronizacije" + }, + "services": { + "message": "Usluge" + }, + "service": { + "message": "Usluga" + }, + "bookmarksMenu": { + "message": "Izbornik zabilješki" + }, + "redirectOnlyInIncognito": { + "message": "Preusmjeri samo u inkognito modusu" + }, + "bypass": { + "message": "Zaobiđi" + }, + "block": { + "message": "Blokiraj" + }, + "searchHint": { + "message": "Postavi LibRedirect kao standardnu tražilicu. <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>Ovdje</a> pogledaj kako se to radi u Chromium web pregledniku." + }, + "redirect": { + "message": "Preusmjeri" + }, + "autoPickInstance": { + "message": "Odaberi instancu automatski" + }, + "redirectGoogle": { + "message": "Preusmjeri na Google" + }, + "search_frontend": { + "message": "Traži sučelje" + }, + "searchService": { + "message": "Traži uslugu" + }, + "embedFrontend": { + "message": "Ugradi sučelje" } } \ No newline at end of file diff --git a/src/_locales/id/messages.json b/src/_locales/id/messages.json index 0368bec8..dbacc848 100644 --- a/src/_locales/id/messages.json +++ b/src/_locales/id/messages.json @@ -83,8 +83,8 @@ "message": "Tambahkan server favorit Anda", "description": "used in the settings page" }, - "copyRaw": { - "message": "Salin Mentah" + "copyOriginal": { + "message": "Copy Original" }, "copied": { "message": "Disalin" @@ -108,5 +108,38 @@ }, "disable": { "message": "Nonaktifkan" + }, + "pingInstances": { + "message": "Ping Instances" + }, + "exportSettingsToSync": { + "message": "Export Settings to Sync" + }, + "importSettingsFromSync": { + "message": "Import Settings from Sync" + }, + "services": { + "message": "Services" + }, + "service": { + "message": "Service" + }, + "bookmarksMenu": { + "message": "Bookmarks menu" + }, + "redirectOnlyInIncognito": { + "message": "Redirect Only in Incognito" + }, + "bypass": { + "message": "Bypass" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>here</a>." + }, + "redirect": { + "message": "Redirect" } } \ No newline at end of file diff --git a/src/_locales/it/messages.json b/src/_locales/it/messages.json index 295dd517..e5699f35 100644 --- a/src/_locales/it/messages.json +++ b/src/_locales/it/messages.json @@ -83,8 +83,8 @@ "message": "Aggiungi le tue istanze preferite", "description": "used in the settings page" }, - "copyRaw": { - "message": "Copia grezza" + "copyOriginal": { + "message": "Copy Original" }, "copied": { "message": "Copiato" @@ -108,5 +108,38 @@ }, "disable": { "message": "Disattiva" + }, + "pingInstances": { + "message": "Ping Instances" + }, + "exportSettingsToSync": { + "message": "Export Settings to Sync" + }, + "importSettingsFromSync": { + "message": "Import Settings from Sync" + }, + "services": { + "message": "Services" + }, + "service": { + "message": "Service" + }, + "bookmarksMenu": { + "message": "Bookmarks menu" + }, + "redirectOnlyInIncognito": { + "message": "Redirect Only in Incognito" + }, + "bypass": { + "message": "Bypass" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>here</a>." + }, + "redirect": { + "message": "Redirect" } } \ No newline at end of file diff --git a/src/_locales/ja/messages.json b/src/_locales/ja/messages.json index 58ad2f78..4b2e693b 100644 --- a/src/_locales/ja/messages.json +++ b/src/_locales/ja/messages.json @@ -8,7 +8,7 @@ "description": "description of the extension" }, "switchInstance": { - "message": "インスタンスを切り替え", + "message": "インスタンスを変更", "description": "used in manifest.json as shortcut description" }, "settings": { @@ -80,11 +80,11 @@ "description": "used in the settings page" }, "addYourFavoriteInstances": { - "message": "好きなインスタンスを追加", + "message": "独自のインスタンスを追加", "description": "used in the settings page" }, - "copyRaw": { - "message": "元のURIをコピー" + "copyOriginal": { + "message": "元のサービスのURIをコピー" }, "copied": { "message": "コピーしました" @@ -101,12 +101,60 @@ "message": "公式サイト" }, "unsupportedIframesHandling": { - "message": "未対応の iframes の処理" + "message": "未対応の埋め込み動画の処理" }, "fetchPublicInstances": { - "message": "公式インスタンスを取得" + "message": "公開インスタンスの一覧を取得" }, "disable": { "message": "無効" + }, + "pingInstances": { + "message": "インスタンスの応答時間を確認" + }, + "exportSettingsToSync": { + "message": "設定を同期にエクスポート" + }, + "importSettingsFromSync": { + "message": "設定を同期からインポート" + }, + "services": { + "message": "サービス" + }, + "service": { + "message": "サービス" + }, + "bookmarksMenu": { + "message": "ブークマークのメニューに追加" + }, + "redirectOnlyInIncognito": { + "message": "シークレットモードでのみ転送" + }, + "bypass": { + "message": "転送なし" + }, + "block": { + "message": "表示しない" + }, + "searchHint": { + "message": "LibRedirect を標準の検索エンジンに設定します。chromium ブラウザーでのやり方は、<a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>こちらをクリック</a>。" + }, + "redirect": { + "message": "転送する" + }, + "search_frontend": { + "message": "検索フロントエンド" + }, + "embedFrontend": { + "message": "埋め込みフロントエンド" + }, + "redirectGoogle": { + "message": "Googleを転送する" + }, + "autoPickInstance": { + "message": "インスタンスを自動で取得" + }, + "searchService": { + "message": "検索サービス" } } \ No newline at end of file diff --git a/src/_locales/jv/messages.json b/src/_locales/jv/messages.json index 40fb052b..90a2fc45 100644 --- a/src/_locales/jv/messages.json +++ b/src/_locales/jv/messages.json @@ -1,4 +1,24 @@ { + "extensionName": { + "message": "LibRedirect", + "description": "name of the extension" + }, + "extensionDescription": { + "message": "A web extension that redirects popular sites to alternative privacy-friendly frontends and backends", + "description": "description of the extension" + }, + "switchInstance": { + "message": "Switch Instance", + "description": "used in manifest.json as shortcut description" + }, + "settings": { + "message": "Settings", + "description": "used in the popup" + }, + "general": { + "message": "General", + "description": "used in the settings page" + }, "theme": { "message": "Téma", "description": "used in the settings page" @@ -11,8 +31,115 @@ "message": "Peteng", "description": "used in the settings page" }, - "extensionName": { - "message": "LibRedirect", - "description": "name of the extension" + "auto": { + "message": "Auto", + "description": "used in the settings page" + }, + "excludeFromRedirecting": { + "message": "Excluded from redirecting", + "description": "used in the settings page" + }, + "importSettings": { + "message": "Import Settings", + "description": "used in the settings page" + }, + "exportSettings": { + "message": "Export Settings", + "description": "used in the settings page" + }, + "resetSettings": { + "message": "Reset Settings", + "description": "used in the settings page" + }, + "enable": { + "message": "Enable", + "description": "used in the settings page" + }, + "showInPopup": { + "message": "Show in popup", + "description": "used in the settings page" + }, + "frontend": { + "message": "Frontend", + "description": "used in the settings page" + }, + "redirectType": { + "message": "Redirect Type", + "description": "used in the settings page" + }, + "both": { + "message": "both", + "description": "used in the settings page" + }, + "onlyEmbedded": { + "message": "only embedded", + "description": "used in the settings page" + }, + "onlyNotEmbedded": { + "message": "only not embedded", + "description": "used in the settings page" + }, + "addYourFavoriteInstances": { + "message": "Add your favorite instances", + "description": "used in the settings page" + }, + "copyOriginal": { + "message": "Copy Original" + }, + "copied": { + "message": "Copied" + }, + "redirectToOriginal": { + "message": "Redirect to original", + "description": "Used in context menus when right clicking on a page/tab" + }, + "redirectLink": { + "message": "Attempt to redirect", + "description": "Used in context menus when right clicking on a hyperlink" + }, + "about": { + "message": "About" + }, + "unsupportedIframesHandling": { + "message": "Unsupported embeds handling" + }, + "fetchPublicInstances": { + "message": "Fetch public instances" + }, + "disable": { + "message": "Disable" + }, + "pingInstances": { + "message": "Ping Instances" + }, + "exportSettingsToSync": { + "message": "Export Settings to Sync" + }, + "importSettingsFromSync": { + "message": "Import Settings from Sync" + }, + "services": { + "message": "Services" + }, + "service": { + "message": "Service" + }, + "bookmarksMenu": { + "message": "Bookmarks menu" + }, + "redirectOnlyInIncognito": { + "message": "Redirect Only in Incognito" + }, + "bypass": { + "message": "Bypass" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>here</a>." + }, + "redirect": { + "message": "Redirect" } -} +} \ No newline at end of file diff --git a/src/_locales/ko/messages.json b/src/_locales/ko/messages.json deleted file mode 100644 index c351ea76..00000000 --- a/src/_locales/ko/messages.json +++ /dev/null @@ -1,112 +0,0 @@ -{ - "extensionName": { - "message": "vhack-LibRedirect", - "description": "name of the extension" - }, - "extensionDescription": { - "message": "A soft fork of the LibRedirect extension, preconfigured with the vhack.eu services", - "description": "description of the extension" - }, - "switchInstance": { - "message": "인스턴스 바꾸기", - "description": "used in manifest.json as shortcut description" - }, - "settings": { - "message": "설정", - "description": "used in the popup" - }, - "general": { - "message": "일반", - "description": "used in the settings page" - }, - "theme": { - "message": "테마", - "description": "used in the settings page" - }, - "light": { - "message": "밝음", - "description": "used in the settings page" - }, - "dark": { - "message": "어두움", - "description": "used in the settings page" - }, - "auto": { - "message": "Auto", - "description": "used in the settings page" - }, - "excludeFromRedirecting": { - "message": "Excluded from redirecting", - "description": "used in the settings page" - }, - "importSettings": { - "message": "설정 불러오기", - "description": "used in the settings page" - }, - "exportSettings": { - "message": "설정 내보내기", - "description": "used in the settings page" - }, - "resetSettings": { - "message": "설정 초기화", - "description": "used in the settings page" - }, - "enable": { - "message": "활성화", - "description": "used in the settings page" - }, - "showInPopup": { - "message": "Show in popup", - "description": "used in the settings page" - }, - "frontend": { - "message": "프론트엔드", - "description": "used in the settings page" - }, - "redirectType": { - "message": "리다이렉트 종류", - "description": "used in the settings page" - }, - "both": { - "message": "둘 다", - "description": "used in the settings page" - }, - "onlyEmbedded": { - "message": "임베디드 된 것만", - "description": "used in the settings page" - }, - "onlyNotEmbedded": { - "message": "임베디드 안된 것만", - "description": "used in the settings page" - }, - "addYourFavoriteInstances": { - "message": "Add your favorite instances", - "description": "used in the settings page" - }, - "copyRaw": { - "message": "Raw 복사" - }, - "copied": { - "message": "복사됨" - }, - "redirectToOriginal": { - "message": "Redirect to original", - "description": "Used in context menus when right clicking on a page/tab" - }, - "redirectLink": { - "message": "Attempt to redirect this hyperlink", - "description": "Used in context menus when right clicking on a hyperlink" - }, - "about": { - "message": "About" - }, - "unsupportedIframesHandling": { - "message": "Unsupported iframes handling" - }, - "fetchPublicInstances": { - "message": "Fetch public instances" - }, - "disable": { - "message": "Disable" - } -} \ No newline at end of file diff --git a/src/_locales/nb_NO/messages.json b/src/_locales/nb_NO/messages.json deleted file mode 100644 index 4a245d44..00000000 --- a/src/_locales/nb_NO/messages.json +++ /dev/null @@ -1,112 +0,0 @@ -{ - "extensionName": { - "message": "vhack-LibRedirect", - "description": "name of the extension" - }, - "extensionDescription": { - "message": "A soft fork of the LibRedirect extension, preconfigured with the vhack.eu services", - "description": "description of the extension" - }, - "switchInstance": { - "message": "Bytt instans", - "description": "used in manifest.json as shortcut description" - }, - "settings": { - "message": "Innstillinger", - "description": "used in the popup" - }, - "general": { - "message": "Generelt", - "description": "used in the settings page" - }, - "theme": { - "message": "Drakt", - "description": "used in the settings page" - }, - "light": { - "message": "Lys", - "description": "used in the settings page" - }, - "dark": { - "message": "Mørk", - "description": "used in the settings page" - }, - "auto": { - "message": "Auto", - "description": "used in the settings page" - }, - "excludeFromRedirecting": { - "message": "Excluded from redirecting", - "description": "used in the settings page" - }, - "importSettings": { - "message": "Importer innstillinger", - "description": "used in the settings page" - }, - "exportSettings": { - "message": "Eksporter innstillinger", - "description": "used in the settings page" - }, - "resetSettings": { - "message": "Tilbakestill innstillinger", - "description": "used in the settings page" - }, - "enable": { - "message": "Skru på", - "description": "used in the settings page" - }, - "showInPopup": { - "message": "Show in popup", - "description": "used in the settings page" - }, - "frontend": { - "message": "Grenseflate", - "description": "used in the settings page" - }, - "redirectType": { - "message": "Videresendingstype", - "description": "used in the settings page" - }, - "both": { - "message": "begge", - "description": "used in the settings page" - }, - "onlyEmbedded": { - "message": "kun innebygde", - "description": "used in the settings page" - }, - "onlyNotEmbedded": { - "message": "kun ikke-innebygde", - "description": "used in the settings page" - }, - "addYourFavoriteInstances": { - "message": "Add your favorite instances", - "description": "used in the settings page" - }, - "copyRaw": { - "message": "Kopier originallenke" - }, - "copied": { - "message": "Kopiert" - }, - "redirectToOriginal": { - "message": "Redirect to original", - "description": "Used in context menus when right clicking on a page/tab" - }, - "redirectLink": { - "message": "Attempt to redirect this hyperlink", - "description": "Used in context menus when right clicking on a hyperlink" - }, - "about": { - "message": "About" - }, - "unsupportedIframesHandling": { - "message": "Unsupported iframes handling" - }, - "fetchPublicInstances": { - "message": "Fetch public instances" - }, - "disable": { - "message": "Disable" - } -} \ No newline at end of file diff --git a/src/_locales/nl/messages.json b/src/_locales/nl/messages.json index 4ee327dd..65e71f31 100644 --- a/src/_locales/nl/messages.json +++ b/src/_locales/nl/messages.json @@ -83,8 +83,8 @@ "message": "Toevoegen aan favoriete instanties", "description": "used in the settings page" }, - "copyRaw": { - "message": "Onbewerkte code kopiëren" + "copyOriginal": { + "message": "Copy Original" }, "copied": { "message": "Gekopieerd" @@ -108,5 +108,38 @@ }, "disable": { "message": "Uitschakelen" + }, + "pingInstances": { + "message": "Ping Instances" + }, + "exportSettingsToSync": { + "message": "Export Settings to Sync" + }, + "importSettingsFromSync": { + "message": "Import Settings from Sync" + }, + "services": { + "message": "Services" + }, + "service": { + "message": "Service" + }, + "bookmarksMenu": { + "message": "Bookmarks menu" + }, + "redirectOnlyInIncognito": { + "message": "Redirect Only in Incognito" + }, + "bypass": { + "message": "Bypass" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>here</a>." + }, + "redirect": { + "message": "Redirect" } } \ No newline at end of file diff --git a/src/_locales/pl/messages.json b/src/_locales/pl/messages.json index 2ad9e368..c632f0c3 100644 --- a/src/_locales/pl/messages.json +++ b/src/_locales/pl/messages.json @@ -83,8 +83,8 @@ "message": "Dodaj ulubione instancje", "description": "used in the settings page" }, - "copyRaw": { - "message": "Skopiuj nieprzetworzony" + "copyOriginal": { + "message": "Kopiuj oryginał" }, "copied": { "message": "Skopiowano" @@ -101,12 +101,60 @@ "message": "Informacje" }, "unsupportedIframesHandling": { - "message": "Brak obsługi ramek iframe" + "message": "Brak obsługi osadzania" }, "fetchPublicInstances": { "message": "Pobierz instancje publiczne" }, "disable": { "message": "Wyłącz" + }, + "pingInstances": { + "message": "Pinguj instancje" + }, + "exportSettingsToSync": { + "message": "Eksportuj ustawienia do synchronizacji" + }, + "importSettingsFromSync": { + "message": "Importuj ustawienia do synchronizacji" + }, + "services": { + "message": "Usługi" + }, + "service": { + "message": "Usługa" + }, + "bookmarksMenu": { + "message": "Menu zakładek" + }, + "redirectOnlyInIncognito": { + "message": "Przekieruj tylko w trybie incognito" + }, + "bypass": { + "message": "Omiń" + }, + "block": { + "message": "Zablokuj" + }, + "searchHint": { + "message": "Ustaw LibRedirect jako domyślną wyszukiwarkę. Aby dowiedzieć się, jak to zrobić w przeglądarkach Chromium, kliknij <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>tutaj</a>." + }, + "redirect": { + "message": "Przekieruj" + }, + "autoPickInstance": { + "message": "Automatyczny wybór instancji" + }, + "redirectGoogle": { + "message": "Przekieruj Google" + }, + "embedFrontend": { + "message": "Frontend osadzania" + }, + "search_frontend": { + "message": "Frontend wyszukiwania" + }, + "searchService": { + "message": "Usługa wyszukiwania" } } \ No newline at end of file diff --git a/src/_locales/pt/messages.json b/src/_locales/pt/messages.json deleted file mode 100644 index 0d8d5606..00000000 --- a/src/_locales/pt/messages.json +++ /dev/null @@ -1,112 +0,0 @@ -{ - "extensionName": { - "message": "vhack-LibRedirect", - "description": "name of the extension" - }, - "extensionDescription": { - "message": "A soft fork of the LibRedirect extension, preconfigured with the vhack.eu services", - "description": "description of the extension" - }, - "switchInstance": { - "message": "Trocar de instância", - "description": "used in manifest.json as shortcut description" - }, - "settings": { - "message": "Configurações", - "description": "used in the popup" - }, - "general": { - "message": "Geral", - "description": "used in the settings page" - }, - "theme": { - "message": "Tema", - "description": "used in the settings page" - }, - "light": { - "message": "Claro", - "description": "used in the settings page" - }, - "dark": { - "message": "Escuro", - "description": "used in the settings page" - }, - "auto": { - "message": "Auto", - "description": "used in the settings page" - }, - "excludeFromRedirecting": { - "message": "Excluído do redirecionamento", - "description": "used in the settings page" - }, - "importSettings": { - "message": "Importar configurações", - "description": "used in the settings page" - }, - "exportSettings": { - "message": "Exportar configurações", - "description": "used in the settings page" - }, - "resetSettings": { - "message": "Repor configurações", - "description": "used in the settings page" - }, - "enable": { - "message": "Ativar", - "description": "used in the settings page" - }, - "showInPopup": { - "message": "Mostrar no pop-up", - "description": "used in the settings page" - }, - "frontend": { - "message": "Interface", - "description": "used in the settings page" - }, - "redirectType": { - "message": "Tipo de redirecionamento", - "description": "used in the settings page" - }, - "both": { - "message": "ambos", - "description": "used in the settings page" - }, - "onlyEmbedded": { - "message": "só embutidos", - "description": "used in the settings page" - }, - "onlyNotEmbedded": { - "message": "apenas os não embutidos", - "description": "used in the settings page" - }, - "addYourFavoriteInstances": { - "message": "Adicionar a sua instância favorita", - "description": "used in the settings page" - }, - "copyRaw": { - "message": "Copiar URL original" - }, - "copied": { - "message": "Copiado" - }, - "redirectToOriginal": { - "message": "Redirecionar para o original", - "description": "Used in context menus when right clicking on a page/tab" - }, - "redirectLink": { - "message": "Tentar redirecionar", - "description": "Used in context menus when right clicking on a hyperlink" - }, - "about": { - "message": "Sobre" - }, - "unsupportedIframesHandling": { - "message": "Unsupported iframes handling" - }, - "fetchPublicInstances": { - "message": "Fetch public instances" - }, - "disable": { - "message": "Disable" - } -} \ No newline at end of file diff --git a/src/_locales/pt_BR/messages.json b/src/_locales/pt_BR/messages.json deleted file mode 100644 index f75b9d5f..00000000 --- a/src/_locales/pt_BR/messages.json +++ /dev/null @@ -1,112 +0,0 @@ -{ - "extensionName": { - "message": "vhack-LibRedirect", - "description": "name of the extension" - }, - "extensionDescription": { - "message": "A soft fork of the LibRedirect extension, preconfigured with the vhack.eu services", - "description": "description of the extension" - }, - "switchInstance": { - "message": "Trocar a instância", - "description": "Utilizado no arquivo manifest.json como descrição do atalho" - }, - "settings": { - "message": "Configurações", - "description": "Utilizado na janela da caixa de diálogo" - }, - "general": { - "message": "Geral", - "description": "Utilizado na página de configurações" - }, - "theme": { - "message": "Tema", - "description": "Utilizado na página de configurações" - }, - "light": { - "message": "Claro", - "description": "Utilizado na página de configurações" - }, - "dark": { - "message": "Escuro", - "description": "Utilizado na página de configurações" - }, - "auto": { - "message": "Auto", - "description": "used in the settings page" - }, - "excludeFromRedirecting": { - "message": "Excluído do redirecionamento", - "description": "used in the settings page" - }, - "importSettings": { - "message": "Importar as configurações", - "description": "Utilizado na página de configurações" - }, - "exportSettings": { - "message": "Exportar as configurações", - "description": "Utilizado na página de configurações" - }, - "resetSettings": { - "message": "Redefinir as configurações", - "description": "Utilizado na página de configurações" - }, - "enable": { - "message": "Ativar", - "description": "Utilizado na página de configurações" - }, - "showInPopup": { - "message": "Mostrar em pop-up", - "description": "used in the settings page" - }, - "frontend": { - "message": "Interface gráfica", - "description": "Utilizado na página de configurações" - }, - "redirectType": { - "message": "Tipo de redirecionamento", - "description": "Utilizado na página de configurações" - }, - "both": { - "message": "ambos", - "description": "Utilizado na página de configurações" - }, - "onlyEmbedded": { - "message": "apenas os incorporados", - "description": "Utilizado na página de configurações" - }, - "onlyNotEmbedded": { - "message": "apenas os não incorporados", - "description": "Utilizado na página de configurações" - }, - "addYourFavoriteInstances": { - "message": "Adicione sua instância favorita", - "description": "used in the settings page" - }, - "copyRaw": { - "message": "Copiar URL original" - }, - "copied": { - "message": "Copiado" - }, - "redirectToOriginal": { - "message": "Redirecionar para original", - "description": "Used in context menus when right clicking on a page/tab" - }, - "redirectLink": { - "message": "Tentar redirecionar", - "description": "Used in context menus when right clicking on a hyperlink" - }, - "about": { - "message": "Sobre" - }, - "unsupportedIframesHandling": { - "message": "Unsupported iframes handling" - }, - "fetchPublicInstances": { - "message": "Fetch public instances" - }, - "disable": { - "message": "Disable" - } -} \ No newline at end of file diff --git a/src/_locales/ro/messages.json b/src/_locales/ro/messages.json index 5daaa2df..66227fd8 100644 --- a/src/_locales/ro/messages.json +++ b/src/_locales/ro/messages.json @@ -83,8 +83,8 @@ "message": "Add your favorite instances", "description": "used in the settings page" }, - "copyRaw": { - "message": "Copiați Raw" + "copyOriginal": { + "message": "Copy Original" }, "copied": { "message": "Copiat" @@ -108,5 +108,38 @@ }, "disable": { "message": "Dezactivează" + }, + "pingInstances": { + "message": "Ping Instances" + }, + "exportSettingsToSync": { + "message": "Export Settings to Sync" + }, + "importSettingsFromSync": { + "message": "Import Settings from Sync" + }, + "services": { + "message": "Services" + }, + "service": { + "message": "Service" + }, + "bookmarksMenu": { + "message": "Bookmarks menu" + }, + "redirectOnlyInIncognito": { + "message": "Redirect Only in Incognito" + }, + "bypass": { + "message": "Bypass" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>here</a>." + }, + "redirect": { + "message": "Redirect" } } \ No newline at end of file diff --git a/src/_locales/ru/messages.json b/src/_locales/ru/messages.json index 17af9229..0b3a816e 100644 --- a/src/_locales/ru/messages.json +++ b/src/_locales/ru/messages.json @@ -83,8 +83,8 @@ "message": "Добавить в избранное", "description": "used in the settings page" }, - "copyRaw": { - "message": "Копировать изначальную" + "copyOriginal": { + "message": "Копировать исходную" }, "copied": { "message": "Скопировано" @@ -101,12 +101,60 @@ "message": "О расширении" }, "unsupportedIframesHandling": { - "message": "Обработка неподдерживаемых iframe" + "message": "Обработка неподдерживаемых встроенных сайтов" }, "fetchPublicInstances": { "message": "Получить общедоступные серверы" }, "disable": { "message": "Выключить" + }, + "pingInstances": { + "message": "Опросить серверы" + }, + "exportSettingsToSync": { + "message": "Экспортировать настройки в службу синхронизации" + }, + "importSettingsFromSync": { + "message": "Импортировать настройки из службы синхронизации" + }, + "services": { + "message": "Службы" + }, + "service": { + "message": "Служба" + }, + "bookmarksMenu": { + "message": "Меню закладок" + }, + "redirectOnlyInIncognito": { + "message": "Перенаправлять только в приватных окнах" + }, + "bypass": { + "message": "Обход" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Установить LibRedirect в качестве поисковой системы по умолчанию. Подробности о том, как это сделать в браузерах на Chromium, доступны <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>здесь</a>." + }, + "redirect": { + "message": "Перенаправить" + }, + "redirectGoogle": { + "message": "Перенаправление Google" + }, + "autoPickInstance": { + "message": "Выбирать сервер автоматически" + }, + "searchService": { + "message": "Служба поиска" + }, + "search_frontend": { + "message": "Поисковый интерфейс" + }, + "embedFrontend": { + "message": "Встроить интерфейс" } } \ No newline at end of file diff --git a/src/_locales/sr/messages.json b/src/_locales/sr/messages.json deleted file mode 100644 index d9ec4a74..00000000 --- a/src/_locales/sr/messages.json +++ /dev/null @@ -1,112 +0,0 @@ -{ - "extensionName": { - "message": "vhack-LibRedirect", - "description": "name of the extension" - }, - "extensionDescription": { - "message": "A soft fork of the LibRedirect extension, preconfigured with the vhack.eu services", - "description": "description of the extension" - }, - "switchInstance": { - "message": "Пребаци инстанцу", - "description": "used in manifest.json as shortcut description" - }, - "settings": { - "message": "Подешавања", - "description": "used in the popup" - }, - "general": { - "message": "Општенито", - "description": "used in the settings page" - }, - "theme": { - "message": "Тема", - "description": "used in the settings page" - }, - "light": { - "message": "Светла", - "description": "used in the settings page" - }, - "dark": { - "message": "Мрачна", - "description": "used in the settings page" - }, - "auto": { - "message": "Auto", - "description": "used in the settings page" - }, - "excludeFromRedirecting": { - "message": "Искључено из преусмеравања", - "description": "used in the settings page" - }, - "importSettings": { - "message": "Увозна Подешавања", - "description": "used in the settings page" - }, - "exportSettings": { - "message": "Извозна Подешавања", - "description": "used in the settings page" - }, - "resetSettings": { - "message": "Обновите Подешавања", - "description": "used in the settings page" - }, - "enable": { - "message": "Омогући", - "description": "used in the settings page" - }, - "showInPopup": { - "message": "Прикажи у искачућем прозору", - "description": "used in the settings page" - }, - "frontend": { - "message": "Сучеље", - "description": "used in the settings page" - }, - "redirectType": { - "message": "Тип Преусмеравања", - "description": "used in the settings page" - }, - "both": { - "message": "оба", - "description": "used in the settings page" - }, - "onlyEmbedded": { - "message": "само уграђено", - "description": "used in the settings page" - }, - "onlyNotEmbedded": { - "message": "само неуграђено", - "description": "used in the settings page" - }, - "addYourFavoriteInstances": { - "message": "Додајте своје омиљене инстанце", - "description": "used in the settings page" - }, - "copyRaw": { - "message": "Копирајте необрађену коду" - }, - "copied": { - "message": "Копирано" - }, - "redirectToOriginal": { - "message": "Преусмерите према оригиналној", - "description": "Used in context menus when right clicking on a page/tab" - }, - "redirectLink": { - "message": "Покушајте да преусмерите", - "description": "Used in context menus when right clicking on a hyperlink" - }, - "about": { - "message": "О" - }, - "unsupportedIframesHandling": { - "message": "Unsupported iframes handling" - }, - "fetchPublicInstances": { - "message": "Fetch public instances" - }, - "disable": { - "message": "Disable" - } -} \ No newline at end of file diff --git a/src/_locales/tr/messages.json b/src/_locales/tr/messages.json index ca9b0811..f729728e 100644 --- a/src/_locales/tr/messages.json +++ b/src/_locales/tr/messages.json @@ -83,8 +83,8 @@ "message": "Sevdiğiniz örnekleri ekleyin", "description": "used in the settings page" }, - "copyRaw": { - "message": "Ham Kopyala" + "copyOriginal": { + "message": "Aslını Kopyala" }, "copied": { "message": "Kopyalandı" @@ -101,12 +101,60 @@ "message": "Hakkında" }, "unsupportedIframesHandling": { - "message": "Desteklenmeyen iframe kullanımı" + "message": "Desteklenmeyen gömülü kullanımı" }, "fetchPublicInstances": { "message": "Herkese açık örnekleri getir" }, "disable": { "message": "Devre dışı bırak" + }, + "pingInstances": { + "message": "Örneklere Ping At" + }, + "exportSettingsToSync": { + "message": "Ayarlayı Eşzamanlamaya Aktar" + }, + "importSettingsFromSync": { + "message": "Ayarları Eşzamanlamadan İçe Aktar" + }, + "services": { + "message": "Hizmetler" + }, + "service": { + "message": "Service" + }, + "bookmarksMenu": { + "message": "Yer imleri menüsü" + }, + "redirectOnlyInIncognito": { + "message": "Yalnızca Gizli Modda Yönlendir" + }, + "bypass": { + "message": "Atla" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "LibRedirect'i öntanımlı arama moturu olarak ayarlayın. Chromium tabanlı tarayıcılarda nasıl yapılacağını öğrenmek için <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>buraya</a> tıklayın." + }, + "redirect": { + "message": "Yönlendir" + }, + "redirectGoogle": { + "message": "Yönlendir (Google)" + }, + "search_frontend": { + "message": "Arama Ön Ucu" + }, + "embedFrontend": { + "message": "Ön Ucu Göm" + }, + "autoPickInstance": { + "message": "Örneği Otomatik Seç" + }, + "searchService": { + "message": "Arama Hizmeti" } } \ No newline at end of file diff --git a/src/_locales/uk/messages.json b/src/_locales/uk/messages.json index f6f70e8c..7d79fbde 100644 --- a/src/_locales/uk/messages.json +++ b/src/_locales/uk/messages.json @@ -83,8 +83,8 @@ "message": "Додати свої улюблені сервери", "description": "used in the settings page" }, - "copyRaw": { - "message": "Копіювати оригінал посилання" + "copyOriginal": { + "message": "Скопіювати оригінал" }, "copied": { "message": "Скопійовано" @@ -101,12 +101,54 @@ "message": "Про застосунок" }, "unsupportedIframesHandling": { - "message": "Непідтримувана обробка iframes" + "message": "Обробка непідтримуваних вбудовувань" }, "fetchPublicInstances": { "message": "Отримати загальнодоступні сервери" }, "disable": { "message": "Вимкнути" + }, + "pingInstances": { + "message": "Ping Instances" + }, + "exportSettingsToSync": { + "message": "Export Settings to Sync" + }, + "importSettingsFromSync": { + "message": "Import Settings from Sync" + }, + "services": { + "message": "Служби" + }, + "service": { + "message": "Служба" + }, + "bookmarksMenu": { + "message": "Меню закладок" + }, + "redirectOnlyInIncognito": { + "message": "Redirect Only in Incognito" + }, + "bypass": { + "message": "Bypass" + }, + "block": { + "message": "Block" + }, + "searchHint": { + "message": "Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click <a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>here</a>." + }, + "redirect": { + "message": "Redirect" + }, + "autoPickInstance": { + "message": "Автопідбір сервера" + }, + "redirectGoogle": { + "message": "Переспрямування Google" + }, + "searchService": { + "message": "Служба пошуку" } } \ No newline at end of file diff --git a/src/_locales/zh_Hans/messages.json b/src/_locales/zh_Hans/messages.json index ff3f4f62..fe1a2769 100644 --- a/src/_locales/zh_Hans/messages.json +++ b/src/_locales/zh_Hans/messages.json @@ -56,7 +56,7 @@ "description": "used in the settings page" }, "showInPopup": { - "message": "显示于弹出窗口", + "message": "显示在弹窗中", "description": "used in the settings page" }, "frontend": { @@ -68,22 +68,22 @@ "description": "used in the settings page" }, "both": { - "message": "两者", + "message": "所有页面", "description": "used in the settings page" }, "onlyEmbedded": { - "message": "仅当嵌入时", + "message": "仅嵌入页面", "description": "used in the settings page" }, "onlyNotEmbedded": { - "message": "仅当非嵌入时", + "message": "仅常规页面", "description": "used in the settings page" }, "addYourFavoriteInstances": { "message": "添加您喜欢的实例", "description": "used in the settings page" }, - "copyRaw": { + "copyOriginal": { "message": "复制原始链接" }, "copied": { @@ -94,19 +94,67 @@ "description": "Used in context menus when right clicking on a page/tab" }, "redirectLink": { - "message": "尝试重定向", + "message": "尝试进行重定向", "description": "Used in context menus when right clicking on a hyperlink" }, "about": { "message": "关于" }, "unsupportedIframesHandling": { - "message": "对不支持的 iframe 的处理方式" + "message": "处理未支持的嵌入页面的方式" }, "fetchPublicInstances": { "message": "获取公共实例" }, "disable": { "message": "禁用" + }, + "pingInstances": { + "message": "对实例进行测速" + }, + "exportSettingsToSync": { + "message": "导出设置到同步服务" + }, + "importSettingsFromSync": { + "message": "从同步服务导入设置" + }, + "services": { + "message": "服务" + }, + "service": { + "message": "服务" + }, + "bookmarksMenu": { + "message": "书签菜单" + }, + "redirectOnlyInIncognito": { + "message": "仅在隐私模式下重定向" + }, + "bypass": { + "message": "绕过" + }, + "block": { + "message": "屏蔽" + }, + "searchHint": { + "message": "请将 LibRedirect 设为默认搜索引擎。对于 Chromium 的操作方法,点击<a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>此处</a>了解。" + }, + "redirect": { + "message": "重定向" + }, + "embedFrontend": { + "message": "嵌入页面前端" + }, + "autoPickInstance": { + "message": "自动挑选实例" + }, + "redirectGoogle": { + "message": "重定向 Google" + }, + "search_frontend": { + "message": "搜索前端" + }, + "searchService": { + "message": "搜索服务" } } \ No newline at end of file diff --git a/src/_locales/zh_Hant/messages.json b/src/_locales/zh_Hant/messages.json index 86675479..3b9f8313 100644 --- a/src/_locales/zh_Hant/messages.json +++ b/src/_locales/zh_Hant/messages.json @@ -1,27 +1,20 @@ { - "both": { - "message": "全部", - "description": "used in the settings page" - }, - "copied": { - "message": "已複製" - }, "extensionName": { "message": "LibRedirect", "description": "name of the extension" }, + "extensionDescription": { + "message": "一個網路擴充功能可以將熱門網站重新導向至隱私友好的替代服務", + "description": "description of the extension" + }, "switchInstance": { - "message": "切換執行個體", + "message": "切換實例", "description": "used in manifest.json as shortcut description" }, "settings": { "message": "設定", "description": "used in the popup" }, - "extensionDescription": { - "message": "WebExtension 擴充套件,可將熱門網站重新導向至隱私友好的替代服務", - "description": "description of the extension" - }, "general": { "message": "一般", "description": "used in the settings page" @@ -42,12 +35,12 @@ "message": "自動", "description": "used in the settings page" }, - "importSettings": { - "message": "匯入設定", + "excludeFromRedirecting": { + "message": "排除重新導向", "description": "used in the settings page" }, - "excludeFromRedirecting": { - "message": "不作重新導向", + "importSettings": { + "message": "匯入設定", "description": "used in the settings page" }, "exportSettings": { @@ -74,30 +67,94 @@ "message": "重新導向類型", "description": "used in the settings page" }, + "both": { + "message": "兩者", + "description": "used in the settings page" + }, + "onlyEmbedded": { + "message": "僅已內嵌", + "description": "used in the settings page" + }, "onlyNotEmbedded": { - "message": "非內嵌", + "message": "僅非已內嵌", "description": "used in the settings page" }, "addYourFavoriteInstances": { - "message": "新增常用執行個體", + "message": "新增你喜歡的實例", "description": "used in the settings page" }, + "copyOriginal": { + "message": "複製原始的" + }, + "copied": { + "message": "已複製" + }, "redirectToOriginal": { - "message": "重新導向到原網址", + "message": "重新導向至原始網址", "description": "Used in context menus when right clicking on a page/tab" }, "redirectLink": { "message": "嘗試重新導向", "description": "Used in context menus when right clicking on a hyperlink" }, - "copyRaw": { - "message": "複製原始網址" - }, "about": { "message": "關於" }, - "onlyEmbedded": { - "message": "僅內嵌", - "description": "used in the settings page" + "unsupportedIframesHandling": { + "message": "不支援的嵌入處理" + }, + "fetchPublicInstances": { + "message": "取得公共實例" + }, + "disable": { + "message": "停用" + }, + "pingInstances": { + "message": "Ping 實例" + }, + "exportSettingsToSync": { + "message": "匯出設定以同步" + }, + "importSettingsFromSync": { + "message": "從同步匯入設定" + }, + "services": { + "message": "服務" + }, + "service": { + "message": "服務" + }, + "bookmarksMenu": { + "message": "書籤選單" + }, + "redirectOnlyInIncognito": { + "message": "僅在隱身模式下重新導向" + }, + "bypass": { + "message": "繞行" + }, + "block": { + "message": "封鎖" + }, + "searchHint": { + "message": "設定 LibRedirect 為預設搜尋引擎。如要了解如何在 Chromium 瀏覽器中執行操作,請點擊<a href='https://libredirect.github.io/docs.html#search_engine_chromium' target='_blank' rel='noopener noreferrer'>此處</a>。" + }, + "redirect": { + "message": "重新導向" + }, + "autoPickInstance": { + "message": "自動選擇實例" + }, + "embedFrontend": { + "message": "嵌入前端" + }, + "redirectGoogle": { + "message": "重新導向 Google" + }, + "search_frontend": { + "message": "搜尋前端" + }, + "searchService": { + "message": "搜尋服務" } } diff --git a/src/assets/images/about-icon-light.svg b/src/assets/images/about-icon-light.svg index 7c4ef3ca..acd71636 100644 --- a/src/assets/images/about-icon-light.svg +++ b/src/assets/images/about-icon-light.svg @@ -1,44 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - height="24" - width="24" - fill="currentColor" - version="1.1" - id="svg4" - sodipodi:docname="about-icon-white.svg" - inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs8" /> - <sodipodi:namedview - id="namedview6" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="22.922045" - inkscape:cx="1.2651576" - inkscape:cy="10.383018" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg4" /> - <path - d="m 11,17 h 2 V 11 H 11 Z M 12,9 C 12.283333,9 12.521,8.904 12.713,8.712 12.904333,8.5206667 13,8.2833333 13,8 13,7.7166667 12.904333,7.479 12.713,7.287 12.521,7.0956667 12.283333,7 12,7 11.716667,7 11.479333,7.0956667 11.288,7.287 11.096,7.479 11,7.7166667 11,8 11,8.2833333 11.096,8.5206667 11.288,8.712 11.479333,8.904 11.716667,9 12,9 Z" - id="path2" - sodipodi:nodetypes="cccccssscssscs" - style="fill:#ffffff" /> - <path - id="path387" - d="M 12,2 C 10.616668,2 9.316275,2.2624432 8.099609,2.7871094 6.882944,3.3124421 5.82578,4.0257822 4.925781,4.9257812 4.025782,5.8257804 3.311776,6.8829439 2.787109,8.0996094 2.261777,9.3162749 2,10.616668 2,12 c 0,1.383332 0.261777,2.683725 0.787109,3.900391 0.524667,1.216665 1.238673,2.273829 2.138672,3.173828 0.899999,0.899999 1.957163,1.614005 3.173828,2.138672 C 9.316275,21.738223 10.616668,22 12,22 c 1.383332,0 2.683725,-0.261777 3.900391,-0.787109 1.216665,-0.524667 2.273829,-1.238673 3.173828,-2.138672 0.899999,-0.899999 1.614005,-1.957163 2.138672,-3.173828 C 21.738223,14.683725 22,13.383332 22,12 22,10.616668 21.738223,9.3162749 21.212891,8.0996094 20.688224,6.8829439 19.974218,5.8257804 19.074219,4.9257812 18.17422,4.0257822 17.117056,3.3124421 15.900391,2.7871094 14.683725,2.2624432 13.383332,2 12,2 Z m 0,2 c 2.233331,0 4.125783,0.7742203 5.675781,2.3242188 C 19.22578,7.8742172 20,9.7666689 20,12 20,14.233331 19.22578,16.125783 17.675781,17.675781 16.125783,19.22578 14.233331,20 12,20 9.766669,20 7.874217,19.22578 6.324219,17.675781 4.77422,16.125783 4,14.233331 4,12 4,9.7666689 4.77422,7.8742172 6.324219,6.3242188 7.874217,4.7742203 9.766669,4 12,4 Z" - style="fill:#ffffff" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="#fff" d="M11 17h2v-6h-2Zm1-8a.97.97 0 0 0 .713-.288A.97.97 0 0 0 13 8a.97.97 0 0 0-.287-.713A.97.97 0 0 0 12 7a.97.97 0 0 0-.712.287A.97.97 0 0 0 11 8q0 .424.288.712A.97.97 0 0 0 12 9"/><path fill="#fff" d="M12 2a9.7 9.7 0 0 0-3.9.787 10.1 10.1 0 0 0-3.174 2.139Q3.576 6.276 2.787 8.1A9.7 9.7 0 0 0 2 12q0 2.075.787 3.9a10.1 10.1 0 0 0 2.139 3.174q1.35 1.35 3.174 2.139A9.7 9.7 0 0 0 12 22a9.7 9.7 0 0 0 3.9-.787 10.1 10.1 0 0 0 3.174-2.139q1.35-1.35 2.139-3.174A9.7 9.7 0 0 0 22 12a9.7 9.7 0 0 0-.787-3.9 10.1 10.1 0 0 0-2.139-3.174q-1.35-1.35-3.174-2.139A9.7 9.7 0 0 0 12 2m0 2q3.35 0 5.676 2.324Q20 8.65 20 12t-2.324 5.676Q15.35 20 12 20t-5.676-2.324Q4 15.35 4 12t2.324-5.676Q8.65 4 12 4"/></svg> diff --git a/src/assets/images/about-icon.svg b/src/assets/images/about-icon.svg index 98b62f6b..26fbc4b7 100644 --- a/src/assets/images/about-icon.svg +++ b/src/assets/images/about-icon.svg @@ -1,42 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - height="24" - width="24" - fill="currentColor" - version="1.1" - id="svg4" - sodipodi:docname="about-icon.svg" - inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs8" /> - <sodipodi:namedview - id="namedview6" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="22.922045" - inkscape:cx="5.4532656" - inkscape:cy="10.383018" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg4" /> - <path - d="m 11,17 h 2 V 11 H 11 Z M 12,9 C 12.283333,9 12.521,8.904 12.713,8.712 12.904333,8.5206667 13,8.2833333 13,8 13,7.7166667 12.904333,7.479 12.713,7.287 12.521,7.0956667 12.283333,7 12,7 11.716667,7 11.479333,7.0956667 11.288,7.287 11.096,7.479 11,7.7166667 11,8 11,8.2833333 11.096,8.5206667 11.288,8.712 11.479333,8.904 11.716667,9 12,9 Z" - id="path2" - sodipodi:nodetypes="cccccssscssscs" /> - <path - id="path387" - d="M 12,2 C 10.616668,2 9.316275,2.2624432 8.099609,2.7871094 6.882944,3.3124421 5.82578,4.0257822 4.925781,4.9257812 4.025782,5.8257804 3.311776,6.8829439 2.787109,8.0996094 2.261777,9.3162749 2,10.616668 2,12 c 0,1.383332 0.261777,2.683725 0.787109,3.900391 0.524667,1.216665 1.238673,2.273829 2.138672,3.173828 0.899999,0.899999 1.957163,1.614005 3.173828,2.138672 C 9.316275,21.738223 10.616668,22 12,22 c 1.383332,0 2.683725,-0.261777 3.900391,-0.787109 1.216665,-0.524667 2.273829,-1.238673 3.173828,-2.138672 0.899999,-0.899999 1.614005,-1.957163 2.138672,-3.173828 C 21.738223,14.683725 22,13.383332 22,12 22,10.616668 21.738223,9.3162749 21.212891,8.0996094 20.688224,6.8829439 19.974218,5.8257804 19.074219,4.9257812 18.17422,4.0257822 17.117056,3.3124421 15.900391,2.7871094 14.683725,2.2624432 13.383332,2 12,2 Z m 0,2 c 2.233331,0 4.125783,0.7742203 5.675781,2.3242188 C 19.22578,7.8742172 20,9.7666689 20,12 20,14.233331 19.22578,16.125783 17.675781,17.675781 16.125783,19.22578 14.233331,20 12,20 9.766669,20 7.874217,19.22578 6.324219,17.675781 4.77422,16.125783 4,14.233331 4,12 4,9.7666689 4.77422,7.8742172 6.324219,6.3242188 7.874217,4.7742203 9.766669,4 12,4 Z" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M11 17h2v-6h-2Zm1-8a.97.97 0 0 0 .713-.288A.97.97 0 0 0 13 8a.97.97 0 0 0-.287-.713A.97.97 0 0 0 12 7a.97.97 0 0 0-.712.287A.97.97 0 0 0 11 8q0 .424.288.712A.97.97 0 0 0 12 9"/><path d="M12 2a9.7 9.7 0 0 0-3.9.787 10.1 10.1 0 0 0-3.174 2.139Q3.576 6.276 2.787 8.1A9.7 9.7 0 0 0 2 12q0 2.075.787 3.9a10.1 10.1 0 0 0 2.139 3.174q1.35 1.35 3.174 2.139A9.7 9.7 0 0 0 12 22a9.7 9.7 0 0 0 3.9-.787 10.1 10.1 0 0 0 3.174-2.139q1.35-1.35 2.139-3.174A9.7 9.7 0 0 0 22 12a9.7 9.7 0 0 0-.787-3.9 10.1 10.1 0 0 0-2.139-3.174q-1.35-1.35-3.174-2.139A9.7 9.7 0 0 0 12 2m0 2q3.35 0 5.676 2.324Q20 8.65 20 12t-2.324 5.676Q15.35 20 12 20t-5.676-2.324Q4 15.35 4 12t2.324-5.676Q8.65 4 12 4"/></svg> \ No newline at end of file diff --git a/src/assets/images/baiduTieba-icon.svg b/src/assets/images/baiduTieba-icon.svg new file mode 100644 index 00000000..70f8c46d --- /dev/null +++ b/src/assets/images/baiduTieba-icon.svg @@ -0,0 +1,72 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Generator: Adobe Illustrator 15.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> + +<svg + version="1.1" + id="Layer_1" + sodipodi:docname="Baidu.svg" + inkscape:version="1.3.2 (091e20ef0f, 2023-11-25)" + sodipodi:version="0.32" + inkscape:output_extension="org.inkscape.output.svg.inkscape" + x="0px" + y="0px" + width="65.453781" + height="71.304939" + viewBox="0 0 65.45378 71.304939" + enable-background="new 0 0 231 79" + xml:space="preserve" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"><defs + id="defs1" /> +<sodipodi:namedview + id="base" + inkscape:current-layer="Layer_1" + inkscape:window-y="138" + inkscape:window-x="138" + inkscape:window-width="1323" + inkscape:window-height="708" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + inkscape:cy="46.733757" + inkscape:cx="56.521653" + inkscape:zoom="3.6269286" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + objecttolerance="10.0" + gridtolerance="10.0" + guidetolerance="10.0" + inkscape:showpageshadow="2" + inkscape:pagecheckerboard="0" + inkscape:deskcolor="#d1d1d1" + inkscape:window-maximized="0"> + </sodipodi:namedview> + +<g + id="g2225" + transform="matrix(0.91912224,0,0,0.91912224,-70.269186,-6.5035036)" + style="stroke-width:1.08799"> + <path + id="path2227" + fill="#2319dc" + d="m 89.241,47.789 c 7.75,-1.665 6.692,-10.937 6.465,-12.963 -0.382,-3.125 -4.055,-8.582 -9.039,-8.146 -6.275,0.559 -7.191,9.623 -7.191,9.623 -0.85,4.197 2.028,13.155 9.765,11.486 m 14.392,-15.543 c 4.278,0 7.736,-4.93 7.736,-11.02 0,-6.091 -3.458,-11.013 -7.736,-11.013 -4.28,0 -7.747,4.922 -7.747,11.013 0,6.09 3.466,11.02 7.747,11.02 m 18.444,0.725 c 5.727,0.75 9.396,-5.359 10.13,-9.988 0.75,-4.623 -2.95,-10 -6.995,-10.923 -4.063,-0.934 -9.135,5.57 -9.592,9.813 -0.557,5.19 0.736,10.365 6.457,11.098 m 22.679,7.777 c 0,-2.214 -1.833,-8.888 -8.659,-8.888 -6.84,0 -7.744,6.298 -7.744,10.748 0,4.247 0.354,10.171 8.848,9.987 8.485,-0.188 7.555,-9.618 7.555,-11.847 m -8.659,19.436 c 0,0 -8.853,-6.848 -14.02,-14.252 -7.016,-10.917 -16.97,-6.471 -20.298,-0.927 -3.318,5.558 -8.476,9.068 -9.214,10 -0.745,0.913 -10.692,6.288 -8.485,16.103 2.212,9.807 9.969,9.621 9.969,9.621 0,0 5.717,0.559 12.347,-0.924 6.644,-1.479 12.36,0.363 12.36,0.363 0,0 15.498,5.197 19.733,-4.803 4.24,-9.992 -2.392,-15.181 -2.392,-15.181" + style="stroke-width:1.08799" /> + <path + id="path2229" + fill="#ffffff" + d="m 105.008,50.637 v 6.588 H 99.64 c 0,0 -5.365,0.445 -7.243,6.526 -0.655,4.06 0.578,6.451 0.793,6.962 0.217,0.51 1.951,3.48 6.305,4.352 h 10.073 V 50.709 Z m -0.081,20.43 h -4.058 c 0,0 -2.827,-0.147 -3.688,-3.402 -0.444,-1.442 0.066,-3.108 0.29,-3.763 0.205,-0.656 1.154,-2.172 3.111,-2.756 h 4.344 z" + style="stroke-width:1.08799" /> + <path + id="path2231" + fill="#ffffff" + d="M 112.037,57.816 V 70.64 c 0,0 0.21,3.191 4.71,4.354 h 11.592 v -17.18 h -5.003 v 12.897 h -4.774 c 0,0 -1.526,-0.222 -1.813,-1.448 V 57.74 Z" + style="stroke-width:1.08799" /> + + + + + +</g> +</svg> diff --git a/src/assets/images/bandcamp-icon.svg b/src/assets/images/bandcamp-icon.svg index 8b1e7f52..5c461205 100644 --- a/src/assets/images/bandcamp-icon.svg +++ b/src/assets/images/bandcamp-icon.svg @@ -1,175 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - version="1.1" - id="svg2" - width="682.66669" - height="682.66669" - viewBox="0 0 682.66669 682.66669" - sodipodi:docname="bandcamp-icon.svg" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs6"> - <clipPath - clipPathUnits="userSpaceOnUse" - id="clipPath20"> - <path - d="M 2560,0 C 3973.85,0 5120,1146.15 5120,2560 5120,3973.85 3973.85,5120 2560,5120 1146.15,5120 0,3973.85 0,2560 0,1146.15 1146.15,0 2560,0 Z" - clip-rule="evenodd" - id="path18" /> - </clipPath> - <clipPath - clipPathUnits="userSpaceOnUse" - id="clipPath26"> - <path - d="M 0,0 H 5120 V 5120 H 0 Z" - id="path24" /> - </clipPath> - <clipPath - clipPathUnits="userSpaceOnUse" - id="clipPath36"> - <path - d="m 3248.57,2735.96 c -183.49,0 -277.25,-144.42 -277.25,-362 0,-205.66 101.38,-360.04 277.25,-360.04 198.89,0 273.45,182.02 273.45,360.04 -0.14,185.9 -93.84,362 -273.51,362 M 2761,3275.92 h 217.97 v -522.15 h 3.85 c 59.28,98.87 183.55,160.21 294.46,160.21 311.63,0 462.74,-245.35 462.74,-544.05 0,-274.84 -133.84,-533.97 -426.43,-533.97 -133.85,0 -277.25,33.54 -342.29,168.09 h -3.78 v -140.51 h -206.53 v 1412.35 l 0.01,0.03" - clip-rule="evenodd" - id="path34" /> - </clipPath> - <clipPath - clipPathUnits="userSpaceOnUse" - id="clipPath42"> - <path - d="M 0,0 H 5120 V 5120 H 0 Z" - id="path40" /> - </clipPath> - <clipPath - clipPathUnits="userSpaceOnUse" - id="clipPath52"> - <path - d="m 4543.89,2544.02 c -17.22,124.62 -105.15,191.92 -225.61,191.92 -112.87,0 -271.54,-61.35 -271.54,-371.91 0,-170.13 72.64,-350.15 261.97,-350.15 126.18,0 214.11,87.14 235.18,233.51 h 217.97 c -40.16,-265.06 -198.84,-411.43 -453.15,-411.43 -309.78,0 -479.95,227.42 -479.95,528.07 0,308.56 162.53,549.89 487.6,549.89 229.44,0 424.54,-118.68 445.5,-369.91 h -217.61 l -0.36,0.01" - clip-rule="evenodd" - id="path50" /> - </clipPath> - <clipPath - clipPathUnits="userSpaceOnUse" - id="clipPath58"> - <path - d="M 0,0 H 5120 V 5120 H 0 Z" - id="path56" /> - </clipPath> - <clipPath - clipPathUnits="userSpaceOnUse" - id="clipPath68"> - <path - d="M 1998.95,1866.62 H 364.078 l 763.462,1409.3 h 1634.88 l -763.47,-1409.3" - clip-rule="evenodd" - id="path66" /> - </clipPath> - <clipPath - clipPathUnits="userSpaceOnUse" - id="clipPath74"> - <path - d="M 0,0 H 5120 V 5120 H 0 Z" - id="path72" /> - </clipPath> - </defs> - <sodipodi:namedview - id="namedview4" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="1.1396484" - inkscape:cx="194.79692" - inkscape:cy="341.33334" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="g10"> - <inkscape:page - x="0" - y="0" - id="page8" - width="682.66669" - height="682.66669" /> - </sodipodi:namedview> - <g - id="g10" - inkscape:groupmode="layer" - inkscape:label="Page 1" - transform="matrix(1.3333333,0,0,-1.3333333,0,682.66667)"> - <g - id="g12" - transform="scale(0.1)"> - <g - id="g14"> - <g - id="g16" - clip-path="url(#clipPath20)"> - <g - id="g22" - clip-path="url(#clipPath26)"> - <path - d="M -50,-50 H 5170 V 5170 H -50 Z" - style="fill:#17a0c4;fill-opacity:1;fill-rule:nonzero;stroke:none" - id="path28" /> - </g> - </g> - </g> - <g - id="g30"> - <g - id="g32" - clip-path="url(#clipPath36)"> - <g - id="g38" - clip-path="url(#clipPath42)"> - <path - d="M 2710.99,1785.96 H 3790.02 V 3325.92 H 2710.99 Z" - style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" - id="path44" /> - </g> - </g> - </g> - <g - id="g46"> - <g - id="g48" - clip-path="url(#clipPath52)"> - <g - id="g54" - clip-path="url(#clipPath58)"> - <path - d="m 3778.76,1785.96 h 1033.1 v 1177.96 h -1033.1 z" - style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" - id="path60" /> - </g> - </g> - </g> - <g - id="g62"> - <g - id="g64" - clip-path="url(#clipPath68)"> - <g - id="g70" - clip-path="url(#clipPath74)"> - <path - d="m 314.078,1816.62 h 2498.34 v 1509.3 H 314.078 Z" - style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" - id="path76" /> - </g> - </g> - </g> - </g> - </g> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 682.667 682.667"><defs><clipPath id="a" clipPathUnits="userSpaceOnUse"><path d="M2560 0c1413.85 0 2560 1146.15 2560 2560S3973.85 5120 2560 5120 0 3973.85 0 2560 1146.15 0 2560 0" clip-rule="evenodd"/></clipPath><clipPath id="b" clipPathUnits="userSpaceOnUse"><path d="M0 0h5120v5120H0Z"/></clipPath><clipPath id="c" clipPathUnits="userSpaceOnUse"><path d="M3248.57 2735.96c-183.49 0-277.25-144.42-277.25-362 0-205.66 101.38-360.04 277.25-360.04 198.89 0 273.45 182.02 273.45 360.04-.14 185.9-93.84 362-273.51 362M2761 3275.92h217.97v-522.15h3.85c59.28 98.87 183.55 160.21 294.46 160.21 311.63 0 462.74-245.35 462.74-544.05 0-274.84-133.84-533.97-426.43-533.97-133.85 0-277.25 33.54-342.29 168.09h-3.78v-140.51h-206.53v1412.35z" clip-rule="evenodd"/></clipPath><clipPath id="d" clipPathUnits="userSpaceOnUse"><path d="M0 0h5120v5120H0Z"/></clipPath><clipPath id="e" clipPathUnits="userSpaceOnUse"><path d="M4543.89 2544.02c-17.22 124.62-105.15 191.92-225.61 191.92-112.87 0-271.54-61.35-271.54-371.91 0-170.13 72.64-350.15 261.97-350.15 126.18 0 214.11 87.14 235.18 233.51h217.97c-40.16-265.06-198.84-411.43-453.15-411.43-309.78 0-479.95 227.42-479.95 528.07 0 308.56 162.53 549.89 487.6 549.89 229.44 0 424.54-118.68 445.5-369.91h-217.61z" clip-rule="evenodd"/></clipPath><clipPath id="f" clipPathUnits="userSpaceOnUse"><path d="M0 0h5120v5120H0Z"/></clipPath><clipPath id="g" clipPathUnits="userSpaceOnUse"><path d="M1998.95 1866.62H364.078l763.462 1409.3h1634.88z" clip-rule="evenodd"/></clipPath><clipPath id="h" clipPathUnits="userSpaceOnUse"><path d="M0 0h5120v5120H0Z"/></clipPath></defs><g clip-path="url(#a)" transform="matrix(.13333 0 0 -.13333 0 682.667)"><g clip-path="url(#b)"><path d="M-50-50h5220v5220H-50Z" style="fill:#17a0c4;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g></g><g clip-path="url(#c)" transform="matrix(.13333 0 0 -.13333 0 682.667)"><g clip-path="url(#d)"><path d="M2710.99 1785.96h1079.03v1539.96H2710.99Z" style="fill:#fff;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g></g><g clip-path="url(#e)" transform="matrix(.13333 0 0 -.13333 0 682.667)"><g clip-path="url(#f)"><path d="M3778.76 1785.96h1033.1v1177.96h-1033.1z" style="fill:#fff;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g></g><g clip-path="url(#g)" transform="matrix(.13333 0 0 -.13333 0 682.667)"><g clip-path="url(#h)"><path d="M314.078 1816.62h2498.34v1509.3H314.078Z" style="fill:#fff;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g></g></svg> \ No newline at end of file diff --git a/src/assets/images/bilibili-icon-light.svg b/src/assets/images/bilibili-icon-light.svg index ad6ea120..7e24f306 100644 --- a/src/assets/images/bilibili-icon-light.svg +++ b/src/assets/images/bilibili-icon-light.svg @@ -1,44 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - width="18" - height="18" - viewBox="0 0 18 18" - fill="none" - class="zhuzhan-icon" - version="1.1" - id="svg4" - sodipodi:docname="bilibili-icon-light.svg" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs8" /> - <sodipodi:namedview - id="namedview6" - pagecolor="#afafaf" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="30.562726" - inkscape:cx="0.26175676" - inkscape:cy="9.0633277" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg4" /> - <path - fill-rule="evenodd" - clip-rule="evenodd" - d="m 4.3006643,3.3526156 c -0.3570617,-0.3444557 -0.3570617,-0.9164163 0,-1.2608631 0.3393616,-0.3273766 0.8769747,-0.3273766 1.2163363,0 l 1.8925169,1.8256688 c 0.05376,0.051878 0.099438,0.1089036 0.137015,0.1695424 h 2.8620695 c 0.03765,-0.060639 0.08333,-0.1176645 0.137032,-0.1695424 l 1.8925,-1.8256688 c 0.33937,-0.3273766 0.876974,-0.3273766 1.216345,0 0.357124,0.3444468 0.357124,0.9164074 0,1.2608631 l -0.761175,0.7343481 h 0.567402 c 1.970828,0 3.568565,1.5977 3.568565,3.5685647 v 4.9117096 c 0,1.970829 -1.597737,3.568565 -3.568565,3.568565 H 4.5392942 c -1.9708647,0 -3.56856461,-1.597736 -3.56856461,-3.568565 V 7.6555194 c 0,-1.9708647 1.59769991,-3.5685557 3.56856461,-3.5685557 h 0.5226074 z m 0.2386299,2.4556096 c -0.9854323,0 -1.7842823,0.79885 -1.7842823,1.7842823 v 5.0377165 c 0,0.985458 0.79885,1.784282 1.7842823,1.784282 h 8.9214118 c 0.985458,0 1.784282,-0.798824 1.784282,-1.784282 V 7.5925075 c 0,-0.9854323 -0.798824,-1.7842823 -1.784282,-1.7842823 z m 0.8921411,3.4740333 c 0,-0.4927116 0.3994295,-0.8921411 0.8921412,-0.8921411 0.4927118,0 0.8921412,0.3994295 0.8921412,0.8921411 v 0.7976005 c 0,0.49273 -0.3994294,0.892142 -0.8921412,0.892142 -0.4927117,0 -0.8921412,-0.399412 -0.8921412,-0.892142 z M 11.676424,8.3901174 c -0.49273,0 -0.892142,0.3994295 -0.892142,0.8921411 v 0.7976005 c 0,0.49273 0.399412,0.892142 0.892142,0.892142 0.492729,0 0.892141,-0.399412 0.892141,-0.892142 V 9.2822585 c 0,-0.4927116 -0.399412,-0.8921411 -0.892141,-0.8921411 z" - fill="currentColor" - id="path2" - style="stroke-width:0.892141;fill:#ffffff" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M4.3 3.353a.876.876 0 1 1 1.217-1.261L7.41 3.917q.08.079.137.17h2.862a1 1 0 0 1 .137-.17l1.892-1.825a.876.876 0 0 1 1.216 1.26l-.76.735h.567a3.57 3.57 0 0 1 3.568 3.569v4.911a3.57 3.57 0 0 1-3.568 3.569H4.539a3.57 3.57 0 0 1-3.568-3.569V7.656a3.57 3.57 0 0 1 3.568-3.569h.523zm.24 2.455c-.986 0-1.785.8-1.785 1.785v5.037c0 .986.799 1.785 1.784 1.785h8.922c.985 0 1.784-.8 1.784-1.785V7.593c0-.986-.799-1.785-1.784-1.785zm.891 3.474a.892.892 0 0 1 1.785 0v.798a.892.892 0 1 1-1.785 0zm6.245-.892c-.492 0-.892.4-.892.892v.798a.892.892 0 1 0 1.785 0v-.798c0-.492-.4-.892-.893-.892" style="stroke-width:.892141;fill:#fff"/></svg> \ No newline at end of file diff --git a/src/assets/images/bilibili-icon.svg b/src/assets/images/bilibili-icon.svg index afa54b6f..8cb0016f 100644 --- a/src/assets/images/bilibili-icon.svg +++ b/src/assets/images/bilibili-icon.svg @@ -1,44 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - width="18" - height="18" - viewBox="0 0 18 18" - fill="none" - class="zhuzhan-icon" - version="1.1" - id="svg4" - sodipodi:docname="bilibili-icon.svg" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs8" /> - <sodipodi:namedview - id="namedview6" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="30.562726" - inkscape:cx="4.2208276" - inkscape:cy="9.0633275" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg4" /> - <path - fill-rule="evenodd" - clip-rule="evenodd" - d="m 4.3006643,3.3526156 c -0.3570617,-0.3444557 -0.3570617,-0.9164163 0,-1.2608631 0.3393616,-0.3273766 0.8769747,-0.3273766 1.2163363,0 l 1.8925169,1.8256688 c 0.05376,0.051878 0.099438,0.1089036 0.137015,0.1695424 h 2.8620695 c 0.03765,-0.060639 0.08333,-0.1176645 0.137032,-0.1695424 l 1.8925,-1.8256688 c 0.33937,-0.3273766 0.876974,-0.3273766 1.216345,0 0.357124,0.3444468 0.357124,0.9164074 0,1.2608631 l -0.761175,0.7343481 h 0.567402 c 1.970828,0 3.568565,1.5977 3.568565,3.5685647 v 4.9117096 c 0,1.970829 -1.597737,3.568565 -3.568565,3.568565 H 4.5392942 c -1.9708647,0 -3.56856461,-1.597736 -3.56856461,-3.568565 V 7.6555194 c 0,-1.9708647 1.59769991,-3.5685557 3.56856461,-3.5685557 h 0.5226074 z m 0.2386299,2.4556096 c -0.9854323,0 -1.7842823,0.79885 -1.7842823,1.7842823 v 5.0377165 c 0,0.985458 0.79885,1.784282 1.7842823,1.784282 h 8.9214118 c 0.985458,0 1.784282,-0.798824 1.784282,-1.784282 V 7.5925075 c 0,-0.9854323 -0.798824,-1.7842823 -1.784282,-1.7842823 z m 0.8921411,3.4740333 c 0,-0.4927116 0.3994295,-0.8921411 0.8921412,-0.8921411 0.4927118,0 0.8921412,0.3994295 0.8921412,0.8921411 v 0.7976005 c 0,0.49273 -0.3994294,0.892142 -0.8921412,0.892142 -0.4927117,0 -0.8921412,-0.399412 -0.8921412,-0.892142 z M 11.676424,8.3901174 c -0.49273,0 -0.892142,0.3994295 -0.892142,0.8921411 v 0.7976005 c 0,0.49273 0.399412,0.892142 0.892142,0.892142 0.492729,0 0.892141,-0.399412 0.892141,-0.892142 V 9.2822585 c 0,-0.4927116 -0.399412,-0.8921411 -0.892141,-0.8921411 z" - fill="currentColor" - id="path2" - style="stroke-width:0.892141" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M4.3 3.353a.876.876 0 1 1 1.217-1.261L7.41 3.917q.08.079.137.17h2.862a1 1 0 0 1 .137-.17l1.892-1.825a.876.876 0 0 1 1.216 1.26l-.76.735h.567a3.57 3.57 0 0 1 3.568 3.569v4.911a3.57 3.57 0 0 1-3.568 3.569H4.539a3.57 3.57 0 0 1-3.568-3.569V7.656a3.57 3.57 0 0 1 3.568-3.569h.523zm.24 2.455c-.986 0-1.785.8-1.785 1.785v5.037c0 .986.799 1.785 1.784 1.785h8.922c.985 0 1.784-.8 1.784-1.785V7.593c0-.986-.799-1.785-1.784-1.785zm.891 3.474a.892.892 0 0 1 1.785 0v.798a.892.892 0 1 1-1.785 0zm6.245-.892c-.492 0-.892.4-.892.892v.798a.892.892 0 1 0 1.785 0v-.798c0-.492-.4-.892-.893-.892" style="stroke-width:.892141"/></svg> \ No newline at end of file diff --git a/src/assets/images/bluesky-icon.svg b/src/assets/images/bluesky-icon.svg index 8e916784..dfdf196a 100644 --- a/src/assets/images/bluesky-icon.svg +++ b/src/assets/images/bluesky-icon.svg @@ -1,63 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - width="512" - height="512" - viewBox="0 0 135.46666 135.46667" - version="1.1" - id="svg1" - xml:space="preserve" - inkscape:version="1.3.1 (91b66b0783, 2023-11-16)" - sodipodi:docname="bluesky-icon.svg" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns:xlink="http://www.w3.org/1999/xlink" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview - id="namedview1" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - inkscape:document-units="px" - inkscape:zoom="1.1452094" - inkscape:cx="358.01312" - inkscape:cy="227.46931" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="layer1" /><defs - id="defs1"><linearGradient - id="linearGradient1" - inkscape:collect="always"><stop - style="stop-color:#0062ff;stop-opacity:1;" - offset="0" - id="stop1" /><stop - style="stop-color:#0090fe;stop-opacity:1;" - offset="1" - id="stop2" /></linearGradient><linearGradient - inkscape:collect="always" - xlink:href="#linearGradient1" - id="linearGradient2" - x1="-16.737301" - y1="0.19602649" - x2="-16.737301" - y2="136.34718" - gradientUnits="userSpaceOnUse" /></defs><g - inkscape:label="Layer 1" - inkscape:groupmode="layer" - id="layer1"><rect - style="fill:url(#linearGradient2);stroke-width:1.165;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.53144" - id="rect1" - width="135.46667" - height="136.65152" - x="-4.9023438e-06" - y="-0.59242737" - ry="24.716606" - rx="24.716606" /></g></svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 360 320"><path fill="#fff" d="M254.896 184.158a131 131 0 0 1-6.225-.843q3.154.388 6.225.843"/><path fill="#295ef6" d="M180 141.964c-16.301-31.702-60.692-90.782-101.965-119.92C38.497-5.868 23.414-1.032 13.526 3.436 2.081 8.608 0 26.179 0 36.516s5.667 84.756 9.364 97.178c12.215 41.044 55.696 54.913 95.74 50.462q3.071-.455 6.225-.844-3.094.495-6.225.844c-58.684 8.691-110.8 30.077-42.446 106.174 75.19 77.85 103.047-16.693 117.342-64.628 14.295 47.935 30.76 139.069 115.995 64.628 64.005-64.628 17.585-97.48-41.099-106.172a131 131 0 0 1-6.225-.843q3.154.388 6.225.843c40.044 4.452 83.525-9.418 95.74-50.461 3.697-12.422 9.364-86.84 9.364-97.178s-2.081-27.909-13.526-33.08c-9.888-4.468-24.971-9.305-64.509 18.608C240.692 51.184 196.301 110.262 180 141.964"/></svg> \ No newline at end of file diff --git a/src/assets/images/coub-icon.svg b/src/assets/images/coub-icon.svg new file mode 100644 index 00000000..cc08cd55 --- /dev/null +++ b/src/assets/images/coub-icon.svg @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="46" + height="46" + fill="none" + version="1.1" + id="svg1" + sodipodi:docname="coub-icon.svg" + inkscape:version="1.3.2 (091e20ef0f, 2023-11-25)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs1" /> + <sodipodi:namedview + id="namedview1" + pagecolor="#ffffff" + bordercolor="#000000" + borderopacity="0.25" + inkscape:showpageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + inkscape:deskcolor="#d1d1d1" + inkscape:zoom="13.03536" + inkscape:cx="22.400609" + inkscape:cy="29.228192" + inkscape:window-width="1888" + inkscape:window-height="1052" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:window-maximized="1" + inkscape:current-layer="svg1" /> + <path + id="path3" + style="fill:#ffffff;stroke-width:1.5697" + d="M 26.113281 0.21679688 C 26.210748 0.22999623 26.309175 0.23948989 26.40625 0.25390625 A 23 23 0 0 0 26.113281 0.21679688 z M 19.765625 0.23242188 A 23 23 0 0 0 19.703125 0.24023438 C 19.723861 0.23725622 19.744871 0.23534468 19.765625 0.23242188 z M 10.628906 3.6152344 A 23 23 0 0 0 10.509766 3.6914062 C 10.549312 3.6657711 10.589193 3.6406327 10.628906 3.6152344 z M 8.0117188 5.5605469 A 23 23 0 0 0 7.8710938 5.6835938 C 7.9180075 5.6425732 7.9644699 5.6011912 8.0117188 5.5605469 z M 17.990234 6.140625 C 17.080235 6.2576249 16.298937 7.2892356 16.210938 8.4902344 L 15.535156 14.746094 C 15.488156 15.380093 15.503578 16.266095 15.517578 17.121094 L 15.517578 17.125 C 15.528578 17.757999 15.538437 18.356844 15.523438 18.839844 L 15.464844 20.835938 C 15.444844 21.508937 15.229171 21.988578 14.826172 22.267578 C 14.603172 22.423578 13.856874 22.962798 13.046875 23.716797 C 12.967875 23.790797 12.886594 23.860688 12.808594 23.929688 L 12.779297 23.955078 C 12.182297 24.485078 11.667187 24.942939 11.617188 26.460938 C 11.591188 27.173937 11.623563 27.897892 11.726562 28.962891 C 11.833562 30.07989 12.164625 30.781438 12.515625 31.523438 C 12.571625 31.643437 12.634219 31.769344 12.699219 31.902344 C 13.214218 32.940343 13.918984 34.359798 13.333984 35.966797 L 10.935547 42.552734 A 23 23 0 0 0 21.210938 45.871094 L 23.451172 39.714844 C 23.825172 38.687845 25.069923 37.314608 26.169922 36.099609 L 26.177734 36.091797 C 26.808734 35.397798 27.351594 34.796359 27.558594 34.443359 C 28.485593 32.865361 31.171797 28.358343 31.591797 27.652344 L 31.646484 27.560547 C 32.274484 26.660548 33.283297 25.120233 33.904297 24.115234 L 37.296875 18.603516 C 37.917874 17.596517 37.96339 16.332109 37.400391 15.787109 A 0.97 0.97 0 0 0 37.056641 15.572266 C 36.434641 15.345266 35.607999 15.711376 35 16.484375 L 31.589844 21.240234 C 31.194844 21.740234 30.753171 22.152782 30.326172 22.550781 A 13.43 13.43 0 0 0 29.277344 23.607422 L 28.927734 24.013672 A 0.24 0.24 0 0 1 28.761719 24.097656 A 0.44 0.44 0 0 1 28.582031 24.072266 C 28.460031 24.028266 28.263406 23.890031 28.316406 23.457031 L 28.316406 23.451172 C 28.346406 23.322172 28.899795 20.884562 27.341797 20.226562 L 27.271484 20.199219 C 26.416485 19.887219 25.734515 20.423267 24.978516 21.322266 C 24.864516 21.458265 24.633625 21.470734 24.515625 21.427734 A 0.447 0.447 0 0 1 24.234375 20.888672 C 24.504375 19.680673 24.00678 18.550125 23.050781 18.203125 L 22.976562 18.179688 C 22.145563 17.912688 21.141062 18.254673 20.539062 19.013672 A 0.24 0.24 0 0 1 20.462891 19.078125 C 20.342891 19.192125 20.137062 19.350531 19.914062 19.269531 C 19.674063 19.182531 19.617703 18.891687 19.595703 18.679688 L 19.568359 18.417969 C 19.542359 18.157969 19.509656 17.857156 19.472656 17.535156 L 19.470703 17.525391 C 19.350703 16.473392 19.202563 15.16878 19.226562 14.300781 L 19.59375 8.1113281 C 19.61875 7.207329 19.204546 6.4371248 18.560547 6.203125 A 1.206 1.206 0 0 0 17.990234 6.140625 z M 5.6835938 7.8710938 A 23 23 0 0 0 5.5605469 8.0117188 C 5.6011912 7.9644699 5.6425732 7.9180075 5.6835938 7.8710938 z M 3.6914062 10.509766 A 23 23 0 0 0 3.6152344 10.628906 C 3.6406327 10.589193 3.6657711 10.549312 3.6914062 10.509766 z M 45.746094 19.59375 C 45.76051 19.690825 45.770004 19.789252 45.783203 19.886719 A 23 23 0 0 0 45.746094 19.59375 z M 0.24023438 19.703125 A 23 23 0 0 0 0.23242188 19.765625 C 0.23534468 19.744871 0.23725622 19.723861 0.24023438 19.703125 z M 0.23242188 26.232422 A 23 23 0 0 0 0.25 26.347656 C 0.24436597 26.309056 0.23786388 26.271084 0.23242188 26.232422 z M 45.767578 26.234375 C 45.764655 26.255129 45.762744 26.276139 45.759766 26.296875 A 23 23 0 0 0 45.767578 26.234375 z M 0.91796875 29.419922 A 23 23 0 0 0 0.95898438 29.554688 C 0.94559095 29.509599 0.93109267 29.465125 0.91796875 29.419922 z M 2.046875 32.472656 A 23 23 0 0 0 2.1152344 32.621094 C 2.0924183 32.571652 2.0693497 32.522287 2.046875 32.472656 z M 3.609375 35.359375 A 23 23 0 0 0 3.6796875 35.474609 C 3.6552741 35.436877 3.633573 35.397259 3.609375 35.359375 z M 42.384766 35.371094 C 42.359367 35.410807 42.334229 35.450688 42.308594 35.490234 A 23 23 0 0 0 42.384766 35.371094 z M 40.439453 37.988281 C 40.398809 38.03553 40.357427 38.081993 40.316406 38.128906 A 23 23 0 0 0 40.439453 37.988281 z M 5.5820312 38.015625 A 23 23 0 0 0 5.6992188 38.144531 C 5.6609425 38.100838 5.619981 38.05961 5.5820312 38.015625 z M 7.828125 40.273438 A 23 23 0 0 0 8.078125 40.488281 C 7.9946046 40.416944 7.9106056 40.345944 7.828125 40.273438 z M 38.128906 40.316406 C 38.081993 40.357427 38.03553 40.398809 37.988281 40.439453 A 23 23 0 0 0 38.128906 40.316406 z M 10.462891 42.273438 A 23 23 0 0 0 10.640625 42.390625 C 10.580779 42.352394 10.522357 42.312206 10.462891 42.273438 z M 35.490234 42.308594 C 35.450688 42.334229 35.410807 42.359367 35.371094 42.384766 A 23 23 0 0 0 35.490234 42.308594 z M 26.296875 45.759766 C 26.276139 45.762744 26.255129 45.764655 26.234375 45.767578 A 23 23 0 0 0 26.296875 45.759766 z " /> + <path + fill-rule="evenodd" + clip-rule="evenodd" + d="m 46,23 c 0,12.703 -10.297,23 -23,23 -0.61,0 -1.214,-0.024 -1.811,-0.07 l 2.262,-6.216 c 0.374,-1.027 1.619,-2.4 2.719,-3.615 l 0.007,-0.008 c 0.631,-0.694 1.175,-1.295 1.382,-1.648 0.927,-1.578 3.613,-6.084 4.033,-6.79 l 0.055,-0.092 c 0.628,-0.9 1.636,-2.44 2.257,-3.445 l 3.392,-5.512 c 0.621,-1.007 0.668,-2.272 0.105,-2.817 A 0.97,0.97 0 0 0 37.057,15.572 C 36.435,15.345 35.608,15.712 35,16.485 l -3.41,4.756 c -0.395,0.5 -0.836,0.912 -1.263,1.31 a 13.43,13.43 0 0 0 -1.05,1.056 l -0.35,0.407 a 0.24,0.24 0 0 1 -0.165,0.083 0.44,0.44 0 0 1 -0.18,-0.024 C 28.46,24.029 28.264,23.89 28.317,23.457 v -0.005 c 0.03,-0.129 0.583,-2.568 -0.975,-3.226 L 27.272,20.2 c -0.855,-0.312 -1.537,0.224 -2.293,1.123 -0.114,0.136 -0.346,0.148 -0.464,0.105 a 0.447,0.447 0 0 1 -0.28,-0.54 c 0.27,-1.208 -0.228,-2.337 -1.184,-2.684 l -0.074,-0.025 c -0.831,-0.267 -1.835,0.075 -2.437,0.834 a 0.24,0.24 0 0 1 -0.078,0.065 c -0.12,0.114 -0.325,0.272 -0.548,0.191 -0.24,-0.087 -0.296,-0.378 -0.318,-0.59 l -0.027,-0.262 c -0.026,-0.26 -0.06,-0.56 -0.097,-0.882 L 19.471,17.526 C 19.351,16.474 19.203,15.168 19.227,14.3 L 19.594,8.111 C 19.619,7.207 19.204,6.437 18.56,6.203 A 1.206,1.206 0 0 0 17.991,6.141 c -0.91,0.117 -1.692,1.149 -1.78,2.35 l -0.676,6.256 c -0.047,0.634 -0.032,1.519 -0.018,2.374 v 0.004 c 0.011,0.633 0.022,1.232 0.007,1.715 l -0.06,1.995 c -0.02,0.673 -0.235,1.154 -0.638,1.433 -0.223,0.156 -0.97,0.694 -1.78,1.448 -0.079,0.074 -0.159,0.145 -0.237,0.214 l -0.03,0.026 c -0.597,0.53 -1.112,0.987 -1.162,2.505 -0.026,0.713 0.007,1.437 0.11,2.502 0.107,1.117 0.437,1.818 0.788,2.56 0.056,0.12 0.12,0.247 0.185,0.38 0.515,1.038 1.219,2.456 0.634,4.063 L 10.926,42.58 C 4.37,38.528 0,31.274 0,23 0,10.297 10.297,0 23,0 35.703,0 46,10.297 46,23 Z" + fill="#0043ff" + id="path1" /> +</svg> diff --git a/src/assets/images/deviantArt-icon.svg b/src/assets/images/deviantArt-icon.svg new file mode 100644 index 00000000..30836c15 --- /dev/null +++ b/src/assets/images/deviantArt-icon.svg @@ -0,0 +1,474 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Generator: Adobe Illustrator 23.0.4, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> + +<svg + version="1.1" + id="svg2" + x="0px" + y="0px" + viewBox="0 0 256 256" + xml:space="preserve" + sodipodi:docname="DeviantArt_Logo.svg" + width="256" + height="256" + inkscape:version="1.3.2 (091e20ef0f, 2023-11-25)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:ns="http://ns.adobe.com/SaveForWeb/1.0/"><defs + id="defs1" /> +<style + type="text/css" + id="style1"> + .st0{fill:#24E39D;} + .st1{display:none;} + .st2{display:inline;fill:none;stroke:#868686;stroke-width:0.4;stroke-miterlimit:10;stroke-dasharray:2;} + .st3{display:inline;fill:none;stroke:#9C9B9B;stroke-width:0.25;stroke-miterlimit:10;stroke-dasharray:2;} + .st4{display:inline;fill:none;stroke:#868686;stroke-width:0.2;stroke-miterlimit:10;stroke-dasharray:2;} + .st5{display:inline;} + .st6{fill:#6F6F6E;} + .st7{fill:none;stroke:#6F6F6E;stroke-width:0.5;stroke-miterlimit:10;} + .st8{display:inline;fill:#D9D9D9;} +</style> +<metadata + id="metadata174"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + + </cc:Work> + </rdf:RDF> + <ns:sfw> + <ns:slices /> + <ns:sliceSourceBounds + bottomLeftOrigin="true" + height="372.2" + width="962.9" + x="-7.3" + y="0" /> + </ns:sfw> +</metadata> +<sodipodi:namedview + bordercolor="#666666" + borderopacity="1" + gridtolerance="10" + guidetolerance="10" + id="namedview170" + inkscape:current-layer="svg2" + inkscape:cx="167" + inkscape:cy="53" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-height="1056" + inkscape:window-maximized="1" + inkscape:window-width="1888" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:zoom="1" + objecttolerance="10" + pagecolor="#ffffff" + showgrid="false" + inkscape:showpageshadow="2" + inkscape:pagecheckerboard="0" + inkscape:deskcolor="#d1d1d1"> + </sodipodi:namedview> +<polygon + id="polygon8" + class="st0" + points="37.1,204.3 40.9,200.6 58.4,167.2 63.9,163.5 126.5,163.5 126.5,112.4 92.1,112.4 89,108.7 126.5,37.2 126.5,0 126.4,0 89.3,0 85.6,3.7 68.1,37.2 62.6,40.9 0,40.9 0,91.9 34.4,91.9 37.5,95.6 0,167.2 0,204.3 " + transform="translate(64.75,25.85)" /> + + +<g + id="Construction" + transform="translate(0,-191.65601)" + class="st1"> + <line + id="line35" + class="st2" + x1="225.10001" + y1="340.39999" + x2="372.89999" + y2="58.299999" /> + <line + id="line37" + class="st2" + x1="453.29999" + y1="340.39999" + x2="601.09998" + y2="58.299999" /> + <line + id="line39" + class="st2" + x1="539.59998" + y1="340.39999" + x2="687.29999" + y2="58.599998" /> + <line + id="line41" + class="st2" + x1="776.90002" + y1="340.39999" + x2="924.70001" + y2="58.299999" /> + <line + id="line43" + class="st2" + x1="110.9" + y1="342.5" + x2="259.79999" + y2="58.299999" /> + <line + id="line45" + class="st2" + x1="52.599998" + y1="342.5" + x2="201.39999" + y2="58.299999" /> + <line + id="line47" + class="st3" + x1="67.099998" + y1="188.8" + x2="921.70001" + y2="188.8" /> + <line + id="line49" + class="st3" + x1="67.099998" + y1="96.900002" + x2="921.70001" + y2="96.900002" /> + <line + id="line51" + class="st3" + x1="67.099998" + y1="301.20001" + x2="921.70001" + y2="301.20001" /> + <line + id="line53" + class="st3" + x1="67.099998" + y1="209.3" + x2="921.70001" + y2="209.3" /> + <line + id="line55" + class="st4" + x1="354.5" + y1="340.39999" + x2="287.10001" + y2="58.299999" /> + <line + id="line57" + class="st4" + x1="539.59998" + y1="340.39999" + x2="472.70001" + y2="60.099998" /> + <line + id="line59" + class="st4" + x1="754.5" + y1="340.39999" + x2="687.20001" + y2="58.299999" /> +</g> +<g + id="Guidelines" + transform="translate(0,-191.65601)" + class="st1"> + <line + id="line62" + class="st3" + x1="27.1" + y1="188.8" + x2="904.5" + y2="188.8" /> + <line + id="line64" + class="st3" + x1="27.1" + y1="137.8" + x2="93.699997" + y2="137.8" /> + <line + id="line66" + class="st3" + x1="220.10001" + y1="96.900002" + x2="220.10001" + y2="364.5" /> + <line + id="line68" + class="st3" + x1="245.60001" + y1="96.900002" + x2="245.60001" + y2="364.5" /> + <g + id="g70" + class="st5"> + <path + id="path72" + inkscape:connector-curvature="0" + class="st6" + d="m -0.3,163.6 3.7,5.7 H 0.2 l -2.2,-3.4 -2.2,3.4 h -3.2 l 3.7,-5.7 -3.5,-5.4 H -4 l 2,3.2 2.1,-3.2 h 3.1 c 0.1,0 -3.5,5.4 -3.5,5.4 z" /> + </g> + <g + id="g74" + class="st5"> + <g + id="g76"> + <line + id="line78" + class="st7" + x1="12.8" + y1="139" + x2="12.8" + y2="187.8" /> + <g + id="g80"> + <circle + id="circle82" + class="st6" + cx="12.8" + cy="139.10001" + r="1.3" /> + </g> + <g + id="g84"> + <circle + id="circle86" + class="st6" + cx="12.8" + cy="187.7" + r="1.3" /> + </g> + </g> + </g> + <g + id="g88" + class="st5"> + <path + id="path90" + inkscape:connector-curvature="0" + class="st6" + d="m 215.7,386 c 0,-3.4 1.9,-5.7 4.6,-5.7 2.7,0 4.6,2.3 4.6,5.7 0,3.4 -1.9,5.7 -4.6,5.7 -2.7,0 -4.6,-2.3 -4.6,-5.7 z m 2.8,0 c 0,1.7 0.5,3.2 1.8,3.2 1.3,0 1.8,-1.5 1.8,-3.2 0,-1.7 -0.5,-3.2 -1.8,-3.2 -1.3,0 -1.8,1.5 -1.8,3.2 z" /> + <path + id="path92" + inkscape:connector-curvature="0" + class="st6" + d="m 226.8,388.3 c 0.9,0 1.7,0.7 1.7,1.7 0,1 -0.7,1.7 -1.7,1.7 -0.9,0 -1.7,-0.7 -1.7,-1.7 0.1,-1 0.8,-1.7 1.7,-1.7 z" /> + <path + id="path94" + inkscape:connector-curvature="0" + class="st6" + d="m 232.1,387.1 h -2.3 v -6.6 h 6.8 v 2.5 h -4.5 v 1.7 c 0.3,-0.2 1,-0.4 1.7,-0.4 2.2,0 3.6,1.5 3.6,3.7 0,2.3 -1.6,3.8 -4,3.8 -2.5,0 -4.1,-1.5 -4.2,-3.7 h 2.8 c 0.1,0.8 0.6,1.3 1.4,1.3 0.8,0 1.3,-0.6 1.3,-1.4 0,-0.8 -0.5,-1.4 -1.3,-1.4 -0.6,-0.1 -1,0.2 -1.3,0.5 z" /> + <path + id="path96" + inkscape:connector-curvature="0" + class="st6" + d="m 248.5,385.9 3.7,5.7 H 249 l -2.2,-3.4 -2.2,3.4 h -3.2 l 3.7,-5.7 -3.5,-5.4 h 3.2 l 2,3.1 2.1,-3.1 h 3.1 z" /> + </g> + <g + id="g98" + class="st5"> + <g + id="g100"> + <line + id="line102" + class="st7" + x1="221.3" + y1="368.79999" + x2="245.10001" + y2="368.79999" /> + <g + id="g104"> + <circle + id="circle106" + class="st6" + cx="221.39999" + cy="368.79999" + r="1.3" /> + </g> + <g + id="g108"> + <circle + id="circle110" + class="st6" + cx="245.10001" + cy="368.79999" + r="1.3" /> + </g> + </g> + </g> + <g + id="g112" + class="st5"> + <g + id="g114"> + <line + id="line116" + class="st7" + x1="38.099998" + y1="47" + x2="38.099998" + y2="95.800003" /> + <g + id="g118"> + <circle + id="circle120" + class="st6" + cx="38.099998" + cy="47.099998" + r="1.3" /> + </g> + <g + id="g122"> + <circle + id="circle124" + class="st6" + cx="38.099998" + cy="95.699997" + r="1.3" /> + </g> + </g> + </g> + <g + id="g126" + class="st5"> + <path + id="path128" + inkscape:connector-curvature="0" + class="st6" + d="m 70.1,29.2 3.7,5.7 h -3.2 l -2.2,-3.4 -2.2,3.4 H 63 l 3.7,-5.7 -3.5,-5.4 h 3.2 l 2,3.2 2.1,-3.2 h 3.1 c 0,0 -3.5,5.4 -3.5,5.4 z" /> + </g> + <g + id="g130" + class="st5"> + <path + id="path132" + inkscape:connector-curvature="0" + class="st6" + d="M 26.6,70.3 30.3,76 H 27.1 L 24.9,72.6 22.7,76 h -3.2 l 3.7,-5.7 -3.5,-5.4 h 3.2 l 2,3.2 2.1,-3.2 h 3.1 z" /> + </g> + <g + id="g134" + class="st5"> + <g + id="g136"> + <line + id="line138" + class="st7" + x1="92.5" + y1="41.5" + x2="43.799999" + y2="41.5" /> + <g + id="g140"> + <circle + id="circle142" + class="st6" + cx="92.5" + cy="41.5" + r="1.3" /> + </g> + <g + id="g144"> + <circle + id="circle146" + class="st6" + cx="43.900002" + cy="41.5" + r="1.3" /> + </g> + </g> + </g> + <rect + id="rect148" + x="16.799999" + y="137.89999" + class="st8" + width="8.1000004" + height="51" /> + <rect + id="rect150" + x="93.699997" + y="45.900002" + class="st8" + width="8.1000004" + height="51" /> + <rect + id="rect152" + x="896.29999" + y="45.900002" + class="st8" + width="8.1000004" + height="51" /> + <rect + id="rect154" + x="93.699997" + y="301.20001" + class="st8" + width="8.1000004" + height="51" /> + <rect + id="rect156" + x="896.29999" + y="301.20001" + class="st8" + width="8.1000004" + height="51" /> + <rect + id="rect158" + x="42.700001" + y="96.900002" + class="st8" + width="51" + height="8.1000004" /> + <rect + id="rect160" + x="42.700001" + y="293.10001" + class="st8" + width="51" + height="8.1000004" /> + <rect + id="rect162" + x="904.5" + y="96.900002" + class="st8" + width="51" + height="8.1000004" /> + <rect + id="rect164" + x="904.5" + y="293.10001" + class="st8" + width="51" + height="8.1000004" /> + <rect + id="rect166" + x="93.699997" + y="96.900002" + class="st3" + width="810.79999" + height="204.3" /> + <rect + id="rect168" + x="42.700001" + y="45.900002" + class="st3" + width="912.79999" + height="306.39999" /> +</g> +</svg> diff --git a/src/assets/images/fandom-icon.svg b/src/assets/images/fandom-icon.svg index 0cd873bf..c49375b3 100644 --- a/src/assets/images/fandom-icon.svg +++ b/src/assets/images/fandom-icon.svg @@ -1 +1 @@ -<svg xmlns="http://www.w3.org/2000/svg" id="wds-brand-fandom-logomark" viewBox="0 0 174 242"><path fill="#FA005A" d="M166.935 118.154L50.108 1.273C49.504.67 48.735.259 47.898.093c-.837-.166-1.705-.08-2.493.247-.788.327-1.461.88-1.935 1.59-.474.71-.727 1.546-.727 2.4v98.276L7.365 67.22c-.604-.604-1.373-1.014-2.21-1.18-.837-.166-1.704-.08-2.492.247-.789.327-1.462.88-1.936 1.59-.474.71-.727 1.545-.727 2.4v101.487c-.003 3.172.62 6.312 1.833 9.242 1.214 2.929 2.993 5.59 5.237 7.83l46.037 46.099c4.528 4.53 10.666 7.078 17.068 7.085h33.68c6.4-.003 12.537-2.547 17.063-7.075l46.027-46.099c2.239-2.242 4.014-4.904 5.225-7.833 1.21-2.93 1.832-6.069 1.83-9.239v-36.533c.002-3.173-.621-6.315-1.834-9.247-1.212-2.932-2.989-5.596-5.231-7.84z"/><path fill="#FFC500" d="M131.297 160.901c.001 1.915-.757 3.754-2.108 5.111l-37.11 37.3c-.672.677-1.472 1.215-2.354 1.582-.88.366-1.826.555-2.78.555-.954 0-1.9-.189-2.78-.555-.882-.367-1.682-.905-2.355-1.582l-36.99-37.3c-1.352-1.351-2.114-3.184-2.117-5.096v-14.191c0-.951.19-1.892.554-2.77.366-.878.9-1.675 1.574-2.346l13.317-13.328c.672-.675 1.47-1.209 2.35-1.574.879-.365 1.82-.553 2.772-.553.952 0 1.894.188 2.773.553.879.365 1.677.899 2.35 1.574l18.624 18.645 18.596-18.65c.672-.675 1.47-1.209 2.349-1.574.879-.365 1.821-.553 2.773-.553.951 0 1.893.188 2.772.553.879.365 1.677.899 2.349 1.574l13.318 13.328c.673.671 1.207 1.469 1.571 2.347.364.877.552 1.819.552 2.769v14.181z"/></svg> \ No newline at end of file +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 174 242"><path fill="#FA005A" d="M166.935 118.154 50.108 1.273A4.32 4.32 0 0 0 45.405.34a4.31 4.31 0 0 0-2.662 3.99v98.276L7.365 67.22a4.31 4.31 0 0 0-4.702-.933A4.31 4.31 0 0 0 0 70.277v101.487a24.1 24.1 0 0 0 7.07 17.072l46.037 46.099a24.17 24.17 0 0 0 17.068 7.085h33.68a24.14 24.14 0 0 0 17.063-7.075l46.027-46.099A24.13 24.13 0 0 0 174 171.774v-36.533a24.15 24.15 0 0 0-1.834-9.247 24.1 24.1 0 0 0-5.231-7.84"/><path fill="#FFC500" d="M131.297 160.901a7.24 7.24 0 0 1-2.108 5.111l-37.11 37.3a7.23 7.23 0 0 1-7.914 1.582 7.25 7.25 0 0 1-2.355-1.582l-36.99-37.3a7.22 7.22 0 0 1-2.117-5.096v-14.191a7.23 7.23 0 0 1 2.128-5.116l13.317-13.328a7.225 7.225 0 0 1 10.245 0l18.624 18.645 18.596-18.65a7.22 7.22 0 0 1 5.122-2.127 7.23 7.23 0 0 1 5.121 2.127l13.318 13.328a7.22 7.22 0 0 1 2.123 5.116z"/></svg> \ No newline at end of file diff --git a/src/assets/images/geeksForGeeks-icon.svg b/src/assets/images/geeksForGeeks-icon.svg new file mode 100644 index 00000000..52e19607 --- /dev/null +++ b/src/assets/images/geeksForGeeks-icon.svg @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + id="GFG" + width="70" + height="70" + viewBox="0 0 70 70.000001" + version="1.1" + sodipodi:docname="gfg-gg-logo.svg" + inkscape:version="1.3.2 (091e20ef0f, 2023-11-25)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs1" /> + <sodipodi:namedview + id="namedview1" + pagecolor="#ffffff" + bordercolor="#000000" + borderopacity="0.25" + inkscape:showpageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + inkscape:deskcolor="#d1d1d1" + inkscape:zoom="7.4688057" + inkscape:cx="17.941289" + inkscape:cy="21.020764" + inkscape:window-width="1888" + inkscape:window-height="1052" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:window-maximized="1" + inkscape:current-layer="GFG" /> + <path + id="Path_402" + data-name="Path 402" + d="m 64.495957,33.850871 h -24.407 a 9.748,9.748 0 0 1 17.129,-5.146 l 3.55,-3.57 a 14.77,14.77 0 0 0 -25.724,8.716 h -0.085 a 14.77,14.77 0 0 0 -25.7240007,-8.716 l 3.5499997,3.57 a 9.748,9.748 0 0 1 17.129001,5.146 H 5.5059563 q -0.043,0.565 -0.044,1.141 a 14.771,14.771 0 0 0 29.1490007,3.383 h 0.778 a 14.769,14.769 0 0 0 29.149,-3.383 q 0.002,-0.576 -0.042,-1.141 z m -44.264,10.889 a 9.749,9.749 0 0 1 -9.151001,-6.385 h 18.300001 a 9.75,9.75 0 0 1 -9.149,6.385 z m 29.538,0 a 9.75,9.75 0 0 1 -9.152,-6.385 h 18.3 a 9.75,9.75 0 0 1 -9.147,6.385 z" + fill="#2f8d46" /> +</svg> diff --git a/src/assets/images/general-icon-light.svg b/src/assets/images/general-icon-light.svg index 9e4c8a06..b806a4ce 100644 --- a/src/assets/images/general-icon-light.svg +++ b/src/assets/images/general-icon-light.svg @@ -1,41 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - enable-background="new 0 0 24 24" - height="26px" - viewBox="0 0 24 24" - width="26px" - fill="currentColor" - version="1.1" - id="svg675" - sodipodi:docname="general-icon-white.svg" - inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs679" /> - <sodipodi:namedview - id="namedview677" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="29.923077" - inkscape:cx="9.7583548" - inkscape:cy="13" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg675" /> - <path - d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z" - id="path673" - style="fill:#ffffff" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="#fff" d="M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58a.49.49 0 0 0 .12-.61l-1.92-3.32a.49.49 0 0 0-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54a.484.484 0 0 0-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58a.49.49 0 0 0-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6"/></svg> diff --git a/src/assets/images/general-icon.svg b/src/assets/images/general-icon.svg index 55c5f8bc..a6f96ba9 100644 --- a/src/assets/images/general-icon.svg +++ b/src/assets/images/general-icon.svg @@ -1,3 +1 @@ -<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor"> - <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58a.49.49 0 0 0 .12-.61l-1.92-3.32a.49.49 0 0 0-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54a.484.484 0 0 0-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58a.49.49 0 0 0-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6"/></svg> \ No newline at end of file diff --git a/src/assets/images/genius-icon.svg b/src/assets/images/genius-icon.svg index 98a1ca7c..3bd7d723 100644 --- a/src/assets/images/genius-icon.svg +++ b/src/assets/images/genius-icon.svg @@ -1,62 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Generator: Adobe Illustrator 23.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> - -<svg - version="1.1" - id="Layer_1" - x="0px" - y="0px" - viewBox="0 0 893.80809 893.80808" - xml:space="preserve" - sodipodi:docname="genius-icon.svg" - width="893.80811" - height="893.80811" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"><defs - id="defs17" /><sodipodi:namedview - id="namedview15" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="0.35355339" - inkscape:cx="183.84776" - inkscape:cy="234.75945" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="Layer_1" /> -<style - type="text/css" - id="style2"> - .st0{fill:#F6F069;} -</style> -<circle - style="fill:#f6f069;fill-opacity:1;fill-rule:evenodd;stroke-width:9.79459;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.411765;paint-order:stroke fill markers;stop-color:#000000" - id="path298" - cx="446.90405" - cy="446.90405" - r="446.90405" /><g - id="g12" - transform="matrix(0.83247878,0,0,0.83247878,104.68007,147.4041)"> - - <path - d="m 745,306.7 c -0.3,-17.2 -2.1,-34.2 -4.9,-51.1 -10.9,-63.8 -37.7,-120.1 -79.4,-169.4 -4.3,-5.1 -8.8,-10 -13.5,-14.8 -2.9,-3 -6.6,-3.3 -9.5,-1.3 -2.8,1.9 -3.6,4.8 -2.4,8.9 0.3,1 0.7,1.9 1,2.8 16,42.7 24.2,86.8 24.5,132.4 -0.4,8.3 -0.8,16.6 -1.2,24.9 -1.2,22.7 -4.8,45 -10.5,66.9 -18.3,70.5 -53.7,131.1 -107.1,180.6 -69.6,64.5 -152.3,97.7 -247.1,100.4 -23.9,0.7 -47.6,-1.3 -71.1,-5.4 -24,-4.1 -47.5,-10.5 -70.2,-19.3 -5,-1.9 -8.5,-1 -10.5,2.5 -2,3.3 -1.2,6.4 2.7,10.1 3.3,3.1 6.6,6.1 10,9.1 65.2,56.5 141.1,85.6 227.2,88.1 20.8,0.6 41.6,-1 62.2,-4.4 74.2,-12 139,-43.7 192.5,-96.5 C 711.1,498.8 747,410.3 745,306.7 Z" - id="path6" /> - <path - d="m 174,403.9 c 2.9,-2.2 3.4,-5.1 1.8,-10 -0.2,-0.5 -0.3,-0.9 -0.5,-1.4 -12.4,-35 -15.9,-71 -10.6,-107.7 7,-48.3 27.5,-90.1 60.9,-125.5 2.7,-2.9 4,-5.8 4,-9.8 -0.1,-12.5 -0.1,-25 -0.1,-37.5 0,-12.3 0,-24.7 0,-37 0,-8 -2.4,-10.5 -10.4,-10.5 -24.7,0 -49.3,0 -74,-0.1 -4.1,0 -7.4,1.2 -10.3,4 -41,39.9 -62.8,88.6 -66.2,145.5 -1.3,21.7 1.2,43.2 6.8,64.3 14,52.6 43.6,94.1 88.5,124.7 4.5,3.1 7.1,3.3 10.1,1 z" - id="path8" /> - <path - d="m 310.7,247.1 c 6.1,45.6 49.2,77.8 94.6,70.5 40.3,-6.5 69.6,-40.8 69.6,-81.7 0,-8.2 0,-16.3 0,-24.5 0,-10.7 0,-21.3 0,-32 0,-6.8 1.8,-8.5 8.6,-8.6 6.3,-0.1 12.7,0.1 19,-0.1 5.8,-0.2 8.4,-3.7 7.4,-9.3 -0.2,-1 -0.3,-2 -0.5,-2.9 C 501.8,126.4 488,97.4 468,71.2 c -3.7,-4.8 -7.8,-6.6 -13.6,-6.5 -16.8,0.2 -33.6,0 -50.5,0.1 -1.8,0 -3.7,0.1 -5.5,0.4 -4.2,0.7 -6.1,2.7 -6.7,6.9 -0.2,1.6 -0.1,3.3 -0.1,5 0,26.2 0,52.3 0,78.5 0,10.8 -2.1,21.2 -6.5,31.1 -13,28.6 -35.5,44.5 -66.5,48.7 -6.5,0.9 -8.4,3 -8.1,9.4 0.1,0.6 0.1,1.5 0.2,2.3 z" - id="path10" /> -</g> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 893.808 893.808"><circle cx="446.904" cy="446.904" r="446.904" style="fill:#f6f069;fill-opacity:1;fill-rule:evenodd;stroke-width:9.79459;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:.411765;paint-order:stroke fill markers;stop-color:#000"/><path d="M724.877 402.725c-.25-14.318-1.748-28.47-4.08-42.54-9.073-53.111-31.384-99.98-66.098-141.021-3.58-4.246-7.326-8.325-11.239-12.32-2.414-2.498-5.494-2.748-7.908-1.083-2.331 1.582-2.997 3.996-1.998 7.409.25.832.583 1.582.832 2.33 13.32 35.548 20.146 72.26 20.396 110.221l-.999 20.729c-.999 18.897-3.996 37.461-8.741 55.693-15.234 58.69-44.704 109.138-89.158 150.345-57.941 53.695-126.787 81.333-205.706 83.581-19.896.583-39.626-1.082-59.19-4.495-19.979-3.413-39.542-8.741-58.44-16.067-4.162-1.582-7.075-.833-8.74 2.081-1.665 2.747-1 5.328 2.247 8.408a359 359 0 0 0 8.325 7.576c54.278 47.035 117.463 71.26 189.14 73.341 17.315.5 34.63-.832 51.78-3.663 61.77-9.99 115.714-36.38 160.252-80.334 61.104-60.271 90.99-133.946 89.325-220.19M249.531 483.642c2.415-1.831 2.83-4.245 1.499-8.325-.167-.416-.25-.749-.416-1.165-10.323-29.137-13.237-59.106-8.825-89.658 5.828-40.209 22.893-75.006 50.698-104.476 2.248-2.414 3.33-4.828 3.33-8.158-.083-10.406-.083-20.812-.083-31.218V209.84c0-6.66-1.998-8.741-8.658-8.741-20.562 0-41.041 0-61.603-.083-3.413 0-6.16.999-8.575 3.33-34.131 33.216-52.28 73.757-55.11 121.125-1.082 18.065 1 35.963 5.661 53.529 11.655 43.788 36.296 78.336 73.674 103.81 3.746 2.58 5.91 2.747 8.408.832"/><path d="M363.331 353.11c5.078 37.96 40.958 64.766 78.753 58.69 33.549-5.412 57.94-33.966 57.94-68.014V296.75c0-5.66 1.499-7.075 7.16-7.159 5.244-.083 10.572.084 15.817-.083 4.828-.166 6.992-3.08 6.16-7.742-.166-.832-.25-1.665-.416-2.414-6.327-26.723-17.815-50.864-34.465-72.675-3.08-3.996-6.493-5.495-11.322-5.412-13.985.167-27.97 0-42.04.084-1.498 0-3.08.083-4.578.333-3.497.582-5.079 2.247-5.578 5.744-.166 1.332-.083 2.747-.083 4.162v65.35c0 8.99-1.748 17.648-5.411 25.89-10.823 23.809-29.553 37.045-55.36 40.542-5.411.749-6.993 2.497-6.743 7.825.083.5.083 1.249.166 1.915"/></svg> diff --git a/src/assets/images/github-icon-light.svg b/src/assets/images/github-icon-light.svg index d5e64918..e8d2b8a0 100644 --- a/src/assets/images/github-icon-light.svg +++ b/src/assets/images/github-icon-light.svg @@ -1 +1 @@ -<svg width="98" height="96" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z" fill="#fff"/></svg> \ No newline at end of file +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 98 96"><path fill="#fff" d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a47 47 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0"/></svg> diff --git a/src/assets/images/github-icon.svg b/src/assets/images/github-icon.svg index 37fa923d..38c6889d 100644 --- a/src/assets/images/github-icon.svg +++ b/src/assets/images/github-icon.svg @@ -1 +1 @@ -<svg width="98" height="96" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z" fill="#24292f"/></svg> \ No newline at end of file +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 98 96"><path fill="#24292f" d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a47 47 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0"/></svg> \ No newline at end of file diff --git a/src/assets/images/gitlab-icon.svg b/src/assets/images/gitlab-icon.svg index 2c218a2b..bb61f3bd 100644 --- a/src/assets/images/gitlab-icon.svg +++ b/src/assets/images/gitlab-icon.svg @@ -1 +1 @@ -<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m24.507 9.5-.034-.09L21.082.562a.896.896.0 00-1.694.091l-2.29 7.01H7.825L5.535.653A.898.898.0 003.841.563L.451 9.411.416 9.5a6.297 6.297.0 002.09 7.278l.012.01.03.022 5.16 3.867 2.56 1.935 1.554 1.176a1.051 1.051.0 001.268.0l1.555-1.176 2.56-1.935 5.197-3.89.014-.01A6.297 6.297.0 0024.507 9.5z" fill="#e24329"/><path d="m24.507 9.5-.034-.09a11.44 11.44.0 00-4.56 2.051l-7.447 5.632 4.742 3.584 5.197-3.89.014-.01A6.297 6.297.0 0024.507 9.5z" fill="#fc6d26"/><path d="m7.707 20.677 2.56 1.935 1.555 1.176a1.051 1.051.0 001.268.0l1.555-1.176 2.56-1.935-4.743-3.584-4.755 3.584z" fill="#fca326"/><path d="M5.01 11.461A11.43 11.43.0 00.45 9.411L.416 9.5a6.297 6.297.0 002.09 7.278l.012.01.03.022 5.16 3.867 4.745-3.584-7.444-5.632z" fill="#fc6d26"/></svg> \ No newline at end of file +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 24"><path fill="#e24329" d="m24.507 9.5-.034-.09L21.082.562a.896.896 0 0 0-1.694.091l-2.29 7.01H7.825L5.535.653a.898.898 0 0 0-1.694-.09L.451 9.411.416 9.5a6.3 6.3 0 0 0 2.09 7.278l.012.01.03.022 5.16 3.867 2.56 1.935 1.554 1.176a1.05 1.05 0 0 0 1.268 0l1.555-1.176 2.56-1.935 5.197-3.89.014-.01A6.3 6.3 0 0 0 24.507 9.5"/><path fill="#fc6d26" d="m24.507 9.5-.034-.09a11.4 11.4 0 0 0-4.56 2.051l-7.447 5.632 4.742 3.584 5.197-3.89.014-.01A6.3 6.3 0 0 0 24.507 9.5"/><path fill="#fca326" d="m7.707 20.677 2.56 1.935 1.555 1.176a1.05 1.05 0 0 0 1.268 0l1.555-1.176 2.56-1.935-4.743-3.584z"/><path fill="#fc6d26" d="M5.01 11.461a11.4 11.4 0 0 0-4.56-2.05L.416 9.5a6.3 6.3 0 0 0 2.09 7.278l.012.01.03.022 5.16 3.867 4.745-3.584-7.444-5.632z"/></svg> \ No newline at end of file diff --git a/src/assets/images/goodreads-icon-light.svg b/src/assets/images/goodreads-icon-light.svg index f6a4c947..668208d5 100644 --- a/src/assets/images/goodreads-icon-light.svg +++ b/src/assets/images/goodreads-icon-light.svg @@ -1,327 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - width="512" - height="512" - viewBox="0 0 512 512" - fill="none" - version="1.1" - id="svg133" - sodipodi:docname="goodreads-icon-light.svg" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <sodipodi:namedview - id="namedview135" - pagecolor="#c2c2c2" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="1.0744708" - inkscape:cx="146.11844" - inkscape:cy="259.66271" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg133" /> - <path - fill-rule="evenodd" - clip-rule="evenodd" - d="M 243.868,66.5799 C 173.928,73.2164 130.327,132.885 135.4,215.019 c 3.345,54.163 25.185,92.212 63.635,110.861 30.289,14.691 73.72,16.016 99.679,3.043 18.46,-9.226 33.654,-24.329 42.898,-42.641 0.879,-1.742 1.826,-3.167 2.103,-3.167 0.666,0 0.662,33.464 -0.005,46.08 -2.537,47.996 -19.585,75.628 -52.882,85.714 -17.471,5.293 -42.156,5.819 -61.552,1.312 -26.331,-6.118 -44.295,-22.137 -49.782,-44.392 l -1.418,-5.751 -16.586,-0.009 -16.585,-0.01 0.337,3.629 c 4.449,47.87 51.436,78.65 117.733,77.123 65.091,-1.5 101.161,-30.87 111.433,-90.736 2.912,-16.969 2.75,-8.667 2.943,-151.168 L 377.53,73.7074 H 360.875 344.22 v 23.04 c 0,13.7376 -0.191,23.0396 -0.473,23.0396 -0.26,0 -1.64,-2.217 -3.066,-4.926 -3.508,-6.663 -7.514,-12.125 -13.515,-18.4238 C 305.151,73.3291 277.435,63.3947 243.868,66.5799 Z m 26.214,27.8599 c 37.926,5.0105 64.743,36.4072 72.053,84.3552 8.496,55.734 -11.404,104.801 -50.204,123.785 -15.645,7.655 -36.015,9.706 -55.173,5.555 -51.91,-11.247 -79.466,-71.313 -64.516,-140.63 8.829,-40.932 38.554,-70.2707 74.442,-73.4748 5.604,-0.5002 18.177,-0.28 23.398,0.4096 z" - fill="#66390C" - id="path6" - style="fill:#ffffff;fill-opacity:1" /> - <defs - id="defs131"> - <filter - id="filter0_i_121_76" - x="135" - y="66" - width="242.53" - height="380.865" - filterUnits="userSpaceOnUse" - color-interpolation-filters="sRGB"> - <feFlood - flood-opacity="0" - result="BackgroundImageFix" - id="feFlood33" /> - <feBlend - mode="normal" - in="SourceGraphic" - in2="BackgroundImageFix" - result="shape" - id="feBlend35" /> - <feColorMatrix - in="SourceAlpha" - type="matrix" - values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" - result="hardAlpha" - id="feColorMatrix37" /> - <feOffset - id="feOffset39" /> - <feGaussianBlur - stdDeviation="10" - id="feGaussianBlur41" /> - <feComposite - in2="hardAlpha" - operator="arithmetic" - k2="-1" - k3="1" - id="feComposite43" /> - <feColorMatrix - type="matrix" - values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0" - id="feColorMatrix45" /> - <feBlend - mode="normal" - in2="shape" - result="effect1_innerShadow_121_76" - id="feBlend47" /> - </filter> - <filter - id="filter1_i_121_76" - x="135" - y="66" - width="242.53" - height="380.865" - filterUnits="userSpaceOnUse" - color-interpolation-filters="sRGB"> - <feFlood - flood-opacity="0" - result="BackgroundImageFix" - id="feFlood50" /> - <feBlend - mode="normal" - in="SourceGraphic" - in2="BackgroundImageFix" - result="shape" - id="feBlend52" /> - <feColorMatrix - in="SourceAlpha" - type="matrix" - values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" - result="hardAlpha" - id="feColorMatrix54" /> - <feOffset - id="feOffset56" /> - <feGaussianBlur - stdDeviation="10" - id="feGaussianBlur58" /> - <feComposite - in2="hardAlpha" - operator="arithmetic" - k2="-1" - k3="1" - id="feComposite60" /> - <feColorMatrix - type="matrix" - values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0" - id="feColorMatrix62" /> - <feBlend - mode="normal" - in2="shape" - result="effect1_innerShadow_121_76" - id="feBlend64" /> - </filter> - <filter - id="filter2_i_121_76" - x="167.199" - y="92.7582" - width="177.874" - height="218.483" - filterUnits="userSpaceOnUse" - color-interpolation-filters="sRGB"> - <feFlood - flood-opacity="0" - result="BackgroundImageFix" - id="feFlood67" /> - <feBlend - mode="normal" - in="SourceGraphic" - in2="BackgroundImageFix" - result="shape" - id="feBlend69" /> - <feColorMatrix - in="SourceAlpha" - type="matrix" - values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" - result="hardAlpha" - id="feColorMatrix71" /> - <feOffset - id="feOffset73" /> - <feGaussianBlur - stdDeviation="10" - id="feGaussianBlur75" /> - <feComposite - in2="hardAlpha" - operator="arithmetic" - k2="-1" - k3="1" - id="feComposite77" /> - <feColorMatrix - type="matrix" - values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0" - id="feColorMatrix79" /> - <feBlend - mode="normal" - in2="shape" - result="effect1_innerShadow_121_76" - id="feBlend81" /> - </filter> - <linearGradient - id="paint0_linear_121_76" - x1="256" - y1="0" - x2="256" - y2="512" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(2.3691356,82.130583)"> - <stop - stop-color="#EFEDDE" - id="stop84" /> - <stop - offset="1" - stop-color="#E6E1C3" - id="stop86" /> - </linearGradient> - <linearGradient - id="paint1_linear_121_76" - x1="256" - y1="215" - x2="256" - y2="18" - gradientUnits="userSpaceOnUse"> - <stop - stop-color="white" - stop-opacity="0.63" - id="stop89" /> - <stop - offset="1" - stop-color="white" - stop-opacity="0" - id="stop91" /> - </linearGradient> - <radialGradient - id="paint2_radial_121_76" - cx="0" - cy="0" - r="1" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(256 207.5) rotate(90) scale(151 174.315)"> - <stop - stop-color="#9A5610" - id="stop94" - offset="0" - style="stop-color:#382111;stop-opacity:1;" /> - <stop - offset="1" - stop-color="#6F3E0D" - id="stop96" /> - </radialGradient> - <linearGradient - id="paint3_linear_121_76" - x1="256.265" - y1="66" - x2="256.265" - y2="446.865" - gradientUnits="userSpaceOnUse"> - <stop - stop-color="white" - stop-opacity="0.41" - id="stop99" /> - <stop - offset="0.723958" - stop-opacity="0.34" - id="stop101" /> - <stop - offset="0.77414" - stop-color="white" - stop-opacity="0.34" - id="stop103" /> - <stop - offset="1" - stop-color="#111111" - stop-opacity="0.344532" - id="stop105" /> - </linearGradient> - <linearGradient - id="paint4_linear_121_76" - x1="256.136" - y1="92.7582" - x2="256.136" - y2="311.241" - gradientUnits="userSpaceOnUse"> - <stop - stop-opacity="0.28" - id="stop108" /> - <stop - offset="1" - stop-color="white" - stop-opacity="0.35" - id="stop110" /> - </linearGradient> - <radialGradient - id="paint5_radial_121_76" - cx="0" - cy="0" - r="1" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(256 207.5) rotate(90) scale(151 174.315)"> - <stop - stop-color="#9A5610" - id="stop113" /> - <stop - offset="1" - stop-color="#6F3E0D" - id="stop115" /> - </radialGradient> - <linearGradient - id="paint6_linear_121_76" - x1="255" - y1="213" - x2="255" - y2="16" - gradientUnits="userSpaceOnUse"> - <stop - stop-color="white" - stop-opacity="0.17" - id="stop118" /> - <stop - offset="1" - stop-color="white" - stop-opacity="0" - id="stop120" /> - </linearGradient> - <linearGradient - id="paint7_linear_121_76" - x1="256" - y1="0" - x2="256" - y2="512" - gradientUnits="userSpaceOnUse"> - <stop - stop-color="#E4E3D6" - id="stop123" /> - <stop - offset="1" - stop-color="#D5D1B6" - id="stop125" /> - </linearGradient> - <clipPath - id="clip0_121_76"> - <rect - width="512" - height="512" - rx="64" - fill="white" - id="rect128" /> - </clipPath> - </defs> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="#fff" d="M243.868 66.58c-69.94 6.636-113.541 66.305-108.468 148.439 3.345 54.163 25.185 92.212 63.635 110.861 30.289 14.691 73.72 16.016 99.679 3.043 18.46-9.226 33.654-24.329 42.898-42.641.879-1.742 1.826-3.167 2.103-3.167.666 0 .662 33.464-.005 46.08-2.537 47.996-19.585 75.628-52.882 85.714-17.471 5.293-42.156 5.819-61.552 1.312-26.331-6.118-44.295-22.137-49.782-44.392l-1.418-5.751-16.586-.009-16.585-.01.337 3.629c4.449 47.87 51.436 78.65 117.733 77.123 65.091-1.5 101.161-30.87 111.433-90.736 2.912-16.969 2.75-8.667 2.943-151.168l.179-131.2h-33.31v23.04c0 13.738-.191 23.04-.473 23.04-.26 0-1.64-2.217-3.066-4.926-3.508-6.663-7.514-12.125-13.515-18.424-22.015-23.108-49.731-33.042-83.298-29.857m26.214 27.86c37.926 5.01 64.743 36.407 72.053 84.355 8.496 55.734-11.404 104.801-50.204 123.785-15.645 7.655-36.015 9.706-55.173 5.555-51.91-11.247-79.466-71.313-64.516-140.63 8.829-40.932 38.554-70.27 74.442-73.475 5.604-.5 18.177-.28 23.398.41"/></svg> \ No newline at end of file diff --git a/src/assets/images/goodreads-icon.svg b/src/assets/images/goodreads-icon.svg index 5e446292..b41201f3 100644 --- a/src/assets/images/goodreads-icon.svg +++ b/src/assets/images/goodreads-icon.svg @@ -1,327 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - width="512" - height="512" - viewBox="0 0 512 512" - fill="none" - version="1.1" - id="svg133" - sodipodi:docname="goodreads-icon.svg" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <sodipodi:namedview - id="namedview135" - pagecolor="#c2c2c2" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="1.0744708" - inkscape:cx="33.504866" - inkscape:cy="259.66271" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg133" /> - <path - fill-rule="evenodd" - clip-rule="evenodd" - d="M 243.868,66.5799 C 173.928,73.2164 130.327,132.885 135.4,215.019 c 3.345,54.163 25.185,92.212 63.635,110.861 30.289,14.691 73.72,16.016 99.679,3.043 18.46,-9.226 33.654,-24.329 42.898,-42.641 0.879,-1.742 1.826,-3.167 2.103,-3.167 0.666,0 0.662,33.464 -0.005,46.08 -2.537,47.996 -19.585,75.628 -52.882,85.714 -17.471,5.293 -42.156,5.819 -61.552,1.312 -26.331,-6.118 -44.295,-22.137 -49.782,-44.392 l -1.418,-5.751 -16.586,-0.009 -16.585,-0.01 0.337,3.629 c 4.449,47.87 51.436,78.65 117.733,77.123 65.091,-1.5 101.161,-30.87 111.433,-90.736 2.912,-16.969 2.75,-8.667 2.943,-151.168 L 377.53,73.7074 H 360.875 344.22 v 23.04 c 0,13.7376 -0.191,23.0396 -0.473,23.0396 -0.26,0 -1.64,-2.217 -3.066,-4.926 -3.508,-6.663 -7.514,-12.125 -13.515,-18.4238 C 305.151,73.3291 277.435,63.3947 243.868,66.5799 Z m 26.214,27.8599 c 37.926,5.0105 64.743,36.4072 72.053,84.3552 8.496,55.734 -11.404,104.801 -50.204,123.785 -15.645,7.655 -36.015,9.706 -55.173,5.555 -51.91,-11.247 -79.466,-71.313 -64.516,-140.63 8.829,-40.932 38.554,-70.2707 74.442,-73.4748 5.604,-0.5002 18.177,-0.28 23.398,0.4096 z" - fill="#66390C" - id="path6" - style="fill:#000000;fill-opacity:1" /> - <defs - id="defs131"> - <filter - id="filter0_i_121_76" - x="135" - y="66" - width="242.53" - height="380.865" - filterUnits="userSpaceOnUse" - color-interpolation-filters="sRGB"> - <feFlood - flood-opacity="0" - result="BackgroundImageFix" - id="feFlood33" /> - <feBlend - mode="normal" - in="SourceGraphic" - in2="BackgroundImageFix" - result="shape" - id="feBlend35" /> - <feColorMatrix - in="SourceAlpha" - type="matrix" - values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" - result="hardAlpha" - id="feColorMatrix37" /> - <feOffset - id="feOffset39" /> - <feGaussianBlur - stdDeviation="10" - id="feGaussianBlur41" /> - <feComposite - in2="hardAlpha" - operator="arithmetic" - k2="-1" - k3="1" - id="feComposite43" /> - <feColorMatrix - type="matrix" - values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0" - id="feColorMatrix45" /> - <feBlend - mode="normal" - in2="shape" - result="effect1_innerShadow_121_76" - id="feBlend47" /> - </filter> - <filter - id="filter1_i_121_76" - x="135" - y="66" - width="242.53" - height="380.865" - filterUnits="userSpaceOnUse" - color-interpolation-filters="sRGB"> - <feFlood - flood-opacity="0" - result="BackgroundImageFix" - id="feFlood50" /> - <feBlend - mode="normal" - in="SourceGraphic" - in2="BackgroundImageFix" - result="shape" - id="feBlend52" /> - <feColorMatrix - in="SourceAlpha" - type="matrix" - values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" - result="hardAlpha" - id="feColorMatrix54" /> - <feOffset - id="feOffset56" /> - <feGaussianBlur - stdDeviation="10" - id="feGaussianBlur58" /> - <feComposite - in2="hardAlpha" - operator="arithmetic" - k2="-1" - k3="1" - id="feComposite60" /> - <feColorMatrix - type="matrix" - values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0" - id="feColorMatrix62" /> - <feBlend - mode="normal" - in2="shape" - result="effect1_innerShadow_121_76" - id="feBlend64" /> - </filter> - <filter - id="filter2_i_121_76" - x="167.199" - y="92.7582" - width="177.874" - height="218.483" - filterUnits="userSpaceOnUse" - color-interpolation-filters="sRGB"> - <feFlood - flood-opacity="0" - result="BackgroundImageFix" - id="feFlood67" /> - <feBlend - mode="normal" - in="SourceGraphic" - in2="BackgroundImageFix" - result="shape" - id="feBlend69" /> - <feColorMatrix - in="SourceAlpha" - type="matrix" - values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" - result="hardAlpha" - id="feColorMatrix71" /> - <feOffset - id="feOffset73" /> - <feGaussianBlur - stdDeviation="10" - id="feGaussianBlur75" /> - <feComposite - in2="hardAlpha" - operator="arithmetic" - k2="-1" - k3="1" - id="feComposite77" /> - <feColorMatrix - type="matrix" - values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0" - id="feColorMatrix79" /> - <feBlend - mode="normal" - in2="shape" - result="effect1_innerShadow_121_76" - id="feBlend81" /> - </filter> - <linearGradient - id="paint0_linear_121_76" - x1="256" - y1="0" - x2="256" - y2="512" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(2.3691356,82.130583)"> - <stop - stop-color="#EFEDDE" - id="stop84" /> - <stop - offset="1" - stop-color="#E6E1C3" - id="stop86" /> - </linearGradient> - <linearGradient - id="paint1_linear_121_76" - x1="256" - y1="215" - x2="256" - y2="18" - gradientUnits="userSpaceOnUse"> - <stop - stop-color="white" - stop-opacity="0.63" - id="stop89" /> - <stop - offset="1" - stop-color="white" - stop-opacity="0" - id="stop91" /> - </linearGradient> - <radialGradient - id="paint2_radial_121_76" - cx="0" - cy="0" - r="1" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(256 207.5) rotate(90) scale(151 174.315)"> - <stop - stop-color="#9A5610" - id="stop94" - offset="0" - style="stop-color:#382111;stop-opacity:1;" /> - <stop - offset="1" - stop-color="#6F3E0D" - id="stop96" /> - </radialGradient> - <linearGradient - id="paint3_linear_121_76" - x1="256.265" - y1="66" - x2="256.265" - y2="446.865" - gradientUnits="userSpaceOnUse"> - <stop - stop-color="white" - stop-opacity="0.41" - id="stop99" /> - <stop - offset="0.723958" - stop-opacity="0.34" - id="stop101" /> - <stop - offset="0.77414" - stop-color="white" - stop-opacity="0.34" - id="stop103" /> - <stop - offset="1" - stop-color="#111111" - stop-opacity="0.344532" - id="stop105" /> - </linearGradient> - <linearGradient - id="paint4_linear_121_76" - x1="256.136" - y1="92.7582" - x2="256.136" - y2="311.241" - gradientUnits="userSpaceOnUse"> - <stop - stop-opacity="0.28" - id="stop108" /> - <stop - offset="1" - stop-color="white" - stop-opacity="0.35" - id="stop110" /> - </linearGradient> - <radialGradient - id="paint5_radial_121_76" - cx="0" - cy="0" - r="1" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(256 207.5) rotate(90) scale(151 174.315)"> - <stop - stop-color="#9A5610" - id="stop113" /> - <stop - offset="1" - stop-color="#6F3E0D" - id="stop115" /> - </radialGradient> - <linearGradient - id="paint6_linear_121_76" - x1="255" - y1="213" - x2="255" - y2="16" - gradientUnits="userSpaceOnUse"> - <stop - stop-color="white" - stop-opacity="0.17" - id="stop118" /> - <stop - offset="1" - stop-color="white" - stop-opacity="0" - id="stop120" /> - </linearGradient> - <linearGradient - id="paint7_linear_121_76" - x1="256" - y1="0" - x2="256" - y2="512" - gradientUnits="userSpaceOnUse"> - <stop - stop-color="#E4E3D6" - id="stop123" /> - <stop - offset="1" - stop-color="#D5D1B6" - id="stop125" /> - </linearGradient> - <clipPath - id="clip0_121_76"> - <rect - width="512" - height="512" - rx="64" - fill="white" - id="rect128" /> - </clipPath> - </defs> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M243.868 66.58c-69.94 6.636-113.541 66.305-108.468 148.439 3.345 54.163 25.185 92.212 63.635 110.861 30.289 14.691 73.72 16.016 99.679 3.043 18.46-9.226 33.654-24.329 42.898-42.641.879-1.742 1.826-3.167 2.103-3.167.666 0 .662 33.464-.005 46.08-2.537 47.996-19.585 75.628-52.882 85.714-17.471 5.293-42.156 5.819-61.552 1.312-26.331-6.118-44.295-22.137-49.782-44.392l-1.418-5.751-16.586-.009-16.585-.01.337 3.629c4.449 47.87 51.436 78.65 117.733 77.123 65.091-1.5 101.161-30.87 111.433-90.736 2.912-16.969 2.75-8.667 2.943-151.168l.179-131.2h-33.31v23.04c0 13.738-.191 23.04-.473 23.04-.26 0-1.64-2.217-3.066-4.926-3.508-6.663-7.514-12.125-13.515-18.424-22.015-23.108-49.731-33.042-83.298-29.857m26.214 27.86c37.926 5.01 64.743 36.407 72.053 84.355 8.496 55.734-11.404 104.801-50.204 123.785-15.645 7.655-36.015 9.706-55.173 5.555-51.91-11.247-79.466-71.313-64.516-140.63 8.829-40.932 38.554-70.27 74.442-73.475 5.604-.5 18.177-.28 23.398.41"/></svg> \ No newline at end of file diff --git a/src/assets/images/ifunny-icon.svg b/src/assets/images/ifunny-icon.svg new file mode 100644 index 00000000..bceff0ea --- /dev/null +++ b/src/assets/images/ifunny-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 31.75 31.75"><g transform="matrix(.26458 0 0 .26458 -2.646 -2.646)"><path fill="#ffd10b" d="M130 70c0-33.137-26.863-60-60-60S10 36.863 10 70s26.863 60 60 60 60-26.863 60-60"/><path d="M70 98.073c-14.444-.002-27.276-9.348-32.538-21.9l-.008.003a2.24 2.24 0 0 0-2.14-1.56c-1.235 0-2.237.99-2.237 2.212q0 .126.014.25h-.014c.016.44.105.869.245 1.211 6.11 15.052 19.149 28.632 36.678 28.634zm0 0c14.445-.002 27.277-9.348 32.539-21.9l.007.003a2.24 2.24 0 0 1 2.14-1.56c1.235 0 2.237.99 2.237 2.212q0 .126-.014.25h.014c-.015.44-.105.869-.245 1.211-6.109 15.052-19.149 28.632-36.678 28.634ZM58.133 50.535c0 5.82-2.352 10.531-6.182 10.535-3.893.003-6.182-4.716-6.182-10.535 0-5.82 2.29-10.535 6.182-10.535 3.83.003 6.182 4.719 6.182 10.535m35.963 0c0 5.82-2.352 10.531-6.182 10.535-3.893.003-6.182-4.716-6.182-10.535 0-5.82 2.29-10.535 6.182-10.535 3.83.003 6.181 4.719 6.181 10.535z"/></g></svg> diff --git a/src/assets/images/imdb-icon.svg b/src/assets/images/imdb-icon.svg index a3f4103c..888dafc8 100644 --- a/src/assets/images/imdb-icon.svg +++ b/src/assets/images/imdb-icon.svg @@ -1,57 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - width="946.47894" - height="946.47894" - viewBox="0 0 250.42255 250.42256" - version="1.1" - id="svg14" - sodipodi:docname="imdb.svg" - inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs18" /> - <sodipodi:namedview - id="namedview16" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:pageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - showgrid="false" - inkscape:zoom="0.6035" - inkscape:cx="400.9942" - inkscape:cy="501.24275" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg14" /> - <circle - style="fill:#f5c518;fill-opacity:1;stroke-width:0.529167" - id="path857" - cx="125.21127" - cy="125.21127" - r="125.21127" /> - <g - id="g12" - transform="translate(-7.0803833,59.065437)"> - <polygon - points="5,18 5,0 0,0 0,18 " - transform="matrix(4.1341143,0,0,4.1341143,33.07292,28.938814)" - id="polygon4" /> - <path - d="M 97.8649,28.938814 93.238682,63.70039 90.364307,44.793235 C 89.53087,38.737048 88.731526,33.452235 87.966151,28.938814 H 62.011715 V 103.35287 H 79.54712 l 0.06875,-49.138886 7.381547,49.138886 h 12.483968 l 7.007355,-50.222105 0.0516,50.222105 h 17.48438 V 28.938814 Z" - id="path6" /> - <path - d="M 132.29167,103.35287 V 28.938814 h 32.26493 c 7.29586,0 13.21033,5.870218 13.21033,13.132452 v 48.149153 c 0,7.252863 -5.90492,13.132451 -13.21033,13.132451 z m 24.11118,-61.021495 c -0.81984,-0.443125 -2.38842,-0.656562 -4.66989,-0.656562 v 48.827044 c 3.01225,0 4.86595,-0.541563 5.56108,-1.674062 0.69516,-1.116094 1.05156,-4.135938 1.05156,-9.0925 V 50.882203 c 0,-3.364562 -0.125,-5.514593 -0.35656,-6.466515 -0.23172,-0.951875 -0.74859,-1.641234 -1.58633,-2.084375 z" - id="path8" /> - <path - d="m 216.75124,47.570688 h 1.32125 c 7.42153,0 13.43787,5.811796 13.43787,12.972889 v 29.836405 c 0,7.16473 -6.01439,12.972888 -13.43787,12.972888 h -1.32125 c -4.54109,0 -8.55609,-2.17594 -10.98864,-5.505518 l -1.19047,4.549608 H 186.03519 V 28.938814 h 19.77896 v 23.897389 c 2.55559,-3.184828 6.49396,-5.265515 10.93714,-5.265515 z m -4.23473,36.286591 V 66.224718 c 0,-2.913469 -0.18704,-4.825437 -0.57672,-5.705547 -0.38969,-0.880156 -1.94505,-1.445156 -3.03607,-1.445156 -1.09109,0 -2.77353,0.459219 -3.10082,1.233125 v 5.917609 18.197155 5.73275 c 0.37406,0.849687 1.97864,1.322658 3.10082,1.322658 1.12219,0 2.75552,-0.457658 3.09841,-1.322658 0.34281,-0.865 0.51438,-2.974172 0.51438,-6.297344 z" - id="path10" /> - </g> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 250.423 250.423"><circle cx="125.211" cy="125.211" r="125.211" style="fill:#f5c518;fill-opacity:1;stroke-width:.529167"/><path d="M46.663 162.418V88.004h-20.67v74.414zM90.785 88.004l-4.627 34.762-2.874-18.907q-1.25-9.085-2.398-15.855H54.93v74.414h17.536l.068-49.139 7.382 49.14h12.484l7.007-50.223.052 50.222h17.484V88.004ZM125.211 162.418V88.004h32.265c7.296 0 13.21 5.87 13.21 13.133v48.149c0 7.253-5.904 13.132-13.21 13.132zm24.111-61.021c-.82-.443-2.388-.657-4.67-.657v48.827c3.013 0 4.867-.541 5.562-1.674.695-1.116 1.051-4.136 1.051-9.092v-28.853c0-3.365-.125-5.515-.356-6.467-.232-.952-.749-1.641-1.587-2.084zM209.67 106.636h1.322c7.422 0 13.438 5.812 13.438 12.973v29.836c0 7.165-6.014 12.973-13.438 12.973h-1.321c-4.541 0-8.556-2.176-10.989-5.505l-1.19 4.55h-18.537V88.003h19.779v23.898c2.555-3.185 6.494-5.266 10.937-5.266m-4.234 36.287V125.29c0-2.913-.187-4.825-.577-5.705s-1.945-1.446-3.036-1.446-2.773.46-3.1 1.234v29.846999999999998c.374.85 1.978 1.323 3.1 1.323s2.756-.458 3.099-1.323.514-2.974.514-6.297"/></svg> diff --git a/src/assets/images/imgur-icon.png b/src/assets/images/imgur-icon.png deleted file mode 100644 index c23a45b2..00000000 --- a/src/assets/images/imgur-icon.png +++ /dev/null Binary files differdiff --git a/src/assets/images/imgur-icon.svg b/src/assets/images/imgur-icon.svg new file mode 100644 index 00000000..6d5296cc --- /dev/null +++ b/src/assets/images/imgur-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28"><style id="style1">.green{fill:#1bb76e}</style><g id="g4" transform="translate(-6 -6)"><path id="rect1" d="M17.12 31.506a.11.11 0 0 0-.1.064c-.13.29-.362.521-.65.65a.11.11 0 0 0 0 .2c.29.122.523.352.65.64a.11.11 0 0 0 .2 0c.12-.29.35-.52.64-.64a.11.11 0 0 0 0-.2 1.23 1.23 0 0 1-.64-.65.11.11 0 0 0-.1-.064" class="green" style="display:inline;fill:#fff;fill-opacity:1"/><path id="path12" d="M21.58 28.658a.18.18 0 0 0-.17.121 2 2 0 0 1-1.08 1.08.18.18 0 0 0 0 .33 2 2 0 0 1 1.08 1.08.18.18 0 0 0 .34 0 2.1 2.1 0 0 1 1.08-1.08.18.18 0 0 0 0-.33 2.1 2.1 0 0 1-1.08-1.08.18.18 0 0 0-.17-.12" class="green" style="display:inline;fill:#fff;fill-opacity:1"/><path id="path11" d="M22.975 25.85c-.036 0-.07.02-.084.06a1.1 1.1 0 0 1-.551.55.1.1 0 0 0 0 .17c.246.108.444.303.55.55a.09.09 0 0 0 .17 0 1 1 0 0 1 .54-.55.09.09 0 0 0 0-.17 1 1 0 0 1-.54-.55.09.09 0 0 0-.085-.06" class="green" style="display:inline;fill:#fff;fill-opacity:1"/><path id="path10" d="M9.154 25.676a.11.11 0 0 0-.093.054 1.14 1.14 0 0 1-.612.61.11.11 0 0 0 0 .19c.272.12.49.34.612.61a.1.1 0 0 0 .189 0c.121-.27.338-.49.61-.61a.11.11 0 0 0 0-.19 1.14 1.14 0 0 1-.61-.61.11.11 0 0 0-.096-.054" class="green" style="display:inline;fill:#fff;fill-opacity:1"/><path id="path9" d="M9.14 18.229a.25.25 0 0 0-.23.152 2.85 2.85 0 0 1-1.48 1.478.25.25 0 0 0 0 .461c.669.28 1.201.812 1.48 1.48a.26.26 0 0 0 .46 0 2.82 2.82 0 0 1 1.48-1.48.25.25 0 0 0 0-.46 2.9 2.9 0 0 1-1.48-1.48.245.245 0 0 0-.23-.151" class="green" style="display:inline;fill:#fff;fill-opacity:1"/><path id="path8" d="M12.475 15.826a.15.15 0 0 0-.135.084c-.17.392-.479.705-.87.88a.151.151 0 0 0 0 .27c.392.168.703.478.87.87a.15.15 0 0 0 .27 0 1.65 1.65 0 0 1 .87-.87.151.151 0 0 0 0-.27 1.7 1.7 0 0 1-.87-.88.15.15 0 0 0-.135-.084" class="green" style="display:inline;fill:#fff;fill-opacity:1"/><path id="path7" d="M12.418 31.78a1.74 1.74 0 0 1 .803-.72.15.15 0 0 0-.041-.25 1.7 1.7 0 0 1-.9-.9.15.15 0 0 0-.28 0 1.72 1.72 0 0 1-.9.9l-.01.006a14 14 0 0 0 1.328.963" class="green" style="display:inline;fill:#fff;fill-opacity:1"/><path id="path6" d="m13.36 12.2-7.348 7.349c-.005.15-.012.3-.012.451a13.96 13.96 0 0 0 5.09 10.816l.01-.005c.404-.174.726-.497.9-.9a.15.15 0 0 1 .28 0c.17.405.494.728.9.9a.15.15 0 0 1 .04.25 1.74 1.74 0 0 0-.802.718 13.96 13.96 0 0 0 8.46 2.192L28 26.84Zm-.885 3.626c.053 0 .107.028.134.084.17.392.481.705.871.88a.151.151 0 0 1 0 .27 1.65 1.65 0 0 0-.87.87.15.15 0 0 1-.27 0 1.65 1.65 0 0 0-.87-.87.151.151 0 0 1 0-.27c.391-.175.7-.488.87-.88a.15.15 0 0 1 .135-.084M9.14 18.23c.093 0 .185.05.228.152.291.66.82 1.187 1.48 1.478a.25.25 0 0 1 0 .461 2.82 2.82 0 0 0-1.48 1.48.26.26 0 0 1-.459 0 2.75 2.75 0 0 0-1.48-1.48.25.25 0 0 1 0-.46 2.85 2.85 0 0 0 1.48-1.48.25.25 0 0 1 .23-.151m.013 7.447a.11.11 0 0 1 .096.054c.116.276.334.494.61.61a.11.11 0 0 1 0 .19c-.272.12-.489.34-.61.61a.1.1 0 0 1-.19 0 1.22 1.22 0 0 0-.61-.61.11.11 0 0 1 0-.19c.275-.116.495-.334.61-.61a.11.11 0 0 1 .094-.054m13.82.174a.09.09 0 0 1 .087.06 1 1 0 0 0 .539.55.09.09 0 0 1 0 .17 1 1 0 0 0-.54.55.09.09 0 0 1-.17 0 1.06 1.06 0 0 0-.55-.55.1.1 0 0 1 0-.17c.245-.109.441-.305.55-.55a.09.09 0 0 1 .085-.06m-1.394 2.808c.071 0 .142.04.17.121a2.1 2.1 0 0 0 1.08 1.08.18.18 0 0 1 0 .33 2.1 2.1 0 0 0-1.08 1.08.18.18 0 0 1-.34 0 2 2 0 0 0-1.08-1.08.18.18 0 0 1 0-.33 2 2 0 0 0 1.08-1.08.18.18 0 0 1 .17-.12m-4.46 2.848a.11.11 0 0 1 .1.064c.123.291.35.524.64.65a.11.11 0 0 1 0 .2c-.29.12-.52.35-.64.64a.11.11 0 0 1-.2 0 1.23 1.23 0 0 0-.65-.64.11.11 0 0 1 0-.2c.288-.129.52-.36.65-.65a.11.11 0 0 1 .1-.064" class="green" style="display:inline;fill:#0a0d49;fill-opacity:1"/><path id="path5" d="M20 6A13.965 13.965 0 0 0 6.012 19.549l7.347-7.35L28 26.84l-7.121 7.132A13.966 13.966 0 0 0 34 20c0-7.756-6.244-14-14-14" class="green"/><path id="path3" fill="#fff" d="M10.3 24.91a1.75 1.75 0 0 1 .12-2.3L15.83 17l-2.46-2.42c-1.057-1.002-.5-2.78.94-3a65 65 0 0 1 10.4-.92c1.06 0 2.1 0 3.11.1a1.74 1.74 0 0 1 1.62 1.63A59.6 59.6 0 0 1 28.63 26c-.22 1.44-1.998 1.997-3 .94l-2.42-2.46-5.55 5.42a1.75 1.75 0 0 1-2.31.11l-2.197-2.219z"/><path id="path4" d="M27.7 12.58a57.8 57.8 0 0 0-13.1.8L18.29 17l-6.62 6.79a30 30 0 0 0 4.8 4.81l6.8-6.6 3.64 3.7a58 58 0 0 0 .79-13.12" class="green"/></g></svg> \ No newline at end of file diff --git a/src/assets/images/instagram-icon.png b/src/assets/images/instagram-icon.png deleted file mode 100644 index 7bc0f9f8..00000000 --- a/src/assets/images/instagram-icon.png +++ /dev/null Binary files differdiff --git a/src/assets/images/instagram-icon.svg b/src/assets/images/instagram-icon.svg new file mode 100644 index 00000000..cfbab00f --- /dev/null +++ b/src/assets/images/instagram-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000"><style>.st1{fill:#fff}</style><linearGradient id="SVGID_1_" x1="146.446" x2="853.553" y1="853.553" y2="146.446" gradientUnits="userSpaceOnUse"><stop offset="0" style="stop-color:#ffd521"/><stop offset=".055" style="stop-color:#ffd020"/><stop offset=".124" style="stop-color:#fec01e"/><stop offset=".2" style="stop-color:#fca71b"/><stop offset=".282" style="stop-color:#fa8316"/><stop offset=".368" style="stop-color:#f85510"/><stop offset=".456" style="stop-color:#f51e09"/><stop offset=".5" style="stop-color:#f30005"/><stop offset=".503" style="stop-color:#f20007"/><stop offset=".597" style="stop-color:#e1003b"/><stop offset=".688" style="stop-color:#d30067"/><stop offset=".776" style="stop-color:#c70088"/><stop offset=".859" style="stop-color:#bf00a0"/><stop offset=".936" style="stop-color:#bb00af"/><stop offset="1" style="stop-color:#b900b4"/></linearGradient><path d="M500 1000C223.9 1000 0 776.1 0 500S223.9 0 500 0s500 223.9 500 500-223.9 500-500 500" style="fill:url(#SVGID_1_)"/><path d="M500 220.2c91.1 0 101.9.3 137.9 2 33.3 1.5 51.4 7.1 63.4 11.8 15.9 6.2 27.3 13.6 39.2 25.5s19.3 23.3 25.5 39.2c4.7 12 10.2 30.1 11.8 63.4 1.6 36 2 46.8 2 137.9s-.3 101.9-2 137.9c-1.5 33.3-7.1 51.4-11.8 63.4-6.2 15.9-13.6 27.3-25.5 39.2s-23.3 19.3-39.2 25.5c-12 4.7-30.1 10.2-63.4 11.8-36 1.6-46.8 2-137.9 2s-101.9-.3-137.9-2c-33.3-1.5-51.4-7.1-63.4-11.8-15.9-6.2-27.3-13.6-39.2-25.5s-19.3-23.3-25.5-39.2c-4.7-12-10.2-30.1-11.8-63.4-1.6-36-2-46.8-2-137.9s.3-101.9 2-137.9c1.5-33.3 7.1-51.4 11.8-63.4 6.2-15.9 13.6-27.3 25.5-39.2s23.3-19.3 39.2-25.5c12-4.7 30.1-10.2 63.4-11.8 36-1.7 46.8-2 137.9-2m0-61.5c-92.7 0-104.3.4-140.7 2.1-36.3 1.7-61.1 7.4-82.9 15.9C254 185.3 234.9 197 216 216c-19 19-30.6 38-39.4 60.5-8.4 21.7-14.2 46.5-15.9 82.9s-2.1 48-2.1 140.7.4 104.3 2.1 140.7c1.7 36.3 7.4 61.1 15.9 82.9C185.3 746 197 765.1 216 784c19 19 38 30.6 60.5 39.4 21.7 8.4 46.5 14.2 82.9 15.9s48 2.1 140.7 2.1 104.3-.4 140.7-2.1c36.3-1.7 61.1-7.4 82.9-15.9C746 814.7 765.1 803 784 784c19-19 30.6-38 39.4-60.5 8.4-21.7 14.2-46.5 15.9-82.9s2.1-48 2.1-140.7-.4-104.3-2.1-140.7c-1.7-36.3-7.4-61.1-15.9-82.9C814.7 254 803 234.9 784 216c-19-19-38-30.6-60.5-39.4-21.7-8.4-46.5-14.2-82.9-15.9-36.3-1.6-47.9-2-140.6-2" class="st1"/><path d="M500 324.7c-96.8 0-175.3 78.5-175.3 175.3S403.2 675.3 500 675.3 675.3 596.8 675.3 500 596.8 324.7 500 324.7m0 289.1c-62.8 0-113.8-50.9-113.8-113.8s51-113.8 113.8-113.8S613.8 437.1 613.8 500s-51 113.8-113.8 113.8" class="st1"/><circle cx="682.2" cy="317.8" r="41" class="st1"/></svg> diff --git a/src/assets/images/instructables-icon.svg b/src/assets/images/instructables-icon.svg index 9b7eaa28..7b21ca3e 100644 --- a/src/assets/images/instructables-icon.svg +++ b/src/assets/images/instructables-icon.svg @@ -1,372 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - id="Layer_1" - viewBox="0 0 142.45365 142.45364" - version="1.1" - sodipodi:docname="instructables-logo-2023.svg" - width="142.45364" - height="142.45364" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <sodipodi:namedview - id="namedview217" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="3.3526695" - inkscape:cx="95.148061" - inkscape:cy="98.429029" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="g166" /> - <defs - id="defs4"> - <style - id="style2">.cls-1,.cls-2,.cls-3{fill:none;stroke:#000;stroke-linecap:round;stroke-linejoin:round;}.cls-1,.cls-3{stroke-width:1.29491px;}.cls-4{fill:#fff;}.cls-5{fill:#ffc432;}.cls-6{fill:#ffc21a;}.cls-7{fill:#b1b1b1;}.cls-8{fill:#e10017;}.cls-2{stroke-width:1.18701px;}.cls-3{fill-rule:evenodd;}</style> - </defs> - <g - id="g168" - transform="translate(22.80687,13.234741)"> - <g - id="g42"> - <path - class="cls-6" - d="m 84.36497,66.17323 0.04326,0.12603 8.41199,-1.27039 c 0,0 -8.04716,-16.45823 -14.63966,-16.87027 0,0 -9.59736,-18.01481 -22.18384,-19.44919 L 55.75582,28.35834 55.26643,5.18798 C 55.25336,4.56847 54.8222,4.0368 54.21958,3.89267 34.47752,-0.82896 31.00334,1.10981 31.00334,1.10981 27.29485,2.06445 24.21294,8.3516 23.24007,10.54254 l -0.99874,8.79576 c -0.41515,5.295 -0.55941,11.34315 -0.82908,11.58378 0,0 -6.03187,4.00978 -8.0645,15.25184 l -0.0038,0.08109 C 5.28894,49.02043 1.85375,67.86729 1.85375,67.86729 l 10.39699,1.55939 -7.9e-4,0.01631 c -0.21993,7.88678 -0.27473,14.05488 0.44713,19.20735 0,0 6.65815,1.68909 20.96095,1.81889 0.11471,2.90821 0.6591,16.10289 1.15713,17.7311 0.31614,1.03325 3.3981,0.81306 6.22134,0.35092 2.18043,-0.3569 4.20658,-0.85809 4.68542,-1.03763 1.0987,-0.41204 3.34198,-0.32046 3.15888,-3.47935 -0.16034,-2.76539 -0.61268,-11.73906 -0.72291,-13.93198 0.56858,-0.0319 1.13642,-0.06352 1.71949,-0.10009 4.78648,-0.30007 9.10987,-0.69862 12.97612,-1.14817 h -5e-5 c 0,0 -1.00902,4.37592 -1.40198,12.8454 0,0 0.06486,1.24396 2.99486,1.40024 2.92994,0.15631 9.4855,-0.0841 10.38977,-0.39307 0.90432,-0.30895 1.23854,-2.10252 1.51326,-6.70522 0.27467,-4.60267 0.54429,-9.29808 0.54429,-9.29808 l -0.02371,0.0036 c 7.32194,-1.43283 10.92468,-2.71547 10.92468,-2.71547 0,0 -1.10049,-8.51721 -3.42966,-17.81825 z" - id="path6" /> - <path - class="cls-4" - d="m 1.85374,67.86731 c 0,0 -1.05899,2.10158 -1.00346,3.21873 0.05553,1.11715 0.4807,1.72561 1.96858,1.01601 0,0 0.61804,1.20318 1.57944,1.24252 0.9614,0.03934 1.98529,-0.89917 1.98529,-0.89917 0,0 0.73402,1.279 1.70252,1.16397 0.9685,-0.11503 1.78928,-0.75195 1.78928,-0.75195 0,0 0.56599,1.0003 1.52739,0.75195 0,0 0.41203,-0.33992 0.4807,-1.25554 0.06867,-0.91562 0,-2.70108 0,-2.70108 L 1.85372,67.86729 Z" - id="path8" /> - <path - class="cls-8" - d="m 25.13191,9.56526 c 0,0 1.47644,2.84986 1.27042,6.11176 -0.20602,3.2619 -1.03007,5.13826 -1.03007,5.13826 0,0 -4.12029,-0.39993 -4.25763,-4.24553 -0.13734,-3.8456 1.4421,-6.31777 4.01728,-7.00449 z" - id="path10" /> - <path - class="cls-8" - d="m 55.75584,21.96046 c 0,0 2.72236,-0.85032 2.92206,-4.36064 0.1997,-3.51031 -0.61804,-5.6958 -2.19749,-6.67633 0,0 -0.80744,-0.4655 -0.899,-0.44261" - id="path12" /> - <line - class="cls-5" - x1="8.32582" - y1="14.60336" - x2="21.10634" - y2="15.49837" - id="line14" /> - <line - class="cls-5" - x1="69.196678" - y1="16.531179" - x2="58.808979" - y2="16.00531" - id="line16" /> - <path - class="cls-8" - d="m 43.57751,7.7798 c -0.4419,-0.15172 -2.89152,-0.34336 -4.19628,2.23182 -1.30476,2.57518 -0.85839,4.91001 1.88846,5.32204 2.74685,0.41203 3.95891,-1.97115 4.22329,-3.35743 0.17168,-0.90019 -0.53362,-3.72199 -1.91548,-4.19642 z" - id="path18" /> - <path - class="cls-8" - d="m 49.51027,11.29394 c 0,0 -1.75112,0.3658 -1.9228,2.46028 -0.17168,2.09448 2.64385,2.37337 3.19322,2.25109 0.54937,-0.12228 1.92946,-0.84269 2.16648,-2.42245 0.23702,-1.57976 -1.66104,-2.97512 -3.4369,-2.28892 z" - id="path20" /> - <path - class="cls-6" - d="m 41.40704,9.8285 c -0.41258,0.18189 -1.80271,1.76675 -0.10301,2.81586 1.69971,1.04911 2.69561,0.02198 2.83484,-0.67421 C 44.2781,11.27396 43.53585,8.88999 41.40703,9.8285 Z" - id="path22" /> - <path - class="cls-6" - d="m 51.52097,12.15547 c 0,0 -0.98411,-0.41098 -1.54894,0.48554 -0.56483,0.89652 0.10163,1.90783 1.10398,2.22155 1.00234,0.31372 2.19841,-1.93319 0.44497,-2.70709 z" - id="path24" /> - <path - class="cls-7" - d="m 50.24317,115.28832 c -0.21424,-3.34119 -2.9124,-6.94718 -6.54544,-7.27325 l -5.57599,1.84424 c -2.91524,2.12241 -4.22064,5.56011 -3.30657,9.76942 0.15438,0.71079 2.15023,3.86243 7.19232,3.08417 5.04203,-0.77829 8.49935,-3.31234 8.23569,-7.42458 z m -9.2133,1.79352 c -1.89938,-0.13736 -1.76312,-2.13506 -1.76312,-2.13506 l 4.57815,-1.80211 c 0,0 0.59514,-0.33983 0.82407,1.60234 0.22889,1.94216 -1.73973,2.47217 -3.6391,2.33483 z" - id="path26" /> - <path - class="cls-7" - d="m 72.73509,102.95576 -6.37841,0.19163 c -2.1447,0.5142 -5.2667,2.05255 -5.29816,6.65101 -0.04795,7.01059 5.49575,6.47052 9.56801,6.5765 4.07227,0.10601 7.17978,-3.20214 7.41272,-6.35217 0.1783,-2.41176 -1.30956,-6.06314 -5.30417,-7.06697 z m -4.67209,9.90465 c -2.33238,0.15425 -3.70823,-1.77587 -3.47935,-3.51557 0.05996,-0.45582 0.30223,-0.826 0.62717,-1.12412 l 4.32782,-1.48918 c 2.12868,-0.086 3.23128,1.29787 3.37713,2.65909 0.18336,1.7104 -2.52038,3.3155 -4.85277,3.46978 z" - id="path28" /> - <path - class="cls-7" - d="M 54.03117,52.07947 C 53.93959,51.47772 53.6204,49.60071 53.39088,49.41759 l -0.0137,0.0033 c -0.12846,-1.86539 -1.18964,-3.08496 -3.19703,-3.12748 -2.14565,-0.04545 -3.50126,1.73232 -3.21073,3.52158 0.06523,0.40171 0.22799,0.74017 0.45609,1.02327 l -0.16787,0.03999 c 0,0 0.36419,2.49941 1.22257,2.77411 0.85838,0.27467 3.87995,0.44642 5.39068,-0.72676 0,0 0.25181,-0.24438 0.16028,-0.8461 z" - id="path30" /> - <path - class="cls-7" - d="m 66.09438,49.81495 -0.09763,0.03364 c 0.0071,-0.08852 0.01128,-0.17306 0.01128,-0.24788 0,-0.82531 -0.28105,-3.26189 -3.2562,-2.84988 -2.97521,0.41204 -3.4902,2.51348 -3.45585,3.21389 0.01739,0.35455 0.15333,1.25029 0.66195,1.96463 l -10e-4,3.4e-4 c 0,0 0.4603,2.45513 1.84537,2.63825 1.38507,0.18312 3.37655,0.13734 4.08613,-1.19032 0.70958,-1.32764 0.20597,-3.56267 0.20597,-3.56267 z" - id="path32" /> - <path - class="cls-7" - d="m 40.2158,49.93861 c 0.06565,-0.37181 0.1117,-0.95161 0.02382,-1.78001 -0.17166,-1.61893 -1.71675,-2.40349 -3.53657,-1.95749 -1.81981,0.44602 -2.43566,1.24362 -2.23839,2.88792 0.0177,0.14759 0.04684,0.28687 0.08125,0.42215 l -0.002,-1.6e-4 c 0,0 -0.03831,2.12692 0.16771,2.69919 0.20602,0.57227 2.12879,2.26615 4.46365,1.21319 0,0 0.52648,-0.27467 0.66384,-0.64092 0.13731,-0.36625 0.45145,-1.76333 0.44913,-2.83842 l -0.0724,-0.0055 z" - id="path34" /> - <path - class="cls-4" - d="m 38.21382,109.4822 c 0,0 0.91004,5.26481 1.50798,5.44793 0.59794,0.18312 4.07729,-1.1903 4.12307,-1.78546 0.04578,-0.59516 -1.45261,-4.67261 -1.45261,-4.67261 l -4.17845,1.01013 z" - id="path36" /> - <path - class="cls-4" - d="m 65.63849,103.14876 c 0,0 -0.95952,5.60694 0,5.55816 0.95952,-0.0488 3.99469,-0.5295 3.91921,-1.5939 -0.07548,-1.06439 -0.38511,-4.01333 -0.38511,-4.01333" - id="path38" /> - <path - class="cls-4" - d="m 84.76678,66.59689 c 0,0 0.83915,4.78749 1.71679,4.54914 0.87764,-0.23835 1.32027,-0.43658 1.38119,-1.27394 0,0 0.27507,0.81129 1.12939,0.75952 0.85432,-0.05177 1.00039,-1.20242 1.00039,-1.20242 0,0 0.62609,1.25365 1.37309,1.0133 0.747,-0.24035 0.81567,-1.33909 0.81567,-1.33909 0,0 0.93684,0.66467 1.44699,0.17783 0.51015,-0.48684 0.07356,-2.69588 0,-2.98196 -0.07356,-0.28608 -0.81006,-1.27039 -0.81006,-1.27039 l -8.05344,1.56802 z" - id="path40" /> - </g> - <g - id="g166"> - <path - class="cls-1" - d="m 25.13191,9.56526 c 0,0 1.47644,2.84986 1.27042,6.11176 -0.20602,3.2619 -1.03007,5.13826 -1.03007,5.13826 0,0 -4.12029,-0.39993 -4.25763,-4.24553 -0.13734,-3.8456 1.4421,-6.31777 4.01728,-7.00449 z" - id="path44" /> - <path - class="cls-1" - d="m 31.00332,1.10981 c 0,0 -1.09874,6.25797 -1.78546,12.28218 -0.68671,6.02421 -0.89273,13.55829 -0.89273,13.55829" - id="path46" /> - <path - class="cls-1" - d="m 55.75584,21.96046 c 0,0 2.72236,-0.85032 2.92206,-4.36064 0.1997,-3.51031 -0.61804,-5.6958 -2.19749,-6.67633 0,0 -0.80744,-0.4655 -0.899,-0.44261" - id="path48" /> - <path - class="cls-1" - d="m 23.24005,10.54253 c 0.9729,-2.19093 4.0548,-8.47808 7.76327,-9.43273 0,0 3.47424,-1.93877 23.21625,2.78287 0.60265,0.14413 1.03381,0.67579 1.0469,1.29529 l 0.48938,23.17037" - id="path50" /> - <path - class="cls-1" - d="m 21.41221,30.28115 c 0,0 0.41399,-5.64784 0.82913,-10.94285" - id="path52" /> - <line - class="cls-1" - x1="8.32582" - y1="14.60336" - x2="21.10634" - y2="15.49837" - id="line54" /> - <line - class="cls-1" - x1="69.196678" - y1="16.531179" - x2="58.808979" - y2="16.00531" - id="line56" /> - <path - class="cls-1" - d="m 37.79404,6.9334 c 0,0 5.12377,-0.25234 10.03378,0.84641 4.91001,1.09874 5.38582,1.19021 5.38582,1.19021" - id="path58" /> - <path - class="cls-1" - d="m 32.94573,17.49681 c 0,0 8.66733,1.68245 12.34125,2.30049 3.67392,0.61804 6.86714,0.37769 6.86714,0.37769" - id="path60" /> - <path - class="cls-1" - d="m 43.57751,7.7798 c -0.4419,-0.15172 -2.89152,-0.34336 -4.19628,2.23182 -1.30476,2.57518 -0.85839,4.91001 1.88846,5.32204 2.74685,0.41203 3.95891,-1.97115 4.22329,-3.35743 0.17168,-0.90019 -0.53362,-3.72199 -1.91548,-4.19642 z" - id="path62" /> - <path - class="cls-1" - d="m 49.51027,11.29394 c 0,0 -1.75112,0.3658 -1.9228,2.46028 -0.17168,2.09448 2.64385,2.37337 3.19322,2.25109 0.54937,-0.12228 1.49782,-0.84269 1.73484,-2.42245 0.23702,-1.57976 -1.2294,-2.97512 -3.00526,-2.28892 z" - id="path64" /> - <path - class="cls-2" - d="m 41.40704,10.03926 c -0.41258,0.18189 -1.80271,1.76675 -0.10301,2.81586 1.69971,1.04911 2.53269,-0.13392 2.67192,-0.83011 0.13923,-0.6962 -0.4401,-2.92426 -2.56891,-1.98575 z" - id="path66" /> - <path - class="cls-2" - d="m 51.52097,12.15547 c 0,0 -0.98411,-0.41098 -1.54894,0.48554 -0.56483,0.89652 0.10163,1.90783 1.10398,2.22155 1.00234,0.31372 2.19841,-1.93319 0.44497,-2.70709 z" - id="path68" /> - <path - class="cls-1" - d="M 12.38438,69.44675 1.85374,67.86731 c 0,0 3.47839,-19.09137 11.64433,-21.66619 0,0 2.44826,4.08631 -1.11369,23.24564 z" - id="path70" /> - <path - class="cls-1" - d="m 84.40823,66.29926 8.41197,-1.27037 c 0,0 -8.04715,-16.45825 -14.6396,-16.87028" - id="path72" /> - <polygon - class="cls-1" - points="33.40682,59.26205 32.65143,63.95304 70.91472,65.32647 71.2649,59.64014 " - id="polygon74" /> - <path - class="cls-1" - d="m 12.69711,83.59307 c 0,0 23.19406,1.80938 30.04902,1.68992 6.85496,-0.11946 14.50641,-0.9519 23.87619,-2.31641 9.36978,-1.36451 20.5894,-3.21911 20.5894,-3.21911" - id="path76" /> - <path - class="cls-1" - d="m 12.24996,69.44301 c -0.21995,7.88678 -0.27478,14.05487 0.44715,19.20733 0,0 11.6239,2.95402 37.18026,1.35188 25.55636,-1.60214 37.91722,-6.01073 37.91722,-6.01073 0,0 -2.8842,-22.33328 -9.20197,-34.16477 C 72.27485,37.99523 66.98715,29.80406 52.29146,28.09691 37.59577,26.38976 29.26364,23.91759 21.4122,30.92208 c 0,0 -6.03181,4.00979 -8.06447,15.25186" - id="path78" /> - <path - class="cls-1" - d="m 41.03653,108.55126 c 2.18042,-0.3569 4.20658,-0.85809 4.68537,-1.03764 1.09874,-0.41203 3.34201,-0.32047 3.15889,-3.47935 -0.18312,-3.15889 -0.74738,-13.55583 -0.74738,-13.55583" - id="path80" /> - <path - class="cls-1" - d="m 33.63572,90.75779 c 0,0 0.61925,15.61131 1.17946,17.44255 0.3161,1.03326 3.39803,0.81305 6.22134,0.35092" - id="path82" /> - <path - class="cls-1" - d="m 62.85346,88.85406 c 0,0 -1.00902,4.37591 -1.40198,12.84538 0,0 0.06485,1.24396 2.99483,1.40026 2.92998,0.1563 9.48557,-0.0841 10.38984,-0.39307 0.90427,-0.30896 1.23852,-2.10253 1.51321,-6.70521 0.27469,-4.60268 0.54433,-9.29808 0.54433,-9.29808" - id="path84" /> - <path - class="cls-1" - d="m 38.12173,109.85931 c -2.91524,2.12241 -4.22067,5.56012 -3.30655,9.76942 0.15436,0.71079 2.15021,3.86245 7.19229,3.08417 5.04207,-0.77828 8.49934,-3.31234 8.2357,-7.42457 -0.21421,-3.34119 -2.9124,-6.94718 -6.54543,-7.27326" - id="path86" /> - <path - class="cls-1" - d="m 38.21382,109.4822 c 0,0 0.91004,5.26481 1.50798,5.44793 0.59794,0.18312 4.07729,-1.1903 4.12307,-1.78546 0.04578,-0.59516 -1.45261,-4.67261 -1.45261,-4.67261 l -4.17845,1.01013 z" - id="path88" /> - <path - class="cls-1" - d="m 65.63849,103.14876 c 0,0 -0.95952,5.60694 0,5.55816 0.95952,-0.0488 3.99469,-0.5295 3.91921,-1.5939 -0.07548,-1.06439 -0.38511,-4.01333 -0.38511,-4.01333" - id="path90" /> - <path - class="cls-1" - d="m 39.26678,114.9468 c 0,0 -0.13631,1.99769 1.76308,2.13504 1.8994,0.13734 3.86798,-0.39267 3.63907,-2.33483 -0.2289,-1.94216 -0.82406,-1.60233 -0.82406,-1.60233" - id="path92" /> - <path - class="cls-1" - d="m 65.21082,108.22073 c -0.32492,0.29812 -0.5672,0.6683 -0.62717,1.12413 -0.2289,1.73968 1.14694,3.66982 3.47935,3.51555 2.33241,-0.15427 5.0361,-1.75937 4.85278,-3.46976 -0.1459,-1.36122 -1.24844,-2.74506 -3.37717,-2.65909" - id="path94" /> - <path - class="cls-1" - d="m 3.30555,63.4217 c 0,0 5.89665,0.08882 9.73333,1.04149" - id="path96" /> - <path - class="cls-1" - d="m 2.36106,65.61122 c 0,0 3.80794,0.75755 9.96239,0.87625" - id="path98" /> - <path - class="cls-1" - d="m 83.18102,61.77961 c 0,0 5.61773,-0.75032 7.56277,-0.43405" - id="path100" /> - <path - class="cls-1" - d="m 91.76821,63.18322 c 0,0 -3.57276,0.71272 -7.94724,0.82243" - id="path102" /> - <path - class="cls-1" - d="m 32.80922,62.97313 c 0,0 10.48757,-1.3975 20.58163,-1.41054 10.09405,-0.01305 17.73245,0.37682 17.73245,0.37682" - id="path104" /> - <path - class="cls-1" - d="m 66.00801,49.60071 c 0,-0.82531 -0.28104,-3.26189 -3.2562,-2.84986 -2.97516,0.41203 -3.49019,2.51346 -3.45586,3.21387 0.03434,0.70041 0.52527,3.51593 3.45586,2.86356 2.93058,-0.65238 3.2562,-2.40224 3.2562,-3.22756 z" - id="path106" /> - <path - class="cls-1" - d="m 53.39085,49.81494 c 0,0 -0.27598,1.43992 -2.12946,1.91458 -1.85348,0.47467 -4.00145,-0.12535 -4.29196,-1.91458 -0.29051,-1.78923 1.06505,-3.567 3.21071,-3.52156 2.14566,0.04544 3.21071,1.4353 3.21071,3.52156 z" - id="path108" /> - <path - class="cls-1" - d="m 40.07257,50.4591 c 0,0 -0.42475,0.91809 -2.292,1.04275 -1.86724,0.12466 -3.11856,-0.76851 -3.31588,-2.41281 -0.19732,-1.64431 0.41856,-2.44191 2.23836,-2.88792 1.81979,-0.44601 3.3649,0.33857 3.53658,1.95749 0.17168,1.61892 -0.16706,2.30049 -0.16706,2.30049 z" - id="path110" /> - <path - class="cls-1" - d="m 47.25763,50.87821 c 0,0 0.36417,2.49943 1.22256,2.77412 0.85839,0.27469 3.87994,0.44642 5.39071,-0.72674 0,0 0.2518,-0.24438 0.16023,-0.84612 -0.09157,-0.60174 -0.41073,-2.47876 -0.64029,-2.66188" - id="path112" /> - <path - class="cls-1" - d="m 59.95691,51.92969 c 0,0 0.46034,2.45513 1.84538,2.63825 1.38504,0.18312 3.37651,0.13734 4.08612,-1.1903 0.70961,-1.32764 0.20601,-3.5627 0.20601,-3.5627" - id="path114" /> - <path - class="cls-1" - d="m 34.54385,49.51104 c 0,0 -0.03829,2.12692 0.16772,2.69918 0.20601,0.57226 2.12881,2.26616 4.46364,1.2132 0,0 0.52648,-0.27469 0.66382,-0.64093 0.13734,-0.36624 0.45148,-1.76332 0.44914,-2.83842" - id="path116" /> - <path - class="cls-1" - d="m 83.75282,117.52847 c 0,0 -6.40088,-1.0895 -15.15597,-1.09428 -8.72347,-0.005 -18.57801,0.9795 -18.57801,0.9795" - id="path118" /> - <path - class="cls-1" - d="m 66.35667,103.1474 c -2.14466,0.5142 -5.2667,2.05254 -5.29815,6.65101 -0.04795,7.01059 5.49573,6.4705 9.56802,6.5765 4.07229,0.10601 7.17977,-3.20216 7.4127,-6.35219 0.17833,-2.41174 -1.30952,-6.06313 -5.30415,-7.06694" - id="path120" /> - <path - d="m 31.48407,86.65132 c 0,0 -1.05807,-0.73359 -1.55055,0.68907 -0.49248,1.42265 1.42353,1.29901 1.72736,1.12048 0.30383,-0.17853 0.4928,-1.46626 -0.17681,-1.80955 z" - id="path122" /> - <path - d="m 16.28687,86.46223 c 0,0 -0.08363,-0.6839 0.80979,-0.80532 0.89342,-0.12143 0.92242,0.44309 0.89934,0.72737 -0.02308,0.28428 -0.07459,0.64481 -0.62396,0.83365 -0.54937,0.18884 -1.08876,-0.25815 -1.08517,-0.7557 z" - id="path124" /> - <path - d="m 51.77746,86.75527 c 0,0 0.23932,-0.63609 0.97753,-0.58458 0.73821,0.05151 0.69911,0.65502 0.65118,0.97857 -0.04793,0.32355 -0.22649,0.82899 -0.95387,0.74068 -0.72738,-0.08831 -0.72568,-0.81127 -0.67484,-1.13467 z" - id="path126" /> - <path - d="m 70.50398,85.25953 c 0,0 0.24221,0.72032 1.38423,0.48219 1.14202,-0.23813 0.56951,-1.7263 -0.11422,-1.6861 -0.68373,0.0402 -1.40993,0.17012 -1.27001,1.20391 z" - id="path128" /> - <path - d="m 82.93143,82.71436 c 0,0 0.3473,0.94157 1.31764,0.38652 0.97034,-0.55505 0.19329,-1.80616 -0.51693,-1.63555 -0.71022,0.17061 -0.94273,1.00554 -0.80072,1.24903 z" - id="path130" /> - <path - d="m 11.80965,49.94407 c 0,0 -1.14258,-0.25752 -1.39535,1.03007 -0.25277,1.28759 0.93729,1.75112 1.68994,1.35626 0.75265,-0.39486 0.27824,-2.41064 -0.29459,-2.38633 z" - id="path132" /> - <path - d="m 81.45847,51.20619 c 0,0 1.31116,0.45233 1.10596,1.6212 -0.2052,1.16887 -2.04255,0.50337 -2.05702,0.09829 -0.01447,-0.40508 -0.66423,-1.7974 0.95106,-1.71949 z" - id="path134" /> - <path - class="cls-1" - d="m 36.51321,111.35559 c 0,0 -1.42394,4.85642 0.67053,7.15691 2.09448,2.30049 7.17617,0.9614 8.89295,-1.09874 1.71679,-2.06014 0.28726,-6.77395 -2.87791,-6.83771" - id="path136" /> - <path - class="cls-1" - d="m 65.06435,106.25393 c 0,0 -2.79632,3.12527 -0.50543,5.73478 2.29089,2.60951 6.44551,2.47217 9.15803,1.03007 2.71252,-1.4421 1.81979,-5.63249 -0.13734,-6.76485 -1.95714,-1.13236 -4.04092,-1.13236 -4.04092,-1.13236" - id="path138" /> - <path - class="cls-1" - d="m 1.85374,67.86731 c 0,0 -1.60433,3.09021 -1.03779,4.18896 0.67506,1.3092 2.33483,-0.29236 2.53715,-1.1903 0.13521,-0.60008 0.33979,-1.63203 0.3505,-2.47217" - id="path140" /> - <path - class="cls-1" - d="m 7.02434,68.82751 c 0,0 -0.40031,2.08852 -1.0284,3.56314 -0.16355,0.38398 -0.69918,0.8502 -1.07687,0.91887 -0.9345,0.16991 -1.83232,-0.2209 -1.56597,-2.44356" - id="path142" /> - <path - class="cls-1" - d="m 9.8754,69.42386 c 0,0 0.00686,3.39924 -0.61093,3.93716 -0.59048,0.51415 -2.82465,0.74702 -2.88087,-1.98421" - id="path144" /> - <path - class="cls-1" - d="m 12.03389,72.76587 c 0,0 -0.26484,0.78972 -0.95983,0.84205 -0.60797,0.04578 -1.411,-0.99833 -1.3439,-1.7365" - id="path146" /> - <path - class="cls-1" - d="m 92.6972,64.92077 c 0.82809,1.09874 1.34918,3.3095 1.21723,3.91427 -0.13734,0.62949 -1.01325,0.96687 -1.67748,-0.06806 -0.66445,-1.03528 -1.10514,-2.13664 -1.47467,-3.4044" - id="path148" /> - <path - class="cls-1" - d="m 88.99415,65.59825 c 0,0 0.6245,2.46073 0.85212,3.39924 0.35565,1.46639 1.88846,2.12949 2.09448,0.56654 0.13469,-1.02181 -0.49155,-2.29438 -0.49155,-2.29438" - id="path150" /> - <path - class="cls-1" - d="m 86.91057,66.02167 c 0,0 0.29113,3.29849 1.22519,4.20578 0.76628,0.74433 1.89936,0.57265 1.65223,-1.46838" - id="path152" /> - <path - class="cls-1" - d="m 84.95023,68.59815 c 0,0 0.62561,2.80895 2.01926,2.52815 1.00572,-0.20263 0.58256,-1.93514 0.58256,-1.93514" - id="path154" /> - <path - class="cls-1" - d="m 34.52726,118.72996 c 0,0 -5.26988,0.45781 -9.20705,0" - id="path156" /> - <path - class="cls-3" - d="m 33.8484,94.4944 c 0,0 3.29194,0.68065 6.65684,0.61447 3.3649,-0.06617 7.8705,-0.61447 7.8705,-0.61447" - id="path158" /> - <path - class="cls-3" - d="m 33.89718,96.95497 c 0,0 3.24272,1.35451 6.70104,1.35451 3.45832,0 7.77752,-0.89307 7.77752,-0.89307" - id="path160" /> - <path - class="cls-1" - d="m 62.6512,93.12002 c 0,0 8.54347,1.13785 13.69815,0.24855" - id="path162" /> - <path - class="cls-1" - d="m 61.89234,95.53861 c 0,0 1.76474,0.89864 4.60979,1.08158 3.98534,0.25625 9.84723,-0.18714 9.84723,-0.18714" - id="path164" /> - </g> - </g> - <g - id="g186" - transform="translate(22.80687,13.234741)" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 142.45365 142.45364" version="1.1"><defs id="defs4"><style id="style2">.cls-1,.cls-2,.cls-3{fill:none;stroke:#000;stroke-linecap:round;stroke-linejoin:round}.cls-1,.cls-3{stroke-width:1.29491px}.cls-4{fill:#fff}.cls-5{fill:#ffc432}.cls-6{fill:#ffc21a}.cls-7{fill:#b1b1b1}.cls-8{fill:#e10017}.cls-2{stroke-width:1.18701px}.cls-3{fill-rule:evenodd}</style></defs><g id="g168" transform="translate(22.807 13.235)"><g id="g42"><path id="path6" d="m84.365 66.173.043.126 8.412-1.27s-8.047-16.458-14.64-16.87c0 0-9.597-18.015-22.183-19.45l-.241-.35-.49-23.171a1.36 1.36 0 0 0-1.046-1.295C34.478-.83 31.003 1.11 31.003 1.11c-3.708.954-6.79 7.242-7.763 9.433l-.999 8.795c-.415 5.295-.56 11.343-.829 11.584 0 0-6.032 4.01-8.064 15.252l-.004.081C5.289 49.02 1.854 67.867 1.854 67.867l10.397 1.56-.001.016c-.22 7.887-.275 14.055.447 19.207 0 0 6.658 1.69 20.961 1.82.115 2.907.66 16.102 1.157 17.73.316 1.034 3.398.813 6.222.351 2.18-.357 4.206-.858 4.685-1.037 1.099-.412 3.342-.32 3.159-3.48-.16-2.765-.613-11.739-.723-13.932.568-.032 1.136-.063 1.72-.1 4.786-.3 9.11-.698 12.975-1.148 0 0-1.009 4.376-1.402 12.845 0 0 .065 1.244 2.995 1.4 2.93.157 9.486-.083 10.39-.392.904-.31 1.239-2.103 1.513-6.706.275-4.602.545-9.298.545-9.298l-.024.004c7.322-1.433 10.925-2.716 10.925-2.716s-1.1-8.517-3.43-17.818" class="cls-6"/><path id="path8" d="M1.854 67.867S.794 69.97.85 71.086s.481 1.726 1.969 1.016c0 0 .618 1.203 1.58 1.243.96.039 1.985-.9 1.985-.9s.734 1.28 1.702 1.164c.969-.115 1.79-.752 1.79-.752s.565 1 1.527.752c0 0 .412-.34.48-1.255.07-.916 0-2.701 0-2.701z" class="cls-4"/><path id="path10" d="M25.132 9.565s1.476 2.85 1.27 6.112-1.03 5.138-1.03 5.138-4.12-.4-4.257-4.245c-.138-3.846 1.442-6.318 4.017-7.005" class="cls-8"/><path id="path12" d="M55.756 21.96s2.722-.85 2.922-4.36-.618-5.696-2.198-6.677c0 0-.807-.465-.899-.442" class="cls-8"/><path id="line14" d="m8.326 14.603 12.78.895" class="cls-5"/><path id="line16" d="m69.197 16.531-10.388-.526" class="cls-5"/><path id="path18" d="M43.578 7.78c-.442-.152-2.892-.344-4.197 2.232s-.858 4.91 1.889 5.322 3.959-1.971 4.223-3.358c.172-.9-.534-3.722-1.916-4.196" class="cls-8"/><path id="path20" d="M49.51 11.294s-1.75.366-1.923 2.46c-.171 2.095 2.644 2.374 3.194 2.251.55-.122 1.93-.842 2.166-2.422.237-1.58-1.66-2.975-3.437-2.29" class="cls-8"/><path id="path22" d="M41.407 9.829c-.413.181-1.803 1.766-.103 2.815 1.7 1.05 2.696.022 2.835-.674.14-.696-.603-3.08-2.732-2.142" class="cls-6"/><path id="path24" d="M51.521 12.155s-.984-.41-1.549.486c-.565.897.102 1.908 1.104 2.222 1.002.313 2.198-1.934.445-2.708" class="cls-6"/><path id="path26" d="M50.243 115.288c-.214-3.34-2.912-6.947-6.545-7.273l-5.576 1.844c-2.915 2.123-4.22 5.56-3.307 9.77.155.71 2.15 3.862 7.192 3.084 5.043-.778 8.5-3.312 8.236-7.425m-9.213 1.794c-1.9-.138-1.763-2.135-1.763-2.135l4.578-1.802s.595-.34.824 1.602-1.74 2.472-3.64 2.335" class="cls-7"/><path id="path28" d="m72.735 102.956-6.378.191c-2.145.515-5.267 2.053-5.298 6.651-.048 7.011 5.495 6.47 9.568 6.577 4.072.106 7.18-3.202 7.412-6.352.179-2.412-1.31-6.063-5.304-7.067m-4.672 9.904c-2.332.155-3.708-1.775-3.48-3.515.06-.456.303-.826.628-1.124l4.328-1.49c2.128-.085 3.23 1.298 3.377 2.66.183 1.71-2.52 3.315-4.853 3.47" class="cls-7"/><path id="path30" d="M54.031 52.08c-.091-.602-.41-2.48-.64-2.662l-.014.003c-.128-1.865-1.19-3.085-3.197-3.128-2.145-.045-3.501 1.733-3.21 3.522.065.402.227.74.456 1.023l-.168.04s.364 2.5 1.222 2.774c.859.275 3.88.447 5.39-.726 0 0 .253-.245.161-.846" class="cls-7"/><path id="path32" d="m66.094 49.815-.097.034q.01-.135.011-.248c0-.826-.281-3.262-3.256-2.85s-3.49 2.513-3.456 3.214c.017.354.153 1.25.662 1.964h-.001s.46 2.456 1.845 2.639 3.377.137 4.086-1.19c.71-1.328.206-3.563.206-3.563" class="cls-7"/><path id="path34" d="M40.216 49.939c.065-.372.112-.952.024-1.78-.172-1.62-1.717-2.404-3.537-1.958s-2.436 1.244-2.238 2.888q.027.22.08.422h-.001s-.038 2.127.168 2.7c.206.571 2.128 2.265 4.463 1.212 0 0 .527-.274.664-.64.137-.367.452-1.764.45-2.839z" class="cls-7"/><path id="path36" d="M38.214 109.482s.91 5.265 1.508 5.448 4.077-1.19 4.123-1.785-1.453-4.673-1.453-4.673z" class="cls-4"/><path id="path38" d="M65.638 103.149s-.959 5.607 0 5.558c.96-.049 3.995-.53 3.92-1.594s-.385-4.013-.385-4.013" class="cls-4"/><path id="path40" d="M84.767 66.597s.839 4.787 1.717 4.549c.877-.238 1.32-.437 1.38-1.274 0 0 .276.811 1.13.76s1-1.203 1-1.203.627 1.254 1.374 1.013c.747-.24.815-1.339.815-1.339s.937.665 1.447.178.074-2.696 0-2.982c-.073-.286-.81-1.27-.81-1.27z" class="cls-4"/></g><g id="g166"><path id="path44" d="M25.132 9.565s1.476 2.85 1.27 6.112-1.03 5.138-1.03 5.138-4.12-.4-4.257-4.245c-.138-3.846 1.442-6.318 4.017-7.005" class="cls-1"/><path id="path46" d="M31.003 1.11s-1.098 6.258-1.785 12.282-.893 13.558-.893 13.558" class="cls-1"/><path id="path48" d="M55.756 21.96s2.722-.85 2.922-4.36-.618-5.696-2.198-6.677c0 0-.807-.465-.899-.442" class="cls-1"/><path id="path50" d="M23.24 10.543c.973-2.191 4.055-8.479 7.763-9.433 0 0 3.475-1.939 23.217 2.783a1.36 1.36 0 0 1 1.046 1.295l.49 23.17" class="cls-1"/><path id="path52" d="M21.412 30.281s.414-5.648.83-10.943" class="cls-1"/><path id="line54" d="m8.326 14.603 12.78.895" class="cls-1"/><path id="line56" d="m69.197 16.531-10.388-.526" class="cls-1"/><path id="path58" d="M37.794 6.933s5.124-.252 10.034.847 5.386 1.19 5.386 1.19" class="cls-1"/><path id="path60" d="M32.946 17.497s8.667 1.682 12.341 2.3 6.867.378 6.867.378" class="cls-1"/><path id="path62" d="M43.578 7.78c-.442-.152-2.892-.344-4.197 2.232s-.858 4.91 1.889 5.322 3.959-1.971 4.223-3.358c.172-.9-.534-3.722-1.916-4.196" class="cls-1"/><path id="path64" d="M49.51 11.294s-1.75.366-1.923 2.46c-.171 2.095 2.644 2.374 3.194 2.251.55-.122 1.498-.842 1.735-2.422s-1.23-2.975-3.006-2.29" class="cls-1"/><path id="path66" d="M41.407 10.04c-.413.181-1.803 1.766-.103 2.815 1.7 1.05 2.533-.134 2.672-.83s-.44-2.924-2.569-1.986" class="cls-2"/><path id="path68" d="M51.521 12.155s-.984-.41-1.549.486c-.565.897.102 1.908 1.104 2.222 1.002.313 2.198-1.934.445-2.708" class="cls-2"/><path id="path70" d="m12.384 69.447-10.53-1.58s3.478-19.091 11.644-21.666c0 0 2.448 4.086-1.114 23.246" class="cls-1"/><path id="path72" d="m84.408 66.3 8.412-1.271s-8.047-16.458-14.64-16.87" class="cls-1"/><path id="polygon74" d="m33.407 59.262-.756 4.691 38.264 1.373.35-5.686z" class="cls-1"/><path id="path76" d="M12.697 83.593s23.194 1.81 30.05 1.69c6.854-.12 14.506-.952 23.875-2.316 9.37-1.365 20.59-3.22 20.59-3.22" class="cls-1"/><path id="path78" d="M12.25 69.443c-.22 7.887-.275 14.055.447 19.207 0 0 11.624 2.954 37.18 1.352 25.557-1.602 37.918-6.01 37.918-6.01s-2.885-22.334-9.202-34.165c-6.318-11.832-11.606-20.023-26.302-21.73s-23.027-4.18-30.879 2.825c0 0-6.032 4.01-8.064 15.252" class="cls-1"/><path id="path80" d="M41.037 108.551c2.18-.357 4.206-.858 4.685-1.037 1.099-.412 3.342-.32 3.159-3.48-.183-3.159-.748-13.556-.748-13.556" class="cls-1"/><path id="path82" d="M33.636 90.758s.619 15.611 1.18 17.442c.315 1.034 3.397.813 6.22.351" class="cls-1"/><path id="path84" d="M62.853 88.854s-1.009 4.376-1.402 12.845c0 0 .065 1.244 2.995 1.4 2.93.157 9.486-.083 10.39-.392.904-.31 1.239-2.103 1.513-6.706.275-4.602.545-9.298.545-9.298" class="cls-1"/><path id="path86" d="M38.122 109.86c-2.916 2.122-4.22 5.56-3.307 9.769.155.71 2.15 3.862 7.192 3.084 5.043-.778 8.5-3.312 8.236-7.425-.214-3.34-2.912-6.947-6.545-7.273" class="cls-1"/><path id="path88" d="M38.214 109.482s.91 5.265 1.508 5.448 4.077-1.19 4.123-1.785-1.453-4.673-1.453-4.673z" class="cls-1"/><path id="path90" d="M65.638 103.149s-.959 5.607 0 5.558c.96-.049 3.995-.53 3.92-1.594s-.385-4.013-.385-4.013" class="cls-1"/><path id="path92" d="M39.267 114.947s-.137 1.997 1.763 2.135 3.868-.393 3.639-2.335-.824-1.602-.824-1.602" class="cls-1"/><path id="path94" d="M65.21 108.22c-.324.299-.566.669-.626 1.125-.23 1.74 1.147 3.67 3.479 3.515s5.036-1.759 4.853-3.47c-.146-1.36-1.249-2.744-3.377-2.658" class="cls-1"/><path id="path96" d="M3.306 63.422s5.896.089 9.733 1.041" class="cls-1"/><path id="path98" d="M2.361 65.611s3.808.758 9.962.876" class="cls-1"/><path id="path100" d="M83.181 61.78s5.618-.75 7.563-.434" class="cls-1"/><path id="path102" d="M91.768 63.183s-3.573.713-7.947.823" class="cls-1"/><path id="path104" d="M32.81 62.973s10.487-1.397 20.58-1.41c10.095-.013 17.733.376 17.733.376" class="cls-1"/><path id="path106" d="M66.008 49.6c0-.825-.281-3.261-3.256-2.85-2.975.413-3.49 2.514-3.456 3.215.034.7.525 3.516 3.456 2.863 2.93-.652 3.256-2.402 3.256-3.227" class="cls-1"/><path id="path108" d="M53.39 49.815s-.275 1.44-2.129 1.915c-1.853.474-4.001-.126-4.292-1.915s1.065-3.567 3.211-3.522 3.21 1.436 3.21 3.522" class="cls-1"/><path id="path110" d="M40.073 50.46s-.425.917-2.292 1.042c-1.868.125-3.119-.769-3.316-2.413-.198-1.644.418-2.442 2.238-2.888s3.365.339 3.537 1.958-.167 2.3-.167 2.3" class="cls-1"/><path id="path112" d="M47.258 50.878s.364 2.5 1.222 2.774c.859.275 3.88.447 5.39-.726 0 0 .253-.245.161-.847-.091-.601-.41-2.478-.64-2.661" class="cls-1"/><path id="path114" d="M59.957 51.93s.46 2.455 1.845 2.638 3.377.137 4.086-1.19c.71-1.328.206-3.563.206-3.563" class="cls-1"/><path id="path116" d="M34.544 49.511s-.038 2.127.168 2.7c.206.571 2.128 2.265 4.463 1.212 0 0 .527-.274.664-.64.137-.367.452-1.764.45-2.839" class="cls-1"/><path id="path118" d="M83.753 117.528s-6.401-1.089-15.156-1.094c-8.724-.005-18.578.98-18.578.98" class="cls-1"/><path id="path120" d="M66.357 103.147c-2.145.515-5.267 2.053-5.298 6.651-.048 7.011 5.495 6.47 9.568 6.577 4.072.106 7.18-3.202 7.412-6.352.179-2.412-1.31-6.063-5.304-7.067" class="cls-1"/><path id="path122" d="M31.484 86.651s-1.058-.733-1.55.69c-.493 1.422 1.423 1.298 1.727 1.12.304-.179.493-1.466-.177-1.81"/><path id="path124" d="M16.287 86.462s-.084-.684.81-.805c.893-.122.922.443.899.727-.023.285-.075.645-.624.834-.55.189-1.089-.258-1.085-.756"/><path id="path126" d="M51.777 86.755s.24-.636.978-.584c.738.051.7.655.651.978-.048.324-.226.83-.954.74-.727-.087-.725-.81-.675-1.134"/><path id="path128" d="M70.504 85.26s.242.72 1.384.482.57-1.727-.114-1.686c-.684.04-1.41.17-1.27 1.204"/><path id="path130" d="M82.931 82.714s.348.942 1.318.387.193-1.806-.517-1.636-.943 1.006-.8 1.25"/><path id="path132" d="M11.81 49.944s-1.143-.257-1.396 1.03c-.252 1.288.938 1.751 1.69 1.356.753-.394.278-2.41-.294-2.386"/><path id="path134" d="M81.458 51.206s1.312.453 1.106 1.621c-.205 1.17-2.042.504-2.057.099-.014-.405-.664-1.798.951-1.72"/><path id="path136" d="M36.513 111.356s-1.424 4.856.67 7.157c2.095 2.3 7.177.96 8.894-1.1 1.716-2.06.287-6.773-2.878-6.837" class="cls-1"/><path id="path138" d="M65.064 106.254s-2.796 3.125-.505 5.735 6.445 2.472 9.158 1.03 1.82-5.633-.137-6.765-4.041-1.132-4.041-1.132" class="cls-1"/><path id="path140" d="M1.854 67.867s-1.605 3.09-1.038 4.19c.675 1.308 2.335-.293 2.537-1.191.135-.6.34-1.632.35-2.472" class="cls-1"/><path id="path142" d="M7.024 68.828s-.4 2.088-1.028 3.563c-.164.384-.7.85-1.077.919-.934.17-1.832-.221-1.566-2.444" class="cls-1"/><path id="path144" d="M9.875 69.424s.007 3.4-.61 3.937c-.591.514-2.825.747-2.881-1.984" class="cls-1"/><path id="path146" d="M12.034 72.766s-.265.79-.96.842c-.608.046-1.41-.998-1.344-1.737" class="cls-1"/><path id="path148" d="M92.697 64.92c.828 1.1 1.35 3.31 1.217 3.915-.137.63-1.013.967-1.677-.068s-1.105-2.137-1.475-3.404" class="cls-1"/><path id="path150" d="M88.994 65.598s.625 2.461.852 3.4c.356 1.466 1.889 2.129 2.095.566.134-1.022-.492-2.294-.492-2.294" class="cls-1"/><path id="path152" d="M86.91 66.022s.292 3.298 1.226 4.205c.766.745 1.9.573 1.652-1.468" class="cls-1"/><path id="path154" d="M84.95 68.598s.626 2.81 2.02 2.528c1.005-.202.582-1.935.582-1.935" class="cls-1"/><path id="path156" d="M34.527 118.73s-5.27.458-9.207 0" class="cls-1"/><path id="path158" d="M33.848 94.494s3.292.681 6.657.615 7.87-.615 7.87-.615" class="cls-3"/><path id="path160" d="M33.897 96.955s3.243 1.354 6.701 1.354c3.459 0 7.778-.893 7.778-.893" class="cls-3"/><path id="path162" d="M62.651 93.12s8.544 1.138 13.698.249" class="cls-1"/><path id="path164" d="M61.892 95.539s1.765.898 4.61 1.081c3.985.256 9.847-.187 9.847-.187" class="cls-1"/></g></g></svg> diff --git a/src/assets/images/knowyourmeme-icon.svg b/src/assets/images/knowyourmeme-icon.svg new file mode 100644 index 00000000..db684679 --- /dev/null +++ b/src/assets/images/knowyourmeme-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 3704.881 3733.965"><g transform="translate(1743.864 1673.071)"><circle cx="108.576" cy="193.904" r="1866.975" style="fill:#13133e;stroke-width:140.586;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:.53144;fill-opacity:1"/><path d="M-743.183-600.259v1558.18h-191.003v361.9H-79.7v-361.9h-231.214V294.439l653.43 663.482h-180.95v361.9h989.772v-361.9h-229.21L136.434 128.567l785.692-728.826h229.211v-331.74H282.2v331.74h100.527L-310.914 58.198v-658.457H-79.7v-331.74h-854.486v331.74z" style="fill:#fff;fill-opacity:1;stroke:none;stroke-width:31.9286px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"/></g></svg> \ No newline at end of file diff --git a/src/assets/images/libredirect-64.png b/src/assets/images/libredirect-64.png new file mode 100644 index 00000000..cfe1db4f --- /dev/null +++ b/src/assets/images/libredirect-64.png Binary files differdiff --git a/src/assets/images/libredirect-96.png b/src/assets/images/libredirect-96.png new file mode 100644 index 00000000..71506660 --- /dev/null +++ b/src/assets/images/libredirect-96.png Binary files differdiff --git a/src/assets/images/maps-icon-light.svg b/src/assets/images/maps-icon-light.svg index faefa200..4cb6f478 100644 --- a/src/assets/images/maps-icon-light.svg +++ b/src/assets/images/maps-icon-light.svg @@ -1,40 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - height="24px" - viewBox="0 0 24 24" - width="24px" - fill="currentColor" - version="1.1" - id="svg933" - sodipodi:docname="maps-icon-white.svg" - inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs937" /> - <sodipodi:namedview - id="namedview935" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="32.416667" - inkscape:cx="9.0077121" - inkscape:cy="12" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg933" /> - <path - d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z" - id="path931" - style="fill:#ffffff" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="#fff" d="m20.5 3-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5M10 5.47l4 1.4v11.66l-4-1.4zm-5 .99 3-1.01v11.7l-3 1.16zm14 11.08-3 1.01V6.86l3-1.16z"/></svg> diff --git a/src/assets/images/maps-icon.svg b/src/assets/images/maps-icon.svg index c66a89d1..c721b602 100644 --- a/src/assets/images/maps-icon.svg +++ b/src/assets/images/maps-icon.svg @@ -1,3 +1 @@ -<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> - <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m20.5 3-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5M10 5.47l4 1.4v11.66l-4-1.4zm-5 .99 3-1.01v11.7l-3 1.16zm14 11.08-3 1.01V6.86l3-1.16z"/></svg> \ No newline at end of file diff --git a/src/assets/images/medium-icon.svg b/src/assets/images/medium-icon.svg index f77ed5bb..a286957d 100644 --- a/src/assets/images/medium-icon.svg +++ b/src/assets/images/medium-icon.svg @@ -1,62 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - viewBox="0 0 2084.3154 2084.3154" - fill="currentColor" - version="1.1" - id="svg1324" - sodipodi:docname="medium-icon.svg" - width="2084.3154" - height="2084.3154" - inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs1328" /> - <sodipodi:namedview - id="namedview1326" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="0.34774011" - inkscape:cx="422.72949" - inkscape:cy="1233.6799" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg1324" /> - <circle - style="fill:#000000;fill-rule:evenodd;stroke-width:6.70974;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.411765;paint-order:stroke fill markers;stop-color:#000000" - id="path1499" - cx="1042.1577" - cy="1042.1577" - r="1042.1577" /> - <circle - cx="657.15771" - cy="1042.1577" - r="500" - id="circle1318" - style="fill:#ffffff" /> - <ellipse - ry="475" - rx="250" - cy="1043.1577" - cx="1453.1577" - id="ellipse1320" - style="fill:#ffffff" /> - <ellipse - cx="1839.1577" - cy="1044.1577" - rx="88" - ry="424" - id="ellipse1322" - style="fill:#ffffff" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2084.315 2084.315"><circle cx="1042.158" cy="1042.158" r="1042.158" style="fill:#000;fill-rule:evenodd;stroke-width:6.70974;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:.411765;paint-order:stroke fill markers;stop-color:#000"/><circle cx="657.158" cy="1042.158" r="500" style="fill:#fff"/><ellipse cx="1453.158" cy="1043.158" rx="250" ry="475" style="fill:#fff"/><ellipse cx="1839.158" cy="1044.158" rx="88" ry="424" style="fill:#fff"/></svg> \ No newline at end of file diff --git a/src/assets/images/meet-icon-light.svg b/src/assets/images/meet-icon-light.svg index 1e0e1804..8277ad76 100644 --- a/src/assets/images/meet-icon-light.svg +++ b/src/assets/images/meet-icon-light.svg @@ -1,39 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - height="24" - viewBox="0 96 960 960" - width="24" - version="1.1" - id="svg4" - sodipodi:docname="meet-icon-light.svg" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs8" /> - <sodipodi:namedview - id="namedview6" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="32.416667" - inkscape:cx="17.861183" - inkscape:cy="12" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg4" /> - <path - d="M0 816v-63q0-43 44-70t116-27q13 0 25 .5t23 2.5q-14 21-21 44t-7 48v65H0Zm240 0v-65q0-32 17.5-58.5T307 646q32-20 76.5-30t96.5-10q53 0 97.5 10t76.5 30q32 20 49 46.5t17 58.5v65H240Zm540 0v-65q0-26-6.5-49T754 659q11-2 22.5-2.5t23.5-.5q72 0 116 26.5t44 70.5v63H780Zm-455-80h311q-10-20-55.5-35T480 686q-55 0-100.5 15T325 736ZM160 616q-33 0-56.5-23.5T80 536q0-34 23.5-57t56.5-23q34 0 57 23t23 57q0 33-23 56.5T160 616Zm640 0q-33 0-56.5-23.5T720 536q0-34 23.5-57t56.5-23q34 0 57 23t23 57q0 33-23 56.5T800 616Zm-320-40q-50 0-85-35t-35-85q0-51 35-85.5t85-34.5q51 0 85.5 34.5T600 456q0 50-34.5 85T480 576Zm0-80q17 0 28.5-11.5T520 456q0-17-11.5-28.5T480 416q-17 0-28.5 11.5T440 456q0 17 11.5 28.5T480 496Zm1 240Zm-1-280Z" - id="path2" - style="fill:#ffffff" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 96 960 960"><path fill="#fff" d="M0 816v-63q0-43 44-70t116-27q13 0 25 .5t23 2.5q-14 21-21 44t-7 48v65zm240 0v-65q0-32 17.5-58.5T307 646t76.5-30 96.5-10q53 0 97.5 10t76.5 30 49 46.5 17 58.5v65zm540 0v-65q0-26-6.5-49T754 659q11-2 22.5-2.5t23.5-.5q72 0 116 26.5t44 70.5v63zm-455-80h311q-10-20-55.5-35T480 686t-100.5 15-54.5 35M160 616q-33 0-56.5-23.5T80 536q0-34 23.5-57t56.5-23q34 0 57 23t23 57q0 33-23 56.5T160 616m640 0q-33 0-56.5-23.5T720 536q0-34 23.5-57t56.5-23q34 0 57 23t23 57q0 33-23 56.5T800 616m-320-40q-50 0-85-35t-35-85q0-51 35-85.5t85-34.5q51 0 85.5 34.5T600 456q0 50-34.5 85T480 576m0-80q17 0 28.5-11.5T520 456t-11.5-28.5T480 416t-28.5 11.5T440 456t11.5 28.5T480 496m0-40"/></svg> diff --git a/src/assets/images/meet-icon.svg b/src/assets/images/meet-icon.svg index 170f1023..74af6ccf 100644 --- a/src/assets/images/meet-icon.svg +++ b/src/assets/images/meet-icon.svg @@ -1 +1 @@ -<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 96 960 960" width="24"><path d="M0 816v-63q0-43 44-70t116-27q13 0 25 .5t23 2.5q-14 21-21 44t-7 48v65H0Zm240 0v-65q0-32 17.5-58.5T307 646q32-20 76.5-30t96.5-10q53 0 97.5 10t76.5 30q32 20 49 46.5t17 58.5v65H240Zm540 0v-65q0-26-6.5-49T754 659q11-2 22.5-2.5t23.5-.5q72 0 116 26.5t44 70.5v63H780Zm-455-80h311q-10-20-55.5-35T480 686q-55 0-100.5 15T325 736ZM160 616q-33 0-56.5-23.5T80 536q0-34 23.5-57t56.5-23q34 0 57 23t23 57q0 33-23 56.5T160 616Zm640 0q-33 0-56.5-23.5T720 536q0-34 23.5-57t56.5-23q34 0 57 23t23 57q0 33-23 56.5T800 616Zm-320-40q-50 0-85-35t-35-85q0-51 35-85.5t85-34.5q51 0 85.5 34.5T600 456q0 50-34.5 85T480 576Zm0-80q17 0 28.5-11.5T520 456q0-17-11.5-28.5T480 416q-17 0-28.5 11.5T440 456q0 17 11.5 28.5T480 496Zm1 240Zm-1-280Z"/></svg> \ No newline at end of file +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 96 960 960"><path d="M0 816v-63q0-43 44-70t116-27q13 0 25 .5t23 2.5q-14 21-21 44t-7 48v65zm240 0v-65q0-32 17.5-58.5T307 646t76.5-30 96.5-10q53 0 97.5 10t76.5 30 49 46.5 17 58.5v65zm540 0v-65q0-26-6.5-49T754 659q11-2 22.5-2.5t23.5-.5q72 0 116 26.5t44 70.5v63zm-455-80h311q-10-20-55.5-35T480 686t-100.5 15-54.5 35M160 616q-33 0-56.5-23.5T80 536q0-34 23.5-57t56.5-23q34 0 57 23t23 57q0 33-23 56.5T160 616m640 0q-33 0-56.5-23.5T720 536q0-34 23.5-57t56.5-23q34 0 57 23t23 57q0 33-23 56.5T800 616m-320-40q-50 0-85-35t-35-85q0-51 35-85.5t85-34.5q51 0 85.5 34.5T600 456q0 50-34.5 85T480 576m0-80q17 0 28.5-11.5T520 456t-11.5-28.5T480 416t-28.5 11.5T440 456t11.5 28.5T480 496m0-40"/></svg> \ No newline at end of file diff --git a/src/assets/images/pastebin-icon-light.svg b/src/assets/images/pastebin-icon-light.svg new file mode 100644 index 00000000..406714df --- /dev/null +++ b/src/assets/images/pastebin-icon-light.svg @@ -0,0 +1,101 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + fill="#000000" + width="800px" + height="800px" + viewBox="0 0 24 24" + role="img" + version="1.1" + id="svg1" + sodipodi:docname="pastebin-icon.svg" + inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs1" /> + <sodipodi:namedview + id="namedview1" + pagecolor="#ffffff" + bordercolor="#000000" + borderopacity="0.25" + inkscape:showpageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + inkscape:deskcolor="#d1d1d1" + inkscape:zoom="1.3225" + inkscape:cx="576.55955" + inkscape:cy="353.49716" + inkscape:window-width="2560" + inkscape:window-height="1316" + inkscape:window-x="-12" + inkscape:window-y="-12" + inkscape:window-maximized="1" + inkscape:current-layer="svg1" /> + <title + id="title1">Pastebin icon</title> + <path + d="M17.02 0a2.096 2.096 0 00-.723.123L2.623 5.003A2.101 2.101 0 001.35 7.69l5.324 14.916a2.101 2.101 0 002.685 1.272l7.746-2.765c.792-.307 1.345-.534 1.464-.608.543-.314.962-.817 1.964-2.334.904-1.362 1.859-3.323 2.097-4.28.24-.97.239-1.48-.502-3.675h.001l-3.147-8.82A2.102 2.102 0 0017.02 0zm-.084.414c.72-.031 1.4.403 1.657 1.12l3.147 8.82.008-.003c.271.763.497 1.415.526 1.54.102.433-.282 1.147-.737 1.35-.2.1-.71.293-1.142.429-1.397.464-2.05.879-2.458 1.548-.363.591-.315 1.18.16 2.377.462 1.142.533 1.864.225 2.4-.113.188-.301.322-1.354.733l-.002-.005-7.746 2.765a1.68 1.68 0 01-2.157-1.022L1.74 7.55a1.68 1.68 0 011.022-2.157L16.436.513c.165-.06.334-.092.5-.099zM15.9 2.25l-.708.515-.495.37.113.314.074.205.523-.316.4 1.112.403 1.123-.359.129-.337.12c.045.145.216.642.238.664l2.166-.779-.238-.663-.244.088-.443.16-.334-.93zm-3.29 1.182l-.709.515-.494.37.113.314.073.205.524-.316.4 1.112.403 1.123-.36.129-.337.121c.046.144.216.64.238.663l2.167-.778-.238-.663-.244.087-.443.16-.334-.93zM9.084 4.786a1.532 1.532 0 00-.8.223c-.732.448-.85 1.383-.332 2.558.337.776.873 1.218 1.462 1.215 1.345-.007 1.86-1.399 1.085-2.95-.307-.66-.837-1.036-1.415-1.046zm-.191.672c.168-.009.357.085.539.279.145.155.347.51.437.787.35.998.164 1.688-.414 1.546C8.854 7.93 8.21 6 8.62 5.585a.407.407 0 01.273-.127zm-3.765.75a1.532 1.532 0 00-.8.223c-.732.448-.85 1.382-.332 2.557.337.777.873 1.218 1.462 1.215 1.344-.007 1.86-1.398 1.085-2.95-.307-.66-.838-1.036-1.415-1.045zm-.192.672c.168-.01.358.085.54.278.145.155.347.51.437.787.35.999.164 1.689-.415 1.547-.6-.141-1.243-2.072-.834-2.485a.407.407 0 01.272-.127zm13.362.655a1.533 1.533 0 00-.8.223c-.732.448-.85 1.382-.332 2.558.337.776.873 1.218 1.462 1.215 1.345-.007 1.86-1.399 1.085-2.95-.307-.66-.837-1.036-1.415-1.046zm-.191.672c.168-.009.357.085.539.278.145.155.347.51.437.787.35.999.164 1.689-.414 1.547-.601-.141-1.244-2.072-.835-2.485a.407.407 0 01.273-.127zm-3.766.75a1.532 1.532 0 00-.8.222c-.73.448-.848 1.383-.331 2.558.337.776.873 1.218 1.462 1.215 1.344-.007 1.86-1.398 1.085-2.95-.307-.66-.838-1.036-1.416-1.045zm-.19.671c.167-.009.357.085.539.279.145.155.347.51.437.787.35.998.164 1.688-.415 1.547-.6-.142-1.244-2.072-.835-2.485a.408.408 0 01.273-.128zm-3.746.743a1.533 1.533 0 00-.8.223c-.732.448-.85 1.382-.332 2.557.337.777.873 1.219 1.462 1.216 1.345-.007 1.86-1.399 1.085-2.951-.307-.66-.838-1.036-1.415-1.045zm-.192.672c.169-.01.358.085.54.278.145.155.347.51.437.787.35.999.164 1.689-.414 1.547-.601-.141-1.244-2.072-.835-2.485a.407.407 0 01.272-.127zm-3.515.616l-.708.515-.495.369.113.314.074.206.524-.316.399 1.112.403 1.122-.359.13-.337.12c.045.145.216.641.238.663l2.166-.778-.238-.663-.244.088-.443.159-.334-.93zm15.664 1.33c.034 0 .049.047.064.135.023.11-.064.545-.195.957-.469 1.436-2.052 4.224-3.079 5.397l-.408.47.051-.667c.03-.567-.016-.812-.377-1.71-.496-1.263-.533-1.73-.158-2.31.341-.514 1.028-.907 2.448-1.371.72-.238 1.175-.463 1.385-.664.132-.145.207-.22.253-.235a.05.05 0 01.015-.003zm-6.429 1.477l-.708.515-.495.37.113.314.074.205.523-.316.4 1.112.403 1.123-.359.129-.337.12c.045.145.216.642.238.664l2.166-.779-.238-.662-.244.087-.443.16-.334-.93zm-3.579 1.33a1.532 1.532 0 00-.8.223c-.731.448-.849 1.382-.332 2.558.337.776.873 1.218 1.462 1.215 1.345-.007 1.86-1.399 1.086-2.95-.307-.66-.838-1.036-1.416-1.046zm-.191.672c.168-.009.358.085.54.279.144.154.346.51.437.787.35.998.164 1.688-.415 1.546-.6-.141-1.244-2.072-.835-2.485a.407.407 0 01.273-.127zm-3.515.616l-.71.515-.494.37.113.313.074.206.524-.316.4 1.112.403 1.122-.36.13-.337.12c.045.145.216.642.238.664l2.166-.779-.238-.663-.244.088-.443.16-.334-.93z" + id="path1" /> + <path + style="fill:#ffffff;stroke-width:0.756144" + d="m 279.27013,785.23388 c -6.44477,-1.16159 -15.83952,-4.96099 -21.38867,-8.65006 -7.54802,-5.01792 -15.01204,-13.33726 -18.79768,-20.95171 C 235.28985,748.001 57.160329,248.89816 56.010178,242.67642 51.618831,218.92144 64.293703,193.51301 85.727784,183.10362 90.672621,180.70218 541.53595,19.415032 552.74102,16.039178 c 6.58236,-1.983128 20.2701,-2.141832 27.22117,-0.315618 16.15821,4.245152 30.81215,16.386799 37.45063,31.030036 0.97444,2.149416 25.07724,69.238844 53.56178,149.087614 28.48455,79.84877 53.13667,148.75236 54.78251,153.11909 1.64585,4.36673 6.12511,17.12666 9.95392,28.35539 6.84017,20.06009 6.95514,20.5149 6.59741,26.09787 -0.66628,10.39821 -7.4581,23.8563 -15.8448,31.39666 -6.53195,5.87278 -14.56019,9.41562 -44.7943,19.76753 -19.69095,6.74204 -28.83342,10.31944 -40.08144,15.68372 -23.17173,11.05078 -37.21371,23.49516 -46.21683,40.95856 -4.50301,8.73451 -5.87643,15.66767 -5.36155,27.06554 0.60359,13.36171 3.5401,24.09301 14.40459,52.64071 9.27998,24.38422 12.29606,38.17149 11.64005,53.20961 -0.40655,9.31969 -1.48776,13.83134 -4.93309,20.58475 -3.39185,6.64856 -11.58635,11.83099 -31.91502,20.18391 -11.1918,4.59864 -265.84814,95.72623 -275.61437,98.62732 -6.83669,2.03085 -18.11701,2.82027 -24.32155,1.70201 z m 40.95671,-87.34869 c 19.54632,-7.00144 35.61534,-12.76982 35.70893,-12.81861 0.0936,-0.0488 -1.66884,-5.17283 -3.91653,-11.38672 -3.20602,-8.86326 -4.35557,-11.24715 -5.3343,-11.06201 -0.68618,0.12979 -5.72903,1.88262 -11.20634,3.89516 -5.47731,2.01255 -10.18961,3.43754 -10.47176,3.16666 -0.28217,-0.27089 -8.5645,-22.94999 -18.40518,-50.39801 -9.84068,-27.44801 -18.00082,-50.0167 -18.13364,-50.15264 -0.57456,-0.58807 -40.4529,29.07041 -40.4529,30.08579 0,1.0021 5.43829,16.19041 6.04677,16.88768 0.28872,0.33085 4.32806,-1.67473 8.97633,-4.45684 4.64825,-2.78211 8.55765,-4.92426 8.68755,-4.76033 0.18579,0.23447 9.08754,24.98282 25.97292,72.20908 0.17262,0.48279 -4.41123,2.52575 -10.89315,4.85495 -6.15514,2.21177 -11.34072,4.14123 -11.52348,4.28769 -1.00508,0.80536 7.39675,23.11922 8.54552,22.69547 0.47328,-0.17457 16.85295,-6.04587 36.39926,-13.04732 z m 116.37353,-39.64356 c 15.58691,-3.98646 26.74522,-14.68689 31.9536,-30.64239 1.6441,-5.03656 2.03477,-7.88446 2.33384,-17.01323 0.56725,-17.3149 -2.54565,-30.58871 -11.46274,-48.87842 -7.49034,-15.36334 -15.85653,-24.55474 -27.8702,-30.61922 -22.05753,-11.13461 -52.35358,-1.58408 -62.81135,19.80065 -4.2477,8.68598 -5.34762,13.93554 -5.29943,25.29245 0.048,11.3098 1.19238,17.60071 5.63958,31.00189 8.59765,25.90809 22.38365,43.6418 39.02627,50.20171 4.93339,1.94457 6.1573,2.12769 15.02053,2.24731 5.40895,0.073 9.32935,-0.33178 13.4699,-1.39075 z m 125.9394,-47.40455 c 19.35549,-6.93186 35.4316,-12.80303 35.72468,-13.04707 0.54516,-0.4539 -6.56765,-21.12186 -7.64333,-22.20953 -0.3269,-0.33054 -5.43751,1.15701 -11.35691,3.30566 -6.06449,2.20132 -11.04169,3.61891 -11.40204,3.24749 -0.35173,-0.36253 -8.6208,-22.87735 -18.37572,-50.03293 -9.75492,-27.15557 -17.93726,-49.57482 -18.18298,-49.82054 -0.24572,-0.24573 -3.43395,1.70789 -7.08495,4.34135 -6.07717,4.38347 -32.71533,24.01178 -33.39393,24.6063 -0.15989,0.14009 1.15852,4.35036 2.92981,9.35617 l 3.22054,9.10146 2.36319,-1.44485 c 1.29976,-0.79468 5.25192,-3.1744 8.78258,-5.2883 l 6.41939,-3.84342 0.97344,2.82742 c 0.53541,1.55507 6.44654,18.07293 13.13586,36.70633 6.68932,18.6334 12.0393,33.98138 11.88883,34.10662 -0.15047,0.12524 -5.29248,2.01967 -11.4267,4.20985 -6.13421,2.19017 -11.15312,4.21692 -11.15312,4.50389 0,0.6566 3.8244,11.86162 6.0172,17.62965 0.90909,2.3913 2.03977,4.34782 2.51262,4.34782 0.47285,0 16.69604,-5.67151 36.05154,-12.60337 z M 255.19849,517.05779 c 19.13043,-6.8679 35.00094,-12.70737 35.26779,-12.9766 0.44578,-0.44975 -6.77905,-21.41659 -7.69039,-22.31789 -0.21994,-0.21752 -5.42979,1.42484 -11.57742,3.64971 -11.03303,3.99293 -11.18543,4.02417 -11.78883,2.4163 -0.33621,-0.89591 -8.49527,-23.56117 -18.13124,-50.36722 -9.63597,-26.80607 -17.6625,-48.88084 -17.83671,-49.05507 -0.17423,-0.17421 -2.62763,1.37789 -5.45201,3.44912 -21.12983,15.49535 -34.67748,25.44743 -34.97069,25.6894 -0.36663,0.30257 4.1551,13.79541 5.58254,16.65825 0.83374,1.67216 0.92681,1.63895 9.0056,-3.21361 4.48974,-2.69677 8.40367,-4.90322 8.69763,-4.90322 0.38023,0 21.11011,56.80686 26.37808,72.28484 0.16138,0.47414 -4.50971,2.53333 -10.90729,4.80834 -6.15425,2.1885 -11.30958,4.09038 -11.4563,4.22641 -0.29399,0.27258 1.89899,7.1433 5.37401,16.83699 1.81557,5.0646 2.49289,6.1896 3.48787,5.79323 0.67911,-0.27053 16.88692,-6.11108 36.01736,-12.97898 z M 371.57202,477.5233 c 3.21221,-0.82155 7.94528,-2.5944 10.51792,-3.93967 5.94874,-3.11066 14.50965,-11.66028 17.65231,-17.629 9.21941,-17.51006 8.65656,-41.91679 -1.54582,-67.03225 -10.22284,-25.16583 -24.07876,-38.74857 -43.51168,-42.65384 -10.57016,-2.1242 -19.44451,-0.77043 -30.94983,4.72135 -12.34188,5.89109 -20.44742,15.90694 -24.05838,29.72845 -1.72054,6.58564 -1.7031,20.85758 0.0364,29.75123 1.9929,10.18949 6.03297,21.75774 11.3958,32.63062 9.40244,19.06296 21.66662,30.8471 36.1688,34.75309 5.9442,1.60099 17.3502,1.44607 24.29451,-0.32998 z m 133.91002,-47.95687 c 28.69137,-9.07947 39.60962,-41.75464 26.78637,-80.16388 -2.90793,-8.71005 -8.64791,-20.78488 -12.83764,-27.0057 -7.0226,-10.42699 -17.57099,-18.6387 -28.31546,-22.04304 -4.27632,-1.35493 -7.03588,-1.67166 -14.36673,-1.64897 -7.9341,0.0246 -9.83256,0.29272 -15.11561,2.13507 -22.10142,7.7074 -33.13142,25.13059 -31.89936,50.38882 0.69899,14.32975 4.66313,28.70353 12.21837,44.30319 9.83922,20.31549 23.95616,32.92064 40.46768,36.13396 4.69198,0.91311 17.11687,-0.21797 23.06238,-2.09945 z m 127.64807,-46.18544 c 11.74851,-2.48935 23.44548,-10.86546 29.06068,-20.8101 4.64914,-8.23374 6.43127,-15.17626 6.82771,-26.59826 0.57479,-16.56008 -2.09991,-29.30663 -9.67056,-46.08592 -8.22569,-18.23113 -18.5176,-29.61079 -32.01172,-35.39505 -17.21714,-7.38013 -39.1577,-2.98009 -52.74892,10.57845 -10.89259,10.8664 -15.21693,26.6553 -12.5179,45.70494 2.38598,16.84015 9.71775,36.26939 18.78767,49.78751 7.2137,10.75153 19.15668,19.97658 29.44444,22.74358 5.28148,1.42051 16.3071,1.45667 22.8286,0.0748 z m -441.3577,-43.87908 c 14.61662,-2.48313 26.57241,-11.22303 32.70583,-23.90855 4.48928,-9.28502 5.66401,-14.97338 5.67971,-27.50262 0.0194,-15.486 -3.03474,-28.13586 -10.73378,-44.45782 -8.60185,-18.23591 -19.08309,-28.83796 -33.98633,-34.37807 -6.82334,-2.5365 -18.63547,-3.14823 -26.2696,-1.36047 -18.21961,4.26669 -31.90069,17.72191 -35.5549,34.96795 -1.43254,6.76089 -1.41025,19.53018 0.0488,27.92709 0.64175,3.69342 2.5254,10.78486 4.18589,15.75875 10.23213,30.64972 25.66692,48.54544 45.68699,52.97135 6.087,1.34567 10.23619,1.34166 18.23744,-0.0176 z m 133.74744,-47.62996 c 16.7879,-3.51257 28.97611,-15.12486 34.52411,-32.89274 1.56882,-5.02428 1.769,-7.13718 1.75512,-18.52552 -0.0139,-11.38891 -0.24536,-13.76484 -2.03026,-20.8396 -3.65639,-14.49273 -11.78294,-31.96741 -18.96173,-40.77374 -10.88887,-13.35757 -25.85924,-20.38565 -41.3742,-19.42379 -21.187,1.3135 -38.41258,14.83657 -43.50789,34.15622 -3.09244,11.72544 -1.90606,27.91936 3.21295,43.85633 8.50825,26.48864 20.66783,43.44597 37.08897,51.723 7.38327,3.72152 19.24273,4.82266 29.29293,2.71984 z m 125.91404,-48.76162 c 19.66492,-7.06436 35.91636,-13.00627 36.11433,-13.20423 0.61905,-0.61905 -6.96865,-21.73594 -7.95025,-22.12587 -0.51224,-0.20348 -5.74576,1.3776 -11.63005,3.51351 -5.8843,2.13591 -10.79496,3.78618 -10.91259,3.66727 -0.11763,-0.11892 -8.03916,-21.99315 -17.60342,-48.6094 -9.56426,-26.61626 -17.75305,-49.33277 -18.19732,-50.48113 l -0.80778,-2.08794 -7.76593,5.59954 c -4.27127,3.07975 -13.42184,9.80382 -20.3346,14.94238 l -12.56864,9.34284 3.11312,8.88468 c 1.71222,4.88658 3.37368,8.88469 3.69214,8.88469 0.31845,0 4.1866,-2.22993 8.59591,-4.95539 4.40929,-2.72547 8.21235,-4.75994 8.45124,-4.52105 0.5351,0.5351 26.485,72.53317 26.24668,72.8215 -0.13727,0.1661 -7.3005,2.78895 -22.10789,8.09493 -0.66235,0.23734 -0.0508,2.87272 2.14332,9.2358 3.38678,9.82205 4.96973,13.84217 5.45044,13.84217 0.1743,0 16.40638,-5.77993 36.07129,-12.8443 z M 562.00378,203.3846 c 19.44234,-6.97889 35.34972,-13.01008 35.34972,-13.40264 0,-0.39256 -1.73919,-5.59109 -3.86486,-11.55229 l -3.86487,-10.83853 -8.42247,3.04468 c -4.63236,1.67458 -9.75155,3.52597 -11.37596,4.11421 -1.62442,0.58824 -3.03155,0.98082 -3.12695,0.87241 -0.0954,-0.10841 -8.23119,-22.65458 -18.07954,-50.10259 -9.84835,-27.448016 -18.13876,-50.136311 -18.42314,-50.418435 -0.4331,-0.429652 -12.76504,8.366388 -36.22322,25.837035 l -4.55976,3.39592 3.05984,8.70238 c 1.68292,4.78631 3.16421,8.83651 3.29176,9.00043 0.12754,0.16392 4.03502,-1.97822 8.68328,-4.76033 4.64826,-2.78211 8.68965,-4.78769 8.98086,-4.45684 0.2912,0.33085 5.22021,13.70173 10.95334,29.71307 5.73314,16.01134 11.54862,32.22487 12.92331,36.03007 l 2.49942,6.91853 -9.97789,3.5744 c -5.48783,1.96592 -10.74,3.86174 -11.6715,4.21294 l -1.69361,0.63854 3.73557,10.61928 c 4.20994,11.96781 4.3848,12.3395 5.58826,11.87904 0.47778,-0.18282 16.77607,-6.04239 36.21841,-13.02128 z" + id="path2" + transform="scale(0.03)" /> + <path + style="fill:#ffffff;stroke-width:0.756144" + d="m 281.66352,785.58866 c -0.83176,-0.19161 -3.30177,-0.71032 -5.48893,-1.15282 -14.21839,-2.87637 -29.63961,-14.51697 -36.59327,-27.62224 -1.51951,-2.86374 -12.46509,-32.42797 -24.32351,-65.69829 C 203.39938,657.84499 162.90014,544.32375 125.25951,438.84588 87.618878,333.36802 56.456707,245.09192 56.010242,242.67676 c -4.391488,-23.75574 8.289567,-49.1755 29.717542,-59.57018 2.96314,-1.43742 47.410216,-17.59645 98.771266,-35.90896 51.36106,-18.31252 153.61059,-54.809771 227.22118,-81.105014 73.61058,-26.295243 136.55954,-48.653191 139.88658,-49.68433 4.88776,-1.514853 7.71863,-1.884512 14.7448,-1.925393 10.55625,-0.06142 15.72303,1.15615 25.70888,6.058406 6.07877,2.984191 8.23366,4.582822 14.01358,10.396176 5.47437,5.506025 7.46052,8.145572 10.0054,13.29694 1.74635,3.534971 26.8607,72.778825 55.80967,153.875235 28.94897,81.09641 54.34269,152.21172 56.4305,158.03403 2.0878,5.8223 6.16854,17.56143 9.06831,26.08695 5.07625,14.92454 5.259,15.71224 4.91436,21.18294 -0.65447,10.38878 -7.44548,23.85046 -15.83867,31.39666 -6.401,5.75504 -14.3612,9.34099 -41.01941,18.4786 -33.02961,11.32153 -47.52147,17.66664 -61.21603,26.80281 -17.59101,11.73564 -29.89384,27.73176 -33.37976,43.40031 -1.7309,7.78004 -1.08924,21.16743 1.51063,31.51751 2.16049,8.60091 6.28077,20.94419 11.23471,33.65623 9.51805,24.42379 12.2663,36.10112 12.27725,52.16608 0.008,12.42019 -0.5996,15.54599 -4.56576,23.47081 -3.52039,7.0341 -12.50154,12.77062 -32.85536,20.98566 -11.95346,4.82455 -272.78275,97.90186 -277.8828,99.16289 -3.98696,0.98586 -16.33633,1.72899 -18.90359,1.13754 z m 37.43156,-87.33072 c 19.6969,-7.09236 36.04565,-13.03925 36.33053,-13.21532 0.79074,-0.4887 -6.96442,-21.62046 -8.0935,-22.05374 -0.54384,-0.20868 -5.67408,1.31925 -11.40053,3.39541 -5.72645,2.07616 -10.64506,3.55614 -10.93024,3.28884 -0.28517,-0.26729 -8.57164,-22.94345 -18.41436,-50.39147 -9.84272,-27.44801 -18.00039,-50.0167 -18.12815,-50.15264 -0.55895,-0.59471 -40.44371,29.07528 -40.44371,30.08579 0,0.96674 5.42696,16.17649 6.01394,16.85485 0.27066,0.31279 4.21136,-1.64373 8.75713,-4.34783 4.54576,-2.70409 8.44106,-4.91359 8.65624,-4.90999 0.92213,0.0154 26.48165,72.86992 25.72828,73.33552 -0.43807,0.27075 -5.55192,2.16876 -11.36412,4.21782 -5.8122,2.04906 -10.56824,4.08706 -10.56896,4.52889 -0.002,1.39873 7.3608,22.25905 7.85682,22.25905 0.10344,0 16.30372,-5.80284 36.00063,-12.89518 z m 117.50529,-40.01631 c 8.15524,-2.08576 14.36529,-5.57962 20.15687,-11.34053 5.73744,-5.70707 8.8375,-10.80583 11.73555,-19.30186 1.75328,-5.13996 2.11678,-7.66439 2.41845,-16.79588 0.56062,-16.96962 -2.44758,-30.29079 -10.745,-47.58198 -8.72417,-18.1805 -18.35033,-28.16279 -32.73426,-33.94528 -21.06948,-8.47016 -49.05259,1.90057 -58.7716,21.78116 -4.16267,8.51488 -5.26425,13.82063 -5.21629,25.12421 0.0455,10.72551 1.14389,17.17485 4.95798,29.11154 9.22197,28.86141 25.06709,48.22497 43.66317,53.35864 5.51461,1.52238 17.78103,1.31739 24.53513,-0.41002 z m 122.49524,-46.23448 c 17.50686,-6.28831 33.60336,-12.09214 35.76999,-12.89739 l 3.93933,-1.46408 -3.76829,-10.7123 c -2.07256,-5.89175 -4.03926,-10.98326 -4.37045,-11.31445 -0.3312,-0.33119 -5.45336,1.14778 -11.38259,3.2866 -6.0997,2.20031 -11.06079,3.60224 -11.42615,3.22886 -0.35514,-0.36295 -8.36026,-22.09658 -17.78914,-48.29696 -9.42888,-26.20038 -17.48178,-48.57278 -17.89533,-49.71645 -0.41356,-1.14366 -0.97383,-2.07783 -1.24506,-2.07593 -0.27122,0.002 -8.82962,6.14518 -19.01866,13.65173 -10.18903,7.50655 -19.16701,14.11937 -19.95107,14.69515 -1.37754,1.01162 -1.32662,1.3314 1.51229,9.4964 1.61581,4.64725 3.31257,8.59806 3.77056,8.77959 0.45801,0.18154 4.53757,-1.89525 9.06569,-4.61508 l 8.23296,-4.94515 0.90293,2.60805 c 0.49661,1.43442 6.41158,17.94878 13.14438,36.69859 6.7328,18.7498 12.1146,34.19676 11.95955,34.32658 -0.15504,0.12983 -5.3008,2.028 -11.43502,4.21818 -6.13421,2.19017 -11.15312,4.21692 -11.15312,4.50389 0,0.6566 3.8244,11.86162 6.0172,17.62965 0.90909,2.3913 2.02109,4.34782 2.4711,4.34782 0.45002,0 15.14202,-5.14498 32.6489,-11.4333 z M 255.89965,516.76106 c 24.79996,-8.91844 34.45993,-12.71306 34.46102,-13.53692 0.002,-1.2808 -6.74978,-20.5205 -7.47672,-21.3065 -0.25536,-0.27611 -5.50722,1.29911 -11.6708,3.50047 -11.02378,3.93722 -11.21647,3.97623 -11.81673,2.39238 -0.33561,-0.88556 -8.4995,-23.55038 -18.14196,-50.36628 -9.64248,-26.81589 -17.66362,-48.88804 -17.8248,-49.0492 -0.16117,-0.16117 -6.51957,4.27289 -14.12977,9.85347 -7.61022,5.58058 -16.62276,12.17068 -20.02789,14.64467 -3.40513,2.47398 -6.213,4.83842 -6.23972,5.2543 -0.10405,1.61926 5.67719,16.46533 6.54176,16.79909 0.5039,0.19453 4.34771,-1.7193 8.54179,-4.25294 4.19407,-2.53365 7.8747,-4.60664 8.17916,-4.60664 0.39346,0 21.41575,57.58313 26.38955,72.28484 0.16024,0.47366 -4.51784,2.53561 -10.90899,4.80834 -6.15425,2.1885 -11.30988,4.09067 -11.45696,4.22707 -0.2889,0.26791 4.74976,15.73261 6.48172,19.8938 0.86116,2.06899 1.3868,2.47408 2.84795,2.19476 0.98554,-0.18841 17.29867,-5.91902 36.25139,-12.73471 z m 114.09246,-38.86211 c 14.51473,-3.07549 26.36084,-13.08622 32.04815,-27.08278 5.61784,-13.82559 5.52968,-33.79203 -0.22996,-52.07964 -6.46835,-20.53782 -17.03069,-36.88318 -28.95748,-44.8121 -6.61801,-4.39965 -10.81122,-6.1546 -18.36062,-7.6843 -19.55742,-3.96284 -42.40123,6.80315 -50.77703,23.93055 -4.06813,8.31878 -5.28817,13.96419 -5.30257,24.53631 -0.0211,15.46382 3.98747,30.70807 12.72519,48.3932 9.34441,18.91305 21.76775,30.88957 36.01709,34.7217 5.28934,1.42248 16.31196,1.45968 22.83723,0.0771 z m 133.16631,-47.65241 c 18.02863,-4.76904 29.95381,-18.62393 33.51179,-38.93462 4.54677,-25.95522 -9.26115,-65.56341 -28.34338,-81.30333 -14.55241,-12.00351 -32.1863,-14.90874 -49.34762,-8.13016 -27.18535,10.73797 -36.26764,39.12539 -24.21805,75.69542 10.16965,30.86451 26.19731,49.41288 46.52428,53.84131 4.19467,0.91385 16.48233,0.25735 21.87298,-1.16862 z M 633.1727,383.37208 c 16.43042,-3.48103 29.40081,-16.10686 34.18576,-33.27756 1.91301,-6.86481 2.29535,-23.46108 0.74942,-32.53042 -2.56808,-15.06596 -10.83849,-34.75128 -19.18973,-45.67565 -12.98472,-16.9855 -31.967,-24.21967 -51.47738,-19.6181 -1.91945,0.4527 -6.67499,2.34342 -10.56786,4.20158 -12.34372,5.89198 -20.45695,15.91881 -24.05482,29.72845 -1.73858,6.67319 -1.73109,20.93619 0.0156,29.75123 3.19026,16.10002 11.72622,36.12614 20.14643,47.26531 7.58666,10.03646 17.75906,17.51771 27.31272,20.08701 5.30194,1.42588 16.31652,1.45868 22.87982,0.0682 z M 195.46314,338.75597 c 16.72909,-4.27939 29.05684,-17.12472 33.38457,-34.78622 1.81813,-7.41987 1.79476,-24.25293 -0.0457,-32.89225 -4.24116,-19.90852 -13.76379,-39.21655 -24.54916,-49.77572 -9.65215,-9.44972 -19.19532,-13.73245 -31.85209,-14.29441 -14.47409,-0.64264 -26.77413,3.9703 -36.61746,13.73282 -14.74894,14.62786 -17.36322,37.39794 -7.65928,66.71172 7.84644,23.70264 20.73639,41.28951 35.63978,48.62643 9.33819,4.59718 20.50725,5.54062 31.69934,2.67763 z M 328.9225,291.08705 c 17.0537,-5.13259 28.58649,-18.4831 32.20276,-37.27833 1.40031,-7.27801 1.35694,-19.431 -0.0993,-27.81175 -2.62058,-15.08204 -11.43562,-35.81124 -19.74425,-46.43003 -16.06297,-20.52917 -41.49063,-26.02512 -63.77702,-13.78481 -6.6466,3.65049 -14.82326,12.03302 -17.94176,18.39348 -3.92987,8.01532 -5.05238,13.42819 -5.08495,24.52004 -0.0332,11.31299 1.17765,18.10496 5.59445,31.37996 9.65345,29.01415 24.86789,46.85558 44.27536,51.92016 4.92778,1.28595 19.01315,0.7651 24.57467,-0.90872 z m 122.51692,-47.99464 c 19.68159,-7.07422 35.94234,-13.01985 36.135,-13.21252 0.37449,-0.37448 -6.25977,-19.70092 -7.38111,-21.50209 -0.55298,-0.88823 -2.59842,-0.39816 -11.82567,2.8334 -6.13637,2.14907 -11.24059,3.8233 -11.34273,3.72051 -0.10212,-0.1028 -8.01405,-21.96385 -17.58205,-48.5801 -9.56801,-26.61626 -17.75656,-49.33346 -18.1968,-50.48267 l -0.80041,-2.08947 -8.10727,5.87019 c -4.45899,3.2286 -13.60929,9.95336 -20.334,14.94391 l -12.22674,9.07373 3.11312,8.88468 c 1.71222,4.88658 3.31343,8.88469 3.55825,8.88469 0.24482,0 4.11656,-2.22636 8.60384,-4.94745 4.4873,-2.72111 8.36211,-4.74409 8.61068,-4.4955 0.24858,0.24857 6.2851,16.68098 13.41448,36.51645 8.77455,24.41267 12.6903,36.2398 12.11995,36.60706 -0.46341,0.29841 -5.52043,2.16987 -11.23782,4.15879 -7.70241,2.67947 -10.39569,3.94006 -10.39698,4.8663 -0.003,2.069 7.04555,21.81231 7.78704,21.81231 0.16748,0 16.40762,-5.788 36.08922,-12.86222 z m 110.56436,-39.73698 c 19.44234,-7.00054 35.34972,-13.03402 35.34972,-13.40774 0,-0.37371 -1.73919,-5.55682 -3.86486,-11.51802 l -3.86487,-10.83853 -8.42247,3.04468 c -4.63236,1.67458 -9.75155,3.52597 -11.37596,4.11421 -1.62442,0.58824 -3.03389,0.98082 -3.13217,0.87241 -0.21851,-0.24105 -35.13695,-97.205788 -35.67402,-99.062894 -0.21047,-0.727788 -0.73393,-1.323251 -1.16324,-1.323251 -0.86383,0 -13.38025,8.903189 -29.75438,21.1649 l -10.67351,7.992835 2.96455,8.29448 c 1.63052,4.56196 3.21095,8.54253 3.51209,8.84571 0.30113,0.30318 4.24639,-1.67051 8.76723,-4.38596 4.52084,-2.71546 8.46464,-4.66483 8.764,-4.33195 0.29935,0.33288 4.99214,13.0249 10.4284,28.20448 5.43626,15.17959 11.24149,31.38934 12.90053,36.02168 l 3.01641,8.42241 -9.96623,3.60407 c -5.48143,1.98223 -10.72835,3.88183 -11.65985,4.22133 l -1.69361,0.61728 3.73557,10.61928 c 4.20886,11.96471 4.38427,12.33774 5.58826,11.88414 0.47778,-0.18001 16.77607,-6.055 36.21841,-13.05555 z" + id="path3" + transform="scale(0.03)" /> + <path + style="fill:#ffffff;stroke-width:0.756144" + d="m 359.91949,454.90884 c -11.5007,-3.73366 -23.00617,-22.22113 -29.49785,-47.39836 -4.17293,-16.18426 -3.8042,-28.65107 1.00956,-34.13365 6.03678,-6.8755 15.44963,-6.06046 24.30786,2.10477 13.43205,12.38123 24.92246,45.20014 22.29976,63.69256 -0.88622,6.24868 -3.56979,11.57903 -7.0174,13.93864 -2.73485,1.87178 -8.16345,2.75001 -11.10193,1.79604 z" + id="path4" + transform="scale(0.03)" /> + <path + style="fill:#ffffff;stroke-width:0.756144" + d="m 488.09074,406.73098 c -13.84707,-7.51686 -29.07037,-41.69986 -29.09547,-65.33211 -0.01,-9.0491 0.94437,-12.48051 4.4422,-15.97834 4.60111,-4.60111 9.8606,-5.1718 16.89589,-1.83334 18.88736,8.96264 35.90423,57.58797 26.72164,76.3565 -2.79378,5.71027 -5.53908,7.53127 -11.76397,7.80323 -3.46292,0.1513 -5.60751,-0.15131 -7.20029,-1.01594 z" + id="path5" + transform="scale(0.03)" /> + <path + style="fill:#ffffff;stroke-width:0.756144" + d="m 623.05749,360.35211 c -11.3586,-3.45513 -23.0153,-22.15058 -29.6606,-47.57076 -1.93144,-7.38833 -2.317,-10.33827 -2.38706,-18.26339 -0.075,-8.48638 0.0976,-9.81975 1.6904,-13.05417 5.07361,-10.30301 18.13189,-9.51498 28.28726,1.70706 7.15056,7.90163 13.49324,20.70651 17.60595,35.54371 2.66776,9.6243 3.40318,24.12771 1.54716,30.51216 -2.54534,8.75568 -9.65402,13.38521 -17.08311,11.12539 z" + id="path6" + transform="scale(0.03)" /> + <path + style="fill:#ffffff;stroke-width:0.756144" + d="m 423.65691,635.45605 c -3.55283,-1.02704 -11.04045,-8.33204 -14.91936,-14.55549 -11.18235,-17.94134 -18.46293,-45.84556 -15.57612,-59.69843 1.04028,-4.99196 4.19336,-9.19913 8.12572,-10.84217 13.79572,-5.76422 31.06667,13.674 39.40253,44.34703 1.67899,6.17808 1.9578,8.77066 1.99231,18.52552 0.0401,11.32747 0.0371,11.34752 -2.30808,15.48217 -3.66698,6.46507 -9.51486,8.82331 -16.717,6.74137 z" + id="path7" + transform="scale(0.03)" /> + <path + style="fill:#ffffff;stroke-width:0.756144" + d="m 316.8242,268.8274 c -4.23889,-0.80744 -7.11187,-2.68633 -11.4678,-7.49979 -9.28988,-10.26564 -18.36105,-31.72875 -21.11731,-49.96519 -1.2312,-8.14613 -0.59586,-17.78098 1.43066,-21.69572 3.4486,-6.66184 11.24176,-8.94188 18.7067,-5.473 10.71031,4.97698 21.48648,22.12616 27.27511,43.40554 1.7553,6.45259 2.06639,9.11383 2.1214,18.14745 0.0685,11.25199 -0.4427,13.67045 -3.87619,18.33728 -2.93117,3.98408 -7.79461,5.74879 -13.07257,4.74343 z" + id="path8" + transform="scale(0.03)" /> + <path + style="fill:#ffffff;stroke-width:0.756144" + d="m 181.09641,315.00438 c -10.36408,-4.82651 -22.45288,-26.91974 -27.59036,-50.42353 -1.90781,-8.72815 -2.27336,-19.56798 -0.83207,-24.67346 2.07935,-7.36564 8.75148,-11.3876 16.00466,-9.64758 8.55272,2.05176 16.35281,10.22826 23.42994,24.56061 11.52604,23.34212 13.7062,48.41418 5.01895,57.71838 -3.83839,4.11096 -10.34808,5.11216 -16.03112,2.46558 z" + id="path9" + transform="scale(0.03)" /> + <path + style="fill:#999999;stroke-width:0.756144" + d="m 626.19914,653.30813 c 0.35418,-5.40643 0.59323,-14.59357 0.53122,-20.41588 -0.13423,-12.60461 -1.56493,-18.95695 -8.18844,-36.35673 -15.44429,-40.57177 -17.28087,-47.06321 -17.31093,-61.1858 -0.019,-8.92055 0.16793,-10.31037 2.02064,-15.02412 3.10808,-7.90772 7.07383,-13.88968 13.35336,-20.1423 12.96737,-12.9118 31.82802,-22.39107 72.24189,-36.30841 29.48606,-10.15413 39.98771,-15.3918 49.67943,-24.77748 3.56206,-3.44958 6.2408,-5.47894 6.89885,-5.22642 4.81858,1.84907 -1.54797,29.90851 -12.72179,56.06899 -19.32918,45.25406 -53.61358,105.19374 -81.34396,142.21428 -6.30514,8.41748 -21.01016,26.21401 -24.66422,29.84952 -1.01577,1.01062 -1.06983,0.063 -0.49605,-8.69565 z" + id="path10" + transform="scale(0.03)" /> + <path + style="fill:#999999;stroke-width:0.094518" + d="" + id="path11" + transform="scale(0.03)" /> + <path + style="fill:#999999;stroke-width:0.094518" + d="" + id="path12" + transform="scale(0.03)" /> + <path + style="fill:#999999;stroke-width:0.094518" + d="" + id="path13" + transform="scale(0.03)" /> +</svg> diff --git a/src/assets/images/pastebin-icon.svg b/src/assets/images/pastebin-icon.svg new file mode 100644 index 00000000..341fbd81 --- /dev/null +++ b/src/assets/images/pastebin-icon.svg @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools --> +<svg fill="#000000" width="800px" height="800px" viewBox="0 0 24 24" role="img" xmlns="http://www.w3.org/2000/svg"><title>Pastebin icon</title><path d="M17.02 0a2.096 2.096 0 00-.723.123L2.623 5.003A2.101 2.101 0 001.35 7.69l5.324 14.916a2.101 2.101 0 002.685 1.272l7.746-2.765c.792-.307 1.345-.534 1.464-.608.543-.314.962-.817 1.964-2.334.904-1.362 1.859-3.323 2.097-4.28.24-.97.239-1.48-.502-3.675h.001l-3.147-8.82A2.102 2.102 0 0017.02 0zm-.084.414c.72-.031 1.4.403 1.657 1.12l3.147 8.82.008-.003c.271.763.497 1.415.526 1.54.102.433-.282 1.147-.737 1.35-.2.1-.71.293-1.142.429-1.397.464-2.05.879-2.458 1.548-.363.591-.315 1.18.16 2.377.462 1.142.533 1.864.225 2.4-.113.188-.301.322-1.354.733l-.002-.005-7.746 2.765a1.68 1.68 0 01-2.157-1.022L1.74 7.55a1.68 1.68 0 011.022-2.157L16.436.513c.165-.06.334-.092.5-.099zM15.9 2.25l-.708.515-.495.37.113.314.074.205.523-.316.4 1.112.403 1.123-.359.129-.337.12c.045.145.216.642.238.664l2.166-.779-.238-.663-.244.088-.443.16-.334-.93zm-3.29 1.182l-.709.515-.494.37.113.314.073.205.524-.316.4 1.112.403 1.123-.36.129-.337.121c.046.144.216.64.238.663l2.167-.778-.238-.663-.244.087-.443.16-.334-.93zM9.084 4.786a1.532 1.532 0 00-.8.223c-.732.448-.85 1.383-.332 2.558.337.776.873 1.218 1.462 1.215 1.345-.007 1.86-1.399 1.085-2.95-.307-.66-.837-1.036-1.415-1.046zm-.191.672c.168-.009.357.085.539.279.145.155.347.51.437.787.35.998.164 1.688-.414 1.546C8.854 7.93 8.21 6 8.62 5.585a.407.407 0 01.273-.127zm-3.765.75a1.532 1.532 0 00-.8.223c-.732.448-.85 1.382-.332 2.557.337.777.873 1.218 1.462 1.215 1.344-.007 1.86-1.398 1.085-2.95-.307-.66-.838-1.036-1.415-1.045zm-.192.672c.168-.01.358.085.54.278.145.155.347.51.437.787.35.999.164 1.689-.415 1.547-.6-.141-1.243-2.072-.834-2.485a.407.407 0 01.272-.127zm13.362.655a1.533 1.533 0 00-.8.223c-.732.448-.85 1.382-.332 2.558.337.776.873 1.218 1.462 1.215 1.345-.007 1.86-1.399 1.085-2.95-.307-.66-.837-1.036-1.415-1.046zm-.191.672c.168-.009.357.085.539.278.145.155.347.51.437.787.35.999.164 1.689-.414 1.547-.601-.141-1.244-2.072-.835-2.485a.407.407 0 01.273-.127zm-3.766.75a1.532 1.532 0 00-.8.222c-.73.448-.848 1.383-.331 2.558.337.776.873 1.218 1.462 1.215 1.344-.007 1.86-1.398 1.085-2.95-.307-.66-.838-1.036-1.416-1.045zm-.19.671c.167-.009.357.085.539.279.145.155.347.51.437.787.35.998.164 1.688-.415 1.547-.6-.142-1.244-2.072-.835-2.485a.408.408 0 01.273-.128zm-3.746.743a1.533 1.533 0 00-.8.223c-.732.448-.85 1.382-.332 2.557.337.777.873 1.219 1.462 1.216 1.345-.007 1.86-1.399 1.085-2.951-.307-.66-.838-1.036-1.415-1.045zm-.192.672c.169-.01.358.085.54.278.145.155.347.51.437.787.35.999.164 1.689-.414 1.547-.601-.141-1.244-2.072-.835-2.485a.407.407 0 01.272-.127zm-3.515.616l-.708.515-.495.369.113.314.074.206.524-.316.399 1.112.403 1.122-.359.13-.337.12c.045.145.216.641.238.663l2.166-.778-.238-.663-.244.088-.443.159-.334-.93zm15.664 1.33c.034 0 .049.047.064.135.023.11-.064.545-.195.957-.469 1.436-2.052 4.224-3.079 5.397l-.408.47.051-.667c.03-.567-.016-.812-.377-1.71-.496-1.263-.533-1.73-.158-2.31.341-.514 1.028-.907 2.448-1.371.72-.238 1.175-.463 1.385-.664.132-.145.207-.22.253-.235a.05.05 0 01.015-.003zm-6.429 1.477l-.708.515-.495.37.113.314.074.205.523-.316.4 1.112.403 1.123-.359.129-.337.12c.045.145.216.642.238.664l2.166-.779-.238-.662-.244.087-.443.16-.334-.93zm-3.579 1.33a1.532 1.532 0 00-.8.223c-.731.448-.849 1.382-.332 2.558.337.776.873 1.218 1.462 1.215 1.345-.007 1.86-1.399 1.086-2.95-.307-.66-.838-1.036-1.416-1.046zm-.191.672c.168-.009.358.085.54.279.144.154.346.51.437.787.35.998.164 1.688-.415 1.546-.6-.141-1.244-2.072-.835-2.485a.407.407 0 01.273-.127zm-3.515.616l-.71.515-.494.37.113.313.074.206.524-.316.4 1.112.403 1.122-.36.13-.337.12c.045.145.216.642.238.664l2.166-.779-.238-.663-.244.088-.443.16-.334-.93z"/></svg> \ No newline at end of file diff --git a/src/assets/images/peertube-icon.svg b/src/assets/images/peertube-icon.svg index a92d909e..25f64913 100644 --- a/src/assets/images/peertube-icon.svg +++ b/src/assets/images/peertube-icon.svg @@ -1,51 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - height="128" - viewBox="2799 -911 128 128" - width="128" - version="1.1" - id="svg10" - sodipodi:docname="peertube-icon.svg" - inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs14" /> - <sodipodi:namedview - id="namedview12" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:pageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - showgrid="false" - inkscape:zoom="2.6681399" - inkscape:cx="10.868995" - inkscape:cy="59.779474" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg10" /> - <g - stroke-width="32" - id="g8" - transform="matrix(0.15060053,0,0,0.15060053,2402.9154,-761.2095)"> - <path - d="m 2799,-911 v 341.344 l 256,-170.656" - fill="#211f20" - id="path2" /> - <path - d="m 2799,-569.656 v 341.344 l 256,-170.656" - fill="#737373" - id="path4" /> - <path - d="M 3055,-740.344 V -399 l 256,-170.656" - fill="#f1680d" - id="path6" /> - </g> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="2799 -911 128 128"><path fill="#211f20" d="M2824.446-898.407V-847L2863-872.7"/><path fill="#737373" d="M2824.446-847v51.407L2863-821.294"/><path fill="#f1680d" d="M2863-872.706v51.407L2901.554-847"/></svg> \ No newline at end of file diff --git a/src/assets/images/pinterest-icon.svg b/src/assets/images/pinterest-icon.svg index 87dd2040..810da5a5 100644 --- a/src/assets/images/pinterest-icon.svg +++ b/src/assets/images/pinterest-icon.svg @@ -1,42 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - class="gUZ GjR U9O kVc" - height="32" - width="32" - viewBox="0 0 24 24" - aria-label="Pinterest" - role="img" - version="1.1" - id="svg4" - sodipodi:docname="pintrest-icon.svg" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs8" /> - <sodipodi:namedview - id="namedview6" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="24.3125" - inkscape:cx="10.858612" - inkscape:cy="16" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg4" /> - <path - d="M0 12c0 5.123 3.211 9.497 7.73 11.218-.11-.937-.227-2.482.025-3.566.217-.932 1.401-5.938 1.401-5.938s-.357-.715-.357-1.774c0-1.66.962-2.9 2.161-2.9 1.02 0 1.512.765 1.512 1.682 0 1.025-.653 2.557-.99 3.978-.281 1.189.597 2.159 1.769 2.159 2.123 0 3.756-2.239 3.756-5.471 0-2.861-2.056-4.86-4.991-4.86-3.398 0-5.393 2.549-5.393 5.184 0 1.027.395 2.127.889 2.726a.36.36 0 0 1 .083.343c-.091.378-.293 1.189-.332 1.355-.053.218-.173.265-.4.159-1.492-.694-2.424-2.875-2.424-4.627 0-3.769 2.737-7.229 7.892-7.229 4.144 0 7.365 2.953 7.365 6.899 0 4.117-2.595 7.431-6.199 7.431-1.211 0-2.348-.63-2.738-1.373 0 0-.599 2.282-.744 2.84-.282 1.084-1.064 2.456-1.549 3.235C9.584 23.815 10.77 24 12 24c6.627 0 12-5.373 12-12S18.627 0 12 0 0 5.373 0 12" - id="path2" - style="fill:#e60023;fill-opacity:1" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M0 12c0 5.123 3.211 9.497 7.73 11.218-.11-.937-.227-2.482.025-3.566.217-.932 1.401-5.938 1.401-5.938s-.357-.715-.357-1.774c0-1.66.962-2.9 2.161-2.9 1.02 0 1.512.765 1.512 1.682 0 1.025-.653 2.557-.99 3.978-.281 1.189.597 2.159 1.769 2.159 2.123 0 3.756-2.239 3.756-5.471 0-2.861-2.056-4.86-4.991-4.86-3.398 0-5.393 2.549-5.393 5.184 0 1.027.395 2.127.889 2.726a.36.36 0 0 1 .083.343c-.091.378-.293 1.189-.332 1.355-.053.218-.173.265-.4.159-1.492-.694-2.424-2.875-2.424-4.627 0-3.769 2.737-7.229 7.892-7.229 4.144 0 7.365 2.953 7.365 6.899 0 4.117-2.595 7.431-6.199 7.431-1.211 0-2.348-.63-2.738-1.373 0 0-.599 2.282-.744 2.84-.282 1.084-1.064 2.456-1.549 3.235C9.584 23.815 10.77 24 12 24c6.627 0 12-5.373 12-12S18.627 0 12 0 0 5.373 0 12" fill="#e60023"/></svg> diff --git a/src/assets/images/pixiv-icon.svg b/src/assets/images/pixiv-icon.svg index 9460979a..8de64dae 100644 --- a/src/assets/images/pixiv-icon.svg +++ b/src/assets/images/pixiv-icon.svg @@ -1,49 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - width="64.622841mm" - height="62.355366mm" - viewBox="0 0 64.622841 62.355366" - version="1.1" - id="svg5" - xml:space="preserve" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - sodipodi:docname="pixiv.svg" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview - id="namedview7" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - inkscape:document-units="mm" - showgrid="false" - inkscape:zoom="1.9603365" - inkscape:cx="47.950951" - inkscape:cy="158.64623" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="layer1" /><defs - id="defs2" /><g - inkscape:label="Layer 1" - inkscape:groupmode="layer" - id="layer1" - transform="translate(-38.311977,-85.637228)"><ellipse - style="fill:#0096fa;fill-opacity:1;fill-rule:evenodd;stroke-width:1.449;stroke-linecap:round;stroke-linejoin:bevel;stop-color:#000000" - id="path1217" - cx="70.623398" - cy="116.81491" - rx="32.31142" - ry="31.177683" /><path - style="fill:#ffffff;fill-opacity:1;stroke-width:0.264583" - d="m 53.954644,137.20697 c 0,-0.34082 0.351116,-0.66494 1.058333,-0.97696 l 1.058334,-0.46694 v -15.29491 c 0,-8.4122 -0.05335,-15.29492 -0.118556,-15.29492 -0.437486,0 -3.422794,2.86126 -4.139781,3.96776 -0.710132,1.09592 -0.860136,1.5691 -0.801207,2.52738 0.05691,0.92543 -0.02798,1.21758 -0.394672,1.3583 -0.270002,0.1036 -0.511045,0.0477 -0.571119,-0.13257 -0.05717,-0.1715 -0.683125,-1.19904 -1.391012,-2.28342 l -1.287067,-1.97159 2.016494,-1.88318 c 4.601337,-4.29714 10.589157,-7.463208 17.00567,-8.991767 3.78782,-0.902344 8.737483,-0.865988 12.26499,0.09009 7.200255,1.951519 11.962535,6.599017 13.249598,12.930247 0.750554,3.69207 0.334849,7.2551 -1.203791,10.31772 -1.436886,2.86007 -5.197954,6.27581 -8.521792,7.73934 -5.0736,2.23398 -12.4865,2.38561 -19.257114,0.39391 -0.961575,-0.28287 -1.884309,-0.5143 -2.050521,-0.5143 -0.211551,0 -0.302204,1.06612 -0.302204,3.55405 0,3.45553 0.0165,3.55907 0.595313,3.73546 0.773381,0.23568 1.521354,0.89963 1.521354,1.35046 0,0.28372 -0.885039,0.35586 -4.365625,0.35586 -4.13462,0 -4.365625,-0.027 -4.365625,-0.51002 z m 21.897599,-9.58377 c 2.151661,-0.40773 4.766628,-1.85382 6.481035,-3.58404 3.107574,-3.13625 4.033012,-5.4392 4.019442,-10.00237 -0.01326,-4.45929 -1.042546,-7.28019 -3.70612,-10.15716 -1.649793,-1.78198 -3.361658,-2.86435 -5.937789,-3.75434 -2.264892,-0.782466 -6.660828,-0.843522 -9.370362,-0.130149 -1.977697,0.520689 -5.207577,1.785819 -6.171272,2.417259 l -0.59795,0.39179 v 11.51268 11.51268 l 1.20336,0.51582 c 3.637801,1.55934 9.693642,2.10895 14.079656,1.27783 z" - id="path402" /></g></svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64.623 62.355"><g transform="translate(-38.312 -85.637)"><ellipse cx="70.623" cy="116.815" rx="32.311" ry="31.178" style="fill:#0096fa;fill-opacity:1;fill-rule:evenodd;stroke-width:1.449;stroke-linecap:round;stroke-linejoin:bevel;stop-color:#000"/><path d="M53.955 137.207q-.002-.51 1.058-.977l1.058-.467v-15.295c0-8.412-.053-15.295-.118-15.295-.438 0-3.423 2.862-4.14 3.968-.71 1.096-.86 1.57-.801 2.527.057.926-.028 1.218-.395 1.359-.27.103-.51.047-.571-.133-.057-.171-.683-1.199-1.391-2.283l-1.287-1.972 2.016-1.883c4.602-4.297 10.59-7.463 17.006-8.992 3.788-.902 8.738-.866 12.265.09 7.2 1.952 11.963 6.6 13.25 12.93.75 3.693.334 7.256-1.204 10.318-1.437 2.86-5.198 6.276-8.522 7.74-5.074 2.234-12.486 2.385-19.257.393-.962-.282-1.884-.514-2.05-.514-.212 0-.303 1.066-.303 3.554 0 3.456.017 3.56.596 3.736.773.235 1.52.9 1.52 1.35 0 .284-.884.356-4.365.356-4.134 0-4.365-.027-4.365-.51m21.897-9.584c2.152-.408 4.767-1.854 6.481-3.584 3.108-3.136 4.033-5.439 4.02-10.002-.014-4.46-1.043-7.28-3.706-10.157-1.65-1.782-3.362-2.865-5.938-3.755-2.265-.782-6.661-.843-9.37-.13-1.978.52-5.208 1.786-6.172 2.417l-.598.392v23.026l1.204.515c3.637 1.56 9.693 2.11 14.08 1.278" style="fill:#fff;fill-opacity:1;stroke-width:.264583"/></g></svg> \ No newline at end of file diff --git a/src/assets/images/quora-icon.png b/src/assets/images/quora-icon.png deleted file mode 100644 index d2a06954..00000000 --- a/src/assets/images/quora-icon.png +++ /dev/null Binary files differdiff --git a/src/assets/images/quora-icon.svg b/src/assets/images/quora-icon.svg new file mode 100644 index 00000000..ed74b302 --- /dev/null +++ b/src/assets/images/quora-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="2608 917 120 120"><defs><style>.cls-1{fill:#b92b27}.cls-2{fill:#fff}</style></defs><g id="Group_56" data-name="Group 56" transform="translate(2383 785)"><circle id="Ellipse_45" cx="60" cy="60" r="60" class="cls-1" data-name="Ellipse 45" transform="translate(225 132)"/><g id="Group_55" data-name="Group 55" transform="translate(3.5 4.5)"><path id="Path_151" d="M34.212.5c18.619 0 33.712 14.691 33.712 32.813S52.831 66.127 34.212 66.127.5 51.436.5 33.313 15.593.5 34.212.5" class="cls-2" data-name="Path 151" transform="translate(245 150)"/><path id="Path_149" d="M18.005.9c5.942 0 11.867 2.427 14.474 7.462s3.281 12.528 3.281 18.25c0 6.027-.132 12.044-2.562 16.721-3.118 6.009-9.456 9.8-15.193 9.8-5.217 0-9.349-.629-13.575-6.563S.25 33.408.25 26.611c0-6.143.045-13.305 4.18-19.059S12.347.9 18.005.9" class="cls-1" data-name="Path 149" transform="translate(261.207 156.253)"/><path id="Path_150" d="m2337.818 160-1.618-4.135s4.225-3.146 11.417-2.967 10.7 3.956 10.7 3.956a76 76 0 0 1 6.113 7.641 29.5 29.5 0 0 1 3.326 6.563s2.877 5.3 7.462 5.3 5.034-4.765 5.034-4.765h4.945s.18 7.821-4.945 12.136-12.5 3.146-12.5 3.146a14.66 14.66 0 0 1-6.563-2.877 26.2 26.2 0 0 1-5.3-6.742s-2.248-4.562-4.5-8.271-4.225-6.473-4.225-6.473a14.2 14.2 0 0 0-4.585-2.517 10.55 10.55 0 0 0-4.761.005" class="cls-2" data-name="Path 150" transform="translate(-2067.596 38.415)"/></g></g></svg> \ No newline at end of file diff --git a/src/assets/images/reddit-icon.png b/src/assets/images/reddit-icon.png deleted file mode 100644 index e6c091d9..00000000 --- a/src/assets/images/reddit-icon.png +++ /dev/null Binary files differdiff --git a/src/assets/images/reddit-icon.svg b/src/assets/images/reddit-icon.svg new file mode 100644 index 00000000..0dba3c4a --- /dev/null +++ b/src/assets/images/reddit-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000"><path d="M500 1000C223.9 1000 0 776.1 0 500S223.9 0 500 0s500 223.9 500 500-223.9 500-500 500" style="fill:#ff4500"/><path d="M614.6 604.2c-28.7 0-52.1-23.4-52.1-52.1s23.4-52.1 52.1-52.1 52.1 23.4 52.1 52.1-23.4 52.1-52.1 52.1m9.2 85.5C588.2 725.2 520.1 728 500.1 728s-88.2-2.8-123.7-38.3c-5.3-5.3-5.3-13.8 0-19.1s13.8-5.3 19.1 0C417.9 693 465.8 701 500.1 701c34.2 0 82.2-8 104.6-30.4 5.3-5.3 13.8-5.3 19.1 0 5.2 5.3 5.2 13.8 0 19.1M333.3 552.1c0-28.7 23.4-52.1 52.1-52.1s52.1 23.4 52.1 52.1-23.4 52.1-52.1 52.1-52.1-23.4-52.1-52.1m500-52.1c0-40.3-32.6-72.9-72.9-72.9-19.7 0-37.5 7.8-50.6 20.5-49.8-36-118.5-59.2-195-61.9L548 229.4l108.5 23.1c1.3 27.6 23.9 49.6 51.8 49.6 28.8 0 52.1-23.3 52.1-52.1s-23.3-52.1-52.1-52.1c-20.5 0-38 11.9-46.5 29.1l-121.2-25.8c-3.4-.7-6.9-.1-9.8 1.8s-4.9 4.8-5.6 8.2l-36.4 171.5c-.2 1 0 1.9 0 2.9-77.9 2-147.9 25.3-198.5 61.8-13.1-12.6-30.8-20.3-50.4-20.3-40.3 0-72.9 32.7-72.9 72.9 0 29.6 17.7 55.1 43.1 66.5-1.1 7.2-1.7 14.6-1.7 22.1 0 112.2 130.6 203.1 291.7 203.1s291.7-90.9 291.7-203.1c0-7.4-.6-14.7-1.7-21.9 25.3-11.4 43.2-36.9 43.2-66.7" style="fill:#fff"/></svg> diff --git a/src/assets/images/reuters-icon.svg b/src/assets/images/reuters-icon.svg index 0cc8a03c..15a0d222 100644 --- a/src/assets/images/reuters-icon.svg +++ b/src/assets/images/reuters-icon.svg @@ -1,267 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - viewBox="0 0 73.69671 73.69671" - fill="#ffffff" - fill-rule="evenodd" - stroke="#000000" - stroke-linecap="round" - stroke-linejoin="round" - version="1.1" - id="svg94" - sodipodi:docname="reuters-icon.svg" - width="73.696709" - height="73.696709" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns:xlink="http://www.w3.org/1999/xlink" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <sodipodi:namedview - id="namedview96" - pagecolor="#000000" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="6.9039705" - inkscape:cx="14.339574" - inkscape:cy="36.500735" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg94" /> - <use - xlink:href="#F" - x="9.3409996" - y="9.3409996" - id="use2" /> - <defs - id="defs79"> - <linearGradient - id="A" - x1="40.08743" - y1="25.26118" - x2="22.376516" - y2="34.680659" - gradientTransform="scale(0.99293853,1.0071117)" - gradientUnits="userSpaceOnUse"> - <stop - offset="0%" - stop-color="#ff9100" - id="stop4" /> - <stop - offset="5%" - stop-color="#ff8d00" - id="stop6" /> - <stop - offset="25%" - stop-color="#ff8300" - id="stop8" /> - <stop - offset="50%" - stop-color="#ff8000" - id="stop10" /> - <stop - offset="75%" - stop-color="#ff8300" - id="stop12" /> - <stop - offset="95%" - stop-color="#ff8d00" - id="stop14" /> - <stop - offset="100%" - stop-color="#ff9100" - id="stop16" /> - </linearGradient> - <linearGradient - id="B" - x1="45.429384" - y1="33.273694" - x2="19.314299" - y2="25.853212" - gradientTransform="scale(0.98286426,1.0174345)" - gradientUnits="userSpaceOnUse"> - <stop - offset="0%" - stop-color="#ff9100" - id="stop19" /> - <stop - offset="5%" - stop-color="#ff8d00" - id="stop21" /> - <stop - offset="25%" - stop-color="#ff8300" - id="stop23" /> - <stop - offset="50%" - stop-color="#ff8000" - id="stop25" /> - <stop - offset="75%" - stop-color="#ff8300" - id="stop27" /> - <stop - offset="95%" - stop-color="#ff8d00" - id="stop29" /> - <stop - offset="100%" - stop-color="#ff9100" - id="stop31" /> - </linearGradient> - <linearGradient - id="C" - x1="44.712879" - y1="42.381865" - x2="19.37669" - y2="17.365363" - gradientTransform="scale(0.99319606,1.0068505)" - gradientUnits="userSpaceOnUse"> - <stop - offset="0%" - stop-color="#ff9100" - id="stop34" /> - <stop - offset="5%" - stop-color="#ff8d00" - id="stop36" /> - <stop - offset="25%" - stop-color="#ff8300" - id="stop38" /> - <stop - offset="50%" - stop-color="#ff8000" - id="stop40" /> - <stop - offset="75%" - stop-color="#ff8300" - id="stop42" /> - <stop - offset="95%" - stop-color="#ff8d00" - id="stop44" /> - <stop - offset="100%" - stop-color="#ff9100" - id="stop46" /> - </linearGradient> - <linearGradient - id="D" - x1="40.455486" - y1="52.489434" - x2="22.145054" - y2="8.6782826" - gradientTransform="scale(1.0164746,0.98379237)" - gradientUnits="userSpaceOnUse"> - <stop - offset="0%" - stop-color="#ff9100" - id="stop49" /> - <stop - offset="5%" - stop-color="#ff8d00" - id="stop51" /> - <stop - offset="25%" - stop-color="#ff8300" - id="stop53" /> - <stop - offset="50%" - stop-color="#ff8000" - id="stop55" /> - <stop - offset="75%" - stop-color="#ff8300" - id="stop57" /> - <stop - offset="95%" - stop-color="#ff8d00" - id="stop59" /> - <stop - offset="100%" - stop-color="#ff9100" - id="stop61" /> - </linearGradient> - <linearGradient - id="E" - x1="30.883168" - y1="61.970756" - x2="30.883168" - y2="0.018566106" - gradientTransform="scale(1.030133,0.97074843)" - gradientUnits="userSpaceOnUse"> - <stop - offset="0%" - stop-color="#ff9100" - id="stop64" /> - <stop - offset="5%" - stop-color="#ff8d00" - id="stop66" /> - <stop - offset="25%" - stop-color="#ff8300" - id="stop68" /> - <stop - offset="50%" - stop-color="#ff8000" - id="stop70" /> - <stop - offset="75%" - stop-color="#ff8300" - id="stop72" /> - <stop - offset="95%" - stop-color="#ff8d00" - id="stop74" /> - <stop - offset="100%" - stop-color="#ff9100" - id="stop76" /> - </linearGradient> - </defs> - <symbol - id="F" - overflow="visible" - transform="translate(-4.493145,-2.993145)"> - <g - stroke="none" - fill-rule="nonzero" - id="g91"> - <path - d="m 28.509,21.28 c 0.318,0.616 0.112,1.364 -0.504,1.868 a 1.25,1.25 0 0 1 -1.7,-0.691 c -0.336,-0.598 -0.112,-1.364 0.504,-1.868 a 1.25,1.25 0 0 1 1.7,0.505 z m -6.203,9.827 a 0.75,0.75 0 0 0 -0.299,1.009 c 0.196,0.361 0.648,0.495 1.009,0.299 0.361,-0.196 0.495,-0.648 0.299,-1.009 a 0.75,0.75 0 0 0 -1.009,-0.299 z m -0.299,-3.045 a 0.86,0.86 0 0 0 -0.336,1.158 c 0.224,0.43 0.747,0.56 1.177,0.374 0.43,-0.186 0.561,-0.747 0.374,-1.177 a 0.86,0.86 0 0 0 -1.177,-0.336 z m 0.785,-2.914 a 0.99,0.99 0 0 0 -0.411,1.326 0.98,0.98 0 0 0 1.345,0.374 0.99,0.99 0 0 0 0.411,-1.345 0.99,0.99 0 0 0 -1.326,-0.392 z m 1.607,-2.522 a 1.1,1.1 0 0 0 -0.448,1.513 1.07,1.07 0 0 0 1.495,0.448 1.11,1.11 0 0 0 0.065,-1.924 1.11,1.11 0 0 0 -1.111,-0.037 z m -1.214,11.303 a 0.62,0.62 0 0 0 -0.243,0.841 0.62,0.62 0 0 0 0.841,0.243 c 0.292,-0.171 0.399,-0.541 0.243,-0.841 -0.079,-0.144 -0.212,-0.251 -0.37,-0.296 -0.158,-0.045 -0.327,-0.026 -0.471,0.054 z M 37.458,23.654 a 0.75,0.75 0 0 0 1.009,0.299 0.75,0.75 0 0 0 0.299,-1.009 c -0.196,-0.361 -0.648,-0.495 -1.009,-0.299 -0.361,0.196 -0.495,0.648 -0.299,1.009 z m -2.373,-1.569 c 0.224,0.411 0.747,0.56 1.158,0.336 0.411,-0.224 0.56,-0.747 0.374,-1.158 a 0.86093743,0.86093743 0 1 0 -1.513,0.822 z M 32.189,21.3 c 0.258,0.48 0.856,0.66 1.336,0.402 0.48,-0.258 0.66,-0.856 0.402,-1.336 -0.258,-0.48 -0.856,-0.66 -1.336,-0.402 -0.48,0.258 -0.66,0.856 -0.402,1.336 z m -3.027,0.112 c 0.139,0.263 0.377,0.459 0.662,0.543 a 1.1,1.1 0 0 0 0.851,-0.095 1.12,1.12 0 0 0 0.448,-1.513 c -0.289,-0.537 -0.958,-0.737 -1.495,-0.448 -0.537,0.289 -0.737,0.958 -0.448,1.495 z m 10.313,4.521 c 0.149,0.299 0.56,0.411 0.822,0.243 0.143,-0.075 0.249,-0.205 0.295,-0.36 0.046,-0.155 0.027,-0.322 -0.052,-0.462 -0.075,-0.147 -0.207,-0.258 -0.365,-0.307 -0.158,-0.049 -0.329,-0.033 -0.475,0.046 -0.28,0.187 -0.411,0.56 -0.243,0.841 z m -2.13,11.77 c -0.33,-0.609 -1.091,-0.835 -1.7,-0.504 -0.609,0.331 -0.835,1.091 -0.505,1.7 0.336,0.617 1.121,0.822 1.868,0.504 0.747,-0.318 0.841,-1.121 0.505,-1.868 z M 26.023,36.489 C 25.826,36.14 25.39,36.008 25.033,36.19 a 0.73,0.73 0 0 0 -0.295,0.986 0.73,0.73 0 0 0 0.985,0.297 0.73,0.73 0 0 0 0.3,-0.984 z m 2.504,1.588 a 0.86093743,0.86093743 0 1 0 -1.513,0.822 c 0.224,0.411 0.747,0.561 1.158,0.374 a 0.88,0.88 0 0 0 0.355,-1.177 z m 2.896,0.785 c -0.262,-0.486 -0.859,-0.654 -1.345,-0.374 a 0.99,0.99 0 0 0 -0.392,1.327 c 0.262,0.486 0.859,0.654 1.345,0.411 a 0.97,0.97 0 0 0 0.411,-1.345 z M 34.45,38.75 a 1.12,1.12 0 0 0 -1.513,-0.448 c -0.56,0.28 -0.747,0.934 -0.43,1.495 0.135,0.262 0.37,0.457 0.652,0.542 0.282,0.085 0.586,0.051 0.843,-0.093 0.56,-0.28 0.747,-0.934 0.448,-1.495 z m 6.875,-9.659 c 0.176,-0.092 0.308,-0.249 0.368,-0.439 0.06,-0.19 0.041,-0.394 -0.05,-0.57 -0.196,-0.361 -0.648,-0.495 -1.009,-0.299 -0.361,0.196 -0.495,0.648 -0.299,1.009 a 0.75,0.75 0 0 0 0.99,0.299 z m 0.131,2.989 c 0.411,-0.224 0.56,-0.747 0.336,-1.177 a 0.86,0.86 0 0 0 -1.158,-0.355 0.88,0.88 0 0 0 -0.355,1.177 c 0.224,0.411 0.747,0.56 1.177,0.336 z m -0.747,2.896 c 0.486,-0.262 0.654,-0.859 0.411,-1.345 a 1,1 0 0 0 -1.73,-0.046 1,1 0 0 0 -0.026,0.999 0.99,0.99 0 0 0 1.326,0.392 z m -1.588,2.503 c 0.56,-0.28 0.747,-0.971 0.448,-1.495 -0.299,-0.524 -0.971,-0.747 -1.495,-0.448 -0.537,0.289 -0.737,0.958 -0.448,1.495 0.289,0.537 0.958,0.737 1.495,0.448 z" - fill="url(#A)" - id="path81" - style="fill:url(#A)" /> - <path - d="m 36.954,18.291 c -0.253,0.856 -1.152,1.346 -2.008,1.093 -0.856,-0.253 -1.346,-1.152 -1.093,-2.008 0.114,-0.61 0.565,-1.102 1.163,-1.268 0.598,-0.166 1.238,0.023 1.651,0.487 0.413,0.464 0.524,1.122 0.288,1.697 z m -15.506,3.811 c -0.423,-0.121 -0.864,0.121 -0.99,0.542 -0.069,0.402 0.174,0.793 0.566,0.907 0.392,0.114 0.807,-0.083 0.966,-0.459 0.131,-0.411 -0.112,-0.859 -0.56,-0.99 z m 2.802,-3.083 c -0.521,-0.155 -1.069,0.142 -1.224,0.663 -0.155,0.521 0.142,1.069 0.663,1.224 a 0.99,0.99 0 0 0 1.214,-0.673 0.99,0.99 0 0 0 -0.672,-1.214 z m 3.587,-2.167 a 1.27,1.27 0 0 0 -1.551,0.841 1.25,1.25 0 0 0 0.859,1.551 1.25,1.25 0 0 0 1.454,-0.87 1.25,1.25 0 0 0 -0.744,-1.522 z m 3.979,-0.897 a 1.4,1.4 0 0 0 -1.644,2.004 1.4,1.4 0 0 0 2.578,-0.266 1.4,1.4 0 0 0 -0.953,-1.756 z m -12.144,9.958 a 0.6,0.6 0 0 0 -0.678,0.419 0.6,0.6 0 0 0 0.341,0.72 c 0.318,0.093 0.654,-0.093 0.747,-0.411 A 0.6,0.6 0 0 0 19.671,25.894 Z M 43.96,29.5 c -0.114,0.415 0.127,0.843 0.541,0.962 0.414,0.119 0.845,-0.118 0.968,-0.53 0.123,-0.412 -0.108,-0.846 -0.518,-0.974 -0.423,-0.121 -0.864,0.121 -0.99,0.542 z m -0.934,-3.979 a 0.99,0.99 0 0 0 0.673,1.233 0.98164823,0.98164823 0 1 0 0.542,-1.887 0.99,0.99 0 0 0 -1.233,0.654 z m -2.335,-3.587 a 1.25,1.25 0 0 0 1.795,1.461 1.25,1.25 0 0 0 -0.245,-2.302 1.25,1.25 0 0 0 -1.551,0.841 z m -3.064,-2.802 a 1.4011818,1.4011818 0 1 0 2.689,0.789 1.4,1.4 0 0 0 -0.933,-1.742 1.42,1.42 0 0 0 -1.756,0.953 z m 5.829,14.386 a 0.6,0.6 0 0 0 0.392,0.747 0.6,0.6 0 0 0 0.808,-0.713 0.6,0.6 0 0 0 -0.471,-0.427 0.6,0.6 0 0 0 -0.729,0.411 z m -13.75,9.285 c 0.236,-0.574 0.124,-1.232 -0.288,-1.697 -0.412,-0.465 -1.052,-0.653 -1.65,-0.487 -0.598,0.166 -1.049,0.658 -1.163,1.268 -0.121,0.414 -0.074,0.859 0.133,1.237 0.207,0.378 0.555,0.659 0.969,0.78 0.859,0.243 1.756,-0.243 1.999,-1.121 z M 19.73,30.659 c 0.12,-0.285 0.066,-0.613 -0.139,-0.844 -0.205,-0.231 -0.524,-0.325 -0.821,-0.24 -0.297,0.085 -0.52,0.332 -0.572,0.636 -0.12,0.285 -0.066,0.613 0.139,0.844 0.205,0.231 0.524,0.325 0.821,0.24 0.297,-0.085 0.52,-0.332 0.572,-0.636 z m 0.934,3.979 a 0.98164823,0.98164823 0 0 0 -1.887,-0.542 0.99,0.99 0 0 0 1.189,1.345 0.99,0.99 0 0 0 0.698,-0.803 z m 2.167,3.587 a 1.27,1.27 0 0 0 -0.859,-1.569 1.2515651,1.2515651 0 1 0 -0.694,2.405 1.25,1.25 0 0 0 1.553,-0.836 z m 3.064,2.802 a 1.42,1.42 0 0 0 -0.953,-1.756 1.4102221,1.4102221 0 1 0 -0.785,2.709 1.42,1.42 0 0 0 1.756,-0.953 z m 16.198,-2.989 c 0.423,0.121 0.864,-0.121 0.99,-0.542 0.121,-0.423 -0.121,-0.864 -0.542,-0.99 -0.423,-0.121 -0.864,0.121 -0.99,0.542 -0.121,0.423 0.121,0.864 0.542,0.99 z m -2.802,3.083 c 0.521,0.155 1.069,-0.142 1.224,-0.663 0.155,-0.521 -0.142,-1.069 -0.663,-1.224 a 0.99,0.99 0 0 0 -1.233,0.673 0.99,0.99 0 0 0 0.673,1.214 z m -3.587,2.167 a 1.25,1.25 0 0 0 1.454,-0.87 1.25,1.25 0 0 0 -2.035,-1.289 1.25,1.25 0 0 0 0.582,2.158 z m -3.979,0.878 a 1.4,1.4 0 0 0 1.738,-0.953 1.4011,1.4011 0 1 0 -2.69,-0.785 1.4,1.4 0 0 0 0.953,1.737 z" - fill="url(#B)" - id="path83" - style="fill:url(#B)" /> - <path - d="m 45.025,19.093 c -0.792,0.822 -2.1,0.849 -2.925,0.061 -0.825,-0.788 -0.859,-2.096 -0.074,-2.925 0.785,-0.829 2.092,-0.868 2.925,-0.087 0.839,0.79 0.88,2.11 0.093,2.952 z M 24.343,14.366 a 1.03,1.03 0 0 0 -0.736,-0.284 c -0.274,0.007 -0.533,0.123 -0.721,0.322 a 1.03,1.03 0 0 0 0.774,1.723 1.03,1.03 0 0 0 0.683,-1.76 z m 5.194,-1.98 a 1.27,1.27 0 0 0 -1.793,0.056 1.27,1.27 0 0 0 0.056,1.793 1.27,1.27 0 0 0 1.793,-0.056 1.27,1.27 0 0 0 -0.056,-1.794 z m 5.549,-0.374 c -0.646,-0.6 -1.655,-0.566 -2.261,0.075 -0.572,0.65 -0.527,1.636 0.103,2.23 0.63,0.594 1.617,0.583 2.233,-0.026 0.294,-0.311 0.451,-0.727 0.437,-1.155 -0.014,-0.428 -0.198,-0.833 -0.512,-1.124 z m 5.269,1.345 a 1.81,1.81 0 0 0 -3.004,0.9 1.81,1.81 0 0 0 0.519,1.735 c 0.728,0.685 1.873,0.652 2.56,-0.075 0.687,-0.727 0.652,-1.873 -0.075,-2.56 z m -20.401,4.484 c -0.149,-0.139 -0.346,-0.213 -0.549,-0.206 -0.203,0.007 -0.395,0.095 -0.534,0.243 -0.23,0.188 -0.331,0.492 -0.258,0.78 0.073,0.288 0.304,0.508 0.596,0.565 0.292,0.057 0.589,-0.059 0.765,-0.299 0.139,-0.149 0.213,-0.346 0.206,-0.55 -0.007,-0.204 -0.095,-0.395 -0.243,-0.534 z m 26.342,18.813 a 1.03,1.03 0 0 0 -0.284,0.736 c 0.007,0.274 0.123,0.533 0.322,0.721 a 1.03,1.03 0 0 0 1.401,-1.495 1.03,1.03 0 0 0 -1.457,0.037 z m 1.308,-5.287 a 1.27,1.27 0 0 0 0.056,1.775 1.2619162,1.2619162 0 1 0 1.737,-1.831 1.27,1.27 0 0 0 -1.793,0.056 z M 47.23,25.818 c -0.417,0.413 -0.577,1.021 -0.415,1.585 0.162,0.564 0.619,0.996 1.192,1.125 0.573,0.129 1.171,-0.065 1.559,-0.505 0.572,-0.65 0.527,-1.636 -0.103,-2.23 -0.63,-0.594 -1.617,-0.583 -2.233,0.026 z m -1.943,-5.156 a 1.81,1.81 0 0 0 1.362,3.065 1.81,1.81 0 0 0 1.179,-3.14 C 47.081,19.896 45.96,19.952 45.287,20.662 Z M 43.68,41.251 c -0.139,0.149 -0.213,0.346 -0.206,0.55 0.007,0.204 0.095,0.395 0.243,0.534 0.188,0.23 0.492,0.331 0.779,0.258 0.287,-0.073 0.508,-0.304 0.565,-0.596 0.057,-0.292 -0.059,-0.589 -0.299,-0.765 a 0.75,0.75 0 0 0 -0.55,-0.214 c -0.205,0.007 -0.398,0.098 -0.534,0.252 z m -22.045,2.672 a 2.0811559,2.0811559 0 1 0 -3.026,-2.858 2.0811559,2.0811559 0 1 0 3.026,2.858 z m -4.484,-20.42 a 1.03,1.03 0 0 0 -0.485,-1.766 1.03,1.03 0 0 0 -1.01,0.365 c -0.374,0.411 -0.374,1.046 0.037,1.439 a 1.01,1.01 0 0 0 1.438,-0.037 z m -1.308,5.287 a 1.27,1.27 0 0 0 -0.056,-1.794 1.27,1.27 0 0 0 -1.737,1.831 1.27,1.27 0 0 0 1.793,-0.056 z m 0.411,5.567 c 0.394,-0.421 0.533,-1.019 0.366,-1.57 -0.167,-0.551 -0.616,-0.972 -1.177,-1.102 -0.561,-0.13 -1.149,0.048 -1.543,0.468 -0.6,0.646 -0.566,1.655 0.075,2.261 0.654,0.617 1.868,0.561 2.242,-0.056 z m 1.943,5.156 c 0.685,-0.728 0.652,-1.873 -0.075,-2.56 a 1.81,1.81 0 0 0 -3.004,0.9 1.81,1.81 0 0 0 0.519,1.734 c 0.728,0.685 1.873,0.652 2.56,-0.075 z m 21.111,6.259 c 0.26,0.286 0.659,0.401 1.031,0.299 0.372,-0.102 0.657,-0.405 0.735,-0.783 a 1.03,1.03 0 0 0 -1.756,-0.91 1.03,1.03 0 0 0 -0.01,1.395 z m -5.194,1.962 c 0.504,0.486 1.308,0.448 1.794,-0.056 0.475,-0.511 0.445,-1.309 -0.065,-1.784 -0.51,-0.475 -1.31,-0.445 -1.784,0.065 a 1.27,1.27 0 0 0 0.056,1.775 z m -5.567,0.411 c 0.654,0.617 1.868,0.561 2.242,-0.056 0.418,-0.413 0.577,-1.021 0.415,-1.585 -0.162,-0.564 -0.619,-0.996 -1.192,-1.125 -0.573,-0.129 -1.171,0.065 -1.559,0.505 -0.6,0.646 -0.566,1.655 0.075,2.261 z M 23.316,46.8 c 0.721,0.677 1.855,0.642 2.533,-0.078 0.678,-0.72 0.645,-1.854 -0.075,-2.534 -0.72,-0.68 -1.853,-0.648 -2.534,0.071 -0.328,0.346 -0.505,0.809 -0.49,1.286 0.015,0.477 0.217,0.928 0.565,1.255 z" - fill="url(#C)" - id="path85" - style="fill:url(#C)" /> - <path - d="m 53.451,23.503 c -1.274,0.547 -2.752,-0.037 -3.307,-1.308 -0.543,-1.268 0.043,-2.737 1.31,-3.284 1.267,-0.547 2.737,0.035 3.287,1.3 0.55,1.265 -0.027,2.737 -1.29,3.291 z M 35.796,7.511 a 1.3906606,1.3906606 0 1 0 -2.728,0.542 1.3906606,1.3906606 0 1 0 2.728,-0.542 z m 5.978,1.308 a 1.68,1.68 0 0 0 -2.849,-0.847 1.68,1.68 0 0 0 -0.402,1.688 1.68,1.68 0 0 0 2.849,0.847 1.68,1.68 0 0 0 0.402,-1.688 z m 5.455,2.429 C 46.883,10.144 45.708,9.529 44.604,9.875 43.5,10.221 42.885,11.396 43.231,12.5 c 0.346,1.104 1.521,1.719 2.625,1.373 1.104,-0.346 1.719,-1.521 1.373,-2.625 z m 4.372,3.737 a 2.3111688,2.3111688 0 0 0 -4.334,1.607 c 0.245,0.83 0.932,1.454 1.781,1.619 0.849,0.165 1.72,-0.158 2.257,-0.837 0.537,-0.679 0.651,-1.6 0.296,-2.389 z M 23.876,9.062 a 1.01,1.01 0 0 0 -1.864,0.031 1.01,1.01 0 0 0 1.341,1.295 C 23.857,10.164 24.1,9.566 23.876,9.08 Z m 25.184,33.33 c -0.618,0.444 -0.761,1.303 -0.322,1.923 0.439,0.62 1.298,0.769 1.921,0.332 0.623,-0.437 0.776,-1.294 0.343,-1.919 -0.211,-0.305 -0.536,-0.512 -0.901,-0.575 -0.365,-0.063 -0.741,0.023 -1.042,0.239 z m 2.765,-5.605 a 1.68,1.68 0 0 0 0.069,2.966 1.68,1.68 0 0 0 2.179,-2.399 1.68,1.68 0 0 0 -2.248,-0.567 z m 1.308,-6.09 c -1.004,0.568 -1.359,1.842 -0.793,2.847 0.566,1.005 1.839,1.363 2.846,0.8 1.007,-0.563 1.367,-1.836 0.806,-2.844 A 2.09,2.09 0 0 0 54.73,30.503 c -0.537,-0.151 -1.111,-0.081 -1.596,0.193 z m -0.075,-6.109 c -1.144,0.568 -1.612,1.956 -1.046,3.101 0.566,1.145 1.956,1.614 3.101,1.046 1.145,-0.568 1.614,-1.956 1.046,-3.101 -0.568,-1.145 -1.956,-1.612 -3.101,-1.046 z M 40.354,49.621 a 1.01,1.01 0 0 0 -0.221,1.756 1.01,1.01 0 0 0 1.025,0.093 c 0.504,-0.224 0.747,-0.822 0.523,-1.308 A 1.01,1.01 0 0 0 40.355,49.639 Z M 12.218,41.139 c 1.271,-0.555 1.855,-2.032 1.308,-3.307 -0.547,-1.275 -2.033,-1.86 -3.307,-1.308 -1.274,0.552 -1.86,2.032 -1.308,3.307 0.552,1.275 2.033,1.855 3.307,1.308 z m 2.429,-23.503 c 0.404,-0.287 0.624,-0.768 0.577,-1.261 -0.047,-0.493 -0.353,-0.924 -0.803,-1.13 -0.45,-0.206 -0.977,-0.156 -1.381,0.131 -0.624,0.444 -0.771,1.309 -0.327,1.934 0.444,0.625 1.309,0.771 1.934,0.327 z m -2.765,5.605 a 1.68,1.68 0 0 0 -0.526,-3.063 1.68,1.68 0 0 0 -1.791,2.54 1.68,1.68 0 0 0 2.317,0.523 z m -1.308,6.09 a 2.1,2.1 0 0 0 0.044,-3.636 2.1,2.1 0 0 0 -2.903,2.833 2.1,2.1 0 0 0 2.858,0.803 z m 0.224,6.09 c 0.779,-0.344 1.307,-1.088 1.374,-1.938 0.067,-0.85 -0.338,-1.667 -1.055,-2.128 C 10.4,30.894 9.489,30.862 8.743,31.274 7.658,31.873 7.236,33.22 7.786,34.331 c 0.55,1.111 1.878,1.591 3.012,1.091 z m 17.244,17.263 c 0.146,0.667 0.757,1.127 1.439,1.084 a 1.4,1.4 0 0 0 1.084,-1.644 c -0.15,-0.748 -0.877,-1.233 -1.625,-1.084 -0.748,0.149 -1.233,0.877 -1.084,1.625 z m -5.978,-1.308 a 1.68,1.68 0 0 0 3.075,0.454 1.68,1.68 0 0 0 -1.861,-2.49 1.68,1.68 0 0 0 -1.214,2.036 z m -5.661,-2.653 c 0.352,1.099 1.528,1.706 2.628,1.355 1.1,-0.351 1.708,-1.525 1.359,-2.626 -0.349,-1.101 -1.522,-1.711 -2.623,-1.364 -1.104,0.341 -1.723,1.512 -1.383,2.616 z m -4.39,-3.736 a 2.3,2.3 0 0 0 2.97,1.364 c 1.111,-0.5 1.645,-1.775 1.221,-2.918 -0.424,-1.143 -1.659,-1.762 -2.828,-1.417 -1.195,0.446 -1.804,1.774 -1.364,2.971 z m 33.068,1.868 c -0.469,0.371 -0.549,1.053 -0.177,1.523 0.372,0.47 1.053,0.549 1.523,0.178 0.47,-0.371 0.549,-1.053 0.178,-1.523 -0.371,-0.47 -1.053,-0.549 -1.523,-0.177 z m -10.163,4.39 c -0.591,0.089 -0.999,0.639 -0.911,1.231 0.088,0.592 0.638,1 1.23,0.913 0.592,-0.087 1.001,-0.637 0.915,-1.228 -0.042,-0.285 -0.195,-0.542 -0.426,-0.714 -0.231,-0.172 -0.522,-0.244 -0.807,-0.202 z M 29.481,7.511 C 29.392,6.92 28.842,6.512 28.25,6.6 c -0.592,0.088 -1,0.638 -0.913,1.229 0.087,0.591 0.637,1.001 1.228,0.915 0.285,-0.041 0.542,-0.195 0.714,-0.426 0.172,-0.231 0.244,-0.522 0.202,-0.807 z m -10.911,4.11 c -0.177,-0.23 -0.439,-0.379 -0.727,-0.414 -0.288,-0.035 -0.578,0.047 -0.805,0.227 -0.467,0.371 -0.547,1.049 -0.178,1.518 0.369,0.469 1.047,0.552 1.517,0.185 0.47,-0.367 0.556,-1.044 0.192,-1.517 z" - fill="url(#D)" - id="path87" - style="fill:url(#D)" /> - <path - d="m 60.587,33.292 c -1.77,-0.01 -3.198,-1.45 -3.195,-3.22 0.003,-1.77 1.437,-3.204 3.207,-3.207 1.77,-0.003 3.209,1.425 3.22,3.195 0,0.856 -0.341,1.676 -0.948,2.279 -0.607,0.603 -1.429,0.94 -2.284,0.935 z M 48.164,5.53 C 48.297,4.909 48.09,4.264 47.619,3.838 47.148,3.412 46.486,3.27 45.881,3.464 45.276,3.658 44.822,4.161 44.689,4.782 a 1.78,1.78 0 0 0 1.364,2.111 1.78,1.78 0 0 0 2.111,-1.364 z m 6.352,4.54 a 2.15,2.15 0 0 0 -1.791,-2.45 2.15,2.15 0 0 0 -2.454,1.785 2.15,2.15 0 0 0 3.386,2.075 2.15,2.15 0 0 0 0.86,-1.41 z m 5.119,5.904 z m 3.176,6.819 c 0.088,-1.63 -1.163,-3.023 -2.793,-3.111 -1.63,-0.088 -3.023,1.163 -3.111,2.793 -0.057,1.055 0.453,2.059 1.338,2.636 0.885,0.577 2.01,0.637 2.952,0.159 0.942,-0.478 1.557,-1.422 1.613,-2.477 z M 33.348,1.308 A 1.3,1.3 0 0 0 32.041,0 1.29,1.29 0 0 0 30.752,1.289 1.29,1.29 0 0 0 32.041,2.578 1.3,1.3 0 0 0 33.349,1.27 Z m 12.704,51.975 c -0.621,0.133 -1.123,0.588 -1.318,1.192 -0.195,0.604 -0.052,1.267 0.374,1.737 0.426,0.47 1.071,0.679 1.692,0.545 a 1.78,1.78 0 0 0 1.364,-2.111 1.78,1.78 0 0 0 -2.111,-1.364 z m 5.978,-4.969 c -1.176,0.186 -1.979,1.29 -1.794,2.466 0.185,1.176 1.29,1.979 2.466,1.794 1.176,-0.185 1.979,-1.29 1.793,-2.466 -0.186,-1.176 -1.29,-1.979 -2.466,-1.793 z m 4.633,-6.501 a 2.69,2.69 0 0 0 -1.417,4.766 2.69,2.69 0 0 0 4.369,-2.375 2.69,2.69 0 0 0 -2.952,-2.391 z m 2.989,-7.23 a 2.97,2.97 0 0 0 -2.802,3.101 c 0.088,1.63 1.48,2.881 3.111,2.793 1.631,-0.088 2.881,-1.48 2.793,-3.111 a 2.97,2.97 0 0 0 -3.12,-2.802 z m -27.65,22.98 a 1.29,1.29 0 0 0 -1.289,1.289 1.29,1.29 0 0 0 2.406,0.645 1.29,1.29 0 0 0 -1.116,-1.934 z M 3.232,33.274 c 1.77,-0.01 3.198,-1.45 3.195,-3.22 C 6.424,28.284 4.989,26.85 3.22,26.847 1.451,26.844 0.01,28.272 0,30.042 0.01,31.82 1.454,33.255 3.232,33.255 Z M 18.178,6.857 c 0.461,-0.098 0.864,-0.376 1.12,-0.773 0.256,-0.397 0.343,-0.878 0.244,-1.338 -0.207,-0.957 -1.151,-1.566 -2.109,-1.36 -0.958,0.206 -1.567,1.15 -1.361,2.107 0.206,0.957 1.148,1.568 2.106,1.363 z m -5.978,4.97 a 2.15,2.15 0 0 0 1.779,-2.459 2.15,2.15 0 0 0 -2.454,-1.785 2.15,2.15 0 0 0 -0.931,3.86 2.15,2.15 0 0 0 1.606,0.383 z M 7.567,18.329 A 2.69,2.69 0 0 0 7.006,12.986 c -0.954,0.1 -1.783,0.702 -2.173,1.579 -0.39,0.877 -0.284,1.895 0.28,2.672 0.564,0.777 1.499,1.193 2.454,1.093 z m -2.989,7.23 A 2.97,2.97 0 0 0 7.38,22.439 2.95,2.95 0 0 0 4.26,19.637 c -1.63,0.088 -2.881,1.48 -2.793,3.111 0.088,1.631 1.48,2.881 3.111,2.793 z M 16.086,54.61 c -0.205,0.958 0.406,1.901 1.363,2.106 0.957,0.205 1.901,-0.404 2.107,-1.361 0.206,-0.957 -0.402,-1.901 -1.36,-2.109 -0.461,-0.1 -0.942,-0.012 -1.339,0.244 -0.397,0.256 -0.674,0.659 -0.773,1.12 z M 9.734,50.07 a 2.15,2.15 0 0 0 1.794,2.466 2.15,2.15 0 0 0 2.45,-1.791 2.15,2.15 0 0 0 -1.785,-2.454 2.15,2.15 0 0 0 -2.459,1.779 z M 4.447,44.166 c -0.155,1.475 0.916,2.797 2.391,2.952 1.475,0.155 2.797,-0.916 2.952,-2.391 A 2.69,2.69 0 0 0 7.399,41.775 2.67,2.67 0 0 0 4.447,44.166 Z M 1.084,37.403 a 2.95,2.95 0 0 0 2.802,3.101 C 4.941,40.561 5.945,40.05 6.522,39.166 7.099,38.282 7.159,37.156 6.681,36.214 6.203,35.272 5.259,34.657 4.204,34.6 a 2.97,2.97 0 0 0 -3.12,2.802 z m 37.851,19.168 c -0.736,0.202 -1.169,0.962 -0.968,1.698 0.201,0.736 0.96,1.17 1.697,0.97 0.737,-0.2 1.171,-0.959 0.971,-1.696 -0.092,-0.358 -0.324,-0.664 -0.643,-0.85 a 1.38,1.38 0 0 0 -1.057,-0.14 z m -14.199,0 a 1.3910607,1.3910607 0 0 0 -0.71,2.69 1.39,1.39 0 0 0 1.697,-1.71 1.39,1.39 0 0 0 -0.987,-0.98 z M 40.616,2.672 C 40.806,1.935 40.364,1.183 39.627,0.99 38.89,0.797 38.137,1.236 37.941,1.972 c -0.196,0.736 0.24,1.491 0.975,1.69 a 1.38,1.38 0 0 0 1.7,-0.99 z M 25.745,1.906 a 1.3910607,1.3910607 0 1 0 -2.69,0.71 1.3910607,1.3910607 0 1 0 2.69,-0.71 z" - fill="url(#E)" - id="path89" - style="fill:url(#E)" /> - </g> - </symbol> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1001"><path fill="#d64000" d="M864.394 135.44c12.71 12.685 19.677 29.665 19.677 47.72 0 18.053-6.992 35.033-19.652 47.743a67.42 67.42 0 0 1-95.263 0 67.07 67.07 0 0 1-19.677-47.744c0-18.054 6.992-35.034 19.677-47.744a67.12 67.12 0 0 1 47.694-19.826c17.354 0 34.51 6.617 47.744 19.826h-.175zM135.375 865.907a67.67 67.67 0 0 1 0-95.463 67.2 67.2 0 0 1 47.72-19.851c18.053 0 35.033 6.991 47.718 19.851a67.67 67.67 0 0 1 0 95.463 67.17 67.17 0 0 1-47.694 19.852c-18.078 0-35.058-6.992-47.744-19.852M649.222 140.61h-.525a59.3 59.3 0 0 1-31.463-31.987 58.38 58.38 0 0 1 0-45.247 59.08 59.08 0 0 1 54.511-36.457c7.492 0 15.357 1.598 22.524 4.47a59.355 59.355 0 0 1 31.962 77.234 59.18 59.18 0 0 1-77.01 31.987M328.399 856.443c7.69 0 15.207 1.598 22.523 4.47a59.355 59.355 0 0 1 31.988 77.234 58.53 58.53 0 0 1-31.963 31.988 58.36 58.36 0 0 1-45.247 0 59.355 59.355 0 0 1-31.962-77.235 59.11 59.11 0 0 1 54.486-36.457zM550.563 51.938a50.69 50.69 0 0 1-48.244 50.591h-2.322a50.665 50.665 0 0 1-50.59-50.59c-.026-27.868 22.698-50.591 50.59-50.591 27.867 0 50.566 22.873 50.566 50.765zM449.382 949.584c0-27.892 22.723-50.59 50.615-50.59 27.867 0 50.566 22.698 50.566 50.59a50.665 50.665 0 0 1-50.566 50.59 50.665 50.665 0 0 1-50.59-50.59zM344.68 125.052a41.8 41.8 0 0 1-32.188 0 41.65 41.65 0 0 1-22.873-22.873 42.2 42.2 0 1 1 77.909-32.362c4.32 10.538 4.32 21.975 0 32.362a41.1 41.1 0 0 1-22.848 22.873M655.14 876.47a43.2 43.2 0 0 1 16.23-3.222q8.316 0 16.107 3.222a42.275 42.275 0 0 1 22.873 55.235 41.1 41.1 0 0 1-22.873 22.898 42.28 42.28 0 0 1-32.362 0 41.1 41.1 0 0 1-22.873-22.898 42.275 42.275 0 0 1 22.873-55.235zM206.866 159.737c12.885 13.06 13.235 33.81.725 47.194l-.725.75c-13.234 13.209-34.659 13.209-47.693 0a33.885 33.885 0 0 1 0-47.944c6.592-6.592 15.182-9.814 23.921-9.814 8.765 0 17.355 3.222 23.972 9.814zm585.687 634.48c6.443-6.618 15.208-9.84 23.772-9.84 8.59 0 17.33 3.247 23.972 9.84 6.418 6.242 9.814 14.832 9.814 23.971a33.685 33.685 0 1 1-67.371 0c0-8.94 3.57-17.53 9.813-23.972m-722.775-426.2a42.375 42.375 0 0 1-22.874-55.235c4.295-10.538 12.336-18.603 22.874-22.873 5.368-2.148 10.737-3.246 16.28-3.246s10.888 1.098 16.082 3.246a42.525 42.525 0 0 1 22.873 55.235 41.1 41.1 0 0 1-22.873 22.873c-10.538 4.295-21.975 4.295-32.163 0zM930.192 633.68a42.3 42.3 0 0 1 22.873 55.235 42.2 42.2 0 0 1-77.934 0 42.3 42.3 0 0 1 38.955-58.431c16.455 0 10.737 1.048 16.106 3.196M1.158 501.01c0-27.866 22.698-50.59 50.59-50.59 27.868 0 50.566 22.724 50.566 50.59a50.665 50.665 0 0 1-50.565 50.616 50.665 50.665 0 0 1-50.59-50.615m896.497 0c0-27.866 22.698-50.59 50.566-50.59 27.892 0 50.59 22.724 50.59 50.59a50.665 50.665 0 0 1-50.59 50.616 50.665 50.665 0 0 1-50.566-50.59zM31.173 695.184a59.056 59.056 0 0 1 32.012-77.235 59.08 59.08 0 0 1 77.21 32.013 58.38 58.38 0 0 1 0 45.197 59.106 59.106 0 0 1-109.222 0zM859.225 351.56a57.93 57.93 0 0 1 0-45.047 59.11 59.11 0 0 1 54.511-36.457c23.223 0 45.197 13.759 54.511 36.457a59.056 59.056 0 0 1-31.987 77.235 59.106 59.106 0 0 1-77.21-32.013zM643.33 644.417a47.27 47.27 0 0 0 0 67.022 47.22 47.22 0 0 0 67.021 0 46.95 46.95 0 0 0 13.934-33.411c0-12.71-4.995-24.671-13.934-33.46a46.77 46.77 0 0 0-33.436-13.735 47.94 47.94 0 0 0-33.585 13.734zM248.343 472.045a37.456 37.456 0 0 1-26.47-45.946c2.698-9.639 8.766-17.68 17.53-22.873 5.719-3.396 12.161-4.994 18.578-4.994 6.443 0 6.443.35 9.664 1.248 9.639 2.697 17.68 8.765 22.698 17.53 4.995 8.74 6.243 18.777 3.746 28.59a37.556 37.556 0 0 1-45.946 26.645l.2-.175zm483.632 129.822a37.26 37.26 0 0 1-22.724-17.53c-4.994-8.739-6.242-18.777-3.745-28.615a37.606 37.606 0 0 1 36.282-27.893c6.442 0 5.369.2 8.066.9l1.772.549a37.556 37.556 0 0 1 8.94 68.819c-8.74 4.994-18.778 6.442-28.591 3.745zm-502.76-28.441a30.29 30.29 0 0 1 19.477-36.457l1.798-.525a30.215 30.215 0 0 1 36.807 21.275c2.147 7.866 1.074 15.907-3.046 22.873-3.92 6.992-10.538 11.986-18.229 14.134-7.866 2.122-15.732 1.048-22.873-3.047a29.24 29.24 0 0 1-13.934-18.228zm497.39-111.195-1.248-.724a30.1 30.1 0 0 1-12.685-17.504 30.09 30.09 0 1 1 36.807 21.275c-7.666 2.122-15.732.874-22.873-3.047M339.66 692.686l-.898.899c-8.74 8.74-23.223 8.74-31.963 0a22.598 22.598 0 1 1 38.605-15.907 21.23 21.23 0 0 1-5.744 14.983zm352.986-385.273c4.295 4.295 6.617 10.013 6.617 16.081a22.598 22.598 0 1 1-45.197 0 22.573 22.573 0 0 1 22.673-22.698c6.093 0 11.812 2.322 16.082 6.617zM461.018 727.744c3.945 6.942 4.994 14.983 3.046 22.874-2.147 7.84-6.991 14.283-13.933 18.228-6.992 3.92-15.033 4.994-22.898 3.047a30.165 30.165 0 0 1-21.25-36.832c2.147-7.866 6.966-14.308 13.933-18.229 6.992-3.945 15.008-5.019 22.873-3.046 7.866 2.147 14.134 7.141 18.229 14.108v-.175zm77.384-453.766c-3.92-6.967-4.994-15.008-3.021-22.874 2.147-7.865 6.966-14.308 13.933-18.228 4.645-2.697 9.839-3.946 15.008-3.946 5.193 0 5.193.375 7.865 1.074 7.866 2.148 14.309 6.992 18.229 14.134a30.015 30.015 0 0 1-33.785 44.148 29.04 29.04 0 0 1-18.229-14.109zm45.222 436.412 1.623.874c7.866 4.994 13.384 12.71 15.906 21.824a37.38 37.38 0 0 1-26.469 45.946 37.2 37.2 0 0 1-28.591-3.745c-8.74-5.02-14.833-13.06-17.504-22.899a37.3 37.3 0 0 1 3.745-28.616 37.26 37.26 0 0 1 32.537-18.753c6.417 0 12.86 1.773 18.753 4.994zM444.762 295.078a37.556 37.556 0 0 1-45.946-26.644 37.38 37.38 0 0 1 36.108-47.195c16.63 0 31.812 11.087 36.282 27.893a37.38 37.38 0 0 1-26.469 45.946zm-121.907 75.436c26.095 0 47.195-21.275 47.195-47.37a47.294 47.294 0 0 0-47.195-47.369c-26.094 0-47.194 21.275-47.194 47.37s21.1 47.37 47.194 47.37" style="stroke-width:24.9706"/></svg> \ No newline at end of file diff --git a/src/assets/images/search-icon-light.svg b/src/assets/images/search-icon-light.svg index 432fd136..ecf12d86 100644 --- a/src/assets/images/search-icon-light.svg +++ b/src/assets/images/search-icon-light.svg @@ -1,38 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - viewBox="0 0 24 24" - fill="currentColor" - version="1.1" - id="svg417" - sodipodi:docname="search-icon-white.svg" - inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs421" /> - <sodipodi:namedview - id="namedview419" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="32.416667" - inkscape:cx="9.0077121" - inkscape:cy="12" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg417" /> - <path - d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z" - id="path415" - style="fill:#ffffff" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="#fff" d="M15.5 14h-.79l-.28-.27A6.47 6.47 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"/></svg> diff --git a/src/assets/images/search-icon.svg b/src/assets/images/search-icon.svg index cb73ff15..4af443f1 100644 --- a/src/assets/images/search-icon.svg +++ b/src/assets/images/search-icon.svg @@ -1,3 +1 @@ -<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"> - <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.47 6.47 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"/></svg> \ No newline at end of file diff --git a/src/assets/images/sendFiles-icon-light.svg b/src/assets/images/sendFiles-icon-light.svg index f2447a77..107a437b 100644 --- a/src/assets/images/sendFiles-icon-light.svg +++ b/src/assets/images/sendFiles-icon-light.svg @@ -1,40 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - height="24px" - viewBox="0 0 24 24" - width="24px" - fill="currentColor" - version="1.1" - id="svg546" - sodipodi:docname="sendFiles-icon-white.svg" - inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs550" /> - <sodipodi:namedview - id="namedview548" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="32.416667" - inkscape:cx="9.0077121" - inkscape:cy="12" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg546" /> - <path - d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z" - id="path544" - style="fill:#ffffff" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="#fff" d="M19.35 10.04A7.49 7.49 0 0 0 12 4C9.11 4 6.6 5.64 5.35 8.04A5.994 5.994 0 0 0 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96M14 13v4h-4v-4H7l5-5 5 5z"/></svg> diff --git a/src/assets/images/sendFiles-icon.svg b/src/assets/images/sendFiles-icon.svg index 5557664e..e4a65abb 100644 --- a/src/assets/images/sendFiles-icon.svg +++ b/src/assets/images/sendFiles-icon.svg @@ -1,3 +1 @@ -<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> - <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19.35 10.04A7.49 7.49 0 0 0 12 4C9.11 4 6.6 5.64 5.35 8.04A5.994 5.994 0 0 0 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96M14 13v4h-4v-4H7l5-5 5 5z"/></svg> \ No newline at end of file diff --git a/src/assets/images/snopes-icon.svg b/src/assets/images/snopes-icon.svg index e668aca9..b3f61482 100644 --- a/src/assets/images/snopes-icon.svg +++ b/src/assets/images/snopes-icon.svg @@ -1,75 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - width="123.47222mm" - height="123.47222mm" - viewBox="0 0 123.47222 123.47222" - version="1.1" - id="svg5" - xml:space="preserve" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - sodipodi:docname="snopes-icon.svg" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns:xlink="http://www.w3.org/1999/xlink" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview - id="namedview7" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - inkscape:document-units="mm" - showgrid="false" - inkscape:zoom="0.70710678" - inkscape:cx="182.43355" - inkscape:cy="261.62951" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="layer1" /><defs - id="defs2"><linearGradient - inkscape:collect="always" - id="linearGradient939"><stop - style="stop-color:#fbfff5;stop-opacity:1;" - offset="0.8687005" - id="stop935" /><stop - style="stop-color:#ffffff;stop-opacity:0;" - offset="1" - id="stop937" /></linearGradient><radialGradient - inkscape:collect="always" - xlink:href="#linearGradient939" - id="radialGradient943" - cx="93.969383" - cy="149.13199" - fx="93.969383" - fy="149.13199" - r="12.139586" - gradientUnits="userSpaceOnUse" /></defs><g - inkscape:label="Layer 1" - inkscape:groupmode="layer" - id="layer1" - transform="translate(-4.3063059,-93.635353)"><circle - style="fill:#fcd43f;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:3.55348;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.411765;paint-order:stroke fill markers;stop-color:#000000" - id="path5528" - cx="66.042419" - cy="155.37146" - r="61.736" /><path - id="path2997" - style="fill:#feea89;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - d="m 109.74268,135.95525 -30.193498,28.03136 -10.805014,52.85208 2.1518,0.0692 a 61.736,61.736 0 0 0 56.882302,-61.53629 61.736,61.736 0 0 0 -0.50126,-7.84087 z" /><circle - style="fill:url(#radialGradient943);fill-rule:evenodd;stroke-width:1.8476;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.411765;paint-order:stroke fill markers;stop-color:#000000;fill-opacity:1" - id="path356" - cx="93.969383" - cy="149.13199" - r="12.139586" /><path - style="fill:#060403;stroke:none;stroke-width:0.352778" - d="m 79.447971,164.54369 30.338889,-28.575 v 0 l -15.522222,-15.98334 -9.525,-0.0182 -13.405556,-12.45147 -17.345377,15.76695 c 0,0 2.629606,4.52963 3.587044,5.98332 v -4e-5 c -9.442097,-2.24903 -21.148851,-0.28328 -28.927777,5.60916 -10.090714,7.64329 -14.49264,23.19408 -6.385383,33.90195 7.110976,9.392 19.237783,12.52573 29.315938,17.55175 4.741686,2.36502 9.745486,4.89691 12.887678,9.3599 5.189361,7.37023 1.854553,16.07009 -4.773789,21.06613 v 0.35277 h 10.936111 c 1.237192,0 3.291417,0.38418 4.361392,-0.36265 1.865841,-1.30246 2.811286,-5.29626 3.240969,-7.39846 1.531408,-7.48912 0.323144,-15.99106 -4.84505,-21.87222 -8.175625,-9.3031 -20.769791,-11.92177 -31.332311,-17.45756 -5.104447,-2.67547 -10.399853,-6.17996 -11.754625,-12.17577 -1.650965,-7.30674 3.645429,-13.8684 9.990737,-16.69839 7.186083,-3.20498 22.923499,1.29152 22.923499,1.29152 l 1.942747,6.58742 z" - id="path302" - sodipodi:nodetypes="ccccccccccsccccscccccsccc" /></g></svg> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 123.472 123.472"><defs><radialGradient xlink:href="#a" id="b" cx="93.969" cy="149.132" r="12.14" fx="93.969" fy="149.132" gradientUnits="userSpaceOnUse"/><linearGradient id="a"><stop offset=".869" style="stop-color:#fbfff5;stop-opacity:1"/><stop offset="1" style="stop-color:#fff;stop-opacity:0"/></linearGradient></defs><g transform="translate(-4.306 -93.635)"><circle cx="66.042" cy="155.371" r="61.736" style="fill:#fcd43f;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:3.55348;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:.411765;paint-order:stroke fill markers;stop-color:#000"/><path d="m109.743 135.955-30.194 28.032-10.805 52.852 2.152.069a61.736 61.736 0 0 0 56.882-61.536 62 62 0 0 0-.501-7.841z" style="fill:#feea89;fill-opacity:1;stroke:none;stroke-width:.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"/><circle cx="93.969" cy="149.132" r="12.14" style="fill:url(#b);fill-rule:evenodd;stroke-width:1.8476;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:.411765;paint-order:stroke fill markers;stop-color:#000;fill-opacity:1"/><path d="m79.448 164.544 30.339-28.575-15.522-15.984-9.525-.018-13.406-12.451-17.345 15.767s2.63 4.53 3.587 5.983c-9.442-2.25-21.15-.283-28.928 5.61-10.09 7.642-14.493 23.193-6.385 33.901 7.11 9.392 19.237 12.526 29.316 17.552 4.741 2.365 9.745 4.897 12.887 9.36 5.19 7.37 1.855 16.07-4.774 21.066v.353H70.63c1.237 0 3.29.384 4.36-.363 1.867-1.303 2.812-5.296 3.242-7.399 1.531-7.489.323-15.99-4.845-21.872-8.176-9.303-20.77-11.922-31.332-17.457-5.105-2.676-10.4-6.18-11.755-12.176-1.651-7.307 3.645-13.868 9.99-16.698 7.187-3.205 22.924 1.291 22.924 1.291l1.943 6.587z" style="fill:#060403;stroke:none;stroke-width:.352778"/></g></svg> \ No newline at end of file diff --git a/src/assets/images/soundcloud-icon.svg b/src/assets/images/soundcloud-icon.svg index fe800af3..b249ac11 100644 --- a/src/assets/images/soundcloud-icon.svg +++ b/src/assets/images/soundcloud-icon.svg @@ -1,43 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - width="87.053955mm" - height="87.053955mm" - viewBox="0 0 87.053955 87.053956" - version="1.1" - id="svg1" - xml:space="preserve" - inkscape:version="1.3 (0e150ed6c4, 2023-07-21)" - sodipodi:docname="soundcloud-icon.svg" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview - id="namedview1" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - inkscape:document-units="mm" - inkscape:zoom="1.1452094" - inkscape:cx="123.99479" - inkscape:cy="250.17258" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="layer1" /><defs - id="defs1" /><g - inkscape:label="Layer 1" - inkscape:groupmode="layer" - id="layer1" - transform="translate(-12.363839,-103.73239)"><path - style="fill:#f26e1e;fill-opacity:1;stroke-width:0.999996" - d="m 34.898173,164.03329 c -0.329046,-0.76149 -0.403939,-21.90325 -0.0864,-24.39023 0.160234,-1.25497 0.241744,-1.40949 0.743482,-1.40949 0.505915,0 0.578237,0.14409 0.707482,1.40949 0.07917,0.77521 0.27221,4.82901 0.428955,9.00845 0.243843,6.50178 0.2307,8.17251 -0.09103,11.57129 -0.206813,2.18478 -0.447258,4.08758 -0.534324,4.22846 -0.291339,0.47139 -0.873946,0.26294 -1.168163,-0.41797 z m 10.003479,0.2889 c -0.233796,-0.23379 -0.391925,-0.83598 -0.402306,-1.53204 -0.0095,-0.63077 -0.109057,-2.41539 -0.221441,-3.96583 -0.250331,-3.45354 0.198917,-21.56298 0.545768,-22.00023 0.313055,-0.39465 1.031221,-0.39353 1.359578,0.002 0.155808,0.18773 0.365067,3.83821 0.534478,9.32386 0.321244,10.40208 0.05269,17.69113 -0.672432,18.25091 -0.515189,0.39772 -0.678375,0.38649 -1.143645,-0.0788 z m 13.23953,-0.15071 c -0.344117,-0.4913 -0.387816,-2.36857 -0.387816,-16.66008 0,-13.46796 0.05614,-16.16254 0.342701,-16.44909 0.679185,-0.67919 4.037101,-1.28661 7.011141,-1.26826 3.362765,0.0208 5.170787,0.43615 8.089225,1.8586 2.70764,1.3197 6.048842,4.56473 7.411073,7.19774 0.935747,1.80868 1.903793,4.89747 1.903793,6.07451 0,0.61031 0.06759,0.67386 0.551538,0.51862 5.043399,-1.61786 10.092559,0.5262 12.350362,5.24446 0.966363,2.01946 1.107445,5.0889 0.332046,7.22405 -1.059583,2.91771 -3.01897,4.97311 -5.818311,6.10346 l -1.409998,0.56934 -14.993969,0.0701 -14.993969,0.0702 z m -29.677062,-0.0156 c -0.328485,-0.97132 -0.586254,-9.47647 -0.377032,-12.44024 0.128485,-1.82007 0.237501,-3.67118 0.24226,-4.11358 0.0087,-0.81159 0.570639,-1.31649 0.982502,-0.88281 0.113032,0.11902 0.379797,2.09426 0.592811,4.38943 0.370888,3.99619 0.366318,4.35455 -0.107834,8.45691 -0.540044,4.67244 -0.584405,4.89671 -0.968573,4.89671 -0.143282,0 -0.307143,-0.13788 -0.364134,-0.30642 z m 3.271856,0.24514 c -0.0186,-0.0338 -0.222195,-2.04682 -0.452437,-4.47359 -0.382157,-4.02797 -0.388216,-4.99949 -0.06954,-11.15332 0.191992,-3.70756 0.392127,-6.8789 0.444744,-7.04743 0.05261,-0.16853 0.304574,-0.30641 0.559906,-0.30641 0.526356,0 0.549924,0.20272 1.040393,8.94934 0.232449,4.14529 0.213662,5.58284 -0.12133,9.28425 -0.218002,2.40872 -0.456014,4.47601 -0.528916,4.59397 -0.118254,0.19135 -0.786997,0.3087 -0.872815,0.15319 z m 6.54247,-0.1632 c -0.596982,-0.96594 -0.71293,-18.73719 -0.166145,-25.46509 0.139453,-1.71592 0.203477,-1.89444 0.704922,-1.96566 0.303346,-0.0431 0.566655,-0.0431 0.585132,0 0.01848,0.0431 0.156361,4.18559 0.30641,9.20557 0.267054,8.93446 0.07335,17.38755 -0.415752,18.14324 -0.231761,0.35811 -0.814792,0.40518 -1.014567,0.0819 z m 3.207861,0.0343 c -0.06464,-0.10459 -0.244529,-2.1567 -0.399739,-4.56022 -0.212283,-3.28737 -0.212987,-6.68395 -0.0029,-13.70989 0.153646,-5.13692 0.333527,-9.42751 0.399737,-9.53464 0.191243,-0.30943 1.077627,-0.22582 1.183337,0.11164 0.05279,0.16852 0.204884,4.43019 0.337981,9.47039 0.245028,9.2789 0.01448,17.44434 -0.51124,18.10649 -0.272149,0.34279 -0.827603,0.40688 -1.007234,0.11623 z m 6.920925,-0.21452 c -0.231019,-0.27792 -0.413227,-1.70897 -0.581553,-4.5675 -0.302477,-5.13674 0.08977,-21.81278 0.523267,-22.2458 0.152976,-0.15281 0.539052,-0.24092 0.857948,-0.19579 0.53688,0.076 0.591265,0.22303 0.734522,1.98652 0.617061,7.59599 0.420108,24.21929 -0.297192,25.08358 -0.378674,0.45628 -0.825297,0.43425 -1.236992,-0.061 z m 3.223226,0.0433 c -0.616984,-0.74341 -0.835776,-8.18003 -0.569799,-19.36716 0.228623,-9.61602 0.286408,-10.5273 0.686068,-10.81954 0.76202,-0.55721 1.292809,-0.0168 1.483611,1.51023 0.09345,0.7479 0.184162,7.22888 0.201594,14.40214 0.02717,11.17908 -0.02111,13.14694 -0.337866,13.77471 -0.4278,0.8478 -1.009769,1.04646 -1.463608,0.49962 z m 3.469018,0.0449 c -0.144453,-0.17405 -0.391278,-2.2596 -0.548502,-4.63455 -0.343258,-5.18508 0.08626,-26.7776 0.54363,-27.32869 0.365818,-0.44079 0.793744,-0.40428 1.24978,0.10664 0.326565,0.36587 0.4133,1.92565 0.589529,10.60179 0.244868,12.0552 0.244488,12.55252 -0.01317,17.22863 -0.145776,2.6456 -0.296696,3.72105 -0.558988,3.98334 -0.44356,0.44355 -0.916386,0.4596 -1.262274,0.0428 z m -29.806524,-0.14298 c -0.07284,-0.11785 -0.310969,-2.11097 -0.529169,-4.42915 -0.364764,-3.8753 -0.365054,-4.58286 -0.0036,-8.78287 0.366362,-4.25713 0.598349,-5.32305 1.058385,-4.86302 0.101828,0.10183 0.363242,2.19032 0.580919,4.6411 0.349691,3.93709 0.356354,4.92691 0.05722,8.50055 -0.186203,2.22454 -0.392726,4.29282 -0.458939,4.59617 -0.122485,0.56116 -0.465102,0.72509 -0.70481,0.33722 z m -3.021608,-0.52108 c -0.128739,-0.33705 -0.374082,-2.29793 -0.545206,-4.35751 -0.251414,-3.02589 -0.251425,-4.53158 -6.1e-5,-7.84409 0.171092,-2.25468 0.416434,-4.37518 0.545206,-4.71223 0.221173,-0.5789 0.244254,-0.58569 0.41705,-0.12257 0.100606,0.26964 0.327365,2.34432 0.503908,4.61041 0.263795,3.386 0.264285,4.82736 0.0028,8.08922 -0.175032,2.18299 -0.40179,4.1897 -0.503908,4.45934 -0.175561,0.46356 -0.198416,0.45689 -0.41974,-0.12257 z m -3.259067,-0.73538 c -0.02726,-0.0674 -0.229279,-1.77718 -0.448934,-3.79948 -0.361663,-3.32973 -0.364597,-4.01659 -0.03108,-7.27414 0.523179,-5.10994 0.588674,-5.0805 1.377503,0.6193 0.375874,2.71592 0.374585,3.11509 -0.01978,6.1282 -0.37764,2.88531 -0.739373,4.66824 -0.877713,4.32612 z m -3.364363,-5.20888 c -0.37561,-3.34492 0.285861,-8.58316 0.773853,-6.1282 0.597314,3.00492 0.664002,3.8945 0.407316,5.43326 -0.62881,3.76953 -0.823081,3.88382 -1.181169,0.69494 z" - id="path1" - sodipodi:nodetypes="ssssssssscssscsscccsssssscsssccccsssssssssssssssssscssssscccsssssscccsssssccssssssscssssssccssssssssssssssssssssssssssssss" /></g></svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 87.054 87.054"><path d="M34.898 164.033c-.329-.761-.404-21.903-.086-24.39.16-1.255.242-1.41.743-1.41.506 0 .578.145.708 1.41.079.775.272 4.83.429 9.009.244 6.501.23 8.172-.091 11.57-.207 2.186-.448 4.088-.535 4.23-.291.47-.874.262-1.168-.419m10.004.29c-.234-.235-.392-.837-.403-1.533-.01-.63-.109-2.415-.221-3.966-.25-3.453.199-21.563.546-22 .313-.395 1.03-.393 1.36.002.155.188.364 3.838.534 9.324.321 10.402.052 17.691-.673 18.25-.515.399-.678.387-1.143-.078zm13.24-.152c-.345-.49-.389-2.368-.389-16.66 0-13.468.057-16.162.343-16.449.68-.679 4.037-1.286 7.011-1.268 3.363.02 5.171.436 8.09 1.859 2.707 1.32 6.048 4.564 7.41 7.197.936 1.81 1.904 4.898 1.904 6.075 0 .61.068.674.552.519 5.043-1.618 10.092.526 12.35 5.244.967 2.02 1.108 5.089.332 7.224-1.06 2.918-3.019 4.973-5.818 6.103l-1.41.57-14.994.07-14.994.07zm-29.678-.015c-.328-.971-.586-9.477-.377-12.44.129-1.82.238-3.672.242-4.114.009-.812.571-1.316.983-.883.113.12.38 2.095.593 4.39.37 3.996.366 4.354-.108 8.457-.54 4.672-.585 4.896-.969 4.896-.143 0-.307-.138-.364-.306m3.272.245c-.019-.034-.222-2.047-.452-4.474-.383-4.028-.389-5-.07-11.153.192-3.707.392-6.879.445-7.047s.304-.307.56-.307c.526 0 .55.203 1.04 8.95.232 4.145.214 5.582-.121 9.284-.218 2.409-.456 4.476-.53 4.594-.117.191-.786.309-.872.153m6.542-.163c-.597-.966-.712-18.737-.166-25.465.14-1.716.204-1.895.705-1.966.304-.043.567-.043.585 0s.157 4.186.307 9.206c.267 8.934.073 17.387-.416 18.143-.232.358-.815.405-1.015.082m3.208.034c-.064-.104-.244-2.157-.4-4.56-.212-3.287-.212-6.684-.002-13.71.153-5.137.333-9.427.4-9.535.19-.31 1.077-.225 1.183.112.053.169.205 4.43.338 9.47.245 9.28.014 17.445-.512 18.107-.272.343-.827.407-1.007.116m6.921-.214c-.23-.278-.413-1.71-.581-4.568-.303-5.137.09-21.813.523-22.246.153-.153.539-.24.858-.195.537.076.591.223.734 1.986.617 7.596.42 24.22-.297 25.084-.378.456-.825.434-1.237-.061m3.223.043c-.617-.744-.835-8.18-.57-19.367.23-9.616.287-10.528.687-10.82.762-.557 1.293-.017 1.483 1.51.094.748.185 7.23.202 14.403.027 11.179-.021 13.147-.338 13.774-.428.848-1.01 1.047-1.464.5m3.47.045c-.145-.174-.392-2.26-.549-4.635-.343-5.185.086-26.777.544-27.328.365-.441.793-.405 1.25.106.326.366.413 1.926.589 10.602.245 12.055.244 12.553-.013 17.229-.146 2.645-.297 3.72-.56 3.983-.443.444-.916.46-1.262.043m-29.807-.143c-.073-.118-.311-2.111-.53-4.43-.364-3.875-.364-4.582-.003-8.782.367-4.257.599-5.323 1.059-4.863.101.102.363 2.19.58 4.64.35 3.938.357 4.928.058 8.501-.186 2.225-.393 4.293-.46 4.597-.122.56-.464.725-.704.337m-3.022-.521c-.128-.337-.374-2.298-.545-4.358-.251-3.026-.251-4.531 0-7.844.171-2.255.417-4.375.545-4.712.221-.579.245-.586.417-.123.1.27.328 2.345.504 4.61.264 3.387.265 4.828.003 8.09-.175 2.183-.402 4.19-.504 4.46-.175.463-.198.456-.42-.123m-3.259-.736c-.027-.067-.229-1.777-.449-3.8-.361-3.329-.364-4.016-.03-7.273.522-5.11.588-5.08 1.377.619.376 2.716.374 3.115-.02 6.128-.378 2.886-.74 4.668-.878 4.326m-3.364-5.209c-.376-3.344.286-8.583.774-6.128.597 3.005.664 3.895.407 5.434-.629 3.77-.823 3.883-1.181.694" style="fill:#f26e1e;fill-opacity:1;stroke-width:.999996" transform="translate(-12.364 -103.732)"/></svg> \ No newline at end of file diff --git a/src/assets/images/stackOverflow-icon-light.svg b/src/assets/images/stackOverflow-icon-light.svg index 96209c41..6bbf26ec 100644 --- a/src/assets/images/stackOverflow-icon-light.svg +++ b/src/assets/images/stackOverflow-icon-light.svg @@ -1,47 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - width="175.8376" - height="175.8376" - viewBox="0 0 175.8376 175.8376" - version="1.1" - id="svg10" - sodipodi:docname="stackOverflow-icon-light.svg" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xml:space="preserve" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"><defs - id="defs14" /><sodipodi:namedview - id="namedview12" - pagecolor="#a3a3a3" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="1" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="1.9790997" - inkscape:cx="-50.022745" - inkscape:cy="83.371242" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="g8" /><g - fill="none" - fill-rule="evenodd" - id="g8" - transform="translate(39.816113,25.779453)"><polygon - fill="#bbbbbb" - points="88,80 99,80 99,124 0,124 0,80 11,80 11,113 88,113 " - id="polygon4" - transform="matrix(1.1256102,0,0,1.1256102,-6.5518215,-7.7998911)" - style="fill:#ffffff" /><path - fill="#f58025" - fill-rule="nonzero" - d="M 19.323584,78.568179 80.134675,91.349484 82.690935,79.192893 21.879844,66.405962 Z M 27.370571,49.449769 83.702859,75.685493 88.950454,64.41926 32.61704,38.183537 Z m 15.58745,-27.637107 47.75739,39.768934 7.953566,-9.550802 -47.757396,-39.767808 z m 30.827086,-29.3964357 -9.972906,7.41777128 37.086609,49.86453142 9.9729,-7.416645 z M 18.211603,107.01235 H 80.120164 V 94.630637 H 18.211603 Z" - id="path6" - style="fill:#ffffff;stroke-width:1.12561" /></g></svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 175.838 175.838"><path d="M88 80h11v44H0V80h11v33h77z" style="fill:#fff" transform="translate(33.264 17.98)scale(1.12561)"/><path d="m19.324 78.568 60.81 12.781 2.557-12.156L21.88 66.406ZM27.37 49.45l56.332 26.235L88.95 64.42 32.617 38.184Zm15.587-27.637 47.757 39.769 7.954-9.551-47.757-39.768zM73.785-7.584 63.812-.166 100.9 49.699l9.973-7.417zM18.212 107.012H80.12V94.631H18.212Z" style="fill:#fff;stroke-width:1.12561" transform="translate(39.816 25.78)"/></svg> \ No newline at end of file diff --git a/src/assets/images/stackOverflow-icon.svg b/src/assets/images/stackOverflow-icon.svg index b0e08556..de6243f3 100644 --- a/src/assets/images/stackOverflow-icon.svg +++ b/src/assets/images/stackOverflow-icon.svg @@ -1,47 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - width="175.8376" - height="175.8376" - viewBox="0 0 175.8376 175.8376" - version="1.1" - id="svg10" - sodipodi:docname="stackOverflow-icon.svg" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xml:space="preserve" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"><defs - id="defs14" /><sodipodi:namedview - id="namedview12" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="1" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="1.9790997" - inkscape:cx="-12.632006" - inkscape:cy="84.381802" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="g8" /><g - fill="none" - fill-rule="evenodd" - id="g8" - transform="translate(39.816113,25.779453)"><polygon - fill="#bbbbbb" - points="88,80 99,80 99,124 0,124 0,80 11,80 11,113 88,113 " - id="polygon4" - transform="matrix(1.1256102,0,0,1.1256102,-6.5518215,-7.7998911)" - style="fill:#000000" /><path - fill="#f58025" - fill-rule="nonzero" - d="M 19.323584,78.568179 80.134675,91.349484 82.690935,79.192893 21.879844,66.405962 Z M 27.370571,49.449769 83.702859,75.685493 88.950454,64.41926 32.61704,38.183537 Z m 15.58745,-27.637107 47.75739,39.768934 7.953566,-9.550802 -47.757396,-39.767808 z m 30.827086,-29.3964357 -9.972906,7.41777128 37.086609,49.86453142 9.9729,-7.416645 z M 18.211603,107.01235 H 80.120164 V 94.630637 H 18.211603 Z" - id="path6" - style="fill:#000000;stroke-width:1.12561" /></g></svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 175.838 175.838"><path d="M88 80h11v44H0V80h11v33h77z" style="fill:#000" transform="translate(33.264 17.98)scale(1.12561)"/><path fill="#f58025" d="m19.324 78.568 60.81 12.781 2.557-12.156L21.88 66.406ZM27.37 49.45l56.332 26.235L88.95 64.42 32.617 38.184Zm15.587-27.637 47.757 39.769 7.954-9.551-47.757-39.768zM73.785-7.584 63.812-.166 100.9 49.699l9.973-7.417zM18.212 107.012H80.12V94.631H18.212Z" style="fill:#000;stroke-width:1.12561" transform="translate(39.816 25.78)"/></svg> diff --git a/src/assets/images/tekstowo-icon.svg b/src/assets/images/tekstowo-icon.svg index c5bc024d..1c991476 100644 --- a/src/assets/images/tekstowo-icon.svg +++ b/src/assets/images/tekstowo-icon.svg @@ -1,115 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - viewBox="0 0 100 100" - version="1.1" - id="svg12" - sodipodi:docname="tekstowo-icon.svg" - width="100" - height="100" - inkscape:version="1.3 (0e150ed6c4, 2023-07-21)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs12" /> - <sodipodi:namedview - id="namedview12" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - inkscape:zoom="3.3499322" - inkscape:cx="35.821621" - inkscape:cy="41.34412" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="logo_1_" /> - <style - id="style1">.st0{fill:#62ae25}.st1{fill:#999}</style> - <g - id="logo_1_" - transform="translate(0,-24)"> - <circle - style="fill:#ff6600;fill-opacity:1;stroke-width:4.40315;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.53144" - id="path12" - cx="50" - cy="74" - r="50" /> - <linearGradient - id="SVGID_1_" - gradientUnits="userSpaceOnUse" - x1="39.888" - y1="92.283997" - x2="52.096001" - y2="125.824" - gradientTransform="translate(0,1.24036)"> - <stop - offset="0" - stop-color="#8fe132" - id="stop5" /> - <stop - offset=".362" - stop-color="#65bd23" - id="stop6" /> - <stop - offset=".668" - stop-color="#49a519" - id="stop7" /> - <stop - offset=".844" - stop-color="#3e9c15" - id="stop8" /> - </linearGradient> - <path - d="m 57.782805,105.82283 c -4.54864,6.22445 -11.4913,8.91772 -15.381584,6.04489 -3.890284,-2.87282 -3.41148,-10.29428 1.137159,-16.518734 4.548641,-6.224454 11.491301,-8.917729 15.381584,-6.044903 3.950135,2.932676 3.411481,10.294291 -1.137159,16.518747 z" - fill="url(#SVGID_1_)" - id="path8" - style="fill:#8fe132;fill-opacity:1;stroke-width:0.999999" /> - <linearGradient - id="SVGID_2_" - gradientUnits="userSpaceOnUse" - x1="-3.5739999" - y1="24.316" - x2="82.773003" - y2="74.168999" - gradientTransform="translate(0,1.24036)"> - <stop - offset=".184" - stop-color="#8fe132" - id="stop9" /> - <stop - offset="1" - stop-color="#3e9c15" - id="stop10" /> - </linearGradient> - <path - d="M 65.563373,59.857627 C 61.792791,55.308986 56.585794,51.837656 51.43865,50.161842 42.820174,47.348868 40.665555,45.912455 36.59572,42.680526 34.26155,40.82516 32.645587,37.29398 30.670519,36.276521 c -0.957609,-0.478804 -1.556114,-0.05985 -1.915217,0.299252 -0.538654,0.538655 -1.077309,1.675815 -0.418954,3.112227 5.206996,12.389059 25.855425,48.538774 25.855425,48.538774 1.795516,-0.179552 3.41148,0.1197 4.728191,1.077309 0.598505,0.478804 1.07731,1.017459 1.496263,1.675815 L 42.461071,57.463605 c 0,0 -2.154619,-2.992526 1.615964,-3.591031 2.693275,-0.418954 8.319223,0.658356 11.251898,2.453871 3.172078,1.975069 10.533693,8.199522 11.970105,16.458894 0.658355,3.830433 0,5.8055 0.239402,9.21698 0.119701,1.556113 1.735664,3.052376 3.231928,0.957608 0.778057,-1.077309 1.19701,-5.027443 1.19701,-8.13967 0,-4.069837 -2.932675,-10.713244 -6.404005,-14.96263 z" - fill="url(#SVGID_2_)" - id="path10" - style="fill:#8fe132;fill-opacity:1;stroke-width:0.999999" /> - <radialGradient - id="SVGID_3_" - cx="21.504999" - cy="103.861" - r="14.934" - gradientTransform="matrix(0.2966,0.4025,-0.805,0.5933,123.22,30.33236)" - gradientUnits="userSpaceOnUse"> - <stop - offset="0" - stop-color="#f4ff72" - id="stop11" /> - <stop - offset="1" - stop-color="#73c928" - stop-opacity="0" - id="stop12" /> - </radialGradient> - </g> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><g transform="translate(0 -24)"><circle cx="50" cy="74" r="50" style="fill:#f60;fill-opacity:1;stroke-width:4.40315;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:.53144"/><linearGradient id="a" x1="39.888" x2="52.096" y1="92.284" y2="125.824" gradientTransform="translate(0 1.24)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#8fe132"/><stop offset=".362" stop-color="#65bd23"/><stop offset=".668" stop-color="#49a519"/><stop offset=".844" stop-color="#3e9c15"/></linearGradient><path fill="url(#a)" d="M57.783 105.823c-4.549 6.224-11.491 8.918-15.382 6.045s-3.411-10.295 1.137-16.519c4.549-6.224 11.492-8.918 15.382-6.045 3.95 2.933 3.411 10.294-1.137 16.519" style="fill:#8fe132;fill-opacity:1;stroke-width:.999999"/><linearGradient id="b" x1="-3.574" x2="82.773" y1="24.316" y2="74.169" gradientTransform="translate(0 1.24)" gradientUnits="userSpaceOnUse"><stop offset=".184" stop-color="#8fe132"/><stop offset="1" stop-color="#3e9c15"/></linearGradient><path fill="url(#b)" d="M65.563 59.858c-3.77-4.549-8.977-8.02-14.124-9.696-8.619-2.813-10.773-4.25-14.843-7.481-2.334-1.856-3.95-5.387-5.925-6.404-.958-.48-1.557-.06-1.916.299-.538.538-1.077 1.676-.419 3.112 5.207 12.39 25.856 48.539 25.856 48.539 1.795-.18 3.411.12 4.728 1.077a6.7 6.7 0 0 1 1.496 1.676L42.461 57.464s-2.155-2.993 1.616-3.591c2.693-.42 8.32.658 11.252 2.453 3.172 1.976 10.534 8.2 11.97 16.46.658 3.83 0 5.805.24 9.216.12 1.556 1.735 3.053 3.231.958.778-1.077 1.197-5.028 1.197-8.14 0-4.07-2.932-10.713-6.404-14.962" style="fill:#8fe132;fill-opacity:1;stroke-width:.999999"/></g></svg> \ No newline at end of file diff --git a/src/assets/images/tenor-icon.svg b/src/assets/images/tenor-icon.svg new file mode 100644 index 00000000..0264edea --- /dev/null +++ b/src/assets/images/tenor-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 3704.895 3733.965"><path fill="#007add" d="M1899.862 1243.433h442.598c60.892 0 110.508 19.733 142.081 74.424 52.435 91.902-1.127 202.974-105.997 218.761-16.351 2.255-33.83 2.82-50.744 2.82h-427.938v1037.987c0 67.659 10.712 132.498 56.382 187.752 37.212 45.105 87.392 64.275 142.082 72.732 81.754 12.968 162.943 6.202 242.442-18.606 75.551-24.244 149.975 9.585 175.347 80.063 25.936 71.604-10.712 142.082-80.626 175.91-94.721 46.234-193.953 66.531-298.823 72.17-271.76 13.531-515.894-183.805-557.053-453.31-5.638-34.957-7.33-71.041-7.33-106.562-.563-335.472-.563-670.943-.563-1006.415v-38.904c-12.404-.564-22.553-1.691-32.138-1.691-62.02 0-124.04 1.127-186.06-.564-101.487-2.82-166.89-78.935-151.667-174.784 10.713-67.658 72.169-118.401 149.412-120.657 60.892-1.691 122.348-.564 183.24-.564 37.213 0 37.213 0 37.213-38.903V813.238c0-95.849 69.35-169.145 161.816-170.273s165.198 72.733 165.762 169.71c.564 131.37 0 263.303 0 394.672.564 10.713.564 21.99.564 36.085"/></svg> \ No newline at end of file diff --git a/src/assets/images/textStorage-icon-light.svg b/src/assets/images/textStorage-icon-light.svg index 3ca7c595..58a3edda 100644 --- a/src/assets/images/textStorage-icon-light.svg +++ b/src/assets/images/textStorage-icon-light.svg @@ -1,40 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - height="24px" - viewBox="0 0 24 24" - width="24px" - fill="currentColor" - version="1.1" - id="svg1191" - sodipodi:docname="textStorage-icon-white.svg" - inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs1195" /> - <sodipodi:namedview - id="namedview1193" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="32.416667" - inkscape:cx="9.0077121" - inkscape:cy="12" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg1191" /> - <path - d="M19 2h-4.18C14.4.84 13.3 0 12 0c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm7 18H5V4h2v3h10V4h2v16z" - id="path1189" - style="fill:#ffffff" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="#fff" d="M19 2h-4.18C14.4.84 13.3 0 12 0S9.6.84 9.18 2H5c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2m-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1m7 18H5V4h2v3h10V4h2z"/></svg> diff --git a/src/assets/images/textStorage-icon.svg b/src/assets/images/textStorage-icon.svg index 6eccd96b..d6073d6f 100644 --- a/src/assets/images/textStorage-icon.svg +++ b/src/assets/images/textStorage-icon.svg @@ -1,3 +1 @@ -<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> - <path d="M19 2h-4.18C14.4.84 13.3 0 12 0c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm7 18H5V4h2v3h10V4h2v16z"></path> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 2h-4.18C14.4.84 13.3 0 12 0S9.6.84 9.18 2H5c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2m-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1m7 18H5V4h2v3h10V4h2z"/></svg> \ No newline at end of file diff --git a/src/assets/images/threads-icon-light.svg b/src/assets/images/threads-icon-light.svg new file mode 100644 index 00000000..809c12d8 --- /dev/null +++ b/src/assets/images/threads-icon-light.svg @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Generator: Adobe Illustrator 25.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> +<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" + viewBox="0 0 878 1000" style="enable-background:new 0 0 878 1000;" xml:space="preserve"> +<style type="text/css"> + .st0{fill:#FFFFFF;} +</style> +<g> + <path class="st0" d="M446.7,1000h-0.3c-149.2-1-263.9-50.2-341-146.2C36.9,768.3,1.5,649.4,0.3,500.4v-0.7 + c1.2-149.1,36.6-267.9,105.2-353.4C182.5,50.2,297.3,1,446.4,0h0.3h0.3c114.4,0.8,210.1,30.2,284.4,87.4 + c69.9,53.8,119.1,130.4,146.2,227.8l-85,23.7c-46-165-162.4-249.3-346-250.6c-121.2,0.9-212.9,39-272.5,113.2 + C118.4,271,89.6,371.4,88.5,500c1.1,128.6,29.9,229,85.7,298.5c59.6,74.3,151.3,112.4,272.5,113.2c109.3-0.8,181.6-26.3,241.7-85.2 + c68.6-67.2,67.4-149.7,45.4-199.9c-12.9-29.6-36.4-54.2-68.1-72.9c-8,56.3-25.9,101.9-53.5,136.3c-36.9,45.9-89.2,71-155.4,74.6 + c-50.1,2.7-98.4-9.1-135.8-33.4c-44.3-28.7-70.2-72.5-73-123.5c-2.7-49.6,17-95.2,55.4-128.4c36.7-31.7,88.3-50.3,149.3-53.8 + c44.9-2.5,87-0.5,125.8,5.9c-5.2-30.9-15.6-55.5-31.2-73.2c-21.4-24.4-54.5-36.8-98.3-37.1c-0.4,0-0.8,0-1.2,0 + c-35.2,0-83,9.7-113.4,55L261.2,327c40.8-60.6,107-94,186.6-94c0.6,0,1.2,0,1.8,0c133.1,0.8,212.4,82.3,220.3,224.5 + c4.5,1.9,9,3.9,13.4,5.9c62.1,29.2,107.5,73.4,131.4,127.9c33.2,75.9,36.3,199.6-64.5,298.3C673.1,965,579.6,999.1,447,1000 + L446.7,1000L446.7,1000z M488.5,512.9c-10.1,0-20.3,0.3-30.8,0.9c-76.5,4.3-124.2,39.4-121.5,89.3c2.8,52.3,60.5,76.6,116,73.6 + c51-2.7,117.4-22.6,128.6-154.6C552.6,516,521.7,512.9,488.5,512.9z"/> +</g> +</svg> diff --git a/src/assets/images/threads-icon.svg b/src/assets/images/threads-icon.svg new file mode 100644 index 00000000..e99823bb --- /dev/null +++ b/src/assets/images/threads-icon.svg @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Generator: Adobe Illustrator 25.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> +<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" + viewBox="0 0 878 1000" style="enable-background:new 0 0 878 1000;" xml:space="preserve"> +<g> + <path d="M446.7,1000h-0.3c-149.2-1-263.9-50.2-341-146.2C36.9,768.3,1.5,649.4,0.3,500.4v-0.7c1.2-149.1,36.6-267.9,105.2-353.4 + C182.5,50.2,297.3,1,446.4,0h0.3h0.3c114.4,0.8,210.1,30.2,284.4,87.4c69.9,53.8,119.1,130.4,146.2,227.8l-85,23.7 + c-46-165-162.4-249.3-346-250.6c-121.2,0.9-212.9,39-272.5,113.2C118.4,271,89.6,371.4,88.5,500c1.1,128.6,29.9,229,85.7,298.5 + c59.6,74.3,151.3,112.4,272.5,113.2c109.3-0.8,181.6-26.3,241.7-85.2c68.6-67.2,67.4-149.7,45.4-199.9 + c-12.9-29.6-36.4-54.2-68.1-72.9c-8,56.3-25.9,101.9-53.5,136.3c-36.9,45.9-89.2,71-155.4,74.6c-50.1,2.7-98.4-9.1-135.8-33.4 + c-44.3-28.7-70.2-72.5-73-123.5c-2.7-49.6,17-95.2,55.4-128.4c36.7-31.7,88.3-50.3,149.3-53.8c44.9-2.5,87-0.5,125.8,5.9 + c-5.2-30.9-15.6-55.5-31.2-73.2c-21.4-24.4-54.5-36.8-98.3-37.1c-0.4,0-0.8,0-1.2,0c-35.2,0-83,9.7-113.4,55L261.2,327 + c40.8-60.6,107-94,186.6-94c0.6,0,1.2,0,1.8,0c133.1,0.8,212.4,82.3,220.3,224.5c4.5,1.9,9,3.9,13.4,5.9 + c62.1,29.2,107.5,73.4,131.4,127.9c33.2,75.9,36.3,199.6-64.5,298.3C673.1,965,579.6,999.1,447,1000L446.7,1000L446.7,1000z + M488.5,512.9c-10.1,0-20.3,0.3-30.8,0.9c-76.5,4.3-124.2,39.4-121.5,89.3c2.8,52.3,60.5,76.6,116,73.6 + c51-2.7,117.4-22.6,128.6-154.6C552.6,516,521.7,512.9,488.5,512.9z"/> +</g> +</svg> diff --git a/src/assets/images/tiktok-icon.png b/src/assets/images/tiktok-icon.png deleted file mode 100644 index 6931e787..00000000 --- a/src/assets/images/tiktok-icon.png +++ /dev/null Binary files differdiff --git a/src/assets/images/tiktok-icon.svg b/src/assets/images/tiktok-icon.svg new file mode 100644 index 00000000..3ed3c6c1 --- /dev/null +++ b/src/assets/images/tiktok-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 398.67 398.67"><circle cx="199.34" cy="199.34" r="199.34"/><path fill="#25f4ee" d="M171.6 165.74v-10.88c-3.73-.51-7.52-.83-11.39-.83-46.6 0-84.51 37.91-84.51 84.51 0 28.59 14.29 53.89 36.08 69.19-14.07-15.1-22.7-35.33-22.7-57.54 0-45.93 36.84-83.39 82.52-84.46Z"/><path fill="#25f4ee" d="M173.59 288.8c20.79 0 37.75-16.54 38.52-37.14l.07-184.01h33.62c-.7-3.78-1.08-7.67-1.08-11.65H198.8l-.07 184.01c-.77 20.61-17.73 37.14-38.52 37.14-6.46 0-12.55-1.62-17.9-4.43 7.02 9.72 18.41 16.09 31.29 16.09ZM308.6 130.1v-10.23c-12.82 0-24.77-3.81-34.79-10.34 8.92 10.24 21.04 17.63 34.79 20.57"/><path fill="#fe2c55" d="M273.81 109.52c-9.77-11.22-15.71-25.87-15.71-41.88h-12.3c3.24 17.49 13.62 32.5 28.01 41.88M160.21 199.95c-21.28 0-38.6 17.31-38.6 38.6 0 14.82 8.41 27.7 20.69 34.16-4.58-6.34-7.31-14.11-7.31-22.51 0-21.28 17.32-38.6 38.6-38.6 3.97 0 7.78.66 11.39 1.78v-46.87c-3.73-.51-7.52-.83-11.39-.83-.67 0-1.33.04-2 .05v36c-3.6-1.13-7.42-1.78-11.39-1.78Z"/><path fill="#fe2c55" d="M308.6 130.1v35.69c-23.81 0-45.87-7.62-63.88-20.54v93.31c0 46.6-37.91 84.51-84.51 84.51-18.01 0-34.71-5.68-48.43-15.32 15.44 16.57 37.43 26.97 61.82 26.97 46.6 0 84.51-37.91 84.51-84.51V156.9c18.01 12.93 40.07 20.54 63.88 20.54v-45.92c-4.59 0-9.07-.5-13.38-1.42Z"/><path fill="#fff" d="M244.72 238.55v-93.31c18.01 12.93 40.07 20.54 63.88 20.54v-35.69c-13.75-2.94-25.87-10.33-34.79-20.57-14.39-9.38-24.77-24.39-28.01-41.88h-33.62l-.07 184.01c-.77 20.61-17.73 37.14-38.52 37.14-12.88 0-24.27-6.36-31.29-16.09-12.29-6.47-20.69-19.34-20.69-34.16 0-21.28 17.32-38.6 38.6-38.6 3.97 0 7.78.66 11.39 1.78v-36c-45.68 1.07-82.52 38.53-82.52 84.46 0 22.22 8.63 42.44 22.7 57.54 13.73 9.64 30.42 15.32 48.43 15.32 46.6 0 84.51-37.91 84.51-84.51Z"/></svg> \ No newline at end of file diff --git a/src/assets/images/translate-icon-light.svg b/src/assets/images/translate-icon-light.svg index f884ee14..cf1a6da7 100644 --- a/src/assets/images/translate-icon-light.svg +++ b/src/assets/images/translate-icon-light.svg @@ -1,40 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - height="24px" - viewBox="0 0 24 24" - width="24px" - fill="currentColor" - version="1.1" - id="svg1062" - sodipodi:docname="translate-icon-white.svg" - inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs1066" /> - <sodipodi:namedview - id="namedview1064" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="32.416667" - inkscape:cx="9.0077121" - inkscape:cy="12" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg1062" /> - <path - d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z" - id="path1060" - style="fill:#ffffff" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="#fff" d="m12.87 15.07-2.54-2.51.03-.03A17.5 17.5 0 0 0 14.07 6H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2zm-2.62 7 1.62-4.33L19.12 17z"/></svg> diff --git a/src/assets/images/translate-icon.svg b/src/assets/images/translate-icon.svg index 30f9c1b7..a79f1abe 100644 --- a/src/assets/images/translate-icon.svg +++ b/src/assets/images/translate-icon.svg @@ -1,3 +1 @@ -<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"> - <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m12.87 15.07-2.54-2.51.03-.03A17.5 17.5 0 0 0 14.07 6H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2zm-2.62 7 1.62-4.33L19.12 17z"/></svg> \ No newline at end of file diff --git a/src/assets/images/tumblr-icon.svg b/src/assets/images/tumblr-icon.svg new file mode 100644 index 00000000..a7e084ad --- /dev/null +++ b/src/assets/images/tumblr-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256"><path fill="#314358" d="M178.348 183.74c-3.767 1.796-10.971 3.36-16.344 3.494-16.219.434-19.366-11.393-19.497-19.966v-63.066h40.684V73.528h-40.543V21.922h-29.669c-.488 0-1.34.428-1.461 1.512-1.736 15.795-9.126 43.515-39.861 54.6V104.2h20.504v66.19c0 22.664 16.718 54.863 60.85 54.103 14.89-.255 31.428-6.488 35.08-11.869z"/></svg> \ No newline at end of file diff --git a/src/assets/images/twitch-icon.svg b/src/assets/images/twitch-icon.svg index 81639cfc..8b49d5fe 100644 --- a/src/assets/images/twitch-icon.svg +++ b/src/assets/images/twitch-icon.svg @@ -1,12 +1 @@ -<?xml version="1.0" encoding="UTF-8"?> -<svg width="118px" height="138px" viewBox="0 0 118 138" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> - <!-- Generator: Sketch 57.1 (83088) - https://sketch.com --> - <title>logo / glitch / purple</title> - <desc>Created with Sketch.</desc> - <g id="logo-/-glitch-/-purple" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> - <g id="logo-/-glitch" transform="translate(0.000000, 0.000000)"> - <polygon id="Fill-1" fill="#FFFFFF" points="107.8058 63.7036 88.2038 83.3046 68.6038 83.3046 51.4518 100.4556 51.4518 83.3046 29.4018 83.3046 29.4018 9.8006 107.8058 9.8006"/> - <path d="M117.605,0 L117.605,68.605 L73.503,112.704 L53.904,112.704 L29.401,137.207 L29.401,112.704 L8.52651283e-14,112.704 L8.52651283e-14,24.502 L24.5,0 L117.605,0 Z M107.805,9.801 L29.401,9.801 L29.401,83.304 L51.452,83.304 L51.452,100.454 L68.605,83.304 L88.206,83.304 L107.805,63.703 L107.805,9.801 Z M93.1042,26.9518 L93.1042,56.3518 L83.3042,56.3518 L83.3042,26.9518 L93.1042,26.9518 Z M66.1532,26.9518 L66.1532,56.3518 L56.3532,56.3518 L56.3532,26.9518 L66.1532,26.9518 Z" id="Combined-Shape" fill="#9146FF"/> - </g> - </g> -</svg> \ No newline at end of file +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 118 138"><path fill="#FFF" d="m107.806 63.704-19.602 19.6h-19.6l-17.152 17.152V83.305h-22.05V9.8h78.404z"/><path fill="#9146FF" d="M117.605 0v68.605l-44.102 44.099H53.904l-24.503 24.503v-24.503H0V24.502L24.5 0zm-9.8 9.801H29.401v73.503h22.051v17.15l17.153-17.15h19.601l19.599-19.601zm-14.7 17.15v29.4h-9.8v-29.4zm-26.952 0v29.4h-9.8v-29.4z"/></svg> \ No newline at end of file diff --git a/src/assets/images/twitter-icon.png b/src/assets/images/twitter-icon.png deleted file mode 100644 index 1b05dd41..00000000 --- a/src/assets/images/twitter-icon.png +++ /dev/null Binary files differdiff --git a/src/assets/images/twitter-icon.svg b/src/assets/images/twitter-icon.svg new file mode 100644 index 00000000..1f44830b --- /dev/null +++ b/src/assets/images/twitter-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000"><path d="M500 0c276.1 0 500 223.9 500 500s-223.9 500-500 500S0 776.1 0 500 223.9 0 500 0" style="fill:#1da1f2"/><path d="M384 754c235.8 0 364.9-195.4 364.9-364.9 0-5.5 0-11.1-.4-16.6 25.1-18.2 46.8-40.6 64-66.4-23.4 10.4-48.2 17.2-73.6 20.2 26.8-16 46.8-41.2 56.4-70.9-25.2 14.9-52.7 25.5-81.4 31.1-48.6-51.6-129.8-54.1-181.4-5.6-33.3 31.3-47.4 78-37.1 122.5-103.1-5.2-199.2-53.9-264.3-134-34 58.6-16.7 133.5 39.7 171.2-20.4-.6-40.4-6.1-58.2-16v1.6c0 61 43 113.6 102.9 125.7-18.9 5.1-38.7 5.9-57.9 2.2 16.8 52.2 64.9 88 119.8 89.1-45.4 35.7-101.5 55.1-159.2 55-10.2 0-20.4-.6-30.5-1.9C246.1 734 314.4 754 384 753.9" style="fill:#fff"/><path d="M500 0c276.1 0 500 223.9 500 500s-223.9 500-500 500S0 776.1 0 500 223.9 0 500 0" style="fill:none"/></svg> diff --git a/src/assets/images/ultimateGuitar-icon.svg b/src/assets/images/ultimateGuitar-icon.svg new file mode 100644 index 00000000..5f587c3c --- /dev/null +++ b/src/assets/images/ultimateGuitar-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40" ><path fill="#ffd706" d="m5 3.4 3.25 9.15C9.2 9.85 11.7 6.8 15.8 6.8c4.3 0 6.95 3.15 7.45 6.6h6.8L33.25 1 25.7 4.9c-1.8-1.5-4.15-2.35-6.7-2.35-3.45 0-6 1.4-7.7 3.3L5 3.4zM18.5 21.65 36 13.4v14.9l-3.65-1.4C30.3 33.15 25.6 37.6 18.4 37.6c-8 0-13.6-6.25-13.6-13.9 0-2.25.45-4.1 1.25-5.9h.1a13.79 13.79 0 0 0-.65 4.3c0 6.05 4.6 10.6 10.55 10.6 5.3 0 8.7-3.7 10.3-8.05l-7.85-3z"></path></svg> diff --git a/src/assets/images/urbanDictionary-icon.svg b/src/assets/images/urbanDictionary-icon.svg index 2172e286..8bf07b0f 100644 --- a/src/assets/images/urbanDictionary-icon.svg +++ b/src/assets/images/urbanDictionary-icon.svg @@ -1,49 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - width="181.72905mm" - height="181.81786mm" - viewBox="0 0 181.72905 181.81786" - version="1.1" - id="svg5" - xml:space="preserve" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - sodipodi:docname="urban-dictionary-icon.svg" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview - id="namedview7" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - inkscape:document-units="mm" - showgrid="false" - inkscape:zoom="0.70710678" - inkscape:cx="390.32294" - inkscape:cy="346.48232" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="layer1" /><defs - id="defs2" /><g - inkscape:label="Layer 1" - inkscape:groupmode="layer" - id="layer1" - transform="translate(208.04028,-57.653256)"><circle - style="fill:#134fe6;fill-opacity:1;fill-rule:evenodd;stroke-width:1.84677;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.411765;paint-order:stroke fill markers;stop-color:#000000" - id="path1249" - cx="-117.17576" - cy="148.56218" - r="90.864502" /><path - style="fill:#ffffff;fill-opacity:1;stroke-width:0.264583" - d="m -92.88544,183.05844 c 0.68219,-0.20162 1.95472,-0.57194 2.82784,-0.82295 0.87313,-0.25101 3.20273,-1.13791 5.17689,-1.9709 l 3.5894,-1.51453 3.42206,1.93686 c 1.88214,1.06528 3.55632,1.93855 3.7204,1.9406 0.16408,0.002 0.45492,-0.18494 0.6463,-0.41554 0.36781,-0.44319 0.60929,-0.4324 4.61835,0.20634 1.77927,0.28348 1.96688,0.26015 4.38376,-0.54503 1.96765,-0.65552 2.73994,-1.06136 3.499,-1.83871 0.90519,-0.927 0.97405,-1.11072 0.97405,-2.599 0,-1.99637 -0.35098,-2.34959 -2.55087,-2.56706 -2.07362,-0.205 -4.12628,-0.97564 -6.08667,-2.28515 -2.92704,-1.95523 -2.63971,-1.22615 -3.80839,-9.66358 -0.42328,-3.05594 -1.03085,-6.72247 -1.35015,-8.14786 -0.5653,-2.52358 -0.56841,-2.63009 -0.11848,-4.05742 0.44091,-1.39874 0.44062,-1.4895 -0.006,-1.98348 -0.4488,-0.49592 -0.44548,-0.60503 0.0791,-2.5971 0.53754,-2.0414 0.53838,-2.08862 0.0459,-2.58108 -0.49246,-0.49246 -0.49193,-0.54879 0.0287,-3.07911 l 0.53033,-2.57747 -0.55421,-1.60143 -0.5542,-1.60143 0.58409,-4.61759 0.58409,-4.61758 -0.6048,-1.84481 -0.6048,-1.84481 0.47308,-2.33036 0.47308,-2.33036 -0.92818,-1.45097 -0.92817,-1.45097 -2.44054,-0.32493 c -2.18714,-0.2912 -2.49076,-0.27949 -2.92419,0.11275 -0.45007,0.4073 -0.81959,0.40515 -5.32295,-0.0311 -4.35016,-0.4214 -4.93374,-0.42838 -5.77356,-0.0691 -0.90037,0.38522 -0.94679,0.47429 -1.2797,2.45557 -0.2919,1.73721 -0.28841,2.11288 0.0226,2.42384 0.51498,0.51499 6.81817,1.70933 9.16969,1.7375 1.88356,0.0226 1.9826,0.0564 2.85685,0.97569 0.89331,0.93934 0.90417,0.97927 0.79674,2.92944 -0.14992,2.72134 0.24398,5.87645 0.91074,7.29492 0.30655,0.65216 0.66105,1.24983 0.78777,1.32814 0.12672,0.0783 -0.18626,0.96977 -0.69551,1.98101 -0.85951,1.70675 -0.98734,1.8385 -1.78248,1.83713 -1.36591,-0.002 -2.74087,-0.47103 -6.41282,-2.18588 -3.04934,-1.42409 -3.66921,-1.61996 -5.46358,-1.72633 -11.09549,-0.65777 -20.07107,10.86824 -20.14878,25.8741 -0.0426,8.21439 2.19851,14.07974 7.33403,19.1948 1.93781,1.93008 2.83896,2.60777 4.65229,3.49867 2.2073,1.08444 4.69527,1.84711 6.16799,1.89074 0.40922,0.0121 1.30219,-0.14291 1.98438,-0.34452 z m -5.13478,-12.12777 c -5.6118,-5.77477 -7.06153,-8.06136 -7.21295,-11.37659 -0.0713,-1.56238 0.008,-2.22103 0.32524,-2.70546 0.37566,-0.57333 0.3786,-0.75637 0.0282,-1.74961 -0.59429,-1.68441 -0.51645,-5.11525 0.14716,-6.48609 1.15063,-2.37686 5.91432,-7.16079 8.37801,-8.41359 1.06013,-0.53908 1.81062,-0.5387 5.18447,0.003 l 2.70002,0.43322 1.59462,1.55115 c 1.34689,1.31017 1.74283,1.55115 2.54861,1.55115 0.88347,0 1.03736,0.12796 2.08186,1.73112 l 1.12787,1.73112 -0.48331,1.59628 -0.48331,1.59627 0.9803,4.36848 0.9803,4.36848 -0.79735,1.39362 c -1.02721,1.79538 -2.00858,4.4391 -2.24022,6.03494 -0.18185,1.2529 -0.18559,1.25677 -1.21265,1.25677 -0.97505,0 -1.11449,0.1107 -2.60348,2.06671 l -1.57324,2.0667 -2.99185,1.04215 c -1.64552,0.57318 -3.06603,1.07517 -3.1567,1.11553 -0.0907,0.0404 -1.58538,-1.38839 -3.32157,-3.175 z m -19.68634,11.71535 c 1.23693,-0.27661 3.1351,-0.78305 4.21816,-1.12541 l 1.9692,-0.62247 0.46592,-1.84542 c 0.25626,-1.01499 0.53197,-2.10824 0.6127,-2.42946 0.1302,-0.51806 -0.33401,-0.87085 -4.1092,-3.12288 -6.00974,-3.58503 -5.81246,-3.50514 -6.93817,-2.80941 l -0.92108,0.56926 -0.15342,-0.86293 c -0.0844,-0.47461 -0.64481,-4.35625 -1.2454,-8.62587 l -1.09199,-7.76296 0.55393,-0.38799 c 0.68655,-0.48087 0.68727,-0.86462 0.01,-5.05871 l -0.54444,-3.36906 0.72354,-4.39218 0.72354,-4.39218 -0.59717,-1.47134 c -0.53252,-1.31205 -0.73625,-1.53117 -1.88178,-2.02397 -1.59219,-0.68494 -1.72505,-0.68434 -3.40903,0.0155 l -1.36704,0.56812 -2.94627,-1.0976 -2.94628,-1.09761 -3.01817,1.36417 c -2.67045,1.20701 -3.00058,1.42804 -2.86557,1.91855 0.0839,0.30491 0.22727,1.00087 0.31855,1.54657 l 0.16597,0.99219 h 4.53307 4.53307 l 1.78311,1.19619 c 1.69264,1.13551 1.78312,1.24864 1.78312,2.22976 0,0.78381 -0.15783,1.1577 -0.65313,1.54731 -0.6238,0.49068 -0.67774,0.7737 -1.2012,6.30305 -0.92818,9.80445 -2.13114,16.60659 -3.38374,19.13346 -0.89057,1.79654 -7.59176,4.73501 -12.19627,5.34806 l -2.33173,0.31044 -2.96161,-1.01375 c -1.62888,-0.55757 -3.02706,-1.11967 -3.10706,-1.24912 -0.21158,-0.34235 -1.59518,-8.8909 -1.96226,-12.12387 -0.28469,-2.50731 -0.2618,-3.04476 0.24666,-5.79073 l 0.56049,-3.02691 -0.56148,-0.59767 -0.56149,-0.59767 0.82802,-4.31292 c 1.38272,-7.20225 1.4423,-7.90988 0.80259,-9.53303 -0.30228,-0.76696 -0.57605,-1.42098 -0.60838,-1.45337 -0.0323,-0.0324 -1.83807,-0.54767 -4.01275,-1.14507 l -3.95396,-1.08618 -3.70202,0.15973 -3.70202,0.15973 -1.25892,1.23998 c -0.69243,0.68197 -1.25894,1.36996 -1.25894,1.52884 0,0.64285 1.59398,2.77373 2.07486,2.77373 0.28355,0 0.81568,0.45695 1.23243,1.05833 0.84769,1.22322 1.11917,1.26559 4.25909,0.66482 1.90888,-0.36522 2.09325,-0.36047 2.56542,0.0661 0.88925,0.80347 1.78372,2.92924 2.0056,4.76647 0.21303,1.7639 0.17761,2.31392 -0.50146,7.78673 -0.31701,2.55492 -0.30438,3.0901 0.12863,5.45009 0.45984,2.50619 0.46142,2.96551 0.0374,10.85015 l -0.4428,8.23318 0.67489,1.33183 c 0.37119,0.73251 0.8152,1.33183 0.98669,1.33183 0.17149,0 0.64573,-0.31993 1.05387,-0.71096 0.40815,-0.39103 0.74209,-0.56996 0.74209,-0.39764 0,0.51407 1.86028,2.41461 3.02057,3.08594 0.59426,0.34383 2.28141,0.99528 3.74922,1.44768 l 2.66876,0.82255 6.67135,-2.38488 6.67135,-2.38487 1.77239,0.89212 c 2.24347,1.12924 5.73355,2.36338 9.01072,3.18632 4.24708,1.06649 5.16791,1.11424 8.2398,0.42726 z" - id="path302" - sodipodi:nodetypes="csscscsssssssssscssscccccccccccssscsccssssscsccsssccccccssccssscccccsssscsscccscssssccscsccccssscccscscccsssssscsssscccsscsccccsssscsssccsssssscccsscc" /></g></svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 181.729 181.818"><g transform="translate(208.04 -57.653)"><circle cx="-117.176" cy="148.562" r="90.865" style="fill:#134fe6;fill-opacity:1;fill-rule:evenodd;stroke-width:1.84677;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:.411765;paint-order:stroke fill markers;stop-color:#000"/><path d="M-92.885 183.058a487 487 0 0 1 2.827-.823c.874-.25 3.203-1.137 5.177-1.97l3.59-1.515 3.422 1.937c1.882 1.065 3.556 1.938 3.72 1.94s.455-.184.646-.415c.368-.443.61-.432 4.619.206 1.78.284 1.967.26 4.384-.545 1.967-.655 2.74-1.061 3.499-1.838.905-.927.974-1.111.974-2.6 0-1.996-.351-2.349-2.551-2.566-2.074-.205-4.127-.976-6.087-2.286-2.927-1.955-2.64-1.226-3.808-9.663-.424-3.056-1.031-6.723-1.35-8.148-.566-2.524-.569-2.63-.119-4.057.441-1.4.44-1.49-.006-1.984-.449-.496-.445-.605.08-2.597.537-2.041.538-2.089.045-2.581-.492-.493-.492-.549.029-3.08l.53-2.577-.554-1.601-.554-1.602.584-4.617.584-4.618-.605-1.845-.605-1.844.473-2.33.473-2.331-.928-1.451-.928-1.451-2.44-.325c-2.188-.291-2.491-.28-2.925.113-.45.407-.82.405-5.323-.031-4.35-.422-4.933-.429-5.773-.07-.9.386-.947.475-1.28 2.456-.292 1.737-.288 2.113.023 2.424.515.515 6.818 1.71 9.17 1.737 1.883.023 1.982.057 2.856.976.894.94.904.98.797 2.93-.15 2.721.244 5.876.91 7.295.307.652.662 1.25.789 1.328.126.078-.187.97-.696 1.98-.86 1.707-.987 1.84-1.782 1.838-1.366-.002-2.741-.471-6.413-2.186-3.05-1.424-3.67-1.62-5.464-1.726-11.095-.658-20.071 10.868-20.149 25.874-.042 8.214 2.199 14.08 7.334 19.195 1.938 1.93 2.84 2.607 4.653 3.498 2.207 1.085 4.695 1.847 6.168 1.89.409.013 1.302-.142 1.984-.344zm-5.135-12.127c-5.612-5.775-7.062-8.062-7.213-11.377-.071-1.562.008-2.221.325-2.705.376-.574.379-.757.028-1.75-.594-1.684-.516-5.115.147-6.486 1.151-2.377 5.915-7.16 8.378-8.414 1.06-.539 1.811-.538 5.185.003l2.7.434 1.595 1.55c1.346 1.31 1.742 1.552 2.548 1.552.884 0 1.038.128 2.082 1.731l1.128 1.731-.483 1.596-.484 1.597.98 4.368.98 4.369-.796 1.393c-1.028 1.796-2.01 4.44-2.24 6.035-.183 1.253-.186 1.257-1.213 1.257-.975 0-1.115.11-2.604 2.067l-1.573 2.066-2.992 1.042a206 206 0 0 0-3.157 1.116c-.09.04-1.585-1.388-3.321-3.175zm-19.687 11.715a62 62 0 0 0 4.219-1.125l1.969-.623.466-1.845.612-2.43c.13-.518-.334-.87-4.109-3.123-6.01-3.585-5.812-3.505-6.938-2.809l-.921.57-.153-.864c-.085-.474-.645-4.356-1.246-8.626l-1.092-7.763.554-.388c.687-.48.687-.864.01-5.058l-.544-3.37.723-4.391.724-4.393-.597-1.471c-.533-1.312-.737-1.531-1.882-2.024-1.592-.685-1.725-.684-3.41.016l-1.366.568-2.947-1.098-2.946-1.098-3.018 1.365c-2.67 1.207-3 1.428-2.866 1.918.084.305.228 1.001.319 1.547l.166.992h9.066l1.783 1.196c1.693 1.136 1.783 1.249 1.783 2.23 0 .784-.158 1.158-.653 1.547-.624.49-.678.774-1.201 6.303-.928 9.805-2.131 16.607-3.384 19.134-.89 1.796-7.592 4.735-12.196 5.348l-2.332.31-2.961-1.014c-1.63-.557-3.027-1.12-3.107-1.249-.212-.342-1.596-8.89-1.963-12.124-.284-2.507-.261-3.044.247-5.79l.56-3.027-.561-.598-.562-.598.829-4.312c1.382-7.203 1.442-7.91.802-9.533-.302-.767-.576-1.421-.608-1.454s-1.838-.548-4.013-1.145l-3.954-1.086-3.702.16-3.702.16-1.259 1.24c-.692.681-1.259 1.37-1.259 1.528 0 .643 1.594 2.774 2.075 2.774.284 0 .816.457 1.232 1.058.848 1.223 1.12 1.266 4.26.665 1.908-.365 2.093-.36 2.565.066.89.804 1.784 2.93 2.006 4.767.213 1.764.177 2.314-.502 7.786-.317 2.555-.304 3.09.129 5.45.46 2.507.461 2.966.037 10.85l-.443 8.234.675 1.332c.371.732.815 1.331.987 1.331.171 0 .646-.32 1.054-.71.408-.392.742-.57.742-.398 0 .514 1.86 2.414 3.02 3.086.595.344 2.282.995 3.75 1.447l2.668.823 6.672-2.385 6.671-2.385 1.772.892c2.244 1.13 5.734 2.364 9.011 3.187 4.247 1.066 5.168 1.114 8.24.427z" style="fill:#fff;fill-opacity:1;stroke-width:.264583"/></g></svg> diff --git a/src/assets/images/waybackMachine-icon-light.svg b/src/assets/images/waybackMachine-icon-light.svg index 2b3d3fde..e3d6cedd 100644 --- a/src/assets/images/waybackMachine-icon-light.svg +++ b/src/assets/images/waybackMachine-icon-light.svg @@ -1,85 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - version="1.1" - x="0px" - y="0px" - width="423.263" - height="478.77997" - viewBox="0 0 423.26301 478.77995" - enable-background="new 0 0 599.998 583.111" - xml:space="preserve" - id="svg53" - sodipodi:docname="waybackMachine-icon-light.svg" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"><defs - id="defs57" /><sodipodi:namedview - id="namedview55" - pagecolor="#b8b8b8" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="1.3342228" - inkscape:cx="-21.7355" - inkscape:cy="190.373" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="A" /> -<g - id="A" - transform="translate(-139.201,-101.486)"> - - <rect - x="172.47882" - y="524.3313" - width="356.70737" - height="18.292015" - id="rect18" - style="stroke-width:0.842756;fill:#ffffff" /> - <rect - x="186.54947" - y="489.15213" - width="329.2681" - height="25.329027" - id="rect20" - style="stroke-width:0.842756;fill:#ffffff" /> - <rect - x="184.43921" - y="200.69115" - width="327.50925" - height="35.178314" - id="rect22" - style="stroke-width:0.842756;fill:#ffffff" /> - <polygon - points="347.701,162.012 539.506,162.012 551.193,149.072 347.701,101.486 144.21,149.072 155.897,162.012 " - id="polygon24" - transform="matrix(0.84275583,0,0,0.84275583,55.166366,53.600762)" - style="fill:#ffffff" /> - - <path - d="m 231.6782,347.23375 c -0.28232,-17.2765 -0.72982,-34.55383 -1.40656,-51.81853 -0.63712,-16.26687 -1.68551,-32.51773 -2.47686,-48.77955 -0.0683,-1.40403 -0.66324,-1.70742 -1.82793,-1.96194 -4.79781,-1.04586 -9.6209,-1.53718 -14.46422,-1.54477 -4.84332,0.008 -9.66641,0.49891 -14.46422,1.54477 -1.16469,0.25367 -1.75967,0.55791 -1.82794,1.96194 -0.79134,16.26182 -1.83973,32.51268 -2.47686,48.77955 -0.67673,17.2647 -1.12508,34.54203 -1.40656,51.81853 -0.19973,12.24355 -0.0758,24.49638 0.11799,36.74331 0.21406,13.58607 0.51577,27.1755 1.06609,40.75146 0.58993,14.56956 1.50179,29.12732 2.30156,43.68762 0.15338,2.79036 0.43908,5.57314 0.65735,8.28513 5.37594,1.39897 10.70637,2.20718 16.03343,2.27375 5.32706,-0.0666 10.65665,-0.87478 16.03343,-2.27375 0.21828,-2.71199 0.50313,-5.49561 0.65651,-8.28513 0.79977,-14.5603 1.71164,-29.11806 2.30156,-43.68762 0.55032,-13.57596 0.85203,-27.16539 1.06609,-40.75146 0.19299,-12.24693 0.31772,-24.49976 0.11714,-36.74331 z" - id="path44" - style="stroke-width:0.842756;fill:#ffffff" /> - <path - d="m 320.85104,347.23375 c -0.28232,-17.2765 -0.73067,-34.55383 -1.4074,-51.81853 -0.63797,-16.26687 -1.68636,-32.51773 -2.47686,-48.77955 -0.0683,-1.40403 -0.66241,-1.70742 -1.82794,-1.96194 -4.79696,-1.04586 -9.6209,-1.53718 -14.46337,-1.54477 -4.84332,0.008 -9.66641,0.49891 -14.46422,1.54477 -1.16469,0.25367 -1.75968,0.55791 -1.82794,1.96194 -0.7905,16.26182 -1.83974,32.51268 -2.47686,48.77955 -0.67673,17.2647 -1.12508,34.54203 -1.40656,51.81853 -0.19973,12.24355 -0.0759,24.49638 0.11714,36.74331 0.21491,13.58607 0.51577,27.1755 1.06609,40.75146 0.59077,14.56956 1.50179,29.12732 2.30157,43.68762 0.15338,2.79036 0.43907,5.57314 0.6565,8.28513 5.37679,1.39897 10.70722,2.20718 16.03343,2.27375 5.32706,-0.0666 10.65665,-0.87478 16.03343,-2.27375 0.21743,-2.71199 0.50313,-5.49561 0.65651,-8.28513 0.79893,-14.5603 1.71079,-29.11806 2.30072,-43.68762 0.55032,-13.57596 0.85203,-27.16539 1.06693,-40.75146 0.19468,-12.24693 0.31856,-24.49976 0.11883,-36.74331 z" - id="path46" - style="stroke-width:0.842756;fill:#ffffff" /> - <path - d="m 424.26982,347.23375 c -0.28232,-17.2765 -0.72982,-34.55383 -1.4074,-51.81853 -0.63712,-16.26687 -1.68551,-32.51773 -2.47602,-48.77955 -0.0691,-1.40403 -0.66325,-1.70742 -1.82878,-1.96194 -4.79696,-1.04586 -9.62005,-1.53718 -14.46337,-1.54477 -4.84332,0.008 -9.66641,0.49891 -14.46422,1.54477 -1.16469,0.25367 -1.75967,0.55791 -1.82794,1.96194 -0.7905,16.26182 -1.83973,32.51268 -2.47601,48.77955 -0.67758,17.2647 -1.12508,34.54203 -1.40741,51.81853 -0.19973,12.24355 -0.0758,24.49638 0.11799,36.74331 0.2149,13.58607 0.51577,27.1755 1.06609,40.75146 0.59077,14.56956 1.50179,29.12732 2.30156,43.68762 0.15423,2.79036 0.43908,5.57314 0.65651,8.28513 5.37678,1.39897 10.70637,2.20718 16.03343,2.27375 5.32706,-0.0666 10.65665,-0.87478 16.03343,-2.27375 0.21743,-2.71199 0.50312,-5.49561 0.6565,-8.28513 0.79978,-14.5603 1.7108,-29.11806 2.30157,-43.68762 0.54948,-13.57596 0.85118,-27.16539 1.06609,-40.75146 0.19383,-12.24693 0.31772,-24.49976 0.11798,-36.74331 z" - id="path48" - style="stroke-width:0.842756;fill:#ffffff" /> - <path - d="m 511.33071,347.23375 c -0.28232,-17.2765 -0.72982,-34.55383 -1.40656,-51.81853 -0.63796,-16.26687 -1.68635,-32.51773 -2.47686,-48.77955 -0.0691,-1.40403 -0.66324,-1.70742 -1.82878,-1.96194 -4.79612,-1.04586 -9.62005,-1.53718 -14.46337,-1.54477 -4.84248,0.008 -9.66641,0.49891 -14.46338,1.54477 -1.16553,0.25367 -1.75967,0.55791 -1.82793,1.96194 -0.79135,16.26182 -1.84058,32.51268 -2.47686,48.77955 -0.67674,17.2647 -1.12508,34.54203 -1.40741,51.81853 -0.19973,12.24355 -0.0758,24.49638 0.11799,36.74331 0.2149,13.58607 0.51577,27.1755 1.06693,40.75146 0.58993,14.56956 1.50179,29.12732 2.30072,43.68762 0.15423,2.79036 0.43908,5.57314 0.65651,8.28513 5.37762,1.39897 10.70721,2.20718 16.03343,2.27375 5.32706,-0.0666 10.65749,-0.87478 16.03343,-2.27375 0.21827,-2.71199 0.50312,-5.49561 0.65651,-8.28513 0.79977,-14.5603 1.71163,-29.11806 2.30156,-43.68762 0.55032,-13.57596 0.85118,-27.16539 1.06609,-40.75146 0.19383,-12.24693 0.31856,-24.49976 0.11798,-36.74331 z" - id="path50" - style="stroke-width:0.842756;fill:#ffffff" /> -</g> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 423.263 478.78"><path d="M172.479 524.331h356.707v18.292H172.479zm14.07-35.179h329.268v25.329H186.549zm-2.11-288.461h327.509v35.178H184.439z" style="stroke-width:.842756;fill:#fff" transform="translate(-139.201 -101.486)"/><path d="M347.701 162.012h191.805l11.687-12.94-203.492-47.586-203.491 47.586 11.687 12.94z" style="fill:#fff" transform="translate(-84.035 -47.885)scale(.84276)"/><path d="M231.678 347.234c-.282-17.277-.73-34.554-1.406-51.819-.637-16.267-1.686-32.518-2.477-48.78-.069-1.403-.663-1.707-1.828-1.961-4.798-1.046-9.621-1.537-14.464-1.545-4.844.008-9.667.499-14.465 1.545-1.164.253-1.76.558-1.828 1.962-.79 16.261-1.84 32.512-2.476 48.78-.677 17.264-1.125 34.541-1.407 51.818-.2 12.243-.076 24.496.118 36.743.214 13.586.516 27.176 1.066 40.752.59 14.57 1.502 29.127 2.302 43.687.153 2.79.439 5.573.657 8.285 5.376 1.4 10.706 2.207 16.033 2.274 5.328-.067 10.657-.875 16.034-2.274.218-2.712.503-5.495.656-8.285.8-14.56 1.712-29.118 2.302-43.687.55-13.576.852-27.166 1.066-40.752.193-12.247.318-24.5.117-36.743m89.173 0c-.282-17.277-.73-34.554-1.407-51.819-.638-16.267-1.687-32.518-2.477-48.78-.069-1.403-.663-1.707-1.828-1.961-4.797-1.046-9.621-1.537-14.464-1.545-4.843.008-9.666.499-14.464 1.545-1.164.253-1.76.558-1.828 1.962-.79 16.261-1.84 32.512-2.477 48.78-.676 17.264-1.125 34.541-1.406 51.818-.2 12.243-.076 24.496.117 36.743.215 13.586.516 27.176 1.066 40.752.59 14.57 1.502 29.127 2.302 43.687.153 2.79.439 5.573.656 8.285 5.377 1.4 10.707 2.207 16.034 2.274 5.327-.067 10.656-.875 16.033-2.274.217-2.712.503-5.495.657-8.285.798-14.56 1.71-29.118 2.3-43.687.55-13.576.852-27.166 1.067-40.752.195-12.247.319-24.5.119-36.743m103.419 0c-.283-17.277-.73-34.554-1.408-51.819-.637-16.267-1.685-32.518-2.476-48.78-.069-1.403-.663-1.707-1.828-1.961-4.797-1.046-9.62-1.537-14.464-1.545-4.843.008-9.666.499-14.464 1.545-1.165.253-1.76.558-1.828 1.962-.79 16.261-1.84 32.512-2.476 48.78-.678 17.264-1.125 34.541-1.407 51.818-.2 12.243-.076 24.496.118 36.743.215 13.586.515 27.176 1.066 40.752.59 14.57 1.502 29.127 2.301 43.687.155 2.79.44 5.573.657 8.285 5.377 1.4 10.706 2.207 16.033 2.274 5.327-.067 10.657-.875 16.034-2.274.217-2.712.503-5.495.656-8.285.8-14.56 1.711-29.118 2.302-43.687.55-13.576.85-27.166 1.066-40.752.194-12.247.318-24.5.118-36.743m87.06 0c-.282-17.277-.73-34.554-1.406-51.819-.638-16.267-1.686-32.518-2.477-48.78-.069-1.403-.663-1.707-1.828-1.961-4.797-1.046-9.62-1.537-14.464-1.545-4.842.008-9.666.499-14.463 1.545-1.166.253-1.76.558-1.828 1.962-.792 16.261-1.84 32.512-2.477 48.78-.677 17.264-1.125 34.541-1.407 51.818-.2 12.243-.076 24.496.118 36.743.214 13.586.515 27.176 1.066 40.752.59 14.57 1.502 29.127 2.301 43.687.154 2.79.44 5.573.657 8.285 5.377 1.4 10.707 2.207 16.033 2.274 5.327-.067 10.658-.875 16.034-2.274.218-2.712.503-5.495.656-8.285.8-14.56 1.712-29.118 2.302-43.687.55-13.576.85-27.166 1.066-40.752.194-12.247.318-24.5.118-36.743" style="stroke-width:.842756;fill:#fff" transform="translate(-139.201 -101.486)"/></svg> diff --git a/src/assets/images/waybackMachine-icon.svg b/src/assets/images/waybackMachine-icon.svg index 2a66192c..f0e6497b 100644 --- a/src/assets/images/waybackMachine-icon.svg +++ b/src/assets/images/waybackMachine-icon.svg @@ -1,84 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - version="1.1" - x="0px" - y="0px" - width="423.263" - height="478.77997" - viewBox="0 0 423.26301 478.77995" - enable-background="new 0 0 599.998 583.111" - xml:space="preserve" - id="svg53" - sodipodi:docname="20210919034708!Internet_Archive_logo_and_wordmark.svg" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"><defs - id="defs57" /><sodipodi:namedview - id="namedview55" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="1.3342228" - inkscape:cx="68.954003" - inkscape:cy="190.37301" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="A" /> -<g - id="A" - transform="translate(-139.201,-101.486)"> - - <rect - x="172.47882" - y="524.3313" - width="356.70737" - height="18.292015" - id="rect18" - style="stroke-width:0.842756" /> - <rect - x="186.54947" - y="489.15213" - width="329.2681" - height="25.329027" - id="rect20" - style="stroke-width:0.842756" /> - <rect - x="184.43921" - y="200.69115" - width="327.50925" - height="35.178314" - id="rect22" - style="stroke-width:0.842756" /> - <polygon - points="347.701,162.012 539.506,162.012 551.193,149.072 347.701,101.486 144.21,149.072 155.897,162.012 " - id="polygon24" - transform="matrix(0.84275583,0,0,0.84275583,55.166366,53.600762)" /> - - <path - d="m 231.6782,347.23375 c -0.28232,-17.2765 -0.72982,-34.55383 -1.40656,-51.81853 -0.63712,-16.26687 -1.68551,-32.51773 -2.47686,-48.77955 -0.0683,-1.40403 -0.66324,-1.70742 -1.82793,-1.96194 -4.79781,-1.04586 -9.6209,-1.53718 -14.46422,-1.54477 -4.84332,0.008 -9.66641,0.49891 -14.46422,1.54477 -1.16469,0.25367 -1.75967,0.55791 -1.82794,1.96194 -0.79134,16.26182 -1.83973,32.51268 -2.47686,48.77955 -0.67673,17.2647 -1.12508,34.54203 -1.40656,51.81853 -0.19973,12.24355 -0.0758,24.49638 0.11799,36.74331 0.21406,13.58607 0.51577,27.1755 1.06609,40.75146 0.58993,14.56956 1.50179,29.12732 2.30156,43.68762 0.15338,2.79036 0.43908,5.57314 0.65735,8.28513 5.37594,1.39897 10.70637,2.20718 16.03343,2.27375 5.32706,-0.0666 10.65665,-0.87478 16.03343,-2.27375 0.21828,-2.71199 0.50313,-5.49561 0.65651,-8.28513 0.79977,-14.5603 1.71164,-29.11806 2.30156,-43.68762 0.55032,-13.57596 0.85203,-27.16539 1.06609,-40.75146 0.19299,-12.24693 0.31772,-24.49976 0.11714,-36.74331 z" - id="path44" - style="stroke-width:0.842756" /> - <path - d="m 320.85104,347.23375 c -0.28232,-17.2765 -0.73067,-34.55383 -1.4074,-51.81853 -0.63797,-16.26687 -1.68636,-32.51773 -2.47686,-48.77955 -0.0683,-1.40403 -0.66241,-1.70742 -1.82794,-1.96194 -4.79696,-1.04586 -9.6209,-1.53718 -14.46337,-1.54477 -4.84332,0.008 -9.66641,0.49891 -14.46422,1.54477 -1.16469,0.25367 -1.75968,0.55791 -1.82794,1.96194 -0.7905,16.26182 -1.83974,32.51268 -2.47686,48.77955 -0.67673,17.2647 -1.12508,34.54203 -1.40656,51.81853 -0.19973,12.24355 -0.0759,24.49638 0.11714,36.74331 0.21491,13.58607 0.51577,27.1755 1.06609,40.75146 0.59077,14.56956 1.50179,29.12732 2.30157,43.68762 0.15338,2.79036 0.43907,5.57314 0.6565,8.28513 5.37679,1.39897 10.70722,2.20718 16.03343,2.27375 5.32706,-0.0666 10.65665,-0.87478 16.03343,-2.27375 0.21743,-2.71199 0.50313,-5.49561 0.65651,-8.28513 0.79893,-14.5603 1.71079,-29.11806 2.30072,-43.68762 0.55032,-13.57596 0.85203,-27.16539 1.06693,-40.75146 0.19468,-12.24693 0.31856,-24.49976 0.11883,-36.74331 z" - id="path46" - style="stroke-width:0.842756" /> - <path - d="m 424.26982,347.23375 c -0.28232,-17.2765 -0.72982,-34.55383 -1.4074,-51.81853 -0.63712,-16.26687 -1.68551,-32.51773 -2.47602,-48.77955 -0.0691,-1.40403 -0.66325,-1.70742 -1.82878,-1.96194 -4.79696,-1.04586 -9.62005,-1.53718 -14.46337,-1.54477 -4.84332,0.008 -9.66641,0.49891 -14.46422,1.54477 -1.16469,0.25367 -1.75967,0.55791 -1.82794,1.96194 -0.7905,16.26182 -1.83973,32.51268 -2.47601,48.77955 -0.67758,17.2647 -1.12508,34.54203 -1.40741,51.81853 -0.19973,12.24355 -0.0758,24.49638 0.11799,36.74331 0.2149,13.58607 0.51577,27.1755 1.06609,40.75146 0.59077,14.56956 1.50179,29.12732 2.30156,43.68762 0.15423,2.79036 0.43908,5.57314 0.65651,8.28513 5.37678,1.39897 10.70637,2.20718 16.03343,2.27375 5.32706,-0.0666 10.65665,-0.87478 16.03343,-2.27375 0.21743,-2.71199 0.50312,-5.49561 0.6565,-8.28513 0.79978,-14.5603 1.7108,-29.11806 2.30157,-43.68762 0.54948,-13.57596 0.85118,-27.16539 1.06609,-40.75146 0.19383,-12.24693 0.31772,-24.49976 0.11798,-36.74331 z" - id="path48" - style="stroke-width:0.842756" /> - <path - d="m 511.33071,347.23375 c -0.28232,-17.2765 -0.72982,-34.55383 -1.40656,-51.81853 -0.63796,-16.26687 -1.68635,-32.51773 -2.47686,-48.77955 -0.0691,-1.40403 -0.66324,-1.70742 -1.82878,-1.96194 -4.79612,-1.04586 -9.62005,-1.53718 -14.46337,-1.54477 -4.84248,0.008 -9.66641,0.49891 -14.46338,1.54477 -1.16553,0.25367 -1.75967,0.55791 -1.82793,1.96194 -0.79135,16.26182 -1.84058,32.51268 -2.47686,48.77955 -0.67674,17.2647 -1.12508,34.54203 -1.40741,51.81853 -0.19973,12.24355 -0.0758,24.49638 0.11799,36.74331 0.2149,13.58607 0.51577,27.1755 1.06693,40.75146 0.58993,14.56956 1.50179,29.12732 2.30072,43.68762 0.15423,2.79036 0.43908,5.57314 0.65651,8.28513 5.37762,1.39897 10.70721,2.20718 16.03343,2.27375 5.32706,-0.0666 10.65749,-0.87478 16.03343,-2.27375 0.21827,-2.71199 0.50312,-5.49561 0.65651,-8.28513 0.79977,-14.5603 1.71163,-29.11806 2.30156,-43.68762 0.55032,-13.57596 0.85118,-27.16539 1.06609,-40.75146 0.19383,-12.24693 0.31856,-24.49976 0.11798,-36.74331 z" - id="path50" - style="stroke-width:0.842756" /> -</g> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 423.263 478.78"><path d="M172.479 524.331h356.707v18.292H172.479zm14.07-35.179h329.268v25.329H186.549zm-2.11-288.461h327.509v35.178H184.439z" style="stroke-width:.842756" transform="translate(-139.201 -101.486)"/><path d="M208.992 88.651h161.645l9.85-10.905-171.495-40.103L37.5 77.746l9.85 10.905z"/><path d="M231.678 347.234c-.282-17.277-.73-34.554-1.406-51.819-.637-16.267-1.686-32.518-2.477-48.78-.069-1.403-.663-1.707-1.828-1.961-4.798-1.046-9.621-1.537-14.464-1.545-4.844.008-9.667.499-14.465 1.545-1.164.253-1.76.558-1.828 1.962-.79 16.261-1.84 32.512-2.476 48.78-.677 17.264-1.125 34.541-1.407 51.818-.2 12.243-.076 24.496.118 36.743.214 13.586.516 27.176 1.066 40.752.59 14.57 1.502 29.127 2.302 43.687.153 2.79.439 5.573.657 8.285 5.376 1.4 10.706 2.207 16.033 2.274 5.328-.067 10.657-.875 16.034-2.274.218-2.712.503-5.495.656-8.285.8-14.56 1.712-29.118 2.302-43.687.55-13.576.852-27.166 1.066-40.752.193-12.247.318-24.5.117-36.743m89.173 0c-.282-17.277-.73-34.554-1.407-51.819-.638-16.267-1.687-32.518-2.477-48.78-.069-1.403-.663-1.707-1.828-1.961-4.797-1.046-9.621-1.537-14.464-1.545-4.843.008-9.666.499-14.464 1.545-1.164.253-1.76.558-1.828 1.962-.79 16.261-1.84 32.512-2.477 48.78-.676 17.264-1.125 34.541-1.406 51.818-.2 12.243-.076 24.496.117 36.743.215 13.586.516 27.176 1.066 40.752.59 14.57 1.502 29.127 2.302 43.687.153 2.79.439 5.573.656 8.285 5.377 1.4 10.707 2.207 16.034 2.274 5.327-.067 10.656-.875 16.033-2.274.217-2.712.503-5.495.657-8.285.798-14.56 1.71-29.118 2.3-43.687.55-13.576.852-27.166 1.067-40.752.195-12.247.319-24.5.119-36.743m103.419 0c-.283-17.277-.73-34.554-1.408-51.819-.637-16.267-1.685-32.518-2.476-48.78-.069-1.403-.663-1.707-1.828-1.961-4.797-1.046-9.62-1.537-14.464-1.545-4.843.008-9.666.499-14.464 1.545-1.165.253-1.76.558-1.828 1.962-.79 16.261-1.84 32.512-2.476 48.78-.678 17.264-1.125 34.541-1.407 51.818-.2 12.243-.076 24.496.118 36.743.215 13.586.515 27.176 1.066 40.752.59 14.57 1.502 29.127 2.301 43.687.155 2.79.44 5.573.657 8.285 5.377 1.4 10.706 2.207 16.033 2.274 5.327-.067 10.657-.875 16.034-2.274.217-2.712.503-5.495.656-8.285.8-14.56 1.711-29.118 2.302-43.687.55-13.576.85-27.166 1.066-40.752.194-12.247.318-24.5.118-36.743m87.06 0c-.282-17.277-.73-34.554-1.406-51.819-.638-16.267-1.686-32.518-2.477-48.78-.069-1.403-.663-1.707-1.828-1.961-4.797-1.046-9.62-1.537-14.464-1.545-4.842.008-9.666.499-14.463 1.545-1.166.253-1.76.558-1.828 1.962-.792 16.261-1.84 32.512-2.477 48.78-.677 17.264-1.125 34.541-1.407 51.818-.2 12.243-.076 24.496.118 36.743.214 13.586.515 27.176 1.066 40.752.59 14.57 1.502 29.127 2.301 43.687.154 2.79.44 5.573.657 8.285 5.377 1.4 10.707 2.207 16.033 2.274 5.327-.067 10.658-.875 16.034-2.274.218-2.712.503-5.495.656-8.285.8-14.56 1.712-29.118 2.302-43.687.55-13.576.85-27.166 1.066-40.752.194-12.247.318-24.5.118-36.743" style="stroke-width:.842756" transform="translate(-139.201 -101.486)"/></svg> \ No newline at end of file diff --git a/src/assets/images/wikipedia-icon.svg b/src/assets/images/wikipedia-icon.svg index 87876d46..9b28a3ac 100644 --- a/src/assets/images/wikipedia-icon.svg +++ b/src/assets/images/wikipedia-icon.svg @@ -1,3 +1 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> -<svg version="1.1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" width="103px" height="94px" viewBox="0 0 103 94"><title>Wikipedia logo version 2</title><radialGradient id="SVGID_1_" cx="244.5713" cy="-427.1392" r="68.6868" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset=".4835" stop-color="#EAEAEB"/><stop offset=".9451" stop-color="#A9ABAE"/><stop offset="1" stop-color="#999B9E"/></radialGradient><path style="fill:url(#SVGID_1_);" d="M49.85,17.003c0.014-0.606-0.392-1.27-0.392-1.27l-0.025-0.058c0,0-0.487-0.949-1.301-1.228c-0.815-0.278-1.478,0.342-1.478,0.342s-0.114,0.131-0.428,0.494c-0.313,0.364-0.507,0.666-1.198,0.938c-0.692,0.271-1.379,0.204-1.743,0.033c-0.365-0.172-0.457-0.537-0.457-0.537s-0.229-0.722-0.313-1.049c-0.086-0.331-0.308-1.694-0.308-1.694s-0.492-2.747-0.535-3.304c0,0,1.475-0.126,3.686-0.775c2.3-0.673,3.043-1.206,3.043-1.206s-0.432-0.156-0.484-0.662c-0.051-0.507-0.089-1.19-0.089-1.19s-0.089-0.5,0.483-1.139c0.572-0.64,1.354-0.863,1.763-0.953c0.41-0.089,1.281-0.17,2.092-0.134c0.813,0.038,1.266,0.112,1.594,0.291c0.327,0.178,0.356,0.61,0.356,0.61l-0.009,1.146c0,0-0.035,0.402,0.262,0.529c0,0,0.505,0.305,2.197,0.133c0,0,0.719-0.126,1.845-0.46c1.125-0.335,4.129-1.229,4.554-1.341c0.426-0.111,0.953-0.291,1.645-0.469c0.693-0.179,2.041-0.626,2.309-0.73c0.27-0.104,1.811-0.618,2.928-0.81c1.114-0.195,2.226-0.186,2.813,0.149c0,0,0.357,0.304,0.521,0.662c0.162,0.358,0.476,0.863,0.92,1.088c0.457,0.227,0.754,0.371,1.877,0.273c0,0,0.021-0.096-0.396-0.37c-0.417-0.277-0.991-0.701-0.991-0.701s-0.334-0.245-0.408-0.447c-0.072-0.202-0.043-0.306-0.043-0.306l0.877-1.406c0,0,0-0.172,0.506-0.238c0.506-0.067,1.074-0.134,1.742-0.313c0.67-0.178,0.789-0.312,0.789-0.312l0.578,0.178c0,0,3.547,2.853,4.655,3.583l0.198-0.239c0,0,0.437,0.018,0.828,0.172c0.393,0.154,0.979,0.562,0.979,0.562s1.613,1.31,2.072,2.2l0.222,0.679l-0.102,0.161c0,0,0.919,1.307,2.096,2.602c0,0,1.229,1.664,1.689,2.09c0,0-0.108-0.399-0.203-0.849l0.339-0.226l0.2-0.144l0.617,0.259c3.575,4.811,6.435,10.424,8.144,16.328l-0.121,0.484l0.396,0.501c1.129,4.212,1.729,8.643,1.729,13.211c0,1.122-0.038,2.236-0.109,3.339l-0.304,0.511l0.226,0.555C99.95,72.645,78.057,93.131,51.38,93.131c-18.502,0-34.702-9.854-43.637-24.601l-0.102-0.365l-0.205-0.151c-3.387-5.742-5.682-12.205-6.595-19.104l0.212-0.524l-0.336-0.482c-0.213-1.892-0.322-3.812-0.322-5.758c0-2.985,0.255-5.909,0.748-8.755l0.25-0.562l-0.087-0.328C2.463,26.451,4.689,20.783,7.78,15.7l0.684-0.384l0.081,0.032c0,0,0.233-0.169,0.354-0.217l0.076-0.023c0,0,1.179-1.971,1.625-2.601c0,0,0.542-0.348,0.745-0.407c0,0,0.124-0.016,0.189,0.076c0,0,0.496-0.432,1.699-2.054c0.004-0.005,0.007-0.011,0.012-0.017c0,0-0.114-0.076-0.131-0.174c-0.018-0.097,0.108-0.591,0.173-0.717s0.108-0.156,0.108-0.156s1.722-2.032,3.151-3.238c0,0,0.26-0.202,0.678-0.25c0,0,1.472-0.613,3.264-2.184c0,0,0.051-0.289,0.478-0.858c0.428-0.57,1.456-1.163,2.222-1.337c0.764-0.174,0.896-0.038,0.896-0.038l0.064,0.065l0.515,0.766c0,0,0.565-0.316,1.413-0.604c0.847-0.289,0.979-0.262,0.979-0.262l0.823,1.336l-0.987,2c0,0-0.644,1.421-1.655,2.185c0,0-0.472,0.284-1.12,0.127c-0.648-0.157-1.072,0.333-1.072,0.333l-0.17,0.14c0,0,0.14-0.024,0.346-0.103c0,0,0.158,0.065,0.274,0.223c0.114,0.158,0.913,1.175,0.913,1.175s0.005,0.837-0.415,1.938c-0.419,1.1-1.467,2.891-1.467,2.891s-0.733,1.424-1.075,2.253c-0.342,0.829-0.515,1.765-0.488,2.262c0,0,0.187,0.062,0.707-0.202c0.655-0.332,1.083,0.027,1.083,0.027s0.719,0.53,1.041,0.881c0.262,0.289,0.802,1.765,0.209,3.224c0,0-0.402,1.008-1.377,1.724c0,0-0.216,0.332-1.529,0.174c-0.368-0.043-0.585-0.276-1.372-0.2c-0.785,0.077-1.231,0.815-1.231,0.815l0.013-0.024c-0.692,0.999-1.154,2.458-1.154,2.458l-0.057,0.165c0,0-0.241,0.509-0.292,1.752c-0.053,1.284,0.284,3.109,0.284,3.109s7.876-1.387,9.88-0.055l0.58,0.532c0,0,0.046,0.174-0.031,0.376c-0.08,0.204-0.375,0.673-0.987,1.113c-0.611,0.438-1.222,1.583-0.313,2.304c1.034,0.818,1.691,0.766,3.43,0.468c1.74-0.297,2.898-1.269,2.898-1.269s0.972-0.72,0.783-1.628c-0.188-0.908-1.017-1.189-1.017-1.189s-0.658-0.423-0.141-1.238c0,0,0.141-0.689,2.553-1.316c2.414-0.626,6.812-1.52,10.557-1.989c0,0-2.539-8.223-0.738-9.289c0,0,0.438-0.296,1.224-0.408l0.72-0.037c0.131-0.027,0.343,0.005,0.796,0.045c0.453,0.038,1.001,0.076,1.678-0.441c0.676-0.519,0.697-0.819,0.697-0.819"/><radialGradient id="SVGID_2_" cx="197.6416" cy="-371.8613" r="0" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset=".4835" stop-color="#EAEAEB"/><stop offset=".9451" stop-color="#A9ABAE"/><stop offset="1" stop-color="#999B9E"/></radialGradient><path style="fill:url(#SVGID_2_);" d="M-16.122-14.641"/><linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="456.2744" y1="510.1602" x2="502.7757" y2="582.9122" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#8A8A8A"/><stop offset=".5687" stop-color="#606060"/><stop offset=".5914" stop-color="#FFF"/><stop offset=".6116" stop-color="#585858"/><stop offset="1" stop-color="#303030"/></linearGradient><path style="opacity:.69;fill:url(#SVGID_3_);" d="M82.447,79.307l0.451,0.168c-0.032,0.061-0.067,0.119-0.101,0.179c-0.864,1.573-0.936,1.927-1.36,2.253c-0.424,0.326-0.58,0.539-1.443,0.695c-0.865,0.156-1.771,1.175-1.771,1.175s-0.875,0.835-0.48,0.866c0.396,0.025,1.177-0.609,1.177-0.609s0.497-0.354,0.625-0.255c0.125,0.099-0.539,0.751-0.539,0.751s-1.161,1.176-2.479,1.982l-0.396,0.213c0,0,1.869-1.392,2.764-2.395c0,0,0.185-0.271-0.185,0.057c-0.369,0.325-1.332,0.821-1.741,0.821c-0.41,0,0.016-0.563,0.016-0.563s0.596-0.768,1.812-1.758c1.22-0.994,2.239-0.922,2.239-0.922s0.227,0.043,0.253-0.271c0.028-0.313,0.312-0.863,0.312-0.863s0.453-1.032,1.674-2.749c1.218-1.714,1.77-2.195,1.77-2.195s1.588-1.629,2.423-3.259c0,0,0.581-1.006-0.364-0.255c-0.951,0.753-2.211,1.7-3.44,2.014c-1.233,0.312-1.349-0.836-1.349-0.836s-0.271-1.884,1.049-3.344c1.188-1.316,2.492-1.273,3.684-1.415c1.188-0.144,2.21-1.571,2.21-1.571s0.82-0.922,1.289-3.797c0.218-1.337,0.067-2.244-0.144-2.818l0.021-0.647l-0.368-0.021c-0.078-0.106-0.135-0.153-0.135-0.153s-0.297-0.299-0.607-0.524c-0.313-0.227-0.692-0.649-1.063-1.457c0,0-1.019-2.11-0.792-5.156c0.227-3.047,2.762-2.762,2.762-2.762s1.475,0.143,1.76-0.298c0.283-0.438,0.553-0.993,0.649-2.223c0.101-1.233-0.396-2.408-0.396-2.408s-0.186-0.609-1.049-0.708c-0.863-0.1-1.051,0.169-1.051,0.169s-0.255,0.072-0.723,1.09c-0.471,1.021-0.75,1.488-1.602,1.702c-0.849,0.211-2.023,0.099-2.549-0.992c-0.515-1.072-1.757-3.693-2.351-5.772l0.084-0.735l-0.325-0.471c-0.063-0.396-0.117-0.846-0.13-1.236c-0.026-0.992-0.312-2.097-0.638-3.2c-0.326-1.106-1.459-2.972-1.672-3.399c-0.324-0.667-0.621-0.949-1.021-0.893c-0.396,0.056-0.339,0.056-0.513,0.056c-0.168,0-0.266,0.212-0.311,0.425c-0.042,0.212-0.375,1.315-1.104,1.812c-0.752,0.51-1.147,0.737-2.438,0.85c0,0-1.487,0.099-2.661-2.097C71,29.36,71.301,27.96,71.398,27.45c0.099-0.51,0.539-1.247,1.229-1.388c0.693-0.141,1.119-0.184,1.119-0.184s1.122-0.01,1.603-0.071c0.551-0.071,0.283-1.006,0.283-1.006s-0.361-2.371-2.348-4.318l-0.096-0.487l-0.756-0.381c-1.881-2.04-4.354-5.354-4.354-5.354s-1.105-1.048-0.17-2.493c0,0,0.438-0.963,1.742-0.792c0.419,0.081,0.457,0.123,0.818,0.199c0.481,0.099,1.008,0.225,1.478-0.398c0,0,0.438-0.792-0.271-1.812s-0.923-1.742-1.785-1.687c0,0-0.397-0.055-0.793,0.384C68.702,8.1,67.682,8.378,67.086,8.44c-0.679,0.071-2.252-0.528-3.156-2.082c-0.513-0.874-0.752-1.35-0.865-1.595l0.231-0.34l0.72,0.08c0.186,0.358,0.549,1.056,0.978,1.812c0.552,0.978,1.048,1.118,1.373,1.261c0.325,0.141,1.049-0.071,1.431-0.283c0.385-0.213,0.766-0.695,1.43-0.738c0.668-0.043,1.629,0.071,2.311,0.793c0.682,0.723,1.531,2.224,1.459,2.932c-0.068,0.708-0.111,1.403-1.035,1.699c-0.921,0.298-1.303,0.043-1.884-0.084c-0.581-0.128-0.864-0.072-1.104,0.211c-0.242,0.284-0.512,0.892-0.412,1.162c0.102,0.27,0.186,0.454,0.75,1.262c0.566,0.806,3.474,4.25,4.031,4.766l-0.152,0.698l0.968,0.176c0.625,0.724,1.358,1.668,1.687,2.263c0.493,0.907,0.752,2.337,0.779,3.002c0.025,0.666-0.299,0.963-0.299,0.963s-0.313,0.524-2.012,0.524c-1.517,0-1.614,0.297-1.614,0.297s-0.47,0.467-0.369,1.615c0.103,1.146,0.616,2.344,1.56,3.37c0.778,0.851,2.252-0.006,2.748-0.295c0.51-0.299,0.822-1.264,0.822-1.264s0.102-1.217,1.432-1.217c1.377,0,1.969,1.318,1.969,1.318s0.963,1.295,1.941,4.121c0.481,1.389,0.566,2.281,0.566,2.281l0.126,1.668l-0.513,0.892l0.732,0.312c0.135,0.541,0.348,1.24,0.686,2.044c0,0,1.008,2.381,1.443,3.286c0.44,0.906,0.896,0.766,1.264,0.808c0,0,0.85,0.113,1.16-0.282c0.313-0.398,0.61-1.092,0.61-1.092s0.663-1.812,2.138-1.657c1.475,0.156,1.84,1.092,2.096,2.168c0.256,1.074,0.313,3.229-0.479,4.545c-0.798,1.318-1.688,1.135-1.688,1.135s-1.813-0.17-2.225,0.213c-0.41,0.382-0.623,0.724-0.681,1.613c-0.058,0.894,0.026,2.336,0.751,4.08c0.631,1.523,1.146,1.361,1.432,1.728c0.284,0.368,1.188,1.204,1.104,3.272c-0.082,2.067-0.791,4.149-1.586,5.439c-0.793,1.288-1.997,2.053-1.997,2.053s-0.338,0.211-1.076,0.311c-0.735,0.102-1.784,0.086-2.534,0.513c-0.75,0.426-0.992,1.501-1.063,1.971c-0.069,0.468-0.112,1.529,0.921,1.413c1.034-0.109,2.577-1.4,2.577-1.4s1.486-1.104,1.685-0.752c0.199,0.354-0.636,1.784-0.636,1.784s-1.035,1.562-1.898,2.523c-0.709,0.791-1.641,1.868-2.431,3.102L82.447,79.307L82.447,79.307z"/><linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="425.2861" y1="502.9512" x2="445.7861" y2="598.6606" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#A8A9AB"/><stop offset="1" stop-color="#636668"/></linearGradient><path style="fill:url(#SVGID_4_);" d="M23.441,22.732c-0.007,0.008-0.013,0.018-0.021,0.025C23.428,22.75,23.434,22.74,23.441,22.732z"/><linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="421.0684" y1="504.3701" x2="441.068" y2="597.7433" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#A8A9AB"/><stop offset="1" stop-color="#636668"/></linearGradient><path style="opacity:.45;fill:url(#SVGID_5_);" d="M38.188,89.707l0.163,0.01c-0.163-0.147-0.37-0.281-0.62-0.414c-0.699-0.371-3.731-2.375-4.669-3.009c-0.936-0.633-2.575-1.7-3.297-1.478c-0.554,0.172-0.475,0.394-0.804,0.556c-0.331,0.157-0.687,0.052-1.504-0.384c-0.818-0.434-1.424-0.725-3.02-2.239c-1.245-1.185,1.595-0.118,1.595-0.118s0.619,0.262,0.343-0.385c-0.277-0.646-1.676-2.333-2.994-3.691c-1.068-1.098-1.674-1.86-2.435-2.97l-0.566-0.661l0.007-0.166c-0.018-0.024-0.035-0.054-0.052-0.078c0,0-1.874-3.377-1.676-4.617c0,0,0.068-0.828,1.241-1.188c0.817-0.251,0.71,0.542,3.112,0.975c0,0,2.07,0.559,2.611-0.945c0.539-1.505-0.567-3.393-0.567-3.393s-1.449-2.656-3.244-2.758c-0.95-0.053-0.692,0.586-2.125,0.926c0,0-1.913,0.184-2.519-0.963c-0.734-1.389-1.04-2.969-1.015-4.022c0.022-1,0.054-1.079,0.119-1.371c0.045-0.206,0.192-0.582,0.254-1.128l-0.134-0.667l0.204-0.501c0.002-0.26-0.004-0.535-0.021-0.83c-0.091-1.66-0.213-4.221-0.437-5.71c-0.223-1.491-0.633-3.798-1.991-3.866c0,0-0.671-0.051-1.634,0.885c-0.884,0.856-1.684-0.708-1.728-1.663c-0.053-1.121,0.131-2.254,0.409-2.795c0.277-0.541,1.042-0.567,1.186-0.555c0.146,0.013,0.555,0.171,1.043,0.474c0.488,0.305,1.16,0.305,1.557-0.092c0.395-0.394,0.947-0.856,1.173-2.598c0.224-1.741,0.224-3.547,0.013-5.71l-0.225-0.484l1.339-0.289c-0.001-0.017-0.021-0.126-0.032-0.193c0-0.002,0-0.003,0-0.005c-0.002-0.017-0.005-0.032-0.007-0.049c-0.001-0.003-0.001-0.005-0.001-0.007c-0.003-0.019-0.007-0.038-0.009-0.057c0-0.001-0.001-0.001-0.001-0.003c-0.003-0.02-0.006-0.042-0.009-0.062c0-0.001,0-0.001,0-0.001c-0.004-0.023-0.007-0.045-0.011-0.068c0-0.004-0.001-0.006-0.001-0.008c-0.002-0.022-0.006-0.045-0.008-0.066c-0.001-0.006-0.001-0.01-0.003-0.017c-0.002-0.023-0.005-0.046-0.009-0.069c-0.001-0.004-0.001-0.007-0.002-0.014c-0.003-0.026-0.007-0.05-0.011-0.076c0-0.002,0-0.004,0-0.005c-0.004-0.024-0.008-0.05-0.011-0.076c-0.001-0.007-0.001-0.01-0.003-0.017c-0.002-0.025-0.006-0.052-0.009-0.08c-0.001-0.005-0.001-0.011-0.002-0.021c-0.005-0.027-0.007-0.053-0.011-0.081c-0.001-0.006-0.002-0.013-0.002-0.019c-0.002-0.029-0.006-0.058-0.01-0.087c0-0.004-0.001-0.008-0.003-0.014c-0.002-0.028-0.005-0.056-0.009-0.082c-0.001-0.006-0.001-0.011-0.002-0.016c-0.002-0.031-0.006-0.06-0.01-0.09c0-0.006-0.001-0.015-0.002-0.021c-0.004-0.03-0.006-0.061-0.011-0.09c0-0.007-0.001-0.015-0.002-0.022c-0.003-0.03-0.006-0.062-0.01-0.093c0-0.006-0.002-0.012-0.002-0.019c-0.003-0.032-0.005-0.063-0.009-0.094c0-0.002,0-0.005,0-0.009c-0.004-0.032-0.005-0.066-0.01-0.1c0-0.005,0-0.012-0.001-0.02c-0.002-0.033-0.005-0.065-0.007-0.098c-0.001-0.007-0.001-0.014-0.001-0.021c-0.004-0.033-0.006-0.067-0.008-0.099c0-0.005,0-0.012-0.001-0.02c-0.002-0.033-0.006-0.069-0.007-0.102c0-0.003,0-0.007-0.001-0.01c-0.002-0.033-0.004-0.066-0.006-0.1c-0.001-0.006-0.001-0.011-0.001-0.017c-0.001-0.032-0.003-0.068-0.005-0.1c0-0.008,0-0.014-0.001-0.021c-0.001-0.031-0.002-0.065-0.003-0.099c-0.001-0.006-0.001-0.013-0.001-0.021c-0.002-0.033-0.003-0.066-0.004-0.1c0-0.005,0-0.009,0-0.014c-0.001-0.032-0.001-0.066-0.002-0.099c0-0.003,0-0.005,0-0.009c0-0.034,0-0.067-0.001-0.101c0-0.005,0-0.013,0-0.017c0-0.033,0-0.067,0-0.098c0-0.005,0.001-0.012,0.001-0.019c0-0.032,0-0.065,0.001-0.095c0-0.005,0-0.009,0-0.015c0.001-0.033,0.001-0.065,0.003-0.099c0.052-1.244,0.292-1.752,0.292-1.752l0.057-0.164c0,0,0.46-1.459,1.154-2.459l-0.013,0.024c0,0,0.446-0.738,1.231-0.814c0.785-0.079,1.004,0.156,1.371,0.2c0.04,0.004,0.078,0.008,0.115,0.013c0.013,0.002,0.025,0.002,0.037,0.004c0.025,0.002,0.051,0.004,0.075,0.006c0.014,0.001,0.027,0.003,0.041,0.003c0.021,0.001,0.043,0.003,0.064,0.004c0.014,0.001,0.028,0.002,0.041,0.003c0.02,0.001,0.04,0.001,0.058,0.003c0.014,0,0.026,0,0.042,0c0.019,0.001,0.036,0.002,0.055,0.002c0.013,0.001,0.026,0.001,0.038,0.002c0.017,0,0.034,0,0.051,0c0.011,0,0.023,0,0.034,0c0.017,0,0.033,0,0.05,0c0.011,0,0.02-0.001,0.032-0.001c0.016-0.001,0.031-0.001,0.046-0.001c0.011-0.001,0.02-0.001,0.03-0.002c0.016,0,0.03-0.002,0.045-0.002c0.009,0,0.019,0,0.026-0.001c0.016-0.001,0.03-0.002,0.044-0.004c0.006,0,0.016-0.001,0.023-0.002c0.015-0.001,0.029-0.001,0.044-0.003c0.006-0.001,0.013-0.002,0.02-0.002c0.016-0.002,0.03-0.004,0.045-0.008c0.004,0,0.008,0,0.013-0.001c0.019-0.002,0.036-0.005,0.052-0.008l0,0c0.035-0.006,0.068-0.014,0.098-0.021c0,0,0,0,0.002-0.002c0.012-0.002,0.026-0.005,0.039-0.01c0.002,0,0.004,0,0.008-0.001c0.009-0.003,0.019-0.006,0.028-0.009c0.004,0,0.007-0.002,0.01-0.003c0.009-0.003,0.019-0.007,0.026-0.009c0.002-0.001,0.005-0.002,0.008-0.003c0.008-0.003,0.015-0.006,0.021-0.009c0.004-0.001,0.006-0.003,0.009-0.003c0.007-0.004,0.014-0.005,0.02-0.009c0.003-0.001,0.006-0.003,0.008-0.004c0.005-0.002,0.012-0.005,0.019-0.007c0.001-0.001,0.003-0.002,0.005-0.004c0.005-0.003,0.01-0.005,0.016-0.007c0.002-0.002,0.003-0.002,0.006-0.004c0.004-0.001,0.008-0.005,0.012-0.007c0.002-0.001,0.004-0.001,0.005-0.003c0.004-0.002,0.008-0.006,0.012-0.008c0.001,0,0.003-0.002,0.004-0.003c0.003-0.003,0.007-0.004,0.011-0.007c0.001-0.001,0.001-0.001,0.002-0.003c0.004-0.001,0.006-0.005,0.008-0.008h0.002c0.003-0.002,0.005-0.005,0.008-0.007l0.001-0.001c0.002-0.002,0.004-0.004,0.006-0.006s0.002-0.002,0.003-0.003c0.001,0,0.002-0.002,0.002-0.002c0.001-0.003,0.001-0.003,0.003-0.005c0.003-0.001,0.003-0.004,0.003-0.004c0.328-0.241,0.593-0.516,0.797-0.775c0.014-0.017,0.026-0.033,0.04-0.05c0.002-0.004,0.005-0.009,0.008-0.012c0.013-0.015,0.026-0.031,0.038-0.048c0.002-0.004,0.006-0.008,0.007-0.011c0.012-0.018,0.025-0.033,0.038-0.05c0.001,0,0.001,0,0.001-0.001c0.039-0.054,0.075-0.109,0.109-0.159c0-0.002,0.002-0.004,0.003-0.007c0.01-0.016,0.02-0.029,0.03-0.044c0.001-0.004,0.005-0.007,0.007-0.011c0.008-0.014,0.017-0.029,0.024-0.042c0.003-0.004,0.005-0.009,0.009-0.013c0.008-0.014,0.017-0.028,0.024-0.042l0.001-0.002c0.017-0.027,0.032-0.055,0.046-0.079c0.002-0.003,0.004-0.008,0.007-0.012c0.005-0.009,0.01-0.021,0.016-0.03c0.003-0.007,0.007-0.014,0.012-0.02c0.004-0.008,0.01-0.017,0.014-0.024c0.002-0.008,0.006-0.017,0.011-0.023c0.004-0.007,0.009-0.016,0.012-0.022c0.004-0.007,0.007-0.014,0.011-0.021c0.002-0.006,0.007-0.011,0.01-0.018c0.066-0.13,0.097-0.207,0.097-0.207c0.594-1.459,0.052-2.935-0.21-3.224c-0.32-0.354-1.041-0.883-1.041-0.883s-0.426-0.357-1.08-0.025c-0.521,0.264-0.711,0.201-0.711,0.201c-0.024-0.498,0.149-1.432,0.491-2.263c0.341-0.829,1.075-2.253,1.075-2.253s1.047-1.792,1.467-2.89c0.418-1.102,0.415-1.94,0.415-1.94s-0.795-1.019-0.91-1.177c-0.115-0.158-0.272-0.223-0.272-0.223c-0.205,0.078-0.345,0.103-0.345,0.103l0.169-0.14c0,0,0.424-0.492,1.073-0.334c0.648,0.158,1.119-0.126,1.119-0.126c1.011-0.764,1.654-2.187,1.654-2.187l0.988-1.997L27.059,1.12c0,0-0.131-0.028-0.979,0.259c0,0-0.773,1.905-1.725,3.087c0,0-0.374,0.552-0.664,0.416c-0.289-0.134-0.629-0.144-0.91-0.085c-0.281,0.06-1.156,0.349-1.948,1.413c-0.79,1.064-0.883,1.863-0.458,2.101c0.425,0.238,1.045-0.076,1.42-0.407c0.375-0.333,0.638-0.485,0.757-0.47c0.118,0.02,0.093,0.315,0.068,0.41c-0.026,0.094-0.154,1.364-1.625,3.913c-0.369,0.64-0.845,1.589-1.069,2.046l0.608,0.447l-0.999,0.503c-0.266,0.758-0.605,1.945-0.471,2.61c0.204,1.011,1.158,1.011,1.158,1.011s0.621,0.027,1.344-0.348c0.722-0.375,0.892,1.242,0.892,1.505c0,0.264-0.007,1.726-1.02,2.442c0,0-0.409,0.313-0.985,0.313c-0.579,0-0.954-0.169-0.954-0.169s-0.984-0.272-1.59,0.083c-0.604,0.358-1.326,1.098-1.897,2.17c-0.569,1.072-1.045,2.986-1.019,4.397c0.02,1.111,0.18,2.162,0.291,2.879l0.667,0.435l-0.543,0.623c0.079,1.136,0.168,3.363,0.155,4.109c-0.018,0.911-0.154,2.84-1.115,3.292c0,0-0.324,0.171-0.868-0.238s-1.132-0.426-1.37-0.435c-0.238-0.007-1.285,0.162-1.692,1.311c-0.408,1.145-0.375,2.688-0.29,3.597c0.086,0.91,0.876,2.458,1.872,2.458c0,0,0.484,0.035,1.055-0.553c0.568-0.586,0.902-0.637,1.156-0.629c0.255,0.009,0.749,0.272,1.072,2.851c0.307,2.442,0.437,4.442,0.414,6.668l0.605,0.392l-0.758,0.768c-0.042,0.199-0.089,0.417-0.142,0.626c-0.169,0.682-0.187,1.364-0.024,2.569c0.161,1.21,0.811,3.72,1.754,4.375c1.252,0.871,2.071,0.856,2.916,0.791c0.842-0.067,1.424-0.712,1.424-0.712s0.331-0.342,0.685-0.237c0.356,0.104,1.346,0.66,2.058,2.084c0.713,1.425,0.871,2.992-0.316,3.272c-1.187,0.272-3.231-0.846-3.231-0.846s-1.161-0.647-2.109,0.064c-0.951,0.713-0.977,1.807-0.502,3.15c0.261,0.738,0.782,1.938,1.513,3.188l0.721,0.302l-0.193,0.551c0.492,0.748,1.055,1.479,1.678,2.105c0,0,2.466,2.729,3.838,4.457c0,0,0.08,0.157-0.158,0.016c-0.238-0.146-1.266-0.621-1.82-0.566c-0.555,0.054-0.45,0.395-0.45,0.395s0.238,1.254,4.01,3.365c0,0,1.359,0.766,2.216,0.766c0,0,0.277,0.039,0.619-0.346c0.346-0.381,0.45-0.341,0.688-0.262c0.237,0.076,0.553,0.249,1.741,1.105c1.188,0.857,3.496,2.176,4.325,2.731c0.83,0.555,0.793,0.657,0.621,1.054c-0.171,0.396,0.593,0.619,0.593,0.619s1.899,0.855,2.928,0.846c1.029-0.016,1.464-0.119,2.097,0.012c0.632,0.133,1.28,0.291,1.345,0.346c0.066,0.053-0.315,0.038-0.315,0.038s-2.362-0.276-2.494-0.21c-0.13,0.066,0.014,0.184,0.99,0.436v0.006c1.245,0.217,2.507,0.387,3.782,0.51c-0.489-0.061-2.52-0.322-3.823-0.713c0,0-0.131-0.078,0.173-0.014c0.303,0.065,2.018,0.225,2.466,0.157c0.448-0.065-0.092-0.274-0.092-0.274s-0.897-0.425-2.889-0.582c0,0-0.803-0.055-1.503,0.014c-0.699,0.066-1.41-0.264-1.41-0.264s-1.028-0.317-0.78-0.646c0.126-0.165,0.137-0.336,0.065-0.502L38.188,89.707L38.188,89.707z"/><linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="444.7598" y1="550.8145" x2="473.8418" y2="550.8145" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#231F20"/><stop offset="1" stop-color="#474747"/></linearGradient><path style="opacity:.35;fill:url(#SVGID_6_);" d="M62.342,86.16l-0.438,0.646c0.096,0.655-0.104,0.875-0.254,1.119c-0.156,0.26-0.59,0.592-0.375,1.185c0.218,0.59,1.687,0.401,2.535,0.144c0.852-0.26,1.569-0.49,2.134-0.693c0.562-0.198,0.719,0.086,0.719,0.086s0.246,0.175-0.574,0.606c-0.821,0.433-2.336,0.634-3.055,0.72c-0.724,0.086-0.506-0.043-1.586,0.33c-1.082,0.377-0.07,0.707-0.07,0.707c2.435,0.635,4.188,0.115,4.188,0.115l0.332-0.097c0.27-0.077,0.535-0.161,0.803-0.244c-2.021,0.456-3.326,0.149-3.739,0.095c-0.431-0.058-0.778-0.145-0.88-0.361c-0.102-0.215,0.479-0.2,0.479-0.2s1.683-0.188,3.24-0.69c1.557-0.506,1.932-0.98,1.871-1.341c-0.057-0.358-0.848-0.332-1.785-0.028c-0.937,0.305-2.334,0.75-2.662,0.821c-0.334,0.07-0.691,0.06-0.812-0.146c-0.114-0.203-0.216-0.53,0.146-0.905c0.36-0.376,0.402-0.694,0.402-0.694c0.055-0.254,0.057-0.523,0.021-0.8L62.342,86.16l0.545-0.118c-0.298-1.124-1.052-2.218-1.279-2.577c-0.314-0.507-0.836-0.793-2.393-0.535c-1.556,0.26-3.386,1.035-3.386,1.035s-1.888,0.997-3.298,0.812c-1.413-0.188-1.703-1.614-1.688-2.063c0.015-0.447,0.304-0.835,1.039-1.123c0.735-0.289,2.465-0.678,4.985-0.808s3.458-1.771,3.458-1.771c0.33-0.478,0.922-1.543-0.489-2.336c-1.41-0.791-1.441-0.593-2.119-1.107c-0.678-0.52-1.412-1.153-1.701-2.033c-0.025-0.084-0.066-0.197-0.104-0.292l-0.849-0.558l0.41-0.371c-0.34-0.67-0.693-1.271-0.693-1.271s-1.281-1.902-0.246-3.703c1.038-1.803,2.736-2.348,2.736-2.348s1.5-0.332,2.996,0.016c1.418,0.324,2.133-0.219,2.133-0.219s0.865-0.374,1.123-2.102c0.264-1.729-0.014-4.943-2.316-5.578c-2.307-0.633-3.527,0.563-3.527,0.563s-1.24,1.369-1.644,1.57c-0.404,0.201-1.022,0.563-1.022,0.563s-0.867,0.519-1.453,0.648c-0.393,0.086-1.791-1.771-1.933-3.201c-0.133-1.316-0.401-2.388-0.306-5.096l-0.485-0.63l0.537-0.533c0.101-2.999-0.417-5.116-1.188-6.461c-0.807-1.412-2.119-2.161-2.766-2.478c-0.648-0.318-2.147-0.462-3.17-0.086c-1.023,0.374-1.239,0.678-1.613,1.326c-0.376,0.648-0.836,0.605-0.836,0.605s-1.427,0.043-1.888-2.133c-0.646-3.049,0.359-4.035,0.359-4.035s0.318-0.476,1.369-0.619c1.053-0.144,1.73,0.115,2.537,0.315c0.806,0.202,1.41,0.116,2.419-0.374c1.008-0.491,1.442-1.297,1.238-2.739c-0.195-1.393-0.255-1.742-1.483-5.964l-0.875-0.46l0.583-0.579C44.87,23.032,44.8,20.35,44.8,20.35c-0.106-0.977,0.049-1.292,0.598-1.54c0.576-0.259,1.116-0.175,1.934-0.123c0.818,0.053,1.425-0.079,1.847-0.316c0.422-0.237,1.581-0.87,1.504-2.162c-0.08-1.292-1.109-2.824-1.953-3.351c-0.843-0.528-1.953-0.316-2.558,0.131c-0.606,0.45-0.845,1.029-1.214,1.214c-0.369,0.183-0.895,0.605-1.45,0.474c-0.554-0.132-0.581-1.371-0.818-2.77c-0.153-0.907-0.271-1.611-0.338-1.989l-0.678-0.254c0.044,0.557,0.535,3.304,0.535,3.304s0.223,1.364,0.308,1.692c0.086,0.329,0.314,1.05,0.314,1.05s0.092,0.364,0.456,0.535c0.365,0.172,1.052,0.24,1.743-0.032c0.692-0.271,0.886-0.572,1.199-0.938c0.315-0.364,0.429-0.493,0.429-0.493s0.663-0.622,1.478-0.343c0.813,0.278,1.299,1.228,1.299,1.228l0.028,0.06c0,0,0.403,0.661,0.392,1.269v-0.057c0,0-0.022,0.301-0.697,0.818c-0.676,0.519-1.226,0.479-1.678,0.442c-0.454-0.04-0.666-0.072-0.797-0.045l-0.719,0.038C45.178,18.303,44.74,18.6,44.74,18.6c-1.8,1.064,0.736,9.288,0.736,9.288l0,0L45.2,28.501c0,0,0.514,2.052,0.904,3.378c0.388,1.326,0.562,2.637,0.62,2.91c0.058,0.274,0.044,0.762-0.317,1.051c-0.359,0.289-1.239,0.534-1.425,0.562c-0.187,0.029-0.535-0.042-0.996-0.201c-0.462-0.158-0.922-0.187-0.922-0.187s-1.11-0.188-2.291,0.173c-1.182,0.359-2.076,1.569-2.148,3.083c-0.071,1.513-0.057,2.278,0.535,3.617c0.59,1.34,1.657,2.104,2.463,2.118c0.808,0.014,1.469-0.403,1.931-1.051c0.459-0.65,0.59-0.751,0.59-0.751c0.548-0.302,1.944-0.433,2.651-0.172c0.708,0.258,2.007,1.073,2.723,2.679c0.579,1.298,0.76,2.75,0.729,5.363l0.584,0.448l-0.61,0.703c-0.007,0.246-0.016,0.498-0.026,0.761c-0.143,3.876,0.72,5.864,0.72,5.864c0.491,1.065,1.023,1.83,1.745,2.318c0.719,0.489,1.699,0.156,2.018,0c0.315-0.158,1.194-0.563,1.943-1.037c0.749-0.477,0.725-0.679,1.629-1.515c0.907-0.833,2.076-0.604,2.076-0.604s1.107,0.028,1.74,1.313c0.637,1.283,0.509,3.109,0.347,3.773c-0.158,0.662-0.444,1.097-1.063,0.979c-0.621-0.114-1.645-0.217-2.019-0.231c-0.375-0.014-1.433-0.049-2.394,0.203c-0.938,0.244-2.205,0.92-3.414,2.883c-0.938,1.52-0.478,3.013-0.262,3.603c0.17,0.462,0.635,1.104,1.043,1.896l0.756,0.252l-0.35,0.656c0.398,0.963,0.701,1.493,1.305,2.151c0.648,0.705,1.672,1.251,2.881,1.714c1.213,0.462,0.662,1.282,0.662,1.282c-0.69,1.497-2.75,1.557-3.354,1.628c-0.604,0.07-1.872,0.188-3.058,0.447c-1.182,0.261-2.291,0.418-2.954,1.182c-0.661,0.764-0.402,1.557-0.013,2.393c0.388,0.834,1.427,1.28,2.853,1.226c1.426-0.058,2.35-0.476,3.214-0.851s2.362-0.809,2.81-0.937c0.445-0.129,1.051-0.39,1.498,0.26c0.482,0.701,0.994,1.697,1.229,2.45L62.342,86.16L62.342,86.16z"/><path style="opacity:.1;fill:#232323;" d="M101.566,51.162c0,0,0.347-3.236,0.457-4.392c0.018-0.173,0.031-0.343,0.045-0.513l-0.098-0.241c-0.459,5.815-0.938,7.727-0.938,7.727s0.013-0.037,0.031-0.101c0.189-0.817,0.357-1.646,0.51-2.48C101.568,51.162,101.566,51.162,101.566,51.162L101.566,51.162z"/><path style="opacity:.1;fill:#232323;" d="M91.268,12.579l0.328,0.413l0.279,0.5c1.021,1.648,2.846,4.295,2.846,4.295s0.739,0.958,0.905,0.968c0.164,0.01-0.084-0.741-0.084-0.741s-0.271-0.979,0.517,0.298c0.73,1.19,1.207,2.359,1.317,2.72c0.114,0.361,0.042,0.411,0.042,0.411s-0.146,0.072-0.146,0.33c0,0.505,0.496,1.659,0.496,1.659s1.545,3.926,2.07,5.563c0.526,1.641,1.133,4.368,1.133,4.368s0.187,0.804,0.207,1.174c0.021,0.371-0.063,0.381-0.229,0.186c-0.164-0.196-0.329-0.072-0.329-0.072s-0.175,0.072-0.175,0.773c0,0.7,0.085,2.346,0.217,3.615c0.152,1.505,0.616,2.133,0.616,2.133s0.413,0.618,0.526-0.577c0.096-1.028,0.185-0.228,0.185-0.228c0.196,1.557,0.062,4.544,0.03,4.955c-0.019,0.218-0.032,0.433-0.049,0.64l0.133-0.221c0.201-2.971,0.06-5.359,0.06-5.359s-0.144-1.323-0.3-1.311c-0.155,0.01-0.211,0.701-0.211,0.701s-0.065,0.467-0.156,0.456c-0.088-0.011-0.369,0.022-0.566-1.412c-0.199-1.436-0.156-2.949-0.156-2.949s-0.043-0.155,0.048-0.189c0.09-0.034,0.188,0.1,0.188,0.1s0.133,0.189,0.287,0.033c0.156-0.154,0.19-0.622-0.301-3.08c-0.288-1.454-0.711-2.896-1.006-3.832l-0.294-0.333l-0.058-0.718c0,0-0.311-0.913-1.033-2.737c-0.723-1.824-0.846-2.458-0.846-2.458s-0.045-0.2,0.066-0.234c0.111-0.032,0.091-0.178,0.091-0.178s-0.013-0.245-0.278-0.99c-0.268-0.746-0.426-1.281-1.356-2.86c-0.869-1.468-1.124-1.558-1.124-1.558s-0.426-0.234-0.112,0.591c0.313,0.823-0.075,0.232-0.075,0.232c-0.925-1.177-2.838-4.292-2.838-4.292l-0.537-0.373l-0.508-1.261l-0.015,0.01"/><path style="opacity:.1;fill:#232323;" d="M1.547,32.696l-0.183,0.37c-0.472,2.495-0.625,5.135-0.62,5.31c0.01,0.208-0.036,0.211-0.075,0.178c-0.042-0.035,0.03-0.16-0.048-0.16c-0.079,0-0.108,0.211-0.108,0.211L0.512,38.6c-0.021,0.288-0.038,0.574-0.053,0.861l0.016-0.003c0.068-0.098,0.097-0.028,0.097-0.028s-0.029,0.126,0.097,0.056c0.126-0.07,0.21-1.379,0.21-1.379s0.014-2.813,0.836-6.14c0.819-3.327,1.281-4.259,1.281-4.259s0.154-0.418,0.138-0.083C3.12,27.958,3.33,27.986,3.33,27.986c0.375-0.054,0.821-1.125,1.267-2.493c0.445-1.363,0.668-2.589,0.668-2.7c0-0.11-0.055-0.194-0.152-0.138c-0.098,0.056-0.125,0.014-0.125,0.014c-0.014-0.208,0.361-1.127,0.361-1.127c1.253-3.202,3.104-5.694,3.104-5.694l0.09-0.504c-0.164,0.254-0.27,0.419-0.421,0.661c-0.056,0.089-0.042,0.297-0.001,0.32c-0.201,0.191-0.365,0.35-0.476,0.456c-2.707,4.473-3.059,6.556-3.059,6.556c-0.017,0.214,0.004,0.311,0.111,0.306c0.065-0.003,0.251-0.349,0.116,0.354c-0.09,0.468-0.524,1.708-0.693,2.212c-0.171,0.505-0.358,0.85-0.495,0.826C3.49,27.01,3.49,26.801,3.49,26.801s-0.042-0.546-0.398,0.245c-0.356,0.791-0.713,1.859-1.425,4.65c-0.031,0.125-0.063,0.251-0.092,0.38L1.547,32.696L1.547,32.696z"/><path style="opacity:.1;fill:#232323;" d="M4.841,62.626c-0.15-0.401-0.264-0.722-0.179-0.581c0.085,0.143,0.198,0.432,0.462,0.725c0.263,0.291,0.442-0.226-0.622-3.104s-1.354-3.04-1.402-3.095c-0.046-0.058-0.215-0.237-0.167,0.167c0.045,0.404,0.018,0.656-0.51-1.146c-0.528-1.806-0.996-4.844-1.025-5.089c-0.027-0.243-0.169-1.778-0.396-3.594c-0.226-1.814-0.246-3.743-0.207-4.28c0.039-0.537-0.066-0.828-0.123-0.837c-0.056-0.008-0.094,0.047-0.131,0.284c-0.038,0.234-0.01,0.395-0.067,0.385c-0.057-0.009-0.076-0.471-0.076-0.471H0.391c0,0.05,0,0.1,0,0.151c0,0.174,0.001,0.345,0.002,0.519l0.039,0.402c0.033,0.597,0.129,0.354,0.135,0.246c0.006-0.109,0.03-0.329,0.03-0.329s0.103-0.884,0.084,0.02c-0.019,0.904,0.236,4.563,0.236,4.563c0.019,0.236,0.041,0.479,0.068,0.729l0.063,0.092l-0.042,0.104c0.265,2.425,0.795,5.086,0.795,5.086c0.507,2.417,1.11,3.846,1.308,4.25c0.198,0.405,0.236,0.085,0.17-0.271c-0.066-0.357,0.546,0.688,0.873,1.674c0.332,0.99,0.556,1.815,0.556,1.815s0.254,0.781,0.142,0.828c-0.113,0.046-0.292-0.293-0.292-0.293s-0.473-0.835-0.274-0.228c0.398,1.231,1.6,3.822,1.6,3.822l1.396,2.471C6.282,65.836,4.982,63.004,4.841,62.626L4.841,62.626z"/><path style="opacity:.1;fill:#232323;" d="M7.281,67.639c0.069,0.125,0.136,0.246,0.202,0.359L7.281,67.639z"/><path style="opacity:.1;fill:#232323;" d="M20.722,2.874C20.51,3.216,20.48,3.388,20.48,3.388s0.112-0.118,0.183-0.237C20.733,3.033,20.722,2.874,20.722,2.874z"/><path style="opacity:.1;fill:#232323;" d="M17.216,5.572c-0.417,0.048-0.677,0.25-0.677,0.25S16.889,5.761,17.216,5.572z"/><path style="opacity:.1;fill:#232323;" d="M84.005,4.909c0,0,0.247-0.03,0.347,0.02c0.101,0.049,0.066-0.158,0.066-0.158s-0.287-0.406-0.322-0.556c-0.32-0.089-0.611-0.1-0.611-0.1l-0.028,0.034c-0.01,0.075-0.036,0.188-0.012,0.297C83.441,4.448,83.917,4.811,84.005,4.909L84.005,4.909z"/><path style="opacity:.1;fill:#232323;" d="M87.487,7.88l0.095-0.152l-0.223-0.679c-0.004-0.012-0.012-0.022-0.021-0.036c-0.007,0.066-0.049,0.125-0.172,0.115c0,0-0.099-0.03-0.011,0.198C87.219,7.469,87.355,7.699,87.487,7.88L87.487,7.88z"/><path style="opacity:.1;fill:#232323;" d="M101.566,51.162c0,0,0.347-3.236,0.457-4.392c0.018-0.173,0.031-0.343,0.045-0.513l-0.098-0.241c-0.459,5.815-0.938,7.727-0.938,7.727s0.013-0.037,0.031-0.101c0.189-0.817,0.357-1.646,0.51-2.48C101.568,51.162,101.566,51.162,101.566,51.162L101.566,51.162z"/><linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="266.4922" y1="-395.2783" x2="295.9644" y2="-485.0349" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset=".0094" stop-color="#FCFCFC"/><stop offset=".0655" stop-color="#EEEEEE"/><stop offset=".1342" stop-color="#E5E5E5"/><stop offset=".2515" stop-color="#E3E3E3"/><stop offset=".3357" stop-color="#8A8A8A"/><stop offset=".4422" stop-color="#B8B8B8"/><stop offset="1" stop-color="#3B3B3B"/></linearGradient><path style="opacity:.5;fill:url(#SVGID_7_);" d="M79.003,84.528c0,0,0.667-0.653,0.539-0.752c-0.128-0.101-0.623,0.256-0.623,0.256s-0.073,0.062-0.185,0.142l0.393-0.252c0,0-0.038,0.238-0.355,0.555c0,0-0.094,0.094-0.258,0.248c-0.957,0.938-2.386,1.998-2.386,1.998l0.396-0.211C77.844,85.703,79.003,84.528,79.003,84.528z"/><linearGradient id="SVGID_8_" gradientUnits="userSpaceOnUse" x1="460.4629" y1="512.5557" x2="509.5884" y2="573.3062" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#EFF0F0"/><stop offset=".5914" stop-color="#F0F1F2"/><stop offset=".599" stop-color="#787878"/><stop offset=".6456" stop-color="#EEEFF0"/><stop offset="1" stop-color="#D8D9DB"/></linearGradient><path style="opacity:.73;fill:url(#SVGID_8_);" d="M82.984,39.705l0.51-0.891l-0.127-1.667c0,0-0.085-0.893-0.566-2.28c-0.979-2.828-1.941-4.122-1.941-4.122s-0.592-1.318-1.969-1.318c-1.33,0-1.431,1.219-1.431,1.219s-0.312,0.963-0.821,1.261c-0.5,0.29-1.972,1.146-2.748,0.296c-0.941-1.026-1.461-2.225-1.56-3.372c-0.101-1.146,0.367-1.615,0.367-1.615s0.1-0.296,1.614-0.296c1.703,0,2.014-0.525,2.014-0.525s0.324-0.296,0.297-0.963s-0.284-2.097-0.779-3.001c-0.324-0.596-1.058-1.537-1.684-2.261l-0.967-0.178l0.15-0.699c-0.56-0.514-3.465-3.959-4.031-4.766c-0.564-0.808-0.65-0.993-0.75-1.262c-0.099-0.269,0.17-0.877,0.412-1.161c0.238-0.283,0.521-0.341,1.104-0.212c0.58,0.127,0.961,0.381,1.886,0.084c0.919-0.297,0.962-0.992,1.033-1.699c0.071-0.708-0.78-2.209-1.458-2.932c-0.684-0.721-1.645-0.836-2.311-0.792c-0.664,0.042-1.047,0.523-1.433,0.737c-0.382,0.213-1.103,0.425-1.429,0.284c-0.326-0.142-0.823-0.284-1.375-1.261c-0.43-0.76-0.794-1.459-0.979-1.817L63.299,4.42v0.012c0,0,0.633,1.654,1.633,2.811c0.998,1.157,2.266,0.919,2.266,0.919s0.82-0.089,1.533-0.772c0.711-0.683,1.761-0.148,2.024,0.04c0.269,0.189,0.853,0.911,1.478,2.127c0.621,1.216-0.355,2.058-0.355,2.058s-0.555,0.535-1.691,0.088c-1.14-0.443-1.813,0.259-1.986,0.614c-0.182,0.357-0.508,0.99,0.076,1.73c0.584,0.742,3.178,4.273,4.916,5.945c1.74,1.672,2.314,3.047,2.682,4.342c0.365,1.297,0.079,1.899-0.521,2.018c-0.604,0.118-1.148,0.021-2.086,0.187c-0.94,0.17-1.349,0.367-1.543,1.653c-0.199,1.286,0.562,3.373,1.67,4.361c1.106,0.989,2.334,0.386,2.76,0.228c0.427-0.159,1.352-0.653,1.681-2.027c0.188-0.783,0.851-0.721,0.851-0.721s0.563-0.071,0.854,0.117c0.287,0.19,0.633,0.525,1.402,1.87c0.772,1.346,1.453,3.146,1.724,4.738C82.924,38.35,82.729,38.576,82.984,39.705c0.256,1.128,1.078,3.245,1.466,4.074c0.383,0.832,0.78,1.662,0.989,2.107c0.205,0.445,0.531,0.782,1.443,0.802c0.908,0.02,1.273-0.228,1.541-0.662c0.27-0.435,0.612-1.088,0.713-1.316c0.1-0.228,0.467-0.911,1.146-1.02c0.685-0.108,1.762,0.01,2.106,1.198c0.313,1.071,0.76,2.622-0.158,4.5c-0.65,1.334-1.129,0.859-2.451,0.948c0,0-1.165-0.01-1.781,0.921c-0.611,0.93-0.416,2.61-0.286,3.877s0.988,3.113,1.621,3.563c0.636,0.443,0.86,0.849,1.08,1.256c0.216,0.404,0.534,1.205,0.216,3.313c-0.313,2.106-0.979,3.74-1.867,4.521c-0.024,0.021-0.05,0.043-0.07,0.063c-0.067,0.065-0.141,0.135-0.219,0.201c-0.537,0.521-0.371,0.543-0.889,0.793c-0.594,0.289-0.988,0.207-1.958,0.365c-0.97,0.16-1.583,0.327-2.088,0.821c-0.503,0.495-1.243,1.409-0.979,3.187c0.148,0.986,1.318,0.584,2.229,0.111c-0.274,0.125-0.553,0.221-0.798,0.246c-1.033,0.113-0.991-0.949-0.921-1.415c0.069-0.47,0.313-1.544,1.063-1.97s1.799-0.41,2.533-0.512c0.738-0.101,1.076-0.313,1.076-0.313s1.205-0.766,1.997-2.055c0.793-1.289,1.502-3.371,1.587-5.438c0.084-2.068-0.821-2.902-1.104-3.271c-0.283-0.366-0.799-0.203-1.431-1.729c-0.724-1.74-0.81-3.188-0.751-4.079c0.057-0.892,0.27-1.231,0.682-1.612c0.41-0.383,2.223-0.213,2.223-0.213s0.893,0.185,1.686-1.134c0.793-1.317,0.738-3.471,0.481-4.546c-0.253-1.076-0.623-2.013-2.097-2.168c-1.471-0.152-2.138,1.66-2.138,1.66s-0.297,0.693-0.608,1.092c-0.312,0.395-1.16,0.285-1.16,0.285c-0.37-0.044-0.821,0.099-1.264-0.81c-0.438-0.906-1.442-3.286-1.442-3.286c-0.339-0.809-0.556-1.512-0.688-2.055L82.984,39.705L82.984,39.705z"/><linearGradient id="SVGID_9_" gradientUnits="userSpaceOnUse" x1="272.8721" y1="-392.8257" x2="302.4699" y2="-482.9646" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path style="opacity:.53;fill:url(#SVGID_9_);" d="M82.487,79.313l0.801-0.479c0.788-1.231,1.72-2.31,2.431-3.103c0.863-0.961,1.896-2.522,1.896-2.522s0.835-1.431,0.638-1.784c-0.13-0.23-0.704,0.02-1.687,0.752c-3.674,2.746-3.971,1.246-3.971,1.246c0.422,2.438,4.729-1.633,5.108-1.375c-0.063,0.563-0.457,1.172-1.25,2.25c0,0-0.388,0.555-0.78,0.953c-0.369,0.432-0.578,0.641-0.578,0.641s-0.088,0.09-0.125,0.125c-0.471,0.541-1.024,1.242-1.595,2.018c-0.019,0.021-0.104,0.113-0.125,0.143c-0.295,0.416-0.491,0.73-0.702,1.062c-0.014,0.022-0.064,0.011-0.076,0.034c0-0.002-0.013,0.014-0.025,0.037c-0.245,0.39-0.373,0.713-0.508,0.959c-0.012,0.029-0.021,0.065-0.03,0.095c0,0-0.319,0.665-0.457,1.067c-0.14,0.405-0.12,0.547-0.623,0.625c-0.504,0.078-0.276-0.053-1.021,0.196c0,0-0.403,0.199-0.938,0.571c-0.027,0.021-0.057,0.042-0.082,0.063c-0.736,0.604-1.247,1.119-1.534,1.436c-0.051,0.063-0.099,0.13-0.146,0.195c0,0-0.157,0.168,0.051,0.188c0.206,0.021,0.633-0.01,1.008-0.169l0.088-0.057c-0.186,0.103-0.373,0.174-0.513,0.162c-0.396-0.026,0.479-0.864,0.479-0.864s0.906-1.019,1.771-1.175c0.862-0.156,1.021-0.371,1.444-0.693c0.426-0.327,0.494-0.682,1.359-2.254c0.03-0.059,0.064-0.115,0.098-0.176L82.487,79.313L82.487,79.313z"/><linearGradient id="SVGID_10_" gradientUnits="userSpaceOnUse" x1="444.6943" y1="510.9561" x2="469.7246" y2="592.0699" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#FFF"/><stop offset=".7473" stop-color="#F9F9F9"/><stop offset="1" stop-color="#D5D7D8"/></linearGradient><path style="opacity:.96;fill:url(#SVGID_10_);" d="M55.064,72.686l0.408-0.377c-0.34-0.668-0.693-1.269-0.693-1.269s-1.282-1.901-0.245-3.703c1.036-1.803,2.737-2.348,2.737-2.348s1.5-0.332,2.996,0.017c1.418,0.323,2.133-0.22,2.133-0.22s0.865-0.376,1.123-2.104c0.261-1.729-0.014-4.94-2.317-5.576c-2.306-0.633-3.528,0.563-3.528,0.563s-1.242,1.369-1.644,1.57c-0.404,0.2-1.024,0.562-1.024,0.562s-0.865,0.52-1.453,0.648c-0.39,0.087-1.788-1.771-1.931-3.2c-0.133-1.313-0.4-2.385-0.305-5.084c0-0.005,0-0.01,0-0.017l-0.486-0.629l0.537-0.526c0.102-3-0.418-5.119-1.188-6.463c-0.805-1.414-2.118-2.163-2.766-2.479c-0.647-0.317-2.146-0.461-3.169-0.086c-1.022,0.375-1.237,0.677-1.613,1.325c-0.376,0.65-0.835,0.606-0.835,0.606s-1.427,0.044-1.89-2.132c-0.644-3.049,0.36-4.036,0.36-4.036s0.318-0.475,1.369-0.619c1.053-0.144,1.73,0.115,2.536,0.317c0.807,0.2,1.41,0.114,2.42-0.374c1.009-0.49,1.442-1.298,1.24-2.738c-0.196-1.397-0.249-1.727-1.484-5.966l-0.874-0.458l0.582-0.579c-1.182-4.271-1.257-6.961-1.257-6.961c-0.105-0.975,0.049-1.29,0.598-1.537c0.576-0.261,1.117-0.177,1.934-0.125c0.819,0.052,1.425-0.079,1.847-0.316c0.423-0.236,1.583-0.87,1.503-2.163c-0.078-1.292-1.108-2.823-1.951-3.35c-0.844-0.528-1.952-0.317-2.56,0.132c-0.606,0.447-0.843,1.028-1.213,1.212c-0.368,0.185-0.896,0.607-1.45,0.474c-0.554-0.132-0.581-1.372-0.818-2.77c-0.155-0.915-0.276-1.614-0.342-1.989l-0.674-0.254c0.043,0.557,0.535,3.304,0.535,3.304l0.294,1.624c0,0,0,0.007,0,0.02c0.006,0.018,0.009,0.036,0.013,0.05c0.019,0.079,0.049,0.18,0.082,0.289c0.114,0.215,0.37,0.456,0.942,0.502c1.076,0.089,1.772-0.468,2.025-0.709c0.254-0.239,0.86-0.911,0.86-0.911s0.329-0.632,1.253-0.494c0.922,0.14,1.238,0.773,1.403,1.013c0.167,0.242,1.57,1.961,0.672,2.861c-0.039,0.039-0.093,0.089-0.152,0.146c-0.104,0.111-0.245,0.246-0.446,0.399c-0.675,0.517-1.226,0.48-1.678,0.442c-0.453-0.039-0.665-0.07-0.795-0.043l-0.72,0.038c-0.787,0.11-1.224,0.408-1.224,0.408c-1.8,1.065,0.735,9.287,0.735,9.287s0.671,2.029,0.973,2.979c0.301,0.949,0.496,1.625,0.791,3.264c0.295,1.639-0.231,2.092-0.525,2.251c-0.294,0.158-0.984,0.568-1.77,0.604c-0.783,0.034-1.027-0.368-2.371-0.432c-1.345-0.065-2.246,0.345-2.661,0.906c-0.417,0.561-0.913,1.862-0.675,3.4c0.237,1.541,0.504,2.064,1.092,2.748c0.59,0.681,1.165,0.97,1.978,0.696c0.792-0.266,0.764-0.756,1.173-1.164c0.517-0.519,0.855-0.792,2.063-0.821c1.208-0.029,1.979,0.288,2.594,0.784c0.619,0.496,1.934,1.646,2.294,3.356c0.359,1.713,0.424,2.268,0.424,3.676s-0.101,2.978-0.064,4.381c0.036,1.4,0.187,2.841,0.577,3.795c0.386,0.955,0.926,1.755,1.4,2.18c0.475,0.426,0.896,0.438,1.373,0.252c0.475-0.188,1.511-0.771,2.373-1.324c0.861-0.555,0.797-0.99,1.576-1.502c0.875-0.576,1.799-0.605,2.457-0.486c0.661,0.112,1.676,0.631,2.092,1.889C63.059,60.58,63,61.998,63,61.998s0.035,1.186-0.445,1.876c-0.48,0.688-1.272,0.616-1.625,0.545c-0.354-0.071-1.094-0.136-1.094-0.136s-1.451-0.165-2.563,0.094c-1.105,0.258-2.077,1.085-2.73,1.896c-0.652,0.813-0.941,1.57-0.984,2.158c-0.043,0.59,0.027,1.595,0.642,2.572c0.612,0.979,0.712,1.432,1.409,2.827c0.695,1.396,2.15,2.17,2.201,2.206c0.05,0.037,1.388,0.523,1.89,0.949c0.505,0.425,0.555,0.826,0.411,1.208c-0.145,0.381-0.438,1.094-1.604,1.604c-1.166,0.512-2.591,0.523-3.496,0.617c-0.906,0.094-2.651,0.332-3.697,0.834c-1.043,0.503-0.97,1.454-0.97,1.454s-0.028,1.556,1.337,1.983c1.365,0.434,2.64,0,3.201-0.237c0.562-0.238,1.487-0.583,1.487-0.583s1.791-0.631,2.752-0.848c0.965-0.217,1.533-0.323,2.188,0.832c0.652,1.158,1.014,1.886,1.078,2.625c0.064,0.74-0.209,1.148-0.461,1.432c-0.25,0.279-0.217,0.46-0.217,0.46c-0.105,0.873,1.182,0.763,1.182,0.763s0.041-0.004,0.11-0.018c-0.26,0.021-0.499-0.021-0.59-0.178c-0.116-0.202-0.217-0.531,0.146-0.906c0.359-0.374,0.402-0.693,0.402-0.693c0.305-1.439-1.038-3.371-1.354-3.875c-0.315-0.503-0.836-0.791-2.394-0.531c-1.556,0.26-3.386,1.037-3.386,1.037s-1.891,0.995-3.299,0.809c-1.413-0.188-1.701-1.614-1.687-2.063c0.016-0.444,0.304-0.836,1.038-1.122c0.733-0.289,2.464-0.679,4.984-0.809c2.522-0.128,3.458-1.771,3.458-1.771c0.331-0.478,0.923-1.543-0.489-2.338c-1.412-0.789-1.44-0.589-2.116-1.104c-0.68-0.521-1.412-1.153-1.701-2.034c-0.026-0.084-0.07-0.198-0.108-0.291L55.064,72.686L55.064,72.686z"/><linearGradient id="SVGID_11_" gradientUnits="userSpaceOnUse" x1="390.042" y1="485.6797" x2="390.042" y2="485.6797" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#FFF"/><stop offset=".7473" stop-color="#F9F9F9"/><stop offset="1" stop-color="#D5D7D8"/></linearGradient><path style="fill:url(#SVGID_11_);" d="M-16.122-14.641"/><linearGradient id="SVGID_12_" gradientUnits="userSpaceOnUse" x1="390.042" y1="485.6797" x2="390.042" y2="485.6797" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#FFF"/><stop offset=".7473" stop-color="#F9F9F9"/><stop offset="1" stop-color="#D5D7D8"/></linearGradient><path style="fill:url(#SVGID_12_);" d="M-16.122-14.641"/><path style="opacity:.1;fill:#232323;" d="M92.002,13.363c1.021,1.649,2.844,4.295,2.844,4.295s0.256,0.332,0.5,0.605l0.01-0.011c0.011-0.375-0.051-0.571-0.06-0.621l-0.091-0.274c-0.021-0.367,0.438,0.095,0.611,0.288c-0.498-0.754-0.659-0.811-0.659-0.811s-0.423-0.234-0.111,0.59c0.312,0.824-0.075,0.233-0.075,0.233c-0.924-1.177-2.838-4.293-2.838-4.293l-0.553-0.383L92.002,13.363L92.002,13.363z"/><path style="opacity:.1;fill:#232323;" d="M101.539,51.352c0.014-0.063,0.023-0.125,0.034-0.188c-0.004,0-0.009,0-0.009,0s0.005-0.03,0.013-0.089C101.563,51.17,101.551,51.262,101.539,51.352L101.539,51.352z"/><path style="opacity:.1;fill:#232323;" d="M100.822,35.679c0.088-0.033,0.188,0.1,0.188,0.1s0.135,0.189,0.289,0.033c0.107-0.104,0.155-0.353,0.025-1.257c-0.004,0.229-0.053,0.409-0.137,0.59c-0.139,0.296-0.314,0.02-0.441-0.081c-0.129-0.098-0.168,0.07-0.168,0.07l-0.004,0.162c0,0.7,0.087,2.346,0.217,3.617c0.063,0.605,0.173,1.071,0.287,1.408l0.041,0.076c0.089,0.148,0.188,0.343,0.307,0.255c0.116-0.089,0.274-0.582,0.274-0.582l0.128-0.591c0.191,0.113,0.291,0.529,0.341,0.962c-0.002-0.037-0.004-0.056-0.004-0.056s-0.144-1.324-0.3-1.313c-0.155,0.01-0.21,0.701-0.21,0.701s-0.066,0.468-0.157,0.456c-0.088-0.011-0.365,0.022-0.564-1.412c-0.201-1.436-0.158-2.949-0.158-2.949S100.732,35.713,100.822,35.679L100.822,35.679z"/><path style="opacity:.1;fill:#232323;" d="M99.696,28.566l0.298,0.341c0.479,1.494,0.996,3.843,1.092,4.264c-0.027-0.139-0.056-0.286-0.088-0.441c-0.288-1.454-0.711-2.896-1.006-3.832L99.696,28.566l-0.05-0.702c-0.004-0.01-0.006-0.016-0.006-0.016s-0.312-0.913-1.033-2.737c-0.725-1.824-0.848-2.458-0.848-2.458s-0.043-0.2,0.066-0.234c0.109-0.032,0.09-0.178,0.09-0.178s-0.013-0.245-0.277-0.99c-0.182-0.503-0.312-0.911-0.662-1.607c0.281,0.585,0.463,1.052,0.524,1.259l0.028,0.068c0,0,0.099,0.148,0.066,0.552c-0.027,0.403-0.146,0.452-0.146,0.452l0.022,0.14c0.141,0.538,0.418,1.187,0.418,1.187s1.065,2.709,1.748,4.54L99.696,28.566L99.696,28.566z"/><linearGradient id="SVGID_13_" gradientUnits="userSpaceOnUse" x1="274.5342" y1="-396.1577" x2="255.2091" y2="-490.1944" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path style="fill:url(#SVGID_13_);" d="M42.958,91.536c0.938,0.177,1.723,0.358,1.889,0.396C44.514,91.822,43.895,91.653,42.958,91.536z"/><linearGradient id="SVGID_14_" gradientUnits="userSpaceOnUse" x1="422.5586" y1="518.7568" x2="427.2878" y2="578.1768" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset=".2198" stop-color="#989A9C"/><stop offset=".2527" stop-color="#FFF"/></linearGradient><path style="fill:url(#SVGID_14_);" d="M20.381,74.92l0.007-0.164l-0.052-0.08c0,0-1.874-3.375-1.676-4.615c0,0,0.069-0.827,1.241-1.187c0.817-0.25,0.71,0.538,3.112,0.976c0,0,2.07,0.557,2.611-0.946c0.539-1.507-0.566-3.394-0.566-3.394s-1.45-2.656-3.244-2.756c-0.95-0.055-0.692,0.583-2.125,0.924c0,0-1.913,0.185-2.519-0.963c-0.733-1.389-1.015-2.968-1.015-4.021c0-1.058,0.045-1.001,0.126-1.405c0.045-0.219,0.186-0.548,0.248-1.09l-0.134-0.675l0.204-0.499c0.002-0.26-0.004-0.535-0.021-0.83c-0.092-1.661-0.211-4.221-0.436-5.711c-0.223-1.491-0.633-3.799-1.991-3.865c0,0-0.671-0.052-1.636,0.885c-0.882,0.856-1.682-0.708-1.726-1.663c-0.052-1.121,0.131-2.255,0.409-2.795c0.277-0.541,1.042-0.566,1.186-0.554c0.146,0.012,0.555,0.17,1.042,0.474c0.489,0.304,1.161,0.304,1.558-0.092c0.395-0.395,0.948-0.856,1.173-2.598c0.225-1.741,0.225-3.547,0.013-5.71l-0.224-0.485l1.339-0.288c-0.001-0.016-0.021-0.125-0.032-0.195c0,0,0-0.001-0.001-0.002c-0.001-0.017-0.004-0.033-0.007-0.052c0-0.002,0-0.004,0-0.005c-0.003-0.019-0.007-0.038-0.009-0.057c-0.001-0.001-0.001-0.001-0.001-0.003c-0.003-0.022-0.006-0.042-0.009-0.062c0-0.001,0-0.001,0-0.001c-0.004-0.022-0.006-0.045-0.011-0.067c0-0.003-0.001-0.006-0.001-0.007c-0.002-0.022-0.006-0.045-0.008-0.068c-0.001-0.005-0.001-0.01-0.003-0.015c-0.002-0.023-0.005-0.047-0.009-0.069c-0.001-0.004-0.002-0.01-0.002-0.014c-0.003-0.026-0.007-0.05-0.012-0.076c0-0.002,0-0.005,0-0.005c-0.004-0.025-0.008-0.05-0.012-0.076c0-0.007-0.001-0.012-0.002-0.018c-0.002-0.024-0.006-0.052-0.009-0.079c-0.001-0.005-0.001-0.011-0.003-0.021c-0.004-0.027-0.006-0.053-0.01-0.081c-0.001-0.007-0.002-0.013-0.003-0.02c-0.003-0.028-0.005-0.057-0.009-0.087c-0.001-0.003-0.001-0.008-0.003-0.013c-0.003-0.028-0.005-0.056-0.009-0.082c-0.001-0.006-0.001-0.011-0.002-0.017c-0.003-0.031-0.006-0.06-0.01-0.091c-0.001-0.007-0.001-0.014-0.002-0.02c-0.004-0.03-0.006-0.062-0.011-0.09c0-0.007-0.001-0.015-0.002-0.022c-0.003-0.031-0.006-0.063-0.01-0.094c-0.001-0.006-0.002-0.011-0.002-0.018c-0.003-0.032-0.005-0.063-0.009-0.094c0-0.003,0-0.005-0.001-0.009c-0.003-0.033-0.004-0.068-0.009-0.1c0-0.005,0-0.013-0.001-0.02c-0.002-0.035-0.005-0.065-0.007-0.099c-0.001-0.008-0.001-0.015-0.002-0.021c-0.003-0.032-0.005-0.066-0.007-0.099c0-0.005-0.001-0.011-0.001-0.02c-0.002-0.033-0.006-0.068-0.007-0.101c0-0.003-0.001-0.008-0.001-0.009c-0.002-0.033-0.004-0.066-0.007-0.1c0-0.006,0-0.012,0-0.017c-0.001-0.032-0.003-0.068-0.005-0.1c0-0.008,0-0.014-0.001-0.022c-0.001-0.033-0.004-0.067-0.005-0.098c0-0.006,0-0.013,0-0.021c-0.002-0.033-0.003-0.066-0.004-0.101c0-0.005,0-0.008,0-0.013c-0.001-0.032-0.002-0.066-0.002-0.099c0-0.003,0-0.005,0-0.009c0-0.034-0.001-0.067-0.001-0.102c0-0.005,0-0.012,0-0.016c0-0.033,0-0.067,0-0.098c0-0.005,0-0.012,0-0.019c0.001-0.032,0.001-0.065,0.001-0.096c0-0.004,0.001-0.009,0.001-0.014c0-0.033,0.001-0.066,0.003-0.1c0.052-1.243,0.291-1.751,0.291-1.751l0.058-0.166c0,0,0.46-1.458,1.152-2.458l-0.011,0.024c0,0,0.446-0.738,1.231-0.816c0.785-0.077,1.003,0.158,1.371,0.202c0.04,0.004,0.078,0.008,0.115,0.013c0.013,0.001,0.025,0.002,0.037,0.004c0.025,0.002,0.051,0.003,0.074,0.006c0.014,0.001,0.028,0.002,0.042,0.003c0.021,0.001,0.043,0.002,0.064,0.004c0.014,0.001,0.028,0.001,0.041,0.002c0.02,0.001,0.04,0.002,0.058,0.002c0.013,0.002,0.026,0.002,0.04,0.002c0.021,0.001,0.037,0.002,0.055,0.002c0.014,0,0.026,0.001,0.039,0.001c0.016,0,0.034,0.001,0.051,0.001c0.011,0,0.023,0,0.034,0c0.017,0,0.032,0,0.05-0.001c0.01,0,0.02,0,0.032-0.001c0.016,0,0.031,0,0.046-0.001c0.011,0,0.02-0.001,0.03-0.001c0.015,0,0.03-0.002,0.045-0.002c0.009,0,0.017-0.001,0.026-0.001c0.015-0.001,0.03-0.003,0.044-0.004c0.006-0.001,0.016-0.002,0.022-0.002c0.016-0.001,0.03-0.002,0.044-0.004c0.007-0.001,0.014-0.001,0.019-0.002c0.016-0.002,0.03-0.004,0.045-0.007c0.006,0,0.009,0,0.014-0.001c0.019-0.002,0.036-0.006,0.052-0.008l0,0c0.035-0.008,0.068-0.014,0.098-0.021c0,0,0-0.002,0.002-0.002c0.012-0.002,0.025-0.005,0.039-0.01c0.002,0,0.004-0.001,0.007-0.001c0.01-0.003,0.02-0.006,0.029-0.009c0.003-0.001,0.007-0.002,0.01-0.004c0.009-0.002,0.018-0.006,0.026-0.008c0.002-0.002,0.005-0.003,0.008-0.003c0.008-0.003,0.015-0.006,0.021-0.009c0.003-0.001,0.006-0.003,0.009-0.004c0.006-0.003,0.014-0.004,0.02-0.009c0.003-0.001,0.006-0.002,0.008-0.003c0.005-0.002,0.012-0.005,0.019-0.007c0.001-0.002,0.003-0.003,0.005-0.004c0.005-0.004,0.01-0.005,0.015-0.008c0.003-0.001,0.004-0.003,0.008-0.003c0.004-0.002,0.008-0.005,0.012-0.008c0,0,0.004,0,0.005-0.002c0.004-0.003,0.008-0.006,0.012-0.008c0.001-0.002,0.002-0.002,0.004-0.003c0.003-0.003,0.007-0.004,0.01-0.008c0.002,0,0.002,0,0.002-0.002c0.003-0.001,0.007-0.005,0.011-0.008c0,0,0.001,0,0.001-0.001c0.004-0.002,0.005-0.004,0.009-0.007h0.001c0.002-0.002,0.004-0.004,0.006-0.007c0.001-0.001,0.002-0.001,0.003-0.002s0.002-0.002,0.002-0.002c0.001-0.003,0.001-0.003,0.003-0.005c0.002-0.002,0.004-0.004,0.004-0.004c0.328-0.241,0.591-0.516,0.797-0.775c0.014-0.017,0.026-0.034,0.04-0.05c0.002-0.004,0.005-0.009,0.008-0.012c0.013-0.016,0.026-0.032,0.038-0.05c0.002-0.003,0.006-0.006,0.007-0.01c0.012-0.018,0.025-0.032,0.038-0.05c0,0,0,0,0.001,0c0.039-0.055,0.075-0.109,0.109-0.159c0-0.003,0.002-0.006,0.003-0.008c0.01-0.015,0.021-0.028,0.03-0.044c0.001-0.003,0.004-0.007,0.007-0.01c0.008-0.016,0.017-0.029,0.024-0.042c0.002-0.004,0.005-0.009,0.009-0.013c0.008-0.014,0.017-0.028,0.023-0.042c0.001-0.001,0.001-0.002,0.002-0.002c0.017-0.028,0.032-0.055,0.046-0.079c0.002-0.003,0.004-0.008,0.006-0.013c0.006-0.01,0.01-0.021,0.017-0.029c0.003-0.007,0.007-0.014,0.012-0.02c0.004-0.008,0.009-0.017,0.014-0.024c0.002-0.008,0.006-0.017,0.01-0.023c0.004-0.007,0.009-0.016,0.012-0.023c0.004-0.006,0.006-0.014,0.011-0.021c0.002-0.006,0.007-0.013,0.01-0.021c0.066-0.128,0.097-0.205,0.097-0.205c0.593-1.459,0.052-2.936-0.21-3.225c-0.32-0.353-1.041-0.882-1.041-0.882s-0.288-0.241-0.751-0.144c0.349-0.049,0.791,0.091,0.966,0.558c0.277,0.734,0.376,1.335,0.212,2.33c0,0-0.26,1.387-1.384,2.233c-1.125,0.848-1.923,0.096-2.885,0.13c-0.962,0.032-1.516,0.701-1.809,1.157c-0.293,0.457-1.417,2.2-1.319,5.067c0.097,2.868,0.291,4.301,0.325,5.558c0.033,1.205,0.178,3.976-0.635,5.278c-0.815,1.303-1.628,0.65-2.2,0.309c-0.571-0.341-1.223-0.245-1.744,0.131c-0.521,0.375-0.833,1.124-0.848,3.324c-0.016,2.364,1.532,2.606,1.532,2.606s0.293,0.146,0.945-0.537c0,0,0.651-0.685,1.253-0.603c0.604,0.082,0.995,0.716,1.255,1.808c0.261,1.092,0.796,5.621,0.717,8.668c-0.034,1.271-0.62,1.286-0.36,3.617c0,0,0.409,3.13,1.401,4.089c0.995,0.962,2.378,0.781,2.706,0.75c0.324-0.032,0.7-0.26,0.7-0.26s0.309-0.197,0.537-0.374c0.23-0.182,0.522-0.428,1.011-0.277c0.489,0.146,1.645,0.896,2.557,2.571c0.915,1.678,0.496,3.317-0.26,3.521c-0.668,0.182-0.848,0.229-1.971-0.05c-1.124-0.274-1.451-0.567-1.957-0.766c-0.504-0.196-1.043-0.263-1.547,0.114c-0.505,0.373-1.345,1.057-0.343,3.32c0.961,2.174,1.692,3.797,3.518,5.623c-0.522-0.607-0.956-1.188-1.427-1.871L20.381,74.92L20.381,74.92z"/><linearGradient id="SVGID_15_" gradientUnits="userSpaceOnUse" x1="237.3721" y1="-388.3604" x2="218.8474" y2="-478.5023" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path style="fill:url(#SVGID_15_);" d="M22.494,7.387l-0.05,0.025C22.45,7.41,22.469,7.401,22.494,7.387z"/><linearGradient id="SVGID_16_" gradientUnits="userSpaceOnUse" x1="259.9063" y1="-479.3379" x2="259.8987" y2="-479.3752" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path style="fill:url(#SVGID_16_);" d="M46.028,92.85c0.13,0.014,0.26,0.026,0.391,0.041c-0.114-0.016-0.31-0.039-0.561-0.074C45.916,92.828,45.972,92.838,46.028,92.85L46.028,92.85z"/><path style="fill:#9FA2A3;" d="M24.089,5.489c-0.649,0.36-0.7-0.016-1.141,0.017c-0.439,0.033-1.026,0.212-1.596,1.043c-0.571,0.831-0.586,1.89,0.326,1.417c0,0,0.436-0.428,0.815-0.579c0.081-0.043,0.24-0.126,0.406-0.174l0.144-0.117c0,0,0.424-0.491,1.073-0.333c0.648,0.156,1.119-0.129,1.119-0.129c1.01-0.761,1.655-2.184,1.655-2.184l0.987-1.998l-0.826-1.336c0,0-0.698,1.489-1.383,2.53C24.986,4.692,25.033,4.972,24.089,5.489L24.089,5.489z"/><path style="fill:#9FA2A3;" d="M19.871,16.292c0,0-0.424,1.89,1.156,1.597c0,0,0.006-0.002,0.022-0.007c-0.062,0.003-0.089-0.006-0.089-0.006c-0.025-0.497,0.149-1.432,0.49-2.261c0.341-0.83,1.075-2.254,1.075-2.254s1.047-1.791,1.467-2.89c0.42-1.102,0.416-1.939,0.416-1.939s-0.8-1.019-0.915-1.176c-0.115-0.157-0.272-0.223-0.272-0.223c-0.054,0.019-0.103,0.036-0.146,0.051c0.115-0.007,0.221,0.021,0.283,0.114c0.213,0.31-0.39,2.036-0.39,2.036s-0.522,1.238-1.548,3.03C20.393,14.157,19.871,16.292,19.871,16.292L19.871,16.292z"/><linearGradient id="SVGID_17_" gradientUnits="userSpaceOnUse" x1="268.9033" y1="-394.6382" x2="249.4966" y2="-489.0725" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path style="fill:url(#SVGID_17_);" d="M38.185,89.697l0.166,0.02c-0.134-0.119-0.305-0.236-0.497-0.347c0.184,0.113,0.489,0.358,0.312,0.665c-0.245,0.424-0.048,0.457,0.489,0.863c0,0,0.022,0.013,0.061,0.033c-0.156-0.107-0.253-0.234-0.156-0.362c0.125-0.166,0.136-0.334,0.065-0.499L38.185,89.697L38.185,89.697z"/><linearGradient id="SVGID_18_" gradientUnits="userSpaceOnUse" x1="254.4561" y1="-391.5991" x2="235.0337" y2="-486.1104" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path style="fill:url(#SVGID_18_);" d="M24.437,82.749c-1.245-1.185,1.595-0.118,1.595-0.118s0.619,0.262,0.343-0.385c-0.246-0.57-1.373-1.963-2.543-3.219l0.144,0.156c0,0,2.346,2.721,2.183,2.966c-0.164,0.245-1.108-0.325-1.108-0.325s-1.401-0.539-1.206,0.13c0.143,0.491,1.059,1.271,1.536,1.649C25.109,83.372,24.798,83.09,24.437,82.749z"/><linearGradient id="SVGID_19_" gradientUnits="userSpaceOnUse" x1="262.6514" y1="-392.9692" x2="243.1559" y2="-487.8355" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path style="fill:url(#SVGID_19_);" d="M26.977,84.73c0.424,0.256,0.903,0.513,1.365,0.676c0,0,0.831,0.293,1.337-0.114c0.503-0.403,0.503-0.601,1.238-0.243c0,0,1.388,0.696,2.382,1.444c0.98,0.735,3.557,2.336,4.396,2.791c-0.764-0.417-3.712-2.365-4.633-2.99c-0.936-0.633-2.574-1.698-3.297-1.476c-0.554,0.172-0.474,0.396-0.804,0.555c-0.331,0.158-0.688,0.055-1.504-0.383C27.291,84.9,27.134,84.818,26.977,84.73L26.977,84.73z"/><linearGradient id="SVGID_20_" gradientUnits="userSpaceOnUse" x1="271.5479" y1="-390.9575" x2="251.1904" y2="-490.0176" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path style="fill:url(#SVGID_20_);" d="M39.903,91.448c0.37,0.104,0.672,0.06,0.787,0.035c-0.678,0.04-1.35-0.269-1.35-0.269s-0.067-0.021-0.165-0.061C39.413,91.268,39.689,91.385,39.903,91.448z"/><linearGradient id="SVGID_21_" gradientUnits="userSpaceOnUse" x1="274.6582" y1="-395.8442" x2="255.2559" y2="-490.2569" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path style="fill:url(#SVGID_21_);" d="M44.293,92.169c0,0-1.344-0.163-1.939-0.163c0,0-0.037,0.064,0.226,0.158c-0.021-0.021-0.031-0.049,0.189,0c0.304,0.064,2.018,0.225,2.465,0.158c0.448-0.068-0.091-0.278-0.091-0.278s-0.088-0.041-0.267-0.102C44.553,92.201,44.293,92.169,44.293,92.169L44.293,92.169z"/><path style="opacity:.1;fill:#232323;" d="M4.662,62.045c0.085,0.143,0.198,0.432,0.462,0.725c0.146,0.16,0.266,0.072,0.162-0.525c-0.253-0.182-0.407-0.318-0.464-0.371c-0.113-0.013-0.263-0.297-0.263-0.297s-0.471-0.835-0.274-0.227c0.398,1.23,1.6,3.821,1.6,3.821l1.396,2.47c-0.999-1.803-2.299-4.633-2.44-5.013C4.691,62.223,4.577,61.904,4.662,62.045L4.662,62.045z"/><path style="opacity:.1;fill:#232323;" d="M1.547,32.696l0.032-0.643c0.027-0.122,0.057-0.241,0.087-0.36c0.712-2.789,1.069-3.858,1.425-4.649c0.356-0.792,0.398-0.245,0.398-0.245s0,0.209,0.136,0.234c0.135,0.023,0.324-0.32,0.494-0.826c0.17-0.504,0.604-1.745,0.693-2.212c0.135-0.704-0.051-0.358-0.115-0.354c-0.108,0.005-0.126-0.091-0.113-0.306c0,0,0.382-2.122,3.064-6.563c0.18-0.17,0.321-0.307,0.47-0.449c-0.055-0.052-0.033-0.265,0.001-0.32c0.136-0.214,0.275-0.435,0.422-0.661l-0.09,0.504c0,0-1.85,2.492-3.104,5.694c0,0-0.342,0.835-0.359,1.094c-0.025,0.154-0.104,0.739,0.152,0.582l0.065-0.048c-0.093,0.484-0.295,1.37-0.607,2.325c-0.288,0.878-0.573,1.633-0.841,2.078l-0.002-0.004c-0.08,0.067-0.098-0.016-0.146-0.21c-0.048-0.198-0.113-0.198-0.113-0.198c-0.179,0-0.324,0.202-0.41,0.359c-0.04,0.056-0.089,0.19-0.089,0.19s-0.461,0.934-1.281,4.26c-0.822,3.328-0.836,6.14-0.836,6.14s-0.084,1.309-0.21,1.379c-0.126,0.07-0.097-0.056-0.097-0.056s-0.045-0.052-0.114,0.045c0,0,0.02-0.76,0.044-0.875c0,0,0.041-0.206,0.119-0.206s0.006,0.125,0.048,0.16c0.039,0.032,0.084,0.03,0.075-0.178c-0.005-0.176,0.147-2.816,0.621-5.312L1.547,32.696L1.547,32.696z"/><path style="opacity:.1;fill:#232323;" d="M0.392,41.994c0-0.002,0-0.004,0-0.005c0,0,0.018,0.217,0.042,0.356l-0.003,0.01c0.078,0.357,0.187,0.357,0.187,0.357c0.008-0.096,0.087-0.273,0.183-0.458c0.007,0.106,0.007,0.231-0.004,0.375c-0.037,0.537-0.019,2.466,0.209,4.28c0.225,1.815,0.367,3.349,0.394,3.594c0.029,0.245,0.498,3.283,1.025,5.089c0.285,0.967,0.422,1.344,0.483,1.424l0.008,0.049c0,0,0.097,0.184,0.348,0.32c0,0,0.111-0.097,0.112-0.412c0.018,0.031,0.037,0.065,0.057,0.105c-0.083,0.262-0.105,0.426-0.105,0.426l0,0c-0.042-0.043-0.06-0.031-0.046,0.045c0.067,0.357,0.027,0.68-0.169,0.272c-0.198-0.403-0.8-1.832-1.307-4.251c0,0-0.531-2.659-0.795-5.084l0.042-0.105L0.989,48.29c-0.027-0.248-0.048-0.491-0.067-0.729c0,0-0.255-3.657-0.237-4.562c0.019-0.904-0.085-0.02-0.085-0.02s-0.021,0.219-0.028,0.329c-0.008,0.109-0.103,0.352-0.136-0.246C0.459,43.322,0.392,42.261,0.392,41.994L0.392,41.994z"/><path style="opacity:.1;fill:#232323;" d="M24.672,1.974l-0.53-0.753l-0.066-0.065c0,0-0.131-0.136-0.896,0.038l-0.11,0.022c0,0,0.38-0.094,0.168,0.191c-0.212,0.285-0.56,0.496-1.172,1.15c-0.612,0.655-0.411,0.803-0.01,0.668c0.401-0.138,1.188-0.499,2.606-1.243L24.672,1.974z"/><path style="opacity:.1;fill:#232323;" d="M23.106,1.21c-0.022,0.003-0.036,0.006-0.036,0.006L23.106,1.21z"/><path style="opacity:.1;fill:#232323;" d="M23.637,1.811c0.31-0.272,0.429-0.484,0.454-0.641l-0.015-0.014c0,0-0.131-0.136-0.896,0.038l-0.075,0.015c0.09-0.015,0.303-0.032,0.133,0.198c-0.212,0.285-0.56,0.496-1.172,1.151c-0.612,0.656-0.411,0.803-0.01,0.667c0.106-0.038,0.239-0.088,0.4-0.157C22.599,2.755,23.046,2.325,23.637,1.811z"/><path style="opacity:.1;fill:#232323;" d="M83.482,4.115l-0.2,0.235c0,0,0.136,0.081,0.208,0.141c0.008,0.005,0.014,0.01,0.021,0.012c-0.043-0.034-0.07-0.056-0.07-0.056c-0.023-0.109,0.004-0.223,0.014-0.297L83.482,4.115c0,0,0.055,0.002,0.143,0.011L83.482,4.115L83.482,4.115z"/><path style="opacity:.53;fill:#FFF;" d="M62.559,90.319c0,0,1.686-0.187,3.239-0.691c1.558-0.504,1.935-0.981,1.874-1.341c-0.037-0.238-0.396-0.305-0.906-0.238c0.271-0.021,0.514,0.032,0.354,0.332c-0.313,0.582-0.861,0.782-0.861,0.782s-0.267,0.19-0.89,0.371c-0.806,0.245-1.794,0.375-2.335,0.438c-0.691,0.082-0.521-0.033-1.465,0.291c-0.023,0.016-0.047,0.025-0.065,0.043c-0.289,0.237,1.071,0.514,1.071,0.514s1.302,0.361,3.257,0.23l0.067-0.021c0.267-0.078,0.533-0.161,0.8-0.245c-2.021,0.457-3.324,0.149-3.737,0.095c-0.434-0.058-0.777-0.144-0.88-0.359C61.98,90.305,62.559,90.319,62.559,90.319L62.559,90.319z"/><path style="opacity:.1;fill:#232323;" d="M63.301,4.417l0.717,0.076c1.429-0.405,2.651-0.776,2.651-0.776s1.265-0.41,1.901-0.636c0.635-0.227,1.09-0.313,1.656-0.41c0.563-0.096,1.309-0.14,1.709-0.131c0.398,0.007,0.528,0.122,0.528,0.122s0.166,0.131,0.245,0.27c0.077,0.138,0.74,1.891,2.975,2.005c2.231,0.112,2.261-1.096,2.063-1.464c-0.226-0.427-0.896-0.863-0.896-0.863s-0.898-0.575-1.09-0.846c-0.192-0.271,0.033-0.358,0.104-0.376c0.066-0.018,2.433-0.497,2.729-0.608l0.021-0.02l-0.563-0.174c0,0-0.119,0.134-0.789,0.312c-0.67,0.179-1.233,0.246-1.742,0.313c-0.504,0.067-0.504,0.239-0.504,0.239l-0.879,1.406c0,0-0.029,0.104,0.043,0.305c0.073,0.202,0.41,0.448,0.41,0.448s0.573,0.424,0.99,0.699c0.418,0.275,0.395,0.373,0.395,0.373c-1.123,0.095-1.418-0.048-1.875-0.276c-0.445-0.223-0.76-0.729-0.922-1.086c-0.162-0.357-0.521-0.663-0.521-0.663c-0.589-0.336-1.696-0.343-2.813-0.15c-1.115,0.194-2.656,0.707-2.923,0.812c-0.271,0.104-1.616,0.551-2.309,0.729c-0.694,0.179-1.224,0.357-1.646,0.47c-0.426,0.11-3.431,1.005-4.557,1.339c-1.124,0.333-1.848,0.461-1.848,0.461c-1.688,0.171-2.193-0.134-2.193-0.134c-0.297-0.125-0.262-0.527-0.262-0.527l0.009-1.147c0,0-0.029-0.433-0.356-0.611c-0.328-0.179-0.779-0.252-1.593-0.29c-0.811-0.038-1.683,0.044-2.093,0.134c-0.408,0.09-1.19,0.313-1.764,0.952c-0.573,0.641-0.481,1.141-0.481,1.141s0.035,0.683,0.088,1.19c0.052,0.504,0.484,0.662,0.484,0.662s-0.744,0.532-3.045,1.206c-2.209,0.648-3.682,0.774-3.682,0.774l0.678,0.254c0,0,5.468-1.015,7.148-2.616c0,0,0.624-0.293,0.02-0.88c-0.606-0.585-0.897-0.761-0.897-0.761s-0.41-0.224,0.019-0.771c0.43-0.547,0.923-0.795,1.352-0.933c0.429-0.138,1.753-0.25,2.925-0.093c0,0,0.491,0.041,0.459,0.408c-0.034,0.366-0.088,0.872-0.077,1.028c0.008,0.158,0.023,0.515,0.398,0.845c0.378,0.332,1.099,0.453,1.099,0.453s1.257,0.228,2.843-0.217c1.584-0.445,3.642-1.14,5.431-1.629L63.301,4.417L63.301,4.417z"/><path style="fill:#232323;" d="M-16.122-14.641"/><path style="fill:#616161;" d="M48.462,6.628c0.31,0.207,0.476,0.221,0.5,0.421c0.055,0.339-0.56,0.64-0.56,0.64l-0.006-0.011c0,0-0.431-0.157-0.484-0.664c-0.052-0.505-0.088-1.19-0.088-1.19s0.001,0.2,0.046,0.26C48.004,6.256,48.087,6.378,48.462,6.628z"/><path style="opacity:.17;fill:#FFF;" d="M82.447,79.307l0.451,0.17c1.104-0.617,1.496-0.809,1.759-0.963c1.183-0.703,2.592-1.563,2.963-1.855c0,0,0.761-0.518,0.116,0.195s-0.969,1.007-0.969,1.007s-0.625,0.626-0.471,0.782c0,0,0.166,0.246,1.193-0.687c1.023-0.929,2.15-2.258,2.275-2.44c0.127-0.188,0.146-0.293,0.146-0.293s0.107-0.215,0.273-0.393c0.145-0.15,1.377-1.496,1.994-2.121c0,0,0.002,0.001,0.006,0.003c0.273-0.362,0.541-0.729,0.806-1.102c-0.358,0.379-1.724,1.829-2.483,2.684c0,0-0.713,0.763-0.938,1.056s-0.225,0.47-0.225,0.47s-0.117,0.196-0.392,0.519s-1.24,1.186-1.24,1.186s-0.577,0.47-0.754,0.478c-0.179,0.011,0.431-0.538,0.431-0.538s0.588-0.625,0.967-1.123c0.382-0.498,0.137-0.47,0.137-0.47s-0.186-0.049-0.986,0.459c-0.8,0.508-1.367,0.858-1.367,0.858s-1.722,0.986-2.814,1.623c-1.096,0.636-3.6,1.908-5.021,2.492c-1.43,0.588-2.162,0.715-2.035,0.527c0.127-0.186,0.461-0.459,0.461-0.459s0.399-0.4,0.399-0.803c0,0,0.128-0.586-1.604-0.223c-1.729,0.36-3.293,1.213-3.293,1.213s-2.571,1.182-1.965,1.887c0,0,0.117,0.186,0.635,0.352c0.52,0.166-0.92,0.606-0.92,0.606c-1.365,0.448-2.413,0.651-3.74,0.926c-1.963,0.403-3.564,0.761-4.165,0.894c-0.165,0.035-0.253,0.059-0.253,0.059s-1.212,0.292-3.229,1.072c-2.015,0.783-5.972,1.43-5.972,1.43s-2.542,0.293-2.777,0.627c-0.234,0.331,0.177,0.499,0.177,0.499s0.362,0.224,1.671,0.283c0,0,0.451,0,0.471,0.036c0.018,0.039,0.046,0.068-0.235,0.156c-0.286,0.088-0.854,0.314-2.778,0.558c-1.936,0.245-1.896-0.067-1.896-0.067s-0.01-0.076,0.078-0.216c0.087-0.134,0.009-0.369-0.293-0.535c0,0-0.419-0.272-1.829-0.262c-1.408,0.009-4.212,0.017-6.833-0.14c-2.374-0.143-5.59-0.551-6.099-0.664c0,0-0.117-0.029-0.206-0.117c-0.088-0.09-0.646-0.422-1.164-0.733c-0.517-0.313-2.073-0.907-2.073-0.907s-2.011-0.783-1.945-0.521c0.015,0.063,0.13,0.153,0.268,0.246c0.351,0.188,0.704,0.375,1.06,0.56l0.002-0.002c0,0-0.743-0.402-0.538-0.402s0.438,0.109,0.438,0.109s1.213,0.332,1.966,0.686c0.753,0.353,1.407,0.83,1.407,0.83s0.929,0.549,2.319,0.732c1.346,0.182,3.174,0.389,3.777,0.448l0.594-0.272l0.433,0.354c1.106,0.068,2.575,0.146,2.575,0.146s2.976,0.111,4.605-0.019c0.733-0.063,0.507,0.317,0.507,0.317s-0.214,0.354,0.206,0.529c0,0,0.771,0.439,3.343,0.157c2.573-0.286,3.138-0.862,3.138-0.862s0.299-0.275-0.351-0.398c-0.513-0.1-0.513-0.051-1.175-0.117c-0.665-0.067-0.998-0.205-0.557-0.323c0.441-0.114,1.174-0.175,1.174-0.175s2.249-0.313,4.066-0.783c0,0,1.938-0.458,3.861-1.134c0.756-0.265,1.395-0.459,1.887-0.599l0.438-0.644l0.644,0.372c0.065-0.014,0.103-0.021,0.103-0.021s2.306-0.539,3.274-0.703c0.966-0.168,3.154-0.637,4.087-1.086c0.928-0.448,1.396-0.805,1.505-1.075c0.107-0.272-0.393-0.431-0.393-0.431s-0.588-0.138-0.508-0.34c0.075-0.205,0.293-0.382,1.213-0.793c0.918-0.41,2.07-0.859,3.227-1.144c1.154-0.282,0.732,0.194,0.732,0.194s-0.692,0.705-0.783,0.979c-0.086,0.273,0.029,0.285,0.119,0.333c0.088,0.05,0.646,0.028,1.022-0.067c0.383-0.099,3.464-1.271,5.341-2.347c0.049-0.026,0.094-0.054,0.139-0.08L82.447,79.307z"/><linearGradient id="SVGID_22_" gradientUnits="userSpaceOnUse" x1="221.1826" y1="-454.5649" x2="221.373" y2="-454.5649" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#808080"/><stop offset=".0868" stop-color="#7A7A7A"/><stop offset=".36" stop-color="#6B6B6B"/><stop offset=".5192" stop-color="#686868"/><stop offset=".6377" stop-color="#5F5F5F"/><stop offset=".7431" stop-color="#4E4E4E"/><stop offset=".8408" stop-color="#383838"/><stop offset=".9324" stop-color="#1B1B1B"/><stop offset="1" stop-color="#000"/></linearGradient><path style="opacity:.68;fill:url(#SVGID_22_);" d="M7.432,68.01l0.178,0.131c-0.105-0.099-0.167-0.155-0.167-0.155s-0.008,0.003-0.024,0.003C7.423,67.993,7.429,68.002,7.432,68.01L7.432,68.01z"/><linearGradient id="SVGID_23_" gradientUnits="userSpaceOnUse" x1="221.4043" y1="-449.8027" x2="316.0254" y2="-449.8027" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#808080"/><stop offset=".0868" stop-color="#7A7A7A"/><stop offset=".3817" stop-color="#828282"/><stop offset=".5185" stop-color="#808080"/><stop offset=".5677" stop-color="#797979"/><stop offset=".6027" stop-color="#6E6E6E"/><stop offset=".608" stop-color="#6B6B6B"/><stop offset="1" stop-color="#4E4E4E"/></linearGradient><path style="opacity:.43;fill:url(#SVGID_23_);" d="M90.412,59.954l-0.371-0.021c-1.807,1.463-2.342,1.938-3.781,2.955c0,0-1.644,1.228-3.44,2.196c-1.804,0.97-3.919,0.853-3.919,0.853s-0.573-0.062-0.295-0.477c0.275-0.415,0.634-1.425,0.771-1.938c0.141-0.516,0.415-1.82-0.633-2.235s-3.018,0.196-3.018,0.196s-4.525,1.205-6.371,3.23c-1.793,1.969-0.286,2.846-0.286,2.846s0.702,0.49,1.386,0.73c0.645,0.229,0.516,0.436,0.354,0.555c0,0-2.021,1.287-4.408,1.974c0,0-3.268,1.001-6.441,1.206c-3.154,0.203-4.495,0.283-4.495,0.283l-0.399,0.379l-0.758-0.252c-1.283,0.154-3.455,0.463-5.596,0.979c-2.622,0.64-5.123,1.147-6.903,2.296c0,0-1.333,0.887-0.566,1.746c0.765,0.862,1.565,1.23,1.565,1.23s0.472,0.207,0.464,0.336c-0.009,0.164-0.015,0.309-0.367,0.512c0,0-1.394,0.814-4.108,0.859c-2.714,0.045-3.911,0.021-4.707-0.695c-0.658-0.591,0.165-1.844,0.165-1.844s0.33-0.612,0-1.453c-0.33-0.84-2.218-0.854-2.218-0.854l-2.615-0.134c-3.095-0.081-7.182-0.427-9.001-0.653c0,0-0.012-0.002-0.033-0.006l-0.006,0.166l-0.721-0.303c-1.139-0.221-3.243-0.668-4.075-1.084c-0.759-0.38-1.167-0.313-1.066-1.102c0.101-0.769-0.753-1.836-0.753-1.836s-1.188-1.287-2.257-2.086c-1.069-0.804-1.523-0.564-1.523-0.564s-0.484,0.258-0.049,1.296c0.436,1.04,0.86,1.403,0.86,1.403s0.208,0.22,0.089,0.279c-0.118,0.06-0.484-0.219-0.789-0.478c-0.253-0.21-1.885-1.742-2.456-2.276l0.105,0.356c0.019,0.028,0.035,0.062,0.052,0.086c0.184,0.291,0.855,1.269,2.155,2.28c1.549,1.213,1.559,0.729,1.559,0.729s0.061-0.399-0.297-0.84c-0.359-0.44-0.934-1.373-0.791-1.715c0.144-0.339,0.309-0.31,0.309-0.31s0.133-0.051,0.596,0.299c0.462,0.351,1.498,1.076,2.011,1.703c0.513,0.623,0.48,1.181,0.48,1.181s-0.102,0.563,0.453,1.17c0.553,0.604,1.733,1.714,5.859,2.351c0.025,0.004,0.034,0.006,0.059,0.01l0.193-0.551l0.573,0.663c3.598,0.521,5.555,0.563,5.555,0.563s4.709,0.162,5.982,0.162c1.272,0,1.035,0.666,1.035,0.666s-0.072,0.359-0.225,0.646c-0.155,0.287-0.524,1.365-0.144,1.939c0,0,0.585,1.427,4.381,1.527c0,0,3.324,0.268,5.643-0.688c2.319-0.954,0.226-2.275,0.226-2.275s-0.794-0.481-1.13-0.739c-0.308-0.234-0.184-0.481-0.121-0.646c0.06-0.162,0.297-0.359,0.563-0.492c0.266-0.134,1.239-0.654,5.365-1.722c4.124-1.069,6.587-1.183,6.587-1.183s0.02-0.002,0.055-0.004l0.338-0.656l0.854,0.556c0.732-0.06,1.681-0.129,2.526-0.171c1.691-0.082,4.341-0.471,5.879-0.807c1.54-0.343,3.869-1.062,5.592-1.951c1.725-0.895,1.809-1.519,1.809-1.519s0.328-0.475-0.392-0.995c-0.719-0.523-1.036-0.382-1.673-1.027c-0.637-0.646,0.557-1.62,0.557-1.62s0.612-0.861,4.021-2.175c3.403-1.313,3.979-0.873,4.153-0.729s0.195,0.615,0.123,0.935c-0.069,0.317-0.494,1.455-0.721,2.053c-0.227,0.594-0.316,1.406,0.605,1.601c0.923,0.194,2.215-0.008,3.428-0.442c2.893-1.033,3.756-2.295,8.534-5.764c0.012-0.008,0.021-0.017,0.03-0.021L90.412,59.954l0.689,0.108c1.978-1.573,3.869-3.571,3.869-3.571s1.258-1.261,1.889-2.356c0.595-1.026,0.027,0.89,0.027,0.89s-0.32,1.516,0.19,2.077c0.405,0.445,1.563-0.795,1.563-0.795s0.688-0.789,0.965-2.061c0.408-1.875,0.185-2.248,0.185-2.248s-0.246-0.389-0.093-0.852c0.154-0.459,1.158-3.047,1.98-4.01l0.502-0.563c0-0.008,0.002-0.02,0.002-0.027l-0.224-0.557l0.304-0.512c0,0-0.279,0.322-1.404,2.177c-1.266,2.087-1.467,3.771-1.467,3.771s-0.119,0.653-0.054,1.034c0.063,0.355,0.188,0.519,0.192,0.622c0.009,0.104-0.073,0.959-0.508,1.773c-0.438,0.814-0.815,1.031-0.815,1.031s-0.756,0.545-0.86,0.157c-0.104-0.39-0.074-0.72-0.035-0.966c0.035-0.248,0.289-1.579,0.252-2.072c-0.035-0.494-0.479-0.098-0.479-0.098s-0.104,0.119-0.298,0.366s-1.288,1.637-1.705,2.125c-0.988,1.157-1.886,1.989-4.292,3.93c-0.007,0.003-0.015,0.011-0.019,0.015L90.412,59.954L90.412,59.954z"/><linearGradient id="SVGID_24_" gradientUnits="userSpaceOnUse" x1="214.5928" y1="-431.356" x2="314.4043" y2="-431.356" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#555555"/><stop offset="1" stop-color="#231F20"/></linearGradient><path style="opacity:.31;fill:url(#SVGID_24_);" d="M1.193,48.543l0.104,0.975c0.235,0.285,0.577,0.677,1.071,1.187c1.084,1.121,1.427,0.416,1.427,0.416s0.253-0.705-0.054-1.985C3.434,47.85,3.488,47.09,4.066,47.11c0.578,0.019,2.258,0.361,2.782,1.752c0,0,0.217,0.649,0.018,1.479c-0.2,0.834-0.162,1.57-0.018,2.295c0.145,0.725,0.759,1.407,1.464,1.971c0.706,0.562,2.746,1.535,4.734,1.66c1.987,0.127,2.601,0.021,2.601,0.021l0.746-0.767l0.134,0.668c0.812-0.09,2.116-0.229,3.62-0.393c2.528-0.271,4.227-0.544,5.798-0.308c1.573,0.235,2.079,1.462,2.079,1.462s0.108,0.314-0.253,0.544c-0.349,0.224-0.749,0.547-0.948,0.89c-0.199,0.346-0.411,1.068,0.16,2.035c0.572,0.963,2.142,1.592,3.478,1.432c1.335-0.155,3.335-0.67,4.52-0.979c1.287-0.337,2.424-0.971,2.572-1.98c0.147-1.008-1.534-2.295-1.534-2.295s-0.812-0.609-0.91-0.75c-0.1-0.139,0.099-0.197,0.099-0.197s0.949-0.229,1.357-0.414c0.404-0.189,1.522-0.646,3.353-1.219s5.608-1.248,5.608-1.248s2.084-0.332,4.685-0.543l0.622-0.702l0.485,0.625c0.409-0.024,0.825-0.046,1.243-0.063c3.572-0.129,5.344-0.554,7.242-0.979c1.897-0.427,4.568-1.978,4.965-2.276c0.396-0.295,1.229-0.66,1.396-1.957c0.168-1.295-1.364-2.157-1.364-2.157s-1.218-0.644-1.475-0.93c-0.258-0.287-0.02-0.562-0.02-0.562s0.689-1.485,2.896-2.354c2.205-0.872,3.689-1.107,4.618-1.208c0.932-0.099,1.245,0.237,1.374,0.396c0.128,0.157,0.128,0.485,0.021,0.821c-0.102,0.308-0.444,1.038-0.645,1.395c-0.197,0.356-0.523,1.216-0.316,1.622c0.208,0.405,0.843,0.593,1.662,0.445c0.821-0.149,2.988-0.761,4.888-1.553c1.9-0.792,5.073-2.345,5.073-2.345s0.009-0.004,0.022-0.012l0.086-0.729l0.729,0.295c1.02-0.562,2.764-1.58,4.01-2.631c1.871-1.573,3.699-3.225,4.166-3.639c0.465-0.417,0.892-0.752,1.307-0.732c0.414,0.021,0.732,0.317,0.988,1.434c0.258,1.118,0.308,2.038,0.426,2.582c0.117,0.543,0.285,1.175,0.931,1.304c0.646,0.129,1.513-0.434,1.838-0.713c0.33-0.276,0.92-1.176,0.882-2.382c0,0,0.068-1.604-0.761-3.127c0,0-0.351-0.614-0.479-0.782c-0.088-0.118-0.155-0.238-0.01-0.525c0.148-0.286,0.467-0.821,1.062-1.156c0.448-0.256,0.88-0.316,1.128-0.396c0,0,0.275-0.067,0.626-0.261l-0.126-0.412l0.289,0.316c0.404-0.239,0.652,0.045,0.652,0.045l-0.392-0.501l0.119-0.484c0,0-0.304-0.163-0.685-0.088c-0.383,0.078-0.42,0.362-1.014,0.458c-0.593,0.096-1.275,0.306-1.945,1.319c-0.67,1.011,0,2.271,0,2.271s0.359,0.592,0.533,0.896c0.172,0.306,1.066,2.215,0.037,3.608c0,0-0.552,0.643-1.525,0.86c-0.86,0.19-0.642-0.816-0.729-1.355c0,0-0.129-2.281-1.237-3.588c-0.976-1.146-2.746,0.888-3.629,1.566c-0.822,0.629-3.228,3.112-6.684,4.925l-0.51,0.892l-0.324-0.472c-1.658,0.827-5.418,2.656-7.87,3.514c0,0-1.875,0.762-2.64,0.782c0,0-0.17,0.006-0.034-0.179c0.133-0.185,0.276-0.322,0.507-0.737c0.23-0.418,0.646-1.357,0.646-2.327c0-0.969-1.119-1.917-2.68-1.748c-1.561,0.167-3.052,0.6-4.849,1.292c-1.796,0.692-3.343,2.159-3.55,3.375c-0.209,1.216,1.105,1.92,1.105,1.92s1.484,0.751,1.674,1.157c0.188,0.406,0.049,0.783,0.049,0.783s-0.129,0.406-0.783,0.782c-0.649,0.377-2.42,1.287-2.42,1.287s-2.207,1.217-5.562,1.512c0,0-3.058,0.26-4.817,0.348c-0.022,0.002-0.046,0.002-0.069,0.003l-0.541,0.53l-0.587-0.449c-1.64,0.136-3.54,0.359-3.54,0.359s-4.29,0.609-8.219,1.822c-3.336,1.027-3.971,1.594-3.971,1.594s-0.711,0.596-0.118,1.453c0,0,0.341,0.539,1.03,1.08c0.685,0.541,1.237,1.057,1.159,1.317c-0.08,0.265-0.29,0.382-0.29,0.382s-0.961,0.856-4.894,1.518c0,0-2.531,0.488-3.31-0.275c-0.778-0.766-0.435-1.279-0.435-1.279s0.052-0.173,0.62-0.527c0,0,0.951-0.596,0.647-1.727c-0.303-1.135-2.129-2.545-4.101-2.533c0,0-2.303,0.006-8.196,0.762c0,0-0.008,0-0.027,0.005l-0.204,0.501l-0.605-0.393c-0.324,0.039-0.713,0.076-1.114,0.107c-1.012,0.07-2.477-0.057-4.3-0.596c-1.824-0.543-2.963-1.535-3.126-2.133c-0.114-0.412,0.035-0.996,0.035-0.996S7.62,50.2,7.405,49.115c-0.22-1.083-0.582-1.934-1.631-2.567c-1.048-0.632-1.643-0.522-1.643-0.522s-0.939-0.144-0.904,1.446c0.037,1.59,0.235,2.256,0.235,2.256s0.181,0.562-0.108,0.635c-0.288,0.072-0.74-0.361-0.74-0.361s-1.021-0.924-1.619-1.688l0.048,0.066l-0.214,0.525c0,0,0.067,0.115,0.266,0.375L1.193,48.543L1.193,48.543z"/><linearGradient id="SVGID_25_" gradientUnits="userSpaceOnUse" x1="214.8965" y1="-410.8818" x2="306.501" y2="-410.8818" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#A0A0A0"/><stop offset=".0769" stop-color="#656767"/><stop offset="1" stop-color="#717375"/></linearGradient><path style="opacity:.34;fill:url(#SVGID_25_);" d="M91.075,11.742l0.183,0.846c0,0-0.563,0.313-1.678,0.613c-1.113,0.3-2.188,0.801-2.188,0.801s-0.89,0.289-0.551,1.013c0.338,0.726,0.838,1.076,0.838,1.076s0.711,0.69,0.736,1.213c0.021,0.526-0.199,0.765-0.764,1.076c-0.563,0.313-1.075,0.375-1.075,0.375s-1.338,0.24-2.001-0.387c-0.663-0.626-0.787-1.663-0.787-1.663s-0.05-0.876-1.148-1.251c-1.102-0.375-2.453,0.425-2.453,0.425s-1.063,0.563-2.2,1.3c-1.14,0.738-3.291,1.64-4.642,2.114l-0.152,0.699l-0.758-0.382c-1.422,0.489-3.271,1.109-3.271,1.109S66.652,21.645,65,21.871c-1.648,0.224-2.016-0.014-2.238-0.238c-0.228-0.224,0.039-1.012,0.039-1.012s0.674-1.376,0.348-2.09c-0.324-0.714-2.451-0.9-2.486-0.9c-0.04,0-2.318-0.265-4.451,0.932c-1.895,1.062-2.143,1.642-2.143,1.642s-0.604,0.938,0.113,1.867c0.807,1.051,1.879,1.146,1.879,1.146s1.021,0.079,1.258,0.38c0.24,0.299,0.076,0.626,0.076,0.626s-0.336,0.925-2.228,1.312c0,0-3.181,0.933-9.113,1.776l-0.582,0.579c-3.743,0.47-8.143,1.363-10.555,1.989c-2.412,0.627-2.553,1.317-2.553,1.317c-0.519,0.813,0.141,1.236,0.141,1.236s0.829,0.283,1.017,1.19c0.19,0.91-0.783,1.629-0.783,1.629s-1.159,0.972-2.898,1.269c-1.739,0.297-2.396,0.35-3.429-0.47c-0.91-0.721-0.298-1.863,0.312-2.301c0.612-0.438,0.909-0.91,0.988-1.112c0.079-0.204,0.032-0.377,0.032-0.377l-0.58-0.534c-2.005-1.33-9.883,0.063-9.883,0.063s0,0.002,0,0l-1.341,0.289l-0.673-0.435c0,0-2.291,0.604-4.876,0.589c-2.712-0.014-1.27-2.128-1.27-2.128s0.638-1.118,0.75-1.764c0,0,0.224-1.745-1.42-1.631c-1.645,0.112-1.968,1.546-1.968,1.546s-0.112,0.801-0.089,1.392c0.021,0.594-0.002,1.847-0.742,2.56c-0.737,0.713-1.529,0.495-1.529,0.495s-1.331-0.582-1.595-0.718c-0.274-0.142-0.517-0.151-0.751-0.066c-0.02,0.007-0.039,0.018-0.057,0.029l-0.175,0.75l0.025-0.623c-0.156,0.176-0.271,0.42-0.271,0.42l0.088,0.327l-0.248,0.565c-0.002,0.012-0.005,0.023-0.006,0.035l0.008,0.003c0,0,0.087-0.196,0.222-0.357l0.182-0.369L1.493,32.94c0.055-0.044,0.112-0.07,0.172-0.074c0.281-0.017,0.629,0.158,0.629,0.158s1.135,0.611,1.642,0.716s0.875-0.065,1.205-0.292c0.527-0.365,1.143-1.121,1.4-1.839c0.229-0.646,0.279-2.394,0.279-2.394l0.004,0.014c0,0,0-0.421-0.011-0.518c-0.012-0.098-0.075-0.553,0.204-0.783c0.278-0.234,0.459-0.347,1.144-0.364c0.68-0.017,0.886,0.38,0.886,0.38S9.28,28.269,9.28,28.48c0,0.21-0.068,0.34-0.068,0.34s-0.371,0.626-0.5,0.934c-0.13,0.307-0.636,1.323-0.489,2.177c0.148,0.852,1.479,1.251,1.479,1.251s1.062,0.25,2.575,0.027l3.12-0.503l0.543-0.624l0.218,0.474c0.805-0.147,2.14-0.369,3.583-0.511c2.326-0.228,4.787-0.262,5.821-0.132c0,0,0.484,0.061,0.405,0.234c-0.062,0.136-0.421,0.415-0.421,0.415s-0.135,0.081-0.654,0.667s-0.671,1.155-0.693,1.661c-0.024,0.505,0.516,1.995,2.415,2.394c1.901,0.397,4.077-0.341,4.077-0.341s1.427-0.314,2.786-1.674c1.41-1.411,0.012-3.108,0.012-3.108s-0.22-0.304-0.647-0.442c0,0-0.187-0.05-0.079-0.17c0.108-0.12,0.37-0.647,1.37-0.905c1-0.257,3.977-1.198,11.065-2.135l0.274-0.617l0.874,0.459c2.708-0.373,4.551-0.694,7.827-1.454c0,0,3.04-0.539,3.675-1.651c0.368-0.65,1.032-1.539-0.045-2.434c0,0-0.125-0.161-0.791-0.312c-0.666-0.151-1.179-0.252-1.738-0.653c-0.563-0.403-0.551-0.869-0.551-0.869s-0.047-0.445,0.862-0.958c0,0,0.851-0.623,2.54-1.158c1.691-0.533,3.648-0.296,3.648-0.296s0.82,0.089,0.685,0.643c-0.14,0.555-0.604,1.482-0.622,1.959c-0.021,0.474,0.012,1.027,0.938,1.414c0.931,0.386,2.267,0.266,2.267,0.266s1.386-0.069,3.647-0.801c2.265-0.731,4.594-1.573,4.594-1.573l-0.094-0.483l0.971,0.173c0.591-0.22,1.406-0.539,2.285-0.936c1.801-0.81,2.656-1.488,3.48-1.958c0,0,1.815-1.118,2.887-1.088c0,0,0.25-0.009,0.272,0.32c0.022,0.329,0.104,0.814,0.218,1.096c0.111,0.281,0.734,1.822,2.729,2.048c1.993,0.228,2.846-1.118,2.846-1.118s0.683-1.049-0.493-2.296c0,0-0.961-1.028-0.99-1.107c0,0-0.104-0.155,0.168-0.233c0.269-0.078,3.152-0.884,4.268-1.398c0,0,0.012-0.005,0.036-0.015l-0.271-0.485l0.535,0.365c0.202-0.101,0.449-0.246,0.544-0.395c0.171-0.271-0.054-0.797-0.054-0.797l0.006-0.007c-0.133-0.184-0.266-0.366-0.4-0.546l-0.606-0.256l-0.06,0.033L91.075,11.742"/><path style="opacity:.1;fill:#232323;" d="M8.12,16.324l-0.291,0.435c0.134-0.023,0.244-0.056,0.244-0.056s0.404-0.066,1.112,0.12c0.917,0.244,2.067-0.496,2.067-0.496s0.872-0.523,1.274-1.381l0.361-1.005c0,0,0.291-0.972,1.105-1.281c0,0,0.317-0.171,0.831-0.177c0.513-0.005,0.392,0.354,0.392,0.354s-0.056,0.233-0.586,0.912c-0.529,0.677-0.671,1.196-0.671,1.196s-0.318,0.722,0.193,0.957c0,0,0.24,0.141,0.939-0.091c0.7-0.233,3.02-0.843,4.438-1.06l0.993-0.506c-0.313-0.23-0.602-0.444-0.602-0.444c-2.388,0.442-4.168,0.995-4.775,1.226c-0.609,0.23-0.62,0.082-0.62,0.082c-0.211-0.248,0.435-1.022,0.435-1.022s0.655-0.894,0.913-1.715c0.259-0.82-0.892-0.707-0.892-0.707c-0.758,0.121-1.303,0.48-1.93,1.236c-0.486,0.586-0.782,1.389-0.893,1.814c-0.071,0.267-0.193,0.515-0.193,0.515s-0.091,0.165-0.45,0.322c-0.416,0.182-1.228,0.396-1.228,0.396s-0.54,0.045-0.931-0.15c-0.24-0.118-0.901,0.05-0.901,0.05l0.091-0.504l-0.082-0.032l-0.683,0.383c-0.115,0.189-0.228,0.379-0.341,0.569c-0.063,0.146-0.179,0.475,0.044,0.51c0.05,0.008,0.113,0.008,0.164,0.008L8.12,16.324L8.12,16.324z"/><path style="opacity:.1;fill:#232323;" d="M13.295,9.19c0,0,0.342-0.271,0.342-0.026c0,0.248-0.333,0.69-0.333,0.69s-0.107,0.134-0.172,0.134C13.068,9.987,13.15,9.516,13.295,9.19L13.295,9.19z"/><path style="fill:#232323;" d="M-16.122-14.641"/><path style="opacity:.1;fill:#232323;" d="M10.595,12.501c0,0-0.388,0.46,0,0.52l0.838-0.828c-0.037-0.037-0.054-0.055-0.157-0.112C11.277,12.081,10.752,12.343,10.595,12.501L10.595,12.501z"/><path style="opacity:.3;fill:#FFF;" d="M77.807,85.745c0,0-1.75,0.806-3.396,1.603c-1.647,0.803-2.25,1.14-2.25,1.14s-0.088,0.049-0.031,0.082c0.056,0.028-0.008,0.063-0.008,0.063c-0.847,0.409-2.703,1.07-2.703,1.07s-0.167,0.057-0.157,0.02c0.006-0.041,0.199-0.105,0.199-0.105s0.381-0.146,0.283-0.217c-0.098-0.072-1.21,0.305-1.21,0.305s-1.949,0.621-2.894,0.887c-0.941,0.269-2.75,0.735-2.75,0.735c-1.201,0.298-3.75,0.798-4.315,0.901c-0.562,0.104-0.417,0.064-0.417,0.064s0.492-0.189-0.411-0.226c-1.146-0.05-2.362,0.112-3.612,0.288c-1.25,0.18-1.178,0.324-1.178,0.324s-0.04,0.154,0.708,0.14c0.752-0.019,0.534,0.046,0.534,0.046c-1.396,0.202-4.2,0.238-4.2,0.238l0.005,0.01c0.456,0.014,0.916,0.018,1.376,0.018c0.608,0,1.218-0.01,1.822-0.031c0.241-0.021,1.483-0.15,1.925-0.244c0.486-0.105-0.093-0.105-0.093-0.105l-0.74-0.023c0,0-0.776-0.026-0.052-0.158c0.729-0.133,1.834-0.192,2.388-0.252c0.83-0.094,0.541,0.105,0.541,0.105l-0.04,0.023c0,0,0.014,0.094,0.528,0.066c0.515-0.024,4.721-0.804,7.069-1.487c2.347-0.688,4.102-1.255,4.102-1.255s0.157-0.055,0.066,0.025c-0.094,0.078-0.463,0.2-0.463,0.2s-0.595,0.3,0.844-0.108c0.066-0.02,0.134-0.039,0.197-0.06c1.234-0.469,2.446-0.983,3.635-1.543c0.029-0.028,0.131-0.146-0.021-0.101c-0.172,0.056,0-0.065,0.187-0.131c0.184-0.066,2.267-1.162,3.363-1.608l0.002,0.003c0.394-0.227,0.781-0.455,1.17-0.691L77.807,85.745L77.807,85.745z"/><linearGradient id="SVGID_26_" gradientUnits="userSpaceOnUse" x1="217.6563" y1="-436.751" x2="217.6563" y2="-436.751" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset=".078" stop-color="#F4F4F4"/><stop offset=".3807" stop-color="#CECECE"/><stop offset=".5396" stop-color="#BFBFBF"/><stop offset=".8357" stop-color="#7C7C7C"/><stop offset=".8996" stop-color="#A8A8A8"/><stop offset=".9093" stop-color="#9A9A9A"/><stop offset=".9327" stop-color="#7D7D7D"/><stop offset=".9558" stop-color="#686868"/><stop offset=".9785" stop-color="#5B5B5B"/><stop offset="1" stop-color="#575757"/></linearGradient><path style="fill:url(#SVGID_26_);" d="M3.893,50.249L3.893,50.249L3.893,50.249z"/><linearGradient id="SVGID_27_" gradientUnits="userSpaceOnUse" x1="214.3262" y1="-436.5107" x2="322.8717" y2="-424.4851" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset=".078" stop-color="#F4F4F4"/><stop offset=".3807" stop-color="#CECECE"/><stop offset=".5396" stop-color="#BFBFBF"/><stop offset=".8357" stop-color="#7C7C7C"/><stop offset=".8996" stop-color="#A8A8A8"/><stop offset=".9093" stop-color="#9A9A9A"/><stop offset=".9327" stop-color="#7D7D7D"/><stop offset=".9558" stop-color="#686868"/><stop offset=".9785" stop-color="#5B5B5B"/><stop offset="1" stop-color="#575757"/></linearGradient><path style="fill:url(#SVGID_27_);" d="M1.193,48.543l0.107,0.98c0.236,0.285,0.579,0.675,1.067,1.181c1.084,1.121,1.428,0.416,1.428,0.416s0.072-0.201,0.092-0.586c-0.042,0.216-0.209,0.403-0.788-0.056c-0.298-0.237-0.688-0.627-1.076-1.049c-0.326-0.326-0.723-0.742-1.021-1.117l0.048,0.065l-0.213,0.526c0,0,0.069,0.115,0.268,0.376L1.193,48.543L1.193,48.543z"/><linearGradient id="SVGID_28_" gradientUnits="userSpaceOnUse" x1="213.8887" y1="-436.4771" x2="336.8819" y2="-422.851" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#FFF"/><stop offset=".078" stop-color="#F4F4F4"/><stop offset=".3807" stop-color="#CECECE"/><stop offset=".5396" stop-color="#BFBFBF"/><stop offset=".8357" stop-color="#7C7C7C"/><stop offset=".8996" stop-color="#A8A8A8"/><stop offset=".9093" stop-color="#9A9A9A"/><stop offset=".9327" stop-color="#7D7D7D"/><stop offset=".9558" stop-color="#686868"/><stop offset=".9785" stop-color="#5B5B5B"/><stop offset="1" stop-color="#575757"/></linearGradient><path style="fill:url(#SVGID_28_);" d="M3.741,49.133c-0.006-0.027-0.013-0.054-0.02-0.078c0.012,0.088,0.028,0.179,0.043,0.272c0,0,0.094,0.394,0.12,0.753C3.87,49.813,3.83,49.498,3.741,49.133z"/><linearGradient id="SVGID_29_" gradientUnits="userSpaceOnUse" x1="411.2539" y1="557.002" x2="507.2363" y2="537.6277" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".4176" stop-color="#FFF"/><stop offset=".6264" stop-color="#F8F9F9"/><stop offset="1" stop-color="#BFC0C2"/></linearGradient><path style="fill:url(#SVGID_29_);" d="M99.696,28.566l0.29,0.316c0.406-0.238,0.654,0.045,0.654,0.045l-0.386-0.494c-0.383,0.082-1.093,0.256-2.233,0.61c0,0-1.353,0.594-1.59,1.532c-0.016,0.332,0.049,0.641,0.116,0.876c0.753,1.429,0.913,1.666,0.913,1.666c0.499,1.091,0.422,1.993,0.25,2.824c-0.188,0.921-1.188,1.668-1.794,1.842c-0.608,0.171-0.953,0-1.14-0.483c-0.188-0.485-0.157-0.845-0.438-2.34c-0.28-1.499-0.653-2.2-1.216-2.372c-0.563-0.173-1.313,0.468-1.749,0.811c-0.438,0.344-2.417,2.152-2.417,2.152s-2.324,2.091-5.743,4.026c-3.417,1.935-7.69,3.418-7.69,3.418s-2.842,1.092-3.525,0.998c-0.688-0.093-0.516-0.718-0.297-1.076c0.219-0.36,0.516-0.937,0.766-1.545c0.313-0.756,0.201-1.654-0.359-1.967c-0.562-0.311-1.248-0.468-3.523,0.094s-3.197,1.076-3.838,1.451c-0.643,0.376-1.576,1.233-1.842,1.716c-0.266,0.484-0.563,0.983,0.126,1.576c0.688,0.594,0.763,0.485,1.56,1.046c0.797,0.562,0.922,0.64,0.969,1.466c0.045,0.827-0.766,1.341-0.766,1.341s-3.123,2.082-6.602,2.777c-2.34,0.469-6.833,0.639-6.833,0.639s-1.327-0.045-5.384,0.547c-4.056,0.594-6.787,1.514-7.738,1.856c-0.952,0.343-2.34,0.81-3.136,1.17c-0.795,0.358-0.375,0.89-0.203,1.015c0.172,0.123,1.185,1.074,1.498,1.354c0.312,0.282,1.466,1.279,0.108,2.108c-1.356,0.826-3.603,1.264-3.603,1.264s-3.121,0.654-4.119,0.234c-1.001-0.422-1.2-0.778-1.452-1.358c-0.313-0.718-0.016-1.263,0.794-1.78c0.77-0.486,0.469-1.199,0.469-1.199c-0.983-1.9-3.058-2.058-4.774-1.936c-2.72,0.198-5.358,0.471-7.425,0.734c-3.059,0.39-4.541-0.063-5.992-0.516c-1.452-0.453-2.997-1.529-3.154-2.498c-0.027-0.097-0.039-0.199-0.042-0.307c-0.078-0.758,0.074-1.146,0.184-1.784c0.108-0.625-0.043-1.532-0.084-1.758c-0.008-0.026-0.016-0.058-0.023-0.085c-0.507-1.304-1.725-1.903-2.668-2.058c-0.953-0.157-0.983,0.857-0.983,0.857s-0.002,0.012-0.006,0.04c0.078-0.208,0.222-0.315,0.444-0.31c0.577,0.02,2.259,0.361,2.781,1.754c0,0,0.218,0.648,0.019,1.479c-0.199,0.832-0.162,1.571-0.019,2.295c0.145,0.725,0.759,1.408,1.465,1.969c0.704,0.562,2.745,1.535,4.734,1.66c1.814,0.117,2.483,0.037,2.587,0.023l0.759-0.768l0.135,0.666c0.81-0.088,2.115-0.229,3.619-0.394c2.529-0.271,4.227-0.541,5.8-0.306c1.572,0.232,2.078,1.463,2.078,1.463s0.107,0.313-0.253,0.542c-0.349,0.226-0.75,0.548-0.947,0.891c-0.2,0.345-0.411,1.066,0.159,2.033c0.572,0.965,2.142,1.595,3.478,1.435c1.336-0.158,3.336-0.672,4.521-0.98c1.286-0.336,2.424-0.969,2.572-1.979c0.148-1.009-1.534-2.297-1.534-2.297s-0.81-0.611-0.909-0.75c-0.1-0.14,0.099-0.197,0.099-0.197s0.95-0.229,1.356-0.416c0.403-0.19,1.523-0.644,3.353-1.217c1.831-0.572,5.609-1.248,5.609-1.248s2.09-0.332,4.694-0.543l0.612-0.705l0.493,0.627c0.406-0.023,0.819-0.045,1.235-0.061c3.572-0.129,5.343-0.555,7.24-0.979c1.897-0.426,4.569-1.979,4.965-2.276c0.396-0.296,1.229-0.662,1.395-1.958c0.17-1.294-1.363-2.157-1.363-2.157s-1.218-0.643-1.476-0.929c-0.256-0.288-0.019-0.562-0.019-0.562s0.689-1.485,2.896-2.355c2.207-0.872,3.69-1.106,4.619-1.207c0.931-0.099,1.247,0.237,1.375,0.395c0.128,0.158,0.128,0.485,0.021,0.821c-0.101,0.308-0.443,1.039-0.644,1.396c-0.199,0.356-0.522,1.216-0.317,1.622c0.211,0.405,0.842,0.592,1.662,0.444c0.822-0.147,2.987-0.761,4.889-1.553c1.897-0.793,5.074-2.344,5.074-2.344s0.01-0.005,0.021-0.013l0.086-0.729l0.729,0.296c1.021-0.562,2.764-1.582,4.01-2.63c1.871-1.574,3.699-3.225,4.166-3.641c0.465-0.415,0.89-0.751,1.305-0.732c0.416,0.021,0.734,0.318,0.99,1.434c0.258,1.119,0.306,2.038,0.426,2.583c0.117,0.542,0.285,1.176,0.929,1.305c0.644,0.128,1.513-0.436,1.841-0.713c0.326-0.277,0.918-1.176,0.879-2.383c0,0,0.068-1.605-0.762-3.127c0,0-0.348-0.614-0.477-0.782c-0.088-0.119-0.155-0.238-0.008-0.523c0.146-0.288,0.465-0.821,1.059-1.157c0.449-0.256,0.881-0.316,1.128-0.396c0,0,0.28-0.069,0.636-0.266L99.696,28.566L99.696,28.566z"/><path style="fill:#FFF;" d="M1.547,32.696l-0.05,0.239c0.053-0.041,0.111-0.068,0.17-0.072c0.281-0.018,0.629,0.158,0.629,0.158s1.135,0.61,1.642,0.716c0.507,0.105,0.875-0.065,1.205-0.292c0.25-0.174,0.521-0.434,0.763-0.737c-0.29,0.29-0.725,0.548-1.365,0.595c0,0-0.571-0.049-1.419-0.587c-0.846-0.537-1.327-0.231-1.729,0.105l0,0l-0.249,0.564c-0.001,0.013-0.003,0.023-0.006,0.036l0.009,0.001c0,0,0.087-0.192,0.217-0.352L1.547,32.696L1.547,32.696z"/><path style="opacity:.73;fill:#FFF;" d="M6.387,31.961c0.059-0.12,0.112-0.238,0.155-0.354c0.05-0.14,0.09-0.334,0.125-0.55c-0.096,0.44-0.223,0.73-0.223,0.73S6.428,31.853,6.387,31.961L6.387,31.961z"/><path style="opacity:.73;fill:#FFF;" d="M6.807,28.654c-0.038,0.439-0.038,0.987-0.038,1.493l0,0c0.04-0.509,0.052-0.935,0.052-0.935l0.004,0.014c0,0,0-0.421-0.011-0.518C6.811,28.695,6.809,28.677,6.807,28.654z"/><linearGradient id="SVGID_30_" gradientUnits="userSpaceOnUse" x1="413.5137" y1="516.4121" x2="417.999" y2="516.4121" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#E2E3E4"/><stop offset=".5055" stop-color="#FFF"/></linearGradient><path style="fill:url(#SVGID_30_);" d="M8.12,16.324l-0.291,0.435c0.087-0.014,0.089-0.007,0.244-0.056c0,0,0.404-0.066,1.112,0.12c0.917,0.244,2.067-0.496,2.067-0.496s0.272-0.164,0.583-0.458c-0.4,0.24-1.385,0.762-2.132,0.585c-0.961-0.229-0.994-0.017-1.336-0.049c-0.292-0.028-0.292-0.11-0.275-0.314c0.002-0.032,0.023-0.054,0.03-0.092c0.05-0.261,0.339-0.689,0.339-0.689l-0.684,0.383c-0.115,0.189-0.227,0.378-0.34,0.569c-0.063,0.146-0.179,0.475,0.044,0.509c0.055,0.009,0.11,0.011,0.163,0.009L8.12,16.324L8.12,16.324z"/><path style="fill:#FFF;" d="M17.019,15.036c-1.027,0.278-1.972,0.734-2.494,0.604c-0.438-0.109-0.084-0.76,0.042-0.965c0.069-0.146,0.167-0.292,0.249-0.406c0.31-0.506,0.833-1.351,0.833-1.351s0,0,0-0.002c0.017-0.032,0.033-0.067,0.049-0.102c0.067-0.18,0.12-0.537-0.472-0.597c-0.799-0.082-1.613,0.619-1.613,0.619s-0.547,0.301-0.838,1.417l0.112-0.313c0,0,0.291-0.973,1.105-1.281c0,0,0.317-0.171,0.831-0.177c0.513-0.005,0.392,0.354,0.392,0.354s-0.056,0.233-0.586,0.912c-0.529,0.677-0.671,1.195-0.671,1.195s-0.319,0.723,0.193,0.957c0,0,0.238,0.141,0.939-0.091c0.7-0.233,3.02-0.843,4.438-1.06l0.993-0.506C19.849,14.299,18.012,14.769,17.019,15.036L17.019,15.036z"/><path style="fill:#FFF;" d="M-16.122-14.641"/><path style="fill:#FFF;" d="M-16.122-14.641"/><path style="opacity:.1;fill:#231F20;" d="M90.578,74.217c0.006-0.004,0.009-0.008,0.014-0.013C90.587,74.21,90.582,74.213,90.578,74.217z"/><path style="opacity:.1;fill:#231F20;" d="M90.821,73.951c0.001-0.002,0.002-0.004,0.003-0.004C90.823,73.947,90.822,73.949,90.821,73.951z"/><path style="opacity:.1;fill:#231F20;" d="M90.738,74.042c0.003-0.004,0.008-0.009,0.011-0.013C90.746,74.033,90.741,74.038,90.738,74.042z"/><path style="opacity:.25;fill:#231F20;" d="M87.9,76.68l-0.164,0.174c-0.646,0.716-0.969,1.007-0.969,1.007l-0.242,0.269l0,0c-0.002,0.006-0.006,0.012-0.012,0.014c0.008,0.002,0.018,0.004,0.041,0.004c0,0,0.229-0.002,0.588-0.219c-0.072,0.041-0.139,0.068-0.181,0.07c-0.177,0.012,0.431-0.538,0.431-0.538s0.588-0.626,0.967-1.125c0.382-0.497,0.138-0.468,0.138-0.468s-0.087-0.021-0.397,0.125C88.125,76.018,88.268,76.223,87.9,76.68L87.9,76.68z"/><path style="opacity:.1;fill:#231F20;" d="M90.657,74.133c0.003-0.006,0.007-0.013,0.013-0.017C90.664,74.121,90.662,74.128,90.657,74.133z"/><path style="opacity:.22;fill:#231F20;" d="M72.945,81.21c0,0,2.215-0.931,3.402-0.79c0,0,0.611,0.059-0.062,0.711c-0.672,0.652-0.892,1.168,0.396,0.752c0,0,0.094-0.033,0.244-0.086c-0.504,0.143-0.734,0.143-0.658,0.033c0.127-0.188,0.461-0.461,0.461-0.461s0.399-0.4,0.399-0.801c0,0,0.128-0.588-1.604-0.225c-1.01,0.209-1.969,0.59-2.588,0.867C72.941,81.211,72.943,81.211,72.945,81.21L72.945,81.21z"/><path style="opacity:.1;fill:#231F20;" d="M72.234,81.555l-0.004,0.002C72.232,81.557,72.234,81.555,72.234,81.555z"/><path style="opacity:.1;fill:#231F20;" d="M88.057,76.014c-0.014,0.008-0.026,0.015-0.043,0.021C88.028,76.027,88.043,76.021,88.057,76.014z"/><path style="opacity:.28;fill:#231F20;" d="M78.305,81.299c1.448-0.521,3.93-1.854,5.023-2.492C82.232,79.442,79.73,80.717,78.305,81.299z"/><path style="opacity:.1;fill:#231F20;" d="M87.512,76.325c0.026-0.017,0.055-0.032,0.08-0.049C87.566,76.293,87.538,76.309,87.512,76.325z"/><path style="opacity:.1;fill:#231F20;" d="M91.618,73.084c0.008-0.011,0.019-0.023,0.026-0.029C91.637,73.061,91.626,73.073,91.618,73.084z"/><path style="opacity:.1;fill:#231F20;" d="M91.434,73.281c0.01-0.012,0.019-0.02,0.023-0.027C91.451,73.264,91.441,73.27,91.434,73.281z"/><path style="opacity:.1;fill:#231F20;" d="M91.521,73.188c0.01-0.012,0.02-0.022,0.029-0.032C91.539,73.165,91.53,73.178,91.521,73.188z"/><path style="opacity:.1;fill:#231F20;" d="M90.9,73.863c0.003-0.006,0.007-0.01,0.012-0.016C90.907,73.854,90.903,73.857,90.9,73.863z"/><path style="opacity:.1;fill:#231F20;" d="M71.246,82.088c-0.014,0.008-0.023,0.018-0.036,0.022C71.221,82.105,71.232,82.096,71.246,82.088z"/><path style="opacity:.1;fill:#231F20;" d="M91.346,73.375c0.008-0.008,0.014-0.015,0.021-0.021C91.359,73.36,91.354,73.367,91.346,73.375z"/><path style="opacity:.1;fill:#231F20;" d="M91.077,73.669c0.006-0.006,0.01-0.011,0.013-0.015C91.087,73.659,91.083,73.663,91.077,73.669z"/><path style="opacity:.1;fill:#231F20;" d="M91.251,73.479c0.007-0.006,0.015-0.012,0.021-0.021C91.266,73.463,91.255,73.473,91.251,73.479z"/><path style="opacity:.1;fill:#231F20;" d="M90.987,73.768c0.004-0.006,0.01-0.012,0.016-0.021C90.997,73.756,90.991,73.762,90.987,73.768z"/><path style="opacity:.1;fill:#231F20;" d="M91.161,73.578c0.006-0.006,0.011-0.014,0.017-0.02C91.172,73.564,91.165,73.572,91.161,73.578z"/><path style="opacity:.1;fill:#231F20;" d="M71.816,81.764c-0.008,0.006-0.02,0.012-0.026,0.017C71.799,81.774,71.809,81.77,71.816,81.764z"/><path style="opacity:.1;fill:#231F20;" d="M72.044,81.646c-0.006,0.004-0.012,0.006-0.019,0.009C72.032,81.652,72.038,81.649,72.044,81.646z"/><path style="opacity:.1;fill:#231F20;" d="M71.305,82.055c-0.011,0.008-0.021,0.014-0.031,0.021C71.283,82.067,71.294,82.063,71.305,82.055z"/><path style="opacity:.1;fill:#231F20;" d="M71.969,81.684c-0.008,0.004-0.015,0.009-0.021,0.014C71.953,81.692,71.961,81.688,71.969,81.684z"/><path style="opacity:.1;fill:#231F20;" d="M72.109,81.613c-0.004,0.005-0.01,0.006-0.016,0.01C72.102,81.619,72.105,81.617,72.109,81.613z"/><path style="opacity:.1;fill:#231F20;" d="M72.008,81.665c-0.007,0.004-0.013,0.007-0.021,0.011C71.994,81.672,72.001,81.669,72.008,81.665z"/><path style="opacity:.1;fill:#231F20;" d="M72.206,81.566c-0.003,0.002-0.005,0.003-0.007,0.004C72.201,81.569,72.203,81.568,72.206,81.566z"/><path style="opacity:.1;fill:#231F20;" d="M72.148,81.594c-0.008,0.004-0.016,0.01-0.024,0.015C72.135,81.604,72.141,81.598,72.148,81.594z"/><path style="opacity:.1;fill:#231F20;" d="M71.928,81.707c-0.01,0.003-0.02,0.01-0.027,0.016C71.908,81.715,71.918,81.711,71.928,81.707z"/><path style="opacity:.1;fill:#231F20;" d="M72.193,81.575c-0.006,0.001-0.01,0.003-0.014,0.004C72.184,81.578,72.189,81.575,72.193,81.575z"/><path style="opacity:.1;fill:#231F20;" d="M72.172,81.585c-0.004,0.003-0.008,0.005-0.015,0.007C72.164,81.59,72.168,81.585,72.172,81.585z"/><path style="opacity:.1;fill:#231F20;" d="M72.079,81.631c-0.008,0.002-0.013,0.004-0.019,0.006C72.066,81.635,72.071,81.633,72.079,81.631z"/><path style="opacity:.1;fill:#231F20;" d="M71.866,81.739c-0.011,0.002-0.021,0.008-0.027,0.013C71.848,81.747,71.857,81.741,71.866,81.739z"/><path style="opacity:.1;fill:#231F20;" d="M71.555,81.906c-0.018,0.012-0.033,0.02-0.052,0.029C71.521,81.924,71.539,81.918,71.555,81.906z"/><path style="opacity:.1;fill:#231F20;" d="M72.219,81.561c0,0.002-0.002,0.002-0.002,0.004C72.217,81.563,72.219,81.563,72.219,81.561z"/><path style="opacity:.1;fill:#231F20;" d="M71.421,81.986c-0.011,0.006-0.022,0.01-0.03,0.02C71.398,81.996,71.41,81.992,71.421,81.986z"/><path style="opacity:.1;fill:#231F20;" d="M71.363,82.02c-0.012,0.005-0.021,0.013-0.032,0.021C71.342,82.032,71.354,82.024,71.363,82.02z"/><path style="opacity:.1;fill:#231F20;" d="M71.482,81.948c-0.014,0.006-0.023,0.015-0.036,0.021C71.458,81.963,71.471,81.956,71.482,81.948z"/><path style="opacity:.1;fill:#231F20;" d="M71.768,81.79c-0.01,0.004-0.018,0.009-0.024,0.017C71.751,81.799,71.758,81.794,71.768,81.79z"/><path style="opacity:.1;fill:#231F20;" d="M91.708,72.984c0.013-0.014,0.024-0.028,0.04-0.042C91.734,72.956,91.723,72.971,91.708,72.984z"/><path style="opacity:.1;fill:#231F20;" d="M71.717,81.818c-0.01,0.004-0.019,0.009-0.027,0.015C71.698,81.827,71.707,81.822,71.717,81.818z"/><path style="opacity:.1;fill:#231F20;" d="M71.665,81.846c-0.011,0.006-0.021,0.014-0.028,0.018C71.645,81.858,71.654,81.852,71.665,81.846z"/><path style="opacity:.1;fill:#231F20;" d="M71.609,81.875c-0.01,0.008-0.021,0.014-0.03,0.02C71.589,81.889,71.602,81.881,71.609,81.875z"/><path style="opacity:.1;fill:#231F20;" d="M92.443,72.197c-0.021,0.021-0.037,0.039-0.055,0.061C92.406,72.238,92.423,72.217,92.443,72.197z"/><path style="opacity:.1;fill:#231F20;" d="M92.359,72.287c-0.021,0.021-0.041,0.044-0.061,0.066C92.318,72.331,92.339,72.309,92.359,72.287z"/><path style="opacity:.1;fill:#231F20;" d="M92.501,72.135c-0.011,0.015-0.021,0.023-0.028,0.033C92.48,72.157,92.49,72.148,92.501,72.135z"/><path style="opacity:.1;fill:#231F20;" d="M91.786,72.899c0.022-0.021,0.042-0.042,0.062-0.063C91.828,72.857,91.807,72.878,91.786,72.899z"/><path style="opacity:.1;fill:#231F20;" d="M92.273,72.379c-0.014,0.016-0.025,0.029-0.041,0.045C92.245,72.409,92.26,72.395,92.273,72.379z"/><path style="opacity:.1;fill:#231F20;" d="M92.579,72.053c-0.013,0.012-0.021,0.021-0.03,0.032C92.559,72.074,92.569,72.063,92.579,72.053z"/><path style="opacity:.1;fill:#231F20;" d="M92.762,71.858c-0.002,0-0.002,0-0.002,0.001C92.76,71.858,92.76,71.858,92.762,71.858z"/><path style="opacity:.1;fill:#231F20;" d="M92.703,71.919c-0.004,0.005-0.01,0.013-0.014,0.017C92.693,71.928,92.699,71.924,92.703,71.919z"/><path style="opacity:.1;fill:#231F20;" d="M87.938,76.074c-0.017,0.008-0.027,0.016-0.043,0.023C87.907,76.09,87.922,76.082,87.938,76.074z"/><path style="opacity:.1;fill:#231F20;" d="M92.648,71.98c-0.012,0.011-0.021,0.021-0.029,0.029C92.629,72,92.637,71.991,92.648,71.98z"/><path style="opacity:.1;fill:#231F20;" d="M87.666,76.229c-0.018,0.013-0.031,0.021-0.051,0.031C87.633,76.25,87.648,76.241,87.666,76.229z"/><path style="opacity:.1;fill:#231F20;" d="M48.204,91.026c0,0-0.001,0-0.003,0.002C48.203,91.026,48.203,91.026,48.204,91.026z"/><path style="opacity:.1;fill:#231F20;" d="M48.073,91.03c-0.007,0-0.013,0-0.021,0C48.06,91.03,48.066,91.03,48.073,91.03z"/><path style="opacity:.1;fill:#231F20;" d="M48.136,91.028c-0.007,0.002-0.013,0.002-0.02,0.002C48.123,91.03,48.129,91.03,48.136,91.028z"/><path style="opacity:.1;fill:#231F20;" d="M48.005,91.032c-0.003,0-0.007,0-0.012,0C47.998,91.032,48.002,91.032,48.005,91.032z"/><path style="opacity:.1;fill:#231F20;" d="M47.94,91.035c-0.004,0-0.009,0-0.015,0C47.93,91.035,47.935,91.035,47.94,91.035z"/><path style="opacity:.1;fill:#231F20;" d="M87.869,76.111c-0.014,0.006-0.021,0.015-0.039,0.021C87.848,76.126,87.857,76.117,87.869,76.111z"/><path style="opacity:.1;fill:#231F20;" d="M87.807,76.146c-0.014,0.009-0.025,0.018-0.041,0.021C87.779,76.164,87.793,76.155,87.807,76.146z"/><path style="opacity:.1;fill:#231F20;" d="M87.738,76.186c-0.016,0.011-0.028,0.018-0.044,0.024C87.71,76.203,87.723,76.196,87.738,76.186z"/><path style="opacity:.1;fill:#231F20;" d="M87.951,76.067c0.02-0.011,0.035-0.021,0.054-0.027C87.986,76.047,87.971,76.057,87.951,76.067z"/><path style="opacity:.1;fill:#231F20;" d="M87.719,77.52c0,0-0.082,0.064-0.193,0.147C87.592,77.621,87.664,77.566,87.719,77.52z"/><path style="opacity:.1;fill:#231F20;" d="M92.205,72.452c-0.021,0.022-0.042,0.046-0.064,0.067C92.163,72.498,92.186,72.475,92.205,72.452z"/><path style="opacity:.1;fill:#231F20;" d="M28.05,87.006c-0.019-0.007-0.037-0.016-0.056-0.021C28.013,86.991,28.031,86.999,28.05,87.006z"/><path style="opacity:.1;fill:#231F20;" d="M71.051,82.217c-0.013,0.008-0.021,0.017-0.037,0.021C71.027,82.23,71.038,82.223,71.051,82.217z"/><path style="opacity:.1;fill:#231F20;" d="M45.854,89.871c-0.024,0-0.049-0.004-0.074-0.004C45.806,89.867,45.831,89.871,45.854,89.871z"/><path style="opacity:.1;fill:#231F20;" d="M27.678,86.883c0.02,0.004,0.039,0.01,0.058,0.019C27.717,86.893,27.696,86.887,27.678,86.883z"/><path style="opacity:.1;fill:#231F20;" d="M27.555,86.844c0.038,0.012,0.078,0.022,0.119,0.037C27.633,86.869,27.593,86.854,27.555,86.844z"/><path style="opacity:.1;fill:#231F20;" d="M27.862,86.941c-0.041-0.014-0.082-0.026-0.123-0.04C27.78,86.913,27.82,86.928,27.862,86.941z"/><path style="opacity:.1;fill:#231F20;" d="M91.88,72.799c0.015-0.016,0.026-0.027,0.04-0.043C91.907,72.771,91.895,72.784,91.88,72.799z"/><path style="opacity:.1;fill:#231F20;" d="M28.058,87.006c0.04,0.016,0.079,0.026,0.116,0.041C28.137,87.033,28.098,87.021,28.058,87.006z"/><path style="opacity:.1;fill:#231F20;" d="M91.977,72.695c0.014-0.016,0.026-0.027,0.041-0.044C92.002,72.668,91.989,72.68,91.977,72.695z"/><path style="opacity:.1;fill:#231F20;" d="M92.057,72.612c0.021-0.022,0.039-0.041,0.061-0.062C92.096,72.571,92.076,72.59,92.057,72.612z"/><path style="opacity:.1;fill:#231F20;" d="M27.991,86.985c-0.021-0.009-0.041-0.017-0.062-0.022C27.95,86.969,27.97,86.977,27.991,86.985z"/><path style="opacity:.1;fill:#231F20;" d="M71.133,82.162c0.021-0.013,0.037-0.021,0.055-0.036C71.17,82.139,71.152,82.149,71.133,82.162z"/><path style="opacity:.1;fill:#231F20;" d="M46.361,89.926c-0.016-0.002-0.035-0.004-0.053-0.008C46.325,89.922,46.345,89.924,46.361,89.926z"/><path style="opacity:.1;fill:#231F20;" d="M71.122,82.17c-0.019,0.012-0.034,0.021-0.049,0.032C71.088,82.191,71.105,82.18,71.122,82.17z"/><path style="opacity:.1;fill:#231F20;" d="M46.439,89.939c-0.017-0.002-0.032-0.006-0.049-0.008C46.407,89.934,46.422,89.938,46.439,89.939z"/><path style="opacity:.1;fill:#231F20;" d="M46.513,89.953c-0.016-0.005-0.031-0.007-0.047-0.011C46.481,89.946,46.497,89.948,46.513,89.953z"/><path style="opacity:.1;fill:#231F20;" d="M46.096,89.891c-0.031-0.002-0.065-0.006-0.1-0.01C46.031,89.885,46.065,89.889,46.096,89.891z"/><path style="opacity:.1;fill:#231F20;" d="M46.278,89.913c-0.02-0.002-0.041-0.004-0.061-0.006C46.237,89.909,46.259,89.911,46.278,89.913z"/><path style="opacity:.1;fill:#231F20;" d="M46.19,89.904c-0.028-0.005-0.054-0.008-0.084-0.012C46.136,89.896,46.163,89.899,46.19,89.904z"/><path style="opacity:.1;fill:#231F20;" d="M45.971,89.881c-0.025-0.005-0.051-0.006-0.079-0.009C45.92,89.875,45.945,89.877,45.971,89.881z"/><path style="opacity:.1;fill:#231F20;" d="M27.926,86.961c-0.02-0.004-0.039-0.011-0.058-0.019C27.888,86.953,27.908,86.957,27.926,86.961z"/><path style="opacity:.1;fill:#231F20;" d="M47.395,90.975c0.001,0.004,0.003,0.004,0.004,0.004C47.398,90.979,47.396,90.979,47.395,90.975z"/><path style="opacity:.1;fill:#231F20;" d="M47.375,90.969c0.001,0,0.002,0,0.003,0C47.378,90.969,47.376,90.969,47.375,90.969z"/><path style="opacity:.1;fill:#231F20;" d="M47.418,90.982L47.418,90.982L47.418,90.982z"/><path style="opacity:.1;fill:#231F20;" d="M47.465,90.996c0.003,0,0.004,0.001,0.006,0.001C47.47,90.997,47.468,90.996,47.465,90.996z"/><path style="opacity:.1;fill:#231F20;" d="M47.442,90.988c0.001,0,0.002,0.002,0.002,0.002L47.442,90.988z"/><path style="opacity:.1;fill:#231F20;" d="M47.342,90.955L47.342,90.955L47.342,90.955z"/><path style="opacity:.1;fill:#231F20;" d="M46.589,89.967c-0.02-0.002-0.036-0.009-0.054-0.013C46.553,89.959,46.57,89.965,46.589,89.967z"/><path style="opacity:.1;fill:#231F20;" d="M46.764,90.012c-0.011-0.004-0.021-0.008-0.033-0.012C46.742,90.006,46.753,90.008,46.764,90.012z"/><path style="opacity:.1;fill:#231F20;" d="M49.049,90.953c-0.01,0.001-0.021,0.002-0.032,0.004C49.028,90.955,49.038,90.954,49.049,90.953z"/><path style="opacity:.1;fill:#231F20;" d="M46.659,89.984c-0.021-0.006-0.039-0.01-0.061-0.014C46.619,89.975,46.639,89.979,46.659,89.984z"/><path style="opacity:.1;fill:#231F20;" d="M47.767,91.028c0.003,0,0.003,0,0.006,0C47.773,91.028,47.77,91.028,47.767,91.028z"/><path style="opacity:.1;fill:#231F20;" d="M47.821,91.03c0.003,0,0.007,0,0.013,0C47.828,91.03,47.824,91.03,47.821,91.03z"/><path style="opacity:.1;fill:#231F20;" d="M45.214,89.855c0.047,0,0.092,0,0.139,0C45.308,89.855,45.261,89.855,45.214,89.855z"/><path style="opacity:.1;fill:#231F20;" d="M47.716,91.026c0.005,0,0.009,0,0.013,0.002C47.727,91.026,47.722,91.026,47.716,91.026z"/><path style="opacity:.36;fill:#231F20;" d="M46.772,90.014c0,0,0.158,0.021,0.059,0.338c-0.1,0.313,0.06,0.451,0.475,0.594l0.023,0.006c0,0,0.001,0,0.002,0c-0.079-0.04-0.074-0.08-0.074-0.08s-0.01-0.078,0.078-0.216c0.087-0.136,0.009-0.369-0.293-0.536C47.044,90.118,46.967,90.07,46.772,90.014L46.772,90.014L46.772,90.014z"/><path style="opacity:.1;fill:#231F20;" d="M47.869,91.032c0.006,0,0.012,0,0.018,0C47.881,91.032,47.875,91.032,47.869,91.032z"/><path style="opacity:.1;fill:#231F20;" d="M47.495,91.002c0.001,0,0.004,0,0.004,0C47.497,91.002,47.496,91.002,47.495,91.002z"/><path style="opacity:.1;fill:#231F20;" d="M47.677,91.024c0.004,0,0.007,0,0.01,0C47.684,91.024,47.681,91.024,47.677,91.024z"/><path style="opacity:.1;fill:#231F20;" d="M47.529,91.006c0.001,0,0.002,0,0.002,0S47.53,91.006,47.529,91.006z"/><path style="opacity:.1;fill:#231F20;" d="M47.559,91.01c0.002,0.002,0.005,0.002,0.008,0.002C47.566,91.012,47.561,91.01,47.559,91.01z"/><path style="opacity:.1;fill:#231F20;" d="M47.594,91.016c0.002,0,0.004,0,0.008,0C47.599,91.016,47.596,91.016,47.594,91.016z"/><path style="opacity:.1;fill:#231F20;" d="M46.711,89.997c-0.011-0.002-0.026-0.007-0.043-0.011C46.685,89.99,46.701,89.995,46.711,89.997z"/><path style="opacity:.1;fill:#231F20;" d="M28.748,87.256c-0.008-0.003-0.018-0.007-0.025-0.01C28.731,87.25,28.739,87.254,28.748,87.256z"/><path style="opacity:.1;fill:#231F20;" d="M28.776,87.27c-0.007-0.002-0.016-0.008-0.024-0.012C28.761,87.262,28.769,87.268,28.776,87.27z"/><path style="opacity:.1;fill:#231F20;" d="M28.681,87.23c-0.008-0.004-0.021-0.006-0.03-0.01C28.66,87.225,28.672,87.227,28.681,87.23z"/><path style="opacity:.1;fill:#231F20;" d="M45.66,89.862c0.026,0,0.052,0.005,0.074,0.005C45.711,89.865,45.686,89.865,45.66,89.862z"/><path style="opacity:.1;fill:#231F20;" d="M28.797,87.275c-0.005-0.002-0.013-0.006-0.021-0.008C28.784,87.271,28.792,87.273,28.797,87.275z"/><path style="opacity:.1;fill:#231F20;" d="M27.38,86.794c0.038,0.011,0.074,0.022,0.112,0.031C27.453,86.816,27.417,86.803,27.38,86.794z"/><path style="opacity:.1;fill:#231F20;" d="M27.492,86.825c0.021,0.004,0.039,0.011,0.058,0.019C27.53,86.836,27.512,86.829,27.492,86.825z"/><path style="opacity:.1;fill:#231F20;" d="M28.814,87.284c-0.003-0.002-0.006-0.005-0.012-0.007C28.808,87.279,28.811,87.282,28.814,87.284z"/><path style="opacity:.1;fill:#231F20;" d="M28.64,87.219c-0.011-0.006-0.021-0.01-0.03-0.014C28.621,87.21,28.629,87.213,28.64,87.219z"/><path style="opacity:.38;fill:#231F20;" d="M27.687,87.239c-0.014-0.013-0.023-0.022-0.03-0.032c-0.263-0.197-0.343-0.418-0.343-0.418l0.009-0.011c0.017,0.007,0.034,0.011,0.052,0.014c-0.291-0.075-0.5-0.104-0.479-0.018c0.015,0.061,0.131,0.153,0.269,0.245c0.174,0.094,0.346,0.187,0.522,0.279V87.239L27.687,87.239z"/><path style="opacity:.1;fill:#231F20;" d="M28.716,87.245c-0.009-0.003-0.018-0.006-0.027-0.01C28.699,87.239,28.708,87.242,28.716,87.245z"/><path style="opacity:.1;fill:#231F20;" d="M28.602,87.202c-0.013-0.004-0.027-0.01-0.042-0.015C28.574,87.192,28.59,87.198,28.602,87.202z"/><path style="opacity:.1;fill:#231F20;" d="M28.841,87.293c0,0-0.006-0.004-0.022-0.009C28.835,87.29,28.841,87.293,28.841,87.293z"/><path style="opacity:.1;fill:#231F20;" d="M28.232,87.068c-0.018-0.006-0.031-0.014-0.047-0.018C28.201,87.055,28.215,87.063,28.232,87.068z"/><path style="opacity:.1;fill:#231F20;" d="M45.534,89.858c0.028,0,0.054,0.002,0.081,0.002C45.587,89.858,45.562,89.858,45.534,89.858z"/><path style="opacity:.1;fill:#231F20;" d="M45.397,89.855c0.029,0,0.06,0,0.089,0C45.457,89.855,45.427,89.855,45.397,89.855z"/><path style="opacity:.1;fill:#231F20;" d="M28.348,87.11c-0.034-0.013-0.07-0.025-0.106-0.039C28.278,87.085,28.314,87.098,28.348,87.11z"/><path style="opacity:.1;fill:#231F20;" d="M28.506,87.168c-0.013-0.005-0.025-0.01-0.037-0.015C28.481,87.158,28.494,87.162,28.506,87.168z"/><path style="opacity:.1;fill:#231F20;" d="M28.401,87.129c-0.013-0.006-0.028-0.011-0.043-0.015C28.373,87.118,28.388,87.123,28.401,87.129z"/><path style="opacity:.1;fill:#231F20;" d="M28.557,87.186c-0.013-0.004-0.025-0.012-0.04-0.017C28.531,87.176,28.544,87.182,28.557,87.186z"/><path style="opacity:.1;fill:#231F20;" d="M28.458,87.15c-0.016-0.008-0.031-0.014-0.047-0.018C28.427,87.137,28.442,87.143,28.458,87.15z"/><path style="opacity:.1;fill:#231F20;" d="M70.02,84.389c0.004,0,0.006,0,0.006,0C70.023,84.389,70.023,84.389,70.02,84.389z"/><path style="opacity:.1;fill:#231F20;" d="M70.789,84.087c-0.001,0.003-0.003,0.005-0.004,0.005C70.786,84.09,70.788,84.088,70.789,84.087z"/><path style="opacity:.1;fill:#231F20;" d="M70.762,84.102c-0.002,0.002-0.004,0.002-0.006,0.004C70.758,84.104,70.76,84.104,70.762,84.102z"/><path style="opacity:.1;fill:#231F20;" d="M70.732,84.116c-0.002,0.002-0.004,0.003-0.006,0.004C70.729,84.119,70.73,84.118,70.732,84.116z"/><path style="opacity:.1;fill:#231F20;" d="M70.697,84.133c-0.001,0-0.002,0-0.002,0.002C70.695,84.133,70.696,84.133,70.697,84.133z"/><path style="opacity:.1;fill:#231F20;" d="M70.417,84.249c0.006-0.001,0.009-0.002,0.011-0.002C70.426,84.247,70.423,84.248,70.417,84.249z"/><path style="opacity:.1;fill:#231F20;" d="M70.389,84.262h0.002H70.389z"/><path style="opacity:.1;fill:#231F20;" d="M70.662,84.146L70.662,84.146L70.662,84.146z"/><path style="opacity:.1;fill:#231F20;" d="M70.316,84.289c0.002-0.002,0.007-0.003,0.009-0.003C70.321,84.286,70.318,84.287,70.316,84.289z"/><path style="opacity:.1;fill:#231F20;" d="M70.285,84.299c0.003,0,0.005-0.002,0.009-0.004C70.29,84.297,70.288,84.299,70.285,84.299z"/><path style="opacity:.1;fill:#231F20;" d="M70.354,84.275c0.002-0.002,0.002-0.002,0.002-0.002S70.354,84.273,70.354,84.275z"/><path style="opacity:.1;fill:#231F20;" d="M48.946,90.965c-0.011,0-0.022,0.004-0.033,0.004C48.924,90.969,48.935,90.965,48.946,90.965z"/><path style="opacity:.1;fill:#231F20;" d="M70.256,84.311c0.002,0,0.004,0,0.006-0.002C70.26,84.311,70.258,84.311,70.256,84.311z"/><path style="opacity:.1;fill:#231F20;" d="M70.78,82.41c0.013-0.009,0.026-0.021,0.042-0.032C70.809,82.389,70.793,82.401,70.78,82.41z"/><path style="opacity:.1;fill:#231F20;" d="M70.956,82.279c0.013-0.008,0.022-0.016,0.033-0.023C70.98,82.264,70.969,82.271,70.956,82.279z"/><path style="opacity:.1;fill:#231F20;" d="M70.898,82.321c0.012-0.009,0.022-0.017,0.033-0.022C70.923,82.305,70.91,82.313,70.898,82.321z"/><path style="opacity:.19;fill:#231F20;" d="M70.903,83.794c0.2,0.064,0.106,0.171-0.087,0.278l0.089-0.033c0,0,0.793-0.436,0.458-0.633c-0.338-0.198-1.129-0.275-0.613-0.969l0.02-0.02c-0.442,0.344-0.756,0.727-0.498,1.021C70.27,83.443,70.387,83.629,70.903,83.794z"/><path style="opacity:.1;fill:#231F20;" d="M70.566,84.191c-0.002,0-0.006,0.002-0.008,0.003C70.561,84.193,70.564,84.191,70.566,84.191z"/><path style="opacity:.1;fill:#231F20;" d="M70.631,84.163c-0.002,0.001-0.004,0.002-0.006,0.003C70.627,84.165,70.629,84.164,70.631,84.163z"/><path style="opacity:.1;fill:#231F20;" d="M70.598,84.176c0,0.002-0.004,0.004-0.006,0.004C70.594,84.18,70.598,84.178,70.598,84.176z"/><path style="opacity:.1;fill:#231F20;" d="M70.493,84.223c-0.003,0-0.003,0-0.007,0.002C70.49,84.223,70.49,84.223,70.493,84.223z"/><path style="opacity:.1;fill:#231F20;" d="M70.459,84.233c-0.002,0-0.004,0.002-0.008,0.004C70.455,84.235,70.457,84.233,70.459,84.233z"/><path style="opacity:.1;fill:#231F20;" d="M70.842,82.363c0.012-0.01,0.024-0.018,0.034-0.025C70.866,82.346,70.854,82.354,70.842,82.363z"/><path style="opacity:.1;fill:#231F20;" d="M48.293,91.024c-0.007,0-0.016,0-0.023,0C48.277,91.024,48.286,91.024,48.293,91.024z"/><path style="opacity:.1;fill:#231F20;" d="M48.444,91.014c-0.004,0-0.011,0-0.017,0C48.434,91.014,48.44,91.014,48.444,91.014z"/><path style="opacity:.1;fill:#231F20;" d="M48.369,91.02c-0.009,0-0.017,0-0.027,0C48.352,91.02,48.359,91.02,48.369,91.02z"/><path style="opacity:.25;fill:#231F20;" d="M50.023,89.904c0,0,0.362,0.225,1.673,0.285c0,0,0.45,0,0.468,0.035c0.016,0.028,0.036,0.056-0.068,0.102l0,0c0.06-0.021,0.793-0.254,0.476-0.391c-0.04-0.019-0.063-0.024-0.074-0.028c-0.006,0-0.013,0-0.019-0.003l0,0c-0.008-0.002-0.016-0.002-0.021-0.004c-0.007,0-0.009-0.001-0.013-0.001c-0.006-0.003-0.014-0.003-0.021-0.005c-0.004,0-0.009,0-0.015-0.002c-0.005,0-0.011-0.002-0.017-0.002c-0.004,0-0.011-0.002-0.017-0.004c-0.005,0-0.012,0-0.015,0c-0.008-0.002-0.014-0.002-0.018-0.004c-0.004,0-0.012,0-0.016-0.002c-0.005,0-0.012,0-0.018,0c-0.002-0.004-0.008-0.004-0.01-0.004c-0.011-0.002-0.015-0.003-0.021-0.003c-0.004,0-0.006-0.001-0.008-0.001c-0.01-0.001-0.021-0.001-0.028-0.002c0,0-0.002,0-0.004-0.002c-0.007,0-0.015,0-0.021,0c-0.005-0.002-0.007-0.002-0.012-0.002s-0.011,0-0.02,0c-0.004,0-0.006,0-0.008,0c-0.008-0.002-0.013-0.002-0.019-0.002c-0.003,0-0.007,0-0.009,0c-0.008,0-0.014-0.002-0.018-0.002c-0.005,0-0.009-0.003-0.012-0.003c-0.006,0-0.014,0-0.021,0c-0.004,0-0.004,0-0.006,0c-0.039-0.004-0.08-0.004-0.128-0.009c-0.002,0-0.004,0-0.004,0c-0.009,0-0.015-0.002-0.022-0.002c-0.002,0-0.007,0-0.011,0c-0.007,0-0.013,0-0.021,0c-0.004-0.002-0.01-0.002-0.014-0.002c-0.006,0-0.013-0.002-0.02-0.002c-0.005,0-0.011,0-0.016-0.002c-0.005,0-0.011,0-0.019,0c-0.01,0-0.02-0.002-0.028-0.004c-0.006,0-0.012,0-0.019,0c-0.008,0-0.018-0.002-0.028-0.002c-0.005,0-0.011-0.002-0.016-0.002c-0.008,0-0.019,0-0.024-0.001c-0.006-0.001-0.013-0.001-0.021-0.001c-0.007-0.002-0.018-0.002-0.026-0.004c-0.005,0-0.013-0.001-0.02-0.001c-0.008-0.001-0.018-0.003-0.026-0.003c-0.007-0.001-0.016-0.001-0.023-0.003c-0.01,0-0.019-0.002-0.027-0.002c-0.007-0.002-0.014-0.002-0.021-0.002c-0.012,0-0.024-0.003-0.035-0.005c-0.007,0-0.014,0-0.02,0c-0.02-0.004-0.037-0.006-0.057-0.006c-0.142-0.019-0.271-0.033-0.378-0.055l-0.187-0.025c0,0-0.47-0.014-0.653-0.316c-0.118-0.197,0.457-0.318,0.457-0.318s0.956-0.193,1.917-0.321c0,0-2.542,0.294-2.777,0.626C49.613,89.737,50.023,89.904,50.023,89.904L50.023,89.904z"/><path style="opacity:.1;fill:#231F20;" d="M69.986,84.401L69.986,84.401L69.986,84.401z"/><path style="opacity:.1;fill:#231F20;" d="M69.989,84.399c0.001,0,0.001,0,0.004,0C69.991,84.399,69.99,84.399,69.989,84.399z"/><path style="opacity:.1;fill:#231F20;" d="M48.839,90.979c-0.007,0-0.015,0.002-0.021,0.002C48.824,90.98,48.831,90.979,48.839,90.979z"/><path style="opacity:.1;fill:#231F20;" d="M48.727,90.988c-0.009,0-0.017,0.002-0.026,0.002C48.71,90.99,48.718,90.988,48.727,90.988z"/><path style="opacity:.1;fill:#231F20;" d="M48.637,90.998c-0.009,0-0.019,0.001-0.029,0.003C48.619,90.999,48.628,90.998,48.637,90.998z"/><path style="opacity:.1;fill:#231F20;" d="M48.55,91.004c-0.009,0-0.018,0.002-0.025,0.004C48.532,91.006,48.54,91.004,48.55,91.004z"/><path style="opacity:.1;fill:#231F20;" d="M70.139,84.35c0.004,0,0.006-0.002,0.01-0.004C70.145,84.348,70.143,84.35,70.139,84.35z"/><path style="opacity:.1;fill:#231F20;" d="M70.116,84.359c0.002-0.002,0.004-0.002,0.007-0.002C70.12,84.357,70.118,84.357,70.116,84.359z"/><path style="opacity:.1;fill:#231F20;" d="M70.193,84.332c0.002,0,0.002-0.002,0.004-0.002C70.195,84.33,70.195,84.332,70.193,84.332z"/><path style="opacity:.1;fill:#231F20;" d="M70.068,84.374c0.003,0,0.004,0,0.007-0.002C70.072,84.374,70.07,84.374,70.068,84.374z"/><path style="opacity:.1;fill:#231F20;" d="M70.163,84.342c0.005,0,0.007-0.002,0.011-0.005C70.17,84.34,70.167,84.342,70.163,84.342z"/><path style="opacity:.1;fill:#231F20;" d="M69.996,84.395c0.002,0,0.002,0,0.004,0C69.998,84.395,69.998,84.395,69.996,84.395z"/><path style="opacity:.1;fill:#231F20;" d="M70.004,84.395c0.002,0,0.006-0.002,0.008-0.002C70.006,84.395,70.006,84.395,70.004,84.395z"/><path style="opacity:.1;fill:#231F20;" d="M72.23,81.559c-0.002,0-0.004,0-0.004,0S72.229,81.559,72.23,81.559z"/><path style="opacity:.1;fill:#231F20;" d="M70.053,84.379c0.002,0,0.002,0,0.004,0C70.053,84.379,70.053,84.379,70.053,84.379z"/><path style="opacity:.1;fill:#231F20;" d="M70.036,84.385c0.001,0,0.003,0,0.004-0.002C70.039,84.385,70.037,84.385,70.036,84.385z"/><linearGradient id="SVGID_31_" gradientUnits="userSpaceOnUse" x1="414.2451" y1="568.2656" x2="509.0055" y2="545.7273" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".4176" stop-color="#FFF"/><stop offset=".6264" stop-color="#F8F9F9"/><stop offset=".9505" stop-color="#B2B4B6"/></linearGradient><path style="fill:url(#SVGID_31_);" d="M7.61,68.141c-0.065-0.062-0.112-0.105-0.139-0.131L7.45,68.021L7.61,68.141L7.61,68.141z"/><linearGradient id="SVGID_32_" gradientUnits="userSpaceOnUse" x1="416.6992" y1="578.5645" x2="511.8228" y2="555.9398" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".4176" stop-color="#FFF"/><stop offset=".6264" stop-color="#F8F9F9"/><stop offset=".9505" stop-color="#B2B4B6"/></linearGradient><path style="opacity:.83;fill:url(#SVGID_32_);" d="M90.412,59.954l0.689,0.108c1.976-1.573,3.869-3.571,3.869-3.571s1.258-1.261,1.889-2.356c0.22-0.381,0.281-0.356,0.271-0.177c0.023-0.09,0.103-0.456-0.038-0.714c-0.094-0.176-0.381,0.288-0.83,0.861c0,0-2.013,2.926-5.798,5.816c-3.786,2.891-4.776,3.771-8.083,5.655c0,0-2.309,1.021-3.914,0.669c-1.246-0.271,0-1.547,0.271-2.699c0.271-1.146,0.063-1.58-0.225-1.807c-0.287-0.225-0.91-0.385-2.142-0.109c0,0-4.709,1.264-6.819,3.307c-1.918,1.854,0.478,2.619,1.021,2.875c0,0,0.78,0.338,0.719,0.672c-0.063,0.336-0.496,0.623-0.733,0.783c-0.239,0.16-3.338,1.977-8.324,2.764c-4.039,0.641-3.26,0.255-7.143,0.654c-3.881,0.399-4.952,0.72-8.068,1.453c-3.116,0.734-4.945,1.537-5.352,2.349c-0.336,0.671,0.479,1.103,0.991,1.407c0.511,0.304,1.423,0.781,1.119,1.293c-0.305,0.512-1.631,1.277-4.874,1.391c-3.243,0.114-4.569-0.336-5.16-1.04c-0.548-0.649-0.08-1.323,0.096-1.946c0,0,0.382-0.814,0.16-1.215c-0.224-0.398-0.737-0.494-1.278-0.559c-0.544-0.064-3.245-0.158-5.337-0.271c-2.372-0.127-5.208-0.211-8.611-0.928c0,0-2.237-0.441-3.69-1.262c-0.096-0.055-0.18-0.107-0.25-0.156c-0.11-0.059-0.194-0.122-0.25-0.209c-0.41-0.432-0.047-0.748-0.186-1.168c-0.121-0.359-0.352-0.878-0.896-1.501c-0.176-0.183-0.428-0.437-0.72-0.713c-0.08-0.069-0.165-0.144-0.254-0.214c-1.276-1.037-1.422-1.149-1.964-1.166c-0.542-0.019-0.235,0.895-0.129,1.246c0.041,0.136,0.139,0.328,0.242,0.508c-0.2-0.364-0.336-0.729-0.257-0.915c0.144-0.337,0.309-0.308,0.309-0.308s0.133-0.053,0.595,0.297c0.463,0.35,1.499,1.078,2.012,1.705c0.512,0.625,0.481,1.18,0.481,1.18s-0.103,0.563,0.451,1.17c0.555,0.604,1.733,1.714,5.859,2.349c0.021,0.005,0.041,0.005,0.06,0.009l0.193-0.549l0.568,0.663c0.006,0,0.01,0.001,0.016,0.002c3.592,0.519,5.544,0.563,5.544,0.563s4.709,0.164,5.982,0.164c1.271,0,1.035,0.664,1.035,0.664s-0.072,0.361-0.225,0.647c-0.153,0.288-0.524,1.365-0.144,1.94c0,0,0.585,1.426,4.382,1.527c0,0,3.324,0.267,5.643-0.688c2.317-0.954,0.224-2.277,0.224-2.277s-0.794-0.483-1.129-0.737c-0.308-0.233-0.184-0.48-0.122-0.646c0.061-0.163,0.297-0.355,0.564-0.492c0.265-0.134,1.241-0.652,5.365-1.722c4.124-1.067,6.587-1.183,6.587-1.183s0.021-0.004,0.062-0.006l0.334-0.656l0.845,0.559c0.732-0.061,1.686-0.129,2.537-0.17c1.691-0.083,4.341-0.475,5.879-0.811c1.539-0.342,3.869-1.059,5.591-1.951c1.724-0.891,1.808-1.519,1.808-1.519s0.328-0.472-0.391-0.995c-0.719-0.521-1.037-0.38-1.672-1.024c-0.638-0.646,0.553-1.619,0.553-1.619s0.615-0.865,4.021-2.177c3.408-1.313,3.98-0.873,4.156-0.728c0.175,0.142,0.195,0.613,0.123,0.933c-0.072,0.316-0.494,1.455-0.721,2.055c-0.227,0.592-0.316,1.402,0.604,1.6c0.924,0.193,2.215-0.009,3.427-0.443c2.893-1.033,3.757-2.295,8.535-5.764c0.011-0.01,0.021-0.016,0.029-0.023L90.412,59.954L90.412,59.954z"/><linearGradient id="SVGID_33_" gradientUnits="userSpaceOnUse" x1="415.4736" y1="573.4199" x2="510.5869" y2="550.7977" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".4176" stop-color="#FFF"/><stop offset=".6264" stop-color="#F8F9F9"/><stop offset=".9505" stop-color="#B2B4B6"/></linearGradient><path style="fill:url(#SVGID_33_);" d="M100.895,47.596c-0.635,1.186-1.164,2.608-1.443,3.5c-0.045,0.213-0.061,0.33-0.061,0.33s-0.119,0.654-0.054,1.036c0.028,0.161,0.069,0.279,0.106,0.375c0.021,0.052,0.039,0.095,0.055,0.134c0.02,0.045,0.031,0.082,0.033,0.111c0.007,0.082-0.044,0.614-0.27,1.23l0,0c0,0,0,0,0,0.002c-0.063,0.176-0.143,0.359-0.24,0.539c-0.024,0.05-0.053,0.095-0.074,0.139c-0.458,0.814-1.098,1.457-1.604,1.532c-0.324,0.049-0.484-0.117-0.557-0.386c0.014,0.369,0.086,0.738,0.289,0.963c0.406,0.441,1.563-0.795,1.563-0.795s0.688-0.789,0.965-2.062c0.406-1.875,0.187-2.248,0.187-2.248s-0.247-0.389-0.093-0.853c0.152-0.461,1.156-3.047,1.979-4.01l0.502-0.562c0-0.009,0.002-0.02,0.002-0.029l-0.211-0.521c-0.129,0.13-0.259,0.284-0.385,0.454C101.405,46.763,101.178,47.129,100.895,47.596L100.895,47.596z"/><linearGradient id="SVGID_34_" gradientUnits="userSpaceOnUse" x1="414.7754" y1="570.4785" x2="509.8697" y2="547.861" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".4176" stop-color="#FFF"/><stop offset=".6264" stop-color="#F8F9F9"/><stop offset=".9505" stop-color="#B2B4B6"/></linearGradient><path style="fill:url(#SVGID_34_);" d="M10.564,70.807L10.564,70.807c-0.146-0.092-0.315-0.229-0.469-0.356c-0.133-0.112-0.641-0.585-1.18-1.086c-0.212-0.194-0.411-0.382-0.589-0.55c-0.277-0.262-0.524-0.493-0.688-0.646l0.107,0.358c0.017,0.028,0.034,0.06,0.052,0.089c0.183,0.29,0.854,1.264,2.153,2.277c1.549,1.213,1.559,0.729,1.559,0.729s0.062-0.4-0.296-0.84c-0.063-0.076-0.131-0.167-0.202-0.27v0.002C11.011,70.516,12.023,71.998,10.564,70.807z"/><linearGradient id="SVGID_35_" gradientUnits="userSpaceOnUse" x1="414.915" y1="571.0664" x2="510.04" y2="548.4415" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".4176" stop-color="#FFF"/><stop offset=".6264" stop-color="#F8F9F9"/><stop offset=".9505" stop-color="#B2B4B6"/></linearGradient><path style="fill:url(#SVGID_35_);" d="M10.678,69.98c0.103,0.186,0.219,0.371,0.333,0.533C11,70.501,10.833,70.253,10.678,69.98z"/><linearGradient id="SVGID_36_" gradientUnits="userSpaceOnUse" x1="416.1035" y1="576.0654" x2="511.2286" y2="553.4405" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".4176" stop-color="#FFF"/><stop offset=".6264" stop-color="#F8F9F9"/><stop offset=".9505" stop-color="#B2B4B6"/></linearGradient><path style="fill:url(#SVGID_36_);" d="M96.887,55.023c0,0,0.227-0.76,0.243-1.066c-0.003,0.014-0.005,0.021-0.005,0.021s-0.513,1.443-0.333,2.16C96.771,55.579,96.887,55.023,96.887,55.023z"/><path style="opacity:.1;fill:#232323;" d="M63.301,4.417l0.728,0.072c1.426-0.402,2.643-0.772,2.643-0.772s1.265-0.41,1.901-0.637c0.635-0.226,1.09-0.313,1.654-0.409c0.565-0.096,1.311-0.14,1.709-0.131c0.4,0.007,0.531,0.122,0.531,0.122s0.166,0.131,0.244,0.27c0.077,0.138,0.74,1.891,2.973,2.005c2.233,0.112,2.263-1.096,2.065-1.464c-0.226-0.427-0.896-0.863-0.896-0.863s-0.899-0.575-1.092-0.847c-0.191-0.27,0.034-0.357,0.104-0.375c0.065-0.017,2.435-0.497,2.729-0.609l0.021-0.021l-0.562-0.171c0,0-0.119,0.134-0.789,0.313c-0.67,0.179-1.235,0.246-1.742,0.313c-0.506,0.066-0.506,0.239-0.506,0.239l-0.086,0.136c-0.025,0.075-0.067,0.321,0.375,0.642c0.528,0.387,1.172,0.75,1.438,1.04s0.586,0.783,0.012,1.137C76.48,4.576,76.27,4.64,75.977,4.671c0.002,0.008,0,0.012,0,0.012c-0.248,0.021-0.457,0.03-0.638,0.03c-0.049,0.002-0.102,0.006-0.155,0.009l-0.017-0.013c-0.506-0.024-0.746-0.142-1.067-0.302c-0.442-0.223-0.758-0.73-0.92-1.087s-0.521-0.662-0.521-0.662c-0.588-0.336-1.695-0.343-2.813-0.15c-1.115,0.193-2.656,0.707-2.925,0.812c-0.268,0.104-1.616,0.551-2.307,0.73c-0.693,0.178-1.222,0.357-1.646,0.47c-0.427,0.111-3.432,1.005-4.556,1.339c-1.126,0.334-1.849,0.46-1.849,0.46c-1.688,0.172-2.193-0.134-2.193-0.134c-0.296-0.124-0.261-0.526-0.261-0.526l0.009-1.147c0,0-0.027-0.433-0.357-0.611c-0.328-0.179-0.779-0.252-1.593-0.29c-0.811-0.038-1.683,0.044-2.093,0.134c-0.408,0.09-1.189,0.313-1.764,0.952c-0.572,0.641-0.481,1.139-0.481,1.139s0.004,0.079,0.01,0.201c0.154,0.245,0.416,0.524,0.862,0.739c1.015,0.485-1.137,1.342-1.137,1.342l0,0c-0.479,0.208-1.191,0.478-2.208,0.777c-2.21,0.647-3.684,0.774-3.684,0.774l0.679,0.254c0,0,5.468-1.016,7.148-2.616c0,0,0.625-0.293,0.021-0.88c-0.606-0.585-0.898-0.761-0.898-0.761s-0.41-0.223,0.02-0.772c0.428-0.546,0.922-0.794,1.352-0.933c0.428-0.135,1.754-0.249,2.925-0.093c0,0,0.491,0.042,0.457,0.407c-0.032,0.365-0.087,0.873-0.077,1.028c0.01,0.157,0.025,0.515,0.399,0.845c0.379,0.332,1.098,0.453,1.098,0.453s1.257,0.228,2.845-0.218c1.586-0.444,3.65-1.141,5.438-1.629L63.301,4.417L63.301,4.417z"/><linearGradient id="SVGID_37_" gradientUnits="userSpaceOnUse" x1="412.6152" y1="535.3994" x2="501.5865" y2="514.8846" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#FFF"/><stop offset=".6538" stop-color="#FFF"/><stop offset="1" stop-color="#CBCCCE"/></linearGradient><path style="fill:url(#SVGID_37_);" d="M91.596,12.992l0.271,0.486c-0.021,0.01-0.034,0.014-0.034,0.014c-1.114,0.515-3.999,1.32-4.271,1.398c-0.271,0.08-0.166,0.234-0.166,0.234c0.029,0.078,0.988,1.106,0.988,1.106c1.178,1.249,0.494,2.296,0.494,2.296s-0.852,1.347-2.844,1.12c-1.993-0.227-2.618-1.767-2.729-2.049c-0.111-0.282-0.197-0.768-0.22-1.095c-0.022-0.33-0.272-0.32-0.272-0.32c-1.069-0.03-2.887,1.089-2.887,1.089c-0.824,0.47-1.682,1.147-3.479,1.958c-0.879,0.396-1.694,0.716-2.287,0.936l-0.967-0.173l0.091,0.482c-0.042,0.013-0.063,0.021-0.063,0.021s-2.268,0.822-4.529,1.553c-2.268,0.732-3.65,0.8-3.65,0.8s-1.336,0.12-2.266-0.266c-0.93-0.386-0.959-0.94-0.939-1.415c0.021-0.476,0.483-1.404,0.623-1.958c0.139-0.555-0.683-0.644-0.683-0.644s-1.958-0.236-3.65,0.296c-1.69,0.535-2.54,1.159-2.54,1.159c-0.91,0.512-0.863,0.957-0.863,0.957s-0.012,0.467,0.551,0.869s1.072,0.505,1.736,0.654c0.668,0.149,0.791,0.311,0.791,0.311c1.08,0.894,0.416,1.785,0.047,2.434c-0.631,1.113-3.674,1.653-3.674,1.653c-3.276,0.758-5.12,1.08-7.827,1.452l-0.876-0.46l-0.276,0.615c-7.089,0.936-10.065,1.877-11.065,2.135c-1,0.257-1.261,0.784-1.369,0.904c-0.108,0.12,0.079,0.171,0.079,0.171c0.427,0.137,0.647,0.442,0.647,0.442s1.399,1.697-0.012,3.108c-1.359,1.36-2.785,1.674-2.785,1.674s-2.177,0.737-4.077,0.341c-1.899-0.399-2.439-1.889-2.416-2.395c0.024-0.505,0.176-1.075,0.694-1.661c0.517-0.585,0.654-0.667,0.654-0.667s0.358-0.279,0.421-0.415c0.079-0.172-0.404-0.233-0.404-0.233c-1.034-0.13-3.496-0.097-5.822,0.131c-1.439,0.14-2.769,0.374-3.578,0.518l-0.223-0.48l-0.543,0.625l-3.12,0.504c-1.514,0.222-2.576-0.028-2.576-0.028s-1.331-0.397-1.479-1.252c-0.147-0.852,0.359-1.87,0.49-2.177c0.13-0.307,0.5-0.934,0.5-0.934s0.068-0.13,0.068-0.34c0-0.211-0.233-0.536-0.233-0.536s-0.205-0.396-0.886-0.38c-0.682,0.018-0.866,0.131-1.144,0.364c-0.044,0.038-0.079,0.081-0.108,0.127c0.021-0.064,0.045-0.117,0.073-0.158c0.21-0.309,0.65-0.668,1.401-0.7c0.748-0.034,1.041,0.228,1.041,0.228c0.719,0.82,0.115,1.845-0.351,2.76c-0.057,0.095-0.155,0.271-0.229,0.483c-0.032,0.076-0.062,0.153-0.087,0.227c-0.358,1.06,0.292,1.565,0.668,1.661c0.376,0.097,1.141,0.57,4.269-0.031c3.13-0.603,3.587-0.731,3.587-0.731s6.145-1.087,8.96-0.425l0.023,0.004c0,0,1.297,0.367,0.331,1.334c-0.966,0.966-1.729,1.617-1.504,2.377c0.223,0.762,1.267,1.903,3.646,1.603c0,0,0.842-0.113,1.105-0.165c1.733-0.336,2.899-1.268,2.899-1.268s0.972-0.721,0.782-1.631c-0.187-0.908-1.017-1.189-1.017-1.189s-0.659-0.424-0.141-1.237c0,0,0.141-0.69,2.553-1.317c2.412-0.626,6.813-1.518,10.555-1.989c3.49-0.408,9.652-1.575,10.89-2.08c1.235-0.508,1.497-1.4,1.521-1.708c0.024-0.31,0.072-0.83-1.14-1.09c-1.213-0.259-1.758-0.655-1.931-0.79c-0.172-0.138-0.545-0.483-0.545-1.275c0-0.791,1.607-1.745,3.392-2.35c1.78-0.606,3.927-0.34,3.927-0.34c1.948,0.167,0.936,1.963,0.936,1.963c-0.074,0.322-0.946,1.785,0.5,2.169c1.541,0.409,4.175-0.347,5.188-0.669c0.829-0.261,3.141-1.074,4.688-1.62c0.352-0.122,0.66-0.231,0.908-0.318c1.656-0.577,3.019-1.219,3.785-1.681c0.771-0.462,2.144-1.297,2.144-1.297s1.351-0.744,1.799-0.808c0.451-0.064,1.619-0.346,1.771,0.771c0.155,1.115,0.631,1.899,1.4,2.271c0.771,0.371,2.064,0.538,3.246-0.231c1.182-0.771,0.359-1.901,0.359-1.901c-0.021-0.028-0.039-0.057-0.062-0.085c-0.151-0.27-0.369-0.518-0.487-0.646c-0.388-0.47-0.736-0.822-0.736-0.822c-0.295-0.436,0.053-0.692,0.425-0.834c0.373-0.141,2.351-0.758,2.351-0.758c1.155-0.383,1.592-0.551,2.053-0.988c0.445-0.419-0.189-1.34-0.239-1.412l0.004-0.002l0.608,0.256c0.136,0.182,0.27,0.362,0.4,0.547l-0.007,0.005c0,0,0.226,0.527,0.054,0.799c-0.095,0.149-0.343,0.293-0.545,0.395L91.596,12.992L91.596,12.992z"/><linearGradient id="SVGID_38_" gradientUnits="userSpaceOnUse" x1="390.042" y1="485.6797" x2="390.042" y2="485.6797" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#FFF"/><stop offset=".6538" stop-color="#FFF"/><stop offset="1" stop-color="#CBCCCE"/></linearGradient><path style="fill:url(#SVGID_38_);" d="M-16.122-14.641"/><path style="opacity:.1;fill:#232323;" d="M57.455,92.28c-0.034-0.042-0.042-0.034-0.012-0.063c0.021-0.021,0.086-0.082,0.115-0.137c0,0-1.17-0.063-2.141,0.077c-0.962,0.137-1.933,0.335-1.933,0.335l0.301,0.146c0,0,0.127-0.055,1.047-0.183c0.921-0.128,1.267-0.128,1.267-0.128s0.808-0.063,0.969-0.063c0.162,0,0.061,0.104,0.061,0.104s-0.078,0.136,0.366,0.124c0,0,0.663-0.027,1.313-0.188C58.809,92.309,57.678,92.544,57.455,92.28z"/><path style="opacity:.1;fill:#232323;" d="M54.469,92.691c0,0,0.146,0.266-2.923,0.394c0,0,1.788,0.052,3.31-0.198C55.963,92.707,54.469,92.691,54.469,92.691L54.469,92.691z"/><path style="opacity:.1;fill:#232323;" d="M13.114,9.856c0,0-0.005,0.096,0.019,0.131c0.024,0.034,0.107,0.112,0.107,0.112s0.328-0.5,0.194-0.438c0,0-0.119,0.187-0.164,0.23c0,0-0.029,0.04-0.088,0.077C13.123,10.006,13.117,9.991,13.114,9.856L13.114,9.856z"/><path style="opacity:.1;fill:#232323;" d="M10.595,12.501c0,0-0.388,0.46,0,0.52l0.528-0.527c0,0,0.139-0.234,0.139-0.398C11.263,12.095,10.752,12.343,10.595,12.501L10.595,12.501z"/><path style="fill:#232323;" d="M-16.122-14.641"/><path style="fill:#6B6B6B;" d="M21.093,23.707c1.227,0.146,1.499-0.132,1.527-0.172c0.294-0.003,1.475-0.034,2.865-0.207c1.685-0.21,3.564-0.891,3.564-0.891s1.554-0.568,2.096-1.18l0.016-0.002c0,0-0.693-0.6-1.057-1.122c0,0-0.286-0.557,0.027-1.035c0.316-0.479,0.836-1.008,2.344-1.643c1.506-0.636,2.356-0.514,2.356-0.514s0.594-0.006,1.007,0.45c0.415,0.458,0.649,1.006,0.649,1.006s0.029,0.38-0.115,0.63c-0.141,0.251-0.155,0.277-0.155,0.277s0.049,0.017,0.378-0.007c0.329-0.021,1.165-0.142,2.67-0.506c1.508-0.363,3.407-0.972,3.407-0.972s4.9-1.578,5.407-1.714c0.507-0.135,1.357-0.436,1.357-0.436l0.027,0.059c0,0,0.405,0.663,0.392,1.269V16.94c0,0-0.021,0.301-0.698,0.818c-0.674,0.517-1.226,0.479-1.678,0.442c-0.452-0.039-0.665-0.071-0.794-0.045l-0.72,0.04c-0.787,0.111-1.224,0.407-1.224,0.407c-1.804,1.065,0.731,9.287,0.731,9.287c-3.742,0.47-8.143,1.363-10.555,1.989c-2.412,0.627-2.553,1.317-2.553,1.317c-0.519,0.813,0.141,1.236,0.141,1.236s0.829,0.283,1.017,1.19c0.19,0.91-0.783,1.629-0.783,1.629s-1.159,0.97-2.898,1.268c-1.738,0.298-2.396,0.35-3.429-0.47c-0.91-0.721-0.297-1.864,0.312-2.301c0.612-0.438,0.909-0.91,0.988-1.113c0.079-0.203,0.032-0.376,0.032-0.376l-0.58-0.534c-2.005-1.33-9.884,0.063-9.884,0.063c-0.213-1.169-0.362-1.171-0.282-3.117c0.051-1.244,0.291-1.752,0.291-1.752l0.058-0.164c0,0,0.448-1.443,1.141-2.44c0,0,0.602-0.172,1.364-0.349C20.616,23.793,21.093,23.707,21.093,23.707L21.093,23.707z"/><linearGradient id="SVGID_39_" gradientUnits="userSpaceOnUse" x1="231.2324" y1="-407.8711" x2="263.6191" y2="-407.8711" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#696969"/><stop offset=".3702" stop-color="#2E2E2E"/><stop offset=".4554" stop-color="#424242"/><stop offset=".6014" stop-color="#303030"/><stop offset=".6947" stop-color="#4A4A4A"/><stop offset="1" stop-color="#666666"/></linearGradient><path style="opacity:.45;fill:url(#SVGID_39_);" d="M49.855,16.94c0,0-4.085,1.326-3.891,1.254c0,0-0.39,0.075-0.686,0.161c-0.294,0.086-0.539,0.247-0.539,0.247s-3.288,1.222-6.438,1.848c-3.148,0.627-2.977-0.361-2.708-0.83c0.232-0.409,0.829-1.112-0.188-1.254c-1.019-0.14-1.788,0.251-2.21,0.439c-0.422,0.189-3.162,1.362-1.251,2.254c0,0,1.423,0.642-0.377,1.755c0,0-1.816,1.16-5.355,1.77c0,0-0.565,0.063-1.88,0.111c-1.316,0.046-2.558,0.213-4.12,0.658c-1.378,0.391-1.992,0.579-2.744,1.065l0.194-0.501l0.2-0.462c1.069-0.533,3.719-1.288,5.717-1.378c1.997-0.089,2.908-0.16,4.721-0.624c2.134-0.546,2.702-1.019,2.93-1.163c0.194-0.123,0.771-0.479,0.493-0.633c-0.359-0.199-0.895-0.729-0.895-0.729c-0.217-0.256-0.39-0.373-0.158-1.046c0.356-1.029,2.196-1.644,2.196-1.644s1.028-0.534,2.334-0.514c1.305,0.021,1.287,0.752,1.287,0.752s0.062,0.34-0.268,0.827c0,0-0.503,0.579-0.049,0.656c0.454,0.081,1.622,0.179,5.48-1.028c3.859-1.207,8.085-2.611,8.085-2.611S49.855,16.66,49.855,16.94L49.855,16.94z"/><linearGradient id="SVGID_40_" gradientUnits="userSpaceOnUse" x1="231.623" y1="-407.063" x2="263.4941" y2="-407.063" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#525252"/><stop offset=".1856" stop-color="#333333"/><stop offset=".354" stop-color="#AEAEAE"/><stop offset=".4199" stop-color="#ADADAD"/><stop offset=".4276" stop-color="#9D9D9D"/><stop offset=".4433" stop-color="#818181"/><stop offset=".4611" stop-color="#6A6A6A"/><stop offset=".4814" stop-color="#585858"/><stop offset=".506" stop-color="#4C4C4C"/><stop offset=".539" stop-color="#444444"/><stop offset=".6166" stop-color="#424242"/><stop offset=".6684" stop-color="#454545"/><stop offset="1" stop-color="#BDBDBD"/></linearGradient><path style="fill:url(#SVGID_40_);" d="M31.145,21.257c-0.541,0.612-2.096,1.18-2.096,1.18s-1.88,0.68-3.564,0.891c-1.608,0.201-2.777,0.209-2.777,0.209l-0.082-0.002c-0.175,0.145-0.483,0.188-0.728,0.21c-0.244,0.023-0.806-0.039-0.806-0.039s-2.156,0.432-2.603,0.616c0,0-0.253,0.392-0.331,0.539c-0.08,0.146-0.299,0.594-0.299,0.594c1.069-0.534,3.718-1.289,5.717-1.379c1.997-0.089,2.908-0.159,4.721-0.624c2.134-0.546,2.702-1.019,2.929-1.163c0.195-0.123,0.771-0.479,0.493-0.633c-0.358-0.199-0.894-0.729-0.894-0.729c-0.217-0.256-0.391-0.373-0.158-1.046c0.356-1.029,2.196-1.644,2.196-1.644s1.028-0.533,2.333-0.514c1.306,0.021,1.287,0.753,1.287,0.753s0.062,0.34-0.269,0.826c0,0-0.503,0.579-0.049,0.657c0.455,0.08,1.622,0.178,5.48-1.028c3.858-1.208,8.085-2.612,8.085-2.612c-0.098-0.29-0.296-0.652-0.296-0.652s-0.85,0.301-1.358,0.436c-0.506,0.136-5.407,1.714-5.407,1.714s-1.9,0.608-3.407,0.972c-1.506,0.364-2.342,0.485-2.671,0.508c-0.329,0.021-0.378,0.006-0.378,0.006s0.013-0.027,0.156-0.279c0.144-0.248,0.115-0.629,0.115-0.629s-0.235-0.548-0.649-1.006c-0.414-0.457-1.007-0.45-1.007-0.45s-0.849-0.121-2.355,0.514c-1.508,0.636-2.029,1.164-2.346,1.643c-0.312,0.478-0.026,1.035-0.026,1.035c0.365,0.521,1.057,1.122,1.057,1.122"/><linearGradient id="SVGID_41_" gradientUnits="userSpaceOnUse" x1="236.917" y1="-417.333" x2="235.8882" y2="-410.5272" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)"><stop offset="0" stop-color="#969696"/><stop offset="1" stop-color="#000"/></linearGradient><path style="opacity:.2;fill:url(#SVGID_41_);" d="M21.606,31.241c0,0-0.064-0.328,0.172-0.939c0.234-0.611,0.908-0.595,1.362-0.503c0.455,0.095,0.846,0.298,1.472-0.124c0.627-0.423,0.47-1.583,0.046-2.852c-0.423-1.267-0.328-2.128-0.328-2.128l-0.608-0.649l-0.237,0.696c0.047,1.316,0.657,3.226,0.829,3.759c0.173,0.533,0.297,0.8-0.735,0.517c-1.034-0.282-1.519,0.125-1.519,0.125c-1.332,0.862-1.082,2.161-1.082,2.161L21.606,31.241z"/><path style="opacity:.5;fill:#141414;" d="M27.498,36.633c-0.264-1.763-0.917-2.749-0.917-2.749c-0.25,0.188-0.513,0.693-0.513,0.693s0.179,0.208,0.471,1.568c0,0,0.141,0.106,0.438,0.279C27.273,36.597,27.498,36.633,27.498,36.633z"/><path style="opacity:.5;fill:#141414;" d="M33.152,32.881c0,0-0.78,0.907-0.378,2.336c0,0,0.454-0.379,0.585-0.68c0,0-0.145-0.458,0.138-1.017C33.5,33.52,33.37,33.1,33.152,32.881L33.152,32.881z"/><linearGradient id="SVGID_42_" gradientUnits="userSpaceOnUse" x1="428.7803" y1="532.0527" x2="429.5303" y2="524.4692" gradientTransform="matrix(1 0 0 1 -406.1641 -500.3203)"><stop offset="0" stop-color="#333333"/><stop offset=".431" stop-color="#000"/><stop offset="1" stop-color="#2E2E2E"/></linearGradient><path style="opacity:.18;fill:url(#SVGID_42_);" d="M21.2,31.253c0.017-1.299,0.471-1.492,0.905-1.818c0.436-0.328,1.326-0.024,1.326-0.024s0.678,0.218,1.046-0.1c0.369-0.319-0.017-1.467-0.217-2.123c-0.202-0.653-0.41-1.599-0.445-2.262c-0.025-0.489-0.091-0.707-0.125-0.789l-0.205,0.604c0.047,1.316,0.657,3.226,0.829,3.759c0.173,0.533,0.297,0.8-0.735,0.517c-1.035-0.282-1.519,0.125-1.519,0.125c-1.332,0.862-1.082,2.162-1.082,2.162l0.259-0.027L21.2,31.253L21.2,31.253z"/><path style="opacity:.3;fill:#505050;" d="M26.239,34.29c0.045,0.06,0.421,0.597,0.736,2.113l0.005,0.025c0.294,0.17,0.519,0.205,0.519,0.205c-0.264-1.763-0.917-2.749-0.917-2.749C26.46,33.977,26.336,34.143,26.239,34.29L26.239,34.29z"/><path style="opacity:.3;fill:#505050;" d="M33.152,32.881c0,0-0.78,0.907-0.378,2.336c0,0,0.125-0.104,0.262-0.248l0.021-0.051c-0.304-1.033,0.283-1.763,0.283-1.763l0.004-0.003C33.291,33.053,33.225,32.957,33.152,32.881z"/><path style="opacity:.88;fill:#231F20;" d="M17.159,8.189h0.117c-0.16,0.481-0.789,1.141-1.068,1.583c-0.156,0.248-0.252,0.572-0.474,0.751c0.038,0.043-0.003,0.003,0.04,0.04c0.088,0.052,0.813-0.139,0.95-0.236c0.082,0.015,0.076,0.011,0.12,0.039c0.042,0.07-0.481,0.991-0.595,1.109v0.04c0.196-0.023,0.502-0.056,0.634-0.16c0.383-0.299,0.47-0.937,0.75-1.346c-0.013-0.066-0.026-0.132-0.04-0.196c-0.222-0.04-0.681,0.02-0.87,0.157h-0.039c0.091-0.473,0.868-1.346,1.146-1.741c0.454-0.647,0.881-1.269,1.345-1.9c0.243-0.331,0.585-0.622,0.831-0.949c0.276-0.367,0.569-0.85,0.949-1.107V4.194h-0.158c-0.186,0.135-0.675,0.218-0.908,0.354c0.032,0.135,0.019,0.101,0.118,0.158c-0.139,0.386-0.598,0.673-0.832,0.991c-0.371,0.5-0.784,0.968-1.147,1.464c-0.123,0.164-0.205,0.421-0.356,0.553c-0.237,0.208-0.913,0.185-1.185,0.396h-0.08c0.056-0.332,0.907-1.392,1.147-1.622v-0.04c-0.408,0.057-0.724,0.273-0.989,0.473c0.044,0.091,0.037,0.073,0.12,0.12c-0.145,0.238-0.361,0.415-0.515,0.633c-0.197,0.275-0.305,0.602-0.514,0.871c0.014,0.04,0.028,0.077,0.04,0.118C15.948,8.641,17.001,8.307,17.159,8.189L17.159,8.189z M51.936,13.534c0.199,0.066,0.396,0.131,0.596,0.197c0.159,0.002,0.327-0.002,0.432-0.04c-0.009-0.654-0.364-0.913-0.593-1.345c-0.113-0.22-0.175-0.523-0.355-0.673c0.069-0.242,0.727-0.308,0.988-0.396c0.643-0.211,1.371-0.422,2.02-0.633c0.305-0.099,0.664-0.077,0.91-0.236c0.146,0.015,0.22,0.029,0.277,0.118c0.143,0.212,0.26,1.667,0.156,2.097c-0.398,1.663-0.896,2.963-1.938,3.958v0.039c0.385-0.062,0.568-0.436,0.83-0.632c1.051-0.794,1.762-1.972,2.137-3.444c0.221-0.865-0.14-1.713,0.199-2.452h-0.039c-0.074-0.188-1.082-0.553-1.388-0.555c-0.164,0.177-0.399,0.416-0.634,0.515c-0.357,0.152-0.838,0.109-1.146,0.315c-0.287-0.024-0.506-0.57-0.315-0.791c-0.011-0.09-0.009-0.112-0.04-0.158c-0.239-0.191-0.85-0.171-1.268-0.158c-0.133,0.125-0.252,0.15-0.314,0.358h-0.039c-0.021,0.076,0.02,0.05,0.039,0.078c0.025,0.016,0.163-0.007,0.236,0.04c0.449,0.047,0.438,0.566,0.675,0.831c-0.027,0.069-0.011,0.04-0.042,0.08c-0.155,0.123-1.301,0.453-1.543,0.515c-0.185,0.046-0.414-0.068-0.553-0.081c-0.336-0.028-0.633,0.16-0.831,0.277c0.107,0.157,0.434,0.118,0.554,0.276C51.368,12.193,51.556,12.913,51.936,13.534L51.936,13.534z M59.807,12.977c0.187,0.093,0.187,0.332,0.278,0.514c0.185,0.371,0.437,0.82,0.554,1.228v0.316c0.092,0.252,0.396,0.284,0.596,0.435c0.156-0.021,0.214-0.061,0.314-0.118c-0.066-0.753-0.525-1.378-0.791-1.979c-0.08-0.188-0.207-0.452-0.236-0.633c-0.021-0.109,0.063-0.169,0-0.276c-0.051-0.123-0.072-0.085-0.156-0.159c-0.059-0.04-0.031-0.016,0-0.078c0.068-0.144,0.213-0.287,0.275-0.436c0.133-0.313,0.127-0.576,0.396-0.751c-0.04-0.41-0.639-0.457-1.107-0.435c-0.057,0.042-0.156,0.064-0.24,0.077c0.05,0.103,0.082,0.124,0.199,0.157c0.113,1.161-0.699,2.225-1.229,2.928c-0.208,0.279-0.556,0.456-0.75,0.754h-0.04v0.038C58.395,14.473,59.54,13.383,59.807,12.977L59.807,12.977z M12.407,22.83c-0.081,0.017-0.076,0.009-0.117,0.039c-0.288,0.148-0.773,1.426-1.346,1.069c-0.292,0.002-0.319-0.055-0.476-0.16c0.02-0.376,0.659-1.063,0.913-1.226c0.031-0.604,0.187-1.252,0.118-1.819c-0.041-0.014-0.08-0.028-0.118-0.039c-0.14-0.046-0.25,0.168-0.357,0.276c-0.29,0.291-0.648,0.597-0.871,0.949c-0.337-0.003-1.414-0.013-1.623,0.119H8.411c0.099-0.256,0.86-1.096,0.633-1.464c-0.013-0.041-0.025-0.08-0.04-0.12c-0.722,0.002-1.592,1.287-1.82,1.82c-0.115,0.266-0.115,0.573-0.276,0.791v0.04c0.54-0.066,1.082-0.133,1.622-0.199c0.205-0.044,0.487,0.052,0.633-0.039h0.554c0.092-0.118,0.184-0.238,0.277-0.356c0.33-0.349,0.768-0.702,1.028-1.106h0.119v0.551c-0.303,0.273-0.773,0.695-0.91,1.108v0.316c-0.203,0.88,0.223,1.329,0.99,1.267c0.5-0.466,1.324-0.848,1.226-1.779C12.405,22.833,12.444,22.873,12.407,22.83L12.407,22.83z M7.819,22.118H7.58c0.109-0.436,0.537-0.935,1.069-0.95v0.197c-0.185,0.239-0.369,0.475-0.554,0.713C7.982,22.076,7.88,22.076,7.819,22.118z M93.044,22.315c-0.164-0.405-0.294-0.722-0.475-1.068c-0.3-0.574-0.613-1.414-1.464-1.425c-0.211,0.179-0.435,0.322-0.555,0.593c-0.777,1.762,0.819,3.747,1.543,4.71c0.256,0.339,0.557,0.712,0.948,0.908c-0.091,1.376-1.269,1.813-2.53,1.267c-0.899-0.386-1.617-1.237-2.179-1.979c-0.188-0.249-0.481-0.457-0.672-0.713c-0.177-0.239-0.304-0.507-0.515-0.713v-0.039h-0.078c0.107,0.426,0.354,0.815,0.514,1.188c0.669,1.538,1.52,2.614,2.811,3.521c0.608,0.428,1.621,1.104,2.494,0.475C94.412,27.942,93.669,23.851,93.044,22.315L93.044,22.315z M92.928,24.216c-0.104,0.1-0.539-0.419-0.635-0.515c-0.441-0.443-1.329-1.221-0.83-1.979h0.197c0.388,0.403,0.746,0.788,0.99,1.344c0.129,0.299,0.152,0.805,0.313,1.069C92.941,24.205,92.958,24.175,92.928,24.216L92.928,24.216z M66.693,32.128v-0.395c0.179-0.801,0.137-1.765,0.314-2.572c0.241-1.088-0.101-2.148,0.99-2.414c0.021-0.106,0.057-0.148,0-0.238c-0.025-0.067-0.009-0.039-0.04-0.079c-0.043-0.031-0.038-0.024-0.116-0.039c-0.305,0.222-1.131,0.373-1.543,0.474c-0.313,0.076-0.639,0.01-0.871,0.158c-0.039,0.013-0.078,0.027-0.119,0.04c0.014,0.079,0.025,0.159,0.041,0.237c0.451,0.147,0.867-0.031,1.067,0.356c0.13,0.252,0.112,1.157,0.039,1.504c-0.251,1.163-0.146,2.491-0.396,3.64c-0.086,0.397,0.022,1.171-0.157,1.463v0.08c-0.241-0.115-0.397-0.426-0.554-0.633c-0.354-0.467-0.875-0.84-1.229-1.305c-0.213-0.281-0.437-0.617-0.712-0.833c0.037-0.761,0.259-1.56,0.438-2.254c0.131-0.522,0.135-1.005,0.395-1.386c0.148-0.217,0.505-0.355,0.751-0.475c-0.002-0.1-0.004-0.146-0.04-0.198c-0.014-0.04-0.023-0.079-0.037-0.119c-0.543,0.081-1.003,0.341-1.505,0.475c-0.454,0.123-0.911,0.092-1.269,0.276c0.012,0.091,0.01,0.112,0.041,0.158c0.014,0.039,0.024,0.08,0.039,0.118c1.391-0.078,1.18,0.678,0.912,1.742c-0.084,0.326-0.029,0.775-0.199,1.028v0.079h-0.039c-0.285-0.433-0.713-0.852-1.067-1.227c-0.146-0.132-0.291-0.264-0.435-0.395c-0.104-0.137-0.16-0.312-0.278-0.436c0.024-0.437,0.38-0.549,0.713-0.672c-0.015-0.183-0.052-0.206-0.118-0.317c-1.031,0.151-1.927,0.73-3.086,0.791v0.041h-0.04c0.004,0.1,0.004,0.146,0.04,0.197v0.079c0.227,0.039,0.564-0.054,0.831,0.04c0.427,0.15,0.81,0.648,1.067,0.99c0.388,0.513,0.996,0.949,1.384,1.463c0.204,0.274,0.434,0.634,0.713,0.832c-0.038,0.696-0.229,1.428-0.396,2.058c-0.086,0.323-0.035,0.735-0.197,0.988c-0.025,0.069-0.01,0.039-0.041,0.08c-0.377-0.718-1.104-1.265-1.582-1.9c-0.918-1.22-1.938-2.319-2.889-3.521c0-0.167,0.01-0.268,0.08-0.356c0.073-0.229,0.359-0.443,0.633-0.476c0.015-0.12,0.033-0.135-0.039-0.238c-0.016-0.038-0.026-0.077-0.041-0.118c-0.803,0.123-1.521,0.497-2.293,0.714c-0.401,0.112-0.928,0.057-1.229,0.276c-0.04,0.013-0.08,0.026-0.117,0.04c0.021,0.152,0.061,0.176,0.117,0.277c0.314-0.005,0.646-0.092,0.949,0c0.793,0.241,1.361,1.137,1.818,1.742c0.201,0.266,0.513,0.483,0.713,0.751c0.849,1.129,1.808,2.146,2.65,3.285c0.328,0.442,0.771,0.825,1.066,1.304c0.179-0.004,0.216-0.025,0.316-0.079c0.213-0.929,0.332-1.866,0.596-2.81c0.119-0.432,0.269-0.942,0.314-1.424c0.327,0.117,0.592,0.607,0.793,0.871c0.618,0.821,1.491,1.502,2.057,2.373c0.164-0.007,0.182-0.026,0.277-0.078C66.352,34.819,66.521,33.473,66.693,32.128L66.693,32.128z M4.297,38.894c-0.013,2.467-0.142,6.269,1.781,6.806c0.7,0.193,1.087-0.271,1.306-0.595c0.786-1.17,0.565-3.446-0.199-4.43c-0.339,0.034-0.825,0.84-0.988,1.106c-0.082-0.016-0.075-0.011-0.119-0.04c-0.091-0.041-0.085-0.066-0.159-0.118c-0.06-0.933,0.127-1.802,0.159-2.691c1.044,0.102,1.941,0.696,3.007,0.751c-0.001-0.185,0-0.434,0.077-0.552c-0.009-0.092-0.007-0.112-0.04-0.16c-0.145-0.115-0.949-0.306-1.186-0.315v-0.04h-0.04c0.146-1.174-0.186-2.082-0.99-2.414c-0.449-0.08-0.897-0.16-1.346-0.239c-0.229-0.083-0.341-0.266-0.514-0.395c-0.058-0.38-0.133-0.806,0.159-1.029c-0.021-0.142-0.032-0.168-0.119-0.238v-0.039h-0.04c-0.133,0.228-0.245,0.493-0.315,0.792c-0.234,0.983,0.309,1.818,0.909,2.018c0.397,0.065,0.792,0.132,1.188,0.197c0.314,0.122,0.453,0.379,0.671,0.595c-0.009,0.512-0.5,0.568-0.91,0.435c-0.64-0.208-1.321-0.353-1.977-0.592c-0.172-0.064-0.333-0.17-0.555-0.199c-0.027,0.25-0.054,0.501-0.08,0.751c0.554,0.171,1.109,0.343,1.662,0.515c-0.023,1.398-0.574,3.074,0.119,4.153c0.084,0.021,0.143,0.037,0.198,0.08c0.78-0.054,0.943-0.68,1.345-1.108c0.342,0.82,0.086,2.253-0.671,2.453c-0.326,0.224-0.803-0.066-0.989-0.237c-0.648-0.599-0.785-1.511-1.027-2.532c-0.083-0.344,0.033-1.042-0.118-1.307c0.006-0.404,0.092-1.134-0.12-1.344v-0.039L4.297,38.894L4.297,38.894z M99.336,45.543c-0.143-0.666,0.055-1.478-0.08-2.097v-0.633c-0.097-0.453-0.059-1.056-0.156-1.502c-0.189-0.882-0.022-1.926-0.355-2.652c-0.197-0.047-0.393-0.084-0.671-0.08c-0.103,0.104-0.179,0.158-0.159,0.278c0.083,0.359,0.547,0.432,0.673,0.792c0.015,0.172,0.026,0.343,0.04,0.514c0.133,0.561,0.111,1.286,0.236,1.86v0.475c0.063,0.289,0.16,1.036,0.078,1.267c-0.139,0.41-0.584,0.78-0.868,1.068c-0.754,0.755-1.64,1.715-2.97,1.859c-0.025,0.068-0.01,0.039-0.041,0.08c0.022,0.494,0.476,0.396,0.793,0.594c0.08-0.014,0.158-0.028,0.236-0.042c0.122-0.074,0.191-0.242,0.276-0.356c0.2-0.261,0.563-0.399,0.751-0.671h0.04c0.002,1.205,0.028,2.561,0.04,3.718h0.117c0.272-1.172,0.252-2.61,0.238-4.039c0.521-0.486,0.853-1.19,1.385-1.66v-0.078h0.041c0.007,1.251,0.037,2.529,0.037,3.797c0,0.407-0.102,1.378,0,1.544v0.237h0.08c0.106-0.425,0.133-1.023,0.236-1.501v-0.674C99.451,47.107,99.45,46.078,99.336,45.543L99.336,45.543z M28.313,48.073c-0.347-0.144-0.776-0.461-0.989-0.751c-0.637-0.875-1.337-2.948-0.87-4.51c0.379-1.266,1.202-2.127,2.532-2.454c0.673-0.163,1.397,0.062,1.821,0.278c1.208,0.622,1.725,1.506,2.096,2.967c0.48,1.887-0.132,3.619-1.385,4.194c0.078,0.764,0.158,1.529,0.237,2.295c0.444-0.013,0.852-0.105,1.227-0.199c0.629-0.155,1.271-0.176,1.86-0.315c0.431-0.104,1.052-0.015,1.384-0.237c0.079-0.17-0.247-1.35-0.315-1.623c-0.057-0.229-0.009-0.461-0.119-0.633v-0.079c-0.091,0.012-0.185,0.025-0.277,0.039c0.018,1.195-0.834,1.032-1.781,1.267c-0.473,0.119-1.049,0.27-1.581,0.276c0-0.17,0-0.343-0.001-0.514c0.045-0.083,0.739-0.386,0.868-0.476c0.461-0.318,0.931-0.826,1.229-1.304c0.202-0.327,0.366-0.764,0.473-1.149c0.138-0.489,0.154-1.17,0.041-1.662c-0.079-0.338-0.048-0.603-0.158-0.91c-0.427-1.187-1.322-2.054-2.453-2.532c-0.513-0.216-1.093-0.224-1.7-0.356c-0.539-0.116-1.509,0.124-1.901,0.238c-1.905,0.562-3.198,1.48-3.799,3.323c-0.236,0.728-0.163,1.736,0.04,2.414c0.467,1.561,1.773,3.02,3.72,3.047v0.039c0.062,0.088,0.06,0.264,0.118,0.355c-0.024,0.067-0.009,0.039-0.04,0.08c-0.164,0.111-0.404,0.061-0.633,0.117c-0.47,0.118-1.986,0.486-2.334,0.158c-0.222-0.072-0.37-0.363-0.396-0.632c-0.099,0.004-0.146,0.004-0.197,0.039h-0.082c0.146,0.767,0.291,1.53,0.435,2.296h0.041v0.04c1.385-0.239,2.77-0.478,4.154-0.713c-0.198-0.728-0.395-1.451-0.593-2.179C28.873,48.139,28.517,48.159,28.313,48.073L28.313,48.073z M96.014,43.682c0.086,0.218,0.254,0.58,0.435,0.712c0.086,0.063,0.132,0.04,0.198,0.119c1.31,0.113,1.842-2.143,1.308-3.442c-0.095-0.225-0.517-0.885-0.911-0.633h-0.08c0.026-0.069,0.01-0.038,0.04-0.08c-0.001-0.188-0.021-0.25-0.077-0.356c-0.08-0.013-0.156-0.026-0.238-0.038c-0.039,0.031-0.01,0.014-0.078,0.038c0.027,0.24,0.111,0.247,0.119,0.514C96.09,41.099,95.545,42.497,96.014,43.682z M96.446,41.585c0.088-0.213,0.265-0.35,0.396-0.515c0.082-0.015,0.075-0.01,0.117-0.04c0.301-0.001,0.385,0.057,0.555,0.159c0.301,0.711,0.346,1.954-0.156,2.494c-0.077,0.085-0.229,0.116-0.315,0.197C96.214,43.817,96.146,42.305,96.446,41.585L96.446,41.585z M78.092,57.168c-0.445-0.273-0.507-1.675-0.673-2.294c-0.327-1.215-0.483-2.489-0.831-3.72c-0.223-0.788-0.523-1.605-0.435-2.572c0.139-0.138,0.231-0.32,0.396-0.436c0.223-0.154,0.58-0.229,0.752-0.436c0.027-0.051-0.019-0.128-0.041-0.238c-0.459,0.074-0.879,0.35-1.267,0.515c-0.792,0.337-1.567,0.536-2.373,0.87c-0.252,0.104-0.515,0.282-0.833,0.315v0.238c0.027,0.014,0.055,0.025,0.08,0.04c0.042,0.045,1.033-0.392,1.346-0.118c0.356,0.125,0.311,0.59,0.514,0.872c-0.061,0.614-0.672,1.558-0.912,2.097c-0.58,1.326-1.17,2.592-1.816,3.836c-0.248,0.477-0.543,1.334-0.871,1.701v0.039c-0.216-0.296-0.199-1.051-0.314-1.462c-0.353-1.235-0.578-2.591-0.951-3.798c-0.068-0.23-0.305-1.279-0.156-1.503c0.051-0.546,0.822-0.785,1.266-0.95c-0.012-0.092-0.024-0.186-0.039-0.277c-0.701,0.105-1.429,0.479-2.058,0.713c-0.595,0.223-1.14,0.313-1.741,0.516c-0.298,0.102-0.636,0.275-0.986,0.314v0.041h-0.041c0.015,0.112,0.025,0.172,0.078,0.237c0.162,0.107,1.03-0.352,1.386-0.077c0.557,0.19,0.573,1.075,0.752,1.66c0.481,1.579,0.728,3.327,1.187,4.947c0.115,0.404,0.391,1.686,0.119,2.018c-0.148,0.439-0.885,0.615-1.306,0.791c0.014,0.08,0.024,0.159,0.036,0.237c0.609-0.09,1.162-0.373,1.707-0.56c1.063-0.354,2.066-0.65,3.089-1.029c-0.017-0.092-0.027-0.186-0.041-0.275c-0.437,0.116-0.773,0.248-1.386,0.236c-0.08-0.068-0.157-0.133-0.235-0.199c-0.067-0.21-0.134-0.422-0.199-0.632c0.043-0.499,0.683-1.421,0.91-1.86c0.673-1.293,1.262-2.6,1.856-3.955c0.229-0.519,0.754-1.275,0.832-1.857c0.184,0.111,0.133,0.438,0.197,0.672c0.135,0.475,0.211,0.98,0.355,1.503c0.281,1,0.391,2.075,0.673,3.126c0.104,0.387,0.261,1.048,0.08,1.464c-0.179,0.404-0.841,0.673-1.267,0.83c0.017,0.084,0.037,0.183,0.08,0.238c0.004,0.007,0.906-0.288,1.064-0.354c1.104-0.471,2.236-0.959,3.361-1.386c-0.015-0.093-0.024-0.187-0.039-0.274C79.117,57.043,78.477,57.407,78.092,57.168L78.092,57.168z M96.803,60.498c-0.143,0.13-0.354,0.163-0.514,0.277c-0.501,0.359-1.025,0.962-1.385,1.463c-0.288,0.402-0.534,0.843-0.791,1.268c-0.112,0.188-0.137,0.402-0.277,0.553v0.08c0.346-0.059,0.549-0.283,0.792-0.436c0.659-0.408,1.249-0.781,1.858-1.225c0.295-0.217,0.515-0.551,0.83-0.754c0.029-0.473,0.125-0.844-0.077-1.188C97.115,60.512,96.975,60.496,96.803,60.498z M96.329,61.921c-0.239,0.177-0.47,0.423-0.712,0.595c-0.208,0.146-0.458,0.224-0.633,0.396h-0.04c0.13-0.408,0.817-1.107,1.146-1.344c0.17-0.124,0.383-0.157,0.557-0.279h0.156c0.036,0.046,0.034,0.044,0.08,0.08C96.846,61.667,96.523,61.774,96.329,61.921L96.329,61.921z M10.825,63.465c-0.166-0.502-0.278-0.99-0.435-1.465c-0.079-0.246-0.062-0.525-0.199-0.713v-0.118c0.269,0.097,0.679,0.087,0.911,0.238h0.201c-0.045-0.206-0.086-0.552-0.201-0.713c-0.12-0.195-0.886-0.197-1.106-0.354c-0.312-0.244-0.607-0.947-0.832-1.307c-0.56-0.887-1.302-1.832-2.137-2.453c-0.443-0.329-0.751-0.671-1.544-0.673c-0.092,0.065-0.185,0.132-0.276,0.198c-0.178,0.789,0.139,2.248,0.592,2.611v0.078c-0.189-0.051-0.393-0.152-0.514-0.275h-0.04c0.007,0.227,0.051,0.522,0.158,0.672c0.046,0.195,0.362,0.354,0.554,0.396c0.248,1.037,0.592,2.101,0.95,3.05c0.289,0.758,0.436,1.48,0.75,2.213c0.155,0.356,0.522,0.617,0.634,0.99h0.117c-0.089-0.334-0.271-0.646-0.394-0.949c-0.364-0.875-0.653-1.804-0.952-2.688C6.868,61.62,6.734,61.057,6.548,60.5c-0.069-0.21-0.049-0.427-0.158-0.595v-0.039c0.269,0.049,0.43,0.188,0.634,0.276c0.461,0.201,0.903,0.277,1.385,0.476c0.353,0.146,0.796,0.347,1.228,0.396c0.048,0.359,0.253,1.301,0.435,1.545v0.117c-0.602-0.412-0.589-1-1.663-0.91c-0.054,0.063-0.128,0.117-0.197,0.158c-0.098,0.244-0.104,0.646,0,0.909c0.257,0.646,1.072,1.991,1.741,2.179c0.257,0.184,0.634-0.043,0.75-0.24c0.242,0.127,0.293,0.682,0.395,0.951c0.212,0.558,0.522,1.289,1.031,1.543v0.041h0.083c-0.066-0.447-0.318-0.851-0.475-1.229C11.387,65.223,11.113,64.324,10.825,63.465L10.825,63.465z M9.678,60.26C9.26,60.23,8.905,60.067,8.57,59.945c-0.894-0.332-1.703-0.615-2.492-0.991c-0.095-0.358-0.76-1.644-0.396-2.095c0.026-0.04,0.053-0.081,0.079-0.12c0.081-0.019,0.077-0.011,0.119-0.039c1.219,0.146,2.442,1.629,3.046,2.452c0.236,0.32,0.43,0.799,0.752,1.029V60.26L9.678,60.26z M10.311,63.701c-0.12,0.146-0.237,0.291-0.356,0.436c-0.105,0.078-0.223,0.109-0.316,0.198c-0.68-0.021-0.704-0.686-0.989-1.108c0.005-0.389,0.152-0.39,0.315-0.594c0.092-0.007,0.112-0.007,0.158-0.037c0.614,0.004,0.753,0.278,1.109,0.515C10.29,63.344,10.327,63.445,10.311,63.701L10.311,63.701z M33.578,69.794c-0.165-0.271-0.49-0.342-0.713-0.554c-0.069-0.023-0.04-0.007-0.079-0.039c0.51-0.264,1.053-0.555,1.583-0.79c0.142,0.158,0.801,0.792,1.029,0.671c0.04-0.012,0.079-0.023,0.118-0.038c-0.013-0.224-0.025-0.448-0.04-0.673c-0.499-0.498-1.234-0.91-2.059-1.066v0.039h-0.039c0.093,0.273,0.398,0.534,0.636,0.672v0.119c-0.469,0.068-0.885,0.295-1.307,0.437c-0.289,0.093-0.638,0.08-0.873,0.235h-0.117c0.171-0.479,0.737-0.871,1.028-1.267c0.576-0.776,1.033-1.728,1.94-2.176c-0.024-0.365-1.076-1.12-1.464-0.871c-0.097,0.051-0.029-0.021-0.079,0.078c-0.059,0.144,0.137,0.321,0.079,0.554c-0.076,0.305-0.831,1.74-1.029,1.9v0.041c-0.408-0.139-0.718-0.523-1.107-0.713c0.069-0.364,0.375-0.644,0.554-0.91c0.453-0.684,0.816-1.335,1.503-1.782c-0.006-0.526-0.855-1.075-1.425-1.065c0.002,0.242,0.125,0.379,0.08,0.592c-0.14,0.646-0.435,1.297-0.672,1.861c-0.156,0.364-0.226,0.799-0.476,1.065c-0.054,0.03-0.492-0.006-0.594-0.077c-0.149-0.002-0.298,0.005-0.394,0.038v0.079c0.666,0.645,1.387,0.865,2.295,1.268c-0.126,0.655-0.786,1.092-1.108,1.584c-0.166,0-0.3-0.011-0.395-0.08c-0.091,0.017-0.098,0.021-0.158,0.041c0.016,0.582,0.5,1.077,0.987,1.188c0.327-0.366,0.737-0.543,1.228-0.751c0.449,0.468,0.578,1.137,0.751,1.897c0.075,0.332-0.047,0.697,0.04,0.988c0.152,0.514,0.426,0.667,0.672,1.027h0.277c0.174-0.93-0.253-1.832-0.475-2.571C33.71,70.43,33.644,70.111,33.578,69.794L33.578,69.794z M96.09,63.108c-0.238,0.202-0.57,0.296-0.83,0.475c-0.4,0.282-0.758,0.659-1.146,0.95c-0.177,0.134-0.435,0.253-0.556,0.436c-0.199,0.299-0.16,0.806-0.396,1.067v0.157c0.314-0.114,0.464-0.483,0.713-0.672c0.307-0.23,0.563-0.536,0.87-0.754c0.192-0.133,0.411-0.207,0.594-0.355c0.125,0.023,0.115,0.037,0.199,0.081c-0.021,1.005-0.549,1.714-0.871,2.454c-0.093,0.215-0.121,0.551-0.276,0.71c-0.074,0.076-0.229,0.094-0.314,0.157c-0.264,0.291-0.528,0.58-0.794,0.873c-0.25,0.344-0.365,0.803-0.632,1.146c-0.002,0.114-0.002,0.216,0.037,0.276c0.041,0.031,0.11,0.059,0.16,0.08c0.51-0.483,1.004-0.887,1.424-1.465c0.658-0.904,0.986-2.047,1.465-3.125c0.3-0.683,0.734-1.354,0.711-2.334c-0.047-0.045-0.084-0.102-0.117-0.158L96.09,63.108L96.09,63.108z M93.32,69.361V69.4h-0.04c0.069-0.475,0.43-0.606,0.596-0.952h0.079C93.904,68.842,93.605,69.194,93.32,69.361L93.32,69.361z M34.171,69.993c-0.08,0.342,0.76,1.106,1.027,1.308c0.133,0.1,0.312,0.328,0.515,0.235c0.104-0.008,0.136-0.019,0.199-0.04c0.046-0.105,0.115-0.24,0.039-0.354C35.93,70.645,34.64,70.088,34.171,69.993z M37.97,73.037c0.067,0.034,0.122,0.021,0.198-0.039c0.139-0.113,0.063-0.313,0.159-0.475c0.222-0.159,0.615-0.118,0.911-0.199c0.809-0.213,1.753-0.198,2.65-0.396c0.425-0.093,1.128,0.16,1.464-0.037c0.04-0.016,0.081-0.026,0.118-0.043c-0.019-0.517-1.009-0.737-1.545-0.588c-0.237,0.066-0.513,0.213-0.751,0.275c-0.185,0.014-0.37,0.027-0.555,0.038c-0.062-0.644-0.38-1.144-0.395-1.817c0.595-0.013,1.341-0.091,1.739-0.316c-0.008-0.2-0.045-0.2-0.118-0.314c-0.453-0.107-1.23-0.126-1.583,0.116c-0.1-0.004-0.147-0.004-0.197-0.039c-0.221-0.28-0.116-0.851-0.316-1.146v-0.158c0.426-0.092,1.122-0.168,1.345-0.475c0.031-0.041,0.014-0.011,0.039-0.078c-0.036-0.035-0.051-0.068-0.079-0.119c-0.619-0.156-0.887-0.049-1.423,0.158c-0.167-0.535,0.034-0.959-0.514-1.108c0.117-0.203,0.506-0.194,0.751-0.276c0.382-0.126,0.817-0.296,1.148-0.474c0.026-0.068,0.007-0.04,0.04-0.08c-0.022-0.2-0.078-0.193-0.159-0.316c-0.571-0.044-1.027,0.011-1.346,0.316h-0.076c0.047-0.295,0.231-0.718,0.394-0.949c0.112-0.162,0.318-0.14,0.396-0.356h0.04V64.1c-0.081-0.104-0.159-0.211-0.238-0.314c-0.186-0.13-0.454-0.143-0.632-0.279c-0.263-0.004-0.515-0.003-0.672,0.079c0.021,0.152,0.089,0.248,0.119,0.356c0.109,0.408-0.284,1.669-0.436,1.859c-0.123,0.154-1.551,0.672-1.939,0.555c-0.092-0.029-0.36-0.164-0.435-0.239c-0.032-0.039-0.015-0.008-0.04-0.077c0.561-0.527,0.965-1.702,1.741-1.939c0.014-0.064,0.027-0.131,0.041-0.196c-0.194-0.2-1.135-1.188-1.622-0.871c-0.04,0.014-0.079,0.022-0.117,0.038c0,0.338,0.168,0.593,0.078,0.949c-0.182,0.711-0.587,1.556-0.95,2.139c-0.218,0.35-0.693,0.729-0.712,1.229c0.646-0.064,0.802-0.731,1.304-0.912c0.146,0.135,0.29,0.267,0.436,0.396c0.207,0.311,0.168,0.778,0.276,1.186c0.185,0.856,0.371,1.715,0.554,2.571c0.025,0.425,0.052,0.845,0.08,1.269C37.246,72.28,37.561,72.945,37.97,73.037L37.97,73.037z M39.233,70.032c0.031,0.368,0.258,1.407,0.436,1.662c0.001,0.024,0.001,0.054,0.001,0.08c-0.477,0.102-0.973,0.239-1.504,0.237c-0.082-0.564-0.352-1.061-0.355-1.662C38.418,70.338,38.731,70.094,39.233,70.032z M36.939,66.75c0.063-0.107,1.113-0.273,1.228-0.199c0.42,0.195,0.27,0.813,0.514,1.188c-0.083,0.194-1.047,0.487-1.345,0.514C37.283,67.834,37.213,66.977,36.939,66.75L36.939,66.75z M38.76,68.253h0.04c0.076,0.36,0.119,0.978,0.317,1.267c-0.142,0.348-1.016,0.317-1.346,0.516c-0.138-0.083-0.32-1.076-0.316-1.346C37.757,68.662,38.541,68.402,38.76,68.253L38.76,68.253z M31.914,70.506c-0.06,0.135-0.053,0.354-0.117,0.514c-0.342,0.84-0.454,1.015,0.079,1.82c0.237,0,0.269-0.037,0.396-0.119C32.429,72.064,32.454,70.814,31.914,70.506L31.914,70.506z M77.023,70.744c-1.154-0.285-2.125,0.285-3.325,0.199c-0.114-0.121-0.2-0.19-0.275-0.356c-0.835,0.024-1.757,1.886-0.909,2.453c0.453,0.308,1.744,0.129,2.295,0c0.306-0.071,0.783-0.139,1.027,0.038c0.332,0.247,0.273,1.182,0.157,1.703c-0.132,0.975-0.265,1.951-0.396,2.929c-0.117,0.593-0.236,1.185-0.356,1.779c0.606-0.003,1.178-0.623,1.349-1.069c0.1-0.258,0.047-0.502,0.119-0.791c0.209-0.83,0.237-1.82,0.436-2.689c0.127-0.563,0.041-1.1,0.156-1.621c0.086-0.393,0.143-1.696,0.041-2.059C77.281,71.059,77.126,70.901,77.023,70.744z M22.857,82.695c-0.135-0.102-0.229-0.283-0.356-0.395c-0.473-0.42-1.029-0.826-1.543-1.188c-0.426-0.298-1.008-0.476-1.387-0.829c-0.01-0.086,0.123-0.296,0.041-0.516c-0.335-0.896-1.589-1.933-2.374-2.412c-0.363-0.225-0.972-0.328-1.305-0.555c-0.246-0.017-0.374-0.025-0.435,0.155c-0.097,0.218,0.209,0.521,0.315,0.675c0.271,0.381,0.581,0.826,0.95,1.104c0.276,0.209,0.591,0.392,0.83,0.635h0.119c-0.154-0.426-0.609-0.657-0.949-0.909c-0.311-0.229-0.449-0.632-0.712-0.909c0.021-0.125,0.035-0.115,0.08-0.199c1.093,0.009,1.802,1.012,2.294,1.662c0.22,0.291,0.571,0.461,0.594,0.951c-0.116,0-0.216,0-0.276-0.041h-0.119c0.188,0.522,0.824,0.479,1.267,0.754c0.888,0.549,1.603,1.409,2.373,2.094c0.262,0.234,0.719,0.466,0.791,0.873c-0.537-0.028-0.917-0.327-1.261-0.555c-0.614-0.4-1.597-1.1-2.019-1.662c-0.08-0.104-0.106-0.263-0.199-0.355c-0.109-0.111-0.261-0.145-0.355-0.275h-0.158c-0.039,0.41,0.407,0.705,0.671,0.948c0.819,0.75,1.696,1.442,2.73,1.979c0.373,0.191,1.053,0.521,1.465,0.275C23.874,83.434,23.227,82.975,22.857,82.695L22.857,82.695z M47.226,85.307c-2.014-1.379-4.985-2.775-8.427-2.689c-0.167,0.104-0.503,0.021-0.711,0.078c-0.288,0.076-0.464,0.223-0.672,0.355c-0.008,0.971,1.446,1.496,2.255,1.698c0.483,0.123,0.909-0.104,1.188-0.198c0.215-0.82-0.776-0.94-1.227-1.347h-0.081v-0.038c3.036-0.119,5.308,0.729,7.043,2.02c0.433,0.322,0.93,0.783,1.148,1.306c0.081,0.194,0.116,0.515,0,0.674c-0.159,0.44-0.685,0.401-1.188,0.515c-1.162,0.267-2.755-0.391-3.285-0.91c-0.108,0.189,0.049,0.48-0.118,0.674c-0.176,0.478-0.788,0.354-1.346,0.474c-0.917,0.199-2.353-0.271-2.888-0.632c-0.149-0.104-0.257-0.286-0.396-0.396c-0.007-0.103-0.018-0.136-0.041-0.199c0.081-0.073,0.177-0.187,0.237-0.275c1.139-0.085,1.718-0.027,2.376,0.596c-0.017,0.078-0.01,0.073-0.041,0.114c-0.074,0.152-0.245,0.17-0.474,0.161v0.074c0.417,0.004,0.593-0.059,0.83-0.197c0.013-0.079,0.027-0.159,0.04-0.236c-0.136-0.141-0.231-0.328-0.396-0.438c-0.65-0.426-1.991-0.641-2.729-0.156c-0.116,0.561,0.232,0.864,0.554,1.105c0.646,0.488,1.191,0.771,2.098,1.029c0.291,0.082,0.55,0.008,0.871,0.076c0.28,0.064,0.765,0.079,1.068,0c0.504-0.128,1.205-0.658,0.632-1.268v-0.037c0.299,0.109,0.544,0.402,0.831,0.556c0.761,0.397,2.021,0.726,3.167,0.476c0.562-0.125,1.143-0.125,1.303-0.635c0.179-0.277-0.068-0.668-0.156-0.826C48.322,86.151,47.836,85.721,47.226,85.307L47.226,85.307z M39.906,83.485c0.14,0.094,0.22,0.291,0.356,0.396c-0.003,0.1-0.004,0.148-0.04,0.199c-0.257,0.697-1.706,0.182-2.058-0.081c-0.11-0.08-0.153-0.248-0.236-0.354c0.015-0.082,0.01-0.076,0.041-0.116c0.108-0.306,0.417-0.203,0.671-0.354C39.142,83.174,39.596,83.274,39.906,83.485z M76.625,83.881h-0.396c-0.262,0.209-0.692,0.236-0.991,0.396c-0.263,0.141-0.581,0.332-0.829,0.515c-0.207,0.148-0.326,0.418-0.516,0.592c0.004,0.197,0.008,0.229,0.16,0.277c0.039,0.029,0.01,0.018,0.075,0.04c0.042-0.047,0.08-0.063,0.12-0.12c0.033-0.023-0.027-0.104-0.04-0.232c0.384-0.386,0.667-0.598,1.228-0.832c0.144-0.059,0.447-0.233,0.634-0.119h0.079c-0.026,0.391-0.916,1.591-1.188,1.781v0.115c0.729-0.188,1.215-1.643,1.702-2.174c-0.013-0.09-0.01-0.111-0.04-0.157L76.625,83.881L76.625,83.881z M73.459,86.809c-0.234,0.209-0.807,0.229-1.066,0.435h-0.041c0.104-0.149,0.291-0.213,0.396-0.354c0.076-0.104,0.107-0.226,0.197-0.315c-0.018-0.081-0.01-0.075-0.039-0.117v-0.08c-1.155-0.212-3.084,0.784-3.68,1.308c-0.155,0.135-0.248,0.336-0.396,0.477c0.003,0.111,0.016,0.168,0.039,0.236c0.701,0.047,2.016-0.383,2.174-0.949c0.031-0.025,0.012-0.002,0-0.04v-0.079c-0.479-0.027-1.124,0.075-1.422,0.355h-0.039c0.26-0.396,1.223-0.746,1.739-0.91c0.172-0.053,0.55-0.149,0.714-0.039c0.037,0.015,0.077,0.025,0.117,0.039c-0.094,0.396-0.657,0.838-1.029,0.949v0.08c0.607-0.141,1.163-0.416,1.7-0.634c0.368-0.149,0.786-0.188,1.108-0.396c0.229-0.149,1.008-1.207,1.068-1.504C74.086,85.409,74.012,86.313,73.459,86.809L73.459,86.809z M70.333,87.6v0.119c-0.075,0.049-0.129,0.156-0.198,0.196c-0.205,0.12-0.479,0.106-0.674,0.238c-0.09-0.011-0.109-0.009-0.156-0.041h-0.039C69.373,87.775,70.025,87.621,70.333,87.6L70.333,87.6z M53.835,91.317c0.015-0.037,0.025-0.078,0.039-0.117c-0.976-0.04-1.953-0.079-2.927-0.119c-0.123,0.082-0.312,0.035-0.475,0.079c-0.202,0.059-0.426,0.15-0.593,0.239c0.026,0.067,0.008,0.038,0.04,0.077c0.238,0.188,1.624,0.199,1.9,0h0.078v-0.077c-0.419-0.134-1.183,0.2-1.503,0h-0.041v-0.041c1.052-0.073,2.23-0.044,3.325-0.04c-0.105,0.072-0.328,0.051-0.436,0.119c-0.039,0.014-0.078,0.027-0.117,0.039v0.08c0.238,0.037,0.475,0.078,0.711,0.117c0.037,0.041-0.004,0.004,0.039,0.037c-0.35,0.233-1.254,0.139-1.581-0.037v-0.08c-0.178-0.082-0.991,0.084-1.148,0.117c-0.133,0.03-0.27-0.014-0.357,0.039c-0.165,0.01-0.181,0.029-0.276,0.079c0.022,0.128,0.035,0.115,0.08,0.198c0.255,0.06,0.696,0.064,0.987,0.156v-0.039h0.04v-0.039c-0.148-0.057-0.559-0.025-0.713-0.115h-0.079c0.132-0.104,1.425-0.278,1.663-0.119c0.067,0.023,0.039,0.007,0.079,0.039c-0.211,0.038-0.424,0.08-0.634,0.117c0.025,0.066,0.009,0.039,0.04,0.078c0.065,0.045,0.193,0.045,0.316,0.039c-0.04,0.074-0.054,0.109-0.119,0.158c0.013,0.023,0.027,0.051,0.04,0.078c0.561,0,1.031-0.057,1.502-0.156c0.28-0.062,0.624,0.052,0.831-0.08h0.317v-0.078c-0.539-0.002-1.885-0.055-2.215,0.158h-0.117c0.033-0.043-0.004-0.004,0.038-0.041c0.155-0.18,0.471-0.09,0.75-0.156c0.44-0.104,1.168-0.284,1.544,0c0.105,0.064,0.04-0.008,0.039,0.117c0.107-0.002,0.181-0.002,0.236-0.036h0.277v-0.081c-0.359-0.088-0.889-0.251-1.188-0.434C54.057,91.488,54.135,91.344,53.835,91.317L53.835,91.317z M13.635,18.359c-0.088,0.32-0.274,0.593-0.395,0.87c-0.268,0.613-0.507,1.225-0.751,1.822c-0.207,0.496-0.335,1.295-0.633,1.699v0.079c0.416-0.074,0.698-0.493,0.949-0.751c0.617-0.634,1.92-2.22,1.9-3.402c-0.062-0.061-0.119-0.162-0.159-0.237C14.3,18.38,13.982,18.353,13.635,18.359z M13.794,20.022c-0.181,0.298-0.281,0.592-0.476,0.871c-0.178,0.255-0.46,0.452-0.633,0.713h-0.041c0.051-0.302,0.214-0.546,0.319-0.792c0.235-0.561,0.396-1.118,0.671-1.621c0.152,0.003,0.268,0.015,0.356,0.078c0.095,0.052,0.028-0.018,0.079,0.08C14.15,19.548,13.89,19.862,13.794,20.022L13.794,20.022z M84.023,7.875c-0.414-0.416-0.729-0.938-1.147-1.346V6.49c-0.205,0.073-0.899,0.688-1.028,0.871c-0.25-0.095-0.391-0.365-0.594-0.514c-0.676-0.508-1.313-1.167-2.49-1.147c-0.148,0.115-0.367,0.118-0.556,0.197c-0.53,0.23-1.083,0.688-1.305,1.227c-0.249,0.602,0.004,1.491,0.196,1.939c0.392,0.904,1.03,1.667,1.582,2.414c0.457,0.615,0.973,1.252,1.819,1.464c0.956,0.238,1.422-0.884,1.781-1.308c0.37-0.435,1.182-0.539,1.464-1.107c0.104-0.207,0.034-0.615-0.039-0.791c-0.18-0.426-1.066-1.622-1.425-1.859c0.024-0.239,0.135-0.247,0.235-0.396c0.248,0.121,0.338,0.471,0.516,0.673c0.227,0.258,0.546,0.396,0.791,0.632c0.378,0.003,0.604-0.094,0.79-0.277h0.041C84.561,8.243,84.212,8.06,84.023,7.875L84.023,7.875z M81.77,12.148c-0.699,0.165-1.047-0.293-1.424-0.673c-0.938-0.935-1.57-2.093-2.298-3.244c-0.247-0.396-0.885-1.134-0.554-1.702h0.156c0.199,0.299,0.539,0.507,0.754,0.792c0.591,0.784,1.313,1.469,1.898,2.255c0.359,0.485,0.758,0.94,1.106,1.424c0.178,0.249,0.315,0.565,0.556,0.751C81.924,11.931,81.848,12.015,81.77,12.148L81.77,12.148z M82.361,9.339c0.32,0.439,0.755,0.688,0.751,1.463c-0.122,0.116-0.157,0.224-0.356,0.276c-0.039,0.032-0.011,0.015-0.078,0.041c-0.56-0.932-1.367-1.711-2.017-2.573c-0.212-0.282-0.541-0.511-0.752-0.791c-0.362-0.48-0.793-0.864-1.188-1.305c-0.113-0.131-0.168-0.257-0.313-0.357c0.033-0.086,0.031-0.057,0.076-0.118c0.672,0.006,0.994,0.458,1.386,0.753C80.837,7.453,81.648,8.354,82.361,9.339L82.361,9.339z"/><radialGradient id="SVGID_43_" cx="251.8086" cy="-408.3613" r="72.7509" gradientTransform="matrix(1 0 0 -1 -213.7637 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#000" stop-opacity="0"/><stop offset=".8022" stop-color="#000" stop-opacity=".08"/><stop offset="1" stop-color="#000" stop-opacity=".3882"/></radialGradient><path style="opacity:.38;fill:url(#SVGID_43_);" d="M49.885,17.037c0.014-0.606-0.392-1.27-0.392-1.27l-0.025-0.058c0,0-0.487-0.949-1.302-1.228c-0.815-0.278-1.478,0.342-1.478,0.342s-0.114,0.131-0.429,0.494c-0.313,0.364-0.507,0.666-1.198,0.938c-0.692,0.271-1.379,0.204-1.743,0.033c-0.364-0.172-0.457-0.537-0.457-0.537s-0.229-0.722-0.313-1.049c-0.086-0.331-0.309-1.694-0.309-1.694s-0.491-2.747-0.534-3.304c0,0,1.475-0.126,3.687-0.775c2.299-0.673,3.043-1.206,3.043-1.206s-0.432-0.156-0.484-0.662c-0.051-0.507-0.089-1.19-0.089-1.19s-0.089-0.5,0.483-1.139c0.571-0.64,1.354-0.863,1.762-0.953c0.41-0.089,1.281-0.17,2.093-0.134c0.812,0.038,1.267,0.112,1.593,0.291c0.328,0.178,0.357,0.61,0.357,0.61l-0.008,1.146c0,0-0.037,0.402,0.261,0.529c0,0,0.505,0.305,2.196,0.133c0,0,0.72-0.126,1.846-0.46c1.125-0.335,4.129-1.229,4.554-1.341c0.425-0.111,0.953-0.291,1.646-0.469c0.691-0.179,2.039-0.626,2.308-0.73c0.271-0.104,1.812-0.618,2.927-0.81c1.115-0.195,2.227-0.186,2.813,0.149c0,0,0.357,0.304,0.521,0.662c0.163,0.358,0.478,0.863,0.923,1.088c0.454,0.227,0.752,0.371,1.875,0.273c0,0,0.022-0.096-0.395-0.37c-0.417-0.277-0.991-0.701-0.991-0.701S74.29,3.4,74.215,3.198c-0.072-0.202-0.043-0.306-0.043-0.306l0.877-1.406c0,0,0-0.172,0.508-0.238c0.506-0.067,1.071-0.134,1.74-0.313c0.67-0.178,0.788-0.312,0.788-0.312l0.58,0.178c0,0,3.546,2.853,4.655,3.583l0.199-0.239c0,0,0.436,0.018,0.826,0.172c0.394,0.154,0.979,0.562,0.979,0.562s1.612,1.31,2.071,2.2l0.223,0.679l-0.102,0.161c0,0,0.918,1.307,2.096,2.602c0,0,1.227,1.664,1.689,2.09c0,0-0.108-0.399-0.201-0.849l0.336-0.226l0.203-0.144l0.617,0.259c3.573,4.811,6.432,10.424,8.141,16.328l-0.12,0.484l0.395,0.501c1.128,4.212,1.728,8.643,1.728,13.211c0,1.122-0.036,2.236-0.107,3.339l-0.304,0.511l0.225,0.555c-2.231,26.1-24.124,46.584-50.801,46.584c-18.502,0-34.702-9.854-43.637-24.6L7.674,68.2l-0.205-0.153c-3.387-5.742-5.682-12.205-6.595-19.103l0.212-0.525L0.75,47.936c-0.213-1.892-0.322-3.812-0.322-5.756c0-2.985,0.255-5.909,0.748-8.755l0.25-0.562l-0.087-0.328c1.157-6.048,3.383-11.716,6.474-16.799l0.684-0.384l0.081,0.032c0,0,0.233-0.169,0.354-0.217l0.076-0.023c0,0,1.179-1.971,1.625-2.601c0,0,0.542-0.348,0.745-0.407c0,0,0.124-0.016,0.189,0.076c0,0,0.496-0.432,1.699-2.054c0.004-0.005,0.007-0.011,0.012-0.017c0,0-0.114-0.076-0.131-0.174c-0.018-0.097,0.108-0.591,0.173-0.717c0.065-0.126,0.108-0.156,0.108-0.156s1.722-2.032,3.151-3.238c0,0,0.26-0.202,0.678-0.25c0,0,1.472-0.613,3.264-2.184c0,0,0.051-0.289,0.478-0.858c0.428-0.57,1.456-1.163,2.222-1.337c0.764-0.174,0.896-0.038,0.896-0.038l0.064,0.065l0.515,0.766c0,0,0.565-0.316,1.413-0.604c0.847-0.289,0.979-0.262,0.979-0.262l0.825,1.336l-0.987,2c0,0-0.644,1.421-1.655,2.185c0,0-0.472,0.284-1.12,0.127c-0.648-0.157-1.072,0.333-1.072,0.333l-0.17,0.14c0,0,0.14-0.024,0.346-0.103c0,0,0.158,0.065,0.274,0.223c0.114,0.158,0.913,1.175,0.913,1.175s0.005,0.837-0.415,1.938c-0.419,1.1-1.467,2.891-1.467,2.891s-0.733,1.424-1.075,2.253c-0.342,0.829-0.515,1.765-0.488,2.262c0,0,0.187,0.062,0.707-0.202c0.655-0.332,1.083,0.027,1.083,0.027s0.719,0.53,1.041,0.881c0.262,0.289,0.802,1.765,0.209,3.224c0,0-0.402,1.008-1.377,1.724c0,0-0.216,0.332-1.529,0.174c-0.368-0.043-0.585-0.276-1.372-0.2c-0.785,0.077-1.231,0.815-1.231,0.815l0.013-0.024c-0.692,0.999-1.154,2.458-1.154,2.458l-0.057,0.165c0,0-0.241,0.509-0.292,1.752c-0.053,1.284,0.284,3.109,0.284,3.109s7.876-1.387,9.88-0.055l0.58,0.532c0,0,0.046,0.174-0.031,0.376c-0.08,0.204-0.375,0.673-0.987,1.113c-0.611,0.438-1.222,1.583-0.313,2.304c1.034,0.818,1.691,0.766,3.43,0.468c1.74-0.297,2.898-1.269,2.898-1.269s0.972-0.72,0.783-1.628c-0.188-0.908-1.017-1.189-1.017-1.189s-0.658-0.423-0.141-1.238c0,0,0.141-0.689,2.553-1.316c2.414-0.626,6.812-1.52,10.556-1.989c0,0-2.539-8.223-0.737-9.289c0,0,0.438-0.296,1.224-0.408l0.721-0.037c0.131-0.027,0.344,0.005,0.796,0.045c0.452,0.038,1.001,0.076,1.678-0.441c0.676-0.519,0.697-0.819,0.697-0.819"/></svg> \ No newline at end of file +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 103 94"><radialGradient id="a" cx="244.571" cy="-427.139" r="68.687" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset=".483" stop-color="#EAEAEB"/><stop offset=".945" stop-color="#A9ABAE"/><stop offset="1" stop-color="#999B9E"/></radialGradient><path d="M49.85 17.003c.014-.606-.392-1.27-.392-1.27l-.025-.058s-.487-.949-1.301-1.228c-.815-.278-1.478.342-1.478.342l-.428.494c-.313.364-.507.666-1.198.938-.692.271-1.379.204-1.743.033-.365-.172-.457-.537-.457-.537s-.229-.722-.313-1.049c-.086-.331-.308-1.694-.308-1.694s-.492-2.747-.535-3.304c0 0 1.475-.126 3.686-.775 2.3-.673 3.043-1.206 3.043-1.206s-.432-.156-.484-.662c-.051-.507-.089-1.19-.089-1.19s-.089-.5.483-1.139c.572-.64 1.354-.863 1.763-.953.41-.089 1.281-.17 2.092-.134.813.038 1.266.112 1.594.291.327.178.356.61.356.61l-.009 1.146s-.035.402.262.529c0 0 .505.305 2.197.133 0 0 .719-.126 1.845-.46 1.125-.335 4.129-1.229 4.554-1.341s.953-.291 1.645-.469a34 34 0 0 0 2.309-.73c.27-.104 1.811-.618 2.928-.81 1.114-.195 2.226-.186 2.813.149 0 0 .357.304.521.662.162.358.476.863.92 1.088.457.227.754.371 1.877.273 0 0 .021-.096-.396-.37-.417-.277-.991-.701-.991-.701s-.334-.245-.408-.447c-.072-.202-.043-.306-.043-.306l.877-1.406s0-.172.506-.238c.506-.067 1.074-.134 1.742-.313.67-.178.789-.312.789-.312l.578.178s3.547 2.853 4.655 3.583l.198-.239s.437.018.828.172c.393.154.979.562.979.562s1.613 1.31 2.072 2.2l.222.679-.102.161s.919 1.307 2.096 2.602c0 0 1.229 1.664 1.689 2.09 0 0-.108-.399-.203-.849l.339-.226.2-.144.617.259c3.575 4.811 6.435 10.424 8.144 16.328l-.121.484.396.501a51 51 0 0 1 1.729 13.211q-.001 1.684-.109 3.339l-.304.511.226.555C99.95 72.645 78.057 93.131 51.38 93.131c-18.502 0-34.702-9.854-43.637-24.601l-.102-.365-.205-.151A50.6 50.6 0 0 1 .841 48.91l.212-.524-.336-.482a51 51 0 0 1-.322-5.758c0-2.985.255-5.909.748-8.755l.25-.562-.087-.328A50.6 50.6 0 0 1 7.78 15.7l.684-.384.081.032s.233-.169.354-.217l.076-.023s1.179-1.971 1.625-2.601c0 0 .542-.348.745-.407 0 0 .124-.016.189.076 0 0 .496-.432 1.699-2.054l.012-.017s-.114-.076-.131-.174.108-.591.173-.717.108-.156.108-.156 1.722-2.032 3.151-3.238c0 0 .26-.202.678-.25 0 0 1.472-.613 3.264-2.184 0 0 .051-.289.478-.858.428-.57 1.456-1.163 2.222-1.337.764-.174.896-.038.896-.038l.064.065.515.766s.565-.316 1.413-.604c.847-.289.979-.262.979-.262l.823 1.336-.987 2s-.644 1.421-1.655 2.185c0 0-.472.284-1.12.127s-1.072.333-1.072.333l-.17.14s.14-.024.346-.103c0 0 .158.065.274.223.114.158.913 1.175.913 1.175s.005.837-.415 1.938c-.419 1.1-1.467 2.891-1.467 2.891s-.733 1.424-1.075 2.253-.515 1.765-.488 2.262c0 0 .187.062.707-.202.655-.332 1.083.027 1.083.027s.719.53 1.041.881c.262.289.802 1.765.209 3.224 0 0-.402 1.008-1.377 1.724 0 0-.216.332-1.529.174-.368-.043-.585-.276-1.372-.2-.785.077-1.231.815-1.231.815l.013-.024c-.692.999-1.154 2.458-1.154 2.458l-.057.165s-.241.509-.292 1.752c-.053 1.284.284 3.109.284 3.109s7.876-1.387 9.88-.055l.58.532s.046.174-.031.376c-.08.204-.375.673-.987 1.113-.611.438-1.222 1.583-.313 2.304 1.034.818 1.691.766 3.43.468 1.74-.297 2.898-1.269 2.898-1.269s.972-.72.783-1.628-1.017-1.189-1.017-1.189-.658-.423-.141-1.238c0 0 .141-.689 2.553-1.316 2.414-.626 6.812-1.52 10.557-1.989 0 0-2.539-8.223-.738-9.289 0 0 .438-.296 1.224-.408l.72-.037c.131-.027.343.005.796.045.453.038 1.001.076 1.678-.441.676-.519.697-.819.697-.819" style="fill:url(#a)"/><linearGradient id="c" x1="456.274" x2="502.776" y1="510.16" y2="582.912" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#8A8A8A"/><stop offset=".569" stop-color="#606060"/><stop offset=".591" stop-color="#FFF"/><stop offset=".612" stop-color="#585858"/><stop offset="1" stop-color="#303030"/></linearGradient><path d="m82.447 79.307.451.168q-.049.09-.101.179c-.864 1.573-.936 1.927-1.36 2.253s-.58.539-1.443.695c-.865.156-1.771 1.175-1.771 1.175s-.875.835-.48.866c.396.025 1.177-.609 1.177-.609s.497-.354.625-.255c.125.099-.539.751-.539.751s-1.161 1.176-2.479 1.982l-.396.213S78 85.333 78.895 84.33c0 0 .185-.271-.185.057-.369.325-1.332.821-1.741.821s.016-.563.016-.563.596-.768 1.812-1.758c1.22-.994 2.239-.922 2.239-.922s.227.043.253-.271c.028-.313.312-.863.312-.863s.453-1.032 1.674-2.749c1.218-1.714 1.77-2.195 1.77-2.195s1.588-1.629 2.423-3.259c0 0 .581-1.006-.364-.255-.951.753-2.211 1.7-3.44 2.014-1.233.312-1.349-.836-1.349-.836s-.271-1.884 1.049-3.344c1.188-1.316 2.492-1.273 3.684-1.415 1.188-.144 2.21-1.571 2.21-1.571s.82-.922 1.289-3.797c.218-1.337.067-2.244-.144-2.818l.021-.647-.368-.021a1 1 0 0 0-.135-.153s-.297-.299-.607-.524c-.313-.227-.692-.649-1.063-1.457 0 0-1.019-2.11-.792-5.156.227-3.047 2.762-2.762 2.762-2.762s1.475.143 1.76-.298c.283-.438.553-.993.649-2.223.101-1.233-.396-2.408-.396-2.408s-.186-.609-1.049-.708c-.863-.1-1.051.169-1.051.169s-.255.072-.723 1.09c-.471 1.021-.75 1.488-1.602 1.702-.849.211-2.023.099-2.549-.992-.515-1.072-1.757-3.693-2.351-5.772l.084-.735-.325-.471a11 11 0 0 1-.13-1.236c-.026-.992-.312-2.097-.638-3.2-.326-1.106-1.459-2.972-1.672-3.399-.324-.667-.621-.949-1.021-.893-.396.056-.339.056-.513.056-.168 0-.266.212-.311.425-.042.212-.375 1.315-1.104 1.812-.752.51-1.147.737-2.438.85 0 0-1.487.099-2.661-2.097-1.18-2.198-.879-3.598-.782-4.108.099-.51.539-1.247 1.229-1.388.693-.141 1.119-.184 1.119-.184s1.122-.01 1.603-.071c.551-.071.283-1.006.283-1.006s-.361-2.371-2.348-4.318l-.096-.487-.756-.381c-1.881-2.04-4.354-5.354-4.354-5.354s-1.105-1.048-.17-2.493c0 0 .438-.963 1.742-.792.419.081.457.123.818.199.481.099 1.008.225 1.478-.398 0 0 .438-.792-.271-1.812s-.923-1.742-1.785-1.687c0 0-.397-.055-.793.384-.395.438-1.415.716-2.011.778-.679.071-2.252-.528-3.156-2.082-.513-.874-.752-1.35-.865-1.595l.231-.34.72.08c.186.358.549 1.056.978 1.812.552.978 1.048 1.118 1.373 1.261.325.141 1.049-.071 1.431-.283.385-.213.766-.695 1.43-.738.668-.043 1.629.071 2.311.793s1.531 2.224 1.459 2.932c-.068.708-.111 1.403-1.035 1.699-.921.298-1.303.043-1.884-.084-.581-.128-.864-.072-1.104.211-.242.284-.512.892-.412 1.162.102.27.186.454.75 1.262.566.806 3.474 4.25 4.031 4.766l-.152.698.968.176c.625.724 1.358 1.668 1.687 2.263.493.907.752 2.337.779 3.002.025.666-.299.963-.299.963s-.313.524-2.012.524c-1.517 0-1.614.297-1.614.297s-.47.467-.369 1.615c.103 1.146.616 2.344 1.56 3.37.778.851 2.252-.006 2.748-.295.51-.299.822-1.264.822-1.264s.102-1.217 1.432-1.217c1.377 0 1.969 1.318 1.969 1.318s.963 1.295 1.941 4.121c.481 1.389.566 2.281.566 2.281l.126 1.668-.513.892.732.312c.135.541.348 1.24.686 2.044 0 0 1.008 2.381 1.443 3.286.44.906.896.766 1.264.808 0 0 .85.113 1.16-.282.313-.398.61-1.092.61-1.092s.663-1.812 2.138-1.657 1.84 1.092 2.096 2.168c.256 1.074.313 3.229-.479 4.545-.798 1.318-1.688 1.135-1.688 1.135s-1.813-.17-2.225.213c-.41.382-.623.724-.681 1.613-.058.894.026 2.336.751 4.08.631 1.523 1.146 1.361 1.432 1.728.284.368 1.188 1.204 1.104 3.272-.082 2.067-.791 4.149-1.586 5.439-.793 1.288-1.997 2.053-1.997 2.053s-.338.211-1.076.311c-.735.102-1.784.086-2.534.513-.75.426-.992 1.501-1.063 1.971-.069.468-.112 1.529.921 1.413 1.034-.109 2.577-1.4 2.577-1.4s1.486-1.104 1.685-.752c.199.354-.636 1.784-.636 1.784s-1.035 1.562-1.898 2.523c-.709.791-1.641 1.868-2.431 3.102z" style="opacity:.69;fill:url(#c)"/><linearGradient id="d" x1="425.286" x2="445.786" y1="502.951" y2="598.661" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#A8A9AB"/><stop offset="1" stop-color="#636668"/></linearGradient><path d="M23.441 22.732q-.01.013-.021.025.011-.012.021-.025" style="fill:url(#d)"/><linearGradient id="e" x1="421.068" x2="441.068" y1="504.37" y2="597.743" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#A8A9AB"/><stop offset="1" stop-color="#636668"/></linearGradient><path d="m38.188 89.707.163.01a3 3 0 0 0-.62-.414c-.699-.371-3.731-2.375-4.669-3.009-.936-.633-2.575-1.7-3.297-1.478-.554.172-.475.394-.804.556-.331.157-.687.052-1.504-.384-.818-.434-1.424-.725-3.02-2.239-1.245-1.185 1.595-.118 1.595-.118s.619.262.343-.385c-.277-.646-1.676-2.333-2.994-3.691a20 20 0 0 1-2.435-2.97l-.566-.661.007-.166c-.018-.024-.035-.054-.052-.078 0 0-1.874-3.377-1.676-4.617 0 0 .068-.828 1.241-1.188.817-.251.71.542 3.112.975 0 0 2.07.559 2.611-.945.539-1.505-.567-3.393-.567-3.393s-1.449-2.656-3.244-2.758c-.95-.053-.692.586-2.125.926 0 0-1.913.184-2.519-.963-.734-1.389-1.04-2.969-1.015-4.022.022-1 .054-1.079.119-1.371.045-.206.192-.582.254-1.128l-.134-.667.204-.501a13 13 0 0 0-.021-.83c-.091-1.66-.213-4.221-.437-5.71-.223-1.491-.633-3.798-1.991-3.866 0 0-.671-.051-1.634.885-.884.856-1.684-.708-1.728-1.663-.053-1.121.131-2.254.409-2.795s1.042-.567 1.186-.555c.146.013.555.171 1.043.474.488.305 1.16.305 1.557-.092.395-.394.947-.856 1.173-2.598.224-1.741.224-3.547.013-5.71l-.225-.484 1.339-.289c-.001-.017-.021-.126-.032-.193v-.005l-.007-.049-.001-.007-.009-.057-.001-.003-.009-.062v-.001l-.011-.068-.001-.008-.008-.066-.003-.017-.009-.069-.002-.014-.011-.076v-.005l-.011-.076-.003-.017-.009-.08-.002-.021q-.006-.04-.011-.081l-.002-.019a1 1 0 0 0-.013-.101l-.009-.082-.002-.016q-.003-.046-.01-.09l-.002-.021q-.005-.046-.011-.09l-.002-.022-.01-.093-.002-.019q-.004-.048-.009-.094v-.009q-.004-.048-.01-.1l-.001-.02-.007-.098-.001-.021q-.006-.05-.008-.099l-.001-.02q-.004-.051-.007-.102l-.001-.01-.006-.1-.001-.017-.005-.1-.001-.021-.003-.099-.001-.021-.004-.1v-.014l-.002-.099v-.009l-.001-.101v-.115l.001-.019.001-.095v-.015l.003-.099c.052-1.244.292-1.752.292-1.752l.057-.164s.46-1.459 1.154-2.459l-.013.024s.446-.738 1.231-.814c.785-.079 1.004.156 1.371.2l.115.013.037.004.075.006q.02.002.041.003l.064.004.041.003q.03 0 .058.003h.042l.055.002.038.002h.135l.032-.001.046-.001.03-.002.045-.002.026-.001a1 1 0 0 0 .067-.006l.044-.003.02-.002.045-.008.013-.001.052-.008q.053-.01.098-.021l.002-.002.039-.01.008-.001.028-.009q.006 0 .01-.003l.026-.009.008-.003.021-.009.009-.003q.01-.005.02-.009l.008-.004.019-.007.005-.004.016-.007.006-.004q.006-.003.012-.007.003 0 .005-.003l.012-.008.004-.003.011-.007.002-.003q.005-.003.008-.008h.002l.008-.007.001-.001.006-.006.003-.003.002-.002.003-.005q.004-.003.003-.004c.328-.241.593-.516.797-.775l.04-.05.008-.012.038-.048.007-.011q.018-.026.038-.05l.001-.001q.058-.083.109-.159l.003-.007.03-.044q.003-.006.007-.011l.024-.042q.004-.007.009-.013l.024-.042.001-.002q.025-.042.046-.079l.007-.012q.007-.015.016-.03l.012-.02.014-.024a.1.1 0 0 1 .011-.023l.012-.022.011-.021q.004-.008.01-.018c.066-.13.097-.207.097-.207.594-1.459.052-2.935-.21-3.224-.32-.354-1.041-.883-1.041-.883s-.426-.357-1.08-.025c-.521.264-.711.201-.711.201-.024-.498.149-1.432.491-2.263.341-.829 1.075-2.253 1.075-2.253s1.047-1.792 1.467-2.89c.418-1.102.415-1.94.415-1.94s-.795-1.019-.91-1.177a.7.7 0 0 0-.272-.223 2 2 0 0 1-.345.103l.169-.14s.424-.492 1.073-.334c.648.158 1.119-.126 1.119-.126 1.011-.764 1.654-2.187 1.654-2.187l.988-1.997-.826-1.337s-.131-.028-.979.259c0 0-.773 1.905-1.725 3.087 0 0-.374.552-.664.416a1.5 1.5 0 0 0-.91-.085c-.281.06-1.156.349-1.948 1.413-.79 1.064-.883 1.863-.458 2.101s1.045-.076 1.42-.407c.375-.333.638-.485.757-.47.118.02.093.315.068.41-.026.094-.154 1.364-1.625 3.913-.369.64-.845 1.589-1.069 2.046l.608.447-.999.503c-.266.758-.605 1.945-.471 2.61.204 1.011 1.158 1.011 1.158 1.011s.621.027 1.344-.348c.722-.375.892 1.242.892 1.505 0 .264-.007 1.726-1.02 2.442 0 0-.409.313-.985.313-.579 0-.954-.169-.954-.169s-.984-.272-1.59.083c-.604.358-1.326 1.098-1.897 2.17-.569 1.072-1.045 2.986-1.019 4.397.02 1.111.18 2.162.291 2.879l.667.435-.543.623c.079 1.136.168 3.363.155 4.109-.018.911-.154 2.84-1.115 3.292 0 0-.324.171-.868-.238s-1.132-.426-1.37-.435c-.238-.007-1.285.162-1.692 1.311-.408 1.145-.375 2.688-.29 3.597.086.91.876 2.458 1.872 2.458 0 0 .484.035 1.055-.553.568-.586.902-.637 1.156-.629.255.009.749.272 1.072 2.851.307 2.442.437 4.442.414 6.668l.605.392-.758.768c-.042.199-.089.417-.142.626-.169.682-.187 1.364-.024 2.569.161 1.21.811 3.72 1.754 4.375 1.252.871 2.071.856 2.916.791.842-.067 1.424-.712 1.424-.712s.331-.342.685-.237c.356.104 1.346.66 2.058 2.084.713 1.425.871 2.992-.316 3.272-1.187.272-3.231-.846-3.231-.846s-1.161-.647-2.109.064c-.951.713-.977 1.807-.502 3.15.261.738.782 1.938 1.513 3.188l.721.302-.193.551c.492.748 1.055 1.479 1.678 2.105 0 0 2.466 2.729 3.838 4.457 0 0 .08.157-.158.016-.238-.146-1.266-.621-1.82-.566-.555.054-.45.395-.45.395s.238 1.254 4.01 3.365c0 0 1.359.766 2.216.766 0 0 .277.039.619-.346.346-.381.45-.341.688-.262.237.076.553.249 1.741 1.105 1.188.857 3.496 2.176 4.325 2.731s.793.657.621 1.054c-.171.396.593.619.593.619s1.899.855 2.928.846c1.029-.016 1.464-.119 2.097.012.632.133 1.28.291 1.345.346.066.053-.315.038-.315.038s-2.362-.276-2.494-.21c-.13.066.014.184.99.436v.006q1.868.325 3.782.51c-.489-.061-2.52-.322-3.823-.713 0 0-.131-.078.173-.014.303.065 2.018.225 2.466.157.448-.065-.092-.274-.092-.274s-.897-.425-2.889-.582c0 0-.803-.055-1.503.014-.699.066-1.41-.264-1.41-.264s-1.028-.317-.78-.646a.47.47 0 0 0 .065-.502z" style="opacity:.45;fill:url(#e)"/><linearGradient id="f" x1="444.76" x2="473.842" y1="550.814" y2="550.814" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#231F20"/><stop offset="1" stop-color="#474747"/></linearGradient><path d="m62.342 86.16-.438.646c.096.655-.104.875-.254 1.119-.156.26-.59.592-.375 1.185.218.59 1.687.401 2.535.144.852-.26 1.569-.49 2.134-.693.562-.198.719.086.719.086s.246.175-.574.606c-.821.433-2.336.634-3.055.72-.724.086-.506-.043-1.586.33-1.082.377-.07.707-.07.707 2.435.635 4.188.115 4.188.115l.332-.097q.403-.118.803-.244c-2.021.456-3.326.149-3.739.095-.431-.058-.778-.145-.88-.361-.102-.215.479-.2.479-.2s1.683-.188 3.24-.69c1.557-.506 1.932-.98 1.871-1.341-.057-.358-.848-.332-1.785-.028-.937.305-2.334.75-2.662.821-.334.07-.691.06-.812-.146-.114-.203-.216-.53.146-.905.36-.376.402-.694.402-.694.055-.254.057-.523.021-.8zl.545-.118c-.298-1.124-1.052-2.218-1.279-2.577-.314-.507-.836-.793-2.393-.535-1.556.26-3.386 1.035-3.386 1.035s-1.888.997-3.298.812c-1.413-.188-1.703-1.614-1.688-2.063.015-.447.304-.835 1.039-1.123s2.465-.678 4.985-.808 3.458-1.771 3.458-1.771c.33-.478.922-1.543-.489-2.336-1.41-.791-1.441-.593-2.119-1.107-.678-.52-1.412-1.153-1.701-2.033a4 4 0 0 0-.104-.292l-.849-.558.41-.371c-.34-.67-.693-1.271-.693-1.271s-1.281-1.902-.246-3.703c1.038-1.803 2.736-2.348 2.736-2.348s1.5-.332 2.996.016c1.418.324 2.133-.219 2.133-.219s.865-.374 1.123-2.102c.264-1.729-.014-4.943-2.316-5.578-2.307-.633-3.527.563-3.527.563s-1.24 1.369-1.644 1.57-1.022.563-1.022.563-.867.519-1.453.648c-.393.086-1.791-1.771-1.933-3.201-.133-1.316-.401-2.388-.306-5.096l-.485-.63.537-.533c.101-2.999-.417-5.116-1.188-6.461-.807-1.412-2.119-2.161-2.766-2.478-.648-.318-2.147-.462-3.17-.086-1.023.374-1.239.678-1.613 1.326-.376.648-.836.605-.836.605s-1.427.043-1.888-2.133c-.646-3.049.359-4.035.359-4.035s.318-.476 1.369-.619c1.053-.144 1.73.115 2.537.315.806.202 1.41.116 2.419-.374 1.008-.491 1.442-1.297 1.238-2.739-.195-1.393-.255-1.742-1.483-5.964l-.875-.46.583-.579C44.87 23.032 44.8 20.35 44.8 20.35c-.106-.977.049-1.292.598-1.54.576-.259 1.116-.175 1.934-.123.818.053 1.425-.079 1.847-.316s1.581-.87 1.504-2.162c-.08-1.292-1.109-2.824-1.953-3.351-.843-.528-1.953-.316-2.558.131-.606.45-.845 1.029-1.214 1.214-.369.183-.895.605-1.45.474-.554-.132-.581-1.371-.818-2.77-.153-.907-.271-1.611-.338-1.989l-.678-.254c.044.557.535 3.304.535 3.304s.223 1.364.308 1.692c.086.329.314 1.05.314 1.05s.092.364.456.535c.365.172 1.052.24 1.743-.032.692-.271.886-.572 1.199-.938.315-.364.429-.493.429-.493s.663-.622 1.478-.343c.813.278 1.299 1.228 1.299 1.228l.028.06s.403.661.392 1.269v-.057s-.022.301-.697.818c-.676.519-1.226.479-1.678.442-.454-.04-.666-.072-.797-.045l-.719.038c-.786.111-1.224.408-1.224.408-1.8 1.064.736 9.288.736 9.288l-.276.613s.514 2.052.904 3.378c.388 1.326.562 2.637.62 2.91s.044.762-.317 1.051c-.359.289-1.239.534-1.425.562-.187.029-.535-.042-.996-.201-.462-.158-.922-.187-.922-.187s-1.11-.188-2.291.173c-1.182.359-2.076 1.569-2.148 3.083-.071 1.513-.057 2.278.535 3.617.59 1.34 1.657 2.104 2.463 2.118.808.014 1.469-.403 1.931-1.051.459-.65.59-.751.59-.751.548-.302 1.944-.433 2.651-.172.708.258 2.007 1.073 2.723 2.679.579 1.298.76 2.75.729 5.363l.584.448-.61.703q-.01.368-.026.761c-.143 3.876.72 5.864.72 5.864.491 1.065 1.023 1.83 1.745 2.318.719.489 1.699.156 2.018 0 .315-.158 1.194-.563 1.943-1.037.749-.477.725-.679 1.629-1.515.907-.833 2.076-.604 2.076-.604s1.107.028 1.74 1.313c.637 1.283.509 3.109.347 3.773-.158.662-.444 1.097-1.063.979a19 19 0 0 0-2.019-.231c-.375-.014-1.433-.049-2.394.203-.938.244-2.205.92-3.414 2.883-.938 1.52-.478 3.013-.262 3.603.17.462.635 1.104 1.043 1.896l.756.252-.35.656c.398.963.701 1.493 1.305 2.151.648.705 1.672 1.251 2.881 1.714 1.213.462.662 1.282.662 1.282-.69 1.497-2.75 1.557-3.354 1.628s-1.872.188-3.058.447c-1.182.261-2.291.418-2.954 1.182-.661.764-.402 1.557-.013 2.393.388.834 1.427 1.28 2.853 1.226 1.426-.058 2.35-.476 3.214-.851s2.362-.809 2.81-.937c.445-.129 1.051-.39 1.498.26.482.701.994 1.697 1.229 2.45z" style="opacity:.35;fill:url(#f)"/><path d="M101.566 51.162s.347-3.236.457-4.392q.026-.259.045-.513l-.098-.241c-.459 5.815-.938 7.727-.938 7.727s.013-.037.031-.101q.282-1.227.51-2.48zM91.268 12.579l.328.413.279.5c1.021 1.648 2.846 4.295 2.846 4.295s.739.958.905.968c.164.01-.084-.741-.084-.741s-.271-.979.517.298c.73 1.19 1.207 2.359 1.317 2.72.114.361.042.411.042.411s-.146.072-.146.33c0 .505.496 1.659.496 1.659s1.545 3.926 2.07 5.563c.526 1.641 1.133 4.368 1.133 4.368s.187.804.207 1.174c.021.371-.063.381-.229.186-.164-.196-.329-.072-.329-.072s-.175.072-.175.773c0 .7.085 2.346.217 3.615.152 1.505.616 2.133.616 2.133s.413.618.526-.577c.096-1.028.185-.228.185-.228.196 1.557.062 4.544.03 4.955-.019.218-.032.433-.049.64l.133-.221c.201-2.971.06-5.359.06-5.359s-.144-1.323-.3-1.311c-.155.01-.211.701-.211.701s-.065.467-.156.456c-.088-.011-.369.022-.566-1.412-.199-1.436-.156-2.949-.156-2.949s-.043-.155.048-.189c.09-.034.188.1.188.1s.133.189.287.033c.156-.154.19-.622-.301-3.08-.288-1.454-.711-2.896-1.006-3.832l-.294-.333-.058-.718s-.311-.913-1.033-2.737c-.723-1.824-.846-2.458-.846-2.458s-.045-.2.066-.234c.111-.032.091-.178.091-.178s-.013-.245-.278-.99c-.268-.746-.426-1.281-1.356-2.86-.869-1.468-1.124-1.558-1.124-1.558s-.426-.234-.112.591c.313.823-.075.232-.075.232-.925-1.177-2.838-4.292-2.838-4.292l-.537-.373-.508-1.261-.015.01M1.547 32.696l-.183.37c-.472 2.495-.625 5.135-.62 5.31.01.208-.036.211-.075.178-.042-.035.03-.16-.048-.16-.079 0-.108.211-.108.211L.512 38.6a42 42 0 0 0-.053.861l.016-.003c.068-.098.097-.028.097-.028s-.029.126.097.056.21-1.379.21-1.379.014-2.813.836-6.14c.819-3.327 1.281-4.259 1.281-4.259s.154-.418.138-.083c-.014.333.196.361.196.361.375-.054.821-1.125 1.267-2.493.445-1.363.668-2.589.668-2.7 0-.11-.055-.194-.152-.138-.098.056-.125.014-.125.014-.014-.208.361-1.127.361-1.127 1.253-3.202 3.104-5.694 3.104-5.694l.09-.504c-.164.254-.27.419-.421.661-.056.089-.042.297-.001.32-.201.191-.365.35-.476.456-2.707 4.473-3.059 6.556-3.059 6.556-.017.214.004.311.111.306.065-.003.251-.349.116.354-.09.468-.524 1.708-.693 2.212-.171.505-.358.85-.495.826-.135-.025-.135-.234-.135-.234s-.042-.546-.398.245-.713 1.859-1.425 4.65q-.047.187-.092.38zM4.841 62.626c-.15-.401-.264-.722-.179-.581.085.143.198.432.462.725.263.291.442-.226-.622-3.104s-1.354-3.04-1.402-3.095c-.046-.058-.215-.237-.167.167.045.404.018.656-.51-1.146-.528-1.806-.996-4.844-1.025-5.089-.027-.243-.169-1.778-.396-3.594-.226-1.814-.246-3.743-.207-4.28s-.066-.828-.123-.837c-.056-.008-.094.047-.131.284-.038.234-.01.395-.067.385-.057-.009-.076-.471-.076-.471H.391v.151l.002.519.039.402c.033.597.129.354.135.246.006-.109.03-.329.03-.329s.103-.884.084.02.236 4.563.236 4.563q.028.354.068.729l.063.092-.042.104c.265 2.425.795 5.086.795 5.086.507 2.417 1.11 3.846 1.308 4.25.198.405.236.085.17-.271s.546.688.873 1.674c.332.99.556 1.815.556 1.815s.254.781.142.828-.292-.293-.292-.293-.473-.835-.274-.228c.398 1.231 1.6 3.822 1.6 3.822l1.396 2.471c-.998-1.805-2.298-4.637-2.439-5.015M7.281 67.639q.103.188.202.359zM20.722 2.874c-.212.342-.242.514-.242.514s.112-.118.183-.237c.07-.118.059-.277.059-.277M17.216 5.572c-.417.048-.677.25-.677.25s.35-.061.677-.25M84.005 4.909s.247-.03.347.02c.101.049.066-.158.066-.158s-.287-.406-.322-.556c-.32-.089-.611-.1-.611-.1l-.028.034c-.01.075-.036.188-.012.297-.004.002.472.365.56.463M87.487 7.88l.095-.152-.223-.679q-.007-.017-.021-.036c-.007.066-.049.125-.172.115 0 0-.099-.03-.011.198.064.143.2.373.332.554" style="opacity:.1;fill:#232323"/><path d="M101.566 51.162s.347-3.236.457-4.392q.026-.259.045-.513l-.098-.241c-.459 5.815-.938 7.727-.938 7.727s.013-.037.031-.101q.282-1.227.51-2.48z" style="opacity:.1;fill:#232323"/><linearGradient id="g" x1="266.492" x2="295.964" y1="-395.278" y2="-485.035" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset=".009" stop-color="#FCFCFC"/><stop offset=".066" stop-color="#EEE"/><stop offset=".134" stop-color="#E5E5E5"/><stop offset=".252" stop-color="#E3E3E3"/><stop offset=".336" stop-color="#8A8A8A"/><stop offset=".442" stop-color="#B8B8B8"/><stop offset="1" stop-color="#3B3B3B"/></linearGradient><path d="M79.003 84.528s.667-.653.539-.752c-.128-.101-.623.256-.623.256s-.073.062-.185.142l.393-.252s-.038.238-.355.555c0 0-.094.094-.258.248-.957.938-2.386 1.998-2.386 1.998l.396-.211c1.32-.809 2.479-1.984 2.479-1.984" style="opacity:.5;fill:url(#g)"/><linearGradient id="h" x1="460.463" x2="509.588" y1="512.556" y2="573.306" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#EFF0F0"/><stop offset=".591" stop-color="#F0F1F2"/><stop offset=".599" stop-color="#787878"/><stop offset=".646" stop-color="#EEEFF0"/><stop offset="1" stop-color="#D8D9DB"/></linearGradient><path d="m82.984 39.705.51-.891-.127-1.667s-.085-.893-.566-2.28c-.979-2.828-1.941-4.122-1.941-4.122s-.592-1.318-1.969-1.318c-1.33 0-1.431 1.219-1.431 1.219s-.312.963-.821 1.261c-.5.29-1.972 1.146-2.748.296-.941-1.026-1.461-2.225-1.56-3.372-.101-1.146.367-1.615.367-1.615s.1-.296 1.614-.296c1.703 0 2.014-.525 2.014-.525s.324-.296.297-.963-.284-2.097-.779-3.001c-.324-.596-1.058-1.537-1.684-2.261l-.967-.178.15-.699c-.56-.514-3.465-3.959-4.031-4.766-.564-.808-.65-.993-.75-1.262s.17-.877.412-1.161c.238-.283.521-.341 1.104-.212.58.127.961.381 1.886.084.919-.297.962-.992 1.033-1.699s-.78-2.209-1.458-2.932c-.684-.721-1.645-.836-2.311-.792-.664.042-1.047.523-1.433.737-.382.213-1.103.425-1.429.284s-.823-.284-1.375-1.261c-.43-.76-.794-1.459-.979-1.817l-.713-.076v.012s.633 1.654 1.633 2.811c.998 1.157 2.266.919 2.266.919s.82-.089 1.533-.772c.711-.683 1.761-.148 2.024.04.269.189.853.911 1.478 2.127.621 1.216-.355 2.058-.355 2.058s-.555.535-1.691.088c-1.14-.443-1.813.259-1.986.614-.182.357-.508.99.076 1.73.584.742 3.178 4.273 4.916 5.945 1.74 1.672 2.314 3.047 2.682 4.342.365 1.297.079 1.899-.521 2.018-.604.118-1.148.021-2.086.187-.94.17-1.349.367-1.543 1.653-.199 1.286.562 3.373 1.67 4.361 1.106.989 2.334.386 2.76.228.427-.159 1.352-.653 1.681-2.027.188-.783.851-.721.851-.721s.563-.071.854.117c.287.19.633.525 1.402 1.87.772 1.346 1.453 3.146 1.724 4.738.257 1.592.062 1.818.317 2.947.256 1.128 1.078 3.245 1.466 4.074.383.832.78 1.662.989 2.107.205.445.531.782 1.443.802.908.02 1.273-.228 1.541-.662.27-.435.612-1.088.713-1.316s.467-.911 1.146-1.02c.685-.108 1.762.01 2.106 1.198.313 1.071.76 2.622-.158 4.5-.65 1.334-1.129.859-2.451.948 0 0-1.165-.01-1.781.921-.611.93-.416 2.61-.286 3.877s.988 3.113 1.621 3.563c.636.443.86.849 1.08 1.256.216.404.534 1.205.216 3.313-.313 2.106-.979 3.74-1.867 4.521-.024.021-.05.043-.07.063a4 4 0 0 1-.219.201c-.537.521-.371.543-.889.793-.594.289-.988.207-1.958.365-.97.16-1.583.327-2.088.821-.503.495-1.243 1.409-.979 3.187.148.986 1.318.584 2.229.111-.274.125-.553.221-.798.246-1.033.113-.991-.949-.921-1.415.069-.47.313-1.544 1.063-1.97s1.799-.41 2.533-.512c.738-.101 1.076-.313 1.076-.313s1.205-.766 1.997-2.055c.793-1.289 1.502-3.371 1.587-5.438.084-2.068-.821-2.902-1.104-3.271-.283-.366-.799-.203-1.431-1.729-.724-1.74-.81-3.188-.751-4.079.057-.892.27-1.231.682-1.612.41-.383 2.223-.213 2.223-.213s.893.185 1.686-1.134c.793-1.317.738-3.471.481-4.546-.253-1.076-.623-2.013-2.097-2.168-1.471-.152-2.138 1.66-2.138 1.66s-.297.693-.608 1.092c-.312.395-1.16.285-1.16.285-.37-.044-.821.099-1.264-.81-.438-.906-1.442-3.286-1.442-3.286a14 14 0 0 1-.688-2.055z" style="opacity:.73;fill:url(#h)"/><linearGradient id="i" x1="272.872" x2="302.47" y1="-392.826" y2="-482.965" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path d="m82.487 79.313.801-.479c.788-1.231 1.72-2.31 2.431-3.103.863-.961 1.896-2.522 1.896-2.522s.835-1.431.638-1.784c-.13-.23-.704.02-1.687.752-3.674 2.746-3.971 1.246-3.971 1.246.422 2.438 4.729-1.633 5.108-1.375-.063.563-.457 1.172-1.25 2.25 0 0-.388.555-.78.953-.369.432-.578.641-.578.641s-.088.09-.125.125a33 33 0 0 0-1.595 2.018c-.019.021-.104.113-.125.143-.295.416-.491.73-.702 1.062-.014.022-.064.011-.076.034a.1.1 0 0 0-.025.037c-.245.39-.373.713-.508.959-.012.029-.021.065-.03.095 0 0-.319.665-.457 1.067-.14.405-.12.547-.623.625-.504.078-.276-.053-1.021.196 0 0-.403.199-.938.571q-.043.032-.082.063a15 15 0 0 0-1.534 1.436q-.076.096-.146.195s-.157.168.051.188c.206.021.633-.01 1.008-.169l.088-.057c-.186.103-.373.174-.513.162-.396-.026.479-.864.479-.864s.906-1.019 1.771-1.175c.862-.156 1.021-.371 1.444-.693.426-.327.494-.682 1.359-2.254.03-.059.064-.115.098-.176z" style="opacity:.53;fill:url(#i)"/><linearGradient id="j" x1="444.694" x2="469.725" y1="510.956" y2="592.07" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset=".747" stop-color="#F9F9F9"/><stop offset="1" stop-color="#D5D7D8"/></linearGradient><path d="m55.064 72.686.408-.377c-.34-.668-.693-1.269-.693-1.269s-1.282-1.901-.245-3.703c1.036-1.803 2.737-2.348 2.737-2.348s1.5-.332 2.996.017c1.418.323 2.133-.22 2.133-.22s.865-.376 1.123-2.104c.261-1.729-.014-4.94-2.317-5.576-2.306-.633-3.528.563-3.528.563s-1.242 1.369-1.644 1.57c-.404.2-1.024.562-1.024.562s-.865.52-1.453.648c-.39.087-1.788-1.771-1.931-3.2-.133-1.313-.4-2.385-.305-5.084v-.017l-.486-.629.537-.526c.102-3-.418-5.119-1.188-6.463-.805-1.414-2.118-2.163-2.766-2.479-.647-.317-2.146-.461-3.169-.086-1.022.375-1.237.677-1.613 1.325-.376.65-.835.606-.835.606s-1.427.044-1.89-2.132c-.644-3.049.36-4.036.36-4.036s.318-.475 1.369-.619c1.053-.144 1.73.115 2.536.317.807.2 1.41.114 2.42-.374 1.009-.49 1.442-1.298 1.24-2.738-.196-1.397-.249-1.727-1.484-5.966l-.874-.458.582-.579c-1.182-4.271-1.257-6.961-1.257-6.961-.105-.975.049-1.29.598-1.537.576-.261 1.117-.177 1.934-.125.819.052 1.425-.079 1.847-.316.423-.236 1.583-.87 1.503-2.163-.078-1.292-1.108-2.823-1.951-3.35-.844-.528-1.952-.317-2.56.132-.606.447-.843 1.028-1.213 1.212-.368.185-.896.607-1.45.474-.554-.132-.581-1.372-.818-2.77-.155-.915-.276-1.614-.342-1.989l-.674-.254c.043.557.535 3.304.535 3.304l.294 1.624v.02q.008.028.013.05c.019.079.049.18.082.289.114.215.37.456.942.502a2.6 2.6 0 0 0 2.025-.709c.254-.239.86-.911.86-.911s.329-.632 1.253-.494c.922.14 1.238.773 1.403 1.013.167.242 1.57 1.961.672 2.861-.039.039-.093.089-.152.146a3.5 3.5 0 0 1-.446.399c-.675.517-1.226.48-1.678.442-.453-.039-.665-.07-.795-.043l-.72.038c-.787.11-1.224.408-1.224.408-1.8 1.065.735 9.287.735 9.287s.671 2.029.973 2.979c.301.949.496 1.625.791 3.264s-.231 2.092-.525 2.251-.984.568-1.77.604c-.783.034-1.027-.368-2.371-.432-1.345-.065-2.246.345-2.661.906-.417.561-.913 1.862-.675 3.4.237 1.541.504 2.064 1.092 2.748.59.681 1.165.97 1.978.696.792-.266.764-.756 1.173-1.164.517-.519.855-.792 2.063-.821s1.979.288 2.594.784c.619.496 1.934 1.646 2.294 3.356.359 1.713.424 2.268.424 3.676s-.101 2.978-.064 4.381c.036 1.4.187 2.841.577 3.795.386.955.926 1.755 1.4 2.18.475.426.896.438 1.373.252.475-.188 1.511-.771 2.373-1.324.861-.555.797-.99 1.576-1.502a3.36 3.36 0 0 1 2.457-.486c.661.112 1.676.631 2.092 1.889.419 1.258.36 2.676.36 2.676s.035 1.186-.445 1.876c-.48.688-1.272.616-1.625.545-.354-.071-1.094-.136-1.094-.136s-1.451-.165-2.563.094c-1.105.258-2.077 1.085-2.73 1.896-.652.813-.941 1.57-.984 2.158-.043.59.027 1.595.642 2.572.612.979.712 1.432 1.409 2.827.695 1.396 2.15 2.17 2.201 2.206.05.037 1.388.523 1.89.949.505.425.555.826.411 1.208-.145.381-.438 1.094-1.604 1.604-1.166.512-2.591.523-3.496.617-.906.094-2.651.332-3.697.834-1.043.503-.97 1.454-.97 1.454s-.028 1.556 1.337 1.983c1.365.434 2.64 0 3.201-.237.562-.238 1.487-.583 1.487-.583s1.791-.631 2.752-.848c.965-.217 1.533-.323 2.188.832.652 1.158 1.014 1.886 1.078 2.625s-.209 1.148-.461 1.432c-.25.279-.217.46-.217.46-.105.873 1.182.763 1.182.763s.041-.004.11-.018c-.26.021-.499-.021-.59-.178-.116-.202-.217-.531.146-.906.359-.374.402-.693.402-.693.305-1.439-1.038-3.371-1.354-3.875-.315-.503-.836-.791-2.394-.531-1.556.26-3.386 1.037-3.386 1.037s-1.891.995-3.299.809c-1.413-.188-1.701-1.614-1.687-2.063.016-.444.304-.836 1.038-1.122.733-.289 2.464-.679 4.984-.809 2.522-.128 3.458-1.771 3.458-1.771.331-.478.923-1.543-.489-2.338-1.412-.789-1.44-.589-2.116-1.104-.68-.521-1.412-1.153-1.701-2.034a4 4 0 0 0-.108-.291z" style="opacity:.96;fill:url(#j)"/><path d="M92.002 13.363c1.021 1.649 2.844 4.295 2.844 4.295s.256.332.5.605l.01-.011c.011-.375-.051-.571-.06-.621l-.091-.274c-.021-.367.438.095.611.288-.498-.754-.659-.811-.659-.811s-.423-.234-.111.59-.075.233-.075.233c-.924-1.177-2.838-4.293-2.838-4.293l-.553-.383zM101.539 51.352q.02-.094.034-.188h-.009l.013-.089zM100.822 35.679c.088-.033.188.1.188.1s.135.189.289.033c.107-.104.155-.353.025-1.257a1.4 1.4 0 0 1-.137.59c-.139.296-.314.02-.441-.081-.129-.098-.168.07-.168.07l-.004.162c0 .7.087 2.346.217 3.617.063.605.173 1.071.287 1.408l.041.076c.089.148.188.343.307.255.116-.089.274-.582.274-.582l.128-.591c.191.113.291.529.341.962l-.004-.056s-.144-1.324-.3-1.313c-.155.01-.21.701-.21.701s-.066.468-.157.456c-.088-.011-.365.022-.564-1.412-.201-1.436-.158-2.949-.158-2.949s-.044-.155.046-.189M99.696 28.566l.298.341c.479 1.494.996 3.843 1.092 4.264l-.088-.441c-.288-1.454-.711-2.896-1.006-3.832zl-.05-.702-.006-.016s-.312-.913-1.033-2.737c-.725-1.824-.848-2.458-.848-2.458s-.043-.2.066-.234c.109-.032.09-.178.09-.178s-.013-.245-.277-.99c-.182-.503-.312-.911-.662-1.607.281.585.463 1.052.524 1.259l.028.068s.099.148.066.552c-.027.403-.146.452-.146.452l.022.14c.141.538.418 1.187.418 1.187s1.065 2.709 1.748 4.54z" style="opacity:.1;fill:#232323"/><linearGradient id="m" x1="274.534" x2="255.209" y1="-396.158" y2="-490.194" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path d="M42.958 91.536c.938.177 1.723.358 1.889.396-.333-.11-.952-.279-1.889-.396" style="fill:url(#m)"/><linearGradient id="n" x1="422.559" x2="427.288" y1="518.757" y2="578.177" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset=".22" stop-color="#989A9C"/><stop offset=".253" stop-color="#FFF"/></linearGradient><path d="m20.381 74.92.007-.164-.052-.08s-1.874-3.375-1.676-4.615c0 0 .069-.827 1.241-1.187.817-.25.71.538 3.112.976 0 0 2.07.557 2.611-.946.539-1.507-.566-3.394-.566-3.394s-1.45-2.656-3.244-2.756c-.95-.055-.692.583-2.125.924 0 0-1.913.185-2.519-.963-.733-1.389-1.015-2.968-1.015-4.021 0-1.058.045-1.001.126-1.405.045-.219.186-.548.248-1.09l-.134-.675.204-.499a13 13 0 0 0-.021-.83c-.092-1.661-.211-4.221-.436-5.711-.223-1.491-.633-3.799-1.991-3.865 0 0-.671-.052-1.636.885-.882.856-1.682-.708-1.726-1.663-.052-1.121.131-2.255.409-2.795.277-.541 1.042-.566 1.186-.554.146.012.555.17 1.042.474.489.304 1.161.304 1.558-.092.395-.395.948-.856 1.173-2.598s.225-3.547.013-5.71l-.224-.485 1.339-.288c-.001-.016-.021-.125-.032-.195l-.001-.002q-.002-.024-.007-.052v-.005l-.009-.057-.001-.003-.009-.062v-.001q-.005-.034-.011-.067l-.001-.007-.008-.068-.003-.015a1 1 0 0 0-.011-.083l-.012-.076v-.005l-.012-.076-.002-.018-.009-.079-.003-.021-.01-.081-.003-.02-.009-.087-.003-.013q-.004-.043-.009-.082l-.002-.017-.01-.091-.002-.02q-.005-.047-.011-.09l-.002-.022-.01-.094-.002-.018q-.004-.048-.009-.094l-.001-.009q-.003-.05-.009-.1l-.001-.02-.007-.099-.002-.021-.007-.099-.001-.02q-.004-.05-.007-.101l-.001-.009-.007-.1v-.017l-.005-.1-.001-.022-.005-.098v-.021l-.004-.101v-.013l-.002-.099v-.009l-.001-.102v-.133l.001-.096.001-.014.003-.1c.052-1.243.291-1.751.291-1.751l.058-.166s.46-1.458 1.152-2.458l-.011.024s.446-.738 1.231-.816 1.003.158 1.371.202l.152.017q.038.002.074.006l.042.003.064.004.041.002.058.002q.02.002.04.002l.055.002.039.001.051.001h.034l.05-.001.032-.001.046-.001.03-.001.045-.002.026-.001.044-.004.022-.002.044-.004.019-.002.045-.007.014-.001.052-.008.098-.021q0-.001.002-.002l.039-.01.007-.001.029-.009.01-.004.026-.008.008-.003.021-.009.009-.004q.01-.003.02-.009l.008-.003.019-.007.005-.004q.008-.005.015-.008.003-.002.008-.003l.012-.008q.002 0 .005-.002l.012-.008.004-.003q.005-.003.01-.008.002 0 .002-.002l.011-.008.001-.001.009-.007h.001l.006-.007.003-.002.002-.002.003-.005.004-.004c.328-.241.591-.516.797-.775l.04-.05.008-.012q.02-.023.038-.05.004-.004.007-.01c.012-.018.025-.032.038-.05h.001q.058-.083.109-.159 0-.005.003-.008.016-.021.03-.044l.007-.01.024-.042.009-.013q.013-.021.023-.042l.002-.002.046-.079.006-.013q.008-.016.017-.029l.012-.02.014-.024.01-.023.012-.023q.005-.01.011-.021l.01-.021c.066-.128.097-.205.097-.205.593-1.459.052-2.936-.21-3.225-.32-.353-1.041-.882-1.041-.882s-.288-.241-.751-.144c.349-.049.791.091.966.558.277.734.376 1.335.212 2.33 0 0-.26 1.387-1.384 2.233-1.125.848-1.923.096-2.885.13-.962.032-1.516.701-1.809 1.157s-1.417 2.2-1.319 5.067c.097 2.868.291 4.301.325 5.558.033 1.205.178 3.976-.635 5.278-.815 1.303-1.628.65-2.2.309-.571-.341-1.223-.245-1.744.131-.521.375-.833 1.124-.848 3.324-.016 2.364 1.532 2.606 1.532 2.606s.293.146.945-.537c0 0 .651-.685 1.253-.603.604.082.995.716 1.255 1.808.261 1.092.796 5.621.717 8.668-.034 1.271-.62 1.286-.36 3.617 0 0 .409 3.13 1.401 4.089.995.962 2.378.781 2.706.75.324-.032.7-.26.7-.26s.309-.197.537-.374c.23-.182.522-.428 1.011-.277.489.146 1.645.896 2.557 2.571.915 1.678.496 3.317-.26 3.521-.668.182-.848.229-1.971-.05-1.124-.274-1.451-.567-1.957-.766-.504-.196-1.043-.263-1.547.114-.505.373-1.345 1.057-.343 3.32.961 2.174 1.692 3.797 3.518 5.623a21 21 0 0 1-1.427-1.871z" style="fill:url(#n)"/><linearGradient id="o" x1="237.372" x2="218.847" y1="-388.36" y2="-478.502" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path d="m22.494 7.387-.05.025z" style="fill:url(#o)"/><linearGradient id="p" x1="259.906" x2="259.899" y1="-479.338" y2="-479.375" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path d="M46.028 92.85q.195.02.391.041c-.114-.016-.31-.039-.561-.074q.087.016.17.033" style="fill:url(#p)"/><path d="M24.089 5.489c-.649.36-.7-.016-1.141.017-.439.033-1.026.212-1.596 1.043s-.586 1.89.326 1.417c0 0 .436-.428.815-.579.081-.043.24-.126.406-.174l.144-.117s.424-.491 1.073-.333a1.59 1.59 0 0 0 1.119-.129c1.01-.761 1.655-2.184 1.655-2.184l.987-1.998-.826-1.336s-.698 1.489-1.383 2.53c-.682 1.046-.635 1.326-1.579 1.843" style="fill:#9fa2a3"/><path d="M19.871 16.292s-.424 1.89 1.156 1.597l.022-.007c-.062.003-.089-.006-.089-.006-.025-.497.149-1.432.49-2.261s1.075-2.254 1.075-2.254 1.047-1.791 1.467-2.89c.42-1.102.416-1.939.416-1.939s-.8-1.019-.915-1.176-.272-.223-.272-.223l-.146.051c.115-.007.221.021.283.114.213.31-.39 2.036-.39 2.036s-.522 1.238-1.548 3.03c-1.027 1.793-1.549 3.928-1.549 3.928" style="fill:#9fa2a3"/><linearGradient id="q" x1="268.903" x2="249.497" y1="-394.638" y2="-489.072" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path d="m38.185 89.697.166.02a3 3 0 0 0-.497-.347c.184.113.489.358.312.665-.245.424-.048.457.489.863l.061.033c-.156-.107-.253-.234-.156-.362a.47.47 0 0 0 .065-.499z" style="fill:url(#q)"/><linearGradient id="r" x1="254.456" x2="235.034" y1="-391.599" y2="-486.11" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path d="M24.437 82.749c-1.245-1.185 1.595-.118 1.595-.118s.619.262.343-.385c-.246-.57-1.373-1.963-2.543-3.219l.144.156s2.346 2.721 2.183 2.966-1.108-.325-1.108-.325-1.401-.539-1.206.13c.143.491 1.059 1.271 1.536 1.649a25 25 0 0 1-.944-.854" style="fill:url(#r)"/><linearGradient id="s" x1="262.651" x2="243.156" y1="-392.969" y2="-487.836" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path d="M26.977 84.73c.424.256.903.513 1.365.676 0 0 .831.293 1.337-.114.503-.403.503-.601 1.238-.243 0 0 1.388.696 2.382 1.444.98.735 3.557 2.336 4.396 2.791-.764-.417-3.712-2.365-4.633-2.99-.936-.633-2.574-1.698-3.297-1.476-.554.172-.474.396-.804.555-.331.158-.688.055-1.504-.383-.166-.09-.323-.172-.48-.26" style="fill:url(#s)"/><linearGradient id="t" x1="271.548" x2="251.19" y1="-390.957" y2="-490.018" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path d="M39.903 91.448c.37.104.672.06.787.035-.678.04-1.35-.269-1.35-.269s-.067-.021-.165-.061c.238.115.514.232.728.295" style="fill:url(#t)"/><linearGradient id="u" x1="274.658" x2="255.256" y1="-395.844" y2="-490.257" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset="1" stop-color="#E4E5E6"/></linearGradient><path d="M44.293 92.169s-1.344-.163-1.939-.163c0 0-.037.064.226.158-.021-.021-.031-.049.189 0 .304.064 2.018.225 2.465.158.448-.068-.091-.278-.091-.278s-.088-.041-.267-.102c-.323.259-.583.227-.583.227" style="fill:url(#u)"/><path d="M4.662 62.045c.085.143.198.432.462.725.146.16.266.072.162-.525a5 5 0 0 1-.464-.371c-.113-.013-.263-.297-.263-.297s-.471-.835-.274-.227c.398 1.23 1.6 3.821 1.6 3.821l1.396 2.47c-.999-1.803-2.299-4.633-2.44-5.013-.15-.405-.264-.724-.179-.583M1.547 32.696l.032-.643q.041-.182.087-.36c.712-2.789 1.069-3.858 1.425-4.649.356-.792.398-.245.398-.245s0 .209.136.234c.135.023.324-.32.494-.826.17-.504.604-1.745.693-2.212.135-.704-.051-.358-.115-.354-.108.005-.126-.091-.113-.306 0 0 .382-2.122 3.064-6.563.18-.17.321-.307.47-.449-.055-.052-.033-.265.001-.32q.203-.322.422-.661l-.09.504s-1.85 2.492-3.104 5.694c0 0-.342.835-.359 1.094-.025.154-.104.739.152.582l.065-.048c-.093.484-.295 1.37-.607 2.325-.288.878-.573 1.633-.841 2.078l-.002-.004c-.08.067-.098-.016-.146-.21-.048-.198-.113-.198-.113-.198-.179 0-.324.202-.41.359-.04.056-.089.19-.089.19s-.461.934-1.281 4.26c-.822 3.328-.836 6.14-.836 6.14s-.084 1.309-.21 1.379-.097-.056-.097-.056-.045-.052-.114.045c0 0 .02-.76.044-.875 0 0 .041-.206.119-.206s.006.125.048.16c.039.032.084.03.075-.178-.005-.176.147-2.816.621-5.312zM.392 41.994v-.005s.018.217.042.356l-.003.01c.078.357.187.357.187.357.008-.096.087-.273.183-.458q.012.159-.004.375c-.037.537-.019 2.466.209 4.28.225 1.815.367 3.349.394 3.594.029.245.498 3.283 1.025 5.089.285.967.422 1.344.483 1.424l.008.049s.097.184.348.32c0 0 .111-.097.112-.412q.027.046.057.105c-.083.262-.105.426-.105.426-.042-.043-.06-.031-.046.045.067.357.027.68-.169.272-.198-.403-.8-1.832-1.307-4.251 0 0-.531-2.659-.795-5.084l.042-.105-.064-.091a25 25 0 0 1-.067-.729s-.255-3.657-.237-4.562c.019-.904-.085-.02-.085-.02s-.021.219-.028.329c-.008.109-.103.352-.136-.246.023.26-.044-.801-.044-1.068M24.672 1.974l-.53-.753-.066-.065s-.131-.136-.896.038l-.11.022s.38-.094.168.191-.56.496-1.172 1.15c-.612.655-.411.803-.01.668.401-.138 1.188-.499 2.606-1.243zM23.106 1.21l-.036.006z" style="opacity:.1;fill:#232323"/><path d="M23.637 1.811c.31-.272.429-.484.454-.641l-.015-.014s-.131-.136-.896.038l-.075.015c.09-.015.303-.032.133.198-.212.285-.56.496-1.172 1.151-.612.656-.411.803-.01.667q.159-.055.4-.157c.143-.313.59-.743 1.181-1.257M83.482 4.115l-.2.235s.136.081.208.141q.011.008.021.012l-.07-.056c-.023-.109.004-.223.014-.297zs.055.002.143.011z" style="opacity:.1;fill:#232323"/><path d="M62.559 90.319s1.686-.187 3.239-.691c1.558-.504 1.935-.981 1.874-1.341-.037-.238-.396-.305-.906-.238.271-.021.514.032.354.332-.313.582-.861.782-.861.782s-.267.19-.89.371c-.806.245-1.794.375-2.335.438-.691.082-.521-.033-1.465.291-.023.016-.047.025-.065.043-.289.237 1.071.514 1.071.514s1.302.361 3.257.23l.067-.021q.4-.118.8-.245c-2.021.457-3.324.149-3.737.095-.434-.058-.777-.144-.88-.359s.477-.201.477-.201" style="opacity:.53;fill:#fff"/><path d="m63.301 4.417.717.076c1.429-.405 2.651-.776 2.651-.776s1.265-.41 1.901-.636c.635-.227 1.09-.313 1.656-.41.563-.096 1.309-.14 1.709-.131.398.007.528.122.528.122s.166.131.245.27c.077.138.74 1.891 2.975 2.005 2.231.112 2.261-1.096 2.063-1.464-.226-.427-.896-.863-.896-.863s-.898-.575-1.09-.846.033-.358.104-.376c.066-.018 2.433-.497 2.729-.608l.021-.02-.563-.174s-.119.134-.789.312c-.67.179-1.233.246-1.742.313-.504.067-.504.239-.504.239l-.879 1.406s-.029.104.043.305c.073.202.41.448.41.448s.573.424.99.699.395.373.395.373c-1.123.095-1.418-.048-1.875-.276-.445-.223-.76-.729-.922-1.086s-.521-.663-.521-.663c-.589-.336-1.696-.343-2.813-.15-1.115.194-2.656.707-2.923.812a34 34 0 0 1-2.309.729c-.694.179-1.224.357-1.646.47-.426.11-3.431 1.005-4.557 1.339a19 19 0 0 1-1.848.461c-1.688.171-2.193-.134-2.193-.134-.297-.125-.262-.527-.262-.527l.009-1.147s-.029-.433-.356-.611c-.328-.179-.779-.252-1.593-.29-.811-.038-1.683.044-2.093.134-.408.09-1.19.313-1.764.952-.573.641-.481 1.141-.481 1.141s.035.683.088 1.19c.052.504.484.662.484.662s-.744.532-3.045 1.206c-2.209.648-3.682.774-3.682.774l.678.254s5.468-1.015 7.148-2.616c0 0 .624-.293.02-.88-.606-.585-.897-.761-.897-.761s-.41-.224.019-.771a2.7 2.7 0 0 1 1.352-.933c.429-.138 1.753-.25 2.925-.093 0 0 .491.041.459.408-.034.366-.088.872-.077 1.028.008.158.023.515.398.845.378.332 1.099.453 1.099.453s1.257.228 2.843-.217c1.584-.445 3.642-1.14 5.431-1.629z" style="opacity:.1;fill:#232323"/><path d="M48.462 6.628c.31.207.476.221.5.421.055.339-.56.64-.56.64l-.006-.011s-.431-.157-.484-.664c-.052-.505-.088-1.19-.088-1.19s.001.2.046.26c.134.172.217.294.592.544" style="fill:#616161"/><path d="m82.447 79.307.451.17c1.104-.617 1.496-.809 1.759-.963 1.183-.703 2.592-1.563 2.963-1.855 0 0 .761-.518.116.195s-.969 1.007-.969 1.007-.625.626-.471.782c0 0 .166.246 1.193-.687 1.023-.929 2.15-2.258 2.275-2.44.127-.188.146-.293.146-.293s.107-.215.273-.393c.145-.15 1.377-1.496 1.994-2.121l.006.003q.409-.543.806-1.102c-.358.379-1.724 1.829-2.483 2.684 0 0-.713.763-.938 1.056s-.225.47-.225.47-.117.196-.392.519-1.24 1.186-1.24 1.186-.577.47-.754.478c-.179.011.431-.538.431-.538s.588-.625.967-1.123c.382-.498.137-.47.137-.47s-.186-.049-.986.459-1.367.858-1.367.858-1.722.986-2.814 1.623c-1.096.636-3.6 1.908-5.021 2.492-1.43.588-2.162.715-2.035.527.127-.186.461-.459.461-.459s.399-.4.399-.803c0 0 .128-.586-1.604-.223-1.729.36-3.293 1.213-3.293 1.213s-2.571 1.182-1.965 1.887c0 0 .117.186.635.352.52.166-.92.606-.92.606-1.365.448-2.413.651-3.74.926-1.963.403-3.564.761-4.165.894-.165.035-.253.059-.253.059s-1.212.292-3.229 1.072c-2.015.783-5.972 1.43-5.972 1.43s-2.542.293-2.777.627c-.234.331.177.499.177.499s.362.224 1.671.283c0 0 .451 0 .471.036.018.039.046.068-.235.156-.286.088-.854.314-2.778.558-1.936.245-1.896-.067-1.896-.067s-.01-.076.078-.216c.087-.134.009-.369-.293-.535 0 0-.419-.272-1.829-.262-1.408.009-4.212.017-6.833-.14-2.374-.143-5.59-.551-6.099-.664 0 0-.117-.029-.206-.117-.088-.09-.646-.422-1.164-.733-.517-.313-2.073-.907-2.073-.907s-2.011-.783-1.945-.521c.015.063.13.153.268.246q.526.282 1.06.56l.002-.002s-.743-.402-.538-.402.438.109.438.109 1.213.332 1.966.686c.753.353 1.407.83 1.407.83s.929.549 2.319.732c1.346.182 3.174.389 3.777.448l.594-.272.433.354c1.106.068 2.575.146 2.575.146s2.976.111 4.605-.019c.733-.063.507.317.507.317s-.214.354.206.529c0 0 .771.439 3.343.157 2.573-.286 3.138-.862 3.138-.862s.299-.275-.351-.398c-.513-.1-.513-.051-1.175-.117-.665-.067-.998-.205-.557-.323.441-.114 1.174-.175 1.174-.175s2.249-.313 4.066-.783c0 0 1.938-.458 3.861-1.134a33 33 0 0 1 1.887-.599l.438-.644.644.372.103-.021s2.306-.539 3.274-.703c.966-.168 3.154-.637 4.087-1.086.928-.448 1.396-.805 1.505-1.075.107-.272-.393-.431-.393-.431s-.588-.138-.508-.34c.075-.205.293-.382 1.213-.793.918-.41 2.07-.859 3.227-1.144 1.154-.282.732.194.732.194s-.692.705-.783.979c-.086.273.029.285.119.333.088.05.646.028 1.022-.067.383-.099 3.464-1.271 5.341-2.347q.072-.04.139-.08z" style="opacity:.17;fill:#fff"/><linearGradient id="v" x1="221.183" x2="221.373" y1="-454.565" y2="-454.565" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="gray"/><stop offset=".087" stop-color="#7A7A7A"/><stop offset=".36" stop-color="#6B6B6B"/><stop offset=".519" stop-color="#686868"/><stop offset=".638" stop-color="#5F5F5F"/><stop offset=".743" stop-color="#4E4E4E"/><stop offset=".841" stop-color="#383838"/><stop offset=".932" stop-color="#1B1B1B"/><stop offset="1"/></linearGradient><path d="m7.432 68.01.178.131c-.105-.099-.167-.155-.167-.155s-.008.003-.024.003q.007.008.013.021" style="opacity:.68;fill:url(#v)"/><linearGradient id="w" x1="221.404" x2="316.025" y1="-449.803" y2="-449.803" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="gray"/><stop offset=".087" stop-color="#7A7A7A"/><stop offset=".382" stop-color="#828282"/><stop offset=".518" stop-color="gray"/><stop offset=".568" stop-color="#797979"/><stop offset=".603" stop-color="#6E6E6E"/><stop offset=".608" stop-color="#6B6B6B"/><stop offset="1" stop-color="#4E4E4E"/></linearGradient><path d="m90.412 59.954-.371-.021c-1.807 1.463-2.342 1.938-3.781 2.955 0 0-1.644 1.228-3.44 2.196-1.804.97-3.919.853-3.919.853s-.573-.062-.295-.477c.275-.415.634-1.425.771-1.938.141-.516.415-1.82-.633-2.235s-3.018.196-3.018.196-4.525 1.205-6.371 3.23c-1.793 1.969-.286 2.846-.286 2.846s.702.49 1.386.73c.645.229.516.436.354.555 0 0-2.021 1.287-4.408 1.974 0 0-3.268 1.001-6.441 1.206-3.154.203-4.495.283-4.495.283l-.399.379-.758-.252c-1.283.154-3.455.463-5.596.979-2.622.64-5.123 1.147-6.903 2.296 0 0-1.333.887-.566 1.746.765.862 1.565 1.23 1.565 1.23s.472.207.464.336c-.009.164-.015.309-.367.512 0 0-1.394.814-4.108.859s-3.911.021-4.707-.695c-.658-.591.165-1.844.165-1.844s.33-.612 0-1.453c-.33-.84-2.218-.854-2.218-.854l-2.615-.134c-3.095-.081-7.182-.427-9.001-.653l-.033-.006-.006.166-.721-.303c-1.139-.221-3.243-.668-4.075-1.084-.759-.38-1.167-.313-1.066-1.102.101-.769-.753-1.836-.753-1.836s-1.188-1.287-2.257-2.086c-1.069-.804-1.523-.564-1.523-.564s-.484.258-.049 1.296c.436 1.04.86 1.403.86 1.403s.208.22.089.279c-.118.06-.484-.219-.789-.478-.253-.21-1.885-1.742-2.456-2.276l.105.356c.019.028.035.062.052.086.184.291.855 1.269 2.155 2.28 1.549 1.213 1.559.729 1.559.729s.061-.399-.297-.84c-.359-.44-.934-1.373-.791-1.715.144-.339.309-.31.309-.31s.133-.051.596.299c.462.351 1.498 1.076 2.011 1.703.513.623.48 1.181.48 1.181s-.102.563.453 1.17c.553.604 1.733 1.714 5.859 2.351l.059.01.193-.551.573.663c3.598.521 5.555.563 5.555.563s4.709.162 5.982.162c1.272 0 1.035.666 1.035.666s-.072.359-.225.646c-.155.287-.524 1.365-.144 1.939 0 0 .585 1.427 4.381 1.527 0 0 3.324.268 5.643-.688 2.319-.954.226-2.275.226-2.275s-.794-.481-1.13-.739c-.308-.234-.184-.481-.121-.646.06-.162.297-.359.563-.492.266-.134 1.239-.654 5.365-1.722 4.124-1.069 6.587-1.183 6.587-1.183l.055-.004.338-.656.854.556c.732-.06 1.681-.129 2.526-.171 1.691-.082 4.341-.471 5.879-.807 1.54-.343 3.869-1.062 5.592-1.951 1.725-.895 1.809-1.519 1.809-1.519s.328-.475-.392-.995c-.719-.523-1.036-.382-1.673-1.027-.637-.646.557-1.62.557-1.62s.612-.861 4.021-2.175c3.403-1.313 3.979-.873 4.153-.729s.195.615.123.935c-.069.317-.494 1.455-.721 2.053-.227.594-.316 1.406.605 1.601.923.194 2.215-.008 3.428-.442 2.893-1.033 3.756-2.295 8.534-5.764q.017-.014.03-.021zl.689.108c1.978-1.573 3.869-3.571 3.869-3.571s1.258-1.261 1.889-2.356c.595-1.026.027.89.027.89s-.32 1.516.19 2.077c.405.445 1.563-.795 1.563-.795s.688-.789.965-2.061c.408-1.875.185-2.248.185-2.248s-.246-.389-.093-.852c.154-.459 1.158-3.047 1.98-4.01l.502-.563.002-.027-.224-.557.304-.512s-.279.322-1.404 2.177c-1.266 2.087-1.467 3.771-1.467 3.771s-.119.653-.054 1.034c.063.355.188.519.192.622.009.104-.073.959-.508 1.773-.438.814-.815 1.031-.815 1.031s-.756.545-.86.157a2.3 2.3 0 0 1-.035-.966c.035-.248.289-1.579.252-2.072-.035-.494-.479-.098-.479-.098s-.104.119-.298.366-1.288 1.637-1.705 2.125c-.988 1.157-1.886 1.989-4.292 3.93-.007.003-.015.011-.019.015z" style="opacity:.43;fill:url(#w)"/><linearGradient id="x" x1="214.593" x2="314.404" y1="-431.356" y2="-431.356" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#555"/><stop offset="1" stop-color="#231F20"/></linearGradient><path d="m1.193 48.543.104.975c.235.285.577.677 1.071 1.187 1.084 1.121 1.427.416 1.427.416s.253-.705-.054-1.985c-.307-1.286-.253-2.046.325-2.026.578.019 2.258.361 2.782 1.752 0 0 .217.649.018 1.479-.2.834-.162 1.57-.018 2.295s.759 1.407 1.464 1.971c.706.562 2.746 1.535 4.734 1.66 1.987.127 2.601.021 2.601.021l.746-.767.134.668c.812-.09 2.116-.229 3.62-.393 2.528-.271 4.227-.544 5.798-.308 1.573.235 2.079 1.462 2.079 1.462s.108.314-.253.544c-.349.224-.749.547-.948.89-.199.346-.411 1.068.16 2.035.572.963 2.142 1.592 3.478 1.432 1.335-.155 3.335-.67 4.52-.979 1.287-.337 2.424-.971 2.572-1.98.147-1.008-1.534-2.295-1.534-2.295s-.812-.609-.91-.75c-.1-.139.099-.197.099-.197s.949-.229 1.357-.414c.404-.189 1.522-.646 3.353-1.219s5.608-1.248 5.608-1.248 2.084-.332 4.685-.543l.622-.702.485.625q.615-.037 1.243-.063c3.572-.129 5.344-.554 7.242-.979 1.897-.427 4.568-1.978 4.965-2.276.396-.295 1.229-.66 1.396-1.957.168-1.295-1.364-2.157-1.364-2.157s-1.218-.644-1.475-.93-.02-.562-.02-.562.689-1.485 2.896-2.354c2.205-.872 3.689-1.107 4.618-1.208.932-.099 1.245.237 1.374.396.128.157.128.485.021.821-.102.308-.444 1.038-.645 1.395-.197.356-.523 1.216-.316 1.622.208.405.843.593 1.662.445.821-.149 2.988-.761 4.888-1.553s5.073-2.345 5.073-2.345l.022-.012.086-.729.729.295c1.02-.562 2.764-1.58 4.01-2.631 1.871-1.573 3.699-3.225 4.166-3.639.465-.417.892-.752 1.307-.732s.732.317.988 1.434c.258 1.118.308 2.038.426 2.582.117.543.285 1.175.931 1.304s1.513-.434 1.838-.713c.33-.276.92-1.176.882-2.382 0 0 .068-1.604-.761-3.127 0 0-.351-.614-.479-.782-.088-.118-.155-.238-.01-.525.148-.286.467-.821 1.062-1.156.448-.256.88-.316 1.128-.396 0 0 .275-.067.626-.261l-.126-.412.289.316c.404-.239.652.045.652.045l-.392-.501.119-.484s-.304-.163-.685-.088c-.383.078-.42.362-1.014.458-.593.096-1.275.306-1.945 1.319-.67 1.011 0 2.271 0 2.271s.359.592.533.896c.172.306 1.066 2.215.037 3.608 0 0-.552.643-1.525.86-.86.19-.642-.816-.729-1.355 0 0-.129-2.281-1.237-3.588-.976-1.146-2.746.888-3.629 1.566-.822.629-3.228 3.112-6.684 4.925l-.51.892-.324-.472c-1.658.827-5.418 2.656-7.87 3.514 0 0-1.875.762-2.64.782 0 0-.17.006-.034-.179.133-.185.276-.322.507-.737.23-.418.646-1.357.646-2.327 0-.969-1.119-1.917-2.68-1.748-1.561.167-3.052.6-4.849 1.292-1.796.692-3.343 2.159-3.55 3.375-.209 1.216 1.105 1.92 1.105 1.92s1.484.751 1.674 1.157c.188.406.049.783.049.783s-.129.406-.783.782c-.649.377-2.42 1.287-2.42 1.287s-2.207 1.217-5.562 1.512c0 0-3.058.26-4.817.348q-.034.002-.069.003l-.541.53-.587-.449c-1.64.136-3.54.359-3.54.359s-4.29.609-8.219 1.822c-3.336 1.027-3.971 1.594-3.971 1.594s-.711.596-.118 1.453c0 0 .341.539 1.03 1.08.685.541 1.237 1.057 1.159 1.317-.08.265-.29.382-.29.382s-.961.856-4.894 1.518c0 0-2.531.488-3.31-.275-.778-.766-.435-1.279-.435-1.279s.052-.173.62-.527c0 0 .951-.596.647-1.727-.303-1.135-2.129-2.545-4.101-2.533 0 0-2.303.006-8.196.762q0-.001-.027.005l-.204.501-.605-.393c-.324.039-.713.076-1.114.107-1.012.07-2.477-.057-4.3-.596-1.824-.543-2.963-1.535-3.126-2.133-.114-.412.035-.996.035-.996s.343-1.316.128-2.401c-.22-1.083-.582-1.934-1.631-2.567-1.048-.632-1.643-.522-1.643-.522s-.939-.144-.904 1.446c.037 1.59.235 2.256.235 2.256s.181.562-.108.635c-.288.072-.74-.361-.74-.361s-1.021-.924-1.619-1.688l.048.066-.214.525s.067.115.266.375z" style="opacity:.31;fill:url(#x)"/><linearGradient id="y" x1="214.897" x2="306.501" y1="-410.882" y2="-410.882" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#A0A0A0"/><stop offset=".077" stop-color="#656767"/><stop offset="1" stop-color="#717375"/></linearGradient><path d="m91.075 11.742.183.846s-.563.313-1.678.613c-1.113.3-2.188.801-2.188.801s-.89.289-.551 1.013c.338.726.838 1.076.838 1.076s.711.69.736 1.213c.021.526-.199.765-.764 1.076-.563.313-1.075.375-1.075.375s-1.338.24-2.001-.387c-.663-.626-.787-1.663-.787-1.663s-.05-.876-1.148-1.251c-1.102-.375-2.453.425-2.453.425s-1.063.563-2.2 1.3c-1.14.738-3.291 1.64-4.642 2.114l-.152.699-.758-.382c-1.422.489-3.271 1.109-3.271 1.109s-2.512.926-4.164 1.152c-1.648.224-2.016-.014-2.238-.238-.228-.224.039-1.012.039-1.012s.674-1.376.348-2.09c-.324-.714-2.451-.9-2.486-.9-.04 0-2.318-.265-4.451.932-1.895 1.062-2.143 1.642-2.143 1.642s-.604.938.113 1.867c.807 1.051 1.879 1.146 1.879 1.146s1.021.079 1.258.38c.24.299.076.626.076.626s-.336.925-2.228 1.312c0 0-3.181.933-9.113 1.776l-.582.579c-3.743.47-8.143 1.363-10.555 1.989s-2.553 1.317-2.553 1.317c-.519.813.141 1.236.141 1.236s.829.283 1.017 1.19c.19.91-.783 1.629-.783 1.629s-1.159.972-2.898 1.269-2.396.35-3.429-.47c-.91-.721-.298-1.863.312-2.301.612-.438.909-.91.988-1.112.079-.204.032-.377.032-.377l-.58-.534c-2.005-1.33-9.883.063-9.883.063s0 .002 0 0l-1.341.289-.673-.435s-2.291.604-4.876.589c-2.712-.014-1.27-2.128-1.27-2.128s.638-1.118.75-1.764c0 0 .224-1.745-1.42-1.631a2.11 2.11 0 0 0-1.968 1.546s-.112.801-.089 1.392c.021.594-.002 1.847-.742 2.56-.737.713-1.529.495-1.529.495s-1.331-.582-1.595-.718c-.274-.142-.517-.151-.751-.066a.3.3 0 0 0-.057.029l-.175.75.025-.623c-.156.176-.271.42-.271.42l.088.327-.248.565q-.004.017-.006.035l.008.003s.087-.196.222-.357l.182-.369-.052.241a.3.3 0 0 1 .172-.074c.281-.017.629.158.629.158s1.135.611 1.642.716.875-.065 1.205-.292c.527-.365 1.143-1.121 1.4-1.839.229-.646.279-2.394.279-2.394l.004.014s0-.421-.011-.518c-.012-.098-.075-.553.204-.783.278-.234.459-.347 1.144-.364.68-.017.886.38.886.38s.233.325.233.536c0 .21-.068.34-.068.34s-.371.626-.5.934c-.13.307-.636 1.323-.489 2.177.148.852 1.479 1.251 1.479 1.251s1.062.25 2.575.027l3.12-.503.543-.624.218.474a45 45 0 0 1 3.583-.511c2.326-.228 4.787-.262 5.821-.132 0 0 .484.061.405.234-.062.136-.421.415-.421.415s-.135.081-.654.667-.671 1.155-.693 1.661c-.024.505.516 1.995 2.415 2.394 1.901.397 4.077-.341 4.077-.341s1.427-.314 2.786-1.674c1.41-1.411.012-3.108.012-3.108s-.22-.304-.647-.442c0 0-.187-.05-.079-.17s.37-.647 1.37-.905c1-.257 3.977-1.198 11.065-2.135l.274-.617.874.459c2.708-.373 4.551-.694 7.827-1.454 0 0 3.04-.539 3.675-1.651.368-.65 1.032-1.539-.045-2.434 0 0-.125-.161-.791-.312s-1.179-.252-1.738-.653c-.563-.403-.551-.869-.551-.869s-.047-.445.862-.958c0 0 .851-.623 2.54-1.158 1.691-.533 3.648-.296 3.648-.296s.82.089.685.643c-.14.555-.604 1.482-.622 1.959-.021.474.012 1.027.938 1.414.931.386 2.267.266 2.267.266s1.386-.069 3.647-.801c2.265-.731 4.594-1.573 4.594-1.573l-.094-.483.971.173c.591-.22 1.406-.539 2.285-.936 1.801-.81 2.656-1.488 3.48-1.958 0 0 1.815-1.118 2.887-1.088 0 0 .25-.009.272.32s.104.814.218 1.096a3.22 3.22 0 0 0 2.729 2.048c1.993.228 2.846-1.118 2.846-1.118s.683-1.049-.493-2.296c0 0-.961-1.028-.99-1.107 0 0-.104-.155.168-.233.269-.078 3.152-.884 4.268-1.398l.036-.015-.271-.485.535.365c.202-.101.449-.246.544-.395.171-.271-.054-.797-.054-.797l.006-.007a48 48 0 0 0-.4-.546l-.606-.256-.06.033z" style="opacity:.34;fill:url(#y)"/><path d="m8.12 16.324-.291.435c.134-.023.244-.056.244-.056s.404-.066 1.112.12c.917.244 2.067-.496 2.067-.496s.872-.523 1.274-1.381l.361-1.005s.291-.972 1.105-1.281c0 0 .317-.171.831-.177.513-.005.392.354.392.354s-.056.233-.586.912c-.529.677-.671 1.196-.671 1.196s-.318.722.193.957c0 0 .24.141.939-.091.7-.233 3.02-.843 4.438-1.06l.993-.506-.602-.444c-2.388.442-4.168.995-4.775 1.226-.609.23-.62.082-.62.082-.211-.248.435-1.022.435-1.022s.655-.894.913-1.715c.259-.82-.892-.707-.892-.707-.758.121-1.303.48-1.93 1.236-.486.586-.782 1.389-.893 1.814-.071.267-.193.515-.193.515s-.091.165-.45.322c-.416.182-1.228.396-1.228.396s-.54.045-.931-.15c-.24-.118-.901.05-.901.05l.091-.504-.082-.032-.683.383q-.172.284-.341.569c-.063.146-.179.475.044.51.05.008.113.008.164.008zM13.295 9.19s.342-.271.342-.026c0 .248-.333.69-.333.69s-.107.134-.172.134c-.064-.001.018-.472.163-.798M10.595 12.501s-.388.46 0 .52l.838-.828c-.037-.037-.054-.055-.157-.112.001 0-.524.262-.681.42" style="opacity:.1;fill:#232323"/><path d="M77.807 85.745s-1.75.806-3.396 1.603c-1.647.803-2.25 1.14-2.25 1.14s-.088.049-.031.082c.056.028-.008.063-.008.063-.847.409-2.703 1.07-2.703 1.07s-.167.057-.157.02c.006-.041.199-.105.199-.105s.381-.146.283-.217-1.21.305-1.21.305-1.949.621-2.894.887c-.941.269-2.75.735-2.75.735-1.201.298-3.75.798-4.315.901-.562.104-.417.064-.417.064s.492-.189-.411-.226c-1.146-.05-2.362.112-3.612.288-1.25.18-1.178.324-1.178.324s-.04.154.708.14c.752-.019.534.046.534.046-1.396.202-4.2.238-4.2.238l.005.01q.685.02 1.376.018c.608 0 1.218-.01 1.822-.031.241-.021 1.483-.15 1.925-.244.486-.105-.093-.105-.093-.105l-.74-.023s-.776-.026-.052-.158c.729-.133 1.834-.192 2.388-.252.83-.094.541.105.541.105l-.04.023s.014.094.528.066c.515-.024 4.721-.804 7.069-1.487 2.347-.688 4.102-1.255 4.102-1.255s.157-.055.066.025c-.094.078-.463.2-.463.2s-.595.3.844-.108q.1-.03.197-.06a51 51 0 0 0 3.635-1.543c.029-.028.131-.146-.021-.101-.172.056 0-.065.187-.131.184-.066 2.267-1.162 3.363-1.608l.002.003c.394-.227.781-.455 1.17-.691z" style="opacity:.3;fill:#fff"/><linearGradient id="z" x1="217.656" x2="217.656" y1="-436.751" y2="-436.751" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset=".078" stop-color="#F4F4F4"/><stop offset=".381" stop-color="#CECECE"/><stop offset=".54" stop-color="#BFBFBF"/><stop offset=".836" stop-color="#7C7C7C"/><stop offset=".9" stop-color="#A8A8A8"/><stop offset=".909" stop-color="#9A9A9A"/><stop offset=".933" stop-color="#7D7D7D"/><stop offset=".956" stop-color="#686868"/><stop offset=".979" stop-color="#5B5B5B"/><stop offset="1" stop-color="#575757"/></linearGradient><path d="M3.893 50.249" style="fill:url(#z)"/><linearGradient id="A" x1="214.326" x2="322.872" y1="-436.511" y2="-424.485" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset=".078" stop-color="#F4F4F4"/><stop offset=".381" stop-color="#CECECE"/><stop offset=".54" stop-color="#BFBFBF"/><stop offset=".836" stop-color="#7C7C7C"/><stop offset=".9" stop-color="#A8A8A8"/><stop offset=".909" stop-color="#9A9A9A"/><stop offset=".933" stop-color="#7D7D7D"/><stop offset=".956" stop-color="#686868"/><stop offset=".979" stop-color="#5B5B5B"/><stop offset="1" stop-color="#575757"/></linearGradient><path d="m1.193 48.543.107.98c.236.285.579.675 1.067 1.181 1.084 1.121 1.428.416 1.428.416s.072-.201.092-.586c-.042.216-.209.403-.788-.056-.298-.237-.688-.627-1.076-1.049a14 14 0 0 1-1.021-1.117l.048.065-.213.526s.069.115.268.376z" style="fill:url(#A)"/><linearGradient id="B" x1="213.889" x2="336.882" y1="-436.477" y2="-422.851" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset=".078" stop-color="#F4F4F4"/><stop offset=".381" stop-color="#CECECE"/><stop offset=".54" stop-color="#BFBFBF"/><stop offset=".836" stop-color="#7C7C7C"/><stop offset=".9" stop-color="#A8A8A8"/><stop offset=".909" stop-color="#9A9A9A"/><stop offset=".933" stop-color="#7D7D7D"/><stop offset=".956" stop-color="#686868"/><stop offset=".979" stop-color="#5B5B5B"/><stop offset="1" stop-color="#575757"/></linearGradient><path d="m3.741 49.133-.02-.078q.02.132.043.272s.094.394.12.753a5 5 0 0 0-.143-.947" style="fill:url(#B)"/><linearGradient id="C" x1="411.254" x2="507.236" y1="557.002" y2="537.628" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".418" stop-color="#FFF"/><stop offset=".626" stop-color="#F8F9F9"/><stop offset="1" stop-color="#BFC0C2"/></linearGradient><path d="m99.696 28.566.29.316c.406-.238.654.045.654.045l-.386-.494c-.383.082-1.093.256-2.233.61 0 0-1.353.594-1.59 1.532-.016.332.049.641.116.876.753 1.429.913 1.666.913 1.666.499 1.091.422 1.993.25 2.824-.188.921-1.188 1.668-1.794 1.842-.608.171-.953 0-1.14-.483-.188-.485-.157-.845-.438-2.34-.28-1.499-.653-2.2-1.216-2.372-.563-.173-1.313.468-1.749.811-.438.344-2.417 2.152-2.417 2.152s-2.324 2.091-5.743 4.026c-3.417 1.935-7.69 3.418-7.69 3.418s-2.842 1.092-3.525.998c-.688-.093-.516-.718-.297-1.076.219-.36.516-.937.766-1.545.313-.756.201-1.654-.359-1.967-.562-.311-1.248-.468-3.523.094s-3.197 1.076-3.838 1.451c-.643.376-1.576 1.233-1.842 1.716-.266.484-.563.983.126 1.576.688.594.763.485 1.56 1.046.797.562.922.64.969 1.466.045.827-.766 1.341-.766 1.341s-3.123 2.082-6.602 2.777c-2.34.469-6.833.639-6.833.639s-1.327-.045-5.384.547c-4.056.594-6.787 1.514-7.738 1.856s-2.34.81-3.136 1.17c-.795.358-.375.89-.203 1.015.172.123 1.185 1.074 1.498 1.354.312.282 1.466 1.279.108 2.108-1.356.826-3.603 1.264-3.603 1.264s-3.121.654-4.119.234c-1.001-.422-1.2-.778-1.452-1.358-.313-.718-.016-1.263.794-1.78.77-.486.469-1.199.469-1.199-.983-1.9-3.058-2.058-4.774-1.936-2.72.198-5.358.471-7.425.734-3.059.39-4.541-.063-5.992-.516-1.452-.453-2.997-1.529-3.154-2.498a1.3 1.3 0 0 1-.042-.307c-.078-.758.074-1.146.184-1.784.108-.625-.043-1.532-.084-1.758l-.023-.085c-.507-1.304-1.725-1.903-2.668-2.058-.953-.157-.983.857-.983.857l-.006.04c.078-.208.222-.315.444-.31.577.02 2.259.361 2.781 1.754 0 0 .218.648.019 1.479s-.162 1.571-.019 2.295c.145.725.759 1.408 1.465 1.969.704.562 2.745 1.535 4.734 1.66 1.814.117 2.483.037 2.587.023l.759-.768.135.666c.81-.088 2.115-.229 3.619-.394 2.529-.271 4.227-.541 5.8-.306 1.572.232 2.078 1.463 2.078 1.463s.107.313-.253.542c-.349.226-.75.548-.947.891-.2.345-.411 1.066.159 2.033.572.965 2.142 1.595 3.478 1.435 1.336-.158 3.336-.672 4.521-.98 1.286-.336 2.424-.969 2.572-1.979.148-1.009-1.534-2.297-1.534-2.297s-.81-.611-.909-.75c-.1-.14.099-.197.099-.197s.95-.229 1.356-.416c.403-.19 1.523-.644 3.353-1.217 1.831-.572 5.609-1.248 5.609-1.248s2.09-.332 4.694-.543l.612-.705.493.627a68 68 0 0 1 1.235-.061c3.572-.129 5.343-.555 7.24-.979 1.897-.426 4.569-1.979 4.965-2.276s1.229-.662 1.395-1.958c.17-1.294-1.363-2.157-1.363-2.157s-1.218-.643-1.476-.929c-.256-.288-.019-.562-.019-.562s.689-1.485 2.896-2.355c2.207-.872 3.69-1.106 4.619-1.207.931-.099 1.247.237 1.375.395s.128.485.021.821c-.101.308-.443 1.039-.644 1.396-.199.356-.522 1.216-.317 1.622.211.405.842.592 1.662.444.822-.147 2.987-.761 4.889-1.553 1.897-.793 5.074-2.344 5.074-2.344s.01-.005.021-.013l.086-.729.729.296c1.021-.562 2.764-1.582 4.01-2.63 1.871-1.574 3.699-3.225 4.166-3.641.465-.415.89-.751 1.305-.732.416.021.734.318.99 1.434.258 1.119.306 2.038.426 2.583.117.542.285 1.176.929 1.305.644.128 1.513-.436 1.841-.713.326-.277.918-1.176.879-2.383 0 0 .068-1.605-.762-3.127 0 0-.348-.614-.477-.782-.088-.119-.155-.238-.008-.523.146-.288.465-.821 1.059-1.157.449-.256.881-.316 1.128-.396 0 0 .28-.069.636-.266z" style="fill:url(#C)"/><path d="m1.547 32.696-.05.239a.3.3 0 0 1 .17-.072c.281-.018.629.158.629.158s1.135.61 1.642.716.875-.065 1.205-.292a3.8 3.8 0 0 0 .763-.737c-.29.29-.725.548-1.365.595 0 0-.571-.049-1.419-.587-.846-.537-1.327-.231-1.729.105l-.249.564-.006.036.009.001s.087-.192.217-.352z" style="fill:#fff"/><path d="M6.387 31.961q.09-.18.155-.354c.05-.14.09-.334.125-.55-.096.44-.223.73-.223.73s-.016.066-.057.174M6.807 28.654c-.038.439-.038.987-.038 1.493.04-.509.052-.935.052-.935l.004.014s0-.421-.011-.518z" style="opacity:.73;fill:#fff"/><linearGradient id="D" x1="413.514" x2="417.999" y1="516.412" y2="516.412" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#E2E3E4"/><stop offset=".505" stop-color="#FFF"/></linearGradient><path d="m8.12 16.324-.291.435c.087-.014.089-.007.244-.056 0 0 .404-.066 1.112.12.917.244 2.067-.496 2.067-.496s.272-.164.583-.458c-.4.24-1.385.762-2.132.585-.961-.229-.994-.017-1.336-.049-.292-.028-.292-.11-.275-.314.002-.032.023-.054.03-.092.05-.261.339-.689.339-.689l-.684.383q-.171.283-.34.569c-.063.146-.179.475.044.509q.083.013.163.009z" style="fill:url(#D)"/><path d="M17.019 15.036c-1.027.278-1.972.734-2.494.604-.438-.109-.084-.76.042-.965.069-.146.167-.292.249-.406.31-.506.833-1.351.833-1.351v-.002q.025-.049.049-.102c.067-.18.12-.537-.472-.597-.799-.082-1.613.619-1.613.619s-.547.301-.838 1.417l.112-.313s.291-.973 1.105-1.281c0 0 .317-.171.831-.177.513-.005.392.354.392.354s-.056.233-.586.912c-.529.677-.671 1.195-.671 1.195s-.319.723.193.957c0 0 .238.141.939-.091.7-.233 3.02-.843 4.438-1.06l.993-.506c-.672.056-2.509.526-3.502.793" style="fill:#fff"/><path d="M90.578 74.217q.008-.006.014-.013zM90.821 73.951l.003-.004zM90.738 74.042l.011-.013z" style="opacity:.1;fill:#231f20"/><path d="m87.9 76.68-.164.174c-.646.716-.969 1.007-.969 1.007l-.242.269q-.003.01-.012.014a.2.2 0 0 0 .041.004s.229-.002.588-.219a.5.5 0 0 1-.181.07c-.177.012.431-.538.431-.538s.588-.626.967-1.125c.382-.497.138-.468.138-.468s-.087-.021-.397.125c.025.025.168.23-.2.687" style="opacity:.25;fill:#231f20"/><path d="M90.657 74.133a.04.04 0 0 1 .013-.017q-.007.009-.013.017" style="opacity:.1;fill:#231f20"/><path d="M72.945 81.21s2.215-.931 3.402-.79c0 0 .611.059-.062.711-.672.652-.892 1.168.396.752l.244-.086c-.504.143-.734.143-.658.033.127-.188.461-.461.461-.461s.399-.4.399-.801c0 0 .128-.588-1.604-.225-1.01.209-1.969.59-2.588.867z" style="opacity:.22;fill:#231f20"/><path d="m72.234 81.555-.004.002zM88.057 76.014q-.02.012-.043.021.021-.011.043-.021" style="opacity:.1;fill:#231f20"/><path d="M78.305 81.299c1.448-.521 3.93-1.854 5.023-2.492-1.096.635-3.598 1.91-5.023 2.492" style="opacity:.28;fill:#231f20"/><path d="M87.512 76.325q.04-.024.08-.049zM91.434 73.281q.016-.017.023-.027c-.006.01-.016.016-.023.027M91.521 73.188l.029-.032q-.016.015-.029.032M90.9 73.863q.004-.008.012-.016-.008.009-.012.016M71.246 82.088c-.014.008-.023.018-.036.022q.016-.009.036-.022M91.346 73.375l.021-.021q-.01.009-.021.021M91.077 73.669l.013-.015q-.004.007-.013.015M91.251 73.479q.011-.008.021-.021zM90.987 73.768l.016-.021zM91.161 73.578l.017-.02zM71.816 81.764l-.026.017q.015-.01.026-.017M72.044 81.646q-.009.005-.019.009zM71.305 82.055l-.031.021c.009-.009.02-.013.031-.021M71.969 81.684l-.021.014q.008-.009.021-.014M72.109 81.613q-.007.006-.016.01a.04.04 0 0 0 .016-.01M72.008 81.665l-.021.011zM72.206 81.566l-.007.004zM72.148 81.594l-.024.015q.015-.008.024-.015M71.928 81.707a.1.1 0 0 0-.027.016q.011-.011.027-.016M72.193 81.575l-.014.004q.008-.003.014-.004M72.172 81.585l-.015.007q.01-.005.015-.007M72.079 81.631l-.019.006zM71.866 81.739a.1.1 0 0 0-.027.013q.013-.009.027-.013M71.555 81.906a.4.4 0 0 1-.052.029c.018-.011.036-.017.052-.029M72.219 81.561l-.002.004zM71.421 81.986q-.017.007-.03.02c.007-.01.019-.014.03-.02M71.363 82.02q-.017.008-.032.021a.2.2 0 0 1 .032-.021M71.482 81.948c-.014.006-.023.015-.036.021zM91.708 72.984q.018-.021.04-.042-.02.022-.04.042M71.665 81.846l-.028.018zM71.609 81.875q-.016.011-.03.02zM92.443 72.197a1 1 0 0 0-.055.061q.026-.03.055-.061M92.359 72.287q-.031.032-.061.066zM92.501 72.135c-.011.015-.021.023-.028.033q.011-.015.028-.033M91.786 72.899l.062-.063zM92.273 72.379q-.019.022-.041.045.02-.022.041-.045M92.762 71.858l-.002.001zM92.703 71.919l-.014.017q.007-.01.014-.017M87.938 76.074c-.017.008-.027.016-.043.023zM92.648 71.98l-.029.029zM48.204 91.026l-.003.002zM48.073 91.03h-.021zM48.136 91.028l-.02.002q.01 0 .02-.002M48.005 91.032h-.012zM47.94 91.035h-.015zM87.869 76.111c-.014.006-.021.015-.039.021.018-.006.027-.015.039-.021M87.807 76.146q-.019.015-.041.021a.1.1 0 0 0 .041-.021M87.951 76.067c.02-.011.035-.021.054-.027-.019.007-.034.017-.054.027M87.719 77.52s-.082.064-.193.147c.066-.046.138-.101.193-.147M92.205 72.452q-.031.034-.064.067a1 1 0 0 0 .064-.067M28.05 87.006q-.028-.012-.056-.021.028.01.056.021M71.051 82.217c-.013.008-.021.017-.037.021q.019-.012.037-.021M45.854 89.871c-.024 0-.049-.004-.074-.004.026 0 .051.004.074.004M27.555 86.844q.057.016.119.037-.062-.02-.119-.037M27.862 86.941l-.123-.04q.06.02.123.04M91.88 72.799l.04-.043zM28.058 87.006c.04.016.079.026.116.041zM91.977 72.695l.041-.044q-.024.023-.041.044M92.057 72.612l.061-.062q-.033.03-.061.062M27.991 86.985a.4.4 0 0 0-.062-.022q.031.01.062.022M71.133 82.162c.021-.013.037-.021.055-.036q-.027.018-.055.036M46.361 89.926q-.025-.002-.053-.008.027.006.053.008M71.122 82.17q-.028.017-.049.032zM46.439 89.939l-.049-.008q.025.006.049.008M46.513 89.953q-.024-.006-.047-.011.023.005.047.011M46.096 89.891q-.047-.003-.1-.01.053.006.1.01M46.278 89.913l-.061-.006zM46.19 89.904l-.084-.012q.044.005.084.012M45.971 89.881q-.037-.006-.079-.009.041.004.079.009M27.926 86.961a.3.3 0 0 1-.058-.019q.03.015.058.019M47.395 90.975q.002.005.004.004-.002.001-.004-.004M47.375 90.969h.003zM47.465 90.996l.006.001zM47.442 90.988l.002.002zM46.589 89.967q-.029-.005-.054-.013.026.009.054.013M46.764 90.012 46.731 90q.017.008.033.012M49.049 90.953l-.032.004zM46.659 89.984l-.061-.014zM47.767 91.028h.006zM47.821 91.03h.013zM45.214 89.855h.139zM47.716 91.026q.007 0 .013.002-.004-.002-.013-.002" style="opacity:.1;fill:#231f20"/><path d="M46.772 90.014s.158.021.059.338c-.1.313.06.451.475.594l.023.006h.002c-.079-.04-.074-.08-.074-.08s-.01-.078.078-.216c.087-.136.009-.369-.293-.536.002-.002-.075-.05-.27-.106" style="opacity:.36;fill:#231f20"/><path d="M47.869 91.032h.018zM47.495 91.002h.004zM47.677 91.024h.01zM47.529 91.006h.002zM47.559 91.01q.003.002.008.002zM47.594 91.016h.008zM46.711 89.997l-.043-.011zM28.776 87.27q-.011-.004-.024-.012.014.008.024.012M28.681 87.23c-.008-.004-.021-.006-.03-.01q.015.006.03.01M45.66 89.862c.026 0 .052.005.074.005q-.035-.002-.074-.005M28.797 87.275l-.021-.008zM27.38 86.794q.056.017.112.031-.058-.016-.112-.031M28.814 87.284q-.004-.003-.012-.007.008.004.012.007M28.64 87.219l-.03-.014z" style="opacity:.1;fill:#231f20"/><path d="M27.687 87.239a.2.2 0 0 1-.03-.032c-.263-.197-.343-.418-.343-.418l.009-.011a.2.2 0 0 0 .052.014c-.291-.075-.5-.104-.479-.018.015.061.131.153.269.245q.26.141.522.279z" style="opacity:.38;fill:#231f20"/><path d="m28.716 87.245-.027-.01zM28.602 87.202l-.042-.015zM28.841 87.293q.001 0-.022-.009zM28.232 87.068c-.018-.006-.031-.014-.047-.018q.023.009.047.018M45.534 89.858l.081.002q-.04-.002-.081-.002M45.397 89.855h.089zM28.348 87.11l-.106-.039zM28.506 87.168l-.037-.015q.019.007.037.015M28.557 87.186q-.018-.008-.04-.017zM70.02 84.389h.006zM70.789 84.087q-.002.005-.004.005zM70.762 84.102l-.006.004zM70.732 84.116l-.006.004zM70.697 84.133q-.002 0-.002.002 0-.002.002-.002M70.417 84.249l.011-.002zM70.389 84.262h.002zM70.316 84.289q.005-.003.009-.003-.006 0-.009.003M70.285 84.299q.004 0 .009-.004-.005.004-.009.004M70.354 84.275l.002-.002q-.001 0-.002.002M48.946 90.965c-.011 0-.022.004-.033.004.011 0 .022-.004.033-.004M70.256 84.311q.003 0 .006-.002-.003.002-.006.002M70.78 82.41l.042-.032zM70.956 82.279l.033-.023zM70.898 82.321q.017-.014.033-.022z" style="opacity:.1;fill:#231f20"/><path d="M70.903 83.794c.2.064.106.171-.087.278l.089-.033s.793-.436.458-.633c-.338-.198-1.129-.275-.613-.969l.02-.02c-.442.344-.756.727-.498 1.021-.002.005.115.191.631.356" style="opacity:.19;fill:#231f20"/><path d="m70.566 84.191-.008.003zM70.631 84.163l-.006.003zM70.598 84.176q-.002.004-.006.004.004 0 .006-.004M70.493 84.223l-.007.002zM70.459 84.233l-.008.004zM70.842 82.363l.034-.025zM48.293 91.024h-.023zM48.444 91.014h-.017zM48.369 91.02h-.027z" style="opacity:.1;fill:#231f20"/><path d="M50.023 89.904s.362.225 1.673.285c0 0 .45 0 .468.035.016.028.036.056-.068.102.06-.021.793-.254.476-.391-.04-.019-.063-.024-.074-.028q-.01 0-.019-.003-.013-.002-.021-.004l-.013-.001q-.01-.003-.021-.005-.006 0-.015-.002l-.017-.002-.017-.004h-.015q-.012-.002-.018-.004-.008 0-.016-.002h-.018q-.005-.005-.01-.004l-.021-.003-.008-.001-.028-.002-.004-.002h-.021q-.006-.002-.012-.002h-.028q-.011-.002-.019-.002h-.009l-.018-.002q-.008-.001-.012-.003h-.027c-.039-.004-.08-.004-.128-.009h-.004l-.022-.002h-.032q-.007-.002-.014-.002l-.02-.002q-.008 0-.016-.002h-.019l-.028-.004h-.019l-.028-.002-.016-.002-.024-.001-.021-.001-.026-.004-.02-.001-.026-.003q-.011 0-.023-.003l-.027-.002q-.01-.002-.021-.002-.018-.001-.035-.005h-.02a.3.3 0 0 0-.057-.006c-.142-.019-.271-.033-.378-.055l-.187-.025s-.47-.014-.653-.316c-.118-.197.457-.318.457-.318s.956-.193 1.917-.321c0 0-2.542.294-2.777.626-.211.34.199.507.199.507" style="opacity:.25;fill:#231f20"/><path d="M69.989 84.399h.004zM48.839 90.979l-.021.002zM48.727 90.988l-.026.002zM70.139 84.35q.005 0 .01-.004-.005.004-.01.004M70.116 84.359q.003-.002.007-.002-.004 0-.007.002M70.193 84.332l.004-.002zM70.068 84.374q.004 0 .007-.002-.004.002-.007.002M70.163 84.342q.006 0 .011-.005-.006.005-.011.005M69.996 84.395H70zM70.004 84.395l.008-.002zM72.23 81.559h-.004zM70.053 84.379h.004zM70.036 84.385q.002 0 .004-.002-.002.002-.004.002" style="opacity:.1;fill:#231f20"/><linearGradient id="E" x1="414.245" x2="509.005" y1="568.266" y2="545.727" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".418" stop-color="#FFF"/><stop offset=".626" stop-color="#F8F9F9"/><stop offset=".951" stop-color="#B2B4B6"/></linearGradient><path d="m7.61 68.141-.139-.131-.021.011z" style="fill:url(#E)"/><linearGradient id="F" x1="416.699" x2="511.823" y1="578.564" y2="555.94" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".418" stop-color="#FFF"/><stop offset=".626" stop-color="#F8F9F9"/><stop offset=".951" stop-color="#B2B4B6"/></linearGradient><path d="m90.412 59.954.689.108c1.976-1.573 3.869-3.571 3.869-3.571s1.258-1.261 1.889-2.356c.22-.381.281-.356.271-.177.023-.09.103-.456-.038-.714-.094-.176-.381.288-.83.861 0 0-2.013 2.926-5.798 5.816-3.786 2.891-4.776 3.771-8.083 5.655 0 0-2.309 1.021-3.914.669-1.246-.271 0-1.547.271-2.699.271-1.146.063-1.58-.225-1.807-.287-.225-.91-.385-2.142-.109 0 0-4.709 1.264-6.819 3.307-1.918 1.854.478 2.619 1.021 2.875 0 0 .78.338.719.672-.063.336-.496.623-.733.783-.239.16-3.338 1.977-8.324 2.764-4.039.641-3.26.255-7.143.654-3.881.399-4.952.72-8.068 1.453s-4.945 1.537-5.352 2.349c-.336.671.479 1.103.991 1.407.511.304 1.423.781 1.119 1.293s-1.631 1.277-4.874 1.391-4.569-.336-5.16-1.04c-.548-.649-.08-1.323.096-1.946 0 0 .382-.814.16-1.215-.224-.398-.737-.494-1.278-.559-.544-.064-3.245-.158-5.337-.271-2.372-.127-5.208-.211-8.611-.928 0 0-2.237-.441-3.69-1.262a3 3 0 0 1-.25-.156.64.64 0 0 1-.25-.209c-.41-.432-.047-.748-.186-1.168-.121-.359-.352-.878-.896-1.501a22 22 0 0 0-.72-.713c-.08-.069-.165-.144-.254-.214-1.276-1.037-1.422-1.149-1.964-1.166-.542-.019-.235.895-.129 1.246.041.136.139.328.242.508-.2-.364-.336-.729-.257-.915.144-.337.309-.308.309-.308s.133-.053.595.297c.463.35 1.499 1.078 2.012 1.705.512.625.481 1.18.481 1.18s-.103.563.451 1.17c.555.604 1.733 1.714 5.859 2.349.021.005.041.005.06.009l.193-.549.568.663.016.002c3.592.519 5.544.563 5.544.563s4.709.164 5.982.164c1.271 0 1.035.664 1.035.664s-.072.361-.225.647c-.153.288-.524 1.365-.144 1.94 0 0 .585 1.426 4.382 1.527 0 0 3.324.267 5.643-.688 2.317-.954.224-2.277.224-2.277s-.794-.483-1.129-.737c-.308-.233-.184-.48-.122-.646.061-.163.297-.355.564-.492.265-.134 1.241-.652 5.365-1.722 4.124-1.067 6.587-1.183 6.587-1.183s.021-.004.062-.006l.334-.656.845.559a77 77 0 0 1 2.537-.17c1.691-.083 4.341-.475 5.879-.811 1.539-.342 3.869-1.059 5.591-1.951 1.724-.891 1.808-1.519 1.808-1.519s.328-.472-.391-.995c-.719-.521-1.037-.38-1.672-1.024-.638-.646.553-1.619.553-1.619s.615-.865 4.021-2.177c3.408-1.313 3.98-.873 4.156-.728.175.142.195.613.123.933-.072.316-.494 1.455-.721 2.055-.227.592-.316 1.402.604 1.6.924.193 2.215-.009 3.427-.443 2.893-1.033 3.757-2.295 8.535-5.764l.029-.023z" style="opacity:.83;fill:url(#F)"/><linearGradient id="G" x1="415.474" x2="510.587" y1="573.42" y2="550.798" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".418" stop-color="#FFF"/><stop offset=".626" stop-color="#F8F9F9"/><stop offset=".951" stop-color="#B2B4B6"/></linearGradient><path d="M100.895 47.596c-.635 1.186-1.164 2.608-1.443 3.5-.045.213-.061.33-.061.33s-.119.654-.054 1.036c.028.161.069.279.106.375l.055.134q.03.068.033.111c.007.082-.044.614-.27 1.23v.002a4 4 0 0 1-.24.539c-.024.05-.053.095-.074.139-.458.814-1.098 1.457-1.604 1.532-.324.049-.484-.117-.557-.386.014.369.086.738.289.963.406.441 1.563-.795 1.563-.795s.688-.789.965-2.062c.406-1.875.187-2.248.187-2.248s-.247-.389-.093-.853c.152-.461 1.156-3.047 1.979-4.01l.502-.562.002-.029-.211-.521q-.195.197-.385.454c-.179.288-.406.654-.689 1.121" style="fill:url(#G)"/><linearGradient id="H" x1="414.775" x2="509.87" y1="570.479" y2="547.861" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".418" stop-color="#FFF"/><stop offset=".626" stop-color="#F8F9F9"/><stop offset=".951" stop-color="#B2B4B6"/></linearGradient><path d="M10.564 70.807a5 5 0 0 1-.469-.356c-.133-.112-.641-.585-1.18-1.086-.212-.194-.411-.382-.589-.55-.277-.262-.524-.493-.688-.646l.107.358.052.089c.183.29.854 1.264 2.153 2.277 1.549 1.213 1.559.729 1.559.729s.062-.4-.296-.84a4 4 0 0 1-.202-.27v.002c0 .002 1.012 1.484-.447.293" style="fill:url(#H)"/><linearGradient id="I" x1="414.915" x2="510.04" y1="571.066" y2="548.442" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".418" stop-color="#FFF"/><stop offset=".626" stop-color="#F8F9F9"/><stop offset=".951" stop-color="#B2B4B6"/></linearGradient><path d="M10.678 69.98" style="fill:url(#I)"/><linearGradient id="J" x1="416.103" x2="511.229" y1="576.065" y2="553.441" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#EDEDEE"/><stop offset=".418" stop-color="#FFF"/><stop offset=".626" stop-color="#F8F9F9"/><stop offset=".951" stop-color="#B2B4B6"/></linearGradient><path d="M96.887 55.023s.227-.76.243-1.066l-.005.021s-.513 1.443-.333 2.16c-.021-.559.095-1.115.095-1.115" style="fill:url(#J)"/><path d="m63.301 4.417.728.072c1.426-.402 2.643-.772 2.643-.772s1.265-.41 1.901-.637c.635-.226 1.09-.313 1.654-.409.565-.096 1.311-.14 1.709-.131.4.007.531.122.531.122s.166.131.244.27c.077.138.74 1.891 2.973 2.005 2.233.112 2.263-1.096 2.065-1.464-.226-.427-.896-.863-.896-.863s-.899-.575-1.092-.847c-.191-.27.034-.357.104-.375.065-.017 2.435-.497 2.729-.609l.021-.021-.562-.171s-.119.134-.789.313-1.235.246-1.742.313c-.506.066-.506.239-.506.239l-.086.136c-.025.075-.067.321.375.642.528.387 1.172.75 1.438 1.04s.586.783.012 1.137a1.7 1.7 0 0 1-.778.264q.001.012 0 .012c-.248.021-.457.03-.638.03l-.155.009-.017-.013c-.506-.024-.746-.142-1.067-.302-.442-.223-.758-.73-.92-1.087s-.521-.662-.521-.662c-.588-.336-1.695-.343-2.813-.15-1.115.193-2.656.707-2.925.812a34 34 0 0 1-2.307.73c-.693.178-1.222.357-1.646.47-.427.111-3.432 1.005-4.556 1.339-1.126.334-1.849.46-1.849.46-1.688.172-2.193-.134-2.193-.134-.296-.124-.261-.526-.261-.526l.009-1.147s-.027-.433-.357-.611c-.328-.179-.779-.252-1.593-.29-.811-.038-1.683.044-2.093.134-.408.09-1.189.313-1.764.952-.572.641-.481 1.139-.481 1.139l.01.201c.154.245.416.524.862.739 1.015.485-1.137 1.342-1.137 1.342-.479.208-1.191.478-2.208.777-2.21.647-3.684.774-3.684.774l.679.254S47.82 8.907 49.5 7.307c0 0 .625-.293.021-.88-.606-.585-.898-.761-.898-.761s-.41-.223.02-.772a2.7 2.7 0 0 1 1.352-.933c.428-.135 1.754-.249 2.925-.093 0 0 .491.042.457.407-.032.365-.087.873-.077 1.028.01.157.025.515.399.845.379.332 1.098.453 1.098.453s1.257.228 2.845-.218c1.586-.444 3.65-1.141 5.438-1.629z" style="opacity:.1;fill:#232323"/><linearGradient id="K" x1="412.615" x2="501.587" y1="535.399" y2="514.885" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#FFF"/><stop offset=".654" stop-color="#FFF"/><stop offset="1" stop-color="#CBCCCE"/></linearGradient><path d="m91.596 12.992.271.486-.034.014c-1.114.515-3.999 1.32-4.271 1.398-.271.08-.166.234-.166.234.029.078.988 1.106.988 1.106 1.178 1.249.494 2.296.494 2.296s-.852 1.347-2.844 1.12a3.23 3.23 0 0 1-2.729-2.049c-.111-.282-.197-.768-.22-1.095-.022-.33-.272-.32-.272-.32-1.069-.03-2.887 1.089-2.887 1.089-.824.47-1.682 1.147-3.479 1.958-.879.396-1.694.716-2.287.936l-.967-.173.091.482-.063.021s-2.268.822-4.529 1.553c-2.268.732-3.65.8-3.65.8s-1.336.12-2.266-.266-.959-.94-.939-1.415.483-1.404.623-1.958c.139-.555-.683-.644-.683-.644s-1.958-.236-3.65.296c-1.69.535-2.54 1.159-2.54 1.159-.91.512-.863.957-.863.957s-.012.467.551.869 1.072.505 1.736.654c.668.149.791.311.791.311 1.08.894.416 1.785.047 2.434-.631 1.113-3.674 1.653-3.674 1.653-3.276.758-5.12 1.08-7.827 1.452l-.876-.46-.276.615c-7.089.936-10.065 1.877-11.065 2.135s-1.261.784-1.369.904.079.171.079.171c.427.137.647.442.647.442s1.399 1.697-.012 3.108c-1.359 1.36-2.785 1.674-2.785 1.674s-2.177.737-4.077.341c-1.899-.399-2.439-1.889-2.416-2.395.024-.505.176-1.075.694-1.661.517-.585.654-.667.654-.667s.358-.279.421-.415c.079-.172-.404-.233-.404-.233-1.034-.13-3.496-.097-5.822.131-1.439.14-2.769.374-3.578.518l-.223-.48-.543.625-3.12.504c-1.514.222-2.576-.028-2.576-.028s-1.331-.397-1.479-1.252c-.147-.852.359-1.87.49-2.177.13-.307.5-.934.5-.934s.068-.13.068-.34-.233-.536-.233-.536-.205-.396-.886-.38c-.682.018-.866.131-1.144.364a.6.6 0 0 0-.108.127.6.6 0 0 1 .073-.158c.21-.309.65-.668 1.401-.7.748-.034 1.041.228 1.041.228.719.82.115 1.845-.351 2.76a2.7 2.7 0 0 0-.229.483 3 3 0 0 0-.087.227c-.358 1.06.292 1.565.668 1.661s1.141.57 4.269-.031c3.13-.603 3.587-.731 3.587-.731s6.145-1.087 8.96-.425l.023.004s1.297.367.331 1.334c-.966.966-1.729 1.617-1.504 2.377.223.762 1.267 1.903 3.646 1.603 0 0 .842-.113 1.105-.165 1.733-.336 2.899-1.268 2.899-1.268s.972-.721.782-1.631c-.187-.908-1.017-1.189-1.017-1.189s-.659-.424-.141-1.237c0 0 .141-.69 2.553-1.317 2.412-.626 6.813-1.518 10.555-1.989 3.49-.408 9.652-1.575 10.89-2.08 1.235-.508 1.497-1.4 1.521-1.708.024-.31.072-.83-1.14-1.09-1.213-.259-1.758-.655-1.931-.79-.172-.138-.545-.483-.545-1.275s1.607-1.745 3.392-2.35c1.78-.606 3.927-.34 3.927-.34 1.948.167.936 1.963.936 1.963-.074.322-.946 1.785.5 2.169 1.541.409 4.175-.347 5.188-.669.829-.261 3.141-1.074 4.688-1.62.352-.122.66-.231.908-.318 1.656-.577 3.019-1.219 3.785-1.681.771-.462 2.144-1.297 2.144-1.297s1.351-.744 1.799-.808c.451-.064 1.619-.346 1.771.771.155 1.115.631 1.899 1.4 2.271a3.36 3.36 0 0 0 3.246-.231c1.182-.771.359-1.901.359-1.901q-.03-.042-.062-.085a3.7 3.7 0 0 0-.487-.646c-.388-.47-.736-.822-.736-.822-.295-.436.053-.692.425-.834.373-.141 2.351-.758 2.351-.758 1.155-.383 1.592-.551 2.053-.988.445-.419-.189-1.34-.239-1.412l.004-.002.608.256q.204.271.4.547l-.007.005s.226.527.054.799c-.095.149-.343.293-.545.395z" style="fill:url(#K)"/><path d="M57.455 92.28c-.034-.042-.042-.034-.012-.063.021-.021.086-.082.115-.137 0 0-1.17-.063-2.141.077-.962.137-1.933.335-1.933.335l.301.146s.127-.055 1.047-.183c.921-.128 1.267-.128 1.267-.128s.808-.063.969-.063c.162 0 .061.104.061.104s-.078.136.366.124c0 0 .663-.027 1.313-.188.001.005-1.13.24-1.353-.024M54.469 92.691s.146.266-2.923.394c0 0 1.788.052 3.31-.198 1.107-.18-.387-.196-.387-.196M13.114 9.856s-.005.096.019.131c.024.034.107.112.107.112s.328-.5.194-.438c0 0-.119.187-.164.23 0 0-.029.04-.088.077-.059.038-.065.023-.068-.112M10.595 12.501s-.388.46 0 .52l.528-.527s.139-.234.139-.398c.001-.001-.51.247-.667.405" style="opacity:.1;fill:#232323"/><path d="M21.093 23.707c1.227.146 1.499-.132 1.527-.172a28 28 0 0 0 2.865-.207c1.685-.21 3.564-.891 3.564-.891s1.554-.568 2.096-1.18l.016-.002s-.693-.6-1.057-1.122c0 0-.286-.557.027-1.035.316-.479.836-1.008 2.344-1.643 1.506-.636 2.356-.514 2.356-.514s.594-.006 1.007.45c.415.458.649 1.006.649 1.006s.029.38-.115.63l-.155.277s.049.017.378-.007c.329-.021 1.165-.142 2.67-.506 1.508-.363 3.407-.972 3.407-.972s4.9-1.578 5.407-1.714 1.357-.436 1.357-.436l.027.059s.405.663.392 1.269v-.057s-.021.301-.698.818c-.674.517-1.226.479-1.678.442-.452-.039-.665-.071-.794-.045l-.72.04c-.787.111-1.224.407-1.224.407-1.804 1.065.731 9.287.731 9.287-3.742.47-8.143 1.363-10.555 1.989s-2.553 1.317-2.553 1.317c-.519.813.141 1.236.141 1.236s.829.283 1.017 1.19c.19.91-.783 1.629-.783 1.629s-1.159.97-2.898 1.268c-1.738.298-2.396.35-3.429-.47-.91-.721-.297-1.864.312-2.301.612-.438.909-.91.988-1.113s.032-.376.032-.376l-.58-.534c-2.005-1.33-9.884.063-9.884.063-.213-1.169-.362-1.171-.282-3.117.051-1.244.291-1.752.291-1.752l.058-.164s.448-1.443 1.141-2.44c0 0 .602-.172 1.364-.349.764-.172 1.241-.258 1.241-.258" style="fill:#6b6b6b"/><linearGradient id="M" x1="231.232" x2="263.619" y1="-407.871" y2="-407.871" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#696969"/><stop offset=".37" stop-color="#2E2E2E"/><stop offset=".455" stop-color="#424242"/><stop offset=".601" stop-color="#303030"/><stop offset=".695" stop-color="#4A4A4A"/><stop offset="1" stop-color="#666"/></linearGradient><path d="M49.855 16.94s-4.085 1.326-3.891 1.254c0 0-.39.075-.686.161-.294.086-.539.247-.539.247s-3.288 1.222-6.438 1.848c-3.148.627-2.977-.361-2.708-.83.232-.409.829-1.112-.188-1.254-1.019-.14-1.788.251-2.21.439-.422.189-3.162 1.362-1.251 2.254 0 0 1.423.642-.377 1.755 0 0-1.816 1.16-5.355 1.77 0 0-.565.063-1.88.111a16.4 16.4 0 0 0-4.12.658c-1.378.391-1.992.579-2.744 1.065l.194-.501.2-.462c1.069-.533 3.719-1.288 5.717-1.378s2.908-.16 4.721-.624c2.134-.546 2.702-1.019 2.93-1.163.194-.123.771-.479.493-.633-.359-.199-.895-.729-.895-.729-.217-.256-.39-.373-.158-1.046.356-1.029 2.196-1.644 2.196-1.644s1.028-.534 2.334-.514c1.305.021 1.287.752 1.287.752s.062.34-.268.827c0 0-.503.579-.049.656.454.081 1.622.179 5.48-1.028s8.085-2.611 8.085-2.611.12.34.12.62" style="opacity:.45;fill:url(#M)"/><linearGradient id="N" x1="231.623" x2="263.494" y1="-407.063" y2="-407.063" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#525252"/><stop offset=".186" stop-color="#333"/><stop offset=".354" stop-color="#AEAEAE"/><stop offset=".42" stop-color="#ADADAD"/><stop offset=".428" stop-color="#9D9D9D"/><stop offset=".443" stop-color="#818181"/><stop offset=".461" stop-color="#6A6A6A"/><stop offset=".481" stop-color="#585858"/><stop offset=".506" stop-color="#4C4C4C"/><stop offset=".539" stop-color="#444"/><stop offset=".617" stop-color="#424242"/><stop offset=".668" stop-color="#454545"/><stop offset="1" stop-color="#BDBDBD"/></linearGradient><path d="M31.145 21.257c-.541.612-2.096 1.18-2.096 1.18s-1.88.68-3.564.891c-1.608.201-2.777.209-2.777.209l-.082-.002c-.175.145-.483.188-.728.21-.244.023-.806-.039-.806-.039s-2.156.432-2.603.616c0 0-.253.392-.331.539-.08.146-.299.594-.299.594 1.069-.534 3.718-1.289 5.717-1.379 1.997-.089 2.908-.159 4.721-.624 2.134-.546 2.702-1.019 2.929-1.163.195-.123.771-.479.493-.633-.358-.199-.894-.729-.894-.729-.217-.256-.391-.373-.158-1.046.356-1.029 2.196-1.644 2.196-1.644s1.028-.533 2.333-.514c1.306.021 1.287.753 1.287.753s.062.34-.269.826c0 0-.503.579-.049.657.455.08 1.622.178 5.48-1.028a575 575 0 0 0 8.085-2.612c-.098-.29-.296-.652-.296-.652s-.85.301-1.358.436c-.506.136-5.407 1.714-5.407 1.714s-1.9.608-3.407.972c-1.506.364-2.342.485-2.671.508-.329.021-.378.006-.378.006s.013-.027.156-.279c.144-.248.115-.629.115-.629s-.235-.548-.649-1.006-1.007-.45-1.007-.45-.849-.121-2.355.514c-1.508.636-2.029 1.164-2.346 1.643-.312.478-.026 1.035-.026 1.035.365.521 1.057 1.122 1.057 1.122" style="fill:url(#N)"/><linearGradient id="O" x1="236.917" x2="235.888" y1="-417.333" y2="-410.527" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#969696"/><stop offset="1"/></linearGradient><path d="M21.606 31.241s-.064-.328.172-.939c.234-.611.908-.595 1.362-.503.455.095.846.298 1.472-.124.627-.423.47-1.583.046-2.852-.423-1.267-.328-2.128-.328-2.128l-.608-.649-.237.696c.047 1.316.657 3.226.829 3.759.173.533.297.8-.735.517-1.034-.282-1.519.125-1.519.125-1.332.862-1.082 2.161-1.082 2.161z" style="opacity:.2;fill:url(#O)"/><path d="M27.498 36.633c-.264-1.763-.917-2.749-.917-2.749-.25.188-.513.693-.513.693s.179.208.471 1.568c0 0 .141.106.438.279.296.173.521.209.521.209M33.152 32.881s-.78.907-.378 2.336c0 0 .454-.379.585-.68 0 0-.145-.458.138-1.017.003 0-.127-.42-.345-.639" style="opacity:.5;fill:#141414"/><linearGradient id="P" x1="428.78" x2="429.53" y1="532.053" y2="524.469" gradientTransform="translate(-406.164 -500.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#333"/><stop offset=".431"/><stop offset="1" stop-color="#2E2E2E"/></linearGradient><path d="M21.2 31.253c.017-1.299.471-1.492.905-1.818.436-.328 1.326-.024 1.326-.024s.678.218 1.046-.1c.369-.319-.017-1.467-.217-2.123-.202-.653-.41-1.599-.445-2.262-.025-.489-.091-.707-.125-.789l-.205.604c.047 1.316.657 3.226.829 3.759.173.533.297.8-.735.517-1.035-.282-1.519.125-1.519.125-1.332.862-1.082 2.162-1.082 2.162l.259-.027z" style="opacity:.18;fill:url(#P)"/><path d="M26.239 34.29c.045.06.421.597.736 2.113l.005.025c.294.17.519.205.519.205-.264-1.763-.917-2.749-.917-2.749-.122.093-.246.259-.343.406M33.152 32.881s-.78.907-.378 2.336c0 0 .125-.104.262-.248l.021-.051a2.03 2.03 0 0 1 .283-1.763l.004-.003a1.3 1.3 0 0 0-.192-.271" style="opacity:.3;fill:#505050"/><path d="M17.159 8.189h.117c-.16.481-.789 1.141-1.068 1.583-.156.248-.252.572-.474.751.038.043-.003.003.04.04.088.052.813-.139.95-.236.082.015.076.011.12.039.042.07-.481.991-.595 1.109v.04c.196-.023.502-.056.634-.16.383-.299.47-.937.75-1.346l-.04-.196c-.222-.04-.681.02-.87.157h-.039c.091-.473.868-1.346 1.146-1.741.454-.647.881-1.269 1.345-1.9.243-.331.585-.622.831-.949.276-.367.569-.85.949-1.107v-.079h-.158c-.186.135-.675.218-.908.354.032.135.019.101.118.158-.139.386-.598.673-.832.991-.371.5-.784.968-1.147 1.464-.123.164-.205.421-.356.553-.237.208-.913.185-1.185.396h-.08c.056-.332.907-1.392 1.147-1.622v-.04c-.408.057-.724.273-.989.473.044.091.037.073.12.12-.145.238-.361.415-.515.633-.197.275-.305.602-.514.871q.021.058.04.118c.252-.022 1.305-.356 1.463-.474m34.777 5.345.596.197c.159.002.327-.002.432-.04-.009-.654-.364-.913-.593-1.345-.113-.22-.175-.523-.355-.673.069-.242.727-.308.988-.396.643-.211 1.371-.422 2.02-.633.305-.099.664-.077.91-.236.146.015.22.029.277.118.143.212.26 1.667.156 2.097-.398 1.663-.896 2.963-1.938 3.958v.039c.385-.062.568-.436.83-.632 1.051-.794 1.762-1.972 2.137-3.444.221-.865-.14-1.713.199-2.452h-.039c-.074-.188-1.082-.553-1.388-.555-.164.177-.399.416-.634.515-.357.152-.838.109-1.146.315-.287-.024-.506-.57-.315-.791-.011-.09-.009-.112-.04-.158-.239-.191-.85-.171-1.268-.158-.133.125-.252.15-.314.358h-.039c-.021.076.02.05.039.078.025.016.163-.007.236.04.449.047.438.566.675.831-.027.069-.011.04-.042.08-.155.123-1.301.453-1.543.515-.185.046-.414-.068-.553-.081-.336-.028-.633.16-.831.277.107.157.434.118.554.276.421.559.609 1.279.989 1.9m7.871-.557c.187.093.187.332.278.514.185.371.437.82.554 1.228v.316c.092.252.396.284.596.435.156-.021.214-.061.314-.118-.066-.753-.525-1.378-.791-1.979-.08-.188-.207-.452-.236-.633-.021-.109.063-.169 0-.276-.051-.123-.072-.085-.156-.159-.059-.04-.031-.016 0-.078.068-.144.213-.287.275-.436.133-.313.127-.576.396-.751-.04-.41-.639-.457-1.107-.435a.6.6 0 0 1-.24.077c.05.103.082.124.199.157.113 1.161-.699 2.225-1.229 2.928-.208.279-.556.456-.75.754h-.04v.038c.525-.086 1.67-1.176 1.937-1.582m-47.4 9.853c-.081.017-.076.009-.117.039-.288.148-.773 1.426-1.346 1.069-.292.002-.319-.055-.476-.16.02-.376.659-1.063.913-1.226.031-.604.187-1.252.118-1.819q-.061-.022-.118-.039c-.14-.046-.25.168-.357.276-.29.291-.648.597-.871.949-.337-.003-1.414-.013-1.623.119h-.119c.099-.256.86-1.096.633-1.464q-.018-.06-.04-.12c-.722.002-1.592 1.287-1.82 1.82-.115.266-.115.573-.276.791v.04l1.622-.199c.205-.044.487.052.633-.039h.554l.277-.356c.33-.349.768-.702 1.028-1.106h.119v.551c-.303.273-.773.695-.91 1.108v.316c-.203.88.223 1.329.99 1.267.5-.466 1.324-.848 1.226-1.779-.042-.035-.003.005-.04-.038m-4.588-.712H7.58c.109-.436.537-.935 1.069-.95v.197l-.554.713c-.113-.002-.215-.002-.276.04m85.225.197a12 12 0 0 0-.475-1.068c-.3-.574-.613-1.414-1.464-1.425-.211.179-.435.322-.555.593-.777 1.762.819 3.747 1.543 4.71.256.339.557.712.948.908-.091 1.376-1.269 1.813-2.53 1.267-.899-.386-1.617-1.237-2.179-1.979-.188-.249-.481-.457-.672-.713-.177-.239-.304-.507-.515-.713v-.039h-.078c.107.426.354.815.514 1.188.669 1.538 1.52 2.614 2.811 3.521.608.428 1.621 1.104 2.494.475 1.526-1.098.783-5.189.158-6.725m-.116 1.901c-.104.1-.539-.419-.635-.515-.441-.443-1.329-1.221-.83-1.979h.197c.388.403.746.788.99 1.344.129.299.152.805.313 1.069-.022.07-.005.04-.035.081m-26.235 7.912v-.395c.179-.801.137-1.765.314-2.572.241-1.088-.101-2.148.99-2.414.021-.106.057-.148 0-.238-.025-.067-.009-.039-.04-.079-.043-.031-.038-.024-.116-.039-.305.222-1.131.373-1.543.474-.313.076-.639.01-.871.158l-.119.04q.019.12.041.237c.451.147.867-.031 1.067.356.13.252.112 1.157.039 1.504-.251 1.163-.146 2.491-.396 3.64-.086.397.022 1.171-.157 1.463v.08c-.241-.115-.397-.426-.554-.633-.354-.467-.875-.84-1.229-1.305-.213-.281-.437-.617-.712-.833.037-.761.259-1.56.438-2.254.131-.522.135-1.005.395-1.386.148-.217.505-.355.751-.475-.002-.1-.004-.146-.04-.198-.014-.04-.023-.079-.037-.119-.543.081-1.003.341-1.505.475-.454.123-.911.092-1.269.276.012.091.01.112.041.158.014.039.024.08.039.118 1.391-.078 1.18.678.912 1.742-.084.326-.029.775-.199 1.028v.079h-.039c-.285-.433-.713-.852-1.067-1.227l-.435-.395c-.104-.137-.16-.312-.278-.436.024-.437.38-.549.713-.672-.015-.183-.052-.206-.118-.317-1.031.151-1.927.73-3.086.791v.041h-.04c.004.1.004.146.04.197v.079c.227.039.564-.054.831.04.427.15.81.648 1.067.99.388.513.996.949 1.384 1.463.204.274.434.634.713.832-.038.696-.229 1.428-.396 2.058-.086.323-.035.735-.197.988-.025.069-.01.039-.041.08-.377-.718-1.104-1.265-1.582-1.9-.918-1.22-1.938-2.319-2.889-3.521 0-.167.01-.268.08-.356.073-.229.359-.443.633-.476.015-.12.033-.135-.039-.238-.016-.038-.026-.077-.041-.118-.803.123-1.521.497-2.293.714-.401.112-.928.057-1.229.276q-.06.02-.117.04c.021.152.061.176.117.277.314-.005.646-.092.949 0 .793.241 1.361 1.137 1.818 1.742.201.266.513.483.713.751.849 1.129 1.808 2.146 2.65 3.285.328.442.771.825 1.066 1.304.179-.004.216-.025.316-.079.213-.929.332-1.866.596-2.81.119-.432.269-.942.314-1.424.327.117.592.607.793.871.618.821 1.491 1.502 2.057 2.373.164-.007.182-.026.277-.078.179-1.342.348-2.688.52-4.033M4.297 38.894c-.013 2.467-.142 6.269 1.781 6.806.7.193 1.087-.271 1.306-.595.786-1.17.565-3.446-.199-4.43-.339.034-.825.84-.988 1.106-.082-.016-.075-.011-.119-.04-.091-.041-.085-.066-.159-.118-.06-.933.127-1.802.159-2.691 1.044.102 1.941.696 3.007.751-.001-.185 0-.434.077-.552-.009-.092-.007-.112-.04-.16-.145-.115-.949-.306-1.186-.315v-.04h-.04c.146-1.174-.186-2.082-.99-2.414l-1.346-.239c-.229-.083-.341-.266-.514-.395-.058-.38-.133-.806.159-1.029-.021-.142-.032-.168-.119-.238v-.039h-.04a2.9 2.9 0 0 0-.315.792c-.234.983.309 1.818.909 2.018l1.188.197c.314.122.453.379.671.595-.009.512-.5.568-.91.435-.64-.208-1.321-.353-1.977-.592-.172-.064-.333-.17-.555-.199l-.08.751 1.662.515c-.023 1.398-.574 3.074.119 4.153a.5.5 0 0 1 .198.08c.78-.054.943-.68 1.345-1.108.342.82.086 2.253-.671 2.453-.326.224-.803-.066-.989-.237-.648-.599-.785-1.511-1.027-2.532-.083-.344.033-1.042-.118-1.307.006-.404.092-1.134-.12-1.344v-.039zm95.039 6.649c-.143-.666.055-1.478-.08-2.097v-.633c-.097-.453-.059-1.056-.156-1.502-.189-.882-.022-1.926-.355-2.652a2.5 2.5 0 0 0-.671-.08c-.103.104-.179.158-.159.278.083.359.547.432.673.792q.02.258.04.514c.133.561.111 1.286.236 1.86v.475c.063.289.16 1.036.078 1.267-.139.41-.584.78-.868 1.068-.754.755-1.64 1.715-2.97 1.859-.025.068-.01.039-.041.08.022.494.476.396.793.594l.236-.042c.122-.074.191-.242.276-.356.2-.261.563-.399.751-.671h.04c.002 1.205.028 2.561.04 3.718h.117c.272-1.172.252-2.61.238-4.039.521-.486.853-1.19 1.385-1.66v-.078h.041c.007 1.251.037 2.529.037 3.797 0 .407-.102 1.378 0 1.544v.237h.08c.106-.425.133-1.023.236-1.501v-.674c.118-.534.117-1.563.003-2.098m-71.023 2.53c-.347-.144-.776-.461-.989-.751-.637-.875-1.337-2.948-.87-4.51.379-1.266 1.202-2.127 2.532-2.454.673-.163 1.397.062 1.821.278 1.208.622 1.725 1.506 2.096 2.967.48 1.887-.132 3.619-1.385 4.194l.237 2.295c.444-.013.852-.105 1.227-.199.629-.155 1.271-.176 1.86-.315.431-.104 1.052-.015 1.384-.237.079-.17-.247-1.35-.315-1.623-.057-.229-.009-.461-.119-.633v-.079q-.138.018-.277.039c.018 1.195-.834 1.032-1.781 1.267-.473.119-1.049.27-1.581.276l-.001-.514c.045-.083.739-.386.868-.476a4.7 4.7 0 0 0 1.229-1.304c.202-.327.366-.764.473-1.149.138-.489.154-1.17.041-1.662-.079-.338-.048-.603-.158-.91-.427-1.187-1.322-2.054-2.453-2.532-.513-.216-1.093-.224-1.7-.356-.539-.116-1.509.124-1.901.238-1.905.562-3.198 1.48-3.799 3.323-.236.728-.163 1.736.04 2.414.467 1.561 1.773 3.02 3.72 3.047v.039c.062.088.06.264.118.355-.024.067-.009.039-.04.08-.164.111-.404.061-.633.117-.47.118-1.986.486-2.334.158-.222-.072-.37-.363-.396-.632-.099.004-.146.004-.197.039h-.082q.219 1.149.435 2.296h.041v.04q2.078-.36 4.154-.713l-.593-2.179c-.112-.168-.468-.148-.672-.234m67.701-4.391c.086.218.254.58.435.712.086.063.132.04.198.119 1.31.113 1.842-2.143 1.308-3.442-.095-.225-.517-.885-.911-.633h-.08c.026-.069.01-.038.04-.08-.001-.188-.021-.25-.077-.356-.08-.013-.156-.026-.238-.038-.039.031-.01.014-.078.038.027.24.111.247.119.514-.64.583-1.185 1.981-.716 3.166m.432-2.097c.088-.213.265-.35.396-.515.082-.015.075-.01.117-.04.301-.001.385.057.555.159.301.711.346 1.954-.156 2.494-.077.085-.229.116-.315.197-.829-.063-.897-1.575-.597-2.295M78.092 57.168c-.445-.273-.507-1.675-.673-2.294-.327-1.215-.483-2.489-.831-3.72-.223-.788-.523-1.605-.435-2.572.139-.138.231-.32.396-.436.223-.154.58-.229.752-.436.027-.051-.019-.128-.041-.238-.459.074-.879.35-1.267.515-.792.337-1.567.536-2.373.87-.252.104-.515.282-.833.315v.238q.041.02.08.04c.042.045 1.033-.392 1.346-.118.356.125.311.59.514.872-.061.614-.672 1.558-.912 2.097a63 63 0 0 1-1.816 3.836c-.248.477-.543 1.334-.871 1.701v.039c-.216-.296-.199-1.051-.314-1.462-.353-1.235-.578-2.591-.951-3.798-.068-.23-.305-1.279-.156-1.503.051-.546.822-.785 1.266-.95q-.017-.14-.039-.277c-.701.105-1.429.479-2.058.713-.595.223-1.14.313-1.741.516-.298.102-.636.275-.986.314v.041h-.041c.015.112.025.172.078.237.162.107 1.03-.352 1.386-.077.557.19.573 1.075.752 1.66.481 1.579.728 3.327 1.187 4.947.115.404.391 1.686.119 2.018-.148.439-.885.615-1.306.791q.02.12.036.237c.609-.09 1.162-.373 1.707-.56 1.063-.354 2.066-.65 3.089-1.029-.017-.092-.027-.186-.041-.275-.437.116-.773.248-1.386.236l-.235-.199q-.101-.316-.199-.632c.043-.499.683-1.421.91-1.86.673-1.293 1.262-2.6 1.856-3.955.229-.519.754-1.275.832-1.857.184.111.133.438.197.672.135.475.211.98.355 1.503.281 1 .391 2.075.673 3.126.104.387.261 1.048.08 1.464-.179.404-.841.673-1.267.83.017.084.037.183.08.238.004.007.906-.288 1.064-.354 1.104-.471 2.236-.959 3.361-1.386-.015-.093-.024-.187-.039-.274-.28.071-.92.435-1.305.196m18.711 3.33c-.143.13-.354.163-.514.277-.501.359-1.025.962-1.385 1.463-.288.402-.534.843-.791 1.268-.112.188-.137.402-.277.553v.08c.346-.059.549-.283.792-.436a29 29 0 0 0 1.858-1.225c.295-.217.515-.551.83-.754.029-.473.125-.844-.077-1.188a2 2 0 0 0-.436-.038m-.474 1.423c-.239.177-.47.423-.712.595-.208.146-.458.224-.633.396h-.04c.13-.408.817-1.107 1.146-1.344.17-.124.383-.157.557-.279h.156c.036.046.034.044.08.08-.037.298-.36.405-.554.552m-85.504 1.544c-.166-.502-.278-.99-.435-1.465-.079-.246-.062-.525-.199-.713v-.118c.269.097.679.087.911.238h.201c-.045-.206-.086-.552-.201-.713-.12-.195-.886-.197-1.106-.354-.312-.244-.607-.947-.832-1.307-.56-.887-1.302-1.832-2.137-2.453-.443-.329-.751-.671-1.544-.673l-.276.198c-.178.789.139 2.248.592 2.611v.078a1.2 1.2 0 0 1-.514-.275h-.04c.007.227.051.522.158.672.046.195.362.354.554.396a26 26 0 0 0 .95 3.05c.289.758.436 1.48.75 2.213.155.356.522.617.634.99h.117c-.089-.334-.271-.646-.394-.949-.364-.875-.653-1.804-.952-2.688-.194-.583-.328-1.146-.514-1.703-.069-.21-.049-.427-.158-.595v-.039c.269.049.43.188.634.276.461.201.903.277 1.385.476.353.146.796.347 1.228.396.048.359.253 1.301.435 1.545v.117c-.602-.412-.589-1-1.663-.91a.8.8 0 0 1-.197.158 1.4 1.4 0 0 0 0 .909c.257.646 1.072 1.991 1.741 2.179.257.184.634-.043.75-.24.242.127.293.682.395.951.212.558.522 1.289 1.031 1.543v.041h.083c-.066-.447-.318-.851-.475-1.229-.35-.855-.624-1.754-.912-2.613M9.678 60.26c-.418-.03-.773-.193-1.108-.315-.894-.332-1.703-.615-2.492-.991-.095-.358-.76-1.644-.396-2.095l.079-.12c.081-.019.077-.011.119-.039 1.219.146 2.442 1.629 3.046 2.452.236.32.43.799.752 1.029zm.633 3.441-.356.436c-.105.078-.223.109-.316.198-.68-.021-.704-.686-.989-1.108.005-.389.152-.39.315-.594.092-.007.112-.007.158-.037.614.004.753.278 1.109.515.058.233.095.334.079.59m23.267 6.093c-.165-.271-.49-.342-.713-.554-.069-.023-.04-.007-.079-.039.51-.264 1.053-.555 1.583-.79.142.158.801.792 1.029.671q.06-.017.118-.038-.018-.336-.04-.673a4.03 4.03 0 0 0-2.059-1.066v.039h-.039c.093.273.398.534.636.672v.119c-.469.068-.885.295-1.307.437-.289.093-.638.08-.873.235h-.117c.171-.479.737-.871 1.028-1.267.576-.776 1.033-1.728 1.94-2.176-.024-.365-1.076-1.12-1.464-.871-.097.051-.029-.021-.079.078-.059.144.137.321.079.554-.076.305-.831 1.74-1.029 1.9v.041c-.408-.139-.718-.523-1.107-.713.069-.364.375-.644.554-.91.453-.684.816-1.335 1.503-1.782-.006-.526-.855-1.075-1.425-1.065.002.242.125.379.08.592-.14.646-.435 1.297-.672 1.861-.156.364-.226.799-.476 1.065-.054.03-.492-.006-.594-.077a1.3 1.3 0 0 0-.394.038v.079c.666.645 1.387.865 2.295 1.268-.126.655-.786 1.092-1.108 1.584-.166 0-.3-.011-.395-.08-.091.017-.098.021-.158.041.016.582.5 1.077.987 1.188.327-.366.737-.543 1.228-.751.449.468.578 1.137.751 1.897.075.332-.047.697.04.988.152.514.426.667.672 1.027h.277c.174-.93-.253-1.832-.475-2.571zm62.512-6.686c-.238.202-.57.296-.83.475-.4.282-.758.659-1.146.95-.177.134-.435.253-.556.436-.199.299-.16.806-.396 1.067v.157c.314-.114.464-.483.713-.672.307-.23.563-.536.87-.754.192-.133.411-.207.594-.355.125.023.115.037.199.081-.021 1.005-.549 1.714-.871 2.454-.093.215-.121.551-.276.71-.074.076-.229.094-.314.157l-.794.873c-.25.344-.365.803-.632 1.146-.002.114-.002.216.037.276.041.031.11.059.16.08.51-.483 1.004-.887 1.424-1.465.658-.904.986-2.047 1.465-3.125.3-.683.734-1.354.711-2.334a.7.7 0 0 1-.117-.158zm-2.77 6.253v.039h-.04c.069-.475.43-.606.596-.952h.079c-.051.394-.35.746-.635.913m-59.149.632c-.08.342.76 1.106 1.027 1.308.133.1.312.328.515.235.104-.008.136-.019.199-.04.046-.105.115-.24.039-.354-.021-.497-1.311-1.054-1.78-1.149m3.799 3.044c.067.034.122.021.198-.039.139-.113.063-.313.159-.475.222-.159.615-.118.911-.199.809-.213 1.753-.198 2.65-.396.425-.093 1.128.16 1.464-.037.04-.016.081-.026.118-.043-.019-.517-1.009-.737-1.545-.588-.237.066-.513.213-.751.275q-.278.021-.555.038c-.062-.644-.38-1.144-.395-1.817.595-.013 1.341-.091 1.739-.316-.008-.2-.045-.2-.118-.314-.453-.107-1.23-.126-1.583.116-.1-.004-.147-.004-.197-.039-.221-.28-.116-.851-.316-1.146v-.158c.426-.092 1.122-.168 1.345-.475.031-.041.014-.011.039-.078-.036-.035-.051-.068-.079-.119-.619-.156-.887-.049-1.423.158-.167-.535.034-.959-.514-1.108.117-.203.506-.194.751-.276a7.6 7.6 0 0 0 1.148-.474c.026-.068.007-.04.04-.08-.022-.2-.078-.193-.159-.316-.571-.044-1.027.011-1.346.316h-.076c.047-.295.231-.718.394-.949.112-.162.318-.14.396-.356h.04V64.1q-.12-.158-.238-.314c-.186-.13-.454-.143-.632-.279-.263-.004-.515-.003-.672.079.021.152.089.248.119.356.109.408-.284 1.669-.436 1.859-.123.154-1.551.672-1.939.555-.092-.029-.36-.164-.435-.239-.032-.039-.015-.008-.04-.077.561-.527.965-1.702 1.741-1.939l.041-.196c-.194-.2-1.135-1.188-1.622-.871-.04.014-.079.022-.117.038 0 .338.168.593.078.949-.182.711-.587 1.556-.95 2.139-.218.35-.693.729-.712 1.229.646-.064.802-.731 1.304-.912q.218.203.436.396c.207.311.168.778.276 1.186q.279 1.285.554 2.571c.025.425.052.845.08 1.269.105.381.42 1.046.829 1.138m1.263-3.005c.031.368.258 1.407.436 1.662l.001.08c-.477.102-.973.239-1.504.237-.082-.564-.352-1.061-.355-1.662.607-.011.92-.255 1.422-.317m-2.294-3.282c.063-.107 1.113-.273 1.228-.199.42.195.27.813.514 1.188-.083.194-1.047.487-1.345.514-.053-.419-.123-1.276-.397-1.503m1.821 1.503h.04c.076.36.119.978.317 1.267-.142.348-1.016.317-1.346.516-.138-.083-.32-1.076-.316-1.346.302-.028 1.086-.288 1.305-.437m-6.846 2.253c-.06.135-.053.354-.117.514-.342.84-.454 1.015.079 1.82.237 0 .269-.037.396-.119.157-.657.182-1.907-.358-2.215m45.109.238c-1.154-.285-2.125.285-3.325.199-.114-.121-.2-.19-.275-.356-.835.024-1.757 1.886-.909 2.453.453.308 1.744.129 2.295 0 .306-.071.783-.139 1.027.038.332.247.273 1.182.157 1.703q-.199 1.462-.396 2.929a400 400 0 0 1-.356 1.779c.606-.003 1.178-.623 1.349-1.069.1-.258.047-.502.119-.791.209-.83.237-1.82.436-2.689.127-.563.041-1.1.156-1.621.086-.393.143-1.696.041-2.059-.061-.201-.216-.359-.319-.516M22.857 82.695c-.135-.102-.229-.283-.356-.395-.473-.42-1.029-.826-1.543-1.188-.426-.298-1.008-.476-1.387-.829-.01-.086.123-.296.041-.516-.335-.896-1.589-1.933-2.374-2.412-.363-.225-.972-.328-1.305-.555-.246-.017-.374-.025-.435.155-.097.218.209.521.315.675.271.381.581.826.95 1.104.276.209.591.392.83.635h.119c-.154-.426-.609-.657-.949-.909-.311-.229-.449-.632-.712-.909.021-.125.035-.115.08-.199 1.093.009 1.802 1.012 2.294 1.662.22.291.571.461.594.951-.116 0-.216 0-.276-.041h-.119c.188.522.824.479 1.267.754.888.549 1.603 1.409 2.373 2.094.262.234.719.466.791.873-.537-.028-.917-.327-1.261-.555-.614-.4-1.597-1.1-2.019-1.662-.08-.104-.106-.263-.199-.355-.109-.111-.261-.145-.355-.275h-.158c-.039.41.407.705.671.948.819.75 1.696 1.442 2.73 1.979.373.191 1.053.521 1.465.275-.055-.566-.702-1.025-1.072-1.305m24.369 2.612c-2.014-1.379-4.985-2.775-8.427-2.689-.167.104-.503.021-.711.078-.288.076-.464.223-.672.355-.008.971 1.446 1.496 2.255 1.698.483.123.909-.104 1.188-.198.215-.82-.776-.94-1.227-1.347h-.081v-.038c3.036-.119 5.308.729 7.043 2.02.433.322.93.783 1.148 1.306.081.194.116.515 0 .674-.159.44-.685.401-1.188.515-1.162.267-2.755-.391-3.285-.91-.108.189.049.48-.118.674-.176.478-.788.354-1.346.474-.917.199-2.353-.271-2.888-.632-.149-.104-.257-.286-.396-.396a.6.6 0 0 0-.041-.199c.081-.073.177-.187.237-.275 1.139-.085 1.718-.027 2.376.596-.017.078-.01.073-.041.114-.074.152-.245.17-.474.161v.074c.417.004.593-.059.83-.197l.04-.236c-.136-.141-.231-.328-.396-.438-.65-.426-1.991-.641-2.729-.156-.116.561.232.864.554 1.105.646.488 1.191.771 2.098 1.029.291.082.55.008.871.076.28.064.765.079 1.068 0 .504-.128 1.205-.658.632-1.268v-.037c.299.109.544.402.831.556.761.397 2.021.726 3.167.476.562-.125 1.143-.125 1.303-.635.179-.277-.068-.668-.156-.826-.369-.66-.855-1.09-1.465-1.504m-7.32-1.822c.14.094.22.291.356.396-.003.1-.004.148-.04.199-.257.697-1.706.182-2.058-.081-.11-.08-.153-.248-.236-.354.015-.082.01-.076.041-.116.108-.306.417-.203.671-.354.502-.001.956.099 1.266.31m36.719.396h-.396c-.262.209-.692.236-.991.396a7 7 0 0 0-.829.515c-.207.148-.326.418-.516.592.004.197.008.229.16.277.039.029.01.018.075.04.042-.047.08-.063.12-.12.033-.023-.027-.104-.04-.232.384-.386.667-.598 1.228-.832.144-.059.447-.233.634-.119h.079c-.026.391-.916 1.591-1.188 1.781v.115c.729-.188 1.215-1.643 1.702-2.174-.013-.09-.01-.111-.04-.157zm-3.166 2.928c-.234.209-.807.229-1.066.435h-.041c.104-.149.291-.213.396-.354.076-.104.107-.226.197-.315-.018-.081-.01-.075-.039-.117v-.08c-1.155-.212-3.084.784-3.68 1.308-.155.135-.248.336-.396.477a.7.7 0 0 0 .039.236c.701.047 2.016-.383 2.174-.949.031-.025.012-.002 0-.04v-.079c-.479-.027-1.124.075-1.422.355h-.039c.26-.396 1.223-.746 1.739-.91.172-.053.55-.149.714-.039.037.015.077.025.117.039-.094.396-.657.838-1.029.949v.08c.607-.141 1.163-.416 1.7-.634.368-.149.786-.188 1.108-.396.229-.149 1.008-1.207 1.068-1.504-.913.138-.987 1.042-1.54 1.538m-3.126.791v.119c-.075.049-.129.156-.198.196-.205.12-.479.106-.674.238-.09-.011-.109-.009-.156-.041h-.039c.107-.337.759-.491 1.067-.512m-16.498 3.717c.015-.037.025-.078.039-.117l-2.927-.119c-.123.082-.312.035-.475.079-.202.059-.426.15-.593.239.026.067.008.038.04.077.238.188 1.624.199 1.9 0h.078v-.077c-.419-.134-1.183.2-1.503 0h-.041v-.041c1.052-.073 2.23-.044 3.325-.04-.105.072-.328.051-.436.119l-.117.039v.08q.357.057.711.117c.037.041-.004.004.039.037-.35.233-1.254.139-1.581-.037v-.08c-.178-.082-.991.084-1.148.117-.133.03-.27-.014-.357.039-.165.01-.181.029-.276.079.022.128.035.115.08.198.255.06.696.064.987.156v-.039h.04v-.039c-.148-.057-.559-.025-.713-.115h-.079c.132-.104 1.425-.278 1.663-.119.067.023.039.007.079.039-.211.038-.424.08-.634.117.025.066.009.039.04.078.065.045.193.045.316.039-.04.074-.054.109-.119.158q.02.036.04.078c.561 0 1.031-.057 1.502-.156.28-.062.624.052.831-.08h.317v-.078c-.539-.002-1.885-.055-2.215.158h-.117c.033-.043-.004-.004.038-.041.155-.18.471-.09.75-.156.44-.104 1.168-.284 1.544 0 .105.064.04-.008.039.117.107-.002.181-.002.236-.036h.277v-.081c-.359-.088-.889-.251-1.188-.434-.17-.104-.092-.248-.392-.275m-40.2-72.958c-.088.32-.274.593-.395.87-.268.613-.507 1.225-.751 1.822-.207.496-.335 1.295-.633 1.699v.079c.416-.074.698-.493.949-.751.617-.634 1.92-2.22 1.9-3.402a1 1 0 0 1-.159-.237 3.8 3.8 0 0 0-.911-.08m.159 1.663c-.181.298-.281.592-.476.871-.178.255-.46.452-.633.713h-.041c.051-.302.214-.546.319-.792.235-.561.396-1.118.671-1.621.152.003.268.015.356.078.095.052.028-.018.079.08.081.197-.179.511-.275.671M84.023 7.875c-.414-.416-.729-.938-1.147-1.346V6.49c-.205.073-.899.688-1.028.871-.25-.095-.391-.365-.594-.514-.676-.508-1.313-1.167-2.49-1.147-.148.115-.367.118-.556.197-.53.23-1.083.688-1.305 1.227-.249.602.004 1.491.196 1.939.392.904 1.03 1.667 1.582 2.414.457.615.973 1.252 1.819 1.464.956.238 1.422-.884 1.781-1.308.37-.435 1.182-.539 1.464-1.107.104-.207.034-.615-.039-.791-.18-.426-1.066-1.622-1.425-1.859.024-.239.135-.247.235-.396.248.121.338.471.516.673.227.258.546.396.791.632.378.003.604-.094.79-.277h.041c-.093-.265-.442-.448-.631-.633m-2.253 4.273c-.699.165-1.047-.293-1.424-.673-.938-.935-1.57-2.093-2.298-3.244-.247-.396-.885-1.134-.554-1.702h.156c.199.299.539.507.754.792.591.784 1.313 1.469 1.898 2.255.359.485.758.94 1.106 1.424.178.249.315.565.556.751-.04.18-.116.264-.194.397m.591-2.809c.32.439.755.688.751 1.463-.122.116-.157.224-.356.276-.039.032-.011.015-.078.041-.56-.932-1.367-1.711-2.017-2.573-.212-.282-.541-.511-.752-.791-.362-.48-.793-.864-1.188-1.305-.113-.131-.168-.257-.313-.357.033-.086.031-.057.076-.118.672.006.994.458 1.386.753.967.725 1.778 1.626 2.491 2.611" style="opacity:.88;fill:#231f20"/><radialGradient id="Q" cx="251.809" cy="-408.361" r="72.751" gradientTransform="matrix(1 0 0 -1 -213.764 -386.502)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-opacity="0"/><stop offset=".802" stop-opacity=".08"/><stop offset="1" stop-opacity=".388"/></radialGradient><path d="M49.885 17.037c.014-.606-.392-1.27-.392-1.27l-.025-.058s-.487-.949-1.302-1.228c-.815-.278-1.478.342-1.478.342l-.429.494c-.313.364-.507.666-1.198.938-.692.271-1.379.204-1.743.033a.9.9 0 0 1-.457-.537s-.229-.722-.313-1.049c-.086-.331-.309-1.694-.309-1.694s-.491-2.747-.534-3.304c0 0 1.475-.126 3.687-.775 2.299-.673 3.043-1.206 3.043-1.206s-.432-.156-.484-.662c-.051-.507-.089-1.19-.089-1.19s-.089-.5.483-1.139c.571-.64 1.354-.863 1.762-.953.41-.089 1.281-.17 2.093-.134.812.038 1.267.112 1.593.291.328.178.357.61.357.61l-.008 1.146s-.037.402.261.529c0 0 .505.305 2.196.133 0 0 .72-.126 1.846-.46 1.125-.335 4.129-1.229 4.554-1.341s.953-.291 1.646-.469a34 34 0 0 0 2.308-.73c.271-.104 1.812-.618 2.927-.81 1.115-.195 2.227-.186 2.813.149 0 0 .357.304.521.662.163.358.478.863.923 1.088.454.227.752.371 1.875.273 0 0 .022-.096-.395-.37-.417-.277-.991-.701-.991-.701s-.336-.245-.411-.447c-.072-.202-.043-.306-.043-.306l.877-1.406s0-.172.508-.238c.506-.067 1.071-.134 1.74-.313.67-.178.788-.312.788-.312l.58.178s3.546 2.853 4.655 3.583l.199-.239s.436.018.826.172c.394.154.979.562.979.562s1.612 1.31 2.071 2.2l.223.679-.102.161s.918 1.307 2.096 2.602c0 0 1.227 1.664 1.689 2.09 0 0-.108-.399-.201-.849l.336-.226.203-.144.617.259c3.573 4.811 6.432 10.424 8.141 16.328l-.12.484.395.501a51 51 0 0 1 1.728 13.211 52 52 0 0 1-.107 3.339l-.304.511.225.555c-2.231 26.1-24.124 46.584-50.801 46.584-18.502 0-34.702-9.854-43.637-24.6l-.102-.364-.205-.153A50.6 50.6 0 0 1 .874 48.944l.212-.525-.336-.483a51 51 0 0 1-.322-5.756c0-2.985.255-5.909.748-8.755l.25-.562-.087-.328a50.6 50.6 0 0 1 6.474-16.799l.684-.384.081.032s.233-.169.354-.217l.076-.023s1.179-1.971 1.625-2.601c0 0 .542-.348.745-.407 0 0 .124-.016.189.076 0 0 .496-.432 1.699-2.054l.012-.017s-.114-.076-.131-.174.108-.591.173-.717.108-.156.108-.156 1.722-2.032 3.151-3.238c0 0 .26-.202.678-.25 0 0 1.472-.613 3.264-2.184 0 0 .051-.289.478-.858.428-.57 1.456-1.163 2.222-1.337.764-.174.896-.038.896-.038l.064.065.515.766s.565-.316 1.413-.604c.847-.289.979-.262.979-.262l.825 1.336-.987 2s-.644 1.421-1.655 2.185c0 0-.472.284-1.12.127s-1.072.333-1.072.333l-.17.14s.14-.024.346-.103c0 0 .158.065.274.223.114.158.913 1.175.913 1.175s.005.837-.415 1.938c-.419 1.1-1.467 2.891-1.467 2.891s-.733 1.424-1.075 2.253-.515 1.765-.488 2.262c0 0 .187.062.707-.202.655-.332 1.083.027 1.083.027s.719.53 1.041.881c.262.289.802 1.765.209 3.224 0 0-.402 1.008-1.377 1.724 0 0-.216.332-1.529.174-.368-.043-.585-.276-1.372-.2-.785.077-1.231.815-1.231.815l.013-.024c-.692.999-1.154 2.458-1.154 2.458l-.057.165s-.241.509-.292 1.752c-.053 1.284.284 3.109.284 3.109s7.876-1.387 9.88-.055l.58.532s.046.174-.031.376c-.08.204-.375.673-.987 1.113-.611.438-1.222 1.583-.313 2.304 1.034.818 1.691.766 3.43.468 1.74-.297 2.898-1.269 2.898-1.269s.972-.72.783-1.628-1.017-1.189-1.017-1.189-.658-.423-.141-1.238c0 0 .141-.689 2.553-1.316 2.414-.626 6.812-1.52 10.556-1.989 0 0-2.539-8.223-.737-9.289 0 0 .438-.296 1.224-.408l.721-.037c.131-.027.344.005.796.045.452.038 1.001.076 1.678-.441.676-.519.697-.819.697-.819" style="opacity:.38;fill:url(#Q)"/></svg> \ No newline at end of file diff --git a/src/assets/images/wolframAlpha-icon.svg b/src/assets/images/wolframAlpha-icon.svg index 343083b7..a81d8033 100644 --- a/src/assets/images/wolframAlpha-icon.svg +++ b/src/assets/images/wolframAlpha-icon.svg @@ -1,40 +1 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - class="_3hSt" - viewBox="0 0 20 20" - version="1.1" - id="svg4" - sodipodi:docname="wolframAlpha-icon.svg" - inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns="http://www.w3.org/2000/svg" - xmlns:svg="http://www.w3.org/2000/svg"> - <defs - id="defs8" /> - <sodipodi:namedview - id="namedview6" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:showpageshadow="2" - inkscape:pageopacity="0.0" - inkscape:pagecheckerboard="0" - inkscape:deskcolor="#d1d1d1" - showgrid="false" - inkscape:zoom="27.506454" - inkscape:cx="2.799343" - inkscape:cy="11.197372" - inkscape:window-width="1888" - inkscape:window-height="1060" - inkscape:window-x="32" - inkscape:window-y="0" - inkscape:window-maximized="1" - inkscape:current-layer="svg4" /> - <path - class="_3n6Q" - d="M 16.606501,10 19.297178,6.9373391 15.341758,6.056979 15.750939,1.9775642 12.031108,3.6266894 9.9976006,0.08045038 7.9516935,3.6266894 4.2318623,1.9775642 4.6286443,6.056979 0.69802279,6.9373391 3.3887006,10 l -2.69067781,3.062661 3.95542041,0.88036 -0.4091814,4.079415 3.7198311,-1.649125 2.0335077,3.546239 2.0459074,-3.546239 3.719831,1.649125 -0.396782,-4.079415 3.95542,-0.88036 z M 13.09746,11.859916 H 6.8977413 V 10.619972 H 13.09746 Z m 0,-2.4798879 H 6.8977413 V 8.1400844 H 13.09746 Z" - fill="#777" - id="path2" - style="fill:#ff7e00;fill-opacity:1;stroke-width:1.23994" /> -</svg> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="#ff7e00" d="m16.607 10 2.69-3.063-3.955-.88.409-4.08-3.72 1.65L9.998.08 7.952 3.627l-3.72-1.65.397 4.08-3.931.88L3.388 10l-2.69 3.063 3.955.88-.409 4.08 3.72-1.65 2.034 3.547 2.046-3.547 3.72 1.65-.397-4.08 3.955-.88zm-3.51 1.86h-6.2v-1.24h6.2Zm0-2.48h-6.2V8.14h6.2Z"/></svg> \ No newline at end of file diff --git a/src/assets/images/youtube-icon.png b/src/assets/images/youtube-icon.png deleted file mode 100644 index 34824c5a..00000000 --- a/src/assets/images/youtube-icon.png +++ /dev/null Binary files differdiff --git a/src/assets/images/youtube-icon.svg b/src/assets/images/youtube-icon.svg new file mode 100644 index 00000000..8570ec08 --- /dev/null +++ b/src/assets/images/youtube-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300"><rect width="300" height="300" fill="red" ry="150"/><path fill="#fff" d="M149.938 79.223s-63.22 0-79.086 4.123c-8.496 2.374-15.492 9.37-17.866 17.99-4.123 15.867-4.123 48.727-4.123 48.727s0 32.984 4.123 48.601c2.374 8.62 9.245 15.491 17.866 17.865 15.992 4.248 79.086 4.248 79.086 4.248s63.344 0 79.21-4.123c8.621-2.373 15.492-9.12 17.74-17.865 4.249-15.742 4.249-48.601 4.249-48.601s.125-32.985-4.248-48.852c-2.25-8.62-9.12-15.491-17.74-17.74-15.867-4.373-79.211-4.373-79.211-4.373m-20.116 40.48 52.6 30.36-52.6 30.234z"/></svg> \ No newline at end of file diff --git a/src/assets/images/youtubeMusic-icon.png b/src/assets/images/youtubeMusic-icon.png deleted file mode 100644 index a33df696..00000000 --- a/src/assets/images/youtubeMusic-icon.png +++ /dev/null Binary files differdiff --git a/src/assets/images/youtubeMusic-icon.svg b/src/assets/images/youtubeMusic-icon.svg new file mode 100644 index 00000000..76b052f8 --- /dev/null +++ b/src/assets/images/youtubeMusic-icon.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><circle cx="12" cy="12" r="12" fill="red"/><path fill="#FFF" d="M12 4.65c-4.05 0-7.34 3.28-7.34 7.34 0 4.05 3.28 7.34 7.34 7.34 4.05 0 7.34-3.28 7.34-7.34 0-4.05-3.28-7.34-7.34-7.34m0 13.7c-3.51 0-6.36-2.85-6.36-6.36S8.49 5.63 12 5.63s6.36 2.85 6.36 6.36-2.85 6.36-6.36 6.36"/><path fill="#FFF" d="m9.76 8.38 6.14 3.52-6.14 3.52z"/></svg> \ No newline at end of file diff --git a/src/assets/javascripts/localise.js b/src/assets/javascripts/localise.js deleted file mode 100644 index c0936873..00000000 --- a/src/assets/javascripts/localise.js +++ /dev/null @@ -1,34 +0,0 @@ -window.browser = window.browser || window.chrome - -function localisePage() { - /** - * @param {string} tag - */ - function getMessage(tag) { - return tag.replace(/__MSG_(\w+)__/g, (_match, v1) => { - return v1 ? browser.i18n.getMessage(v1) : null - }) - } - - const elements = document.querySelectorAll("[data-localise]") - for (let i in elements) - if (elements.hasOwnProperty(i)) { - const obj = elements[i] - const tag = obj.getAttribute("data-localise").toString() - const msg = getMessage(tag) - if (msg && msg !== tag) obj.textContent = msg - } - - const placeholders = document.querySelectorAll("[data-localise-placeholder]") - for (let i in placeholders) - if (placeholders.hasOwnProperty(i)) { - const obj = placeholders[i] - const tag = obj.getAttribute("data-localise-placeholder").toString() - const msg = getMessage(tag) - if (msg && msg !== tag) obj.placeholder = msg - } -} - -export default { - localisePage, -} diff --git a/src/assets/javascripts/services.js b/src/assets/javascripts/services.js index 0aea56cc..7213380f 100644 --- a/src/assets/javascripts/services.js +++ b/src/assets/javascripts/services.js @@ -5,604 +5,675 @@ window.browser = window.browser || window.chrome let config, options -function init() { - return new Promise(async resolve => { - options = await utils.getOptions() - config = await utils.getConfig() - resolve() - }) +async function init() { + options = await utils.getOptions() + config = await utils.getConfig() } init() browser.storage.onChanged.addListener(init) function all(service, frontend, options, config) { - let instances = [] - if (!frontend) { - for (const frontend in config.services[service].frontends) { - if (options[frontend]) { - instances.push(...options[frontend]) - } - } - } else if (options[frontend]) { - instances = options[frontend] - } - return instances + let instances = [] + if (!frontend) { + for (const frontend in config.services[service].frontends) { + if (options[frontend]) { + instances.push(...options[frontend]) + } + } + } else if (options[frontend]) { + instances = options[frontend] + } + return instances } /** * @param {string} service * @param {URL} url * @param {{}} config + * @param {{}} options * @param {string} frontend */ -function regexArray(service, url, config, frontend) { - let targetList = config.services[service].targets - if (frontend && 'excludeTargets' in config.services[service].frontends[frontend]) { - targetList = targetList.filter(val => - !config.services[service].frontends[frontend].excludeTargets.includes(targetList.indexOf(val)) - ) - } - for (const targetString in targetList) { - const target = new RegExp(targetList[targetString]) - if (target.test(url.href)) return true - } - return false +function regexArray(service, url, config, options, frontend) { + let targetList = config.services[service].targets + if (frontend && "excludeTargets" in config.services[service].frontends[frontend]) { + if (service !== "search" || !options["search"].redirectGoogle) { + targetList = targetList.filter( + val => !config.services[service].frontends[frontend].excludeTargets.includes(targetList.indexOf(val)) + ) + } + } + for (const targetString in targetList) { + const target = new RegExp(targetList[targetString]) + if (target.test(url.href)) return true + } + return false +} + +/** + * @param {URL} url + * @param {string} frontend + * @param {string} randomInstance + * @returns {undefined|string} + */ +function rewrite(url, originUrl, frontend, randomInstance) { + switch (frontend) { + case "hyperpipe": + for (const key of [...url.searchParams.keys()]) if (key !== "q") url.searchParams.delete(key) + return `${randomInstance}${url.pathname}${url.search}`.replace(/\/search\?q=.*/, searchQuery => + searchQuery.replace("?q=", "/") + ) + case "searx": + case "searxng": + for (const key of [...url.searchParams.keys()]) if (key !== "q") url.searchParams.delete(key) + return `${randomInstance}/${url.search}` + case "whoogle": + for (const key of [...url.searchParams.keys()]) if (key !== "q") url.searchParams.delete(key) + return `${randomInstance}/search${url.search}` + case "4get": { + const s = url.searchParams.get("q") + if (s !== null) return `${randomInstance}/web?s=${encodeURIComponent(s)}` + return randomInstance + } + case "librey": + for (const key in url.searchParams.keys()) if (key != "q") url.searchParams.delete(key) + return `${randomInstance}/search.php${url.search}` + case "yattee": + url.searchParams.delete("si") + return url.href.replace(/^https?:\/{2}/, "yattee://") + case "freetube": + url.searchParams.delete("si") + return "freetube://" + url.href + case "freetubePwa": + url.searchParams.delete("si") + return "freetube://" + url.href + case "poketube": { + url.searchParams.delete("si") + if (url.pathname.startsWith("/channel")) { + const reg = /\/channel\/(.*)\/?$/.exec(url.pathname) + if (reg) { + const id = reg[1] + return `${randomInstance}/channel?id=${id}${url.search}` + } + } + if (/\/@[a-z]+\//.exec(url.pathname)) return randomInstance + return `${randomInstance}${url.pathname}${url.search}` + } + case "libMedium": + case "scribe": { + const regex = url.hostname.match(/^(link|cdn-images-\d+|.*)\.medium\.com/) + if (regex && regex.length > 1) { + const subdomain = regex[1] + if (subdomain != "link" || !subdomain.startsWith("cdn-images")) { + return `${randomInstance}/@${subdomain}${url.pathname}${url.search}` + } + } + return `${randomInstance}${url.pathname}${url.search}` + } + case "translite": + case "simplyTranslate": + return `${randomInstance}/${url.search}` + case "send": + case "mozhi": + return randomInstance + case "libreTranslate": + return `${randomInstance}/${url.search.replace("sl", "source").replace("tl", "target").replace("text", "q")}` + case "osm": { + if (originUrl && originUrl.host === "earth.google.com") return randomInstance + + let prefs = { layers: "mapnik" } + + let mapCentre = "#" + const mapCentreData = utils.convertMapCentre(url) + if (mapCentreData.zoom && mapCentreData.lon && mapCentreData.lat) { + mapCentre = `#map=${mapCentreData.zoom}/${mapCentreData.lon}/${mapCentreData.lat}` + } + + if (url.pathname.includes("/embed")) { + // https://www.google.com/maps/embed/v1/place?key=AIzaSyD4iE2xVSpkLLOXoyqT-RuPwURN3ddScAI&q=Eiffel+Tower,Paris+France + const query = utils.getQuery(url) + let { coordinate, boundingbox } = utils.addressToLatLng(query) + prefs.bbox = boundingbox + prefs.marker = coordinate + return `${randomInstance}/export/embed.html?${utils.prefsEncoded(prefs)}` + } + + if (url.pathname.includes("/dir")) { + if (url.searchParams.has("travelmode")) { + const travelModes = { + driving: "fossgis_osrm_car", + walking: "fossgis_osrm_foot", + bicycling: "fossgis_osrm_bike", + transit: "fossgis_osrm_car", // not implemented on OSM, default to car. + } + prefs.engine = travelModes[url.searchParams.get("travelmode")] + } + const regex1 = /\/dir\/([^@/]+)\/([^@/]+)\/@-?\d[0-9.]*,-?\d[0-9.]*,\d{1,2}[.z]/.exec(url.pathname) + const regex2 = /\/dir\/([^@/]+)\//.exec(url.pathname) + if (regex1) { + // https://www.google.com/maps/dir/92+Rue+Moncey,+69003+Lyon,+France/M%C3%A9dip%C3%B4le+Lyon-Villeurbanne/@45.760254,4.8486298,13z?travelmode=bicycling + const origin = utils.addressToLatLng(decodeURIComponent(regex1[1])).coordinate ?? "" + const destination = utils.addressToLatLng(decodeURIComponent(regex1[2])).coordinate ?? "" + prefs.route = `${origin};${destination}` + } else if (regex2) { + // https://www.google.com/maps/dir/92+Rue+Moncey,+69003+Lyon,+France/@45.760254,4.8486298,13z?travelmode=bicycling + const origin = utils.addressToLatLng(decodeURIComponent(regex2[1])).coordinate ?? "" + prefs.route = `${origin};` + } else { + // https://www.google.com/maps/dir/?api=1&origin=Space+Needle+Seattle+WA&destination=Pike+Place+Market+Seattle+WA&travelmode=bicycling + const origin = utils.addressToLatLng(url.searchParams.get("origin")).coordinate ?? "" + const destination = utils.addressToLatLng(url.searchParams.get("destination")).coordinate ?? "" + prefs.route = `${origin};${destination}` + } + return `${randomInstance}/directions?${utils.prefsEncoded(prefs)}${mapCentre}` + } + + const placeRegex = /\/place\/(.*?)\// + if (url.pathname.match(placeRegex)) { + // https://www.google.com/maps/place/H%C3%B4tel+de+Londres+Eiffel/@40.9845265,28.7081268,14z + const query = url.pathname.match(placeRegex)[1] + return `${randomInstance}/search?query=${query}${mapCentre}` + } + + if (url.searchParams.has("ll")) { + // https://maps.google.com/?ll=38.882147,-76.99017 + const [mlat, mlon] = url.searchParams.get("ll").split(",") + return `${randomInstance}/search?query=${mlat}%2C${mlon}` + } + + if (url.searchParams.has("viewpoint")) { + // https://www.google.com/maps/@?api=1&map_action=pano&viewpoint=48.857832,2.295226&heading=-45&pitch=38&fov=80 + const [mlat, mlon] = url.searchParams.get("viewpoint").split(",") + return `${randomInstance}/search?query=${mlat}%2C${mlon}` + } + + const query = utils.getQuery(url) + if (query) return `${randomInstance}/search?query="${query}${mapCentre}&${utils.prefsEncoded(prefs)}` + return `${randomInstance}/${mapCentre}&${utils.prefsEncoded(prefs)}` + } + case "breezeWiki": { + let wiki, + urlpath = "" + if (url.hostname.match(/^[a-zA-Z0-9-]+\.(?:fandom|wikia)\.com/)) { + wiki = url.hostname.match(/^[a-zA-Z0-9-]+(?=\.(?:fandom|wikia)\.com)/) + if (wiki == "www" || !wiki) wiki = "" + else wiki = `/${wiki}` + urlpath = url.pathname + } else { + wiki = url.pathname.match(/(?<=wiki\/w:c:)[a-zA-Z0-9-]+(?=:)/) + if (!wiki) wiki = "" + else { + wiki = "/" + wiki + "/wiki/" + urlpath = url.pathname.match(/(?<=wiki\/w:c:[a-zA-Z0-9-]+:).+/) + } + } + if (url.href.search(/Special:Search\?query/) > -1) { + return `${randomInstance}${wiki}${urlpath}${url.search}` + .replace(/Special:Search\?query/, "search?q") + .replace(/\/wiki/, "") + } + return `${randomInstance}${wiki}${urlpath}${url.search}` + } + case "rimgo": + if (url.href.search(/^https?:\/{2}(?:[im]\.)?stack\./) > -1) + return `${randomInstance}/stack${url.pathname}${url.search}` + return `${randomInstance}${url.pathname}${url.search}` + case "redlib": + case "libreddit": { + const subdomain = url.hostname.match(/^(?:(?:external-)?preview|i)(?=\.redd\.it)/) + if (!subdomain) return `${randomInstance}${url.pathname}${url.search}` + switch (subdomain[0]) { + case "preview": + return `${randomInstance}/preview/pre${url.pathname}${url.search}` + case "external-preview": + return `${randomInstance}/preview/external-pre${url.pathname}${url.search}` + case "i": + return `${randomInstance}/img${url.pathname}` + } + return randomInstance + } + case "teddit": + if (/^(?:(?:external-)?preview|i)\.redd\.it/.test(url.hostname)) { + if (url.search == "") return `${randomInstance}${url.pathname}?teddit_proxy=${url.hostname}` + else return `${randomInstance}${url.pathname}${url.search}&teddit_proxy=${url.hostname}` + } + return `${randomInstance}${url.pathname}${url.search}` + case "eddrit": + if (/^(?:(?:external-)?preview|i)\.redd\.it/.test(url.hostname)) return randomInstance + return `${randomInstance}${url.pathname}${url.search}` + case "neuters": { + const p = url.pathname + if (p.startsWith("/article/") || p.startsWith("/pf/") || p.startsWith("/arc/") || p.startsWith("/resizer/")) { + return randomInstance + } + return `${randomInstance}${p}` + } + case "dumb": + if (url.pathname.endsWith("-lyrics")) return `${randomInstance}${url.pathname}` + return `${randomInstance}${url.pathname}${url.search}` + case "intellectual": + return `${randomInstance}${url.pathname}${url.search}` + case "ruralDictionary": + if (!url.pathname.includes("/define.php") && !url.pathname.includes("/random.php") && url.pathname != "/") + return randomInstance + return `${randomInstance}${url.pathname}${url.search}` + case "anonymousOverflow": { + if (url.hostname == "stackoverflow.com") { + const threadID = /^\/a\/(\d+)\/?/.exec(url.pathname) + if (threadID) return `${randomInstance}/questions/${threadID[1]}${url.search}` + return `${randomInstance}${url.pathname}${url.search}` + } + if (url.pathname == "/" || url.pathname == "") { + // https://stackexchange.com or https://superuser.com + return `${randomInstance}${url.pathname}${url.search}` + } + const regex = url.href.match(/https?:\/{2}(?:([a-zA-Z0-9-]+)\.)?stackexchange\.com\//) + if (regex && regex.length > 1) { + const subdomain = regex[1] + return `${randomInstance}/exchange/${subdomain}${url.pathname}${url.search}` + } + const notExchangeRegex = url.hostname.match( + /(?:[a-zA-Z]+\.)?(?:askubuntu\.com|mathoverflow\.net|serverfault\.com|stackapps\.com|superuser\.com|stackoverflow\.com)/ + ) + if (notExchangeRegex) { + return `${randomInstance}/exchange/${notExchangeRegex[0]}${url.pathname}${url.search}` + } + return `${randomInstance}${url.pathname}${url.search}` + } + case "biblioReads": + return `${randomInstance}${url.pathname}${url.search}` + case "wikiless": { + let hostSplit = url.host.split(".") + // wikiless doesn't have mobile view support yet + if (hostSplit[0] != "wikipedia" && hostSplit[0] != "www") { + if (hostSplit[0] == "m") url.searchParams.append("mobileaction", "toggle_view_mobile") + else url.searchParams.append("lang", hostSplit[0]) + if (hostSplit[1] == "m") url.searchParams.append("mobileaction", "toggle_view_mobile") + } + return `${randomInstance}${url.pathname}${url.search}${url.hash}` + } + case "proxiTok": + if (url.pathname.startsWith("/email")) return randomInstance + return `${randomInstance}${url.pathname}${url.search}` + case "waybackClassic": { + const regex = /^\/\web\/(?:[0-9]+)?\*\/(.*)/.exec(url.pathname) + if (regex) { + const link = regex[1] + return `${randomInstance}/cgi-bin/history.cgi?utf8=✓&q=${encodeURIComponent(link)}` + } + const regex2 = /(^\/\web\/([0-9]+)\/.*)/.exec(url.pathname) + if (regex2) { + let link = regex2[1] + link = link.replace(regex2[2], regex2[2] + "if_") + return `https://web.archive.org${link}` + } + return + } + case "gothub": + if (url.hostname == "gist.github.com") return `${randomInstance}/gist${url.pathname}${url.search}` + if (url.hostname == "raw.githubusercontent.com") return `${randomInstance}/raw${url.pathname}${url.search}` + return `${randomInstance}${url.pathname}${url.search}` + case "mikuInvidious": + if (url.hostname == "bilibili.com" || url.hostname == "www.bilibili.com" || url.hostname == "b23.tv") + return `${randomInstance}${url.pathname}${url.search}` + if (url.hostname == "space.bilibili.com") return `${randomInstance}/space${url.pathname}${url.search}` + case "tent": { + if (url.hostname == "bandcamp.com" && url.pathname == "/search") { + const query = url.searchParams.get("q") + return `${randomInstance}/search.php?query=${encodeURIComponent(query)}` + } + if (url.hostname.endsWith("bandcamp.com")) { + const regex = /^(.*)\.bandcamp\.com/.exec(url.hostname) + const artist = regex[1] + if (url.pathname == "/" || url.pathname == "/music") { + return `${randomInstance}/artist.php?name=${artist}` + } else { + const regex = /^\/(.*)\/(.*)/.exec(url.pathname) + if (regex) { + const type = regex[1] + const name = regex[2] + return `${randomInstance}/release.php?artist=${artist}&type=${type}&name=${name}` + } + } + } + if (url.hostname == "f4.bcbits.com") { + const regex = /\/img\/(.*)/.exec(url.pathname) + const image = regex[1] + return `${randomInstance}/image.php?file=${image}` + } + if (url.hostname == "t4.bcbits.com") { + const regex = /\/stream\/(.*)\/(.*)\/(.*)/.exec(url.pathname) + if (regex) { + const directory = regex[1] + const format = regex[2] + const file = regex[3] + const token = url.searchParams.get("token") + return `${randomInstance}/audio.php/?directory=${directory}&format=${format}&file=${file}&token=${encodeURIComponent(token)}` + } + } + } + case "binternet": + if (url.hostname == "i.pinimg.com") return `${randomInstance}/image_proxy.php?url=${url.href}` + return `${randomInstance}${url.pathname}${url.search}` + case "laboratory": { + let path = url.pathname + if (path == "/") path = "" + return `${randomInstance}/${url.hostname}${path}${url.search}` + } + case "quetre": { + const regex = /([a-z]+)\.quora\.com/.exec(url.hostname) + if (regex) { + const lang = regex[1] + url.searchParams.append("lang", lang) + return `${randomInstance}${url.pathname}${url.search}` + } + return `${randomInstance}${url.pathname}${url.search}` + } + case "liteXiv": + case "pixivFe": { + const regex = /\/[a-z]{1,3}\/(.*)/.exec(url.pathname) + if (regex) { + const path = regex[1] + return `${randomInstance}/${path}${url.search}` + } + return `${randomInstance}${url.pathname}${url.search}` + } + case "invidious": { + url.searchParams.delete("si") + if (url.hostname == "youtu.be" || (url.hostname.endsWith("youtube.com") && url.pathname.startsWith("/live"))) { + const watch = url.pathname.substring(url.pathname.lastIndexOf("/") + 1) + return `${randomInstance}/watch?v=${watch}${url.search.replace("?", "&")}` + } + if (url.hostname.endsWith("youtube.com") && url.pathname.startsWith("/redirect?")) return url.href + return `${randomInstance}${url.pathname}${url.search}` + } + case "freetubeMusic": { + if (url.hostname == "youtu.be" || (url.hostname.endsWith("youtube.com") && url.pathname.startsWith("/live"))) { + const watch = url.pathname.substring(url.pathname.lastIndexOf("/") + 1) + return `freetube://youtube.com/watch?v=${watch}` + } + return "freetube://" + url.href + } + case "invidiousMusic": { + if (url.hostname == "youtu.be" || (url.hostname.endsWith("youtube.com") && url.pathname.startsWith("/live"))) { + const watch = url.pathname.substring(url.pathname.lastIndexOf("/") + 1) + return `${randomInstance}/watch?v=${watch}` + } + return `${randomInstance}${url.pathname}${url.search}` + } + case "materialious": { + url.searchParams.delete("si") + if (url.hostname == "youtu.be" || (url.hostname.endsWith("youtube.com") && url.pathname.startsWith("/live"))) { + const watch = url.pathname.substring(url.pathname.lastIndexOf("/") + 1) + return `${randomInstance}/watch/${watch}${url.search.replace("?", "&")}` + } + if (url.hostname.endsWith("youtube.com")) { + if (url.pathname.startsWith("/watch")) { + if (url.searchParams.has("v")) { + const watch = url.searchParams.get("v") + url.searchParams.delete("v") + return `${randomInstance}/watch/${watch}${url.search.replace("?", "&")}` + } + return `${randomInstance}/watch/${url.search.replace("?", "&")}` + } + if (url.pathname.startsWith("/results")) { + if (url.searchParams.has("search_query")) { + const search = url.searchParams.get("search_query") + url.searchParams.delete("search_query") + return `${randomInstance}/search/${search}${url.search.replace("?", "&")}` + } + return `${randomInstance}/search/${url.search.replace("?", "&")}` + } + if (url.pathname.startsWith("/redirect?")) { + return url.href + } + } + return `${randomInstance}${url.pathname}${url.search}` + } + case "libremdb": { + if (url.pathname.startsWith("/Name")) { + for (const [key, value] of url.searchParams.entries()) { + return `${randomInstance}/title/${encodeURIComponent(key)}` + } + } + return `${randomInstance}${url.pathname}${url.search}` + } + case "tuboYoutube": + url.searchParams.delete("si") + if (url.pathname.startsWith("/channel")) return `${randomInstance}/channel?url=${encodeURIComponent(url.href)}` + if (url.pathname.startsWith("/watch")) return `${randomInstance}/stream?url=${encodeURIComponent(url.href)}` + return randomInstance + case "tuboSoundcloud": + if (url.pathname == "/") return `${randomInstance}?kiosk?serviceId=1` + if (url.pathname.match(/^\/[^\/]+(\/$|$)/)) return `${randomInstance}/channel?url=${encodeURIComponent(url.href)}` + if (url.pathname.match(/^\/[^\/]+\/[^\/]+/)) return `${randomInstance}/stream?url=${encodeURIComponent(url.href)}` + return randomInstance + case "twineo": + case "safetwitch": + if (url.hostname.startsWith("clips.")) return `${randomInstance}/clip${url.pathname}${url.search}` + return `${randomInstance}${url.pathname}${url.search}` + + case "tekstoLibre": + return `${randomInstance}/?${url.pathname.slice(1)}` + case "skyview": + if (url.pathname == "/") return randomInstance + return `${randomInstance}?url=${encodeURIComponent(url.href)}` + case "nitter": { + let search = new URLSearchParams(url.search) + + search.delete("ref_src") + search.delete("ref_url") + search.delete("s") // type of device that shared the link + search.delete("t") // some sort of tracking ID + + search = search.toString() + if (search !== "") search = `?${search}` + + if (url.host.split(".")[0] === "pbs" || url.host.split(".")[0] === "video") { + try { + const [, id, format, extra] = search.match(/(.*)\?format=(.*)&(.*)/) + const query = encodeURIComponent(`${id}.${format}?${extra}`) + return `${randomInstance}/pic${url.pathname}${query}` + } catch { + return `${randomInstance}/pic${url.pathname}${search}` + } + } + if (url.pathname.split("/").includes("tweets")) + return `${randomInstance}${url.pathname.replace("/tweets", "")}${search}` + if (url.host == "t.co") return `${randomInstance}/t.co${url.pathname}` + return `${randomInstance}${url.pathname}${search}#m` + } + case "priviblur": { + if (url.hostname == "www.tumblr.com") return `${randomInstance}${url.pathname}${url.search}` + if (url.hostname.startsWith("assets")) return `${randomInstance}/tblr/assets${url.pathname}${url.search}` + if (url.hostname.startsWith("static")) return `${randomInstance}/tblr/static${url.pathname}${url.search}` + + const reg = /^([0-9]+)\.media\.tumblr\.com/.exec(url.hostname) // *.media.tumblr.com + if (reg) return `${randomInstance}/tblr/media/${reg[1]}${url.pathname}${url.search}` + + const blogregex = /^(?:www\.)?([a-z\d-]+)\.tumblr\.com/.exec(url.hostname) // <blog>.tumblr.com + if (blogregex) { + const blog_name = blogregex[1] + // Under the <blog>.tumblr.com domain posts are under a /post path + if (url.pathname.startsWith("/post")) + return `${randomInstance}/${blog_name}${url.pathname.slice(5)}${url.search}` + else return `${randomInstance}/${blog_name}${url.pathname}${url.search}` + } + return `${randomInstance}${url.pathname}${url.search}` + } + case "freetar": + if (url.pathname.startsWith("/search.php")) { + url.searchParams.set("search_term", url.searchParams.get("value")) + url.searchParams.delete("value") + url.searchParams.delete("search_type") + return `${randomInstance}/search${url.search}` + } + if (url.pathname.startsWith("/artist")) return + return `${randomInstance}${url.pathname}${url.search}` + case "ratAintTieba": + url.searchParams.delete("ie") + return `${randomInstance}${url.pathname}${url.search}` + case "shoelace": { + const reg = /^\/(?:(?:(?:[^\/])?\/post)|t)\/([^\/])/.exec(url.pathname) + if (reg) return `${randomInstance}/t/${reg[1]}${url.search}` + return `${randomInstance}${url.pathname}${url.search}` + } + case "skunkyArt": { + if (url.pathname.startsWith("/search")) return `${randomInstance}${url.pathname}${url.search}&scope=all` + + const artReg = /^\/.*?\/art\/(.*)\/?/.exec(url.pathname) + if (artReg) return `${randomInstance}/post/art/${artReg[1]}${url.search}` + + const userReg = /^\/([^\/]+)$/.exec(url.pathname) + if (userReg) return `${randomInstance}/user/${userReg[1]}${url.search}` + + const galleryReg = /^\/.*?\/gallery(\/$|$)$/.exec(url.pathname) + if (galleryReg) return `${randomInstance}/user/${userReg[1]}?a=gallery` + + return `${randomInstance}${url.pathname}${url.search}` + } + case "ytify": { + if (url.pathname.startsWith("/watch")) + return `${randomInstance}/?s=${encodeURIComponent(url.searchParams.get("v"))}` + + const channelReg = /\/channel\/([^\/]+)/.exec(url.pathname) + if (channelReg) return `${randomInstance}/list?channel=${channelReg[1]}` + + if (url.pathname.startsWith("/playlist")) + return `${randomInstance}/list?playlists=${encodeURIComponent(url.searchParams.get("list"))}` + return `${randomInstance}${url.pathname}${url.search}` + } + case "koub": + if (url.pathname.startsWith("/view/") || url.pathname.startsWith("/stories/")) { + return `${randomInstance}${url.pathname}${url.search}` + } + const accountReg = /^\/([^\/]+)\/?$/.exec(url.pathname) + if (accountReg) return `${randomInstance}/account${url.pathname}${url.search}` + + case "piped": + case "pipedMaterial": + case "cloudtube": + case "lightTube": + case "viewtube": + url.searchParams.delete("si") + default: + return `${randomInstance}${url.pathname}${url.search}` + } } /** * @param {URL} url * @param {string} type - * @param {URL} initiator + * @param {URL} originUrl + * @param {URL} documentUrl + * @param {boolean} incognito * @param {boolean} forceRedirection + * @returns {string | undefined} */ -async function redirectAsync(url, type, initiator, forceRedirection) { - await init() - return redirect(url, type, initiator, forceRedirection) +function redirect(url, type, originUrl, documentUrl, incognito, forceRedirection) { + if (type != "main_frame" && type != "sub_frame" && type != "image") return + let randomInstance + let frontend + if (!forceRedirection && options.redirectOnlyInIncognito == true && !incognito) return + for (const service in config.services) { + if (!forceRedirection && !options[service].enabled) continue + if (!forceRedirection && options[service].redirectOnlyInIncognito == true && !incognito) continue + + frontend = options[service].frontend + + if ( + config.services[service].frontends[frontend].desktopApp && + type != "main_frame" && + options[service].redirectType != "main_frame" + ) + frontend = options[service].embedFrontend + + if (!regexArray(service, url, config, options, frontend)) { + frontend = null + continue + } + + if (type != "main_frame" && documentUrl && options[service].redirectType == "sub_frame") { + if (regexArray(service, documentUrl, config, options, frontend)) { + return + } + } + + if ( + config.services[service].embeddable && + type != options[service].redirectType && + options[service].redirectType != "both" + ) { + if (options[service].unsupportedUrls == "block") return "CANCEL" + return + } + + let instanceList = options[frontend] + if (instanceList === undefined) break // should not happen if settings are correct + + if (config.services[service].frontends[frontend].localhost && options[service].instance == "localhost") { + randomInstance = `http://${frontend}.localhost:8080` + } else if (instanceList.length === 0) { + return `https://no-instance.libredirect.invalid?frontend=${encodeURIComponent(frontend)}&url=${encodeURIComponent(url.href)}` + } else { + randomInstance = utils.getRandomInstance(instanceList) + } + + if (originUrl && instanceList.includes(originUrl.origin)) { + if (type == "main_frame") return "BYPASSTAB" + else return null + } + break + } + if (!frontend) return + + return rewrite(url, originUrl, frontend, randomInstance) } /** * @param {URL} url * @param {string} type - * @param {URL} initiator + * @param {URL} originUrl + * @param {URL} documentUrl + * @param {boolean} incognito * @param {boolean} forceRedirection - * @returns {string | undefined} + * @returns {Promise<string | undefined>} */ -function redirect(url, type, initiator, forceRedirection, incognito) { - if (type != "main_frame" && type != "sub_frame" && type != "image") return - let randomInstance - let frontend - if (!forceRedirection && options.redirectOnlyInIncognito == true && !incognito) return - for (const service in config.services) { - if (!forceRedirection && !options[service].enabled) continue - - frontend = options[service].frontend - - - if (config.services[service].frontends[frontend].desktopApp && type != "main_frame" && options[service].redirectType != "main_frame") - frontend = options[service].embedFrontend - - - if (!regexArray(service, url, config, frontend)) { - frontend = null - continue - } - - if ( - config.services[service].embeddable && - type != options[service].redirectType && options[service].redirectType != "both" - ) { - if (options[service].unsupportedUrls == 'block') return 'CANCEL' - return - } - - let instanceList = options[frontend] - if (instanceList === undefined) break - if (instanceList.length === 0) return null - - if ( - initiator - && - instanceList.includes(initiator.origin) - ) return "BYPASSTAB" - - randomInstance = utils.getRandomInstance(instanceList) - if (config.services[service].frontends[frontend].localhost && options[service].instance == "localhost") { - randomInstance = `http://${frontend}.localhost:8080` - } - break - } - if (!frontend) return - - switch (frontend) { - case "hyperpipe": { - return `${randomInstance}${url.pathname}${url.search}`.replace(/\/search\?q=.*/, searchQuery => searchQuery.replace("?q=", "/")) - } - case "searx": - case "searxng": - return `${randomInstance}/${url.search}` - case "whoogle": { - return `${randomInstance}/search${url.search}` - } - case "4get": { - const s = url.searchParams.get("q") - if (s !== null) { - return `${randomInstance}/web?s=${encodeURIComponent(s)}` - } - return randomInstance - } - case "librex": { - return `${randomInstance}/search.php${url.search}` - } - case "send": { - return randomInstance - } - case "nitter": { - let search = new URLSearchParams(url.search) - - search.delete("ref_src") - search.delete("ref_url") - search.delete("s") // type of device that shared the link - search.delete("t") // some sort of tracking ID - - search = search.toString() - if (search !== "") search = `?${search}` - - if (url.host.split(".")[0] === "pbs" || url.host.split(".")[0] === "video") { - try { - const [, id, format, extra] = search.match(/(.*)\?format=(.*)&(.*)/) - const query = encodeURIComponent(`${id}.${format}?${extra}`) - return `${randomInstance}/pic${url.pathname}${query}` - } catch { - return `${randomInstance}/pic${url.pathname}${search}` - } - } - if (url.pathname.split("/").includes("tweets")) return `${randomInstance}${url.pathname.replace("/tweets", "")}${search}` - if (url.host == "t.co") return `${randomInstance}/t.co${url.pathname}` - return `${randomInstance}${url.pathname}${search}#m` - } - case "yattee": { - return url.href.replace(/^https?:\/{2}/, "yattee://") - } - case "freetube": { - return 'freetube://' + url.href - } - case "freetubePwa": { - return 'freetube://' + url.href - } - - case "poketube": { - if (url.pathname.startsWith('/channel')) { - const reg = /\/channel\/(.*)\/?$/.exec(url.pathname) - if (reg) { - const id = reg[1] - return `${randomInstance}/channel?id=${id}${url.search}` - } - } - if (/\/@[a-z]+\//.exec(url.pathname)) return randomInstance - return `${randomInstance}${url.pathname}${url.search}` - } - case "libMedium": - case "scribe": { - const regex = url.hostname.match(/^(link|cdn-images-\d+|.*)\.medium\.com/) - if (regex && regex.length > 1) { - const subdomain = regex[1] - if (subdomain != "link" || !subdomain.startsWith("cdn-images")) { - return `${randomInstance}/@${subdomain}${url.pathname}${url.search}` - } - } - return `${randomInstance}${url.pathname}${url.search}` - } - case "simplyTranslate": { - return `${randomInstance}/${url.search}` - } - case "mozhi": { - return `${randomInstance}` - } - case "libreTranslate": { - let search = url.search - .replace("sl", "source") - .replace("tl", "target") - .replace("text", "q") - return `${randomInstance}/${search}` - } - case "osm": { - const dataLatLngRegex = /!3d(-?[0-9]{1,}.[0-9]{1,})!4d(-?[0-9]{1,}.[0-9]{1,})/ - const placeRegex = /\/place\/(.*)\// - function convertMapCentre() { - let [lat, lon, zoom] = [null, null, null] - const reg = url.pathname.match(/@(-?\d[0-9.]*),(-?\d[0-9.]*),(\d{1,2})[.z]/) - if (reg) { - [, lon, lat, zoom] = reg - } else if (url.searchParams.has("center")) { - // Set map centre if present - [lat, lon] = url.searchParams.get("center").split(",") - zoom = url.searchParams.get("zoom") ?? "17" - } - return { zoom, lon, lat } - } - if (initiator && initiator.host === "earth.google.com") return randomInstance - const travelModes = { - driving: "fossgis_osrm_car", - walking: "fossgis_osrm_foot", - bicycling: "fossgis_osrm_bike", - transit: "fossgis_osrm_car", // not implemented on OSM, default to car. - } - - function addressToLatLng(address) { - const http = new XMLHttpRequest() - http.open("GET", `https://nominatim.openstreetmap.org/search?q=${encodeURIComponent(address)}&format=json&limit=1`, false) - http.send() - if (http.status == 200) { - const json = JSON.parse(http.responseText)[0] - if (json) { - return { - coordinate: `${json.lat},${json.lon}`, - boundingbox: `${json.boundingbox[2]},${json.boundingbox[1]},${json.boundingbox[3]},${json.boundingbox[0]}` - } - } - return {} - } - } - - let mapCentre = "#" - let prefs = {} - - const mapCentreData = convertMapCentre() - if (mapCentreData.zoom && mapCentreData.lon && mapCentreData.lat) mapCentre = `#map=${mapCentreData.zoom}/${mapCentreData.lon}/${mapCentreData.lat}` - if (url.searchParams.get("layer")) prefs.layers = osmLayers[url.searchParams.get("layer")] - - if (url.pathname.includes("/embed")) { - // Handle Google Maps Embed API - // https://www.google.com/maps/embed/v1/place?key=AIzaSyD4iE2xVSpkLLOXoyqT-RuPwURN3ddScAI&q=Eiffel+Tower,Paris+France - let query = "" - if (url.searchParams.has("q")) query = url.searchParams.get("q") - else if (url.searchParams.has("query")) query = url.searchParams.has("query") - else if (url.searchParams.has("pb")) - try { - query = url.searchParams.get("pb").split(/!2s(.*?)!/)[1] - } catch (error) { - // Unable to find map marker in URL. - console.error(error) - } - - let { coordinate, boundingbox } = addressToLatLng(query) - prefs.bbox = boundingbox - prefs.marker = coordinate - prefs.layers = "mapnik" - let prefsEncoded = new URLSearchParams(prefs).toString() - return `${randomInstance}/export/embed.html?${prefsEncoded}` - } else if (url.pathname.includes("/dir")) { - // Handle Google Maps Directions - if (url.searchParams.has("travelmode")) { - prefs.engine = travelModes[url.searchParams.get("travelmode")] - } - const regex1 = /\/dir\/([^@/]+)\/([^@/]+)\/@-?\d[0-9.]*,-?\d[0-9.]*,\d{1,2}[.z]/.exec(url.pathname) - const regex2 = /\/dir\/([^@/]+)\//.exec(url.pathname) - if (regex1) { - // https://www.google.com/maps/dir/92+Rue+Moncey,+69003+Lyon,+France/M%C3%A9dip%C3%B4le+Lyon-Villeurbanne/@45.760254,4.8486298,13z?travelmode=bicycling - const origin = addressToLatLng(decodeURIComponent(regex1[1])).coordinate ?? '' - const destination = addressToLatLng(decodeURIComponent(regex1[2])).coordinate ?? '' - prefs.route = `${origin};${destination}` - } else if (regex2) { - // https://www.google.com/maps/dir/92+Rue+Moncey,+69003+Lyon,+France/@45.760254,4.8486298,13z?travelmode=bicycling - const origin = addressToLatLng(decodeURIComponent(regex2[1])).coordinate ?? '' - prefs.route = `${origin};` - } else { - // https://www.google.com/maps/dir/?api=1&origin=Space+Needle+Seattle+WA&destination=Pike+Place+Market+Seattle+WA&travelmode=bicycling - const origin = addressToLatLng(url.searchParams.get("origin")).coordinate ?? '' - const destination = addressToLatLng(url.searchParams.get("destination")).coordinate ?? '' - prefs.route = `${origin};${destination}` - } - const prefsEncoded = new URLSearchParams(prefs).toString() - return `${randomInstance}/directions?${prefsEncoded}${mapCentre}` - } else if (url.pathname.includes("data=") && url.pathname.match(dataLatLngRegex)) { - // Get marker from data attribute - // https://www.google.com/maps/place/41%C2%B001'58.2%22N+40%C2%B029'18.2%22E/@41.032833,40.4862063,17z/data=!3m1!4b1!4m6!3m5!1s0x0:0xf64286eaf72fc49d!7e2!8m2!3d41.0328329!4d40.4883948 - let [, mlat, mlon] = url.pathname.match(dataLatLngRegex) - return `${randomInstance}/search?query=${mlat}%2C${mlon}` - } else if (url.searchParams.has("ll")) { - // Get marker from ll param - // https://maps.google.com/?ll=38.882147,-76.99017 - const [mlat, mlon] = url.searchParams.get("ll").split(",") - return `${randomInstance}/search?query=${mlat}%2C${mlon}` - } else if (url.searchParams.has("viewpoint")) { - // Get marker from viewpoint param. - // https://www.google.com/maps/@?api=1&map_action=pano&viewpoint=48.857832,2.295226&heading=-45&pitch=38&fov=80 - const [mlat, mlon] = url.searchParams.get("viewpoint").split(",") - return `${randomInstance}/search?query=${mlat}%2C${mlon}` - } else { - // Use query as search if present. - let query - if (url.searchParams.has("q")) query = url.searchParams.get("q") - else if (url.searchParams.has("query")) query = url.searchParams.get("query") - else if (url.pathname.match(placeRegex)) query = url.pathname.match(placeRegex)[1] - - let prefsEncoded = new URLSearchParams(prefs).toString() - if (query) return `${randomInstance}/search?query="${query}${mapCentre}&${prefsEncoded}` - } - - let prefsEncoded = new URLSearchParams(prefs).toString() - return `${randomInstance}/${mapCentre}&${prefsEncoded}` - } - case "breezeWiki": { - let wiki, urlpath = "" - if (url.hostname.match(/^[a-zA-Z0-9-]+\.(?:fandom|wikia)\.com/)) { - wiki = url.hostname.match(/^[a-zA-Z0-9-]+(?=\.(?:fandom|wikia)\.com)/) - if (wiki == "www" || !wiki) wiki = "" - else wiki = `/${wiki}` - urlpath = url.pathname - } else { - wiki = url.pathname.match(/(?<=wiki\/w:c:)[a-zA-Z0-9-]+(?=:)/) - if (!wiki) wiki = "" - else { - wiki = "/" + wiki + "/wiki/" - urlpath = url.pathname.match(/(?<=wiki\/w:c:[a-zA-Z0-9-]+:).+/) - } - } - if (url.href.search(/Special:Search\?query/) > -1) { - return `${randomInstance}${wiki}${urlpath}${url.search}`.replace(/Special:Search\?query/, "search?q").replace(/\/wiki/, "") - } - return `${randomInstance}${wiki}${urlpath}${url.search}` - } - case "rimgo": { - if (url.href.search(/^https?:\/{2}(?:[im]\.)?stack\./) > -1) { - return `${randomInstance}/stack${url.pathname}${url.search}` - } - return `${randomInstance}${url.pathname}${url.search}` - } - case "libreddit": { - const subdomain = url.hostname.match(/^(?:(?:external-)?preview|i)(?=\.redd\.it)/) - if (!subdomain) return `${randomInstance}${url.pathname}${url.search}` - switch (subdomain[0]) { - case "preview": - return `${randomInstance}/preview/pre${url.pathname}${url.search}` - case "external-preview": - return `${randomInstance}/preview/external-pre${url.pathname}${url.search}` - case "i": - return `${randomInstance}/img${url.pathname}` - } - return randomInstance - } - case "teddit": { - if (/^(?:(?:external-)?preview|i)\.redd\.it/.test(url.hostname)) { - if (url.search == "") return `${randomInstance}${url.pathname}?teddit_proxy=${url.hostname}` - else return `${randomInstance}${url.pathname}${url.search}&teddit_proxy=${url.hostname}` - } - return `${randomInstance}${url.pathname}${url.search}` - } - case "neuters": { - const p = url.pathname - if (p.startsWith('/article/') || p.startsWith('/pf/') || p.startsWith('/arc/') || p.startsWith('/resizer/')) { - return randomInstance - } - return `${randomInstance}${p}` - } - case "dumb": { - if (url.pathname.endsWith('-lyrics')) { - return `${randomInstance}${url.pathname}` - } - return `${randomInstance}${url.pathname}${url.search}` - } - case "intellectual": { - if (url.pathname.endsWith('-lyrics')) { - return `${randomInstance}/lyrics?path=${encodeURIComponent(url.pathname)}` - } - if (url.pathname.startsWith('/artists/')) { - return `${randomInstance}/artist?path=${url.pathname}` - } - return `${randomInstance}${url.pathname}${url.search}` - } - case "ruralDictionary": { - if (!url.pathname.includes('/define.php') && !url.pathname.includes('/random.php') && url.pathname != '/') return randomInstance - return `${randomInstance}${url.pathname}${url.search}` - } - case "anonymousOverflow": { - if (url.hostname == "stackoverflow.com") { - const threadID = /^\/a\/(\d+)\/?/.exec(url.pathname) - if (threadID) return `${randomInstance}/questions/${threadID[1]}${url.search}` - return `${randomInstance}${url.pathname}${url.search}` - } - const regex = url.href.match(/https?:\/{2}(?:([a-zA-Z0-9-]+)\.)?stackexchange\.com\//) - if (regex && regex.length > 1) { - const subdomain = regex[1] - return `${randomInstance}/exchange/${subdomain}${url.pathname}${url.search}` - } - } - case "biblioReads": { - return `${randomInstance}${url.pathname}${url.search}` - } - case "wikiless": { - let hostSplit = url.host.split(".") - // wikiless doesn't have mobile view support yet - if (hostSplit[0] != "wikipedia" && hostSplit[0] != "www") { - if (hostSplit[0] == "m") url.searchParams.append("mobileaction", "toggle_view_mobile") - else url.searchParams.append("lang", hostSplit[0]) - if (hostSplit[1] == "m") url.searchParams.append("mobileaction", "toggle_view_mobile") - } - return `${randomInstance}${url.pathname}${url.search}${url.hash}` - } - case "proxiTok": { - if (url.pathname.startsWith('/email')) return randomInstance - return `${randomInstance}${url.pathname}${url.search}` - } - case "waybackClassic": { - const regex = /^\/\web\/(?:[0-9]+)?\*\/(.*)/.exec(url.pathname) - if (regex) { - const link = regex[1] - return `${randomInstance}/cgi-bin/history.cgi?utf8=✓&q=${encodeURIComponent(link)}` - } - const regex2 = /(^\/\web\/([0-9]+)\/.*)/.exec(url.pathname) - if (regex2) { - let link = regex2[1] - link = link.replace(regex2[2], regex2[2] + 'if_') - return `https://web.archive.org${link}` - } - return - } - case "gothub": { - if (url.hostname == "gist.github.com") return `${randomInstance}/gist${url.pathname}${url.search}` - return `${randomInstance}${url.pathname}${url.search}` - } - case "mikuInvidious": { - console.log("Hello?") - if (url.hostname == "bilibili.com" || url.hostname == "www.bilibili.com" || url.hostname == 'b23.tv') { - console.log('wewe') - return `${randomInstance}${url.pathname}${url.search}` - } - if (url.hostname == "space.bilibili.com") { - return `${randomInstance}/space${url.pathname}${url.search}` - } - } - case "tent": { - if (url.hostname == 'bandcamp.com' && url.pathname == '/search') { - const query = url.searchParams.get('q') - return `${randomInstance}/search.php?query=${encodeURIComponent(query)}` - } - if (url.hostname.endsWith('bandcamp.com')) { - const regex = /^(.*)\.bandcamp\.com/.exec(url.hostname) - const artist = regex[1] - if (url.pathname == '/') { - return `${randomInstance}/artist.php?name=${artist}` - } else { - const regex = /^\/(.*)\/(.*)/.exec(url.pathname) - if (regex) { - const type = regex[1] - const name = regex[2] - return `${randomInstance}/release.php?artist=${artist}&type=${type}&name=${name}` - } - } - } - if (url.hostname == 'f4.bcbits.com') { - const regex = /\/img\/(.*)/.exec(url.pathname) - const image = regex[1] - return `${randomInstance}/image.php?file=${image}` - } - if (url.hostname == 't4.bcbits.com') { - const regex = /\/stream\/(.*)\/(.*)\/(.*)/.exec(url.pathname) - if (regex) { - const directory = regex[1] - const format = regex[2] - const file = regex[3] - const token = url.searchParams.get('token') - return `${randomInstance}/audio.php/?directory=${directory}&format=${format}&file=${file}&token=${encodeURIComponent(token)}` - } - } - } - case "binternet": { - if (url.hostname == "i.pinimg.com") return `${randomInstance}/image_proxy.php?url=${url.href}` - return randomInstance - } - case "laboratory": { - let path = url.pathname - if (path == "/") path = "" - return `${randomInstance}/${url.hostname}${path}${url.search}` - } - case "quetre": { - const regex = /([a-z]+)\.quora\.com/.exec(url.hostname) - console.log(regex) - if (regex) { - const lang = regex[1] - url.searchParams.append("lang", lang) - return `${randomInstance}${url.pathname}${url.search}` - } - return `${randomInstance}${url.pathname}${url.search}` - } - case "pixivFe": { - const regex = /\/[a-z]{1,3}\/(.*)/.exec(url.pathname) - if (regex) { - const path = regex[1] - return `${randomInstance}/${path}${url.search}` - } - return `${randomInstance}${url.pathname}${url.search}` - } - case "invidious": { - if (url.hostname == "youtu.be" || url.hostname.endsWith("youtube.com") && url.pathname.startsWith("/live")) { - const watch = url.pathname.substring(url.pathname.lastIndexOf('/') + 1) - return `${randomInstance}/watch?v=${watch}` - } - return `${randomInstance}${url.pathname}${url.search}` - } - case "invidiousMusic": { - if (url.hostname == "youtu.be" || url.hostname.endsWith("youtube.com") && url.pathname.startsWith("/live")) { - const watch = url.pathname.substring(url.pathname.lastIndexOf('/') + 1) - return `${randomInstance}/watch?v=${watch}` - } - return `${randomInstance}${url.pathname}${url.search}` - } - case "libremdb": { - if (url.pathname.startsWith("/Name")) { - for (const [key, value] of url.searchParams.entries()) { - return `${randomInstance}/title/${encodeURIComponent(key)}` - } - } - return `${randomInstance}${url.pathname}${url.search}` - } - case "tuboYoutube": { - if (url.pathname.startsWith("/channel")) { - return `${randomInstance}/channel?url=${encodeURIComponent(url.href)}` - } - if (url.pathname.startsWith("/watch")) { - return `${randomInstance}/stream?url=${encodeURIComponent(url.href)}` - } - return `${randomInstance}` - } - case "tuboSoundcloud": { - if (url.pathname == '/') return `${randomInstance}?kiosk?serviceId=1` - if (url.pathname.match(/^\/[^\/]+(\/$|$)/)) { - return `${randomInstance}/channel?url=${encodeURIComponent(url.href)}` - } - if (url.pathname.match(/^\/[^\/]+\/[^\/]+/)) { - return `${randomInstance}/stream?url=${encodeURIComponent(url.href)}` - } - return `${randomInstance}` - } - case "twineo": - case "safetwitch": { - if (url.hostname.startsWith("clips.")) { - return `${randomInstance}/clip${url.pathname}${url.search}` - } - return `${randomInstance}${url.pathname}${url.search}` - } - case "tekstoLibre": { - return `${randomInstance}/?${url.pathname.slice(1)}`; - } - case "skyview": { - if (url.pathname == '/') return randomInstance - return `${randomInstance}?url=${encodeURIComponent(url.href)}` - } - default: { - return `${randomInstance}${url.pathname}${url.search}` - } - } +async function redirectAsync(url, type, originUrl, documentUrl, incognito, forceRedirection) { + await init() + return redirect(url, type, originUrl, documentUrl, incognito, forceRedirection) } /** * @param {URL} url - * @param {*} returnFrontend */ -function computeService(url, returnFrontend) { - return new Promise(async resolve => { - const config = await utils.getConfig() - const options = await utils.getOptions() - for (const service in config.services) { - if (regexArray(service, url, config)) { - resolve(service) - return - } else { - for (const frontend in config.services[service].frontends) { - if (all(service, frontend, options, config).includes(utils.protocolHost(url))) { - if (returnFrontend) - resolve([service, frontend, utils.protocolHost(url)]) - else - resolve(service) - return - } - } - } - } - resolve() - }) +function computeService(url) { + return new Promise(async resolve => { + const config = await utils.getConfig() + const options = await utils.getOptions() + for (const service in config.services) { + if (regexArray(service, url, config, options)) { + resolve(service) + return + } else { + for (const frontend in config.services[service].frontends) { + if (all(service, frontend, options, config).findIndex(instance => url.href.startsWith(instance)) >= 0) { + return resolve(service) + } + } + } + } + resolve() + }) +} +export function computeFrontend(url) { + for (const service in config.services) { + for (const frontend in config.services[service].frontends) { + if (all(service, frontend, options, config).findIndex(instance => url.href.startsWith(instance)) >= 0) { + return { service, frontend } + } + } + } } /** @@ -610,279 +681,299 @@ function computeService(url, returnFrontend) { * @param {string} customService */ function switchInstance(url, customService) { - return new Promise(async resolve => { - let options = await utils.getOptions() - let config = await utils.getConfig() - - const protocolHost = utils.protocolHost(url) - if (customService) { - const instancesList = options[options[customService].frontend] - if (instancesList !== undefined) { - resolve(`${utils.getNextInstance(url.origin, instancesList)}${url.pathname}${url.search}`) - } - } else { - for (const service in config.services) { - let instancesList = options[options[service].frontend] - if (instancesList === undefined) continue - if (!instancesList.includes(protocolHost)) continue - - instancesList.splice(instancesList.indexOf(protocolHost), 1) - if (instancesList.length === 0) { - resolve() - return - } - resolve(`${utils.getNextInstance(url.origin, instancesList)}${url.pathname}${url.search}`) - return - } - } - resolve() - }) + return new Promise(async resolve => { + let options = await utils.getOptions() + let config = await utils.getConfig() + + const protocolHost = utils.protocolHost(url) + if (customService) { + const instancesList = options[options[customService].frontend] + if (instancesList !== undefined) { + const newInstance = utils.getNextInstance(url.origin, instancesList) + if (newInstance) { + return resolve(`${newInstance}${url.pathname}${url.search}`) + } + } + } else { + for (const service in config.services) { + let instancesList = options[options[service].frontend] + if (instancesList === undefined) continue + const index = instancesList.findIndex(instance => url.href.startsWith(instance)) + if (index < 0) continue + instancesList.splice(index, 1) + if (instancesList.length === 0) return resolve() + const newInstance = utils.getNextInstance(url.origin, instancesList) + if (newInstance) { + return resolve(`${newInstance}${url.pathname}${url.search}`) + } + } + } + resolve() + }) } /** * @param {URL} url */ async function reverse(url) { - let options = await utils.getOptions() - let config = await utils.getConfig() - let protocolHost = utils.protocolHost(url) - for (const service in config.services) { - let frontend = options[service].frontend - if (options[frontend] == undefined) continue - if (!options[frontend].includes(protocolHost) && protocolHost != `http://${frontend}.localhost:8080`) continue - switch (service) { - case "youtube": - case "imdb": - case "imgur": - case "tiktok": - case "twitter": - case "reddit": - case "imdb": - case "snopes": - case "urbanDictionary": - case "quora": - case "medium": - return `${config.services[service].url}${url.pathname}${url.search}` - case "fandom": - let regex = url.pathname.match(/^\/([a-zA-Z0-9-]+)\/wiki\/(.*)/) - if (regex) return `https://${regex[1]}.fandom.com/wiki/${regex[2]}` - return - case "wikipedia": { - const lang = url.searchParams.get("lang") - if (lang != null) { - return `https://${lang}.wikipedia.org${url.pathname}${url.search}${url.hash}` - } - return `https://wikipedia.org${url.pathname}${url.search}${url.hash}` - } - case "stackOverflow": { - if (url.pathname.startsWith("/questions/")) { - return `https://stackoverflow.com${url.pathname}${url.search}` - } - if (url.pathname.startsWith("/exchange/")) { - const regex = /\/exchange\/(.*?)(\/.*)/.exec(url.pathname) - if (regex) return `https://${regex[1]}.stackexchange.com${regex[2]}` - } - return - } - case "tekstowo": { - return `${config.services[service].url}/${url.search.slice(1)}` - } - default: - return - } - } - return + let options = await utils.getOptions() + let config = await utils.getConfig() + for (const service in config.services) { + let frontend = options[service].frontend + if (options[frontend] == undefined) continue + if ( + options[frontend].findIndex(instance => url.href.startsWith(instance)) < 0 && + !url.href.startsWith(`http://${frontend}.localhost:8080`) + ) + continue + switch (service) { + case "youtube": + case "imdb": + case "imgur": + case "tiktok": + case "reddit": + case "imdb": + case "snopes": + case "urbanDictionary": + case "quora": + case "twitter": + case "medium": + return `${config.services[service].url}${url.pathname}${url.search}` + case "fandom": { + let regex = url.pathname.match(/^\/([a-zA-Z0-9-]+)\/wiki\/(.*)/) + if (regex) return `https://${regex[1]}.fandom.com/wiki/${regex[2]}` + return + } + case "wikipedia": { + const lang = url.searchParams.get("lang") + if (lang != null) { + return `https://${lang}.wikipedia.org${url.pathname}${url.search}${url.hash}` + } + return `https://wikipedia.org${url.pathname}${url.search}${url.hash}` + } + case "stackOverflow": { + if (url.pathname.startsWith("/questions/")) { + return `https://stackoverflow.com${url.pathname}${url.search}` + } + if (url.pathname.startsWith("/exchange/")) { + const regex = /\/exchange\/(.*?)(\/.*)/.exec(url.pathname) + if (regex) return `https://${regex[1]}.stackexchange.com${regex[2]}` + } + return + } + case "tekstowo": + return `${config.services[service].url}/${url.search.slice(1)}` + case "goodreads": + return `https://goodreads.com${url.pathname}${url.search}` + default: + return + } + } + return } const defaultInstances = { - 'invidious': [ 'https://invidious.vhack.eu' ], // still a little bit flaky, thus not active - 'piped': ['https://pipedapi-libre.kavin.rocks'], - 'pipedMaterial': ['https://piped-material.xn--17b.net'], - 'cloudtube': ['https://tube.cadence.moe'], - 'poketube': ['https://poketube.fun'], - 'proxiTok': ['https://proxitok.pabloferreiro.es'], - 'nitter': ['https://nitter.net'], - 'libreddit': [ 'https://libreddit.vhack.eu' ], - 'teddit': ['https://teddit.net'], - 'scribe': ['https://scribe.rip'], - 'libMedium': ['https://md.vern.cc'], - 'quetre': ['https://quetre.iket.me'], - 'libremdb': ['https://libremdb.iket.me'], - 'simplyTranslate': ['https://simplytranslate.org'], - 'mozhi': ['https://mozhi.aryak.me'], - 'searxng': ['https://search.bus-hit.me'], - '4get': ['https://4get.ca'], - 'rimgo': ['https://rimgo.vern.cc'], - 'hyperpipe': ['https://hyperpipe.surge.sh'], - 'facil': [' https://facilmap.org '], - 'osm': ['https://www.openstreetmap.org'], - 'breezeWiki': ['https://breezewiki.com'], - 'neuters': ['https://neuters.de'], - 'dumb': ['https://dm.vern.cc'], - "intellectual": ['https://intellectual.insprill.net'], - 'ruralDictionary': ['https://rd.vern.cc'], - 'anonymousOverflow': ['https://code.whatever.social'], - 'biblioReads': ['https://biblioreads.ml'], - 'wikiless': ['https://wikiless.org'], - 'suds': ['https://sd.vern.cc'], - 'waybackClassic': ['https://wayback-classic.net'], - 'gothub': ['https://gh.odyssey346.dev'], - 'mikuInvidious': ['https://mikuinv.resrv.org'], - "tent": ['https://tent.sny.sh'], - "wolfreeAlpha": ['https://gqq.gitlab.io', 'https://uqq.gitlab.io'], - "laboratory": ['https://lab.vern.cc'], - 'binternet': ['https://binternet.ahwx.org'], - 'pixivFe': ['https://pixivfe.exozy.me'], - 'indestructables': ['https://indestructables.private.coffee'], - 'destructables': ['https://ds.vern.cc'], - 'safetwitch': ['https://safetwitch.drgns.space'], - 'twineo': ['https://twineo.exozy.me'], - 'proxigram': ['https://proxigram.privacyfrontends.repl.co'], - 'tuboYoutube': ['https://tubo.migalmoreno.com'], - 'tuboSoundcloud': ['https://tubo.migalmoreno.com'], - 'tekstoLibre': ['https://davilarek.github.io/TekstoLibre'], - 'skyview': ['https://skyview.social'], + invidious: ["https://invidious.vhack.eu"], + materialious: ["https://app.materialio.us"], + viewtube: ["https://viewtube.io"], + piped: ["https://pipedapi-libre.kavin.rocks"], + pipedMaterial: ["https://piped-material.xn--17b.net"], + cloudtube: ["https://tube.cadence.moe"], + lightTube: ["https://tube.kuylar.dev"], + poketube: ["https://poketube.fun"], + proxiTok: ["https://proxitok.pabloferreiro.es"], + redlib: ["https://libreddit.vhack.eu"], + eddrit: ["https://eddrit.com"], + scribe: ["https://scribe.rip"], + libMedium: ["https://md.vern.cc"], + quetre: ["https://quetre.iket.me"], + libremdb: ["https://libremdb.iket.me"], + simplyTranslate: ["https://simplytranslate.org"], + translite: ["https://tl.bloat.cat"], + mozhi: ["https://mozhi.aryak.me"], + searxng: ["https://search.bus-hit.me"], + "4get": ["https://4get.ca"], + rimgo: ["https://rimgo.vern.cc"], + hyperpipe: ["https://hyperpipe.surge.sh"], + osm: ["https://www.openstreetmap.org"], + breezeWiki: ["https://breezewiki.com"], + neuters: ["https://neuters.de"], + dumb: ["https://dm.vern.cc"], + intellectual: ["https://intellectual.insprill.net"], + ruralDictionary: ["https://rd.vern.cc"], + anonymousOverflow: ["https://code.whatever.social"], + suds: ["https://sd.vern.cc"], + unfunny: ["https://uf.vern.cc"], + soprano: ["https://sp.vern.cc"], + meme: ["https://mm.vern.cc"], + waybackClassic: ["https://wayback-classic.net"], + tent: ["https://tent.sny.sh"], + wolfreeAlpha: ["https://gqq.gitlab.io", "https://uqq.gitlab.io"], + laboratory: ["https://lab.vern.cc"], + binternet: ["https://bn.bloat.cat"], + pixivFe: ["https://pixivfe.exozy.me"], + liteXiv: ["https://litexiv.exozy.me"], + indestructables: ["https://indestructables.private.coffee"], + destructables: ["https://ds.vern.cc"], + safetwitch: ["https://safetwitch.drgns.space"], + twineo: ["https://twineo.exozy.me"], + proxigram: ["https://ig.opnxng.com"], + tuboYoutube: ["https://tubo.migalmoreno.com"], + tuboSoundcloud: ["https://tubo.migalmoreno.com"], + tekstoLibre: ["https://davilarek.github.io/TekstoLibre"], + skyview: ["https://skyview.social"], + priviblur: ["https://pb.bloat.cat"], + nitter: ["https://nitter.privacydev.net"], + pasted: ["https://pasted.drakeerv.com"], + freetar: ["https://freetar.de"], + ratAintTieba: ["https://rat.fis.land"], + shoelace: ["https://shoelace.mint.lgbt"], + skunkyArt: ["https://skunky.bloat.cat"], + ytify: ["https://ytify.netlify.app"], + nerdsForNerds: ["https://nn.vern.cc"], + koub: ["https://koub.clovius.club"], } -function initDefaults() { - return new Promise(resolve => { - browser.storage.local.clear(async () => { - let config = await utils.getConfig() - let options = {} - for (const service in config.services) { - options[service] = {} - for (const defaultOption in config.services[service].options) { - options[service][defaultOption] = config.services[service].options[defaultOption] - } - for (const frontend in config.services[service].frontends) { - if (config.services[service].frontends[frontend].instanceList) { - options[frontend] = [] - } - } - } - options['exceptions'] = { - url: [], - regex: [], - } - options.theme = "detect" - options.popupServices = ["youtube", "twitter", "tiktok", "imgur", "reddit", "quora", "translate", "maps"] - options.fetchInstances = 'github' - options.redirectOnlyInIncognito = false - - options = { ...options, ...defaultInstances } - - browser.storage.local.set({ options }, - () => resolve() - ) - }) - }) +async function getDefaults() { + let config = await utils.getConfig() + let options = {} + for (const service in config.services) { + options[service] = {} + for (const defaultOption in config.services[service].options) { + options[service][defaultOption] = config.services[service].options[defaultOption] + } + for (const frontend in config.services[service].frontends) { + if (config.services[service].frontends[frontend].instanceList) { + options[frontend] = [] + } + } + } + options.exceptions = { + url: [], + regex: [], + } + options.theme = "detect" + options.popupServices = ["youtube", "tiktok", "imgur", "reddit", "quora", "translate", "maps"] + options.fetchInstances = "github" + options.redirectOnlyInIncognito = false + options = { ...options, ...defaultInstances } + return options } -function upgradeOptions() { - return new Promise(async resolve => { - let options = await utils.getOptions() - - browser.storage.local.clear(() => { - browser.storage.local.set({ options }, () => { - resolve() - }) - }) - }) +function initDefaults() { + return new Promise(resolve => { + browser.storage.local.clear(async () => { + options = await getDefaults() + browser.storage.local.set({ options }, () => resolve()) + }) + }) } -function processUpdate() { - return new Promise(async resolve => { - let config = await utils.getConfig() - let options = await utils.getOptions() - for (const service in config.services) { - if (!options[service]) options[service] = {} - - if (!(options[service].frontend in config.services[service].frontends)) { - options[service] = config.services[service].options - delete options[options[service].frontend] - } - - for (const defaultOption in config.services[service].options) { - if (options[service][defaultOption] === undefined) { - options[service][defaultOption] = config.services[service].options[defaultOption] - } - } - - for (const frontend in config.services[service].frontends) { - if (options[frontend] === undefined && config.services[service].frontends[frontend].instanceList) { - options[frontend] = defaultInstances[frontend] - } - else if (frontend in options && !(frontend in config.services[service].frontends)) { - delete options[frontend] - } - } - - for (const frontend of options.popupServices) { - if (!Object.keys(config.services).includes(frontend)) { - const i = options.popupServices.indexOf(frontend); - if (i > -1) options.popupServices.splice(i, 1); - } - } - } - browser.storage.local.set({ options }, () => { - resolve() - }) - }) +function processUpdate(_options) { + return new Promise(async resolve => { + const config = await utils.getConfig() + let options = _options ?? (await utils.getOptions()) + + const defaults = await getDefaults() + + // Remove any unknown option or subOption + for (const optionName in options) { + if (!(optionName in defaults)) delete options[optionName] + else if (typeof optionName === "object" && optionName !== null) { + for (const subOptionName in options[optionName]) { + if (!(subOptionName in defaults[optionName])) delete options[optionName][subOptionName] + } + } + } + + // Remove any unknwon popupService + options.popupServices = options.popupServices.filter(service => service in config.services) + + // Add missing options + for (const [defaultName, defaultValue] of Object.entries(defaults)) { + if (!(defaultName in options)) { + options[defaultName] = defaultValue + } + } + + for (const [serviceName, serviceValue] of Object.entries(config.services)) { + // Reset service options if selected frontend is deprecated + if (!(options[serviceName].frontend in serviceValue.frontends)) { + options[serviceName] = serviceValue.options + } + + // Add a default service option if it's not present + for (const optionName in serviceValue.options) { + if (!(optionName in options[serviceName])) { + options[serviceName][optionName] = serviceValue.options[optionName] + } + } + } + + browser.storage.local.clear(() => { + browser.storage.local.set({ options }, () => { + resolve(options) + }) + }) + }) } /** * @param {URL} url - * @param {boolean} test */ -async function copyRaw(url, test) { - const newUrl = await reverse(url) - if (newUrl) { - if (!test) { - if (!isChrome) { - navigator.clipboard.writeText(newUrl) - } else { - var copyFrom = document.createElement("textarea"); - copyFrom.textContent = newUrl; - document.body.appendChild(copyFrom); - copyFrom.select() - document.execCommand('copy') - copyFrom.blur(); - document.body.removeChild(copyFrom); - } - } - return newUrl - } +async function copyRaw(url) { + const newUrl = await reverse(url) + if (newUrl) { + if (!isChrome) { + navigator.clipboard.writeText(newUrl) + } else { + var copyFrom = document.createElement("textarea") + copyFrom.textContent = newUrl + document.body.appendChild(copyFrom) + copyFrom.select() + document.execCommand("copy") + copyFrom.blur() + document.body.removeChild(copyFrom) + } + } } /** * @param {URL} url */ function isException(url) { - if (!options.exceptions) return false - let exceptions = options.exceptions - if (exceptions && url) { - if (exceptions.url) { - for (let item of exceptions.url) { - item = new URL(item) - item = item.href - item = item.replace(/^http:\/\//, 'https://') - if (item == url.href) return true - } - } - if (exceptions.regex) for (const item of exceptions.regex) if (new RegExp(item).test(url.href)) return true - } - return false + if (!options.exceptions) return false + let exceptions = options.exceptions + if (exceptions && url) { + if (exceptions.url) { + for (let item of exceptions.url) { + item = new URL(item) + item = item.href.replace(/^http:\/\//, "https://") + if (item == url.href) { + return true + } + } + } + if (exceptions.regex) { + for (const item of exceptions.regex) { + if (new RegExp(item).test(url.href)) { + return true + } + } + } + } + return false } export default { - redirect, - redirectAsync, - computeService, - reverse, - initDefaults, - upgradeOptions, - processUpdate, - copyRaw, - switchInstance, - isException + redirect, + redirectAsync, + computeService, + reverse, + initDefaults, + processUpdate, + copyRaw, + switchInstance, + isException, + computeFrontend, } diff --git a/src/assets/javascripts/utils.js b/src/assets/javascripts/utils.js index fe08e576..e5b8ba46 100644 --- a/src/assets/javascripts/utils.js +++ b/src/assets/javascripts/utils.js @@ -1,11 +1,11 @@ window.browser = window.browser || window.chrome /** - * @param {Array.<T>} instances + * @param {Array.<T>} instances * @returns {T} */ function getRandomInstance(instances) { - return instances[~~(instances.length * Math.random())] + return instances[~~(instances.length * Math.random())] } /** @@ -14,32 +14,24 @@ function getRandomInstance(instances) { * @returns {T} */ function getNextInstance(currentInstanceUrl, instances) { - const currentInstanceIndex = instances.indexOf(currentInstanceUrl); - - if (currentInstanceIndex === -1){ - return getRandomInstance(instances); - } - - const nextInstanceIndex = (currentInstanceIndex + 1) % instances.length; - - return instances[nextInstanceIndex]; -} - -/** - * @param {string} str - */ -function camelCase(str) { - return str.charAt(0).toUpperCase() + str.slice(1) + const currentInstanceIndex = instances.indexOf(currentInstanceUrl) + if (currentInstanceIndex === -1) return getRandomInstance(instances) + const nextInstanceIndex = (currentInstanceIndex + 1) % instances.length + return instances[nextInstanceIndex] } /** * @param {URL} url */ function protocolHost(url) { - if (url.username && url.password) return `${url.protocol}//${url.username}:${url.password}@${url.host}` - if (url.pathname == "/TekstoLibre/" && url.host.endsWith("github.io")) // workaround - return `${url.protocol}//${url.host}${url.pathname.slice(0, -1)}` - return `${url.protocol}//${url.host}` + url.pathname = url.pathname.replace(/\/$/, "") + if (url.username && url.password) return `${url.protocol}//${url.username}:${url.password}@${url.host}${url.pathname}` + + // workaround + if (url.pathname == "/TekstoLibre/" && url.host.endsWith("github.io")) + return `${url.protocol}//${url.host}${url.pathname.slice(0, -1)}` + + return `${url.protocol}//${url.host}${url.pathname}` } /** @@ -64,14 +56,14 @@ function protocolHost(url) { * @returns {Promise<Config>} */ function getConfig() { - return new Promise(resolve => { - fetch("/config.json") - .then(response => response.text()) - .then(json => { - resolve(JSON.parse(json)) - return - }) - }) + return new Promise(resolve => { + fetch("/config.json") + .then(response => response.text()) + .then(json => { + resolve(JSON.parse(json)) + return + }) + }) } /** @@ -83,144 +75,205 @@ function getConfig() { * @returns {Promise<Object.<string, Option | string[]>>} */ function getOptions() { - return new Promise(resolve => - browser.storage.local.get("options", r => { - resolve(r.options) - }) - ) + return new Promise(resolve => browser.storage.local.get("options", r => resolve(r.options))) } function getPingCache() { - return new Promise(resolve => - browser.storage.local.get("pingCache", r => { - resolve(r.pingCache ?? {}) - }) - ) + return new Promise(resolve => browser.storage.local.get("pingCache", r => resolve(r.pingCache ?? {}))) } function getBlacklist(options) { - return new Promise(resolve => { - let url - if (options.fetchInstances == 'github') { - url = 'https://raw.githubusercontent.com/libredirect/instances/main/blacklist.json' - } - else if (options.fetchInstances == 'codeberg') { - url = 'https://codeberg.org/LibRedirect/instances/raw/branch/main/blacklist.json' - } - else { - resolve('disabled') - return - } - const http = new XMLHttpRequest() - http.open("GET", url, true) - http.onreadystatechange = () => { - if (http.status === 200 && http.readyState == XMLHttpRequest.DONE) { - resolve(JSON.parse(http.responseText)) - return - } - } - http.onerror = () => { - resolve() - return - } - http.ontimeout = () => { - resolve() - return - } - http.send(null) - }) + return new Promise(resolve => { + let url + if (options.fetchInstances == "github") + url = "https://raw.githubusercontent.com/libredirect/instances/main/blacklist.json" + else if (options.fetchInstances == "codeberg") + url = "https://codeberg.org/LibRedirect/instances/raw/branch/main/blacklist.json" + else return resolve("disabled") + const http = new XMLHttpRequest() + http.open("GET", url, true) + http.onreadystatechange = () => { + if (http.status === 200 && http.readyState == XMLHttpRequest.DONE) resolve(JSON.parse(http.responseText)) + } + http.onerror = () => resolve() + http.ontimeout = () => resolve() + http.send(null) + }) } function getList(options) { - return new Promise(resolve => { - let url - if (options.fetchInstances == 'github') { - url = 'https://raw.githubusercontent.com/libredirect/instances/main/data.json' - } - else if (options.fetchInstances == 'codeberg') { - url = 'https://codeberg.org/LibRedirect/instances/raw/branch/main/data.json' - } - else { - resolve('disabled') - return - } - const http = new XMLHttpRequest() - http.open("GET", url, true) - http.onreadystatechange = () => { - if (http.status === 200 && http.readyState == XMLHttpRequest.DONE) { - resolve(JSON.parse(http.responseText)) - return - } - } - http.onerror = () => { - resolve() - return - } - http.ontimeout = () => { - resolve() - return - } - http.send(null) - }) + return new Promise(resolve => { + let url + if (options.fetchInstances == "github") + url = "https://raw.githubusercontent.com/libredirect/instances/main/data.json" + else if (options.fetchInstances == "codeberg") + url = "https://codeberg.org/LibRedirect/instances/raw/branch/main/data.json" + else return resolve("disabled") + const http = new XMLHttpRequest() + http.open("GET", url, true) + http.onreadystatechange = () => { + if (http.status === 200 && http.readyState == XMLHttpRequest.DONE) return resolve(JSON.parse(http.responseText)) + } + http.onerror = () => resolve() + http.ontimeout = () => resolve() + http.send(null) + }) } /** * @param {string} href */ function pingOnce(href) { - return new Promise(async resolve => { - let started - let http = new XMLHttpRequest() - http.timeout = 5000 - http.ontimeout = () => resolve(5000) - http.onerror = () => resolve() - http.onreadystatechange = () => { - if (http.readyState == 2) { - if (http.status == 200) { - let ended = new Date().getTime() - http.abort() - resolve(ended - started) - } else { - resolve(5000 + http.status) - } - } - } - http.open("GET", `${href}?_=${new Date().getTime()}`, true) - started = new Date().getTime() - http.send(null) - }) + return new Promise(async resolve => { + let started + let http = new XMLHttpRequest() + http.timeout = 5000 + http.ontimeout = () => resolve(5000) + http.onerror = () => resolve() + http.onreadystatechange = () => { + if (http.readyState == 2) { + if (http.status == 200) { + let ended = new Date().getTime() + http.abort() + resolve(ended - started) + } else { + resolve(5000 + http.status) + } + } + } + http.open("GET", `${href}?_=${new Date().getTime()}`, true) + started = new Date().getTime() + http.send(null) + }) } /** * @param {string} href */ function ping(href) { - return new Promise(async resolve => { - let average = 0 - let time - for (let i = 0; i < 3; i++) { - time = await pingOnce(href) - if (i == 0) continue - if (time >= 5000) { - resolve(time) - return - } - average += time - } - average = parseInt(average / 3) - resolve(average) - }) + return new Promise(async resolve => { + let average = 0 + let time + for (let i = 0; i < 3; i++) { + time = await pingOnce(href) + if (i == 0) continue + if (time >= 5000) { + resolve(time) + return + } + average += time + } + average = parseInt(average / 3) + resolve(average) + }) +} + +function addressToLatLng(address) { + const http = new XMLHttpRequest() + http.open( + "GET", + `https://nominatim.openstreetmap.org/search?q=${encodeURIComponent(address)}&format=json&limit=1`, + false + ) + http.send() + if (http.status == 200) { + const json = JSON.parse(http.responseText)[0] + if (json) { + return { + coordinate: `${json.lat},${json.lon}`, + boundingbox: `${json.boundingbox[2]},${json.boundingbox[1]},${json.boundingbox[3]},${json.boundingbox[0]}`, + } + } + return {} + } +} + +function getQuery(url) { + let query = "" + if (url.searchParams.has("q")) query = url.searchParams.get("q") + else if (url.searchParams.has("query")) query = url.searchParams.has("query") + return query +} +function prefsEncoded(prefs) { + return new URLSearchParams(prefs).toString() +} + +function convertMapCentre(url) { + let [lat, lon, zoom] = [null, null, null] + const reg = url.pathname.match(/@(-?\d[0-9.]*),(-?\d[0-9.]*),(\d{1,2})[.z]/) + if (reg) { + ;[, lon, lat, zoom] = reg + } else if (url.searchParams.has("center")) { + // Set map centre if present + ;[lat, lon] = url.searchParams.get("center").split(",") + zoom = url.searchParams.get("zoom") ?? "17" + } + return { zoom, lon, lat } +} + +export function randomInstances(clearnet, n) { + let instances = [] + if (n > clearnet.length) n = clearnet.length + for (let i = 0; i < n; i++) { + const randomNumber = Math.floor(Math.random() * clearnet.length) + const randomInstance = clearnet[randomNumber] + instances.push(randomInstance) + } + return instances +} +export function style(options, window) { + const vars = cssVariables(options, window) + return `--text: ${vars.text}; + --bg-main: ${vars.bgMain}; + --bg-secondary: ${vars.bgSecondary}; + --active: ${vars.active}; + --danger: ${vars.danger}; + --light-grey: ${vars.lightGrey};` +} + +function cssVariables(options, window) { + const dark = { + text: "#fff", + bgMain: "#121212", + bgSecondary: "#202020", + active: "#fbc117", + danger: "#f04141", + lightGrey: "#c3c3c3", + } + + const light = { + text: "black", + bgMain: "white", + bgSecondary: "#e4e4e4", + active: "#fb9817", + danger: "#f04141", + lightGrey: "#c3c3c3", + } + if (options.theme == "dark") { + return dark + } else if (options.theme == "light") { + return light + } else if (window.matchMedia("(prefers-color-scheme: dark)").matches) { + return dark + } else { + return light + } } export default { - getRandomInstance, - getNextInstance, - protocolHost, - getList, - getBlacklist, - camelCase, - getConfig, - getOptions, - getPingCache, - ping, + getRandomInstance, + getNextInstance, + protocolHost, + getList, + getBlacklist, + getConfig, + getOptions, + getPingCache, + ping, + addressToLatLng, + getQuery, + prefsEncoded, + convertMapCentre, + randomInstances, + style, } diff --git a/src/config.json b/src/config.json index 5bd39ee4..713345fa 100644 --- a/src/config.json +++ b/src/config.json @@ -1,999 +1,1360 @@ { - "networks": { - "clearnet": { - "tld": "org", - "name": "Clearnet" - }, - "tor": { - "tld": "onion", - "name": "Tor" - }, - "i2p": { - "tld": "i2p", - "name": "I2P" - }, - "loki": { - "tld": "loki", - "name": "Lokinet" - } - }, - "services": { - "youtube": { - "frontends": { - "invidious": { - "name": "Invidious", - "embeddable": true, - "instanceList": true, - "url": "https://invidious.io/" - }, - "piped": { - "excludeTargets": [ - 2, - 3 - ], - "name": "Piped", - "embeddable": true, - "instanceList": true, - "url": "https://github.com/TeamPiped/Piped" - }, - "pipedMaterial": { - "excludeTargets": [ - 2, - 3 - ], - "name": "Piped-Material", - "embeddable": false, - "instanceList": true, - "url": "https://github.com/mmjee/Piped-Material" - }, - "poketube": { - "excludeTargets": [ - 2, - 3 - ], - "name": "PokeTube", - "embeddable": true, - "instanceList": true, - "url": "https://codeberg.org/Ashley/poketube" - }, - "cloudtube": { - "name": "CloudTube", - "embeddable": false, - "instanceList": true, - "url": "https://sr.ht/~cadence/tube", - "excludeTargets": [ - 2, - 3 - ] - }, - "tuboYoutube": { - "name": "Tubo", - "embeddable": false, - "instanceList": true, - "url": "https://github.com/migalmoreno/tubo", - "excludeTargets": [ - 2, - 3 - ] - }, - "freetube": { - "excludeTargets": [ - 2, - 3 - ], - "name": "FreeTube", - "embeddable": false, - "desktopApp": true, - "instanceList": false, - "url": "https://github.com/FreeTubeApp/FreeTube" - }, - "yattee": { - "excludeTargets": [ - 2, - 3 - ], - "name": "Yattee", - "embeddable": false, - "desktopApp": true, - "instanceList": false, - "url": "https://github.com/yattee/yattee" - }, - "freetubePwa": { - "excludeTargets": [ - 2, - 3 - ], - "name": "FreeTube PWA", - "embeddable": false, - "instanceList": false, - "url": "https://github.com/MarmadileManteater/FreeTubeCordova" - } - }, - "targets": [ - "^https?:\\/{2}(www\\.|m\\.)?youtube.com(\\/|$)(?!iframe_api\\/|redirect\\/)", - "^https?:\\/{2}img\\.youtube.com\\/vi\\/.*\\/..*", - "^https?:\\/{2}(i|s)\\.ytimg.com\\/vi\\/.*\\/..*", - "^https?:\\/{2}(www\\.)?youtube.com\\/watch?v=..*", - "^https?:\\/{2}(www\\.)?youtu\\.be\\/..*", - "^https?:\\/{2}(www\\.)?(youtube|youtube-nocookie)\\.com\\/embed\\/..*" - ], - "name": "YouTube", - "options": { - "enabled": false, - "redirectType": "main_frame", - "frontend": "invidious", - "embedFrontend": "invidious", - "unsupportedUrls": "bypass" - }, - "imageType": "png", - "embeddable": true, - "url": "https://youtube.com" - }, - "youtubeMusic": { - "frontends": { - "hyperpipe": { - "name": "Hyperpipe", - "instanceList": true, - "url": "https://codeberg.org/Hyperpipe/Hyperpipe" - }, - "invidiousMusic": { - "name": "Invidious", - "embeddable": true, - "instanceList": true, - "url": "https://invidious.io/" - } - }, - "targets": [ - "^https?:\\/{2}music\\.youtube\\.com\\/" - ], - "name": "YT Music", - "options": { - "enabled": false, - "frontend": "hyperpipe", - "unsupportedUrls": "bypass" - }, - "imageType": "png", - "url": "https://music.youtube.com" - }, - "twitter": { - "frontends": { - "nitter": { - "name": "Nitter", - "embeddable": true, - "instanceList": true, - "url": "https://github.com/zedeus/nitter", - "localhost": true - } - }, - "targets": [ - "^https?:\\/{2}(www\\.|mobile\\.)?twitter\\.com\\/", - "^https?:\\/{2}(www\\.|mobile\\.)?x\\.com\\/", - "^https?:\\/{2}(pbs\\.|video\\.)twimg\\.com\\/", - "^https?:\\/{2}platform\\.x\\.com/embed\\/", - "^https?:\\/{2}platform\\.twitter\\.com/embed\\/", - "^https?:\\/{2}t\\.co\\/" - ], - "name": "Twitter", - "options": { - "enabled": false, - "redirectType": "main_frame", - "unsupportedUrls": "bypass", - "frontend": "nitter", - "instance": "public" - }, - "imageType": "png", - "embeddable": true, - "url": "https://twitter.com" - }, - "twitch": { - "frontends": { - "safetwitch": { - "name": "SafeTwitch", - "embeddable": true, - "instanceList": true, - "url": "https://codeberg.org/dragongoose/safetwitch", - "localhost": false - }, - "twineo": { - "name": "Twineo", - "embeddable": true, - "instanceList": true, - "url": "https://codeberg.org/CloudyyUw/twineo", - "localhost": false - } - }, - "targets": [ - "^https?:\\/{2}(www\\.|clips\\.)?twitch\\.(tv|com)\\/" - ], - "name": "Twitch", - "options": { - "enabled": false, - "redirectType": "main_frame", - "unsupportedUrls": "bypass", - "frontend": "safetwitch", - "instance": "public" - }, - "imageType": "svg", - "embeddable": true, - "url": "https://twitch.tv" - }, - "tiktok": { - "frontends": { - "proxiTok": { - "name": "ProxiTok", - "instanceList": true, - "url": "https://github.com/pablouser1/ProxiTok", - "localhost": true - } - }, - "targets": [ - "^https?:\\/{2}(www\\.)?tiktok\\.com\\/" - ], - "name": "TikTok", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "proxiTok", - "instance": "public" - }, - "imageType": "png", - "url": "https://tiktok.com" - }, - "instagram": { - "frontends": { - "proxigram": { - "name": "Proxigram", - "instanceList": true, - "url": "https://codeberg.org/ThePenguinDev/Proxigram", - "localhost": false - } - }, - "targets": [ - "^https?:\\/{2}(www\\.)?instagram\\.com" - ], - "name": "Instagram", - "options": { - "enabled": false, - "frontend": "proxigram", - "unsupportedUrls": "bypass", - "instance": "public" - }, - "imageType": "png", - "url": "https://www.instagram.com" - }, - "reddit": { - "frontends": { - "libreddit": { - "name": "Libreddit", - "instanceList": true, - "url": "https://github.com/spikecodes/libreddit", - "localhost": true - }, - "teddit": { - "name": "Teddit", - "instanceList": true, - "url": "https://codeberg.org/teddit/teddit", - "localhost": true - } - }, - "targets": [ - "^https?:\\/{2}(www\\.|old\\.|np\\.|new\\.|amp\\.)?(reddit|reddittorjg6rue252oqsxryoxengawnmo46qy4kyii5wtqnwfj4ooad)\\.(com|onion)(?=\\/u(ser)?\\/|\\/r\\/|\\/search|\\/new|\\/?$)", - "^https?:\\/{2}(i|(external-)?preview)\\.redd\\.it" - ], - "name": "Reddit", - "options": { - "enabled": true, - "frontend": "libreddit", - "unsupportedUrls": "bypass", - "instance": "public" - }, - "imageType": "png", - "url": "https://reddit.com" - }, - "imgur": { - "frontends": { - "rimgo": { - "name": "rimgo", - "instanceList": true, - "url": "https://codeberg.org/video-prize-ranch/rimgo", - "localhost": true, - "embeddable": true - } - }, - "targets": [ - "^https?:\\/{2}([im]\\.)?(stack\\.)?imgur\\.(com|io)\\/" - ], - "name": "Imgur", - "options": { - "enabled": false, - "redirectType": "main_frame", - "unsupportedUrls": "bypass", - "frontend": "rimgo", - "instance": "public" - }, - "imageType": "png", - "embeddable": true, - "url": "https://imgur.com" - }, - "pixiv": { - "name": "Pixiv", - "frontends": { - "pixivFe": { - "name": "PixivFE", - "instanceList": true, - "url": "https://codeberg.org/VnPower/pixivfe" - } - }, - "targets": [ - "^https?:\\/{2}(www\\.)?pixiv\\.net\\/" - ], - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "pixivFe" - }, - "imageType": "svg", - "url": "https://www.pixiv.net" - }, - "soundcloud": { - "frontends": { - "tuboSoundcloud": { - "name": "Tubo", - "embeddable": false, - "instanceList": true, - "url": "https://github.com/migalmoreno/tubo" - } - }, - "targets": [ - "^https?:\\/{2}soundcloud\\.com" - ], - "name": "SoundCloud", - "options": { - "enabled": false, - "redirectType": "main_frame", - "frontend": "tuboSoundcloud", - "unsupportedUrls": "bypass" - }, - "imageType": "svg", - "embeddable": false, - "url": "https://soundcloud.com" - }, - "medium": { - "frontends": { - "scribe": { - "name": "Scribe", - "instanceList": true, - "url": "https://sr.ht/~edwardloveall/Scribe" - }, - "libMedium": { - "name": "LibMedium", - "instanceList": true, - "url": "https://github.com/realaravinth/libmedium" - } - }, - "targets": [ - "^https:\\/{2}([a-zA-Z0-9-]+\\.)?medium\\.com", - "^https?:\\/{2}towardsdatascience\\.com\\/", - "^https?:\\/{2}uxdesign\\.cc\\/", - "^https?:\\/{2}uxplanet\\.org\\/", - "^https?:\\/{2}betterprogramming\\.pub\\/", - "^https?:\\/{2}aninjusticemag\\.com\\/", - "^https?:\\/{2}betterhumans\\.pub\\/", - "^https?:\\/{2}psiloveyou\\.xyz\\/", - "^https?:\\/{2}entrepreneurshandbook\\.co\\/", - "^https?:\\/{2}blog\\.coinbase\\.com\\/", - "^https?:\\/{2}levelup\\.gitconnected\\.com\\/", - "^https?:\\/{2}javascript\\.plainenglish\\.io\\/", - "^https?:\\/{2}blog\\.bitsrc\\.io\\/", - "^https?:\\/{2}itnext\\.io\\/", - "^https?:\\/{2}codeburst\\.io\\/", - "^https?:\\/{2}infosecwriteups\\.com\\/", - "^https?:\\/{2}blog\\.devgenius\\.io\\/", - "^https?:\\/{2}writingcooperative\\.com\\/", - "^https?:\\/{2}proandroiddev\\.com\\/" - ], - "name": "Medium", - "options": { - "frontend": "scribe", - "enabled": false, - "unsupportedUrls": "bypass" - }, - "imageType": "svg", - "url": "https://medium.com" - }, - "quora": { - "frontends": { - "quetre": { - "name": "Quetre", - "instanceList": true, - "url": "https://github.com/zyachel/quetre", - "localhost": true - } - }, - "targets": [ - "^https?:\\/{2}([a-zA-Z0-9-]+\\.)*quora\\.com\\/" - ], - "name": "Quora", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "quetre", - "instance": "public" - }, - "imageType": "png", - "url": "https://quora.com" - }, - "imdb": { - "frontends": { - "libremdb": { - "name": "libremdb", - "instanceList": true, - "url": "https://github.com/zyachel/libremdb", - "localhost": true - } - }, - "targets": [ - "^https?:\\/{2}(www\\.|m\\.)?imdb\\.com" - ], - "name": "IMDb", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "libremdb", - "instance": "public" - }, - "imageType": "svg", - "url": "https://imdb.com" - }, - "fandom": { - "frontends": { - "breezeWiki": { - "name": "BreezeWiki", - "instanceList": true, - "url": "https://breezewiki.com" - } - }, - "targets": [ - "^https?:\\/{2}([a-zA-Z0-9-]+\\.)?(fandom|wikia)\\.com(?=\\/wiki|\\/?$)" - ], - "name": "Fandom", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "instance": "public", - "frontend": "breezeWiki" - }, - "imageType": "svg", - "url": "https://fandom.com" - }, - "pinterest": { - "name": "Pinterest", - "frontends": { - "binternet": { - "name": "Binternet", - "instanceList": true, - "url": "https://github.com/Ahwxorg/Binternet", - "embeddable": true - } - }, - "targets": [ - "^https?:\\/{2}i\\.pinimg\\.com", - "^https?:\\/{2}(www\\.)?pinterest\\.com" - ], - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "redirectType": "main_frame", - "frontend": "binternet" - }, - "imageType": "svg", - "embeddable": true, - "url": "https://pinterest.com" - }, - "search": { - "frontends": { - "searxng": { - "name": "SearXNG", - "instanceList": true, - "url": "https://github.com/searxng/searxng", - "localhost": true - }, - "searx": { - "name": "SearX", - "instanceList": true, - "url": "https://searx.github.io/searx/" - }, - "whoogle": { - "name": "Whoogle", - "instanceList": true, - "url": "https://benbusby.com/projects/whoogle-search/" - }, - "librex": { - "name": "LibreX", - "instanceList": true, - "url": "https://github.com/hnhx/librex" - }, - "4get": { - "name": "4get", - "instanceList": true, - "url": "https://git.lolcat.ca/lolcat/4get" - } - }, - "targets": [ - "^https?:\\/{2}search\\.libredirect\\.invalid" - ], - "name": "Search", - "options": { - "enabled": false, - "frontend": "searxng", - "unsupportedUrls": "bypass", - "instance": "public" - }, - "imageType": "svgMono", - "url": "https://search.libredirect.invalid" - }, - "translate": { - "frontends": { - "simplyTranslate": { - "name": "SimplyTranslate", - "instanceList": true, - "url": "https://git.sr.ht/~metalune/simplytranslate_web", - "localhost": true - }, - "mozhi": { - "name": "Mozhi", - "instanceList": true, - "url": "https://codeberg.org/aryak/mozhi", - "localhost": false - }, - "libreTranslate": { - "name": "LibreTranslate", - "instanceList": true, - "url": "https://github.com/LibreTranslate/LibreTranslate" - } - }, - "targets": [ - "^https?:\\/{2}translate\\.google(\\.[a-z]{2,3}){1,2}\\/", - "^https?:\\/{2}translate\\.libredirect\\.invalid" - ], - "name": "Translate", - "options": { - "enabled": false, - "frontend": "simplyTranslate", - "unsupportedUrls": "bypass", - "instance": "public" - }, - "imageType": "svgMono", - "url": "https://translate.libredirect.invalid" - }, - "maps": { - "frontends": { - "osm": { - "name": "OpenStreetMap", - "instanceList": true, - "embeddable": true, - "url": "https://www.openstreetmap.org/" - } - }, - "targets": [ - "^https?:\\/{2}maps\\.libredirect\\.invalid", - "^https?:\\/{2}(((www|maps)\\.)?(google\\.).*(\\/maps)|maps\\.(google\\.).*)" - ], - "name": "Maps", - "options": { - "redirectType": "main_frame", - "enabled": false, - "frontend": "osm", - "unsupportedUrls": "bypass" - }, - "imageType": "svgMono", - "url": "https://maps.libredirect.invalid" - }, - "sendFiles": { - "frontends": { - "send": { - "name": "Send", - "instanceList": true, - "url": "https://gitlab.com/timvisee/send" - } - }, - "targets": [ - "^https?:\\/{2}send\\.libredirect\\.invalid", - "^https?:\\/{2}send\\.firefox\\.com\\/?$", - "^https?:\\/{2}sendfiles\\.online\\/?$" - ], - "name": "Send Files", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "send" - }, - "imageType": "svgMono", - "url": "https://send.libredirect.invalid" - }, - "textStorage": { - "frontends": { - "privateBin": { - "name": "PrivateBin", - "instanceList": true, - "url": "https://privatebin.info" - } - }, - "targets": [ - "^https?:\\/{2}paste\\.libredirect\\.invalid" - ], - "name": "Paste Text", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "privateBin" - }, - "imageType": "svgMono", - "url": "https://paste.libredirect.invalid" - }, - "reuters": { - "frontends": { - "neuters": { - "name": "Neuters", - "instanceList": true, - "url": "https://github.com/HookedBehemoth/neuters" - } - }, - "targets": [ - "^https?:\\/{2}(www\\.)?reuters\\.com\\/" - ], - "name": "Reuters", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "neuters" - }, - "imageType": "svg", - "url": "https://reuters.com" - }, - "genius": { - "frontends": { - "dumb": { - "name": "Dumb", - "instanceList": true, - "url": "https://github.com/rramiachraf/dumb", - "localhost": true - }, - "intellectual": { - "name": "Intellectual", - "instanceList": true, - "url": "https://github.com/Insprill/intellectual", - "localhost": false - } - }, - "targets": [ - "^https?:\\/{2}(www\\.)?genius\\.com\\/" - ], - "name": "Genius", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "dumb", - "instance": "public" - }, - "imageType": "svg", - "url": "https://genius.com" - }, - "urbanDictionary": { - "frontends": { - "ruralDictionary": { - "name": "Rural Dictionary", - "instanceList": true, - "url": "https://codeberg.org/zortazert/rural-dictionary" - } - }, - "targets": [ - "^https?:\\/{2}(www\\.)?urbandictionary\\.com\\/" - ], - "name": "Urban Dictionary", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "ruralDictionary" - }, - "imageType": "svg", - "url": "https://urbandictionary.com" - }, - "stackOverflow": { - "frontends": { - "anonymousOverflow": { - "name": "AnonymousOverflow", - "instanceList": true, - "url": "https://github.com/httpjamesm/AnonymousOverflow", - "localhost": true - } - }, - "targets": [ - "^https?:\\/{2}(www\\.)?stackoverflow\\.com\\/", - "^https?:\\/{2}([a-zA-Z0-9-]+\\.)?stackexchange\\.com\\/", - "^https?:\\/{2}(www\\.)?superuser\\.com\\/" - ], - "name": "Stack Overflow", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "anonymousOverflow", - "instance": "public" - }, - "imageType": "svgMono", - "url": "https://stackoverflow.com/" - }, - "goodreads": { - "frontends": { - "biblioReads": { - "name": "BiblioReads", - "instanceList": true, - "url": "https://github.com/nesaku/BiblioReads", - "localhost": true - } - }, - "targets": [ - "^https?:\\/{2}(www\\.)?goodreads\\.com\\/" - ], - "name": "Goodreads", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "biblioReads", - "instance": "public" - }, - "imageType": "svgMono", - "url": "https://goodreads.com/" - }, - "wikipedia": { - "frontends": { - "wikiless": { - "name": "Wikiless", - "instanceList": true, - "url": "https://wikiless.org" - } - }, - "targets": [ - "^https?:\\/{2}([a-z]+\\.)*wikipedia\\.org\\/?" - ], - "name": "Wikipedia", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "wikiless" - }, - "imageType": "svg", - "url": "https://wikipedia.org" - }, - "snopes": { - "frontends": { - "suds": { - "name": "Suds", - "instanceList": true, - "url": "https://git.vern.cc/cobra/Suds" - } - }, - "targets": [ - "^https?:\\/{2}(www\\.)?snopes\\.com\\/" - ], - "name": "Snopes", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "suds" - }, - "imageType": "svg", - "url": "https://www.snopes.com" - }, - "waybackMachine": { - "frontends": { - "waybackClassic": { - "name": "Wayback Classic", - "instanceList": true, - "url": "https://github.com/ticky/wayback-classic" - } - }, - "targets": [ - "^https?:\\/{2}web\\.archive\\.org\\/" - ], - "name": "Wayback Machine", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "waybackClassic" - }, - "imageType": "svgMono", - "url": "https://web.archive.org" - }, - "github": { - "frontends": { - "gothub": { - "name": "Gothub", - "instanceList": true, - "url": "https://codeberg.org/gothub/gothub" - } - }, - "targets": [ - "^https?:\\/{2}github\\.com\\/", - "^https?:\\/{2}gist\\.github\\.com\\/[^\\/]+\\/[^\\/]+\\/?" - ], - "name": "GitHub", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "gothub" - }, - "imageType": "svgMono", - "url": "https://github.com" - }, - "bilibili": { - "frontends": { - "mikuInvidious": { - "name": "MikuInvidious", - "instanceList": true, - "url": "https://0xacab.org/johnxina/mikuinvidious" - } - }, - "targets": [ - "^https?:\\/{2}(www\\.|space\\.)?bilibili\\.com\\/", - "^https?:\\/{2}b23\\.tv\\/" - ], - "name": "Bilibili", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "mikuInvidious" - }, - "imageType": "svgMono", - "url": "https://bilibili.com/" - }, - "bandcamp": { - "frontends": { - "tent": { - "name": "Tent", - "instanceList": true, - "url": "https://forgejo.sny.sh/sun/Tent" - } - }, - "targets": [ - "^https?:\\/{2}(.*\\.)?bandcamp\\.com\\/", - "^https?:\\/{2}(f4|t4)\\.bcbits\\.com\\/" - ], - "name": "Bandcamp", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "tent" - }, - "imageType": "svg", - "url": "https://bandcamp.com" - }, - "gitlab": { - "frontends": { - "laboratory": { - "name": "Laboratory", - "instanceList": true, - "url": "https://git.vitali64.duckdns.org/utils/laboratory.git/about/" - } - }, - "targets": [ - "^https?:\\/{2}gitlab\\.com\\/", - "^https?:\\/{2}gitlab\\.freedesktop\\.com\\/", - "^https?:\\/{2}gitlab\\.archlinux\\.com\\/" - ], - "name": "Gitlab", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "laboratory" - }, - "imageType": "svg", - "url": "https://gitlab.com/" - }, - "instructables": { - "name": "Instructables", - "frontends": { - "indestructables": { - "name": "Indestructables", - "instanceList": true, - "url": "https://indestructables.codeberg.page" - }, - "destructables": { - "name": "Destructables", - "instanceList": true, - "url": "https://git.vern.cc/cobra/Destructables" - } - }, - "targets": [ - "^https?:\\/{2}(www\\.)?instructables\\.com\\/" - ], - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "indestructables" - }, - "imageType": "svg", - "url": "https://www.instructables.com" - }, - "meet": { - "name": "Meet", - "frontends": { - "jitsi": { - "name": "Jitsi", - "instanceList": true, - "url": "https://jitsi.org" - } - }, - "targets": [ - "^https?:\\/{2}meet\\.libredirect\\.invalid\\/" - ], - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "jitsi" - }, - "imageType": "svgMono", - "url": "https://meet.libredirect.invalid" - }, - "wolframAlpha": { - "frontends": { - "wolfreeAlpha": { - "name": "WolfreeAlpha", - "instanceList": true, - "url": "https://git.disroot.org/wolfree" - } - }, - "targets": [ - "^https?:\\/{2}(www\\.)?wolframalpha\\.com\\/" - ], - "name": "Wolfram Alpha", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "wolfreeAlpha" - }, - "imageType": "svg", - "url": "https://www.wolframalpha.com" - }, - "tekstowo": { - "frontends": { - "tekstoLibre": { - "name": "TekstoLibre", - "instanceList": true, - "url": "https://github.com/Davilarek/TekstoLibre" - } - }, - "targets": [ - "^https?:\\/{2}(www\\.)?tekstowo\\.pl\\/" - ], - "name": "Tekstowo.pl", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "tekstoLibre" - }, - "imageType": "svg", - "url": "https://www.tekstowo.pl" - }, - "bluesky": { - "frontends": { - "skyview": { - "name": "Skyview", - "instanceList": true, - "url": "https://github.com/badlogic/skyview" - } - }, - "targets": [ - "^https?:\\/{2}bsky\\.app\\/" - ], - "name": "Bluesky", - "options": { - "enabled": false, - "unsupportedUrls": "bypass", - "frontend": "skyview" - }, - "imageType": "svg", - "url": "https://bsky.app/" - } - } + "networks": { + "clearnet": { + "tld": "org", + "name": "Clearnet" + }, + "tor": { + "tld": "onion", + "name": "Tor" + }, + "i2p": { + "tld": "i2p", + "name": "I2P" + }, + "loki": { + "tld": "loki", + "name": "Lokinet" + } + }, + "services": { + "youtube": { + "frontends": { + "invidious": { + "name": "Invidious", + "embeddable": true, + "instanceList": true, + "url": "https://invidious.io/" + }, + "materialious": { + "name": "Materialious", + "embeddable": true, + "instanceList": true, + "url": "https://materialio.us/" + }, + "piped": { + "excludeTargets": [ + 2, + 3 + ], + "name": "Piped", + "embeddable": true, + "instanceList": true, + "url": "https://github.com/TeamPiped/Piped" + }, + "pipedMaterial": { + "excludeTargets": [ + 2, + 3 + ], + "name": "Piped-Material", + "embeddable": false, + "instanceList": true, + "url": "https://github.com/mmjee/Piped-Material" + }, + "poketube": { + "excludeTargets": [ + 2, + 3 + ], + "name": "PokeTube", + "embeddable": true, + "instanceList": true, + "url": "https://codeberg.org/Ashley/poketube" + }, + "cloudtube": { + "name": "CloudTube", + "embeddable": false, + "instanceList": true, + "url": "https://sr.ht/~cadence/tube", + "excludeTargets": [ + 2, + 3 + ] + }, + "lightTube": { + "name": "LightTube", + "embeddable": false, + "instanceList": true, + "url": "https://github.com/lighttube-org/LightTube" + }, + "tuboYoutube": { + "name": "Tubo", + "embeddable": false, + "instanceList": true, + "url": "https://git.migalmoreno.com/tubo/about/", + "excludeTargets": [ + 2, + 3 + ] + }, + "freetube": { + "excludeTargets": [ + 2, + 3 + ], + "name": "FreeTube", + "embeddable": false, + "desktopApp": true, + "instanceList": false, + "url": "https://github.com/FreeTubeApp/FreeTube" + }, + "yattee": { + "excludeTargets": [ + 2, + 3 + ], + "name": "Yattee", + "embeddable": false, + "desktopApp": true, + "instanceList": false, + "url": "https://github.com/yattee/yattee" + }, + "freetubePwa": { + "excludeTargets": [ + 2, + 3 + ], + "name": "FreeTube PWA", + "embeddable": false, + "instanceList": false, + "url": "https://github.com/MarmadileManteater/FreeTubeCordova" + }, + "viewtube": { + "name": "ViewTube", + "embeddable": false, + "instanceList": true, + "url": "https://github.com/ViewTube/viewtube" + }, + "ytify": { + "name": "ytify", + "embeddable": false, + "instanceList": true, + "url": "https://github.com/n-ce/ytify/" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.|m\\.)?youtube.com(\\/|$)(?!iframe_api\\/|redirect\\/)", + "^https?:\\/{2}img\\.youtube.com\\/vi\\/.*\\/..*", + "^https?:\\/{2}(i|s)\\.ytimg.com\\/vi\\/.*\\/..*", + "^https?:\\/{2}(www\\.)?youtube.com\\/watch?v=..*", + "^https?:\\/{2}(www\\.)?youtu\\.be\\/..*", + "^https?:\\/{2}(www\\.)?(youtube|youtube-nocookie)\\.com\\/embed\\/..*" + ], + "name": "YouTube", + "options": { + "enabled": true, + "redirectType": "main_frame", + "frontend": "invidious", + "embedFrontend": "invidious", + "unsupportedUrls": "bypass", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "embeddable": true, + "url": "https://youtube.com" + }, + "youtubeMusic": { + "frontends": { + "hyperpipe": { + "name": "Hyperpipe", + "instanceList": true, + "url": "https://codeberg.org/Hyperpipe/Hyperpipe" + }, + "invidiousMusic": { + "name": "Invidious", + "embeddable": true, + "instanceList": true, + "url": "https://invidious.io/" + }, + "freetubeMusic": { + "name": "FreeTube", + "embeddable": false, + "desktopApp": true, + "instanceList": false, + "url": "https://github.com/FreeTubeApp/FreeTube" + } + }, + "targets": [ + "^https?:\\/{2}music\\.youtube\\.com\\/" + ], + "name": "YT Music", + "options": { + "enabled": false, + "frontend": "hyperpipe", + "unsupportedUrls": "bypass", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://music.youtube.com" + }, + "twitter": { + "frontends": { + "nitter": { + "name": "Nitter", + "embeddable": true, + "instanceList": true, + "url": "https://github.com/zedeus/nitter", + "localhost": true + } + }, + "targets": [ + "^https?:\\/{2}(www\\.|mobile\\.)?twitter\\.com\\/", + "^https?:\\/{2}(www\\.|mobile\\.)?x\\.com\\/", + "^https?:\\/{2}(pbs\\.|video\\.)twimg\\.com\\/", + "^https?:\\/{2}platform\\.x\\.com/embed\\/", + "^https?:\\/{2}platform\\.twitter\\.com/embed\\/", + "^https?:\\/{2}t\\.co\\/" + ], + "name": "Twitter", + "options": { + "enabled": false, + "redirectType": "main_frame", + "unsupportedUrls": "bypass", + "frontend": "nitter", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "embeddable": true, + "url": "https://twitter.com" + }, + "bluesky": { + "frontends": { + "skyview": { + "name": "Skyview", + "instanceList": true, + "url": "https://github.com/badlogic/skyview" + } + }, + "targets": [ + "^https?:\\/{2}bsky\\.app\\/" + ], + "name": "Bluesky", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "skyview", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://bsky.app/" + }, + "reddit": { + "frontends": { + "libreddit": { + "name": "Libreddit", + "instanceList": true, + "url": "https://github.com/spikecodes/libreddit", + "localhost": true + }, + "redlib": { + "name": "Redlib", + "instanceList": true, + "url": "https://github.com/redlib-org/redlib", + "localhost": false + }, + "teddit": { + "name": "Teddit", + "instanceList": true, + "url": "https://codeberg.org/teddit/teddit", + "localhost": false + }, + "eddrit": { + "name": "Eddrit", + "instanceList": true, + "url": "https://github.com/corenting/eddrit", + "localhost": false + } + }, + "targets": [ + "^https?:\\/{2}(www\\.|old\\.|np\\.|new\\.|amp\\.)?(reddit|reddittorjg6rue252oqsxryoxengawnmo46qy4kyii5wtqnwfj4ooad)\\.(com|onion)(?=\\/u(ser)?\\/|\\/r\\/|\\/search|\\/new|\\/?$)", + "^https?:\\/{2}(i|(external-)?preview)\\.redd\\.it" + ], + "name": "Reddit", + "options": { + "enabled": false, + "frontend": "redlib", + "unsupportedUrls": "bypass", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://reddit.com" + }, + "tumblr": { + "frontends": { + "priviblur": { + "name": "Priviblur", + "embeddable": true, + "instanceList": true, + "url": "https://github.com/syeopite/priviblur", + "localhost": true + } + }, + "targets": [ + "^https?:\\/{2}(media\\.|assets\\.|static\\.)?tumblr\\.com\\/", + "^https?:\\/{2}[0-9]+\\.media\\.tumblr\\.com\\/", + "^https?:\\/{2}(www\\.)?(.*)\\.tumblr.com\\/" + ], + "name": "Tumblr", + "options": { + "enabled": false, + "redirectType": "main_frame", + "unsupportedUrls": "bypass", + "frontend": "priviblur", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "embeddable": true, + "url": "https://tumblr.com" + }, + "twitch": { + "frontends": { + "safetwitch": { + "name": "SafeTwitch", + "embeddable": true, + "instanceList": true, + "url": "https://codeberg.org/dragongoose/safetwitch", + "localhost": false + }, + "twineo": { + "name": "Twineo", + "embeddable": true, + "instanceList": true, + "url": "https://codeberg.org/CloudyyUw/twineo", + "localhost": false + } + }, + "targets": [ + "^https?:\\/{2}(www\\.|clips\\.)?twitch\\.(tv|com)\\/" + ], + "name": "Twitch", + "options": { + "enabled": false, + "redirectType": "main_frame", + "unsupportedUrls": "bypass", + "frontend": "safetwitch", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "embeddable": true, + "url": "https://twitch.tv" + }, + "tiktok": { + "frontends": { + "proxiTok": { + "name": "ProxiTok", + "instanceList": true, + "url": "https://github.com/pablouser1/ProxiTok", + "localhost": true + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?tiktok\\.com\\/" + ], + "name": "TikTok", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "proxiTok", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://tiktok.com" + }, + "instagram": { + "frontends": { + "proxigram": { + "name": "Proxigram", + "instanceList": true, + "url": "https://codeberg.org/ThePenguinDev/Proxigram", + "localhost": false + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?instagram\\.com" + ], + "name": "Instagram", + "options": { + "enabled": false, + "frontend": "proxigram", + "unsupportedUrls": "bypass", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://www.instagram.com" + }, + "imdb": { + "frontends": { + "libremdb": { + "name": "libremdb", + "instanceList": true, + "url": "https://github.com/zyachel/libremdb", + "localhost": true + } + }, + "targets": [ + "^https?:\\/{2}(www\\.|m\\.)?imdb\\.com" + ], + "name": "IMDb", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "libremdb", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://imdb.com" + }, + "bilibili": { + "frontends": { + "mikuInvidious": { + "name": "MikuInvidious", + "instanceList": true, + "url": "https://0xacab.org/johnxina/mikuinvidious" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.|space\\.)?bilibili\\.com\\/", + "^https?:\\/{2}b23\\.tv\\/" + ], + "name": "Bilibili", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "mikuInvidious", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "url": "https://bilibili.com/" + }, + "pixiv": { + "name": "Pixiv", + "frontends": { + "pixivFe": { + "name": "PixivFE", + "instanceList": true, + "url": "https://codeberg.org/VnPower/pixivfe" + }, + "liteXiv": { + "name": "LiteXiv", + "instanceList": true, + "url": "https://codeberg.org/Peaksol/LiteXiv" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?pixiv\\.net\\/" + ], + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "pixivFe", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://www.pixiv.net" + }, + "fandom": { + "frontends": { + "breezeWiki": { + "name": "BreezeWiki", + "instanceList": true, + "url": "https://breezewiki.com" + } + }, + "targets": [ + "^https?:\\/{2}([a-zA-Z0-9-]+\\.)?(fandom|wikia)\\.com(?=\\/wiki|\\/?$)" + ], + "name": "Fandom", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "instance": "public", + "frontend": "breezeWiki", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://fandom.com" + }, + "imgur": { + "frontends": { + "rimgo": { + "name": "rimgo", + "instanceList": true, + "url": "https://codeberg.org/video-prize-ranch/rimgo", + "localhost": true, + "embeddable": true + } + }, + "targets": [ + "^https?:\\/{2}([im]\\.)?(stack\\.)?imgur\\.(com|io)\\/" + ], + "name": "Imgur", + "options": { + "enabled": false, + "redirectType": "main_frame", + "unsupportedUrls": "bypass", + "frontend": "rimgo", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "embeddable": true, + "url": "https://imgur.com" + }, + "pinterest": { + "name": "Pinterest", + "frontends": { + "binternet": { + "name": "Binternet", + "instanceList": true, + "url": "https://github.com/Ahwxorg/Binternet", + "embeddable": true + } + }, + "targets": [ + "^https?:\\/{2}i\\.pinimg\\.com", + "^https?:\\/{2}(www\\.)?pinterest\\.com" + ], + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "redirectType": "main_frame", + "frontend": "binternet", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "embeddable": true, + "url": "https://pinterest.com" + }, + "soundcloud": { + "frontends": { + "tuboSoundcloud": { + "name": "Tubo", + "embeddable": false, + "instanceList": true, + "url": "https://git.migalmoreno.com/tubo/about/" + } + }, + "targets": [ + "^https?:\\/{2}soundcloud\\.com" + ], + "name": "SoundCloud", + "options": { + "enabled": false, + "redirectType": "main_frame", + "frontend": "tuboSoundcloud", + "unsupportedUrls": "bypass", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "embeddable": false, + "url": "https://soundcloud.com" + }, + "bandcamp": { + "frontends": { + "tent": { + "name": "Tent", + "instanceList": true, + "url": "https://forgejo.sny.sh/sun/Tent" + } + }, + "targets": [ + "^https?:\\/{2}(.*\\.)?bandcamp\\.com\\/", + "^https?:\\/{2}(f4|t4)\\.bcbits\\.com\\/" + ], + "name": "Bandcamp", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "tent", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://bandcamp.com" + }, + "tekstowo": { + "frontends": { + "tekstoLibre": { + "name": "TekstoLibre", + "instanceList": true, + "url": "https://github.com/Davilarek/TekstoLibre" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?tekstowo\\.pl\\/" + ], + "name": "Tekstowo.pl", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "tekstoLibre", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://www.tekstowo.pl" + }, + "genius": { + "frontends": { + "dumb": { + "name": "Dumb", + "instanceList": true, + "url": "https://github.com/rramiachraf/dumb", + "localhost": true + }, + "intellectual": { + "name": "Intellectual", + "instanceList": true, + "url": "https://github.com/Insprill/intellectual", + "localhost": false + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?genius\\.com\\/" + ], + "name": "Genius", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "dumb", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://genius.com" + }, + "medium": { + "frontends": { + "scribe": { + "name": "Scribe", + "instanceList": true, + "url": "https://sr.ht/~edwardloveall/Scribe" + }, + "libMedium": { + "name": "LibMedium", + "instanceList": true, + "url": "https://github.com/realaravinth/libmedium" + } + }, + "targets": [ + "^https:\\/{2}([a-zA-Z0-9-]+\\.)?medium\\.com", + "^https?:\\/{2}towardsdatascience\\.com\\/", + "^https?:\\/{2}uxdesign\\.cc\\/", + "^https?:\\/{2}uxplanet\\.org\\/", + "^https?:\\/{2}betterprogramming\\.pub\\/", + "^https?:\\/{2}aninjusticemag\\.com\\/", + "^https?:\\/{2}betterhumans\\.pub\\/", + "^https?:\\/{2}psiloveyou\\.xyz\\/", + "^https?:\\/{2}entrepreneurshandbook\\.co\\/", + "^https?:\\/{2}blog\\.coinbase\\.com\\/", + "^https?:\\/{2}levelup\\.gitconnected\\.com\\/", + "^https?:\\/{2}javascript\\.plainenglish\\.io\\/", + "^https?:\\/{2}blog\\.bitsrc\\.io\\/", + "^https?:\\/{2}itnext\\.io\\/", + "^https?:\\/{2}codeburst\\.io\\/", + "^https?:\\/{2}infosecwriteups\\.com\\/", + "^https?:\\/{2}blog\\.devgenius\\.io\\/", + "^https?:\\/{2}writingcooperative\\.com\\/", + "^https?:\\/{2}proandroiddev\\.com\\/" + ], + "name": "Medium", + "options": { + "frontend": "scribe", + "enabled": false, + "unsupportedUrls": "bypass", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://medium.com" + }, + "quora": { + "frontends": { + "quetre": { + "name": "Quetre", + "instanceList": true, + "url": "https://github.com/zyachel/quetre", + "localhost": true + } + }, + "targets": [ + "^https?:\\/{2}([a-zA-Z0-9-]+\\.)*quora\\.com\\/" + ], + "name": "Quora", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "quetre", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://quora.com" + }, + "github": { + "frontends": { + "gothub": { + "name": "Gothub", + "instanceList": true, + "url": "https://codeberg.org/gothub/gothub" + } + }, + "targets": [ + "^https?:\\/{2}github\\.com\\/", + "^https?:\\/{2}gist\\.github\\.com\\/[^\\/]+\\/[^\\/]+\\/?", + "^https?:\\/{2}raw\\.githubusercontent\\.com\\/[^\\/]+\\/[^\\/]+\\/?" + ], + "name": "GitHub", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "gothub", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "url": "https://github.com" + }, + "gitlab": { + "frontends": { + "laboratory": { + "name": "Laboratory", + "instanceList": true, + "url": "https://git.vitali64.duckdns.org/utils/laboratory.git/about/" + } + }, + "targets": [ + "^https?:\\/{2}gitlab\\.com\\/", + "^https?:\\/{2}gitlab\\.freedesktop\\.com\\/", + "^https?:\\/{2}gitlab\\.archlinux\\.com\\/" + ], + "name": "GitLab", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "laboratory", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://gitlab.com/" + }, + "stackOverflow": { + "frontends": { + "anonymousOverflow": { + "name": "AnonymousOverflow", + "instanceList": true, + "url": "https://github.com/httpjamesm/AnonymousOverflow", + "localhost": true + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?([a-zA-Z]+\\.)?stackoverflow\\.com\\/", + "(?!^https?:\\/{2}(api|data|blog)\\.)^https?:\\/{2}([a-zA-Z0-9-]+\\.)stackexchange\\.com\\/", + "^https?:\\/{2}(www\\.)?([a-zA-Z]+\\.)?(askubuntu\\.com|mathoverflow\\.net|serverfault\\.com|stackapps\\.com|superuser\\.com)\\/" + ], + "name": "Stack Overflow", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "anonymousOverflow", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "url": "https://stackoverflow.com/" + }, + "reuters": { + "frontends": { + "neuters": { + "name": "Neuters", + "instanceList": true, + "url": "https://github.com/HookedBehemoth/neuters" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?reuters\\.com\\/" + ], + "name": "Reuters", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "neuters", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://reuters.com" + }, + "snopes": { + "frontends": { + "suds": { + "name": "Suds", + "instanceList": true, + "url": "https://git.vern.cc/cobra/Suds" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?snopes\\.com\\/" + ], + "name": "Snopes", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "suds", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://www.snopes.com" + }, + "ifunny": { + "frontends": { + "unfunny": { + "name": "UNfunny", + "instanceList": true, + "url": "https://git.vern.cc/cobra/UNfunny" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?ifunny\\.co\\/" + ], + "name": "iFunny", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "unfunny", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://ifunny.co" + }, + "tenor": { + "frontends": { + "soprano": { + "name": "Soprano", + "instanceList": true, + "url": "https://git.vern.cc/cobra/Soprano" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?tenor\\.com\\/" + ], + "name": "Tenor", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "soprano", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://tenor.com" + }, + "knowyourmeme": { + "frontends": { + "meme": { + "name": "MeMe", + "instanceList": true, + "url": "https://git.vern.cc/cobra/MeMe" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?knowyourmeme\\.com\\/" + ], + "name": "KnowYourMeme", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "meme", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://knowyourmeme.com" + }, + "urbanDictionary": { + "frontends": { + "ruralDictionary": { + "name": "Rural Dictionary", + "instanceList": true, + "url": "https://codeberg.org/zortazert/rural-dictionary" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?urbandictionary\\.com\\/" + ], + "name": "Urban Dictionary", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "ruralDictionary", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://urbandictionary.com" + }, + "goodreads": { + "frontends": { + "biblioReads": { + "name": "BiblioReads", + "instanceList": true, + "url": "https://github.com/nesaku/BiblioReads", + "localhost": true + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?goodreads\\.com\\/" + ], + "name": "Goodreads", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "biblioReads", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "url": "https://goodreads.com/" + }, + "wolframAlpha": { + "frontends": { + "wolfreeAlpha": { + "name": "WolfreeAlpha", + "instanceList": true, + "url": "https://git.disroot.org/wolfree" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?wolframalpha\\.com\\/" + ], + "name": "Wolfram Alpha", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "wolfreeAlpha", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://www.wolframalpha.com" + }, + "instructables": { + "name": "Instructables", + "frontends": { + "indestructables": { + "name": "Indestructables", + "instanceList": true, + "url": "https://indestructables.codeberg.page" + }, + "destructables": { + "name": "Destructables", + "instanceList": true, + "url": "https://git.vern.cc/cobra/Destructables" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?instructables\\.com\\/" + ], + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "indestructables", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://www.instructables.com" + }, + "wikipedia": { + "frontends": { + "wikiless": { + "name": "Wikiless", + "instanceList": true, + "url": "https://wikiless.org" + } + }, + "targets": [ + "^https?:\\/{2}([a-z]+\\.)*wikipedia\\.org\\/?" + ], + "name": "Wikipedia", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "wikiless", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://wikipedia.org" + }, + "waybackMachine": { + "frontends": { + "waybackClassic": { + "name": "Wayback Classic", + "instanceList": true, + "url": "https://github.com/ticky/wayback-classic" + } + }, + "targets": [ + "^https?:\\/{2}web\\.archive\\.org\\/" + ], + "name": "Wayback Machine", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "waybackClassic", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "url": "https://web.archive.org" + }, + "pastebin": { + "frontends": { + "pasted": { + "name": "Pasted", + "instanceList": true, + "url": "https://github.com/Dragynfruit/pasted" + } + }, + "targets": [ + "^https?:\\/{2}pastebin\\.com\\/" + ], + "name": "Pastebin", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "pasted", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "embeddable": true, + "url": "https://pastebin.com" + }, + "search": { + "frontends": { + "searxng": { + "name": "SearXNG", + "instanceList": true, + "url": "https://github.com/searxng/searxng", + "localhost": true, + "excludeTargets": [ + 2, + 3 + ] + }, + "searx": { + "name": "SearX", + "instanceList": true, + "url": "https://searx.github.io/searx/", + "excludeTargets": [ + 2, + 3 + ] + }, + "whoogle": { + "name": "Whoogle", + "instanceList": true, + "url": "https://benbusby.com/projects/whoogle-search/", + "excludeTargets": [ + 2, + 3 + ] + }, + "librey": { + "name": "LibreY", + "instanceList": true, + "url": "https://github.com/Ahwxorg/librey/", + "excludeTargets": [ + 2, + 3 + ] + }, + "4get": { + "name": "4get", + "instanceList": true, + "url": "https://git.lolcat.ca/lolcat/4get", + "excludeTargets": [ + 2, + 3 + ] + } + }, + "targets": [ + "^https?:\\/{2}search\\.libredirect\\.invalid", + "^https?:\\/{2}libredirect\\.github\\.io\\/\\?q", + "^https?:\\/{2}(www\\.)?google\\.com", + "^https?:\\/{2}(www\\.)?bing\\.com" + ], + "name": "Search", + "options": { + "enabled": false, + "frontend": "searxng", + "unsupportedUrls": "bypass", + "redirectGoogle": false, + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "url": "https://search.libredirect.invalid" + }, + "translate": { + "frontends": { + "simplyTranslate": { + "name": "SimplyTranslate", + "instanceList": true, + "url": "https://codeberg.org/ManeraKai/simplytranslate", + "localhost": true + }, + "mozhi": { + "name": "Mozhi", + "instanceList": true, + "url": "https://codeberg.org/aryak/mozhi", + "localhost": false, + "imageType": "svg" + }, + "libreTranslate": { + "name": "LibreTranslate", + "instanceList": true, + "url": "https://github.com/LibreTranslate/LibreTranslate" + }, + "translite": { + "name": "Translite", + "instanceList": true, + "url": "https://codeberg.org/gospodin/translite" + } + }, + "targets": [ + "^https?:\\/{2}translate\\.google(\\.[a-z]{2,3}){1,2}\\/", + "^https?:\\/{2}translate\\.libredirect\\.invalid" + ], + "name": "Translate", + "options": { + "enabled": false, + "frontend": "simplyTranslate", + "unsupportedUrls": "bypass", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "url": "https://translate.libredirect.invalid" + }, + "maps": { + "frontends": { + "osm": { + "name": "OpenStreetMap", + "instanceList": true, + "embeddable": true, + "url": "https://www.openstreetmap.org/" + } + }, + "targets": [ + "^https?:\\/{2}maps\\.libredirect\\.invalid", + "^https?:\\/{2}(((www|maps)\\.)?(google\\.).*(\\/maps)|maps\\.(google\\.).*)" + ], + "name": "Maps", + "options": { + "redirectType": "main_frame", + "enabled": false, + "frontend": "osm", + "unsupportedUrls": "bypass", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "url": "https://maps.libredirect.invalid" + }, + "meet": { + "name": "Meet", + "frontends": { + "jitsi": { + "name": "Jitsi", + "instanceList": true, + "url": "https://jitsi.org" + } + }, + "targets": [ + "^https?:\\/{2}meet\\.libredirect\\.invalid\\/" + ], + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "jitsi", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "url": "https://meet.libredirect.invalid" + }, + "sendFiles": { + "frontends": { + "send": { + "name": "Send", + "instanceList": true, + "url": "https://gitlab.com/timvisee/send" + } + }, + "targets": [ + "^https?:\\/{2}send\\.libredirect\\.invalid", + "^https?:\\/{2}send\\.firefox\\.com\\/?$", + "^https?:\\/{2}sendfiles\\.online\\/?$" + ], + "name": "Send Files", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "send", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "url": "https://send.libredirect.invalid" + }, + "textStorage": { + "frontends": { + "privateBin": { + "name": "PrivateBin", + "instanceList": true, + "url": "https://privatebin.info" + }, + "pasted": { + "name": "Pasted", + "instanceList": true, + "url": "https://github.com/Dragynfruit/pasted" + } + }, + "targets": [ + "^https?:\\/{2}paste\\.libredirect\\.invalid" + ], + "name": "Paste Text", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "privateBin", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "url": "https://paste.libredirect.invalid" + }, + "ultimateGuitar": { + "frontends": { + "freetar": { + "name": "Freetar", + "instanceList": true, + "url": "https://github.com/kmille/freetar" + } + }, + "targets": [ + "^https?:\\/{2}(tabs\\.|www\\.)?ultimate-guitar\\.com" + ], + "name": "Ultimate Guitar", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "freetar", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://www.ultimate-guitar.com" + }, + "baiduTieba": { + "frontends": { + "ratAintTieba": { + "name": "Rat Aint Tieba", + "instanceList": true, + "url": "https://0xacab.org/johnxina/rat" + } + }, + "targets": [ + "^https?:\\/{2}tieba\\.baidu\\.com" + ], + "name": "Baidu Tieba", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "ratAintTieba", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://tieba.baidu.com" + }, + "threads": { + "frontends": { + "shoelace": { + "name": "Shoelace", + "instanceList": true, + "url": "https://git.sr.ht/~nixgoat/shoelace" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?threads\\.net" + ], + "name": "Threads", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "shoelace", + "redirectOnlyInIncognito": false + }, + "imageType": "svgMono", + "url": "https://threads.net" + }, + "deviantArt": { + "frontends": { + "skunkyArt": { + "name": "SkunkyArt", + "instanceList": true, + "url": "https://git.sr.ht/~nixgoat/shoelace" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?deviantart\\.com" + ], + "name": "DeviantArt", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "skunkyArt", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://deviantart.com" + }, + "geeksForGeeks": { + "frontends": { + "nerdsForNerds": { + "name": "NerdsforNerds", + "instanceList": true, + "url": "https://git.vern.cc/cobra/NerdsforNerds" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?geeksforgeeks\\.org" + ], + "name": "GeeksforGeeks", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "nerdsForNerds", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://www.geeksforgeeks.org" + }, + "coub": { + "frontends": { + "koub": { + "name": "Koub", + "instanceList": true, + "url": "https://codeberg.org/gospodin/koub" + } + }, + "targets": [ + "^https?:\\/{2}(www\\.)?coub\\.com" + ], + "name": "Coub", + "options": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "koub", + "redirectOnlyInIncognito": false + }, + "imageType": "svg", + "url": "https://coub.com" + } + } } diff --git a/src/manifest.json b/src/manifest.json index 7dcacf95..4de112c0 100644 --- a/src/manifest.json +++ b/src/manifest.json @@ -1,86 +1,86 @@ { - "name": "__MSG_extensionName__", - "description": "__MSG_extensionDescription__", - "version": "2.8.3", - "manifest_version": 2, - "browser_specific_settings": { - "gecko": { + "name": "__MSG_extensionName__", + "description": "__MSG_extensionDescription__", + "version": "2.9.1", + "manifest_version": 2, + "browser_specific_settings": { + "gecko": { "id": "vhack-libredirect@addons.vhack.eu", - "strict_min_version": "89.0" - } - }, - "background": { - "page": "pages/background/background.html", - "persistent": true - }, - "icons": { - "16": "assets/images/libredirect-16.png", - "32": "assets/images/libredirect-32.png", - "48": "assets/images/libredirect-48.png", - "128": "assets/images/libredirect-128.png" - }, - "permissions": [ - "webRequest", - "webRequestBlocking", - "storage", - "clipboardWrite", - "contextMenus", - "<all_urls>" - ], - "optional_permissions": [ - "bookmarks" - ], - "browser_action": { - "default_title": "__MSG_extensionName__", - "browser_style": false, - "default_popup": "pages/popup/popup.html", - "default_icon": { - "16": "assets/images/libredirect-16.png", - "32": "assets/images/libredirect-32.png", - "48": "assets/images/libredirect-48.png", - "128": "assets/images/libredirect-128.png" - } - }, - "options_ui": { - "page": "pages/options/index.html", - "browser_style": false, - "open_in_tab": true - }, - "chrome_settings_overrides": { - "search_provider": { - "name": "__MSG_extensionName__", - "keyword": "@libredirect", - "favicon_url": "https://raw.githubusercontent.com/libredirect/libredirect/master/src/assets/images/libredirect-16.png", - "search_url": "https://search.libredirect.invalid/?q={searchTerms}", - "encoding": "UTF-8", - "is_default": false - } - }, - "commands": { - "switchInstance": { - "suggested_key": { - "default": "Alt+Shift+L" - }, - "description": "__MSG_switchInstance__" - }, - "copyRaw": { - "suggested_key": { - "default": "Alt+Shift+C" - }, - "description": "Copies the original link. Ex: Copies the original twitter link while in the nitter website" - }, - "reverse": { - "suggested_key": { - "default": "Alt+Shift+O" - }, - "description": "Redirect to the original link. Ex: Redirects to the original twitter link while in the nitter website" - }, - "redirect": { - "suggested_key": { - "default": "Alt+Shift+R" - }, - "description": "Redirect link. Ex: Redirects original twitter link to nitter" - } - }, - "default_locale": "en" + "strict_min_version": "89.0" + }, + "gecko_android": { + "strict_min_version": "113.0" + } + }, + "background": { + "page": "pages/background/background.html", + "persistent": true + }, + "icons": { + "16": "assets/images/libredirect-16.png", + "32": "assets/images/libredirect-32.png", + "48": "assets/images/libredirect-48.png", + "64": "assets/images/libredirect-64.png", + "96": "assets/images/libredirect-96.png", + "128": "assets/images/libredirect-128.png" + }, + "permissions": ["webRequest", "webRequestBlocking", "storage", "clipboardWrite", "contextMenus", "<all_urls>"], + "optional_permissions": ["bookmarks"], + "browser_action": { + "default_title": "__MSG_extensionName__", + "browser_style": false, + "default_popup": "pages/popup/index.html", + "default_icon": { + "16": "assets/images/libredirect-16.png", + "32": "assets/images/libredirect-32.png", + "48": "assets/images/libredirect-48.png", + "64": "assets/images/libredirect-64.png", + "96": "assets/images/libredirect-96.png", + "128": "assets/images/libredirect-128.png" + } + }, + "options_ui": { + "page": "pages/options/index.html", + "browser_style": false, + "open_in_tab": true + }, + "chrome_settings_overrides": { + "search_provider": { + "name": "__MSG_extensionName__", + "keyword": "@libredirect", + "favicon_url": "https://raw.githubusercontent.com/libredirect/browser_extension/master/src/assets/images/libredirect.svg", + "search_url": "https://search.libredirect.invalid/?q={searchTerms}", + "encoding": "UTF-8", + "is_default": false + } + }, + "commands": { + "switchInstance": { + "suggested_key": { + "default": "Alt+Shift+L" + }, + "description": "__MSG_switchInstance__" + }, + "copyRaw": { + "suggested_key": { + "default": "Alt+Shift+C" + }, + "description": "Copies the original link. Ex: Copies the original twitter link while in the nitter website" + }, + "reverse": { + "suggested_key": { + "default": "Alt+Shift+O" + }, + "description": "Redirect to the original link. Ex: Redirects to the original twitter link while in the nitter website" + }, + "redirect": { + "suggested_key": { + "default": "Alt+Shift+R" + }, + "description": "Redirect link. Ex: Redirects original twitter link to nitter" + } + }, + "default_locale": "en", + "update_url": "https://raw.githubusercontent.com/libredirect/libredirect/master/src/updates/updates.xml", + "key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAroWDSoSRZ1scj+eJRrvnhJbrqXTKnhQuxs6+AJg16sqr0bsMdFV+MSY4i4xnK+K5WOYkBliWXgUyk/wzicoAjOnSJddrL/Md4FuWHI2NVIkrlsLOrYkygi5OLqGPajRH/w8Cdmg7KzEpXe/OnYV0/qS8li8huEdTzdeLdhfbiVl1j3DOr4OJALQ7mPeeNFHFo/oVQ+OkSezWLezA5jUGfhtzPYV6u1TXzX7lCi8E/BbDbwkvvXOMcjXCv08kjdLOY2djCA2a6zr0xAb3q8DlexAMZ8vMof7AQRFtBKhLc9n9VFoipMMdBOVQQj/eIcRILBrmkcZNnJxFKiHNJ+NcZQIDAQAB" } diff --git a/src/pages/background/background.html b/src/pages/background/background.html index 542df18b..787d419e 100644 --- a/src/pages/background/background.html +++ b/src/pages/background/background.html @@ -1,7 +1,7 @@ -<!DOCTYPE html> +<!doctype html> <html> - <head> - <meta charset="utf-8" /> - <script type="module" src="background.js"></script> - </head> + <head> + <meta charset="utf-8" /> + <script type="module" src="background.js"></script> + </head> </html> diff --git a/src/pages/background/background.js b/src/pages/background/background.js index 4b8f1ca2..1fcba190 100644 --- a/src/pages/background/background.js +++ b/src/pages/background/background.js @@ -7,338 +7,377 @@ const isChrome = browser.runtime.getBrowserInfo === undefined window.browser = window.browser || window.chrome browser.runtime.onInstalled.addListener(async details => { - if (details.previousVersion != browser.runtime.getManifest().version) { - // ^Used to prevent this running when debugging with auto-reload - if (details.reason == "install") { - if (!(await utils.getOptions())) { - await servicesHelper.initDefaults() - } - browser.runtime.openOptionsPage() - } - else if (details.reason == "update") { - if (details.previousVersion == '2.5.2') { - await servicesHelper.upgradeOptions() - await servicesHelper.processUpdate() - } else { - await servicesHelper.processUpdate() - } - } - } + if (details.previousVersion != browser.runtime.getManifest().version) { + // ^Used to prevent this running when debugging with auto-reload + if (details.reason == "install") { + if (!(await utils.getOptions())) { + await servicesHelper.initDefaults() + } + } else if (details.reason == "update") { + await servicesHelper.processUpdate() + } + } }) +// true to redirect, false to bypass let tabIdRedirects = {} // true == Always redirect, false == Never redirect, null/undefined == follow options for services browser.webRequest.onBeforeRequest.addListener( - details => { - const url = new URL(details.url) - if (new RegExp(/^chrome-extension:\/{2}.*\/instances\/.*.json$/).test(url.href) && details.type == "xmlhttprequest") return - let initiator - try { - if (details.originUrl) initiator = new URL(details.originUrl) - else if (details.initiator && details.initiator !== "null") initiator = new URL(details.initiator) - } catch { - return null - } - if (tabIdRedirects[details.tabId] == false) return null - let newUrl = servicesHelper.redirect(url, details.type, initiator, tabIdRedirects[details.tabId], details.incognito) + details => { + const old_href = details.url + const url = new URL(details.url) + if (new RegExp(/^chrome-extension:\/{2}.*\/instances\/.*.json$/).test(url.href) && details.type == "xmlhttprequest") + return null - if (details.frameAncestors && details.frameAncestors.length > 0 && servicesHelper.isException(new URL(details.frameAncestors[0].url))) newUrl = null + // if url is previously bypassed + if (tabIdRedirects[details.tabId] == false) return null - if (servicesHelper.isException(url)) { - if (details.type == "main_frame") - newUrl = "BYPASSTAB" - else - return null - } + // Bypass embeds from excepted urls + if ( + details.frameAncestors && + details.frameAncestors.length >= 1 && + servicesHelper.isException(new URL(details.frameAncestors[0].url)) + ) + return null - if (!newUrl) { - const match = url.href.match(/^https?:\/{2}.*\.libredirect\.invalid.*/) - if (match) { - browser.tabs.update({ - url: browser.runtime.getURL(`/pages/messages/no_instance.html`) - }); - } - } + if (servicesHelper.isException(url)) { + if (details.type == "main_frame") { + console.log(`Bypassing ${details.tabId} ${url}`) + tabIdRedirects[details.tabId] = false + } + return null + } - if (newUrl) { - if (newUrl === "CANCEL") { - console.log(`Canceled ${url}`) - return { cancel: true } - } - if (newUrl === "BYPASSTAB") { - console.log(`Bypassed ${details.tabId} ${url}`) - if (tabIdRedirects[details.tabId] != false) tabIdRedirects[details.tabId] = false - return null - } - console.info("Redirecting", url.href, "=>", newUrl) - return { redirectUrl: newUrl } - } - return null - }, - { urls: ["<all_urls>"] }, - ["blocking"] -) + let originUrl + let documentUrl + try { + if (details.originUrl) originUrl = new URL(details.originUrl) + if (details.documentUrl) documentUrl = new URL(details.documentUrl) + } catch { + return null + } -browser.tabs.onRemoved.addListener(tabId => { - if (tabIdRedirects[tabId] != undefined) { - delete tabIdRedirects[tabId] - console.log(`Removed tab ${tabId} from tabIdRedirects`) - } -}) + let newUrl = servicesHelper.redirect( + url, + details.type, + originUrl, + documentUrl, + details.incognito, + tabIdRedirects[details.tabId] + ) -browser.commands.onCommand.addListener(async command => { - browser.tabs.query({ active: true, currentWindow: true }, async tabs => { - const url = new URL(tabs[0].url) - switch (command) { - case "switchInstance": - const newUrl = await servicesHelper.switchInstance(url) - if (newUrl) browser.tabs.update({ url: newUrl }) - break - case "copyRaw": { - servicesHelper.copyRaw(url) - break - } - case "redirect": { - browser.tabs.query({ active: true, currentWindow: true }, async tabs => { - if (tabs[0].url) { - const url = new URL(tabs[0].url) - const newUrl = servicesHelper.redirect(url, "main_frame", null, true) - if (newUrl) { - browser.tabs.update(tabs[0].id, { url: newUrl }, () => { - tabIdRedirects[tabs[0].id] = true - }) - } - } - }) - break - } - case "reverse": { - browser.tabs.query({ active: true, currentWindow: true }, async tabs => { - if (tabs[0].url) { - const url = new URL(tabs[0].url) - const newUrl = await servicesHelper.reverse(url) - if (newUrl) { - browser.tabs.update(tabs[0].id, { url: newUrl }, () => { - tabIdRedirects[tabs[0].id] = false - }) - } - } - }) - break - } - } - }) -}) + if ( + (newUrl && newUrl.startsWith("https://no-instance.libredirect.invalid")) || + (!newUrl && url.href.startsWith("https://no-instance.libredirect.invalid")) + ) { + newUrl = newUrl ? new URL(newUrl) : url + const frontend = newUrl.searchParams.get("frontend") + const oldUrl = new URL(newUrl.searchParams.get("url")) + const params = new URLSearchParams({ + message: "no_instance", + url: oldUrl, + frontend: frontend, + }) + browser.tabs.update({ + url: browser.runtime.getURL(`/pages/messages/index.html?${params.toString()}`), + }) + return { cancel: true } + } -browser.contextMenus.create({ id: "settingsTab", title: browser.i18n.getMessage("settings"), contexts: ["browser_action"] }) -browser.contextMenus.create({ id: "switchInstanceTab", title: browser.i18n.getMessage("switchInstance"), contexts: ["browser_action"] }) -browser.contextMenus.create({ id: "copyReverseTab", title: 'Copy Original', contexts: ["browser_action"] }) -browser.contextMenus.create({ id: "redirectTab", title: 'Redirect', contexts: ["browser_action"] }) -browser.contextMenus.create({ id: "reverseTab", title: 'Redirect To Original', contexts: ["browser_action"] }) + if (!newUrl) { + if (url.href.match(/^https?:\/{2}(.*\.)?libredirect\.invalid.*/)) { + const params = new URLSearchParams({ + message: "disabled", + url: url.href, + }) + browser.tabs.update({ + url: browser.runtime.getURL(`/pages/messages/index.html?${params.toString()}`), + }) + return { cancel: true } + } + } -browser.contextMenus.create({ id: "redirectLink", title: 'Redirect', contexts: ["link"] }) -browser.contextMenus.create({ id: "redirectLinkInNewTab", title: 'Redirect In New Tab', contexts: ["link"] }) -browser.contextMenus.create({ id: "reverseLink", title: 'Redirect To Original', contexts: ["link"] }) -browser.contextMenus.create({ id: "reverseLinkInNewTab", title: 'Redirect To Original In New Tab', contexts: ["link"] }) -browser.contextMenus.create({ id: "copyReverseLink", title: 'Copy Original', contexts: ["link"] }) -browser.contextMenus.create({ id: "bypassLink", title: 'Bypass', contexts: ["link"] }) -browser.contextMenus.create({ id: "bypassLinkInNewTab", title: 'Bypass In New Tab', contexts: ["link"] }) + if (newUrl === "CANCEL") { + console.log(`Cancelling ${url}`) + return { cancel: true } + } + if (newUrl === "BYPASSTAB") { + console.log(`Bypassing ${details.tabId} ${url}`) + tabIdRedirects[details.tabId] = false + return null + } + if (newUrl) { + console.log("Redirecting", old_href, "=>", newUrl) + return { redirectUrl: newUrl } + } + return null + }, + { urls: ["<all_urls>"] }, + ["blocking"] +) -if (!isChrome) { - browser.contextMenus.create({ id: "redirectBookmark", title: 'Redirect', contexts: ["bookmark"] }) - browser.contextMenus.create({ id: "redirectBookmarkInNewTab", title: 'Redirect In New Tab', contexts: ["bookmark"] }) - browser.contextMenus.create({ id: "reverseBookmark", title: 'Redirect To Original', contexts: ["bookmark"] }) - browser.contextMenus.create({ id: "reverseBookmarkInNewTab", title: 'Redirect To Original In New Tab', contexts: ["bookmark"] }) - browser.contextMenus.create({ id: "copyReverseBookmark", title: 'Copy Original', contexts: ["bookmark"] }) - browser.contextMenus.create({ id: "bypassBookmark", title: 'Bypass', contexts: ["bookmark"] }) - browser.contextMenus.create({ id: "bypassBookmarkInNewTab", title: 'Bypass In New Tab', contexts: ["bookmark"] }) -} +browser.webRequest.onHeadersReceived.addListener( + details => { + if (details.statusCode >= 501 || details.statusCode == 429 || details.statusCode == 403) { + const url = new URL(details.url) + const { service, frontend } = servicesHelper.computeFrontend(url) + if (!service) return + const params = new URLSearchParams({ + message: "server_error", + code: details.statusCode, + url: url.href, + frontend: frontend, + service: service, + }) + setTimeout(() => { + browser.tabs.update({ + url: browser.runtime.getURL(`/pages/messages/index.html?${params.toString()}`), + }) + }, 2000) + } + }, + { urls: ["<all_urls>"] } +) -browser.contextMenus.onClicked.addListener(async (info) => { - switch (info.menuItemId) { - case 'switchInstanceTab': { - const url = new URL(info.pageUrl) - const newUrl = await servicesHelper.switchInstance(url) - if (newUrl) { - browser.tabs.update({ url: newUrl }) - } - return - } - case 'settingsTab': { - browser.runtime.openOptionsPage() - return - } - case 'copyReverseTab': { - browser.tabs.query({ active: true, currentWindow: true }, async tabs => { - if (tabs[0].url) { - const url = new URL(tabs[0].url) - servicesHelper.copyRaw(url) - } - }) - return - } - case 'reverseTab': { - browser.tabs.query({ active: true, currentWindow: true }, async tabs => { - if (tabs[0].url) { - const url = new URL(tabs[0].url) - const newUrl = await servicesHelper.reverse(url) - if (newUrl) { - browser.tabs.update(tabs[0].id, { url: newUrl }, () => { - tabIdRedirects[tabs[0].id] = false - }) - } - } - }) - return - } - case 'redirectTab': { - browser.tabs.query({ active: true, currentWindow: true }, async tabs => { - if (tabs[0].url) { - const url = new URL(tabs[0].url) - const newUrl = servicesHelper.redirect(url, "main_frame", null, true) - if (newUrl) { - browser.tabs.update(tabs[0].id, { url: newUrl }, () => { - tabIdRedirects[tabs[0].id] = true - }) - } - } - }) - return - } +browser.tabs.onRemoved.addListener(tabId => { + if (tabIdRedirects[tabId] != undefined) { + delete tabIdRedirects[tabId] + console.log(`Removed tab ${tabId} from tabIdRedirects`) + } +}) - case 'copyReverseLink': { - const url = new URL(info.linkUrl) - await servicesHelper.copyRaw(url) - return - } - case 'redirectLink': - case 'redirectLinkInNewTab': { - const url = new URL(info.linkUrl) - const newUrl = servicesHelper.redirect(url, "main_frame", null, true) - if (newUrl) { - if (info.menuItemId == "redirectLink") browser.tabs.update({ url: newUrl }) - else browser.tabs.create({ url: newUrl }) - } - return - } - case 'reverseLink': - case 'reverseLinkInNewTab': { - const url = new URL(info.linkUrl) - const newUrl = await servicesHelper.reverse(url) - if (newUrl) { - if (info.menuItemId == "reverseLink") { - browser.tabs.update({ url: newUrl }, tab => { - tabIdRedirects[tab.id] = false - }) - } else { - browser.tabs.create({ url: newUrl }, tab => { - tabIdRedirects[tab.id] = false - }) - } - } - return - } +browser.runtime.getPlatformInfo(r => { + if (r.os != "fuchsia" && r.os != "ios" && r.os != "android") { + browser.commands.onCommand.addListener(async command => { + browser.tabs.query({ active: true, currentWindow: true }, async tabs => { + const url = new URL(tabs[0].url) + switch (command) { + case "switchInstance": { + const newUrl = await servicesHelper.switchInstance(url) + if (newUrl) browser.tabs.update({ url: newUrl }) + break + } + case "copyRaw": + servicesHelper.copyRaw(url) + break + case "redirect": + browser.tabs.query({ active: true, currentWindow: true }, async tabs => { + if (tabs[0].url) { + const url = new URL(tabs[0].url) + const newUrl = servicesHelper.redirect(url, "main_frame", null, null, false, true) + if (newUrl) { + browser.tabs.update(tabs[0].id, { url: newUrl }, () => { + tabIdRedirects[tabs[0].id] = true + }) + } + } + }) + break + case "reverse": + browser.tabs.query({ active: true, currentWindow: true }, async tabs => { + if (tabs[0].url) { + const url = new URL(tabs[0].url) + const newUrl = await servicesHelper.reverse(url) + if (newUrl) { + browser.tabs.update(tabs[0].id, { url: newUrl }, () => { + tabIdRedirects[tabs[0].id] = false + }) + } + } + }) + break + } + }) + }) - case 'bypassLink': - case 'bypassLinkInNewTab': { - const url = new URL(info.linkUrl) - if (info.menuItemId == "bypassLink") { - browser.tabs.update({ url: url.href }, tab => { - tabIdRedirects[tab.id] = false - }) - } else { - browser.tabs.create({ url: url.href }, tab => { - tabIdRedirects[tab.id] = false - }) - } - return - } + browser.contextMenus.create({ + id: "settingsTab", + title: browser.i18n.getMessage("settings"), + contexts: ["browser_action"], + }) + browser.contextMenus.create({ + id: "switchInstanceTab", + title: browser.i18n.getMessage("switchInstance"), + contexts: ["browser_action"], + }) + browser.contextMenus.create({ id: "copyReverseTab", title: "Copy Original", contexts: ["browser_action"] }) + browser.contextMenus.create({ id: "redirectTab", title: "Redirect", contexts: ["browser_action"] }) + browser.contextMenus.create({ id: "reverseTab", title: "Redirect To Original", contexts: ["browser_action"] }) - case 'copyReverseBookmark': { - browser.bookmarks.get(info.bookmarkId, bookmarks => { - const url = new URL(bookmarks[0].url) - servicesHelper.copyRaw(url) - }); - return - } + browser.contextMenus.create({ id: "redirectLink", title: "Redirect", contexts: ["link"] }) + browser.contextMenus.create({ id: "redirectLinkInNewTab", title: "Redirect In New Tab", contexts: ["link"] }) + browser.contextMenus.create({ id: "reverseLink", title: "Redirect To Original", contexts: ["link"] }) + browser.contextMenus.create({ + id: "reverseLinkInNewTab", + title: "Redirect To Original In New Tab", + contexts: ["link"], + }) + browser.contextMenus.create({ id: "copyReverseLink", title: "Copy Original", contexts: ["link"] }) + browser.contextMenus.create({ id: "bypassLink", title: "Bypass", contexts: ["link"] }) + browser.contextMenus.create({ id: "bypassLinkInNewTab", title: "Bypass In New Tab", contexts: ["link"] }) - case 'redirectBookmark': - case 'redirectBookmarkInNewTab': { - browser.bookmarks.get(info.bookmarkId, bookmarks => { - const url = new URL(bookmarks[0].url) - const newUrl = servicesHelper.redirect(url, "main_frame", null, true) - if (newUrl) { - if (info.menuItemId == 'redirectBookmark') browser.tabs.update({ url: newUrl }) - else browser.tabs.create({ url: newUrl }) - } - }) - return - } - case 'reverseBookmark': - case 'reverseBookmarkInNewTab': { - browser.bookmarks.get(info.bookmarkId, async bookmarks => { - const url = new URL(bookmarks[0].url) - const newUrl = await servicesHelper.reverse(url) - if (newUrl) { - if (info.menuItemId == "reverseBookmark") { - browser.tabs.update({ url: newUrl }, tab => { - tabIdRedirects[tab.id] = false - }) - } else { - browser.tabs.create({ url: newUrl }, tab => { - tabIdRedirects[tab.id] = false - }) - } - } - }) - return - } + if (!isChrome) { + browser.contextMenus.create({ id: "redirectBookmark", title: "Redirect", contexts: ["bookmark"] }) + browser.contextMenus.create({ + id: "redirectBookmarkInNewTab", + title: "Redirect In New Tab", + contexts: ["bookmark"], + }) + browser.contextMenus.create({ id: "reverseBookmark", title: "Redirect To Original", contexts: ["bookmark"] }) + browser.contextMenus.create({ + id: "reverseBookmarkInNewTab", + title: "Redirect To Original In New Tab", + contexts: ["bookmark"], + }) + browser.contextMenus.create({ id: "copyReverseBookmark", title: "Copy Original", contexts: ["bookmark"] }) + browser.contextMenus.create({ id: "bypassBookmark", title: "Bypass", contexts: ["bookmark"] }) + browser.contextMenus.create({ id: "bypassBookmarkInNewTab", title: "Bypass In New Tab", contexts: ["bookmark"] }) + } - case 'bypassBookmark': - case 'bypassBookmarkInNewTab': { - browser.bookmarks.get(info.bookmarkId, async bookmarks => { - const url = new URL(bookmarks[0].url) - if (info.menuItemId == "bypassBookmark") { - browser.tabs.update({ url: url.href }, tab => { - tabIdRedirects[tab.id] = false - }) - } else { - browser.tabs.create({ url: url.href }, tab => { - tabIdRedirects[tab.id] = false - }) - } - return - }) - } - } + browser.contextMenus.onClicked.addListener(async info => { + switch (info.menuItemId) { + case "switchInstanceTab": { + const url = new URL(info.pageUrl) + const newUrl = await servicesHelper.switchInstance(url) + if (newUrl) browser.tabs.update({ url: newUrl }) + return + } + case "settingsTab": + browser.runtime.openOptionsPage() + return + case "copyReverseTab": + browser.tabs.query({ active: true, currentWindow: true }, async tabs => { + if (tabs[0].url) { + const url = new URL(tabs[0].url) + servicesHelper.copyRaw(url) + } + }) + return + case "reverseTab": + browser.tabs.query({ active: true, currentWindow: true }, async tabs => { + if (tabs[0].url) { + const url = new URL(tabs[0].url) + const newUrl = await servicesHelper.reverse(url) + if (newUrl) { + browser.tabs.update(tabs[0].id, { url: newUrl }, () => { + tabIdRedirects[tabs[0].id] = false + }) + } + } + }) + return + case "redirectTab": + browser.tabs.query({ active: true, currentWindow: true }, async tabs => { + if (tabs[0].url) { + const url = new URL(tabs[0].url) + const newUrl = servicesHelper.redirect(url, "main_frame", null, null, false, true) + if (newUrl) { + browser.tabs.update(tabs[0].id, { url: newUrl }, () => { + tabIdRedirects[tabs[0].id] = true + }) + } + } + }) + return + case "copyReverseLink": { + const url = new URL(info.linkUrl) + await servicesHelper.copyRaw(url) + return + } + case "redirectLink": + case "redirectLinkInNewTab": { + const url = new URL(info.linkUrl) + const newUrl = servicesHelper.redirect(url, "main_frame", null, null, false, true) + if (newUrl) { + if (info.menuItemId == "redirectLink") browser.tabs.update({ url: newUrl }) + else browser.tabs.create({ url: newUrl }) + } + return + } + case "reverseLink": + case "reverseLinkInNewTab": { + const url = new URL(info.linkUrl) + const newUrl = await servicesHelper.reverse(url) + if (newUrl) { + if (info.menuItemId == "reverseLink") { + browser.tabs.update({ url: newUrl }, tab => { + tabIdRedirects[tab.id] = false + }) + } else { + browser.tabs.create({ url: newUrl }, tab => { + tabIdRedirects[tab.id] = false + }) + } + } + return + } + case "bypassLink": + case "bypassLinkInNewTab": { + const url = new URL(info.linkUrl) + if (info.menuItemId == "bypassLink") { + browser.tabs.update({ url: url.href }, tab => { + tabIdRedirects[tab.id] = false + }) + } else { + browser.tabs.create({ url: url.href }, tab => { + tabIdRedirects[tab.id] = false + }) + } + return + } + case "copyReverseBookmark": + browser.bookmarks.get(info.bookmarkId, bookmarks => { + const url = new URL(bookmarks[0].url) + servicesHelper.copyRaw(url) + }) + return + case "redirectBookmark": + case "redirectBookmarkInNewTab": + browser.bookmarks.get(info.bookmarkId, bookmarks => { + const url = new URL(bookmarks[0].url) + const newUrl = servicesHelper.redirect(url, "main_frame", null, null, false, true) + if (newUrl) { + if (info.menuItemId == "redirectBookmark") browser.tabs.update({ url: newUrl }) + else browser.tabs.create({ url: newUrl }) + } + }) + return + case "reverseBookmark": + case "reverseBookmarkInNewTab": + browser.bookmarks.get(info.bookmarkId, async bookmarks => { + const url = new URL(bookmarks[0].url) + const newUrl = await servicesHelper.reverse(url) + if (newUrl) { + if (info.menuItemId == "reverseBookmark") { + browser.tabs.update({ url: newUrl }, tab => { + tabIdRedirects[tab.id] = false + }) + } else { + browser.tabs.create({ url: newUrl }, tab => { + tabIdRedirects[tab.id] = false + }) + } + } + }) + return + case "bypassBookmark": + case "bypassBookmarkInNewTab": + browser.bookmarks.get(info.bookmarkId, async bookmarks => { + const url = new URL(bookmarks[0].url) + if (info.menuItemId == "bypassBookmark") { + browser.tabs.update({ url: url.href }, tab => (tabIdRedirects[tab.id] = false)) + } else { + browser.tabs.create({ url: url.href }, tab => (tabIdRedirects[tab.id] = false)) + } + return + }) + } + }) + } }) -browser.runtime.onMessage.addListener((request, sender, sendResponse) => { - if (request == "reverseTab") { - browser.tabs.query({ active: true, currentWindow: true }, async tabs => { - if (tabs[0].url) { - const url = new URL(tabs[0].url) - const newUrl = await servicesHelper.reverse(url) - if (newUrl) { - browser.tabs.update(tabs[0].id, { url: newUrl }, () => { - tabIdRedirects[tabs[0].id] = false - }) - } - } - }) - } - else if (request == "redirectTab") { - browser.tabs.query({ active: true, currentWindow: true }, async tabs => { - if (tabs[0].url) { - const url = new URL(tabs[0].url) - const newUrl = servicesHelper.redirect(url, "main_frame", null, true) - if (newUrl) { - browser.tabs.update(tabs[0].id, { url: newUrl }, () => { - tabIdRedirects[tabs[0].id] = true - }) - } - } - }) - } -}) \ No newline at end of file +browser.runtime.onMessage.addListener(r => { + if (r.message == "reverse") tabIdRedirects[r.tabId] = false + else if (r.message == "redirect") tabIdRedirects[r.tabId] = true +}) diff --git a/src/pages/components/Button.svelte b/src/pages/components/Button.svelte new file mode 100644 index 00000000..6ae2ba61 --- /dev/null +++ b/src/pages/components/Button.svelte @@ -0,0 +1,35 @@ +<button {...$$restProps} on:click {...$$props}> + <slot></slot> +</button> + +<style> + button { + color: var(--text); + border: none; + text-decoration: none; + cursor: pointer; + font-size: 16px; + font-weight: bold; + transition-duration: 0.1s; + display: inline-flex; + align-items: center; + margin: 7.5px 0; + background-color: var(--bg-secondary); + border-radius: 5px; + padding: 10px; + } + + button:hover:enabled { + color: var(--active); + } + + button:active:enabled { + transform: translateY(1px); + } + + button:disabled { + cursor: not-allowed; + opacity: 0.5; + } + +</style> diff --git a/src/pages/components/Checkbox.svelte b/src/pages/components/Checkbox.svelte new file mode 100644 index 00000000..d42a4f10 --- /dev/null +++ b/src/pages/components/Checkbox.svelte @@ -0,0 +1,52 @@ +<script> + export let checked + export let onChange +</script> + +<input class={document.body.dir} {...$$restProps} bind:checked on:change={onChange} type="checkbox" /> + +<style> + input[type="checkbox"] { + appearance: none; + -moz-appearance: none; + -webkit-appearance: none; + width: 46px; + height: 24px; + background-color: var(--light-grey); + border-radius: 50px; + transition: 0.4s; + cursor: pointer; + } + + input[type="checkbox"]:checked { + background-color: var(--active); + } + + input[type="checkbox"]::before { + content: ""; + display: inline-block; + width: 18px; + height: 18px; + box-sizing: border-box; + position: relative; + top: 3px; + left: 3.5px; + background-color: white; + border-radius: 50%; + transition: 0.3s; + } + + input[type="checkbox"]:checked::before { + left: 24px; + } + + input[type="checkbox"].rtl::before { + left: auto; + right: 3.5px; + } + + input[type="checkbox"].rtl:checked::before { + left: auto; + right: 24px; + } +</style> diff --git a/src/pages/components/Input.svelte b/src/pages/components/Input.svelte new file mode 100644 index 00000000..59e584db --- /dev/null +++ b/src/pages/components/Input.svelte @@ -0,0 +1,46 @@ +<script> + export let value +</script> + +<input + {...$$restProps} + bind:value + on:blur + on:change + on:click + on:contextmenu + on:focus + on:keydown + on:keypress + on:keyup + on:mouseover + on:mouseenter + on:mouseleave + on:paste + on:input +/> + +<style> + input { + font-weight: bold; + box-sizing: border-box; + color: var(--text); + font-size: 16px; + padding: 8px; + background-color: var(--bg-secondary); + border: none; + margin: 0; + width: 400px; + border-radius: 3px; + outline-color: var(--active); + } + + input:focus { + outline-color: var(--active); + } + @media (max-width: 715px) { + input { + width: 200px; + } + } +</style> diff --git a/src/pages/components/Label.svelte b/src/pages/components/Label.svelte new file mode 100644 index 00000000..39930cd1 --- /dev/null +++ b/src/pages/components/Label.svelte @@ -0,0 +1,18 @@ +<span> + <slot></slot> +</span> + +<style> + span { + font-size: 18px; + } + + span :global(a) { + color: var(--text); + text-decoration: none; + } + + span :global(a:hover) { + text-decoration: underline; + } +</style> diff --git a/src/pages/components/Row.svelte b/src/pages/components/Row.svelte new file mode 100644 index 00000000..09246d98 --- /dev/null +++ b/src/pages/components/Row.svelte @@ -0,0 +1,12 @@ +<div {...$$restProps} on:click> + <slot></slot> +</div> + +<style> + div { + justify-content: space-between; + display: flex; + align-items: center; + margin: 20px 0; + } +</style> diff --git a/src/pages/components/Select.svelte b/src/pages/components/Select.svelte new file mode 100644 index 00000000..7829c53e --- /dev/null +++ b/src/pages/components/Select.svelte @@ -0,0 +1,34 @@ +<script> + export let values + export let value + export let onChange + export let ariaLabel +</script> + +<select bind:value on:change={onChange} aria-label={ariaLabel} on:change on:contextmenu on:input> + {#each values as option} + <option value={option.value}>{option.name}</option> + {/each} +</select> + +<style> + select { + font-weight: bold; + box-sizing: border-box; + border-style: solid; + border-color: #767676; + color: var(--text); + font-size: 16px; + padding: 8px; + background-color: var(--bg-secondary); + border: none; + margin: 0; + max-width: 500px; + border-radius: 3px; + } + + select:disabled { + opacity: 0.6; + cursor: not-allowed; + } +</style> diff --git a/src/pages/stylesheets/Inter-VariableFont_slnt,wght.ttf b/src/pages/fonts/Inter-VariableFont_slnt,wght.ttf index 969a990f..969a990f 100644 --- a/src/pages/stylesheets/Inter-VariableFont_slnt,wght.ttf +++ b/src/pages/fonts/Inter-VariableFont_slnt,wght.ttf Binary files differdiff --git a/src/pages/stylesheets/Vazirmatn-VariableFont_wght.ttf b/src/pages/fonts/Vazirmatn-VariableFont_wght.ttf index f4b97c01..f4b97c01 100644 --- a/src/pages/stylesheets/Vazirmatn-VariableFont_wght.ttf +++ b/src/pages/fonts/Vazirmatn-VariableFont_wght.ttf Binary files differdiff --git a/src/pages/fonts/styles.css b/src/pages/fonts/styles.css new file mode 100644 index 00000000..754543b1 --- /dev/null +++ b/src/pages/fonts/styles.css @@ -0,0 +1,13 @@ +@font-face { + font-family: "Inter"; + src: url("Inter-VariableFont_slnt,wght.ttf"); + font-weight: normal; + font-style: normal; +} + +@font-face { + font-family: "Vazirmatn"; + src: url("Vazirmatn-VariableFont_wght.ttf"); + font-weight: normal; + font-style: normal; +} \ No newline at end of file diff --git a/src/pages/icons/AboutIcon.svelte b/src/pages/icons/AboutIcon.svelte new file mode 100644 index 00000000..e113dd68 --- /dev/null +++ b/src/pages/icons/AboutIcon.svelte @@ -0,0 +1,11 @@ +<svg + {...$$props} + xmlns="http://www.w3.org/2000/svg" + height="24px" + viewBox="0 -960 960 960" + width="24px" + fill="currentColor" + ><path + d="M440-280h80v-240h-80v240Zm40-320q17 0 28.5-11.5T520-640q0-17-11.5-28.5T480-680q-17 0-28.5 11.5T440-640q0 17 11.5 28.5T480-600Zm0 520q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" + /></svg +> diff --git a/src/pages/icons/AddIcon.svelte b/src/pages/icons/AddIcon.svelte new file mode 100644 index 00000000..ab26f078 --- /dev/null +++ b/src/pages/icons/AddIcon.svelte @@ -0,0 +1,3 @@ +<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor"> + <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z" /> +</svg> diff --git a/src/pages/icons/AutoPickIcon.svelte b/src/pages/icons/AutoPickIcon.svelte new file mode 100644 index 00000000..86adfa28 --- /dev/null +++ b/src/pages/icons/AutoPickIcon.svelte @@ -0,0 +1,11 @@ +<svg + {...$$restProps} + xmlns="http://www.w3.org/2000/svg" + height="20px" + viewBox="0 -960 960 960" + width="20px" + fill="currentColor" + ><path + d="M144-144v-178l342-342-54-53 51-51 72 72 110.22-110.22q4.45-4.45 11.11-7.11Q683-816 691-816t15 2.5q7 2.5 12 7.5l87 88q4.55 5.83 7.27 12.64 2.73 6.8 2.73 14.58t-2.66 14.44q-2.67 6.66-7.11 11.1L696-556l72 73-51 51-54-54-341 342H144Zm72-72h76l320-320-75-76-321 320v76Zm424-385 90-91-38-39-91 90 39 40Zm0 0-39-40 39 40Z" + /></svg +> diff --git a/src/pages/icons/CloseIcon.svelte b/src/pages/icons/CloseIcon.svelte new file mode 100644 index 00000000..ddfb29cb --- /dev/null +++ b/src/pages/icons/CloseIcon.svelte @@ -0,0 +1,3 @@ +<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 -960 960 960" width="20px" fill="currentColor" + ><path d="m291-240-51-51 189-189-189-189 51-51 189 189 189-189 51 51-189 189 189 189-51 51-189-189-189 189Z" /></svg +> diff --git a/src/pages/icons/CopyIcon.svelte b/src/pages/icons/CopyIcon.svelte new file mode 100644 index 00000000..37c13f98 --- /dev/null +++ b/src/pages/icons/CopyIcon.svelte @@ -0,0 +1,12 @@ +<svg + xmlns="http://www.w3.org/2000/svg" + height="24px" + width="24px" + viewBox="0 0 24 24" + preserveAspectRatio="xMinYMin meet" + fill="currentColor" +> + <path + d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z" + /> +</svg> diff --git a/src/pages/icons/ExportIcon.svelte b/src/pages/icons/ExportIcon.svelte new file mode 100644 index 00000000..d155e5c5 --- /dev/null +++ b/src/pages/icons/ExportIcon.svelte @@ -0,0 +1,12 @@ +<svg + {...$$restProps} + xmlns="http://www.w3.org/2000/svg" + height="24px" + viewBox="0 0 24 24" + width="24px" + fill="currentColor" +> + <path + d="M10.09 15.59L11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59zM19 3H5c-1.11 0-2 .9-2 2v4h2V5h14v14H5v-4H3v4c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z" + /> +</svg> diff --git a/src/pages/icons/GeneralIcon.svelte b/src/pages/icons/GeneralIcon.svelte new file mode 100644 index 00000000..b9429021 --- /dev/null +++ b/src/pages/icons/GeneralIcon.svelte @@ -0,0 +1,13 @@ +<svg + {...$$props} + xmlns="http://www.w3.org/2000/svg" + enable-background="new 0 0 24 24" + height="26px" + viewBox="0 0 24 24" + width="26px" + fill="currentColor" +> + <path + d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z" + ></path> +</svg> diff --git a/src/pages/icons/ImportIcon.svelte b/src/pages/icons/ImportIcon.svelte new file mode 100644 index 00000000..f64d0ff6 --- /dev/null +++ b/src/pages/icons/ImportIcon.svelte @@ -0,0 +1,12 @@ +<svg + {...$$restProps} + xmlns="http://www.w3.org/2000/svg" + height="24px" + viewBox="0 0 24 24" + width="24px" + fill="currentColor" +> + <path + d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z" + /> +</svg> diff --git a/src/pages/icons/PingIcon.svelte b/src/pages/icons/PingIcon.svelte new file mode 100644 index 00000000..34c4a37d --- /dev/null +++ b/src/pages/icons/PingIcon.svelte @@ -0,0 +1,12 @@ +<svg + {...$$restProps} + xmlns="http://www.w3.org/2000/svg" + height="20px" + viewBox="0 0 24 24" + width="20px" + fill="currentColor" +> + <path + d="M10.45 15.5q.6.6 1.55.587.95-.012 1.4-.687L19 7l-8.4 5.6q-.675.45-.712 1.375-.038.925.562 1.525ZM12 4q1.475 0 2.838.412Q16.2 4.825 17.4 5.65l-1.9 1.2q-.825-.425-1.712-.637Q12.9 6 12 6 8.675 6 6.338 8.337 4 10.675 4 14q0 1.05.287 2.075Q4.575 17.1 5.1 18h13.8q.575-.95.838-1.975Q20 15 20 13.9q0-.9-.212-1.75-.213-.85-.638-1.65l1.2-1.9q.75 1.175 1.188 2.5.437 1.325.462 2.75.025 1.425-.325 2.725-.35 1.3-1.025 2.475-.275.45-.75.7-.475.25-1 .25H5.1q-.525 0-1-.25t-.75-.7q-.65-1.125-1-2.387Q2 15.4 2 14q0-2.075.788-3.888.787-1.812 2.15-3.175Q6.3 5.575 8.125 4.787 9.95 4 12 4Zm.175 7.825Z" + /></svg +> diff --git a/src/pages/icons/RedirectIcon.svelte b/src/pages/icons/RedirectIcon.svelte new file mode 100644 index 00000000..9392762a --- /dev/null +++ b/src/pages/icons/RedirectIcon.svelte @@ -0,0 +1,10 @@ +<svg + xmlns="http://www.w3.org/2000/svg" + height="24px" + width="24px" + viewBox="0 0 24 24" + preserveAspectRatio="xMinYMin meet" + fill="currentColor" +> + <path d="M7 20v-9q0-.825.588-1.413Q8.175 9 9 9h8.2l-1.6-1.6L17 6l4 4-4 4-1.4-1.4 1.6-1.6H9v9Z" /> +</svg> diff --git a/src/pages/icons/RedirectToOriginalIcon.svelte b/src/pages/icons/RedirectToOriginalIcon.svelte new file mode 100644 index 00000000..aad5c48e --- /dev/null +++ b/src/pages/icons/RedirectToOriginalIcon.svelte @@ -0,0 +1,13 @@ +<svg + xmlns="http://www.w3.org/2000/svg" + height="24px" + width="24px" + viewBox="0 0 24 24" + preserveAspectRatio="xMinYMin meet" + fill="currentColor" +> + <path + d="M 17,20 V 11 Q 17,10.175 16.412,9.587 15.825,9 15,9 H 6.8 L 8.4,7.4 7,6 3,10 7,14 8.4,12.6 6.8,11 H 15 v 9 z" + id="path2" + /> +</svg> diff --git a/src/pages/icons/ResetIcon.svelte b/src/pages/icons/ResetIcon.svelte new file mode 100644 index 00000000..6daf57e6 --- /dev/null +++ b/src/pages/icons/ResetIcon.svelte @@ -0,0 +1,16 @@ +<svg + xmlns="http://www.w3.org/2000/svg" + enable-background="new 0 0 24 24" + height="24px" + viewBox="0 0 24 24" + width="24px" + fill="currentColor" + {...$$restProps} +> + <path + d="M12,5V2L8,6l4,4V7c3.31,0,6,2.69,6,6c0,2.97-2.17,5.43-5,5.91v2.02c3.95-0.49,7-3.85,7-7.93C20,8.58,16.42,5,12,5z" + /> + <path + d="M6,13c0-1.65,0.67-3.15,1.76-4.24L6.34,7.34C4.9,8.79,4,10.79,4,13c0,4.08,3.05,7.44,7,7.93v-2.02 C8.17,18.43,6,15.97,6,13z" + /> +</svg> diff --git a/src/pages/icons/ServicesIcon.svelte b/src/pages/icons/ServicesIcon.svelte new file mode 100644 index 00000000..ec24259b --- /dev/null +++ b/src/pages/icons/ServicesIcon.svelte @@ -0,0 +1,11 @@ +<svg + {...$$props} + xmlns="http://www.w3.org/2000/svg" + fill="currentColor" + height="24px" + viewBox="0 -960 960 960" + width="24px" + ><path + d="m240-120 240-240 240 240H240ZM80-280v-480q0-33 23.5-56.5T160-840h640q33 0 56.5 23.5T880-760v480q0 33-23.5 56.5T800-200H680v-80h120v-480H160v480h120v80H160q-33 0-56.5-23.5T80-280Zm400-200Z" + /></svg +> diff --git a/src/pages/icons/SettingsIcon.svelte b/src/pages/icons/SettingsIcon.svelte new file mode 100644 index 00000000..00798289 --- /dev/null +++ b/src/pages/icons/SettingsIcon.svelte @@ -0,0 +1,15 @@ +<svg + {...$$restProps} + xmlns="http://www.w3.org/2000/svg" + height="24px" + width="24px" + viewBox="0 0 24 24" + preserveAspectRatio="xMinYMin meet" + fill="currentColor" + on:click + on:keydown={null} +> + <path + d="m9.25 22-.4-3.2q-.325-.125-.612-.3-.288-.175-.563-.375L4.7 19.375l-2.75-4.75 2.575-1.95Q4.5 12.5 4.5 12.337v-.675q0-.162.025-.337L1.95 9.375l2.75-4.75 2.975 1.25q.275-.2.575-.375.3-.175.6-.3l.4-3.2h5.5l.4 3.2q.325.125.613.3.287.175.562.375l2.975-1.25 2.75 4.75-2.575 1.95q.025.175.025.337v.675q0 .163-.05.338l2.575 1.95-2.75 4.75-2.95-1.25q-.275.2-.575.375-.3.175-.6.3l-.4 3.2Zm2.8-6.5q1.45 0 2.475-1.025Q15.55 13.45 15.55 12q0-1.45-1.025-2.475Q13.5 8.5 12.05 8.5q-1.475 0-2.488 1.025Q8.55 10.55 8.55 12q0 1.45 1.012 2.475Q10.575 15.5 12.05 15.5Z" + /> +</svg> diff --git a/src/pages/icons/SwitchInstanceIcon.svelte b/src/pages/icons/SwitchInstanceIcon.svelte new file mode 100644 index 00000000..6a1f96ac --- /dev/null +++ b/src/pages/icons/SwitchInstanceIcon.svelte @@ -0,0 +1,15 @@ +<svg + {...$$restProps} + xmlns="http://www.w3.org/2000/svg" + height="24px" + width="24px" + viewBox="0 0 24 24" + preserveAspectRatio="xMinYMin meet" + fill="currentColor" + on:click + on:keydown={null} +> + <path + d="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z" + /> +</svg> diff --git a/src/pages/messages/index.html b/src/pages/messages/index.html new file mode 100644 index 00000000..8701c152 --- /dev/null +++ b/src/pages/messages/index.html @@ -0,0 +1,14 @@ +<!doctype html> +<html lang="en"> + <head> + <meta charset="utf-8" /> + <meta name="viewport" content="width=device-width,initial-scale=1" /> + <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg" /> + <title>Settings</title> + <link rel="stylesheet" href="build/bundle.css" /> + <link rel="stylesheet" href="../fonts/styles.css" /> + <script defer src="build/bundle.js"></script> + </head> + + <body></body> +</html> diff --git a/src/pages/messages/no_instance.html b/src/pages/messages/no_instance.html deleted file mode 100644 index 76ec19cf..00000000 --- a/src/pages/messages/no_instance.html +++ /dev/null @@ -1,26 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> - -<head> - <meta charset="UTF-8"> - <meta http-equiv="X-UA-Compatible" content="IE=edge"> - <meta name="viewport" content="width=device-width, initial-scale=1.0"> - <link href="../stylesheets/styles.css" rel="stylesheet"> - <title>No instances found</title> - <style> - #body { - display: flex; - justify-content: center; - align-items: center; - height: 100vh; - } - </style> -</head> - -<body> - <div id="body"> - <h1>You have no instance selected for this frontend</h1> - </div> -</body> - -</html> \ No newline at end of file diff --git a/src/pages/messages_src/App.svelte b/src/pages/messages_src/App.svelte new file mode 100644 index 00000000..1c5170dd --- /dev/null +++ b/src/pages/messages_src/App.svelte @@ -0,0 +1,200 @@ +<script> + const browser = window.browser || window.chrome + + import utils from "../../assets/javascripts/utils.js" + import { onDestroy } from "svelte" + import servicesHelper from "../../assets/javascripts/services.js" + import { onMount } from "svelte" + + import { options, config, page } from "./stores" + import Button from "../components/Button.svelte" + import AutoPickIcon from "../icons/AutoPickIcon.svelte" + import SwitchInstanceIcon from "../icons/SwitchInstanceIcon.svelte" + + let _options + const unsubscribeOptions = options.subscribe(val => { + if (val) { + _options = val + browser.storage.local.set({ options: val }) + } + }) + + let _config + const unsubscribeConfig = config.subscribe(val => (_config = val)) + + onDestroy(() => { + unsubscribeOptions() + unsubscribeConfig() + }) + + onMount(async () => { + let opts = await utils.getOptions() + if (!opts) { + await servicesHelper.initDefaults() + opts = await utils.getOptions() + } + options.set(opts) + config.set(await utils.getConfig()) + }) + + let _page + page.subscribe(val => (_page = val)) + + let style + $: if (_options) style = utils.style(_options, window) + + let autoPicking = false + + const params = new URLSearchParams(window.location.search) + const oldUrl = new URL(params.get("url")) + + async function autoPick() { + const frontend = params.get("frontend") + autoPicking = true + const redirects = await utils.getList(_options) + const instances = utils.randomInstances(redirects[frontend]["clearnet"], 5) + const pings = await Promise.all([ + ...instances.map(async instance => { + return [instance, await utils.ping(instance)] + }), + ]) + pings.sort((a, b) => a[1] - b[1]) + _options[frontend].push(pings[0][0]) + options.set(_options) + autoPicking = false + } + + async function autoPickInstance() { + await autoPick() + await redirectUrl() + } + + async function enableService() { + const service = await servicesHelper.computeService(oldUrl) + _options[service].enabled = true + options.set(_options) + await redirectUrl() + } + + async function redirectUrl() { + const newUrl = await servicesHelper.redirectAsync(oldUrl, "main_frame", null, null, false, true) + browser.tabs.update({ url: newUrl }) + } + + async function switchInstance() { + const newUrl = await servicesHelper.switchInstance(oldUrl) + browser.tabs.update({ url: newUrl }) + } + + async function removeInstance() { + const service = await servicesHelper.computeService(oldUrl) + const frontend = params.get("frontend") + const i = _options[frontend].findIndex(instance => oldUrl.href.startsWith(instance)) + _options[frontend].splice(i, 1) + options.set(_options) + const newUrl = await servicesHelper.switchInstance(oldUrl, service) + browser.tabs.update({ url: newUrl }) + } + + async function removeAndAutoPickInstance() { + const service = await servicesHelper.computeService(oldUrl) + + const frontend = params.get("frontend") + const i = _options[frontend].findIndex(instance => oldUrl.href.startsWith(instance)) + _options[frontend].splice(i, 1) + options.set(_options) + await autoPick() + const newUrl = await servicesHelper.switchInstance(oldUrl, service) + browser.tabs.update({ url: newUrl }) + } + + async function addAutoPickInstance() { + await autoPick() + const newUrl = await servicesHelper.switchInstance(oldUrl) + browser.tabs.update({ url: newUrl }) + } +</script> + +{#if _options && _config} + <div class="main" dir="auto" {style}> + {#if params.get("message") == "disabled"} + <div> + <h1>You disabled redirections for this service</h1> + <Button on:click={enableService}> + {browser.i18n.getMessage("enable") || "Enable"} + </Button> + </div> + {:else if params.get("message") == "server_error"} + <!-- https://httpstat.us/403 for testing --> + <div> + <h1>Your selected instance gave out an error: {params.get("code")}</h1> + {#if _options[params.get("frontend")].length > 1} + <Button on:click={switchInstance}> + <SwitchInstanceIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("switchInstance") || "Switch Instance"} + </Button> + <Button on:click={removeInstance}> + <SwitchInstanceIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("removeInstance") || "Remove Instance"} + + + {browser.i18n.getMessage("switchInstance") || "Switch Instance"} + </Button> + {:else} + <Button on:click={addAutoPickInstance} disabled={autoPicking}> + <AutoPickIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("autoPickInstance") || "Auto Pick Instance"} + </Button> + <Button on:click={removeAndAutoPickInstance} disabled={autoPicking}> + <AutoPickIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("removeInstance") || "Remove Instance"} + + + {browser.i18n.getMessage("autoPickInstance") || "Auto Pick Instance"} + </Button> + {/if} + </div> + {:else if params.get("message") == "no_instance"} + <div> + <h1>You have no instance selected for this frontend</h1> + <Button on:click={autoPickInstance} disabled={autoPicking}> + <AutoPickIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("autoPickInstance") || "Auto Pick Instance"} + </Button> + </div> + {/if} + </div> +{:else} + <p>Loading...</p> +{/if} + +<style> + :global(body) { + width: 100vw; + height: 100vh; + margin: 0; + padding: 0; + } + + div.main { + height: 100%; + display: grid; + grid-template-columns: 800px; + margin: 0; + padding-top: 50px; + justify-content: center; + font-family: "Inter", sans-serif; + box-sizing: border-box; + font-size: 16px; + background-color: var(--bg-main); + color: var(--text); + overflow: scroll; + } + + :global(.margin) { + margin-right: 10px; + margin-left: 0; + } + :global(.margin_rtl) { + margin-right: 0; + margin-left: 10px; + } +</style> diff --git a/src/pages/messages_src/main.js b/src/pages/messages_src/main.js new file mode 100644 index 00000000..c4012f4a --- /dev/null +++ b/src/pages/messages_src/main.js @@ -0,0 +1,7 @@ +import App from "./App.svelte" + +const app = new App({ + target: document.body, +}) + +export default app diff --git a/src/pages/messages_src/stores.js b/src/pages/messages_src/stores.js new file mode 100644 index 00000000..782f6064 --- /dev/null +++ b/src/pages/messages_src/stores.js @@ -0,0 +1,5 @@ +import { writable } from "svelte/store" + +export const options = writable(null) +export const config = writable(null) +export const page = writable("general") diff --git a/src/pages/options/index.html b/src/pages/options/index.html new file mode 100644 index 00000000..b197d4a7 --- /dev/null +++ b/src/pages/options/index.html @@ -0,0 +1,17 @@ +<!DOCTYPE html> +<html lang="en"> + +<head> + <meta charset='utf-8'> + <meta name='viewport' content='width=device-width,initial-scale=1'> + <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg"> + <title>Settings</title> + <link rel='stylesheet' href='build/bundle.css'> + <link rel='stylesheet' href='../fonts/styles.css'> + <script defer src='build/bundle.js'></script> +</head> + +<body> +</body> + +</html> \ No newline at end of file diff --git a/src/pages/options/index.js b/src/pages/options/index.js deleted file mode 100644 index fcc51298..00000000 --- a/src/pages/options/index.js +++ /dev/null @@ -1,399 +0,0 @@ -import utils from "../../assets/javascripts/utils.js" - -let config, - options, - divs = {} - -for (const a of document.getElementById("links").getElementsByTagName("a")) { - if (!a.href.includes("https://")) { - a.addEventListener("click", e => { - const path = a.getAttribute("href").replace("#", "") - loadPage(path) - e.preventDefault() - }) - } -} - -config = await utils.getConfig() -options = await utils.getOptions() - -/** - * @param {string} service - */ -async function changeFrontendsSettings(service) { - options = await utils.getOptions() - const opacityDiv = document.getElementById(`${service}-opacity`) - if (document.getElementById(`${service}-enabled`).checked) { - opacityDiv.style.pointerEvents = 'auto' - opacityDiv.style.opacity = 1 - opacityDiv.style.userSelect = 'auto' - } else { - opacityDiv.style.pointerEvents = 'none' - opacityDiv.style.opacity = 0.4 - opacityDiv.style.userSelect = 'none' - } - for (const frontend in config.services[service].frontends) { - if (config.services[service].frontends[frontend].instanceList) { - const frontendDiv = document.getElementById(frontend) - if (typeof divs[service].frontend !== "undefined") { - if ( - frontend == divs[service].frontend.value - || - (config.services[service].frontends[divs[service].frontend.value].desktopApp && divs[service].embedFrontend && frontend == divs[service].embedFrontend.value) - ) { - frontendDiv.style.display = "" - if (config.services[service].frontends[frontend].localhost === true) { - document.getElementById(`${service}-instance-div`).style.display = "" - - if (options[service].instance == "localhost") { - frontendDiv.style.display = "none" - } - } else { - document.getElementById(`${service}-instance-div`).style.display = "none" - } - } else { - frontendDiv.style.display = "none" - } - } - } - } - if (document.getElementById(`${service}-redirectType`)) { - const frontend = options[service].frontend - if (config.services[service].frontends[frontend].embeddable) { - document.getElementById(`${service}-redirectType`).innerHTML = ` - <option value="both" data-localise="__MSG_both__">both</options> - <option value="sub_frame" data-localise="__MSG_onlyEmbedded__">Only Embedded</option> - <option value="main_frame" data-localise="__MSG_onlyNotEmbedded__">Only Not Embedded</option> - ` - } - else if (config.services[service].frontends[frontend].desktopApp && Object.values(config.services[service].frontends).some(frontend => frontend.embeddable)) { - document.getElementById(`${service}-redirectType`).innerHTML = ` - <option value="both" data-localise="__MSG_both__">both</options> - <option value="main_frame" data-localise="__MSG_onlyNotEmbedded__">Only Not Embedded</option> - ` - if (options[service].redirectType == "sub_frame") { - options[service].redirectType = "main_frame" - browser.storage.local.set({ options }) - } - } else { - document.getElementById(`${service}-redirectType`).innerHTML = - '<option value="main_frame" data-localise="__MSG_onlyNotEmbedded__">Only Not Embedded</option>' - options[service].redirectType = "main_frame" - - browser.storage.local.set({ options }) - } - document.getElementById(`${service}-redirectType`).value = options[service].redirectType - if (config.services[service].frontends[frontend].desktopApp && options[service].redirectType != "main_frame") { - document.getElementById(`${service}-embedFrontend-div`).style.display = '' - document.getElementById(divs[service].embedFrontend.value).style.display = '' - } - else if (config.services[service].frontends[frontend].desktopApp && options[service].redirectType == "main_frame") { - document.getElementById(`${service}-embedFrontend-div`).style.display = 'none' - document.getElementById(divs[service].embedFrontend.value).style.display = 'none' - } else { - document.getElementById(`${service}-embedFrontend-div`).style.display = 'none' - } - } - const frontend_name_element = document.getElementById(`${service}_page`).getElementsByClassName("frontend_name")[0] - frontend_name_element.href = config.services[service].frontends[divs[service].frontend.value].url -} - -/** - * @param {string} path - */ -async function loadPage(path) { - options = await utils.getOptions() - for (const section of document.getElementById("pages").getElementsByTagName("section")) section.style.display = "none" - document.getElementById(`${path}_page`).style.display = "block" - - for (const element of document.getElementsByClassName("title")) { - const a = element.getElementsByTagName('a')[0] - if (a.getAttribute("href") == `#${path}`) { - element.classList.add("selected") - } else { - element.classList.remove("selected") - } - } - - for (const service in config.services) { - if (options[service].enabled) { - document.getElementById(`${service}-link`).style.opacity = 1 - } else { - document.getElementById(`${service}-link`).style.opacity = 0.4 - } - } - - window.history.pushState({ id: "100" }, "Page 2", `/pages/options/index.html#${path}`) - - if (path != 'general') { - const service = path; - - divs[service] = {} - - for (const option in config.services[service].options) { - divs[service][option] = document.getElementById(`${service}-${option}`) - if (typeof config.services[service].options[option] == "boolean") divs[service][option].checked = options[service][option] - else divs[service][option].value = options[service][option] - divs[service][option].addEventListener("change", async () => { - let options = await utils.getOptions() - if (typeof config.services[service].options[option] == "boolean") - options[service][option] = divs[service][option].checked - else - options[service][option] = divs[service][option].value - browser.storage.local.set({ options }) - changeFrontendsSettings(service) - }) - } - - changeFrontendsSettings(service) - - - for (const frontend in config.services[service].frontends) { - if (config.services[service].frontends[frontend].instanceList) { - processCustomInstances(frontend, document) - document.getElementById(`ping-${frontend}`).addEventListener("click", async () => { - document.getElementById(`ping-${frontend}`).getElementsByTagName('x')[0].innerHTML = "Pinging..." - await ping(frontend) - document.getElementById(`ping-${frontend}`).getElementsByTagName('x')[0].innerHTML = "Ping instances" - }) - } - } - - !async function () { - const blacklist = await utils.getBlacklist(options) - const redirects = await utils.getList(options) - - for (const frontend in config.services[service].frontends) { - if (config.services[service].frontends[frontend].instanceList) { - if (redirects == 'disabled' || blacklist == 'disabled') { - document.getElementById(frontend).getElementsByClassName('clearnet')[0].style.display = 'none' - document.getElementById(frontend).getElementsByClassName('ping')[0].style.display = 'none' - } - else if (!redirects || !blacklist) { - document.getElementById(frontend) - .getElementsByClassName('clearnet')[0] - .getElementsByClassName("checklist")[0] - .getElementsByClassName('loading')[0] - .innerHTML = 'Could not fetch instances.' - } - else { - createList(frontend, config.networks, document, redirects, blacklist) - } - } - } - }() - } -} - -async function calcCustomInstances(frontend) { - let options = await utils.getOptions() - let customInstances = options[frontend] - const pingCache = await utils.getPingCache() - - document.getElementById(frontend).getElementsByClassName("custom-checklist")[0].innerHTML = customInstances - .map( - x => { - let time = pingCache[x] - let timeText = "" - if (time) { - const { color, text } = processTime(time) - timeText = `<span class="ping" style="color:${color};">${text}</span>` - } - return `<div> - <x> - <a href="${x}" target="_blank">${x}</a> - ${timeText} - </x> - <button class="add clear-${x}"> - <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor"> - <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z" /> - </svg> - </button> - </div> - <hr>` - }) - .join("\n") - for (const item of customInstances) { - document.getElementById(frontend).getElementsByClassName(`clear-${item}`)[0].addEventListener("click", async () => { - const index = customInstances.indexOf(item) - if (index > -1) customInstances.splice(index, 1) - options = await utils.getOptions() - options[frontend] = customInstances - browser.storage.local.set({ options }, async () => { - calcCustomInstances(frontend) - const blacklist = await utils.getBlacklist(options) - const redirects = await utils.getList(options) - createList(frontend, config.networks, document, redirects, blacklist) - }) - }) - } -} - -async function processCustomInstances(frontend, document) { - calcCustomInstances(frontend) - document.getElementById(frontend).getElementsByClassName("custom-instance-form")[0].addEventListener("submit", async event => { - event.preventDefault() - let options = await utils.getOptions() - let customInstances = options[frontend] - let frontendCustomInstanceInput = document.getElementById(frontend).getElementsByClassName("custom-instance")[0] - let url - try { - url = new URL(frontendCustomInstanceInput.value) - } catch (error) { - return - } - let protocolHostVar = utils.protocolHost(url) - if (frontendCustomInstanceInput.validity.valid) { - if (!customInstances.includes(protocolHostVar)) { - customInstances.push(protocolHostVar) - options = await utils.getOptions() - options[frontend] = customInstances - browser.storage.local.set({ options }, () => { - frontendCustomInstanceInput.value = "" - calcCustomInstances(frontend) - }) - } - } - }) -} - -/** - * @param {string} frontend - * @param {*} networks - * @param {*} document - * @param {*} redirects - * @param {*} blacklist - */ -async function createList(frontend, networks, document, redirects, blacklist) { - const pingCache = await utils.getPingCache() - const options = await utils.getOptions() - for (const network in networks) { - const checklist = document.getElementById(frontend) - .getElementsByClassName(network)[0] - .getElementsByClassName("checklist")[0] - - if (!redirects[frontend]) { - checklist.innerHTML = '<div class="block block-option">No instances found.</div>' - break - } - - const instances = redirects[frontend][network] - if (!instances || instances.length === 0) continue - - document.getElementById(frontend) - .getElementsByClassName("custom-instance")[0] - .placeholder = redirects[frontend].clearnet[0] - - const sortedInstances = instances.sort((a, b) => blacklist.cloudflare.includes(a) && !blacklist.cloudflare.includes(b)) - - const content = sortedInstances - .map(x => { - const cloudflare = blacklist.cloudflare.includes(x) ? - `<a target="_blank" href="https://libredirect.github.io/docs.html#instances"> - <span style="color:red;">cloudflare</span> - </a>` : "" - - let time = pingCache[x] - let timeText = "" - if (time) { - const { color, text } = processTime(time) - timeText = `<span class="ping" style="color:${color};">${text}</span>` - } - - const chosen = options[frontend].includes(x) ? `<span style="color:grey;">chosen</span>` : "" - - const warnings = [cloudflare, timeText, chosen].join(" ") - return `<div class="frontend"> - <x> - <a href="${x}" target="_blank">${x}</a> - ${warnings} - </x> - <button class="add add-${x}"> - <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor"> - <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z" /> - </svg> - </button> - </div>` - }) - - checklist.innerHTML = [ - `<div class="block block-option"> - <label>${utils.camelCase(network)}</label> - </div>`, - ...content, - "<br>" - ].join("\n<hr>\n") - - for (const instance of instances) { - checklist.getElementsByClassName(`add-${instance}`)[0] - .addEventListener("click", async () => { - let options = await utils.getOptions() - if (!options[frontend].includes(instance)) { - options[frontend].push(instance) - browser.storage.local.set({ options }, () => { - calcCustomInstances(frontend) - createList(frontend, config.networks, document, redirects, blacklist) - }) - } - }) - } - } -} - -const r = window.location.href.match(/#(.*)/) -if (r) loadPage(r[1]) -else loadPage("general") - -/** - * @param {string} frontend - */ -async function ping(frontend) { - const instanceElements = [ - ...document.getElementById(frontend).getElementsByClassName("custom-checklist")[0].getElementsByTagName('x'), - ...document.getElementById(frontend).getElementsByClassName('clearnet')[0].getElementsByTagName('x') - ] - - let pingCache = await utils.getPingCache() - let redundancyList = {} - for (const element of instanceElements) { - let span = element.getElementsByClassName('ping')[0] - if (!span) span = document.createElement('span') - span.classList = ['ping'] - span.innerHTML = '<span style="color:lightblue">pinging...</span>' - element.appendChild(span) - const href = element.getElementsByTagName('a')[0].href - const innerHTML = element.getElementsByTagName('a')[0].innerHTML - const time = redundancyList[innerHTML] ?? await utils.ping(href) - const { color, text } = processTime(time) - span.innerHTML = `<span style="color:${color};">${text}</span>` - pingCache[innerHTML] = time - redundancyList[innerHTML] = time - - browser.storage.local.set({ pingCache }) - } -} - -/** - * @param {number} time - */ -function processTime(time) { - let text - let color - if (time < 5000) { - text = `${time}ms` - if (time <= 1000) color = "green" - else if (time <= 2000) color = "orange" - } - else if (time >= 5000) { - color = "red" - if (time == 5000) text = "5000ms+" - if (time > 5000) text = `Error: ${time - 5000}` - } - else { - color = "red" - text = 'Server not found' - } - return { - color, text - } -} diff --git a/src/pages/options/index.pug b/src/pages/options/index.pug deleted file mode 100644 index 4e19b087..00000000 --- a/src/pages/options/index.pug +++ /dev/null @@ -1,10 +0,0 @@ -doctype html -html(id="elementToShowWithJavaScript" lang="en") - include /src/pages/widgets/head - body(class="option" dir="auto") - include /src/pages/widgets/links - div#pages - include /src/pages/options/widgets/general - include /src/pages/options/widgets/services - script(type="module" src="./index.js") - \ No newline at end of file diff --git a/src/pages/options/init.js b/src/pages/options/init.js deleted file mode 100644 index f88c9ef9..00000000 --- a/src/pages/options/init.js +++ /dev/null @@ -1,54 +0,0 @@ -window.browser = window.browser || window.chrome - -import localise from "../../assets/javascripts/localise.js" -import utils from "../../assets/javascripts/utils.js" -import servicesHelper from "../../assets/javascripts/services.js" - -if (!(await utils.getOptions())) { - await servicesHelper.initDefaults() -} - -function changeTheme() { - return new Promise(async resolve => { - switch ((await utils.getOptions()).theme) { - case "dark": - document.body.classList.add("dark-theme") - document.body.classList.remove("light-theme") - for (const element of document.body.getElementsByClassName('dark')) { - element.style.display = 'none'; - } - break - case "light": - document.body.classList.add("light-theme") - document.body.classList.remove("dark-theme") - for (const element of document.body.getElementsByClassName('light')) { - element.style.display = 'none'; - } - break - default: - if (matchMedia("(prefers-color-scheme: light)").matches) { - document.body.classList.add("light-theme") - document.body.classList.remove("dark-theme") - for (const element of document.body.getElementsByClassName('light')) { - element.style.display = 'none'; - } - } else { - document.body.classList.add("dark-theme") - document.body.classList.remove("light-theme") - for (const element of document.body.getElementsByClassName('dark')) { - element.style.display = 'none'; - } - } - } - resolve() - }) -} - -changeTheme() -if (["ar", "iw", "ku", "fa", "ur"].includes(browser.i18n.getUILanguage())) { - document.getElementsByTagName("body")[0].classList.add("rtl") - document.getElementsByTagName("body")[0].dir = "rtl" -} -localise.localisePage() - -window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", changeTheme) diff --git a/src/pages/options/widgets/general.js b/src/pages/options/widgets/general.js deleted file mode 100644 index 6f2852a9..00000000 --- a/src/pages/options/widgets/general.js +++ /dev/null @@ -1,219 +0,0 @@ -"use strict" -window.browser = window.browser || window.chrome - -import utils from "../../../assets/javascripts/utils.js" -import servicesHelper from "../../../assets/javascripts/services.js" - -const isChrome = browser.runtime.getBrowserInfo === undefined - -async function setOption(option, type, event) { - let options = await utils.getOptions() - if (type == "select") { - options[option] = event.target.options[event.target.options.selectedIndex].value - } else if (type == "checkbox") { - options[option] = event.target.checked - } else if (type == "range") { - options[option] = event.target.value - } - browser.storage.local.set({ options }) -} - -const exportSettingsElement = document.getElementById("export-settings") -async function exportSettings() { - const options = await utils.getOptions() - options.version = browser.runtime.getManifest().version - let resultString = JSON.stringify(options, null, " ") - exportSettingsElement.href = "data:application/json;base64," + btoa(resultString) - exportSettingsElement.download = `libredirect-settings-v${options.version}.json` - return -} -exportSettings() -document.getElementById("general_page").onclick = exportSettings - -const importSettingsElement = document.getElementById("import-settings") -const importSettingsElementText = document.getElementById("import_settings_text") -importSettingsElement.addEventListener("change", () => { - function importError() { - const oldHTML = importSettingsElementText.innerHTML - importSettingsElementText.innerHTML = '<span style="color:red;">Error!</span>' - setTimeout(() => (importSettingsElementText.innerHTML = oldHTML), 1000) - } - importSettingsElementText.innerHTML = "..." - let file = importSettingsElement.files[0] - const reader = new FileReader() - reader.readAsText(file) - reader.onload = async () => { - const data = JSON.parse(reader.result) - if ( - "theme" in data - && data.version == browser.runtime.getManifest().version - ) { - browser.storage.local.clear(async () => { - browser.storage.local.set({ options: data }, () => { - location.reload() - }) - }) - } else { - console.log("incompatible settings") - importError() - } - } - reader.onerror = error => { - console.log("error", error) - importError() - } -}) - -const exportSettingsSync = document.getElementById("export-settings-sync") -const importSettingsSync = document.getElementById("import-settings-sync") -const importSettingsSyncText = document.getElementById("import_settings_sync_text") - -exportSettingsSync.addEventListener("click", async () => { - let options = await utils.getOptions() - options.version = browser.runtime.getManifest().version - browser.storage.sync.set({ options }, () => location.reload()) -}) - -importSettingsSync.addEventListener("click", () => { - function importError() { - importSettingsSyncText.innerHTML = '<span style="color:red;">Error!</span>' - setTimeout(() => (importSettingsSyncText.innerHTML = oldHTML), 1000) - } - const oldHTML = importSettingsSyncText.innerHTML - importSettingsSyncText.innerHTML = "..." - browser.storage.sync.get({ options }, r => { - const options = r.options - if (options.version == browser.runtime.getManifest().version) { - browser.storage.local.set({ options }, () => location.reload()) - } else { - importError() - } - }) -}) - -const resetSettings = document.getElementById("reset-settings") -resetSettings.addEventListener("click", async () => { - resetSettings.innerHTML = "..." - await servicesHelper.initDefaults() - location.reload() -}) - -const fetchInstancesElement = document.getElementById('fetch-instances') -fetchInstancesElement.addEventListener('change', event => { - setOption('fetchInstances', 'select', event) - location.reload() -}) - -const redirectOnlyInIncognitoElement = document.getElementById('redirectOnlyInIncognito') -redirectOnlyInIncognitoElement.addEventListener('change', event => { - setOption('redirectOnlyInIncognito', 'checkbox', event) -}) - -const bookmarksMenuElement = document.getElementById('bookmarksMenu') -bookmarksMenuElement.addEventListener('change', async event => { - if (event.target.checked) - bookmarksMenuElement.checked = await browser.permissions.request({ - permissions: ["bookmarks"] - }) - else - bookmarksMenuElement.checked = !await browser.permissions.remove({ - permissions: ["bookmarks"] - }) -}) - -let themeElement = document.getElementById("theme") -themeElement.addEventListener("change", event => { - setOption("theme", "select", event) - location.reload() -}) - -let nameCustomInstanceInput = document.getElementById("exceptions-custom-instance") -let instanceTypeElement = document.getElementById("exceptions-custom-instance-type") -let instanceType = "url" - -let config = await utils.getConfig() - -for (const service in config.services) { - document.getElementById(service).addEventListener("change", async event => { - let options = await utils.getOptions() - if (event.target.checked && !options.popupServices.includes(service)) options.popupServices.push(service) - else if (options.popupServices.includes(service)) { - var index = options.popupServices.indexOf(service) - if (index !== -1) options.popupServices.splice(index, 1) - } - browser.storage.local.set({ options }) - }) -} - -let options = await utils.getOptions() -themeElement.value = options.theme -fetchInstancesElement.value = options.fetchInstances -redirectOnlyInIncognitoElement.checked = options.redirectOnlyInIncognito -bookmarksMenuElement.checked = await browser.permissions.contains({ permissions: ["bookmarks"] }) -for (const service in config.services) document.getElementById(service).checked = options.popupServices.includes(service) - -instanceTypeElement.addEventListener("change", event => { - instanceType = event.target.options[instanceTypeElement.selectedIndex].value - if (instanceType == "url") { - nameCustomInstanceInput.setAttribute("type", "url") - nameCustomInstanceInput.setAttribute("placeholder", "https://www.google.com") - } else if (instanceType == "regex") { - nameCustomInstanceInput.setAttribute("type", "text") - nameCustomInstanceInput.setAttribute("placeholder", "https?://(www.|)youtube.com/") - } -}) - -let exceptionsCustomInstances = options.exceptions -function calcExceptionsCustomInstances() { - document.getElementById("exceptions-custom-checklist").innerHTML = [...exceptionsCustomInstances.url, ...exceptionsCustomInstances.regex] - .map( - x => `<div> - ${x} - <button class="add" id="clear-${x}"> - <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" - fill="currentColor"> - <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z" /> - </svg> - </button> - </div> - <hr>` - ) - .join("\n") - - for (const x of [...exceptionsCustomInstances.url, ...exceptionsCustomInstances.regex]) { - document.getElementById(`clear-${x}`).addEventListener("click", async () => { - let index - index = exceptionsCustomInstances.url.indexOf(x) - if (index > -1) exceptionsCustomInstances.url.splice(index, 1) - else { - index = exceptionsCustomInstances.regex.indexOf(x) - if (index > -1) exceptionsCustomInstances.regex.splice(index, 1) - } - options = await utils.getOptions() - options.exceptions = exceptionsCustomInstances - browser.storage.local.set({ options }) - calcExceptionsCustomInstances() - }) - } -} -calcExceptionsCustomInstances() -document.getElementById("custom-exceptions-instance-form").addEventListener("submit", async event => { - event.preventDefault() - let val - if (instanceType == "url" && nameCustomInstanceInput.validity.valid) { - val = nameCustomInstanceInput.value - if (!exceptionsCustomInstances.url.includes(val)) exceptionsCustomInstances.url.push(val) - } else if (instanceType == "regex") { - val = nameCustomInstanceInput.value - if (val.trim() != "" && !exceptionsCustomInstances.regex.includes(val)) exceptionsCustomInstances.regex.push(val) - } - if (val) { - options = await utils.getOptions() - options.exceptions = exceptionsCustomInstances - browser.storage.local.set({ options }, () => - nameCustomInstanceInput.value = "" - ) - - } - calcExceptionsCustomInstances() -}) diff --git a/src/pages/options/widgets/general.pug b/src/pages/options/widgets/general.pug deleted file mode 100644 index 70316473..00000000 --- a/src/pages/options/widgets/general.pug +++ /dev/null @@ -1,88 +0,0 @@ -section(class="block-option" id="general_page") - div(class="block block-option") - h1(data-localise="__MSG_general__") General - hr - - div(class="block block-option") - label(data-localise="__MSG_theme__") Theme - select(id="theme" aria-label="select theme") - option(value="detect" data-localise="__MSG_auto__") Auto - option(value="light" data-localise="__MSG_light__") Light - option(value="dark" data-localise="__MSG_dark__") Dark - - div(class="block block-option") - label(data-localise="__MSG_fetchPublicInstances__") Fetch public instances - select(id="fetch-instances" aria-label="Select fetch public instances") - option(value="github") GitHub - option(value="codeberg") Codeberg - option(value="disable" data-localise="__MSG_disable__") Disable - - div(class="block block-option") - label(for='redirectOnlyInIncognito' data-localise="__MSG_redirectOnlyInIncognito__") Redirect Only in Incognito - input(id='redirectOnlyInIncognito' type="checkbox") - - div(class="block block-option") - label(for='bookmarksMenu' data-localise="__MSG_bookmarksMenu__") Bookmarks menu - input(id='bookmarksMenu' type="checkbox") - - div(class="block block-option") - label(data-localise="__MSG_excludeFromRedirecting__") Excluded from redirecting - - form(id="custom-exceptions-instance-form") - div(class="block block-option") - div(class="block" style="padding: 0") - input(id="exceptions-custom-instance" placeholder="https://www.google.com" type="url" aria-label="Add url exception input") - | - select(id="exceptions-custom-instance-type") - option(value="url") URL - option(value="regex") Regex - | - button(class="add" id="exceptions-add-instance" type="submit" aria-label="Add the url exception") - svg(xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor") - path(d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z") - - hr - - div(class="checklist" id="exceptions-custom-checklist") - - div(class="buttons") - label(class="button button-inline" id="import_settings_text" for="import-settings") - svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor") - path(d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z") - | - x(data-localise="__MSG_importSettings__") Import Settings - input(id="import-settings" type="file" style="display: none") - - | - - a(class="button button-inline" id="export-settings") - svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor") - path(d="M10.09 15.59L11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59zM19 3H5c-1.11 0-2 .9-2 2v4h2V5h14v14H5v-4H3v4c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z") - | - x(data-localise="__MSG_exportSettings__") Export Settings - - | - - button(class="button button-inline" id="export-settings-sync") - svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor") - path(d="M10.09 15.59L11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59zM19 3H5c-1.11 0-2 .9-2 2v4h2V5h14v14H5v-4H3v4c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z") - | - x() Export Settings to Sync - - | - - button(class="button button-inline" id="import-settings-sync") - svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor") - path(d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z") - | - x(id="import_settings_sync_text") Import Settings from Sync - - | - - button(class="button button-inline" id="reset-settings") - svg(xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor") - path(d="M12,5V2L8,6l4,4V7c3.31,0,6,2.69,6,6c0,2.97-2.17,5.43-5,5.91v2.02c3.95-0.49,7-3.85,7-7.93C20,8.58,16.42,5,12,5z") - path(d="M6,13c0-1.65,0.67-3.15,1.76-4.24L6.34,7.34C4.9,8.79,4,10.79,4,13c0,4.08,3.05,7.44,7,7.93v-2.02 C8.17,18.43,6,15.97,6,13z") - x(data-localise="__MSG_resetSettings__") Reset Settings - - script(type="module" src="./widgets/general.js") \ No newline at end of file diff --git a/src/pages/options/widgets/services.pug b/src/pages/options/widgets/services.pug deleted file mode 100644 index e08bb001..00000000 --- a/src/pages/options/widgets/services.pug +++ /dev/null @@ -1,83 +0,0 @@ -each val, service in services - section(class="block-option" id=service+"_page") - div(class="block block-option") - h1 - a(target="_blank" href=services[service].url)=services[service].name - - hr - - div(class="block block-option") - label(for=`${service}-enabled` data-localise="__MSG_enable__") Enable - input(id=`${service}-enabled` type="checkbox") - - div(class="block block-option") - label(for=service data-localise="__MSG_showInPopup__") Show in popup - input(id=service type="checkbox") - - div(id=service+"-opacity") - - div(class="block block-option") - label(for=`${service}-frontend`) - a(class="frontend_name" target="_blank" data-localise="__MSG_frontend__") Frontend - select(id=`${service}-frontend`) - each val, frontend in services[service].frontends - option(value=frontend)=services[service].frontends[frontend].name - - div(class="block block-option" id=service+"-instance-div") - label(for=`${service}-instance`) Instance Type - select(id=`${service}-instance`) - option(value="localhost") localhost - option(value="public") public instances - - div(class="block block-option") - label(for=`${service}-redirectType` data-localise="__MSG_redirectType__") Redirect Type - select(id=`${service}-redirectType`) - - - div(id=`${service}-embedFrontend-div` class="block block-option") - label(for=`${service}-embedFrontend` data-localise="__MSG_embedFrontend__") Embed Frontend - select(id=`${service}-embedFrontend`) - each val, frontend in services[service].frontends - if services[service].frontends[frontend].embeddable && services[service].frontends[frontend].instanceList - option(value=frontend)=services[service].frontends[frontend].name - - - div(class="block block-option") - label(for=`${service}-unsupportedUrls` data-localise="__MSG_unsupportedIframesHandling__") Unsupported iframes handling - select(id=`${service}-unsupportedUrls`) - option(value="bypass") bypass - option(value="block") block - - if (service == 'search') - div(class="block block-option") - label Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click <a href="https://libredirect.github.io/docs.html#search_engine_chromium">here</a>. - - - each val, frontend in services[service].frontends - if services[service].frontends[frontend].instanceList - div(id=frontend dir="ltr") - hr - div(dir="auto" class="block block-option") - label(data-localise="__MSG_addYourFavoriteInstances__") Add your favorite instances - - form(class="custom-instance-form") - div(class="block block-option") - input(class="custom-instance" type="url" placeholder="https://instance.com" aria-label="Add instance input") - button(class="add add-instance" type="submit" aria-label="Add the instance") - svg(xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor") - path(d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z") - - div(class="checklist custom-checklist") - - div(class="ping block") - button(class="button button-inline" id=`ping-${frontend}`) - svg(xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor") - path(d="M10.45 15.5q.6.6 1.55.587.95-.012 1.4-.687L19 7l-8.4 5.6q-.675.45-.712 1.375-.038.925.562 1.525ZM12 4q1.475 0 2.838.412Q16.2 4.825 17.4 5.65l-1.9 1.2q-.825-.425-1.712-.637Q12.9 6 12 6 8.675 6 6.338 8.337 4 10.675 4 14q0 1.05.287 2.075Q4.575 17.1 5.1 18h13.8q.575-.95.838-1.975Q20 15 20 13.9q0-.9-.212-1.75-.213-.85-.638-1.65l1.2-1.9q.75 1.175 1.188 2.5.437 1.325.462 2.75.025 1.425-.325 2.725-.35 1.3-1.025 2.475-.275.45-.75.7-.475.25-1 .25H5.1q-.525 0-1-.25t-.75-.7q-.65-1.125-1-2.387Q2 15.4 2 14q0-2.075.788-3.888.787-1.812 2.15-3.175Q6.3 5.575 8.125 4.787 9.95 4 12 4Zm.175 7.825Z") - | - x() Ping instances - - each val, network in networks - div(class=network) - div(class="checklist") - if (network == 'clearnet') - div(class="block block-option loading") Loading... \ No newline at end of file diff --git a/src/pages/options_src/App.svelte b/src/pages/options_src/App.svelte new file mode 100644 index 00000000..1c4830bf --- /dev/null +++ b/src/pages/options_src/App.svelte @@ -0,0 +1,101 @@ +<script> + const browser = window.browser || window.chrome + + import General from "./General/General.svelte" + import url from "./url" + import utils from "../../assets/javascripts/utils.js" + import { onDestroy } from "svelte" + import servicesHelper from "../../assets/javascripts/services.js" + import { onMount } from "svelte" + import Sidebar from "./Sidebar.svelte" + import { options, config } from "./stores" + import Services from "./Services/Services.svelte" + + let _options + const unsubscribeOptions = options.subscribe(val => { + if (val) { + _options = val + browser.storage.local.set({ options: val }) + } + }) + + let _config + const unsubscribeConfig = config.subscribe(val => (_config = val)) + + onDestroy(() => { + unsubscribeOptions() + unsubscribeConfig() + }) + + onMount(async () => { + let opts = await utils.getOptions() + if (!opts) { + await servicesHelper.initDefaults() + opts = await utils.getOptions() + } + options.set(opts) + config.set(await utils.getConfig()) + }) + + let style + $: if (_options) style = utils.style(_options, window) + + const dir = ["ar", "iw", "ku", "fa", "ur"].includes(browser.i18n.getUILanguage()) ? "rtl" : "ltr" + document.body.dir = dir +</script> + +{#if _options && _config} + <div class={dir} {dir} {style}> + <Sidebar /> + {#if !$url.hash || $url.hash == "#general"} + <General /> + {:else if $url.hash.startsWith("#services")} + <Services /> + {/if} + </div> +{:else} + <p>Loading...</p> +{/if} + +<style> + :global(body) { + width: 100vw; + height: 100vh; + margin: 0; + padding: 0; + } + + div { + height: 100%; + display: grid; + grid-template-columns: min-content 800px; + margin: 0; + padding-top: 50px; + justify-content: center; + font-family: "Inter", sans-serif; + box-sizing: border-box; + font-size: 16px; + background-color: var(--bg-main); + color: var(--text); + overflow: scroll; + } + + @media (max-width: 1250px) { + div { + grid-template-columns: auto; + grid-template-rows: min-content auto; + padding-left: 5vw; + padding-right: 5vw; + } + } + + @media (max-width: 715px) { + div { + font-size: 14px; + grid-template-columns: auto; + grid-template-rows: min-content auto; + padding-left: 5vw; + padding-right: 5vw; + } + } +</style> diff --git a/src/pages/options_src/General/Exceptions.svelte b/src/pages/options_src/General/Exceptions.svelte new file mode 100644 index 00000000..7315877d --- /dev/null +++ b/src/pages/options_src/General/Exceptions.svelte @@ -0,0 +1,110 @@ +<script> + const browser = window.browser || window.chrome + + import Row from "../../components/Row.svelte" + import Select from "../../components/Select.svelte" + import AddIcon from "../../icons/AddIcon.svelte" + import CloseIcon from "../../icons/CloseIcon.svelte" + import Input from "../../components/Input.svelte" + import Label from "../../components/Label.svelte" + import { options, config } from "../stores" + import { onDestroy } from "svelte" + + let _options + let _config + + const unsubscribeOptions = options.subscribe(val => (_options = val)) + const unsubscribeConfig = config.subscribe(val => (_config = val)) + onDestroy(() => { + unsubscribeOptions() + unsubscribeConfig() + }) + let inputType = "url" + let inputValue = "" + + $: inputPlaceholder = inputType == "url" ? "https://www.google.com" : "https?://(www.|)youtube.com/" + + function removeException(exception) { + let index + index = _options.exceptions.url.indexOf(exception) + if (index > -1) { + _options.exceptions.url.splice(index, 1) + } else { + index = _options.exceptions.regex.indexOf(exception) + if (index > -1) _options.exceptions.regex.splice(index, 1) + } + options.set(_options) + } + + function addException() { + let valid = false + if (inputType == "url" && /^(ftp|http|https):\/\/[^ "]+$/.test(inputValue)) { + valid = true + if (!_options.exceptions.url.includes(inputValue)) { + _options.exceptions.url.push(inputValue) + } + } else if (inputType == "regex") { + valid = true + if (!_options.exceptions.regex.includes(inputValue)) { + _options.exceptions.regex.push(inputValue) + } + } + if (valid) { + options.set(_options) + inputValue = "" + } + } +</script> + +<Row> + <Label>{browser.i18n.getMessage("excludeFromRedirecting") || "Excluded from redirecting"}</Label> +</Row> +<div dir="ltr"> + <Row> + <div> + <Input + placeholder={inputPlaceholder} + aria-label="Add url exception input" + bind:value={inputValue} + on:keydown={e => { + if (e.key === "Enter") addException() + }} + /> + <Select + bind:value={inputType} + values={[ + { value: "url", name: "URL" }, + { value: "regex", name: "Regex" }, + ]} + /> + </div> + <button class="add" on:click={addException} aria-label="Add the url exception"> + <AddIcon /> + </button> + </Row> + <hr /> + <div class="checklist"> + {#each [..._options.exceptions.url, ..._options.exceptions.regex] as exception} + <Row> + {exception} + <button class="add" on:click={() => removeException(exception)}> + <CloseIcon /> + </button> + </Row> + <hr /> + {/each} + </div> +</div> + +<style> + .add { + background-color: transparent; + border: none; + color: var(--text); + padding: 0; + margin: 0; + text-decoration: none; + display: inline-block; + cursor: pointer; + } +</style> diff --git a/src/pages/options_src/General/General.svelte b/src/pages/options_src/General/General.svelte new file mode 100644 index 00000000..b6ed1b46 --- /dev/null +++ b/src/pages/options_src/General/General.svelte @@ -0,0 +1,98 @@ +<script> + const browser = window.browser || window.chrome + + import Exceptions from "./Exceptions.svelte" + import SettingsButtons from "./SettingsButtons.svelte" + import { options } from "../stores" + import { onDestroy } from "svelte" + import Row from "../../components/Row.svelte" + import Label from "../../components/Label.svelte" + import Select from "../../components/Select.svelte" + import Checkbox from "../../components/Checkbox.svelte" + + let _options + const unsubscribe = options.subscribe(val => (_options = val)) + onDestroy(unsubscribe) + + let disableBookmarks = null + browser.runtime.getPlatformInfo(r => { + switch (r.os) { + case "fuchsia": + case "ios": + case "android": + disableBookmarks = true + break + default: + disableBookmarks = false + } + if (!disableBookmarks) { + browser.permissions.contains({ permissions: ["bookmarks"] }, r => (bookmarksPermission = r)) + } + }) + + let bookmarksPermission + $: if (disableBookmarks !== null && disableBookmarks === false) { + if (bookmarksPermission) { + browser.permissions.request({ permissions: ["bookmarks"] }, r => (bookmarksPermission = r)) + } else { + browser.permissions.remove({ permissions: ["bookmarks"] }) + bookmarksPermission = false + } + } +</script> + +<div> + <Row> + <Label>{browser.i18n.getMessage("theme") || "Theme"}</Label> + <Select + values={[ + { value: "detect", name: browser.i18n.getMessage("auto") || "Auto" }, + { value: "light", name: browser.i18n.getMessage("light") || "Light" }, + { value: "dark", name: browser.i18n.getMessage("dark") || "Dark" }, + ]} + value={_options.theme} + onChange={e => { + _options.theme = e.target.options[e.target.options.selectedIndex].value + options.set(_options) + }} + /> + </Row> + + <Row> + <Label>{browser.i18n.getMessage("fetchPublicInstances") || "Fetch public instances"}</Label> + <Select + value={_options.fetchInstances} + values={[ + { value: "github", name: "GitHub" }, + { value: "codeberg", name: "Codeberg" }, + { value: "disable", name: browser.i18n.getMessage("disable") || "Disable" }, + ]} + onChange={e => { + _options.fetchInstances = e.target.options[e.target.options.selectedIndex].value + options.set(_options) + }} + /> + </Row> + + <Row> + <Label>{browser.i18n.getMessage("redirectOnlyInIncognito") || "Redirect Only in Incognito"}</Label> + <Checkbox + checked={_options.redirectOnlyInIncognito} + onChange={e => { + _options.redirectOnlyInIncognito = e.target.checked + options.set(_options) + }} + /> + </Row> + + {#if disableBookmarks === false} + <Row> + <Label>{browser.i18n.getMessage("bookmarksMenu") || "Bookmarks menu"}</Label> + <Checkbox bind:checked={bookmarksPermission} /> + </Row> + {/if} + + <Exceptions /> + + <SettingsButtons /> +</div> diff --git a/src/pages/options_src/General/SettingsButtons.svelte b/src/pages/options_src/General/SettingsButtons.svelte new file mode 100644 index 00000000..4be747fe --- /dev/null +++ b/src/pages/options_src/General/SettingsButtons.svelte @@ -0,0 +1,112 @@ +<script> + const browser = window.browser || window.chrome + + import { onDestroy } from "svelte" + import Button from "../../components/Button.svelte" + import ExportIcon from "../../icons/ExportIcon.svelte" + import ImportIcon from "../../icons/ImportIcon.svelte" + import ResetIcon from "../../icons/ResetIcon.svelte" + import { options } from "../stores" + import servicesHelper from "../../../assets/javascripts/services.js" + import utils from "../../../assets/javascripts/utils.js" + + let _options + const unsubscribe = options.subscribe(val => (_options = val)) + onDestroy(unsubscribe) + + let importSettingsInput + let importSettingsFiles + $: if (importSettingsFiles) { + const reader = new FileReader() + reader.readAsText(importSettingsFiles[0]) + reader.onload = async () => { + let data = JSON.parse(reader.result) + if (data.version != browser.runtime.getManifest().version) { + alert("Importing from a previous version. Be careful") + } + data = await servicesHelper.processUpdate(data) + options.set(data) + } + reader.onerror = error => { + console.log("error", error) + alert("Error!") + } + } + + async function exportSettings() { + _options.version = browser.runtime.getManifest().version + const resultString = JSON.stringify(_options, null, " ") + const anchor = document.createElement("a") + anchor.href = "data:application/json;base64," + btoa(resultString) + anchor.download = `libredirect-settings-v${_options.version}.json` + anchor.click() + } + + async function exportSettingsSync() { + _options.version = browser.runtime.getManifest().version + browser.storage.sync.set({ options: _options }) + } + + async function importSettingsSync() { + browser.storage.sync.get({ options }, async r => { + let data = r.options + if (data.version != browser.runtime.getManifest().version) { + alert("Importing from a previous version. Be careful") + } + data = await servicesHelper.processUpdate(data) + options.set(data) + }) + } + + async function resetSettings() { + browser.storage.local.clear(async () => { + const data = await servicesHelper.initDefaults() + options.set(data) + }) + } +</script> + +<div class="buttons"> + <Button on:click={() => importSettingsInput.click()}> + <ImportIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("importSettings") || "Import Settings"} + </Button> + <input + type="file" + accept=".json" + style="display: none" + bind:this={importSettingsInput} + bind:files={importSettingsFiles} + /> + + <Button on:click={exportSettings}> + <ExportIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("exportSettings") || "Export Settings"} + </Button> + + <Button on:click={exportSettingsSync}> + <ExportIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("exportSettingsToSync") || "Export Settings to Sync"} + </Button> + + <Button on:click={importSettingsSync}> + <ImportIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("importSettingsFromSync") || "Import Settings from Sync"} + </Button> + + <Button on:click={resetSettings}> + <ResetIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("resetSettings") || "Reset Settings"} + </Button> +</div> + +<style> + :global(.margin) { + margin-right: 10px; + margin-left: 0; + } + :global(.margin_rtl) { + margin-right: 0; + margin-left: 10px; + } +</style> diff --git a/src/pages/options_src/Services/FrontendIcon.svelte b/src/pages/options_src/Services/FrontendIcon.svelte new file mode 100644 index 00000000..4b392676 --- /dev/null +++ b/src/pages/options_src/Services/FrontendIcon.svelte @@ -0,0 +1,41 @@ +<script> + import { onDestroy } from "svelte" + export let details + export let selectedService + import { config, options } from "../stores" + let _options + let _config + + const unsubscribeOptions = options.subscribe(val => (_options = val)) + const unsubscribeConfig = config.subscribe(val => (_config = val)) + onDestroy(() => { + unsubscribeOptions() + unsubscribeConfig() + }) + + let theme + $: if (_options) { + if (_options.theme == "dark") { + theme = "dark" + } else if (_options.theme == "light") { + theme = "light" + } else if (window.matchMedia("(prefers-color-scheme: dark)").matches) { + theme = "dark" + } else { + theme = "light" + } + } + $: imageType = _config.services[selectedService].frontends[details.value].imageType +</script> + +{#if imageType} + {#if imageType == "svgMono"} + {#if theme == "dark"} + <img src={`/assets/images/${details.value}-icon-light.svg`} alt={details.label} /> + {:else} + <img src={`/assets/images/${details.value}-icon.svg`} alt={details.label} /> + {/if} + {:else} + <img src={`/assets/images/${details.value}-icon.${imageType}`} alt={details.label} /> + {/if} +{/if} diff --git a/src/pages/options_src/Services/Instances.svelte b/src/pages/options_src/Services/Instances.svelte new file mode 100644 index 00000000..4e5d1e7d --- /dev/null +++ b/src/pages/options_src/Services/Instances.svelte @@ -0,0 +1,261 @@ +<script> + const browser = window.browser || window.chrome + + import Button from "../../components/Button.svelte" + import AddIcon from "../../icons/AddIcon.svelte" + import { options, config } from "../stores" + import PingIcon from "../../icons/PingIcon.svelte" + import AutoPickIcon from "../../icons/AutoPickIcon.svelte" + import Row from "../../components/Row.svelte" + import Input from "../../components/Input.svelte" + import Label from "../../components/Label.svelte" + import CloseIcon from "../../icons/CloseIcon.svelte" + import { onDestroy, onMount } from "svelte" + import utils from "../../../assets/javascripts/utils" + + export let selectedService + export let selectedFrontend + + let _options + let _config + + const unsubscribeOptions = options.subscribe(val => (_options = val)) + const unsubscribeConfig = config.subscribe(val => (_config = val)) + onDestroy(() => { + unsubscribeOptions() + unsubscribeConfig() + }) + + let blacklist + let redirects + + $: serviceConf = _config.services[selectedService] + + let allInstances = [] + + $: { + allInstances = [] + if (_options[selectedFrontend]) allInstances.push(..._options[selectedFrontend]) + if (redirects && redirects[selectedFrontend]) { + allInstances.push(...redirects[selectedFrontend]["clearnet"]) + } + allInstances = [...new Set(allInstances)] + } + + let pingCache + $: { + if (pingCache) browser.storage.local.set({ pingCache }) + } + + function isCustomInstance(instance) { + if (redirects[selectedFrontend]) { + for (const network in redirects[selectedFrontend]) { + if (redirects[selectedFrontend][network].includes(instance)) return false + } + } + return true + } + + async function pingInstances() { + pingCache = {} + for (const instance of allInstances) { + pingCache[instance] = { color: "lightblue", value: "pinging..." } + const time = await utils.ping(instance) + pingCache[instance] = colorTime(time) + } + } + + async function autoPickInstance() { + const instances = utils.randomInstances(redirects[selectedFrontend]["clearnet"], 5) + const myInstancesCache = [] + for (const instance of instances) { + pingCache[instance] = { color: "lightblue", value: "pinging..." } + const time = await utils.ping(instance) + pingCache[instance] = colorTime(time) + myInstancesCache.push([instance, time]) + } + myInstancesCache.sort((a, b) => a[1] - b[1]) + + _options[selectedFrontend].push(myInstancesCache[0][0]) + options.set(_options) + } + + function colorTime(time) { + let value + let color + if (time < 5000) { + value = `${time}ms` + if (time <= 1000) color = "green" + else if (time <= 2000) color = "orange" + } else if (time >= 5000) { + color = "red" + if (time == 5000) value = "5000ms+" + if (time > 5000) value = `Error: ${time - 5000}` + } else { + color = "red" + value = "Server not found" + } + return { color, value } + } + + onMount(async () => { + blacklist = await utils.getBlacklist(_options) + redirects = await utils.getList(_options) + pingCache = await utils.getPingCache() + }) + + let addInstanceValue + function addInstance() { + const instance = utils.protocolHost(new URL(addInstanceValue)) + if (!_options[selectedFrontend].includes(instance)) { + _options[selectedFrontend].push(instance) + addInstanceValue = "" + options.set(_options) + } + } +</script> + +{#if serviceConf.frontends[selectedFrontend].instanceList && redirects && blacklist} + <hr /> + + <div> + <Button on:click={pingInstances}> + <PingIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("pingInstances") || "Ping Instances"} + </Button> + <Button on:click={autoPickInstance}> + <AutoPickIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("autoPickInstance") || "Auto Pick Instance"} + </Button> + </div> + + <Row> + <Label>{browser.i18n.getMessage("addYourFavoriteInstances") || "Add your favorite instances"}</Label> + </Row> + <div dir="ltr"> + <Row> + <Input + bind:value={addInstanceValue} + type="url" + placeholder="https://instance.com" + aria-label="Add instance input" + on:keydown={e => e.key === "Enter" && addInstance()} + /> + <button on:click={addInstance} class="add" aria-label="Add the instance"> + <AddIcon /> + </button> + </Row> + + {#each _options[selectedFrontend] as instance} + <Row> + <span> + <a href={instance} target="_blank" rel="noopener noreferrer">{instance}</a> + {#if isCustomInstance(instance)} + <span style="color:grey">custom</span> + {/if} + {#if pingCache && pingCache[instance]} + <span style="color:{pingCache[instance].color}">{pingCache[instance].value}</span> + {/if} + </span> + <button + class="add" + aria-label="Remove Instance" + on:click={() => { + const index = _options[selectedFrontend].indexOf(instance) + if (index > -1) { + _options[selectedFrontend].splice(index, 1) + options.set(_options) + } + }} + > + <CloseIcon /> + </button> + </Row> + <hr /> + {/each} + + {#if redirects !== "disabled" && blacklist !== "disabled"} + {#if redirects[selectedFrontend] && redirects[selectedFrontend]["clearnet"]} + {#each Object.entries(_config.networks) as [networkName, network]} + {#if redirects[selectedFrontend] && redirects[selectedFrontend][networkName] && redirects[selectedFrontend][networkName].length > 0} + <Row></Row> + <Row><Label>{network.name}</Label></Row> + <hr /> + {#each redirects[selectedFrontend][networkName] as instance} + <Row> + <span> + <a href={instance} target="_blank" rel="noopener noreferrer">{instance}</a> + {#if blacklist.cloudflare.includes(instance)} + <a + href="https://libredirect.github.io/docs.html#instances" + target="_blank" + rel="noopener noreferrer" + style="color:red;" + > + cloudflare + </a> + {/if} + {#if _options[selectedFrontend].includes(instance)} + <span style="color:grey">chosen</span> + {/if} + {#if pingCache && pingCache[instance]} + <span style="color:{pingCache[instance].color}">{pingCache[instance].value}</span> + {/if} + </span> + <button + class="add" + aria-label="Add instance" + on:click={() => { + if (_options[selectedFrontend]) { + if (!_options[selectedFrontend].includes(instance)) { + _options[selectedFrontend].push(instance) + options.set(_options) + } + } + }} + > + <AddIcon /> + </button> + </Row> + <hr /> + {/each} + {/if} + {/each} + {:else} + <Row><Label>No instances found.</Label></Row> + {/if} + {/if} + </div> +{/if} + +<style> + .add { + background-color: transparent; + border: none; + color: var(--text); + padding: 0; + margin: 0; + text-decoration: none; + display: inline-block; + cursor: pointer; + } + + a { + color: var(--text); + text-decoration: none; + word-wrap: anywhere; + } + + a:hover { + text-decoration: underline; + } + + :global(.margin) { + margin-right: 10px; + margin-left: 0; + } + :global(.margin_rtl) { + margin-right: 0; + margin-left: 10px; + } +</style> diff --git a/src/pages/options_src/Services/RedirectType.svelte b/src/pages/options_src/Services/RedirectType.svelte new file mode 100644 index 00000000..69ea2b73 --- /dev/null +++ b/src/pages/options_src/Services/RedirectType.svelte @@ -0,0 +1,102 @@ +<script> + const browser = window.browser || window.chrome + + import { onDestroy } from "svelte" + import SvelteSelect from "svelte-select" + import { options, config } from "../stores" + import Row from "../../components/Row.svelte" + import Label from "../../components/Label.svelte" + import FrontendIcon from "./FrontendIcon.svelte" + import Select from "../../components/Select.svelte" + + let _options + let _config + + const unsubscribeOptions = options.subscribe(val => (_options = val)) + const unsubscribeConfig = config.subscribe(val => (_config = val)) + onDestroy(() => { + unsubscribeOptions() + unsubscribeConfig() + }) + + export let selectedService + + $: serviceConf = _config.services[selectedService] + $: serviceOptions = _options[selectedService] + $: frontendName = _options[selectedService].frontend + + let values + $: if (serviceConf.frontends[frontendName].embeddable) { + values = [ + { value: "both", name: browser.i18n.getMessage("both") || "Both" }, + { value: "sub_frame", name: browser.i18n.getMessage("onlyEmbedded") || "Only Embedded" }, + { value: "main_frame", name: browser.i18n.getMessage("onlyNotEmbedded") || "Only Not Embedded" }, + ] + } else if ( + serviceConf.frontends[frontendName].desktopApp && + Object.values(serviceConf.frontends).some(frontend => frontend.embeddable) + ) { + values = [ + { value: "both", name: browser.i18n.getMessage("both") || "Both" }, + { value: "main_frame", name: browser.i18n.getMessage("onlyNotEmbedded") || "Only Not Embedded" }, + ] + if (serviceOptions.redirectType == "sub_frame") { + serviceOptions.redirectType = "main_frame" + options.set(_options) + } + } else { + values = [{ value: "main_frame", name: browser.i18n.getMessage("onlyNotEmbedded") || "Only Not Embedded" }] + serviceOptions.redirectType = "main_frame" + options.set(_options) + } + + let embeddableFrontends = [] + $: if (serviceConf) { + embeddableFrontends = [] + for (const [frontendId, frontendConf] of Object.entries(serviceConf.frontends)) { + if (frontendConf.embeddable && frontendConf.instanceList) { + embeddableFrontends.push({ + value: frontendId, + label: frontendConf.name, + }) + } + } + } +</script> + +<Row> + <Label>{browser.i18n.getMessage("redirectType") || "Redirect Type"}</Label> + <Select + value={serviceOptions.redirectType} + onChange={e => { + serviceOptions.redirectType = e.target.options[e.target.options.selectedIndex].value + options.set(_options) + }} + {values} + /> +</Row> + +{#if serviceConf.frontends[frontendName].desktopApp && serviceOptions.redirectType != "main_frame"} + <Row> + <Label>{browser.i18n.getMessage("embedFrontend") || "Embed Frontend"}</Label> + <SvelteSelect + clearable={false} + class="svelte_select" + value={serviceOptions.embedFrontend} + on:change={e => { + serviceOptions.embedFrontend = e.detail.value + options.set(_options) + }} + items={embeddableFrontends} + > + <div class="slot" slot="item" let:item> + <FrontendIcon details={item} {selectedService} /> + {item.label} + </div> + <div class="slot" slot="selection" let:selection> + <FrontendIcon details={selection} {selectedService} /> + {selection.label} + </div> + </SvelteSelect> + </Row> +{/if} diff --git a/src/pages/options_src/Services/ServiceIcon.svelte b/src/pages/options_src/Services/ServiceIcon.svelte new file mode 100644 index 00000000..89393cf6 --- /dev/null +++ b/src/pages/options_src/Services/ServiceIcon.svelte @@ -0,0 +1,40 @@ +<script> + import { onDestroy } from "svelte" + export let details + import { config, options } from "../stores" + let _options + let _config + + const unsubscribeOptions = options.subscribe(val => (_options = val)) + const unsubscribeConfig = config.subscribe(val => (_config = val)) + onDestroy(() => { + unsubscribeOptions() + unsubscribeConfig() + }) + + let theme + $: if (_options) { + if (_options.theme == "dark") { + theme = "dark" + } else if (_options.theme == "light") { + theme = "light" + } else if (window.matchMedia("(prefers-color-scheme: dark)").matches) { + theme = "dark" + } else { + theme = "light" + } + } + $: imageType = _config.services[details.value].imageType +</script> + +{#if imageType} + {#if imageType == "svgMono"} + {#if theme == "dark"} + <img src={`/assets/images/${details.value}-icon-light.svg`} alt={details.label} /> + {:else} + <img src={`/assets/images/${details.value}-icon.svg`} alt={details.label} /> + {/if} + {:else} + <img src={`/assets/images/${details.value}-icon.${imageType}`} alt={details.label} /> + {/if} +{/if} diff --git a/src/pages/options_src/Services/Services.svelte b/src/pages/options_src/Services/Services.svelte new file mode 100644 index 00000000..db2977f9 --- /dev/null +++ b/src/pages/options_src/Services/Services.svelte @@ -0,0 +1,260 @@ +<script> + const browser = window.browser || window.chrome + + import url from "../url" + import Row from "../../components/Row.svelte" + import Label from "../../components/Label.svelte" + import Select from "../../components/Select.svelte" + import { options, config } from "../stores" + import RedirectType from "./RedirectType.svelte" + import { onDestroy } from "svelte" + import Instances from "./Instances.svelte" + import SvelteSelect from "svelte-select" + import ServiceIcon from "./ServiceIcon.svelte" + import FrontendIcon from "./FrontendIcon.svelte" + import Checkbox from "../../components/Checkbox.svelte" + + let _options + let _config + + const unsubscribeOptions = options.subscribe(val => (_options = val)) + const unsubscribeConfig = config.subscribe(val => (_config = val)) + onDestroy(() => { + unsubscribeOptions() + unsubscribeConfig() + }) + let selectedService = $url.hash.startsWith("#services:") ? $url.hash.split(":")[1] : "youtube" + let hideServiceSelection = false + let hideFrontendSelection = false + $: serviceConf = _config.services[selectedService] + $: serviceOptions = _options[selectedService] + $: frontendWebsite = serviceConf.frontends[serviceOptions.frontend].url + $: servicesEntries = Object.entries(_config.services) + $: frontendEntries = Object.entries(serviceConf.frontends) +</script> + +<div> + <Row> + <Label> + <a href={serviceConf.url} style="text-decoration: underline;" target="_blank" rel="noopener noreferrer"> + {browser.i18n.getMessage("service") || "Service"} + </a> + </Label> + <div dir="ltr" on:click={() => (hideServiceSelection = true)} on:keydown={null}> + <SvelteSelect + clearable={false} + class="svelte_select" + value={selectedService} + showChevron + on:change={e => { + selectedService = e.detail.value + window.location.hash = `services:${e.detail.value}` + hideServiceSelection = false + }} + on:pointerup={() => (hideServiceSelection = false)} + on:focus={() => (hideServiceSelection = true)} + on:blur={() => (hideServiceSelection = false)} + items={[ + ...servicesEntries.map(([serviceKey, service]) => { + return { value: serviceKey, label: service.name } + }), + ]} + > + <div class={"slot " + (!_options[item.value].enabled && "disabled")} slot="item" let:item> + <ServiceIcon details={item} /> + {item.label} + </div> + <div + class={"slot " + (!_options[selection.value].enabled && !hideServiceSelection && "disabled")} + slot="selection" + let:selection + > + {#if !hideServiceSelection} + <ServiceIcon details={selection} /> + {selection.label} + {:else} + {browser.i18n.getMessage("searchService") || "Search Service"} + {/if} + </div> + <div style="font-size: 10px;" slot="chevron-icon">🮦</div> + </SvelteSelect> + </div> + </Row> + + <hr /> + + <Row> + <Label>{browser.i18n.getMessage("enable") || "Enable"}</Label> + <Checkbox + checked={serviceOptions.enabled} + onChange={e => { + serviceOptions.enabled = e.target.checked + options.set(_options) + }} + /> + </Row> + + <div style={!serviceOptions.enabled && "pointer-events: none;opacity: 0.4;user-select: none;"}> + <Row> + <Label>{browser.i18n.getMessage("showInPopup") || "Show in popup"}</Label> + <Checkbox + checked={_options.popupServices.includes(selectedService)} + onChange={e => { + if (e.target.checked && !_options.popupServices.includes(selectedService)) { + _options.popupServices.push(selectedService) + } else if (_options.popupServices.includes(selectedService)) { + const index = _options.popupServices.indexOf(selectedService) + if (index !== -1) _options.popupServices.splice(index, 1) + } + options.set(_options) + }} + /> + </Row> + + <Row> + <Label> + <a href={frontendWebsite} style="text-decoration: underline;" target="_blank" rel="noopener noreferrer"> + {browser.i18n.getMessage("frontend") || "Frontend"} + </a> + </Label> + <div dir="ltr" on:click={() => (hideFrontendSelection = true)} on:keydown={null}> + <SvelteSelect + clearable={false} + dir="ltr" + class="svelte_select" + value={serviceOptions.frontend} + showChevron + on:change={e => { + serviceOptions.frontend = e.detail.value + options.set(_options) + hideFrontendSelection = false + }} + on:pointerup={() => (hideServiceSelection = false)} + on:focus={() => (hideFrontendSelection = true)} + on:blur={() => (hideFrontendSelection = false)} + items={[ + ...frontendEntries.map(([frontendId, frontend]) => ({ + value: frontendId, + label: frontend.name, + })), + ]} + > + <div class="slot" slot="item" let:item> + <FrontendIcon details={item} {selectedService} /> + {item.label} + </div> + <div class="slot" slot="selection" let:selection> + {#if !hideFrontendSelection} + <FrontendIcon details={selection} {selectedService} /> + {selection.label} + {:else} + {browser.i18n.getMessage("search_frontend") || "Search Frontend"} + {/if} + </div> + <div style="font-size: 10px;" slot="chevron-icon">🮦</div> + </SvelteSelect> + </div> + </Row> + + <RedirectType {selectedService} /> + + <Row> + <Label>{browser.i18n.getMessage("unsupportedIframesHandling") || "Unsupported embeds handling"}</Label> + <Select + value={serviceOptions.unsupportedUrls} + onChange={e => { + serviceOptions.unsupportedUrls = e.target.options[e.target.options.selectedIndex].value + options.set(_options) + }} + values={[ + { value: "bypass", name: browser.i18n.getMessage("bypass") || "Bypass" }, + { value: "block", name: browser.i18n.getMessage("block") || "Block" }, + ]} + /> + </Row> + + <div style={_options.redirectOnlyInIncognito && "pointer-events: none;opacity: 0.4;user-select: none;"}> + <Row> + <Label>{browser.i18n.getMessage("redirectOnlyInIncognito") || "Redirect Only in Incognito"}</Label> + <Checkbox + checked={serviceOptions.redirectOnlyInIncognito} + onChange={e => { + serviceOptions.redirectOnlyInIncognito = e.target.checked + options.set(_options) + }} + /> + </Row> + </div> + + {#if selectedService == "search"} + <Row> + <Label>{browser.i18n.getMessage("redirectGoogle") || "Redirect Google"}</Label> + <Checkbox + checked={serviceOptions.redirectGoogle} + onChange={e => { + serviceOptions.redirectGoogle = e.target.checked + options.set(_options) + }} + /> + </Row> + <Row> + <Label> + {@html browser.i18n.getMessage("searchHint") || + `Set LibRedirect as Default Search Engine. For how to do in chromium browsers, click + <a + href="https://libredirect.github.io/docs.html#search_engine_chromium" + target="_blank" + rel="noopener noreferrer" + >here + </a>.`} + </Label> + </Row> + {/if} + + <Instances + {selectedService} + selectedFrontend={!serviceConf.frontends[serviceOptions.frontend].desktopApp || + serviceOptions.redirectType == "main_frame" + ? serviceOptions.frontend + : serviceOptions.embedFrontend} + /> + + <Row></Row> + </div> +</div> + +<style> + :global(.svelte_select) { + font-weight: bold; + --item-padding: 0 10px; + --border: none; + --border-hover: none; + --border-focused: none; + --width: 210px; + --background: var(--bg-secondary); + --list-background: var(--bg-secondary); + --item-is-active-bg: grey; + --item-hover-bg: grey; + --item-is-active-color: var(--text); + --list-max-height: 400px; + --padding: 0 0 0 10px; + --item-color: var(--text); + } + :global(.svelte_select .slot) { + display: flex; + justify-content: start; + align-items: center; + } + + :global(.svelte_select img, .svelte_select svg) { + margin-right: 10px; + margin-left: 0; + height: 26px; + width: 26px; + color: var(--text); + } + + :global(.svelte_select .disabled) { + opacity: 0.4; + } +</style> diff --git a/src/pages/options_src/Sidebar.svelte b/src/pages/options_src/Sidebar.svelte new file mode 100644 index 00000000..6b67581a --- /dev/null +++ b/src/pages/options_src/Sidebar.svelte @@ -0,0 +1,69 @@ +<script> + const browser = window.browser || window.chrome + + import url from "./url" + import GeneralIcon from "../icons/GeneralIcon.svelte" + import ServicesIcon from "../icons/ServicesIcon.svelte" + import AboutIcon from "../icons/AboutIcon.svelte" +</script> + +<div> + <a href="#general" style={$url.hash == "#general" && "color: var(--active);"}> + <GeneralIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("general") || "General"} + </a> + <a href="#services" style={$url.hash == "#services" && "color: var(--active);"}> + <ServicesIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("services") || "Services"} + </a> + <a href="https://libredirect.github.io" target="_blank" rel="noopener noreferrer"> + <AboutIcon class="margin margin_{document.body.dir}" /> + {browser.i18n.getMessage("about") || "About"} + </a> +</div> + +<style> + div { + display: flex; + flex-direction: column; + margin: 0 20px; + } + + a { + display: flex; + align-items: center; + font-size: 18px; + text-decoration: none; + color: var(--text); + transition: 0.1s; + margin: 10px; + min-width: max-content; + } + + a:hover { + color: var(--active); + } + + @media (max-width: 1250px) { + div { + flex-direction: row; + justify-content: center; + margin: 0; + } + } + + @media (max-width: 715px) { + a { + margin: 5px; + } + } + + :global(.margin) { + margin-right: 5px; + margin-left: 0; + } + :global(.margin_rtl) { + margin-right: 0; + margin-left: 5px; + } +</style> diff --git a/src/pages/options_src/main.js b/src/pages/options_src/main.js new file mode 100644 index 00000000..c4012f4a --- /dev/null +++ b/src/pages/options_src/main.js @@ -0,0 +1,7 @@ +import App from "./App.svelte" + +const app = new App({ + target: document.body, +}) + +export default app diff --git a/src/pages/options_src/stores.js b/src/pages/options_src/stores.js new file mode 100644 index 00000000..7ae0f8c7 --- /dev/null +++ b/src/pages/options_src/stores.js @@ -0,0 +1,4 @@ +import { writable } from "svelte/store" + +export const options = writable(null) +export const config = writable(null) diff --git a/src/pages/options_src/url.js b/src/pages/options_src/url.js new file mode 100644 index 00000000..010e5b21 --- /dev/null +++ b/src/pages/options_src/url.js @@ -0,0 +1,38 @@ +// https://svelte.dev/repl/5abaac000b164aa1aacc6051d5c4f584?version=3.59.2 + +import { derived, writable } from 'svelte/store' + +export function createUrlStore(ssrUrl) { + // Ideally a bundler constant so that it's tree-shakable + if (typeof window === 'undefined') { + const { subscribe } = writable(ssrUrl) + return { subscribe } + } + + const href = writable(window.location.href) + + const originalPushState = history.pushState + const originalReplaceState = history.replaceState + + const updateHref = () => href.set(window.location.href) + + history.pushState = () => { + originalPushState.apply(this, arguments) + updateHref() + } + + history.replaceState = () => { + originalReplaceState.apply(this, arguments) + updateHref() + } + + window.addEventListener('popstate', updateHref) + window.addEventListener('hashchange', updateHref) + + return { + subscribe: derived(href, ($href) => new URL($href)).subscribe + } +} + +// If you're using in a pure SPA, you can return a store directly and share it everywhere +export default createUrlStore() diff --git a/src/pages/popup/index.html b/src/pages/popup/index.html new file mode 100644 index 00000000..b197d4a7 --- /dev/null +++ b/src/pages/popup/index.html @@ -0,0 +1,17 @@ +<!DOCTYPE html> +<html lang="en"> + +<head> + <meta charset='utf-8'> + <meta name='viewport' content='width=device-width,initial-scale=1'> + <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg"> + <title>Settings</title> + <link rel='stylesheet' href='build/bundle.css'> + <link rel='stylesheet' href='../fonts/styles.css'> + <script defer src='build/bundle.js'></script> +</head> + +<body> +</body> + +</html> \ No newline at end of file diff --git a/src/pages/popup/popup.js b/src/pages/popup/popup.js deleted file mode 100644 index 5eeb18c2..00000000 --- a/src/pages/popup/popup.js +++ /dev/null @@ -1,113 +0,0 @@ -"use strict" -window.browser = window.browser || window.chrome - -import servicesHelper from "../../assets/javascripts/services.js" -import utils from "../../assets/javascripts/utils.js" - -document.getElementById("more-options").addEventListener("click", () => browser.runtime.openOptionsPage()) - -const allSites = document.getElementById("all_sites") -const currSite = document.getElementById("current_site") -const currentSiteDivider = document.getElementById("current_site_divider") - -const config = await utils.getConfig() -const divs = {} - -for (const service in config.services) { - divs[service] = {} - - divs[service].all = allSites.getElementsByClassName(service)[0] - divs[service].current = currSite.getElementsByClassName(service)[0] - - divs[service].all_toggle = allSites.getElementsByClassName(`${service}-enabled`)[0] - divs[service].all_toggle.addEventListener("change", async () => { - const options = await utils.getOptions() - options[service].enabled = divs[service].all_toggle.checked - browser.storage.local.set({ options }) - }) - - allSites.getElementsByClassName(`${service}-change_instance`)[0].addEventListener("click", () => { - browser.tabs.query({ active: true, currentWindow: true }, async tabs => { - if (tabs[0].url) { - const url = new URL(tabs[0].url) - browser.tabs.update({ url: await servicesHelper.switchInstance(url, service) }) - } - }) - }) - - divs[service].current_toggle = currSite.getElementsByClassName(`${service}-enabled`)[0] - divs[service].current_toggle.addEventListener("change", async () => { - const options = await utils.getOptions() - options[service].enabled = divs[service].current_toggle.checked - browser.storage.local.set({ options }) - }) - - currSite.getElementsByClassName(`${service}-change_instance`)[0].addEventListener("click", () => { - browser.tabs.query({ active: true, currentWindow: true }, async tabs => { - if (tabs[0].url) { - const url = new URL(tabs[0].url) - browser.tabs.update({ url: await servicesHelper.switchInstance(url, service) }) - } - }) - }) -} - -browser.tabs.query({ active: true, currentWindow: true }, async tabs => { - let url; - - // Set visibility of control buttons - if (tabs[0].url) { - url = new URL(tabs[0].url) - servicesHelper.switchInstance(url).then(r => { - if (r) { - document.getElementById("change_instance_div").style.display = "" - document.getElementById("change_instance").addEventListener("click", async () => - browser.tabs.update({ url: await servicesHelper.switchInstance(url) }) - ) - } - }) - servicesHelper.copyRaw(url, true).then(r => { - if (r) { - document.getElementById("copy_original_div").style.display = "" - document.getElementById("copy_original").addEventListener("click", () => - servicesHelper.copyRaw(url) - ) - } - }) - servicesHelper.reverse(url).then(r => { - if (r) { - document.getElementById("redirect_to_original_div").style.display = "" - document.getElementById("redirect_to_original").addEventListener("click", () => - browser.runtime.sendMessage("reverseTab") - ) - } - }) - servicesHelper.redirectAsync(url, "main_frame", null, true).then(r => { - if (r) { - document.getElementById("redirect_div").style.display = "" - document.getElementById("redirect").addEventListener("click", () => - browser.runtime.sendMessage("redirectTab") - ) - } - }) - } - - const options = await utils.getOptions() - - // Set visibility of all service buttons - for (const service of options.popupServices) { - divs[service].all.classList.remove("hide") - divs[service].all_toggle.checked = options[service].enabled - } - - // Set visibility of current page service button - if (url) { - const service = await servicesHelper.computeService(url) - if (service) { - divs[service].all.classList.add("hide") - divs[service].current.classList.remove("hide") - divs[service].current_toggle.checked = options[service].enabled - currentSiteDivider.style.display = "" - } - } -}) \ No newline at end of file diff --git a/src/pages/popup/popup.pug b/src/pages/popup/popup.pug deleted file mode 100644 index f145fe5d..00000000 --- a/src/pages/popup/popup.pug +++ /dev/null @@ -1,51 +0,0 @@ -doctype html -html(lang="en") - head - meta(charset="UTF-8") - meta(name="viewport" content="width=device-width, initial-scale=1.0") - link(href="../stylesheets/styles.css" rel="stylesheet") - link(href="./style.css" rel="stylesheet") - body(dir="auto") - div(id="current_site") - include /src/pages/popup/switches - div(id="current_site_divider" style="display: none") - hr - - div(id="all_sites") - include /src/pages/popup/switches - - hr - - div(class="block" id="change_instance_div" style="display: none") - button(class="title button bottom-button" id="change_instance") - label(data-localise="__MSG_switchInstance__") Switch Instance - svg(xmlns="http://www.w3.org/2000/svg" height="26px" width="26px" fill="currentColor") - path(d="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z") - - div(class="block" id="copy_original_div" title="Copy the original redirected link" style="display: none") - button(class="title button bottom-button" id="copy_original") - label() Copy Original - svg(xmlns="http://www.w3.org/2000/svg" height="24px" width="24px" fill="currentColor") - path(d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z") - - div(class="block" id="redirect_div" style="display: none") - button(class="title button bottom-button" id="redirect") - label Redirect - svg(xmlns="http://www.w3.org/2000/svg" height="24" width="24" fill="currentColor") - path(d="M7 20v-9q0-.825.588-1.413Q8.175 9 9 9h8.2l-1.6-1.6L17 6l4 4-4 4-1.4-1.4 1.6-1.6H9v9Z") - - div(class="block" id="redirect_to_original_div" style="display: none") - button(class="title button bottom-button" id="redirect_to_original") - label Redirect To Original - svg(xmlns="http://www.w3.org/2000/svg" height="24px" width="24px" fill="currentColor") - path(d="M 17,20 V 11 Q 17,10.175 16.412,9.587 15.825,9 15,9 H 6.8 L 8.4,7.4 7,6 3,10 7,14 8.4,12.6 6.8,11 H 15 v 9 z" id="path2") - - div(class="block") - button(class="title button bottom-button" id="more-options") - label(data-localise="__MSG_settings__") Settings - svg(xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" width="26px" fill="currentColor") - path(d="m9.25 22-.4-3.2q-.325-.125-.612-.3-.288-.175-.563-.375L4.7 19.375l-2.75-4.75 2.575-1.95Q4.5 12.5 4.5 12.337v-.675q0-.162.025-.337L1.95 9.375l2.75-4.75 2.975 1.25q.275-.2.575-.375.3-.175.6-.3l.4-3.2h5.5l.4 3.2q.325.125.613.3.287.175.562.375l2.975-1.25 2.75 4.75-2.575 1.95q.025.175.025.337v.675q0 .163-.05.338l2.575 1.95-2.75 4.75-2.95-1.25q-.275.2-.575.375-.3.175-.6.3l-.4 3.2Zm2.8-6.5q1.45 0 2.475-1.025Q15.55 13.45 15.55 12q0-1.45-1.025-2.475Q13.5 8.5 12.05 8.5q-1.475 0-2.488 1.025Q8.55 10.55 8.55 12q0 1.45 1.012 2.475Q10.575 15.5 12.05 15.5Z") - - div(class="space") - script(type="module" src="../options/init.js") - script(type="module" src="./popup.js") \ No newline at end of file diff --git a/src/pages/popup/style.css b/src/pages/popup/style.css deleted file mode 100644 index 6c258d75..00000000 --- a/src/pages/popup/style.css +++ /dev/null @@ -1,53 +0,0 @@ -body { - width: 270px; - min-height: auto; -} - -html, -body { - margin: 0; -} - -.hide { - display: none !important; -} - -.button { - display: flex; - margin: 0 auto; - justify-content: space-between; -} - -.button svg { - width: 26px; - height: 26px; -} - -.bottom-button { - width: 100%; -} - -.space { - height: 10px; -} - -input { - height: 23px; - width: 46px; -} - - -div.block label { - margin: 0; - font-size: 18px; - font-weight: bold; - max-width: 180px; -} - -div.block label:hover { - cursor: pointer; -} - -div.block div { - display: flex; -} \ No newline at end of file diff --git a/src/pages/popup/switches.pug b/src/pages/popup/switches.pug deleted file mode 100644 index bea107d2..00000000 --- a/src/pages/popup/switches.pug +++ /dev/null @@ -1,14 +0,0 @@ -each _, service in services - div(class=`${service} block hide`) - a(class="title" href=services[service].url) - if services[service].imageType == 'svgMono' - img(class='dark' src=`/assets/images/${service}-icon.svg`) - img(class='light' src=`/assets/images/${service}-icon-light.svg`) - else - img(src=`/assets/images/${service}-icon.${services[service].imageType}`) - label=services[service].name - div - input(class=`${service}-enabled` type="checkbox" aria-label=`toggle ${services[service].name}`) - button(class=`${service}-change_instance title button` aria-label=`change instance for ${services[service].name}`) - svg(xmlns="http://www.w3.org/2000/svg" height="26px" width="26px" fill="currentColor") - path(d="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z") \ No newline at end of file diff --git a/src/pages/popup_src/App.svelte b/src/pages/popup_src/App.svelte new file mode 100644 index 00000000..f6699312 --- /dev/null +++ b/src/pages/popup_src/App.svelte @@ -0,0 +1,78 @@ +<script> + const browser = window.browser || window.chrome + + import utils from "../../assets/javascripts/utils.js" + import { onDestroy } from "svelte" + import servicesHelper from "../../assets/javascripts/services.js" + import { onMount } from "svelte" + import Buttons from "./Buttons.svelte" + + import { options, config, page } from "./stores" + + let _options + const unsubscribeOptions = options.subscribe(val => { + if (val) { + _options = val + browser.storage.local.set({ options: val }) + } + }) + + let _config + const unsubscribeConfig = config.subscribe(val => (_config = val)) + + onDestroy(() => { + unsubscribeOptions() + unsubscribeConfig() + }) + + onMount(async () => { + let opts = await utils.getOptions() + if (!opts) { + await servicesHelper.initDefaults() + opts = await utils.getOptions() + } + options.set(opts) + config.set(await utils.getConfig()) + }) + + let _page + page.subscribe(val => (_page = val)) + + let style + $: if (_options) style = utils.style(_options, window) +</script> + +{#if _options && _config} + <div class="main" dir="auto" {style}> + <Buttons /> + </div> +{:else} + <p>Loading...</p> +{/if} + +<style> + :global(html, body) { + min-width: 260px; + height: min-content; + min-height: auto; + margin: 0; + padding: 0; + box-sizing: border-box; + } + + :global(body) { + margin-top: -20px; + } + + div { + font-weight: bold; + height: 100%; + margin: 0; + padding: 10px; + padding-top: 20px; + font-family: "Inter", sans-serif; + font-size: 16px; + background-color: var(--bg-main); + color: var(--text); + } +</style> diff --git a/src/pages/popup_src/Buttons.svelte b/src/pages/popup_src/Buttons.svelte new file mode 100644 index 00000000..ab5682dc --- /dev/null +++ b/src/pages/popup_src/Buttons.svelte @@ -0,0 +1,145 @@ +<script> + const browser = window.browser || window.chrome + + import Row from "./components/Row.svelte" + import Label from "../components/Label.svelte" + import CopyIcon from "../icons/CopyIcon.svelte" + import RedirectToOriginalIcon from "../icons/RedirectToOriginalIcon.svelte" + import RedirectIcon from "../icons/RedirectIcon.svelte" + import SwitchInstanceIcon from "../icons/SwitchInstanceIcon.svelte" + import SettingsIcon from "../icons/SettingsIcon.svelte" + import { options, config } from "./stores" + import { onDestroy } from "svelte" + import servicesHelper from "../../assets/javascripts/services" + import Switch from "./components/Switch.svelte" + + let _options + let _config + + const unsubscribeOptions = options.subscribe(val => (_options = val)) + const unsubscribeConfig = config.subscribe(val => (_config = val)) + onDestroy(() => { + unsubscribeOptions() + unsubscribeConfig() + }) + + let url + let switchInstance + let redirectToOriginal + let redirect + let currentService + browser.tabs.query({ active: true, currentWindow: true }, async tabs => { + if (tabs[0].url) { + url = new URL(tabs[0].url) + servicesHelper.switchInstance(url).then(r => (switchInstance = r)) + servicesHelper.reverse(url).then(r => (redirectToOriginal = r)) + servicesHelper.redirectAsync(url, "main_frame", null, null, false, true).then(r => (redirect = r)) + servicesHelper.computeService(url).then(r => (currentService = r)) + } + }) +</script> + +<div class={document.body.dir}> + {#if redirect} + <Row + class="interactive" + on:click={() => { + browser.tabs.query({ active: true, currentWindow: true }, tabs => { + browser.runtime.sendMessage({ message: "redirect", tabId: tabs[0].id }, () => { + browser.tabs.update({ url: redirect }) + }) + }) + }} + > + <Label>{browser.i18n.getMessage("redirect") || "Redirect"}</Label> + <RedirectIcon /> + </Row> + {/if} + + {#if switchInstance} + <Row + class="interactive" + on:click={async () => + browser.tabs.update({ url: switchInstance }, () => { + window.close() + })} + > + <Label>{browser.i18n.getMessage("switchInstance") || "Switch Instance"}</Label> + <SwitchInstanceIcon /> + </Row> + {/if} + + {#if redirectToOriginal} + <Row class="interactive" on:click={() => servicesHelper.copyRaw(url)}> + <Label>{browser.i18n.getMessage("copyOriginal") || "Copy Original"}</Label> + <CopyIcon /> + </Row> + <Row + class="interactive" + on:click={() => { + browser.tabs.query({ active: true, currentWindow: true }, tabs => { + browser.runtime.sendMessage({ message: "reverse", tabId: tabs[0].id }, () => { + browser.tabs.update({ url: redirectToOriginal }) + }) + }) + }} + > + <Label>{browser.i18n.getMessage("redirectToOriginal" || "Redirect to Original")}</Label> + <RedirectToOriginalIcon /> + </Row> + {/if} + + {#if redirect || switchInstance || redirectToOriginal} + <hr /> + {/if} + + {#if currentService} + <Switch serviceKey={currentService} {url} /> + <hr /> + {/if} + + {#each _options.popupServices as serviceKey} + {#if currentService !== serviceKey} + <Switch {serviceKey} {url} /> + {/if} + {/each} + + <hr /> + + <Row + class="interactive" + on:click={() => + browser.tabs.create({ url: browser.runtime.getURL("pages/options/index.html") }, () => { + window.close() + })} + > + <Label>{browser.i18n.getMessage("settings")}</Label> + <SettingsIcon /> + </Row> +</div> + +<style> + :global(.interactive) { + transition: 0.1s; + } + :global(.interactive:hover) { + color: var(--active); + cursor: pointer; + } + :global(.interactive:active) { + transform: translateY(1px); + } + + :global(img, svg) { + margin-right: 5px; + margin-left: 0; + height: 26px; + width: 26px; + color: var(--text); + } + + :global(.rtl img, .rtl svg) { + margin-right: 0; + margin-left: 5px; + } +</style> diff --git a/src/pages/popup_src/components/Row.svelte b/src/pages/popup_src/components/Row.svelte new file mode 100644 index 00000000..a4d78f07 --- /dev/null +++ b/src/pages/popup_src/components/Row.svelte @@ -0,0 +1,13 @@ +<div {...$$props} on:click> + <slot></slot> + </div> + + <style> + div { + justify-content: space-between; + display: flex; + align-items: center; + margin: 10px 0; + } + </style> + \ No newline at end of file diff --git a/src/pages/popup_src/components/ServiceIcon.svelte b/src/pages/popup_src/components/ServiceIcon.svelte new file mode 100644 index 00000000..89393cf6 --- /dev/null +++ b/src/pages/popup_src/components/ServiceIcon.svelte @@ -0,0 +1,40 @@ +<script> + import { onDestroy } from "svelte" + export let details + import { config, options } from "../stores" + let _options + let _config + + const unsubscribeOptions = options.subscribe(val => (_options = val)) + const unsubscribeConfig = config.subscribe(val => (_config = val)) + onDestroy(() => { + unsubscribeOptions() + unsubscribeConfig() + }) + + let theme + $: if (_options) { + if (_options.theme == "dark") { + theme = "dark" + } else if (_options.theme == "light") { + theme = "light" + } else if (window.matchMedia("(prefers-color-scheme: dark)").matches) { + theme = "dark" + } else { + theme = "light" + } + } + $: imageType = _config.services[details.value].imageType +</script> + +{#if imageType} + {#if imageType == "svgMono"} + {#if theme == "dark"} + <img src={`/assets/images/${details.value}-icon-light.svg`} alt={details.label} /> + {:else} + <img src={`/assets/images/${details.value}-icon.svg`} alt={details.label} /> + {/if} + {:else} + <img src={`/assets/images/${details.value}-icon.${imageType}`} alt={details.label} /> + {/if} +{/if} diff --git a/src/pages/popup_src/components/Switch.svelte b/src/pages/popup_src/components/Switch.svelte new file mode 100644 index 00000000..98f765b7 --- /dev/null +++ b/src/pages/popup_src/components/Switch.svelte @@ -0,0 +1,81 @@ +<script> + const browser = window.browser || window.chrome + + import Checkbox from "../../components/Checkbox.svelte" + import Label from "../../components/Label.svelte" + import SwitchInstanceIcon from "../../icons/SwitchInstanceIcon.svelte" + import Row from "./Row.svelte" + import ServiceIcon from "./ServiceIcon.svelte" + import { onDestroy } from "svelte" + import servicesHelper from "../../../assets/javascripts/services" + import { options, config } from "../stores" + import SettingsIcon from "../../icons/SettingsIcon.svelte" + + let _options + let _config + + const unsubscribeOptions = options.subscribe(val => (_options = val)) + const unsubscribeConfig = config.subscribe(val => (_config = val)) + onDestroy(() => { + unsubscribeOptions() + unsubscribeConfig() + }) + + export let serviceKey + export let url +</script> + +<Row> + <div + class="interactive margin margin_{document.body.dir}" + on:keydown={null} + on:click={() => + browser.tabs.create({ url: _config.services[serviceKey].url }, () => { + window.close() + })} + > + <ServiceIcon details={{ value: serviceKey, label: _config.services[serviceKey].name }} /> + <Label>{_config.services[serviceKey].name}</Label> + </div> + <div> + <Checkbox + class="margin margin_{document.body.dir}" + label="Enable" + checked={_options[serviceKey].enabled} + onChange={e => { + _options[serviceKey].enabled = e.target.checked + options.set(_options) + }} + /> + <SwitchInstanceIcon + class="interactive" + on:click={async () => + browser.tabs.update({ url: await servicesHelper.switchInstance(url, serviceKey) }, () => { + window.close() + })} + /> + <SettingsIcon + class="interactive" + on:click={() => + browser.tabs.create({ url: browser.runtime.getURL(`pages/options/index.html#services:${serviceKey}`) }, () => { + window.close() + })} + /> + </div> +</Row> + +<style> + div { + display: flex; + align-items: center; + } + + :global(.margin) { + margin-right: 5px; + margin-left: 0; + } + :global(.margin_rtl) { + margin-right: 0; + margin-left: 5px; + } +</style> diff --git a/src/pages/popup_src/main.js b/src/pages/popup_src/main.js new file mode 100644 index 00000000..c4012f4a --- /dev/null +++ b/src/pages/popup_src/main.js @@ -0,0 +1,7 @@ +import App from "./App.svelte" + +const app = new App({ + target: document.body, +}) + +export default app diff --git a/src/pages/popup_src/stores.js b/src/pages/popup_src/stores.js new file mode 100644 index 00000000..782f6064 --- /dev/null +++ b/src/pages/popup_src/stores.js @@ -0,0 +1,5 @@ +import { writable } from "svelte/store" + +export const options = writable(null) +export const config = writable(null) +export const page = writable("general") diff --git a/src/pages/stylesheets/styles.css b/src/pages/stylesheets/styles.css deleted file mode 100644 index 2519a05f..00000000 --- a/src/pages/stylesheets/styles.css +++ /dev/null @@ -1,391 +0,0 @@ -body { - --text: #fff; - --bg-main: #121212; - --bg-secondary: #202020; - --active: #fbc117; - --danger: #f04141; - --light-grey: #c3c3c3; -} - -@font-face { - font-family: "Inter"; - src: url("Inter-VariableFont_slnt,wght.ttf"); - font-weight: normal; - font-style: normal; -} - -@font-face { - font-family: "Vazirmatn"; - src: url("Vazirmatn-VariableFont_wght.ttf"); - font-weight: normal; - font-style: normal; -} - -body { - margin: auto; - padding: 0; - font-family: "Inter"; - font-size: 16px; - background-color: var(--bg-main); - color: var(--text); -} - -body * { - font-family: "Inter"; -} - -body.rtl { - font-family: "Vazirmatn"; -} - -body.rtl * { - font-family: "Vazirmatn"; -} - -div.block input[type="checkbox"] { - appearance: none; - -moz-appearance: none; - -webkit-appearance: none; -} - -.title { - display: flex; - align-items: center; - text-decoration: none; - width: min-content; - color: var(--text); - transition: .1s; -} - -.title:hover { - opacity: 1 !important; -} - -.title:hover a { - color: var(--active); -} - -img, -svg { - margin-right: 10px; - height: 26px; - width: 26px; - color: var(--text); -} - -body.rtl img, -body.rtl svg { - margin-right: 0px; - margin-left: 10px; -} - -input[type="url"], -input[type="text"], -select { - font-weight: bold; - box-sizing: border-box; - border-style: solid; - border-color: #767676; - color: var(--text); - font-size: 16px; - padding: 8px; - background-color: var(--bg-secondary); - border: none; - margin: 0; - max-width: 500px; - border-radius: 3px; -} - -input[type="url"], -input[type="text"] { - width: 400px; - cursor: text; -} - -input:invalid { - color: var(--danger); -} - -.button svg { - height: 18px; - width: 18px; -} - -section.block-option { - width: 750px; - margin: 0 50px; -} - -section.block-option h2 { - margin: 0; -} - -body.option { - display: flex; - padding: 40px; - width: 1160px; -} - -section.links { - display: flex; - flex-wrap: wrap; - flex-direction: column; - width: 350px; - max-height: 930px; -} - -section.links div { - margin: 10px; - width: max-content; -} - -a { - text-decoration: none; - color: var(--text); - transition: 0.1s; -} - -a:hover { - color: var(--active); -} - -section.links a { - display: flex; - align-items: center; - font-size: 18px; - text-decoration: none; - color: white; - transition: 0.1s; -} - -section.links a:hover, -section.links .selected { - opacity: 1 !important; -} - -section.links .selected a { - color: var(--active); -} - -::placeholder { - color: var(--text); - opacity: 0.7; -} - -hr { - height: 2px; - margin: 0 15px; - background-color: rgb(77, 77, 77); - border: none; -} - -div.block { - padding: 0 15px; - justify-content: space-between; - display: flex; - align-items: center; - margin-top: 10px; - margin-bottom: 10px; -} - -div.block-option { - margin: 30px 0; -} - -div.block-option label { - margin-right: 5px; - width: 80%; - min-width: 150px; - font-size: 18px; -} - -div.block-option h1 { - margin: 0; - font-size: 28px; - color: var(--text); -} - -div.block-option div { - text-align: center; -} - -div.block input[type="checkbox"] { - width: 46px; - height: 24px; - background-color: var(--light-grey); - border-radius: 50px; - transition: 0.4s; - cursor: pointer; -} - -div.block input[type="checkbox"]:checked { - background-color: var(--active); -} - -div.block input[type="checkbox"]::before { - content: ""; - display: inline-block; - width: 18px; - height: 18px; - box-sizing: border-box; - position: relative; - top: 2.5px; - left: 3.5px; - background-color: white; - border-radius: 50%; - transition: 0.3s; -} - -body.rtl div.block input[type="checkbox"]::before { - left: auto; - right: 4px; -} - -div.block input[type="checkbox"]:checked::before { - left: 24px; -} - -body.rtl div.block input[type="checkbox"]:checked::before { - left: auto; - right: 24px; -} - -div.buttons { - display: flex; - margin: 0 15px; - margin-bottom: 15px; - margin-top: 15px; - flex-wrap: wrap; - align-items: center; - justify-content: start; -} - -.button { - color: var(--text); - font-size: 16px; - font-weight: bold; - text-decoration: none; - cursor: pointer; - transition-duration: 0.1s; -} - -.button:hover { - color: var(--active); -} - -.button svg { - width: auto; - height: auto; - padding: 0; - margin-right: 5px; -} - -.button:hover svg { - color: var(--active); -} - -.button-inline { - display: inline-flex; - align-items: center; - margin: 7.5px 0; - background-color: var(--bg-secondary); - border-radius: 5px; - padding: 10px; -} - -.button:active { - transform: translateY(1px); -} - -button svg { - color: var(--text); -} - -div.checklist div { - justify-content: space-between; - margin: 5px 15px; - padding: 10px 0; - word-wrap: break-word; - display: flex; -} - -div.checklist a { - text-decoration: none; - color: var(--text); -} - -div.checklist a:hover { - text-decoration: underline; -} - -div.custom-checklist x a { - color: var(--active); -} - -button.add { - background-color: transparent; - border: none; - padding: 0; - margin: 0; - text-decoration: none; - display: inline-block; - cursor: pointer; -} - -body.light-theme { - --text: black; - --bg-main: white; - --bg-secondary: #e4e4e4; - --active: #fb9817; -} - -body.light-theme select { - border: 1px solid black; -} - -body.light-theme a { - color: black; -} - -body.light-theme a:hover { - color: var(--active) -} - -button { - background-color: transparent; - color: var(--text); - border: none; - text-decoration: none; - display: inline-block; - cursor: pointer; - border-radius: 5px; -} - -body div section { - display: none; -} - -select:disabled { - opacity: 0.6; - cursor: not-allowed; -} - -input:disabled { - opacity: 0.6; - cursor: not-allowed; -} - - -@media (max-width: 1250px) { - body.option { - flex-direction: column; - width: 750px; - align-items: center; - } - - section.links { - flex-direction: row; - width: 750px; - padding: 0 55px; - } -} \ No newline at end of file diff --git a/src/pages/widgets/head.pug b/src/pages/widgets/head.pug deleted file mode 100644 index 0c6e9fdb..00000000 --- a/src/pages/widgets/head.pug +++ /dev/null @@ -1,7 +0,0 @@ -head - meta(charset="utf-8") - meta(name="viewport" content="width=device-width, initial-scale=1") - link(rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg") - link(href="../stylesheets/styles.css" rel="stylesheet") - title Settings - script(type="module" src="./init.js") \ No newline at end of file diff --git a/src/pages/widgets/links.pug b/src/pages/widgets/links.pug deleted file mode 100644 index 318c72f9..00000000 --- a/src/pages/widgets/links.pug +++ /dev/null @@ -1,22 +0,0 @@ -section(class="links" id="links") - div(class="title") - a(href="#general") - include /src/assets/images/general-icon.svg - span(data-localise="__MSG_general__") General - - each val, key in services - div(class="title" id=`${key}-link`) - a(href="#"+key) - if services[key].imageType == 'svgMono' - img(class='dark' src=`/assets/images/${key}-icon.svg`) - img(class='light' src=`/assets/images/${key}-icon-light.svg`) - else - img(src=`/assets/images/${key}-icon.${services[key].imageType}`) - span=services[key].name - - div(class="title") - a(target="_blank" href="https://libredirect.github.io") - img(class='dark' src="/assets/images/about-icon.svg") - img(class='light' src="/assets/images/about-icon-light.svg") - - span(data-localise="__MSG_about__") About diff --git a/src/updates/updates.xml b/src/updates/updates.xml new file mode 100644 index 00000000..ea0d5882 --- /dev/null +++ b/src/updates/updates.xml @@ -0,0 +1,6 @@ +<?xml version='1.0' encoding='UTF-8'?> +<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'> + <app appid='oladmjdebphlnjjcnomfhhbfdldiimaf'> + <updatecheck codebase='https://github.com/libredirect/libredirect/releases/download/v2.9.1/libredirect-2.9.1.crx' version='2.9.1' /> + </app> +</gupdate> |